Revert incorrect RCL_3 drop: RCL_3
authorPat Downey <patd@symbian.org>
Wed, 01 Sep 2010 12:40:57 +0100
branchRCL_3
changeset 96 a71299154b21
parent 95 641f389e9157
child 97 c575b960b6c8
child 99 94225563cd41
Revert incorrect RCL_3 drop: Revision: 201035 Kit: 201035
authenticationservices/authenticationserver/bwins/authclientU.DEF
authenticationservices/authenticationserver/bwins/authcommonU.def
authenticationservices/authenticationserver/eabi/authclientU.DEF
authenticationservices/authenticationserver/eabi/authcommonU.def
authenticationservices/authenticationserver/group/authclient.mmp
authenticationservices/authenticationserver/group/authcommon.mmp
authenticationservices/authenticationserver/group/authserver.mmp
authenticationservices/authenticationserver/group/bld.inf
authenticationservices/authenticationserver/group/security_authserver.history.xml
authenticationservices/authenticationserver/group/security_authserver.mrp
authenticationservices/authenticationserver/inc/authserver.iby
authenticationservices/authenticationserver/inc/authserver/aspubsubdefs.h
authenticationservices/authenticationserver/inc/authserver/auth_srv_errs.h
authenticationservices/authenticationserver/inc/authserver/authclient.h
authenticationservices/authenticationserver/inc/authserver/authexpression.h
authenticationservices/authenticationserver/inc/authserver/authexpression.inl
authenticationservices/authenticationserver/inc/authserver/authmgrclient.h
authenticationservices/authenticationserver/inc/authserver/authpatchdata.h
authenticationservices/authenticationserver/inc/authserver/authplugininterface.h
authenticationservices/authenticationserver/inc/authserver/authserver_client.h
authenticationservices/authenticationserver/inc/authserver/authtypes.h
authenticationservices/authenticationserver/inc/authserver/idandstring.h
authenticationservices/authenticationserver/inc/authserver/identity.h
authenticationservices/authenticationserver/inc/authserver/log.h
authenticationservices/authenticationserver/inc/authserver/plugindesc.h
authenticationservices/authenticationserver/inc/authserver/plugindesc.inl
authenticationservices/authenticationserver/inc/authserver/protectionkey.h
authenticationservices/authenticationserver/inc/tAuthSvr.iby
authenticationservices/authenticationserver/inc_private/authrepository.h
authenticationservices/authenticationserver/source/client/asyncresponsedecoder.cpp
authenticationservices/authenticationserver/source/client/asyncresponsedecoder.h
authenticationservices/authenticationserver/source/client/authclient.cpp
authenticationservices/authenticationserver/source/client/authclient_impl.h
authenticationservices/authenticationserver/source/client/authmgrclient.cpp
authenticationservices/authenticationserver/source/common/arrayutils.h
authenticationservices/authenticationserver/source/common/arrayutils.inl
authenticationservices/authenticationserver/source/common/authcommon_impl.h
authenticationservices/authenticationserver/source/common/authexpression.cpp
authenticationservices/authenticationserver/source/common/authexpression_impl.h
authenticationservices/authenticationserver/source/common/authexpression_impl.inl
authenticationservices/authenticationserver/source/common/authpatchdata.cpp
authenticationservices/authenticationserver/source/common/authserveripc.cpp
authenticationservices/authenticationserver/source/common/authserveripc.h
authenticationservices/authenticationserver/source/common/authserverutil.h
authenticationservices/authenticationserver/source/common/idandstring.cpp
authenticationservices/authenticationserver/source/common/identity.cpp
authenticationservices/authenticationserver/source/common/plugindesc.cpp
authenticationservices/authenticationserver/source/common/protectionkey.cpp
authenticationservices/authenticationserver/source/server/authdb.cpp
authenticationservices/authenticationserver/source/server/authdb.h
authenticationservices/authenticationserver/source/server/authmain.cpp
authenticationservices/authenticationserver/source/server/authrepository.cpp
authenticationservices/authenticationserver/source/server/authserver.cpp
authenticationservices/authenticationserver/source/server/authserver.h
authenticationservices/authenticationserver/source/server/authserver_impl.h
authenticationservices/authenticationserver/source/server/authserversession.cpp
authenticationservices/authenticationserver/source/server/authserversession.h
authenticationservices/authenticationserver/source/server/authtransaction.cpp
authenticationservices/authenticationserver/source/server/authtransaction.h
authenticationservices/authenticationserver/source/server/encryptedprotectionkey.cpp
authenticationservices/authenticationserver/source/server/encryptedprotectionkey.h
authenticationservices/authenticationserver/source/server/evaluator.cpp
authenticationservices/authenticationserver/source/server/evaluator.h
authenticationservices/authenticationserver/source/server/pluginmgr.cpp
authenticationservices/authenticationserver/source/server/pluginmgr.h
authenticationservices/authenticationserver/source/server/pluginobserver.cpp
authenticationservices/authenticationserver/source/server/pluginobserver.h
authenticationservices/authenticationserver/source/server/trainingmgr.cpp
authenticationservices/authenticationserver/source/server/trainingmgr.h
authenticationservices/authenticationserver/source/server/transientkey.cpp
authenticationservices/authenticationserver/source/server/transientkey.h
authenticationservices/authenticationserver/source/server/transientkeyinfo.cpp
authenticationservices/authenticationserver/source/server/transientkeyinfo.h
authenticationservices/authenticationserver/test/authtool/authtool.cpp
authenticationservices/authenticationserver/test/authtool/authtool.mmp
authenticationservices/authenticationserver/test/reftestplugin/group/200032E7.rss
authenticationservices/authenticationserver/test/reftestplugin/group/bld.inf
authenticationservices/authenticationserver/test/reftestplugin/group/pinplugin.mmp
authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg.mmh
authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg.mmp
authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg_text.mmp
authenticationservices/authenticationserver/test/reftestplugin/group/tpinplugin.mmp
authenticationservices/authenticationserver/test/reftestplugin/inc/pinplugin.iby
authenticationservices/authenticationserver/test/reftestplugin/inc/pinplugindialogdefs.h
authenticationservices/authenticationserver/test/reftestplugin/inc/tpinplugin.iby
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/200032E4.rss
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpanic.h
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.cpp
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.h
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.rh
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.cpp
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.h
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginconfig.rss
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.cpp
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.h
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindialog.cpp
authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindialog.h
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/scripts/tpinplugin.ini
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/scripts/tpinplugin.script
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugin.cpp
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugin.h
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugintestactive.cpp
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinpluginteststep.cpp
authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinpluginteststep.h
authenticationservices/authenticationserver/test/reftestplugin/tpinplugindlg/tpinplugindlg.cpp
authenticationservices/authenticationserver/test/reftestplugin/tpinplugindlg/tpinplugindlg.h
authenticationservices/authenticationserver/test/securitytests/bwins/authsecuritytestsU.def
authenticationservices/authenticationserver/test/securitytests/eabi/authsecuritytestsU.def
authenticationservices/authenticationserver/test/securitytests/group/authsecuritytests.mmp
authenticationservices/authenticationserver/test/securitytests/inc/authreaddevicedata.h
authenticationservices/authenticationserver/test/securitytests/inc/authreaduseranddevicedata.h
authenticationservices/authenticationserver/test/securitytests/inc/authreaduserdata.h
authenticationservices/authenticationserver/test/securitytests/inc/authtrustedui.h
authenticationservices/authenticationserver/test/securitytests/inc/authwritedevicedata.h
authenticationservices/authenticationserver/test/securitytests/inc/authwriteuserdata.h
authenticationservices/authenticationserver/test/securitytests/scripts/authsecuritytests.ini
authenticationservices/authenticationserver/test/securitytests/scripts/authsecuritytests.script
authenticationservices/authenticationserver/test/securitytests/source/authreaddevicedata.cpp
authenticationservices/authenticationserver/test/securitytests/source/authreaduseranddevicedata.cpp
authenticationservices/authenticationserver/test/securitytests/source/authreaduserdata.cpp
authenticationservices/authenticationserver/test/securitytests/source/authsecuritytests.cpp
authenticationservices/authenticationserver/test/securitytests/source/authtrustedui.cpp
authenticationservices/authenticationserver/test/securitytests/source/authwritedevicedata.cpp
authenticationservices/authenticationserver/test/securitytests/source/authwriteuserdata.cpp
authenticationservices/authenticationserver/test/tAuthSvr/bwins/tAuthSvrServerU.DEF
authenticationservices/authenticationserver/test/tAuthSvr/bwins/tMiscAuthPluginU.def
authenticationservices/authenticationserver/test/tAuthSvr/group/tAuthPlugin.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tAuthSvr.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tMiscAuthPlugin.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tauthpluginupgrade.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tauthsvrnc.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tauthsvrwdd.mmp
authenticationservices/authenticationserver/test/tAuthSvr/group/tpostmarketramplugin.mmp
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/10204F0F.rss
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/authplugininterface.cpp
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/main.cpp
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/proxy.cpp
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/tPluginBase.cpp
authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/tPluginBase.h
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_postmarketplugin.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_tauthsvr.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_tclientsidsupport.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/posttauthsvroom.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_patchdata_negative.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_patchdata_positive.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_postmarketplugin.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pretauthsvroom.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_post1.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre1.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre2.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre3.bat
authenticationservices/authenticationserver/test/tAuthSvr/scripts/performance_log_parser.pl
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2_unicode.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr3.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr3.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr4.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr5.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr6.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvr_performance.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvr_performance.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvrclock.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvroom.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvroom.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tclientsidsupport.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tclientsidsupport.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin.ini
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin_macroenabled.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketpluginenabled1_winscw.script
authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketpluginenabled_winscw.script
authenticationservices/authenticationserver/test/tAuthSvr/src/10204F10.rss
authenticationservices/authenticationserver/test/tAuthSvr/src/10204F10_upgrade.rss
authenticationservices/authenticationserver/test/tAuthSvr/src/main.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/proxy.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_AuthSvrCheck.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_EnumIdenties.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_FirstStart.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_IdentifyMultiple.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_RegIdentity.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_authenticate.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_base.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_clientsidsupport.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_createdb.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_multithreaded.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_oom.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_postmarketplugin.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_removeauthmethod.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_removedbs.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_removeidentity.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_resetidentity.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_resultavailability.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_retrainplugin.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/step_setauthprefs.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrServer.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrServer.h
authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrStep.h
authenticationservices/authenticationserver/test/tAuthSvr/src/tPinAuthPlugin.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/tPinAuthPlugin.h
authenticationservices/authenticationserver/test/tAuthSvr/src/tauthsvrservernc.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/tauthsvrserverwdd.cpp
authenticationservices/authenticationserver/test/tAuthSvr/src/tpinauthpluginupgrade.cpp
authenticationservices/authenticationserver/test/tAuthSvr/testdata/AuthSvrPolicy.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin10234100Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113100Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113101Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113102Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113103Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113104Db.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep1.txt
authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep2.txt
authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep3.txt
authenticationservices/authenticationserver/test/tAuthSvr/testdata/initialisation_Info.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/pin_Contents.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/pin_Input.ini
authenticationservices/authenticationserver/test/tAuthSvr/testdata/pinplugin_inactive.txt
authenticationservices/authenticationserver/test/tAuthSvr/testdata/unicode.txt
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/main.cpp
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/proxy.cpp
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/1023F3F4.rss
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/buildpostmarketplugintestdata.fil
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_enablepostmarketplugin.ini
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatanegative.ini
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatapositive.ini
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/tpostmarketramplugin.cpp
authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/tpostmarketramplugin.h
authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthcliserv.script
authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthcliserv_debug.script
authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthexpr.script
authenticationservices/authenticationserver/test/tauthcliserv/step_authexpr_build.cpp
authenticationservices/authenticationserver/test/tauthcliserv/step_authexpr_eval.cpp
authenticationservices/authenticationserver/test/tauthcliserv/step_base.cpp
authenticationservices/authenticationserver/test/tauthcliserv/step_client.cpp
authenticationservices/authenticationserver/test/tauthcliserv/step_firststart.cpp
authenticationservices/authenticationserver/test/tauthcliserv/step_mgrclient.cpp
authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.cpp
authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.h
authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.mmp
authenticationservices/authenticationserver/test/tauthcliserv/tauthcliservstep.h
authenticationservices/authenticationserver/test/tauthdb/scripts/tauthdb.script
authenticationservices/authenticationserver/test/tauthdb/step_createtestdb.cpp
authenticationservices/authenticationserver/test/tauthdb/step_persist2.cpp
authenticationservices/authenticationserver/test/tauthdb/tauthdb.mmp
authenticationservices/authenticationserver/test/tauthdb/tauthdbserver.cpp
authenticationservices/authenticationserver/test/tauthdb/tauthdbserver.h
authenticationservices/authenticationserver/test/tauthdb/tauthdbstep.h
authenticationservices/authenticationserver/test/tauthkeys/scripts/tauthkeys.script
authenticationservices/authenticationserver/test/tauthkeys/step_encryptkey.cpp
authenticationservices/authenticationserver/test/tauthkeys/step_persist.cpp
authenticationservices/authenticationserver/test/tauthkeys/tauthkeys.mmp
authenticationservices/authenticationserver/test/tauthkeys/tauthkeysserver.cpp
authenticationservices/authenticationserver/test/tauthkeys/tauthkeysserver.h
authenticationservices/authenticationserver/test/tauthkeys/tauthkeysstep.h
authenticationservices/authenticationserver/test/tauthplugins/10204f0e.rss
authenticationservices/authenticationserver/test/tauthplugins/10204f0e_upgrade.rss
authenticationservices/authenticationserver/test/tauthplugins/consts.h
authenticationservices/authenticationserver/test/tauthplugins/scripts/tauthplugins.script
authenticationservices/authenticationserver/test/tauthplugins/step_interface.cpp
authenticationservices/authenticationserver/test/tauthplugins/tauthplugins.mmp
authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsserver.cpp
authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsserver.h
authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsstep.h
authenticationservices/authenticationserver/test/tauthplugins/testplugins.cpp
authenticationservices/authenticationserver/test/tauthplugins/testplugins.h
authenticationservices/authenticationserver/test/tauthplugins/testplugins.mmp
authenticationservices/authenticationserver/test/tauthplugins/testpluginsupgrade.cpp
authenticationservices/authenticationserver/test/tauthplugins/testpluginsupgrade.mmp
authorisation/userpromptservice/bwins/upspoliciesu.def
authorisation/userpromptservice/database/source/upsdb.cpp
authorisation/userpromptservice/database/source/upsdbcompact.cpp
authorisation/userpromptservice/database/source/upsdbw.cpp
authorisation/userpromptservice/database/test/tupsdb/source/tupsdbbase.cpp
authorisation/userpromptservice/database/test/tupsdb/source/tupsdbstep.cpp
authorisation/userpromptservice/eabi/upspoliciesu.def
authorisation/userpromptservice/group/bld.inf
authorisation/userpromptservice/inc/tups.iby
authorisation/userpromptservice/inc/tups_integ.iby
authorisation/userpromptservice/policies/source/policyreader.cpp
authorisation/userpromptservice/policies/source/promptrequest.cpp
authorisation/userpromptservice/server/source/upsclient/upsclientserver.cpp
authorisation/userpromptservice/test/group/bld.inf
authorisation/userpromptservice/test/group/tups_dialogcreator_never.mmp
authorisation/userpromptservice/test/group/tupsinteg.mmp
authorisation/userpromptservice/test/group/tupsinteg_post1.mmp
authorisation/userpromptservice/test/group/tupsinteg_unprotected.mmp
authorisation/userpromptservice/test/inc_private/tups_notifiertypes.h
authorisation/userpromptservice/test/tups/packages/copy.bat
authorisation/userpromptservice/test/tups/packages/create.bat
authorisation/userpromptservice/test/tups/packages/dummy.txt
authorisation/userpromptservice/test/tups/packages/integ_buildsis.fil
authorisation/userpromptservice/test/tups/packages/simple.xml
authorisation/userpromptservice/test/tups/packages/tupsinteg_ca_not_instore.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_dialog1.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_eclipse1.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_evaluator1.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_policies1.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_policies2.pkg
authorisation/userpromptservice/test/tups/packages/tupsinteg_post1.pkg
authorisation/userpromptservice/test/tups/packages/uninstall.xml
authorisation/userpromptservice/test/tups/scripts/tups_integ.script
authorisation/userpromptservice/test/tups/src/tupsclientstep.cpp
authorisation/userpromptservice/test/tups/src/tupsclientstep.h
authorisation/userpromptservice/test/tups/tampered_backup/backup10285777.1
authorisation/userpromptservice/test/tups/tampered_backup/howto_readme.txt
authorisation/userpromptservice/test/tups_backuprestore/step_backup.cpp
authorisation/userpromptservice/test/tups_backuprestore/step_base.cpp
authorisation/userpromptservice/test/tups_backuprestore/step_install.cpp
authorisation/userpromptservice/test/tups_backuprestore/step_restore.cpp
authorisation/userpromptservice/test/tups_backuprestore/step_uninstall.cpp
authorisation/userpromptservice/test/tups_backuprestore/tbackuprestore.cpp
authorisation/userpromptservice/test/tups_backuprestore/tbackuprestore.h
authorisation/userpromptservice/test/tups_backuprestore/tbackuprestorestep.h
authorisation/userpromptservice/test/tups_backuprestore/tui.cpp
authorisation/userpromptservice/test/tups_backuprestore/tui.h
authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator.cpp
authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator_noprops.cpp
authorisation/userpromptservice/test/tups_install/languagetable.h
authorisation/userpromptservice/test/tups_install/tuiscriptadaptors.cpp
authorisation/userpromptservice/test/tups_install/tuiscriptadaptors.h
authorisation/userpromptservice/test/tups_install/tupsserver.cpp
authorisation/userpromptservice/test/tups_install/tupsserver.h
authorisation/userpromptservice/test/tups_install/tupsstep.cpp
authorisation/userpromptservice/test/tups_install/tupsstep.h
build.config.xml
contentmgmt/cafrecogniserconfig/ABLD.BAT
contentmgmt/cafstreamingsupport/group/bld.inf
contentmgmt/cafstreamingsupport/group/staclient.mmp
contentmgmt/cafstreamingsupport/group/staserver.mmp
contentmgmt/cafstreamingsupport/group/stashared.mmp
contentmgmt/cafstreamingsupport/group/tscaf.mmp
contentmgmt/cafstreamingsupport/group/tscaf_singleprocess_streamagent.mmp
contentmgmt/cafstreamingsupport/group/tscaf_streamagent01.mmp
contentmgmt/cafstreamingsupport/group/tscaf_streamagent02.mmp
contentmgmt/cafstreamingsupport/test/run_tests.bat
contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/stacommon.h
contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/staserver.h
contentmgmt/cafstreamingsupport/test/streamingtestagent/source/client/staclient.cpp
contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/staserver.cpp
contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/stasession.cpp
contentmgmt/cafstreamingsupport/test/streamingtestagent_singleprocess/source/shared/testsingleprocesskeystreamdecoder.cpp
contentmgmt/cafstreamingsupport/test/tscaf/inc/tscafstep.h
contentmgmt/cafstreamingsupport/test/tscaf/scripts/tscaf_oom_without_upward_dependent.script
contentmgmt/cafstreamingsupport/test/tscaf/scripts/tscaf_without_upward_dependent.script
contentmgmt/cafstreamingsupport/test/tscaf/source/tipsec.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderattributes.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderconstruct.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamsink.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tmultikeystreamdecoders.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tpostacquisition.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/treferenceagent.cpp
contentmgmt/cafstreamingsupport/test/tscaf/source/tscafstep.cpp
contentmgmt/contentaccessfwfordrm/BWINS/caf_v3u.def
contentmgmt/contentaccessfwfordrm/BWINS/cafutils_v2u.def
contentmgmt/contentaccessfwfordrm/EABI/caf_v3u.def
contentmgmt/contentaccessfwfordrm/EABI/cafutils_v2U.DEF
contentmgmt/contentaccessfwfordrm/engineering/dox/multiple DRM file2.gif
contentmgmt/contentaccessfwfordrm/group/CafUtils.mmp
contentmgmt/contentaccessfwfordrm/group/bld.inf
contentmgmt/contentaccessfwfordrm/group/caf.mmp
contentmgmt/contentaccessfwfordrm/group/tcaf.mmp
contentmgmt/contentaccessfwfordrm/inc/agentfactory.h
contentmgmt/contentaccessfwfordrm/inc/agentinterface.h
contentmgmt/contentaccessfwfordrm/inc/attribute.h
contentmgmt/contentaccessfwfordrm/inc/caferr.h
contentmgmt/contentaccessfwfordrm/inc/cafhelper.h
contentmgmt/contentaccessfwfordrm/inc/cafhelperinterface.h
contentmgmt/contentaccessfwfordrm/inc/caftest.iby
contentmgmt/contentaccessfwfordrm/inc/content.h
contentmgmt/contentaccessfwfordrm/inc/data.h
contentmgmt/contentaccessfwfordrm/inc/manager.h
contentmgmt/contentaccessfwfordrm/source/caf/Agentfactory.cpp
contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp
contentmgmt/contentaccessfwfordrm/source/caf/content.cpp
contentmgmt/contentaccessfwfordrm/source/caf/data.cpp
contentmgmt/contentaccessfwfordrm/source/caf/manager.cpp
contentmgmt/contentaccessfwfordrm/source/caf/resolver.cpp
contentmgmt/contentaccessfwfordrm/source/caf/resolver.h
contentmgmt/contentaccessfwfordrm/source/cafutils/cafhelper.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.h
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.h
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.h
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.h
contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.cpp
contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.h
contentmgmt/contentaccessfwfordrm/source/reccaf/CafApaRecognizer.cpp
contentmgmt/referencedrmagent/RefTestAgent/BWINS/rtaclient_v3u.def
contentmgmt/referencedrmagent/RefTestAgent/BWINS/rtaparser_v3u.def
contentmgmt/referencedrmagent/RefTestAgent/EABI/rtaParser_v3u.DEF
contentmgmt/referencedrmagent/RefTestAgent/EABI/rtaclient_v3u.DEF
contentmgmt/referencedrmagent/RefTestAgent/RTAParser/wmdrmcontentparser.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtacontent.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtadata.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtamanager.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Common/clientserver.h
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.h
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.h
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.cpp
contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.h
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.cpp
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.h
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.cpp
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.h
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.cpp
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.h
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.cpp
contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.h
contentmgmt/referencedrmagent/RefTestAgent/group/ABLD.BAT
contentmgmt/referencedrmagent/RefTestAgent/group/RTAclient.mmp
contentmgmt/referencedrmagent/RefTestAgent/group/RTAparser.mmp
contentmgmt/referencedrmagent/RefTestAgent/group/bld.inf
contentmgmt/referencedrmagent/RefTestAgent/group/sraclient.mmp
contentmgmt/referencedrmagent/RefTestAgent/group/sraplugin.mmp
contentmgmt/referencedrmagent/RefTestAgent/group/sraserver.mmp
contentmgmt/referencedrmagent/RefTestAgent/group/srautils.mmp
contentmgmt/referencedrmagent/RefTestAgent/inc/reftestagentconstants.h
contentmgmt/referencedrmagent/RefTestAgent/inc/rta.iby
contentmgmt/referencedrmagent/RefTestAgent/inc/rtacontent.h
contentmgmt/referencedrmagent/RefTestAgent/inc/rtadata.h
contentmgmt/referencedrmagent/RefTestAgent/inc/rtamanager.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/_sdpdefs.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpattributefield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpbandwidthfield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecconstants.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecerr.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecstringpool.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpconnectionfield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpdocument.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpfmtattributefield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpkeyfield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpmediafield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdporiginfield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdprepeatfield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdprtpmapvalue.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdptimefield.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdptypedtime.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/bwins/localsdpcodecu.def
contentmgmt/referencedrmagent/RefTestAgent/localsdp/eabi/localsdpcodecu.def
contentmgmt/referencedrmagent/RefTestAgent/localsdp/group/localsdpcodec.mmp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/csdpcodecstringpool.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpattributefieldptrs.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodec.pan
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodecparseutil.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodecstringconstants.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodectemplate.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodectemplate.inl
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdporiginfieldptrs.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdputil.h
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/csdpcodecstringpool.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpattributefield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpattributefieldptrs.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpbandwidthfield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpcodecparseutil.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpcodecstringpool.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpconnectionfield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpdocument.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpfmtattributefield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpkeyfield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpmediafield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdporiginfield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdporiginfieldptrs.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdprepeatfield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdprtpmapvalue.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdptimefield.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdptypedtime.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdputil.cpp
contentmgmt/referencedrmagent/RefTestAgent/localsdp/strings/localsdpcodecstringconstants.st
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sracommon.h
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sraserver.h
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/srautils.h
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/client/sraclient.cpp
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/sraserver.cpp
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/srasession.cpp
contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/utils/srautils.cpp
contentmgmt/referencedrmagent/refcafhelper/bwins/cafhelperu.def
contentmgmt/referencedrmagent/refcafhelper/eabi/cafhelperu.def
contentmgmt/referencedrmagent/refcafhelper/group/bld.inf
contentmgmt/referencedrmagent/refcafhelper/group/refcafhelper.mmp
contentmgmt/referencedrmagent/refcafhelper/inc/refcafhelper.h
contentmgmt/referencedrmagent/refcafhelper/inc/refcafhelper.iby
contentmgmt/referencedrmagent/refcafhelper/source/refcafhelper.cpp
contentmgmt/referencedrmagent/tcaf/scripts/consumerstep.ini
contentmgmt/referencedrmagent/tcaf/scripts/drmfileperformance_armv5.script
contentmgmt/referencedrmagent/tcaf/scripts/managerstep.ini
contentmgmt/referencedrmagent/tcaf/scripts/nodrmcapsteps.script
contentmgmt/referencedrmagent/tcaf/scripts/tcafhelper.ini
contentmgmt/referencedrmagent/tcaf/scripts/tcafhelper.script
contentmgmt/referencedrmagent/tcaf/scripts/tcafwmdrmsupport.ini
contentmgmt/referencedrmagent/tcaf/scripts/tcafwmdrmsupport.script
contentmgmt/referencedrmagent/tcaf/source/CafUtilsStep.h
contentmgmt/referencedrmagent/tcaf/source/CafutilsStep.cpp
contentmgmt/referencedrmagent/tcaf/source/Consumerstep.cpp
contentmgmt/referencedrmagent/tcaf/source/Consumerstep.h
contentmgmt/referencedrmagent/tcaf/source/Contentstep.cpp
contentmgmt/referencedrmagent/tcaf/source/ManagerStep.cpp
contentmgmt/referencedrmagent/tcaf/source/ManagerStep.h
contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.cpp
contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.h
contentmgmt/referencedrmagent/tcaf/source/cafserver.cpp
contentmgmt/referencedrmagent/tcaf/source/cafstep.cpp
contentmgmt/referencedrmagent/tcaf/source/cafstep.h
contentmgmt/referencedrmagent/tcaf/source/contentstep.h
contentmgmt/referencedrmagent/tcaf/testdata/dummywm.asf
crypto/weakcrypto/bwins/HASHu.def
crypto/weakcrypto/bwins/PBE_v2U.def
crypto/weakcrypto/bwins/RANDOMU.DEF
crypto/weakcrypto/bwins/TPADDINGSERVERU.DEF
crypto/weakcrypto/bwins/cryptographyU.def
crypto/weakcrypto/bwins/cryptography_eka2U.def
crypto/weakcrypto/bwins/cryptoswitchU.def
crypto/weakcrypto/bwins/randsvru.def
crypto/weakcrypto/eabi/PBE_v2U.def
crypto/weakcrypto/eabi/cryptographyU.DEF
crypto/weakcrypto/eabi/cryptography_eka2U.def
crypto/weakcrypto/eabi/hashU.DEF
crypto/weakcrypto/eabi/randomU.DEF
crypto/weakcrypto/eabi/randsvrU.DEF
crypto/weakcrypto/group/How_To_Build_Strong_Crypto.txt
crypto/weakcrypto/group/README.txt
crypto/weakcrypto/group/README_POST_94_MCL_BRANCH.txt
crypto/weakcrypto/group/bld.inf
crypto/weakcrypto/group/crypto.mmh
crypto/weakcrypto/group/crypto.mmp
crypto/weakcrypto/group/cryptolib.mmp
crypto/weakcrypto/group/cryptoswitch.mmp
crypto/weakcrypto/group/doxyfile
crypto/weakcrypto/group/hash.mmp
crypto/weakcrypto/group/pbe.mmp
crypto/weakcrypto/group/random.mmp
crypto/weakcrypto/group/randsvr.mmp
crypto/weakcrypto/group/security_crypto_strong.history.xml
crypto/weakcrypto/group/security_crypto_strong.mrp
crypto/weakcrypto/group/security_crypto_weak.history.xml
crypto/weakcrypto/group/security_crypto_weak.mrp
crypto/weakcrypto/group/tasymmetric.mmp
crypto/weakcrypto/group/tbigint.mmp
crypto/weakcrypto/group/thash.mmp
crypto/weakcrypto/group/tpaddingServer.mmp
crypto/weakcrypto/group/tpbe.mmp
crypto/weakcrypto/group/tpkcs5kdf.mmp
crypto/weakcrypto/group/trandom.mmp
crypto/weakcrypto/group/tsymmetric.mmp
crypto/weakcrypto/source/asymmetric/asymmetric.cpp
crypto/weakcrypto/source/asymmetric/dh.cpp
crypto/weakcrypto/source/asymmetric/dhkeys.cpp
crypto/weakcrypto/source/asymmetric/dsakeys.cpp
crypto/weakcrypto/source/asymmetric/dsasigner.cpp
crypto/weakcrypto/source/asymmetric/dsaverifier.cpp
crypto/weakcrypto/source/asymmetric/rsadecryptor.cpp
crypto/weakcrypto/source/asymmetric/rsaencryptor.cpp
crypto/weakcrypto/source/asymmetric/rsafunction.cpp
crypto/weakcrypto/source/asymmetric/rsafunction.h
crypto/weakcrypto/source/asymmetric/rsakeys.cpp
crypto/weakcrypto/source/asymmetric/rsasigner.cpp
crypto/weakcrypto/source/asymmetric/rsaverifier.cpp
crypto/weakcrypto/source/bigint/algorithms.cpp
crypto/weakcrypto/source/bigint/algorithms.h
crypto/weakcrypto/source/bigint/bigint.cpp
crypto/weakcrypto/source/bigint/gcchelp.cpp
crypto/weakcrypto/source/bigint/mont.cpp
crypto/weakcrypto/source/bigint/mont.h
crypto/weakcrypto/source/bigint/primes.cpp
crypto/weakcrypto/source/bigint/primes.h
crypto/weakcrypto/source/bigint/rinteger.cpp
crypto/weakcrypto/source/bigint/stackinteger.h
crypto/weakcrypto/source/bigint/vchelp.cpp
crypto/weakcrypto/source/bigint/windowslider.cpp
crypto/weakcrypto/source/bigint/windowslider.h
crypto/weakcrypto/source/bigint/words.h
crypto/weakcrypto/source/common/cryptostrength.cpp
crypto/weakcrypto/source/common/inlines.h
crypto/weakcrypto/source/common/keyidentifierutil.cpp
crypto/weakcrypto/source/cryptoswitch/cryptography_stubs.h
crypto/weakcrypto/source/cryptoswitch/cryptoswitch.cpp
crypto/weakcrypto/source/hash/hash.cpp
crypto/weakcrypto/source/hash/hashinc.h
crypto/weakcrypto/source/hash/hmac.cpp
crypto/weakcrypto/source/hash/md2.cpp
crypto/weakcrypto/source/hash/md4.cpp
crypto/weakcrypto/source/hash/md5.cpp
crypto/weakcrypto/source/hash/sha1.cpp
crypto/weakcrypto/source/hash/sha2.cpp
crypto/weakcrypto/source/hash/sha224and256.cpp
crypto/weakcrypto/source/hash/sha224and256.h
crypto/weakcrypto/source/hash/sha384and512.cpp
crypto/weakcrypto/source/hash/sha384and512.h
crypto/weakcrypto/source/hash/shacommon.h
crypto/weakcrypto/source/padding/padding.cpp
crypto/weakcrypto/source/padding/pkcs7.cpp
crypto/weakcrypto/source/pbe/pbe.cpp
crypto/weakcrypto/source/pbe/pbedata.cpp
crypto/weakcrypto/source/pbe/pbefactory.cpp
crypto/weakcrypto/source/pbe/pbencryptor.cpp
crypto/weakcrypto/source/pbe/pbencryptorset.cpp
crypto/weakcrypto/source/pbe/pbeset.cpp
crypto/weakcrypto/source/pbe/pbesymmetricfactory.cpp
crypto/weakcrypto/source/pbe/pbesymmetricfactory.h
crypto/weakcrypto/source/pkcs12kdf/GenTestDKs.java
crypto/weakcrypto/source/pkcs12kdf/Pkcs12Pbe.java
crypto/weakcrypto/source/pkcs12kdf/pkcs12kdf.cpp
crypto/weakcrypto/source/pkcs5kdf/pkcs5kdf.cpp
crypto/weakcrypto/source/random/random.cpp
crypto/weakcrypto/source/random/randsvr.cpp
crypto/weakcrypto/source/random/threadrandom.cpp
crypto/weakcrypto/source/symmetric/3des.cpp
crypto/weakcrypto/source/symmetric/arc4.cpp
crypto/weakcrypto/source/symmetric/bufferedtransformation.cpp
crypto/weakcrypto/source/symmetric/cbcmode.cpp
crypto/weakcrypto/source/symmetric/des.cpp
crypto/weakcrypto/source/symmetric/des.inl
crypto/weakcrypto/source/symmetric/destables.h
crypto/weakcrypto/source/symmetric/mstreamcipher.cpp
crypto/weakcrypto/source/symmetric/nullcipher.cpp
crypto/weakcrypto/source/symmetric/rc2.cpp
crypto/weakcrypto/source/symmetric/rc2table.h
crypto/weakcrypto/source/symmetric/rijndael.cpp
crypto/weakcrypto/source/symmetric/rijndaeltables.h
crypto/weakcrypto/strong/bld.inf
crypto/weakcrypto/strong/strong_crypto.mmp
crypto/weakcrypto/test/performancetests.mdl
crypto/weakcrypto/test/run_tests.bat
crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate.cpp
crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate32.dsp
crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate32.dsw
crypto/weakcrypto/test/tasymmetric/performancetest.cpp
crypto/weakcrypto/test/tasymmetric/performancetest.h
crypto/weakcrypto/test/tasymmetric/script_gen/Makefile
crypto/weakcrypto/test/tasymmetric/script_gen/dsa_test.c
crypto/weakcrypto/test/tasymmetric/script_gen/gen_dsakey.c
crypto/weakcrypto/test/tasymmetric/script_gen/gen_random.c
crypto/weakcrypto/test/tasymmetric/script_gen/gen_rsakey.c
crypto/weakcrypto/test/tasymmetric/script_gen/keys.c
crypto/weakcrypto/test/tasymmetric/script_gen/keys.h
crypto/weakcrypto/test/tasymmetric/script_gen/rsa_test.c
crypto/weakcrypto/test/tasymmetric/script_gen/utils.c
crypto/weakcrypto/test/tasymmetric/script_gen/utils.h
crypto/weakcrypto/test/tasymmetric/scripts/asymmetricPerformance.txt
crypto/weakcrypto/test/tasymmetric/scripts/tasymmetrictests.txt
crypto/weakcrypto/test/tasymmetric/tasymmetricmain.cpp
crypto/weakcrypto/test/tasymmetric/tbrokenrandom.cpp
crypto/weakcrypto/test/tasymmetric/tbrokenrandom.h
crypto/weakcrypto/test/tasymmetric/tdhvector.cpp
crypto/weakcrypto/test/tasymmetric/tdhvector.h
crypto/weakcrypto/test/tasymmetric/tdsaprimegen.cpp
crypto/weakcrypto/test/tasymmetric/tdsaprimegen.h
crypto/weakcrypto/test/tasymmetric/tdsasignfb.cpp
crypto/weakcrypto/test/tasymmetric/tdsasignfb.h
crypto/weakcrypto/test/tasymmetric/tdsavector.cpp
crypto/weakcrypto/test/tasymmetric/tdsavector.h
crypto/weakcrypto/test/tasymmetric/trsaencryptfb.cpp
crypto/weakcrypto/test/tasymmetric/trsaencryptfb.h
crypto/weakcrypto/test/tasymmetric/trsaparams.cpp
crypto/weakcrypto/test/tasymmetric/trsaparams.h
crypto/weakcrypto/test/tasymmetric/trsasignfb.cpp
crypto/weakcrypto/test/tasymmetric/trsasignfb.h
crypto/weakcrypto/test/tasymmetric/trsavector.cpp
crypto/weakcrypto/test/tasymmetric/trsavector.h
crypto/weakcrypto/test/tasymmetric/tsignatureinput.cpp
crypto/weakcrypto/test/tasymmetric/tsignatureinput.h
crypto/weakcrypto/test/tasymmetric/tvectortest.cpp
crypto/weakcrypto/test/tasymmetric/tvectortest.h
crypto/weakcrypto/test/tasymmetric/tvectorutils.cpp
crypto/weakcrypto/test/tasymmetric/tvectorutils.h
crypto/weakcrypto/test/tbigint/scripts/tbasicmathstests.txt
crypto/weakcrypto/test/tbigint/scripts/tconstructiontests.txt
crypto/weakcrypto/test/tbigint/scripts/tmontgomerytests.txt
crypto/weakcrypto/test/tbigint/scripts/tperformancetests.txt
crypto/weakcrypto/test/tbigint/scripts/tprimefailuretests.txt
crypto/weakcrypto/test/tbigint/scripts/tprimegen.txt
crypto/weakcrypto/test/tbigint/scripts/tprimetests.txt
crypto/weakcrypto/test/tbigint/scripts/tprimetests2.txt
crypto/weakcrypto/test/tbigint/tbasicmathsfb.cpp
crypto/weakcrypto/test/tbigint/tbasicmathsfb.h
crypto/weakcrypto/test/tbigint/tbasicmathsvector.cpp
crypto/weakcrypto/test/tbigint/tbasicmathsvector.h
crypto/weakcrypto/test/tbigint/tbigint.h
crypto/weakcrypto/test/tbigint/tbigintmain.cpp
crypto/weakcrypto/test/tbigint/tconstructionfb.cpp
crypto/weakcrypto/test/tbigint/tconstructionfb.h
crypto/weakcrypto/test/tbigint/tconstructionvector.cpp
crypto/weakcrypto/test/tbigint/tconstructionvector.h
crypto/weakcrypto/test/tbigint/tmontgomeryfb.cpp
crypto/weakcrypto/test/tbigint/tmontgomeryfb.h
crypto/weakcrypto/test/tbigint/tmontgomeryperformance.cpp
crypto/weakcrypto/test/tbigint/tmontgomeryperformance.h
crypto/weakcrypto/test/tbigint/tmontgomeryvector.cpp
crypto/weakcrypto/test/tbigint/tmontgomeryvector.h
crypto/weakcrypto/test/tbigint/tprimegen.cpp
crypto/weakcrypto/test/tbigint/tprimegen.h
crypto/weakcrypto/test/tbigint/tprimegenperformance.cpp
crypto/weakcrypto/test/tbigint/tprimegenperformance.h
crypto/weakcrypto/test/tbigint/tprimegenvector.cpp
crypto/weakcrypto/test/tbigint/tprimegenvector.h
crypto/weakcrypto/test/tbigint/tprimevector.cpp
crypto/weakcrypto/test/tbigint/tprimevector.h
crypto/weakcrypto/test/tbigint/tprimevectorperformance.cpp
crypto/weakcrypto/test/tbigint/tprimevectorperformance.h
crypto/weakcrypto/test/tbigint/tutils.cpp
crypto/weakcrypto/test/tbigint/tutils.h
crypto/weakcrypto/test/thash/hashtestutils.cpp
crypto/weakcrypto/test/thash/hashtestutils.h
crypto/weakcrypto/test/thash/testdata/448bit_data.txt
crypto/weakcrypto/test/thash/testdata/512bit_data.txt
crypto/weakcrypto/test/thash/testdata/512bitdata_largerkey.txt
crypto/weakcrypto/test/thash/testdata/hmacmd2.dat
crypto/weakcrypto/test/thash/testdata/hmacmd4.dat
crypto/weakcrypto/test/thash/testdata/hmacmd5.dat
crypto/weakcrypto/test/thash/testdata/hmacsha1.dat
crypto/weakcrypto/test/thash/testdata/hmacsha224.dat
crypto/weakcrypto/test/thash/testdata/hmacsha256.dat
crypto/weakcrypto/test/thash/testdata/hmacsha384.dat
crypto/weakcrypto/test/thash/testdata/hmacsha512.dat
crypto/weakcrypto/test/thash/testdata/largerthanblocksizedata_key.txt
crypto/weakcrypto/test/thash/testdata/md2.dat
crypto/weakcrypto/test/thash/testdata/md4.dat
crypto/weakcrypto/test/thash/testdata/md4_largedata1.txt
crypto/weakcrypto/test/thash/testdata/md4_largedata2.txt
crypto/weakcrypto/test/thash/testdata/md4_largedata3.txt
crypto/weakcrypto/test/thash/testdata/md5.dat
crypto/weakcrypto/test/thash/testdata/sha1.dat
crypto/weakcrypto/test/thash/testdata/sha224.dat
crypto/weakcrypto/test/thash/testdata/sha256.dat
crypto/weakcrypto/test/thash/testdata/sha384.dat
crypto/weakcrypto/test/thash/testdata/sha512.dat
crypto/weakcrypto/test/thash/thash.cpp
crypto/weakcrypto/test/tpadding/scripts/tpadSSLv3.ini
crypto/weakcrypto/test/tpadding/scripts/tpadding.script
crypto/weakcrypto/test/tpadding/scripts/tpaddingnone.ini
crypto/weakcrypto/test/tpadding/scripts/tpaddingudeb.script
crypto/weakcrypto/test/tpadding/scripts/tpadpkcs7.ini
crypto/weakcrypto/test/tpadding/tpaddingNone.cpp
crypto/weakcrypto/test/tpadding/tpaddingNone.h
crypto/weakcrypto/test/tpadding/tpaddingPKCS1.cpp
crypto/weakcrypto/test/tpadding/tpaddingPKCS1.h
crypto/weakcrypto/test/tpadding/tpaddingPKCS7.cpp
crypto/weakcrypto/test/tpadding/tpaddingPKCS7.h
crypto/weakcrypto/test/tpadding/tpaddingSSLv3.cpp
crypto/weakcrypto/test/tpadding/tpaddingSSLv3.h
crypto/weakcrypto/test/tpadding/tpaddingServer.cpp
crypto/weakcrypto/test/tpadding/tpaddingServer.h
crypto/weakcrypto/test/tpadding/tpaddingTestSteps.cpp
crypto/weakcrypto/test/tpadding/tpaddingTestSteps.h
crypto/weakcrypto/test/tpbe/Data/pkcs12-first.dat
crypto/weakcrypto/test/tpbe/Data/pkcs5-orig.dat
crypto/weakcrypto/test/tpbe/Data/strong.dat
crypto/weakcrypto/test/tpbe/Data/weak.dat
crypto/weakcrypto/test/tpbe/scripts/tpbetests_v2.txt
crypto/weakcrypto/test/tpbe/tactionelement.cpp
crypto/weakcrypto/test/tpbe/tactionelement.h
crypto/weakcrypto/test/tpbe/tactionset.cpp
crypto/weakcrypto/test/tpbe/tactionset.h
crypto/weakcrypto/test/tpbe/tactionsetreadpfs.cpp
crypto/weakcrypto/test/tpbe/tactionsetreadpfs.h
crypto/weakcrypto/test/tpbe/tactionsetwritepfs.cpp
crypto/weakcrypto/test/tpbe/tactionsetwritepfs.h
crypto/weakcrypto/test/tpbe/texternpbeparams.cpp
crypto/weakcrypto/test/tpbe/texternpbeparams.h
crypto/weakcrypto/test/tpbe/tpbe.h
crypto/weakcrypto/test/tpbe/tpbemain.cpp
crypto/weakcrypto/test/tpkcs5kdf/scripts/tpkcs12kdftests.txt
crypto/weakcrypto/test/tpkcs5kdf/tactionderivekey.cpp
crypto/weakcrypto/test/tpkcs5kdf/tactionderivekey.h
crypto/weakcrypto/test/tpkcs5kdf/tpkcs5kdfmain.cpp
crypto/weakcrypto/test/trandom/t_random.cpp
crypto/weakcrypto/test/trandom/t_random.mmp
crypto/weakcrypto/test/trandom/testdata/3des.dat
crypto/weakcrypto/test/trandom/testdata/3des2cbc.dat
crypto/weakcrypto/test/trandom/testdata/3des2cfb.dat
crypto/weakcrypto/test/trandom/testdata/3des2ecb.dat
crypto/weakcrypto/test/trandom/testdata/3des2ofb.dat
crypto/weakcrypto/test/trandom/testdata/3des3cbc.dat
crypto/weakcrypto/test/trandom/testdata/3des3cfb.dat
crypto/weakcrypto/test/trandom/testdata/3des3ecb.dat
crypto/weakcrypto/test/trandom/testdata/3des3ofb.dat
crypto/weakcrypto/test/trandom/testdata/3descbc.dat
crypto/weakcrypto/test/trandom/testdata/3descfb.dat
crypto/weakcrypto/test/trandom/testdata/3desecb.dat
crypto/weakcrypto/test/trandom/testdata/3desofb.dat
crypto/weakcrypto/test/trandom/testdata/bsafetest.dat
crypto/weakcrypto/test/trandom/testdata/des.dat
crypto/weakcrypto/test/trandom/testdata/descbc.dat
crypto/weakcrypto/test/trandom/testdata/descfb.dat
crypto/weakcrypto/test/trandom/testdata/desecb.dat
crypto/weakcrypto/test/trandom/testdata/desofb.dat
crypto/weakcrypto/test/trandom/testdata/function.dat
crypto/weakcrypto/test/trandom/testdata/hmacmd2.dat
crypto/weakcrypto/test/trandom/testdata/hmacmd5.dat
crypto/weakcrypto/test/trandom/testdata/hmacsha.dat
crypto/weakcrypto/test/trandom/testdata/hmacsha1.dat
crypto/weakcrypto/test/trandom/testdata/md2.dat
crypto/weakcrypto/test/trandom/testdata/md5.dat
crypto/weakcrypto/test/trandom/testdata/oom.dat
crypto/weakcrypto/test/trandom/testdata/rc2cbc.dat
crypto/weakcrypto/test/trandom/testdata/rc2cfb.dat
crypto/weakcrypto/test/trandom/testdata/rc2ecb.dat
crypto/weakcrypto/test/trandom/testdata/rc2ofb.dat
crypto/weakcrypto/test/trandom/testdata/rc4.dat
crypto/weakcrypto/test/trandom/testdata/rc5cbc.dat
crypto/weakcrypto/test/trandom/testdata/rc5cfb.dat
crypto/weakcrypto/test/trandom/testdata/rc5ecb.dat
crypto/weakcrypto/test/trandom/testdata/rc5ofb.dat
crypto/weakcrypto/test/trandom/testdata/rsa.dat
crypto/weakcrypto/test/trandom/testdata/script.dat
crypto/weakcrypto/test/trandom/testdata/sha.dat
crypto/weakcrypto/test/trandom/testdata/sha1.dat
crypto/weakcrypto/test/trandom/testdata/vector.dat
crypto/weakcrypto/test/tsymmetric/cryptotestaction.cpp
crypto/weakcrypto/test/tsymmetric/cryptotestaction.h
crypto/weakcrypto/test/tsymmetric/scripts/AESECBVectorsScript.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESECB_KAT_VK.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESECB_KAT_VT.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC128.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC192.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC256.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB128.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB192.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB256.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC128.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC192.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC256.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB128.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB192.txt
crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB256.txt
crypto/weakcrypto/test/tsymmetric/scripts/symmetricOOMtests.txt
crypto/weakcrypto/test/tsymmetric/scripts/tsymmetricperformancetests.txt
crypto/weakcrypto/test/tsymmetric/scripts/tsymmetrictests.txt
crypto/weakcrypto/test/tsymmetric/tactionincremental.cpp
crypto/weakcrypto/test/tsymmetric/tactionincremental.h
crypto/weakcrypto/test/tsymmetric/tactionmontecarlo.cpp
crypto/weakcrypto/test/tsymmetric/tactionmontecarlo.h
crypto/weakcrypto/test/tsymmetric/tactionvector.cpp
crypto/weakcrypto/test/tsymmetric/tactionvector.h
crypto/weakcrypto/test/tsymmetric/tperformancetest.cpp
crypto/weakcrypto/test/tsymmetric/tperformancetest.h
crypto/weakcrypto/test/tsymmetric/tsymmetricmain.cpp
crypto/weakcryptospi/group/ABLD.BAT
crypto/weakcryptospi/group/bld.inf
crypto/weakcryptospi/group/random.mmp
crypto/weakcryptospi/group/tcryptospi.mmp
crypto/weakcryptospi/inc/cryptotests.iby
crypto/weakcryptospi/inc/spi/cryptospidef.h
crypto/weakcryptospi/inc/tcryptospi.iby
crypto/weakcryptospi/source/bigint/stackinteger.h
crypto/weakcryptospi/source/spi/cryptospiutil.cpp
crypto/weakcryptospi/test/kms/bld.inf
crypto/weakcryptospi/test/tasymmetric/script_gen/keys.c
crypto/weakcryptospi/test/tasymmetric/script_gen/rsa_test.c
crypto/weakcryptospi/test/tasymmetric/scripts/performance testing strategy.txt
crypto/weakcryptospi/test/tcryptospi/group/bld.inf
crypto/weakcryptospi/test/tcryptospi/group/tecchw-plug-ins.txt
crypto/weakcryptospi/test/tcryptospi/scripts/batchfiles/post_dummyeccplugin.bat
crypto/weakcryptospi/test/tcryptospi/scripts/batchfiles/pre_dummyeccplugin.bat
crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi.script
crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi_v2.script
crypto/weakcryptospi/test/tcryptospi/scripts/te_dummyeccciphertestcases.script
crypto/weakcryptospi/test/tcryptospi/src/dummyecccipherloadstep.cpp
crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiconversion.cpp
crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiserver.cpp
crypto/weakcryptospi/test/tcryptospi/testdata/dummyeccciphertestcases.ini
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/README
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/cbc_d_m.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/cbc_e_m.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_d_m.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_e_m.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_iv.readme
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_iv.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_tbl.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_vk.txt
crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_vt.txt
cryptomgmtlibs/cryptotokenfw/group/bld.inf
cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStoreManager_v2.h
cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStore_v2.h
cryptomgmtlibs/cryptotokenfw/inc_interfaces/mkeystore_v2.h
cryptomgmtlibs/securitycommonutils/group/bld.inf
cryptomgmtlibs/securitycommonutils/inc/cleanuputils.h
cryptomgmtlibs/securitycommonutils/inc/ipcstream.inl
cryptomgmtlibs/securitycommonutils/inc/securityutils.h
cryptomgmtlibs/securitycommonutils/inc/streamingarray.h
cryptomgmtlibs/securitycommonutils/inc/streamingarray.inl
cryptomgmtlibs/securitytestfw/group/asnpkcs.pkg
cryptomgmtlibs/securitytestfw/group/authorisation.pkg
cryptomgmtlibs/securitytestfw/group/bld.inf
cryptomgmtlibs/securitytestfw/group/caf.pkg
cryptomgmtlibs/securitytestfw/group/certman.pkg
cryptomgmtlibs/securitytestfw/group/crypto.pkg
cryptomgmtlibs/securitytestfw/group/custom/postrun_custom.xml
cryptomgmtlibs/securitytestfw/group/custom/prerun_custom.xml
cryptomgmtlibs/securitytestfw/group/filetokesn.pkg
cryptomgmtlibs/securitytestfw/group/ocsptests.pkg
cryptomgmtlibs/securitytestfw/group/recog.pkg
cryptomgmtlibs/securitytestfw/group/t_testhandler2.mmp
cryptomgmtlibs/securitytestfw/inc/SecurityTests.iby
cryptomgmtlibs/securitytestfw/inc/cryptodeps.iby
cryptomgmtlibs/securitytestfw/test/autotesting/runcrypto_wmdrm.bat
cryptomgmtlibs/securitytestfw/test/autotesting/sdp_bld.inf
cryptomgmtlibs/securitytestfw/test/autotesting/test_launcher.pl
cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_auth.bat
cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_newrom.bat
cryptomgmtlibs/securitytestfw/test/testhandler2/tScriptSetup.cpp
cryptomgmtlibs/securitytestfw/test/testhandler2/t_tefinput.cpp
cryptomgmtlibs/securitytestfw/testcertificates/certman/tcertstore/tdata/selfsignedcertificate.der
cryptomgmtlibs/securitytestfw/testcertificates/group/bld.inf
cryptoplugins/cryptospiplugins/group/bld.inf
cryptoplugins/cryptospiplugins/inc/cryptospi_testwmdrmplugins.iby
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/bwins/cryptospihaiu.def
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/bwins/dummyecchwpluginu.def
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/eabi/cryptospihaiu.def
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/eabi/dummyecchwpluginu.def
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/bld.inf
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/cryptospihai.mmp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/dummyecchwplugin.mmp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/cryptospihai.cpp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/cryptospihai.h
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccimpl.cpp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccimpl.h
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccsignerimpl.cpp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccsignerimpl.h
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginconfig.h
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginentry.cpp
cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginentry.h
cryptoplugins/cryptospiplugins/test/h4drv/crypto_h4/bld.inf
cryptoservices/browserrootcertificates/browserrootcerts.mrp
cryptoservices/browserrootcertificates/certconvert.py
cryptoservices/browserrootcertificates/readme.txt
cryptoservices/browserrootcertificates/trustmapping.txt
cryptoservices/certificateandkeymgmt/bwins/certstoreu.def
cryptoservices/certificateandkeymgmt/certstore/certclients.dat
cryptoservices/certificateandkeymgmt/certstore/certstore.mmp
cryptoservices/certificateandkeymgmt/certstore/unifiedkeystore.cpp
cryptoservices/certificateandkeymgmt/eabi/certstoreu.def
cryptoservices/certificateandkeymgmt/group/bld.inf
cryptoservices/certificateandkeymgmt/inc/unifiedkeystore_v2.h
cryptoservices/certificateandkeymgmt/inc/x509cert.h
cryptoservices/certificateandkeymgmt/tcertstore/T_unifiedcertstoreadd.cpp
cryptoservices/certificateandkeymgmt/tcertstore/readme first.txt
cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.ini
cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.script
cryptoservices/certificateandkeymgmt/tcertstore/t_filter.cpp
cryptoservices/certificateandkeymgmt/tcertstore/t_filter.h
cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/inc/tpkcs12integrationserver.iby
cryptoservices/certificateandkeymgmt/tx509/comparisontest.cpp
cryptoservices/certificateandkeymgmt/tx509/extensiontest.cpp
cryptoservices/certificateandkeymgmt/x509/x509cert.cpp
cryptoservices/filebasedcertificateandkeystores/Inc/CFSTokenTypeClient.h
cryptoservices/filebasedcertificateandkeystores/Inc/filetokens.iby
cryptoservices/filebasedcertificateandkeystores/Inc/filetokenstests.iby
cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.h
cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.inl
cryptoservices/filebasedcertificateandkeystores/Inc/keystore_errs.h
cryptoservices/filebasedcertificateandkeystores/group/bld.inf
cryptoservices/filebasedcertificateandkeystores/group/fstokenserver_useauth.mmp
cryptoservices/filebasedcertificateandkeystores/source/generic/client/clientsession.cpp
cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokencliserv.h
cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokenservername.h
cryptoservices/filebasedcertificateandkeystores/source/generic/server/fsserver.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/200218e6.txt
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyStoreConduit.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Cfskeystoreserver.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Ckeystoreconduit.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/cfskeystoreserver.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/cfskeystoreserver.inl
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.h
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.cpp
cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.h
cryptoservices/filebasedcertificateandkeystores/test/bwins/tcryptotokenhaiu.def
cryptoservices/filebasedcertificateandkeystores/test/eabi/tcryptotokenhaiu.def
cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.mmp
cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rls
cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rss
cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool_usage.cpp
cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.cpp
cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.h
cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.mmp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/101faaaa.rss
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystore.cpp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.cpp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.h
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.mmp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokenclient.cpp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokenclient.h
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokentypeclient.cpp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokentypeclient.h
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/thwkeystoredefs.h
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/tkeydetails.cpp
cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/tkeydetails.h
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/data/hwkeys.dat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authenticate_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authenticate_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authobjects_v2_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authobjects_v2_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/epoc_keystoreusesauthserver.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/replace_epoc_ini.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/restore_epoc_ini.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_copykeys.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_post.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_pre.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_post.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_pre.bat
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/cancel_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/cancel_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/capability_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/capability_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/createoldkeystore.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/createoldkeystore.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/exportscript_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/exportscript_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/initialize.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oldserver_newfeature.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oldserver_newfeature.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oom_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oom_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reg_first_identity.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reg_second_identity.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/registration.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reload_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reload_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/servoom_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/servoom_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/testnewkeystore.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/testnewkeystore.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/thwkeystore.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/thwkeystore.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication1.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication1.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication2.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication2.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_nouserregistered.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_nouserregistered.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_useauth.ini
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_useauth.script
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_addkey.cpp
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_import.cpp
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore.cpp
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.cpp
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.h
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_defs.h
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_open.cpp
cryptoservices/filebasedcertificateandkeystores/test/tkeystore/tkeystore.mmp
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrate.txt
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrate_default.txt
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_help.txt
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_param_missing1.txt
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_param_missing2.txt
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/scripts/keytool_migrate.ini
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/scripts/keytool_migrate.script
cryptoservices/filebasedcertificateandkeystores/test/ttesttools/ttesttoolserver.cpp
cryptoservices/rootcertificates/data/SymbianA.der
cryptoservices/rootcertificates/data/SymbianB.der
cryptoservices/rootcertificates/data/SymbianSignedCerts.txt
cryptoservices/rootcertificates/data/swicertstore.dat
cryptoservices/rootcertificates/data/symbianc.der
cryptoservices/rootcertificates/data/symbiand.der
cryptoservices/rootcertificates/group/bld.inf
cryptoservices/rootcertificates/group/rootcerts.iby
cryptoservices/rootcertificates/group/rootcerts.mrp
cryptoservices/rootcertificates/rootcerts.history.xml
package_definition.xml
package_map.xml
securityanddataprivacytools/securityconfig/authserver/2001ea7f.txt
securityanddataprivacytools/securityconfig/conf/ci_securityconfig.confml
securityanddataprivacytools/securityconfig/conf/securityconfig.confml
securityanddataprivacytools/securityconfig/conf/securityconfig_2002b28b.crml
securityanddataprivacytools/securityconfig/group/bld.inf
securityanddataprivacytools/securityconfig/tlsprovider/SWTLSTOKENTYPE.RLS
securityanddataprivacytools/securityconfig/tlsprovider/SWTLSTOKENTYPE.RSS
securityanddataprivacytools/securityconfig/tlsprovider/tlscachetimeouts.rh
securityanddataprivacytools/securityconfig/tlsprovider/tlscachetimeouts.rss
securityanddataprivacytools/securityconfig/tlsprovider/tlsproviderconfig.iby
securityanddataprivacytools/securityconfig/tlsprovider/tlsproviderpolicy.ini
securityanddataprivacytools/securityconfig/ups/romstub/bld.inf
securityanddataprivacytools/securityconfig/ups/romstub/buildstub.mak
securityanddataprivacytools/securityconfig/ups/romstub/upsromstubsis.flm
securityanddataprivacytools/securityconfig/ups/romstub/upsromstubsis.xml
securityanddataprivacytools/securitytools/certapp/encdec/certinfo.cpp
securityanddataprivacytools/securitytools/certapp/encdec/certinfo.h
securityanddataprivacytools/securitytools/certapp/encdec/filecertstore.cpp
securityanddataprivacytools/securitytools/certapp/encdec/x509utils.cpp
securityanddataprivacytools/securitytools/certapp/encdec/x509utils.h
securityanddataprivacytools/securitytools/certapp/group/certapp.mmp
securityanddataprivacytools/securitytools/certapp/test/tcertapp/ucs2-bigendian.txt
sysdef_1_4_0-1.dtd
--- a/authenticationservices/authenticationserver/bwins/authclientU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-EXPORTS
-	??0RAuthClient@AuthServer@@QAE@XZ @ 1 NONAME ; AuthServer::RAuthClient::RAuthClient(void)
-	?ActivePluginsL@RAuthClient@AuthServer@@QAEXAAV?$RCPointerArray@$$CBVCPluginDesc@AuthServer@@@@@Z @ 2 NONAME ; void AuthServer::RAuthClient::ActivePluginsL(class RCPointerArray<class AuthServer::CPluginDesc const > &)
-	?AuthenticateL@RAuthClient@AuthServer@@QAEPAVCIdentity@2@ABVCAuthExpression@2@VTTimeIntervalSeconds@@HH@Z @ 3 NONAME ; class AuthServer::CIdentity * AuthServer::RAuthClient::AuthenticateL(class AuthServer::CAuthExpression const &, class TTimeIntervalSeconds, int, int)
-	?AuthenticateL@RAuthClient@AuthServer@@QAEXABVCAuthExpression@2@VTTimeIntervalSeconds@@HHAAPAVCIdentity@2@AAVTRequestStatus@@@Z @ 4 NONAME ; void AuthServer::RAuthClient::AuthenticateL(class AuthServer::CAuthExpression const &, class TTimeIntervalSeconds, int, int, class AuthServer::CIdentity * &, class TRequestStatus &)
-	?Cancel@RAuthClient@AuthServer@@QAEIXZ @ 5 NONAME ; unsigned int AuthServer::RAuthClient::Cancel(void)
-	?Close@RAuthClient@AuthServer@@QAEXXZ @ 6 NONAME ; void AuthServer::RAuthClient::Close(void)
-	?Connect@RAuthClient@AuthServer@@QAEHXZ @ 7 NONAME ; int AuthServer::RAuthClient::Connect(void)
-	?DeauthenticateL@RAuthClient@AuthServer@@QAEXXZ @ 8 NONAME ; void AuthServer::RAuthClient::DeauthenticateL(void)
-	?ForgetPluginL@RAuthMgrClient@AuthServer@@QAEXKK@Z @ 9 NONAME ; void AuthServer::RAuthMgrClient::ForgetPluginL(unsigned long, unsigned long)
-	?IdentitiesL@RAuthClient@AuthServer@@QAEXAAV?$RArray@K@@@Z @ 10 NONAME ; void AuthServer::RAuthClient::IdentitiesL(class RArray<unsigned long> &)
-	?IdentitiesWithStringL@RAuthClient@AuthServer@@QAEXAAV?$RCPointerArray@VCIdAndString@AuthServer@@@@@Z @ 11 NONAME ; void AuthServer::RAuthClient::IdentitiesWithStringL(class RCPointerArray<class AuthServer::CIdAndString> &)
-	?IdentityStringL@RAuthClient@AuthServer@@QAEPAVHBufC16@@K@Z @ 12 NONAME ; class HBufC16 * AuthServer::RAuthClient::IdentityStringL(unsigned long)
-	?PluginsL@RAuthClient@AuthServer@@QAEXAAV?$RCPointerArray@$$CBVCPluginDesc@AuthServer@@@@@Z @ 13 NONAME ; void AuthServer::RAuthClient::PluginsL(class RCPointerArray<class AuthServer::CPluginDesc const > &)
-	?PluginsOfTypeL@RAuthClient@AuthServer@@QAEXW4TAuthPluginType@2@AAV?$RCPointerArray@$$CBVCPluginDesc@AuthServer@@@@@Z @ 14 NONAME ; void AuthServer::RAuthClient::PluginsOfTypeL(enum AuthServer::TAuthPluginType, class RCPointerArray<class AuthServer::CPluginDesc const > &)
-	?PluginsWithTrainingStatusL@RAuthClient@AuthServer@@QAEXW4TAuthTrainingStatus@2@AAV?$RCPointerArray@$$CBVCPluginDesc@AuthServer@@@@@Z @ 15 NONAME ; void AuthServer::RAuthClient::PluginsWithTrainingStatusL(enum AuthServer::TAuthTrainingStatus, class RCPointerArray<class AuthServer::CPluginDesc const > &)
-	?PreferredTypePluginL@RAuthClient@AuthServer@@QAEKW4TAuthPluginType@2@@Z @ 16 NONAME ; unsigned long AuthServer::RAuthClient::PreferredTypePluginL(enum AuthServer::TAuthPluginType)
-	?RegisterIdentityL@RAuthMgrClient@AuthServer@@QAEXAAPAVCIdentity@2@ABVTDesC16@@AAVTRequestStatus@@@Z @ 17 NONAME ; void AuthServer::RAuthMgrClient::RegisterIdentityL(class AuthServer::CIdentity * &, class TDesC16 const &, class TRequestStatus &)
-	?RemoveIdentityL@RAuthMgrClient@AuthServer@@QAEXK@Z @ 18 NONAME ; void AuthServer::RAuthMgrClient::RemoveIdentityL(unsigned long)
-	?SetIdentityStringL@RAuthClient@AuthServer@@QAEXKABVTDesC16@@@Z @ 19 NONAME ; void AuthServer::RAuthClient::SetIdentityStringL(unsigned long, class TDesC16 const &)
-	?SetPreferredTypePluginL@RAuthMgrClient@AuthServer@@QAEXW4TAuthPluginType@2@K@Z @ 20 NONAME ; void AuthServer::RAuthMgrClient::SetPreferredTypePluginL(enum AuthServer::TAuthPluginType, unsigned long)
-	?TrainPlugin@RAuthMgrClient@AuthServer@@QAEXKKAAVTRequestStatus@@@Z @ 21 NONAME ; void AuthServer::RAuthMgrClient::TrainPlugin(unsigned long, unsigned long, class TRequestStatus &)
-	?AuthenticateL@RAuthClient@AuthServer@@QAEPAVCIdentity@2@ABVCAuthExpression@2@VTTimeIntervalSeconds@@HVTUid@@HABVTDesC16@@@Z @ 22 NONAME ; class AuthServer::CIdentity * AuthServer::RAuthClient::AuthenticateL(class AuthServer::CAuthExpression const &, class TTimeIntervalSeconds, int, class TUid, int, class TDesC16 const &)
-	?AuthenticateL@RAuthClient@AuthServer@@QAEXABVCAuthExpression@2@VTTimeIntervalSeconds@@HVTUid@@HABVTDesC16@@AAPAVCIdentity@2@AAVTRequestStatus@@@Z @ 23 NONAME ; void AuthServer::RAuthClient::AuthenticateL(class AuthServer::CAuthExpression const &, class TTimeIntervalSeconds, int, class TUid, int, class TDesC16 const &, class AuthServer::CIdentity * &, class TRequestStatus &)
-	?CreateAuthExpressionL@RAuthClient@AuthServer@@QBEPAVCAuthExpression@2@ABVTDesC16@@@Z @ 24 NONAME ; class AuthServer::CAuthExpression * AuthServer::RAuthClient::CreateAuthExpressionL(class TDesC16 const &) const
-	?ListAuthAliasesL@RAuthClient@AuthServer@@QAEXAAV?$RPointerArray@VHBufC16@@@@@Z @ 25 NONAME ; void AuthServer::RAuthClient::ListAuthAliasesL(class RPointerArray<class HBufC16> &)
-	?ResetIdentityL@RAuthMgrClient@AuthServer@@QAEXKAAV?$RArray@K@@AAV?$RPointerArray@$$CBVHBufC16@@@@@Z @ 26 NONAME ; void AuthServer::RAuthMgrClient::ResetIdentityL(unsigned long, class RArray<unsigned long> &, class RPointerArray<class HBufC16 const > &)
-	?ResetIdentityL@RAuthMgrClient@AuthServer@@QAEXKABVTDesC16@@@Z @ 27 NONAME ; void AuthServer::RAuthMgrClient::ResetIdentityL(unsigned long, class TDesC16 const &)
-	?ResetIdentityL@RAuthMgrClient@AuthServer@@QAEXKW4TAuthPluginType@2@ABVTDesC16@@@Z @ 28 NONAME ; void AuthServer::RAuthMgrClient::ResetIdentityL(unsigned long, enum AuthServer::TAuthPluginType, class TDesC16 const &)
-
--- a/authenticationservices/authenticationserver/bwins/authcommonU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-EXPORTS
-	??1CIdAndString@AuthServer@@UAE@XZ @ 1 NONAME ; AuthServer::CIdAndString::~CIdAndString(void)
-	?AuthAnd@AuthServer@@YA?AVTAuthExpressionWrapper@1@PAVCAuthExpression@1@0@Z @ 2 NONAME ; class AuthServer::TAuthExpressionWrapper AuthServer::AuthAnd(class AuthServer::CAuthExpression *, class AuthServer::CAuthExpression *)
-	?AuthExpr@AuthServer@@YA?AVTAuthExpressionWrapper@1@K@Z @ 3 NONAME ; class AuthServer::TAuthExpressionWrapper AuthServer::AuthExpr(unsigned long)
-	?AuthExpr@AuthServer@@YA?AVTAuthExpressionWrapper@1@W4TAuthPluginType@1@@Z @ 4 NONAME ; class AuthServer::TAuthExpressionWrapper AuthServer::AuthExpr(enum AuthServer::TAuthPluginType)
-	?AuthOr@AuthServer@@YA?AVTAuthExpressionWrapper@1@PAVCAuthExpression@1@0@Z @ 5 NONAME ; class AuthServer::TAuthExpressionWrapper AuthServer::AuthOr(class AuthServer::CAuthExpression *, class AuthServer::CAuthExpression *)
-	?ClientKeyL@CProtectionKey@AuthServer@@QBEPAV12@H@Z @ 6 NONAME ; class AuthServer::CProtectionKey * AuthServer::CProtectionKey::ClientKeyL(int) const
-	?ConstructL@CIdAndString@AuthServer@@QAEXKABVTDesC16@@@Z @ 7 NONAME ; void AuthServer::CIdAndString::ConstructL(unsigned long, class TDesC16 const &)
-	?DoWriteL@TSizeStream@AuthServer@@UAEXPBXH@Z @ 8 NONAME ; void AuthServer::TSizeStream::DoWriteL(void const *, int)
-	?ExternalizeL@CAuthExpressionImpl@AuthServer@@UBEXAAVRWriteStream@@@Z @ 9 NONAME ; void AuthServer::CAuthExpressionImpl::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CIdAndString@AuthServer@@QBEXAAVRWriteStream@@@Z @ 10 NONAME ; void AuthServer::CIdAndString::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CIdentity@AuthServer@@QBEXAAVRWriteStream@@@Z @ 11 NONAME ; void AuthServer::CIdentity::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CPluginDesc@AuthServer@@QBEXAAVRWriteStream@@@Z @ 12 NONAME ; void AuthServer::CPluginDesc::ExternalizeL(class RWriteStream &) const
-	?FalseNegativeRate@CPluginDesc@AuthServer@@QBEKXZ @ 13 NONAME ; unsigned long AuthServer::CPluginDesc::FalseNegativeRate(void) const
-	?FalsePositiveRate@CPluginDesc@AuthServer@@QBEKXZ @ 14 NONAME ; unsigned long AuthServer::CPluginDesc::FalsePositiveRate(void) const
-	?Id@CIdAndString@AuthServer@@QBEKXZ @ 15 NONAME ; unsigned long AuthServer::CIdAndString::Id(void) const
-	?Id@CIdentity@AuthServer@@QBEKXZ @ 16 NONAME ; unsigned long AuthServer::CIdentity::Id(void) const
-	?Id@CPluginDesc@AuthServer@@QBEKXZ @ 17 NONAME ; unsigned long AuthServer::CPluginDesc::Id(void) const
-	?InternalizeL@CIdAndString@AuthServer@@QAEXAAVRReadStream@@@Z @ 18 NONAME ABSENT ; void AuthServer::CIdAndString::InternalizeL(class RReadStream &)
-	?InternalizeL@CIdentity@AuthServer@@SAPAV12@AAVRReadStream@@@Z @ 19 NONAME ; class AuthServer::CIdentity * AuthServer::CIdentity::InternalizeL(class RReadStream &)
-	?Invariant@CAuthExpressionImpl@AuthServer@@ABEHXZ @ 20 NONAME ; int AuthServer::CAuthExpressionImpl::Invariant(void) const
-	?Key@CIdentity@AuthServer@@QBEABVCProtectionKey@2@XZ @ 21 NONAME ; class AuthServer::CProtectionKey const & AuthServer::CIdentity::Key(void) const
-	?KeyData@CProtectionKey@AuthServer@@QBE?AVTPtrC8@@XZ @ 22 NONAME ; class TPtrC8 AuthServer::CProtectionKey::KeyData(void) const
-	?MinEntropy@CPluginDesc@AuthServer@@QBEKXZ @ 23 NONAME ; unsigned long AuthServer::CPluginDesc::MinEntropy(void) const
-	?Name@CPluginDesc@AuthServer@@QBEPBVTDesC16@@XZ @ 24 NONAME ; class TDesC16 const * AuthServer::CPluginDesc::Name(void) const
-	?NewL@CAuthExpressionImpl@AuthServer@@SAPAV12@AAVRReadStream@@@Z @ 25 NONAME ; class AuthServer::CAuthExpressionImpl * AuthServer::CAuthExpressionImpl::NewL(class RReadStream &)
-	?NewL@CIdentity@AuthServer@@SAPAV12@KPAVCProtectionKey@2@PAVHBufC16@@@Z @ 26 NONAME ; class AuthServer::CIdentity * AuthServer::CIdentity::NewL(unsigned long, class AuthServer::CProtectionKey *, class HBufC16 *)
-	?NewL@CPluginDesc@AuthServer@@SAPAV12@KABVTDesC16@@W4TAuthPluginType@2@W4TAuthTrainingStatus@2@KKK@Z @ 27 NONAME ; class AuthServer::CPluginDesc * AuthServer::CPluginDesc::NewL(unsigned long, class TDesC16 const &, enum AuthServer::TAuthPluginType, enum AuthServer::TAuthTrainingStatus, unsigned long, unsigned long, unsigned long)
-	?NewL@CProtectionKey@AuthServer@@SAPAV12@H@Z @ 28 NONAME ; class AuthServer::CProtectionKey * AuthServer::CProtectionKey::NewL(int)
-	?NewL@CProtectionKey@AuthServer@@SAPAV12@PAVHBufC8@@@Z @ 29 NONAME ; class AuthServer::CProtectionKey * AuthServer::CProtectionKey::NewL(class HBufC8 *)
-	?NewLC@CIdAndString@AuthServer@@SAPAV12@AAVRReadStream@@@Z @ 30 NONAME ; class AuthServer::CIdAndString * AuthServer::CIdAndString::NewLC(class RReadStream &)
-	?NewLC@CIdAndString@AuthServer@@SAPAV12@KABVTDesC16@@@Z @ 31 NONAME ; class AuthServer::CIdAndString * AuthServer::CIdAndString::NewLC(unsigned long, class TDesC16 const &)
-	?NewLC@CIdentity@AuthServer@@SAPAV12@KPAVCProtectionKey@2@PAVHBufC16@@@Z @ 32 NONAME ; class AuthServer::CIdentity * AuthServer::CIdentity::NewLC(unsigned long, class AuthServer::CProtectionKey *, class HBufC16 *)
-	?NewLC@CPluginDesc@AuthServer@@SAPAV12@AAVRReadStream@@@Z @ 33 NONAME ; class AuthServer::CPluginDesc * AuthServer::CPluginDesc::NewLC(class RReadStream &)
-	?NewLC@CProtectionKey@AuthServer@@SAPAV12@H@Z @ 34 NONAME ; class AuthServer::CProtectionKey * AuthServer::CProtectionKey::NewLC(int)
-	?NewLC@CProtectionKey@AuthServer@@SAPAV12@PAVHBufC8@@@Z @ 35 NONAME ; class AuthServer::CProtectionKey * AuthServer::CProtectionKey::NewLC(class HBufC8 *)
-	?Panic@CAuthExpressionImpl@AuthServer@@CAXW4TPanic@12@@Z @ 36 NONAME ; void AuthServer::CAuthExpressionImpl::Panic(enum AuthServer::CAuthExpressionImpl::TPanic)
-	?String@CIdAndString@AuthServer@@QBEPAVHBufC16@@XZ @ 37 NONAME ; class HBufC16 * AuthServer::CIdAndString::String(void) const
-	?String@CIdentity@AuthServer@@QBEAAVTDesC16@@XZ @ 38 NONAME ; class TDesC16 & AuthServer::CIdentity::String(void) const
-	?TrainingStatus@CPluginDesc@AuthServer@@QBE?AW4TAuthTrainingStatus@2@XZ @ 39 NONAME ; enum AuthServer::TAuthTrainingStatus AuthServer::CPluginDesc::TrainingStatus(void) const
-	?Type@CPluginDesc@AuthServer@@QBE?AW4TAuthPluginType@2@XZ @ 40 NONAME ; enum AuthServer::TAuthPluginType AuthServer::CPluginDesc::Type(void) const
-	?InsertSpaceBetweenOperatorsL@CAuthExpressionImpl@AuthServer@@SAXABVTDesC16@@AAVRBuf16@@@Z @ 41 NONAME ; void AuthServer::CAuthExpressionImpl::InsertSpaceBetweenOperatorsL(class TDesC16 const &, class RBuf16 &)
-	?KEnablePostMarketAuthenticationPlugins@@3EB @ 42 NONAME ; unsigned char const KEnablePostMarketAuthenticationPlugins
-	?CreateAuthExprObjectL@CAuthExpressionImpl@AuthServer@@SAPAVCAuthExpression@2@ABVTDesC16@@@Z @ 43 NONAME ; class AuthServer::CAuthExpression * AuthServer::CAuthExpressionImpl::CreateAuthExprObjectL(class TDesC16 const &)
-	?AuthExpr@AuthServer@@YA?AVTAuthExpressionWrapper@1@XZ @ 44 NONAME ; class AuthServer::TAuthExpressionWrapper AuthServer::AuthExpr(void)
-	?InternalizeL@CAuthParams@AuthServer@@QAEXAAVRReadStream@@@Z @ 45 NONAME ; void AuthServer::CAuthParams::InternalizeL(class RReadStream &)
-	?ExternalizeL@CAuthParams@AuthServer@@QBEXAAVRWriteStream@@@Z @ 46 NONAME ; void AuthServer::CAuthParams::ExternalizeL(class RWriteStream &) const
-	?NewL@CAuthParams@AuthServer@@SAPAV12@VTTimeIntervalSeconds@@HVTUid@@HABVTDesC16@@@Z @ 47 NONAME ; class AuthServer::CAuthParams * AuthServer::CAuthParams::NewL(class TTimeIntervalSeconds, int, class TUid, int, class TDesC16 const &)
-	
--- a/authenticationservices/authenticationserver/eabi/authclientU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-EXPORTS
-	_ZN10AuthServer11RAuthClient11IdentitiesLER6RArrayImE @ 1 NONAME
-	_ZN10AuthServer11RAuthClient13AuthenticateLERKNS_15CAuthExpressionE20TTimeIntervalSecondsii @ 2 NONAME
-	_ZN10AuthServer11RAuthClient13AuthenticateLERKNS_15CAuthExpressionE20TTimeIntervalSecondsiiRPNS_9CIdentityER14TRequestStatus @ 3 NONAME
-	_ZN10AuthServer11RAuthClient14ActivePluginsLER14RCPointerArrayIKNS_11CPluginDescEE @ 4 NONAME
-	_ZN10AuthServer11RAuthClient14PluginsOfTypeLENS_15TAuthPluginTypeER14RCPointerArrayIKNS_11CPluginDescEE @ 5 NONAME
-	_ZN10AuthServer11RAuthClient15DeauthenticateLEv @ 6 NONAME
-	_ZN10AuthServer11RAuthClient15IdentityStringLEm @ 7 NONAME
-	_ZN10AuthServer11RAuthClient18SetIdentityStringLEmRK7TDesC16 @ 8 NONAME
-	_ZN10AuthServer11RAuthClient20PreferredTypePluginLENS_15TAuthPluginTypeE @ 9 NONAME
-	_ZN10AuthServer11RAuthClient21IdentitiesWithStringLER14RCPointerArrayINS_12CIdAndStringEE @ 10 NONAME
-	_ZN10AuthServer11RAuthClient26PluginsWithTrainingStatusLENS_19TAuthTrainingStatusER14RCPointerArrayIKNS_11CPluginDescEE @ 11 NONAME
-	_ZN10AuthServer11RAuthClient5CloseEv @ 12 NONAME
-	_ZN10AuthServer11RAuthClient6CancelEv @ 13 NONAME
-	_ZN10AuthServer11RAuthClient7ConnectEv @ 14 NONAME
-	_ZN10AuthServer11RAuthClient8PluginsLER14RCPointerArrayIKNS_11CPluginDescEE @ 15 NONAME
-	_ZN10AuthServer11RAuthClientC1Ev @ 16 NONAME
-	_ZN10AuthServer11RAuthClientC2Ev @ 17 NONAME
-	_ZN10AuthServer14RAuthMgrClient11TrainPluginEmmR14TRequestStatus @ 18 NONAME
-	_ZN10AuthServer14RAuthMgrClient13ForgetPluginLEmm @ 19 NONAME
-	_ZN10AuthServer14RAuthMgrClient15RemoveIdentityLEm @ 20 NONAME
-	_ZN10AuthServer14RAuthMgrClient17RegisterIdentityLERPNS_9CIdentityERK7TDesC16R14TRequestStatus @ 21 NONAME
-	_ZN10AuthServer14RAuthMgrClient23SetPreferredTypePluginLENS_15TAuthPluginTypeEm @ 22 NONAME
-	_ZTIN10AuthServer21CAsyncResponseDecoderE @ 23 NONAME ; #<TI>#
-	_ZTVN10AuthServer21CAsyncResponseDecoderE @ 24 NONAME ; #<VT>#
-	_ZN10AuthServer11RAuthClient13AuthenticateLERKNS_15CAuthExpressionE20TTimeIntervalSecondsi4TUidiRK7TDesC16 @ 25 NONAME
-	_ZN10AuthServer11RAuthClient13AuthenticateLERKNS_15CAuthExpressionE20TTimeIntervalSecondsi4TUidiRK7TDesC16RPNS_9CIdentityER14TRequestStatus @ 26 NONAME
-	_ZN10AuthServer11RAuthClient16ListAuthAliasesLER13RPointerArrayI7HBufC16E @ 27 NONAME
-	_ZNK10AuthServer11RAuthClient21CreateAuthExpressionLERK7TDesC16 @ 28 NONAME
-	_ZN10AuthServer14RAuthMgrClient14ResetIdentityLEmNS_15TAuthPluginTypeERK7TDesC16 @ 29 NONAME
-	_ZN10AuthServer14RAuthMgrClient14ResetIdentityLEmR6RArrayImER13RPointerArrayIK7HBufC16E @ 30 NONAME
-	_ZN10AuthServer14RAuthMgrClient14ResetIdentityLEmRK7TDesC16 @ 31 NONAME
-
--- a/authenticationservices/authenticationserver/eabi/authcommonU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-EXPORTS
-	_ZN10AuthServer11CPluginDesc4NewLEmRK7TDesC16NS_15TAuthPluginTypeENS_19TAuthTrainingStatusEmmm @ 1 NONAME
-	_ZN10AuthServer11CPluginDesc5NewLCER11RReadStream @ 2 NONAME
-	_ZN10AuthServer11TSizeStream8DoWriteLEPKvi @ 3 NONAME
-	_ZN10AuthServer12CIdAndString10ConstructLEmRK7TDesC16 @ 4 NONAME
-	_ZN10AuthServer12CIdAndString5NewLCER11RReadStream @ 5 NONAME
-	_ZN10AuthServer12CIdAndString5NewLCEmRK7TDesC16 @ 6 NONAME
-	_ZN10AuthServer12CIdAndStringD0Ev @ 7 NONAME
-	_ZN10AuthServer12CIdAndStringD1Ev @ 8 NONAME
-	_ZN10AuthServer12CIdAndStringD2Ev @ 9 NONAME
-	_ZN10AuthServer14CProtectionKey4NewLEP6HBufC8 @ 10 NONAME
-	_ZN10AuthServer14CProtectionKey4NewLEi @ 11 NONAME
-	_ZN10AuthServer14CProtectionKey5NewLCEP6HBufC8 @ 12 NONAME
-	_ZN10AuthServer14CProtectionKey5NewLCEi @ 13 NONAME
-	_ZN10AuthServer19CAuthExpressionImpl4NewLER11RReadStream @ 14 NONAME
-	_ZN10AuthServer19CAuthExpressionImpl5PanicENS0_6TPanicE @ 15 NONAME
-	_ZN10AuthServer6AuthOrEPNS_15CAuthExpressionES1_ @ 16 NONAME
-	_ZN10AuthServer7AuthAndEPNS_15CAuthExpressionES1_ @ 17 NONAME
-	_ZN10AuthServer8AuthExprENS_15TAuthPluginTypeE @ 18 NONAME
-	_ZN10AuthServer8AuthExprEm @ 19 NONAME
-	_ZN10AuthServer9CIdentity12InternalizeLER11RReadStream @ 20 NONAME
-	_ZN10AuthServer9CIdentity4NewLEmPNS_14CProtectionKeyEP7HBufC16 @ 21 NONAME
-	_ZN10AuthServer9CIdentity5NewLCEmPNS_14CProtectionKeyEP7HBufC16 @ 22 NONAME
-	_ZNK10AuthServer11CPluginDesc10MinEntropyEv @ 23 NONAME
-	_ZNK10AuthServer11CPluginDesc12ExternalizeLER12RWriteStream @ 24 NONAME
-	_ZNK10AuthServer11CPluginDesc14TrainingStatusEv @ 25 NONAME
-	_ZNK10AuthServer11CPluginDesc17FalseNegativeRateEv @ 26 NONAME
-	_ZNK10AuthServer11CPluginDesc17FalsePositiveRateEv @ 27 NONAME
-	_ZNK10AuthServer11CPluginDesc2IdEv @ 28 NONAME
-	_ZNK10AuthServer11CPluginDesc4NameEv @ 29 NONAME
-	_ZNK10AuthServer11CPluginDesc4TypeEv @ 30 NONAME
-	_ZNK10AuthServer12CIdAndString12ExternalizeLER12RWriteStream @ 31 NONAME
-	_ZNK10AuthServer12CIdAndString2IdEv @ 32 NONAME
-	_ZNK10AuthServer12CIdAndString6StringEv @ 33 NONAME
-	_ZNK10AuthServer14CProtectionKey10ClientKeyLEi @ 34 NONAME
-	_ZNK10AuthServer14CProtectionKey7KeyDataEv @ 35 NONAME
-	_ZNK10AuthServer19CAuthExpressionImpl12ExternalizeLER12RWriteStream @ 36 NONAME
-	_ZNK10AuthServer19CAuthExpressionImpl9InvariantEv @ 37 NONAME
-	_ZNK10AuthServer9CIdentity12ExternalizeLER12RWriteStream @ 38 NONAME
-	_ZNK10AuthServer9CIdentity2IdEv @ 39 NONAME
-	_ZNK10AuthServer9CIdentity3KeyEv @ 40 NONAME
-	_ZNK10AuthServer9CIdentity6StringEv @ 41 NONAME
-	_ZTIN10AuthServer11TSizeStreamE @ 42 NONAME ; #<TI>#
-	_ZTIN10AuthServer19CAuthExpressionImplE @ 43 NONAME ; #<TI>#
-	_ZTIN10AuthServer9CIdentityE @ 44 NONAME ; #<TI>#
-	_ZTVN10AuthServer11TSizeStreamE @ 45 NONAME ; #<VT>#
-	_ZTVN10AuthServer19CAuthExpressionImplE @ 46 NONAME ; #<VT>#
-	_ZTVN10AuthServer9CIdentityE @ 47 NONAME ; #<VT>#
-	KEnablePostMarketAuthenticationPlugins @ 48 NONAME DATA 1
-	_ZN10AuthServer19CAuthExpressionImpl21CreateAuthExprObjectLERK7TDesC16 @ 49 NONAME
-	_ZN10AuthServer19CAuthExpressionImpl28InsertSpaceBetweenOperatorsLERK7TDesC16R6RBuf16 @ 50 NONAME
-	_ZN10AuthServer11CAuthParams12InternalizeLER11RReadStream @ 51 NONAME
-	_ZN10AuthServer11CAuthParams4NewLE20TTimeIntervalSecondsi4TUidiRK7TDesC16 @ 52 NONAME
-	_ZN10AuthServer8AuthExprEv @ 53 NONAME
-	_ZNK10AuthServer11CAuthParams12ExternalizeLER12RWriteStream @ 54 NONAME
-	_ZTIN10AuthServer11CAuthParamsE @ 55 NONAME
-	_ZTVN10AuthServer11CAuthParamsE @ 56 NONAME
-
--- a/authenticationservices/authenticationserver/group/authclient.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authclient.exe Implementation of authentication client
-*
-*/
-
-
-/**
- @file
-*/
-
-CAPABILITY ALL -TCB
-
-target authclient.dll
-targettype dll
-
-// this is a static, as opposed to polymorphic DLL
-UID				0x1000008D 0x102740FD
-VENDORID		0x70000001
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-USERINCLUDE		../source/common
-USERINCLUDE		../source/client
-USERINCLUDE		../inc_private
-USERINCLUDE             ../inc/authserver
-
-SOURCEPATH		../source/client
-SOURCE			authclient.cpp
-SOURCE			authmgrclient.cpp
-SOURCE 			asyncresponsedecoder.cpp
-
-LIBRARY			euser.lib 
-LIBRARY			estor.lib 
-LIBRARY			efsrv.lib
-LIBRARY			random.lib
-LIBRARY			cryptography.lib
-LIBRARY			authcommon.lib scsclient.lib 
-SMPSAFE
--- a/authenticationservices/authenticationserver/group/authcommon.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This DLL contains code which is common to the authentication
-* server and the client interface.
-*
-*/
-
-
-CAPABILITY All -TCB
-
-target			authcommon.dll
-targettype		dll
-
-// this is a static interface, as opposed to polymorphic DLL.
-UID				0x1000008D 0x102740FB
-VENDORID		0x70000001
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-USERINCLUDE		../source/client
-
-USERINCLUDE		../source/common
-SOURCEPATH		../source/common
-SOURCE			identity.cpp
-SOURCE			protectionkey.cpp
-SOURCE			authexpression.cpp
-SOURCE			plugindesc.cpp
-SOURCE			idandstring.cpp
-SOURCE			authpatchdata.cpp
-SOURCE			authserveripc.cpp
-
-LIBRARY			estor.lib efsrv.lib euser.lib
-LIBRARY			cryptography.lib random.lib hash.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/group/authserver.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authserver.exe Implementation of authentication server
-*
-*/
-
-
-/**
- @file
-*/
-
-CAPABILITY TrustedUI ProtServ ReadDeviceData WriteDeviceData Location SurroundingsDD UserEnvironment ReadUserData WriteUserData
-
-target authserver.exe
-targettype exe
-
-// this is an EXE and therefore does not need to
-// explicitly specify any further UIDs.  Therefore
-// specify the reserved UID twice.
-UID				0x102740FC 0x102740FC
-VENDORID		0x70000001
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-USERINCLUDE		../source/server 
-USERINCLUDE		../source/common
-USERINCLUDE		../source/client
-USERINCLUDE		../inc/authserver
-USERINCLUDE		../inc_private
-
-SOURCEPATH		../source/server
-SOURCE			authserver.cpp
-SOURCE			authserversession.cpp
-SOURCE			authmain.cpp
-SOURCE			authdb.cpp
-SOURCE			transientkeyinfo.cpp
-SOURCE			encryptedprotectionkey.cpp
-SOURCE			transientkey.cpp
-
-SOURCE			evaluator.cpp
-SOURCE			pluginmgr.cpp
-SOURCE			pluginobserver.cpp
-SOURCE			trainingmgr.cpp
-SOURCE			authtransaction.cpp
-SOURCE			authrepository.cpp
-
-LIBRARY			ecom.lib edbms.lib estor.lib pbe.lib efsrv.lib euser.lib
-LIBRARY			cryptography.lib random.lib
-LIBRARY			authcommon.lib scsserver.lib
-LIBRARY			sectcbutil.lib
-LIBRARY			centralrepository.lib
-SMPSAFE
-
--- a/authenticationservices/authenticationserver/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,155 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Authentication Server implementation 
-*
-*/
-
-
-/**
- @file
-*/
-
-#ifdef SYMBIAN_AUTH_SERVER
-
-#include "../test/reftestplugin/group/bld.inf"
-
-PRJ_PLATFORMS
-DEFAULT GCCE
-
-PRJ_EXPORTS
-
-../inc/authserver/authclient.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authclient.h)
-../inc/authserver/authexpression.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authexpression.h)
-../inc/authserver/authexpression.inl		SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authexpression.inl)
-../inc/authserver/auth_srv_errs.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/auth_srv_errs.h)
-../inc/authserver/authmgrclient.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authmgrclient.h)
-../inc/authserver/authplugininterface.h		SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authplugininterface.h)
-../inc/authserver/authtypes.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/authtypes.h)
-../inc/authserver/identity.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/identity.h)
-../inc/authserver/plugindesc.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/plugindesc.h)
-../inc/authserver/plugindesc.inl			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/plugindesc.inl)
-../inc/authserver/protectionkey.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/protectionkey.h)
-../inc/authserver/aspubsubdefs.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/aspubsubdefs.h)
-../inc/authserver/idandstring.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(authserver/idandstring.h)
-../inc/authserver/authpatchdata.h				SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(authserver/authpatchdata.h)
-
-
-// ROMKIT includes
-../inc/authserver.iby /epoc32/rom/include/authserver.iby
-
-
-#ifndef TOOLS
-#ifndef TOOLS2
-
-PRJ_MMPFILES
-
-authcommon.mmp
-authclient.mmp
-authserver.mmp
-
-
-PRJ_TESTMMPFILES
-../test/authtool/authtool.mmp
-../test/tauthkeys/tauthkeys.mmp
-../test/tauthdb/tauthdb.mmp
-../test/tauthcliserv/tauthcliserv.mmp
-../test/tauthplugins/testplugins.mmp
-../test/tauthplugins/tauthplugins.mmp
-../test/tAuthSvr/group/tAuthSvr.mmp
-../test/tAuthSvr/group/tAuthPlugin.mmp
-//Versions of tAuthSvr.mmp with different capabilities. wdd=WriteDeviceData, nc=NoCapabilities
-../test/tAuthSvr/group/tauthsvrwdd.mmp
-../test/tAuthSvr/group/tauthsvrnc.mmp
-../test/tAuthSvr/group/tauthpluginupgrade.mmp
-../test/tAuthSvr/group/tpostmarketramplugin.mmp
-../test/tauthplugins/testpluginsupgrade.mmp
-// Security Test.
-../test/securitytests/group/authsecuritytests.mmp
-
-makefile ../test/tAuthSvr/tpostmarketplugins/testdata/buildpostmarketplugintestdata.fil
-
-#endif // TOOLS2
-#endif // TOOLS
-
-PRJ_TESTEXPORTS
-../test/tauthkeys/scripts/tauthkeys.script /epoc32/winscw/c/tauth/tauthkeys/scripts/tauthkeys.script
-../test/tauthdb/scripts/tauthdb.script /epoc32/winscw/c/tauth/tauthdb/scripts/tauthdb.script
-../test/tauthcliserv/scripts/tauthcliserv.script /epoc32/winscw/c/tauth/tauthcliserv/scripts/tauthcliserv.script
-../test/tauthcliserv/scripts/tauthexpr.script /epoc32/winscw/c/tauth/tauthexpr/scripts/tauthexpr.script
-../test/tauthcliserv/scripts/tauthcliserv_debug.script /epoc32/winscw/c/tauth/tauthcliserv/scripts/tauthcliserv_debug.script
-../test/tauthplugins/scripts/tauthplugins.script /epoc32/winscw/c/tauth/tauthplugins/scripts/tauthplugins.script
-../test/tAuthSvr/scripts/tAuthSvr2.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr2.script
-../test/tAuthSvr/scripts/tAuthSvr4.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr4.script
-../test/tAuthSvr/scripts/tAuthSvr5.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr5.script
-../test/tAuthSvr/scripts/tAuthSvr6.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr6.script
-../test/tAuthSvr/scripts/tauthsvroom.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvroom.script
-../test/tAuthSvr/scripts/tauthsvrclock.script  	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvrclock.script
-../test/tAuthSvr/scripts/tauthsvroom.ini   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvroom.ini
-../test/tAuthSvr/scripts/tAuthSvr2.ini   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr2.ini
-../test/tAuthSvr/scripts/tAuthSvr2_unicode.ini	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr2_unicode.ini
-../test/tAuthSvr/testdata/AuthSvrPolicy.ini			/epoc32/winscw/c/tauth/tauthsvr/testdata/authsvrpolicy.ini
-../test/tAuthSvr/testdata/initialisation_Info.ini	/epoc32/winscw/c/tauth/tauthsvr/testdata/initialisation_info.ini
-../test/tAuthSvr/testdata/Pin11113100Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin11113100db.ini
-../test/tAuthSvr/testdata/Pin11113101Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin11113101db.ini
-../test/tAuthSvr/testdata/Pin11113102Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin11113102db.ini
-../test/tAuthSvr/testdata/Pin11113103Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin11113103db.ini
-../test/tAuthSvr/testdata/Pin11113104Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin11113104db.ini
-../test/tAuthSvr/testdata/cenrep1.txt			/epoc32/winscw/c/tauth/tauthsvr/testdata/cenrep1.txt
-../test/tAuthSvr/testdata/cenrep2.txt			/epoc32/winscw/c/tauth/tauthsvr/testdata/cenrep2.txt
-../test/tAuthSvr/testdata/cenrep3.txt			/epoc32/winscw/c/tauth/tauthsvr/testdata/cenrep3.txt
-../test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre1.bat /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/te_tauthsvr4_pre1.bat
-../test/tAuthSvr/scripts/batchfiles/pretauthsvroom.bat	 /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/pretauthsvroom.bat
-../test/tAuthSvr/scripts/batchfiles/posttauthsvroom.bat	 /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/posttauthsvroom.bat
-../test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre2.bat /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/te_tauthsvr4_pre2.bat
-../test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre3.bat /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/te_tauthsvr4_pre3.bat
-../test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_post1.bat /epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/te_tauthsvr4_post1.bat
-../test/tAuthSvr/testdata/pinplugin_inactive.txt	/epoc32/winscw/c/tauth/tauthsvr/testdata/pinplugin_inactive.txt
-../inc/tAuthSvr.iby /epoc32/rom/include/tauthsvr.iby
-../test/tAuthSvr/scripts/batchfiles/post_tauthsvr.bat		/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/post_tauthsvr.bat
-
-
-
-// Files for PostMarketPlugin Support tests.
-../test/tAuthSvr/scripts/tpostmarketplugin.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tpostmarketplugin.script
-../test/tAuthSvr/scripts/tpostmarketpluginenabled_winscw.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tpostmarketpluginenabled_winscw.script
-../test/tAuthSvr/scripts/tpostmarketpluginenabled1_winscw.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tpostmarketpluginenabled1_winscw.script
-../test/tAuthSvr/scripts/tpostmarketplugin_macroenabled.script	/epoc32/winscw/c/tauth/tauthsvr/scripts/tpostmarketplugin_macroenabled.script
-../test/tAuthSvr/scripts/tpostmarketplugin.ini   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tpostmarketplugin.ini
-../test/tAuthSvr/tpostmarketplugins/testdata/epoc_enablepostmarketplugin.ini	/epoc32/data/epoc_enablepostmarketplugin.ini
-../test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatapositive.ini	/epoc32/data/epoc_patchdatapositive.ini
-../test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatanegative.ini	/epoc32/data/epoc_patchdatanegative.ini
-../test/tAuthSvr/scripts/batchfiles/pre_postmarketplugin.bat	/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/pre_postmarketplugin.bat
-../test/tAuthSvr/scripts/batchfiles/post_postmarketplugin.bat	/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/post_postmarketplugin.bat
-../test/tAuthSvr/scripts/batchfiles/pre_patchdata_negative.bat	/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/pre_patchdata_negative.bat
-../test/tAuthSvr/scripts/batchfiles/pre_patchdata_positive.bat	/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/pre_patchdata_positive.bat
-../test/tAuthSvr/testdata/Pin10234100Db.ini		/epoc32/winscw/c/tauth/tauthsvr/testdata/pin10234100db.ini
-
-// Files for ClientSid Support tests.
-../test/tAuthSvr/scripts/tclientsidsupport.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tclientsidsupport.script
-../test/tAuthSvr/scripts/tclientsidsupport.ini   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tclientsidsupport.ini
-../test/tAuthSvr/scripts/batchfiles/post_tclientsidsupport.bat		/epoc32/winscw/c/tauth/tauthsvr/scripts/batchfiles/post_tclientsidsupport.bat
-
-//Files for Auth Security Tests.
-../test/securitytests/scripts/authsecuritytests.script	/epoc32/winscw/c/tauth/securitytests/scripts/authsecuritytests.script
-../test/securitytests/scripts/authsecuritytests.ini	/epoc32/winscw/c/tauth/securitytests/scripts/authsecuritytests.ini
-
-//Files for performance tests.
-../test/tAuthSvr/scripts/tauthsvr_performance.script   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr_performance.script
-../test/tAuthSvr/scripts/tauthsvr_performance.ini   	/epoc32/winscw/c/tauth/tauthsvr/scripts/tauthsvr_performance.ini
-../test/tAuthSvr/scripts/performance_log_parser.pl  	/epoc32/winscw/c/tauth/tauthsvr/scripts/performance_log_parser.pl 
-
-
-#endif //SYMBIAN_AUTH_SERVER
-
--- a/authenticationservices/authenticationserver/group/security_authserver.history.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="Authentication Services">
-  <purpose>
-  </purpose>
-
-  <minorchange revision="011">
-    Modifications to Interface classification and status from publishedall released to publishedpartner prototype
-  </minorchange>
-  
- <deliverystep number="211" name="Security: Enabling Authentication Provider Partners" osproject="Diran" revision="010">
-    <milestone project="GT0433" number="MS3.5"/>
-    <preq number="219" title="Enabling Authentication Provider Partners">
-      Reference Pin plugin added for the authentication Server
-    </preq>
-  </deliverystep>
-
- <deliverystep number="136" name="Security: Authentication Server" osproject="Diran" revision="009">
-    <milestone project="GT00433" number="MS3.4"/>
-    <preq number="218" title="Authentication Server">
-      This delivery step includes the new component Authentication Server and it's associated test code.
-    </preq>
-  </deliverystep>
-
-  <deliverystep number="496" name="EC073: Security: Crypto Services Header File Refactoring" osproject="Oghma" revision="008">
-	  <milestone project="GT0313" number="MS3.7"/>
-	  <ec number="73" title="Crypto Services Header File Refactoring (to simplify the SDK creation process)">
-		  Non-exported published functions made internal.
-	  </ec>
-  </deliverystep>
-  
-  <deliverystep number="708" name="Security - Alignment of CBR and System Model components" osproject="Oghma" revision="007">
-    <milestone project="GT0313" number="MS3.7"/>
-    <preq number="775" title="Alignment of CBR and System Model components">
-      Modified the ipr category of authtool.
-    </preq>
-  </deliverystep>
-
-  <defect number="DEF106230" title="Clean up build's tagscan errors" revision="006">
-    Removed tagscan errors.
-  </defect>
-
-  <ec number="075" title="Triage and address Coverity Errors in Security Subsystem" revision="005">
-    Fixed two problems in the trainingmgr.cpp file. The iResult variable was put on the CleanupStack in the CTrainingMgr::RegisterFirstIdentityL() method. It was a problem because this variable was already kept on the CleanupStack as a class member. Moreover, a potential memory leak was fixed in this method.
-  </ec>
-
-  <preq number="1182" title="GNU Make-based build system" revision="004">
-    TOOLS2 macro is added with TOOLS.
-  </preq>
-
-  <preq number="1182" title="GNU Make-based build system" revision="003">
-    Changed according to filename policy to support the building of Symbian OS on both Windows and Linux for the test code.
-  </preq>
-
-  <minorchange revision="002">
-    Removed the compile errors and the armv5 warning notes.
-  </minorchange>
-
-  <defect number="DEF102043" title="Makesis &amp; SWI assumes system drive is c:" revision="001">
-    Removed hardcoded references to C drive and replaced with system drive.
-  </defect>
-</relnotes>
--- a/authenticationservices/authenticationserver/group/security_authserver.mrp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-component	security_authserver
-source	\sf\os\security\authenticationservices\authenticationserver
-binary	\sf\os\security\authenticationservices\authenticationserver\group	all
-exports	\sf\os\security\authenticationservices\authenticationserver\group
-
-notes_source	\component_defs\release.src
-
-
-#  == IPR section auto-inserted from distribution.policy files  ==
-ipr E 
-ipr T \sf\os\security\authenticationservices\authenticationserver\test
-
-# == end auto-inserted section ==
--- a/authenticationservices/authenticationserver/inc/authserver.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-#ifndef __AUTHSERV_IBY__
-#define __AUTHSERV_IBY__
-
-define ZDRIVE \epoc32\data\z
-
-REM Authentication Server
-
-file=ABI_DIR\BUILD_DIR\authserver.exe		sys\bin\authserver.exe
-file=ABI_DIR\BUILD_DIR\authclient.dll		sys\bin\authclient.dll
-file=ABI_DIR\BUILD_DIR\authcommon.dll		sys\bin\authcommon.dll
-
-
-// When SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS is defined, all plugins visible to 
-// the ECOM service will be loaded. By default it is not defined - only ROM based plugins 
-// will be loaded
-
-#ifdef SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS
-patchdata authcommon.dll@KEnablePostMarketAuthenticationPlugins 0x01
-#endif
-
-#endif
--- a/authenticationservices/authenticationserver/inc/authserver/aspubsubdefs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Authserver publish and subscribe properties.  
-*
-*/
-
-
-/**
- @file  
- @publishedAll
- @released
-*/
-
-#ifndef ASPUBSUBDEFS_H
-#define ASPUBSUBDEFS_H
-
-namespace AuthServer
-{
-/**
- * Used to write to and read from the publish and subscribe property
- * KUidAuthServerLastAuth. 
- *
- * @see KUidAuthServerLastAuth
- **/
-NONSHARABLE_STRUCT(TLastAuth)
-	{
-	TLastAuth() { Mem::FillZ(this, sizeof(TLastAuth)); }
-	/// The identities id number or KUnknownIdentity
-	TIdentityId iId;
-	/// The time of the authentication, 0 if unknown 
-	TTime       iAuthTime;
-	/// The highest number of combinations of the authentication methods
-	/// used
-	TEntropy    iMaxCombinations;
-	/// the lowest false positive rate of the methods used
-	TPercentage iFalsePositiveRate;
-	/// the lowest false negative rate of the methods used
-	TPercentage iFalseNegativeRate;
-	/// the number of factors (i.e. plugins) combined to make the
-	/// authentication
-	TInt32      iNumFactors;
-	};
-
-/**
- * This is the publish and subscribe property used by the Authentication
- * Server to publish the details of the last authentication. The
- * value is of type TLastAuth and can be retrieved using code such as:
- * <code>
- * TLastAuth lastAuth;
- * TPckg<TLastAuth> authPkg(lastAuth);
- * RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth, authPkg);
- * </code>
- *
- * The property is published each time an authentication or deauthentication
- * is made, even if the same identity is authenticated. To be notified only
- * when the identity changes, subscribe to KUidAuthServerAuthChangeEvent.
- *
- */
-const TUint KUidAuthServerLastAuth = { 0x10281843 };
-
-
-/**
- * This is the publish and subscribe property used by the Authentication
- * Server to notify subscribers of a change of authenticated identity.  The
- * published value is of type TUint and will contain the id number of the last
- * identity authenticated.
- *
- * The property is published only when the identity changes, reauthentication
- * with a different method will not result in notification.
- *
- */
-const TUint KUidAuthServerAuthChangeEvent = { 0x10281845 };
-
-}
-
-#endif /*ASPUBSUBDEFS_H*/
-
--- a/authenticationservices/authenticationserver/inc/authserver/auth_srv_errs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,183 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Contains the list of error values that may be returned. 
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTH_SRV_ERRS_H
-#define AUTH_SRV_ERRS_H
-
-#include <e32def.h>
-
-/**
-	Attempted to internalize an invalid authentication expression stream.
-	
-	If this error occurs on the server side because the client
-	has sent an invalid externalization buffer they are panicked
-	with "AUTHSERVER 3", instead of being completed with this
-	error code.
-
-	This error should not occur if clients use the supplied
-	RAuthClient API.
- */
-const TInt KErrAuthServInvalidInternalizeExpr = -10800;
-
-/**
-	Attempted to internalize an authentication expression stream
-	with an unsupported version.
-	
-	The authentication server will complete an authentication
-	request with this value if the supplied stream has an
-	unsupported version number.
-
-	This error code is rare and is caused by sending a corrupt
-	externalized expression to the server, or if the expression
-	was internalized with an older version of the client code.
-	This error should not occur if clients use the supplied
-	RAuthClient API.
- */
-const TInt KErrAuthServUnsupportedExprVersion = -10801;
-
-/**
-    An attempt was made to reference a plugin by id number and no such 
-    plugin exists  
- **/
-const TInt KErrAuthServNoSuchPlugin = -10802;
-
-
-/**
-    An attempt was made to reference an identity by id number and no such 
-    identity exists  
- **/
-const TInt KErrAuthServNoSuchIdentity = -10803;
-
-/**
-    A plugin returns this on behalf of a user wanting to skip it.
- **/
-const TInt KErrAuthServPluginCancelled = -10804;
-
-/**
-    A plugin returns this on behalf of a user wanting to completely quit the
-    current operation.
- **/
-const TInt KErrAuthServPluginQuit = -10805;
-
-
-/**
-    This error is reported when an operation is attempted for which an
-    authentication must have already been performed.
- **/
-const TInt KErrAuthServAuthenticationRequired = -10806;
-
-/**
-	Attempted to add a new identity to the authentication
-	server database with an existing ID.
- */
-const TInt KErrAuthServIdentityAlreadyExists = -10807;
-
-/**
-	Attempted to set or retrieve a description for an identity,
-	or remove an identity which was not in the authentication database.
- */
-const TInt KErrAuthServIdentityNotFound = -10808;
-
-/**
-	Attempted to remove or retrieve the key info for
-	a training record that was not in the authentication
-	database.
- */
-const TInt KErrAuthServTrainingNotFound = -10809;
-
-/**
-    This error is reported when the authserver has not been able to register a
-    new identity due to no plugins training successfully.
- **/
-const TInt KErrAuthServRegistrationFailed = -10810;
-
-
-/**
-    This error is reported when an authclient attempts to remove the last
-    identity.
- **/
-const TInt KErrAuthServCanNotRemoveLastIdentity = -10811;
-
-
-/**
-    This error is reported when an authclient attempts to remove the last
-    trained plugin for an identity.
- **/
-const TInt KErrAuthServCanNotRemoveLastPlugin = -10812;
-
-
-/**
-    This error is reported when an attempt to use an inactive plugin is made.
- **/
-const TInt KErrAuthServPluginNotActive = -10813;
-
-/**
-	Client attempted to create an identity with a description
-	longer than 255 characters, or to change an existing identity's
-	description to use more than 255 characters.
- */
-const TInt KErrAuthServDescTooLong = -10814;
-
-/**
-	This error is reported when the authentication strength alias
-	supplied by the client is not found in the authserver's
-	central repository file.
- */
-
-const TInt KErrUnknownAuthStrengthAlias = -10815;
-
-/**
-	This error is reported when an authentication strength in 
-	the authserver's central repository file is undefined.
- */
-
-const TInt KErrAuthStrengthAliasNotDefined = -10816;
-
-/**
-	This error is reported when an alias string defining an
-	authentication strength in the authserver's central repository 
-	file contains expression other than plugin Id, plugin Types 
-	and operators ("& and "|").
- */
-
-const TInt KErrAuthServInvalidAliasStringExpression = -10817;
-
-
-/**
-    This error is reported when an authclient attempts to remove the default
-    identity.
- */
-const TInt KErrAuthServCanNotRemoveDefaultIdentity = KErrAuthServCanNotRemoveLastIdentity;
-
-/**
-    This error is reported when an authentication manager client attempts to 
-    reset an identity and this may result in zero plugins registering the new identity data.
-    This can happen if a reset request is issued for all plugins registered for an identity 
-    and none of the plugins are of knowledge type.
- */
-const TInt KErrAuthServResetMayLoseIdentity = -10818;
-
-#endif	// #ifndef AUTH_SRV_ERRS_H
-
--- a/authenticationservices/authenticationserver/inc/authserver/authclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,135 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* RAuthclient - external authentication client session interface
-* The defined fuctionality is used by clients to access the authentication
-* server.
-* The access to a specific functionality is dependant on the client 
-* capabilities and may be restricted.             
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTHCLIENT_H
-#define AUTHCLIENT_H
-
-#include "authserver/identity.h"
-#include "authserver/authexpression.h"
-#include "authserver/plugindesc.h"
-#include "authserver/idandstring.h"
-#include <scs/scsclient.h>
-namespace AuthServer
-{
-
-class CAsyncResponseDecoder;
-
-/**
- * Client side interface to the authentication server providing general
- * authentication and plugin query services.
- *
- */	
-class RAuthClient : public RScsClientBase
-	{
-	
-	friend class CAsyncResponseDecoder;
-	
-public:
-
-    IMPORT_C RAuthClient();
-    
-	IMPORT_C TInt Connect();
-
-	IMPORT_C void AuthenticateL(
-	    const CAuthExpression& aExpression,
-	    TTimeIntervalSeconds   aTimeout,
-		TBool                  aClientSpecificKey,
-		TBool                  aWithString,
-	    CIdentity*&            aIdentityResult, 
-	    TRequestStatus&        aStatus);
-	
-	IMPORT_C CIdentity* AuthenticateL(
-	    const CAuthExpression& aExpression,
-	    TTimeIntervalSeconds   aTimeout,
-		TBool                  aClientSpecificKey,
-		TBool                  aWithString);
-
-	IMPORT_C CIdentity* AuthenticateL(
-			const CAuthExpression& 	aAuthExpression,
-		    TTimeIntervalSeconds   	aTimeout,
-			TBool                  	aClientSpecificKey,
-			TUid 				   	aClientSid,
-			TBool                  	aWithString,
-			const TDesC&			aClientMessage);
-			
-	IMPORT_C void AuthenticateL(
-		const CAuthExpression& 	aAuthExpression,
-	    TTimeIntervalSeconds   	aTimeout,
-		TBool                  	aClientSpecificKey,
-		TUid 					aClientSid,
-		TBool                  	aWithString,
-	    const TDesC&			aClientMessage,
-	    CIdentity*&            	aIdentityResult,
-	    TRequestStatus&        	aStatus
-		);
-
-	IMPORT_C void DeauthenticateL();
-	
-	IMPORT_C void PluginsL(RPluginDescriptions& aPluginList);
-	IMPORT_C void ActivePluginsL(RPluginDescriptions& aPluginList);
-	IMPORT_C void PluginsOfTypeL(TAuthPluginType aType,
-								  RPluginDescriptions& aPluginList);
-	
-	IMPORT_C void PluginsWithTrainingStatusL(
-        TAuthTrainingStatus aStatus,
-		RPluginDescriptions& aPluginList);
-	
-	IMPORT_C void IdentitiesL(RIdentityIdArray& aIdList);
-	IMPORT_C void IdentitiesWithStringL(RIdAndStringArray& aList);
-
-	IMPORT_C HBufC* IdentityStringL(TIdentityId aId);
-	IMPORT_C void SetIdentityStringL(TIdentityId aId, const TDesC& aString);
-	
-	IMPORT_C TPluginId PreferredTypePluginL(TAuthPluginType aPluginType);
-	
-	IMPORT_C TUint Cancel();
-	IMPORT_C void Close();
-	
-	IMPORT_C void ListAuthAliasesL(RPointerArray<HBufC>& aAuthAliasList);
-	
-	IMPORT_C CAuthExpression* CreateAuthExpressionL(const TDesC& aAuthString) const;
-	
-protected:
-	/* @internalComponent */
-	void CheckAsyncDecoderL();
-	/* @internalComponent */
-	HBufC8* SendReceiveBufferLC(TInt aMessage);
-	/* @internalComponent */
-	HBufC8* SendReceiveBufferLC(TInt aMessage, TIpcArgs& aArgs);
-	
-private:
-	TInt StartAuthServer();
-
-protected:
-	CAsyncResponseDecoder* iAsyncResponseDecoder;
-};
-  
-} // namespace
-#endif
-
--- a/authenticationservices/authenticationserver/inc/authserver/authexpression.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,125 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthExpression declaration
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTHEXPRESSION_H
-#define AUTHEXPRESSION_H
-
-#include <s32strm.h>
-#include "authserver/authtypes.h"
-
-
-namespace AuthServer
-{
-
-
-class CAuthExpression : public CBase
-/**
-	Describes an authentication expression.
-
-	AuthServer clients construct expressions using
-	AuthExpr, combined with AuthAnd and AuthOr, or
-	the equivalent overloaded & and | operators.
-
-	@see AuthExpr
-	@see AuthAnd
-	@see AuthOr
- */
-	{
-public:
-	/**
-		Externalize this object to the supplied stream.
-
-		@param	aWriteStream Stream to write persistent state to.
-	 */
-	virtual void ExternalizeL(RWriteStream& aWriteStream) const = 0;
-	};
-
-
-class TAuthExpressionWrapper
-/**
-	Simple wrapper around a pointer to an authentication
-	expression.  It is defined so the binary & and | operators
-	can be overloaded to generate concise expressions.
-	
-	Like CAuthExpression, this class should not be
-	used directly by clients, but via the AuthExpr,
-	AuthAnd, and AuthOr functions, or via the overloaded
-	& and | operators.  For this reason, the constructors
-	are not exported.
-	
-	@see AuthExpr
-	@see AuthAnd
-	@see AuthOr
- */
-	{
-public:
-	/* @internalComponent*/
-	TAuthExpressionWrapper(CAuthExpression* aExpression);
-	/* @internalComponent */
-	TAuthExpressionWrapper(TAuthPluginType aType);
-	/* @internalComponent */
-	TAuthExpressionWrapper(TPluginId aPluginId);
-	/* @internalComponent */
-	TAuthExpressionWrapper();
-	
-	inline operator CAuthExpression*();
-	
-private:
-	/**
-		Pointer to the referenced authentication expression.
-		This is NULL in OOM.
-	 */
-	CAuthExpression*const iPtr;
-	};
-
-
-IMPORT_C TAuthExpressionWrapper AuthExpr(TAuthPluginType aType);
-IMPORT_C TAuthExpressionWrapper AuthExpr(TPluginId aPluginId);
-IMPORT_C TAuthExpressionWrapper AuthExpr();
-
-IMPORT_C TAuthExpressionWrapper AuthOr(CAuthExpression* aLeft, CAuthExpression* aRight);
-IMPORT_C TAuthExpressionWrapper AuthAnd(CAuthExpression* aLeft, CAuthExpression* aRight);
-
-
-#define AUTH_EXPR_BINARY_OPS
-#ifdef AUTH_EXPR_BINARY_OPS
-
-// These binary operators provide a more concise way to write
-// authentication expressions than AuthOr and AuthAnd.  However,
-// their behaviour - dynamically allocating from the heap - is
-// non-obvious to a reader, so they are left as a build-time
-// option.
-
-inline TAuthExpressionWrapper operator&(TAuthExpressionWrapper aLeft, TAuthExpressionWrapper aRight);
-inline TAuthExpressionWrapper operator|(TAuthExpressionWrapper aLeft, TAuthExpressionWrapper aRight);
-
-#endif
-
-
-}	// namespace AuthServer
-
-#include "authserver/authexpression.inl"
-
-#endif // EXPRESSION_H
--- a/authenticationservices/authenticationserver/inc/authserver/authexpression.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* @publishedAll
-* @released
-*
-*/
-
-
-#ifndef AUTHEXPRESSION_INL
-#define AUTHEXPRESSION_INL
-
-#include "authserver/authexpression.h"
-
-namespace AuthServer
-{
-
-
-// -------- TAuthExpressionWrapper --------
-
-
-inline TAuthExpressionWrapper::operator CAuthExpression*()
-/**
-	Conversion operator recasts this object as a
-	pointer to the contained authorisation expression.
- */
-	{
-	return iPtr;
-	}
-
-
-#ifdef AUTH_EXPR_BINARY_OPS
-
-
-inline TAuthExpressionWrapper operator&(TAuthExpressionWrapper aLeft, TAuthExpressionWrapper aRight)
-/**
-	This overloaded operator is a wrapper around a call to AuthAnd.
-	See AuthAnd for a full description.	
-	
-	@param	aLeft			Left subexpression.
-	@param	aRight			Right subexpression.
-	@return					Wrapper around new complex AND expression,
-							which is NULL if could not allocate.
-	@see AuthAnd
- */
-	{
-	return AuthAnd(aLeft, aRight);
-	}
-
-
-inline TAuthExpressionWrapper operator|(TAuthExpressionWrapper aLeft, TAuthExpressionWrapper aRight)
-/**
-	This overloaded operator is a wrapper around a call to AuthOr
-	See AuthOr for a full description.	
-	
-	@param	aLeft			Left subexpression.
-	@param	aRight			Right subexpression.
-	@return					Wrapper around new complex OR expression,
-							which is NULL if could not allocate.
-	@see AuthOr
- */
-	{
-	return AuthOr(aLeft, aRight);
-	}
-
-
-#endif	// #ifdef AUTH_EXPR_BINARY_OPS
-
-
-}	// namespace AuthServer
-
-
-#endif	// AUTHEXPRESSION_INL
-
--- a/authenticationservices/authenticationserver/inc/authserver/authmgrclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* RAuthMgrClient - external authentication client session interface
-* The defined fuctionality is used by clients to access the authentication
-* server for the purpose of managing identities.
-* The access to a specific functionality is dependant on the client 
-* capabilities and may be restricted.             
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTHMGRCLIENT_H
-#define AUTHMGRCLIENT_H
-
-#include "authserver/authclient.h"
-
-namespace AuthServer
-{
-
-/**
- * Client side interface to the authentication server providing identity
- * management services.
- */	
-class RAuthMgrClient : public RAuthClient
-	{
-public:
-
-	IMPORT_C void RegisterIdentityL(CIdentity*& aIdentity,
-								   const TDesC& aDescription,  
-								   TRequestStatus& aRequest);
-
-	IMPORT_C void RemoveIdentityL(TIdentityId aId);
-
-
-	IMPORT_C void TrainPlugin(TIdentityId aId,
-							  TPluginId aPlugin,
-							  TRequestStatus& aRequest);
-
-	IMPORT_C void ForgetPluginL(TIdentityId aId,
-					  TPluginId aPlugin);
-
-	IMPORT_C void SetPreferredTypePluginL(TAuthPluginType aPluginType,
-										  TPluginId aPluginId);
-
-	IMPORT_C void ResetIdentityL(TIdentityId aId,
-								const TDesC& aRegistrationInformation);
-
-	IMPORT_C void ResetIdentityL(TIdentityId aId,
-								TAuthPluginType aPluginType,
-								const TDesC& aRegistrationInformation);
-
-	IMPORT_C void ResetIdentityL(TIdentityId aId,
-								RArray<TPluginId>& aPluginIdList,
-								RPointerArray<const HBufC>& aRegistrationInformation);
-	};
-} // namespace
-#endif
--- a/authenticationservices/authenticationserver/inc/authserver/authpatchdata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file 
- @publishedPartner
- @released
-*/
-
-#include <e32base.h>
-
- /**
-   This 8-bit variable is used in agent resolution. It is used to override AuthServer's 
-   default resolution behaviour of only loading plugins from the ROM drive. 
-   Compile time value is 0 - default behaviour. 
-   When non-zero, Authserver will load all plugins visible to the ECOM service regardless of 
-   the drive. 
-   This variable is changed at ROM build time using the patchdata obey keyword.
-   See Symbian OS Developer Library documentation on how to patch DLL data exports.
-   */
-   
-IMPORT_C extern const TUint8 KEnablePostMarketAuthenticationPlugins;
-
--- a/authenticationservices/authenticationserver/inc/authserver/authplugininterface.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthPluginInterface 
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTHPLUGININTERFACE_H
-#define AUTHPLUGININTERFACE_H
-
-
-#include <authserver/authtypes.h>
-#include <ecom/implementationinformation.h>
-
-namespace AuthServer
-{
-
-/// The interface UID for the authentication plugin interface
-const TUid KCAuthPluginInterfaceUid = { 0x102740FE }; 
-
-
-/**
- * The ECOM interface for authentication plugins. An authentication plugin is
- * used to help identify the current device holder. When a plugin is asked to
- * identify the holder, it interacts with the user and potentially hardware or
- * services provided by other servers. The plugin then generates some data
- * which is unique and repeatable for the input recieved. This data should
- * not be persisted on the device in any form that can easily be used to
- * recover the data.
- *
- * For example, a plugin might request a PIN number from the user. The plugin
- * will take the number, perhaps compare the hash of the number against the
- * hashes recorded during training and if a match is found return the identity
- * along with some unique data associated with it.
- *
- */	
-class CAuthPluginInterface : public CBase
-	{
-public:
-
-	/**
-	 * @return the id of the plugin. This should be the ECOM implementation id.
-	 **/
-	virtual TPluginId Id() const = 0;
-
-	/**
-	 *
-	 * @return the name of the plugin.
-	 * 
-	 **/
-	virtual const TPtrC& Name() const = 0;
-	
-	/**
-	 *
-	 * @return a description of the plugin.
-	 * 
-	 **/
-	virtual const TPtrC& Description() const = 0;
-
-	/**
-	 *
-	 * @return the minimum entropy of the plugin.
-	 * 
-	 **/
-	virtual TEntropy MinEntropy() const = 0;
-	
-	/**
-	 *
-	 * @return the rate of false positive identifications.
-	 * 
-	 **/
-	virtual TPercentage FalsePositiveRate() const = 0;
-
-	/**
-	 *
-	 * @return the rate of false negative identifications.
-	 * 
-	 **/
-	virtual TPercentage FalseNegativeRate() const = 0;
-
-	/**
-	 *
-	 * @return the type of plugin
-	 * 
-	 **/
-	virtual TAuthPluginType Type() const = 0;
-
-	/**
-	 * Performs actions required to identify the current device holder. 
-	 *
-	 * For details see the reference/test implementation of a knowledge-type 
-	 * plugin called the pinplugin.
-	 *
-	 * @param aId in the event of a successfull call, aId will be set to the
-	 * id of the identity. The value is not modified otherwise. It should be
-	 * noted that a successful call includes the possibility of not
-	 * recognising the user in which case aId should be set to
-	 * KUnknownIdentity.
-	 *
-	 * @param aClientMessage A displayable text string parameter for authentication
-	 * requests.It shall be passed to plug-ins to display to the users.
-	 *
-	 * @param aResult in the event of a successfull call, aResult contains the
-	 * data generated from the identification process. This data is used by
-	 * the authentication server to generate a transient key which in turn is
-	 * used to decrypt the identities protection key. If the call was
-	 * unsuccessful or the user is unknown no buffer will be created. Ownership of 
-	 * the buffer is transfered to the caller.
-	 *
-	 * @param aRequest the request status through which the caller will be
-	 * notified of completion. Upon completion, the status value will be one of the
-	 * following :
-	 * KErrNone if the identification process is successful.
-	 * KErrAuthServPluginCancelled if the user cancels the identification process for
-	 * this plugin.
-	 * KErrAuthServPluginQuit if the user quits the whole identification
-	 * process.
-	 * ... or any of the system wide error codes.
-	 **/
-
-
-	virtual void Identify(TIdentityId& aId, const TDesC& aClientMessage, 
-						  HBufC8*& aResult, TRequestStatus& aRequest) = 0;
-
-	/**
-	 * Cancel the current action. This method must complete with KErrCancel
-	 * any outstanding asyncronous requests such as Train or Identify.
-	 **/
-
-
-	virtual void Cancel() = 0;
-	
-	/**
-	 * This method tells the plugin to operate in training mode. After the
-	 * successful this method the plugin should be able to correctly identify
-	 * the specified identity using the Identify method. If the plugin already
-	 * has existing training data for the identity then the data should be
-	 * replaced. Care should be taken to allow the user to cancel or quit the
-	 * training without losing the existing training.  
-	 * 
-	 * @param aId the identity for whom to train the plugin. This allows the
-	 * plugin to persist training data associated with the identity and delete
-	 * or update that data later on.
-	 *
-	 * @param aResult this buffer will be filled with data that matches the
-	 * current device holder. This should be the same data as is returned by
-	 * the Identify method for the same identity. Ownership of the buffer is 
-	 * transfered to the caller.
-	 *
-	 * @param aRequest the request status through which the caller will be
-	 * notified of completion. Upon completion the status value will be one of the
-	 * following :
-	 * KErrNone if the training process is successful.
-	 * KErrAuthServPluginCancelled if the user cancels the training process for
-	 * this plugin.
-	 * KErrAuthServPluginQuit if the user quits the whole training
-	 * process.
-	 * ... or any of the system wide error codes.
-	 **/
-
-
-	 virtual void Train(TIdentityId aId, HBufC8*& aResult,
-						TRequestStatus& aRequest) = 0;
-
-	/**
-	 * @return true if the plugin can be used for identification or training
-	 * purposes without further user intervention. 
-	 **/
-
-
-	virtual TBool IsActive() const = 0;
-	
-	/**
-	 * Remove any stored training data for the specified identity. This is
-	 * used if an identity is being removed from the device. No user
-	 * interaction should take place as a result of this call.
-	 *
-	 * @param aId the identity for whom to remove any persisted training data.
-	 *
-	 * @return KErrNone if the operation is successful.
-	 * @return KErrAuthServNoSuchIdentity if the TIdentityId wasn't recognised.
-	 * @return ... or any of the system wide error codes.
-	 **/
-
-
-	 virtual TInt Forget(TIdentityId aId) = 0;
-
-	/**
-	 * Pretend the device holder has identified themselves using a default
-	 * entry. For example, a pin number plugin would return the same data as
-	 * if the holder had entered the default pin. This call is used during the
-	 * creation of the initial device identity and allows the device to be
-	 * operated without the user being forced to train plugins the first time
-	 * the device is started. No user interaction should take place as a
-	 * result of this call.
-	 *
-	 * Only plugins of type EAuthKnowledge should support default
-	 * data. Plugins of other types will be ignored.
-	 *
-	 * @param aId The identity that will be registered using the default data. 
-	 * 
-	 * @param aOutputBuf This buffer should be filled with the data that would
-	 * be generated if the phone holder identified themselves using the
-	 * default manner. Ownership of the buffer is transfered to the caller. 
-	 *
-	 * @return KErrNone if the plugin supports default data.
-	 * @return KErrNotSupported if the plugin doesn't support default data.
-	 * @return ... or any of the system wide error codes.
-	 **/
-
-
-	 virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf) = 0;
-
-	/**
-	 * This method tells the plugin to remove the training data held for the given identity 
-	 * and to regenerate it using the supplied registration data. The intent of this method 
-	 * is to allow a backend reset of user credentials in situations where the user is not 
-	 * able to provide the credentials for some reason (for instance the user has forgotten 
-	 * the password). Note that no user interaction should take place as a result of this call. 
-	 * Since the registration data may not be usable by all plugin types it is expected that only 
-	 * EAuthKnowledge type plugins (those based on pins, passphrases, etc.) use this data for 
-	 * registering the user and return the result.
-	 *
-	 * @param aId The identity whose training data should be reset. 
-	 * 
-	 * @param aRegistrationData The data that can be used to register the identity. 
-	 * This data is meaningful for EAuthKnowledge type plugins. Other plugins may choose to 
-	 * ignore this parameter. An empty descriptor signifies the absence of registration data.
-	 *
-	 * @param aResult This buffer will be filled with data that matches the specified identity. 
-	 * This should be the same data subsequently returned by the Identify method for the same identity. 
-	 * Note that plugins that aren't supplied registration data or those that don't use the supplied 
-	 * registration data for the reset can return NULL. Ownership of the buffer is transfered to 
-	 * the caller.
-	 *
-	 * @return KErrNone if the plugin is successfully able to either remove and/or reset the training data.
-	 * @return KErrNotSupported if the plugin doesn't support a reset functionality.
-	 * @return ... or any of the system wide error codes.
-	 **/
-
-
-	 virtual TInt Reset(TIdentityId aId, const TDesC& aRegistrationData, 
-			 			HBufC8*& aResult) = 0;
-	
-	/**
-	 * 
-	 * Destructor.
-	 * 
-	 **/
-
-
-	virtual ~CAuthPluginInterface() {};
-	
-};	
-
-} // namespace
-
-#endif
--- a/authenticationservices/authenticationserver/inc/authserver/authserver_client.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This header file includes the header files which
-* applications need to use the authentication server.
-*
-*/
-
-
-/**
- @file 
- @internalTechnology 
-*/
-
-#ifndef AUTHSERVER_CLIENT_H
-#define AUTHSERVER_CLIENT_H
-
-#include <authserver/auth_srv_errs.h>
-#include <authserver/authtypes.h>
-#include <authserver/authexpression.h>
-#include <authserver/protectionkey.h>
-#include <authserver/identity.h>
-#include <authserver/plugindesc.h>
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <authserver/aspubsubdefs.h>
-
-#endif	// #ifndef AUTHSERVER_CLIENT_H
-
-
--- a/authenticationservices/authenticationserver/inc/authserver/authtypes.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Basic typedefs used by the Authentication Server
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef AUTHTYPES_H
-#define AUTHTYPES_H
-
-#include <e32cmn.h>
-
-namespace AuthServer
-{
-typedef TUint32 TIdentityId;
-typedef TUint32 TPluginId;
-
-typedef TUint32 TEntropy;
-typedef TUint32 TPercentage;
-
-/////////////
-// constants and enums 
-/////////////
-
-const TUint32 KUnknownPluginId = 0;
-const TUint32 KUnknownIdentity = 0;
-const TUid KAuthServerSecureId = { 0x102740FC };
-const TInt KMaxDescLen = 255;
-
-enum TAuthPluginType
-    {
-	EAuthDefault   = 0,
-    EAuthBiometric = 1,
-    EAuthKnowledge = 64,
-    EAuthToken     = 128,
-	EAuthPerformance = 192
-    };
-    
-enum TAuthTrainingStatus
-    {
-    EAuthUntrained    = 1,
-    EAuthTrained      = 64,
-    EAuthFullyTrained = 128,
-    };
-
-/// Array types used by clients and server
-typedef RArray<TIdentityId>              RIdentityIdArray;
-typedef RArray<TPluginId>                RPluginIdArray;
-
-
-}   
-
-#endif // AUTHTYPES_H
--- a/authenticationservices/authenticationserver/inc/authserver/idandstring.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CIdAndString class declaration
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef IDANDSTRING_H
-#define IDANDSTRING_H
-
-#include <s32strm.h>
-#include <ct/rcpointerarray.h>
-#include "authserver/authtypes.h"
-
-namespace AuthServer
-{
-/**
- * CIdAndString is an client side class of the authentication server. 
- * It contains the relevant identity and corresponding displayable
- * text associated with this identity.
- * 
- */
-NONSHARABLE_CLASS(CIdAndString) : public CBase
-	{
-public:
-
-	IMPORT_C static CIdAndString* NewLC(TIdentityId aId, const TDesC& aString);
-	IMPORT_C static CIdAndString* NewLC(RReadStream& aStream);
-
-	IMPORT_C void ConstructL(TIdentityId aId, const TDesC& aString);
-	
-	IMPORT_C ~CIdAndString(); 
-
-	IMPORT_C void ExternalizeL(RWriteStream& aStream) const;
-	void InternalizeL(RReadStream& aStream);
-	
-	IMPORT_C TIdentityId   Id()     const;
-	IMPORT_C HBufC*        String() const;
-	
-private:
-	TIdentityId iId;
-	HBufC*      iString;
-	};
-
-typedef RCPointerArray<CIdAndString> RIdAndStringArray;
-
-}   
-
-#endif // IDANDSTRING_H
--- a/authenticationservices/authenticationserver/inc/authserver/identity.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CIdentity declaration
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef IDENTITY_H
-#define IDENTITY_H
-
-#include "authserver/authtypes.h"
-#include "authserver/protectionkey.h"
-
-namespace AuthServer
-{
-/**
- * CIdentity is an client side class of the authentication server. 
- * CIdentity is returned as the result of an authentication.
- * 
- */
-class CIdentity : public CBase
-	{
-public:
-
-    IMPORT_C static CIdentity* NewL(TIdentityId aId,
-									CProtectionKey* aKey,
-									HBufC* aString);
-	
-    IMPORT_C static CIdentity* NewLC(TIdentityId aId,
-									 CProtectionKey* aKey,
-									 HBufC* aString);
-	
-    IMPORT_C static CIdentity* NewL(RReadStream& aStream);
-    IMPORT_C static CIdentity* NewLC(RReadStream& aStream);
-    
-	virtual ~CIdentity();
-
-	IMPORT_C TIdentityId Id() const;
-
-	IMPORT_C const CProtectionKey& Key() const;
-
-	IMPORT_C TDesC& String() const;
-	
-	IMPORT_C void ExternalizeL(RWriteStream& s) const;
-	IMPORT_C static CIdentity* InternalizeL(RReadStream& s);
-
-private:
-	void ConstructL(CProtectionKey* aKey,
-					HBufC* aString);
-	
-	CIdentity(TIdentityId aId);
-
-private:
-    TIdentityId           iId;
-    CProtectionKey* iKey;
-	HBufC*                iString;
-	};
-}
-
-#endif // IDENTITY_H
--- a/authenticationservices/authenticationserver/inc/authserver/log.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Prints debug information.
-*
-*/
-
-
-/**
- @file
- @internalComponent
-*/
- 
-#ifndef __AUTHSERVER_LOG_H__
-#define __AUTHSERVER_LOG_H__
-
-#include <e32debug.h>
-
-namespace AuthServ
-{
-
-#ifdef _DEBUG
-
-#define DEBUG_PRINTF(a) {AuthServ::DebugPrintf(__LINE__, __FILE__, a);}
-#define DEBUG_PRINTF2(a, b) {AuthServ::DebugPrintf(__LINE__, __FILE__, a, b);}
-#define DEBUG_PRINTF3(a, b, c) {AuthServ::DebugPrintf(__LINE__, __FILE__, a, b, c);}
-#define DEBUG_PRINTF4(a, b, c, d) {AuthServ::DebugPrintf(__LINE__, __FILE__, a, b, c, d);}
-#define DEBUG_PRINTF5(a, b, c, d, e) {AuthServ::DebugPrintf(__LINE__, __FILE__, a, b, c, d, e);}
-
-#define DEBUG_CODE_SECTION(a) TRAP_IGNORE({ a; }) 
-
-// UTF-8 overload of the DebufPrintf method. Should be used by default,
-// since it's cheaper both in CPU cycles and stack space.
-
-inline void DebugPrintf(TInt aLine, char* aFile, TRefByValue<const TDesC8> aFormat, ...)
-	{
-	VA_LIST list;
-	VA_START(list, aFormat);
-	
-	TTime now;
-	now.HomeTime();
-	
-	TBuf8<1024> buffer;
-	_LIT8(KAuthServLogPrefix, "[authserver] ");
-	_LIT8(KAuthServLineFileFormat, "%Ld Line: % 5d, File: %s -- ");
-	buffer.Append(KAuthServLogPrefix);
-	buffer.AppendFormat(KAuthServLineFileFormat, now.Int64(), aLine, aFile);
-	buffer.AppendFormatList(aFormat, list);
-	buffer.Append(_L8("\r\n"));
-	
-	RDebug::RawPrint(buffer);
-	
-	VA_END(list);
-	}
-	
-// Unicode DebufPrintf overload
-
-inline void DebugPrintf(TInt aLine, char* aFile, TRefByValue<const TDesC16> aFormat, ...)
-	{
-	VA_LIST list;
-	VA_START(list, aFormat);
-	
-	TTime now;
-	now.HomeTime();
-	
-	TBuf8<256> header;
-	_LIT8(KAuthServLogPrefix, "[authserver] ");
-	_LIT8(KAuthServLineFileFormat, "%Ld Line: % 5d, File: %s -- ");
-	header.Append(KAuthServLogPrefix);
-	header.AppendFormat(KAuthServLineFileFormat, now.Int64(), aLine, aFile);
-	
-	TBuf<1024> buffer;
-	buffer.Copy(header);
-	buffer.AppendFormatList(aFormat, list);
-	buffer.Append(_L("\r\n"));
-	
-	RDebug::RawPrint(buffer);
-	
-	VA_END(list);
-	}
-
-#else
-
-#define DEBUG_PRINTF(a)
-#define DEBUG_PRINTF2(a, b)
-#define DEBUG_PRINTF3(a, b, c)
-#define DEBUG_PRINTF4(a, b, c, d)
-#define DEBUG_PRINTF5(a, b, c, d, e)
-
-#define DEBUG_CODE_SECTION(a)
-
-#endif
-
-
-} // namespace AuthServ
-
-#endif // __AUTHSERVER_LOG_H__
--- a/authenticationservices/authenticationserver/inc/authserver/plugindesc.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,99 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPluginDesc class declaration
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-
-#ifndef PLUGINDESC_H
-#define PLUGINDESC_H
-
-#include <s32strm.h>
-#include <ct/rcpointerarray.h>
-#include "authserver/authtypes.h"
-
-namespace AuthServer
-{
-
-/**
- * Provides a description of an authentication plugin's properties.
- **/
-NONSHARABLE_CLASS(CPluginDesc) : public CBase
-	{
-public:
-
-	IMPORT_C static CPluginDesc* NewL(
-		TPluginId aId, const TDesC& aName,
-		TAuthPluginType aType, TAuthTrainingStatus aTrainingStatus,
-		TEntropy aMinEntropy, TPercentage aFalsePositiveRate,
-		TPercentage aFalseNegativeRate);
-	IMPORT_C static CPluginDesc* NewLC(RReadStream& aIn);
-	
-	virtual ~CPluginDesc();
-	
-	IMPORT_C TPluginId           Id() const;
-	IMPORT_C const TDesC*        Name() const;
-	IMPORT_C TAuthPluginType     Type() const;
-	IMPORT_C TAuthTrainingStatus TrainingStatus() const;
-	IMPORT_C TEntropy            MinEntropy() const;
-	IMPORT_C TPercentage         FalsePositiveRate() const;
-	IMPORT_C TPercentage         FalseNegativeRate() const;
-
-	IMPORT_C void ExternalizeL(RWriteStream& aOut) const;
-		
-private:
-	static const TInt KMaxNameLength = 256;
-		
-	CPluginDesc(TPluginId           aId,
-				TAuthPluginType     aType,
-				TAuthTrainingStatus aTrainingStatus,
-				TEntropy            aMinEntropy,
-				TPercentage         aFalsePositiveRate,
-				TPercentage         aFalseNegativeRate);
-	void ConstructL(const TDesC& aName);
-
-	inline CPluginDesc();
-	void InternalizeL(RReadStream& aIn);
-
-	/// the id of the plugin
-	TPluginId           iId;
-	/// The name of the plugin
-	HBufC*              iName;
-	/// The type of plugin
-	TAuthPluginType     iType;
-	/// Indicates whether the plugin is trained for none, some or all
-	/// known identities.
-	TAuthTrainingStatus iTrainingStatus;
-	/// The minumum entropy provided by the plugin.
-	TEntropy            iMinEntropy;
-	/// The false positive rate of the plugin
-	TPercentage         iFalsePositiveRate;
-	/// The false negative rate of the plugin.
-	TPercentage         iFalseNegativeRate;
-    };
-
-typedef RCPointerArray<const CPluginDesc> RPluginDescriptions;
-
-}   
-
-#include <authserver/plugindesc.inl>
-
-#endif // PLUGINDESC_H
--- a/authenticationservices/authenticationserver/inc/authserver/plugindesc.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef AUTHSERVER_PLUGINDESC_INL
-#define AUTHSERVER_PLUGINDESC_INL
-
-#include <authserver/plugindesc.h>
-
-AuthServer::CPluginDesc::CPluginDesc()
-/**
-	This constructor is used by NewL to allocate
-	a CPluginDesc object when it restores one from
-	a stream.
-	
-	It does nothing, and is only defined because
-	this class has another, non-default, constructor.
- */
-	{
-	// empty.
-	}
-
-#endif	// #ifndef AUTHSERVER_PLUGINDESC_INL
-
--- a/authenticationservices/authenticationserver/inc/authserver/protectionkey.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TProtectionKey declaration
-*
-*/
-
-
-/**
- @file 
- @publishedAll
- @released
-*/
-#ifndef PROTECTIONKEY_H
-#define PROTECTIONKEY_H
-
-#include <s32strm.h>
-
-namespace AuthServer
-{
-
-/**
- * CProtectionKey is a cryptographic key that is assigned to an
- * identity. Protection keys are used by authentication clients 
- * to protect data that only the associated identity should be 
- * able to access. Protection keys are generated by the AuthServer
- * when a new identity is created.
- */
-NONSHARABLE_CLASS(CProtectionKey) : public CBase
-	{
-public:
-	virtual ~CProtectionKey();
-	
-
-	IMPORT_C static CProtectionKey* NewL(TInt aKeySize);	
-	IMPORT_C static CProtectionKey* NewLC(TInt aKeySize);
-	IMPORT_C static CProtectionKey* NewL(HBufC8* aKeyData);
-	IMPORT_C static CProtectionKey* NewLC(HBufC8* aKeyData);
-
-	IMPORT_C CProtectionKey* ClientKeyL(TInt aClientUid) const;
-	IMPORT_C TPtrC8 KeyData() const;
-	
-private:
-	CProtectionKey();
-	void ConstructL(TInt aKeySize);
-	void ConstructL(HBufC8* aKeyData);
-
-	HBufC8* iKeyData;
-	};
-
-}
-
-#endif // PROTECTIONKEY_H
--- a/authenticationservices/authenticationserver/inc/tAuthSvr.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TAUTHSVR_IBY__
-#define __TAUTHSVR_IBY__
-
-#include <testexecute.iby>
-#include "tpinplugin.iby"
-
-define ZDRIVE \epoc32\data\z
-file=ABI_DIR\BUILD_DIR\authtool.exe			sys\bin\authtool.exe
-file=ABI_DIR\BUILD_DIR\tauthkeys.exe		sys\bin\tauthkeys.exe
-file=ABI_DIR\BUILD_DIR\tauthdb.exe			sys\bin\tauthdb.exe
-file=ABI_DIR\BUILD_DIR\tauthcliserv.exe		sys\bin\tauthcliserv.exe
-file=ABI_DIR\BUILD_DIR\tauthplugins.exe		sys\bin\tauthplugins.exe
-data=ABI_DIR\BUILD_DIR\tAuthSvr.exe			sys\bin\tAuthSvr.exe
-file=ABI_DIR\BUILD_DIR\tauthsvrwdd.exe		sys\bin\tauthsvrwdd.exe
-file=ABI_DIR\BUILD_DIR\tauthsvrnc.exe		sys\bin\tauthsvrnc.exe
-REM security tests
-file=ABI_DIR\BUILD_DIR\authsecuritytests.dll	sys\bin\authsecuritytests.dll
-
-ECOM_PLUGIN(testplugins.dll, testplugins.rsc)
-ECOM_PLUGIN(tAuthPlugin.dll, tAuthPlugin.rsc)
-
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\AuthSvrPolicy.ini				tauth\tAuthSvr\testdata\AuthSvrPolicy.ini	 attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\initialisation_Info.ini				tauth\tAuthSvr\testdata\initialisation_Info.ini	 attrib=W		  
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tAuthSvr2.script					tauth\tAuthSvr\scripts\tAuthSvr2.script				  
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tAuthSvr2.ini		                        tauth\tAuthSvr\scripts\tAuthSvr2.ini
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tAuthSvr2_unicode.ini				tauth\tAuthSvr\scripts\tAuthSvr2_unicode.ini
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin11113100Db.ini               		tauth\tAuthSvr\testdata\Pin11113100Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin11113101Db.ini				tauth\tAuthSvr\testdata\Pin11113101Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin11113102Db.ini				tauth\tAuthSvr\testdata\Pin11113102Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin11113103Db.ini				tauth\tAuthSvr\testdata\Pin11113103Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin11113104Db.ini				tauth\tAuthSvr\testdata\Pin11113104Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\Pin10234100Db.ini				tauth\tAuthSvr\testdata\Pin10234100Db.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tauthcliserv\scripts\tauthcliserv.script		    tauth\tauthcliserv\scripts\tauthcliserv.script		  
-data = \epoc32\winscw\c\tauth\tauthplugins\scripts\tauthplugins.script		    tauth\tauthplugins\scripts\tauthplugins.script		  
-data = \epoc32\winscw\c\tauth\tauthdb\scripts\tauthdb.script				    tauth\tauthdb\scripts\tauthdb.script				  
-data = \epoc32\winscw\c\tauth\tauthexpr\scripts\tauthexpr.script			    tauth\tauthexpr\scripts\tauthexpr.script			  
-data = \epoc32\winscw\c\tauth\tauthkeys\scripts\tauthkeys.script			    tauth\tauthkeys\scripts\tauthkeys.script			  
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\tauthpluginupgrade.rsc			    tauth\tpostmarketplugins\tauthpluginupgrade.rsc
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\tauthpluginupgrade.dll			    tauth\tpostmarketplugins\tauthpluginupgrade.dll
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\tpostmarketramplugin.rsc		    tauth\tpostmarketplugins\tpostmarketramplugin.rsc
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\tpostmarketramplugin.dll		    tauth\tpostmarketplugins\tpostmarketramplugin.dll
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\testpluginsupgrade.rsc			    tauth\tpostmarketplugins\testpluginsupgrade.rsc
-data = \epoc32\winscw\c\tauth\tpostmarketplugins\testpluginsupgrade.dll			    tauth\tpostmarketplugins\testpluginsupgrade.dll
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tpostmarketplugin.script					tauth\tAuthSvr\scripts\tpostmarketplugin.script	
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tpostmarketplugin_macroenabled.script	tauth\tAuthSvr\scripts\tpostmarketplugin_macroenabled.script	
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tpostmarketplugin.ini				    tauth\tAuthSvr\scripts\tpostmarketplugin.ini
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tclientsidsupport.script					tauth\tAuthSvr\scripts\tclientsidsupport.script				  
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tclientsidsupport.ini				    tauth\tAuthSvr\scripts\tclientsidsupport.ini
-data = \epoc32\winscw\c\tauth\tAuthSvr\testdata\pinplugin_inactive.txt				tauth\tAuthSvr\testdata\pinplugin_inactive.txt	attrib=W
-
-data = \epoc32\winscw\c\tauth\securitytests\scripts\authsecuritytests.ini			tauth\securitytests\scripts\authsecuritytests.ini
-data = \epoc32\winscw\c\tauth\securitytests\scripts\authsecuritytests.script			tauth\securitytests\scripts\authsecuritytests.script
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tauthsvr_performance.script			tauth\tAuthSvr\scripts\tauthsvr_performance.script				  
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tauthsvr_performance.ini				tauth\tAuthSvr\scripts\tauthsvr_performance.ini
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\performance_log_parser.pl			tauth\tAuthSvr\scripts\performance_log_parser.pl
-data = \epoc32\winscw\c\tauth\tAuthSvr\scripts\tauthsvrclock.script					tauth\tAuthSvr\scripts\tauthsvrclock.script
-
-#endif
--- a/authenticationservices/authenticationserver/inc_private/authrepository.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Contains system wide default plugin and authentication strength aliases configuration parameters.
-* The strength aliases and it's corresponding authentication expression is specified in the 
-* authserver configuration(central repository) file.Also , defined are the enums corresponding 
-* to authentication expression creation.
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent 
-*/
-#ifndef AUTHREPOSITORY_H
-#define AUTHREPOSITORY_H
-
-#include <centralrepository.h>
-#include "authserver/authtypes.h"
-
-namespace AuthServer
-	{
-	
-	/**	 The default system wide plugin key*/
-	const TUint KAuthDefaultPlugin = {0x00000000}; 
-		
-	/**
-		AuthServer repository configuration parameter Enums.
-		These enums are the key Id's for authentication strength aliases and their respective authentication expression defining them.
-	 */
-	
-	enum TAuthStrengthAliasesKeys
-		{
-		EAuthAliasesCount			= 0x00000100,	// Number of authentication aliases.
-		EAuthAliases				= 0x00000200,   // The various authentication aliases like strong, weak, medium, fast etc.
-		EAuthAliasesExpr			= 0x00000300,	// The authentication expressions defining each authentication alias.
-		};
-	
-	/** The UID of the AuthServer repository. */
-	const TUid KUidAuthServerRepository = {0x2001ea7f};  //536996479
-
-	
-/**
- * Provides methods to access information from
- * AuthServer's Central Repository
- */
-
-class CAuthRepository : public CBase
-	{
-	
-public:
-	
-	static CAuthRepository* NewL();
-	
-	static CAuthRepository* NewLC();
-	
-	TPluginId DefaultPluginL() const;
-	
-	void ListAliasL(RPointerArray<HBufC>& aAuthStrengthAliasList);
-	
-	void GetAliasDefinitionL(TInt aKey, TDes16& aValue);
-	
-	~CAuthRepository();
-	
-private:
-	
-	void ConstructL();
-	
-private:
-	CRepository* iRepository;
-	};
-
-
-}
-#endif //AUTHREPOSITORY_H
--- a/authenticationservices/authenticationserver/source/client/asyncresponsedecoder.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,188 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAsyncResponseDecoder - Auth Client helper class
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include <e32debug.h>
-#include <s32mem.h>
-#include "authclient_impl.h"
-
-using namespace AuthServer;
-
-namespace AuthServer
-{
-HBufC8* ExternalizeExpressionL(const CAuthExpression* aExpr);
-
-enum {  EPanicBadCmd = 1 };
-
-_LIT(KAsyncDecoderBusy, "AuthClient busy");
-
-}
-
-CAsyncResponseDecoder::CAsyncResponseDecoder(const RAuthClient& aSession) :
-	CActive(EPriorityStandard), iSession(aSession), 
-	iBufDes(0,0), iParamsPtr(0,0)
-    {
-	CActiveScheduler::Add(this);
-	}
-
-CAsyncResponseDecoder::~CAsyncResponseDecoder()
-    {
-    Cleanup();
-    }
-
-
-void CAsyncResponseDecoder::AuthenticateL(
-						   const CAuthExpression& aExpression,
-						   TTimeIntervalSeconds   aTimeout,
-						   TBool                  aClientSpecificKey,
-						   TUid 				  aClientSid,
-						   TBool                  aWithString,
-						   const TDesC& 		  aClientMessage,
-						   CIdentity*&            aIdentityResult, 
-						   TRequestStatus&        aClientStatus)
-	{
-	__ASSERT_ALWAYS(!IsActive(), User::Panic(AuthServer::KAsyncDecoderBusy, 0));
-	
-	iExpression       	     = &aExpression;
-	iResult            	     = &aIdentityResult;
-	iClientStatus            = &aClientStatus;
-	
-	//Create a flat buffer.
-  	CBufFlat* flatBuffer = CBufFlat::NewL(KDefaultBufferSize);
-  	CleanupStack::PushL(flatBuffer);
-  	
-  	//Initialize the CAuthParams object.
-  	CAuthParams* params = CAuthParams::NewL(aTimeout,
-  											aClientSpecificKey,
-											aClientSid,
-  											aWithString,
-  											aClientMessage);
-  	CleanupStack::PushL(params);
-  	
-  	//Externalize params.
-  	RBufWriteStream stream(*flatBuffer);
-  	CleanupClosePushL(stream);
-  	params->ExternalizeL(stream);
-  	CleanupStack::PopAndDestroy(2, params);
-  		
-  	iParamsBuffer = HBufC8::NewL(flatBuffer->Size());
-  	iParamsPtr.Set(iParamsBuffer->Des());
-  	flatBuffer->Read(0, iParamsPtr, flatBuffer->Size());
-  	CleanupStack::PopAndDestroy(flatBuffer);
-  
-	//Externalize the expression.
-  	iExprBuf = ExternalizeExpressionL(iExpression);
-  
-	// allocate buffer for identity result.
-	iBuffer = HBufC8::NewL(KDefaultBufferSize);
-	iBufDes.Set(iBuffer->Des());
-  
-	iArgs = new (ELeave)TIpcArgs(iExprBuf,
-								 &iParamsPtr,
-								 &iBufDes); 
-	StartCall(EAuthenticate);
-	}
-void CAsyncResponseDecoder::RegisterIdentityL(CIdentity*& aIdentity,
-											 const TDesC& aDescription,  
-											 TRequestStatus& aClientStatus)
-	{
-	__ASSERT_ALWAYS(!IsActive(), User::Panic(KAsyncDecoderBusy, 0));
-	
-	iBuffer = HBufC8::NewL(KDefaultBufferSize);
-	iBufDes.Set(iBuffer->Des());
-	iResult = &aIdentity;
-	iDescription = HBufC::NewL(aDescription.Size());
-	*iDescription = aDescription;
-	iClientStatus = &aClientStatus;
-	iArgs = new (ELeave)TIpcArgs(&iBufDes, iDescription);
-  
-	StartCall(ERegisterIdentity);
-	}
-
-void CAsyncResponseDecoder::StartCall(TAuthServerMessages aCmd)
-	{
-	iCmd = aCmd;
-	iStatus = KRequestPending;
-	*iClientStatus = KRequestPending;
-	SetActive();
-	iSession.CallSessionFunction(iCmd, *iArgs, iStatus);
-	}
-
-void CAsyncResponseDecoder::RunL() 
-	{
-	if (iStatus.Int() == KErrNone)
-		{
-		RDesReadStream readStream(*iBuffer);
-		switch (iCmd)
-			{
-			case EAuthenticate:
-				*iResult = CIdentity::InternalizeL(readStream);
-				break;
-			case ERegisterIdentity:
-				*iResult = CIdentity::InternalizeL(readStream);
-				break;
-			default:
-				User::Panic(_L("AuthClient-AsyncResponseDecoder"),
-							EPanicBadCmd);
-			}
-		}
-	User::RequestComplete(iClientStatus,iStatus.Int());
-	Cleanup();
-	}
-
-TInt CAsyncResponseDecoder::RunError(TInt aError)
-	{	
-	User::RequestComplete(iClientStatus, aError);
-	Cleanup();    			
-	return KErrNone;
-	
-	}
-
-void CAsyncResponseDecoder::DoCancel()
-	{
-	switch (iCmd)
-		{
-		case EAuthenticate:
-		case ERegisterIdentity:
-			User::RequestComplete(iClientStatus, KErrCancel);
-			break;
-		default:
-		    break;
-		}
-	Cleanup();
-    }
-
-void CAsyncResponseDecoder::Cleanup()
-    {
-	delete iArgs;
-	iArgs = 0;
-	delete iExprBuf;
-	iExprBuf = 0;
-	delete iBuffer;
-	iBuffer = 0;
-    delete iDescription;
-    iDescription = 0;
-    delete iParamsBuffer;
-    iParamsBuffer = 0;
-	iCmd = ELastService;
-	iClientStatus = 0;
-    }
--- a/authenticationservices/authenticationserver/source/client/asyncresponsedecoder.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAsyncResponseDecoder - Auth Client helper class
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-#ifndef ASYNCRESPONSEDECODER_H
-#define ASYNCRESPONSEDECODER_H
-namespace AuthServer
-{
-
-/** 
- * This AO handles the return buffers from asynchronous RAuthClient /
- * RAuthMgrClient calls and reconstructs the object from the stream returned,
- * completing the caller when finished.
- **/
-class CAsyncResponseDecoder : public CActive
-	{
-public:
-  
-	CAsyncResponseDecoder(const RAuthClient& aSession);
-	~CAsyncResponseDecoder();
-	
-	/**
-	 * Initiate the authenticate method
-	 */
-		
-	void AuthenticateL(const CAuthExpression& aExpression,
-						   TTimeIntervalSeconds   aTimeout,
-						   TBool                  aClientSpecificKey,
-						   TUid 				  aClientSid,
-						   TBool                  aWithString,
-						   const TDesC& 		  aClientMessage,
-						   CIdentity*&            aIdentityResult, 
-						   TRequestStatus&        aClientStatus);
-	
-	/**
-	 * Initiate the register identity method
-	 */
-	void RegisterIdentityL(CIdentity*& aIdentity,
-						  const TDesC& aDescription,  
-						  TRequestStatus& aRequest);
-	/**
-	 * common code to send the request and kickoff the active object
-	 **/
-	void StartCall(TAuthServerMessages aCmd);
-  
-	void RunL();
-
-	void DoCancel();
-  
-private:
-	void Cleanup();
-	TInt RunError(TInt aError);
-	
-	const RAuthClient&     		iSession;
-	const CAuthExpression* 		iExpression;
-	CIdentity**            		iResult;
-	HBufC8*                		iBuffer;
-	HBufC8*						iParamsBuffer;
-	TPtr8                  		iBufDes;
-	TPtr8                  		iParamsPtr;
-	TRequestStatus*        		iClientStatus;
-	TIpcArgs*              		iArgs;
-	HBufC8*                		iExprBuf;
-	HBufC*                		iDescription;
-	TAuthServerMessages         iCmd;
-};
-}
-#endif // ASYNCRESPONSEDECODER_H
--- a/authenticationservices/authenticationserver/source/client/authclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,774 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authclient - exported authentication client session  implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include <e32debug.h>
-#include <s32mem.h>
-#include "authclient_impl.h"
-#include "authrepository.h"
-
-namespace AuthServer
-{
-
-/**
-	Helper function for Authenticate.  This allocates
-	a buffer to hold the externalized authentication expression.
-	
-	@param	aExpr			Expression to externalize.
-	@return					Descriptor containing externalized expression.
-							The memory must be freed by the caller.
- */
-HBufC8* ExternalizeExpressionL(const CAuthExpression* aExpr)
-	{
-	AuthServer::TSizeStream ss;
-	RWriteStream ws(&ss);
-	aExpr->ExternalizeL(ws);
-	
-	TInt len = ss.Size();
-	HBufC8* buf = HBufC8::NewLC(len);
-	TPtr8 bufDes(buf->Des());
-	
-	RDesWriteStream dws(bufDes);
-	aExpr->ExternalizeL(dws);
-	dws.CommitL();
-		
-	CleanupStack::Pop(buf);
-	return buf;
-	}
-}
-
-using namespace AuthServer;
-
-
-/**
- * Connect to the server, attempt to start it if it is not yet running
- *
- * @return KErrNone if successful or an error code
- */
-EXPORT_C TInt RAuthClient::Connect()
-	{
-	const TUidType serverUid(KNullUid, KNullUid, KAuthServerSecureId);
-
-	TInt err = RScsClientBase::Connect(AuthServer::KAuthServerName, TVersion(1, 0, 0), 
-									   AuthServer::KAuthServerImg, serverUid );
-	return err;
-	}
-
-EXPORT_C RAuthClient::RAuthClient() : 
-	RScsClientBase(), iAsyncResponseDecoder(0)
-    {
-	
-    }
-    
- 
-    
-/**
-  Authenticate the current device holder using a specified combination of
-  authentication methods. The ownership of the heap allocated CIdentity
-  object is passed to the caller. Requesting a user specific key
-  requires ReadUserData capability.
- 
-  @capability None/ReadUserData
- 
-  @param aExpression An authentication expression specifying which 
-  combination of methods to use to authenticate the device holder.
- 
-  @param aTimeout If an authentication has previously been performed 
-  within this period then a cached identity is returned.
- 
-  @param aClientSpecificKey If this value is true then the key returned
-  by this server will be unique to the calling client. This is achieved
-  by combining the identity protection key with the client process UID.
-  If this value is set to false then the call requires ReadUserData.
- 
-  @param aWithString If this value is true then the identity object returned
-  by the server will contain the identities string. If this value is set to
-  true then the call requires ReadUserData.
- 
-  @return CIdentity object corresponding to the authenticated device
-  holder. It is possible for the identity to be 'unknown'.
-  
-  @leave KErrServerTerminated, if the server no longer present
-  @leave KErrServerBusy, if the request cannot be handled at this time. 
-  @leave KErrNoMemory, if there is insufficient memory available.
-  @leave KErrPermissionDenied, if the caller has insufficient capabilities.
-  @leave ...			One of the AuthServer error codes defined in 
-  						auth_srv_errs.h or one of the system-wide error codes.
- **/
-EXPORT_C CIdentity* RAuthClient::AuthenticateL(
-	const CAuthExpression& aExpression,
-	TTimeIntervalSeconds   aTimeout,
-	TBool                  aClientSpecificKey,
-	TBool                  aWithString)
-	{
-	TUid clientSid = {0};
-		
-	CIdentity* identity = AuthenticateL(aExpression, aTimeout,
-										aClientSpecificKey, clientSid, 
-										aWithString, KNullDesC());
-		
-	return identity;
-	
-    }
-
-    
-
-/**
-  Authenticate the current device holder using a specified combination of
-  authentication methods. The ownership of the heap allocated CIdentity
-  object is passed to the caller. Requesting a user specific key
-  requires ReadUserData capability.
- 
-  @capability None/ReadUserData
- 
-  @param aExpression An authentication expression specifying which 
-  combination of methods to use to authenticate the device holder.
- 
-  @param aTimeout If an authentication has previously been performed 
-  within this period then a cached identity is returned.
- 
-  @param aClientSpecificKey If this value is true then the key returned
-  by this server will be unique to the calling client. This is achieved
-  by combining the identity protection key with the client process UID.
-  If this value is set to false then the call requires ReadUserData.
- 
-  @param aWithString If this value is true then the identity object returned
-  by the server will contain the identities string. If this value is set to
-  true then the call requires ReadUserData.
- 
-  @param aIdentityResult The returned identity will be placed in this
-  parameter when the asynchronous request completes.  
- 
-  @param aStatus The request status for this asynchronous request.
- 
-  @leave KErrServerTerminated, if the server no longer present
-  @leave KErrServerBusy, if the request cannot be handled at this time. 
-  @leave KErrNoMemory, if there is insufficient memory available.
-  @leave KErrPermissionDenied, if the caller has insufficient capabilities.
-  @leave ...			One of the AuthServer error codes defined in 
-  						auth_srv_errs.h or one of the system-wide error codes.
-
- **/
-EXPORT_C void RAuthClient::AuthenticateL(
-	const CAuthExpression& 	aExpression,
-	TTimeIntervalSeconds   	aTimeout,
-	TBool                  	aClientSpecificKey,
-	TBool                  	aWithString, 
-	CIdentity*&            	aIdentityResult, 
-	TRequestStatus&        	aStatus)
-	{
-	TUid clientSid = {0};
-	AuthenticateL(aExpression, aTimeout, aClientSpecificKey,
-				  clientSid, aWithString, KNullDesC(),
-			      aIdentityResult, aStatus);	
-	
-	}
-
-
-/**
-   Authenticate the current device holder using a specified combination of
-  authentication methods. The ownership of the heap allocated CIdentity 
-  object is passed to the caller. Requesting a user specific key requires 
-  ReadUserData capability.
- 
-   @capability None/ReadUserData
- 
-   @param aAuthStrength Descriptor specifying the authentication strength, 
-   which inturn maps to a combination of methods to be used to authenticate 
-   the device holder.
- 
-   @param aTimeout If an authentication has previously been performed 
-   within this period then a cached identity is returned.
- 
-   @param aClientSpecificKey If this value is true then the key returned
-   by this server will be unique to the calling client. This is achieved
-   by combining the identity protection key with the client process UID.
-   If this value is set to false then the call requires ReadUserData.
-          
-   @param aClientSid Sid of the client application from where the authentication
-   request originated and is used to generate protection key.This value is ignored 
-   when aClientSpecificKey is set to false. If aClientSid is non-zero and is not 
-   the calling application's sid, then the call requires ReadUserData.
-  
-   @param aWithString If this value is true then the identity object returned
-   by the server will contain the identities string. If this value is set to
-   true then the call requires ReadUserData.
- 
-   @param aClientMessage A displayable text string parameter for authentication
-   requests.It shall be passed to plug-ins to display to the users.
-
-   @return the CIdentity object corresponding to the authenticated device
-   holder. It is possible for the identity to be 'unknown'.
-  
-   @leave KErrServerTerminated, if the server no longer present
-   @leave KErrServerBusy, if the request cannot be handled at this time. 
-   @leave KErrNoMemory, if there is insufficient memory available.
-   @leave KErrPermissionDenied, if the caller has insufficient capabilities.
-   @leave ...			One of the AuthServer error codes defined in 
-  						auth_srv_errs.h or one of the system-wide error codes.
-
- **/	
-
-EXPORT_C CIdentity* RAuthClient::AuthenticateL(
-		const CAuthExpression& aAuthExpression,
-	    TTimeIntervalSeconds   aTimeout,
-		TBool                  aClientSpecificKey,
-		TUid 				   aClientSid,
-		TBool                  aWithString,
-		const TDesC&		   aClientMessage)
-	{
-	
-	//Create a flat buffer
-	CBufFlat* flatBuffer = CBufFlat::NewL(KDefaultBufferSize);
-	CleanupStack::PushL(flatBuffer);
-	
-	//Initialize the CAuthParams object
-	CAuthParams* params = CAuthParams::NewL(aTimeout,
-											aClientSpecificKey,
-											aClientSid,
-											aWithString,
-											aClientMessage);
-	CleanupStack::PushL(params);
-	//Externalize params
-	RBufWriteStream stream(*flatBuffer);
-	CleanupClosePushL(stream);
-	params->ExternalizeL(stream);
-	CleanupStack::PopAndDestroy(2, params);
-	
-	HBufC8* paramsBuffer = HBufC8::NewLC(flatBuffer->Size());
-	TPtr8 paramsPtr(paramsBuffer->Des());
-	flatBuffer->Read(0, paramsPtr, flatBuffer->Size());
-		
-	//Externalize the expression
-	HBufC8* exprBuf = ExternalizeExpressionL(&aAuthExpression);
-	CleanupStack::PushL(exprBuf);
-		
-	// allocate buffer for identity result
-	HBufC8* identityResultbuf = HBufC8::NewLC(KDefaultBufferSize);
-	TPtr8 bufDes(identityResultbuf->Des());
-		
-	TIpcArgs args(exprBuf, &paramsPtr, &bufDes); 
-	User::LeaveIfError(CallSessionFunction(EAuthenticate, args));
-		
-
-		
-	RDesReadStream readStream(*identityResultbuf);
-	CIdentity* identity = CIdentity::InternalizeL(readStream);
-	    
-	CleanupStack::PopAndDestroy(4,flatBuffer);//identityResultbuf, exprBuf,
-											  //paramsBuffer, flatBuffer	
-	return identity;
-	}
-
-/**
-  Authenticate the current device holder using a specified combination of
-  authentication methods. The ownership of the heap allocated CIdentity 
-  object is passed to the caller. Requesting a user specific key requires 
-  ReadUserData capability.
- 
-  @capability None/ReadUserData
- 
-  @param aAuthStrength	Descriptor specifying the authentication strength, 
-  which inturn maps to a combination of methods to be used to authenticate the device holder.
- 
-  @param aTimeout If an authentication has previously been performed 
-  within this period then a cached identity is returned.
- 
-  @param aClientSpecificKey If this value is true then the key returned
-  by this server will be unique to the calling client. This is achieved
-  by combining the identity protection key with the client process UID.
-  If this value is set to false then the call requires ReadUserData.
-  
-  @param aClientSid Sid of the client application from where the authentication
-  request originated and is used to generate protection key.This value is ignored 
-  when aClientSpecificKey is set to false. If aClientSid is non-zero and is not 
-  the calling application's sid, then the call requires ReadUserData.
- 
-  @param aWithString If this value is true then the identity object returned
-  by the server will contain the identities string. If this value is set to
-  true then the call requires ReadUserData.
- 
-  @param aClientMessage A displayable text string parameter for authentication
-  requests.It shall be passed to plug-ins to display to the users.
-   
-  @param aIdentityResult The returned identity will be placed in this
-  parameter when the asynchronous request completes.  
- 
-  @param aStatus The request status for this asynchronous request.
- 
-  @leave KErrServerTerminated, if the server no longer present
-  @leave KErrServerBusy, if the request cannot be handled at this time. 
-  @leave KErrNoMemory, if there is insufficient memory available.
-  @leave KErrPermissionDenied, if the caller has insufficient capabilities.
-  @leave ...			One of the AuthServer error codes defined in 
-  						auth_srv_errs.h or one of the system-wide error codes.
-
- **/
- 	
-EXPORT_C void RAuthClient::AuthenticateL(
-	const CAuthExpression& aExpression,
-	TTimeIntervalSeconds   aTimeout,
-	TBool                  aClientSpecificKey,
-	TUid 				   aClientSid,	
-	TBool                  aWithString, 
-	const TDesC&		   aClientMessage,
-	CIdentity*&            aIdentityResult,
-	TRequestStatus&        aStatus
-	)
-	{
-	
-	CheckAsyncDecoderL();
-	iAsyncResponseDecoder->AuthenticateL(aExpression,
-										 aTimeout,
-										 aClientSpecificKey,
-										 aClientSid,
-										 aWithString,
-										 aClientMessage,
-										 aIdentityResult,
-										 aStatus);
-										 
-	
-	}
-
-/**
- * creates the async decoder if it's not already been created. 
- */
-void RAuthClient::CheckAsyncDecoderL()
-    {
-    if (iAsyncResponseDecoder == 0)
-	    {
-	    iAsyncResponseDecoder = new (ELeave) CAsyncResponseDecoder(*this);
-	    }
-    }
-    
-	    
-
-
-/**
- * Retrieves all plugin descriptions. 
- *
- * @param aPluginList will be filled with  the full list of plugins available on the device. 
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- **/
-EXPORT_C void RAuthClient::PluginsL(RPluginDescriptions& aPluginList)
-    {
-	HBufC8* buffer = SendReceiveBufferLC(EPlugins);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizePointerArrayL(aPluginList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-	
-/**
- * @param aPluginList the list of active plugins available on the device. 
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- **/
-EXPORT_C void RAuthClient::ActivePluginsL(RPluginDescriptions& aPluginList)
-    {
- 	HBufC8* buffer = SendReceiveBufferLC(EActivePlugins);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizePointerArrayL(aPluginList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-	}
-	
-/**
- *
- * Retrieves plugin descriptions for plugins matching the specified
- * type.
- *
- * @param aType the plugin type for which the method should return 
- * the list of plugins. 
- *
- * @param aPluginList the list of plugins with the specified type available
- * on the device. 
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- *
- * @see TAuthPluginType
- **/
-EXPORT_C void RAuthClient::PluginsOfTypeL(
-    TAuthPluginType aType,
-    RPluginDescriptions& aPluginList)
-    {
-	TIpcArgs args(TIpcArgs::ENothing, aType);
-	HBufC8* buffer = SendReceiveBufferLC(EPluginsByType, args);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizePointerArrayL(aPluginList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-	
-/**
- * Retrieves plugin descriptions for plugins matching the specified
- * training status.
- *
- * @param aStatus the training status for which the method should 
- * return the list of plugins. 
- *
- * @param aPluginList the list of plugins with the specified type available
- * on the device.
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- *
- * @see TAuthTrainingStatus
- **/
-EXPORT_C void RAuthClient::PluginsWithTrainingStatusL(
-    TAuthTrainingStatus aStatus,
-    RPluginDescriptions& aPluginList)
-    {
-	TIpcArgs args(TIpcArgs::ENothing, aStatus);
-	HBufC8* buffer = SendReceiveBufferLC(EPluginsByTraining, args);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizePointerArrayL(aPluginList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-	
-/**
- * @param aIdList populated with the list of identities known by the 
- * phone.
- *
- * @capability ReadDeviceData
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- **/
-EXPORT_C void RAuthClient::IdentitiesL(RIdentityIdArray& aIdList)
-    {
-	HBufC8* buffer = SendReceiveBufferLC(EIdentities);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizeArrayL(aIdList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-
-/**
- * @param aIdList populated with the list of identities and their strings
- * known by the phone.
- *
- * @capability ReadDeviceData
- * @capability ReadUserData
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- **/
-EXPORT_C void RAuthClient::IdentitiesWithStringL(RIdAndStringArray& aIdList)
-    {
-	HBufC8* buffer = SendReceiveBufferLC(EIdentitiesWithString);
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	InternalizePointerArrayL(aIdList, stream);
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-
-/**
- * @param aId the Id number of the identity for which to set the
- * string.
- *
- * @param aId the identity who's string to set.
- * @param aString the string to use
- *
- * @capability WriteUserData
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- * @leave KErrAuthServIdentityNotFound, if the id does not exist.
- **/
-EXPORT_C void RAuthClient::SetIdentityStringL(TIdentityId aId,
-											  const TDesC& aString)
-  {
-  TIpcArgs args(aId, &aString);
-
-  User::LeaveIfError(CallSessionFunction(ESetIdentityString, args));
-  }
-
-/**
- * Deauthenticates the current user. This means that clients requesting an
- * authentication will always cause a plug-in to be called regardless of
- * any timeout value specified.
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- *
- **/
-EXPORT_C void RAuthClient::DeauthenticateL()
-  {
-  User::LeaveIfError(CallSessionFunction(EDeauthenticate));
-  }
-
-/**
- * @param aId the Id number of the identity for which to return the
- * string.
- * 
- * @return the string associated with the specified identity.
- *
- * @capability ReadUserData
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- * @leave KErrAuthServIdentityNotFound, if the id does not exist.
- **/
-EXPORT_C HBufC* RAuthClient::IdentityStringL(TIdentityId aId)
-    {
-    HBufC* buffer = HBufC::NewLC(KDefaultBufferSize);
-	TPtr ptr = buffer->Des();
-	User::LeaveIfError(CallSessionFunction(EIdentityString, TIpcArgs(&ptr, aId)));
-	CleanupStack::Pop(buffer);
-	return buffer;
-    }
-
-
-/**
- */
-HBufC8* RAuthClient::SendReceiveBufferLC(TInt aMessage) 
-	{
-	HBufC8* output = HBufC8::NewLC(KDefaultBufferSize);
-	
-	TPtr8 pOutput(output->Des());
-	
-	TInt result = CallSessionFunction(aMessage, TIpcArgs(&pOutput));
-	
-	if (result == KErrOverflow)
-		{
-		TInt sizeNeeded = 0;
-		TPckg<TInt> sizeNeededPackage(sizeNeeded);
-		sizeNeededPackage.Copy(*output);
-		
-		// Re-allocate buffer after reclaiming memory
-		CleanupStack::PopAndDestroy(output);
-		output = HBufC8::NewLC(sizeNeeded);
-
-		TPtr8 pResizedOutput(output->Des());
-		
-		result=CallSessionFunction(aMessage, TIpcArgs(&pResizedOutput));
-		}
-	User::LeaveIfError(result);
-	return output;
-	}
-
-/**
- * aArgs[0] is set to the buffer to be sent/received
- */
-HBufC8* RAuthClient::SendReceiveBufferLC(
-	TInt aMessage,
-	TIpcArgs& aArgs) 
-	{
-	HBufC8* output = HBufC8::NewLC(KDefaultBufferSize);
-	
-	TPtr8 pOutput(output->Des());
-
-	aArgs.Set(0, &pOutput);
-		  
-	TInt result = CallSessionFunction(aMessage, aArgs);
-	
-	if (result == KErrOverflow)
-		{
-		TInt sizeNeeded;
-		TPckg<TInt> sizeNeededPackage(sizeNeeded);
-		sizeNeededPackage.Copy(*output);
-		
-		// Re-allocate buffer
-		CleanupStack::PopAndDestroy(output);
-		output = HBufC8::NewLC(sizeNeeded);
-
-		TPtr8 pResizedOutput(output->Des());
-		aArgs.Set(0, &pResizedOutput);
-		result=CallSessionFunction(aMessage, aArgs);
-		}
-	User::LeaveIfError(result);
-	return output;
-	}
-
-/**
- * @param aPluginType the type of plugin for which to return the preferred
- * plugin id
- * 
- * @return the id of the preferred plugin for the specified type
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- **/
-EXPORT_C TPluginId RAuthClient::PreferredTypePluginL(TAuthPluginType aPluginType)
-	{
-	TPluginId id = KUnknownPluginId;
-	TPckg<TPluginId> idPckg(id);
-	
-	User::LeaveIfError(CallSessionFunction(EGetAuthPreferences, TIpcArgs(aPluginType, &idPckg)));
-
-	return id;
-	}
-	
-/**
- * Cancel any operation in progress.
- * 
- * @return KErrNone, if the send operation is successful or no operation
- * is in effect.
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- **/
-EXPORT_C TUint RAuthClient::Cancel()
-    {
-    CallSessionFunction(ECancel);
-    if(iAsyncResponseDecoder)
-    	{
-    	iAsyncResponseDecoder->Cancel();
-    	}
-    
-    return KErrNone;
-	}
-	
-
-EXPORT_C void RAuthClient::Close()
-    {
-    delete iAsyncResponseDecoder;
-    iAsyncResponseDecoder = 0;
-     
-    RScsClientBase::Close();
-    }
-
-/**
-  Lists the authentication aliases.
-  
-  @return An array of authentication strength aliases.
- 
-  @leave KErrServerTerminated, if the server no longer present
-  @leave KErrServerBusy, if the request cannot be handled at this time. 
-  @leave KErrNoMemory, if there is insufficient memory available.
-  @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- **/
- 
-EXPORT_C void RAuthClient::ListAuthAliasesL(RPointerArray<HBufC>& aAuthAliasesList)
-    {
-	HBufC8* buffer = SendReceiveBufferLC(EListAuthAliases);
-	
-	// create a stream based on the buffer
-	RDesReadStream stream(*buffer);
-	CleanupClosePushL(stream);
-	
-	// reassemble the array from the stream
-	TInt strengthAliasCount = stream.ReadInt32L();
-	for(TInt i = 0; i < strengthAliasCount; ++i)
-		{
-		HBufC* strengthAlias = HBufC::NewLC(stream, KMaxTInt);
-		aAuthAliasesList.AppendL(strengthAlias);
-		CleanupStack::Pop(strengthAlias);
-		}
-	
-	CleanupStack::PopAndDestroy(2, buffer);// buffer, stream
-    }
-
-/**
-   Returns a CAuthExpression object from a free form expression
-   which can be a combination of plugin Ids, plugin types and alias names.
-   This can be used for calling the authentication APIs.
-   
- 
-   @capability None
- 
-   @param aAuthString Descriptor specifying a free form expression
-   which can be a combination of plugin Ids, plugin types and alias names.
-   
- 
-   @return the CAuthExpression object which can be used to call the 
-   authentication APIs.
-  
-   @leave KErrServerTerminated, if the server no longer present
-   @leave KErrServerBusy, if the request cannot be handled at this time. 
-   @leave KErrNoMemory, if there is insufficient memory available.
-   @leave KErrPermissionDenied, if the caller has insufficient capabilities.
-   @leave ...			One of the AuthServer error codes defined in 
-  						auth_srv_errs.h or one of the system-wide error codes.
-
- **/	
-
-EXPORT_C CAuthExpression* RAuthClient::CreateAuthExpressionL(const TDesC& aAuthString) const
-	{
-	CAuthExpression* authExpr(0);
-	
-	if(aAuthString == KNullDesC)
-		{
-		authExpr = AuthExpr();
-		return authExpr;
-		}
-	HBufC* buffer = HBufC::NewLC(KDefaultBufferSize);
-	TPtr bufDes(buffer->Des());
-		
-	// get the string in combination of plugin ID and plugin type.
-	User::LeaveIfError(CallSessionFunction(EResolveExpression, TIpcArgs(&bufDes, &aAuthString)));
-		
-	// create an auth expression from alias string.
-	authExpr = CAuthExpressionImpl::CreateAuthExprObjectL(*buffer);
-	CleanupStack::PopAndDestroy(buffer);
-	
-	return authExpr;
-	}
-
- 
-
-   
--- a/authenticationservices/authenticationserver/source/client/authclient_impl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This header file includes all header files which are
-* required to build the authserver client DLL.
-*
-*/
-
-
-/**
- @file 
- @internalTechnology 
-*/
-
-#ifndef AUTHCLIENT_IMPL_H
-#define AUTHCLIENT_IMPL_H
-
-#include "authserver_client.h"
-
-#include "authcommon_impl.h"
-
-#include "authserveripc.h"
-#include "arrayutils.h"
-#include "asyncresponsedecoder.h"
-
-#endif	// #ifndef AUTHCLIENT_IMPL_H
-
--- a/authenticationservices/authenticationserver/source/client/authmgrclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authmgrclient - exported authentication client session  implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authclient_impl.h"
-#include "authserverutil.h"
-
-using namespace AuthServer;
-
-/**
- * Register a new identity. This causes the server to create a new
- * identity and attempt to train the user with all available active
- * plugins. At least one plugin must be trained for this to be succesful.
- *
- * @param aIdentity The new heap allocated identity details will be
- * pointed at by this parameter upon successful completion.
- *
- * @param aDescription The identity's description text.
- *
- * @param aRequest This status object will be completed when this
- * asynchronous call finishes, the return values are described below. 
- *
- * @capability TrustedUI
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServRegistrationFailed, if the all plugins failed to
- * successfully train for the identity.
- **/
-EXPORT_C void RAuthMgrClient::RegisterIdentityL(
-    CIdentity*& aIdentity,
-	const TDesC& aDescription,  
-    TRequestStatus& aRequest)
-    {
-    CheckAsyncDecoderL();
-	iAsyncResponseDecoder->RegisterIdentityL(aIdentity, aDescription, aRequest);
-    }
-
-/** 
- * Remove an identity.
- *
- * @param aId The identity to remove.
- *
- * @capability WriteDeviceData
- *
- * @leave KErrServerTerminated, if the server no longer present
- * @leave KErrServerBusy, if the request cannot be handled at this time. 
- * @leave KErrNoMemory, if there is insufficient memory available.
- * @leave KErrPermissionDenied, if the caller has insufficient capabilities.
- * @leave KErrAuthServIdentityNotFound, if the id does not exist.
- **/
-EXPORT_C void RAuthMgrClient::RemoveIdentityL(
-    TIdentityId aId)
-    {
-	User::LeaveIfError(CallSessionFunction(ERemoveIdentity, TIpcArgs(aId)));
-    }
-
-/**
- * Train an authentication plugin for the specified identity. The identity
- * to be trained must be authenticated prior to training. This is
- * necessary for the AuthServer to decrypt the protection key prior to
- * encrypting it with the new key generated through training.
- *
- * @param aId The identity for whom to train the plugin.
- *
- * @param aPlugin The id of the plugin to train.
- *
- * @param aRequest This status object will be completed when this
- * asynchronous call finishes.
- *
- * @capability WriteUserData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServIdentityNotFound, if the id does not exist.
- * @return KErrAuthServNoSuchPlugin, if the plugin does not exist.
- * @return KErrAuthServAuthenticationRequired, if the identity to be
- * trained is not currently authenticated.
- **/
-EXPORT_C void RAuthMgrClient::TrainPlugin(
-    TIdentityId aId,
-	TPluginId aPlugin,
-	TRequestStatus& aRequest)
-    {
-    CallSessionFunction(ETrainPlugin, TIpcArgs(aId, aPlugin), aRequest);
-    }
-
-
-/**
- * Remove the specified plugin as an authentication method for the
- * identity.
- *
- * @param aId The identity for whom to forget plugin training.
- *
- * @param aPlugin The id of the plugin to retrain.
- *
- * @capability WriteUserData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServIdentityNotFound, if the id does not exist.
- * @return KErrAuthServNoSuchPlugin, if the plugin does not exist.
- **/
-EXPORT_C void RAuthMgrClient::ForgetPluginL(
-    TIdentityId aId,
-	TPluginId aPlugin)
-    {
-	User::LeaveIfError(CallSessionFunction(EForgetPlugin, TIpcArgs(aId, aPlugin)));
-    }
-
-
-/**
- * Specifies the preferred plugin for the named type.
- *
- * @param aType The type of plugin for which to define the preference.
- *
- * @param aPluginId The id of the preferred plugin for the specified type.
- *
- * @capability WriteDeviceData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServNoSuchPlugin, if the plugin does not exist.
- * @return KErrArgument, if aType does not match the plugin's type.
- **/
-EXPORT_C void RAuthMgrClient::SetPreferredTypePluginL(TAuthPluginType aType,
-													  TPluginId aPluginId)
-	{
-	User::LeaveIfError(CallSessionFunction(ESetAuthPreferences, TIpcArgs(aType, aPluginId)));
-	}
-
-/**
- * Reset the training data of a registered identity.
- *
- * @param aId The identity to reset.
- *
- * @param aRegistrationInformation The regisration information to be used for 
- * identifying the user. This data is meaningful for knowledge based  authentication 
- * server plugins (here the registration data could be the passphrase). 
- * Note that a plugin may choose to ignore the supplied registration data and simply 
- * remove the identity from its records.
- *
- * @capability WriteDeviceData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServIdentityNotFound, if the id cannot be found.
- * @return KErrAuthServResetMayLoseIdentity, if a reset can result in the loss of an identity. 
- * @see KErrAuthServResetMayLoseIdentity.
- * @return KErrArgument, if the supplied arguments are incorrect.
- * @return ... any of the system-wide error codes.
- **/
-EXPORT_C void RAuthMgrClient::ResetIdentityL(TIdentityId aId,
-							 const TDesC& aRegistrationInformation)
-	{
-	// Sanity check arguments
-	if (aId == 0)
-		{
-		User::Leave(KErrArgument);
-		}
-	User::LeaveIfError(CallSessionFunction(EResetIdentity, TIpcArgs(aId, &aRegistrationInformation)));
-	}
-
-/**
- * Reset the training data of a registered identity.
- *
- * @param aId The identity to reset.
- *
- * @param aPluginType The type of plugins for which to supply the registration data during the reset.
- * Note that currently only EAuthKnowledge type plugins is supported for this parameter.
- * 
- * @param aRegistrationInformation The regisration information to be used for 
- * identifying the user. This data is meaningful for knowledge based  authentication 
- * server plugins (here the registration data could be the passphrase). 
- * Note that a plugin may choose to ignore the supplied registration data and simply 
- * remove the identity from its records.
- *
- * @capability WriteDeviceData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServIdentityNotFound, if the id cannot be found.
- * @return KErrAuthServResetMayLooseIdentity, if a reset can result in the loss of an identity. 
- * @see KErrAuthServResetMayLooseIdentity.
- * @return KErrArgument, if the supplied arguments are incorrect.
- * @return ... any of the system-wide error codes.
- **/
-EXPORT_C void RAuthMgrClient::ResetIdentityL(TIdentityId aId,
-							 TAuthPluginType aPluginType,
-							 const TDesC& aRegistrationInformation)
-	{
-	// Sanity check arguments
-	if (aId == 0)
-		{
-		User::Leave(KErrArgument);
-		}
-	User::LeaveIfError(CallSessionFunction(EResetIdentityByType, TIpcArgs(aId, aPluginType, &aRegistrationInformation)));
-	}
-
-/**
- * Reset the training data of a registered identity.
- *
- * @param aId The identity to reset.
- *
- * @param aPluginIdList The list of plugin ids for which to supply the registration data during the reset.
- *
- * @param aRegistrationInformation An array of regisration information to be used for 
- * identifying the user. The order of elements in this array correspond to the order of plugin ids in 
- * aPluginIdList. This data is meaningful for knowledge based  authentication server 
- * plugins (here the registration data could be the passphrase). 
- * Note that a plugin may choose to ignore the supplied registration data and simply 
- * remove the identity from its records.
- *
- * @capability WriteDeviceData
- *
- * @return KErrServerTerminated, if the server no longer present
- * @return KErrServerBusy, if the request cannot be handled at this time. 
- * @return KErrNoMemory, if there is insufficient memory available.
- * @return KErrPermissionDenied, if the caller has insufficient capabilities.
- * @return KErrAuthServIdentityNotFound, if the id cannot be found.
- * @return KErrAuthServResetMayLooseIdentity, if a reset can result in the loss of an identity. 
- * @see KErrAuthServResetMayLooseIdentity.
- * @return KErrArgument, if the supplied arguments are incorrect.
- * @return ... any of the system-wide error codes.
- **/
-EXPORT_C void RAuthMgrClient::ResetIdentityL(TIdentityId aId,
-							 RArray<TPluginId>& aPluginIdList,
-							 RPointerArray<const HBufC>& aRegistrationInformation)
-	{
-	// Sanity check arguments
-	TInt count = aPluginIdList.Count();
-	if ((aId == 0) || (count < 1) || (count != aRegistrationInformation.Count()))
-		{
-		User::Leave(KErrArgument);
-		}
-
-	// Flatten aPluginIdList
-	HBufC8* bufPluginIds = AuthServerUtil::FlattenDataArrayLC(aPluginIdList);
-
-	// Flatten aRegistrationInformation
-	HBufC8* bufRegInfo = AuthServerUtil::FlattenDataPointerArrayLC(aRegistrationInformation);
-
-	User::LeaveIfError(CallSessionFunction(EResetIdentityByList, TIpcArgs(aId, bufPluginIds, bufRegInfo)));
-	CleanupStack::PopAndDestroy(2, bufPluginIds); // bufRegInfo
-	}
--- a/authenticationservices/authenticationserver/source/common/arrayutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Utility functions for streaming arrays.
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent 
-*/
-
-#ifndef __ARRAYUTILS_H_
-#define __ARRAYUTILS_H_
-
-#include <s32strm.h>
-
-namespace AuthServer
-{
-	
-/////////////////////////////////////////////////////////////////////
-// RPointerArray utilities
-/////////////////////////////////////////////////////////////////////
-
-template <class T>
-void ExternalizePointerArrayL(const RPointerArray<T>& aArray, RWriteStream& aStream);
-
-template <class T>
-void InternalizePointerArrayL(RPointerArray<T>& aArray, RReadStream& aStream);
-
-/////////////////////////////////////////////////////////////////////
-// RArray utilities
-/////////////////////////////////////////////////////////////////////
-
-template <class T>
-void ExternalizeArrayL(const RArray<T>& aArray, RWriteStream& aStream);
-
-template <class T>
-void InternalizeArrayL(RArray<T>& aArray, RReadStream& aStream);
-
-/////////////////////////////////////////////////////////////////////
-// Traits classes - internally required by RPointerArray functions
-/////////////////////////////////////////////////////////////////////
-
-template <class T>
-class TTraits
-	{
-public:
-	static T* ReadFromStreamLC(RReadStream& aStream) { return T::NewLC(aStream); }
-	static void WriteToStreamL(const T& aItem, RWriteStream& aStream) { aStream << aItem; }
-	};
-
-// Specialisation for HBufs
-template <>
-class TTraits<HBufC16>
-	{
-public:
-	static HBufC16* ReadFromStreamLC(RReadStream& aStream) { return HBufC16::NewLC(aStream, KMaxTInt); }
-	static void WriteToStreamL(const HBufC16& aItem, RWriteStream& aStream) { aStream << aItem; }
-	};
-
-#include "arrayutils.inl"
-} // namespace AuthServer
-
-#endif  // __ARRAYUTILS_H_
--- a/authenticationservices/authenticationserver/source/common/arrayutils.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,66 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Utility functions for copying and streaming RArrays. 
-* RPointerArray utilities
-*
-*/
-
-template <class T>
-void ExternalizePointerArrayL(const RPointerArray<T>& aArray, RWriteStream& aStream)
-	{
-	aStream.WriteInt32L(aArray.Count());
-	for (TInt i = 0; i < aArray.Count(); ++i)
-		{
-		TTraits<T>::WriteToStreamL(*aArray[i], aStream);
-		}
-	}
-
-template <class T>
-void InternalizePointerArrayL(RPointerArray<T>& aArray, RReadStream& aStream)
-	{
-	TInt count = aStream.ReadInt32L();
-	for (TInt i = 0; i < count; ++i)
-		{
-		T* item = TTraits<T>::ReadFromStreamLC(aStream);
-		User::LeaveIfError(aArray.Append(item));
-		CleanupStack::Pop();
-		}
-	}
-
-/////////////////////////////////////////////////////////////////////
-// RArray utilities
-/////////////////////////////////////////////////////////////////////
-template <class T>
-void ExternalizeArrayL(const RArray<T>& aArray, RWriteStream& aStream)
-	{
-	aStream.WriteInt32L(aArray.Count());
-	for (TInt i = 0; i < aArray.Count(); ++i)
-		{
-		aStream.WriteL(TPckgC<T>(aArray[i]));
-		}
-	}
-
-template <class T>
-void InternalizeArrayL(RArray<T>& aArray, RReadStream& aStream)
-	{
-	TInt count = aStream.ReadInt32L();
-	for (TInt i = 0; i < count; ++i)
-		{
-		T item;
-		TPckg<T> itemPckg(item);
-		aStream.ReadL(itemPckg);
-		User::LeaveIfError(aArray.Append(item));
-		}
-	}
--- a/authenticationservices/authenticationserver/source/common/authcommon_impl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This header file includes other authserver includes
-* which are used by the authcommon source files.
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
- 
-#ifndef AUTHCOMMON_IMPL_H
-#define AUTHCOMMON_IMPL_H
-
-#include <des.h>
-#include <random.h>
-#include "authexpression_impl.h"
-#include "authserver/identity.h"
-#include "authserver/plugindesc.h"
-#include "authserver/protectionkey.h"
-#include "authserver/authtypes.h"
-#include "authserver/auth_srv_errs.h"
-
-#endif	// AUTHCOMMON_IMPL_H
--- a/authenticationservices/authenticationserver/source/common/authexpression.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,891 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authcommon_impl.h"
-#include <scs/cleanuputils.h>
-
-using namespace AuthServer;
-
-const TInt CAuthExpressionImpl::KVersion = 1;
-
-// -------- TAuthExpressionWrapper --------
-
-
-TAuthExpressionWrapper::TAuthExpressionWrapper(CAuthExpression* aExpression)
-/**
-	This constructor stores the supplied expression pointer.
-	
-	@param	aExpression		A pointer to the supplied expression
-							is stored in the TAuthExpressionWrapper
-							object.  On exit, this object owns
-							the expression.
- */
-:	iPtr(aExpression)
-	{
-	// empty.
-	}
-
-
-TAuthExpressionWrapper::TAuthExpressionWrapper(TAuthPluginType aType)
-/**
-	Allocates a new instance of CAuthExpressionImpl which
-	describes the supplied plugin type.  If there is not
-	enough memory, the pointer is NULL on exit.
-	
-	@param	aType			Plugin type used to create new instance
-							of CAuthExpressionImpl.
- */
-:	iPtr(new CAuthExpressionImpl(aType))
-	{
-	// empty.
-	}
-
-
-TAuthExpressionWrapper::TAuthExpressionWrapper(TPluginId aPluginId)
-/**
-	Allocates a new instance of CAuthExpressionImpl which
-	describes the supplied plugin ID.  If there is not
-	enough memory, the pointer is NULL on exit.
-	
-	@param	aPluginId		Value which describes a specific plugin.
- */
-:	iPtr(new CAuthExpressionImpl(aPluginId))
-	{
-	// empty.
-	}
-
-TAuthExpressionWrapper::TAuthExpressionWrapper()
-/**
-	Allocates a new instance of CAuthExpressionImpl which
-	describes the default plugin ID.  If there is not
-	enough memory, the pointer is NULL on exit.
-	
- */
-:	iPtr(new CAuthExpressionImpl())
-	{
-	// empty.
-	}
-
-// -------- factory functions --------
-
-
-static CAuthExpressionImpl* AuthComb(
-	CAuthExpressionImpl::TType aType, CAuthExpressionImpl* aLeft, CAuthExpressionImpl* aRight);
-
-
-EXPORT_C TAuthExpressionWrapper AuthServer::AuthExpr(TAuthPluginType aType)
-/**
-	Returns a wrapper around a new authentication expression.
-	
-	@param	aType			Identifies a type of plugin.
-	@return					Wrapper object for an instance
-							of CAuthExpressionImpl.  The authentication
-							expression is allocated on the heap,
-							and is NULL if there is not
-							enough memory.
- */
-	{
-	return TAuthExpressionWrapper(aType);
-	}
-
-
-EXPORT_C TAuthExpressionWrapper AuthServer::AuthExpr(TPluginId aPluginId)
-/**
-	Returns a wrapper around a new authentication expression.
-	
-	@param	aPluginId		Identifies a specific plugin.
-	@return					Wrapper object for an instance
-							of CAuthExpressionImpl.  The authentication
-							expression is allocated on the heap,
-							and is NULL if there is not
-							enough memory.
- */
-	{
-	return TAuthExpressionWrapper(aPluginId);
-	}
-
-EXPORT_C TAuthExpressionWrapper AuthServer::AuthExpr()
-/**
-	Returns a wrapper around a new authentication expression.
-	
-	@return					Wrapper object for an instance
-							of CAuthExpressionImpl.  The authentication
-							expression is allocated on the heap,
-							and is NULL if there is not
-							enough memory.
- */
-	{
-	return TAuthExpressionWrapper();
-	}
-
-EXPORT_C TAuthExpressionWrapper AuthServer::AuthOr(CAuthExpression* aLeft, CAuthExpression* aRight)
-/**
-	Allocate a CAuthExpressionImpl node which combines the supplied
-	left and right nodes as an OR operation.
-	
-	If either aLeft or aRight are NULL, or this operation fails
-	to allocate the required memory, then any allocated memory
-	is cleaned up NULL is returned.
-	
-	@param	aLeft			Left node.  This must be an instance
-							of CAuthExpresionImpl.
-	@param	aRight			Right node.  This must be an instance
-							of CAuthExpresionImpl.
-	@return					New wrapper around CAuthExpression, NULL
-							if could not allocate, or if either the
-							supplied nodes were NULL.
- */
-	{
-	CAuthExpressionImpl* leftImpl = static_cast<CAuthExpressionImpl*>(aLeft);
-	CAuthExpressionImpl* rightImpl = static_cast<CAuthExpressionImpl*>(aRight);
-	return AuthComb(CAuthExpressionImpl::EOr, leftImpl, rightImpl);
-	}
-
-
-EXPORT_C TAuthExpressionWrapper AuthServer::AuthAnd(CAuthExpression* aLeft, CAuthExpression* aRight)
-/**
-	Allocate a CAuthExpressionImpl node which combines the supplied
-	left and right nodes as an AND operation.
-	
-	If either aLeft or aRight are NULL, or this operation fails
-	to allocate the required memory, then the subexpressions are
-	deleted and this function returns NULL.
-	
-	@param	aLeft			Left node.
-	@param	aRight			Right node.
-	@return					New wrapper around CAuthExpression, NULL
-							if could not allocate, or if either the
-							supplied nodes were NULL.
-	@see AuthOr
- */
-	{
-	CAuthExpressionImpl* leftImpl = static_cast<CAuthExpressionImpl*>(aLeft);
-	CAuthExpressionImpl* rightImpl = static_cast<CAuthExpressionImpl*>(aRight);
-	return AuthComb(CAuthExpressionImpl::EAnd, leftImpl, rightImpl);
-	}
-
-
-static CAuthExpressionImpl* AuthComb(
-	CAuthExpressionImpl::TType aType, CAuthExpressionImpl* aLeft, CAuthExpressionImpl* aRight)
-/**
-	Helper function for AuthOr and AuthAnd.  This function
-	allocates the combining node, storing the combining method (AND
-	or OR) and pointers to the left and right nodes.
-	
-	If aLeft or aRight are NULL on entry, or this function cannot
-	allocate the required memory, then any previously allocated nodes
-	are freed, and this function returns NULL.
-	
-	@param	aType			Type of expression, AND/OR
-	@param	aLeft			Left node.
-	@param	aRight			Right node.
-	@return					New wrapper around CAuthExpression, NULL
-							if could not allocate, or if either the
-							supplied nodes were NULL.
-	@see AuthAnd
-	@see AuthOr
- */
-	{
-	CAuthExpressionImpl* compound = 0;
-	
-	if (aLeft == 0 || aRight == 0)
-		goto failed;
-	
-	compound = new CAuthExpressionImpl(aType, aLeft, aRight);
-	if (compound == 0)
-		goto failed;
-	
-	return compound;
-	
-failed:
-	delete aLeft;
-	delete aRight;
-	
-	return 0;
-	}
-
-
-// -------- TSizeStream --------
-
-
-EXPORT_C void TSizeStream::DoWriteL(const TAny* /* aPtr */, TInt aLength)
-/**
-	Override MStreamBuf by incrementing the
-	accumulated size by aLength.
-	
-	@param	aLength			Length of data to write to stream.
- */
-	{
-	iSize += aLength;
-	}
-
-
-// -------- CAuthExpressionImpl --------
-
-
-#ifdef _DEBUG
-#define VAR_FOLLOWS(___c, ___v1, ___v2)	\
-	(_FOFF(___c, ___v2) >= _FOFF(___c, ___v1) + sizeof(___c::___v1))
-#endif
-
-
-CAuthExpressionImpl::CAuthExpressionImpl(TAuthPluginType aType)
-:	iType(EPluginType),
-	iPluginType(aType)
-/**
-	Initialise this leaf node authentication expression
-	as describing a plugin type.
-	
-	@param	aType			Identifies a type of plugin.
-	@panic AUTHEXPR 16		This constructed object is internally
-							inconsistent (debug only.)
- */
-	{
-#ifdef _DEBUG
-	// non-aligned value to detect invalid node pointers
-	__ASSERT_COMPILE(VAR_FOLLOWS(CAuthExpressionImpl, iPluginType, iComb.iRight));
-	iComb.iRight = (CAuthExpressionImpl*)0xB51DE;
-#endif
-
-	__ASSERT_DEBUG(Invariant(), Panic(ECtTyInvariant));
-	}
-
-
-CAuthExpressionImpl::CAuthExpressionImpl(TPluginId aPluginId)
-/**
-	Initialise this leaf node authentication expression
-	as describing a specific plugin.
-	
-	@param	aPluginId		Identifies a specific plugin.
-	@panic	AUTHEXPR 32		This constructed object is internally
-							inconsistent (debug only.)
- */
-:	iType(EPluginId),
-	iPluginId(aPluginId)
-	{
-#ifdef _DEBUG
-	// non-aligned value to detect invalid node pointers
-	__ASSERT_COMPILE(VAR_FOLLOWS(CAuthExpressionImpl, iPluginId, iComb.iRight));
-	iComb.iRight = (CAuthExpressionImpl*)0xB51DE;
-#endif
-
-	__ASSERT_DEBUG(Invariant(), Panic(ECtIdInvariant));
-	}
-
-CAuthExpressionImpl::CAuthExpressionImpl()
-/**
-	Initialise this leaf node authentication expression
-	as describing a specific plugin.
-
-	@panic	AUTHEXPR 32		This constructed object is internally
-							inconsistent (debug only.)
- */
-:	iType(ENull)
-	{
-#ifdef _DEBUG
-	// non-aligned value to detect invalid node pointers
-	__ASSERT_COMPILE(VAR_FOLLOWS(CAuthExpressionImpl, iPluginId, iComb.iRight));
-	iComb.iRight = (CAuthExpressionImpl*)0xB51DE;
-#endif
-
-	__ASSERT_DEBUG(Invariant(), Panic(ECtIdInvariant));
-
-	}
-
-
-CAuthExpressionImpl::CAuthExpressionImpl(TType aType, CAuthExpressionImpl* aLeft, CAuthExpressionImpl* aRight)
-/**
-	Initialise a complex - AND or OR - expression.
-	
-	@param	aType			The type of combination.  The only
-							allowed values are EAnd and EOr.
-	@param	aLeft			Left expression.  This cannot be NULL.
-	@param	aRight			Right expression.  This cannot be NULL.
-	@panic	AUTHEXPR 48		Called with expression type that was
-							neither AND nor OR (debug only.)
-	@panic	AUTHEXPR 49		Called with NULL left node (debug only.)
-	@panic	AUTHEXPR 50		Called with NULL right node (debug only.)
-	@panic	AUTHEXPR 51		This object is internally inconsistent
-							after construction (debug only.)
- */
-:	iType(aType)
-	{
-	__ASSERT_DEBUG(aType == EAnd || aType == EOr, Panic(ECt2BadComb));
-	__ASSERT_DEBUG(aLeft != 0, Panic(ECt2NullLeft));
-	__ASSERT_DEBUG(aRight != 0, Panic(ECt2NullRight));
-	
-	iComb.iLeft = aLeft;
-	iComb.iRight = aRight;
-	aLeft->iParent = aRight->iParent = this;
-	
-	__ASSERT_DEBUG(Invariant(), Panic(ECt2Invariant));
-	}
-
-
-CAuthExpressionImpl::~CAuthExpressionImpl()
-/**
-	Deletes resources used by this expression.  If this is a complex
-	expression then it deletes the subexpression nodes.
- */
-	{
-	// by construction iType is always correctly initialized
-	// before this function is called.
-	if (iType == EAnd || iType == EOr)
-		{
-		delete iComb.iLeft;
-		delete iComb.iRight;
-		}
-	}
-
-
-EXPORT_C void CAuthExpressionImpl::ExternalizeL(RWriteStream& aWriteStream) const
-/**
-	Write a persistent version of this object to the supplied
-	stream.  This function is used to transfer the expression
-	to the authentication server.
-	
-	@param	aWriteStream	Stream to write object to.
-	@panic	AUTHEXPR 160	This object is internally inconsistent
-							when this function is called.
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(EExtInvariant));
-	
-	aWriteStream.WriteInt8L(KVersion);
-	Externalize2L(aWriteStream);
-	}
-
-
-void CAuthExpressionImpl::Externalize2L(RWriteStream& aWriteStream) const
-/**
-	Helper function for ExternalizeL.  This function writes
-	a persistent version of this expression object, including
-	any subexpressions, to the supplied stream.
-	
-	@param	aWriteStream	Stream to write object to.
-	@panic	AUTHEXPR 144	This object is internally inconsistent
-							when this function is called.
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(EExtInvariant));
-	
-	aWriteStream.WriteInt8L(iType);
-	
-	switch (iType)
-		{
-	case EAnd:
-	case EOr:
-		iComb.iLeft->Externalize2L(aWriteStream);
-		iComb.iRight->Externalize2L(aWriteStream);
-		break;
-	
-	case EPluginId:
-		aWriteStream.WriteInt32L(iPluginId);
-		break;
-	
-	case EPluginType:
-		aWriteStream.WriteInt32L(iPluginType);
-		break;
-		
-	case ENull:
-		aWriteStream.WriteInt32L(iPluginId);
-		break;
-	default:
-		// this case should not be reached because this
-		// object has passed the invariant.
-		break;
-		}
-	}
-
-
-// restore the encoded authentication expression
-
-
-EXPORT_C CAuthExpressionImpl* CAuthExpressionImpl::NewL(RReadStream& aReadStream)
-/**
-	Factory function reconstructs an authentication
-	expression from the supplied stream.
-	
-	@param	aReadStream		Stream containing externalized
-							authentication expression.  This must
-							have been generated with CAuthExpressionImpl::ExternalizeL.	
-	@return					Authorisation expression internalized
-							from the supplied stream.
-	@leave KErrNoMemory		Not enough memory to reconstruct the expression.
-	@leave KErrInternalizeInvalidAuthExpr The supplied stream does not
-							describe a valid authentication expression.
-	@leave KErrAuthServUnsupportedExprVersion The supplied stream
-							was created with a later version of CAuthExpressionImpl.
-	@see CAuthExpressionImpl::ExternalizeL
- */
-	{
-	TInt8 ver = aReadStream.ReadInt8L();
-	if (ver > KVersion)
-		User::Leave(KErrAuthServUnsupportedExprVersion);
-	
-	return New2L(aReadStream);
-	}
-	
-CAuthExpressionImpl* CAuthExpressionImpl::New2L(RReadStream& aReadStream)
-/**
-	Helper function for NewL.  This recursively constructs the
-	authentication expression after NewL has checked that it
-	supports the encoded version.
-	
-	@param	aReadStream		Stream containing externalized
-							authentication expression.  This must
-							have been generated with CAuthExpressionImpl::ExternalizeL.	
-	@return					Authorisation expression internalized
-							from the supplied stream.
-	@leave KErrNoMemory		Not enough memory to reconstruct the expression.
-	@leave KErrInternalizeInvalidAuthExpr The supplied stream does not
-							describe a valid authentication expression.
-	@see CAuthExpressionImpl::ExternalizeL
- */
-	{
-	CAuthExpressionImpl::TType t;
-	t = static_cast<CAuthExpressionImpl::TType>(aReadStream.ReadInt8L());
-	
-	switch(t)
-		{
-	case CAuthExpressionImpl::EAnd:
-	case CAuthExpressionImpl::EOr:
-		{
-		CAuthExpressionImpl* left = CAuthExpressionImpl::New2L(aReadStream);
-		CleanupStack::PushL(left);
-		CAuthExpressionImpl* right = CAuthExpressionImpl::New2L(aReadStream);
-		CleanupStack::PushL(right);
-		CAuthExpressionImpl* complex = new(ELeave) CAuthExpressionImpl(t, left, right);
-		CleanupStack::Pop(2, left);	// complex now owns left and right
-		return complex;
-		}
-	
-	case CAuthExpressionImpl::EPluginId:
-		return new(ELeave) CAuthExpressionImpl(
-			static_cast<TPluginId>(aReadStream.ReadInt32L()));
-	
-	case CAuthExpressionImpl::EPluginType:
-		return new(ELeave) CAuthExpressionImpl(
-			static_cast<TAuthPluginType>(aReadStream.ReadInt32L()));
-	
-		
-	case CAuthExpressionImpl::ENull:
-		return new(ELeave) CAuthExpressionImpl();	
-	
-	default:
-		User::Leave(KErrAuthServInvalidInternalizeExpr);
-		return 0;	// avoid 'return value expected' warning
-		}
-	}
-	
-/**
-  Helper function which converts the string into a form that can 
-  be processed as tokens by TLex.Essentially, this method parses and appends
-  space in the input string when delimiters("(",")","&" and "|") are
-  encountered, consequenty the resultant string thus obtained can be parsed
-  using TLex.
- 
-  @param	aStringToBeProcessed	string to be processed.	
-  @param	aResultantString		a buffer which does not already own any allocated memory, and is populated 
-  									with a string resulting from processing aStringToBeProcessed.
- 	 									
- */ 	
-
-EXPORT_C void CAuthExpressionImpl::InsertSpaceBetweenOperatorsL(const TDesC& aStringToBeProcessed, RBuf& aResultantString)
-	{
-	TChar ch = 0;
-	_LIT(KSeparator, " ");
-	HBufC* strBuffer = HBufC::NewLC(KMaxBufferSize);
-	TPtr strPtr(strBuffer->Des());
-	
-	// length of 2 KSeparator and 1 ch.
-	const TInt KAddLength = 3;
-	
-	for(TInt i = 0; i < aStringToBeProcessed.Length(); ++i)
-		{
-		ch = aStringToBeProcessed[i];
-		
-		// check whether appending 3 characters(2 KSeparator and 1 ch) to
-		// aResultantAliasString exceeds the Maxlength.
-		TInt resultingLen = strPtr.Length() + KAddLength;
-		if(resultingLen > KMaxBufferSize)
-			{
-			strBuffer->ReAllocL(resultingLen);
-			}
-				
-		if(ch == '(' || ch == ')' || ch == '&' || ch == '|')
-			{
-			strPtr.Append(KSeparator);
-			strPtr.Append(ch);
-			strPtr.Append(KSeparator);
-			}
-			
-		else
-			{
-			strPtr.Append(ch);
-			}
-		}
-	
-	CleanupStack::Pop(strBuffer);
-	aResultantString.Assign(strBuffer);
-	}
-		
-/**
-  Creates CAuthExpression object from a string defining an authentication.
-  strength.The ownership of CAuthExpression object is transferred to the caller.
- 
-  @param aStrengthAliasString a string defining an authentication.
-  strength obtained from the authserver cenrep file.
- 
-  @return CAuthExpression object.
- 
-  @leave KErrAuthServInvalidAliasStringExpression, when aStrengthAliasString contains tokens other than pluginId, pluginType
-  and operators '&', '|', '(' and ')'		
- 
- */  
-    
- EXPORT_C CAuthExpression* CAuthExpressionImpl::CreateAuthExprObjectL(const TDesC& aStrengthAliasString)
- 	{
-   	RBuf resultantAliasString;
-   	CleanupClosePushL(resultantAliasString);
-     	
-   	// tokenize aStrengthAliasString, to facilitate parsing using TLex. 
-   	InsertSpaceBetweenOperatorsL(aStrengthAliasString, resultantAliasString);
-		
-    // facilitates ordering of expression evaluation via brackets.
-    CAuthExpression* authExpression = EvaluateAliasStringL(resultantAliasString);
-    CleanupStack::PopAndDestroy(); 
-
-    return authExpression;
-    }
-    
-  
- /**
-  This method facilitates ordering of alias string expression (containing pluginIds or pluginTypes
-  or a combination of both) evaluation via brackets.The ownership of CAuthExpression object is 
-  transferred to the caller.
- 
-  @param aStrengthAliasString	an alias string to be parsed and processed.This must be enclosed within brackets.
- 
-  @return CAuthExpression object.
- 
-  @leave KErrAuthServInvalidAliasStringExpression, when aStrengthAliasString contains tokens other than pluginId, pluginType
-  						and operators('&', '|') and brackets.		
- 
- */ 
-    
-  CAuthExpression* CAuthExpressionImpl::EvaluateAliasStringL(const RBuf& aStrengthAliasString)
-  	{
-  	TLex input(aStrengthAliasString);
-
-  	// array of operators (& and |) and brackets.
-  	const TInt KGranularity = 8;
-  	CArrayFixFlat<TPtrC>* opStack = new(ELeave) CArrayFixFlat<TPtrC>(KGranularity);
-   	CleanupStack::PushL(opStack);
-   	
-   	// array of CAuthExpression objects.
-    RPointerArray<CAuthExpression> authExpressionArray;
-    CleanupResetAndDestroyPushL(authExpressionArray);
-   	
-    for (TPtrC token = input.NextToken(); token.Size() > 0 ; 
-         token.Set(input.NextToken()))
-    	{
-    	TInt count = 0;
-    	TInt index = 0;
-    	if(token.CompareF(KAuthOpOr) == 0)
-    		{
-    		count = opStack->Count();
-    		index = count - 1;
-    		// only when the previous element in the opStack is not "&" , will token be added on the opStack.
-    		if(index >= 0 && opStack->At(index) != KAuthOpAnd)
-    			{
-    			opStack->AppendL(token);
-    			}
-    				
-    		else
-    			{
-    			// atleast 1 element in opStack is "&",hence iterate through opStack and   
-    			// keep creating auth expression object until the loop ends.
-    			while(index >= 0 && opStack->At(index) == KAuthOpAnd)
-    				{
-    				CAuthExpression* authExpr = CreateAuthExpressionL(authExpressionArray, opStack->At(index));
-    				opStack->Delete(index);
-    				opStack->Compress();
-    				CleanupStack::PushL(authExpr);
-					authExpressionArray.AppendL(authExpr);
-					CleanupStack::Pop(authExpr);
-					--index;
-    				}
-    					
-    			opStack->AppendL(token);	
-    			}	
-    		} //if(token.CompareF(KAuthOpOr) == 0)
-    			
-    	else if(token.CompareF(KAuthOpAnd) == 0 || token.CompareF(KOpenBracket) == 0)
-    		{
-    		opStack->AppendL(token);
-    		}
-    				
-    	else if(token.CompareF(KCloseBracket) == 0)
-    		{
-    		// when the previous element in the opStack is "(", delete it.
-    		count = opStack->Count();
-    		index = count - 1;
-    		TInt exprCount = authExpressionArray.Count();
-    			
-    		if(index >= 0 && opStack->At(index) == KOpenBracket)
-    			{
-    			opStack->Delete(index);
-    			opStack->Compress();
-    			}
-    			
-    		// the previous element could be an operator/operators of same precedence.	
-    		else
-    			{
-    			while(index >= 0 && opStack->At(index) != KOpenBracket)
-					{
-					CAuthExpression* expr = CreateAuthExpressionL(authExpressionArray, opStack->At(index));
-					CleanupStack::PushL(expr);
-					authExpressionArray.AppendL(expr);
-					CleanupStack::Pop(expr);
-					opStack->Delete(index);	
-					opStack->Compress();
-					--index;
-					}	//while
-						
-				if(index == -1)
-					{
-					User::Leave(KErrAuthServInvalidAliasStringExpression);
-					}
-						
-				opStack->Delete(index);
-				opStack->Compress();
-    			}
-			}	//else if(token.CompareF(KCloseBracket) == 0)
-    		
-    	//when the token is neither "(","|","&" and ")" , it must be a plugin id or plugin Type,
-    	//hence create a CAuthExpression object.
-    	else
-    		{
-    		CAuthExpression* expression = CreateAuthExpressionL(token);
-    		CleanupStack::PushL(expression);
-			authExpressionArray.AppendL(expression);
-			CleanupStack::Pop(expression);
-    		}
-		}	//for loop
-    
-  // since authExpressionArray will eventually contain only 1 authExpression pointer,
-  // remove it from the array, as the ownership of this pointer is transferred to the caller.
-  __ASSERT_ALWAYS((authExpressionArray.Count() == 1), User::Leave(KErrAuthServInvalidAliasStringExpression));
-   		
-  CAuthExpression* authExpression = authExpressionArray[0];
-  authExpressionArray.Remove(0);
-  
-  CleanupStack::PopAndDestroy(2, opStack);	//opStack and authExpressionArray
-  return authExpression;
-  
-  }
-        
-/**
-  Creates CAuthExpression object from an alias string containing either 
-  plugin Id  or plugin type.The ownership of the object is transferred to the caller.
- 
-  @param aAliasString	string containing either plugin Id or plugin Type.
- 
-  @return CAuthExpression object.
- 
-  @leave KErrAuthServInvalidAliasStringExpression, if the operands or operators are invalid strings.	
- 
-  @leave KErrNoMemory, if there was insufficient memory to allocate the CAuthExpression object.
- */ 	
-  CAuthExpression* CAuthExpressionImpl::CreateAuthExpressionL(const TDesC& aAliasString)
-  	{
-   	TLex  input(aAliasString);
-   	CAuthExpression* expression = 0;
-    TPluginId plugin = 0;
-    	
-  	for (TPtrC token = input.NextToken(); token.Size() > 0 ; 
-         token.Set(input.NextToken()))
-       {
-    	TLex lexer(token);
-    	if(token.CompareF(KAuthBiometric) == 0)
-    		{
-    		expression = AuthExpr(EAuthBiometric);
-    		}
-    	else if(token.CompareF(KAuthKnowledge) == 0)
-    		{
-    		expression = AuthExpr(EAuthKnowledge);
-    		}
-    	else if(token.CompareF(KAuthToken) == 0)
-    		{
-    		expression = AuthExpr(EAuthToken);
-    		}
-    	else if(token.CompareF(KAuthPerformance) == 0)
-    		{
-    		expression = AuthExpr(EAuthPerformance);
-    		}
-    	else if(token.CompareF(KAuthDefault) == 0)
-    		{
-    		expression = AuthExpr(EAuthDefault);
-    		}	
-       	else if(lexer.Val(plugin, EHex) == KErrNone)
-    		{
-    		expression = AuthExpr(plugin);
-    		}	
-    	else
-    		{
-    		User::Leave(KErrAuthServInvalidAliasStringExpression);
-    		}
-       }
-     		
-
-    if(expression == NULL)
-		{
-		User::Leave(KErrNoMemory);
-		}
-
-    return expression;    	
-   	}
- 
-/**
-  Creates CAuthExpression object from an array of authexpression objects and an operator.
-  The ownership of the object is transferred to the caller.
- 
-  @param aAuthExprArray		an array of authexpression objects. 
-  @param aOperator			an authexpression operator ( '&' or '|').
-  
-  @return CAuthExpression object.
-  @leave KErrAuthServInvalidAliasStringExpression, if the operands or operators are invalid strings.
- 
- */  	
- CAuthExpression* CAuthExpressionImpl::CreateAuthExpressionL(RPointerArray<CAuthExpression>& aAuthExprArray, TPtrC aOperator)
-  	{
-  	// aAuthExprArray must contain minimum of 2 elements.
-  	__ASSERT_ALWAYS((aAuthExprArray.Count() >= 2), User::Leave(KErrAuthServInvalidAliasStringExpression));
-  	
-  	CAuthExpression* authExpression = 0;
-   	TInt exprIndex = aAuthExprArray.Count() - 1;
-   	
-  	if(aOperator.CompareF(KAuthOpAnd) == 0)
-  		{
-  		authExpression = AuthAnd(aAuthExprArray[exprIndex], aAuthExprArray[exprIndex-1]);
-  		}
-    	
-  	else if(aOperator.CompareF(KAuthOpOr) == 0)
-  		{
-  		authExpression = AuthOr(aAuthExprArray[exprIndex], aAuthExprArray[exprIndex-1]);
-  		}
-  		
-    else
-    	{
-    	User::Leave(KErrAuthServInvalidAliasStringExpression);
-    	}
-	
-	// array elements are not deleted since the ownership is transferred to authExpression,
-	aAuthExprArray.Remove(exprIndex);
-	aAuthExprArray.Remove(exprIndex-1);
-	aAuthExprArray.Compress();
-	
-	return authExpression;
-  	}
-
-
-#ifndef _DEBUG
-// In release mode provide stub functions for Panic() and Invariant().
-
-EXPORT_C void CAuthExpressionImpl::Panic(TPanic /* aPanic */)
-	{
-	// empty.
-	}
-
-EXPORT_C TBool CAuthExpressionImpl::Invariant() const
-	{
-	return ETrue;
-	}
-
-#else
-
-EXPORT_C void CAuthExpressionImpl::Panic(TPanic aPanic)
-/**
-	This function is defined for debug builds only.
-	It halts the current thread when an invalid
-	argument is supplied to one of CAuthExpressionImpl's functions.
-	
-	The current thread is panicked with category "AUTHEXPR"
-	and the supplied reason.
-	
-	@param	aPanic			Panic reason.
- */
-	{
-	_LIT(KPanicCat, "AUTHEXPR");
-	User::Panic(KPanicCat, aPanic);
-	}
-
-EXPORT_C TBool CAuthExpressionImpl::Invariant() const
-/**
-	This function is defined for debug builds, and
-	checks that the object is internally consistent.
-	
-	The node's type must be a supported value - AND, OR,
-	plugin ID, or plugin type.
-	
-	If this is a combining node then recursively ensure
-	that both the left and right nodes are internally
-	consistent.
- */
-	{
-	// this node's parent sees it as a child
-	if (iParent != 0 && !(iParent->iComb.iLeft == this || iParent->iComb.iRight == this))
-		return EFalse;
-	
-	switch (iType)
-		{
-	case EPluginId:
-	case EPluginType:
-		return ETrue;
-		
-	case EAnd:
-	case EOr:
-		// these will fault, as opposed to fail the invariant,
-		// if the pointers are invalid, but so would the original
-		// call to this function if the this pointer were invalid.
-		
-		// this node's children see it as the parent
-		// don't use Parent() because that asserts on the
-		// subexpression, whereas this function should
-		// return EFalse.
-		if (iComb.iLeft->iParent != this)
-			return EFalse;
-		
-		if (iComb.iRight->iParent != this)
-			return EFalse;
-		
-		return iComb.iLeft->Invariant() && iComb.iRight->Invariant();
-	
-	case ENull:
-		return ETrue;
-		
-	default:
-		// unrecognized node type, so fail invariant
-		return EFalse;
-		}
-	}
-	
-#endif	// #ifdef _DEBUG
-
-
--- a/authenticationservices/authenticationserver/source/common/authexpression_impl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,199 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This file contains the implementation for CAuthExpression which is only visible
-* to implementation, and not the the client code.
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
- 
-#ifndef AUTHEXPRESSION_IMPL_H
-#define AUTHEXPRESSION_IMPL_H
-
-#include <s32buf.h>
-#include <authserver/authexpression.h>
-
-namespace AuthServer {
-
-// constants and operators used for processing authentication expression.
-
-_LIT(KAuthOpAnd,"&");
-_LIT(KAuthOpOr,"|");
-_LIT(KAuthBiometric, "Biometric");
-_LIT(KAuthDefault, "Default");
-_LIT(KAuthKnowledge, "Knowledge");
-_LIT(KAuthToken, "Token");
-_LIT(KAuthPerformance, "Performance");
-_LIT(KOpenBracket, "(");
-_LIT(KCloseBracket, ")");
-const TInt KMaxBufferSize = 2048;
-    
-class TSizeStream : public MStreamBuf
-/**
-	This subclass of MStreamBuf is used with
-	RWriteStream to count how many bytes are
-	required to externalize an object.
- */
-	{
-public:
-	inline TSizeStream();
-	inline TInt Size() const;
-
-	// override MStreamBuf
-	IMPORT_C virtual void DoWriteL(const TAny* /* aPtr */, TInt aLength);
-
-private:
-	/** Accumulated stream length in bytes. */
-	TInt iSize;
-	};
-
-
-class CAuthExpressionImpl : public CAuthExpression
-/**
-	This class, which is not visible to clients,
-	defines the variables and functions which are
-	used by authentication expressions.
-	
-	Clients should use the CAuthExpression base class
-	which provides type safety but provides no implementation,
-	so authentication expressions can be re-implemented
-	later without breaking BC.
-
-	@internalComponent
- */
-	{
-public:
-	/**
-		The type of expression represented by an instance
-		of this object, namely a plugin type, a plugin ID,
-		or a complex AND expression, OR expression or a 
-		NULL expression.
-	 */
-	enum TType {EPluginType, EPluginId, EAnd, EOr, ENull};
-		
-	CAuthExpressionImpl(TAuthPluginType aType);
-	CAuthExpressionImpl(TPluginId aPluginId);
-	CAuthExpressionImpl();
-	CAuthExpressionImpl(TType aType, CAuthExpressionImpl* aLeft, CAuthExpressionImpl* aRight);
-
-	IMPORT_C static CAuthExpressionImpl* NewL(RReadStream& aReadStream);
-
-	virtual ~CAuthExpressionImpl();
-
-	// implement CAuthExpression
-	virtual void ExternalizeL(RWriteStream& aWriteStream) const;
-	
-	IMPORT_C static CAuthExpression* CreateAuthExprObjectL(const TDesC& aStrengthAliasString);
-	
-	IMPORT_C static void InsertSpaceBetweenOperatorsL(const TDesC& aAliasStringToBeProcessed, RBuf& aResultantAliasString);
-	
-	inline TType Type() const;
-	inline const CAuthExpressionImpl* Left() const;
-	inline const CAuthExpressionImpl* Right() const;
-	inline TAuthPluginType PluginType() const;
-	inline TPluginId PluginId() const;
-	inline CAuthExpressionImpl* Parent() const;
-
-private:
-	/**
-		Current authentication expression version.
-		This is embedded in the externalized expression
-		so the server can reject the expression if it
-		uses an unsupported version.
-	 */
-	static const TInt KVersion;
-	void Externalize2L(RWriteStream& aWriteStream) const;
-	static CAuthExpressionImpl* New2L(RReadStream& aReadStream);
-	static CAuthExpression* CreateAuthExpressionL(const TDesC& aAliasString);
-	static CAuthExpression* CreateAuthExpressionL(RPointerArray<CAuthExpression>& aAuthExprArray, TPtrC aOperator);
-	static CAuthExpression* EvaluateAliasStringL(const RBuf& aStrengthAliasString);
-	
-	
-private:
-	/**
-		This expression's parent node.  This value is
-		used to navigate the expression tree during
-		evaluation.
-	 */
-	CAuthExpressionImpl* iParent;
-	
-	/** This expression's type. */
-	TType iType;
-	
-	class TBinaryComb
-	/**
-		This class contains pointers to the left and
-		right subexpressions when this expression is
-		an AND or an OR.
-	 */
-		{
-	public:
-		/** Left subexpression.  This cannot be NULL. */
-		CAuthExpressionImpl* iLeft;
-		/** Right subexpression.  This cannot be NULL. */
-		CAuthExpressionImpl* iRight;
-		};
-
-	union
-		{
-		/** This field is valid iff iType == EPluginType. */
-		TAuthPluginType iPluginType;
-		/** This field is valid iff iType == EPluginId. */
-		TPluginId iPluginId;
-		/** This field is valid iff iType == EAnd or iType == EOr. */
-		TBinaryComb iComb;
-		};
-		
-private:
-	// Invariant and Panic are defined, but only as stub
-	// functions for release mode.
-
-	enum TPanic
-	/**
-		In debug builds the current thread can be halted
-		with panic category "AUTHEXPR" and one of the
-		following reasons to indicate that the object has
-		become corrupt or that a caller has supplied an
-		invalid argument to one of this class' functions.
-	 */
-		{
-		ECtTyInvariant = 0x10,
-		ECtIdInvariant = 0x20,
-		ECt2BadComb = 0x30, ECt2NullLeft, ECt2NullRight, ECt2Invariant,
-		ETyAInvariant = 0x40,
-		ELfInvariant = 0x50, ELfNotComplex,
-		ERgInvariant = 0x60, ERgNotComplex,
-		EPTyInvariant = 0x70, EPTyNotPluginType,
-		EPIdInvariant = 0x80, EPIdNotPluginId,
-		EPPrInvariant = 0x90,
-		EExtInvariant = 0xa0
-		};
-		
-
-	IMPORT_C TBool Invariant() const;
-	IMPORT_C static void Panic(TPanic aPanic);
-	};
-
-}	// namespace AuthServer {
-
-#include "authexpression_impl.inl"
-
-#endif	// #ifndef AUTHEXPRESSION_IMPL_H
-
--- a/authenticationservices/authenticationserver/source/common/authexpression_impl.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,162 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef AUTHEXPRESSION_IMPL_INL
-#define AUTHEXPRESSION_IMPL_INL
-
-#include "authexpression_impl.h"
-
-namespace AuthServer {
-
-// -------- TSizeStream --------
-
-
-inline TSizeStream::TSizeStream()
-/**
-	Initialise the accumulated stream size to zero.
- */
-:	iSize(0)
-	{
-	// empty.
-	}
-
-
-inline TInt TSizeStream::Size() const
-/**
-	Accessor function returns the accumulated
-	stream size in bytes.
-	
-	@return					Accumulated stream size in bytes.
- */
-	{
-	return iSize;
-	}
-
-
-// -------- CAuthExpressionImpl --------
-
-
-inline CAuthExpressionImpl::TType CAuthExpressionImpl::Type() const
-/**
-	Accessor function returns this expression type, i.e.
-	whether it is a plugin ID, a plugin type, an AND expression,
-	or an OR expression.
-	
-	@return					This expression's type.
-	@panic	AUTHEXPR 64		This object is internally inconsistent
-							when the function is called (debug only.)
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(ETyAInvariant));
-	return iType;
-	}
-
-
-inline const CAuthExpressionImpl* CAuthExpressionImpl::Left() const
-/**
-	Accessor function returns this expression's left node.
-	
-	@return					A non-modifiable pointer to
-							this expression's left node.
-	@panic	AUTHEXPR 80		This object is internally inconsistent	
-							when this function is called (debug only.)
-	@panic	AUTHEXPR 81		This object is not an AND or OR expression
-							(debug only.)
-	@see Right
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(ELfInvariant));
-	__ASSERT_DEBUG(iType == EAnd || iType == EOr, Panic(ELfNotComplex));
-	return iComb.iLeft;
-	}
-
-	
-inline const CAuthExpressionImpl* CAuthExpressionImpl::Right() const
-/**
-	Accessor function returns this expression's left node.
-	
-	@return					A non-modifiable pointer to
-							this expression's right node.
-	@panic	AUTHEXPR 96		This object is not an AND or OR expression
-							(debug only.)
-	@see Left
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(ERgInvariant));
-	__ASSERT_DEBUG(iType == EAnd || iType == EOr, Panic(ERgNotComplex));
-	return iComb.iRight;
-	}
-
-
-inline TAuthPluginType CAuthExpressionImpl::PluginType() const
-/**
-	Accessor function returns this expression's plugin type.
-	
-	@return					This expression's plugin type.
-	@panic	AUTHEXPR 112	This object is internally inconsistent
-							when this function is called (debug only.)
-	@panic	AUTHEXPR 113	This object does not describe a
-							plugin type (debug only.)
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(EPTyInvariant));
-	__ASSERT_DEBUG(iType == EPluginType, Panic(EPTyNotPluginType));
-	return iPluginType;
-	}
-
-
-inline TPluginId CAuthExpressionImpl::PluginId() const
-/**
-	Accessor function returns this expression's plugin ID.
-	
-	@return					This expression's plugin ID.
-	@panic AUTHEXPR 128		This object is internally inconsistent
-							when this function is called (debug only.)
-	@panic AUTHEXPR 129		This object does not identify a
-							specific plugin (debug only.)
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(EPIdInvariant));
-	__ASSERT_DEBUG(iType == EPluginId, Panic(EPIdNotPluginId));
-	return iPluginId;
-	}
-
-
-inline CAuthExpressionImpl* CAuthExpressionImpl::Parent() const
-/**
-	Accessor function returns this node's parent.
-	
-	@return					This node's parent.  This is
-							NULL for a root node.
-	@panic AUTHEXPR 144		This object is internally inconsistent
-							when this function is called (debug only.)
-	@internalComponent
- */
-	{
-	__ASSERT_DEBUG(Invariant(), Panic(EPPrInvariant));
-
-	return iParent;
-	}
-
-
-
-}	// namespace AuthServer {
-
-
-#endif	// #ifndef AUTHEXPRESSION_IMPL_INL
-
--- a/authenticationservices/authenticationserver/source/common/authpatchdata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-
-// All the patchable variables in the authcommon.dll need to be in a separate file.
-// Care should be taken not to define the exported data in the same source file 
-// in which they are referred, lest the compiler inline's it. If inlined, the 
-// data cannot be patched. Hence, the definition of data must be put in a 
-// separate source file and they must be declared in other source files by 
-// #including "authpatchdata.h".
-
-EXPORT_C extern const TUint8 KEnablePostMarketAuthenticationPlugins = 0x00;
--- a/authenticationservices/authenticationserver/source/common/authserveripc.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authserver client server IPC parameters implementation
-*
-*/
-
-
-/**
- @file 
-*/
-#include "authcommon_impl.h"
-#include "authserveripc.h"
-
-using namespace AuthServer;
-
-
-
-EXPORT_C CAuthParams* CAuthParams::NewL(TTimeIntervalSeconds aTimeout,
-							   TBool aClientKey,
-							   TUid  aClientSid,
-							   TBool aWithString,
-							   const TDesC& aClientMessage)
-	{
-	CAuthParams* self = new (ELeave)CAuthParams(aTimeout,
-												aClientKey,
-												aClientSid,
-												aWithString);
-	CleanupStack::PushL(self);
-	self->ConstructL(aClientMessage);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-
-void CAuthParams::ConstructL(const TDesC& aClientMessage)
-	{
-	iClientMessage = aClientMessage.AllocL();
-	}
-
-
-CAuthParams::CAuthParams(TTimeIntervalSeconds aTimeout,
-						TBool aClientKey,
-						TUid  aClientSid,
-						TBool aWithString):
-	iTimeout(aTimeout),
-	iClientKey(aClientKey),
-	iClientSid(aClientSid),
-	iWithString(aWithString)
-	{
-	
-	}
-	
-
-EXPORT_C void CAuthParams::ExternalizeL(RWriteStream& aStream) const
-	{
-	aStream.WriteInt32L(iClientMessage->Des().Length());
-	aStream.WriteInt32L(iTimeout.Int());
-	aStream.WriteInt8L(iClientKey);
-	aStream.WriteInt32L(iClientSid.iUid);
-	aStream.WriteInt8L(iWithString);
-
-	aStream << *iClientMessage;
-	}
-
-
-EXPORT_C void CAuthParams::InternalizeL(RReadStream& aStream)
-	{
-	TInt maxLength 	= aStream.ReadInt32L();
-	iTimeout       	= aStream.ReadInt32L();
-	iClientKey     	= aStream.ReadInt8L();
-	iClientSid.iUid	= aStream.ReadInt32L();
-	iWithString     = aStream.ReadInt8L();
-	
-	*iClientMessage = KNullDesC;
-	iClientMessage = iClientMessage->ReAllocL(maxLength);
-	TPtr ptr(iClientMessage->Des());
-	aStream >> ptr;
-	}
-
-
-CAuthParams::~CAuthParams()
-	{
-	delete iClientMessage;
-	iClientMessage = 0;
-	}
--- a/authenticationservices/authenticationserver/source/common/authserveripc.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,139 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Authserver - shared client/server definitions
-*
-*/
-
-
-/**
- @file 
- @internalComponent
- @released
-*/
-
-#ifndef AUTHSERVERCLIENTSERVER_H
-#define AUTHSERVERCLIENTSERVER_H
-
-#include <e32std.h>
-
-namespace AuthServer
-{
-_LIT(KAuthServerName,"!AuthServer");    // name to connect to
-_LIT(KAuthServerImg, "AuthServer");		// DLL/EXE name
-_LIT(KAuthServerShortName, "AuthServer");	    // name used for identication when panicking 
-                                                // clients  - has to be less than 16 bytes
-
-const TInt KMaxAuthServerMessage	=100;
-const TInt KDefaultBufferSize		=2048;
-
-enum TAuthServerMessages
-    {
-	/////////////////////////////////////////////////////////////////
-	ERequireNoCapabilities = 0x100,
-
-	ECancel,                     		///< cancel current async operation
-	EPlugins,                     		///< return all plugins
-	EActivePlugins,               		///< return active plugins only
-	EPluginsByType,               		///< return plugins matching a type
-	EPluginsByTraining,           		///< return plugins matching a training
-								  		///< status
-	EDeauthenticate,              		///< deauthenticate the current user
-	EGetAuthPreferences,          		///< get a plugin type to plugin mapping
-	EListAuthAliases,	  				///< get the list of available authentication aliases.				
-	EResolveExpression,					///< resolve any alias definitions in the auth expression string.
-	
-	/////////////////////////////////////////////////////////////////
-	ERequireReadUserData = 0x200,
-	
-	EIdentityString,              ///< return the given identity's description 
- 
-	/////////////////////////////////////////////////////////////////
-	ERequireWriteUserData = 0x300,
-
-	ESetIdentityString,           ///< set the description for an identity
-	ETrainPlugin,				  ///< train a plugin for an identity
-	EForgetPlugin,				  ///< forget identity training data
-
-	/////////////////////////////////////////////////////////////////
-	ERequireReadDeviceData = 0x400,
-
-	EIdentities,                  ///< return a list of identity numbers
-
-	/////////////////////////////////////////////////////////////////
-	ERequireWriteDeviceData = 0x500,
-	ERemoveIdentity,			  ///< remove an identity
-	ESetAuthPreferences,          ///< set a plugin type to plugin mapping
-	ESetPreferredPlugin,          ///< set the default plugin to use
-	EResetIdentity,				  ///< reset identity for all registered plugins
-	EResetIdentityByType,		  ///< reset identity for given plugin type
-	EResetIdentityByList,		  ///< reset identity for given list of plugins
-	
-	/////////////////////////////////////////////////////////////////
-	ERequireTrustedUi = 0x600,
-
-	ERegisterIdentity,            ///< register a new identity
-
-	/////////////////////////////////////////////////////////////////
-	ERequireReadDeviceAndUserData = 0x700,
-
-	EIdentitiesWithString,
-	
-	////////////////////////////////////////////////////////////////
-	ERequireCustomCheck = 0x800,
-	
-	EAuthenticate,
-	
-	ELastService = 0x900,
-	};
-
-/**
- * Aggregates the parameters to the RAuthClient::AuthenticateL ipc call.
- *
- **/
-class CAuthParams : public CBase
-    {
-    
-public:
-	IMPORT_C static CAuthParams* NewL(TTimeIntervalSeconds aTimeout,
-									  TBool aClientKey,
-									  TUid  aClientSid,
-									  TBool aWithString,
-									  const TDesC& aClientMessage);
-	
-	
-	IMPORT_C void ExternalizeL(RWriteStream& aStream) const;
-	
-	IMPORT_C void InternalizeL(RReadStream& aStream);
-	
-	~CAuthParams();
-	
-private:
-	CAuthParams(TTimeIntervalSeconds aTimeout,
-				TBool aClientKey,
-				TUid  aClientSid,
-	    		TBool aWithString);
-		
-    void ConstructL(const TDesC& aClientMessage);
-    
-public:    
-	TTimeIntervalSeconds iTimeout;
-	TBool                iClientKey;
-	TUid				 iClientSid;
-	TBool                iWithString;
-	HBufC*				 iClientMessage;
-};
-
-} //namespace
-#endif
--- a/authenticationservices/authenticationserver/source/common/authserverutil.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,153 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* AuthServerUtil a utility class used by Authentication Server
-* implemented as static functions
-*
-*/
-
-
-/**
- @file 
- @internalComponent
- @released
-*/
-
-#ifndef __AUTHSERVERUTIL_H__
-#define __AUTHSERVERUTIL_H__
-
-#include <f32file.h>
-#include <s32mem.h>
-#include "arrayutils.h"
-
-namespace AuthServer
-{
-
-class AuthServerUtil
-	{
-public:
-	// IPC helper methods
-	template<class T> 
-		static HBufC8* FlattenDataArrayLC(const RArray<T>& aArray);
-	template<class T> 
-		static void SendDataArrayL(const RMessage2& aMessage, const RArray<T>& aArray, TInt aIpcIndx);
-
-	template<class T> 
-		static HBufC8* FlattenDataPointerArrayLC(const RPointerArray<T>& aPointerArray);
-	template<class T> 
-		static void SendDataPointerArrayL(const RMessage2& aMessage, const RPointerArray<T>& aPointerArray, TInt aIpcIndx);
-	};
-
-// Templated function definitions must appear in the header file
-
-template<class T> 
-HBufC8* AuthServerUtil::FlattenDataArrayLC(const RArray<T>& aArray)
-	{
-	// dynamic buffer since we don't know in advance the size required
-    CBufFlat* tempBuffer = CBufFlat::NewL(KDefaultBufferSize);
-	CleanupStack::PushL(tempBuffer);
-	
-	RBufWriteStream stream(*tempBuffer);
-	CleanupClosePushL(stream);
-	
-	// externalise the array of objects		
-	ExternalizeArrayL(aArray, stream);
-	stream.CommitL();
-	
-	// Now, create an HBufC8 from the stream buf's length, and copy 
-	// the stream buffer into this descriptor
-	HBufC8* buffer = HBufC8::NewL(tempBuffer->Size());
-	TPtr8 ptr(buffer->Des());
-	tempBuffer->Read(0, ptr, tempBuffer->Size());
-	CleanupStack::PopAndDestroy(2, tempBuffer); // tempBuffer,  stream
-
-	CleanupStack::PushL(buffer);
-	return buffer;
-	}
-
-template<class T> 
-void AuthServerUtil::SendDataArrayL(const RMessage2& aMessage,
-					const RArray<T>& aArray,
-					TInt aIpcIndx)
-	{
-	HBufC8* buffer = FlattenDataArrayLC(aArray);
-    TPtr8 pbuffer(buffer->Des());
-    
-	if (aMessage.GetDesMaxLengthL(aIpcIndx) < buffer->Size())
-		{
-		TInt bufferSize = buffer->Size();
-		TPckgC<TInt> bufferSizePackage(bufferSize);
-		aMessage.WriteL(aIpcIndx, bufferSizePackage);
-		aMessage.Complete(KErrOverflow);
-		}
-	else
-		{
-		aMessage.WriteL(aIpcIndx, *buffer);
-		aMessage.Complete(KErrNone);
-		}
-	
-	CleanupStack::PopAndDestroy(buffer);
-	}	
-
-template<class T> 
-HBufC8* AuthServerUtil::FlattenDataPointerArrayLC(const RPointerArray<T>& aPointerArray)
-	{
-	// dynamic buffer since we don't know in advance the size required
-    CBufFlat* tempBuffer = CBufFlat::NewL(KDefaultBufferSize);
-	CleanupStack::PushL(tempBuffer);
-	
-	RBufWriteStream stream(*tempBuffer);
-	CleanupClosePushL(stream);
-	
-	// externalise the pointer array		
-	ExternalizePointerArrayL(aPointerArray, stream);
-	stream.CommitL();
-	
-	// Create an HBufC8 from the stream buf's length, and copy 
-	// the stream buffer into this descriptor
-	HBufC8* buffer = HBufC8::NewL(tempBuffer->Size());
-	TPtr8 ptr(buffer->Des());
-	tempBuffer->Read(0, ptr, tempBuffer->Size());
-	CleanupStack::PopAndDestroy(2, tempBuffer); // tempBuffer, stream,
-	
-	CleanupStack::PushL(buffer);
-	return buffer;
-	}
-
-template<class T> 
-void AuthServerUtil::SendDataPointerArrayL(const RMessage2& aMessage,
-						   const RPointerArray<T>& aPointerArray,
-						   TInt aIpcIndx)
-	{
-	HBufC8* buffer = FlattenDataPointerArrayLC(aPointerArray);
-    TPtr8 pbuffer(buffer->Des());
-    
-	if (aMessage.GetDesMaxLengthL(aIpcIndx) < buffer->Size())
-		{
-		TInt bufferSize = buffer->Size();
-		TPckgC<TInt> bufferSizePackage(bufferSize);
-		aMessage.WriteL(aIpcIndx, bufferSizePackage);
-		aMessage.Complete(KErrOverflow);
-		}
-	else
-		{
-		aMessage.WriteL(aIpcIndx, *buffer);
-		aMessage.Complete(KErrNone);
-		}
-		
-	CleanupStack::PopAndDestroy(buffer);
-	}
-
-} // namespace
-#endif //__AUTHSERVERUTIL_H__
--- a/authenticationservices/authenticationserver/source/common/idandstring.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CIdAndString implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authcommon_impl.h"
-#include "authserver/idandstring.h"
-
-using namespace AuthServer;
-
-EXPORT_C CIdAndString* CIdAndString::NewLC(TIdentityId aId, const TDesC& aString)
-	{
-	CIdAndString* me = new (ELeave) CIdAndString();
-	CleanupStack::PushL(me);
-	me->ConstructL(aId, aString);
-	return me;
-	}
-
-EXPORT_C void CIdAndString::ConstructL(TIdentityId aId, const TDesC& aString)
-    {
-    iId = aId;
-	iString = aString.AllocL();
-	}
-
-	
-EXPORT_C CIdAndString::~CIdAndString() { delete iString; }
-
-EXPORT_C CIdAndString* CIdAndString::NewLC(RReadStream& aStream)
-	    {
-		CIdAndString* me = new (ELeave) CIdAndString();
-		CleanupStack::PushL(me);
-		me->InternalizeL(aStream);
-		return me;
-		}
-EXPORT_C void CIdAndString::ExternalizeL(RWriteStream& aStream) const
-	    {
-		  aStream << iId;
-		  aStream << *iString;
-	    }
-
-void CIdAndString::InternalizeL(RReadStream& aStream) 
-	{
-	aStream >> iId;
-	if (iString)
-		{
-		delete iString;
-		iString = 0;
-		}
-	iString = HBufC::NewL(aStream,255);
-	}
-	
-EXPORT_C TIdentityId CIdAndString::Id() const
-  {
-  return iId;
-  }
-EXPORT_C HBufC* CIdAndString::String() const
-  {
-  return iString;
-  }
--- a/authenticationservices/authenticationserver/source/common/identity.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,125 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CIdentity implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authcommon_impl.h"
-
-using namespace AuthServer;
-
-EXPORT_C CIdentity* CIdentity::NewL(TIdentityId aId,
-									CProtectionKey* aKey,
-									HBufC* aString)
-	{
-	CIdentity* me = CIdentity::NewLC(aId, aKey, aString);
-	CleanupStack::Pop();
-	return me;
-	} 
-
-EXPORT_C CIdentity* CIdentity::NewLC(TIdentityId aId,
-									 CProtectionKey* aKey,
-									 HBufC* aString)
-	{ 
-	CIdentity* me = new (ELeave) CIdentity(aId);
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey, aString);
-	return me;
-	}
-
-void CIdentity::ConstructL(CProtectionKey* aKey,
-						   HBufC* aString)
-    {
-	iString = aString;
-	iKey = aKey;
-	}
-
-CIdentity::CIdentity(TIdentityId aId) 
-  : iId(aId)
-    {
-    }
-
-CIdentity::~CIdentity()
-	{
-	delete iKey;
-	delete iString;
-	}
-	
-/**
- * Returns the id number for the identity.
- *
- * @return KUnknown if the identity of the device holder could not be
- * determined.
- **/
-EXPORT_C TIdentityId CIdentity::Id() const
-	{
-	return iId;
-	}
-
-/**
- * Returns the protecion key associated with the returned identity. The
- * key will only be valid if the identity is not unknown.
- *
- * @return the protection key of 
- * the method specified to the RAuthClient::Authenticate method.
- **/
-EXPORT_C const CProtectionKey& CIdentity::Key() const
-	{
-	return *iKey;
-	}
-
-/**
- * Returns the string associated with the returned identity. The string will
- * only be valid if a) the identity is not unknown and b) the identity was
- * retrieved using the withString parameter of RAuthClient::AuthenticateL set
- * to true. If this is not the case then an empty string is returned.
- *
- * @return the protection key of 
- * the method specified to the RAuthClient::Authenticate method.
- **/
-EXPORT_C TDesC& CIdentity::String() const
-	{
-	return *iString;
-	}
-
-EXPORT_C void CIdentity::ExternalizeL(RWriteStream& aWriteStream) const
-    {
-    aWriteStream.WriteInt32L(iId);
-    aWriteStream.WriteInt32L(iKey->KeyData().Length());
-    aWriteStream << iKey->KeyData();
-    aWriteStream<< *iString;
-    }
- 
-EXPORT_C CIdentity* CIdentity::InternalizeL(RReadStream& aReadStream)
-    {
-    TIdentityId id;
-    id = aReadStream.ReadInt32L();
-    TInt keyLength = aReadStream.ReadInt32L();
-    HBufC8* keydata = HBufC8::NewLC(aReadStream, keyLength);
-    CProtectionKey* prot = CProtectionKey::NewL(keydata);
-    CleanupStack::Pop(keydata);
-	CleanupStack::PushL(prot);
-
-    HBufC* stringdata = HBufC::NewLC(aReadStream, KMaxDescLen );
-    CIdentity* identity = CIdentity::NewL(id, prot, stringdata);
-    CleanupStack::Pop(2, prot);
-	return identity; 
-    }
-
--- a/authenticationservices/authenticationserver/source/common/plugindesc.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,251 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPluginDesc class definition
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authcommon_impl.h"
-
-using namespace AuthServer;
-
-
-// -------- factory functions --------
-
-
-/**
-	Factory function allocates a new instance of CPluginDesc
-	from the supplied arguments.
-
-	The supplied values are arbitrary and need not correlate with
-	the actual plugins on the device.
-	
-	@param	aId				The plugin's ID.  This value is used
-							to specify the plugin in an authentication
-							expression.
-							actually available on the system.
-	@param	aName			The plugin's name.  The newly-created
-							description object allocates its own copy
-							of this name, so aName does not have to remain
-							in scope after the object has been created.
-	@param	aType			The plugin's type.
-	@param	aTrainingStatus	The plugin's training status.
-	@param	aMinEntropy		The plugin's minimum entropy as a percentage.
-	@param	aFalsePositiveRate	The plugin's false positive rate as a
-							percentage.
-	@param	aFalseNegativeRate	The plugin's false negative rate as a
-							percentage.
- */
-EXPORT_C CPluginDesc* CPluginDesc::NewL(
-	TPluginId aId, const TDesC& aName,
-	TAuthPluginType aType, TAuthTrainingStatus aTrainingStatus,
-	TEntropy aMinEntropy, TPercentage aFalsePositiveRate,
-	TPercentage aFalseNegativeRate)
-
-	{
-	CPluginDesc* self = new(ELeave) CPluginDesc(
-		aId, aType, aTrainingStatus, aMinEntropy,
-		aFalsePositiveRate, aFalseNegativeRate);
-	
-	CleanupStack::PushL(self);
-	self->ConstructL(aName);
-	CleanupStack::Pop(self);
-	
-	return self;
-	}
-
-/**
-	Record supplied information in this new object,
-	See NewL for argument descriptions.
-	
-	@see NewL
- */
-CPluginDesc::CPluginDesc(
-	TPluginId aId, TAuthPluginType aType,
-	TAuthTrainingStatus aTrainingStatus, TEntropy aMinEntropy,
-	TPercentage aFalsePositiveRate, TPercentage aFalseNegativeRate)
-:	iId(aId),
-	iType(aType),
-	iTrainingStatus(aTrainingStatus),
-	iMinEntropy(aMinEntropy),
-	iFalsePositiveRate(aFalsePositiveRate),
-	iFalseNegativeRate(aFalseNegativeRate)
-	{
-	// empty.
-	}
-
-
-/**
-	Allocate a copy of the supplied name.  The
-	copy is freed in the destructor.
-	
-	@param	aName			This plugin's name.
- */
-void CPluginDesc::ConstructL(const TDesC& aName)
-	{
-	iName = aName.AllocL();
-	}
-
-
-/**
-	Free resources allocated in ConstructL.
-	
-	@see ConstructL
- */
-CPluginDesc::~CPluginDesc()
-    {
-    delete iName;
-    }
-
-
-// -------- persistence --------
-
-/**
-	Recreate an instance of CPluginDesc from the supplied
-	stream.  On success the object is placed on the cleanup stack.
-	
-	@param	aIn				Stream containing persisted plugin
-							description.
-	@return					New instance of CPluginDesc, created
-							from information in the supplied stream.
- */
-EXPORT_C CPluginDesc* CPluginDesc::NewLC(RReadStream& aIn)
-	{
-	CPluginDesc* self = new(ELeave) CPluginDesc;
-	CleanupStack::PushL(self);
-	self->InternalizeL(aIn);
-	return self;
-	}
-
-/**
-	Initialize this object from the supplied stream.
-	This function is used to copy plugin descriptions
-	across IPC boundaries.
-	
-	@param	aIn				Stream which contains externalized
-							plugin descriptor.
-	@see ExternalizeL
- */
-void CPluginDesc::InternalizeL(RReadStream& aIn)
-	{
-	iId = aIn.ReadUint32L();
-	iName = HBufC::NewL(aIn, KMaxNameLength);
-	iType = static_cast<TAuthPluginType>(aIn.ReadUint32L());
-	iTrainingStatus = static_cast<TAuthTrainingStatus>(aIn.ReadUint32L());
-	iMinEntropy = aIn.ReadUint32L();
-	iFalsePositiveRate = aIn.ReadUint32L();
-	iFalseNegativeRate = aIn.ReadUint32L();
-	}
-
-
-/**
-	Write information about this object to the supplied stream
-	so it can be reconstructed later.
-	
-	This function is used to copy plugin descriptions
-	across IPC boundaries.
-	
-	@see InternalizeL
- */
-EXPORT_C void CPluginDesc::ExternalizeL(RWriteStream& aOut) const
-	{
-	aOut << iId;
-	aOut << *iName;
-	aOut.WriteInt32L(iType);
-	aOut.WriteInt32L(iTrainingStatus);
-	aOut << iMinEntropy;
-	aOut << iFalsePositiveRate;
-	aOut << iFalseNegativeRate;
-	}
-
-
-// -------- accessors --------
-
-    
-/**
- * The plugin id.
- * @return The plugin id
- **/
-EXPORT_C TPluginId CPluginDesc::Id() const
-  {
-  return iId;
-  }
-
-/**
- * The plugin name.
- *
- * @return The plugin name, ownership of the returned pointer remains the
- * plugin description
- **/
-EXPORT_C const TDesC* CPluginDesc::Name() const
-  {
-  return iName;
-  }
-
-/**
- * The plugin type.
- * @return the plugin type
- **/
-EXPORT_C TAuthPluginType CPluginDesc::Type() const
-  {
-  return iType;
-  }
-	
-/**
- * Indicates whether the plugin is trained for none, some or all known
- * identities.
- *
- * @return the training status
- **/
-EXPORT_C TAuthTrainingStatus CPluginDesc::TrainingStatus() const
-  {
-  return iTrainingStatus;
-  }
-
-/**
- * How many unique identities the plugin supports.
- * @return The minumum entropy provided by the plugin.
- **/
-EXPORT_C TEntropy CPluginDesc::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-	
-/**
- * The percentage of times an device holder is falsely identified as an
- * known identity.
- *
- * @return The false positive rate of the plugin
- **/
-EXPORT_C TPercentage CPluginDesc::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-/**
- * The percentage of times a known identity is not identified. 
- *
- * @return The false negative rate of the plugin.
- **/
-EXPORT_C TPercentage CPluginDesc::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
--- a/authenticationservices/authenticationserver/source/common/protectionkey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,164 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CProtectionKey implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authcommon_impl.h"
-#include <hash.h>
-
-using namespace AuthServer;
-
-/**
- * Generate a new key upon construction
- * @param aKeySize the length of the key in bits.  
- **/
-EXPORT_C CProtectionKey* CProtectionKey::NewL(TInt aKeySize)
-	{
-	CProtectionKey* key = NewLC(aKeySize);
-	CleanupStack::Pop(key);
-	return key;
-	}
-/**
- * Generate a new key upon construction
- * @param aKeySize the length of the key in bits.  
- **/
-EXPORT_C CProtectionKey* CProtectionKey::NewLC(TInt aKeySize)
-	{
-	CProtectionKey* key = new (ELeave) CProtectionKey();
-	CleanupStack::PushL(key);
-	key->ConstructL(aKeySize);
-	return key;
-	}
-
-/**
- * Creates a new key, passing in the key data. Should
- * really only be called by a CTransientKey::EncryptL. The new object
- * assumes ownership of the data.
- *
- * @param aKeyData the data to use as the key
- **/
-EXPORT_C CProtectionKey* CProtectionKey::NewL(HBufC8* aKeyData)
-	{
-	CProtectionKey*  key =
-	  CProtectionKey::NewLC(aKeyData);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-/**
- * Creates a new key, passing in the key data. Should
- * really only be called by a CTransientKey::EncryptL. The new object
- * assumes ownership of the data.
- *
- * @param aKeyData the data to use as the key
- **/
-EXPORT_C CProtectionKey* CProtectionKey::NewLC(HBufC8* aKeyData)
-	{
-	CProtectionKey*  key = new (ELeave) CProtectionKey();
-	CleanupStack::PushL(key);
-	key->ConstructL(aKeyData);
-	return key;
-	}
-/**
- * Constructor
- */
-CProtectionKey::CProtectionKey()
-	{
-	}
-
-/**
- * Creates a new random key of aKeySize
- * @param aKeySize the size of the key to generate
- **/
-void CProtectionKey::ConstructL(TInt aKeySize)
-	{
-	iKeyData = HBufC8::NewMaxL(aKeySize);
-	TPtr8 data = iKeyData->Des();
-	TRandom::RandomL(data);
-	}
-
-/**
- * Deletes the keydata.
- **/
-CProtectionKey::~CProtectionKey()
-	{
-	delete iKeyData;
-	}
-
-
-/**
- * Creates a new protection key generated using a combination of this key
- * and the client UID. Ownership of the returned object is passed to the 
- * caller.
- *
- * @param aClientUid the client uid to use in the generation process.
- *
- * @return a new heap allocated protection key 
- **/
-EXPORT_C CProtectionKey* CProtectionKey::ClientKeyL(TInt aClientUid) const
-	{
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-
-	TPckg<TIdentityId> idPckg(aClientUid);
-	
-	sha1->Update(idPckg);
-	sha1->Update(*iKeyData);
-
-	TInt keyLength = iKeyData->Length();
-	
-	HBufC8* newKey = HBufC8::NewLC(keyLength);
-
-	TInt remaining = keyLength;
-	do
-	  {
-		newKey->Des().Append(sha1->Hash(idPckg).Left(remaining));
-		remaining = keyLength - newKey->Length(); 
-	  } while ( remaining > 0);
-		  
-	CProtectionKey* key = NewL(newKey);
-	CleanupStack::Pop(newKey);
-	CleanupStack::PopAndDestroy(sha1);
-	return key;
-	}
-	
-/**
- * Returns a descriptor to the key data for use in encryption and 
- * decryption methods. 
- *
- * @return a descripter pointing to the key data. 
- **/
-EXPORT_C TPtrC8 CProtectionKey::KeyData() const
-    {
-	return *iKeyData;
-    }
-
-/**
- * Constructs the key using supplied data.
- **/
-void CProtectionKey::ConstructL(HBufC8* aKeyData)
-	{
-	__ASSERT_DEBUG(((iKeyData == 0) &&
-				   (aKeyData != 0)),
-					User::Leave(KErrArgument));
-	iKeyData = aKeyData;
-    }
-
--- a/authenticationservices/authenticationserver/source/server/authdb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,937 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthDb Authentication server data store implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authserver_impl.h"
-
-using namespace AuthServer;
-
-// The number of decimal digits needed to represent a 32 bit unsigned integer
-const TInt KUint32Digits = 10;
-
-// -------- DB helper functions --------
-
-
-static void RollbackDb(TAny* aPtr)
-/**
-	Implements the TCleanupOperation prototype.  This
-	function is used to rollback a database transaction
-	if a leave occurs before it is committed.
-	
-	@param	aPtr			Pointer to RDbDatabase object
-							to roll back.
-	@see CleanupRollbackPushL
- */
-	{
-	RDbDatabase* db = static_cast<RDbDatabase*>(aPtr);
-	if (db->InTransaction())
-		db->Rollback();
-	}
-
-
-inline void CleanupRollbackPushL(RDbDatabase& aDb)
-/**
-	Puts the supplied database on the cleanup stack.
-	The database is rolled back if a leave occurs.
-	
-	If a leave does not occur then the supplied database
-	should be committed.  Do not call CleanupStack::PopAndDestroy
-	to delete this object.
-	
-	@param	aDb				Database to roll back if
-							a leave occurs.
- */
-	{
-	CleanupStack::PushL(TCleanupItem(RollbackDb, &aDb));
-	}
-
-
-static void StartTransactionLC(RDbDatabase& aDb)
-/**
-	Helper function starts a database transaction and
-	puts a rollback cleanup item on the cleanup stack.
-	
-	@param	aDb				Database to start transaction on.
-	@see CommitTransactionLD
- */
-	{
-	User::LeaveIfError(aDb.Begin());
-	CleanupRollbackPushL(aDb);
-	}
-
-
-static void CommitTransactionLD(RDbDatabase& aDb)
-/**
-	Complements StartTransactionLC by removing the
-	the rollback cleanup item from the cleanup stack
-	and committing the database.
-	
-	@see StartTransactionLC
- */
-	{
-	CleanupStack::Pop(&aDb);
-	User::LeaveIfError(aDb.Commit());
-	}
-
-
-// -------- factory functions --------
-
-
-CAuthDb2* CAuthDb2::NewL(RFs& aFs)
-/**
-	Factory function allocates a new instance of CAuthDb.
-	The database file is created if it does not already exist.
-	
-	@return					New instance of CAuthDb.
- */
-	{
-	CAuthDb2* self = CAuthDb2::NewLC(aFs);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-
-CAuthDb2* CAuthDb2::NewLC(RFs& aFs)
-/**
-	Factory function allocates new instance of CAuthDb2,
-	putting it on the cleanup stack.  The database file
-	is created if it does not already exist.
-	
-	@return					New instance of CAuthDb.
- */
-	{
-	CAuthDb2* self = new(ELeave) CAuthDb2;
-	CleanupStack::PushL(self);
-	self->ConstructL(aFs);
-	return self;
-	}
-
-
-void CAuthDb2::ConstructL(RFs& aFs)
-/**
-	This second-phase constructor opens the
-	database file, creating it if it does not
-	already exist.
- */
-	{
-	TInt r;
-	TFileName dbName(KDbName);
-	dbName[0] = RFs::GetSystemDriveChar();
-
-	r = OpenDbFileL(aFs, dbName);
-	
-	if (r == KErrNone)
-		{
-		if (! iAuthDbFile.IsDamaged() || iAuthDbFile.Recover() == KErrNone)
-			return;
-		}
-	
-	User::LeaveIfError(iAuthDbFile.Replace(aFs, dbName));
-	iIsDbOpen = ETrue;
-	StartTransactionLC(iAuthDbFile);
-	
-	// These commands are stored as narrow instead of wide
-	// text to save c. 500 bytes in decompressed exe size.
-	// The non-XIP EXE size is almost the same because DEFLATE
-	// is used on the ELF file.
-	
-	static const TText8*const cmds[] =
-		{
-		_S8("CREATE TABLE Identities (idName COUNTER, IdentityId UNSIGNED INTEGER NOT NULL, Description VARCHAR(255) NOT NULL)"),
-		_S8("CREATE UNIQUE INDEX idIndex ON Identities (idName)"),
-		_S8("CREATE UNIQUE INDEX identityIdx ON Identities (IdentityId DESC)"),
-		_S8("CREATE TABLE Prefs (PluginType UNSIGNED INTEGER NOT NULL, PluginId UNSIGNED INTEGER NOT NULL)"),
-		_S8("CREATE UNIQUE INDEX typeIdx ON Prefs (PluginType ASC)"),
-		_S8("CREATE TABLE TrainedPlugins (IdentityId UNSIGNED INTEGER NOT NULL, PluginId UNSIGNED INTEGER NOT NULL, TransientKey LONG VARBINARY NOT NULL)"),
-		_S8("CREATE UNIQUE INDEX identityPluginIdx ON TrainedPlugins (IdentityId DESC, PluginId ASC)")
-		};
-	
-	const TInt elemCount = sizeof(cmds) / sizeof(cmds[0]);
-	TBuf<140> cmd;
-	for (TInt i = 0; i < elemCount; ++i)
-		{
-		TPtrC8 cmd8(cmds[i]);
-		cmd.Copy(cmd8);
-		User::LeaveIfError(iAuthDbFile.Execute(cmd));
-		}
-
-	CommitTransactionLD(iAuthDbFile);
-	}
-
-
-CAuthDb2::~CAuthDb2()
-/**
-	Close the database file used by this object.
- */
-	{
-	CloseDbFile();
-	}
-
-TInt CAuthDb2::OpenDbFileL(RFs& aFs, const TFileName& aDbName)
-	{
-	
-	TInt r(0);
-	if(!iIsDbOpen)
-		{
-		r = iAuthDbFile.Open(aFs, aDbName);
-		if(KErrNone == r)
-			{
-			iIsDbOpen = ETrue;
-			}
-		else if (KErrNotFound != r)
-			{
-			User::Leave(r);
-			}
-		}
-	return r;
-	}
-
-void CAuthDb2::CloseDbFile()
-	{
-	if(iIsDbOpen)
-		{
-		RollbackDb(&iAuthDbFile);
-		if(iAuthDbFile.IsDamaged())
-			{
-			iAuthDbFile.Recover();
-			}
-		iAuthDbFile.Close();
-		iIsDbOpen = EFalse;
-		}
-	}
-
-// -------- identities --------
-
-
-void CAuthDb2::AddIdentityWithTrainedPluginL(
-	TIdentityId aIdentityId, const TDesC& aDesc,
-	const CTransientKeyInfo& aTransKeyInfo)
-/**
-	Adds an identity and trains a plugin for it in a single
-	atomic operation.
-	
-	@param	aIdentityId		New identity.
-	@param	aDesc			Identity's description.  This must
-							have no more than KMaxDescLen characters.
-	@param	aTransKeyInfo	A transient key which trains this identity
-							for a plugin.
-	@leave	KErrAuthServIdentityAlreadyExists  The supplied identity
-							is already in the database.
- */
-	{
-	StartTransactionLC(iAuthDbFile);
-	
-	AddIdentityL(aIdentityId, aDesc);
-	
-	SetTrainedPluginL(aIdentityId, aTransKeyInfo.PluginId(), aTransKeyInfo);
-	
-	CommitTransactionLD(iAuthDbFile);
-	}
-
-
-void CAuthDb2::AddIdentityL(TIdentityId aIdentityId, const TDesC& aDesc)
-/**
-	Add the supplied identity to the database.
-	
-	@param	aIdentityId		New identity.
-	@param	aDesc			Identity's description.  This must
-							have no more than KMaxDescLen characters.
-	@leave	KErrAuthServDescTooLong The supplied description is more than
-							255 characters.
-	@leave	KErrAuthServIdentityAlreadyExists  The supplied identity
-							is already in the database.
- */
-	{
-	if (aDesc.Length() > KMaxDescLen)
-		User::Leave(KErrAuthServDescTooLong);
-
-	RDbTable table;
-	
-	// EUpdatable instead of EInsertOnly so can navigate to any
-	// existing row.
-	if (FindIdentityLC(table, RDbView::EUpdatable, aIdentityId))
-		User::Leave(KErrAuthServIdentityAlreadyExists);
-	
-	table.InsertL();		// start automatic transaction
-	table.SetColL(KIdentitiesIdentityIdCol, aIdentityId);
-	table.SetColL(KIdentitiesDescCol, aDesc);
-	table.PutL();			// end automatic transaction
-	
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-void CAuthDb2::RemoveIdentityL(TIdentityId aIdentityId)
-/**
-	Remove the supplied identity from the auth server's database.
-	Any trained entries for the supplied identity are also removed.
-	All updates to the database happen within a single transaction.
-
-	@param	aIdentityId		Identity to remove from database;
-	@leave	KErrAuthServIdentityNotFound The supplied identity could
-							not be found in the database.
- */
-	{
-	StartTransactionLC(iAuthDbFile);
-	
-	RDbTable table;
-	FindExistingIdentityLC(table, RDbView::EUpdatable, aIdentityId);
-	table.DeleteL();
-	CleanupStack::PopAndDestroy(&table);
-
-	// remove each training record for this identity
-	_LIT(KDelTrainFmt, "DELETE FROM TrainedPlugins WHERE IdentityId=%u");
-	TBuf<(46 - 2) + 10> bufCmd;
-	bufCmd.Format(KDelTrainFmt, aIdentityId);
-	iAuthDbFile.Execute(bufCmd);
-	
-	CommitTransactionLD(iAuthDbFile);
-	}
-
-
-TInt CAuthDb2::NumIdentitiesL() 
- /**
-	Retrieve the number of identities in the database.
-	@return the number of identities in the database.
-  */
-	{
-	TInt result = 0;
-	RDbTable table;
-	OpenTableLC(table, KIdentitiesTableName, RDbRowSet::EReadOnly, KIdentitiesIndex);
-	result = table.CountL();
-	CleanupStack::PopAndDestroy(&table);
-	return result;
-	}
-  
-void CAuthDb2::IdentitiesL(RArray<TIdentityId>& aResults)
-/**
-	Populate the supplied array with the currently
-	registered identities.
-	
-	@param	aResults		On success this array is populated
-							with the currently registered identities.
-							Any items which were in the array when
-							this function is called are removed.  On
-							failure this array is emptied so the caller
-							does not have to place it on the cleanup stack.
- */
-	{
-	aResults.Reset();
-	CleanupClosePushL(aResults);
-	
-	RDbTable table;
-	OpenTableLC(table, KIdentitiesTableName, RDbRowSet::EReadOnly, KIdIndexNum);
-	while (table.NextL())
-		{
-		table.GetL();
-		aResults.AppendL(table.ColUint32(KIdentitiesIdentityIdCol));
-		}
-	
-	CleanupStack::PopAndDestroy(&table);
-	CleanupStack::Pop(&aResults);
-	}
-
-void CAuthDb2::IdentitiesWithDescriptionL(RIdAndStringArray& aList)
-/**
-	Populate the supplied array with the currently
-	registered identities and descriptions.
-	
-	@param	aList   		On success this array is populated
-							with the currently registered identities.
-							Any items which were in the array when
-							this function is called are removed.  On
-							failure this array is emptied so the caller
-							does not have to place it on the cleanup stack.
- */
-	{
-	aList.Reset();
-	CleanupClosePushL(aList);
-	
-	RDbTable table;
-	OpenTableLC(table, KIdentitiesTableName, RDbRowSet::EReadOnly, KIdentitiesIndex);
-	while (table.NextL())
-		{
-		table.GetL();
-		CIdAndString* id =
-		  CIdAndString::NewLC(table.ColUint32(KIdentitiesIdentityIdCol),
-							  table.ColDes(KIdentitiesDescCol));
-		aList.AppendL(id);
-		CleanupStack::Pop(id);
-		}
-	
-	CleanupStack::PopAndDestroy(&table);
-	CleanupStack::Pop(&aList);
-	}
-
-HBufC* CAuthDb2::DescriptionL(TIdentityId aIdentityId)
-/**
-	Allocate a descriptor containing the supplied identity's
-	description.
-	
-	@param	aIdentityId		Identity whose description is returned.
-	@return					Newly-allocated descriptor containing the
-							identity's description.  The client must
-							free this object.
-	@leave	KErrAuthServIdentityNotFound The supplied identity could
-							not be found in the database.
- */
-	{
-	RDbTable table;
-	FindExistingIdentityLC(table, RDbView::EReadOnly, aIdentityId);
-	
-	table.GetL();
-	HBufC* retDesc = table.ColDes(KIdentitiesDescCol).AllocL();
-	
-	CleanupStack::PopAndDestroy(&table);
-	return retDesc;
-	}
-
-
-
-void CAuthDb2::SetDescriptionL(TIdentityId aIdentityId, const TDesC& aDesc)
-/**
-	Update an identity's description.
-	
-	@param	aIdentityId		Identity to update.
-	@param	aDesc			New description text.  This must have
-							no more than KMaxDescLen characters.
-	@leave	KErrAuthServIdentityNotFound The supplied identity could
-							not be found in the database.
- */
-	{
-	if (aDesc.Length() > KMaxDescLen)
-		User::Leave(KErrAuthServDescTooLong);
-	
-	RDbTable table;
-	FindExistingIdentityLC(table, RDbView::EUpdatable, aIdentityId);
-	
-	table.UpdateL();			// start automatic transaction
-	table.SetColL(KIdentitiesDescCol, aDesc);
-	table.PutL();				// end automatic transaction
-	
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-void CAuthDb2::FindExistingIdentityLC(
-	RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId)
-/**
-	Find the supplied identity and navigate to it.
-	On success, the table handle is on the cleanup stack.
-	
-	@param	aTable			Caller's table handle.
-	@param	aAccess			Mode in which to open the handle.
-	@param	aIdentityId		Identity to navigate to.
-	@leave	KErrAuthServIdentityNotFound The supplied identity could
-							not be found.
- */
-	{
-	TBool found = FindIdentityLC(aTable, aAccess, aIdentityId);
-	if (! found)
-		User::Leave(KErrAuthServIdentityNotFound);
-	}
-
-
-TBool CAuthDb2::FindIdentityLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId)
-/**
-	Navigate to the supplied identity in the Identities table.
-	On success, the table handle is on the cleanup stack.
-	
-	@param	aTable			Caller's table handle.
-	@param	aAccess			Mode in which to open the table.
-	@param	aIdentityId		Identity to navigate to.
-	@return					Zero if could not find identity in table;
-							Non-zero otherwise.
- */
-	{
-	TBool found = OpenTableAndNavigateLC(
-		aTable, KIdentitiesTableName, aAccess, KIdentitiesIndex, aIdentityId);
-
-	return found;
-	}
-
-
-// -------- plugins --------
-
-TInt CAuthDb2::NumTrainedPluginsL(TIdentityId aId)
-/**
-    Retrieve the number of trained plugins for the specified id.
-    
-    @param aId the identity for whom to retrieve the number of trained plugins.
-    @return the number of trained plugins for the specified id.
- */
-	{
-	_LIT(KGetTrainedFmt, "SELECT IdentityId FROM TrainedPlugins WHERE IdentityId=%u");
-	TBuf<(57 - 2) + 10> bufCmd;
-	bufCmd.Format(KGetTrainedFmt, aId);
-	
-	TDbQuery q(bufCmd);
-	RDbView viewTp;
-	CleanupClosePushL(viewTp);
-	User::LeaveIfError(viewTp.Prepare(iAuthDbFile, q));
-	User::LeaveIfError(viewTp.EvaluateAll());
-	TInt trainedCount = viewTp.CountL();
-	CleanupStack::PopAndDestroy(&viewTp);
-
-	return trainedCount;
-	}
-
-/**
-	Returns list of plugins that are trained for the given identity
-
-	@param	aIdentityId		The identity for whom to retrieve the list of trained plugins.
-	@param 	aTrainedPlugins	The array to fill the returned plugin ids.
-*/
-void CAuthDb2::TrainedPluginsListL(TIdentityId aIdentityId, RArray<TPluginId>& aTrainedPlugins)
-	{
-	_LIT(KGetTrainedFmt, "SELECT PluginId FROM TrainedPlugins WHERE IdentityId=%u");
-	RBuf queryBuf;
-	CleanupClosePushL(queryBuf);
-	queryBuf.CreateL(KGetTrainedFmt().Length() + KUint32Digits);
-	queryBuf.Format(KGetTrainedFmt, aIdentityId);
-
-	TDbQuery query(queryBuf);
-	RDbView viewTp;
-	CleanupClosePushL(viewTp);
-	User::LeaveIfError(viewTp.Prepare(iAuthDbFile, query));
-	User::LeaveIfError(viewTp.EvaluateAll());
-
-	if (viewTp.FirstL())
-		{
-		do
-			{
-			viewTp.GetL();
-			aTrainedPlugins.AppendL(viewTp.ColUint32(1));
-			}
-		while (viewTp.NextL());
-		}
-	CleanupStack::PopAndDestroy(2, &queryBuf); // viewTp
-	}
-
-TAuthTrainingStatus CAuthDb2::PluginStatusL(TPluginId aPluginId)
-/**
-	Return the supplied plugin's training status.
-
-		EAuthUntrained			No identities have been trained for this plugin.
-		EAuthTrained			Some (but not all) identities have been trained for this plugin
-		EAuthFullyTrained		All identities have been trained for this plugin.
-	
-	@param	aPluginId		Plugin whose status should be retrieved.
-	@return					The plugin's training status.
- */
-	{
-	// get number of identities trained for this plugin
-	
-	// This involves filtering all trainings for this plugin
-	// from the TrainedPlugins table.  For small numbers of users
-	// it is simpler to do this; for large numbers of users
-	// (registered identities) it may be better to maintain another
-	// table which matches each plugin against its training count.
-
-	_LIT(KGetTrainedFmt, "SELECT IdentityId FROM TrainedPlugins WHERE PluginId=%u");
-	TBuf<(55 - 2) + 10> bufCmd;
-	bufCmd.Format(KGetTrainedFmt, aPluginId);
-	
-	TDbQuery q(bufCmd);
-	RDbView viewTp;
-	CleanupClosePushL(viewTp);
-	User::LeaveIfError(viewTp.Prepare(iAuthDbFile, q));
-	User::LeaveIfError(viewTp.EvaluateAll());
-	TInt trainCount = viewTp.CountL();
-	CleanupStack::PopAndDestroy(&viewTp);
-	
-	if (trainCount == 0)
-		return EAuthUntrained;
-
-	// get total number of identities in the database
-	RDbTable tableId;
-	OpenTableLC(tableId, KIdentitiesTableName, RDbRowSet::EReadOnly, KIdentitiesIndex);
-	TInt idCount = tableId.CountL();
-	CleanupStack::PopAndDestroy(&tableId);
-	
-	return (trainCount < idCount) ? EAuthTrained : EAuthFullyTrained;
-	}
-
-
-// -------- preferences --------
-
-
-void CAuthDb2::SetPreferredPluginL(TAuthPluginType aPluginType, TPluginId aPluginId)
-/**
-	Set the preferred plugin for the supplied plugin type.
-
-	If the type already has a preferred plugin type, its entry is
-	updated.  Otherwise, a new entry is created.
-
-	@param	aPluginType		Type of plugin to associate with a specific
-							plugin ID.
-	@param	aPluginId		Specific plugin to use for the plugin type.
- */
-	{
-	RDbTable table;
-
-	// start automatic transaction
-	if (FindPrefLC(table, RDbRowSet::EUpdatable, aPluginType))
-		table.UpdateL();
-	else
-		table.InsertL();
-	
-	table.SetColL(KPrefsTypeCol, (TUint) aPluginType);
-	table.SetColL(KPrefsIdCol, (TUint) aPluginId);
-	table.PutL();			// end automatic transaction
-
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-void CAuthDb2::ClearPreferredPluginL(TAuthPluginType aPluginType)
-/**
-	Remove and preferred plugin ID for the supplied plugin type.
-	
-	If the supplied plugin type does not have a preferred plugin
-	then the database is not modified.
-
-	@param	aPluginType		Type of plugin to remove from the
-							Prefs table.
- */
-	{
-	RDbTable table;
-	if (FindPrefLC(table, RDbRowSet::EUpdatable, aPluginType))
-		table.DeleteL();
-
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-TPluginId CAuthDb2::PreferredPluginL(TAuthPluginType aPluginType)
-/**
-	Retrieve the preferred plugin for the supplied plugin type.
-	If the plugin type does not have a preferred plugin this function
-	returns KUnknownPluginId.
-
-	@param	aPluginType		Plugin type to find preferred plugin for.
-	@return					Preferred plugin for aPluginType.  This is
-							KUnknownPluginId if the type does not
-							have a preferred plugin.
- */
-	{
-	TPluginId pluginId;
-
-	RDbTable table;
-	if (! FindPrefLC(table, RDbRowSet::EReadOnly, aPluginType))
-		pluginId = KUnknownPluginId;
-	else
-		{
-		table.GetL();
-		pluginId = static_cast<TPluginId>(table.ColUint(KPrefsIdCol));
-		}
-
-	CleanupStack::PopAndDestroy(&table);
-	return pluginId;
-	}
-
-
-TBool CAuthDb2::FindPrefLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TAuthPluginType aPluginType)
-/**
-	Open the Prefs table and navigate to the supplied plugin type.
-	On success the table handle is placed on the cleanup stack.
-
-	@param	aTable			Table handle to open.  On success this
-							is placed on the cleanup stack.
-	@param	aAccess			Mode in which the table should be opened.
-	@param	aPluginType		Plugin type to navigate to.
-	@return					Zero if could not find plugin type;
-							Non-zero otherwise.
- */
-	{
-	return OpenTableAndNavigateLC(aTable, KPrefsTableName, aAccess, KPrefsTypeIndex, aPluginType);
-	}
-
-
-// -------- trained plugins --------
-
-
-void CAuthDb2::SetTrainedPluginL(
-	TIdentityId aIdentityId, TPluginId aPluginId, const CTransientKeyInfo& aTransKeyInfo)
-/**
-	Sets the transient key for the supplied identity, plugin pair.
-
-	If the identity has already been trained for this plugin
-	then the existing record is replaced.
-
-	@param	aIdentityId		Identity to update.
-	@param	aPluginId		Plugin to associate with identity.
-	@param	aTransKeyInfo	The salt and encrypted protection key
-							for this identity / plugin pair.
-	@leave	KErrAuthServIdentityNotFound The supplied identity has
-							not been registered.
- */
-	{
-	RDbTable table;
-
-	TBool update = FindTrainedPluginLC(table, RDbRowSet::EUpdatable, aIdentityId, aPluginId);
-	
-	// start automatic transaction
-	if (update)
-		{
-		table.UpdateL();
-		}
-	else
-		{
-		CheckIdentityRegisteredL(aIdentityId);
-		table.InsertL();
-		}
-
-	table.SetColL(KTpIdentityIdCol, (TUint) aIdentityId);
-	table.SetColL(KTpPluginIdCol, (TUint) aPluginId);
-	
-	RDbColWriteStream dbcws;
-	dbcws.OpenLC(table, KTpTransientKeyCol);
-	aTransKeyInfo.ExternalizeL(dbcws);
-	dbcws.CommitL();
-	CleanupStack::PopAndDestroy(&dbcws);
-	table.PutL();
-	
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-void CAuthDb2::RemoveTrainedPluginL(TIdentityId aIdentityId, TPluginId aPluginId)
-/**
-	Remove the transient key info (i.e. the encrypted protection key
-	and its salt) for the supplied identity, plugin pair.
-
-	@param	aIdentityId		Identity which should be trained for
-							the supplied plugin.
-	@param	aPluginId		Plugin which should be trained for the
-							supplied identity.
-	@leave	KErrAuthServTrainingNotFound Attempted to remove an
-							identity, plugin pair which was not in the
-							trained plugins table.
- */
-	{
-	RDbTable table;
-	TBool found = FindTrainedPluginLC(table, RDbRowSet::EUpdatable, aIdentityId, aPluginId);
-
-	if (! found)
-		User::Leave(KErrAuthServTrainingNotFound);
-
-	table.DeleteL();
-	CleanupStack::PopAndDestroy(&table);
-	}
-
-
-CTransientKeyInfo* CAuthDb2::KeyInfoL(TIdentityId aIdentity, TPluginId aPluginId)
-/**
-	Retrieve the transient key associated with the supplied identity,
-	plugin pair.
-
-	@param	aIdentity		Identity to search for.
-	@param	aPluginId		Plugin which should be registered
-							with the supplied identity.
-	@return					Transient key info, including encrypted
-							protection key, associated with identity,
-							plugin pair.
-	@leave KErrAuthServTrainingNotFound There was no transient key
-							information for the supplied identity,
-							plugin pair.
- */
-	{
-	RDbTable table;
-	TBool found = FindTrainedPluginLC(table, RDbRowSet::EReadOnly, aIdentity, aPluginId);
-	if (! found)
-		User::Leave(KErrAuthServTrainingNotFound);
-
-	table.GetL();
-	RDbColReadStream dbcrs;
-	dbcrs.OpenLC(table, KTpTransientKeyCol);
-	CTransientKeyInfo* keyInfo = CTransientKeyInfo::NewL(dbcrs);
-
-	CleanupStack::PopAndDestroy(2, &table);		// dbcrs, table
-	return keyInfo;
-	}
-
-
-TBool CAuthDb2::FindTrainedPluginLC(
-	RDbTable& aTable, RDbRowSet::TAccess aAccess,
-	TIdentityId aIdentityId, TPluginId aPluginId)
-/**
-	Helper function for SetTrainedPluginL and ClearTrainedPluginL.
-	This function opens the TrainedPlugins table and navigates to
-	the supplied identity, plugin pair if they are present.
-
-	@param	aTable			Table handle to open.
-	@param	aAccess			Mode in which to open the table.
-	@param	aIdentityId		Identity to navigate to.
-	@param	aPluginId		Plugin to navigate to.
-	@return					Zero if could not navigate to the
-							identity, plugin ID pair; non-zero
-							otherwise.
- */
-	{
-	OpenTableLC(aTable, KTpTableName, aAccess, KTpIndex);
-
-	TDbSeekMultiKey<2> dbsmk;
-	dbsmk.Add((TUint) aIdentityId);
-	dbsmk.Add((TUint) aPluginId);
-	return aTable.SeekL(dbsmk);
-	}
-
-
-// -------- helper functions --------
-
-
-TBool CAuthDb2::OpenTableAndNavigateLC(
-	RDbTable& aTable, const TDesC& aTableName, RDbRowSet::TAccess aAccess,
-	const TDesC& aIndexName, TUint aKey)
-/**
-	Open the described table and navigate to the identified row.
-
-	@param	aTable			Caller's table handle.  On success
-							this is placed on the cleanup stack.
-	@param	aTableName		Table to open in auth db.
-	@param	aAccess			Mode to open table in.
-	@param	aIndexName		Index to use for navigating.
-	@param	aKey			Key to find in database.
-	@return					Zero if could not find row in table;
-							Non-zero otherwise.
- */
-	{
-	OpenTableLC(aTable, aTableName, aAccess, aIndexName);
-
-	TDbSeekKey seekKey((TUint)aKey);	// from TUint32
-	return aTable.SeekL(seekKey);
-	}
-
-
-void CAuthDb2::OpenTableLC(
-	RDbTable& aTable, const TDesC& aTableName,
-	RDbRowSet::TAccess aAccess, const TDesC& aIndexName)
-/**
-	Open the named table in the supplied access mode,
-	and use the index on it.
-
-	@param	aTable			Caller's table handle.  On success
-							this is placed on the cleanup stack.
-	@param	aTableName		Table to open in the authentication db.
-	@param	aAccess			Mode to open table in.
-	@param	aIndexName		Index to activate on table.
- */
-	{
-	CleanupClosePushL(aTable);
-	User::LeaveIfError(aTable.Open(iAuthDbFile, aTableName, aAccess));
-
-	if (aAccess != RDbRowSet::EInsertOnly)
-		{
-		User::LeaveIfError(aTable.SetIndex(aIndexName));
-		}
-	}
-
-
-void CAuthDb2::CheckIdentityRegisteredL(TUint aIdentityId)
-/**
-	Checks if the supplied identity has been registered with
-	the database.  If not, it leaves with KErrAuthServIdentityNotFound.
-	
-	This function is used to validate arguments to other functions.
-	
-	@param	aIdentityId		Identity to search for.
-	@leave	KErrAuthServIdentityNotFound The supplied identity has not
-							been registered.
- */
-	{
-	CheckItemRegisteredL(
-		KIdentitiesTableName, KIdentitiesIndex,
-		aIdentityId, KErrAuthServIdentityNotFound);
-	}
-
-
-void CAuthDb2::CheckItemRegisteredL(
-	const TDesC& aTableName, const TDesC& aIndexName,
-	TUint aValue, TInt aNotFoundError)
-/**
-	Helper function for CheckIdentityRegisteredL.
-	
-	@param	aTableName		Name of table to search.
-	@param	aIndexName		Name of index to use on table.
-	@param	aValue			Key value to search for.
-	@param	aNotFoundError	If the key value cannot be found
-		`					then leave with this value.
- */
- 	{
-	RDbTable table;
-	if (! OpenTableAndNavigateLC(table, aTableName, RDbRowSet::EReadOnly, aIndexName, aValue))
-		User::Leave(aNotFoundError);
-	CleanupStack::PopAndDestroy(&table);
- 	}
-
-
-// -------- compaction --------
-
-
-const TInt KBlockSize = 512;
-const TInt KBlockMask = KBlockSize - 1;
-
-
-void CAuthDb2::CompactIfRequired()
-/**
-	Compacts the database file if compacting it would
-	recover at least one 512 byte block.
-	
-	This function does not report any error status
-	but, if the database is damaged, ConstructL will
-	attempt to repair it.
- */
-	{
-	TInt r = iAuthDbFile.UpdateStats();
-	
-	if (r == KErrNone)
-		{
-		RDbDatabase::TSize sz = iAuthDbFile.Size();
-		
-		// approx used bytes - sz.iUsage is a percentage
-		TInt usedBytes = sz.iUsage * 100;
-		if ((usedBytes & ~KBlockMask) < (sz.iSize & ~KBlockMask))
-			/* ignore */ iAuthDbFile.Compact();
-		}
-	}
-
-TIdentityId CAuthDb2::DefaultIdentityL()
-/**
- 	Return the default identity which is the first identity
- 	in the table when indexed based on the order of insertion.
-*/
-	{
-	TIdentityId identity(0);
-	RDbTable table;	
-	OpenTableLC(table, KIdentitiesTableName, RDbRowSet::EReadOnly, KIdIndexNum);
-	
-	//Position the cursor on the first row and retrieve the Identity.
-	if (table.FirstL())
-		{
-		table.GetL();
-		identity = table.ColUint32(KIdentitiesIdentityIdCol);
-		}	
-		
-	CleanupStack::PopAndDestroy(&table);
-	return identity;
-	}
--- a/authenticationservices/authenticationserver/source/server/authdb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,159 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthDb Authentication server data store declaration
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-
-#ifndef AUTHDB_H
-#define AUTHDB_H
-
-#include <d32dbms.h>
-#include "authserver/authtypes.h"
-#include "authserver/idandstring.h"
-
-namespace AuthServer
-{
-
-class CTransientKeyInfo;
-
-NONSHARABLE_CLASS(CAuthDb2) : public CBase
-	{
-public:
-	static CAuthDb2* NewL(RFs& aFs);
-	static CAuthDb2* NewLC(RFs& aFs);
-	virtual ~CAuthDb2();
-	
-	// identities
-	TInt NumIdentitiesL();
-	void AddIdentityWithTrainedPluginL(
-		TIdentityId aIdentityId, const TDesC& aDesc,
-		const CTransientKeyInfo& aTransKeyInfo);
-	void AddIdentityL(TIdentityId aIdentityId, const TDesC& aDesc);
-	void RemoveIdentityL(TIdentityId aIdentityId);
-	void IdentitiesL(RArray<TIdentityId>& aResults);
-	HBufC* DescriptionL(TIdentityId aIdentityId);
-	void SetDescriptionL(TIdentityId aIdentityId, const TDesC& aDesc);
-	void IdentitiesWithDescriptionL(RIdAndStringArray& aList);
-	TIdentityId DefaultIdentityL();
-	// plugins
-	TInt NumPluginsL();
-	TInt NumTrainedPluginsL(TIdentityId aId);
-	// Returns list of plugins that are trained for the given identity
-	void TrainedPluginsListL(TIdentityId aIdentityId, RArray<TPluginId>& aTrainedPlugins);
-	TAuthTrainingStatus PluginStatusL(TPluginId aPluginId);
-
-	// preferences
-	void SetPreferredPluginL(TAuthPluginType aPluginType, TPluginId aPluginId);
-	void ClearPreferredPluginL(TAuthPluginType aPluginType);
-	TPluginId PreferredPluginL(TAuthPluginType aPluginType);
-
-	// trained plugins
-	void SetTrainedPluginL(
-		TIdentityId aIdentityId, TPluginId aPluginId, const CTransientKeyInfo& aTransKeyInfo);
-	void RemoveTrainedPluginL(TIdentityId aIdentityId, TPluginId aPluginId);
-	CTransientKeyInfo* KeyInfoL(TIdentityId aIdentity, TPluginId aPluginId);
-
-	void CompactIfRequired();
-	void CloseDbFile();
-	TInt OpenDbFileL(RFs& aFs, const TFileName& aDbName);
-	
-private:
-	void ConstructL(RFs& aFs);
-
-	void FindExistingIdentityLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId);
-	TBool FindIdentityLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TIdentityId aIdentityId);
-
-	TBool FindPrefLC(RDbTable& aTable, RDbRowSet::TAccess aAccess, TAuthPluginType aPluginType);
-
-	TBool FindTrainedPluginLC(
-		RDbTable& aTable, RDbRowSet::TAccess aAccess,
-		TIdentityId aIdentityId, TPluginId aPluginId);
-
-	TBool OpenTableAndNavigateLC(
-		RDbTable& aTable, const TDesC& aTableName, RDbRowSet::TAccess aAccess,
-		const TDesC& aIndexName, TUint aKey);
-	void OpenTableLC(
-		RDbTable& aTable, const TDesC& aTableName,
-		RDbRowSet::TAccess aAccess, const TDesC& aIndexName);
-	void CheckIdentityRegisteredL(TUint aIdentityId);
-
-	void CheckItemRegisteredL(
-		const TDesC& aTableName, const TDesC& aIndexName,
-		TUint aValue, TInt aNotFoundError);
-	
-
-
-private:	
-	/**
-	 * The database file itself, used to persist identities
-	 * 	when the server is not in use.
-	 */
-	RDbNamedDatabase iAuthDbFile;
-	
-	/**
-	 * Keep track of whether the database is open or not.
-	 */
-	TBool iIsDbOpen;
-	
-	};
-
-
-// databases structure
-
-_LIT(KDbName, "!:\\private\\102740FC\\auth.db");
-
-/** Identities table name. */
-_LIT(KIdentitiesTableName, "Identities");
-/** Identities index number */
-_LIT(KIdentitiesIndex, "identityIdx");
-/** Identities index number.- Based on order of insertion */
-_LIT(KIdIndexNum, "idIndex");
-/** Identity column number in Identities table. */
-const TInt KIdentitiesIdentityIdCol = 2;
-/** Description column number in Identities table. */
-const TInt KIdentitiesDescCol = 3;
-
-/** Prefs table name. */
-_LIT(KPrefsTableName, "Prefs");
-/** Prefs index name. */
-_LIT(KPrefsTypeIndex, "typeIdx");
-
-/** Type column number in Prefs table. */
-const TInt KPrefsTypeCol = 1;
-/** PluginId column number is Prefs table. */
-const TInt KPrefsIdCol = 2;
-
-/** TrainedPlugins table name. */
-_LIT(KTpTableName, "TrainedPlugins");
-/** TrainedPlugins index name. */
-_LIT(KTpIndex, "identityPluginIdx");
-
-/** IdentityId column number in TrainedPlugins table. */
-const TInt KTpIdentityIdCol = 1;
-/** PluginId column number in TrainedPlugins table. */
-const TInt KTpPluginIdCol = 2;
-/** TransientKey column number in TrainedPlugins table. */
-const TInt KTpTransientKeyCol = 3;
-
-}	// namespace AuthServer
-
-#endif // AUTHDB_H
--- a/authenticationservices/authenticationserver/source/server/authmain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* AuthServer startup code implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authserver_impl.h"
-
-using namespace AuthServer;
-
-namespace
-{
-
-/**
- * Perform all server initialisation, in particular creation of the
- * scheduler and server and then run the scheduler
- */
-static CScsServer* NewAuthServerLC()
-/**
-	This factory function is called by SCS.  It allocates
-	the server object and leaves it on the cleanup stack.
-
-	@return					New initialized instance of CScsTestServer.
-							On return this is on the cleanup stack.
- */
-	{
-	return AuthServer::CAuthServer::NewLC();
-	}
-
-}
-
-/**
- * Server process entry-point
- **/
-TInt E32Main()
-	{
-	TInt err = StartScsServer(NewAuthServerLC);
-
-	/**
-     *  err can either be KErrNone (AuthServer is started successfully) or  
-     *  KErrAlreadyExists(AuthServer is currently running). Panic for all other
-     *  cases.
-	 **/
-		
-	__ASSERT_DEBUG(err == KErrNone || err == KErrAlreadyExists, User::Panic(KAuthServerShortName, err));
-	return err;
-	}
-
--- a/authenticationservices/authenticationserver/source/server/authrepository.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authrepository - Central Repository methods implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authrepository.h"
-#include "authserver_impl.h"
-
-using namespace AuthServer;
-
-CAuthRepository* CAuthRepository::NewL()
-	{
-	CAuthRepository* self = CAuthRepository::NewLC();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-
-CAuthRepository* CAuthRepository::NewLC()
-	{
-	CAuthRepository* self = new (ELeave)CAuthRepository();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-void CAuthRepository::ConstructL()
-	{
-	iRepository = CRepository::NewL(KUidAuthServerRepository);
-	}
-
-
-CAuthRepository::~CAuthRepository()
-	{
-	delete iRepository;
-	}
-
-
-
-/**
-	Retrieves the default system wide plugin Id as defined in the 
-	central repository file
-
-
-	@leave	KErrArgument			If the default plugin is not
-									defined in the central repository 
-									file.
-									
-	@return  The retrieved Plugin Id from the repository is returned.								
-									
- */
-
-TPluginId CAuthRepository::DefaultPluginL() const
-	{
-	//Read the default plugin value from the configuration file.
-	TInt defaultPlugin(0);
-	User::LeaveIfError(iRepository->Get(KAuthDefaultPlugin, defaultPlugin));
- 	
-	//If the default plugin is not set.
-	if(defaultPlugin == 0)
-		{	
-		User::Leave(KErrArgument);
-		}
-	
-	return defaultPlugin;
-	
-	}
-
-
-/**
-	Retrieves the authentication alias as defined in the authserver's 
-	central repository file .
-	
-	@param	aAuthAliasList			An array to be populated with the
-									authentication alias as obtained 
-									from the authserver's central repository 
-									file.
-	@leave	KErrArgument			when the count of authentication aliases
-									in authserver's central repository file is
-									negative.
-	@leave	KErrNotFound			when there is no authentication aliases
-									defined in authserver's central repository file.
- */
- 
- void CAuthRepository::ListAliasL(RPointerArray<HBufC>& aAuthAliasList)
-	{
-	TInt authStrengthAliasCount(0);
- 	 
-	User::LeaveIfError(iRepository->Get(EAuthAliasesCount, authStrengthAliasCount));
-	
-	// leave if the count is a negative value.
-	if(authStrengthAliasCount < 0)
-		User::Leave(KErrArgument);
-	
-	// leave with KErrNotFound when the count is zero.
-	if(authStrengthAliasCount == 0)
-		User::Leave(KErrNotFound);
-	
-	for(TInt i = 0; i < authStrengthAliasCount; ++i)
-		{
-		HBufC* strengthAlias = HBufC::NewLC(KMaxDescLen);
-		TPtr value(strengthAlias->Des());
-		User::LeaveIfError(iRepository->Get(EAuthAliases+i, value));
-		aAuthAliasList.AppendL(strengthAlias);
-		CleanupStack::Pop(strengthAlias);
-		}
-	}
- 
-
- /**
- 	Retrieves the authentication definition corresponding to the alias 
- 	as defined in the authserver's central repository file .
- 	
- 	@param	aKey					The index of the authentication alias
- 									in the central repository file.
- 									zero.
- 	
- 	@param	aValue					The retrieved definition value for 
- 									the alias.		
-  */
-
- void CAuthRepository::GetAliasDefinitionL(TInt aKey, TDes16& aValue)
-	 {
-	 User::LeaveIfError(iRepository->Get(EAuthAliasesExpr+aKey, aValue));
-	 }
--- a/authenticationservices/authenticationserver/source/server/authserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2011 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthServer implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include <s32mem.h>
-#include <s32file.h>
-#include <ecom/ecom.h>
-#include <pbedata.h>
-#include <scs/cleanuputils.h>
-#include "authserver_impl.h"
-#include "authtransaction.h"
-#include "authserver/aspubsubdefs.h"
-#include "authserverutil.h"
-
-using namespace AuthServer;
-
-const TUint CAuthServer::iRangeCount = KPolicyRanges;
-
-const TInt CAuthServer::iRanges[KPolicyRanges] = 
-	{
-	0,
-	CScsServer::EBaseSession,
-	CScsServer::EBaseSession |ERequireNoCapabilities, 		   // accessible by all clients.
-	CScsServer::EBaseSession |ERequireReadUserData,		   	   // accessible by ReadUserData clients only.
-	CScsServer::EBaseSession |ERequireWriteUserData,	   	   // accessible by WriteUserData clients only.
-	CScsServer::EBaseSession |ERequireReadDeviceData, 	       // accessible by ReadDeviceData clients only.
-	CScsServer::EBaseSession |ERequireWriteDeviceData,         // accessible by WriteDeviceData clients only.
-	CScsServer::EBaseSession |ERequireTrustedUi,               // accessible by TrustedUi clients only.
-	CScsServer::EBaseSession |ERequireReadDeviceAndUserData,   // accessible by clients with both
-																// ReadUserData and ReadDeviceData.
-	CScsServer::EBaseSession |ERequireCustomCheck,		       // Require custom check.
-	CScsServer::EBaseSession |ELastService,
-	CScsServer::EBaseMustAllow     			                   // SCS Internal.
-	};
-
-const TUint8 CAuthServer::iElementsIndex[iRangeCount] = 
-	{
-	CPolicyServer::ENotSupported,
-	CPolicyServer::EAlwaysPass,
-	0,  // all clients can have access 
-	1,  // ReadUserData clients only
-	2,  // WriteUserData clients only
-	3,	// ReadDeviceData
-	4,  // WriteDeviceData
-	5,  // trusted ui
-	6,  // ReadUserData and ReadDeviceData
-	CPolicyServer::ECustomCheck,	// custom check
-	CPolicyServer::EAlwaysPass, 
-	CPolicyServer::EAlwaysPass, 
-	};
-
-const CPolicyServer::TPolicyElement CAuthServer::iPolicyElements[] = 
-	{
-	{_INIT_SECURITY_POLICY_C1(ECapability_None), CPolicyServer::EFailClient},
-	{_INIT_SECURITY_POLICY_C1(ECapabilityReadUserData), CPolicyServer::EFailClient},
-	{_INIT_SECURITY_POLICY_C1(ECapabilityWriteUserData), CPolicyServer::EFailClient},
-	{_INIT_SECURITY_POLICY_C1(ECapabilityReadDeviceData), CPolicyServer::EFailClient}, 
-	{_INIT_SECURITY_POLICY_C1(ECapabilityWriteDeviceData), CPolicyServer::EFailClient},
-	{_INIT_SECURITY_POLICY_C1(ECapabilityTrustedUI), CPolicyServer::EFailClient},
-	{_INIT_SECURITY_POLICY_C2(ECapabilityReadDeviceData, ECapabilityReadUserData), CPolicyServer::EFailClient},
-	};
-
-const CPolicyServer::TPolicy CAuthServer::iPolicy =
-	{
-		CPolicyServer::EAlwaysPass, // so that any client can connect	
-		iRangeCount,                                   
-		iRanges,
-		iElementsIndex,
-		iPolicyElements,
-	};
-
-_LIT_SECURITY_POLICY_S0(CAuthServer::iPropertyWritePolicy, KAuthServerSecureId.iUid);
-_LIT_SECURITY_POLICY_PASS(CAuthServer::iPropertyReadPolicy);
-
-
-inline CAuthServer::CAuthServer(CActive::TPriority aPriority)
-	:CScsServer(TVersion(1,0,0), iPolicy, aPriority)
-	{}
-	
-CAuthServer* CAuthServer::NewLC(CActive::TPriority aPriority)
-	{
-	CAuthServer* self = new(ELeave) CAuthServer(aPriority);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-void CAuthServer::ConstructL()
-    {
-    // Delay starting of shutdown timer till we finish construction since
-    // loading of ECOM plugins takes a while
-    CScsServer::ConstructL(0);
-    TInt r;
-    StartL(KAuthServerName);
-	r = iFs.Connect();
-    User::LeaveIfError(r);
-    r = iFs.CreatePrivatePath(RFs::GetSystemDrive());
-    User::LeaveIfError(r);
-
-    // Retrieve the key size to be used for protection keys
-	CPBEncryptElement* pbee = CPBEncryptElement::NewLC(_L(""));
-    iKeySize = pbee->EncryptionData().AuthData().Key().Size();
-    CleanupStack::PopAndDestroy(pbee);
-    iAuthRepository = CAuthRepository::NewL();
-	iAuthDb2 = CAuthDb2::NewL(iFs);
-	iPluginMgr  = CPluginMgr::NewL();
-    iPluginObserver = CPluginObserver::NewL(*iPluginMgr);
-    iEvaluator = CEvaluator::NewL(this,this);
-    iTrainingMgr = new (ELeave) CTrainingMgr(*iPluginMgr, *iAuthDb2, *iAuthRepository);
-	TUid clientSid = {0};
-	iParams = CAuthParams::NewL(0,
-								EFalse,
-								clientSid,
-								EFalse,
-								KNullDesC());
-    CreatePropertiesL();
-	FirstStartL();
-
-	// Construction complete, now start the shutdown timer
-	CScsServer::EnableShutdownTimerL(AuthServer::KDefaultShutdownDelay);
-    }
-    
-    
-CPolicyServer::TCustomResult CAuthServer::CustomSecurityCheckL(const RMessage2& aMessage, 
-	TInt& /*aAction*/, TSecurityInfo& aMissing)
-	{
-	TInt KAuthParams = 1; 
-	TInt paramsLen = aMessage.GetDesLength(KAuthParams);
-	
-	if(paramsLen != KErrBadDescriptor)
-		{
-		//Create a buffer.
-		HBufC8* buffer = HBufC8::NewLC(paramsLen);
-		TPtr8 bufDes(buffer->Des());
-		aMessage.ReadL(EIpcArgument1, bufDes);
-			
-		//Internalize the params object.
-		RDesReadStream readStream(*buffer);
-		CleanupClosePushL(readStream);
-		iParams->InternalizeL(readStream);
-		CleanupStack::PopAndDestroy(2, buffer);
-		}
-
-	TBool clientKey = iParams->iClientKey;
-	TBool withString = iParams->iWithString;
-	TInt clientSid = iParams->iClientSid.iUid;
-		
-	if((!clientKey || withString || ((clientSid != aMessage.SecureId()) && clientSid != 0 )) && !(aMessage.HasCapability(ECapabilityReadUserData)))
-		{
-		// Missing ReadUserData capability.
-		aMissing.iCaps.Set(ECapabilityReadUserData);
-		return CPolicyServer::EFail;
-		}	
-		
-	else
-		{
-		return CPolicyServer::EPass;	
-		}
-	}
-	
-/**
- * Creates and initialises the two AuthServer properties -
- * KUidAuthServerLastAuth and KUidAuthServerAuthChangeEvent.
- *
- **/
-void CAuthServer::CreatePropertiesL()
-	{
-	// KUidAuthServerLastAuth
-	TInt err1 = iAuthProperty.Define(KUidAuthServerLastAuth, RProperty::EText,
-									iPropertyReadPolicy, iPropertyWritePolicy,
-									sizeof(TLastAuth));
-
-	User::LeaveIfError(iAuthProperty.Attach(KAuthServerSecureId,
-											KUidAuthServerLastAuth));
-
-	
-	// KUidAuthServerAuthChangeEvent
-	TInt err2 = iAuthEventProperty.Define(KUidAuthServerAuthChangeEvent,
-									RProperty::EInt,
-									iPropertyReadPolicy,
-									iPropertyWritePolicy);
-	
-	User::LeaveIfError(iAuthEventProperty.Attach(KAuthServerSecureId,
-												 KUidAuthServerAuthChangeEvent));
-
-	if (err1 == KErrNone || err2 == KErrNone )
-		{
-		ClearPropertiesL();
-		}
-	}
-
-void CAuthServer::ClearPropertiesL()
-	{
-	TLastAuth lastAuth;
-	TPckg<TLastAuth> authPckg(lastAuth);
-	User::LeaveIfError(iAuthProperty.Set(authPckg));
-	User::LeaveIfError(iAuthEventProperty.Set(KUnknownIdentity));
-	}
-
-
-/**
- * Checks the number of identities in the database and iff zero asks the
- * training mgr to register the first identity.
- *
- * @leave KErrAuthServerCanNotCreateFirstId if the first identity cannot
- * be created
- **/
-void CAuthServer::FirstStartL()
-	{
-	TInt numIds = iAuthDb2->NumIdentitiesL();
-	if (numIds == 0)
-		{
-		TIdentityId id = 0;
-		TPckg<TIdentityId> idPkg(id);
-		TRandom::RandomL(idPkg);
-		
-		CProtectionKey* key = CProtectionKey::NewL(iKeySize);
-		if (!iTrainingMgr->RegisterFirstIdentityL(id, *key))
-			{
-			User::Panic(KAuthServerShortName, EPanicNoFirstStartPlugin);
-			}
-		}
-	}
-
-CAuthServer::~CAuthServer()
-	{
-	delete iAuthRepository;
-	delete iAuthTransaction;
-	
-	delete iTrainingMgr;
-	delete iLastIdentity;
-	delete iEvaluator;
-	delete iPluginMgr;
-	delete iPluginObserver;	
-	delete iParams;
-	if (iAuthDb2 != 0)
-		{
-		iAuthDb2->CompactIfRequired();
-		delete iAuthDb2;
-		}
-	
-	iFs.Close();
-	REComSession::FinalClose();
-	}
-
-		
-/**
- *  Creates a new session
- * @param aClientVersion the version of the connecting client
- * @param aMessage the connect message
- */
-CScsSession* CAuthServer::DoNewSessionL(const RMessage2& /*aMessage*/)
-	{
-	return CAuthServerSession::NewL(*this);
-	}
-
-
-/**
- * Returns the last identity to be authenticated within the period 
- * currTime to currTime-timeout.  
- * 
- * @param currTime the current universal time
- * 
- * @param timeout the number of seconds within which the last
- * authentication should have been made
- *
- * @return 0 if there has been no previous authentications either in the
- * server lifetime or within the timeout period. 
- *
- * @return a pointer to the cached identity object
- **/
-CIdentity* CAuthServer::CachedIdentity( const TTimeIntervalSeconds& aTimeOut)
-    {
-    // process request
-    TTime currentTime;
-	if(currentTime.UniversalTimeSecure() == KErrNoSecureTime)
-		{
-		// Fall back to nonsecure time. 
-		currentTime.UniversalTime();
-		}
-    
-    CIdentity* id = 0;
-  
-    TTimeIntervalSeconds timeSinceLast;
-    currentTime.SecondsFrom(iLastAuthTime, timeSinceLast);    
-   
-    if (timeSinceLast.Int() >= 0 && timeSinceLast < aTimeOut)
-		{
-		id = iLastIdentity;
-		}
-    
-    return id;
-    }
-    
-
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::DeauthenticateL(const RMessage2& aMessage)
-	{
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-
-	delete iLastIdentity;
-	iLastIdentity = 0;
-	iLastAuthTime = 0L;
-
-	ClearPropertiesL();	
-	aMessage.Complete(KErrNone);
-	}
-
-HBufC* CAuthServer::StringOrNullLC(TBool aReturnString, TIdentityId aId)
-    {
-	HBufC* str = 0;
-	if (aReturnString)
-		{
-		TRAPD(err, str = iAuthDb2->DescriptionL(aId));  
-		if (!err)
-			{
-			CleanupStack::PushL(str);
-			}
-		
-		}
-	if (str == 0)
-		{
-		str = HBufC::NewLC(0);  
-		}
-	return str;
-    }
-
-void CAuthServer::AuthenticateL(const RMessage2& aMessage)
-    {
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-		
-	TInt KAuthParams = 1; 
-	TInt paramsLen = aMessage.GetDesLength(KAuthParams);
-	
-	if(paramsLen != KErrBadDescriptor)
-		{
-		//Create a buffer.
-		HBufC8* buffer = HBufC8::NewLC(paramsLen);
-		TPtr8 bufDes(buffer->Des());
-			
-		aMessage.ReadL(EIpcArgument1, bufDes);
-		
-		//Internalize the params object.
-		RDesReadStream readStream(*buffer);
-		CleanupClosePushL(readStream);
-		iParams->InternalizeL(readStream);
-		CleanupStack::PopAndDestroy(2, buffer);	
-		}
-    
-	CIdentity* id = CachedIdentity(iParams->iTimeout);
-  
-	if (id == 0) // no valid cache available
-		{
-		const TInt KAuthExprParam = 0;
-	
-		// reconstruct the authentication expression
-		TInt extLen = aMessage.GetDesLengthL(KAuthExprParam);
-		HBufC8* extSrv = HBufC8::NewLC(extLen);
-		TPtr8 desSrv8 = extSrv->Des();
-		aMessage.ReadL(KAuthExprParam, desSrv8);
-		
-		RDesReadStream drs(desSrv8);
-		CAuthExpression* authExpr = CAuthExpressionImpl::NewL(drs);
-		// don't need the stream any more, so free it
-		CleanupStack::PopAndDestroy(extSrv);
-		CleanupStack::PushL(authExpr);
-
-		const CAuthExpressionImpl* expr = static_cast<const CAuthExpressionImpl*>(authExpr);
-		
-		iAuthTransaction = CAuthTransaction::NewL(aMessage,
-												  iParams->iClientKey,
-												  iParams->iClientSid.iUid,
-												  iParams->iWithString,
-												  *iParams->iClientMessage,
-												  expr);
-		CleanupStack::Pop(authExpr);
-		
-		iEvaluator->Evaluate(expr);
-		
-		return;
-        }
-        
-	else if (iParams->iClientKey && (id->Id() != KUnknownIdentity))
-		{
-		
-		HBufC* str = StringOrNullLC(iParams->iWithString, id->Id());
-		CIdentity* id2 = 0;
-		
-		TInt clientId = aMessage.SecureId();
-		
-		if(iParams->iClientSid.iUid != 0)
-			{
-			clientId = iParams->iClientSid.iUid;
-			}
-		
-		id2 = CIdentity::NewL(id->Id(), id->Key().ClientKeyL(clientId), str);
-			
-		CleanupStack::Pop(str);
-		CleanupStack::PushL(id2);
-		// id pointer already stored as iLastIdentity
-		id = id2; 
-		}
-  
-	CompleteAuthenticationL(aMessage, id);
-  
-	if (id != iLastIdentity) 
-		{
-		// only clean up the allocated id if it has not been transferred to us.
-		CleanupStack::PopAndDestroy(id);  
-		}
-   
-	}
-
-// -------- plugin lists --------
-
-
-/**
-	Build an array containing descriptions for the
-	plugins available on the system and send it to
-	the client.
-	
-	@param	aMessage		Message describing client
-							request.
-	@param	aFilter			Function which decides whether
-							or not to include a plugin in the
-							list.
- */
-void CAuthServer::FilterPluginsL(
-	const RMessage2& aMessage, CAuthServer::TInterfaceFilter aFilter)
-
-	{
-	RCPointerArray<const CPluginDesc> descs;
-	GetDescriptionsFromEComLC(aFilter, descs);
-	AuthServerUtil::SendDataPointerArrayL(aMessage, descs, 0);
-	CleanupStack::PopAndDestroy(&descs);
-	}
-
-
-/**
-	Populate the supplied array with plugin descriptions generated
-	from the available ECOM plugins.
-	
-	@param	aFilter			Predicate function decides whether or not
-							to include each plugin in the list.
-	@param	aDescs			Array to populate.  When this function is
-							called, any existing entries are removed.
-							If this function leaves then any entries are
-							removed from the array.  On success, the
-							array is on the cleanup stack.
- */
-void CAuthServer::GetDescriptionsFromEComLC(
-	CAuthServer::TInterfaceFilter aFilter,
-	RCPointerArray<const CPluginDesc>& aDescs)
-	{
-	aDescs.Reset();
-	CleanupClosePushL(aDescs);
-	
-	// ownership of the data pointed by this array is with 
-	// the plugin manager. 
-	const RPointerArray<CImplementationInformation>& implInfo = iPluginMgr->ImplementationsL();
-	TInt implCount = implInfo.Count();
-	
-	for (TInt i = 0; i < implCount; ++i)
-		{
-		// avoid RVCT warning C2874W: pi may be used before being set
-		CAuthPluginInterface* pi = 0;
-		
-		TRAPD(r, pi = iPluginMgr->ImplementationL(i));
-		
-		// skip plugins which are not available
-		if (KErrNone != r)
-			continue;
-		
-		if (! (this->*aFilter)(*pi))
-			{
-			continue;
-			}
-		
-		// get training status from db
-		TAuthTrainingStatus ts = iAuthDb2->PluginStatusL(pi->Id());
-		
-		CPluginDesc* pd = CPluginDesc::NewL(
-			pi->Id(), pi->Name(), pi->Type(),
-			ts, pi->MinEntropy(),
-			pi->FalsePositiveRate(), pi->FalseNegativeRate() );
-				
-		CleanupStack::PushL(pd);
-		aDescs.AppendL(pd);
-		CleanupStack::Pop(pd);
-		}
-	
-	}
-
-
-
-/**
-	Build an array containing plugin descriptions for
-	each plugin which is available on the system, and
-	copy this into the client's space.
-	
-	@param	aMessage		Client message.  This contains
-							the client-side buffer.
- */
-void CAuthServer::PluginsL(const RMessage2& aMessage)
-	{
-	FilterPluginsL(aMessage, &CAuthServer::FilterAllPlugins);
-	}
-
-
-/**
-	Predicate function used by PluginsL.. This accepts all plugins.
-	
-	@return					Always ETrue.
-	@see PluginsL
- */
-TBool CAuthServer::FilterAllPlugins(const CAuthPluginInterface&)
-	{
-	return ETrue;
-	}
-
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::ActivePluginsL(const RMessage2& aMessage)
-	{
-	FilterPluginsL(aMessage, &CAuthServer::FilterActivePlugins);
-	}
-
-
-/**
- * Indicates a plugin is active. 
- *
- * @param aInterface the auth plugin interface to check
- * @return true if aInterface.IsActive()
- **/
-TBool CAuthServer::FilterActivePlugins(const CAuthPluginInterface& aInterface)
-	{
-	return aInterface.IsActive();
-	}
-
-
-/**
-	Build an array which containing plugin descriptions
-	for each plugin which is available and has the type
-	supplied by the client.
-	
-	@param	aMessage		Client message.  This contains
-							the plugin type and points to the
-							client-side buffer.
- */
-void CAuthServer::PluginsByTypeL(const RMessage2& aMessage)
-	{
-	iFilterType = static_cast<TAuthPluginType>(aMessage.Int1());
-	FilterPluginsL(aMessage, &CAuthServer::FilterPluginsByType);
-	}
-
-
-/**
-	Predicate which checks whether the supplied description should
-	be included in the result list.
-	
-	The type to filter on is stored as a member variable.
-	
-	@param	aInterface		Interface to check.
-	@return					Zero if interface's type does not match
-							filter type, non-zero otherwise.
-	@see PluginsByTypeL
- */
-TBool CAuthServer::FilterPluginsByType(const CAuthPluginInterface& aInterface)
-	{
-	return (aInterface.Type() == iFilterType);
-	}
-
-
-/**
-	Build an array which contains plugin descriptions
-	for each plugin which has the supplied training status,
-	and write that array into the caller's space.
-	
-	@param	aMessage		Client message contains the status
-							to filter on.
- */
-void CAuthServer::PluginsByTrainingL(const RMessage2& aMessage)
-	{
-	iFilterTraining = static_cast<TAuthTrainingStatus>(aMessage.Int1());
-	FilterPluginsL(aMessage, &CAuthServer::FilterPluginsByTraining);
-	}
-
-
-/**
-	Predicate checks if the supplied interface describes
-	a plugin with the required training status.
-	
-	@param	aInterface		Interface to check.
-	@return					Zero if interface's training status
-							does not match the filter status;
-							non-zero otherwise.
-	@see PluginsByTrainingL
- */
-TBool
-CAuthServer::FilterPluginsByTraining(const CAuthPluginInterface& aInterface)
-	{
-	// training status is stored in the db, not in the ECOM interface.
-	// If this function returns non-zero, the same request will be made
-	// on the DB to get the status again to construct the description.
-	// This is suboptimal, and could be improved by special-casing the
-	// training filter if required.
-
-	TAuthTrainingStatus ts = EAuthUntrained;
-	TRAPD(err, ( ts = iAuthDb2->PluginStatusL(aInterface.Id())));
-	return err == KErrNone ? ts == iFilterTraining : EFalse;
-	}
-
-
-/**
-	Populate a client-side array with the set of identities.
-	
-	@param	aMessage		Client message which points to the
-							user-side array.
- */
-void CAuthServer::IdentitiesL(const RMessage2& aMessage)
-	{
-    RArray<TIdentityId> ids;
-    iAuthDb2->IdentitiesL(ids);
-    CleanupClosePushL(ids);
-    AuthServerUtil::SendDataArrayL(aMessage, ids, 0);
-    CleanupStack::PopAndDestroy(&ids);
-	}
-/**
-	Retrieve the preferred plugin for the specified type
-	
-	@param	aMessage		Client message
- */
-void CAuthServer::PreferredTypePluginL(const RMessage2& aMessage)
-	{
-    TPluginId id =
-	  iAuthDb2->PreferredPluginL(static_cast<TAuthPluginType>(aMessage.Int0()));
-	
-	TPckg<TPluginId> idPckg(id);
-	aMessage.WriteL(1, idPckg);
-	aMessage.Complete(KErrNone);
-	}
-
-/**
-	Set the preferred plugin for the specified type
-	
-	@param	aMessage		Client message
- */
-void CAuthServer::SetPreferredTypePluginL(const RMessage2& aMessage)
-	{
-	TInt            err        = KErrArgument;
-	TAuthPluginType pluginType = static_cast<TAuthPluginType>(aMessage.Int0());
-	TPluginId       pluginId   = aMessage.Int1();
-	
-	if (iPluginMgr->PluginL(pluginId)->Type() == pluginType)
-		{
-		iAuthDb2->SetPreferredPluginL(pluginType,pluginId);
-		err = KErrNone;
-		}
-	aMessage.Complete(err);
-	}
-
-/**
-	Retrieve description for a supplied identity.
-	
-	@param	aMessage		Client message which contains the
-							identity and points to a client-side
-							buffer, to which the description will
-							be copied.
- */
-void CAuthServer::IdentityStringL(const RMessage2& aMessage)
-	{
-	HBufC* desc = iAuthDb2->DescriptionL(aMessage.Int1());
-	CleanupStack::PushL(desc);
-	aMessage.WriteL(EIpcArgument0, *desc);	
-	CleanupStack::PopAndDestroy(desc);
-	aMessage.Complete(KErrNone);	
-	}
-
-/**
-	Retrieve description & id for all identities.
-	
-	@param	aMessage		Client message which contains the
-							identity and points to a client-side
-							buffer, to which the description will
-							be copied.
- */
-void CAuthServer::IdentitiesWithStringL(const RMessage2& aMessage)
-	{
-	RIdAndStringArray result;
-
-	iAuthDb2->IdentitiesWithDescriptionL(result);
-	CleanupClosePushL(result);
-
-	AuthServerUtil::SendDataPointerArrayL(aMessage,result,0);
-	CleanupStack::PopAndDestroy(&result);
-	}
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::SetIdentityStringL(const RMessage2& aMessage)
-	{
-	HBufC* str = HBufC::NewLC(aMessage.GetDesLengthL(1));
-	TPtr strDes = str->Des();
-	TInt err = aMessage.Read(1, strDes);
-
-	if (err == KErrNone)
-	  {
-	  iAuthDb2->SetDescriptionL(aMessage.Int0(), *str);
-	  }	
-	CleanupStack::PopAndDestroy(str);
-	aMessage.Complete(err);
-	}
-
-
- 
-/**
-	Copies the authentication alias list obtained using 
-	ListAliasL() method to a client-side buffer .
-	
-	@param	aMessage		Client message which points to a client-side
-							buffer, to which the authentication strength 
-							list will be copied.
- */
- 
-void CAuthServer::ListAuthAliasesL(const RMessage2& aMessage)
-	{
-	RPointerArray<HBufC> aliasList;
-	CleanupResetAndDestroyPushL(aliasList);
-	
-	//get the list of available authentication strengths from the cenrep file.
-	iAuthRepository->ListAliasL(aliasList);
-
-	AuthServerUtil::SendDataPointerArrayL(aMessage, aliasList, EIpcArgument0);
-	CleanupStack::PopAndDestroy(&aliasList);
-	}
-	
-/**
-	Resolves any alias occurrence in the expression to its corresponding
-	value. 
-	
-	@param	aMessage	Client message which contains the free form
-						authentication expression and points to a 
-						client-side buffer, to which the string will 
-						be copied.
-	
- */
-void CAuthServer::ResolveExpressionL(const RMessage2& aMessage)
-	{
-	
-	// the auth strength passed by the client. 
-	TInt length = aMessage.GetDesLength(EIpcArgument1);
-	HBufC* clientExpression = HBufC::NewLC(length);
-	TPtr clientExprPtr(clientExpression->Des());
-
-	aMessage.ReadL(EIpcArgument1, clientExprPtr);
-	
-	RBuf resultantString;
-	CleanupClosePushL(resultantString);
-	
-	resultantString.CreateL(KDefaultBufferSize/2);
-		
-	// get the alias list
-	RPointerArray<HBufC> aliasList;
-	CleanupResetAndDestroyPushL(aliasList);
-	
-	//get the list of available authentication strength from the cenrep file.
-	iAuthRepository->ListAliasL(aliasList);
-		
-		
-	// parse the client side expression to see whether there
-	// are any alias, if present process them accordingly.
-	TLex input(clientExprPtr);
-	
-	// append the open bracket first so that the entire expression is within brackets.
-	resultantString.Append(KOpenBracket);
-	
-	for(TPtrC token = input.NextToken(); token.Size() > 0; token.Set(input.NextToken()))
-		{
-		
-		if(	token.CompareF(KOpenBracket) == 0 ||
-			token.CompareF(KCloseBracket) == 0 ||
-			token.CompareF(KAuthOpAnd) == 0 ||
-			token.CompareF(KAuthOpOr) == 0
-			)
-			{
-			int reqdBufferLength = resultantString.Length() + token.Length();			
-			
-			if(resultantString.MaxLength() < reqdBufferLength)
-				{
-				if(resultantString.MaxLength() == 0)
-					{
-					resultantString.Close();
-					}
-				resultantString.ReAllocL(reqdBufferLength);
-				}
-						
-			resultantString.Append(token);
-			}
-		else if(token.CompareF(KAuthBiometric) == 0 ||
-				token.CompareF(KAuthDefault) == 0 ||
-				token.CompareF(KAuthKnowledge) == 0 ||
-				token.CompareF(KAuthToken) == 0 ||
-				token.CompareF(KAuthPerformance) == 0	)
-			{
-			RBuf tokenType;
-			CleanupClosePushL(tokenType);
-			TokenizeStringL(token, tokenType);
-			int reqdBufferLength = resultantString.Length() + tokenType.Length();
-			if(resultantString.MaxLength() < reqdBufferLength)
-				{
-				if(resultantString.MaxLength() == 0)
-					{
-					resultantString.Close();
-					}
-				resultantString.ReAllocL(reqdBufferLength);
-				}
-			
-			resultantString.Append(tokenType);
-			CleanupStack::PopAndDestroy(&tokenType);
-			}
-		else
-			{
-			// should not be a number
-			TInt32 val = 0;
-			TLex value(token);
-			if(value.Val(val) == KErrNone)
-				{
-				RBuf tokenPluginId;
-				CleanupClosePushL(tokenPluginId);
-				TokenizeStringL(token, tokenPluginId);
-				int reqdBufferLength = resultantString.Length() + tokenPluginId.Length();
-				if(resultantString.MaxLength() < reqdBufferLength)
-					{
-					if(resultantString.MaxLength() == 0)
-						{
-						resultantString.Close();
-						}
-					resultantString.ReAllocL(reqdBufferLength);
-					}
-				resultantString.Append(tokenPluginId);
-				CleanupStack::PopAndDestroy(&tokenPluginId);
-				continue;
-				}
-			
-			RBuf aliasString;
-			CleanupClosePushL(aliasString);
-				
-			// this is a alias value which should be processed
-			ResolveAliasL(token, aliasList, aliasString);
-			int reqdBufferLength = resultantString.Length() + aliasString.Length();
-			if(resultantString.MaxLength() < reqdBufferLength)
-				{
-				if(resultantString.MaxLength() == 0)
-					{
-					resultantString.Close();
-					}
-				resultantString.ReAllocL(reqdBufferLength);
-				}
-			resultantString.Append(aliasString);
-			CleanupStack::PopAndDestroy(&aliasString);
-			}
-		}
-	
-	int reqdBufferLength = resultantString.Length() + KCloseBracket().Length();
-	
-	if(resultantString.MaxLength() < reqdBufferLength)
-		{
-		if(resultantString.MaxLength() == 0)
-			{
-			resultantString.Close();
-			}
-		resultantString.ReAllocL(reqdBufferLength);
-		}
-										
-	// append the close bracket in the end so that the entire expression is within brackets.
-	resultantString.Append(KCloseBracket);
-					
-	//see if we have enough space on the client.
-	length = resultantString.Length();
-	if(aMessage.GetDesMaxLengthL(EIpcArgument0) < length)
-		{
-		TPckg<TInt> lenPckg(length);
-		aMessage.WriteL(EIpcArgument0, lenPckg);
-		aMessage.Complete(KErrOverflow);
-		}
-	
-	aMessage.WriteL(EIpcArgument0, resultantString);	
-	CleanupStack::PopAndDestroy(3, clientExpression);	//aliasList, resultantString.
-	aMessage.Complete(KErrNone);
-	}
-
-/**
-	Inserts space in between operators and inserts brackets for as 
-	expression
-	
-	@param	aStringToBeProcessed	string to be tokenized.
-	@param  aResultantString		would contain the final tokenized
-									string
- */
-
-void CAuthServer::TokenizeStringL( const TDesC& aStringToBeProcessed, RBuf& aResultantString )
-	{
-	TInt newLength = aStringToBeProcessed.Length() + 2;
-	HBufC* resultantBuffer = HBufC::NewLC(newLength);
-	TPtr resultantBufPtr(resultantBuffer->Des());
-	resultantBufPtr.Append(KOpenBracket);
-	resultantBufPtr.Append(aStringToBeProcessed);
-	TInt index = resultantBufPtr.Length();
-	resultantBufPtr.Append(KCloseBracket);
-	
-	CAuthExpressionImpl::InsertSpaceBetweenOperatorsL(*resultantBuffer, aResultantString);
-	CleanupStack::PopAndDestroy(resultantBuffer);
-	
-	}
-
-/**
-	Retrieves the alias string corresponding to the 
-	supplied authentication strength.
-	
-	@param	aMessage	Client message which contains the
-						authentication strength and points to a 
-						client-side buffer, to which the alais
-						string will be copied.
-	
- */
- 	
-void CAuthServer::ResolveAliasL(const TDesC& aAliasName, 
-								RPointerArray<HBufC>& aAliasList, 
-								RBuf& aResultantString)
-	{
-	HBufC* aliasString = HBufC::NewLC(KDefaultBufferSize/2);
-	TPtr aliasStringPtr(aliasString->Des());
-	
-	TBool aliasFound = EFalse;
-		
-	// find a match for the client supplied alias from the aliasList.
-	for(TInt i = 0; i < aAliasList.Count(); ++i)
-		{
-		if(aAliasName.CompareF(*aAliasList[i]) != 0)
-			{
-			continue;
-			}
-		
-		aliasFound = ETrue;
-		// retrieve the alias string corresponding to a given authentication strength.
-		iAuthRepository->GetAliasDefinitionL(i, aliasStringPtr);
-		if(aliasStringPtr.Length() == 0)
-			{
-			User::Leave(KErrAuthStrengthAliasNotDefined);
-			}
-			
-		// enclose the alias string within brackets.This would facilitate easy evaluation 
-		// of the alias string expression.
-		TInt newLength = aliasStringPtr.Length() + 2;
-		if(newLength > aliasStringPtr.MaxLength())
-			{
-			aliasString->ReAllocL(newLength);
-			}
-			
-		aliasStringPtr.Insert(0, KOpenBracket);
-		TInt index = aliasStringPtr.Length();
-		aliasStringPtr.Insert(index, KCloseBracket);
-		
-		// tokenize aliasString, to facilitate parsing using TLex.
-		CAuthExpressionImpl::InsertSpaceBetweenOperatorsL(*aliasString, aResultantString);
-				
-		if(aResultantString.Length() > aliasStringPtr.MaxLength())
-			{
-			aliasString = aliasString->ReAllocL(aResultantString.Length());
-			}
-		
-		aliasStringPtr.Copy(aResultantString);
-		aResultantString.Close();
-		
-		// aliasString contains an alias, so process it until we end up 
-		// with an expression containing plugin Id or plugin Type or a combination of both.		
-		ProcessAliasStringL(aAliasList, *aliasString, aResultantString);
-				
-		// ensure that the aliasString processing doesn't end in an infinite loop.
-		// In case it does , leave with KErrAuthServInvalidAliasStringExpression.
-		// For instance : fast = (medium & weak), medium = fast i.e 
-		// medium = (medium & weak).
-				
-		if(aResultantString.FindC(aAliasName) != KErrNotFound)
-			{
-			User::Leave(KErrAuthServInvalidAliasStringExpression);
-			}
-							
-		TBool found = CheckForAliasInAliasString(aAliasList, aResultantString);
-		// 'resultantAliasString' may inturn contain an alias.So loop through the ProcessAliasStringL,
-		// until  we end up with an alias string containing only plugin Id,plugin Type or a combination of both.
-		while(found)
-			{
-			for(TInt j = 0; j < aAliasList.Count(); ++j)
-				{
-				if(aResultantString.FindC(*aAliasList[j]) != KErrNotFound)
-					{
-					if(aResultantString.Length() > aliasStringPtr.MaxLength())
-						{
-						aliasString->ReAllocL(aResultantString.Length());
-						}
-							
-					aliasStringPtr.Copy(aResultantString);
-					aResultantString.Close();
-										
-					CAuthExpressionImpl::InsertSpaceBetweenOperatorsL(*aliasString, aResultantString);
-					if(aResultantString.Length() > aliasStringPtr.MaxLength())
-						{
-						aliasString->ReAllocL(aResultantString.Length());
-						}
-						
-					aliasStringPtr.Copy(aResultantString);
-					aResultantString.Close();
-								
-				 	ProcessAliasStringL(aAliasList, *aliasString, aResultantString);
-					// ensure that the aliasString processing doesn't end in an infinite loop.
-					// In case it does , leave with KErrArgument.
-					// For instance : fast = (medium & weak), medium = fast i.e 
-					// medium = (medium & weak).
-					if(aResultantString.FindC(aAliasName) != KErrNotFound)
-						{
-						User::Leave(KErrAuthServInvalidAliasStringExpression);
-						}
-					break;
-					}
-				}
-					
-				// check if 'resultantExpr' still contains an alias.
-			found = CheckForAliasInAliasString(aAliasList, aResultantString);				
-			
-			}
-				
-		break;
-		}
-	
-	CleanupStack::PopAndDestroy(aliasString);
-	
-	//if the client supplied alias is not in the alias list, leave.
-	if(!aliasFound)
-		{
-		User::Leave(KErrUnknownAuthStrengthAlias);
-		}
-
-	}
-
-// Resets the training data for the supplied identity.
-//	
-// @param aMessage Client message which contains the details of 
-//					identity and plugins for doing the reset
-void CAuthServer::ResetIdentityL(TInt aFunction, const RMessage2& aMessage)
-	{
-	// Check if either an authentication or a training is going on
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-
-	// For reset by type only EAuthKnowledge type is supported
-	if (aFunction == EResetIdentityByType)
-		{
-		TAuthPluginType pluginType = static_cast<TAuthPluginType>(aMessage.Int1());
-		if (pluginType != EAuthKnowledge)
-			{
-			aMessage.Complete(KErrAuthServResetMayLoseIdentity);
-			return;
-			}
-		}
-
-	// Get the list of trained plugins for this identity
-	TIdentityId identityId = static_cast<TIdentityId>(aMessage.Int0());
-	RArray<TPluginId> trainedPluginIdList;
-	CleanupClosePushL(trainedPluginIdList);
-	iAuthDb2->TrainedPluginsListL(identityId, trainedPluginIdList);
-
-	// Ensure at least one plugin knows identity
-	TInt numTrained = trainedPluginIdList.Count();
-	if (numTrained < 1)
-		{
-		CleanupStack::PopAndDestroy(&trainedPluginIdList);
-		aMessage.Complete(KErrAuthServIdentityNotFound);
-		return;
-		}
-
-	// Try and ensure that after reset at least one plugin has an identity trained
-	// Since all the trained plugins for the identity are being reset make sure
-	// at least one of them is of the knowledge type to be reasonably sure it registers 
-	// the new identity data
-	TBool knowledgePluginFound = EFalse;
-	for (TInt index = 0; index < numTrained; ++index)
-		{
-		TPluginId pluginId = trainedPluginIdList[index];
-		CAuthPluginInterface* plugin = iPluginMgr->PluginL(pluginId);
-		if (plugin->Type() == EAuthKnowledge)
-			{
-			knowledgePluginFound = ETrue;
-			break;
-			}
-		}
-	if (!knowledgePluginFound)
-		{
-		CleanupStack::PopAndDestroy(&trainedPluginIdList);
-		aMessage.Complete(KErrAuthServResetMayLoseIdentity);
-		return;
-		}
-
-	// Get the registration data
-	HBufC* regData = NULL;
-	TInt ipcArg = (aFunction == EResetIdentity) ?  EIpcArgument1:EIpcArgument2;
-	regData = HBufC::NewLC(aMessage.GetDesLengthL(ipcArg));
-	TPtr regPtr = regData->Des();
-	aMessage.ReadL(ipcArg, regPtr);
-
-	// Finally start the reset process
-	// Generate a new protection key
-	CProtectionKey* protKey = CProtectionKey::NewLC(iKeySize);
-	TInt lastErr = KErrNone;
-	TBool oneSuccess = EFalse; // To keep track if at least one reset succeeded
-	for (TInt index = 0; index < numTrained; ++index)
-		{
-		TPluginId pluginId = trainedPluginIdList[index];
-		CAuthPluginInterface* plugin = iPluginMgr->PluginL(pluginId);
-		HBufC8* result = NULL;
-		TInt err = KErrNone;
-		// For reset by type the registration data needs to be specified only for the plugins of specified type
-		// and this restricted to knowledge type only
-		if ((aFunction == EResetIdentity) ||
-			((aFunction == EResetIdentityByType) && (plugin->Type() == EAuthKnowledge)))
-			{
-			err = plugin->Reset(identityId, *regData, result);
-			}
-		else
-			{
-			err = plugin->Reset(identityId, KNullDesC, result);
-			}
-		if (err == KErrNone && result)
-			{
-			oneSuccess = ETrue;
-			// Use the plugin data to generate transient key and then encrypt the protection key
-			// using the transient key. A plugin may not return data if it does not use the supplied
-			// registration information 
-			CleanupStack::PushL(result);
-			CTransientKeyInfo* keyInfo = CreateKeyInfoLC(pluginId, *result, *protKey);
-			// Replace the trained information in the db
-			iAuthDb2->SetTrainedPluginL(identityId, pluginId, *keyInfo);
-			CleanupStack::PopAndDestroy(2, result); // keyInfo
-			}
-		else if (err == KErrNone)
-			{
-			oneSuccess = ETrue;
-			// Remove the entry in the auth db for the plugin
-			// Ignore errors
-			TRAP_IGNORE(iAuthDb2->RemoveTrainedPluginL(identityId, pluginId));
-			}
-		else
-			{
-			// Remember the last error
-			lastErr = err;
-			}
-		}
-
-	CleanupStack::PopAndDestroy(3, &trainedPluginIdList); // regData, protKey
-	
-	// If none of the plugins reset correctly then return the last error
-	if (oneSuccess)
-		{
-		lastErr = KErrNone;
-		}
-	
-	aMessage.Complete(lastErr);
-	}
-
-// Resets the training data for the supplied identity.
-//	
-// @param aMessage Client message which contains the details of 
-//					identity and plugins for doing the reset
-void CAuthServer::ResetIdentityByListL(const RMessage2& aMessage)
-	{
-	// Check if either an authentication or a training is going on
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-
-	// Get the list of trained plugins for this identity
-	TIdentityId identityId = static_cast<TIdentityId>(aMessage.Int0());
-	RArray<TPluginId> trainedPluginIdList;
-	CleanupClosePushL(trainedPluginIdList);
-	iAuthDb2->TrainedPluginsListL(identityId, trainedPluginIdList);
-
-	// Ensure at least one plugin knows identity
-	TInt numTrained = trainedPluginIdList.Count();
-	if (numTrained < 1)
-		{
-		CleanupStack::PopAndDestroy(&trainedPluginIdList);
-		aMessage.Complete(KErrAuthServIdentityNotFound);
-		return;
-		}
-
-	// Extract the array of plugin ids and their registration information
-	RArray<TPluginId> pluginIdList;
-	CleanupClosePushL(pluginIdList);
-	HBufC8* buf = HBufC8::NewLC(aMessage.GetDesLengthL(EIpcArgument1));
-	TPtr8 ptr = buf->Des();
-	aMessage.ReadL(EIpcArgument1, ptr);
-	RDesReadStream stream(*buf);
-	CleanupClosePushL(stream);
-	InternalizeArrayL(pluginIdList, stream);
-	CleanupStack::PopAndDestroy(2, buf); // stream
-
-	RPointerArray<HBufC> regInfoList;
-	CleanupResetAndDestroyPushL(regInfoList);
-	buf = HBufC8::NewLC(aMessage.GetDesLengthL(EIpcArgument2));
-	ptr.Set(buf->Des());
-	aMessage.ReadL(EIpcArgument2, ptr);
-	stream.Open(*buf);
-	CleanupClosePushL(stream);
-	InternalizePointerArrayL(regInfoList, stream);
-	CleanupStack::PopAndDestroy(2, buf); // stream
-
-	// Sanity check
-	if (pluginIdList.Count() != regInfoList.Count())
-		{
-		CleanupStack::PopAndDestroy(3, &trainedPluginIdList); // pluginIdList, regInfoList
-		aMessage.Complete(KErrArgument);
-		return;
-		}
-
-	// Prepare an array of TPluginResetDetails to aid during resetting
-	RPointerArray<TPluginResetDetails> resetDetails;
-	CleanupResetAndDestroyPushL(resetDetails);
-	
-	for (TInt index = 0; index < numTrained; ++index)
-		{
-		TPluginId pluginId = trainedPluginIdList[index];
-		// Check if the trained plugin needs to be sent registration data
-		TInt indexA = pluginIdList.Find(pluginId);
-		
-		TPluginResetDetails *resetDetailsEntry;
-		if (indexA != KErrNotFound)
-			{
-			// Note: Ownership of the descriptor pointers remains with regInfoList
-			resetDetailsEntry = new (ELeave) TPluginResetDetails(pluginId, *regInfoList[indexA]);
-			}
-		else
-			{
-			resetDetailsEntry = new (ELeave) TPluginResetDetails(pluginId, KNullDesC());
-			}
-		CleanupStack::PushL(resetDetailsEntry);
-		resetDetails.AppendL(resetDetailsEntry);
-		CleanupStack::Pop(resetDetailsEntry);
-		}
-
-	// Try and ensure that after reset at least one plugin has an identity trained
-	// Since all the trained plugins for the identity are being reset make sure
-	// at least one of them is of the knowledge type and is being passed the registration data 
-	// to be reasonably sure it registers the new identity data
-	TBool knowledgePluginFound = EFalse;
-	for (TInt index = 0; index < numTrained; ++index)
-		{
-		TPluginId pluginId = resetDetails[index]->PluginId();
-		CAuthPluginInterface* plugin = iPluginMgr->PluginL(pluginId);
-		if ((plugin->Type() == EAuthKnowledge) && (resetDetails[index]->RegistrationData() != KNullDesC))
-			{
-			knowledgePluginFound = ETrue;
-			break;
-			}
-		}
-	if (!knowledgePluginFound)
-		{
-		CleanupStack::PopAndDestroy(4, &trainedPluginIdList); // pluginIdList, regInfoList, resetDetails
-		aMessage.Complete(KErrAuthServResetMayLoseIdentity);
-		return;
-		}
-
-	// Finally start the reset process
-	// Generate a new protection key
-	CProtectionKey* protKey = CProtectionKey::NewLC(iKeySize);
-	TInt lastErr = KErrNone;
-	TBool oneSuccess = EFalse; // To keep track if at least one reset succeeded
-	for (TInt index = 0; index < numTrained; ++index)
-		{
-		TPluginResetDetails* reset = resetDetails[index];
-		TPluginId pluginId = reset->PluginId();
-		CAuthPluginInterface* plugin = iPluginMgr->PluginL(pluginId);
-		HBufC8* result = NULL;
-		TInt err = plugin->Reset(identityId, reset->RegistrationData(), result);
-		if (err == KErrNone && result)
-			{
-			oneSuccess = ETrue;
-			// Use the plugin data to generate transient key and then encrypt the protection key
-			// using the transient key. A plugin may not return data if it does not use the supplied
-			// registration information 
-			CleanupStack::PushL(result);
-			CTransientKeyInfo* keyInfo = CreateKeyInfoLC(pluginId, *result, *protKey);
-			// Replace the trained information in the db
-			iAuthDb2->SetTrainedPluginL(identityId, pluginId, *keyInfo);
-			CleanupStack::PopAndDestroy(2, result); // keyInfo
-			}
-		else if (err == KErrNone)
-			{
-			oneSuccess = ETrue;
-			// Remove the entry in the auth db for the plugin
-			// Ignore errors
-			TRAP_IGNORE(iAuthDb2->RemoveTrainedPluginL(identityId, pluginId));
-			}
-		else
-			{
-			// Remember the last error
-			lastErr = err;
-			}
-		}
-	
-	CleanupStack::PopAndDestroy(5, &trainedPluginIdList); // pluginIdList, regInfoList, resetDetails, protKey
-
-	// If none of the plugins reset correctly then return the last error
-	if (oneSuccess)
-		{
-		lastErr = KErrNone;
-		}
-	
-	aMessage.Complete(lastErr);
-	}
-
-// Generates and returns transient key info using the supplied plugin data and the protection key
-CTransientKeyInfo* CAuthServer::CreateKeyInfoLC(TPluginId aPluginId, const TDesC8& aPluginData, const CProtectionKey& aProtKey)
-	{
-	CTransientKeyInfo* keyInfo = CTransientKeyInfo::NewLC(aPluginId);
-
-	CTransientKey* transKey = keyInfo->CreateTransientKeyL(aPluginData);
-	CleanupStack::PushL(transKey);
-    
-	CEncryptedProtectionKey* encProtKey = transKey->EncryptL(aProtKey);
-	CleanupStack::PushL(encProtKey);
-	
-	keyInfo->SetEncryptedProtectionKeyL(encProtKey);
-	CleanupStack::Pop(encProtKey);
-	CleanupStack::PopAndDestroy(transKey);
-	return keyInfo;
-	}
-
-/**
-	Checks if the value of strength alias inturn contains an alias.
-	
-	@param	aAuthAliasList		an array of authentication strengths as obtained from
-								authserver cenrep file.
-	@param	aAliasString		an alias string containing the alias to be searched for.
-	
- */	
-	
-TBool CAuthServer::CheckForAliasInAliasString(RPointerArray<HBufC>& aAuthAliasList, const TDes& aAliasString)
-	{
-	// find a match for the client supplied alias from the aliasList.
-	for(TInt i = 0; i < aAuthAliasList.Count(); ++i)
-		{
-		TInt found = aAliasString.FindC(*aAuthAliasList[i]);
-		if(found > 0)
-			{
-			return ETrue;
-			}
-		}
-		
-	return EFalse;
-	}
-	
-/**
-	Processes an alias string, This method is called recursively until we end
-	up with an alias string containing only pluginIds and pluginTypes or a 
-	combination of both.
-	
-	
-	@param	aAliasList					an array of authentication strengths as obtained from
-										authserver cenrep file.
-	@param	aAliasStringToBeProcessed	an alias string to be processed.	
-	@param	aResultantAliasString		Buffer to be populated with an alias string resulting from processing aAliasStringToBeProcessed.				
-	 
- */
- 	
-void CAuthServer::ProcessAliasStringL(RPointerArray<HBufC>& aAliasList, const TDesC& aAliasStringToBeProcessed, RBuf& aResultantAliasString)
-	{
-	TBuf<KDefaultBufferSize> exprString;
-	HBufC* aliasString = HBufC::NewLC(KMaxBufferSize);
-	TPtr aliasStringPtr(aliasString->Des());
-		
-	TLex input(aAliasStringToBeProcessed);
-	_LIT(KDelimiter, " ");
-	TBool aliasFoundInString = EFalse;
-	
-	//iterate through the obtained expression to verify if it contains any strength subsets.
-	for(TPtrC token = input.NextToken(); token.Size() > 0; token.Set(input.NextToken()))
-		{
-		TInt resultingLen = 0;
-		aliasFoundInString = EFalse;
-		for(TInt i = 0; i < aAliasList.Count(); ++i)
-			{
-			if(token.FindC(*aAliasList[i]) != KErrNotFound)
-				{
-				aliasFoundInString = ETrue;
-				iAuthRepository->GetAliasDefinitionL(i, exprString);
-				if(exprString.Length() == 0)
-					{
-					User::Leave(KErrAuthStrengthAliasNotDefined);
-					}
-					
-				// resulting length obtained by appending exprString ,KCloseBracket and KOpenBracket to aliasString.
-				resultingLen = (exprString.Length() + 2);
-				if(resultingLen > KMaxBufferSize)
-					{
-					aliasString->ReAllocL(resultingLen);
-					}
-				
-				aliasStringPtr.Append(KOpenBracket);	
-				aliasStringPtr.Append(exprString);
-				aliasStringPtr.Append(KCloseBracket);
-				break;
-				}
-			}
-		
-		//if the token is an operator or a plugin type or pluginId, append it to aResultantExpr.
-		if(!aliasFoundInString)
-			{
-			// resulting length obtained by appending token and delimiter to be aliasString.
-			resultingLen = (exprString.Length() + token.Length() + 1);
-			if(resultingLen > KMaxBufferSize)
-					{
-					aliasString->ReAllocL(resultingLen);
-					}
-					
-			aliasStringPtr.Append(token);
-			aliasStringPtr.Append(KDelimiter);	
-			}
-		}
-	
-	CleanupStack::Pop(aliasString);
-	aResultantAliasString.Assign(aliasString);	
-	
-	}
-	
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::RegisterIdentityL(const RMessage2& aMessage)
-	{
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-
-	TIdentityId id = 0;
-	TPckg<TIdentityId> idPkg(id);
-	TRandom::RandomL(idPkg);
-
-	CProtectionKey* key = CProtectionKey::NewL(iKeySize);
-	
-	iTrainingMgr->RegisterIdentityL(aMessage, id, *key);
-	}
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::CancelL(const RMessage2& aMessage)
-    {
-	TInt err = KErrNone;
-
-	if (iTrainingMgr->IsBusy())
-		{
-		iTrainingMgr->Cancel();
-		}
-	else if (iAuthTransaction != 0)
-		{
-		if (aMessage.SecureId() == iAuthTransaction->Message().SecureId())
-			{
-			iEvaluator->Cancel();
-			}
-		else
-			{
-			// Shouldn't come here since we don't support share-able sessions
-			err = KErrInUse;
-			}
-		}
-	aMessage.Complete(err);
-	}
-
-
-/**
-	Remove the supplied identity from the database.
-	
-	@param	aMessage		Client which contains identity
-							to remove.
- */
-void CAuthServer::RemoveIdentityL(const RMessage2& aMessage)
-	{
-	TInt result = KErrNone;
-	
-	//The identity to be removed
-	TIdentityId id = static_cast<TIdentityId>(aMessage.Int0());
-	
-	//Check if the identity to be removed is not the default identity.
-	TIdentityId defaultIdentity = iAuthDb2->DefaultIdentityL();
-
-	if(defaultIdentity != id)
-		{
-		iAuthDb2->RemoveIdentityL(id);
-
-		if (iLastIdentity && iLastIdentity->Id() == id)
-			{
-			delete iLastIdentity;
-			iLastIdentity = 0;
-			iLastAuthTime = 0L;
-			}
-		iPluginMgr->ForgetIdentityL(id);
-		}
-	else
-		{
-		result = KErrAuthServCanNotRemoveDefaultIdentity;
-		}
-	aMessage.Complete(result);
-	}
-
-/**
- * @return true if either the training mgr or authentication transaction
- * is busy
- **/
-TBool CAuthServer::ServerBusy()
-	{
-	return iTrainingMgr->IsBusy() || iAuthTransaction != 0;
-	}
-
-
-/**
- *
- * @param aMessage the message to process
- **/
-void CAuthServer::TrainPluginL(const RMessage2& aMessage)
-	{
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-
-	if (iLastIdentity == 0 || iLastIdentity->Id() != aMessage.Int0())
-		{
-		// we need a cached identity to get the protection key
-		aMessage.Complete(KErrAuthServAuthenticationRequired);
-		return;
-		}
-	
-	TIdentityId retrainId = aMessage.Int0();
-	
-	//The default identity cannot be retrained.
-	TIdentityId defaultIdentity = iAuthDb2->DefaultIdentityL();
-		
-	if(defaultIdentity == retrainId)
-		{
-		aMessage.Complete(KErrNotSupported);
-		return;
-		}
-	
-	HBufC8* data = HBufC8::NewLC(iLastIdentity->Key().KeyData().Size());
-	*data = iLastIdentity->Key().KeyData(); 
-
-	CProtectionKey* key = CProtectionKey::NewL(data);
-	CleanupStack::Pop(data);
-	
-	iTrainingMgr->TrainPluginL(aMessage, *key);
-	
-    }
-
-
-  
-/**
- * Remove the supplied identity, plugin pair from the
- * authentication database.
- *
- * @param aMessage  Client message which contains the
- * 					identity and the plugin.
- **/
-void CAuthServer::ForgetPluginL(const RMessage2& aMessage)
-	{
-	if (ServerBusy())
-		{
-		aMessage.Complete(KErrServerBusy);
-		return;
-		}
-	
-	TIdentityId id   = static_cast<TIdentityId>(aMessage.Int0());
-	TPluginId plugin = static_cast<TPluginId>(aMessage.Int1());
-	TInt err         = KErrNone;
-
-	TInt numTrained = iAuthDb2->NumTrainedPluginsL(id);
-
-	switch (numTrained)
-	  {
-	case 0:
-	  err = KErrAuthServNoSuchIdentity;
-	  break;
-	case 1:	
-	  err = KErrAuthServCanNotRemoveLastPlugin;	  
-	  break;
-	default:
-	  iAuthDb2->RemoveTrainedPluginL(id, plugin);
-	  iPluginMgr->PluginL(plugin)->Forget(id);
-	  break;
-	  }
-
-	aMessage.Complete(err);
-	}
-
-
-void CAuthServer::EvaluateL(TPluginId aPluginId,
-						   TIdentityId& aIdentityId,
-						   CAuthExpressionImpl::TType aType,
-						   TRequestStatus& aStatus)
-	{
-	
-	if(aPluginId == 0 && aType == CAuthExpressionImpl::ENull)
-		{
-		aPluginId = iAuthRepository->DefaultPluginL();
-		}
-		
-  	CAuthPluginInterface* plugin = iPluginMgr->PluginL(aPluginId);
-
-	if (plugin != 0)
-	  {
-	  const HBufC* clientMessage = iAuthTransaction->ClientMessage();
-	  
-	  HBufC8*& data = iAuthTransaction->AddPluginL(aPluginId, aIdentityId);
-	  	
-	  if (plugin->IsActive())
-		  {
-		  plugin->Identify(aIdentityId, *clientMessage, data, aStatus);
-		  }
-		  
-	  else
-		  {
-		  User::Leave(KErrAuthServPluginNotActive);
-		  }
-	  }
-	}
-/**
- * @see MEvaluatorPluginInterface::Evaluate
- **/
-void CAuthServer::Evaluate(TPluginId aPluginId,
-						   TIdentityId& aIdentityId,
-						   CAuthExpressionImpl::TType aType,
-						   TRequestStatus& aStatus)
-	{
-	TRAPD(err, EvaluateL(aPluginId, aIdentityId, aType, aStatus));
-
-	if (err != KErrNone) 
-	  {
-	  TRequestStatus* status = &aStatus;
-      User::RequestComplete(status, err);
-	  }
-	}
-
-/**
- * Retrieve the preferred plugin for the supplied type and
- * get an identity from it.
- * @see MEvaluatorPluginInterface::Evaluate
- *
- **/
-void CAuthServer::Evaluate(TAuthPluginType aPluginType,
-						   TIdentityId& aIdentityId,
-						   CAuthExpressionImpl::TType aType,	
-						   TRequestStatus& aStatus)
-	{
-	TPluginId id = 0;
-	TRAPD(r, id = iAuthDb2->PreferredPluginL(aPluginType));
-	if (r == KErrNone)
-	    {
-	    Evaluate(id, aIdentityId, aType, aStatus);
-	    }
-	else
-		{
-		// Pass back error (can happen if a user preference hasn't been defined)
-		aStatus = KRequestPending;
-		TRequestStatus* rs = &aStatus;
-		User::RequestComplete(rs, r);
-		}
-	}
-
-/**
- * Completes the message and sends the id on it's way back to the client
- **/
-void CAuthServer::CompleteAuthenticationL(const RMessagePtr2& aMessage,
-										 CIdentity* aId)
-	{
-	// write to client
-	HBufC8* idBuff = HBufC8::NewLC(KDefaultBufferSize);
-	TPtr8  idPtr =  idBuff->Des();
-	RDesWriteStream writeStream(idPtr);
-	writeStream << *aId;
-	writeStream.CommitL();
-
-	TInt clientBuffSize = aMessage.GetDesMaxLength(2);
-  
-	if (clientBuffSize >= idBuff->Size())
-		{
-		aMessage.Write(2, *idBuff);
-		}
-	else
-		{
-		User::Leave(KErrUnderflow);
-		}
-	
-	CleanupStack::PopAndDestroy(idBuff);  
-  
-	aMessage.Complete(KErrNone);
-	}
-
-/**
- * @see MEvaluatorClientInterface::EvaluationSucceeded
- **/
-void CAuthServer::EvaluationSucceeded(TIdentityId aIdentityId)
-	{
-
-	TRAPD(err, EvaluationSucceededL(aIdentityId));
-	
-	switch(err)
-	    {
-	    case KErrNone:
-	        break;
-	    default:
-	        EvaluationFailed(err);
-	    }
-	}
-
-
-/**
- * The full, leaving, implementation of EvaluationSucceeded (which is a trap
- * harness).
- *
- * @param aIdentityId the identity discovered
- **/
-void CAuthServer::EvaluationSucceededL(TIdentityId aIdentityId)
-	{
-
-	CAuthTransaction::RResultArray& results = iAuthTransaction->Results();
-
-	HBufC8* data = 0;
-	TPluginId plugin = KUnknownPluginId;
-
-	TLastAuth lastAuth;
-	lastAuth.iId = aIdentityId;
-	
-	for (TInt i = 0 ; i < results.Count() ; ++i)
-		{
-		if (aIdentityId == *results[i]->iId)
-			{
-			plugin = results[i]->iPlugin;
-			data = results[i]->iData;
-			UpdateAuthL(lastAuth, plugin); 
-			}
-		}
-  
-    CProtectionKey* key = 0;
-
-    // Ensure that the ID and DATA are valid.
-    if (( aIdentityId != KUnknownIdentity ) && ( data != 0 ))
-        {
-        // get the protection key 
-        CTransientKeyInfo* keyInfo = iAuthDb2->KeyInfoL(aIdentityId, plugin);
-		CleanupStack::PushL(keyInfo);
-        		  
-		CTransientKey* transKey = keyInfo->CreateTransientKeyL(*data);
-        CleanupStack::PushL(transKey);
-  
-        key = transKey->DecryptL(keyInfo->EncryptedKey());
-        CleanupStack::PopAndDestroy(2,keyInfo);
-        CleanupStack::PushL(key);
-        
-        // convert to a client key if we need to
-        if (iAuthTransaction->ClientKey())
-           {
-           CProtectionKey* key2 = key->ClientKeyL(iAuthTransaction->ClientSid());
-            
-           CleanupStack::PopAndDestroy(key);
-           key = key2;
-           CleanupStack::PushL(key);
-           }   
-        }
-	else
-	    {
-	    // create a blank key
-	    key = CProtectionKey::NewLC(0);
-	    
-	    // clear the cached identity
-	    delete iLastIdentity;
-        iLastIdentity = 0;
-        iLastAuthTime = 0L;
-        }
-
-	HBufC* str =
-		StringOrNullLC(iAuthTransaction->WithString(), aIdentityId);
-	
-	// create the client identity object
-	CIdentity* identity = CIdentity::NewL(aIdentityId, key, str);
-    CleanupStack::Pop(2, key);
-	CleanupStack::PushL(identity);
-    
-    CompleteAuthenticationL(iAuthTransaction->Message(),
-    					    identity);
-	
-    if (aIdentityId != KUnknownIdentity)
-        {
-		TIdentityId oldId = iLastIdentity ? iLastIdentity->Id() : 0;
-
-        // cache the latest id
-        delete iLastIdentity;
-        iLastIdentity = identity;
-        if(iLastAuthTime.UniversalTimeSecure() == KErrNoSecureTime)
-        	{
-            // Fall back to nonsecure time. 
-            iLastAuthTime.UniversalTime();
-            }
-		// and publish it
-		lastAuth.iAuthTime = iLastAuthTime;
-		TPckg<TLastAuth> authPckg(lastAuth);
-		User::LeaveIfError(iAuthProperty.Set(authPckg));
-
-		// if the identity has changed publish that fact	
-		if (oldId != aIdentityId)
-			{
-			User::LeaveIfError(iAuthEventProperty.Set(aIdentityId));
-			}
-
-		CleanupStack::Pop(identity);
-        }
-	else
-	   {
-		CleanupStack::PopAndDestroy(identity);
-	   }
-	delete iAuthTransaction;
-	iAuthTransaction = 0;
-    }
-
-/**
- * Tells the authserver to cancel the current evaluation (i.e. call to
- * the plugin)
- *
- * @see MEvaluatorPluginInterface::Evaluate
- *
- **/
-void CAuthServer::CancelEvaluate()
-	{
-	if (iAuthTransaction)
-		{
-		TPluginId pluginId = iAuthTransaction->LastPluginId();
-		CAuthPluginInterface* plugin = 0;
-		TRAPD(err, (plugin = iPluginMgr->PluginL(pluginId)));
-		if (err == KErrNone)
-		  {
-			plugin->Cancel();
-		  }
-		}
-	}
-
-
-/**
- * @see MEvaluatorClientInterface::EvaluationFailed
- **/
-void CAuthServer::EvaluationFailed(TInt aReason)
-	{
-	iAuthTransaction->Message().Complete(aReason);
-	delete iAuthTransaction;
-	iAuthTransaction = 0;
-	// there's nothing we can do here. Panic? 
-	TRAP_IGNORE(ClearPropertiesL());
-	}
-	  
-
-void CAuthServer::UpdateAuthL(TLastAuth& aAuth, TPluginId aPlugin)
-	{
-	CAuthPluginInterface* plugin = iPluginMgr->PluginL(aPlugin);
-
-	aAuth.iMaxCombinations =
-		Max(aAuth.iMaxCombinations, plugin->MinEntropy());
-	aAuth.iFalsePositiveRate =
-		Max(aAuth.iFalsePositiveRate, plugin->FalsePositiveRate());
-	aAuth.iFalseNegativeRate =
-		Max(aAuth.iFalseNegativeRate, plugin->FalseNegativeRate());
-	++aAuth.iNumFactors;
-	}
-
-
-/**
- * Free all the uncompressable memory before the 
- * heap mark is set/reset to get the OOM tests to pass.
- **/
-void CAuthServer::FreeMemoryBeforeHeapMark()
-	{
-#ifdef _DEBUG
-	
-	if(iTrainingMgr)
-		{
-		delete iTrainingMgr;
-		iTrainingMgr = 0;
-		}
-
-	if(iPluginMgr)
-		{
-		delete iPluginMgr;
-		iPluginMgr = 0;
-		}
-	
-	if(iLastIdentity)
-		{
-		delete iLastIdentity;
-		iLastIdentity = 0;
-		}
-	
-	iAuthDb2->CloseDbFile();
-	
-	REComSession::FinalClose();
-	
-#endif
-	}
-
-
-/**
- * Recreate all the variables deleted after the heap mark has 
- * been set/reset.
- **/
-void CAuthServer::SetupVariablesAfterHeapMarkEndL()
-	{
-#ifdef _DEBUG
-	
-	//Opening Db file.
-	TFileName dbName(KDbName);
-	dbName[0] = RFs::GetSystemDriveChar();
-	iAuthDb2->OpenDbFileL(iFs, dbName);
-	
-	//Creating plugin manager.
-	if(!iPluginMgr)
-		{
-		iPluginMgr  = CPluginMgr::NewL();
-		}
-	
-	//Creating training manager.
-	if(!iTrainingMgr)
-		{
-		 iTrainingMgr = new (ELeave) CTrainingMgr(*iPluginMgr, *iAuthDb2, *iAuthRepository);
-		}
-#endif	
-	}
-
-/**
- * Things to be done before the heap mark is set/reset 
- * during OOM testing
- **/
-void CAuthServer::DoPreHeapMarkOrCheckL()
-	{
-#ifdef _DEBUG
-	FreeMemoryBeforeHeapMark();
-#endif
-	}
-
-/**
- * Things to be done after the heap mark is set/reset 
- * during OOM testing
- **/
-void CAuthServer::DoPostHeapMarkOrCheckL()
-	{
-#ifdef _DEBUG
-	SetupVariablesAfterHeapMarkEndL();
-#endif
-	}
-
--- a/authenticationservices/authenticationserver/source/server/authserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,271 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthServer class definition
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-#ifndef AUTHSERVER_H
-#define AUTHSERVER_H
-
-#include <e32cmn.h>
-#include <ct/rcpointerarray.h>
-#include <e32property.h>
-#include <f32file.h>
-#include <scs/scsserver.h>
-#include "authserveripc.h"
-#include "authrepository.h"
-
- 
-namespace AuthServer 
-{
-
-/**
- *Panic values associated with the AuthServer
- */
-enum TAuthServerPanic
-	{
-	EPanicCorruptDescriptor = 0,
-	/// An invalid service request number has been receieved by the
-	/// server. This should not be received by those using the RAuthClient or
-	/// derived classes.
-	EPanicInvalidFunction = 1,
-	
-	EPanicAlreadyReceiving = 2,
-	/// An internal error indicating the received authentication expression 
-	/// is malformed. This should not be received by those using the 
-	/// RAuthClient or derived classes.
-	EPanicBadExternalizedAuthExpr = 3,
-	/// A request has been made that refers to a non-existent plugin.
-	EPanicNoSuchAuthPlugin = 4,
-	/// In order to create a first identity, the authserver requires that 
-	/// at least one plugin supports default data. 
-	EPanicNoFirstStartPlugin = 5,
-	/// A call has been made to the authserver's training manager while one 
-	/// is already in progress.
-	EPanicTrainingMgrBusy = 6,
-	/// A plugin has reported that it supports default data but has returned
-	/// an invalid data buffer.
-	EPanicInvalidDefaultData = 7        
-	};
-
-const TInt KPolicyRanges= 12;
-const TInt KPolicyElements = 7;
-
-const TInt KDefaultShutdownDelay = 3 * 1000 * 1000;	// 3 seconds
-
-class CIdentity;
-
-class CPluginMgr;
-class CPluginObserver;
-class CTrainingMgr;
-class CEvaluator;
-class CAuthExpression;
-class CAuthTransaction;
-struct TLastAuth;
-
-// The description for the default identity.
-_LIT(KDefaultUserDescription, "DefaultUser");
-
-/**
- * Helper class to manage details during identity reset operation
- **/
-class TPluginResetDetails
-	{
-public:
-	TPluginResetDetails(TPluginId aPluginId, const TDesC& aRegistrationData):
-		iPluginId(aPluginId),
-		iRegistrationData(aRegistrationData)
-		{}
-
-public:
-	TPluginId PluginId() const { return iPluginId;};
-	const TDesC& RegistrationData() const { return iRegistrationData;};
-
-private:
-	TPluginId iPluginId;
-	const TDesC& iRegistrationData;
-	};
-
-
-/**
- * Provides authentication and identity management services.
- *
- * A CPolicyServer derived class providing management of identity
- * authentication services. Responsible for managing identities in accordance
- * with the requests made by clients.
- * 
- **/
-class CAuthServer : public CScsServer, public MEvaluatorPluginInterface,
-    public MEvaluatorClientInterface
-	{
-public:
-	// implement CScsServer.
-	virtual CScsSession* DoNewSessionL(const RMessage2& aMessage);
-	
-
-	// implement CScsServer.
-	virtual void DoPreHeapMarkOrCheckL();
-	
-	// implement CScsServer.
-	virtual void DoPostHeapMarkOrCheckL();
-	
-
-	static CAuthServer* NewLC(CActive::TPriority = CActive::EPriorityStandard);
-
-	void AuthenticateL(const RMessage2& aMessage);
-	
-	void DeauthenticateL(const RMessage2& aMessage);
-	void CancelL(const RMessage2& aMessage);
-	void PluginsL(const RMessage2& aMessage);
-	void ActivePluginsL(const RMessage2& aMessage);
-	void PluginsByTypeL(const RMessage2& aMessage);
-	void PluginsByTrainingL(const RMessage2& aMessage);
-	void IdentitiesL(const RMessage2& aMessage);
-	void SetIdentityStringL(const RMessage2& aMessage);
-	void IdentityStringL(const RMessage2& aMessage);
-	void RegisterIdentityL(const RMessage2& aMessage);
-	void RemoveIdentityL(const RMessage2& aMessage);
-	void TrainPluginL(const RMessage2& aMessage);
-	void ForgetPluginL(const RMessage2& aMessage);
-	void PreferredTypePluginL(const RMessage2& aMessage);
-	void SetPreferredTypePluginL(const RMessage2& aMessage);
-	void IdentitiesWithStringL(const RMessage2& aMessage);
-	void ListAuthAliasesL(const RMessage2& aMessage);
-	void ResolveExpressionL(const RMessage2& aMessage);
-	void ResetIdentityL(TInt aFunction, const RMessage2& aMessage);
-	void ResetIdentityByListL(const RMessage2& aMessage);
-
-	virtual void Evaluate(TPluginId aPluginId,
-						  TIdentityId& aIdentityId,
-						  CAuthExpressionImpl::TType aType,
-						  TRequestStatus& aStatus);
-	
-	virtual void Evaluate(TAuthPluginType aPluginType,
-						  TIdentityId& aIdentityId,
-						  CAuthExpressionImpl::TType aType,
-						  TRequestStatus& aStatus);
-
-	virtual void CancelEvaluate(); 
-	virtual void EvaluationSucceeded(TIdentityId aIdentityId);
-	virtual void EvaluationFailed(TInt aReason);
-
-private:
-	
-	CAuthServer(CActive::TPriority aPriority);
-
-	/// 2nd phase construction
-	void ConstructL();
-	
-	~CAuthServer();
-
-    CIdentity* CachedIdentity(const TTimeIntervalSeconds& timeout);						   
-
-	TBool FilterActivePlugins(const CAuthPluginInterface& aInterface);
-
-	void FirstStartL();
-	void CreatePropertiesL();
-	void ClearPropertiesL();
-
-	TBool ServerBusy();
-	
-	void EvaluationSucceededL(TIdentityId aIdentityId) ;
-	void CompleteAuthenticationL(const RMessagePtr2& aMessage, CIdentity* aId);
-
-	typedef TBool (CAuthServer::* TInterfaceFilter)(const CAuthPluginInterface&);
-	
-	void FilterPluginsL(
-		const RMessage2& aMessage, TInterfaceFilter aFilter);
-	
-	void GetDescriptionsFromEComLC(
-		TInterfaceFilter aFilter, RCPointerArray<const CPluginDesc>& aDescs);
-	
-	TBool FilterAllPlugins(const CAuthPluginInterface&);
-	TBool FilterPluginsByType(const CAuthPluginInterface&);
-	TBool FilterPluginsByTraining(const CAuthPluginInterface& aInterface);
-
-	void UpdateAuthL(TLastAuth& aAuth, TPluginId aPlugin);
-	
-	HBufC* StringOrNullLC(TBool aReturnString, TIdentityId id);
-
-	void EvaluateL(TPluginId aPluginId,
-				   TIdentityId& aIdentityId,
-				   CAuthExpressionImpl::TType aType,
-				   TRequestStatus& aStatus);
-	
-	void ProcessAliasStringL(RPointerArray<HBufC>& aAuthAliasList, const TDesC& aAliasStringToProcess , RBuf& aResultantAliasString);
-	
-	TBool CheckForAliasInAliasString(RPointerArray<HBufC>& aAuthAliasList, const TDes& aAliasString);
-	CTransientKeyInfo* CreateKeyInfoLC(TPluginId aPluginId, const TDesC8& aPluginData, const CProtectionKey& aProtKey);
-	TCustomResult CustomSecurityCheckL(const RMessage2& aMsg, 
-		TInt& aAction, TSecurityInfo& aMissing);
-	void TokenizeStringL( const TDesC& aStringToBeProcessed, RBuf& aResultantString );
-	void ResolveAliasL(	const TDesC& aAliasName, 
-						RPointerArray<HBufC>& aAliasList, 
-						RBuf& aResultantString);
-	
-
-	void FreeMemoryBeforeHeapMark();
-	void SetupVariablesAfterHeapMarkEndL();
-
-private:
-	RFs iFs;
-	/// The persistent authentication database
-	CAuthDb2*  iAuthDb2;
-	//plugin manager
-	CPluginMgr* iPluginMgr;
-	// The training manager 
-	CTrainingMgr* iTrainingMgr;
-	/// the auth expression evaluator
-	CEvaluator* iEvaluator;
-	/// the last authenticated identity
-	CIdentity* iLastIdentity;
-	/// the last authentication time
-	TTime iLastAuthTime;
-	/// holds the information about the authentication taking place
-	CAuthTransaction* iAuthTransaction;
-	/// used to publish information about the last authentication 
-	RProperty iAuthProperty;
-	/// used to notify subscribers of changes to the authenticated identity
-	RProperty iAuthEventProperty;
-	/// The authentication repository
-	CAuthRepository* iAuthRepository;
-	/// The key size to be used for protection keys
-	TInt iKeySize;
-	/// The parameters from the IPC Call
-	CAuthParams* iParams;
-	
-	
-	TAuthTrainingStatus iFilterTraining;
-	TAuthPluginType iFilterType;
-	CPluginObserver* iPluginObserver;
-	
-	// Server Policies
-	static const TUint iRangeCount;
-	static const TInt iRanges[KPolicyRanges];
-	static const TUint8 iElementsIndex[KPolicyRanges];
-	static const CPolicyServer::TPolicyElement iPolicyElements[KPolicyElements];
-	static const CPolicyServer::TPolicy iPolicy;
-	static const TStaticSecurityPolicy iPropertyWritePolicy;
-	static const TStaticSecurityPolicy iPropertyReadPolicy;
-	};
-} //namespace
-
-#endif // AUTHSERVER_H
--- a/authenticationservices/authenticationserver/source/server/authserver_impl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This header file includes other header files which
-* are required to build the authentication server.
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
-
-#ifndef SERVER_AUTHSERVER_H
-#define SERVER_AUTHSERVER_H
-
-#include <authserver/authplugininterface.h>
-#include <authserver/auth_srv_errs.h>
-#include "authcommon_impl.h"
-#include "arrayutils.h"
-#include "encryptedprotectionkey.h"
-#include "transientkey.h"
-#include "transientkeyinfo.h"
-#include "authdb.h"
-#include "evaluator.h"
-#include "authserver.h"
-#include "authserversession.h"
-#include "pluginmgr.h"
-#include "pluginobserver.h"
-#include "trainingmgr.h"
-
-#endif	// #ifndef SERVER_AUTHSERVER_H
-
--- a/authenticationservices/authenticationserver/source/server/authserversession.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,196 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authserverserversession.cpp
-* CAuthserverSession class implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authserver_impl.h"
-#include "log.h"
-
-using namespace AuthServer;
-
-void CAuthServerSession::PanicClient(const RMessagePtr2& aMessage,
-									 TAuthServerPanic aPanic)
-	{
-	aMessage.Panic(KAuthServerShortName, aPanic);
-	}
-
-//
-// 2nd phase construct for sessions - called by the CServer framework
-//
-void CAuthServerSession::CreateL()
-	{
-	iAuthServer =
-	  static_cast<CAuthServer*>(const_cast<CServer2*>(CSession2::Server()));
-	}
-CAuthServerSession* CAuthServerSession::NewL(CAuthServer &aServer)
-/**
-	Factory function allocates new instance of CAuthServerSession.
-
-	@return					New, initialized instance of CAuthServerSession
-							which is owned by the caller.
- */
-	{
-	CAuthServerSession* self = new(ELeave) CAuthServerSession(aServer);
-	CleanupStack::PushL(self);
-	self->ConstructL();			// CScsSession implementation
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthServerSession::CAuthServerSession(CAuthServer &aServer)
-/**
-	This private constructor prevents direct instantiation.
- */
- :	CScsSession(aServer)
-	{
-	// empty.
-	}
-
-
-CAuthServerSession::~CAuthServerSession()
-	{
-	}
-
-//
-// Handle a client request.
-// Leaving is handled by CAuthServer::ServiceError() which reports
-// the error code to the client
-//
-TBool CAuthServerSession::DoServiceL(TInt aFunction, const RMessage2& aMessage)
-/**
-	Implement CScsSession by handling the supplied message.
-
-	Note the subsession creation command is automatically sent to
-	DoCreateSubsessionL, and not this function.
-
-	@param	aFunction		Function identifier without SCS code.
-	@param	aMessage		Standard server-side handle to message.	 Not used.
- */
-	{
-	TAuthServerMessages func = static_cast<TAuthServerMessages>(aFunction);
-	
-	switch (func)
-		{
-    case EAuthenticate:
-        iAuthServer->AuthenticateL(aMessage);
-        break;
-    case ECancel:
-		iAuthServer->CancelL(aMessage);
-		break;
-	case EPlugins:
-		iAuthServer->PluginsL(aMessage);
-		break;
-	case EActivePlugins:
-		iAuthServer->ActivePluginsL(aMessage);
-		break;
-	case EPluginsByType:
-		iAuthServer->PluginsByTypeL(aMessage);
-		break;
-	case EPluginsByTraining:
-		iAuthServer->PluginsByTrainingL(aMessage);
-		break;
-	case EIdentities:
-		iAuthServer->IdentitiesL(aMessage);
-		break;
-	case EIdentityString:
-		iAuthServer->IdentityStringL(aMessage);
-		break;
-	case ESetIdentityString:
-		iAuthServer->SetIdentityStringL(aMessage);
-		break;
-	case ERegisterIdentity:
-		iAuthServer->RegisterIdentityL(aMessage);
-		break;
-	case ERemoveIdentity:
-		iAuthServer->RemoveIdentityL(aMessage);
-		break;
-	case ETrainPlugin:
-		iAuthServer->TrainPluginL(aMessage);
-		break;
-	case EForgetPlugin:
-		iAuthServer->ForgetPluginL(aMessage); 
-		break;
-    case EDeauthenticate:
-		iAuthServer->DeauthenticateL(aMessage);
-		break;
-	case EGetAuthPreferences:
-		iAuthServer->PreferredTypePluginL(aMessage);
-	    break;
-	case ESetAuthPreferences:
-		iAuthServer->SetPreferredTypePluginL(aMessage);
-		break;
-	case EIdentitiesWithString:
-		iAuthServer->IdentitiesWithStringL(aMessage);
-		break;
-	case EListAuthAliases:
-		iAuthServer->ListAuthAliasesL(aMessage);
-		break;
-	case EResolveExpression:
-		iAuthServer->ResolveExpressionL(aMessage);
-		break;
-	case EResetIdentity:
-	case EResetIdentityByType:
-		iAuthServer->ResetIdentityL(aFunction, aMessage);
-		break;
-	case EResetIdentityByList:
-		iAuthServer->ResetIdentityByListL(aMessage);
-		break;
-	default:
-		PanicClient(aMessage,EPanicInvalidFunction);
-		break;
-		}
-	return EFalse;
-	}
-
-//
-// Handle an error from CAuthServerSession::ServiceL()
-// A bad descriptor error implies a badly programmed client, so panic it;
-// otherwise use the default handling (report the error to the client)
-//
-void CAuthServerSession::ServiceError(const RMessage2& aMessage, TInt aError)
-	{
-	TBool panicClient = ETrue;
-	TAuthServerPanic cliPanicReason = EPanicCorruptDescriptor;	//Init
-	
-	switch (aError)
-		{
-	case KErrBadDescriptor:
-		cliPanicReason = EPanicCorruptDescriptor;
-		break;
-	
-	case KErrAuthServInvalidInternalizeExpr:
-		cliPanicReason = EPanicBadExternalizedAuthExpr;
-		break;
-	case KErrAuthServNoSuchPlugin:
-		cliPanicReason = EPanicNoSuchAuthPlugin;
-		break;
-	
-	default:
-		panicClient = EFalse;
-		}
-	DEBUG_PRINTF3(_L8("Error in CAuthServerSession %d, func %d"), aError, aMessage.Function());
-
-	if (panicClient)
-		PanicClient(aMessage, cliPanicReason);
-	else
-		CScsSession::ServiceError(aMessage, aError);
-	}
--- a/authenticationservices/authenticationserver/source/server/authserversession.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthServerSession class definition
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-#ifndef AUTHSERVERSESSION_H
-#define AUTHSERVERSESSION_H
-
-#include "authserver.h"
-#include <authserver/auth_srv_errs.h>
-#include <scs/scsserver.h>
-
-namespace AuthServer
-{
-
-/**
- * This enum is used to make IPC indexes used as arguments in function calls
- * less obscure.
- * @internalComponent
- * @released
- */
-enum TIpcIndexes
-	{
-	EIpcArgument0 = 0,  ///< IPC indexes arguments 0
-	EIpcArgument1,      ///< IPC indexes arguments 1
-	EIpcArgument2,      ///< IPC indexes arguments 2
-	EIpcArgument3       ///< IPC indexes arguments 3
-	};
-
-
-/**
- * @internalComponent
- * @released
- */
-class CAuthServerSession : public CScsSession
-	{
-public:
-	void CreateL();
-	static CAuthServerSession* NewL(CAuthServer &aServer);
-private:
-	~CAuthServerSession();
-	
-	/**
-	 * Handle a client request.
-	 * Leaving is handled by CAuthServer::ServiceError() which reports
-	 * the error code to the client
-	 **/
-	TBool DoServiceL(TInt aFunction, const RMessage2& aMessage);
-	
-	/**
-	 * Handle an error from CAuthServerSession::ServiceL().
-	 * A bad descriptor error implies a badly programmed client, so panic it;
-	 * otherwise use the default handling (report the error to the client)
-	 **/
-	void ServiceError(const RMessage2& aMessage,TInt aError);
-
- 	void PanicClient(const RMessagePtr2& aMessage, TAuthServerPanic aPanic);
-
- 	CAuthServerSession(CAuthServer &aServer);
- 	
-	CAuthServer* iAuthServer; 
-	};
-	
-	
-} //namespace
-
-#endif // AUTHSERVERSESSION_H
--- a/authenticationservices/authenticationserver/source/server/authtransaction.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthTransaction implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include <s32file.h>
-#include <s32mem.h>
-#include "authtransaction.h"
-#include "authexpression_impl.h"
-#include "authserveripc.h"
-
-using namespace AuthServer;
-
-
-CAuthTransaction* CAuthTransaction::NewL(const RMessage2& aMsg,
-										 TBool aClientKey, 
-										 TInt aClientSid,
-										 TBool aWithString,
-									 	 const TDesC& aClientMessage,
-									 	 const CAuthExpressionImpl* aExpr)
-	{
-	CAuthTransaction* me =
-		new (ELeave) CAuthTransaction(aMsg, aClientKey, aClientSid, aWithString,
-									  aClientMessage, aExpr);
-	return me;
-	}
-	
-
-CAuthTransaction::CAuthTransaction(const RMessage2& aMsg, TBool aClientKey, 
-									TInt aClientSid, TBool aWithString,
-									 const TDesC& aClientMessage, const CAuthExpressionImpl* aExpr) :
-	iMsg(aMsg), iClientKey(aClientKey),
-	iClientSid(aClientSid), iWithString(aWithString),
-	iClientMessage(aClientMessage),	iExpr(aExpr)
-	{
-	 
-	if(iClientSid == 0)
-		{
-		iClientSid = iMsg.SecureId();
-		}
-	}
-	
-HBufC8*& CAuthTransaction::AddPluginL(TPluginId& aPluginId,
-									 TIdentityId& aIdentityId)
-	{
-	TPluginResult* result  = new (ELeave) TPluginResult;
-	CleanupStack::PushL(result);
-	
-	Mem::FillZ(result, sizeof(TPluginResult));
-	result->iPlugin = aPluginId;
-	result->iId = &aIdentityId;
-	iRecords.AppendL(result);
-	CleanupStack::Pop(result);
-	return result->iData;
-	}
-
-
-TPluginId CAuthTransaction::LastPluginId() const
-	{
-	return iRecords[iRecords.Count()-1]->iPlugin; 
-	}
-	
-CAuthTransaction::~CAuthTransaction()
-	{
-	delete iExpr;
-	TInt count = iRecords.Count();
-	for (TInt i = 0 ; i < count ; ++i)
-	    {
-		delete iRecords[i]->iData;
-		delete iRecords[i];
-	    }
-	
-	iRecords.Close();
-	
-	}
--- a/authenticationservices/authenticationserver/source/server/authtransaction.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CAuthTransaction class definition
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-#ifndef AUTHTRANSACTION_H
-#define AUTHTRANSACTION_H
-
-#include <e32cmn.h>
-#include <e32base.h>
-#include "authserver/authtypes.h"
-
-namespace AuthServer 
-{
-
-class CAuthExpressionImpl;
-
-/**
- * This class holds state information about the current asynchronous
- * authentication taking place.
- **/
-class CAuthTransaction : public CBase
-	{
-public:
-	struct TPluginResult
-		{
-		TPluginId iPlugin;
-		TIdentityId* iId;		
-		HBufC8* iData;
-	    }; 
-
-	typedef RPointerArray<TPluginResult> RResultArray;
-	
-	static CAuthTransaction* NewL(const RMessage2& aMsg,
-								  TBool aClientKey, TInt aClientSid,
-								  TBool aWithString, const TDesC& aClientMessage,
-								  const CAuthExpressionImpl* aExpr);
-	
-	HBufC8*& AddPluginL(TPluginId& aPluginId,
-						TIdentityId& aIdentityId);
-					   
-	const RMessagePtr2& Message() { return iMsg; }
-
-	RResultArray& Results() { return iRecords; }
-	
-	TBool ClientKey() { return iClientKey; }
-
-	TBool WithString() { return iWithString; }
-	
-	TInt ClientSid()  { return iClientSid;	}
-
-	const HBufC* ClientMessage() {return static_cast<const HBufC*>(&iClientMessage); }
-
-	TPluginId LastPluginId() const;
-	
-	~CAuthTransaction();
-	
-private:
-
-	CAuthTransaction(const RMessage2& aMsg, TBool aClientKey, TInt aClientSid,
-					 TBool aWithString, const TDesC& aClientMessage,
-					 const CAuthExpressionImpl* aExpr);
-					 
-	void ConstructL(const RMessage2& aMessage);
-	
-	/// the message to complete at the end
-    const RMessagePtr2         iMsg;
-    
-	/// are we returning a client key?
-	TBool                      iClientKey;
-	   
-	TInt					   iClientSid;
-       
-	/// are we returning a client key?
-	TBool                      iWithString;
-	
-    /// the displayable text string to the plugin
-    const TDesC&              	iClientMessage;
-    
-	// the authentication expression being used
-	const CAuthExpressionImpl* iExpr;
-	
-	/// A list of results returned by each plugin called
-    RResultArray               iRecords;
-    
-    };
-
-} //namespace
-
-#endif // AUTHTRANSACTION_H
--- a/authenticationservices/authenticationserver/source/server/encryptedprotectionkey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CEncryptedProtectionKey implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authserver_impl.h"
-
-
-using namespace AuthServer;
-
-CEncryptedProtectionKey* CEncryptedProtectionKey::NewL(HBufC8* aKeyData)
-	{
-	CEncryptedProtectionKey*  key =
-	  CEncryptedProtectionKey::NewLC(aKeyData);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-CEncryptedProtectionKey* CEncryptedProtectionKey::NewLC(HBufC8* aKeyData)
-	{
-	CEncryptedProtectionKey*  key = new (ELeave) CEncryptedProtectionKey();
-	CleanupStack::PushL(key);
-	key->ConstructL(aKeyData);
-	return key;
-	}
-
-void CEncryptedProtectionKey::ConstructL(HBufC8* aKeyData)
-	{
-	iKeyData = aKeyData;
-    }
-
-CEncryptedProtectionKey::~CEncryptedProtectionKey()
-	{
-	delete iKeyData;
-	}
-
-void CEncryptedProtectionKey::InternalizeL(RReadStream& aSrcData)
-	{
-	iKeyData = HBufC8::NewL(aSrcData, aSrcData.Source()->SizeL()); 
-	}
-
-
-void CEncryptedProtectionKey::ExternalizeL(RWriteStream& aDest) const
-	{
-	aDest << *iKeyData;
-	}
-
-	
-TPtrC8 CEncryptedProtectionKey::KeyData() const
-    {
-        return *iKeyData;
-    }
-
-CEncryptedProtectionKey* CEncryptedProtectionKey::NewL(RReadStream& aSrcData)
-	{
-	CEncryptedProtectionKey* key = NewLC(aSrcData);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-CEncryptedProtectionKey* CEncryptedProtectionKey::NewLC(RReadStream& aSrcData)
-	{
-	CEncryptedProtectionKey* key = new (ELeave) CEncryptedProtectionKey();
-	CleanupStack::PushL(key);
-	key->InternalizeL(aSrcData);
-	return key;
-	}
-
--- a/authenticationservices/authenticationserver/source/server/encryptedprotectionkey.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CEncryptedProtectionKey declaration
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-
-#ifndef ENCRYPTEDPROTECTIONKEY_H
-#define ENCRYPTEDPROTECTIONKEY_H
-
-#include "authcommon_impl.h"
-
-namespace AuthServer
-{
-
-/**
- * CEncryptedProtectionKey containst the encrypted version of an identity's
- * protection key.  Encrypted protection keys are generated via the
- * CTransientKey class and are stored on the device, unlike the raw
- * protection key data.
- */
-class CEncryptedProtectionKey : public CBase
-	{
-public:	
-
-	/**
-	 * Creates a new encrypted key, passing in the encrypted key data. Should
-	 * really only be called by a CTransientKey::EncryptL. The new object
-	 * assumes ownership of the data.
-	 *
-	 * @param aKeyData the data to use as the encrypted key
-	 **/
-	static CEncryptedProtectionKey* NewL(HBufC8* aKeyData);
-	
-	/**
-	 * Creates a new encrypted key, passing in the encrypted key data. Should
-	 * really only be called by a CTransientKey::EncryptL
-	 *
-	 * @param aKeyData the data to use as the encrypted key
-	 **/
-	static CEncryptedProtectionKey* NewLC(HBufC8* aKeyData);
-	
-	/**
-	 * Internalize a persisted key  from the stream.
-	 * @param aSrcData the source data
-	 **/
-	static CEncryptedProtectionKey* NewL(RReadStream& aSrcData);	
-
-	/**
-	 * Internalize a persisted key from the stream.
-	 * @param aSrcData the source data
-	 **/
-	static CEncryptedProtectionKey* NewLC(RReadStream& aSrcData);
-
-	/**
-	 * Returns a descriptor to the encrypted key data
-	 *
-	 * @return a descriptor pointing to the encrypted key data. 
-	 **/
-	TPtrC8 KeyData() const;
-
-	/**
-	 * Writes the key data to the specified write stream. The key can be
-	 * recreated using the appropriate NewL member.
-	 *
-	 * @param aDest the destination write stream.
-	 *
-	 **/
-	void ExternalizeL(RWriteStream& aDest) const;
-	
-	~CEncryptedProtectionKey();
-
-private:
-	void ConstructL(HBufC8* aKeyData);
-	void InternalizeL(RReadStream& aSrcData);
-
-	HBufC8* iKeyData;
-    };
-
-}
-
-#endif // ENCRYPTEDPROTECTIONKEY_H
--- a/authenticationservices/authenticationserver/source/server/evaluator.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,410 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authserver_impl.h"
-
-
-using namespace AuthServer;
-
-const CAuthExpressionImpl::TType CEvaluator::KAnd = CAuthExpressionImpl::EAnd;
-const CAuthExpressionImpl::TType CEvaluator::KOr = CAuthExpressionImpl::EOr;
-const TInt CEvaluator::KRPNGranularity = 4;
-
-// -------- (de)allocation --------
-
-
-CEvaluator* CEvaluator::NewL(MEvaluatorPluginInterface* aPluginInterface, MEvaluatorClientInterface* aClientInterface)
-/**
-	Factory function allocates and initializes new
-	instance of CEvaluator.
-	
-	@param	aPluginInterface	Used to invoke plugins.
-	@param	aClientInterface	Used to notify clients when
-								an evaluation has completed.
- */
-	{
-	CEvaluator* ev = new(ELeave) CEvaluator(aPluginInterface, aClientInterface);
-	CleanupStack::PushL(ev);
-	ev->ConstructL();
-	CleanupStack::Pop(ev);
-	return ev;
-	}
-
-
-CEvaluator::CEvaluator(MEvaluatorPluginInterface* aPluginInterface, MEvaluatorClientInterface* aClientInterface)
-/**
-	Constructor records the supplied plugin and client interfaces.
-	
-	@param	aPluginInterface	Used to invoke plugins.
-	@param	aClientInterface	Used to notify clients when
-								an evaluation has completed.
- */
-:	CActive(CActive::EPriorityStandard),
-	iPluginInterface(aPluginInterface),
-	iClientInterface(aClientInterface)
-//	,iRpnStack(0)
-	{
-	CActiveScheduler::Add(this);
-	}
-
-
-void CEvaluator::ConstructL()
-/**
-	Allocate resources (i.e. RPN stack) used by
-	this object throughout its lifetime.
- */
-	{
-	iRpnStack = new(ELeave) CArrayFixFlat<TIdentityId>(KRPNGranularity);
-	}
-
-
-CEvaluator::~CEvaluator()
-/**
-	Free any resources (i.e. RPN stack) successfully
-	allocated by this object.
- */
-	{
-	Cancel();
-	delete iRpnStack;
-	}
-
-
-// -------- evaluation --------
-
-
-void CEvaluator::Evaluate(const CAuthExpressionImpl* aExpr)
-/**
-	Evaluate the current expression.  This finds
-	the leftmost leaf node from the supplied expression
-	and calls the appropriate plugin.
- */
-	{
-	__ASSERT_DEBUG(!IsActive(),
-					Panic(EBusy));	
-	// iterate through left branches until find
-	// a leaf node
-	
-	while (aExpr->Type() == KAnd || aExpr->Type() == KOr)
-		{
-		aExpr = aExpr->Left();
-		}
-	
-	iCurrentNode = aExpr;
-	
-	if (aExpr->Type() == CAuthExpressionImpl::EPluginId)
-		iPluginInterface->Evaluate(aExpr->PluginId(), iIdentity, aExpr->Type(), iStatus);
-	else if (aExpr->Type() == CAuthExpressionImpl::ENull)
-		{
-		iPluginInterface->Evaluate(0, iIdentity, aExpr->Type(), iStatus);
-		}
-	else /* aExpr->Type() == CAuthExpression::EPluginType */
-		iPluginInterface->Evaluate(aExpr->PluginType(), iIdentity, aExpr->Type(), iStatus);
-	SetActive();
-	}
-
-
-void CEvaluator::RunL()
-/**
-	Implement CActive by recording the identity
-	returned by the plugin.  If the individual
-	plugin failed then fail the entire evaluation.
- */
-	{
-	switch (iStatus.Int())
-	    {
-	    case KErrAuthServPluginNotActive:
-	        // don't break
-	    case KErrAuthServPluginCancelled:
-	        iIdentity = KUnknownIdentity;
-	        // don't break
-	    case KErrNone:
-	        EvaluatedNode(iIdentity);
-    		break;
-    	default: 
-    	    NotifyClientFailed(iStatus.Int());
-    	    break;
-	    }
-	}
-
-
-void CEvaluator::DoCancel()
-/**
-	Implement CActive.  This function does not
-	currently do anything.
- */
-	{
-	iPluginInterface->CancelEvaluate();
-
-	NotifyClientFailed(KErrCancel);
-	}
-
-void CEvaluator::EvaluatedNode(TIdentityId aIdentity)
-/**
-	This function is called when the plugin has
-	returned an identity.
-	
-	If it is a root node then complete the client request.
-
-	If it is a left node, then push the identity on the
-	RPN stack and evaluate the right node.
-	
-	If it is a right node then combine it with the stacked
-	left result using the parent node's operator.
- */
-	{
-	CAuthExpressionImpl* parent = iCurrentNode->Parent();
-	
-	// If parent node complete client request.
-	// This path is only used if the expression contains
-	// a single leaf node.  If the root node is complex
-	// then EvaluateCompound() calls HaveFinalResult().
-	if (parent == 0)
-		{
-		__ASSERT_DEBUG(RpnDepth() == 0, Panic(EENRpnStackNonZero));
-		NotifyClientSucceeded(aIdentity);
-		}
-	// if left node then push identity and evaluate sibling
-	else
-		{	
-		if (! PushIdentity(aIdentity))
-			NotifyClientFailed(KErrNoMemory);
-		else
-			{
-			const CAuthExpressionImpl* rhsExpr = parent->Right();
-			// if just evaluated RHS then compound result
-			if (rhsExpr == iCurrentNode)
-				{
-				EvaluateCompound(parent);
-				}
-			else if ( 	(aIdentity == KUnknownIdentity && parent->Type() == KAnd) || 
-						(aIdentity != KUnknownIdentity && parent->Type() == KOr)
-					)
-				{
-				if (! PushIdentity(aIdentity))
-					NotifyClientFailed(KErrNoMemory);
-				else
-					EvaluateCompound(parent);
-				}
-			// can't be short-circuited so evaluate RHS
-			else
-				{
-				Evaluate(rhsExpr);
-				}
-			}	// else (! PushIdentity(aIdentity))
-		}
-	}
-
-
-void CEvaluator::EvaluateCompound(const CAuthExpressionImpl* aParent)
-/**
-	This function is called by EvaluatedNode when
-	both the left and right identities are on the
-	RPN stack.
-	
-	Those two values are replaced with a single value
-	from the combining operator.
- */
-	{
-	__ASSERT_DEBUG(RpnDepth() >= 2, Panic(EECRpnStackTooLow));
-	TIdentityId rhs = PopIdentity();
-	TIdentityId& lhs = LastIdentity();	// replace this with result
-	
-	switch (aParent->Type())
-		{
-	case KAnd:
-		// unknown if left and right don't match.
-		// These are both unknown for short-circuit.
-		if (lhs != rhs)
-			lhs = KUnknownIdentity;
-		break;
-	
-	case KOr:
-		// only take right value if left unknown.
-		// Both same non-unknown for short-circuit.
-		if (lhs == KUnknownIdentity)
-			lhs = rhs;
-		break;
-	
-	default:
-		__ASSERT_DEBUG(EFalse, Panic(EECBadParentType));
-		break;
-		}
-	
-	// combine the parent complex node with _its_ sibling
-	CAuthExpressionImpl* parent2 = aParent->Parent();
-
-	// if parent2 is the root node, then complete the client request
-	if (parent2 == 0)
-		{
-		__ASSERT_DEBUG(RpnDepth() == 1, Panic(EECRpnStackNotOneAtRoot));
-		// reset stack after notifying client because
-		// lhs is a reference to the top (only) item.
-		NotifyClientSucceeded(lhs);
-		}
-	
-	// if parent is parent2's left node then evaluate parent's right
-	// sibling.  At this point parent's result is on the stack.
-	else if (parent2->Left() == aParent)
-		{
-		// (lhs == unknown && type == AND) || (lhs != unknown && type == OR)
-		if ((lhs == KUnknownIdentity) == (parent2->Type() == KAnd))
-			{
-			if (! PushIdentity(lhs))
-				NotifyClientFailed(KErrNoMemory);
-			else
-				EvaluateCompound(parent2);
-			}
-		
-		else
-			Evaluate(parent2->Right());
-		}
-	
-	// parent must have been parent2's right child so combine
-	// its result with its left sibling.
-	else
-		{
-		__ASSERT_DEBUG(parent2->Right() == aParent, Panic(EECBadRightParent));
-		EvaluateCompound(parent2);
-		}
-	}
-
-
-// -------- client notification --------
-
-
-void CEvaluator::NotifyClientSucceeded(TIdentityId aIdentityId)
-/**
-	Notify the client that the evaluation has completed
-	successfully, and free the RPNStack.
-	
-	@param	aIdentityId		Identified user.  This can be KUnknownIdentity.
- */
-	{
-	iClientInterface->EvaluationSucceeded(aIdentityId);
-	ResetRpnStack();
-	}
-
-
-void CEvaluator::NotifyClientFailed(TInt aReason)
-/**
-	Notify the client that the evaluation has failed
-	and free the RPN stack.
-	
-	@param	aReason			Symbian OS error code.
- */
-	{
-	iClientInterface->EvaluationFailed(aReason);
-	ResetRpnStack();
-	}
-
-
-// -------- RPN stack --------
-
-
-TBool CEvaluator::PushIdentity(TIdentityId aIdentity)
-/**
-	Append the supplied entity to the RPN stack.
-	
-	@param	aIdentity		Function to append to the RPN stack.
-	@return					zero if could not append the item,
-							i.e. OOM, non-zero otherwise.
- */
-	{
-	TRAPD(r, iRpnStack->AppendL(aIdentity));
-	return r == KErrNone;
-	}
-
-
-TIdentityId CEvaluator::PopIdentity()
-/**
-	Remove the last identity from the RPN stack
-	and return it.
-	
-	@return					The identity which was the last
-							item on the RPN stack when this
-							function was called.
-	@pre The RPN stack contains at least one identity.
- */
-	{
-	TInt lastIndex = iRpnStack->Count() - 1;
-	TIdentityId id = iRpnStack->At(lastIndex);
-	
-	// This function will not leave because the array
-	// if not being grown.  It is only trapped to satisfy
-	// leavescan.
-	
-	TRAP_IGNORE(iRpnStack->ResizeL(lastIndex));
-	return id;
-	}
-
-
-TIdentityId& CEvaluator::LastIdentity()
-/**
-	Return a reference to the last item on the
-	RPN stack.  This function is defined so
-	ReplaceComplexIdentity() can efficiently
-	put a result on the RPN stack without reallocating.
-	
-	@return					Reference to last item on the RPN stack.
-	@pre The RPN stack contains at least one identity.
- */
-	{
-	TInt lastIndex = iRpnStack->Count() - 1;
-	return iRpnStack->At(lastIndex);	
-	}
-
-
-void CEvaluator::ResetRpnStack()
-/**
-	Clear the RPN stack.
- */
-	{
-	iRpnStack->Reset();
-	}
-
-
-#ifdef _DEBUG
-
-
-TInt CEvaluator::RpnDepth() const
-/**
-	Returns the depth of the RPN stack.  This is
-	defined for debug builds only to ensure the
-	stack depth is within an acceptable range.
- */
-	{
-	return iRpnStack->Count();
-	}
-
-
-void CEvaluator::Panic(CEvaluator::TPanic aPanic)
-/**
-	Halt the current thread with the category "AUTHEVAL"
-	and the supplied reason.
-	
-	@param	aPanic			Panic reason.
- */
-	{
-	_LIT(KPanicCat, "AUTHEVAL");
-	User::Panic(KPanicCat, aPanic);
-	}
-
-
-#endif	// #ifdef _DEBUG
-
-
--- a/authenticationservices/authenticationserver/source/server/evaluator.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,211 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Evaluator mix-in classes implementation
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent 
-*/
- 
-#ifndef AUTHSERVER_EVALUATOR_H
-#define AUTHSERVER_EVALUATOR_H
-
-#include "authexpression_impl.h"
-
-namespace AuthServer {
-
-class MEvaluatorPluginInterface
-/**
-	CEvaluator uses this interface to invoke a plugin,
-	which can be specified by type or ID.
-	
-	@see CEvaluator
- */
-	{
-public:
-	/**
-		Invoke the specified plugin and record the identity
-		which was returned.
-		
-		@param	aPluginId		Plugin to use.
-		@param	aIdentityId		On successful completion this
-								object is set to the returned
-								identity.
-		@param	aType			The type of plugin represented 
-								by this instance.						
-		@param	aStatus			On completion (successful or
-								otherwise) this object is
-								completed with the error code.
-	 */
-	virtual void Evaluate(TPluginId aPluginId, TIdentityId& aIdentityId, 
-						  CAuthExpressionImpl::TType aType, TRequestStatus& aStatus) = 0;
-
-	/**
-	    Cancel the plugin currently being invoked.
-	 **/
-	virtual void CancelEvaluate() = 0;
-	
-	/**
-		Invoke a plugin of the requested type and record
-		the identity which was returned.
-		
-		@param	aPluginType		Type of plugin to use.  The
-								implementation maps this to a
-								single, specific plugin.
-		@param	aIdentityId		On successful completion this
-								object is set to the returned
-								identity.
-		@param	aType			The type of plugin represented 
-								by this instance.						
-		@param	aStatus			On completion (successful or
-								otherwise) this object is
-								completed with the error code.
-	 */
-	virtual void Evaluate(TAuthPluginType aPluginType, TIdentityId& aIdentityId, 
-						  CAuthExpressionImpl::TType aType, TRequestStatus& aStatus) = 0;
-	};
-
-class MEvaluatorClientInterface
-/**
-	CEvaluator uses this interface to notify the server
-	when an evaluation has finished, successfully or otherwise.
-	
-	The server implements this interface to notify
-	the client that the authentication request has
-	completed.
- */
-	{
-public:
-	/**
-		This function is called by the evaluator when it
-		has successfully parsed and evaluated an expression.
-		
-		In this context, successful means there were no
-		errors in running the plugins, or otherwise in
-		evaluating the expression, such as OOM.  It does
-		not mean that a specific user was identified -
-		aIdentity can still be CIdentity::KUnknown.
-		
-		@param	aIdentityId		Identified user.  This can
-								be CIdentity::KUnknown.
-		@see EvaluationFailed
-	 */
-	virtual void EvaluationSucceeded(TIdentityId aIdentityId) = 0;
-	/**
-		This function is called by the evaluator when
-		it has failed to evaluate an expression.  Reasons
-		for failure include failing to run a plugin;
-		the user cancelling a plugin; OOM; and others.
-		
-		Failure in this sense does not means the expression
-		was evaluated but no specific user was identified.
-		That case is handled by EvaluationSucceeded.
-		
-		@param	aReason		Symbian OS error code.
-		
-		@see EvaluationSucceeded
-	 */
-	virtual void EvaluationFailed(TInt aReason) = 0;
-	};
-
-class CEvaluator : public CActive
-/**
-	Expression evaluator.  This asynchronously
-	evaluates the supplied expression by calling
-	the referenced plugins.
- */
-	{
-public:
-	static CEvaluator* NewL(MEvaluatorPluginInterface* aPluginInterface, MEvaluatorClientInterface* aClientInterface);
-	virtual ~CEvaluator();
-
-	void Evaluate(const CAuthExpressionImpl* aExpr);
-	
-private:
-	CEvaluator(MEvaluatorPluginInterface* aPluginInterface, MEvaluatorClientInterface* aClientInterface);
-	void ConstructL();
-	
-	void EvaluatedNode(TIdentityId aIdentity);
-	void EvaluateCompound(const CAuthExpressionImpl* aParent);
-	void ReplaceComplexIdentity(TIdentityId aIdentity);
-	
-	// complete client request
-	void NotifyClientSucceeded(TIdentityId aIdentity);
-	void NotifyClientFailed(TInt aReason);
-	
-	// manipulate RPN stack
-	TBool PushIdentity(TIdentityId aIdentity);
-	TIdentityId PopIdentity();
-	TIdentityId& LastIdentity();
-	void ResetRpnStack();
-	// implement CActive
-	virtual void RunL();
-	virtual void DoCancel();
-	
-#ifdef _DEBUG
-	enum TPanic
-		{
-		EENRpnStackNonZero = 0x10,
-		EECRpnStackTooLow = 0x20, EECBadParentType, EECRpnStackNotOneAtRoot, EECBadRightParent,
-		EBusy = 0x30,
-		};
-	static void Panic(TPanic aPanic);
-	TInt RpnDepth() const;
-#endif
-	
-private:
-	/** The evaluator uses this to invoke plugins. */
-	MEvaluatorPluginInterface*const iPluginInterface;
-	/**
-		The evaluator uses this to notify the server
-		when an evaluation has completed, successfully
-		or otherwise.
-	 */
-	MEvaluatorClientInterface*const iClientInterface;
-	
-	/** Constant value defined for short name readability only. */
-	static const CAuthExpressionImpl::TType KAnd;
-	/** Constant value defined for short name readability only. */
-	static const CAuthExpressionImpl::TType KOr;
-
-	/** The expression which is currently being evaluated. */
-	const CAuthExpressionImpl* iCurrentNode;
-	
-	/** The plugin sets this value to the returned identity. */
-	TIdentityId iIdentity;
-	
-	/**
-		Granularity of RPN stack.  This value should be large
-		to parse a reasonable expression without having to
-		reallocate, and without wasting too much memory.
-	 */
-	static const TInt KRPNGranularity;
-	/**
-		Intermediate results.  (A CArrayFixFlat is used here
-		instead of an RArray because, although it uses more
-		memory, it can be resized when items are popped.)
-	 */
-	CArrayFixFlat<TIdentityId>* iRpnStack;
-	};
-
-}	// namespace AuthServer
-
-#endif	// #ifndef AUTHSERVER_EVALUATOR_H
-
-
--- a/authenticationservices/authenticationserver/source/server/pluginmgr.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,254 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Implementation of CPluginMgr
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "authserver_impl.h"
-#include <authserver/authpatchdata.h>
-#include <u32hal.h>
-#include <e32svr.h> 
-using namespace AuthServer;
-
-TLinearOrder<CAuthPluginInterface> CPluginMgr::SPluginOrder(PluginCompare);
-
-TInt CPluginMgr::PluginCompare(const CAuthPluginInterface& aLhs,
-									  const CAuthPluginInterface& aRhs)
-  {
-  return aLhs.Id() - aRhs.Id();
-  }
-
-TInt CPluginMgr::FindById(const TPluginId* aId,
-						 const CAuthPluginInterface& aRhs)
-  {
-  return *aId - aRhs.Id();
-  }
-
-
-CPluginMgr* CPluginMgr::NewLC()
-  {
-  CPluginMgr* me = new (ELeave) CPluginMgr();
-  CleanupStack::PushL(me);
-  me->ConstructL();
-  return me;
-  } 
-
-CPluginMgr* CPluginMgr::NewL()
-  {
-  CPluginMgr* me = CPluginMgr::NewLC();
-  CleanupStack::Pop(me);
-  return me;
-  }
-
-CPluginMgr::~CPluginMgr()
-  {
-  ReleasePlugins();
-  ReleaseImplInfo();
-  }
-
-
-void CPluginMgr::ConstructL()
-  {
-  BuildAuthPluginsListL();
-  }
-
-CAuthPluginInterface* CPluginMgr::PluginL(const TPluginId& aId)
-  {
-  TInt idx = iPlugins.FindInOrder<>(aId, CPluginMgr::FindById);
-  CAuthPluginInterface* plugin = 0;
-  if (idx == KErrNotFound)
-	{
-	  plugin = CreatePluginImplementationL(aId);
-	  iPlugins.InsertInOrder(plugin, SPluginOrder);
-	}
-  else
-	{
-	plugin = iPlugins[idx];
-	}
-  
-  return plugin;
-  }
-
-CAuthPluginInterface* CPluginMgr::ImplementationL(TInt aIndex)
-	{
-	if( aIndex < 0 || aIndex > iPlugins.Count()-1 )
-		{
-		User::Leave(KErrArgument);
-		}
-	return iPlugins[aIndex];
-	}
-
-const RImplInfoPtrArray& CPluginMgr::ImplementationsL()
-    {
-    if (iImplArray.Count() == 0) 
-        {
-        //To load plugins from sources other than ROM the patch 
-        // data KEnablePostMarketAuthenticationPlugins must be set to True.
-        TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-        #ifdef __WINS__
-
-        // Default SymbianOS behavior is to only load auth plugins from ROM.
-        enablePostMarketPlugin = 0;
-
-        // For the emulator allow the constant to be patched via epoc.ini
-        UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-        (TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-        #endif
-          
-        if(enablePostMarketPlugin == 0)
-        	{
-         	TEComResolverParams resolverParams;
-           	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid,
-        									 resolverParams,
-        									 KRomOnlyResolverUid,
-        									 iImplArray);
-        									 
-            }
-            
-         else
-         	{
-         	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid, iImplArray);
-          	}
-        }
-    return iImplArray;
-    }
-
-void CPluginMgr::ReleasePlugins()
-  {
-  TInt i = iPlugins.Count();
-  while (i)
-	{
-	delete iPlugins[--i];
-	}
-  
-  i = iPluginDtorUids.Count();
-  
-  while(i)
-	  {
-	  REComSession::DestroyedImplementation(iPluginDtorUids[--i]);
-	  }
-  iPlugins.Reset();
-  iPluginDtorUids.Reset();
-  }
-
-void CPluginMgr::ForgetIdentityL(TIdentityId aId)
-  {
-  ImplementationsL();
-  
-  TInt i = iImplArray.Count();
-  while (i)
-	{
-	PluginL(iImplArray[--i]->ImplementationUid().iUid)->Forget(aId);
-	}
-  }
-
-void CPluginMgr::ReleaseImplInfo()
-  {
-  TInt i = iImplArray.Count();
-  while (i)
-	{
-	  delete iImplArray[--i];
-	}
-  
-  iImplArray.Reset();
-  }
-  
-void CPluginMgr::BuildAuthPluginsListL()
-	{
-	ReleasePlugins();
-  	ReleaseImplInfo();
-  	
-	ImplementationsL();
-  	CAuthPluginInterface* plugin = 0;
-  	for( TInt count=0; count < iImplArray.Count(); ++count)
-		{
-		plugin = CreatePluginImplementationL(iImplArray[count]->ImplementationUid().iUid);
-
-		CleanupStack::PushL(plugin);
-		User::LeaveIfError(iPlugins.InsertInOrder(plugin, SPluginOrder));
-		CleanupStack::Pop(plugin);
-		}
-	}
-
-CAuthPluginInterface* CPluginMgr::CreatePluginImplementationL(const TPluginId &aId)
-	{
-	TEComResolverParams resolverParams;
-	TBufC8<16> pluginIdTxt;
-	pluginIdTxt.Des().Format(_L8("%x"), aId);
-	pluginIdTxt.Des().UpperCase();
-	resolverParams.SetDataType(pluginIdTxt);
-		  
-	//To load plugins from sources other than ROM the patch 
-	// data KEnablePostMarketAuthenticationPlugins must be set to True.
-	TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-#ifdef __WINS__
-
-	// Default SymbianOS behavior is to only load auth plugins from ROM.
-	enablePostMarketPlugin = 0;
-
-	// For the emulator allow the constant to be patched via epoc.ini
-	UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-	(TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-#endif
-
-	TAny* plugin = 0;
-	TInt err = 0;
-	TUid dtor_ID_Key = TUid::Null();
-	if(enablePostMarketPlugin == 0) 
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											dtor_ID_Key,
-											resolverParams,
-											KRomOnlyResolverUid));
-	  	}
-		  
-	  else
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											dtor_ID_Key,
-											resolverParams));
-	  	}
-		  
-	 if (err == KErrNotFound)
-	    {
-	    err = KErrAuthServNoSuchPlugin;  
-	    }
-	 
-	 //Add key to plugin destructor keys list .
-	 TInt err2 =  iPluginDtorUids.Append(dtor_ID_Key);
-	 
-	 if(KErrNoMemory == err2)
-		 {
-		 CAuthPluginInterface* authPlugin = reinterpret_cast<CAuthPluginInterface*>(plugin);
-		 delete authPlugin;
-		 REComSession::DestroyedImplementation(dtor_ID_Key);
-		 User::LeaveNoMemory();
-		 }
-	 User::LeaveIfError(err);
-
-	return reinterpret_cast<CAuthPluginInterface*>(plugin);
-	}
-
--- a/authenticationservices/authenticationserver/source/server/pluginmgr.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @released
- @internalComponent
-*/
-#ifndef PLUGINMGR_H
-#define PLUGINMGR_H
-
-#include <authserver/authplugininterface.h>
-namespace AuthServer 
-{
-
-/**
- * The plugin manager is responsible for managing the lifetime of plugin DLLs.
- **/
-
-class CPluginMgr : public CBase
-	{
-public:
-	static CPluginMgr* NewL();
-	static CPluginMgr* NewLC();
-	
-	~CPluginMgr();
-
-	/**
-	 * Returns the requested plugin. If the plugin has not yet been loaded
-	 * then it will be instantiated and cached prior to returning.
-	 *
-	 * @param aId the id of the plugin to return.
-	 *
-	 * @return the requested plugin
-	 *
-	 * @leave KErrAuthServerNoSuchPlugin
-	 *
-	 **/
-	CAuthPluginInterface* PluginL(const TPluginId& aId);
-
-    /**
-	 * Returns the list of plugin implementations. The list is cached for use
-	 * rather than reloading it in multiple places.
-	 *
-	 * @return the array of implementation info objects
-	 *
-	 **/
-	const RImplInfoPtrArray& ImplementationsL();
-	
-	CAuthPluginInterface* ImplementationL(TInt aIndex);
-	
-	/**
-	 * Forces all plugins to forget their training for id
-	 *
-	 * @param aId the id of the identitiy to forget.
-	 *
-	 **/
-	void ForgetIdentityL(TIdentityId aId);
-	
-	/**
-	 * Builds authentication plugins list.
-	 **/
-	void BuildAuthPluginsListL();
-	
-private:
-	static TInt PluginCompare(const CAuthPluginInterface& lhs,
-							  const CAuthPluginInterface& rhs);
-							  
-	static TInt FindById(const TPluginId* lhs,
-						 const CAuthPluginInterface& rhs);
-						 
-	static 	TLinearOrder<CAuthPluginInterface> SPluginOrder;
-	
-	void ConstructL();
-	
-	
-	/**
-	 * Forces the plugin manager to free all plugin objects.
-	 **/
-	void ReleasePlugins();
-	
-	/**
-	 * Forces the plugin manager to free the implemtation info array and
-	 * reload it on the next call to Implementations.
-	 **/
-	void ReleaseImplInfo();
-	
-	/**
-	 * Creates an implementation of the specified plugin.
-	 * 
-	 * @param aId Id of the plugin to be created.
-	 *	
-	 * @return the requested plugin
-	 *	 
-	 **/
-	CAuthPluginInterface* CreatePluginImplementationL(const TPluginId &aId);
-	
-private:	
-	mutable RPointerArray<CAuthPluginInterface> iPlugins;
-	
-	mutable RImplInfoPtrArray iImplArray;
-	
-	/**
-	 * Maintain a list of plugin destructor keys.
-	 * This is used to destroy all plugin instances when ReleasePlugins
-	 * is called.
-	 * */
-	mutable RArray<TUid>iPluginDtorUids;
-	
-    };
-
-} //namespace
-
-#endif // PLUGINMGR_H
--- a/authenticationservices/authenticationserver/source/server/pluginobserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-
-
-#include <e32debug.h>
-#include <s32mem.h>
-#include "authserver_impl.h"
-#include "log.h"
-
-using namespace AuthServer;
-
-/**
-  CPluginObserver registers for ECOM notification when new authentication plugins are added 
-  or removed and updates the plugin manager accordingly. 
- 
-  */
-
-/** 
-  Constructs a new CPluginObserver object and puts it on the cleanup stack.
-  */
-
-CPluginObserver* CPluginObserver::NewLC(CPluginMgr& aPluginMgr)
-	{
-	CPluginObserver* self = new (ELeave) CPluginObserver(aPluginMgr);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-/** 
-  Constructs a new CPluginObserver object.
-  */
-
-CPluginObserver* CPluginObserver::NewL(CPluginMgr& aPluginMgr)
-	{
-	CPluginObserver* self = CPluginObserver::NewLC(aPluginMgr);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CPluginObserver::CPluginObserver(CPluginMgr& aPluginMgr) : CActive(EPriorityStandard), iPluginMgr(aPluginMgr)
-	{
-	
-	}
-
-CPluginObserver::~CPluginObserver()
-	{
-	Cancel();
-		
-	// Close our ECOM session
-	if(iEcomSession)
-		{
-		iEcomSession->CancelNotifyOnChange(iStatus);
-		iEcomSession->Close();
-		REComSession::FinalClose();
-		}
-	}
-
-void CPluginObserver::ConstructL()
-	{
-	// Add ourselves to the current active scheduler so we can get dynamic 
-	// updates when authentication plugins are removed or new plugins are added
-	CActiveScheduler::Add(this);
-	
-	iEcomSession = &REComSession::OpenL();
-	
-	// register for ECOM update notifications in case a new agent appears
-	iEcomSession->NotifyOnChange(iStatus);
-	SetActive();
-	}
-	
-void CPluginObserver::DoCancel()
-	{
-	// Abort any update notification 
-	iEcomSession->CancelNotifyOnChange(iStatus);
-	}
-
-void CPluginObserver::RunL()
-	{
-	// Leave if there has been an error
-	User::LeaveIfError(iStatus.Int());
-	
-	// the ownership is with auth server, so dont delete it.
-	iPluginMgr.BuildAuthPluginsListL();
-	
-	// request notification of any further changes
-	iEcomSession->NotifyOnChange(iStatus);
-	SetActive();
-	}
-	
-TInt CPluginObserver::RunError(TInt aError)
-    {
-    _LIT(KAuthError, "Authserver Panic :");
-    User::Panic(KAuthError, aError);
-	    			
-	return KErrNone;
-	}
-	
--- a/authenticationservices/authenticationserver/source/server/pluginobserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
-  
-#ifndef PLUGINOBSERVER_H
-#define PLUGINOBSERVER_H
-
-#include <e32cmn.h>
-#include <ecom/ecom.h>
-
-namespace AuthServer
-{
-class CPluginMgr;
-
-class CPluginObserver : public CActive
-	{
-public:
-
-	static CPluginObserver* NewLC(CPluginMgr& aPluginMgr);
-	static CPluginObserver* NewL(CPluginMgr& aPluginMgr);
-	virtual ~CPluginObserver();	
-	
-private:
-
-	// From CActive, used for dynamically updating the list of authentication plugins.
-	virtual void DoCancel();
-	virtual void RunL();
-	TInt RunError(TInt aError);
-	
-	CPluginObserver(CPluginMgr& aPluginMgr);
-	void ConstructL();
-
-private:
-	
-	REComSession* iEcomSession;
-	CPluginMgr& iPluginMgr;
-	};
-	
-}	//namespace
-
-#endif
--- a/authenticationservices/authenticationserver/source/server/trainingmgr.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,381 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTrainingMgr - Auth Server helper class
-*
-*/
-
-
-/**
- @file 
-*/
-#include <e32debug.h>
-#include <s32mem.h>
-#include "authserver_impl.h"
-#include "log.h"
-#include "authrepository.h"
-
-using namespace AuthServer;
-
-
-CTrainingMgr::CTrainingMgr(CPluginMgr&      aPluginMgr,
-						   CAuthDb2&        aAuthDb,
-						   CAuthRepository& aAuthRepository) :
-	CActive(EPriorityStandard),
-	iPluginMgr(&aPluginMgr),
-	iAuthDb(&aAuthDb),
-	iAuthRepository(aAuthRepository)
-	{
-	CActiveScheduler::Add(this);
-	}
-
-CTrainingMgr::~CTrainingMgr()
-    {
-    Cancel();
-    Cleanup();
-    }
-
-/**
- * @param aMessage
- * @param aId The id number to use for the identity
- * @param aProtKey the protection key will be returned here
- */
-void CTrainingMgr::RegisterIdentityL(const RMessage2& aMessage,
-									TIdentityId aId,
-									CProtectionKey&  aProtKey)
-	{
-	__ASSERT_ALWAYS(!IsActive(),
-					User::Panic(KAuthServerShortName,
-								EPanicTrainingMgrBusy));	
-
-	iProtKey = &aProtKey;
-	iMessage = new (ELeave) RMessage2(aMessage);
-	iCurrentPluginIdx = 0;
-	iIdentity = aId;
-	iDescription = HBufC::NewL(aMessage.GetDesLength(1));
-	TPtr ptr = iDescription->Des();
-	aMessage.Read(1,ptr); 
-
-	iState = ERegistrationFirstStep;
-	DoRegistrationStepL();
-	}
-
-TBool CTrainingMgr::RegisterFirstIdentityL(TIdentityId aId,
-										  CProtectionKey& aProtKey)
-	{
-	__ASSERT_ALWAYS(!IsActive(),
-					User::Panic(KAuthServerShortName,
-								EPanicTrainingMgrBusy));	
-
-	iIdentity = aId;
-	iProtKey  = &aProtKey;
-    iDescription = HBufC::NewL(KDefaultUserDescription().Length());
-    *iDescription = KDefaultUserDescription;
-    
-    TBool result = EFalse;
-    
-    //Get the default plugin id from the configuration file.
-    TPluginId defaultPluginId = iAuthRepository.DefaultPluginL();
-	
-    CAuthPluginInterface* plugin = 0;
-	TRAPD(err, plugin = iPluginMgr->PluginL(defaultPluginId));
-	
-	if ((err == KErrNone) &&
-		(plugin->IsActive()) &&
-		(plugin->Type() == EAuthKnowledge) && 
-	    (plugin->DefaultData(aId, iResult) == KErrNone))
-		{
-		iCurrentPlugin = plugin->Id(); 
-		AddIdentityL(); 
-		AddTrainingResultL();
-		result = ETrue;
-		}	
-	
-	Cleanup();		    	
-	return result;
-	}
-
-void CTrainingMgr::TrainPluginL(const RMessage2& aMessage,
-							   CProtectionKey&  aProtKey)
-	{
-	__ASSERT_ALWAYS(!IsActive(),
-					User::Panic(KAuthServerShortName,
-								EPanicTrainingMgrBusy));	
-
-	iProtKey = &aProtKey;
- 	iIdentity = aMessage.Int0();
-	iCurrentPlugin = aMessage.Int1();
-	iMessage = new (ELeave) RMessage2(aMessage);
-	CAuthPluginInterface* plugin = 0;
-
-	TRAPD(err, plugin = iPluginMgr->PluginL(iCurrentPlugin));
-	
-	if (err != KErrNone)
-		{
-		iMessage->Complete(err);
-		Cleanup();
-		return;
-		}
-	else
-		{
-		SetActive();
-		iState=ETrainingDone;
-		if (plugin->IsActive())
-			{
-			plugin->Train(iIdentity, iResult, iStatus);
-			}
-		else
-			{
-			TRequestStatus* status = &iStatus;
-			User::RequestComplete(status, KErrAuthServPluginNotActive);
-			}
-		}
-	}
-
-TInt CTrainingMgr::RunError(TInt aError)
-    {
-    iMessage->Complete(aError);
-	return KErrNone;
-	
-  }
-
-void CTrainingMgr::RunL()
-	{
-	if (iStatus != KErrNone && 
-		(iStatus != KErrAuthServPluginCancelled && 
-		iStatus != KErrAuthServPluginNotActive))
-		{	
-		// error results other than plugin cancelled or inactive handled  here
-		Complete();
-		return;
-		}
-	switch (iState)
-		{
-    	case ERegistrationFirstStep:
-			if (AddIdentityL())
-				{
-				iState = ERegistering;
-				}
-			DoRegistrationStepL();
-			break;
-       case ERegistering:
-			AddTrainingResultL();
-    		DoRegistrationStepL();
-    		break;
-       case ETrainingDone:
-            if (iStatus == KErrAuthServPluginCancelled)
-			  {
-    		  DEBUG_PRINTF(_L8("Plugin cancelled in training"));
-			  }
-    	    AddTrainingResultL();
-    		Complete();
-    		break;
-    	case ERegistrationDone:
-			WriteResultToMsgL();
-    		Complete();
-    		break;
-    	}
-	}
-
-void CTrainingMgr::DoCancel()
-	{
-	CAuthPluginInterface* plugin = 0;
-	TRAPD(err, plugin = iPluginMgr->PluginL(iCurrentPlugin));
-	
-	if (err == KErrNone)
-		{
-		iMessage->Complete(KErrCancel);
-		plugin->Cancel();
-		}
-	else
-		{
-		User::Panic(KAuthServerShortName, EPanicNoSuchAuthPlugin);
-		}
-	Cleanup();
-	}
-
-TBool CTrainingMgr::IsBusy() const
-  {
-  return iState != EIdle;
-  }
-
-CTransientKeyInfo* CTrainingMgr::CreateKeyInfoLC()
-	{
-    __ASSERT_ALWAYS(iResult != 0 && iResult->Size() > 0,
-					User::Panic(KAuthServerShortName,
-								EPanicInvalidDefaultData));	
-
-	CTransientKeyInfo* keyInfo = CTransientKeyInfo::NewLC(iCurrentPlugin);
-
-	CTransientKey* key = keyInfo->CreateTransientKeyL(*iResult);
-	CleanupStack::PushL(key);
-    
-	CEncryptedProtectionKey* encKey = key->EncryptL(*iProtKey);
-	CleanupStack::PushL(encKey);
-		
-	keyInfo->SetEncryptedProtectionKeyL(encKey);
-	CleanupStack::Pop(encKey);
-	CleanupStack::PopAndDestroy(key);
-	return keyInfo;
-	}
-
-TBool CTrainingMgr::AddTrainingResultL()
-	{
-	TBool result = EFalse;
-	if (iStatus == KErrNone)
-		{	
-		CTransientKeyInfo* keyInfo = CreateKeyInfoLC();
-		iAuthDb->SetTrainedPluginL(iIdentity, keyInfo->PluginId(),
-								   *keyInfo);
-		CleanupStack::PopAndDestroy(keyInfo);
-		result = ETrue;
-		}
-	return result;
-	}
-
-TBool CTrainingMgr::AddIdentityL()
-	{
-	TBool result = EFalse;
-	if (iStatus == KErrNone)
-		{
-		CTransientKeyInfo* keyInfo = CreateKeyInfoLC();
-		iAuthDb->AddIdentityWithTrainedPluginL(iIdentity, *iDescription, *keyInfo);
-		CleanupStack::PopAndDestroy(keyInfo);
-		result = ETrue;
-		}
-	return result;
-	}
-
-void CTrainingMgr::DoRegistrationStepL()
-	{
-	
-
-	if (iCurrentPluginIdx == iPluginMgr->ImplementationsL().Count())
-		{	
-		SetActive();
-		iState = ERegistrationDone;
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		return;
-		}
-
-	iCurrentPlugin  =
-		iPluginMgr->ImplementationsL()[iCurrentPluginIdx++]
-	      ->ImplementationUid().iUid;
-	
-	CAuthPluginInterface* plugin = 0;
-	TRAPD(err, plugin = iPluginMgr->PluginL(iCurrentPlugin));
-	
-	SetActive();
-	switch (err)
-		{
-    	case KErrAuthServNoSuchPlugin:
-			{
-			// skip this plugin
-			TRequestStatus* status = &iStatus;
-			User::RequestComplete(status, KErrNone);
-			return;
-			}
-    	case KErrNone:
-			break;
-    	default:
-			User::Leave(err);
-			break;
-		}
-	delete iResult;
-	iResult = 0;
-	if (plugin->IsActive())
-		{
-		plugin->Train(iIdentity, iResult, iStatus);
-		}
-	else
-		{
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrAuthServPluginNotActive);
-		}
-	}
-
-void CTrainingMgr::WriteResultToMsgL()
-    {
-
-	if (iAuthDb->NumTrainedPluginsL(iIdentity) > 0)
-		{
-		CIdentity* identity = CIdentity::NewLC(iIdentity, iProtKey,
-											   iDescription);
-		iProtKey = 0;
-		iDescription = 0;
-	
-		HBufC8* idBuff = HBufC8::NewLC(KDefaultBufferSize);
-		TPtr8  idPtr =  idBuff->Des();
-    
-		RDesWriteStream writeStream(idPtr);
-		CleanupClosePushL(writeStream);
-    
-		writeStream << *identity;
-		writeStream.CommitL();
-
-		TInt clientBuffSize = iMessage->GetDesMaxLength(0);
-  
-		if (clientBuffSize >= idBuff->Size())
-			{
-				iMessage->Write(0, *idBuff);
-			}
-		else
-			{
-				User::Leave(KErrUnderflow);
-			}
-		CleanupStack::PopAndDestroy(3,identity);
-		}
-	else
-		{
-
-		iStatus = KErrAuthServRegistrationFailed;
-		}
-
-    }
-    
-void CTrainingMgr::Complete()
-	{
-	iMessage->Complete(iStatus.Int());
-	Cleanup();
-	}
-
-void CTrainingMgr::Cleanup()
-	{
-	if(iDescription)
-		{
-		delete iDescription;
-		iDescription = 0;
-		}
-	
-	if(iResult)
-		{
-		delete iResult;
-		iResult = 0;
-		}
-	
-	if(iMessage)
-		{
-		delete iMessage;
-		iMessage = 0;
-		}
-	
-	if(iProtKey)
-		{
-		delete iProtKey;
-		iProtKey = 0;
-		}
-	
-	iState = EIdle;
-	}
--- a/authenticationservices/authenticationserver/source/server/trainingmgr.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,102 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTrainingmgr - Auth Server helper class
-*
-*/
-
-
-/**
- @file 
- @internalComponent
- @released
-*/
-#ifndef TRAININGMGR_H
-#define TRAININGMGR_H
-
-#include <e32cmn.h>
-
-#include "authrepository.h"
-#include "authdb.h"
-#include "pluginmgr.h"
-
-namespace AuthServer
-{
-
-/** 
- * This AO handles the training of plugins for identities.  
- **/
-class CTrainingMgr : public CActive
-	{
-public:
-  
-	CTrainingMgr(CPluginMgr&      aPluginMgr,
-				 CAuthDb2&        aAuthDb,
-				 CAuthRepository& aAuthRepository);
-    
-    ~CTrainingMgr();
-    
-	void RegisterIdentityL(const RMessage2& aMessage,
-						  TIdentityId aId,
-						  CProtectionKey& aProtKey);
-	
-	TBool RegisterFirstIdentityL(TIdentityId aId,
-								CProtectionKey& aProtKey);
-	
-
-	void TrainPluginL(const RMessage2& aMessage,
-					 CProtectionKey& aProtKey);
-
-
-	TBool IsBusy() const;
-	
-	void RunL();  
-
-	void DoCancel(); 
-	
-private:
-	
-	enum TState
-		{
-		EIdle,
-		ERegistrationFirstStep,
-		ERegistering,
-		ERegistrationDone,
-		ETrainingDone,
-		};
-
-	CTransientKeyInfo* CreateKeyInfoLC();
-	
-	TBool AddIdentityL();
-	TBool AddTrainingResultL();
-	void  DoRegistrationStepL();
-	void  WriteResultToMsgL();
-	void  Complete();
-	void  Cleanup();
-	TInt RunError(TInt aError);
-
-	TState           iState;
-	const RMessage2* iMessage;
-	CPluginMgr*      iPluginMgr;
-	CAuthDb2*        iAuthDb;
-	TInt             iCurrentPluginIdx;
-	TPluginId        iCurrentPlugin;
-	TIdentityId      iIdentity;
-	HBufC8*          iResult;
-	HBufC*           iDescription;
-	CProtectionKey*  iProtKey;
-	CAuthRepository& iAuthRepository;
-};
-}
-#endif //  TRAININGMGR_H
--- a/authenticationservices/authenticationserver/source/server/transientkey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,95 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTransientKey implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "authserver_impl.h"
-
-
-using namespace AuthServer;
-
-CTransientKey* CTransientKey::NewL(CPBEncryptElement* aEncryptor)
-	{
-	CTransientKey*  key =
-		CTransientKey::NewLC(aEncryptor);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-CTransientKey* CTransientKey::NewLC(CPBEncryptElement* aEncryptor)
-	{
-	CTransientKey*  key = new (ELeave) CTransientKey();
-	CleanupStack::PushL(key);
-	key->ConstructL(aEncryptor);
-	return key;
-	}
-
-void CTransientKey::ConstructL(CPBEncryptElement* aEncryptor)
-	{
-	iPbeElement = aEncryptor;
-    }
-
-CTransientKey::~CTransientKey()
-	{
-	delete iPbeElement;
-	}
-
-CEncryptedProtectionKey*
-CTransientKey::EncryptL(const CProtectionKey& aKey) const
-	{
-	TPtrC8 protData = aKey.KeyData();
-	
-	CPBEncryptor* encryptor = iPbeElement->NewEncryptLC();
-	
-	HBufC8* ciphertext =
-		HBufC8::NewLC(encryptor->MaxFinalOutputLength(protData.Length()));
-
-	TPtr8 ciphertextTemp = ciphertext->Des();
-	
-	encryptor->ProcessFinalL(protData, ciphertextTemp);
-
-	CEncryptedProtectionKey* key = CEncryptedProtectionKey::NewL(ciphertext);
-	
-	CleanupStack::Pop(ciphertext); // don't delete cipher text
-	CleanupStack::PopAndDestroy(encryptor);
-	
-	return key;
-	}
-
-CProtectionKey*
-CTransientKey::DecryptL(const CEncryptedProtectionKey& aKey) const
-	{
-	TPtrC8 encData = aKey.KeyData();
-	
-	CPBDecryptor* decryptor = iPbeElement->NewDecryptLC();
-
-	HBufC8* plaintext =
-		HBufC8::NewLC(decryptor->MaxFinalOutputLength(encData.Length()));
-	TPtr8 plaintextTemp = plaintext->Des();
-
-	// Decrypt the data
-	decryptor->ProcessFinalL(encData, plaintextTemp);
-		 
-	CProtectionKey* key = CProtectionKey::NewL(plaintext);
-	CleanupStack::Pop(plaintext);
-	CleanupStack::PopAndDestroy(decryptor);
-	return key;
-	}
--- a/authenticationservices/authenticationserver/source/server/transientkey.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTransientKey declaration
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-
-#ifndef TRANSIENTKEY_H
-#define TRANSIENTKEY_H
-
-#include <pbe.h>
-#include "authserver_client.h"
-#include "encryptedprotectionkey.h"
-
-namespace AuthServer
-{
-
-/**
- * CTransientKey is a cryptographic key that is generated on the fly and never
- * stored on the device.  Transient keys are used to encrypt and decrypt
- * protection keys, they are generated by the AuthServer using data gathered
- * from CAuthPlugin derived classes.
- */
-class CTransientKey : public CBase
-	{
-public:
-	
-	/**
-	 * Creates a new transient key, passing in the plugin data from which to
-	 * derive it.
-	 *
-	 * @param aEncryptor encryption element to use as the key. Ownership
-	 * passes to this object.
-	 **/
-	static CTransientKey* NewL(CPBEncryptElement* aEncryptor);
-
-	/**
-	 * Creates a new transient key, passing in the plugin data from which to
-	 * derive it.
-	 *
-	 * @param aEncryptor encryption element to use as the key. Ownership
-	 * passes to this object.
-	 **/
-	static CTransientKey* NewLC(CPBEncryptElement* aEncryptor);
-
-	~CTransientKey();
-
-	/**
-	 * Create an version of the provided protection key encrypted by this
-	 * key. Ownership of the returned object is passed to the caller.
-	 *
-	 * @param aKey the protection key to encrypt.
-	 *
-	 * @return an protection key encrypted by this key.
-	 **/
-	CEncryptedProtectionKey* EncryptL(const CProtectionKey& aKey) const;
-
-	/**
-	 * Decrypts an CEncryptedProtectionKey created by this transient
-	 * key. Ownership of the returned object is passed to the caller.
-	 *
-	 * @param aKey the encrypted protection key to decrypt.
-	 *
-	 * @return a protection key
-	 **/
-	CProtectionKey* DecryptL(const CEncryptedProtectionKey& aKey) const;
-
-		
-private:
-	void ConstructL(CPBEncryptElement* aEncryptor);
-	
-	CPBEncryptElement* iPbeElement;
-    };
-}
-
-#endif // TRANSIENTKEY_H
--- a/authenticationservices/authenticationserver/source/server/transientkeyinfo.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTransientKeyInfo implementation
-*
-*/
-
-
-/**
- @file 
-*/
-#include <pbedata.h>
-#include "authserver_impl.h"
-
-using namespace AuthServer;
-
-CTransientKeyInfo* CTransientKeyInfo::NewL(
-	TPluginId aPluginId)
-	{
-	CTransientKeyInfo*  key =
-		CTransientKeyInfo::NewLC(aPluginId);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-CTransientKeyInfo* CTransientKeyInfo::NewLC(
-	TPluginId aPluginId)
-	{
-	CTransientKeyInfo*  key = new (ELeave) CTransientKeyInfo();
-	CleanupStack::PushL(key);
-	key->ConstructL(aPluginId);
-	return key;
-	}
-
-void CTransientKeyInfo::ConstructL(TPluginId aPluginId)
-	{
-	iPluginId = aPluginId;
-	}
-
-CTransientKeyInfo* CTransientKeyInfo::NewL(RReadStream& aInputStream)
-	{
-	CTransientKeyInfo*  key =
-		CTransientKeyInfo::NewLC(aInputStream);
-	CleanupStack::Pop(key);
-	return key;
-	}
-
-CTransientKeyInfo* CTransientKeyInfo::NewLC(RReadStream& aInputStream)
-	{
-	CTransientKeyInfo*  key = new (ELeave) CTransientKeyInfo();
-	CleanupStack::PushL(key);
-	key->InternalizeL(aInputStream);
-	return key;
-	}
-
-
-CTransientKeyInfo::~CTransientKeyInfo()
-	{
-	delete iEncryptedKey;
-	delete iEncryptionData;
-	}
-
-CTransientKey*
-CTransientKeyInfo::CreateTransientKeyL(const TDesC8& aPluginData) const
-	{
-	CPBEncryptElement* encrypt = 0;
-	if (!iEncryptionData)
-		{
-		// Plugin data used as password
-		encrypt = CPBEncryptElement::NewL(aPluginData);
-		CleanupStack::PushL(encrypt);
-		iEncryptionData = CPBEncryptionData::NewL(encrypt->EncryptionData());
-		}
-	else
-		{
-		// Plugin data used as password
-		encrypt = CPBEncryptElement::NewL(*iEncryptionData, aPluginData);			
-		CleanupStack::PushL(encrypt);
-		}
-	
-	CTransientKey* key = CTransientKey::NewL(encrypt);	// Ownership of encrypt transferred
-	CleanupStack::Pop(encrypt);
-	return key;
-	}
-
-const CEncryptedProtectionKey& CTransientKeyInfo::EncryptedKey() const
-	{
-	return *iEncryptedKey;
-	}
-
-void CTransientKeyInfo::SetEncryptedProtectionKeyL(
-    CEncryptedProtectionKey* aEncryptedKey)
-	{
-	if (iEncryptedKey != 0)
-		{
-		User::Leave(KErrAlreadyExists);
-		}
-	
-	iEncryptedKey = aEncryptedKey;
-	}
-  
-void CTransientKeyInfo::ExternalizeL(RWriteStream& aOutStream) const
-	{
-	ASSERT(iEncryptedKey != 0);
-	
-	aOutStream << iPluginId;
-	aOutStream << *iEncryptedKey;
-	aOutStream << *iEncryptionData;
-	}
-
-void CTransientKeyInfo::InternalizeL(RReadStream& aInStream)
-	{
-	iPluginId = aInStream.ReadInt32L();
-	iEncryptedKey = CEncryptedProtectionKey::NewL(aInStream);
-	iEncryptionData  = CPBEncryptionData::NewL(aInStream);
-	}
-
-TPluginId CTransientKeyInfo::PluginId() const
-  {
-  return iPluginId;
-  }
--- a/authenticationservices/authenticationserver/source/server/transientkeyinfo.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,120 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTransientKeyInfo declaration
-*
-*/
-
-
-/**
- @file 
- @released
- @internalComponent
-*/
-
-#ifndef TRANSIENTKEYINFO_H
-#define TRANSIENTKEYINFO_H
-
-#include "transientkey.h"
-
-namespace AuthServer
-{
-
-/**
- * CTransientKeyInfo holds persistent data related to transient keys which it
- * also generates. The class records the parameters required to (re)generate a
- * transient key from the plugin data, and is used to link encrypted protection
- * keys a generated transient key.
- */
-class CTransientKeyInfo : public CBase
-	{
-public:
-	/**
-	 * Sets member data from parameters and randomly initialises the transient
-	 * key generation parameters. Use this method to create a key
-	 * for encrypting a new key.
-	 **/
-	static CTransientKeyInfo* NewL(TPluginId  aPluginId);
-
-	/**
-	 * Sets member data from parameters and randomly initialises the transient
-	 * key generation parameters. Use this method to create a key
-	 * for encrypting a new key.
-	 **/
-	static CTransientKeyInfo* NewLC(TPluginId  aPluginId);
-
-	/**
-	 * Reads all data from the input stream. Use this method to recreate a key
-	 * used to encrypt a key.
-	 **/
-	static CTransientKeyInfo* NewL(RReadStream& aInputStream);
-	
-	/**
-	 * Reads all data from the input stream. Use this method to recreate a key
-	 * used to encrypt a key.
-	 **/
-	static CTransientKeyInfo* NewLC(RReadStream& aInputStream);
-
-	~CTransientKeyInfo();
-
-	/**
-	 * @return the id of the plugin that was used to generate the transient
-	 * key.
-	 **/
-	TPluginId PluginId() const;
-
-	/**
-	 * @return the encrypted protection key
-	 * key.
-	 **/
-	const CEncryptedProtectionKey& EncryptedKey() const;
-
-    /**
-	 * Assign the encrypted protection key associated with the transient
-	 * key. Ownership of the key is taken by this object.
- 	 *
-	 * @param aEncryptedKey the protection key encrypted with this transient key.
-	 **/
-    void SetEncryptedProtectionKeyL(CEncryptedProtectionKey* aEncryptedKey);
-	  
-	/**
-	 * Create transient key using the plugin data. If this object was created
-	 * from a stream the method will leave with KErrBadPassword if the plugin
-	 * data does not match the original. Ownership of the CTransientKey object
-	 * is returned to the caller.
-	 **/ 
-	CTransientKey* CreateTransientKeyL(const TDesC8& aPluginData) const;
-
-	/**
-	 *
-	 **/
-	void ExternalizeL(RWriteStream& aOutStream) const;
-
-private:
-	
-    void ConstructL(TPluginId aPluginId);
-    void InternalizeL(RReadStream& aInStream);
-
-	/// the id of the plugin that encrypted the key
-	TPluginId iPluginId;
-		
-	/// the encrypted protection key
-	CEncryptedProtectionKey* iEncryptedKey;
-	
-	/// the encryption parameters
-	mutable CPBEncryptionData* iEncryptionData;
-    };
-}
-
-#endif // TRANSIENTKEYINFO_H
--- a/authenticationservices/authenticationserver/test/authtool/authtool.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,185 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* AuthTool provides a console interface to the AuthServer query
-* methods, basically dumping the contents of the AuthServer's database.
-*
-*/
-
-
-/**
- @file 
-*/
-#include <e32cons.h>
-#include "authserver_client.h"
-
-using namespace AuthServer;
-
-_LIT(KAnyStr, "Default");
-_LIT(KBiometricStr, "Biometric");
-_LIT(KKnowledgeStr, "Knowledge");
-_LIT(KTokenStr, "Token");
-
-TAuthPluginType types[] = { EAuthDefault, EAuthBiometric, EAuthKnowledge, EAuthToken };
-TPtrC typeNames[] = {KAnyStr(), KBiometricStr(), KKnowledgeStr(), KTokenStr() }; 
-
-_LIT(KUnTrainedStr, "Untrained");
-_LIT(KTrainedStr , "Trained");
-_LIT(KFullyTraininedStr, "Fully Trained");
-TPtrC trainNames[] = { KUnTrainedStr(), KTrainedStr(), KFullyTraininedStr() }; 
-
-_LIT(KMsgAuthToolPanic,"AuthTool: ");
-
-TInt ExtractDetailsL();
-TInt DisplayPlugins(RPluginDescriptions&);
-
-
-GLDEF_C TInt E32Main()
-    {
-    __UHEAP_MARK;
-	
-    CTrapCleanup* cleanupstack=CTrapCleanup::New(); 
-    TRAPD(error,ExtractDetailsL());
-    __ASSERT_ALWAYS(!error,User::Panic(KMsgAuthToolPanic, error)); 
-    delete cleanupstack;
-	
-    __UHEAP_MARKEND;
-    return 0;
-    }
-
-CConsoleBase* console = 0;
-
-TInt ExtractDetailsL()
-  {
-  // create the console
-  console = Console::NewL(_L("AuthTool"),
-										TSize(KDefaultConsWidth,
-											  KDefaultConsHeight));
-  CleanupStack::PushL(console);
-    
-  // connect to server
-  RAuthClient authClient;
-  User::LeaveIfError(authClient.Connect());
-  CleanupClosePushL(authClient);
-
-  // get the plugins
-  RPluginDescriptions plugins;
-  authClient.PluginsL(plugins);
-  CleanupClosePushL(plugins);
-
-  DisplayPlugins(plugins);
-  
-  // get the preferences
-  console->Printf(_L("\nPreferences\n-----------\n"));
-
-  TInt count = sizeof(types)/sizeof(TInt);
-  for (TInt i = 0  ; i < count ; ++i)
-	{
-    console->Printf(_L("%10S : 0x%x\n"), &typeNames[i],
-					authClient.PreferredTypePluginL(types[i]));
-	}
-  console->Printf(_L("\nPress any key to continue\n"));
-  console->Getch();
-
-  // get the identities
-  console->Printf(_L("\nIdentities\n-----------\n"));
-  
-  RIdentityIdArray ids;
-  authClient.IdentitiesL(ids);
-  CleanupClosePushL(ids);
-  
-  for (TInt index = 0  ; index < ids.Count(); ++index)
-	{
-    HBufC* str = authClient.IdentityStringL(ids[index]);	
-
-	CleanupStack::PushL(str);
-	if (str != 0)
-	  {
-      console->Printf(_L("0x%x : %S\n"), ids[index],
-						str);
-	  }
-	else
-	  {
-      console->Printf(_L("0x%x : No Name\n"), ids[index]);
-	  }
-	CleanupStack::PopAndDestroy(str);
-	}
-  console->Printf(_L("\nPress any key to finish\n"));	
-  console->Getch();
-
-  CleanupStack::PopAndDestroy(4,console);
-  return 0;
-  }
-
-TPtrC* train(TAuthTrainingStatus aT)
-  {
-  TInt idx =0; 
-  switch (aT)
-	{
-  case EAuthUntrained:
-	idx = 0;
-	break;
-  case EAuthTrained:
-	idx = 1;
-	break;
-  case EAuthFullyTrained:
-	idx = 2;
-	break;
-	}
-  return &trainNames[idx];
-  } 
-
-TPtrC* type(TAuthPluginType aT)
-  {
-  TInt idx =0; 
-  switch (aT)
-	{
-  case EAuthDefault:
-	idx = 0;
-	break;
-  case EAuthBiometric:
-	idx = 1;
-	break;
-  case EAuthKnowledge:
-	idx = 2;
-	break;
-  case EAuthToken:
-	idx = 3;
-	break;
-  case EAuthPerformance:
-	idx = 4;
-	break;
-	}
-  return &typeNames[idx];
-  } 
-
-TInt DisplayPlugins(RPluginDescriptions& aPlugins)
-  {
-  console->Printf(_L("\nPlugin Descriptions\n-------------------\n"));
-  for (TInt i = 0  ; i < aPlugins.Count(); ++i)
-	{
-	console->Printf(_L("ID            : 0x%x\n"), aPlugins[i]->Id());
-	console->Printf(_L("Name          : %S\n"), aPlugins[i]->Name());
-	console->Printf(_L("Type          : %S\n"), type(aPlugins[i]->Type()));
-	console->Printf(_L("Training      : %S\n"), train(aPlugins[i]->TrainingStatus()));
-	console->Printf(_L("#Combinations : %d\n"), aPlugins[i]->MinEntropy());
-	console->Printf(_L("FPR           : %d\n"), aPlugins[i]->FalsePositiveRate());
-	console->Printf(_L("FNR           : %d\n\n"), aPlugins[i]->FalseNegativeRate());
-    console->Printf(_L("\nPress any key to continue\n"));
-    console->Getch();
-	}
-  
-  return 0;
-  }
-
--- a/authenticationservices/authenticationserver/test/authtool/authtool.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose authtool.exe used to dump the contents of the AuthServer's database.
-*/
-
-TARGET	authtool.exe
-TARGETTYPE	exe
-
-UID 0x10000079 0x10001011
-VENDORID 0x70000001
-
-CAPABILITY WriteDeviceData ReadDeviceData ReadUserData WriteUserData
-
-SOURCEPATH	.
-SOURCE authtool.cpp
-
-OS_LAYER_SYSTEMINCLUDE
-USERINCLUDE ../../inc/authserver
-
-LIBRARY	euser.lib authclient.lib authcommon.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/200032E7.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* t_pinplugindlg notifier resource file.
-*
-*/
-
-
-#include <ecom/registryinfo.rh>
-#include <uikon.hrh>
-
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-#include <uiklaf/private/pluginuid.hrh>
-#endif
-
-
-RESOURCE REGISTRY_INFO r_registry
-	{
-	dll_uid = 0x200032E7;
-	interfaces =
-		{
-		INTERFACE_INFO
-			{
-			interface_uid = KUikonUidPluginInterfaceNotifiers;
-			implementations =
-				{
-				BINARY_IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x200032E7;
-					version_no = 1;
-					display_name = "t_pinplugindlg notifier";
-					default_data = {0};
-					opaque_data = {0};
-					}
-				};
-			}
-		};
-	}
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Reference Pin Plugin implementation 
-*
-*/
-
-
-/**
- @file
-*/
-
-PRJ_PLATFORMS
-DEFAULT GCCE
-
-PRJ_EXPORTS
-
-// ROMKIT includes
-../inc/pinplugin.iby /epoc32/rom/include/pinplugin.iby
-
-../inc/pinplugindialogdefs.h				SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pinplugindialogdefs.h)
-
-#ifndef TOOLS
-#ifndef TOOLS2
-
-PRJ_MMPFILES
-pinplugin.mmp
-
-
-PRJ_TESTMMPFILES
-tpinplugin.mmp
-t_pinplugindlg.mmp
-t_pinplugindlg_text.mmp
-
-#endif // TOOLS2
-#endif // TOOLS
-
-PRJ_TESTEXPORTS
-
-// ROMKIT includes
-../inc/tpinplugin.iby /epoc32/rom/include/tpinplugin.iby
-
-../tpinplugin/scripts/tpinplugin.script 	 /epoc32/winscw/c/tauth/tpinplugin/scripts/tpinplugin.script
-../tpinplugin/scripts/tpinplugin.ini		 /epoc32/winscw/c/tauth/tpinplugin/scripts/tpinplugin.ini
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/pinplugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-TARGET 		pinplugin.dll
-TARGETTYPE 	PLUGIN
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID			0x10009D8D 0x200032E4
-VENDORID		0x70000001
-CAPABILITY	TrustedUI ProtServ ReadDeviceData WriteDeviceData Location SurroundingsDD UserEnvironment ReadUserData WriteUserData AllFiles 
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-USERINCLUDE	.
-
-USERINCLUDE	../pinplugin
-USERINCLUDE	../../../inc_private
-
-SOURCEPATH	../pinplugin
-SOURCE		pinplugin.cpp		
-SOURCE		pinpluginao.cpp
-SOURCE		pinplugindb.cpp
-SOURCE		pinplugindialog.cpp
-
-
-start resource 200032E4.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET pinplugin.rsc
-#endif
-end
-
-start resource pinpluginconfig.rss
-TARGETPATH /resource/pinplugin
-HEADER
-end
-
-
-LIBRARY	ecom.lib
-LIBRARY	euser.lib
-LIBRARY	estor.lib
-LIBRARY	efsrv.lib  	
-LIBRARY	hash.lib
-LIBRARY	bafl.lib
-LIBRARY	authcommon.lib 
-SMPSAFE
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg.mmh	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tpinplugindlg.mmh
-* The Test nofifier is built both as a text shell and as an extended notifer
-*
-*/
-
-
-#ifdef T_PINPLUGINDLG_TEXTSHELL
-
-MACRO _T_PINPLUGINDLG_TEXTSHELL
-
-TARGET          tpinplugindlg_text.dll
-TARGETTYPE      TEXTNOTIFIER2
-TARGETPATH  	\sys\bin\tnotifiers
-
-UID				0x101fe38b 0x200032E7
-
-#else
-
-TARGET          tpinplugindlg.dll
-TARGETTYPE		PLUGIN
-UID				0x10009d8d 0x200032E7
-
-LIBRARY			eiksrv.lib
-
-start resource	200032E7.RSS
-target tpinplugindlg.rsc
-end
-
-#endif
-
-CAPABILITY    	All -Tcb
-
-USERINCLUDE		.
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(techview)
-MW_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-SOURCEPATH	    ..\tpinplugindlg
-
-SOURCE			tpinplugindlg.cpp
-
-LIBRARY			euser.lib 
-LIBRARY			estor.lib 
-LIBRARY			efsrv.lib
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Tpinplugindlg.mmp
-*
-*/
-
-
-#include "t_pinplugindlg.mmh"
-
-VENDORID 0x70000001
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/t_pinplugindlg_text.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#define T_PINPLUGINDLG_TEXTSHELL
-
-#include "t_pinplugindlg.mmh"
-
-VENDORID 0x70000001
-SMPSAFE
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/group/tpinplugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tpinplugin.exe Tests plugin
-*
-*/
-
-
-/**
- @file
-*/
-
-TARGET      	tpinplugin.exe
-TARGETTYPE  	exe
-
-// To allow setcap to work
-ROMTARGET    // Empty ROM path means don't include normal execute-in-place file
-RAMTARGET /sys/bin/    // Target path (in ROM) for RAM executable image
-
-UID         	0x102740FC 0x102740FC 
-VENDORID    	0x70000001
-
-CAPABILITY TrustedUI ProtServ ReadDeviceData WriteDeviceData Location SurroundingsDD UserEnvironment
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(authserver)
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-USERINCLUDE		.
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../inc_private
-USERINCLUDE     ../pinplugin
-
-SOURCEPATH  	../tpinplugin
-SOURCE			tpinplugin.cpp
-SOURCE			tpinpluginteststep.cpp
-SOURCE			tpinplugintestactive.cpp
-
-
-LIBRARY     	euser.lib
-LIBRARY			testexecuteutils.lib
-LIBRARY			testexecutelogclient.lib
-LIBRARY			bafl.lib
-LIBRARY			ecom.lib
-LIBRARY			estor.lib
-LIBRARY			efsrv.lib
-LIBRARY			authcommon.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/reftestplugin/inc/pinplugin.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __PINPLUGIN_IBY__
-#define __PINPLUGIN_IBY__
-
-REM Pinplugin a reference Plugin
-ECOM_PLUGIN(pinplugin.dll, 0x200032E4.rsc)
-data=MULTI_LINGUIFY(RSC ZRESOURCE\pinplugin\pinpluginconfig			resource\pinplugin\pinpluginconfig)
-
-#endif
--- a/authenticationservices/authenticationserver/test/reftestplugin/inc/pinplugindialogdefs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,174 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file 
- @internalAll
- @test
-*/
-
-#ifndef __PINPLUGINDIALOGDEFS_H__
-#define __PINPLUGINDIALOGDEFS_H__
-
-/** PinPlugin Dialog Notifier Uid */
-const TUid KUidPinPluginDialogNotifier = { 0x200032E6 };
-/** Pinplugin Dialog Notification for the DialogOperation */
-typedef TUint TPinPluginDialogNotification;
-
-
-/**
- Defines the operations provided by the Pin Plugin dialog. 
- It is used to identify the operation when transferring over to the notifier plugin.
- */
-enum TPinPluginDialogOperation
-	{
-	/** Displays the message about Training/Retraining/Identify process met success/failure */
-	EPinPluginInfo = 0x100,
-	/** Train/ReTrain Pin */
-	EPinPluginTraining = 0x102,
-	/** Identify Pin */
-	EPinPluginIdentify = 0x104
-	};
-	
-/** Pinplugin Dialog Operation Bit Mask */
-const TUint KPinPluginDialogOperationMask = 0xFFFF;
-
-/** 
- Pinplugin Info Message display about the result for few seconds
- without expecting the user input.
- */
-enum TPinPluginInfoMessage 
-	{
-	/** PinPlugin TrainingSuccess Message */
-	EPinPluginTrainingSuccess = 0,
-	/** PinPlugin ReTrainingSuccess Message */
-	EPinPluginReTrainingSuccess,
-	/** PinPlugin IdentificationSuccess Message */
-	EPinPluginIdentificationSuccess,
-	/** PinPlugin IdentificationFailure Message */
-	EPinPluginIdentificationFailure
-	};
-
-/** PinPlugin TrainingMessage display the process is Train/ReTrain */
-enum TPinPluginTrainingMessage
-	{
-	/** ETraining */
-	ETraining = 0x10,
-	/** EReTraining */
-	EReTraining
-	};
-	
-/** PinPlugin DialogResult used to get the result of the Dialog */
-enum TPinPluginDialogResult
-	{
-	/** Command OK */
-	EOk = 0x01,
-	/** Command CANCEL */
-	ECancel,
-	/** Command QUIT */
-	EQuit,
-	/** Command NEXT */
-	ENext
-	};
-
-/** The max Pin length should not exceed 32, because this is the maximum
- *	size possible in the CEikSecretEditor class. */
-const TInt KMaxPinLength = 32;
-
-/** A Pin value */
-typedef TBuf8<KMaxPinLength> TPinValue;
-
-
-/**  Input data for the PinIdentify */
-class TPinIdentifyInput
-	{
-public:
-	TPinPluginDialogNotification iOperation;
-
-	/** minimum pin length */
-	TInt iMinLength;
-	/** maximum pin length */
-	TInt iMaxLength;
-	/** retry true or not */
-	TBool iRetry;
-	};
-
-/** Pin IdentifyInput Buffer */
-typedef TPckgBuf<TPinIdentifyInput> TPinIdentifyInputBuf;
-
-/** Input data for the PinTraining */
-class TPinTrainingInput
-	{
-public:
-	TPinPluginDialogNotification iOperation;
-	TPinPluginTrainingMessage iMessage;
-	
-	/** minimum pin length */
-	TInt iMinLength;
-	/** maximum pin length */
-	TInt iMaxLength;
-	/** current pin length used for the pinvalues */
-	TInt iCurrentPinLength;
-	/** Random PinValue for Choice 1 */
-	TPinValue iPinValue1;
-	/** Random PinValue for Choice 2 */
-	TPinValue iPinValue2;
-	/** Random PinValue for Choice 3 */
-	TPinValue iPinValue3;
-	/** Random PinValue for Choice 4 */
-	TPinValue iPinValue4;
-	};
-
-/** Pin TrainingInput Buffer */
-typedef TPckgBuf<TPinTrainingInput> TPinTrainingInputBuf;
-
-/** Input data for the PinInfo */
-class TPinInfoInput
-	{
-public:
-	TPinPluginDialogNotification iOperation;
-	TPinPluginInfoMessage iMessage;
-	};
-
-/** The buffer holds the Message about the result of the Training/ReTraining success
-    or Identification success/failure for few seconds without expecting the user input. */
-typedef TPckgBuf<TPinInfoInput> TPinInfoInputBuf;
-
-
-/** Output data for the PinIdentify, PinTraining */
-class TPinDialogOutput
-	{
-public:
-	/** iPinValue - To get the pinvalue when case is PinIdentify */
-	TPinValue iPinValue;
-	/** 
-	 iIndex - To get the index of selected pin when case is PinTraining 
-	 iIndex value should be within the range 0 - 3.
-	 */
-	TInt iIndex;
-	/** iNewPinLength - To get the new pin length for the next dialog */
-	TInt iNewPinLength; 
-	/** iResult - To get the output command when case is PinTraining / PinIdentify */
-	TPinPluginDialogResult iResult;
-	};
-
-/** The buffer holds the data for the TPinDialogOutput */
-typedef TPckgBuf<TPinDialogOutput> TPinDialogOutputBuf;
-
-
-#endif // __PINPLUGINDIALOGDEFS_H__
--- a/authenticationservices/authenticationserver/test/reftestplugin/inc/tpinplugin.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPINPLUGIN_IBY__
-#define __TPINPLUGIN_IBY__
-
-#include <testexecute.iby>
-
-file=ABI_DIR\BUILD_DIR\tpinplugin.exe		sys\bin\tpinplugin.exe
-ECOM_PLUGIN(tpinplugindlg.dll, 200032E7.rsc)
-
-data = \epoc32\winscw\c\tauth\tpinplugin\scripts\tpinplugin.ini				tauth\tpinplugin\scripts\tpinplugin.ini        attrib=W
-data = \epoc32\winscw\c\tauth\tpinplugin\scripts\tpinplugin.script		    tauth\tpinplugin\scripts\tpinplugin.script		  
-
-#endif
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/200032E4.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* UIDs quick-ref
-* ECOM DLL UID:		0x200032E4 
-* ECOM interface UID:		0x102740FE
-* ECOM Implementation:		0x200032E5	
-*
-*/
-
-
-
-#include <ecom/registryinfov2.rh>
-
-// Declares info for one implementation
-RESOURCE REGISTRY_INFO theInfo
-	{
-	// UID for the plug-in DLL; matches name of this file
-	dll_uid = 0x200032E4;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-
-	// Declare array of interface info
-	interfaces = 
-		{
-		INTERFACE_INFO
-		 	{
-		 	// UID of interface that is implemented (i.e. CAuthPluginInterface)							
-		 	interface_uid = 0x102740FE;			
-			implementations = 
-				{
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x200032E5;
-					version_no = 1;
-					display_name = "Symbian PIN Plugin Reference Implementation";
-					default_data = "200032E5";
-					opaque_data = "";
-					rom_only=1;
-					}
-				};	
-			}
-		};			
-	}		
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpanic.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* The panic String and panic code declarations	
-*
-*/
-
-
-/**
- @file 
-*/
-
-#ifndef __PINPANIC_H__
-#define __PINPANIC_H__
-
-/** Panic codes generated by the pinplugin */
-enum TPinPanics
-	{
-	/** The Resource file configuration values are not valid */
-	EPinPanicInvalidConfigValues=0,
-	/** The new Pinlength received from Dialog Interface is incorrect */
-	EPinPanicInvalidPinLength=1,
-	/** The index of the selected Pin for the Train process otherthan 0 - 3 */
-	EPinPanicIncorrectIndex=2
-	};
-
-/** The Panic String to Display */
-_LIT(KPinPluginPanicString,"PINPLUGIN");
-
-#endif // __PINPANIC_H__
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,257 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPlugin implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-
-#include "pinplugin.h"
-#include <bautils.h>
-#include <barsread.h>
-#include <e32math.h>
-#include <pinpluginconfig.rsg>
-#include <ecom/ecom.h>
-#include <ecom/implementationproxy.h>
-#include <f32file.h>
-
-using namespace AuthServer;
-
-_LIT(KPinPluginResourceFile, "z:\\Resource\\pinplugin\\pinpluginconfig.rsc");
-
-const TPluginId KPinPluginImplementationUid = 0x200032E5;
-
-CPinPlugin* CPinPlugin::NewL()
- 	{
- 	CPinPlugin* self = CPinPlugin::NewLC();
- 	CleanupStack::Pop();
- 	return self;
-	}
-	
-CPinPlugin* CPinPlugin::NewLC()
-	{
-	CPinPlugin* self = new(ELeave) CPinPlugin();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-	
-CPinPlugin::~CPinPlugin()
-	{
-	delete iPinPluginAO;
-	delete iPinName;
-	delete iPinDescription;
-	}
-
-CPinPlugin::CPinPlugin()
-	{	
-	iActive = ETrue;
-	}
-		
-void CPinPlugin::ConstructL()
-	{
-	TInt retryCount, pinSize, pinMinSize, pinMaxSize;
-	TReal val;
-	
-	// Verifies the UID/SID of the Authentication server
-	// to make sure pinplugin is loaded from Authentication server.  
-	RProcess process;
-        
-	ReadResourceL(retryCount, pinSize, pinMinSize, pinMaxSize);
-
-	__ASSERT_ALWAYS(retryCount >= 0 && pinSize >= 0 && pinMinSize >= 0 &&
-	 		pinMaxSize >= 0 && pinSize >= pinMinSize && pinSize <= pinMaxSize,
-	 		User::Panic(KPinPluginPanicString(), EPinPanicInvalidConfigValues));
-
-	iName.Set(iPinName->Des());
-	iDescription.Set(iPinDescription->Des());
-	Math::Pow10(val, pinMinSize);
-	// since pinMinSize is always a Int value, val never have a floating point
-	// in future if entropy is changed to have real value also, it will work
-	// now in our case, compiler do the default truncation.
-	iMinEntropy = val;
-	iFalsePositiveRate = 0;
-	iFalseNegativeRate = 0;
-	iType = AuthServer::EAuthKnowledge;
-	 
-	//Create a new implementation object
-	iPinPluginAO = CPinPluginAO::NewL(pinSize, pinMinSize, pinMaxSize, retryCount);
-	
-	SetPluginStateL();
-	
-	}
-	
-	
-//Implement CAuthPluginInterface definitions
-
-void CPinPlugin::Identify(TIdentityId& aId,const TDesC& aClientMessage,
-						  HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	iPinPluginAO->Identify(aId, aClientMessage, aResult, aRequest);
-	}
-	
-void CPinPlugin::Cancel()
-	{
-	iPinPluginAO->Cancel();		
-	}
-
-void CPinPlugin::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	iPinPluginAO->Train(aId, aResult, aRequest);
-	}
-
-TInt CPinPlugin::Forget(TIdentityId aId)
-	{
-	return iPinPluginAO->Forget(aId);
-	}
-
-TBool CPinPlugin::IsActive() const
-	{
-	return iActive;
-	}
-	
-TInt CPinPlugin::DefaultData(TIdentityId aId, HBufC8*& aOutputBuf)
-	{
-	return iPinPluginAO->DefaultData(aId, aOutputBuf);
-	}
-
-TInt CPinPlugin::Reset(TIdentityId aIdentityId, const TDesC& aRegistrationData, HBufC8*& aResult)
-	{
-	TRAPD(err, iPinPluginAO->ResetL(aIdentityId, aRegistrationData, aResult));
-	return err;
-	}
-
-TPluginId CPinPlugin::Id() const
-	{
-	return KPinPluginImplementationUid;
-	}
-
-void CPinPlugin::ReadResourceL(TInt& aRetryCount, TInt& aPinSize, TInt& aPinMinSize,
-							TInt& aPinMaxSize)
-	{
-	RFs fs;
-	TFileName fileName(KPinPluginResourceFile);
-	User::LeaveIfError(fs.Connect());
-	CleanupClosePushL(fs);
-	BaflUtils::NearestLanguageFile(fs,fileName);
-	RResourceFile resourceFile;
-	resourceFile.OpenL(fs,fileName);
-	CleanupClosePushL(resourceFile);
-	resourceFile.ConfirmSignatureL(0);
-	resourceFile.Offset();
-	
-	aRetryCount = ResourceValueL(resourceFile, R_IDENTIFY_DIALOG_RETRY_COUNT);
-	aPinSize = ResourceValueL(resourceFile, R_PIN_SIZE);
-	aPinMinSize = ResourceValueL(resourceFile, R_PIN_MIN_SIZE);
-	aPinMaxSize = ResourceValueL(resourceFile, R_PIN_MAX_SIZE);
-
-	HBufC8* res = resourceFile.AllocReadLC(R_PLUGIN_INFO);
-	TResourceReader reader;
-	reader.SetBuffer(res);
-	iPinName = reader.ReadTPtrC().AllocL();
-	iPinDescription = reader.ReadTPtrC().AllocL();
-	CleanupStack::PopAndDestroy(3, &fs);
-	}
-
-TInt CPinPlugin::ResourceValueL(RResourceFile& aResFile, const TInt aResourceID)
-	{
-	TResourceReader reader;
-	HBufC8* res = aResFile.AllocReadLC(aResourceID);
-	reader.SetBuffer(res);
-	TInt val = reader.ReadInt8();
-	CleanupStack::PopAndDestroy(res);
-	return val;
-	}
-	
-void CPinPlugin::SetPluginStateL()
-	{
-	// identifies the pinplugins state by looking for a file 
-	// in system drive.
-	_LIT(KPinPlugin,"pinplugin_inactive.txt");
-	TFileName filename;
-	filename.Copy(KPinPlugin); // convert from 8 -> 16 bit descriptor
-			
-	TDriveUnit sysDrive = RFs::GetSystemDrive();
-	TDriveName sysDriveName (sysDrive.Name());
-	filename.Insert(0,sysDriveName);
-	filename.Insert(2,_L("\\"));
-		
-	RFs fs;
-	User::LeaveIfError(fs.Connect());
-	TEntry entry;
-	TInt err = fs.Entry(filename, entry);
-	if(err == KErrNone)
-		{
-		iActive = EFalse;
-		}
-	else if( err == KErrNotFound )
-		{
-		iActive = ETrue;
-		}
-	else
-		{
-		User::LeaveIfError(err);
-		}
-	}
-
-// Map the interface UIDs to implementation factory functions
-const TImplementationProxy ImplementationTable[] = 
-	{
-	IMPLEMENTATION_PROXY_ENTRY(KPinPluginImplementationUid,	CPinPlugin::NewL)
-	};
-
-// Exported proxy function to resolve intstantiation methods for an ECOM plugin dll
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return ImplementationTable;
-	}
-
-
-const TPtrC& CPinPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CPinPlugin::Description() const
-  {
-  return iDescription;
-  }
-TAuthPluginType CPinPlugin::Type() const 
-  {
-  return iType;
-  }
-
-TEntropy CPinPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-TPercentage CPinPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-TPercentage CPinPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPlugin is an CAuthPluginInterface implementation.
-*
-*/
-
-
-/**
- @file 
- @internalAll
- @test
-*/
-
-
-#ifndef PIN_PLUGIN_H
-#define PIN_PLUGIN_H
-
-#include <barsc.h>
-#include <authserver/authplugininterface.h>
-#include "pinpluginao.h"
-
-/**
- An implementation of the CAuthPluginInterface definition
- */
-class CPinPlugin : public AuthServer::CAuthPluginInterface
-	{
-public:
-	/** static methods to constuct the object of the CPinPlugin */
-	static CPinPlugin* NewL();
-	static CPinPlugin* NewLC();
-	/** Destructor */
-	~CPinPlugin();
-
-public:			//from CAuthPluginInterface
-	void Identify(AuthServer::TIdentityId& aId, const TDesC& aClientMessage,
-				  HBufC8*& aResult, TRequestStatus& aRequest);	
-	void Train(AuthServer::TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);		
-	TInt Forget(AuthServer::TIdentityId aId);
-	TInt DefaultData(AuthServer::TIdentityId aId, HBufC8*& aOutputBuf);
-	TInt Reset(AuthServer::TIdentityId aIdentityId, const TDesC& aRegistrationData, HBufC8*& aResult);
-	TBool IsActive() const;
-	void Cancel();
-	AuthServer::TPluginId Id() const;
-	const TPtrC& Name() const;
-	const TPtrC& Description() const;
-	AuthServer::TEntropy MinEntropy() const;
-	AuthServer::TPercentage FalsePositiveRate() const;
-	AuthServer::TPercentage FalseNegativeRate() const;
-	AuthServer::TAuthPluginType Type() const;
-private:
-	/** 
-	  Second Phase Constructor
-	  @panic EPinPanicInvalidConfigValues	if the resource file contains the invalid entries
-	  */
-	void ConstructL();
-	/** Constructor */
-	CPinPlugin();
-	/**
-	 Opens the Resource file and Read the values from it.
-	 
-	 @param aRetryCount		On return, it holds Retry Count value.
-	 @param aPinSize		On return, it holds Default Pin Size.
-	 @param aPinMinSize		On return, it holds Minimum Pin Size.
-	 @param aPinMaxSize		On return, it holds Maximum Pin Size.
-	 */
-	void ReadResourceL(TInt& aRetryCount, TInt& aPinSize, TInt& aPinMinSize,
-					TInt& aPinMaxSize);
-	/**
-	 Utility function to give a value for a particular resource Id.
-	 
-	 @param aResFile		The resource file to be read
-	 @param aResourceID		The resource Id to be read from the resource file
-	 @return				returns the value read from the resource file.
- 	 */
-	TInt ResourceValueL(RResourceFile& aResFile, const TInt aResourceID);
-
-	void SetPluginStateL();
-	
-private:
-	/** CPinpluginAO object to process the operation in AO */
-	CPinPluginAO* iPinPluginAO;
-	/** The name of plugin read from the resource file */
-	HBufC* iPinName;
-	/** The Description for the plugin read from the resource file */
-	HBufC* iPinDescription;
-protected:
-	/// The name of the plugin. Derived classes should set this member.
-	TPtrC iName;
-	/// The plugin's description. Derived classes should set this member.
-	TPtrC iDescription;
-	/// The minumum entropy provided by the plugin. Derived classes should set
-	/// this member.
-	AuthServer::TEntropy iMinEntropy;
-	/// The false positive rate of the plugin. Derived classes should set this
-	/// member.
-	AuthServer::TPercentage iFalsePositiveRate;
-	/// The false negative rate of the plugin. Derived classes should set this
-	/// member.
-	AuthServer::TPercentage iFalseNegativeRate;
- 	/// The type of the plugin. Derived classes should set this member.
-	AuthServer::TAuthPluginType iType;
-	/// the state of the plugin.
-	TBool iActive;
-	};
-
-#endif	/* PIN_PLUGIN_H */
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugin.rh	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#define KMaxLength 256
-
-STRUCT PIN_SIZE
-	{
-	LONG pinsize;
-	}
-
-STRUCT PIN_MIN_SIZE
-	{
-	LONG minsize;
-	}
-
-STRUCT PIN_MAX_SIZE
-	{
-	LONG maxsize;
-	}
-
-STRUCT IDENTIFY_DIALOG_RETRY_COUNT
-	{
-	LONG retrycount;
-	}
-
-STRUCT PLUGIN_INFO
-	{
-	LTEXT name(KMaxLength) = "";
-	LTEXT Description(KMaxLength) = "";
-	}
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,477 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginAO implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "pinpluginao.h"
-#include <hash.h>
-#include <authserver/auth_srv_errs.h>
-#include <authserver/authtypes.h>
-#include <e32math.h>
-
-using namespace AuthServer;
-
-/** 
- KDefaultPinDigit is used to generate the default pinvalue for the DefaultData().
- The default pinvalue is generated by appending KDefaultPinDigit for iPinSize times.
- */
-const TUint KDefaultPinDigit = 1;
-
-/** 
- The selected pin index for the Train/Retrain operation, returned by
- Dialog Notifier should be in the range KIndexLow and KIndexHigh. This should
- be validated in the Dialog implementation. If Pinplugin receives any other
- values, then pinplugin will panic.
- */
-const TInt KIndexLow = 0;
-const TInt KIndexHigh = 3;
-
-CPinPluginAO* CPinPluginAO::NewL(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount)
-	{
-	CPinPluginAO* self = CPinPluginAO::NewLC(aPinSize, aPinMinSize, aPinMaxSize, aRetryCount);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CPinPluginAO* CPinPluginAO::NewLC(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount)
-	{
-	CPinPluginAO* self = new(ELeave) CPinPluginAO(aPinSize, aPinMinSize, aPinMaxSize, aRetryCount);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-	
-CPinPluginAO::CPinPluginAO(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount)
-	:CActive(EPriorityStandard), iRetryCount(aRetryCount), iPinSize(aPinSize), iPinMinSize(aPinMinSize),
-	iPinMaxSize(aPinMaxSize)
-	{
-	CActiveScheduler::Add(this);
-	}
-	
-void CPinPluginAO::ConstructL()
-	{
-	iNewPinSize = iPinSize;
-	
-	// construct PinpluginDialog
-	iPinPluginDialog = CPinPluginDialog::NewL();
-	// construct the DB
-	iPinPluginDb = CPinPluginDB::NewL();
-	iDialogResult = new (ELeave) TPinPluginDialogResult;
-	iRetryRefCount = iRetryCount;
-	}
-
-CPinPluginAO::~CPinPluginAO()
-	{
-	Deque();
-	delete iDialogResult;
-	delete iPinPluginDialog;
-	delete iPinPluginDb;
-	iPinList.ResetAndDestroy();
-	iIdKeyList.ResetAndDestroy();
-	iIdKeyHashList.ResetAndDestroy();
-	}
-	
-void CPinPluginAO::Identify(TIdentityId& aId, const TDesC& aClientMessage,
-							HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	iState = EIdentify;
-	iIdentityId = aId;
-	iIdentityIdPtr = &aId;
-	
-	aRequest = KRequestPending;
-	iRequestStatus = &aRequest;
-
-	iClientMessage = static_cast<const HBufC*>(&aClientMessage);
-	iResult = &aResult;
-	aResult = NULL;	
- 
-	SetActive();
-	TRequestStatus* stat = &iStatus;
-	User::RequestComplete(stat, KErrNone);
-	}
-
-void CPinPluginAO::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	iState = ETrain;
-	iIdentityId = aId;
-
-	aRequest = KRequestPending;
-	iRequestStatus = &aRequest;
-
-	iResult = &aResult;
-	aResult = NULL;	
-
-	SetActive();
-	TRequestStatus* stat = &iStatus;
-	User::RequestComplete(stat, KErrNone);
-    }
-	
-TInt CPinPluginAO::DefaultData(TIdentityId aId, HBufC8*& aOutputBuf)
-	{
-	aOutputBuf = NULL;
-	TPinValue defaultPin;
-	for (TInt i = 0; i < iPinSize; i++)
-		{
-		defaultPin.AppendNum(KDefaultPinDigit);	
-		}
-		
-	HBufC8* identityKey = NULL;
-	HBufC8* identityKeyHash = NULL;
-	TRAPD(err, 
-		identityKeyHash = GenerateKeyHashL(defaultPin, identityKey);
-		CleanupStack::PushL(identityKeyHash);
-		CleanupStack::PushL(identityKey);
-		aOutputBuf = (*identityKey).AllocL();
-		iPinPluginDb->AddPinL(aId, *identityKeyHash);
-		CleanupStack::PopAndDestroy(2, identityKeyHash));
-		
-	return err;
-	}
-
-TInt CPinPluginAO::Forget(TIdentityId aId)
-	{
-	TInt err = KErrNone;
-	TRAP(err, iPinPluginDb->RemovePinL(aId));
-	if (err == KErrNotFound)
-		{
-		err = KErrAuthServNoSuchIdentity;
-		}
-	return err;
-	}
-
-void CPinPluginAO::ResetL(TIdentityId aIdentityId, const TDesC& aRegistrationData, HBufC8*& aResult)
-	{
-	// Remove the current trained information and register using the newly supplied registration
-	// data (Since pin plugin is a knowledge based plugin, the registration data supplied is assumed to be the pin)
-	// For other plugin types this information is ignored and the identity is simply set as untrained
-
-	// If no registration data is supplied then just perform a forget
-	if (aRegistrationData == KNullDesC)
-		{
-		aResult = NULL;
-		TInt err = Forget(aIdentityId);
-		User::LeaveIfError(err);
-		return;
-		}
-
-	// Ensure registration data length is less than or equal to max allowed pin length
-	TInt pinLen = aRegistrationData.Length();
-	if (pinLen > KMaxPinLength)
-		{
-		User::Leave(KErrArgument);
-		}
-
-	// Convert registration data to 8 bit 
-	// Note that no unicode conversion is being done here since a pin cannot be in unicode
-	RBuf8 pinBuf;
-	pinBuf.CreateL(pinLen);
-	CleanupClosePushL(pinBuf);
-	pinBuf.Copy(aRegistrationData.Left(pinLen));
-	TPinValue pin(pinBuf);
-	CleanupStack::PopAndDestroy(&pinBuf);
-
-	// Generate the identity key and identity key hash
-	HBufC8* identityKey = NULL;
-	HBufC8* identityKeyHash = GenerateKeyHashL(pin, identityKey);
-	CleanupStack::PushL(identityKeyHash);
-	CleanupStack::PushL(identityKey);
-
-	// Ensure another identity doesn't have the same pin
-	TIdentityId tempId = iPinPluginDb->IdFromPin(*identityKeyHash);
-	if ((tempId != aIdentityId) && (tempId != KUnknownIdentity))
-		{
-		CleanupStack::PopAndDestroy(2, identityKeyHash);
-		// This appears to be the most appropriate error code - The important point is to convery Reset has failed.
-		User::Leave(KErrInUse);
-		}
-	else if (tempId == aIdentityId)
-		{
-		// Nothing to do
-		aResult = identityKey;		// Ownership transferred to caller
-		CleanupStack::Pop(identityKey);
-		CleanupStack::PopAndDestroy(identityKeyHash);
-		return;
-		}
-
-	// Replace the training data
-	iPinPluginDb->UpdatePinL(aIdentityId, *identityKeyHash);
-	aResult = identityKey;		// Ownership transferred to caller
-	CleanupStack::Pop(identityKey);
-	CleanupStack::PopAndDestroy(identityKeyHash);
-	}
-
-void CPinPluginAO::DoCancel()
-	{
-	iPinPluginDialog->Cancel();
-	if(iRequestStatus)
-		{
-		User::RequestComplete(iRequestStatus, KErrCancel);
-		}
-	}
-	
-void CPinPluginAO::RunL()
-	{
-	// Leave if there has been an error
-	User::LeaveIfError(iStatus.Int());
-	
-	switch(iState)
-		{
-		case EIdentify:
-			{
-			IdentifyId();	
-			}
-			break;
-		case EIdentifyResult:
-			{
-			if (*iDialogResult == EOk)
-				{
-				IdentifyResultL();
-				}
-			else if (*iDialogResult == ECancel)
-				{
-				User::RequestComplete(iRequestStatus, KErrAuthServPluginCancelled);
-				}
-			else if (*iDialogResult == EQuit)
-				{
-				User::RequestComplete(iRequestStatus, KErrAuthServPluginQuit);
-				}
-			*iDialogResult = static_cast<TPinPluginDialogResult>(0);
-			}
-			break;
-		case ETrain:
-			{
-			TrainIdL();	
-			}
-			break;
-		case ETrainResult:
-			{
-			if (*iDialogResult == EOk)
-				{
-				AddTrainResultToDBL();
-				}
-			else if (*iDialogResult == ECancel)
-				{
-				User::RequestComplete(iRequestStatus, KErrAuthServPluginCancelled);
-				}
-			else if (*iDialogResult == EQuit)
-				{
-				User::RequestComplete(iRequestStatus, KErrAuthServPluginQuit);
-				}
-			else if (*iDialogResult == ENext)
-				{
-				iState = ETrain;
-				TRequestStatus* status = &iStatus;
-				User::RequestComplete(status, KErrNone);
-				SetActive();
-				}
-			*iDialogResult = static_cast<TPinPluginDialogResult>(0);
-			}
-			break;
-		case EInfo:
-			{
-			iPinPluginDialog->PinInfo(iMessage, iStatus);
-			iState = EFinished;
-			SetActive();
-			}
-			break;
-		case EFinished:
-			{
-			User::RequestComplete(iRequestStatus, iStatus.Int());
-			}
-			break;
-		default:
-			{
-			User::Leave(KErrNotSupported);
-			}
-			break;
-		}
-	}
-	
-TInt CPinPluginAO::RunError(TInt aError)
-	{
-	if(iRequestStatus)
-		{
-		User::RequestComplete(iRequestStatus, aError);
-		}
-	return KErrNone;
-	}
-
-void CPinPluginAO::IdentifyId()
-	{
-	if (iRetryRefCount--)
-		{
-		iPinPluginDialog->PinIdentify(iPinMinSize, iPinMaxSize, ETrue, iPinValue, *iDialogResult, iStatus);
-		iState = EIdentifyResult;
-		}
-	else
-		{
-		iRetryRefCount = iRetryCount;
-		*iIdentityIdPtr = KUnknownIdentity;
-		iMessage = EPinPluginIdentificationFailure;
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iState = EInfo;
-		}
-	SetActive();
-	}
-
-void CPinPluginAO::IdentifyResultL()
-	{
-	TIdentityId identityId;
-	HBufC8* identityKey = NULL;
-	HBufC8* identityKeyHash = GenerateKeyHashL(iPinValue, identityKey);
-	CleanupStack::PushL(identityKeyHash);
-	CleanupStack::PushL(identityKey);	
-	identityId = iPinPluginDb->IdFromPin(*identityKeyHash);
-	if (identityId != KUnknownIdentity)
-		{
-		*iIdentityIdPtr = identityId;
-		iRetryRefCount = iRetryCount;
-		*iResult = identityKey;
-		iMessage = EPinPluginIdentificationSuccess;
-		iState = EInfo;
-		CleanupStack::Pop(identityKey);
-		}
-	else
-		{	
-		CleanupStack::PopAndDestroy(identityKey);
-		iState = EIdentify;
-		}
-	CleanupStack::PopAndDestroy(identityKeyHash);
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-	SetActive();
-	}
-		
-void CPinPluginAO::TrainIdL()
-	{
-        // Check for invalid pinsize.
-	if( !(iNewPinSize >= iPinMinSize && iNewPinSize <= iPinMaxSize)  )
-                {
-                User::Leave(KErrAuthServRegistrationFailed);
-                }
-
-
-	iPinList.ResetAndDestroy();
-	iIdKeyList.ResetAndDestroy();
-	iIdKeyHashList.ResetAndDestroy();
-	GenerateUniquePinsL(iPinList, iIdKeyList, iIdKeyHashList);
-	TInt indexValue = iPinPluginDb->IdIndex(iIdentityId);
-	TPinPluginTrainingMessage trainMessage;
-	if (indexValue >= 0)
-		{
-		trainMessage = EReTraining;
-		}
-	else
-		{
-		trainMessage = ETraining;
-		}
-	iPinPluginDialog->PinTraining(trainMessage, iPinList, iPinMinSize, iPinMaxSize, iIndex, iNewPinSize, *iDialogResult, iStatus);
-	iState = ETrainResult;
-	SetActive();	
-	}
-
-void CPinPluginAO::AddTrainResultToDBL()
-	{
-	__ASSERT_ALWAYS(iIndex >= KIndexLow && iIndex <= KIndexHigh,
-		User::Panic(KPinPluginPanicString(), EPinPanicIncorrectIndex));
-
-	TInt indexValue = iPinPluginDb->IdIndex(iIdentityId);
-	if (indexValue >= 0)
-		{
-		iPinPluginDb->UpdatePinL(iIdentityId, *iIdKeyHashList[iIndex]);
-		iMessage = EPinPluginReTrainingSuccess;
-		}
-	else
-		{
-		iPinPluginDb->AddPinL(iIdentityId, *iIdKeyHashList[iIndex]);
-		iMessage = EPinPluginTrainingSuccess;
-		}
-	TPtrC8 idKeyPtr = *iIdKeyList[iIndex];
-	HBufC8* identityKey = idKeyPtr.AllocL();
-	*iResult = identityKey;
-	iNewPinSize = iPinSize;
-	iState = EInfo;
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-	SetActive();
-	}
-
-HBufC8* CPinPluginAO::GenerateKeyHashL(TPinValue& aPinValue, HBufC8*& aIdentityKey)
-	{
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	HBufC8* pinValue = aPinValue.AllocLC();
-	TPtrC8 hash = sha1->Hash(*pinValue);
-	CleanupStack::PopAndDestroy(pinValue);
-	aIdentityKey = hash.AllocLC();
-	TPtrC8 hash1 = sha1->Hash(hash);
-	HBufC8* idkeyHash = hash1.AllocL();
-	CleanupStack::Pop(aIdentityKey);
-	CleanupStack::PopAndDestroy(sha1);
-	return idkeyHash;
-	}
-	
-	
-void CPinPluginAO::GenerateUniquePinsL(RPointerArray<TPinValue>& aPinList,
-		RPointerArray<HBufC8>& aIdKeyList, RPointerArray<HBufC8>& aIdKeyHashList)
-	{
-	TInt count = 4; 
-	while (count)
-		{
-		TPinValue* randomPin = new (ELeave) TPinValue;
-		CleanupStack::PushL(randomPin);
-		for (TInt k = 0; k < iNewPinSize ; k++)
-			{
-			TUint8 num = Math::Random();
-			num = num % 10;
-			randomPin->AppendNum(num);
-			}
-		HBufC8* identityKey = NULL;
-		HBufC8* identityKeyHash = GenerateKeyHashL(*randomPin, identityKey);
-		CleanupStack::PushL(identityKeyHash);
-		CleanupStack::PushL(identityKey);
-		if (iPinPluginDb->IsUniquePin(*identityKeyHash))
-			{
-			aIdKeyList.AppendL(identityKey);
-			CleanupStack::Pop(identityKey);
-			aIdKeyHashList.AppendL(identityKeyHash);
-			CleanupStack::Pop(identityKeyHash);
-			aPinList.AppendL(randomPin);
-			CleanupStack::Pop(randomPin);
-			count--;
-			}
-		}
-	}
-
-
-
-
-
-
-
-
-
-
-	
-	
-	
-	
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginao.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,157 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginAO declaration
-*
-*/
-
-
-/**
- @file 
- @internalComponent
- @released
-*/
-
-#ifndef PIN_PLUGINAO_H
-#define PIN_PLUGINAO_H
-
-#include "pinplugindialog.h"
-#include "pinplugindb.h"
-#include "pinpanic.h"
-
-class CPinPluginAO : public CActive
-	{
-public:
-	/** static methods to constuct the object of the CPinpluginAO */
-	static CPinPluginAO* NewL(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
-	static CPinPluginAO* NewLC(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
-	/** Destructor */
-	~CPinPluginAO();
-public: //CAuthPluginInterface
-	void Identify(AuthServer::TIdentityId& aId, const TDesC& aClientMessage,
-				  HBufC8*& aResult, TRequestStatus& aRequest);
-	void Train(AuthServer::TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);
-	TInt Forget(AuthServer::TIdentityId aId);
-	TInt DefaultData(AuthServer::TIdentityId aId, HBufC8*& aOutputBuf);
-	void ResetL(AuthServer::TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult);
-
-private:			//Active
-	void DoCancel();
-	void RunL();	
-	TInt RunError(TInt aError);
-private:
-	/** Constructor */
-	CPinPluginAO(TInt aPinSize, TInt aPinMinSize, TInt aPinMaxSize, TInt aRetryCount);
-	
-	/** Second Phase Constructor */
-	void ConstructL();
-	
-	/**
-	 Issue a Request for Identify Dialog upto iRetryCount times to 
-	 PinPluginDialog. If the pinvalue received is wrong for all the
-	 retries, reset the identityId as KUnknownIdentity.
-	 */
-	void IdentifyId();
-	
-	/**
- 	 Issue a Request for Train Dialog to PinPluginDialog. 
- 	 It will generate 4 random pin of length iNewPinSize and send 
- 	 the pin Numbers and iNewPinSize to PinpluginDialog. Once it completed
- 	 it have the selected pin index and new pin size which is used to generate
- 	 another set of pin numbers for the next dialogs if required.
-
-	 @panic EPinPanicInvalidPinLength	if plugin receives invalid pinlength fron Dialog Notifier
-	 */
-	void TrainIdL();
-	
-	/**
- 	 It will generate KeyHash for the pin number given in the Identify Dialog.
- 	 and verify the keyHash and Id with DB entries. If same, the state will be
- 	 changed to EInfo and message is set to EPinPluginIdentificationSuccess 
- 	 which is used to display info message to the user. 
- 	 If not, same state will be maintained so that it will ask another Identify
- 	 dialog to the user.
- 	 */
-	void IdentifyResultL();
-	
-	/**
-	 It will add/update the DB with the pin selected in Pin Train/ReTrain Dialog.
-	 
-	 @panic EPinPanicIncorrectIndex		if plugin receives index values otherthan 0 -3
-	 */
-	void AddTrainResultToDBL();
-	
-	/**
- 	 It will generate two KeyHash for the pin value using SHA1 Algorithm
- 	 Intermediate result will return to the Authentication server whereas
- 	 final result is stored in the DB.
- 	  
-	 @param aPinValue		The Pin number for which Hash value required
-	 @param aIdentityKey	aIdentityKey is updated with intermediate KeyHash generated.
-	 @return				It will return the final KeyHash Value generated
-	 */
-	HBufC8* GenerateKeyHashL(TPinValue& aPinValue, HBufC8*& aIdentityKey);
-	
-	/**
-	 It will generate four Unique Pins which is not used any of the
-	 existing identities.
-	 
-	 @param aPinList		On return, it holds the array of Pin numbers generated
-	 @param idKeyList		On return, it holds the array of intermediate KeyHash 
-	 						values for the Pin Numbers in the aPinList
-	 @param idKeyHashList	On return, it holds the array of Final KeyHash values
-	 						for the Pin Numbers in the aPinList
- 	 */
-	void GenerateUniquePinsL(RPointerArray<TPinValue>& aPinList, RPointerArray<HBufC8>& idKeyList,
-								 RPointerArray<HBufC8>& idKeyHashList);
-private:
-	enum TProcessState
-		{
-		EIdentify,
-		EIdentifyResult,
-		ETrain,
-		ETrainResult,
-		EInfo,
-		EFinished
-		};
-	CPinPluginDialog* iPinPluginDialog;
-	CPinPluginDB* iPinPluginDb;
-	TRequestStatus* iRequestStatus;
-	TProcessState iState;
-	TInt iIndex;
-	TPinValue iPinValue;
-	AuthServer::TIdentityId iIdentityId;
-	AuthServer::TIdentityId* iIdentityIdPtr;
-	HBufC8** iResult;
-	TPinPluginDialogResult* iDialogResult;
-	TPinPluginInfoMessage iMessage;
-	
-	TInt iRetryCount;
-	TInt iRetryRefCount;
-	TInt iPinSize;
-	TInt iPinMinSize;
-	TInt iPinMaxSize;
-	TInt iNewPinSize;
-		
-	RPointerArray<TPinValue> iPinList;
-	RPointerArray<HBufC8> iIdKeyList;
-	RPointerArray<HBufC8> iIdKeyHashList;
-	
-	//Displayable text string
-	const HBufC* iClientMessage;
-
-	};
-
-#endif /* PIN_PLUGINAO_H */
-	
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinpluginconfig.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Defines the default pin size, min and max of pin size, retry 
-* count for the identify dialog, name and Description
-* for the pin plugin.
-*
-*/
-
-
-/**
- @file 
-*/
-
-NAME PINP
-
-#include <uikon.rh>
-#include "pinplugin.rh"
-
-RESOURCE RSS_SIGNATURE { }
-
-RESOURCE PIN_SIZE r_pin_size
-	{
-	pinsize = 5;
-	}
-
-RESOURCE PIN_MIN_SIZE r_pin_min_size
-	{
-	minsize = 4;
-	}
-
-RESOURCE PIN_MAX_SIZE r_pin_max_size
-	{
-	maxsize = 10;
-	}
-
-RESOURCE IDENTIFY_DIALOG_RETRY_COUNT r_identify_dialog_retry_count
-	{
-	retrycount = 3;
-	}
-
-RESOURCE PLUGIN_INFO r_plugin_info
-	{
-	name = "PinPlugin";
-	Description = "Pinplugin authenticates device holder using PIN numbers generated from 0-9 digits";
-	}
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,402 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginDB pin plugin data store implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "pinplugindb.h"
-
-_LIT(KPluginStoreName, "plugin.store");
-_LIT(KFileDrive, "c:");
-
-using namespace AuthServer;
-
-CPinPluginDB* CPinPluginDB::NewL()
-	{
-	CPinPluginDB* self = CPinPluginDB::NewLC();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CPinPluginDB* CPinPluginDB::NewLC()
-	{
-	CPinPluginDB* self = new(ELeave) CPinPluginDB();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-	
-CPinPluginDB::CPinPluginDB() :
-	iRootStreamId(KNullStreamId),
-	iIdentityStreamId(KNullStreamId)
-	{
-	}
-
-CPinPluginDB::~CPinPluginDB()
-	{
-	if (iFileStore)
-		{
-		CompactStore();
-		delete iFileStore;
-		}
-
-	iFile.Close(); 
-	iFs.Close();
-
-	iId.Reset();
-	iId.Close();
-	iIdKeyHash.ResetAndDestroy();
-	iIdKeyHash.Close();
-	}
-	
-		
-void CPinPluginDB::ConstructL()
-	{
-	User::LeaveIfError(iFs.Connect());
-	
-	TFileName privatePath;
-	iFs.PrivatePath(privatePath);
-	iPluginDBName.Copy(KFileDrive);
-	iPluginDBName.Append(privatePath);
-	iPluginDBName.Append(KPluginStoreName);
-	OpenStoreL();
-	
-	ReadIdKeysFromStoreL();
-	}
-
-
-void CPinPluginDB::AddPinL(const TIdentityId& aId, const TDesC8& aIdentityKeyHash)
-	{
-	if(IdIndex(aId) == KErrNotFound && IsUniquePin(aIdentityKeyHash))
-		{
-		// Add the IdentityId to the array, rewrite the identitystream and 
-		// Only then commit the store
-		HBufC8* keyHash = aIdentityKeyHash.AllocLC();
-		TInt err = KErrNone;
-		iIdKeyHash.AppendL(keyHash);
-		err = iId.Append(aId);
-		if(err != KErrNone)
-			{
-			iIdKeyHash.Remove(iIdKeyHash.Count() - 1);
-			User::Leave(err);
-			}
-		TCleanupItem cleanupStore(RevertStore, iFileStore);
-		// write the idkeys to the store.
-		TRAP(err,
-			CleanupStack::PushL(cleanupStore);
-			WriteIdKeysToStoreL();
-			CleanupStack::Pop(iFileStore));
-
-		if (err != KErrNone)
-			{
-			iId.Remove(iId.Count() - 1);
-			iIdKeyHash.Remove(iIdKeyHash.Count() - 1);
-			User::Leave(err);
-			}
-		CleanupStack::Pop(keyHash); 
-		}
-	else
-		{
-		User::Leave(KErrAlreadyExists);
-		}
- 	}
-
-void CPinPluginDB::UpdatePinL(const TIdentityId& aId, const TDesC8& aIdentityKeyHash)
-	{
-	if(IdIndex(aId) != KErrNotFound)
-		{
-		// Get the index of the existing id and key hash
-		TInt index = IdIndex(aId);
-		TInt err = KErrNone;
-		HBufC8* keyHash = aIdentityKeyHash.AllocLC();
-		// delete the old keyHash and store the new keyHash to the index
-		delete iIdKeyHash[index];
-		iIdKeyHash[index] = keyHash;
-
-		TCleanupItem cleanupStore(RevertStore, iFileStore);
-		// write the idkeys to the store.
-		TRAP(err ,
-			CleanupStack::PushL(cleanupStore);
-			WriteIdKeysToStoreL();
-			CleanupStack::Pop(iFileStore));
-		if (err!= KErrNone)
-			{
-			CleanupStack::Pop(keyHash);
-			ReadIdKeysFromStoreL();
-			User::Leave(err);
-			}
-		CleanupStack::Pop(keyHash);
-		}
-	else
-		{
-		User::Leave(KErrNotFound);
-		}
-	}
-	
-void CPinPluginDB::RemovePinL(const TIdentityId& aId)
-	{
-	if(IdIndex(aId) != KErrNotFound)
-		{
-		TInt err = KErrNone;
-		TInt index = IdIndex(aId);
-
-		// Delete the IdentityId from the array, rewrite the identitystream and 
-	   	// Only then commit the store
-		delete iIdKeyHash[index];
-  		iIdKeyHash.Remove(index);
-   		iId.Remove(index);
- 
-		TCleanupItem cleanupStore(RevertStore, iFileStore);
-		// write the idkeys to the store.
-		TRAP(err, 
-			CleanupStack::PushL(cleanupStore);
-			WriteIdKeysToStoreL();
-			CleanupStack::Pop(iFileStore));
-		if(err != KErrNone)
-			{
-			ReadIdKeysFromStoreL();
-   			User::Leave(err);
-			}
-		}
-	else
-		{
-		User::Leave(KErrNotFound);
-		}
-	}
-	
-TBool CPinPluginDB::IsUniquePin(const TDesC8& aIdentityKeyHash) const
-	{
-	//	Check each iIdKeyHash in the store to determine if aIdentityId already exists
-	TInt count = iIdKeyHash.Count();
-	TBool isUnique = ETrue;
-	for (TInt index = 0; index < count; ++index)
-		{
-		if (aIdentityKeyHash.CompareF(*iIdKeyHash[index]) == 0)
-			{
-			isUnique = EFalse;
-			break;
-			}
-		}
-	return isUnique;
-	}
-	
-TInt CPinPluginDB::IdIndex(const TIdentityId& aId) const
-	{
-	TInt count = iId.Count();
-	for (TInt index = 0; index < count; ++index)
-		{
-		if (aId == iId[index])
-			{
-			return index;
-			}
-		}
-	return KErrNotFound;
-	}
-	
-TIdentityId CPinPluginDB::IdFromPin(const TDesC8& aIdentityKeyHash) const
-	{
-	TInt count = iIdKeyHash.Count();
-	for (TInt index = 0; index < count; ++index)
-		{
-		if (aIdentityKeyHash.CompareF(*iIdKeyHash[index]) == 0)
-			{
-			return iId[index];
-			}
-		}
-	return KUnknownIdentity;
-	}
-	
-void CPinPluginDB::OpenStoreL()
-	{
-	//	Tries to Open a plugin store file on the private path of the process. 
-	//	If it cannot find one, create a file with permanent file store
-	//	it should initialise iFileStore unless it cannot
-	//	create the file/store/streams
-	
-	TRAPD(result, OpenStoreInFileL(iPluginDBName));
-
-	if (result == KErrNotFound || result == KErrPathNotFound) 
-		{		
-		// Not yet opened a valid store, either no file to be found, or no valid
-		// store in it.
-		CreateStoreInFileL(iPluginDBName);
-		}
-	else if (result != KErrNone)
-		{
-		// DB gets corrupted or File may be in use. Abort startup.
-		User::Leave(result);
-		}
-	}
-
-
-void CPinPluginDB::CreateStoreInFileL(const TDesC& aFile)
-	{
-	TInt r = iFs.MkDirAll(aFile);
-	if ((r!=KErrNone) && (r!=KErrAlreadyExists))
-		{
-		User::Leave(r);
-		}
-	
-	delete iFileStore;
-	iFileStore = NULL;
-
-	iFileStore = CPermanentFileStore::ReplaceL(iFs, aFile, EFileRead | EFileWrite | EFileStream | EFileShareExclusive);
-	iFileStore->SetTypeL(KPermanentFileStoreLayoutUid);
-
-	TCleanupItem cleanupStore(RevertStore, iFileStore);
-	CleanupStack::PushL(cleanupStore);
-	
-	// Create Identity stream - Currently no Identity created, and no IdentityKeyHash
-	RStoreWriteStream identityStream;
-	iIdentityStreamId = identityStream.CreateLC(*iFileStore);
-	identityStream.WriteUint32L(KNullStreamId.Value()); //contains the id of dataStream
-	identityStream.WriteUint32L(0); // Write IdentityId count of zero
-	identityStream.CommitL();
-	CleanupStack::PopAndDestroy(&identityStream);
-
-	// Create root stream - just contains id of Identity stream
-	RStoreWriteStream rootStream;
-	iRootStreamId = rootStream.CreateLC(*iFileStore);
-	iFileStore->SetRootL(iRootStreamId);
-	rootStream.WriteUint32L(iIdentityStreamId.Value());		
-	rootStream.CommitL();
-	CleanupStack::PopAndDestroy(&rootStream);
-	
-	iFileStore->CommitL();
-	CleanupStack::Pop(iFileStore); 
-	}
-
-void CPinPluginDB::OpenStoreInFileL(const TDesC& aFile)
-	{
-	// Make sure the file isn't write protected
-	User::LeaveIfError(iFs.SetAtt(aFile, 0, KEntryAttReadOnly));
-	
-	User::LeaveIfError(iFile.Open(iFs, aFile, EFileRead | EFileWrite | EFileStream | EFileShareExclusive));
-	
-	delete iFileStore;
-	iFileStore = NULL;
-
-	iFileStore = CPermanentFileStore::FromL(iFile);		
-
-	// Get the root StreamId
-	iRootStreamId = iFileStore->Root();
-	if (iRootStreamId == KNullStreamId)
-		{
-		User::Leave(KErrCorrupt);
-		}
-	
-	RStoreReadStream rootStream;
-	rootStream.OpenLC(*iFileStore, iRootStreamId);
-	iIdentityStreamId = (TStreamId)(rootStream.ReadUint32L());
-	CleanupStack::PopAndDestroy(&rootStream);
-	}
-
-// Rewrites the Identity stream (ie the array of IdentityId) to the store
-void CPinPluginDB::WriteIdKeysToStoreL()
-	{
-	TInt count = iId.Count();
-	TInt hashCount = iIdKeyHash.Count();
-	if (count != hashCount)
-		{
-		User::Leave(KErrCorrupt);
-		}
-	
-	TStreamId dataStreamId = KNullStreamId;
-	if (count > 0)
-		{
-		RStoreWriteStream dataStream;
-		dataStreamId = dataStream.CreateLC(*iFileStore);
-		//write the Identity Id key to a data stream
-		for (TInt index = 0; index < count; ++index)
-			{
-			dataStream.WriteUint32L(iId[index]);
-			dataStream.WriteUint32L((*iIdKeyHash[index]).Length());
-			dataStream.WriteL(*iIdKeyHash[index]);
-			}
-		dataStream.CommitL();
-		CleanupStack::PopAndDestroy(&dataStream); 	
-		}
-	RStoreReadStream readStream;
-	readStream.OpenLC(*iFileStore, iIdentityStreamId);
-	TStreamId oldDataStreamId = (TStreamId)(readStream.ReadInt32L());
-	CleanupStack::PopAndDestroy(&readStream);
-		
-	iFileStore->DeleteL(oldDataStreamId);
-	
-	RStoreWriteStream writeStream;
-	writeStream.OpenLC(*iFileStore, iIdentityStreamId);
-	writeStream.WriteUint32L(dataStreamId.Value());
-	writeStream.WriteInt32L(count);
-	writeStream.CommitL();
-	CleanupStack::PopAndDestroy(&writeStream); 	
-	iFileStore->CommitL();
-	CompactStore();
-	}
-	
-void CPinPluginDB::ReadIdKeysFromStoreL()
-	{
-	iId.Reset();
-	iIdKeyHash.ResetAndDestroy();
-	
-	RStoreReadStream readStream;
-	readStream.OpenLC(*iFileStore, iIdentityStreamId);
-	TStreamId dataStreamId = (TStreamId)(readStream.ReadInt32L());
-	TInt count = readStream.ReadInt32L();
-	CleanupStack::PopAndDestroy(&readStream);
-	
-	if (count > 0)
-		{
-		RStoreReadStream dataStream;
-		dataStream.OpenLC(*iFileStore, dataStreamId);
-		for (TInt index = 0; index < count; ++index)
-			{
-			TIdentityId identityId = (TIdentityId)(dataStream.ReadInt32L());
-			iId.AppendL(identityId);
-			TInt length = dataStream.ReadInt32L();
-			HBufC8* idKeyHash = HBufC8::NewMaxLC(length);
-			TPtr8 idKeyHashPtr = idKeyHash->Des();
-			dataStream.ReadL(idKeyHashPtr, length);
-			iIdKeyHash.AppendL(idKeyHash);
-			CleanupStack::Pop(idKeyHash);
-			}
-		CleanupStack::PopAndDestroy(&dataStream);
-		}
-	}
-
-void CPinPluginDB::RevertStore(TAny* aStore)
-	{
-	CPermanentFileStore* store = reinterpret_cast<CPermanentFileStore*>(aStore);
-	TRAP_IGNORE(store->RevertL());
-	// We're ignoring the leave code from this becuase there's no way we can
-	// handle this sensibly.  This shouldn't be a problem in practice - this
-	// will leave if for example the file store is on removable which is
-	// unexpectedly remove, and this is never the case for us.
-	}
-
-
-void CPinPluginDB::CompactStore()
-	{
-	ASSERT(iFileStore);
-	TRAP_IGNORE(iFileStore->ReclaimL(); iFileStore->CompactL());
-	}
-
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,160 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginDB pin plugin data store declaration
-*
-*/
-
-
-/**
- @file 
-*/
-
-#ifndef PIN_PLUGINDB_H
-#define PIN_PLUGINDB_H
-
-#include <s32file.h>
-#include <authserver/authtypes.h>
-
-// PinPlugin DB
-class CPinPluginDB : public CBase
-	{
-public:
-	/** static methods to constuct the object of the CPinPluginDB */
-	static CPinPluginDB* NewL();
-	static CPinPluginDB* NewLC();
-	
-	/** Destructor */
-	virtual ~CPinPluginDB();
-
-	/** 
-	 Add Id and KeyHash to the store if the id is not exist in the
-	 store and pin is not used by any other id. 
-	 
-	 @param aId				 The Id to be Trained 
-	 @param aIdentityKeyHash The pin used to Train the Id
-	 @leave					 It leaves with KErrAlreadyExists if the id is
-	 						 already exist or pin is used by other identity.
-	 */
-	void AddPinL(const AuthServer::TIdentityId& aId, const TDesC8& aIdentityKeyHash);
-	
-	/** 
-	 Update the Id and Pin in the store With the new Pin, if the id exists.
-	 
- 	 @param aId				 The Id to be ReTrained 
-	 @param aIdentityKeyHash The pin used to ReTrain the Id
-	 @leave 				 It leaves with KErrNotFound if the id is
-	 						 not exist.
-	 */
-	void UpdatePinL(const AuthServer::TIdentityId& aId, const TDesC8& aIdentityKeyHash);
-	
-	/**
-	 Remove the Id from the store, if the Id exists
-	 
-	 @param aId				 The Id to be ReTrained 
-	 @leave					 It leaves with KErrNotFound if the id is
-	 						 not exist.
-	 */
-	void RemovePinL(const AuthServer::TIdentityId& aId);
-	
-	/**
-	 Searches the pinvalue in the store
-	 
-	 @param aIdentityKeyHash The pinvalue to be search for
-	 @return				 It return the IdentityId for the pin, if search
-	 						 is success else return KUnknownIdentity.
-	 */
-	AuthServer::TIdentityId IdFromPin(const TDesC8& aIdentityKeyHash) const;
-	
-	/**
-	 Searches the Id in the store.
-	 
-	 @param aId				 The Id to be search for. 
-	 @return				 It return the index of the Id if the search
-	 						 is success else return KErrNotFound.
-	 */
-	TInt IdIndex(const AuthServer::TIdentityId& aId) const ;
-	
-	/**
- 	 Verifies the pin is unique.
-	 
-	 @param aIdentityKeyHash The pinvalue to be search for
-	 @return				 return ETrue if the pin is not used by any of 
-	 						 the identity else EFalse.
-	 */
-	TBool IsUniquePin(const TDesC8& aIdentityKeyHash) const;
-	
-private:
-	CPinPluginDB();
-	void ConstructL();
-
-private:					
-	/**
-	 Create and open a New Store If it is first time
-	 else Open the existing store. 
-	 */
-	void OpenStoreL();
-	
-	/** 
-	 Open the existing store 
-	 @param aFile 			The name of the file to open
-	 */
-	void OpenStoreInFileL(const TDesC& aFile);
-	
-	/** 
-	 Create the new store
-	 @param aFile 			The name of the file to create
-	 */
-	void CreateStoreInFileL(const TDesC& aFile);
-	
-	/** 
-	Write the In memory represtation to the store.
-	*/
-	void WriteIdKeysToStoreL();
-	
-	/**
-	Read the Id and keys from the store
-	*/
-	void ReadIdKeysFromStoreL();
-	
-private:
-	/**
-	Methods dealing with atomic updates to key data file 
-	cleanup item that reverts the store.
-	*/
-	static void RevertStore(TAny* aStore);
-	/**
- 	 Attempt to compact the store - it doesn't matter if these calls leave, it
- 	 will only mean that the store takes up more space than necessary.
- 	*/	
-	void CompactStore();
-private:
-	RFile iFile;
-	RFs iFs;
-	/** FileStore Object */
-	CPermanentFileStore* iFileStore;
-	/** Root Stream that constains identityStreamId */
-	TStreamId iRootStreamId;
-	/** Identity Stream that contains dataStreamId and count of idHashes stored in the DB */
-	TStreamId iIdentityStreamId;
-	/** DB file Name */
-	TFileName iPluginDBName;
-private:
-	/** In memory representation of id in the store */
-	RArray<AuthServer::TIdentityId> iId;
-	/** In memory representation of hash in the store */
-	RPointerArray<HBufC8> iIdKeyHash;
-	};
-
-#endif /* PIN_PLUGINDB_H */
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindialog.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,192 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginDialog implementation 
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "pinplugindialog.h"
-#include <authserver/auth_srv_errs.h>
-
-CPinPluginDialog::~CPinPluginDialog()
-	{
-	Deque();
-	iNotifier.Close();
-	}
-
-CPinPluginDialog* CPinPluginDialog::NewL()
-	{
-	CPinPluginDialog* self = CPinPluginDialog::NewLC();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CPinPluginDialog* CPinPluginDialog::NewLC()
-	{
-	CPinPluginDialog* self = new (ELeave) CPinPluginDialog();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-CPinPluginDialog::CPinPluginDialog(): CActive(EPriorityStandard)
-	{
-	CActiveScheduler::Add(this);
-	}
-
-void CPinPluginDialog::ConstructL()
-	{
-	User::LeaveIfError(iNotifier.Connect());
-	}
-
-void CPinPluginDialog::PinIdentify(const TInt aMinLength, const TInt aMaxLength, const TBool aRetry,
-						TPinValue& aPinValue, TPinPluginDialogResult& aResult, TRequestStatus& aStatus)
-	{
-	iClientPinValue = &aPinValue;
-	iClientPinDialogResult = &aResult;
-	iState = KPinPluginIdentify;
-	DoInitialize(EPinPluginIdentify, aStatus);
-	TPinIdentifyInput pinInput;
-	pinInput.iOperation = EPinPluginIdentify;
-	pinInput.iRetry = aRetry;
-	pinInput.iMinLength = aMinLength;
-	pinInput.iMaxLength = aMaxLength;
-	TPinIdentifyInputBuf pinInputBuf(pinInput);
-	iPinIdentifyInputBuf.Copy(pinInputBuf);
-	RequestDialog(iPinIdentifyInputBuf, iPinDialogOutputBuf);
-	}
-
-
-
-void CPinPluginDialog::PinTraining(const TPinPluginTrainingMessage aType, const RPointerArray<TPinValue>& aPinNumbers,
-	                        const TInt aMinLength, const TInt aMaxLength, TInt& aIndex, TInt& aCurrentLength,
-	                        TPinPluginDialogResult& aResult, TRequestStatus& aStatus)
-	{
-	iClientPinIndex = &aIndex;
-	iClientPinDialogResult = &aResult;
-	iClientNewPinLength = &aCurrentLength;
-	iState = KPinPluginTraining;
-	DoInitialize(EPinPluginTraining, aStatus);
-	TPinTrainingInput pinInput;
-	pinInput.iOperation = EPinPluginTraining;
-	pinInput.iMessage = aType;
-	pinInput.iMinLength = aMinLength;
-	pinInput.iMaxLength = aMaxLength;
-	pinInput.iCurrentPinLength = aCurrentLength;
-	pinInput.iPinValue1 = *(aPinNumbers[0]);
-	pinInput.iPinValue2 = *(aPinNumbers[1]);
-	pinInput.iPinValue3 = *(aPinNumbers[2]);
-	pinInput.iPinValue4 = *(aPinNumbers[3]);
-	TPinTrainingInputBuf pinInputBuf(pinInput);
-	iPinTrainingInputBuf.Copy(pinInputBuf);
-	RequestDialog(iPinTrainingInputBuf, iPinDialogOutputBuf);
-	}
-
-
-void CPinPluginDialog::PinInfo(const TPinPluginInfoMessage aMessage, TRequestStatus& aStatus)
-	{
-	iState = KPinPluginInfo;
-	DoInitialize(EPinPluginInfo, aStatus);
-	TPinInfoInput pinInput;
-	pinInput.iOperation = EPinPluginInfo;
-	pinInput.iMessage = aMessage;
-	TPinInfoInputBuf pinInputBuf(pinInput);
-	iPinInfoInputBuf.Copy(pinInputBuf);
-	RequestDialog(iPinInfoInputBuf, iPinDialogOutputBuf);
-	}
-
-void CPinPluginDialog::DoInitialize(const TPinPluginDialogOperation aOperation, TRequestStatus& aStatus)
-	{
-	iCurrentOperation = aOperation;
-
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	}
-
-
-void CPinPluginDialog::RequestDialog(const TDesC8& aData, TDes8& aResponse)
-	{
-	iNotifier.StartNotifierAndGetResponse(iStatus, KUidPinPluginDialogNotifier,
-											aData, aResponse);
-	SetActive();
-	}
-	
-void CPinPluginDialog::DoCancel()
-	{
-	iNotifier.CancelNotifier(KUidPinPluginDialogNotifier);
-	if (iClientStatus)
-		{
-		User::RequestComplete(iClientStatus, KErrCancel);
-		}
-	}
-
-void CPinPluginDialog::RunL()
-	{
-	switch (iState)
-		{
-		case KPinPluginInfo:
-			{
-			//ignore the output as Info Dialog won't wait for user inputs
-			}
-			break;
-		case KPinPluginTraining:
-			{
-			TPinDialogOutput& pinDialogOutput = iPinDialogOutputBuf();
-			*iClientPinIndex = pinDialogOutput.iIndex;
-			*iClientNewPinLength = pinDialogOutput.iNewPinLength;
-			*iClientPinDialogResult = pinDialogOutput.iResult;
-			if(iStatus.Int() != KErrNone)
-				{
-				User::RequestComplete(iClientStatus, KErrAuthServRegistrationFailed);
-				return;
-				}
-			}
-			break;
-		case KPinPluginIdentify:
-			{
-			TPinDialogOutput& pinDialogOutput = iPinDialogOutputBuf();
-			*iClientPinValue = pinDialogOutput.iPinValue;
-			*iClientPinDialogResult = pinDialogOutput.iResult;
-			}
-			break;
-		default:
-			{
-			User::Leave(KErrNotSupported);
-			}
-			break;
-		}
-	User::RequestComplete(iClientStatus, iStatus.Int());
-	}
-	
-TInt CPinPluginDialog::RunError(TInt aError)
-	{
-	if (iClientStatus)
-		{
-		User::RequestComplete(iClientStatus, aError);
-		}
-	return KErrNone;
-	}
-
-
-
-
-
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/pinplugin/pinplugindialog.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CPinPluginDialog declaration
-*
-*/
-
-
-/**
- @file 
-*/
-
-#ifndef PIN_PLUGINDIALOG_H
-#define PIN_PLUGINDIALOG_H
-
-#include <e32base.h>
-#include <pinplugindialogdefs.h>
-
-/**
- Definition of the pin plugin dialog interface 
- */
-class CPinPluginDialog : public CActive
-	{
-public:
-	/**
-	 Prompts the user to enter a pin. 
-	 
-	 @param aMinLength	The minimum length of the pin.
-	 @param aMaxLength	The maximum length of the pin.
-	 @param aRetry		Indicates whether the user is retrying.
-	 @param aPinValue	On return, It holds the pin that the user entered.
-	 @param aResult		On return, It holds output of the dialog
-	 @param aStatus		An asynchronous request status object.
-	 */
-	void PinIdentify(const TInt aMinLength, const TInt aMaxLength, const TBool aRetry, TPinValue& aPinValue,
-	                       TPinPluginDialogResult& aResult, TRequestStatus& aStatus);
-
-	/**
-	 Prompts the user to select a pin from the list.
-	  
-	 @param aType			Information about the pin to train/retrain
-	 @param aPinNumbers		array of pin number to display
-	 @param aMinLength		The minimum length of the pin.
-	 @param aMaxLength		The maximum length of the pin.
-	 @param aIndex			On return, It holds the index of the selected pin.
-	 @param aCurrentLength	By default, It has the current length of the pin
-	 						On return, It holds the new length of the pin if user changes.
- 	 @param aResult			On return, It holds output of the dialog.
- 	 @param aStatus			An asynchronous request status object. 
-	 */
-	void PinTraining(const TPinPluginTrainingMessage aType, const RPointerArray<TPinValue>& aPinNumbers,
-	                        const TInt aMinLength, const TInt aMaxLength, TInt& aIndex, TInt& aCurrentLength,
-	                        TPinPluginDialogResult& aResult, TRequestStatus& aStatus);
-
-	/**
-	 Display the message to the user. 
-	  
-	 @param aMessage	Information about the PIN to display.
-	 @param aStatus		An asynchronous request status object.	
-	 */
-	 void PinInfo(const TPinPluginInfoMessage aMessage,TRequestStatus& aStatus);
-	
-public:
-	/**
-	 Destructor for the CPinPluginDialog class
-	 */
-	~CPinPluginDialog();
-	/** static methods to constuct the object of the CPinPluginDialog */
-	static CPinPluginDialog* NewL();
-	static CPinPluginDialog* NewLC();
-private:
-	CPinPluginDialog();
-	void ConstructL();
-	/**
-	 Helper function to perform basic initialization
-	 */
-	void DoInitialize(const TPinPluginDialogOperation aOperation, TRequestStatus& aStatus);
-	/**
-	 Helper function to Issue Notifier request for the Dialog.
-	 */
-	void RequestDialog(const TDesC8& aData, TDes8& aResponse);
-
-private: // from CActive
-	void RunL();
-	void DoCancel();
-	TInt RunError(TInt aError);
-
-private:
-	enum TState 
-		{ 	
-		KPinPluginInfo,
-		KPinPluginTraining,
-		KPinPluginIdentify
-		};
-
-	TPinPluginDialogOperation iCurrentOperation;
-	TRequestStatus* iClientStatus;
-	RNotifier iNotifier;
-	TState iState;
-
-	TPinIdentifyInputBuf iPinIdentifyInputBuf;
-	TPinTrainingInputBuf iPinTrainingInputBuf;
-	TPinInfoInputBuf iPinInfoInputBuf;
-	TPinDialogOutputBuf iPinDialogOutputBuf;
-	TInt* iClientPinIndex;
-	TPinValue* iClientPinValue;
-	TInt* iClientNewPinLength;
-	TPinPluginDialogResult* iClientPinDialogResult;
-	};
-
-
-#endif /* PIN_PLUGINDIALOG_H */
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/scripts/tpinplugin.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,306 +0,0 @@
-[plugin_properties]
-pinprocesstype=Property
-
-[default_data]
-pinprocesstype=DefaultData
-identityid=4164
-
-[train_ok1]
-pinprocesstype=Train
-identityid=4165
-outputatdialog=1
-expectedoutput=TrainingSuccess
-selectindex=0
-
-[train_ok2]
-pinprocesstype=Train
-identityid=4166
-outputatdialog=2
-expectedoutput=TrainingSuccess
-selectindex=0
-
-[train_ok3]
-pinprocesstype=Train
-identityid=4167
-outputatdialog=3
-expectedoutput=TrainingSuccess
-selectindex=0
-
-[train_ok4]
-pinprocesstype=Train
-identityid=4168
-outputatdialog=5
-expectedoutput=TrainingSuccess
-selectindex=0
-
-[train_ok5]
-pinprocesstype=Train
-identityid=4169
-outputatdialog=10
-expectedoutput=TrainingSuccess
-selectindex=0
-
-[train_changepin]
-pinprocesstype=Train
-identityid=4170
-selectindex=0
-newpinlength=8
-outputatdialog=2
-expectedoutput=TrainingSuccess
-
-[train_cancel]
-pinprocesstype=Train
-identityid=4123
-selectindex=1
-outputatdialog=3
-expectedoutput=Cancel
-
-[train_quit]
-pinprocesstype=Train
-identityid=4123
-selectindex=3
-outputatdialog=3
-expectedoutput=Quit
-
-[retrain_ok1]
-pinprocesstype=ReTrain
-identityid=4175
-outputatdialog=1
-expectedoutput=ReTrainingSuccess
-
-[retrain_ok2]
-pinprocesstype=ReTrain
-identityid=4176
-outputatdialog=2
-selectindex=0
-expectedoutput=ReTrainingSuccess
-
-[retrain_ok3]
-pinprocesstype=ReTrain
-identityid=4177
-outputatdialog=3
-selectindex=0
-expectedoutput=ReTrainingSuccess
-
-[retrain_ok4]
-pinprocesstype=ReTrain
-identityid=4178
-outputatdialog=5
-selectindex=0
-expectedoutput=ReTrainingSuccess
-
-[retrain_ok5]
-pinprocesstype=ReTrain
-identityid=4179
-outputatdialog=10
-selectindex=0
-expectedoutput=ReTrainingSuccess
-
-[retrain_changepin]
-pinprocesstype=ReTrain
-identityid=4180
-selectindex=0
-newpinlength=10
-outputatdialog=2
-expectedoutput=ReTrainingSuccess
-
-[retrain_cancel]
-pinprocesstype=ReTrain
-identityid=4185
-selectindex=1
-expectedoutput=Cancel
-
-[retrain_quit]
-pinprocesstype=ReTrain
-identityid=4186
-selectindex=3
-expectedoutput=Quit
-
-[identify_ok_fail]
-pinprocesstype=Identify
-identityid=4164
-pinvalue=123456
-expectedoutput=IdentifyFailure
-
-[identify_ok_pass]
-pinprocesstype=Identify
-identityid=4164
-pinvalue=11111
-expectedoutput=IdentifySuccess
-
-[identify_cancel]
-pinprocesstype=Identify
-identityid=4165
-pinvalue=123456
-expectedoutput=Cancel
-
-[identify_quit]
-pinprocesstype=Identify
-identityid=4166
-pinvalue=123456
-expectedoutput=quit
-
-[newpin_morethanmax]
-pinprocesstype=Train
-identityid=4123
-selectindex=0
-newpinlength=12
-outputatdialog=2
-expectedoutput=TrainingSuccess
-
-[newpin_lessthanmin]
-pinprocesstype=Train
-identityid=4123
-selectindex=0
-newpinlength=2
-outputatdialog=2
-expectedoutput=TrainingSuccess
-
-
-[forget_fail]
-pinprocesstype=Forget
-identityid=4100
-expectedoutput=Failure
-
-
-[forget_pass1]
-pinprocesstype=Forget
-identityid=4170
-expectedoutput=Success
-
-[forget_pass2]
-pinprocesstype=Forget
-identityid=4168
-expectedoutput=Success
-
-[forget_pass3]
-pinprocesstype=Forget
-identityid=4167
-expectedoutput=Success
-
-[forget_pass4]
-pinprocesstype=Forget
-identityid=4166
-expectedoutput=Success
-
-[forget_pass5]
-pinprocesstype=Forget
-identityid=4169
-expectedoutput=Success
-
-[forget_pass6]
-pinprocesstype=Forget
-identityid=4165
-expectedoutput=Success
-
-[forget_pass7]
-pinprocesstype=Forget
-identityid=4180
-expectedoutput=Success
-
-[forget_pass8]
-pinprocesstype=Forget
-identityid=4178
-expectedoutput=Success
-
-[forget_pass9]
-pinprocesstype=Forget
-identityid=4177
-expectedoutput=Success
-
-[forget_pass10]
-pinprocesstype=Forget
-identityid=4176
-expectedoutput=Success
-
-[forget_pass11]
-pinprocesstype=Forget
-identityid=4179
-expectedoutput=Success
-
-[forget_pass12]
-pinprocesstype=Forget
-identityid=4175
-expectedoutput=Success
-
-[forget_pass13]
-pinprocesstype=Forget
-identityid=4185
-expectedoutput=Success
-
-[forget_pass14]
-pinprocesstype=Forget
-identityid=4186
-expectedoutput=Success
-
-[train_server_cancel1]
-pinprocesstype=TrainServerCancel
-identityid=4187
-selectindex=1
-timeout=100
-expectedoutput=ServerCancel
-
-[retrain_server_cancel1]
-pinprocesstype=ReTrainServerCancel
-identityid=4188
-selectindex=1
-timeout=100
-outputatdialog=3
-expectedoutput=ServerCancel
-
-[identify_server_cancel1]
-pinprocesstype=identifyServerCancel
-identityid=4189
-pinvalue=123456
-timeout=100
-expectedoutput=ServerCancel
-
-[forget_pass15]
-pinprocesstype=Forget
-identityid=4188
-expectedoutput=Success
-
-[sequence]
-pinprocesstype=Sequence
-identityid=4189
-expectedoutput=Success
-
-[forget_pass16]
-pinprocesstype=Forget
-identityid=4189
-expectedoutput=Success
-
-[forget_pass17]
-pinprocesstype=Forget
-identityid=4164
-expectedoutput=Success
-
-[oom1]
-pinprocesstype=Oom
-oomtest=1
-
-[oom2]
-pinprocesstype=Oom
-oomtest=2
-
-[oom3]
-pinprocesstype=Oom
-oomtest=3
-
-[oom4]
-pinprocesstype=Oom
-oomtest=4
-
-[oom5]
-pinprocesstype=Oom
-oomtest=5
-
-[oom6]
-pinprocesstype=Oom
-oomtest=6
-
-[datfile]
-pinprocesstype=Train
-selectedindex=0
-newpinlength=4
-outputatdialog=2
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/scripts/tpinplugin.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1295 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT PinPlugin tests...
-
-LOAD_SUITE tpinplugin
-
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0050
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Delete already existing plugin store.
-//!@SYMPREQ                 PREQ218
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestExpectedResults	Deletion successful.
-//!@SYMTestType				UT
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0050
-
-RUN_UTILS DeleteFile c:\private\102740fc\plugin.store
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0050
-
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0001 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and get the
-//					properties of the pin plugin.
-//!@SYMREQ 				REQ5004, REQ5005, REQ5006, REQ5007,REQ5019,REQ5001
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1.Load Pin Plugin
-//      				2.Get the Properties of the plugin
-//      				3.Verify the properties
-//!@SYMTestExpectedResults		verification returns success
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0001
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini plugin_properties
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0001
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0002 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and get the
-//					default data of the pin plugin.
-//!@SYMREQ 				REQ5019
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1.Load Pin Plugin
-//      				2.Get the default data of the plugin
-//      				3.Verify with identify operation
-//!@SYMTestExpectedResults		verification returns success
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0002
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini default_data
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0002
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0003 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021, REQ5012
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select first Pin from first Train dialog (EPINPlugInTraining).
-//					3. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0003
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_ok1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0003
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0004 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021, REQ5012
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select first Pin from second Train dialog (EPINPlugInTraining).
-//					3. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0004
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_ok2
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0004
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0005 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021, REQ5012
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select first Pin from Third Train dialog (EPINPlugInTraining).
-//					3. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0005
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_ok3
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0005
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0006 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021, REQ5012
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select first Pin from fifth Train dialog (EPINPlugInTraining).
-//					3. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0006
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_ok4
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0006
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0007
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select first Pin from Tenth Train dialog (EPINPlugInTraining).
-//					3. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0007
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_ok5
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0007
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0008 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021,REQ5020
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Enter the new pinlength in first Train dialog and Enter Next button.
-//					3. Select first Pin from next Train dialog which displays pin with new length.
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0008
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_changepin
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0008
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0009 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select Cancel button when Training dialog displayed.
-//					3. Call Identify function.
-//					4. Displays Identify dialogs (EPINPlugInIdentify), enter random PIN		
-//!@SYMTestExpectedResults		Train function should complete with KErrAuthServPluginCancelled
-//					and Identify Fails and gives the result as no identity Exist.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0009
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_cancel
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0009
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0010
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Select Quit button when Training dialog displayed.
-//					3. Call Identify function.
-//					4. Displays Identify dialogs (EPINPlugInIdentify), enter random PIN		
-//!@SYMTestExpectedResults		Train function should complete with KErrAuthServPluginuit
-//					and Identify Fails and gives the result as no identity Exist.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0010
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_quit
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0010
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0011 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Call Cancel function of Plug-in object.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter random pin.
-//!@SYMTestExpectedResults		Train asynchronous operation shall be stopped. Calling active object receive
-//					KErrCancel. and identify Fails and gives the result as no identity Exist.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0011
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini train_server_cancel1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0011
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0012 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5022, REQ5013
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function
-//					3. Select first Pin from first Train dialog (EPINPlugInTraining).
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					5. Call Identify function.
-//					6. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//					7. Repeat 1-6 to ReTrain
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0012
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_ok1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0012
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0013
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5022, REQ5013
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function
-//					3. Select first Pin from Second Train dialog (EPINPlugInTraining).
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					5. Call Identify function.
-//					6. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//					7. Repeat 1-6 to ReTrain
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0013
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_ok2
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0013
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0014
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5022, REQ5013
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function
-//					3. Select first Pin from Third Train dialog (EPINPlugInTraining).
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					5. Call Identify function.
-//					6. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//					7. Repeat 1-6 to ReTrain
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0014
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_ok3
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0014
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0015 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5022, REQ5013
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function
-//					3. Select first Pin from Fifth Train dialog (EPINPlugInTraining).
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					5. Call Identify function.
-//					6. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//					7. Repeat 1-6 to ReTrain
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0015
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_ok4
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0015
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0016 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5022
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function
-//					3. Select first Pin from Tenth Train dialog (EPINPlugInTraining).
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					5. Call Identify function.
-//					6. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//					7. Repeat 1-6 to ReTrain
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0016
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_ok5
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0016
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0017
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021,REQ5020
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in, call Train Function and select first pin form first dialog.
-//					2. Call Identify function, enter PIN saved in previous operation from notification 
-//					dialog code.
-//					3. call Train Function. Enter the new pinlength in first Train dialog and Enter Next 
-//					button.
-//					3. Select first Pin from next Train dialog which displays pin with new length.
-//					4. Save the Identity ID and returned Identify hash in aResult parameter inside test 	
-//					harness.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter PIN saved in previous 		
-//					operation from notification dialog code.
-//!@SYMTestExpectedResults		Saved values from Train operation and returned values from Identity
-//					operation match
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0017
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_changepin
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0017
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0018 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in, call Train Function and select first pin form first dialog.
-//					2. Call Identify function, enter PIN saved in previous operation from notification 
-//					dialog code.
-//					3. call Train Function. Enter the Cancel button.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter random PIN		
-//!@SYMTestExpectedResults		Train function complete with KErrAuthServPluginCancelled
-//					and Identify Fails and gives the result as identityexist given a wrong pin
-//					while repeat identy function with correct pin gives success.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0018
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_cancel
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0018
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0019
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in, call Train Function and select first pin form first dialog.
-//					2. Call Identify function, enter PIN saved in previous operation from notification 
-//					dialog code.
-//					3. call Train Function. Enter the Quit button.
-//					3. Call Identify function.
-//					4. Displays Identify dialogs (EPINPlugInIdentify), enter random PIN		
-//!@SYMTestExpectedResults		Train function complete with KErrAuthServPluginCancelled
-//					and Identify Fails and gives the result as identityexist given a wrong pin
-//					while repeat identy function with correct pin gives success.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0019
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_quit
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0019
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0020 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and train the
-//					User with the selected Pin and store the pin and ID of
-//					the user to the DB.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in, call Train Function and select first pin form first dialog.
-//					2. Call Identify function, enter PIN saved in previous operation from notification 
-//					dialog code.
-//					3. call Train Function. Call Cancel function of Plug-in object.
-//					4. Call Identify function.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter random pin.
-//!@SYMTestExpectedResults		Train asynchronous operation shall be stopped. Calling active object receive
-//					KErrCancel. and Identify Fails and gives the result as identityexist given a wrong
-//					pin while repeat identy function with correct pin gives success.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0020
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini retrain_server_cancel1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0020
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0021 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and identify the
-//					User with the given Pin and return the keyhash to the server.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. Call Identify function which already trained with default pin.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter default pin in first dialog.
-//!@SYMTestExpectedResults		identify returns success in first dialog itself
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0021
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini identify_ok_pass
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0021
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0022
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and identify the
-//					User with the given Pin and return the keyhash to the server.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. Call Identify function which already trained.
-//					5. Displays Identify dialogs (EPINPlugInIdentify), enter wrong pin 3 retry dialogs.
-//!@SYMTestExpectedResults		identify operation not displayed 4 dialog and failed with 
-//					EPinPluginIdentificationFailure.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0022
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini identify_ok_fail
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0022
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0023
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and identify the
-//					User with the given Pin and return the keyhash to the server.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Identify Function
-//					2. Select Cancel button when Identify dialog displayed.
-//!@SYMTestExpectedResults		Identify function complete with KErrAuthServPluginCancelled(code = -10804)  
-//					and Identify Fails with EPinPluginIdentificationFailure.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0023
-
-RUN_TEST_STEP !Error=-10804  100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini identify_cancel
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0023
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0024 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and identify the
-//					User with the given Pin and return the keyhash to the server.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Identify Function
-//					2. Select Quit button when Identify dialog displayed.
-//!@SYMTestExpectedResults		Identify function complete with KErrAuthServPluginQuit(code = -10805)
-//					and Identify Fails with EPinPluginIdentificationFailure.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0024
-
-RUN_TEST_STEP !Error=-10805 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini identify_quit
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0024
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0025
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and identify the
-//					User with the given Pin and return the keyhash to the server.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Identify Function
-//					2. Call Cancel function of Plug-in object.
-//!@SYMTestExpectedResults		Identify asynchronous operation shall be stopped. Calling active object receive
-//					KErrCancel. 
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0025
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini identify_server_cancel1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0025
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0026
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases will load the pinplugin and while training the
-//					User because of invalid pinsize the registration fails.  
-//					the user to the DB.
-//!@SYMREQ 				REQ5021,REQ5020
-//!@SYMPREQ                   		PREQ219, DEF141405
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Enter the new pinlength which is more than the max value in first Train dialog and 
-//					Enter Next button.
-//!@SYMTestExpectedResults		Pinplugin leaves with KErrAuthServRegistrationFailed(-10810).
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0026
-
-RUN_TEST_STEP !Error=-10810  100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini newpin_morethanmax
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0026
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0027 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and while train the
-//					User because of invalid pinsize the registration fails.
-//!@SYMREQ 				REQ5021,REQ5020
-//!@SYMPREQ                   		PREQ219, DEF141405
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and call Train Function
-//					2. Enter the new pinlength which is less than the min value in first Train dialog and 
-//					Enter Next button.
-//!@SYMTestExpectedResults		Pinplugin leaves with KErrAuthServRegistrationFailed(-10810).
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0027
-
-RUN_TEST_STEP !Error=-10810  100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini newpin_lessthanmin
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0027
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0028 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and perform various train, 
-//					identify, cancel functions sequentially.
-//!@SYMREQ 				REQ5021, REQ 5020
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in 
-//					2. call Train Function verify with Identify Function.
-//					2. call Train Function
-//					3. Call Forget Function verify with Identify Function.
-//					4. call Train Function and while training the user cancel from dialog.
-//					5. call Train Function and verify with identify Function.
-//!@SYMTestExpectedResults		All the Function returns expected results
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0028
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini sequence
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0028
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0029 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in and 
-//					2. Call Forget operation for unknown identity
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		return with KErrAuthServNoSuchIdentity. Identify fails
-//					and gives the reason as no identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0029
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_fail
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0029
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0030 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0030
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass1
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0030
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0031 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0031
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass2
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0031
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0032
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0032
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass3
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0032
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0033
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0033
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass4
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0033
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0034
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0034
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass5
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0034
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0035 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0035
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass6
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0035
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0036
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0036
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass7
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0036
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0037 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0037
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass8
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0037
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0038 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0038
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass9
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0038
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0039
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0039
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass10
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0039
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0040 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0040
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass11
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0040
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0041 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0041
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass12
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0041
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0042
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0042
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass13
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0042
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0043
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0043
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass14
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0043
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0044 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0044
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass15
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0044
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0045 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entries in the DB is more than one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0045
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass16
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0045
-
-//////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0046 
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test cases perform load the pinplugin and forget
-//					the trained data if already trained.
-//!@SYMREQ 				REQ5021
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestActions  			1. Load Plug-in
-//					2. Call Forget operation for already trained identity
-//					and number of trained entrie in the DB is exactly one.
-//					3. verify with identify operation
-//!@SYMTestExpectedResults		Identify fails and gives the reason as no such identity exists.
-//!@SYMTestType				UT
-//////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0046
-
-RUN_TEST_STEP 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini forget_pass17
-
-// delete the source file
-RUN_UTILS DeleteFile c:\private\102740fc\plugin.store
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0046
-
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0047
-//!@SYMTestCaseDependencies		TEF, ini file (pinplugin.ini) containing the test data path for 
-//					the OOM tests.
-//!@SYMTestCaseDesc			Below test cases perform out of memory tests for the Pin Plugin.
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestExpectedResults		
-//!@SYMTestType				UT
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0047
-
-// Test case perform out of memory tests for CAuthPluginInterface* NewL()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom1
-
-// Test case perform out of memory tests for DefaultData()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom2
-
-// Test case perform out of memory tests for Identify()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom3
-
-// Test case perform out of memory tests for Train()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom4
-
-// Test case perform out of memory tests for ReTrain()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom5
-
-// Test case perform out of memory tests for Forget()
-RUN_TEST_STEP !OOM 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini oom6
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0047
-
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-//!@file				
-//!@SYMTestCaseID			SEC-AUT-PINPLUGIN-0049
-//!@SYMTestCaseDependencies		TestData ini file(pinplugin.ini) containing the data 
-//!@SYMTestCaseDesc			Below test case try to load the plugin when the DB was corrupted.
-//!@SYMPREQ                   		PREQ219
-//!@SYMTestStatus			Implemented
-//!@SYMTestPriority			High
-//!@SYMTestExpectedResults		Load fails with error code
-//!@SYMTestType				UT
-/////////////////////////////////////////////////////////////////////////////////////////////////////
-
-START_TESTCASE SEC-AUT-PINPLUGIN-0049
-
-RUN_UTILS DeleteFile c:\private\102740fc\plugin.store
-RUN_UTILS CopyFile c:\tauth\tauthsvr\testdata\authsvrpolicy.ini c:\private\102740fc\plugin.store
-RUN_TEST_STEP_RESULT -5 100 tpinplugin tPinPluginTestStep c:\tauth\tpinplugin\scripts\tpinplugin.ini plugin_properties
-RUN_UTILS DeleteFile c:\private\102740fc\plugin.store
-
-END_TESTCASE SEC-AUT-PINPLUGIN-0049
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,115 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TestExecute Server testing pin plugin
-*
-*/
-
-
-/**
- @file 
-*/
-#include "tpinplugin.h"
-#include "tpinpluginteststep.h"
-
-using namespace AuthServer;
-
-CPinPluginTestServer* CPinPluginTestServer::NewL()
-	{
-	CPinPluginTestServer* server = new (ELeave) CPinPluginTestServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit
-	// Server Logging.
-	TParsePtrC serverName(RProcess().FileName());	
-	server->ConstructL(serverName.Name());
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-// EKA2 much simpler
-// Just an E32Main and a MainL()
-LOCAL_C void MainL()
-/**
- * Much simpler, uses the new Rendezvous() call to sync with the client
- */
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CPinPluginTestServer* server = NULL;
-	// Create the CTestServer derived server
-	TRAPD(err,server = CPinPluginTestServer::NewL());
-	if(!err)
-		{
-		// Sync with the client and enter the active scheduler
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-// Only a DLL on emulator for typhoon and earlier
-
-GLDEF_C TInt E32Main()
-/**
- @return - Standard Epoc error code on exit
- */
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());
-	delete cleanup;
-	return KErrNone;
-    }
-
-// Create a thread in the calling process
-// Emulator typhoon and earlier
-
-CTestStep* CPinPluginTestServer::CreateTestStep(const TDesC& aStepName)
-	{
-	CTestStep* testStep = NULL;
-
-	// This server creates just one step 
-	// They are created "just in time" when the worker thread is created
-
-	if(aStepName == KPinPluginTestStep)
-		{
-		testStep = new CPinPluginTestStep();
-		}
-	else if (aStepName == KCreateInputFile)
-		{
-		testStep = new CCreateFile();
-		}
-	else
-		{
-		ERR_PRINTF1(_L("The test step name specified does not exist."));
-		}
-
-	return testStep;
-	}
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugin.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <test/TestExecuteServerBase.h>
-
-class CPinPluginTestServer : public CTestServer
-	{
-public:
-	/**
- 	 Called inside the MainL() function to create and start the
- 	 CTestServer derived server.
- 	 
- 	 @return - Instance of the test server
- 	 */
-	static CPinPluginTestServer* NewL();
-	
-	/**
-	 Implementation of CTestServer pure virtual
- 	 @return - A CTestStep derived instance
- 	 */
-	virtual CTestStep* CreateTestStep(const TDesC& aStepName);
-	RFs& Fs(){return iFs;};
-
-private:
-	RFs iFs;
-	};
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinplugintestactive.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1107 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tpinpluginteststep.h"
-#include <authserver/authplugininterface.h>
-#include <test/testexecutelog.h>
-#include <ecom/ecom.h>
-#include <ecom/implementationinformation.h>
-#include <s32file.h>
-#include <authserver/auth_srv_errs.h>
-#include <authserver/authpatchdata.h>
-#include <u32hal.h>
-#include <e32svr.h>
- 
-using namespace AuthServer;
-
-_LIT(KTrainSuccess,   	"TrainingSuccess");
-_LIT(KReTrainSuccess, 	"ReTrainingSuccess");
-_LIT(KIdentifySuccess,	"IdentifySuccess");
-_LIT(KIdentifyFailure,  "IdentifyFailure");
-
-_LIT(KSuccess,   	"Success");
-_LIT(KFailure,   	"Failure");
-_LIT(KDialogCancel, "Cancel");
-_LIT(KDialogQuit, 	"Quit");
-_LIT(KServerCancel, "ServerCancel");
-
-_LIT(KInputFile, 	"C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, 	"C:\\t_pinplugindlg_out.dat");
-
-const TPluginId KPinPluginImplementationUid = 0x200032E5;
-const TUint32 KEntropy = 10000;
-const TUint32 KFalsePositiveRate = 0;
-const TUint32 KFalseNegativeRate = 0;
-const TBool KActive = ETrue;
-const TAuthPluginType KPluginType = EAuthKnowledge;
-
-_LIT(KPluginName, "PinPlugin");
-_LIT(KPluginDesc, "Pinplugin authenticates device holder using PIN numbers generated from 0-9 digits");
-
-TInt CPinPluginTestActive::KAuthenticationServerStackSize=0x2000;
-TInt CPinPluginTestActive::KAuthenticationServerInitHeapSize=0x1000;
-TInt CPinPluginTestActive::KAuthenticationServerMaxHeapSize=0x1000000;
-
-CPinPluginTestActive* CPinPluginTestActive::NewL(CTestExecuteLogger& aLogger, AuthServer::TIdentityId& aIdentityId, TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep)
-	{
-	CPinPluginTestActive* pinPlugin = new (ELeave) CPinPluginTestActive(aLogger, aIdentityId, aPinProcessType, aTestStep);
-	pinPlugin->ContructL();
-	return pinPlugin;
-	}
-
-void CPinPluginTestActive::ContructL()
-	{
-	User::LeaveIfError(iFs.Connect());
-	}
-
-CPinPluginTestActive::CPinPluginTestActive(CTestExecuteLogger& aLogger, TIdentityId& aIdentityId,TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep) 
-	:CActive(EPriorityStandard), 
-	iLogger(aLogger), 
-	iOperation(EPinPluginInfo),
-	iIdentityId(aIdentityId),
-	iPinProcessType(aPinProcessType),
-    iTestStep(aTestStep)
-	{
-	CActiveScheduler::Add( this );
-	}
-
-CPinPluginTestActive::~CPinPluginTestActive()
-	{
-	Cancel();
-	iFs.Close();
-	if (iPinPlugin)
-		{
-		REComSession::DestroyedImplementation(iDtor_ID_Key);
-		delete iPinPlugin;
-		}
-	REComSession::FinalClose();
-	}
-
-	
-void CPinPluginTestActive::RunL()
-	{
-        iTestStep.SetTestStepError(iStatus.Int()); 
-    	CActiveScheduler::Stop();
-	return;
-	}
-	
-TVerdict CPinPluginTestActive::DoTestPropertyL()
-	{
-	TBool res = ETrue; 
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		if(iPinPlugin->Id() != KPinPluginImplementationUid)
-			res = EFalse;
-		if(iPinPlugin->Name().CompareF(KPluginName) != 0)
-			res = EFalse;
-		if(iPinPlugin->Description().CompareF(KPluginDesc) != 0)
-			res = EFalse;
-		if(iPinPlugin->Type() != KPluginType)
-			res = EFalse;
-		if(iPinPlugin->MinEntropy() != KEntropy)
-			res = EFalse;
-		if(iPinPlugin->FalsePositiveRate() != KFalsePositiveRate)
-			res = EFalse;
-		if(iPinPlugin->FalseNegativeRate() != KFalseNegativeRate)
-			res = EFalse;
-		if(iPinPlugin->IsActive() != KActive)
-			res = EFalse;
-
-		INFO_PRINTF2(_L("ID			 : 0x%x"), iPinPlugin->Id());
-	    INFO_PRINTF2(_L("Name		 : %S"), &iPinPlugin->Name());
-	    INFO_PRINTF2(_L("Description	 : %S"), &iPinPlugin->Description());
-	    INFO_PRINTF2(_L("MinEntropy		 : %d"), iPinPlugin->MinEntropy());
-	    INFO_PRINTF2(_L("False Positive Rate : %d"), iPinPlugin->FalsePositiveRate());
-	    INFO_PRINTF2(_L("False Negative Rate : %d"), iPinPlugin->FalseNegativeRate());
-	    _LIT(KETrue, "ETrue");
-		_LIT(KEFalse, "EFalse");
-	    INFO_PRINTF2(_L("IsActive   	 : %S"), iPinPlugin->IsActive() ? &KETrue : &KEFalse);
-	    switch(iPinPlugin->Type())
-	    	{
-	    	case EAuthDefault:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthDefault"));
-	    		break;
-	    	case EAuthBiometric:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthBiometric"));
-	    		break;
-	    	case EAuthKnowledge:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthKnowledge"));
-	    		break;
-	    	case EAuthToken:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthToken"));
-	    		break;
-	    	case EAuthPerformance:
-	    		INFO_PRINTF1(_L("Type       	 : EAuthPerformance"));
-	    		break;
-	    	default:
-	    		INFO_PRINTF1(_L("Invalid Type"));
-	    	}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-
-	if (!res)
-		{
-		INFO_PRINTF1(_L("PinPlugin returns Unexpected Values"));
-		return EFail;
-		}
-	return EPass;
-	}
-
-TVerdict CPinPluginTestActive::DoTestDefaultDataL()
-	{
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		HBufC8* result = NULL;
-		TInt err = iPinPlugin->DefaultData(iIdentityId, result);
-		if(result != NULL)
-			{
-			delete result;
-			}
-		if (err != KErrNone)
-			{
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			res = EFalse;
-			INFO_PRINTF3(_L("Err :%d while receiving the default data for the identity : %d"), err, iIdentityId);
-			}
-		else
-			{
-			_LIT(KPinValue, "11111");
-			iPinValue.Copy(KPinValue);
-			INFO_PRINTF2(_L("Requesting Identify the Identity : %d with the default pin"), iIdentityId);
-			TIdentityId identityId = iIdentityId;
-			PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-			res = DoIdentifyL(result);
-			if(result != NULL)
-				{
-				INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-				delete result;
-				}
-			else
-				{
-				INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-
-	return ReturnResultL(res);
-	}
-
-TVerdict CPinPluginTestActive::DoTestIdentifyL()
-	{ 
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginIdentify, iDialogNumber);
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		HBufC8* result = NULL;
-		INFO_PRINTF2(_L("Requesting Identify the Identity : %d"), iIdentityId);
-		res = DoIdentifyL(result);
-		if(result != NULL)
-			{
-			INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-			delete result;
-			}
-		else
-			{
-			INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestTrainL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginTraining, iDialogNumber);
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-	
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-
-TVerdict CPinPluginTestActive::DoTestForgetL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		ForgetIdentifyL();
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-
-	return ReturnResultL(res);
-	}
-
-void CPinPluginTestActive::DoCancel() 
-	{ 
-	iPinPlugin->Cancel();
-	}
-
-TVerdict CPinPluginTestActive::DoTestReTrainL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-
-	TInt dialogno = iDialogNumber;
-	TBool DialogCancel = EFalse;
-	if (iExpectedOutput.CompareF(KDialogCancel) == 0
-		|| iExpectedOutput.CompareF(KDialogQuit) == 0)
-		{
-		DialogCancel = ETrue;
-		}
-	PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-	TBool res = ETrue;
-
-__UHEAP_MARK;		// Check for memory leaks
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		if (res)
-			{
-			iTempPinValue.Copy(iPinValue);
-			if (DialogCancel)
-				{
-				PreferDialogInputL(KDialogCancel, EPinPluginTraining, dialogno);
-				}
-			else
-				{
-				PreferDialogInputL(KReTrainSuccess, EPinPluginTraining, dialogno);		
-				}
-			INFO_PRINTF2(_L("Requesting ReTrain the Identity : %d"), iIdentityId);
-			res = TrainIdentifyL();
-			if (res)
-				{
-				iPinValue.Copy(iTempPinValue);
-				iIdentityId = identityId;
-				if (DialogCancel)
-					{
-					PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, dialogno);	
-					}
-				else
-					{
-					PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);		
-					}		
-				HBufC8* result = NULL;
-				HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-			   	pinVal->Des().Copy(iPinValue);
-				INFO_PRINTF3(_L("Requesting Identify the Identity : %d with the pin : %S"), iIdentityId, pinVal);
-				CleanupStack::PopAndDestroy(pinVal);
-				res = DoIdentifyL(result);
-				if(result != NULL)
-					{
-					INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-					delete result;
-					}
-				else
-					{
-					INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-					}
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestServerCancelL()
-	{
-	if(!ReadDetailsFromIni(iTestStep))
-		{
-		return EFail;
-		}
-	PreferDialogInputL(iExpectedOutput, EPinPluginTraining, 1);
-	
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-	TIdentityId identityId = iIdentityId;
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		if (iPinProcessType.CompareF(KReTrainServerCancel) == 0)
-			{
-			INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-			res = TrainIdentifyL();
-			}
-		HBufC8* result = NULL;
-		if (iPinProcessType.CompareF(KTrainServerCancel) == 0
-			|| iPinProcessType.CompareF(KReTrainServerCancel) == 0)
-			{
-			iTempPinValue.Copy(iPinValue);
-			INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-			iPinPlugin->Train(iIdentityId, result, iStatus);
-			SetActive();
-			}
-		else if (iPinProcessType.CompareF(KIdentifyServerCancel) == 0)
-			{
-			INFO_PRINTF2(_L("Identify the Identity : %d"), iIdentityId);
-			iPinPlugin->Identify(iIdentityId, KNullDesC(), result, iStatus);
-			SetActive();
-			}
-
-		INFO_PRINTF1(_L("Cancel the process from the Authentication Server"));
-
-		Cancel();
-		
-		if(iStatus.Int() != -3)
-			{
-			res = EFalse;
-			}
-		if (res && iPinProcessType.CompareF(KIdentifyServerCancel) != 0)
-			{
-			iIdentityId = identityId;
-			if (iPinProcessType.CompareF(KTrainServerCancel) == 0)
-				{
-				_LIT(KPinValue, "123456");
-				iPinValue.Copy(KPinValue);
-				PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);	
-				}
-			else
-				{
-				iPinValue.Copy(iTempPinValue);
-				PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);		
-				}		
-			HBufC8* result = NULL;
-			HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-		   	pinVal->Des().Copy(iPinValue);
-			INFO_PRINTF3(_L("Requesting Identify the Identity : %d with the pin : %S"), iIdentityId, pinVal);
-			CleanupStack::PopAndDestroy(pinVal);
-			res = DoIdentifyL(result);
-			if(result != NULL)
-				{
-				INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-				delete result;
-				}
-			else
-				{
-				INFO_PRINTF2(_L("IdentityId : %d is not identified"), identityId);
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestSequenceL()
-	{
-	PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-	
-	TBool res = ETrue;
-	
-__UHEAP_MARK;		// Check for memory leaks
-		
-	iPinPlugin = LoadPluginL();
-	if (iPinPlugin != NULL)
-		{
-		INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-		res = TrainIdentifyL();
-		if (res)
-			{
-			PreferDialogInputL(KReTrainSuccess, EPinPluginTraining, 1);
-			INFO_PRINTF2(_L("Requesting ReTrain the Identity : %d"), iIdentityId);
-			HBufC8* result = NULL;
-			res = DoTrainL(result);
-			if (result != NULL)
-				{
-				delete result;
-				}
-			if (res)
-				{
-				TIdentityId id = iIdentityId;
-				res = ForgetIdentifyL();
-				if(res)
-					{
-					for (TInt i = 0; i <= 2; i++)
-						{
-						iIdentityId = id;
-						INFO_PRINTF2(_L("Requesting Train the Identity : %d"), iIdentityId);
-						if (i==2)
-							{
-							PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-							}
-						else
-							{
-							iInfoMsg = EPinPluginTrainingSuccess;
-							PreferDialogInputL(KDialogCancel, EPinPluginTraining, 1);
-							}
-						res = TrainIdentifyL();
-						if (!res)
-							{
-							break;
-							}
-						}
-					}
-				}
-			}
-		}
-	else
-		{
-		iLogInfo.Copy( _L("Cannot Load PinPlugin") );
-		return EFail;
-		}
-	UnLoadPlugin();
-
-__UHEAP_MARKEND;
-	
-	return ReturnResultL(res);
-	}
-	
-TVerdict CPinPluginTestActive::DoTestOomL()
-	{
- 	if(!iTestStep.GetIntFromConfig(iTestStep.ConfigSection(), _L("oomtest"), iOomTest))
-   		{
-   		INFO_PRINTF1(_L("Test about which function is needed"));
-   		return EFail;
-   		}
-	__UHEAP_MARK;
-		TIdentityId id = 1234;
-		HBufC8* result = NULL;
-	switch(iOomTest)
-		{
-		case 1:
-			{
-			iPinPlugin = LoadPluginL();
-			UnLoadPlugin();
-			}
-			break;
-		case 2:
-			{
-			iPinPlugin = LoadPluginL();
-			TInt err = iPinPlugin->DefaultData(id, result);
-			CleanupStack::PushL(result);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			CleanupStack::PopAndDestroy(result);
-			UnLoadPlugin();
-			}
-			break;
-		case 3:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			_LIT(KPinValue, "11111");
-			iPinValue.Copy(KPinValue);
-			PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-			iPinPlugin->Identify(id, KNullDesC(), result, iStatus);
-			CleanupStack::PushL(result);
-			SetActive();
-			CActiveScheduler::Start();
-			CleanupStack::PopAndDestroy(result);
-			UnLoadPlugin();
-			}
-			break;
-		case 4:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-			iPinPlugin->Train(id, result, iStatus);
-			SetActive();
-			CActiveScheduler::Start();
-			if (result != NULL)
-				{
-				delete result;
-				}
-			TInt err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			UnLoadPlugin();
-			}
-			break;
-		case 5:
-			{
-			iPinPlugin = LoadPluginL();
-			iStatus = KRequestPending;
-			PreferDialogInputL(KTrainSuccess, EPinPluginTraining, 1);
-			iPinPlugin->Train(id, result, iStatus);
-			SetActive();
-			CActiveScheduler::Start();
-			if (result != NULL)
-				{
-				delete result;
-				}
-			UnLoadPlugin();
-			}
-			break;
-		case 6:
-			{
-			iPinPlugin = LoadPluginL();
-			TInt err = iPinPlugin->Forget(id);
-			if (err == KErrNoMemory)
-				{
-				User::Leave(err);
-				}
-			UnLoadPlugin();
-			}
-			break;
-		}
-
-	__UHEAP_MARKEND;
- 	return EPass;
-	}
-
-CPinPlugin* CPinPluginTestActive::LoadPluginL()
-	{
-	 TEComResolverParams resolverParams;
-	  TBufC8<16> pluginIdTxt;
-	  
-	  pluginIdTxt.Des().Format(_L8("%x"), KPinPluginImplementationUid);
-	  pluginIdTxt.Des().UpperCase();
-	  resolverParams.SetDataType(pluginIdTxt);
-	  
-	  //To load plugins from sources other than ROM the patch 
-	  // data KEnablePostMarketAuthenticationPlugins must be set to True.
-	  TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-	#ifdef __WINS__
-
-	  // Default SymbianOS behavior is to only load auth plugins from ROM.
-	  enablePostMarketPlugin = 0;
-
-	  // For the emulator allow the constant to be patched via epoc.ini
-	  UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-	  (TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-	#endif
-
-	  TAny* plugin = 0;
-	  TInt err = 0;
-	  
-	  if(enablePostMarketPlugin == 0) 
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											iDtor_ID_Key,
-											resolverParams,
-											KRomOnlyResolverUid));
-	  	}
-	  
-	  else
-	  	{
-	  	TRAP(err, plugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-											iDtor_ID_Key,
-											resolverParams));
-	  	}
-	  
-	 if (err == KErrNotFound)
-	    {
-	    err = KErrAuthServNoSuchPlugin;  
-	    }
-	  User::LeaveIfError(err);
-	    
-	  return reinterpret_cast<CPinPlugin*>(plugin);
-	
-	}
-
-void CPinPluginTestActive::UnLoadPlugin()
-	{
-	delete iPinPlugin;
-	iPinPlugin = NULL;
-	REComSession::DestroyedImplementation(iDtor_ID_Key);
-	REComSession::FinalClose();
-	}
-	
-TVerdict CPinPluginTestActive::ReturnResultL(TBool aRes)
-	{
-	TVerdict result = EPass;
-	DeleteFileL();
-	if (!aRes)
-		{
-		result = EFail;
-		}
-	return result;
-	}
-	
-TBool CPinPluginTestActive::TrainIdentifyL()
-	{
-	TBool res = ETrue;
-
-	HBufC8* result = NULL;
-	res = DoTrainL(result);
-	if (res)
-		{
-		HBufC* pinVal = HBufC::NewLC(iPinValue.Length());
-	   	pinVal->Des().Copy(iPinValue);
-		INFO_PRINTF3(_L("Identify the Identity : %d using pin : %S"), iIdentityId, pinVal);
-		HBufC8* result1 = NULL;
-		TIdentityId identityId = iIdentityId;
-		res = DoIdentifyL(result1);
-		if(res && result1 != NULL)
-			{
-			if (result->Des().CompareF(result1->Des()) != 0)
-				{
-				INFO_PRINTF1( _L("Trained result is different from identification result"));
-				res = EFalse;
-				}
-			else
-				{
-				INFO_PRINTF3(_L("The Identity : %d is Successfully identified with pin : %S"), iIdentityId, pinVal);
-				}
-			delete result1;
-			}
-		else
-			{
-			INFO_PRINTF2(_L("The Identity %d is not trained"), identityId);
-			}
-		CleanupStack::PopAndDestroy(pinVal);
-		}
-	if(result != NULL)
-		{
-		delete result;
-		}
-		
-	return res;
-	}
-
-TBool CPinPluginTestActive::ForgetIdentifyL()
-	{
-	INFO_PRINTF2(_L("Requesting Forget the Identity : %d"), iIdentityId);
-	TInt err = iPinPlugin->Forget(iIdentityId);
-	
-	TBool res = CheckResultL(err);
-	if (res)
-		{
-		INFO_PRINTF2(_L("IdentityId :%d is successfully removed"), iIdentityId);
-		INFO_PRINTF1(_L("Verify using Identify Process"));	
-		HBufC8* result = NULL;
-		res = DoIdentifyL(result);
-		if(res && result != NULL)
-			{
-			INFO_PRINTF2(_L("The Identity : %d is Successfully identified"), iIdentityId);
-			delete result;
-			}
-		}
-	return res;	
-	}
-	
-TBool CPinPluginTestActive::DoTrainL(HBufC8*& aResult)
-	{
-	TBool res = ETrue;
-	iStatus = KRequestPending;
-	
-	iPinPlugin->Train(iIdentityId, aResult, iStatus);
-	SetActive();
-	CActiveScheduler::Start();
-		
-	res = VerifyResultL(iStatus.Int());
-	return res;
-	}
-	
-TBool CPinPluginTestActive::DoIdentifyL(HBufC8*& aResult)
-	{
-	TBool res = ETrue;
-		
-	iPinPlugin->Identify(iIdentityId, KNullDesC(), aResult, iStatus);
-	if(!IsActive())
-		SetActive();
-	CActiveScheduler::Start();
-	
-	res = VerifyResultL(iStatus.Int());
-	return res;
-	}
-	
-TBool CPinPluginTestActive::VerifyResultL(TInt aOutputVal)
-	{
-	TBool result = ETrue;
-	
-	if ((iExpectedOutput.CompareF(KDialogCancel) == 0)
-		&& (aOutputVal != KErrAuthServPluginCancelled))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	else if ((iExpectedOutput.CompareF(KDialogQuit) == 0)
-		&& (aOutputVal != KErrAuthServPluginQuit))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	else if ((iExpectedOutput.CompareF(KTrainSuccess) == 0)
-		&& (aOutputVal == KErrAuthServRegistrationFailed))
-		{
-		INFO_PRINTF2(_L("Authserver registration failed. Returned error code = %d"), aOutputVal);
-		result = EFalse;
-		}	
-	else if ((iExpectedOutput.CompareF(KDialogCancel) != 0)
-			&& (iExpectedOutput.CompareF(KDialogQuit) != 0)
-			&& (iExpectedOutput.CompareF(KServerCancel) != 0)
-			&& (aOutputVal != KErrNone))
-		{
-		INFO_PRINTF1(_L("RequestStatus is not completed with expected result"));
-		result = EFalse;
-		}
-	if (result && aOutputVal == KErrNone)
-		{
-		TInt dialogNumber;
-		TPinValue pinValue;
-		TPinPluginInfoMessage displayedMsg;
-		ReadOutputDetailsL(dialogNumber, pinValue, displayedMsg);
-		TPtrC message;
-		switch(displayedMsg)
-	    	{
-	    	case EPinPluginTrainingSuccess:
-	    		message.Set(_L("EPinPluginTrainingSuccess"));
-	    		break;
-	    	case EPinPluginReTrainingSuccess:
-	    		message.Set(_L("EPinPluginReTrainingSuccess"));
-	    		break;
-	    	case EPinPluginIdentificationSuccess:
-	    		message.Set(_L("EPinPluginIdentificationSuccess"));	  
-	    		break;
-	    	case EPinPluginIdentificationFailure:
-	    		message.Set(_L("EPinPluginIdentificationFailure"));
-	    		break;
-	    	}
-		if(displayedMsg != iInfoMsg)
-			{
-			INFO_PRINTF2(_L("INFO :%S which is not expected"), &message);
-			result = EFalse;
-			}
-		if (iCmdResult == EOk && dialogNumber != iDialogNumber)
-			{
-			INFO_PRINTF3(_L("Number of dialog displayed : %d differ from expected dialog: %d."), dialogNumber,iDialogNumber);
-			result = EFalse;
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& dialogNumber == 0)
-			{
-			INFO_PRINTF2(_L("INFO :%S because IdentityId is not available in the DB"), &message);
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& dialogNumber == 3)
-			{
-			INFO_PRINTF2(_L("INFO :%S because wrong pin input for all retries and IdentityId exists in the DB"), &message);
-			}
-		if (displayedMsg == EPinPluginIdentificationFailure
-			&& iIdentityId != KUnknownIdentity)
-			{
-			INFO_PRINTF2(_L("IdentityId was not reset for %S"), &message);
-			}
-		if (displayedMsg != EPinPluginIdentificationSuccess
-			&& displayedMsg != EPinPluginIdentificationFailure)
-			{
-			iPinValue.Copy(pinValue);
-			if (iInfoMsg == EPinPluginTrainingSuccess 
-				|| iInfoMsg == EPinPluginReTrainingSuccess)
-				{
-				HBufC* pinVal = HBufC::NewLC(pinValue.Length());
-			   	pinVal->Des().Copy(pinValue);
-				INFO_PRINTF3(_L("The Identity %d is trained with pin number %S"), iIdentityId, pinVal);
-				CleanupStack::PopAndDestroy(pinVal);
-				PreferDialogInputL(KIdentifySuccess, EPinPluginIdentify, 1);
-				}
-			else
-				{
-				PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 0);
-				}
-			}
-		}
-	if(aOutputVal != KErrNone)
-		{
-		if (aOutputVal == KErrAuthServPluginCancelled)
-			{
-			INFO_PRINTF1(_L("Cancel the process from the Dialog Notifier"));	
-			}
-		else if (aOutputVal == KErrAuthServPluginQuit)
-			{
-			INFO_PRINTF1(_L("Quit the process from the Dialog Notifier"));	
-			}
-		CheckResultL(aOutputVal);
-		}
-	return result;
-	}
-	
-TBool CPinPluginTestActive::CheckResultL(TInt aResult)
-	{
-	_LIT(KPinValue, "123456");
-	if (iExpectedOutput.CompareF(KSuccess) == 0
-		&& aResult == KErrAuthServNoSuchIdentity)
-		{
-		INFO_PRINTF2(_L("IdentityId : %d is not identified when should be"), iIdentityId);
-		return EFalse;
-		}
-	else if(iExpectedOutput.CompareF(KFailure) == 0
-		&& aResult == KErrNone)
-		{
-		INFO_PRINTF2(_L(" IdentityId : %d is identified when should not be"), iIdentityId);
-		return EFalse;
-		}
-	iPinValue.Copy(KPinValue);
-	PreferDialogInputL(KIdentifyFailure, EPinPluginIdentify, 3);
-	return ETrue;
-	}
-	
-TBool CPinPluginTestActive::ReadDetailsFromIni(CPinPluginTestStep& aStep)
-	{
-	TPtrC pinVal;
-	if(!aStep.GetStringFromConfig(aStep.ConfigSection(), _L("expectedoutput"), iExpectedOutput))
-		{
-		INFO_PRINTF1(_L("expectedoutput value is missing"));
-		return EFalse;
-		}
-	// Optional input, if the input is not available by default the iIndex is set to 0.
-	if(!aStep.GetIntFromConfig(aStep.ConfigSection(), _L("selectindex"), iIndex))
-		{
-		iIndex = 0;
-		}
-	// optional input, if not pinplugin use the default pinlength from the config file.
-	aStep.GetIntFromConfig(aStep.ConfigSection(), _L("newpinlength"), iNewPinLength);
-
-	// optional input, 
-	aStep.GetStringFromConfig(aStep.ConfigSection(), _L("pinvalue"), pinVal);
-	iPinValue.Copy(pinVal);
-
-	// Optional input, if the input is not available by default the resultant output cmd will given
-	// in the dialog No 1.
-	if(!aStep.GetIntFromConfig(aStep.ConfigSection(), _L("outputatdialog"), iDialogNumber))
-		{
-		if (iExpectedOutput.CompareF(KIdentifyFailure) == 0)
-			{
-			iDialogNumber = 3;
-			}
-		else
-			{
-			iDialogNumber = 1;
-			}
-		}
-	return ETrue;
-	}
-	
-void CPinPluginTestActive::PreferDialogInputL(const TDesC& aExpectedOutput,
-			TPinPluginDialogOperation aOp, TInt aDialogNo)
-	{
-	// iPinValue, iIndex, iNewPinLength is not changing for every operation. if
-	// any changes occurs , we have to reset just before calling this function.
-	iOperation = aOp;
-	iDialogNumber = aDialogNo;
-	iExpectedOutput.Set(aExpectedOutput);
-		
-	if (aExpectedOutput.CompareF(KTrainSuccess) == 0)
-		{
-		iInfoMsg = EPinPluginTrainingSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KReTrainSuccess) == 0)
-		{
-		iInfoMsg = EPinPluginReTrainingSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KIdentifySuccess) == 0)
-		{
-		iInfoMsg = EPinPluginIdentificationSuccess;
-		}
-	else if (aExpectedOutput.CompareF(KIdentifyFailure) == 0)
-		{
-		iInfoMsg = EPinPluginIdentificationFailure;
-		}
-
-	if (aExpectedOutput.CompareF(KDialogCancel) == 0)
-		{
-		iCmdResult = iCmdFinalResult = ECancel;
-		}
-	else if (aExpectedOutput.CompareF(KDialogQuit) == 0)
-		{
-		iCmdResult = iCmdFinalResult = EQuit;
-		}
-	else 
-		{
-		iCmdResult = iCmdFinalResult = EOk;
-		}
-		
-	if (iDialogNumber > 1 && 
-	   	aExpectedOutput.CompareF(KIdentifyFailure) != 0 &&
-		aExpectedOutput.CompareF(KIdentifySuccess) != 0)
-		{
-		iCmdResult = ENext;
-		}
-	DeleteFileL();
-	WriteOutputDetailsL();
-	}
-	
-void CPinPluginTestActive::WriteOutputDetailsL()
-	{
-	RFileWriteStream stream;
-	TInt err = stream.Create(iFs, KInputFile, EFileWrite | EFileShareExclusive);
-	User::LeaveIfError(err);
-	stream.PushL();
-
-	MStreamBuf* streamBuf = stream.Sink();
-	streamBuf->SeekL(MStreamBuf::EWrite, EStreamEnd);
-	stream.WriteInt32L(iOperation);
-	stream.WriteInt32L(iPinValue.Length());
-	stream.WriteL(iPinValue);
-	stream.WriteInt32L(iIndex);
-	stream.WriteInt32L(iNewPinLength);
-	stream.WriteInt32L(iCmdResult);
-	iOperation = EPinPluginInfo;
-	stream.WriteInt32L(iOperation);
-	stream.WriteInt32L(iCmdFinalResult);
-	stream.WriteInt32L(iDialogNumber);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(); // stream
-	}
-
-void CPinPluginTestActive::ReadOutputDetailsL(TInt& aDialogNumber, TPinValue& aPinValue, TPinPluginInfoMessage& aDisplayedMsg)
-	{
-	RFileReadStream stream;
-	User::LeaveIfError(stream.Open(iFs, KOutputFile, EFileRead | EFileShareExclusive));
-	stream.PushL();
-
-	MStreamBuf* streamBuf = stream.Source();
-	TPinValue pinvalue;
-	TInt pinValueSize;
-	
-	aDialogNumber = stream.ReadInt32L();
-	
-	pinValueSize = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueSize);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueSize);
-	aPinValue.Copy(pinValuePtr);
-	CleanupStack::PopAndDestroy(1, pinValueBuf);	
-
-	aDisplayedMsg = static_cast<TPinPluginInfoMessage>(stream.ReadInt32L());
-	
-	CleanupStack::PopAndDestroy(&stream); 
-	}
-	
-void CPinPluginTestActive::DeleteFileL()
-	{
-	CFileMan* fileMan = CFileMan::NewL(iFs);
-	CleanupStack::PushL(fileMan);
-	TInt err = fileMan->Delete(KInputFile);
-	if ( err != KErrNotFound && err != KErrNone )
-		{
-		User::LeaveIfError(err);
-		}
-	err = fileMan->Delete(KOutputFile);
-	if (err != KErrNotFound && err != KErrNone )
-		{
-		User::LeaveIfError(err);
-		}
-	CleanupStack::PopAndDestroy(fileMan);	
-	}
-
-
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinpluginteststep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,276 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tpinpluginteststep.h"
-#include <test/testexecutelog.h>
-#include <s32file.h>
-
-_LIT(KProperties,   		"Property");
-_LIT(KDefaultData,			"DefaultData");
-_LIT(KIdentify,				"Identify");
-_LIT(KTrain,   				"Train");
-_LIT(KReTrain,   			"ReTrain");
-_LIT(KForget,   			"Forget");
-_LIT(KSequence,   			"Sequence");
-_LIT(KOom,   				"Oom");
-
-_LIT(KInputFile, 	"C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, "C:\\t_pinplugindlg_out.dat");
-
-using namespace AuthServer;
-
-CPinPluginTestStep::~CPinPluginTestStep()
-	{
-	}
-
-CPinPluginTestStep::CPinPluginTestStep()
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KPinPluginTestStep);
-	}
-
-TVerdict CPinPluginTestStep::doTestStepPreambleL()
-	{
-	// get step parameters
-	if (!GetStringFromConfig(ConfigSection(), _L("pinprocesstype"), iPinProcessType))
-		{
-		ERR_PRINTF1(_L("Requested Pin Process Type is missing"));
-		SetTestStepResult(EFail);
-		}
-	else
-		{
-		if (iPinProcessType.CompareF(KProperties) != 0 
-			&& iPinProcessType.CompareF(KOom) != 0)
-			{
-			TInt id  = 0;
-			if (!GetIntFromConfig(ConfigSection(), _L("identityid"), id))
-				{
-				ERR_PRINTF1(_L("Identity Id Value is missing"));
-				SetTestStepResult(EFail);	
-				}
-			else
-				{
-				iIdentityId = TIdentityId(id);
-				SetTestStepResult(EPass);
-				INFO_PRINTF3(_L("\"%S\" the Identity '%d' using PinPlugin System"), &iPinProcessType, id/*iIdentityId*/);
-				}
-			}
-		}
-	return TestStepResult();
-	}
-
-TVerdict CPinPluginTestStep::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-
-	CActiveScheduler* sched = NULL;
-	sched = new (ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);	
-	CPinPluginTestActive* activeObj = CPinPluginTestActive::NewL(Logger(), iIdentityId, iPinProcessType, *this);
-	CleanupStack::PushL(activeObj);
-	
-	if (iPinProcessType.CompareF(KProperties) == 0)
-		{
-		iVerdict = activeObj->DoTestPropertyL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KDefaultData) == 0)
-		{
-		iVerdict = activeObj->DoTestDefaultDataL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KIdentify) == 0)
-		{
-		iVerdict = activeObj->DoTestIdentifyL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KTrain) == 0)
-		{
-		iVerdict = activeObj->DoTestTrainL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KReTrain) == 0)
-		{
-		iVerdict = activeObj->DoTestReTrainL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KForget) == 0)
-		{
-		iVerdict = activeObj->DoTestForgetL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KTrainServerCancel) == 0
-			|| (iPinProcessType.CompareF(KReTrainServerCancel) == 0)
-			|| (iPinProcessType.CompareF(KIdentifyServerCancel) == 0))
-		{
-		iVerdict = activeObj->DoTestServerCancelL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KSequence) == 0)
-		{
-		iVerdict = activeObj->DoTestSequenceL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	else if (iPinProcessType.CompareF(KOom) == 0)
-		{
-		iVerdict = activeObj->DoTestOomL();
-		INFO_PRINTF1(activeObj->iLogInfo);
-		}
-	CleanupStack::PopAndDestroy(2, sched);
-	SetTestStepResult(iVerdict);
-	return TestStepResult();
-	}
-
-TVerdict CPinPluginTestStep::doTestStepPostambleL()
-	{
-	CActiveScheduler::Install(NULL);
-	return TestStepResult();
-	}
-
-CCreateFile::~CCreateFile()
-	{}
-
-CCreateFile::CCreateFile()
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KCreateInputFile);
-	}
-
-TVerdict CCreateFile::doTestStepPreambleL()
-	{
-	TPtrC pinProcessType;
-	// get step parameters
-	if (!GetStringFromConfig(ConfigSection(), _L("pinprocesstype"), pinProcessType))
-		{
-		ERR_PRINTF1(_L("Index not present"));
-		SetTestStepResult(EFail);
-		}
-	else
-		{
-		if (pinProcessType.CompareF(KTrain) == 0)
-			{
-			iOperation = EPinPluginTraining;
-			}
-		else if (pinProcessType.CompareF(KIdentify) == 0)
-			{
-			iOperation = EPinPluginIdentify;
-			}
-		}
-	TPtrC pinValue;
-	if (GetStringFromConfig(ConfigSection(), _L("pinvalue"), pinValue))
-		{
-		if(pinValue == _L("readoutput"))
-			{
-			iPinValue = GetPinFromOutputFileL();
-			}
-		else
-			{
-			iPinValue.Copy(pinValue);
-			}
-		}
-	
-	if (!GetIntFromConfig(ConfigSection(), _L("selectedindex"), iIndex))
-		{
-		ERR_PRINTF1(_L("Index not present"));
-		SetTestStepResult(EFail);
-		}
-	if (!GetIntFromConfig(ConfigSection(), _L("newpinlength"), iNewPinLength))
-		{
-		ERR_PRINTF1(_L("new pin length missing"));
-		SetTestStepResult(EFail);	
-		}
-	if (!GetIntFromConfig(ConfigSection(), _L("outputatdialog"), iDialogNumber))
-		{
-		ERR_PRINTF1(_L("dialog number missing"));
-		SetTestStepResult(EFail);	
-		}
-	
-	return TestStepResult();
-	}
-
-TVerdict CCreateFile::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-	
-	RFileWriteStream stream;
-	RFs fs;
-	User::LeaveIfError(fs.Connect());
-	TInt err = stream.Replace(fs, KInputFile, EFileWrite | EFileShareExclusive);
-	User::LeaveIfError(err);
-	stream.PushL();
-	
-	MStreamBuf* streamBuf = stream.Sink();
-	streamBuf->SeekL(MStreamBuf::EWrite, EStreamEnd);
-	stream.WriteInt32L(iOperation);
-	stream.WriteInt32L(iPinValue.Length());
-	stream.WriteL(iPinValue);
-	stream.WriteInt32L(iIndex);
-	stream.WriteInt32L(iNewPinLength);
-	TPinPluginDialogResult cmdResult = EOk;
-	stream.WriteInt32L(cmdResult);
-	iOperation = EPinPluginInfo;
-	stream.WriteInt32L(iOperation);
-	TPinPluginDialogResult cmdFinalResult = EOk;
-	stream.WriteInt32L(cmdFinalResult);
-	stream.WriteInt32L(iDialogNumber);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(); // stream
-	
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-TPinValue CCreateFile::GetPinFromOutputFileL()
-	{
-	RFileReadStream stream;
-	RFs fs;
-	User::LeaveIfError(fs.Connect());
-	User::LeaveIfError(stream.Open(fs, KOutputFile, EFileRead | EFileShareExclusive));
-	stream.PushL();
-
-	TPinValue pinvalue;
-	
-	stream.ReadInt32L();
-	TInt pinValueLength = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueLength);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueLength);
-	pinvalue.Copy(pinValuePtr);
-	
-	CleanupStack::PopAndDestroy(2, &stream);	
-
-	return pinvalue;
-	}
-
-TVerdict CCreateFile::doTestStepPostambleL()
-	{
-	CActiveScheduler::Install(NULL);
-	return TestStepResult();
-	}
-
-
-
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugin/tpinpluginteststep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,187 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TPINPLUGINTESTSTEP_H
-#define TPINPLUGINTESTSTEP_H
-
-#include <test/TestExecuteStepBase.h>
-#include <authserver/authtypes.h>
-#include <pinplugindialogdefs.h>
-#include <authserver/authplugininterface.h>
-#include "pinplugin.h"
-
-class CPinPluginTestStep : public CTestStep
-	{
-public:
-	/** Constructor */
-	CPinPluginTestStep();
-
-	/** Destructor */
-	~CPinPluginTestStep();
-	
-	/**	
-	 Override of base class virtual
- 	 @return - TVerdict code
-  	 */
-	virtual TVerdict doTestStepPreambleL();
-
-	/**
- 	 Override of base class virtual
- 	 @return - TVerdict code
- 	 */
-	virtual TVerdict doTestStepPostambleL();
-
-	/**
-	 Override of base class pure virtual
- 	 Demonstrates reading configuration parameters fom an ini file section
- 	 @return - TVerdict code
- 	 */
-	virtual TVerdict doTestStepL();
-
-private:
-	TVerdict iVerdict;
-	TPtrC iPinProcessType;
-	AuthServer::TIdentityId iIdentityId;
-	};
-
-class CPinPluginTestActive : public CActive
-	{
-public:
-	static CPinPluginTestActive* NewL(CTestExecuteLogger& aLogger, AuthServer::TIdentityId& aIdentityId, TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep);
-	/** Destructor */
-	~CPinPluginTestActive();
-
-	TVerdict DoTestPropertyL();
-	TVerdict DoTestDefaultDataL();	
-	TVerdict DoTestIdentifyL();
-	TVerdict DoTestTrainL();
-	TVerdict DoTestForgetL();
-	TVerdict DoTestReTrainL();
-	TVerdict DoTestServerCancelL();
-	TVerdict DoTestSequenceL();
-	TVerdict DoTestOomL();	
-		
-	//Active
-	void DoCancel();
-	void RunL();
-	CTestExecuteLogger& Logger(){return iLogger;}
-	//Log buffer
-	TBuf<150> iLogInfo;
-   	CTestExecuteLogger& iLogger;
-
-private:
-	/** Constructor */
-	CPinPluginTestActive(CTestExecuteLogger& aLogger, AuthServer::TIdentityId& aIdentityId, TPtrC& aPinProcessType, CPinPluginTestStep &aTestStep);
-	void ContructL();
-	
-private:
-	void WriteOutputDetailsL();
-	void ReadOutputDetailsL(TInt& aDialogNumber, TPinValue& aPinValue, TPinPluginInfoMessage& aDisplayedMsg);
-	TBool ReadDetailsFromIni(CPinPluginTestStep& aStep);
-	void DeleteFileL();
-	TBool VerifyResultL(TInt aOutputVal);
-	TBool CheckResultL(TInt aResult);
-	TBool TrainIdentifyL();
-	TBool ForgetIdentifyL();
-	TBool DoTrainL(HBufC8*& aResult);
-	TBool DoIdentifyL(HBufC8*& aResult);
-	TBool DoForgetL();
-	CPinPlugin* LoadPluginL();
-	void UnLoadPlugin();
-	TVerdict ReturnResultL(TBool aRes);
-	void PreferDialogInputL(const TDesC& aExpectedOutput, TPinPluginDialogOperation aOp, 
-		TInt aDialogNo);
-private:
-	
-	static TInt KAuthenticationServerStackSize;
-	static TInt KAuthenticationServerInitHeapSize;
-	static TInt KAuthenticationServerMaxHeapSize;
-		
-  	AuthServer::CAuthPluginInterface* iPinPlugin;
-   	RFs iFs;
-	TPinPluginDialogOperation iOperation;
-	TInt iIndex;
-	TInt iNewPinLength;
-	TPinValue iPinValue;
-	TPinValue iTempPinValue;
-	TPtrC iExpectedOutput;
-	TPinPluginDialogResult iCmdResult,iCmdFinalResult;
-	TPinPluginInfoMessage iInfoMsg;
-	TInt iDialogNumber;
-	AuthServer::TIdentityId iIdentityId;
-	TPtrC iPinProcessType;	
-	TInt iOomTest;
-	HBufC* iClientMessage;
-    CPinPluginTestStep &iTestStep;
-	TUid iDtor_ID_Key;
-	};
-
-class CCreateFile : public CTestStep
-	{
-public:
-	/** Constructor */
-	CCreateFile();
-
-	/** Destructor */
-	~CCreateFile();
-	
-	/**	
-	 Override of base class virtual
- 	 @return - TVerdict code
-  	 */
-	virtual TVerdict doTestStepPreambleL();
-
-	/**
- 	 Override of base class virtual
- 	 @return - TVerdict code
- 	 */
-	virtual TVerdict doTestStepPostambleL();
-
-	/**
-	 Override of base class pure virtual
- 	 Demonstrates reading configuration parameters fom an ini file section
- 	 @return - TVerdict code
- 	 */
-	virtual TVerdict doTestStepL();
-
-private:
-	TPinValue GetPinFromOutputFileL();
-
-private:
-	TPinPluginDialogOperation iOperation;
-	TPinValue iPinValue;
-	TInt iIndex;
-	TInt iNewPinLength;
-	TPinPluginDialogResult iCmdResult;
-	TPinPluginDialogResult iCmdFinalResult;
-	TInt iDialogNumber;
-	
-	};
-
-// Strings for the server create test step code
-_LIT(KPinPluginTestStep,	"tPinPluginTestStep");
-_LIT(KCreateInputFile,	"CreateInputFile");
-
-_LIT(KTrainServerCancel,  	"TrainServerCancel");
-_LIT(KReTrainServerCancel,  "ReTrainServerCancel");
-_LIT(KIdentifyServerCancel, "IdentifyServerCancel");
-
-
-#endif /* TPINPLUGINTESTSTEP_H */
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugindlg/tpinplugindlg.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,404 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Pinplugindlg.cpp
-*
-*/
-
-
-#include "tpinplugindlg.h"
-#include <s32file.h>
-
-const TInt KErrInvalidPinLength			= -1002;
-_LIT(KPinPluginDailogPanicString,"CTestPinPluginDlgNotifier");
-
-// Lib main entry point.
-
-#ifdef _T_PINPLUGINDLG_TEXTSHELL
-EXPORT_C CArrayPtr<MNotifierBase2>* NotifierArray()
-#else
-CArrayPtr<MNotifierBase2>* NotifierArray()
-#endif
-	{
-	CArrayPtrFlat<MNotifierBase2>* subjects = NULL;
-	CTestPinPluginDlgNotifier* notifier;
-	TRAPD(err,
-		subjects = new (ELeave) CArrayPtrFlat<MNotifierBase2>(1);
-		CleanupStack::PushL(subjects);
-		notifier = CTestPinPluginDlgNotifier::NewL();
-		CleanupStack::PushL(notifier);
-		subjects->AppendL(notifier);
-		CleanupStack::Pop(2,subjects));	//notifier, subjects
-	if (err != KErrNone)
-		{
-		subjects = NULL;
-		}
-	return subjects;
-	}
-
-// Ecom plugin implementation for UI notifier
-
-#ifndef _T_PINPLUGINDLG_TEXTSHELL
-
-const TImplementationProxy ImplementationTable[] =
-	{
-	IMPLEMENTATION_PROXY_ENTRY(KTPinPluginDlgNotiferUid, NotifierArray)
-	};
-
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return (ImplementationTable);
-	}
-
-#endif
-
-// TInputDetails
-//
-
-TInputDetails::TInputDetails(TPinPluginDialogOperation aOp, TInt aIndex, TInt aNewPinLength, TPinPluginDialogResult aCommandOutput) :
-	iOp(aOp), iPinValue(0), iIndex(aIndex), iNewPinLength(aNewPinLength), iCommandOutput(aCommandOutput)
-	{
-	}
-
-TInputDetails::TInputDetails(TPinPluginDialogOperation aOp, TPinValue& aPinValue, TPinPluginDialogResult aCommandOutput) :
-	iOp(aOp), iPinValue(aPinValue), iCommandOutput(aCommandOutput)
-	{
-	}
-
-
-// CTestPinPluginDlgNotifier
-//
-
-_LIT(KInputFile, "C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, "C:\\t_pinplugindlg_out.dat");
-
-CTestPinPluginDlgNotifier* CTestPinPluginDlgNotifier::NewL()
-	{
-	CTestPinPluginDlgNotifier* self=new (ELeave) CTestPinPluginDlgNotifier();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CTestPinPluginDlgNotifier::CTestPinPluginDlgNotifier()
-	{
-	iInfo.iUid = KUidPinPluginDialogNotifier;
-	iInfo.iChannel = TUid::Uid(0x00001200); // test uid
-	iInfo.iPriority = ENotifierPriorityHigh;
-	}
-
-void CTestPinPluginDlgNotifier::ConstructL()
-	{
-	User::LeaveIfError(iFs.Connect());
-	}
-
-TInt CTestPinPluginDlgNotifier::ReadDialogCountL()
-	{
-	RFileReadStream stream;
-	TInt err = stream.Open(iFs, KOutputFile, EFileRead | EFileShareExclusive);
-	// If the file doesn't exist yet just return zero
-	if (err == KErrNotFound)
-		{
-		return 0;
-		}
-	User::LeaveIfError(err);
-	stream.PushL();
-	TInt dialogCount = stream.ReadInt32L();
-	CleanupStack::PopAndDestroy(&stream); 
-	return dialogCount;
-	}
-
-TPinValue CTestPinPluginDlgNotifier::ReadPinValueL()
-	{
-	TPinValue pinValue;
-	RFileReadStream stream;
-	TInt err = stream.Open(iFs, KOutputFile, EFileRead | EFileShareExclusive);
-	// If the file doesn't exist yet just return zero
-	if (err == KErrNotFound)
-		{
-		pinValue.Copy(_L("0"));
-		return pinValue;
-		}
-	User::LeaveIfError(err);
-	stream.PushL();
-	stream.ReadInt32L();
-	TInt pinValueSize = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueSize);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueSize);
-	pinValue.Copy(pinValuePtr);
-	CleanupStack::PopAndDestroy(2, &stream);	
-	return pinValue;
-	}
-	
-void CTestPinPluginDlgNotifier::WriteDialogCountL(TInt aCount)
-	{
-	RFileWriteStream stream;
-	TInt err = stream.Replace(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-	if (err == KErrNotFound)
-		{
-		err = stream.Create(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-		}
-	User::LeaveIfError(err);
-	stream.PushL();
-	stream.WriteInt32L(aCount);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(&stream); 
-	}
-
-void CTestPinPluginDlgNotifier::WritePinL(const TPinValue& aPinValue)
-	{
-	TInt dialogCount = ReadDialogCountL();
-
-	RFileWriteStream stream;
-	TInt err = stream.Replace(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-	if (err == KErrNotFound)
-		{
-		err = stream.Create(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-		}
-	User::LeaveIfError(err);
-	stream.PushL();
-	stream.WriteInt32L(dialogCount);
-	stream.WriteInt32L(aPinValue.Length());
-	stream.WriteL(aPinValue);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(&stream); 
-	}
-	
-void CTestPinPluginDlgNotifier::WriteMsgL(const TPinPluginInfoMessage& aMessage)
-	{
-	TInt dialogCount = ReadDialogCountL();
-	TPinValue pinValue = ReadPinValueL();
-	
-	RFileWriteStream stream;
-	TInt err = stream.Replace(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-	if (err == KErrNotFound)
-		{
-		err = stream.Create(iFs, KOutputFile, EFileWrite | EFileShareExclusive);
-		}
-	User::LeaveIfError(err);
-	stream.PushL();
-	stream.WriteInt32L(dialogCount);
-	stream.WriteInt32L(pinValue.Length());
-	stream.WriteL(pinValue);
-	stream.WriteInt32L(aMessage);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(&stream); 
-	}
-	
-TInputDetails* CTestPinPluginDlgNotifier::ReadInputDetailsL(TUint aOperation)
-	{
-	RFileReadStream stream;
-	User::LeaveIfError(stream.Open(iFs, KInputFile, EFileRead | EFileShareExclusive));
-	stream.PushL();
-
-	TPinValue pinvalue;
-	TInt index, newLength,dialogNumber;
-	TInt pinValueSize;
-
-	TPinPluginDialogOperation op = static_cast<TPinPluginDialogOperation>(stream.ReadInt32L());
-	
-	pinValueSize = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueSize);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueSize);
-	pinvalue.Copy(pinValuePtr);
-	
-	index = stream.ReadInt32L();
-	if (index < 0 && index > 3)
-		{
-		index = 0;
-		}
-	newLength = stream.ReadInt32L();
-	
-	TPinPluginDialogResult outputCommand = static_cast<TPinPluginDialogResult>(stream.ReadInt32L());
-	TPinPluginDialogOperation op1 = static_cast<TPinPluginDialogOperation>(stream.ReadInt32L());
-	TPinPluginDialogResult finalOutputCommand = static_cast<TPinPluginDialogResult>(stream.ReadInt32L());
-	dialogNumber = stream.ReadInt32L();
-	if (op != aOperation)
-		{
-		op = op1;
-		}
-	else
-		{
-		// Update dialog count here so test code can see how many dialogs were
-		// requested if there were more than expected
-		TInt dialogCount = ReadDialogCountL() + 1;
-		WriteDialogCountL(dialogCount);
-		if (dialogNumber == dialogCount)
-			{
-			outputCommand = finalOutputCommand;
-			}
-		}
-	
-	TInputDetails* inputDetail = NULL;
-	if (op == EPinPluginTraining)
-		{
-		inputDetail = new (ELeave) TInputDetails(op, index, newLength, outputCommand);
-		}
-	else if (op == EPinPluginIdentify) 
-		{
-		inputDetail = new (ELeave) TInputDetails(op, pinvalue, outputCommand);
-		}
-	CleanupStack::PopAndDestroy(1, pinValueBuf);	
-	CleanupStack::PopAndDestroy(&stream); 
-
-	return inputDetail;
-	}
-
-
-void CTestPinPluginDlgNotifier::DoSelectPinL(const TInputDetails& aDetail, const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage)
-	{
-	const TPinTrainingInput& input = reinterpret_cast<const TPinTrainingInput&>(*aBuffer.Ptr());
-
-	TPinDialogOutput output;
-	output.iIndex = aDetail.Index();
-	TInt pinLength = aDetail.NewPinLength();
-	if (pinLength == 0)
-		{
-		output.iNewPinLength = input.iCurrentPinLength;
-		}
-	else
-		{
-		output.iNewPinLength = pinLength;
-		}
-	output.iResult = aDetail.CommandOutput();
-	
-	TPinValue pinValue;
-	switch(output.iIndex)
-		{
-		case 0:
-			pinValue = input.iPinValue1;
-			break; 
-		case 1:
-			pinValue = input.iPinValue2;
-			break; 
-		case 2:
-			pinValue = input.iPinValue3;
-			break; 
-		case 3:
-			pinValue = input.iPinValue4;
-			break; 
-		}
-	WritePinL(pinValue);
-	TPinDialogOutputBuf outputBuf(output);
-	aMessage.WriteL(aReplySlot, outputBuf);
-	}
-
-void CTestPinPluginDlgNotifier::DoIdentifyPinL(const TInputDetails& aDetail, const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage)
-	{
-	const TPinIdentifyInput& input = reinterpret_cast<const TPinIdentifyInput&>(*aBuffer.Ptr());
-
-	TPinDialogOutput output;
-	const TPinValue& pinInput = reinterpret_cast<const TPinValue&>(aDetail.PinValue());
-	TInt pinLength = pinInput.Length();
-	if (pinLength >= input.iMinLength && pinLength <= input.iMaxLength)
-		{
-		output.iPinValue = pinInput;
-		}
-	else
-		{
-		User::Leave(KErrInvalidPinLength);	
-		}
-	
-	WritePinL(pinInput);
-	output.iResult = aDetail.CommandOutput();
-	TPinDialogOutputBuf outputBuf(output);
-	aMessage.WriteL(aReplySlot, outputBuf);
-	}
-
-void CTestPinPluginDlgNotifier::DoInfoPinL(const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage)
-	{
-	const TPinInfoInput& input = reinterpret_cast<const TPinInfoInput&>(*aBuffer.Ptr());
-	WriteMsgL(input.iMessage);
-	
-	TPinDialogOutput output;
-	TPinDialogOutputBuf outputBuf(output);
-	aMessage.WriteL(aReplySlot, outputBuf);
-	}
-
-void CTestPinPluginDlgNotifier::Release()
-	{
-	delete this;
-	}
-
-CTestPinPluginDlgNotifier::TNotifierInfo CTestPinPluginDlgNotifier::RegisterL()
-	{
-	return iInfo;
-	}
-
-CTestPinPluginDlgNotifier::TNotifierInfo CTestPinPluginDlgNotifier::Info() const
-	{
-	return iInfo;
-	}
-
-void CTestPinPluginDlgNotifier::StartL(const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage)
-	{
-	TRAPD(err, DoStartL(aBuffer, aReplySlot, aMessage));
-	aMessage.Complete(err);
-	}
-	
-void CTestPinPluginDlgNotifier::DoStartL(const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage)
-	{
-	TUint operation = *reinterpret_cast<const TInt *>(aBuffer.Ptr()) & KPinPluginDialogOperationMask;
-	
-	TInputDetails* detail = NULL;
-
-	TRAPD(err, detail = ReadInputDetailsL(operation));
-	
-	User::LeaveIfError(err);
-
-	CleanupStack::PushL(detail);
-	
-	switch (operation)
-		{
-		case EPinPluginTraining:
-			DoSelectPinL(*detail, aBuffer, aReplySlot, aMessage);
-			break;
-
-		case EPinPluginIdentify:
-			DoIdentifyPinL(*detail, aBuffer, aReplySlot, aMessage);
-			break;
-		case EPinPluginInfo:
-			DoInfoPinL(aBuffer, aReplySlot, aMessage);
-			break;
-		default:
-			User::Panic(_L("CTestPinPluginDlgNotifier"), 0);
-		}
-	CleanupStack::PopAndDestroy(detail);
-	}
-
-TPtrC8 CTestPinPluginDlgNotifier::StartL( const TDesC8& /*aBuffer*/ )
-	{
-	User::Panic(_L("CTestPinPluginDlgNotifier"), 0);
-	return TPtrC8(KNullDesC8);
-	}
-
-void CTestPinPluginDlgNotifier::Cancel()
-	{
-	// Don't think there is much we can do here. If a client deletes the
-	// client-side pinplugin dialog instance, after calling a method that 
-	// displays a dialog, this will not get called until the user dismisses
-	// the dialog. We can't do anything then.
-	}
-
-TPtrC8 CTestPinPluginDlgNotifier::UpdateL( const TDesC8& /*aBuffer*/ )
-	{
-	User::Panic(KPinPluginDailogPanicString, 0);
-	return NULL;
-	}
-
-
--- a/authenticationservices/authenticationserver/test/reftestplugin/tpinplugindlg/tpinplugindlg.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPINPLUGINDLG_H__
-#define __TPINPLUGINDLG_H__
-
-#include <e32base.h>
-#include <pinplugindialogdefs.h>
-
-const TUint KTPinPluginDlgNotiferUid = 0x200032E7;
-
-#ifdef _T_PINPLUGINDLG_TEXTSHELL
-
-#include <twintnotifier.h>
-
-/** Method at ordinal 1 to get a list of notifiers from this dll. */
-IMPORT_C CArrayPtr<MNotifierBase2>* NotifierArray();
-
-#else
-
-#include <eiknotapi.h>
-#include <ecom/ImplementationProxy.h>
-#define MNotifierBase2 MEikSrvNotifierBase2
-
-IMPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount);
-CArrayPtr<MNotifierBase2>* NotifierArray();
-
-#endif
-
-/**
- It reads the Input datas from t_pinplugindlg_in.dat and constructs
- TInputDetails to use in CTestPinPluginDlgNotifier.
- */
-class TInputDetails
-	{
- public:
- 	/**
- 	 Constructs the object while the request is Train/ReTrain.
- 	 */
-	TInputDetails(TPinPluginDialogOperation aOp, TInt aIndex, TInt aNewPinLength, TPinPluginDialogResult aCommandOutput);
-	/**
- 	 Constructs the object while the request is Identify.
- 	 */
-	TInputDetails(TPinPluginDialogOperation aOp, TPinValue& aPinValue, TPinPluginDialogResult aCommandOutput);
-	/** Returns the current process Dialog Notification Operation */
-	TPinPluginDialogNotification Operation() const { return iOp; }
-	/** Returns the current process Pin Value Selected/Entered. */
-	const TPinValue& PinValue() const { return iPinValue; }
-	/** Returns the current process selected index. */
-	TInt Index() const { return iIndex; }
-	/** Returns the current process New pin Length given. */
-	TInt NewPinLength() const { return iNewPinLength; }
-	/** Returns the current process Dialog output. */
-	TPinPluginDialogResult CommandOutput() const { return iCommandOutput; }
- private:
-	TPinPluginDialogNotification iOp;
-	TPinValue iPinValue;
-	TInt iIndex;
-	TInt iNewPinLength;
-	TPinPluginDialogResult iCommandOutput;
-	TPinPluginInfoMessage iExpectedMsg;
-	};
-
-/**
- This is a test implementation of the pinplugin dialog notifier. This version
- responds to dialogs with data read from c:\t_pinplugindlg_in.dat. This contains
- the expected input for the dialog. It keeps a number of dialog displayed
- and pin selected for the Train/ReTrain or pin given in Identify Dialog and
- displayed info message in c:\t_pinplugindlg_out.dat.
- */
-class CTestPinPluginDlgNotifier : public CBase, public MNotifierBase2
-	{
-public:
-	static CTestPinPluginDlgNotifier* NewL();
-
-private:
-	void ConstructL();
-	CTestPinPluginDlgNotifier();
-
-	/**
-	 Read the Number of Dialog displayed already from t_pinplugindlg_out.dat.
-	 */
-	TInt ReadDialogCountL();
-	/**
-	 Read the PinValue Selected/Entered in the last dialog request from
-	 t_pinplugindlg_out.dat.
-	 */
-	TPinValue ReadPinValueL();
-	/**
-	 Write the dialog count to the output file t_pinplugindlg_out.dat.
-	 
-	 @param aCount		The Count of the Current Dialog.
-	 */
-	void WriteDialogCountL(TInt aCount);
-	/**
-	 Write the PinValue to the output file t_pinplugindlg_out.dat.
-
- 	 @param aPinValue		The pinvalue to be write.
-	 */
-	void WritePinL(const TPinValue& aPinValue);
-	/**
-	 Write the info message to the output file t_pinplugindlg_out.dat.
-	 
-	 @param aMessage		The message to be write.
-	 */
-	void WriteMsgL(const TPinPluginInfoMessage& aMessage);
-	
-	/**
-	 Read an input specification.
-	 
-	 @param aOperation		Consturct the InputDetails for the aOperation.
-	 */
-	TInputDetails* ReadInputDetailsL(TUint aOperation);
-	
-	/**
-	 Construct the output Details from aDetail and complete the RMessagePtr2
-	 with the details.
-	 
-	 @param aDetail		The input Details read from .dat file for this dialog
-	 @param aBuffer		Data that can be passed from the client-side.
-	 @param aReplySlot	Identifies which message argument to use for the reply.
-	 @param aMessage	Encapsulates a client request.
-	 */
-	void DoSelectPinL(const TInputDetails& aDetail, const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage);
-	void DoIdentifyPinL(const TInputDetails& aDetail, const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage);
-	void DoInfoPinL(const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage);
-public: 		// from MEikSrvNotifierBase2
-	void DoStartL( const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage );
-
-private:     	// from MEikSrvNotifierBase2
-	void Release();
-	TNotifierInfo RegisterL();
-	TNotifierInfo Info() const;
-	
-	virtual void StartL( const TDesC8& aBuffer, TInt aReplySlot, const RMessagePtr2& aMessage );
-	virtual TPtrC8 StartL( const TDesC8& aBuffer );
-	
-	void Cancel();
-	TPtrC8 UpdateL( const TDesC8& aBuffer );
-
-private:
-	RFs iFs;
-	TNotifierInfo iInfo;
-	};
-
-#endif // __TPINPLUGINDLG_H__
--- a/authenticationservices/authenticationserver/test/securitytests/bwins/authsecuritytestsU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?CapabilityTestFactory@@YAPAVMCapabilityTestFactory@@XZ @ 1 NONAME ; class MCapabilityTestFactory * CapabilityTestFactory(void)
-
--- a/authenticationservices/authenticationserver/test/securitytests/eabi/authsecuritytestsU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-EXPORTS
-	_Z21CapabilityTestFactoryv @ 1 NONAME
-	_ZTI21CAuthTrustedUISecTest @ 2 NONAME
-	_ZTI24CAuthReadUserDataSecTest @ 3 NONAME
-	_ZTI25CAuthWriteUserDataSecTest @ 4 NONAME
-	_ZTI26CAuthReadDeviceDataSecTest @ 5 NONAME
-	_ZTI27CAuthWriteDeviceDataSecTest @ 6 NONAME
-	_ZTI33CAuthReadUserAndDeviceDataSecTest @ 7 NONAME
-	_ZTV21CAuthTrustedUISecTest @ 8 NONAME
-	_ZTV24CAuthReadUserDataSecTest @ 9 NONAME
-	_ZTV25CAuthWriteUserDataSecTest @ 10 NONAME
-	_ZTV26CAuthReadDeviceDataSecTest @ 11 NONAME
-	_ZTV27CAuthWriteDeviceDataSecTest @ 12 NONAME
-	_ZTV33CAuthReadUserAndDeviceDataSecTest @ 13 NONAME
-
--- a/authenticationservices/authenticationserver/test/securitytests/group/authsecuritytests.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authsecuritytests.dll Test harness for AuthServer security testing without the TCB capability
-*
-*/
-
-
-/**
- @file
-*/
-
-// Capabilities are set by captestframework
-CAPABILITY All -TCB
-
-TARGET			authsecuritytests.dll
-TARGETTYPE		dll
-UID				0x101F7295 0x1082D53E
-VENDORID		0x70000001
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-SOURCEPATH		../source
-SOURCE			authsecuritytests.cpp
-SOURCE			authreaddevicedata.cpp
-SOURCE			authreaduserdata.cpp
-SOURCE			authwriteuserdata.cpp
-SOURCE			authwritedevicedata.cpp
-SOURCE			authtrustedui.cpp
-SOURCE			authreaduseranddevicedata.cpp
-
-USERINCLUDE		.
-USERINCLUDE		../inc
-USERINCLUDE		../../../../../cryptomgmtlibs/securitytestfw/test/captestframework
-
-
-LIBRARY			euser.lib efsrv.lib
-LIBRARY			captestframeworkutil.lib
-LIBRARY			authclient.lib authcommon.lib
-SMPSAFE
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authreaddevicedata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "captestutility.h"
-
-class CAuthReadDeviceDataSecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthReadDeviceDataSecTest* NewL();
-	
-private:
-	CAuthReadDeviceDataSecTest();
-	
-	void RunTestL();
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authreaduseranddevicedata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authreaduseranddevicedata.cpp
-*
-*/
-
-
-#include "captestutility.h"
-
-class CAuthReadUserAndDeviceDataSecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthReadUserAndDeviceDataSecTest* NewL();
-	
-private:
-	CAuthReadUserAndDeviceDataSecTest();
-	
-	void RunTestL();
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authreaduserdata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authreaduserdata.cpp
-*
-*/
-
-
-#include "captestutility.h"
-
-class CAuthReadUserDataSecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthReadUserDataSecTest* NewL();
-
-private:
-	CAuthReadUserDataSecTest();
-	
-	void RunTestL();
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authtrustedui.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authtrustedui.cpp
-*
-*/
-
-
-#include "captestutility.h"
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <e32def.h>
-
-class CRegActive;
-
-class CAuthTrustedUISecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthTrustedUISecTest* NewL();
-	
-private:
-	CAuthTrustedUISecTest();
-	
-	void RunTestL();
-	
-	void DoTestL();
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authwritedevicedata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authwritedevicedata.cpp
-*
-*/
-
-
-
-#include "captestutility.h"
-
-class CAuthWriteDeviceDataSecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthWriteDeviceDataSecTest* NewL();
-	
-private:
-	CAuthWriteDeviceDataSecTest();
-	
-	void RunTestL();
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/inc/authwriteuserdata.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authwriteuserdata.cpp
-*
-*/
-
-
-#include "captestutility.h"
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-
-class CAuthWriteUserDataSecTest : public CDefaultCapabilityTest
-	{
-public:
-	static CAuthWriteUserDataSecTest* NewL();
-	
-private:
-	CAuthWriteUserDataSecTest();
-	
-	void RunTestL();
-	
-	void DoTestL(AuthServer::RAuthMgrClient& authMgrClient);
-
-	void ConstructL();
-	};
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/scripts/authsecuritytests.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-[authsecuritytests]
-DllName=authsecuritytests.dll
-OmitTCBCapInComplementSet=True
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/securitytests/scripts/authsecuritytests.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// Auth Security tests
-PRINT Run Auth Security tests
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE captestframework
-LOAD_SUITE tAuthSvr_new
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-//! @SYMTestCaseID SEC-AUT-SecurityTests
-//! @SYMTestCaseDesc Runs the whole suite of security test cases for authserver. Both negative and positive tests are included.
-//! @SYMREQ REQ0000
-//! @SYMTestPriority Medium
-//! @SYMTestActions Tests IPC calls from different capabilities
-//! @SYMTestExpectedResults KErrPermissionDenied received on calls which should fail
-//! @SYMDevelopedForRelease Diran
-
-
-START_TESTCASE AuthSecTest
-RUN_TEST_STEP 100 captestframework RunThoroughCapabilityChecks c:\tauth\securitytests\scripts\authsecuritytests.ini authsecuritytests
-END_TESTCASE AuthSecTest
--- a/authenticationservices/authenticationserver/test/securitytests/source/authreaddevicedata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* authreadedvicedata.cpp
-*
-*/
-
-
-
-#include "authreaddevicedata.h"
-
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <e32def.h>
-
-_LIT(KAuthReadDeviceDataSecName, "Auth ReadDeviceData APIs test");
-
-using namespace AuthServer;
-
-CAuthReadDeviceDataSecTest* CAuthReadDeviceDataSecTest::NewL()
-	{
-	CAuthReadDeviceDataSecTest* self=new(ELeave) CAuthReadDeviceDataSecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthReadDeviceDataSecTest::CAuthReadDeviceDataSecTest()
-	{
-	SetCapabilityRequired(ECapabilityReadDeviceData);
-	}
-	
-void CAuthReadDeviceDataSecTest::ConstructL()
-	{
-	SetNameL(KAuthReadDeviceDataSecName);
-	}
-
-void CAuthReadDeviceDataSecTest::RunTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-	
-	TInt err(0);
-	
-	AuthServer::RIdentityIdArray idList;
-	TRAP(err, authMgrClient.IdentitiesL(idList));
-	idList.Close();
-	CheckFailL(err, _L("AuthServer::IdentitiesL()."));
-	
-	CleanupStack::PopAndDestroy(&authMgrClient);
-	}
--- a/authenticationservices/authenticationserver/test/securitytests/source/authreaduseranddevicedata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include "authreaduseranddevicedata.h"
-
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <e32def.h>
-
-_LIT(KAuthReadUserAndDeviceDataSecName, "Auth ReadUserAndDeviceDeviceData APIs test");
-
-using namespace AuthServer;
-
-CAuthReadUserAndDeviceDataSecTest* CAuthReadUserAndDeviceDataSecTest::NewL()
-	{
-	CAuthReadUserAndDeviceDataSecTest* self=new(ELeave) CAuthReadUserAndDeviceDataSecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthReadUserAndDeviceDataSecTest::CAuthReadUserAndDeviceDataSecTest()
-	{
-	SetCapabilityRequired(ECapabilityReadUserData);
-	SetCapabilityRequired(ECapabilityReadDeviceData);	
-	}
-	
-void CAuthReadUserAndDeviceDataSecTest::ConstructL()
-	{
-	SetNameL(KAuthReadUserAndDeviceDataSecName);
-	}
-
-void CAuthReadUserAndDeviceDataSecTest::RunTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-
-	TInt err(0);
-	
-	RIdAndStringArray idWithString;
-	TRAP(err, authMgrClient.IdentitiesWithStringL(idWithString));
-	idWithString.Close();
-	CheckFailL(err, _L("AuthServer::IdentitiesWithStringL()."));
-	
-	CleanupStack::PopAndDestroy(&authMgrClient);
-	}
--- a/authenticationservices/authenticationserver/test/securitytests/source/authreaduserdata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authreaduserdata.h"
-
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <e32def.h>
-
-_LIT(KAuthReadUserDataSecName, "Auth ReadUserData APIs test");
-
-using namespace AuthServer;
-
-CAuthReadUserDataSecTest* CAuthReadUserDataSecTest::NewL()
-	{
-	CAuthReadUserDataSecTest* self=new(ELeave) CAuthReadUserDataSecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthReadUserDataSecTest::CAuthReadUserDataSecTest()
-	{
-	SetCapabilityRequired(ECapabilityReadUserData);
-	}
-	
-void CAuthReadUserDataSecTest::ConstructL()
-	{
-	SetNameL(KAuthReadUserDataSecName);
-	}
-
-void CAuthReadUserDataSecTest::RunTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-
-	TInt err(0);
-	CAuthExpression* authExpr = AuthExpr(EAuthKnowledge);
-	CleanupStack::PushL(authExpr);
-	
-	TUid clientSid = {0};
-	
-	AuthServer::CIdentity* identity = NULL;
-	TRAP(err, identity = authMgrClient.AuthenticateL(*authExpr, 0, EFalse, clientSid, EFalse, KNullDesC()));
-	CheckFailL(err, _L("AuthServer::AuthenticateL : Client Specific Key set to false."));
-	
-	TRAP(err, identity = authMgrClient.AuthenticateL(*authExpr, 0, ETrue, clientSid, ETrue, KNullDesC()));
-	CheckFailL(err, _L("AuthServer::AuthenticateL : Identity String set to true"));
-	
-	clientSid.iUid = 12345678;	
-	TRAP(err, identity = authMgrClient.AuthenticateL(*authExpr, 0, ETrue, clientSid, EFalse, KNullDesC()));
-	CheckFailL(err, _L("AuthServer::AuthenticateL : ClientSid greater than zero."));
-	
-	if(identity != NULL)
-		{
-		delete identity;
-		}
-		
-	TIdentityId id = 5110;
-	HBufC* idString = NULL;
-	TRAP(err, idString = authMgrClient.IdentityStringL(id));
-	CheckFailL(err, _L("AuthServer::IdentityStringL()."));
-	
-	if(idString != NULL)
-		{
-		delete idString;
-		}
-	
-	CleanupStack::PopAndDestroy(2, &authMgrClient);
-	}
-
-	
-	
--- a/authenticationservices/authenticationserver/test/securitytests/source/authsecuritytests.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "captestutility.h"
-#include "authwriteuserdata.h"
-#include "authreaduserdata.h"
-#include "authreaddevicedata.h"
-#include "authwritedevicedata.h"
-#include "authtrustedui.h"
-#include "authreaduseranddevicedata.h"
-
-#include <s32file.h>
-
-// Factory function
-MCapabilityTestFactory* CapabilityTestFactoryL()
-	{
-	CDefaultCapabilityTestFactory* factory=new(ELeave) CDefaultCapabilityTestFactory();
-
-	factory->AddTestL(CAuthReadUserDataSecTest::NewL());
-	factory->AddTestL(CAuthReadDeviceDataSecTest::NewL());
-	factory->AddTestL(CAuthWriteUserDataSecTest::NewL());
-	factory->AddTestL(CAuthWriteDeviceDataSecTest::NewL());
-	factory->AddTestL(CAuthReadUserAndDeviceDataSecTest::NewL());
-	factory->AddTestL(CAuthTrustedUISecTest::NewL());
-	
-	return factory;
-	}
-
-EXPORT_C MCapabilityTestFactory* CapabilityTestFactory()
-	{
-	MCapabilityTestFactory* factory=NULL;
-	TRAP_IGNORE(factory = CapabilityTestFactoryL());
-	return factory;
-	}
-
-
--- a/authenticationservices/authenticationserver/test/securitytests/source/authtrustedui.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authtrustedui.h"
-
-_LIT(KAuthTrustedUISecName, "Auth TrustedUI APIs test");
-
-using namespace AuthServer;
-
-class CRegActive : public CActive
-    {
-	public:
-    CRegActive(RAuthMgrClient& aClient, CIdentity*& aResult) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iErr(KErrNone)
-        {
-        CActiveScheduler::Add(this);
-        }
-        
-    void doReg()
-        {
-        SetActive();		
-		iClient.RegisterIdentityL(iResult, KAuthTrustedUISecName, iStatus);
-		}
-        
-    void DoCancel() 
-        {
-        }
-        
-    void RunL() 
-    	{
-        iErr = iStatus.Int();
-        CActiveScheduler::Stop();
-		}
-        
-    TInt RunError(TInt aError)
-    	{
-    	iErr = aError;
-	   	CActiveScheduler::Stop();
-    	return KErrNone;
-    	}
-        
-    TBool iFirstTime;
-    RAuthMgrClient& iClient;
-    CIdentity*& iResult;
-    TInt iErr;
-    };
-    
-
-CAuthTrustedUISecTest* CAuthTrustedUISecTest::NewL()
-	{
-	CAuthTrustedUISecTest* self=new(ELeave) CAuthTrustedUISecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthTrustedUISecTest::CAuthTrustedUISecTest()
-	{
-	SetCapabilityRequired(ECapabilityTrustedUI);
-	}
-	
-void CAuthTrustedUISecTest::ConstructL()
-	{
-	SetNameL(KAuthTrustedUISecName);
-	}
-
-void CAuthTrustedUISecTest::RunTestL()
-	{
-	TInt err(0);
-	
-	TRAP(err, DoTestL());
-	CheckFailL(err, _L("AuthServer::RegisterIdentityL()."));
-	}
-	
-void CAuthTrustedUISecTest::DoTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-	
-	CActiveScheduler* sched = NULL;
-	sched = new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-
-	CIdentity* identity = 0;
-	CRegActive active(authMgrClient, identity);
-    active.doReg();
-	CActiveScheduler::Start();	
-	
-	CleanupStack::PopAndDestroy(2, &authMgrClient);
-	User::LeaveIfError(active.iErr);
-	}
-
--- a/authenticationservices/authenticationserver/test/securitytests/source/authwritedevicedata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authwritedevicedata.h"
-#include <authserver/authclient.h>
-#include <authserver/authmgrclient.h>
-#include <scs/cleanuputils.h>
-#include <e32def.h>
-
-_LIT(KAuthWriteDeviceDataSecName, "Auth WriteDeviceData APIs test");
-
-using namespace AuthServer;
-
-CAuthWriteDeviceDataSecTest* CAuthWriteDeviceDataSecTest::NewL()
-	{
-	CAuthWriteDeviceDataSecTest* self=new(ELeave) CAuthWriteDeviceDataSecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthWriteDeviceDataSecTest::CAuthWriteDeviceDataSecTest()
-	{
-	SetCapabilityRequired(ECapabilityWriteDeviceData);
-	}
-	
-void CAuthWriteDeviceDataSecTest::ConstructL()
-	{
-	SetNameL(KAuthWriteDeviceDataSecName);
-	}
-
-void CAuthWriteDeviceDataSecTest::RunTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-
-	TInt err(0);
-	TPluginId pluginId = 536883941;
-			
-	TRAP(err, authMgrClient.SetPreferredTypePluginL(EAuthKnowledge, pluginId));
-	CheckFailL(err, _L("AuthServer::SetPreferredTypePluginL()."));
-
-	TIdentityId identity = 420; // Any thing but 0 since client does sanity check
-	
-	TRAP(err, authMgrClient.RemoveIdentityL(identity));
-	CheckFailL(err, _L("AuthServer::RemoveIdentityL()."));
-		
-	TRAP(err, authMgrClient.ResetIdentityL(identity, _L("")));
-	CheckFailL(err, _L("AuthServer::ResetIdentityL() 1st overload."));
-
-	TRAP(err, authMgrClient.ResetIdentityL(identity, EAuthKnowledge, _L("")));
-	CheckFailL(err, _L("AuthServer::ResetIdentityL() 2nd overload."));
-
-	RArray<TPluginId> pluginList;
-	CleanupClosePushL(pluginList);
-	RPointerArray<const HBufC> regDataList;
-	CleanupResetAndDestroyPushL(regDataList);
-	pluginList.AppendL(pluginId);
-	regDataList.AppendL(KNullDesC().AllocL());
-	TRAP(err, authMgrClient.ResetIdentityL(identity, pluginList, regDataList));
-	CheckFailL(err, _L("AuthServer::ResetIdentityL() 3rd overload."));
-	CleanupStack::PopAndDestroy(2, &pluginList);
-
-	CleanupStack::PopAndDestroy(&authMgrClient);
-	}
-	
--- a/authenticationservices/authenticationserver/test/securitytests/source/authwriteuserdata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authwriteuserdata.h"
-#include <e32def.h>
-
-_LIT(KAuthWriteUserDataSecName, "Auth WriteUserData APIs test");
-
-using namespace AuthServer;
-
-CAuthWriteUserDataSecTest* CAuthWriteUserDataSecTest::NewL()
-	{
-	CAuthWriteUserDataSecTest* self=new(ELeave) CAuthWriteUserDataSecTest();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CAuthWriteUserDataSecTest::CAuthWriteUserDataSecTest()
-	{
-	SetCapabilityRequired(ECapabilityWriteUserData);
-	}
-	
-void CAuthWriteUserDataSecTest::ConstructL()
-	{
-	SetNameL(KAuthWriteUserDataSecName);
-	}
-
-void CAuthWriteUserDataSecTest::RunTestL()
-	{
-	AuthServer::RAuthMgrClient authMgrClient;	
-	User::LeaveIfError(authMgrClient.Connect());
-	CleanupClosePushL(authMgrClient);
-	
-	TInt err(0);
-	TIdentityId id = 34567890;
-		
-	TRAP(err, authMgrClient.SetIdentityStringL(id, KAuthWriteUserDataSecName));
-	CheckFailL(err, _L("AuthServer::SetIdentityStringL()."));
-	
-	TRAP(err, DoTestL(authMgrClient));
-	CheckFailL(err, _L("AuthServer::TrainPlugin()."));
-	
-	TPluginId pluginId = 11113100;
-	TRAP(err, authMgrClient.ForgetPluginL(id, pluginId));
-	CheckFailL(err, _L("AuthServer::ForgetPluginL()."));
-		
-	CleanupStack::PopAndDestroy(&authMgrClient);
-	}
-	
-void CAuthWriteUserDataSecTest::DoTestL(AuthServer::RAuthMgrClient& aAuthMgrClient)
-	{
-	TRequestStatus status;
-	TIdentityId id = 34567890;
-	TPluginId pluginId = 11113100;
-	
-	aAuthMgrClient.TrainPlugin(id, pluginId, status);
-	User::WaitForRequest(status);
-	
-	User::LeaveIfError(status.Int());
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/bwins/tAuthSvrServerU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?NewServer@@YAHXZ @ 1 NONAME ; int __cdecl NewServer(void)
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/bwins/tMiscAuthPluginU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?ImplementationGroupProxy@@YAPBUTImplementationProxy@@AAH@Z @ 1 NONAME ; struct TImplementationProxy const * ImplementationGroupProxy(int &)
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tAuthPlugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
-* Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET tauthplugin.dll
-TARGETTYPE PLUGIN
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID 0x10009D8D 0x10204F10
-VENDORID 0x70000001
-CAPABILITY All -TCB
-
-SOURCEPATH	../src
-SOURCE		main.cpp
-SOURCE		proxy.cpp
-SOURCE		tPinAuthPlugin.cpp		//One of the implementations available
-
-
-start resource 10204F10.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET tauthplugin.rsc
-#endif
-end
-
-USERINCLUDE   	../src
-USERINCLUDE		../../../inc
-USERINCLUDE		../../../inc/authserver
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-USERINCLUDE		../../../inc_private
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
-
-//Use of Test Execute logging functions
-//OS_LAYER_SYSTEMINCLUDE(test)
-//LIBRARY			testexecuteutils.lib
-//LIBRARY			testexecutelogclient.lib
-
-LIBRARY cinidata.lib	// add text INI file parsing ability
-LIBRARY ecom.lib	//ECOM plug-in DLLs must link against ECOM.lib
-
-LIBRARY	euser.lib 	//For LowerCase()
-LIBRARY	efsrv.lib
-
-LIBRARY	authcommon.lib
-
-//LIBRARY c32.lib bafl.lib	
-
-//#ifdef	__SWI_LOGGING__
-//LIBRARY			flogger.lib
-//#endif	/* __SWI_LOGGING__ */
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tAuthSvr.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,75 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tauthsvr.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F0D
-VENDORID		0x70000001
-
-CAPABILITY		AllFiles ReadUserData WriteUserData ReadDeviceData WriteDeviceData TrustedUI
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-USERINCLUDE		../../../inc_private
-USERINCLUDE		../../../../../cryptomgmtlibs/securitytestfw/test/testutil/client
-USERINCLUDE             ../../../inc/authserver
-
-SOURCEPATH  	../../tauthdb
-USERINCLUDE  	../../tauthdb
-SOURCE			step_createtestdb.cpp
-
-SOURCEPATH  		../src
-USERINCLUDE   	../src
-USERINCLUDE		../../../inc_private
-SOURCE			tAuthSvrServer.cpp
-SOURCE			step_FirstStart.cpp
-SOURCE			step_base.cpp
-SOURCE			step_AuthSvrCheck.cpp
-SOURCE			step_RegIdentity.cpp
-SOURCE			step_IdentifyMultiple.cpp
-SOURCE			step_retrainplugin.cpp
-SOURCE			step_removedbs.cpp
-SOURCE			step_removeauthmethod.cpp
-SOURCE			step_removeidentity.cpp
-SOURCE			step_authenticate.cpp
-SOURCE			step_setauthprefs.cpp
-SOURCE			step_resultavailability.cpp  ../../../source/server/authdb.cpp ../../../source/server/transientkeyinfo.cpp ../../../source/server/transientkey.cpp ../../../source/server/encryptedprotectionkey.cpp step_resetidentity.cpp
-SOURCE			step_postmarketplugin.cpp
-SOURCE			step_clientsidsupport.cpp
-SOURCE			step_oom.cpp
-SOURCE			step_multithreaded.cpp
-
-
-LIBRARY			testexecutelogclient.lib testexecuteutils.lib
-LIBRARY			ecom.lib c32.lib bafl.lib
-LIBRARY			edbms.lib estor.lib efsrv.lib euser.lib
-LIBRARY         authclient.lib authcommon.lib scsclient.lib
-LIBRARY         random.lib pbe.lib cryptography.lib
-LIBRARY			sectcbutil.lib
-LIBRARY 		cinidata.lib	// add text INI file parsing ability
-LIBRARY			centralrepository.lib
-LIBRARY			testutilclient.lib
-#ifdef	__SWI_LOGGING__
-LIBRARY			flogger.lib
-#endif	/* __SWI_LOGGING__ */
-
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tMiscAuthPlugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tmiscauthplugin.dll
-TARGETTYPE		PLUGIN
-UID			0x10009d8d 0x10204F0F
-VENDORID		0x70000001
-CAPABILITY              ALL -TCB
-SOURCEPATH		../miscPlugins\
-
-SOURCE			tpluginbase.cpp
-SOURCE			proxy.cpp
-
-START RESOURCE        10204f0f.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET tmiscauthplugin.rsc
-#endif
-END
-USERINCLUDE		. 
-USERINCLUDE		../../../inc
-USERINCLUDE		../../../inc/authserver
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-LIBRARY		euser.lib
-LIBRARY     ecom.lib
-SMPSAFE
-  
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tauthpluginupgrade.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET tauthpluginupgrade.dll
-TARGETTYPE PLUGIN
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID 0x10009D8D 0x10204F10
-VENDORID 0x70000001
-CAPABILITY All -TCB
-
-SOURCEPATH	../src
-SOURCE		main.cpp
-SOURCE		proxy.cpp
-SOURCE		tpinauthpluginupgrade.cpp	//a dummy dll upgrade implementation.
-
-
-start resource 10204F10_upgrade.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET tauthpluginupgrade.rsc
-#endif
-end
-
-USERINCLUDE   	../src
-USERINCLUDE		../../../inc
-USERINCLUDE		../../../inc/authserver
-USERINCLUDE		../../../inc_private
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
-
-LIBRARY cinidata.lib	// add text INI file parsing ability
-LIBRARY ecom.lib	//ECOM plug-in DLLs must link against ECOM.lib
-
-LIBRARY	euser.lib 	//For LowerCase()
-LIBRARY	efsrv.lib
-LIBRARY authcommon.lib
-
-SMPSAFE
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tauthsvrnc.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tauthsvrnc.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F12
-VENDORID		0x70000001
-
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-USERINCLUDE		../../../inc_private
-USERINCLUDE		../../../../../cryptomgmtlibs/securitytestfw/test/testutil/client
-USERINCLUDE             ../../../inc/authserver
-
-SOURCEPATH  	../../tauthdb
-USERINCLUDE  	../../tauthdb
-SOURCE			step_createtestdb.cpp
-
-SOURCEPATH  		../src
-USERINCLUDE   	../src
-USERINCLUDE   	../../../inc_private
-SOURCE			tauthsvrservernc.cpp
-SOURCE			step_FirstStart.cpp
-SOURCE			step_base.cpp
-SOURCE			step_AuthSvrCheck.cpp
-SOURCE			step_RegIdentity.cpp
-SOURCE			step_IdentifyMultiple.cpp
-SOURCE			step_retrainplugin.cpp
-SOURCE			step_removedbs.cpp
-SOURCE			step_removeauthmethod.cpp
-SOURCE			step_removeidentity.cpp
-SOURCE			step_authenticate.cpp
-SOURCE			step_setauthprefs.cpp
-
-
-SOURCE          ../../../source/server/authdb.cpp
-SOURCE          ../../../source/server/transientkeyinfo.cpp
-SOURCE          ../../../source/server/transientkey.cpp
-SOURCE          ../../../source/server/encryptedprotectionkey.cpp
-
-LIBRARY			testexecutelogclient.lib testexecuteutils.lib
-LIBRARY			ecom.lib c32.lib bafl.lib
-LIBRARY			edbms.lib estor.lib efsrv.lib euser.lib
-LIBRARY         authclient.lib authcommon.lib scsclient.lib
-LIBRARY         random.lib pbe.lib cryptography.lib
-LIBRARY			sectcbutil.lib
-LIBRARY 		cinidata.lib	// add text INI file parsing ability
-LIBRARY			testutilclient.lib
-LIBRARY			centralrepository.lib
-#ifdef	__SWI_LOGGING__
-LIBRARY			flogger.lib
-#endif	/* __SWI_LOGGING__ */
-
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tauthsvrwdd.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tauthsvrwdd.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F11
-VENDORID		0x70000001
-CAPABILITY		AllFiles ReadUserData WriteUserData ReadDeviceData WriteDeviceData
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-USERINCLUDE		../../../../../cryptomgmtlibs/securitytestfw/test/testutil/client
-USERINCLUDE             ../../../inc/authserver
-
-USERINCLUDE		../../../inc_private
-SOURCEPATH  	../../tauthdb
-USERINCLUDE  	../../tauthdb
-SOURCE			step_createtestdb.cpp
-
-SOURCEPATH  		../src
-USERINCLUDE   	../src
-USERINCLUDE   	../../../inc_private
-
-SOURCE			tauthsvrserverwdd.cpp
-SOURCE			step_FirstStart.cpp
-SOURCE			step_base.cpp
-SOURCE			step_AuthSvrCheck.cpp
-SOURCE			step_RegIdentity.cpp
-SOURCE			step_IdentifyMultiple.cpp
-SOURCE			step_retrainplugin.cpp
-SOURCE			step_removedbs.cpp
-SOURCE			step_removeauthmethod.cpp
-SOURCE			step_removeidentity.cpp
-SOURCE			step_authenticate.cpp
-SOURCE			step_setauthprefs.cpp
-
-SOURCE          ../../../source/server/authdb.cpp
-SOURCE          ../../../source/server/transientkeyinfo.cpp
-SOURCE          ../../../source/server/transientkey.cpp
-SOURCE          ../../../source/server/encryptedprotectionkey.cpp
-
-LIBRARY			testexecutelogclient.lib testexecuteutils.lib
-LIBRARY			ecom.lib c32.lib bafl.lib
-LIBRARY			edbms.lib estor.lib efsrv.lib euser.lib
-LIBRARY         authclient.lib authcommon.lib scsclient.lib
-LIBRARY         random.lib pbe.lib cryptography.lib
-LIBRARY			sectcbutil.lib
-LIBRARY 		cinidata.lib	// add text INI file parsing ability
-LIBRARY			testutilclient.lib
-LIBRARY			centralrepository.lib
-#ifdef	__SWI_LOGGING__
-LIBRARY			flogger.lib
-#endif	/* __SWI_LOGGING__ */
-
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tAuthSvr/group/tpostmarketramplugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET tpostmarketramplugin.dll
-TARGETTYPE PLUGIN
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID 0x10009D8D 0x1023F3F4
-VENDORID 0x70000001
-CAPABILITY All -TCB
-
-VERSION 10.1
-
-SOURCEPATH	../tpostmarketplugins
-SOURCE		main.cpp
-SOURCE		proxy.cpp
-SOURCE		tpostmarketramplugin.cpp		//dummy implementation of a RAM plugin.
-
-start resource testdata/1023F3F4.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET tpostmarketramplugin.rsc
-#endif
-end
-
-USERINCLUDE   	../tpostmarketplugins
-USERINCLUDE		../../../inc
-USERINCLUDE		../../../inc/authserver
-USERINCLUDE		../../../inc_private
-
-USERINCLUDE		../../../source/server
-USERINCLUDE		../../../source/common
-USERINCLUDE		../../../source/client
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
-
-LIBRARY cinidata.lib	// add text INI file parsing ability
-LIBRARY ecom.lib	//ECOM plug-in DLLs must link against ECOM.lib
-
-LIBRARY	euser.lib 	//For LowerCase()
-LIBRARY	efsrv.lib
-LIBRARY authcommon.lib
-
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/10204F0F.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,168 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Registry file for the miscellaneous authServer Interface Implementation Collection
-* UIDs quick-ref
-* ECOM DLL UID:			0x10204F0F 
-* ECOM interface UID:		0x102740FE
-* ECOM Implementation:		0x11113000
-*
-*/
-
-
-/**
- @file 10204F0F.rss
-*/
-
-
-#include "RegistryInfoV2.rh"
-
-// Declares info for one implementation
-RESOURCE REGISTRY_INFO theInfo
-	{
-	// UID for the plug-in DLL; matches name of this file
-	dll_uid = 0x10204F0F;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-
-	// Declare array of interface info
-	interfaces = 
-		{
-		INTERFACE_INFO
-		 	{
-		 	// UID of interface that is implemented (i.e. CAuthPluginInterface)							
-		 	interface_uid = 0x102740FE;			
-			implementations = 
-				{
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11112FFF;
-					version_no = 1;
-					display_name = "11112FFF Implementation of AuthServer plugin -Unknown";
-					default_data = "11112FFF";
-					opaque_data = "";
-					rom_only=1;
-					},				
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113000;
-					version_no = 1;
-					display_name = "11113000 Implementation of AuthServer plugin";
-					default_data = "11113000";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for CTPlugin11113001
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113001;
-					version_no = 1;
-					display_name = "11113001 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113001";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113002;
-					version_no = 1;
-					display_name = "11113002 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113002";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},				
-					IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113003;
-					version_no = 1;
-					display_name = "11113003 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113003";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113004;
-					version_no = 1;
-					display_name = "11113004 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113004";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113005;
-					version_no = 1;
-					display_name = "11113005 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113005";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113006;
-					version_no = 1;
-					display_name = "11113006 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113006";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113007;
-					version_no = 1;
-					display_name = "11113007 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113007";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113008;
-					version_no = 1;
-					display_name = "11113008 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113008";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					},										
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113009;
-					version_no = 1;
-					display_name = "11113009 Implementation of AuthServer plugin";
-					//default_data is used for cue lookup by the default ECOM resolver
-					default_data = "11113009";
-					//default_data = "text/wml||This is the type of data that this implementation understands. (Can be anything which will allow the resolver to identify this implementation as the correct one at run time. In this case it is a mime type).";
-					opaque_data = "";
-					rom_only=1;
-					}
-				};	
-			}
-		};			
-	}		
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/authplugininterface.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-
-using namespace AuthServer;
-
-//EXPORT_C CAuthPluginInterface::CAuthPluginInterface()
-//	{}
-
-EXPORT_C CAuthPluginInterface::~CAuthPluginInterface()
-	{
-	// Destroy any instance variables and then
-	// inform the framework that this specific
-	// instance of the interface has been destroyed.
-	REComSession::DestroyedImplementation(iDtor_ID_Key);
-	}
-/*
-EXPORT_C CAuthPluginInterface* CAuthPluginInterface::NewL()
-	{// Hardcoded to be the PIN plugin by default
-	
-	const TUid KPINPluginUid = { 0x102740FD };
-	TAny* defaultPlugin = REComSession::CreateImplementationL(KPINPluginUid, _FOFF(CAuthPluginInterface, iDtor_ID_Key));
-	return (reinterpret_cast<CAuthPluginInterface*>(defaultPlugin));
-	}
-*/
-
-EXPORT_C CAuthPluginInterface* CAuthPluginInterface::NewL(TPluginId aPluginId)
-	{// Use the default ECOM resolver
-/*	
-	//TDesC8& aCue = aPluginId;
-	//aCue = aPluginId;
-	TBuf8<32> cueValue;
-	//TDes8 cueValue;
-	_LIT8(KFormatValue2, "%x");
-	cueValue.Format(KFormatValue2, aPluginId);		
-
-	TEComResolverParams resolverParams;
-	resolverParams.SetDataType(cueValue);	//(aCue);
-	
-	resolverParams.SetWildcardMatch(ETrue);	//There might be problems with this
-	
-	//TAny* pluginInterface =	REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-	//_FOFF(CAuthPluginInterface,iDtor_ID_Key),NULL,resolverParams);
-	TAny* pluginInterface =	REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-	_FOFF(CAuthPluginInterface,iDtor_ID_Key),resolverParams);
-
-
-	return (reinterpret_cast<CAuthPluginInterface*>(pluginInterface));
-*/
-  TEComResolverParams resolverParams;
-  TBufC8<16> pluginIdTxt;
-  
-  pluginIdTxt.Des().Format(_L8("%x"), aPluginId);
-  
-  resolverParams.SetDataType(pluginIdTxt);
-  
-  TAny* plugin = 0; 
-
-  plugin = 
-	REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-										_FOFF(CAuthPluginInterface,
-											  iDtor_ID_Key),
-										resolverParams,
-										KRomOnlyResolverUid);	
-	return reinterpret_cast<CAuthPluginInterface*>(plugin);										
-	}
-
-
-EXPORT_C void CAuthPluginInterface::ListImplementationsL(RImplInfoPtrArray& aImplInfoArray)
-	{
-	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid, aImplInfoArray);
-	}
-
-const TPtrC& CAuthPluginInterface::GetName() const
-	{
-	return iName;
-	}
-	
-const TPtrC& CAuthPluginInterface::GetDescription() const
-	{
-	return iDescription;
-	}
-	
-TAuthPluginType CAuthPluginInterface::GetType() const
-	{
-	return iType;
-	}
-
-/** DLL Entry point */
-//GLDEF_C TInt E32Dll(TDllReason /*aReason*/)
-//	{
-//	return(KErrNone);
-//	}
-
-/*
-//Defined in main.cpp
-TBool E32Dll()
-	{
-	return (ETrue);
-	}
-*/
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/main.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32base.h>
-
-/** DLL Entry point */
-
-//GLDEF_C TInt E32Dll(TDllReason /*aReason*/)
-//	{
-//	return(KErrNone);
-//	}
-
-TBool E32Dll()
-	{
-	return (ETrue);
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/proxy.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32std.h>
-#include <ecom/ImplementationProxy.h>	// ECOM header file
-//#include <ImplementationInformation.h>
-
-#include "tPluginBase.h"			// Class definition for with the available implementations
-
-
-// Map the interface UIDs to implementation factory functions
-const TImplementationProxy ImplementationTable[] = 
-	{
-		IMPLEMENTATION_PROXY_ENTRY(0x11112FFF,	CTPlugin11112FFF::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113000,	CTPlugin11113000::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113001,	CTPlugin11113001::NewL),		
-		IMPLEMENTATION_PROXY_ENTRY(0x11113002,	CTPlugin11113002::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113003,	CTPlugin11113003::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113004,	CTPlugin11113004::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113005,	CTPlugin11113005::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113006,	CTPlugin11113006::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113007,	CTPlugin11113007::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113008,	CTPlugin11113008::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113009,	CTPlugin11113009::NewL)
-	};
-
-// Exported proxy function to resolve intstantiation methods for an ECOM plugin dll
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return ImplementationTable;
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/tPluginBase.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,357 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tMiscAuthPlugin.cpp
-* Improvements: 
-*
-*/
-
- 
-
-#include <f32file.h>
-
-
-#ifndef __INIPARSER_H__
-	#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-#include "tPluginBase.h"
-#include <e32svr.h>
-#include <authserver/auth_srv_errs.h>
-
-TBool E32Dll()
-{
-
-	return ETrue;
-}
-
-
-// Construction and destruction functions
-//CTPluginUnknown* CTPluginUnknown::NewL(const TPluginId aPluginId)
-CTPluginUnknown* CTPluginUnknown::NewL()
- 	{
- 	CTPluginUnknown* self = new (ELeave) CTPluginUnknown();
- 	CleanupStack::PushL(self);
- 	self->ConstructL();
- 	CleanupStack::Pop();
- 	return self;
-	}
-
-CTPluginUnknown::~CTPluginUnknown()
-	{}
-
-//CTPluginUnknown::CTPluginUnknown(const TPluginId aPluginId)
-CTPluginUnknown::CTPluginUnknown()
-	{ // See ConstructL() for initialisation completion.
-	}
-		
-void CTPluginUnknown::ConstructL()
-// Safely complete the initialization of the constructed object	
-	{
-	
-	//TUid iDtor_ID_Key;
-	
-	// Initialise member data
-	/*
-	iName = "Pin1";
-	iDescription = "PIN Plugin";
-	iMinEntropy = 0.8;
-	iFalsePositiveRate = 1;
-	iFalseNegativeRate = 1;
-	iType = EAuthKnowledge;
-	
-	// TPtrC iName;
-	// TPtrC iDescription;
-	// TEntropy iMinEntropy;
-	// TPercentage iFalsePositiveRate;
-	// TPercentage iFalseNegativeRate;
-	// TPluginType iType;
-	*/
-	
-	iSupportsDefaultData = true;
-	iNumTimesTrained = 0;
-	}
-
-	
-//Implement CAuthPluginInterface definitions	
-void CTPluginUnknown::Identify(TIdentityId& aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	// We are simulating user input by reading from a file
-	// (The data contained in this file has been freshly written by the 'client part in TestExecute')
-	
-	aRequest = KRequestPending;
-	//aId = USER;
-	aId = KUnknownIdentity;	//Unknown Id
-	aResult = HBufC8::New(16);
-	
-	TRequestStatus* status  = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-	
-	aResult->Des().Format(_L8("%x"), aId);
-	
-		
-	
-	//aRequest = AuthServer::KIdCancel;	//KIdCancel not defined yet
-	//aResult will not be updated, as specified
-	
-	
-	//aRequest = AuthServer::KIdQuit;	//KIdQuit not defined yet
-	//aResult will not be updated, as specified
-	
-	
-	//aRequest = AuthServer::KIdUnknown;		
-	
-	//return aRequest.Int();
-	
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CTPluginUnknown::Cancel()
-	{	
-	}	
-	
-void CTPluginUnknown::Train(TIdentityId /*aId*/, HBufC8*& /*aResult*/, TRequestStatus& aRequest)							
-	{
-	
-	aRequest = KRequestPending;
-	iNumTimesTrained++;
-	//Possibly update aResult here, later for now we'll pretend that the plugin was cancelled
-		
-	TRequestStatus* status  = &aRequest;
-	User::RequestComplete(status, KErrAuthServPluginCancelled);
-	}
-	
-		
-TBool CTPluginUnknown::IsActive() const
-	{
-	// There is never any user intervention required
-	return true;
-	
-	// As a future development note, this value may be read from a file (or a section in a file)
-	}
-	
-TInt CTPluginUnknown::Forget(TIdentityId /*aId*/)
-	{
-	
-	//Dummy implementation	
-	return KErrNone;	
-	}
-	
-TInt CTPluginUnknown::DefaultData(TIdentityId /*aId*/, HBufC8*& aOutputBuf)
-	{
-	
-	// This implementation of the PIN plugin does support default data.
-	// There will be cases where i don't want this available. Hence the addition of a 
-	// new class member iSupportsDefaultData
-	
-	TInt result = KErrNone;
-	
-	if (iSupportsDefaultData)	//Class member initialised in the constructor
-		{
-		//_LIT(KDefaultData, "0000");	// in tPluginBase.h
-		aOutputBuf = HBufC8::New(KDefaultData().Size());
-		if(aOutputBuf == NULL)
-			{
-			return KErrNoMemory;
-			}
-		*aOutputBuf = KDefaultData;		
-		}
-	else
-		result = KErrNotSupported;
-	
-	return result;	
-	}
-
-TPluginId CTPluginUnknown::Id() const
-	{
-	return 0x11112FFF;
-	}
-
-
-
-//=========================================================================
-
-//=========================================================================
-
-// Construction and destruction functions
-/*CTPluginBase* CTPluginBase::NewL()
- 	{
-	CTPluginBase* self = new (ELeave) TMyType();
- 	CleanupStack::PushL(self);
- 	self->ConstructL();
- 	CleanupStack::Pop();
- 	return self;
-	}
-*/
-
-CTPluginBase::~CTPluginBase()
-	{}
-
-CTPluginBase::CTPluginBase()
-	{
-	// See ConstructL() for initialisation completion.
-	}
-
-void CTPluginBase::ConstructL()
-// Safely complete the initialization of the constructed object	
-	{
-	
-	//TUid iDtor_ID_Key;
-	
-	
-	/*
-	iName = "Pin1";
-	iDescription = "PIN Plugin";
-	iMinEntropy = 0.8;
-	iFalsePositiveRate = 1;
-	iFalseNegativeRate = 1;
-	iType = EAuthKnowledge;
-	
-	// TPtrC iName;
-	// TPtrC iDescription;
-	// TEntropy iMinEntropy;
-	// TPercentage iFalsePositiveRate;
-	// TPercentage iFalseNegativeRate;
-	// TPluginType iType;
-	*/
-	
-	iType = GetType();
-	
-	iSupportsDefaultData = true;
-	iNumTimesTrained = 0;
-	}
-
-	
-//Implement CAuthPluginInterface definitions
-
-void CTPluginBase::Identify(TIdentityId& aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	// We are simulating user input by reading from a file
-	// (The data contained in this file has been freshly written by the 'client part in TestExecute')
-	
-//	aRequest = KRequestPending;
-//	aId = USER;
-	//delete aResult;
-//	aResult = HBufC8::NewL(16);
-	
-	//aResult->Des().Format(_L8("%x"), aResult);
-//	aResult->Des().Format(_L8("%d"), aId);
-	
-	
-	//aRequest = AuthServer::KIdCancel;	//KIdCancel not defined yet
-	//aResult will not be updated, as specified
-	
-	
-	//aRequest = AuthServer::KIdQuit;	//KIdQuit not defined yet
-	//aResult will not be updated, as specified
-	
-	
-	//aRequest = AuthServer::KIdUnknown;		
-	
-//	aRequest = KIdSuccess;
-	//return aRequest.Int();
-
-	aRequest = KRequestPending;
-	aId = GetId();
-	aResult = HBufC8::New(16);
-	
-	TRequestStatus* status = &aRequest;
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-	
-	aResult->Des().Format(_L8("%x"), aId);
-	User::RequestComplete(status, KErrNone);
-	}
-
-
-void CTPluginBase::Cancel()
-	{	
-	}
-
-void CTPluginBase::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)							
-	{
-	
-	aRequest = KRequestPending;
-	iNumTimesTrained++;
-	aResult = HBufC8::New(16);
-	TRequestStatus* status  = &aRequest;
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-	TInt number = iNumTimesTrained*GetId();
-	aResult->Des().Format(_L8("%x"), aId);
-	
-	User::RequestComplete(status, KErrNone);
-	}
-
-
-TBool CTPluginBase::IsActive() const
-	{
-	// There is never any user intervention required
-	return true;
-	
-	// As a future development note, this value may be read from a file (or a section in a file)
-	}
-
-TInt CTPluginBase::Forget(TIdentityId /*aId*/)
-	{
-	
-	//Dummy implementation	
-	return KErrNone;
-	
-	//Improvement
-	// If (NumTimesTrained == 0) 
-	//	return AuthServer::KIdUnknown;	// This is what is returned for the CTUnknownPlugin class
-			
-	}
-
-TInt CTPluginBase::DefaultData(TIdentityId /*aId*/, HBufC8*& aOutputBuf)
-	{
-	
-	// This implementation of the PIN plugin does support default data.
-	// There will be cases where i don't want this available. Hence the addition of a 
-	// new class member iSupportsDefaultData
-	
-	TInt result = KErrNone;
-	
-	if (iSupportsDefaultData)	//Class member initialised in the constructor
-		{
-		//_LIT(KDefaultData, "0000");	// in tPinAuthPlugin.h
-		aOutputBuf = HBufC8::New(KDefaultData().Size());
-		if(aOutputBuf == NULL)
-			{
-			return KErrNoMemory;
-			}
-		*aOutputBuf = KDefaultData;
-		}
-	else
-		result = KErrNotSupported;
-	
-	return result;	
-	}
-
-TPluginId CTPluginBase::Id() const
-	{
-	return GetId();
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/miscPlugins/tPluginBase.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tMiscAuthPlugin.h
-* CTPluginUnknown and CTPluginBase are interface implementations for
-* CAuthPluginInterface
-*
-*/
-
-
-
-#ifndef T_PLUGIN_BASE_H
-#define T_PLUGIN_BASE_H
-
-//#include <ImplementationInformation.h>
-//#include <TestExecuteStepBase.h>
-//#include <TestExecuteServerBase.h>
-//#include <TestExecuteStepBase.h>
-
-#include "authPluginInterface.h"	//'authserver' folder is included in mmp file
-
-
-//An implementation of the CAuthPluginInterface definition
-
-using namespace AuthServer;
-
-class CTPluginUnknown : public CBase, public MAuthPluginInterface
-	{
-public:
-	// Two phase constructor
-	// Standardised safe construction which leaves nothing the cleanup stack.
-	static CTPluginUnknown* NewL();
-	// Destructor
-	~CTPluginUnknown();
-
-	virtual void Identify(TIdentityId& aId,  HBufC8*& aResult, TRequestStatus& aRequest);	
-	virtual void Cancel();
-	virtual void Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);		
-
-	virtual TBool IsActive() const;
-	virtual TInt Forget(TIdentityId aId);
-	virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf);
-	virtual TPluginId Id() const;
-	
-		
-private:
-	CTPluginUnknown();
-	void ConstructL();
-	
-	// Data read from file determining if this plugin supports default data
-	TBool iSupportsDefaultData;
-	TInt iNumTimesTrained;
-	};
-
-//=========================================================================
-
-//=========================================================================	
-//implementation_uid = 0x11113000 to 0x11113031 	//(50 of them)
-
-class CTPluginBase : public CBase, public MAuthPluginInterface
-	{
-public:
-
-	// Destructor
-	~CTPluginBase();
-	
-	//Implementation of CAuthPluginInterface definitions using a PIN system
-	virtual void Identify(TIdentityId& aId,  HBufC8*& aResult, TRequestStatus& aRequest);	
-	virtual void Cancel();	
-	virtual void Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);		
-
-	virtual TBool IsActive() const;
-	virtual TInt Forget(TIdentityId aId);
-	virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf);
-	virtual TPluginId Id() const;
-	
-	// Utility functions
-	//TInt ReadUserInputL(TBuf<32> inputValue);
-	//TInt CheckForStringPresenceL(TBuf<32> inputValue, TRequestStatus& requestValue);
-	//TInt CheckForNewStringPresenceL(TIdentityId aId, TBuf<32> inputValue, TRequestStatus& requestValue);
-	//TInt FindStringAndRemoveL(TIdentityId aId);
-
-	virtual TPluginId GetId() const = 0;
-	virtual TAuthPluginType GetType() const = 0;
-		
-//private:
-	//CTPluginBase(const TPluginId aPluginId);
-	CTPluginBase();
-	void ConstructL();
-	
-	// Data read from file determining if this plugin supports default data
-	TBool iSupportsDefaultData;	
-	// Can be used to generate results that are multiples of the plugin IDs
-	TInt iNumTimesTrained;
-	};
-
-
-// Constants used in the utility functions -File locations, etc
-//_LIT(KInitInfoFile, "c:\\tAuthSvr\\initialisation_Info.ini");
-//_LIT(KPinInputFile, "c:\\tAuthSvr\\pin_Input.ini");
-//_LIT(KPinContentsFile, "c:\\tAuthSvr\\pin_Contents.ini");
-//_LIT8(KDefaultData, "0000");
-_LIT8(KDefaultData, "CCCCCCCCCCCCCCCCCCCC");
-
-// Provide a consistent naming structure
-typedef CTPluginUnknown CTPlugin11112FFF ;
-
-
-//=========================================================================	
-// The various classes that are spawned from this base class by inheriting the implementations besides
-// the identify() function
-
-// number is hex, type is one of the TAuthPluginType enums
-#define DEF_PLUGIN(number, type) class CTPlugin##number : public CTPluginBase\
-	{                                        \
-public:                                      \
-	typedef CTPlugin##number TMyType;        \
-	TIdentityId GetId() const                \
-	{ return 0x##number; }                   \
-	TAuthPluginType GetType() const          \
-	{ return type; }                         \
-    static TMyType* NewL()                   \
-    {										 \
-	  TMyType* r = new (ELeave) TMyType();   \
-	  r->ConstructL();						 \
-	  return r;                              \
-	}                                        \
-private:                                     \
-	}         
-
-DEF_PLUGIN(11113000, EAuthKnowledge);
-DEF_PLUGIN(11113001, EAuthKnowledge);
-DEF_PLUGIN(11113002, EAuthKnowledge);
-DEF_PLUGIN(11113003, EAuthBiometric);
-DEF_PLUGIN(11113004, EAuthBiometric);
-DEF_PLUGIN(11113005, EAuthBiometric);
-DEF_PLUGIN(11113006, EAuthToken);
-DEF_PLUGIN(11113007, EAuthToken);
-DEF_PLUGIN(11113008, EAuthToken);
-DEF_PLUGIN(11113009, EAuthToken);
-
-#endif	/* T_PLUGIN_BASE_H */
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_postmarketplugin.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-if exist \epoc32\data\epoc_temp.ini copy \epoc32\data\epoc_temp.ini \epoc32\data\epoc.ini
-if exist \epoc32\data\epoc_temp.ini del \epoc32\data\epoc_temp.ini
-
-rmdir /s /q \epoc32\winscw\c\sys
-rmdir /s /q \epoc32\winscw\c\resource\plugins
-
-REM deletes cloned client tauthsvr_1.exe (cloned using SETCAP)
-del \epoc32\winscw\c\sys\bin\tauthsvr_new.exe
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_tauthsvr.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-if exist \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-
-REM deletes cloned client tauthsvr_1.exe (cloned using SETCAP)
-del \epoc32\winscw\c\sys\bin\tauthsvr_new.exe
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/post_tclientsidsupport.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-del \epoc32\winscw\c\sys\bin\tauthsvr1.exe
-
-REM deletes cloned client tauthsvr_1.exe (cloned using SETCAP)
-del \epoc32\winscw\c\sys\bin\tauthsvr_new.exe
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/posttauthsvroom.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-if exist \epoc32\data\z\resource\plugins\tauthplugin.rsc del /s /f /q \epoc32\data\z\resource\plugins\tauthplugin.rsc
-if exist \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc del /s /f /q \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc
-if exist \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc del /s /f /q \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc
-
-
-REM Restore tauthplugin.rsc after OOM tests
-
-rename \epoc32\data\z\resource\plugins\tauthplugin.rsc.backup tauthplugin.rsc 
-rename  \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc.backup tauthplugin.rsc
-rename \epoc32\release\winscw\urel\z\resource\plugins\tauthplugin.rsc.backup tauthplugin.rsc 
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_patchdata_negative.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-copy \epoc32\data\epoc.ini \epoc32\data\epoc_temp.ini
-copy \epoc32\data\epoc_patchdatanegative.ini \epoc32\data\epoc.ini
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_patchdata_positive.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-copy \epoc32\data\epoc.ini \epoc32\data\epoc_temp.ini
-copy \epoc32\data\epoc_patchdatapositive.ini \epoc32\data\epoc.ini
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pre_postmarketplugin.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-copy \epoc32\data\epoc.ini \epoc32\data\epoc_temp.ini
-copy \epoc32\data\epoc_enablepostmarketplugin.ini \epoc32\data\epoc.ini
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/pretauthsvroom.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-if exist \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-if exist \epoc32\data\z\resource\plugins\tauthplugin.rsc.backup del /s /f /q \epoc32\data\z\resource\plugins\tauthplugin.rsc.backup
-if exist \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc.backup del /s /f /q \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc.backup
-if exist \epoc32\release\winscw\urel\z\resource\plugins\tauthplugin.rsc.backup del /s /f /q \epoc32\release\winscw\urel\z\resource\plugins\tauthplugin.rsc.backup
-
-REM Rename tauthplugin.rsc to prevent loading of test plugins for OOM tests
-rename \epoc32\data\z\resource\plugins\tauthplugin.rsc tauthplugin.rsc.backup
-rename \epoc32\release\winscw\udeb\z\resource\plugins\tauthplugin.rsc tauthplugin.rsc.backup
-rename \epoc32\release\winscw\urel\z\resource\plugins\tauthplugin.rsc tauthplugin.rsc.backup
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_post1.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-REM Remove the .cre file
-del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-
-REM Restore the Cenrep file with the backup.
-copy \epoc32\winscw\c\tauth\tauthsvr\testdata\2001ea7f_backup.txt \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt 
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre1.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-
-REM Create a backup of the existing AuthServer Cenrep file
-copy \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt \epoc32\winscw\c\tauth\tauthsvr\testdata\2001ea7f_backup.txt
-
-REM Remove the .cre file
-del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-
-REM Copy new initialisation file
-copy \epoc32\winscw\c\tauth\tauthsvr\testdata\cenrep1.txt \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre2.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-
-REM Create a backup of the existing AuthServer Cenrep file
-copy \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt \epoc32\winscw\c\tauth\tauthsvr\testdata\2001ea7f_backup.txt
-
-REM Remove the .cre file
-del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-
-REM Copy new initialisation file
-copy \epoc32\winscw\c\tauth\tauthsvr\testdata\cenrep2.txt \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/batchfiles/te_tauthsvr4_pre3.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-
-REM Create a backup of the existing AuthServer Cenrep file
-copy \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt \epoc32\winscw\c\tauth\tauthsvr\testdata\2001ea7f_backup.txt
-
-REM Remove the .cre file
-del /s /f /q \epoc32\winscw\c\private\10202be9\persists\2001ea7f.cre
-
-REM Copy new initialisation file
-copy \epoc32\winscw\c\tauth\tauthsvr\testdata\cenrep3.txt \epoc32\release\winscw\udeb\z\private\10202be9\2001ea7f.txt
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/performance_log_parser.pl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,174 +0,0 @@
-#
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of the License "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description: 
-# Script: performance_log_parser.pl
-#
-
-use strict;
-use FileHandle;
-
-my $Test_Case_Start_Tag = "script START_TESTCASE";
-my $Test_Case_End_Tag = "END_TESTCASE";
-my $Event_print = "PERFORMANCE_LOG_INFORMATION";
-my $Test_Case_Actual_Duration = "TEST_CASE_ACTUAL_DURATION";
-my $ScrEventCode = 1;
-
-my $defInputFile = "/epoc32/winscw/c/logs/testexecute/tauthsvr_performance.htm";
-my $defOutputFile = "/epoc32/winscw/c/logs/authsvr_performance.txt";
-
-sub millisec
-	{  
-	no warnings 'uninitialized';
-	my ($mytime) = @_ ;
-	$mytime =~ /([0-9]*):([0-9]*):([0-9]*):([0-9]*)$/;
-	my $milisec = $4;
-	my $sec = $3;
-	my $min = $2;
-	my $hour = $1;
-
-	my $msecs = ($milisec / 1000) + ($sec *1000) + ($min * 60000) + ($hour * 3600000);
-	return $msecs;
-	}
-
-sub process_log_file
-	{
-	my ($data_file, $output_FH) = @_;
-	print $output_FH "#Test Case Name,Actual Duration(ms),Result\n";
-	
-	# enable reading whole file as one chunk
-	my $SAVE_RS = $/;
-	undef $/;
-	
-	# open and read the log file in a single line
-	open(DAT, $data_file) || die("Could not open file $data_file!");
-	my $raw_data=<DAT>;
-	close(DAT);
-	$raw_data=~ s/\n/ /g;
-
-	# restore previous record separator
-	$/ = $SAVE_RS;	
-	
-	my $num_passed = 0;
-	my $num_failed = 0;
-	
-	while ($raw_data && $raw_data =~ /$Test_Case_Start_Tag\s+(\S+)/)
-		{
-		# step through the file in chunks delimited by the start/end test case tags.
-		
-		my $test_case_name = $1;
-		my ($test_case_data) = ($raw_data =~ /$Test_Case_Start_Tag(.*?)$Test_Case_End_Tag/);
-		
-		if (not $test_case_data)
-			{
-			print STDERR "Error: Test case: $test_case_name: Suspected missing END_TESTCASE tag.\n";
-			}
-		
-		($raw_data) = ($raw_data =~ /$Test_Case_End_Tag(.*)/);
-		($raw_data) = ($raw_data =~ /($Test_Case_Start_Tag.*)/) if $raw_data;
-		
-		#my ($max_duration) = ($test_case_data =~ /$Test_Case_Max_Duration,([0-9]+)/);
-		#if (!defined $max_duration)
-			#{
-			#$max_duration = 1000;
-			#}
-			
-		my $start_time = "0";
-		my $end_time = "0";
-		my $first = 1;
-		
-		while ($test_case_data and ($test_case_data =~ /$Event_print(.*)/) )
-			{
-			# get the event time. if this is the first time value in the chunk, it is the start time of the event.
-			#otherwise, continue until reaching the last time value.
-			my $start_log_msg = $1;
-		   
-			$start_log_msg =~ /,(.+?)\s(.*)/;
-			
-			if($first == 1)
-				{
-				$start_time = $1;
-				$first = 0;
-				}
-			else
-				{
-				$end_time = $1;
-				}
-	
-			$test_case_data = $2;
-			}	
-		
-		if(!($start_time eq "0") && !($end_time eq "0"))
-			{
-			my ($actual_duration) = ($test_case_data =~ /$Test_Case_Actual_Duration,([0-9]+)/);
-			#my $actual_duration = millisec($end_time) - millisec($start_time);
-			my $result;
-			if( $actual_duration)
-				{
-				$result = "Passed";
-				$num_passed += 1;
-				}
-						
-			print $output_FH "$test_case_name,$actual_duration,$result\n";	
-			}
-		}
-	print $output_FH (sprintf "\n\n%d tests failed out of %d\n", $num_failed, $num_passed+$num_failed);
-	}
-	
-	
-sub usage
-	{
-	print <<USAGE;
-usage:
-	performance_log_parser.pl <input_file> <output_file>
-
-	<input_file>: A log file to process 
-			(default- $defInputFile)
-
-	<out_file>: Final output file name 
-			(default- $defOutputFile)
-USAGE
-	}
-
-	
-sub Main
-	{
-	my @argv = @_;
-	# if input and output files are not provided, default ones will be used
-	my $input_file = $defInputFile;
-	my $output_file = $defOutputFile;
-	
-	if(@argv > 2)
-		{
-		usage;
-		exit;
-		}
-	elsif(@argv == 2)
-		{# input and output files are provided, don't use default ones
-		$input_file = shift @argv;
-		$output_file = shift @argv;
-		}
-	
-	my $outputFH = \*STDOUT; # results to STDOUT by default
-	
-	if (defined $output_file)
-		{
-		$outputFH = FileHandle->new;
-		$outputFH->open("> $output_file") or die "Error: File $output_file: $!";
-		}
-	process_log_file($input_file,$outputFH);
-
-	$outputFH->close;
-}
-
-Main(@ARGV);
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-# Index of key values
-#iSupportsDefaultData 	- bool that defines if the chosen plugin supports default data
-#NumIdentities		- int that defines the expected number of identities that are registered on the server
-#pluginType		- 
-#isDefaultPlugin	- No longer in use. defaultPlugin is used instead
-#defaultPlugin		- string that defines which plugin to use as the default. Used to update the AuthServer policy file
-
-[Test0001]
-iSupportsDefaultData = true
-NumIdentities = 1
-pluginType = EAuthKnowledge
-#isDefaultPlugin = true
-defaultPlugin = PIN
-
-
-[Test0002]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthKnowledge
-#isDefaultPlugin = false
-#defaultPlugin = PIN
-
-[Test0003]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthBiometric
-isDefaultPlugin = true
-defaultPlugin = FINGER
-
-
-[Test0004]
-iSupportsDefaultData = false
-NumIdentities = 0
-pluginType = EAuthKnowledge
-#isDefaultPlugin = true
-defaultPlugin = PIN
-
-
-[Test0021]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-
-
-
-
-
-
-
-
-
-[Copied-Test1.1]
-SIS1 = c:\tswi\trevocation\data\ocsp_02.sis
-UID1 = 11112102
-FILE1.1 = c:\sys\bin\tswiusergrantable_all.exe
-#ocsp_uri = http://lon-sysbuild03.intra:19021/
-PerformRevocationCheck = false
-validationStatus = EValidatedToAnchor
-revocationStatus = EOcspNotPerformed
-isTrusted = false
-resultDate = 0
-lastCheckDate = 0
-sameDate = true
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,104 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Authentication Server tests...
-
-LOAD_SUITE tAuthSvr -SharedData
-//Next line makes use of the new keyword that is more readable
-//LOAD_SERVER tAuthSvr -SharedData		
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0001
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined
-//! 		     (FirstStart1_Normal)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults Default identity is the only one listed
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FIRST_START	c:\tAuthSvr\scripts\tauthsvr.ini Test0001
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tAuthSvr\scripts\tauthsvr.ini Test0001
-END_TESTCASE SEC-AUT-AUTHSVR-0001 
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0002
-//! @SYMTestCaseDesc Start the authServer with no identities, having no default plugin defined
-//! 		     (FirstStart2_NoDefaultPlugin)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have no default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API.
-//! @SYMTestExpectedResults KErrServerTerminated is received when trying to call the Identities API
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0002
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FIRST_START	c:\tAuthSvr\scripts\tauthsvr.ini Test0002
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tAuthSvr\scripts\tauthsvr.ini Test0002
-END_TESTCASE SEC-AUT-AUTHSVR-0002
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0003
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined which is a Biometric type
-//! 		     (FirstStart3_DefaultIsBiometricType)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is of Biometric type. use a client that has ReadDeviceData 
-//!			capability to connect to the AuthServer, call the Enumerate Identity API.
-//! @SYMTestExpectedResults KErrServerTerminated is received when trying to call the Identities API
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0003
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FIRST_START	c:\tAuthSvr\scripts\tauthsvr.ini Test0003
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tAuthSvr\scripts\tauthsvr.ini Test0003
-END_TESTCASE SEC-AUT-AUTHSVR-0003
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0004
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin which does not support the returning of a default result
-//! 		     (FirstStart4_NoDefaultResult)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which returns a default result. 
-//! 			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults KErrServerTerminated is received when trying to call the Identities API
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0004
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FIRST_START	c:\tAuthSvr\scripts\tauthsvr.ini Test0004
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tAuthSvr\scripts\tauthsvr.ini Test0004
-END_TESTCASE SEC-AUT-AUTHSVR-0004
-
-
-//----------------------------------------------------------------------
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0005
-//! @SYMTestCaseDesc Attempt to register a new identity
-//! 		     (RegisterIdentity1_Normal)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which supports the returning of a default result. 
-//! 			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//! 			Call the RegisterNewUser API with a client that has WriteDeviceData then train the 1 existing active plugin
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults KErrServerTerminated is received when trying to call the Identities API
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0005
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tAuthSvr\scripts\tauthsvr.ini Test0021
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tAuthSvr\scripts\tauthsvr.ini Test0021
-END_TESTCASE SEC-AUT-AUTHSVR-0005
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2059 +0,0 @@
-# Index of key values
-#iSupportsDefaultData 	- bool that defines if the chosen plugin supports default data
-#NumIdentities		- int that defines the expected number of identities that are registered on the server
-#pluginType		- 
-#isDefaultPlugin	- No longer in use. defaultPlugin is used instead
-#defaultPlugin		- string that defines which plugin to use as the default. Used to update the AuthServer policy file
-#pluginId		- Hex string that is the uid of the Ecom implementation. In the Test0000 to Test0009, it's used as a cue, and is also the expected UserId
-#userResult		- Int that contains what the user has input on being prompted to 'identify', i.e. the PIN
-#			In cases where this is absent, then we're expecting the 'data' returned to be the same as the pluginId value (cueValue)
-#userId			- String that contains the expected Id
-
-#plugin1Id		- Hex string that is the uid of the Ecom implementation
-#			  	In the RetrainPlugin steps, this is the plugin that is to be trained.
-#plugin1Status		- Int that specifies the expected status of the above plugin 
-				(0, 64, 128 -EAuthUntrained, EAuthTrained, EAuthFullyTrained)
-#Pin11113100Default	- bool that defines whether the plugins support default data. Also Pin11113101Default and Pin11113102Default
-#Pin11113100Active	- bool that defines whether the plugin is active or not. Also Pin11113101Active, Pin11113102Active
-#Pin11113100InputId	- string that defines the input to the plugin. Else, the default is used. (in Identify function)
-#Pin11113100InputTrain	- string that defines the input to the plugin. Else, the default is used. (in Train function)
-#finalUserName 		- string that defines the new name (description or identitystring) of a given identity
-#retryRemove		- bool that defines whether the attempt to remove an identity is tried again in the same test step
-#freshness		- Int that defines the number of seconds(timeout) within which a cached identity is returned 
-				(Authentication is skipped)
-#forgetPlugin 		- Hex that specifies the plugin that is to be forgotten
-#forgetUnknown 		- Bool that if true means we're trying to forget an unknown identity
-
-[defaultplugin]
-default = 200032E5
-
-
-[Test0001]
-NumIdentities = 1
-pluginId = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100Default = true
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-
-[Test0002]
-NumIdentities = 0
-pluginId = 11113100
-#EAuthFullyTrained
-plugin1Status = 1
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0003]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthBiometric
-isDefaultPlugin = true
-defaultPlugin = FINGER
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113103Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-Pin11113103Active = true
-
-[Test0004]
-iSupportsDefaultData = false
-NumIdentities = 0
-pluginType = EAuthKnowledge
-#isDefaultPlugin = true
-defaultPlugin = PIN
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0021a]
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin11113100InputTrain = 2035
-Pin11113100Default = true
-Pin11113100Active = true
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-[Test0021b]
-plugin1Id = 11113100
-Pin11113100InputId = 2035
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-DisplayMessage = " Display String 1 "
-
-[Test0021c]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 64
-
-#==========================================================
-#Next section is what is according to the test spec
-[Test0022a]
-#iSupportsDefaultData = true
-#pluginType = EAuthKnowledge
-#defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-Pin11113100InputId = 5110
-Pin11113101InputId = 5101
-Pin11113102InputId = 5102
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 5101
-Pin11113102InputTrain = 5102
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-finalUserName = NewNameOfId2
-
-
-[Test0022b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-freshness = 0
-
-[Test0022c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0022-works]
-iSupportsDefaultData = true
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthTrained
-plugin1Status = 64
-#Value below should be used.
-#plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113101InputId = 5101
-Pin11113102InputId = 5102
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 5101
-Pin11113102InputTrain = 5102
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-finalUserName = NewNameOfId2
-
-[Test0022-Unused]
-iSupportsDefaultData = true
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthTrained
-plugin1Status = 64
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-#==========================================================
-[Test0023a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-DisplayMessage = "This is the second display message sent by the client to the plugin" 
-[Test0023b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-
-
-[Test0023c]
-NumIdentities = 1
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0023d]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0023e]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 128
-
-[Test0023f]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-#==========================================================
-[Test0024a]
-#This test expects the presence of plugin 10274104, else i'll need to supply the 3 properties for 11113101, input being 5101
-
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = true
-Pin11113101Active = true
-finalUserName = NewNameOfId2
-
-[Test0024b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0024c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-
-[Test0024d]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-#==========================================================
-[Test0025a]
-NumIdentities = 1
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 1
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025b]
-NumIdentities = 1
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025c]
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025d]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-
-[Test0025e]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0025f]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025g]
-plugin1Id = 11113101
-Pin11113101InputTrain = 5112
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025h]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-[Test0025i]
-plugin1Id = 11113101
-Pin11113101InputId = 5112
-Pin11113101Default = false
-Pin11113101Active = true
-freshness = 0
-
-#=========================================
-[Test0026a]
-NumIdentities = 1
-#plugin1Id = 11113100
-#EAuthTrained
-#plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = Quit
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0026b]
-plugin1Id = 11113101
-Pin11113101InputId = 5110
-Pin11113101Default = false
-Pin11113101Active = true
-freshness = 0
-
-#=========================================
-[defaultplugin1]
-default = 11113100
- 
-
-[Test0027a]
-#Requires the presence of only 3 plugins.
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-
-Pin11113100InputTrain = 0000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101Active = false
-Pin11113102Active = false
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin200032E5Active = false
-
-[Test0027b]
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-NumIdentities = 1
-
-[Test0028a]
-#Requires the presence of only 3 plugins, or i can set the other plugins to use the 'cancel' code
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-#plugin1Id = 11113100
-#EAuthTrained
-#plugin1Status = 64
-Pin11113100InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = Cancel 
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputTrain = cancel
-Pin11113102Default = true
-Pin11113102Active = true
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin11113103Default = false 
-Pin11113104Default = false 
-Pin200032E5Active = false
-
-[Test0028b]
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-NumIdentities = 1
-
-[Test0041a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0041b]
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-
-[Test0041c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0041d]
-Pin11113100InputId = 5118
-plugin1Id = 11113100
-#================================
-[Test0042a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0042b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 51194
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-
-[Test0043a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0043b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0043c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113188
-#EAuthUnTrained
-plugin1Status = 1
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0044a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-
-[Test0044b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0044c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5117
-Pin11113100InputTrain = 5116
-Pin11113100Default = true
-Pin11113100Active = true 
-#freshness = 0
-
-[Test0044d]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0044e]
-plugin1Id = 11113100
-Pin11113100InputId = 5113823
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-#================================
-[Test0045a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin11113103Default = false 
-Pin11113104Default = false 
-
-[Test0045b]
-NumIdentities = 3
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 6110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin11113103Default = false 
-Pin11113104Default = false 
-
-[Test0045c]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin11113103Default = false 
-Pin11113104Default = false 
-freshness = 0
-
-[Test0045d]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputId = 5110
-Pin11113100InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103Active = false 
-Pin11113104Active = false 
-Pin11113103Default = false 
-Pin11113104Default = false 
-
-
-#================================
-[Test0046a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0046b]
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0046c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true 
-
-#================================
-[Test0047a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0047b]
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0047c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = Quit
-Pin11113100Default = true
-Pin11113100Active = true
-
-#================================
-[Test0048a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0048b]
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0048c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-
-[Test0048d]
-Pin11113100InputId = 51178
-Pin11113101InputId = 0000
-plugin1Id = 11113100
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0048e]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113101InputTrain = 51175
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0048f]
-Pin11113101InputId = 0000
-plugin1Id = 11113101
-Pin11113101Default = true
-Pin11113101Active = true 
-freshness = 0
-
-#================================
-[Test0061a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-
-[Test0061b]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0061Ta]
-plugin1Id = 11113100
-Pin11113100InputId = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0061c]
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5111
-Pin11113101Active = true
-freshness = 60
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 1
-
-[Test0061d]
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 1
-
-[Test0061Tb]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0061e]
-Pin11113100InputId = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5112
-Pin11113101Active = true
-freshness = 60
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 64
-
-[Test0061f]
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 64
-
-
-#================================
-[Test0062a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-#freshness = 0
-
-[Test0062b]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 128
-
-[Test0062c]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0062d]
-plugin1Id = 11113100
-Pin11113100InputId = 7737373737
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0062e]
-plugin1Id = 11113101
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5111
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0062f]
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-#================================
-[Test0063a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-
-[Test0063b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0063c]
-plugin1Id = 11113888
-Pin11113100Default = true
-Pin11113100Active = true
-#Pin11113101InputTrain = 6111
-Pin11113101Default = false
-Pin11113101Active = false
-
-#================================
-[Test0065a]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = true
-Pin11113101Active = true
-
-
-[Test0065b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = true
-Pin11113101Active = true
-freshness = 0
-
-[Test0065c]
-plugin1Id = 11113101
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 0000
-Pin11113101Default = true
-Pin11113101Active = true
-
-#================================
-[Test0066a]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-
-
-[Test0066b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0066c]
-plugin1Id = 11113101
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = CancEL
-Pin11113101Default = false
-Pin11113101Active = true
-
-#================================
-[Test0067a]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-
-[Test0067b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0067c]
-plugin1Id = 11113101
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = QUit
-Pin11113101Default = false
-Pin11113101Active = true
-
-#==============================
-[AuthTestRegister]
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputTrain = 5112
-Pin11113102Default = true
-Pin11113102Active = true 
-Pin11113103InputTrain = 5113
-Pin11113103Default = true
-Pin11113103Active = true 
-Pin11113104InputTrain = 5114
-Pin11113104Default = true
-Pin11113104Active = true 
-
-#==============================
-
-[Test0081b]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-freshness = 0
-
-#==============================
-
-[Test0082b]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-# fail - wrong pin
-Pin11113101InputId = 6666
-freshness = 0
-
-[Test0082c]
-plugin1Id = 11113100 | 11113101 
-Pin11113100Active = true 
-Pin11113100InputId = 6666
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-freshness = 0
-
-[Test0082d]
-plugin1Id = 11113100 | 11113101 
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-# fail - wrong pin
-Pin11113101InputId = 6666
-freshness = 0
-
-[Test0082e]
-plugin1Id = 11113100 | 11113101 
-Pin11113100Active = true 
-# fail - wrong pin
-Pin11113100InputId = 937474
-Pin11113101Active = true 
-# fail - wrong pin
-Pin11113101InputId = 6666
-freshness = 300
-#==============================
-
-[Test0083b]
-plugin1Id = 11113100 | 11113101 | 11113102
-Pin11113100Active = false 
-Pin11113100InputId = 5110
-Pin11113101Active = false 
-Pin11113101InputId = 5111
-Pin11113102Active = false 
-Pin11113102InputId = 5112
-freshness = 0
-
-#==============================
-
-[Test0084b]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-freshness = 0
-
-[Test0084c]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-freshness = 0
-clientSpecificKey = true
-
-[Test0084d]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-#Pin11113100InputId = 5110
-Pin11113101Active = true 
-#Pin11113101InputId = 5111
-freshness = 60
-clientSpecificKey = true
-#==============================
-
-[Test0086b]
-
-# set prefs
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-# auth using prefs
-Pin11113100Active = true 
-Pin11113100InputId = 5110 
-Pin11113103Active = true 
-Pin11113103InputId = 5113
-Pin11113104Active = true 
-Pin11113104InputId = 5114 
-plugin1Id = B & K & T
-freshness=0
-
-[Test0086c]
-plugin1Id = B & K & T
-Pin11113100Active = false 
-Pin11113100InputId = 5110
-Pin11113103Active = false 
-Pin11113103InputId = 5113
-Pin11113104Active = false 
-Pin11113104InputId = 5114
-freshness = 300
-
-#==============================
-
-[Test0087b]
-
-# set prefs
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-# auth using prefs
-Pin11113100Active = true 
-Pin11113100InputId = 5110 
-Pin11113103Active = false
-Pin11113103InputId = 5113
-Pin11113104Active = true
-Pin11113104InputId = 5114
-plugin1Id = B
-freshness=0
-
-[Test0087c]
-plugin1Id = K
-Pin11113100Active = false 
-Pin11113100InputId = 5110
-Pin11113103Active = true 
-Pin11113103InputId = 5113
-Pin11113104Active = true 
-Pin11113104InputId = 5114
-freshness = 0
-
-[Test0087d]
-plugin1Id = T
-Pin11113100Active = true
-Pin11113100InputId = 5110
-Pin11113103Active = true 
-Pin11113103InputId = 5113
-Pin11113104Active = false
-Pin11113104InputId = 5114
-freshness = 0
-
-==============================
-[Test0088b]
-
-# set prefs
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-# auth using prefs
-Pin11113100Active = false
-Pin11113103Active = true
-Pin11113103InputId = 5113
-Pin11113104Active = false
-plugin1Id = K | B 
-freshness=0
-
-[Test0088c]
-Pin11113100Active = false
-Pin11113103Active = true
-Pin11113103InputId = 5113
-Pin11113104Active = false
-plugin1Id = K | B 
-freshness=300
-
-#==============================
-
-[Test0089b]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-freshness = 0
-
-[Test0089c]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = false 
-Pin11113101Active = false
-Pin11113102Active = false
-freshness = 300
-
-#==============================
-
-[Test0092b]
-plugin1Id = 11113100 | 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5055
-Pin11113101Active = true 
-Pin11113101InputId = 5055
-freshness = 0
-
-#==============================
-
-[Test0093b]
-plugin1Id = 11113101 | 11113102
-Pin11113100Active = true 
-Pin11113100InputId = 5055
-Pin11113101Active = true 
-Pin11113101InputId = 5055
-Pin11113102Active = true 
-Pin11113102InputId = 5112
-freshness = 0
-
-[Test0093c]
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 505446
-Pin11113101Active = true 
-Pin11113101InputId = 507744
-Pin11113102Active = true 
-#Pin11113102InputId = 549383
-freshness = 300
-#==============================
-[Test0101a]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-#plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0101b]
-Pin11113101InputId = 5111
-plugin1Id = 11113101
-freshness = 0
-plugin1Status = 1
-
-[Test0101c]
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-#freshness = 0
-
-[Test0101d]
-Pin11113101InputId = 5111
-plugin1Id = 11113101
-freshness = 0
-
-#==============================
-[Test0102a]
-Pin11113101InputId = 0000
-plugin1Id = 11113100
-freshness = 0
-
-[Test0102b]
-plugin1Id = 11113100
-Pin11113100InputId = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-
-[Test0102c]
-plugin1Id = 11113100
-NumIdentities = 1
-plugin1Status = 128
-
-#==============================
-[Test0103a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0103b]
-Pin11113101InputId = 377377377
-plugin1Id = 11113101
-freshness = 0
-
-[Test0103c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-#Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-retryRemove = true
-
-#==============================
-[Test0104a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0104b]
-Pin11113101InputId = 773737
-plugin1Id = 11113101
-freshness = 0
-
-[Test0104c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 51178
-#Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-
-#==============================
-[Test0105a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0105b]
-NumIdentities = 3
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-Pin11113100InputTrain = 6110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 6111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0105c]
-Pin11113101InputId = 37777733
-plugin1Id = 11113101
-freshness = 0
-
-[Test0105d]
-NumIdentities = 3
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-retryRemove = true
-
-
-#==============================
-[Test0121a]
-#iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113101
-Pin11113100InputId = 5110
-Pin11113101InputId = 6110
-freshness = 0
-Pin11113100Default = true
-Pin11113101Active = true
-Pin11113100Active = true
-
-[Test0121b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113101Active = true
-Pin11113101InputTrain = 6110
-
-[Test0121c]
-forgetPlugin = 11113100
-
-[Test0121d]
-
-NumIdentities = 2
-plugin1Id = 11113100
-Pin11113100Active = true
-Pin11113100InputId = 5110
-freshness = 0
-
-[Test0122a]
-#iSupportsDefaultData = true
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-Pin11113103Active = false
-Pin11113104Active = false
-Pin200032E5Active = false
-
-[Test0122b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113101Active = false
-Pin11113102Active = false
-Pin11113103Active = false
-Pin11113104Active = false
-Pin200032E5Active = false
-
-[Test0122c]
-forgetPlugin = 11113100
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-Pin11113103Active = false
-Pin11113104Active = false
-Pin200032E5Active = false
-
-[Test0123a]
-#iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113102
-Pin11113100InputId = 5110
-Pin11113102InputId = 6220
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = true
-
-[Test0123b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113102Active = true
-Pin11113102InputTrain = 6220
-Pin11113101Active = false
-
-[Test0123c]
-forgetPlugin = 11113101
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0124a]
-#iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113102
-Pin11113100InputId = 5110
-Pin11113102InputId = 6220
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = true
-
-[Test0124b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113102Active = true
-Pin11113102InputTrain = 6220
-Pin11113101Active = false
-
-[Test0124c]
-forgetPlugin = ffffffff
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0125]
-forgetPlugin = 11113100
-forgetUnknown = true
-Pin11113100Active = true
-Pin11113100Default = true
-Pin11113101Active = true
-Pin11113102Active = true
-#iSupportsDefaultData = true
-
-#==========================================
-[Test0141]
-Pin11113100InputId = 5000
-Pin11113100InputTrain = 5000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103InputId = 5003
-Pin11113103InputTrain = 5003
-Pin11113103Default = true
-Pin11113103Active = true 
-Pin11113104InputId = 5004
-Pin11113104InputTrain = 5004
-Pin11113104Default = true
-Pin11113104Active = true 
-plugin1Id = B & K & T
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-
-[Test0142]
-Pin11113100InputId = 5000
-Pin11113100InputTrain = 5000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113103InputId = 5003
-Pin11113103InputTrain = 5003
-Pin11113103Default = true
-Pin11113103Active = true 
-Pin11113104InputId = 5004
-Pin11113104InputTrain = 5004
-Pin11113104Default = true
-Pin11113104Active = true 
-plugin1Id = B & K & T
-KnowledgePref = 11113100
-BiometricPref = 11113101
-TokenPref     = 11119999
-
-[Test0143]
-Pin11113100InputId = 5000
-Pin11113100InputTrain = 5000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputId = 5001
-Pin11113101InputTrain = 5001
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputId = 5002
-Pin11113102InputTrain = 5002
-Pin11113102Default = true
-Pin11113102Active = true 
-Pin11113103InputId = 5003
-Pin11113103InputTrain = 5003
-Pin11113103Default = true
-Pin11113103Active = true 
-plugin1Id = B & K & T
-KnowledgePref = 11113103
-BiometricPref = 11113101
-TokenPref     = 11113102
-
-
-#-----------------------------------------------
-#Authentication via Aliases test cases.
-
-[Test0166]
-alias = strong
-aliasString0 = fast & medium | weak
-aliasString1 =
-aliasString2 =
-aliasString3 = 11113100
-freshness = 0
-
-[Test0170]
-alias = strong
-aliasString0 = fast & medium | weak
-aliasString1 = ""
-aliasString2 = ""
-aliasString3 =
-freshness = 0
-
-[Test0171]
-alias = strong
-aliasString0 = fast & sometext | weak
-aliasString1 = 11113100
-aliasString2 = 11113101
-aliasString3 = 11113102
-freshness = 0
-
-[Test0172]
-alias = strong
-aliasString0 = fast + medium | weak
-aliasString1 = 11113100
-aliasString2 = 11113101
-aliasString3 = 11113102
-freshness = 0
-
-[Test0173]
-alias = strong
-aliasString0 = fast & medium | weak
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113100
-synchronous = true
-
-[Test0174]
-Pin11113101Active = true 
-Pin11113101InputId = 6111
-alias = strong
-aliasString0 = (fast) & (medium) | (weak)
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113100
-freshness = 0
-
-[Test0175]
-Pin11113101Active = true 
-Pin11113101InputId = 6111
-alias = strong
-aliasString0 = fast | weak
-aliasString1 = medium & weak
-aliasString2 = (11113101 & 11113102) | weak
-aliasString3 = 11113100
-freshness = 0
-
-[Test0176]
-Pin11113103Active = true 
-Pin11113103InputId = 6113
-alias = strong
-aliasString0 = medium | ((weak & fast) | 11113103)
-aliasString1 = 11113103 & 11113100
-aliasString2 = 11113100
-aliasString3 = 11113100 | 11113103
-freshness = 0
-
-[Test0177]
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true 
-Pin11113101InputId = 5111
-Pin11113102Active = true 
-Pin11113102InputId = 5112
-alias = strong
-aliasString0 = fast & medium
-aliasString1 = medium | 11113100
-aliasString2 = weak & 11113101
-aliasString3 = strong & 11113102
-freshness = 0
-
-[Test0178]
-alias = strong
-aliasString0 = strong & medium
-aliasString1 = 11113100
-aliasString2 = strong & 11113101
-aliasString3 = 11113102
-freshness = 0
-
-[Test0179]
-alias = unknownalias
-aliasString0 = fast & medium
-aliasString1 = 11113100
-aliasString2 = 11113101
-aliasString3 = 11113102
-freshness = 0
-synchronous = true
-
-[Test0180]
-Pin11113101Active = true 
-Pin11113101InputId = 6111
-Pin11113102Active = true 
-Pin11113102InputId = 6112
-alias = strong
-aliasString0 = fast | weak
-aliasString1 = medium & weak
-aliasString2 = (11113101 & 11113100) | weak
-aliasString3 = 11113102
-freshness = 0
-synchronous = true
-
-[Test0183]
-alias = strong
-aliasCount = -2
-
-[Test0184]
-alias = strong
-aliasCount = 0
-
-#-------------------------------------------------------------------
-
-
-[Test0156]
-Pin11113102InputTrain = 5112
-Pin11113102Default = true
-Pin11113102Active = true 
-
-[Test0157]
-plugin1Id = 11113102
-Pin11113102Active = true 
-Pin11113102InputId = 5114
-freshness = 0
-
-
-[Test0158]
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0159]
-plugin1Id = 11113100
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-freshness = 0
-
-[Test0160]
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-plugin1Id = 11113100
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-freshness = 0
-stop = FALSE 
-
-[Test0161]
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-plugin1Id = 11113101
-Pin11113101Active = true 
-Pin11113101InputId = 5112
-freshness = 0
-
-[Test0162]
-Pin11113102InputTrain = 5112
-Pin11113102Default = true
-plugin1Id = 11113102
-Pin11113102Active = true 
-Pin11113102InputId = 5112
-deauth = 1
-freshness = 0
-stop = FALSE 
-
-#-------------------------------------------------------------------
-[defidentity1]
-plugin1Id = 00000
-Pin11113100InputId = 0000
-defaultpluginusage = true
-
-[defidentity2]
-plugin1Id = 00000
-Pin11113100InputId = 0000
-defaultpluginusage = true
-synchnronous = true
-
-[defidentity3]
-plugin1Id = 00000
-Pin11113100InputId = 0001
-defaultpluginusage = true
-
-[defidentity4]
-plugin1Id = 00000
-Pin11113100InputId = 0001
-defaultpluginusage = true
-synchronous = true
-
-[defaultplugin2]
-default = 11113101
-
-[defidentity5]
-iSupportsDefaultData = false
-plugin1Id = 00000
-Pin11113101InputId = 0000
-defaultpluginusage = true
-synchronous = true
-
-[defaultplugin3]
-iSupportsDefaultData = false
-plugin1Id = 00000
-Pin11113101InputId = 0000
-defaultpluginusage = true
-synchronous = true
-
-[defaultplugin4]
-plugin1Id = 11113101
-Pin11113101InputTrain = 5112
-Pin11113101Default = true
-Pin11113101Active = true
-
-[defidentity6]
-Pin11113101InputId = 0000
-plugin1Id = 11113101
-freshness = 0
-plugin1Status = 1
-
-[defidentity7]
-forgetPlugin = 11113101
-Pin11113101Active = true
-Pin11113101Default = true
-
-
-[defidentity8]
-alias =
-Pin11113100InputId = 0000
-defaultpluginusage = true
-
-[defidentity9]
-alias =
-Pin11113100InputId = 0000
-defaultpluginusage = true
-synchronous = true
-
-
-[defidentity10]
-alias =
-Pin11113100InputId = 0001
-defaultpluginusage = true
-
-[defidentity11]
-alias =
-Pin11113100InputId = 0001
-defaultpluginusage = true
-synchronous = true
-
-######################
-# Sections for Reset Identity Tests #
-######################
-[RegisterId]
-defaultPlugin = PIN
-IdentityString=AmazingUser
-Pin11113100InputTrain = 420
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[RegisterIdLotsOfPlugins]
-defaultPlugin = PIN
-IdentityString=AmazingUser
-Pin11113100Active = true
-Pin11113100InputTrain = 420
-Pin11113101Active = true
-Pin11113101InputTrain = 421
-Pin11113102Active = true
-Pin11113102InputTrain = 422
-Pin11113103Active = true
-Pin11113103InputTrain = 423
-Pin11113104Active = true
-Pin11113104InputTrain = 424
-
-[ResetIdAll]
-ResetType=ResetAll
-IdentityString=AmazingUser
-RegistrationData=1234
-
-[AuthPinPlugin]
-# For post reset authenticate
-plugin1Id = 200032E5
-Pin200032E5Active = true
-pinvalue = 1234
-freshness = 0
-
-[AuthPinPluginOldPin]
-plugin1Id = 200032E5
-Pin200032E5Active = true
-freshness = 0
-
-[AuthPlugin11113100OldPin]
-plugin1Id = 11113100
-Pin11113100Active = true
-Pin11113100InputId = 420
-freshness = 0
-
-[AuthPlugin11113100]
-plugin1Id = 11113100
-Pin11113100Active = true
-Pin11113100InputId = 1234
-freshness = 0
-
-[AuthPluginResetNoReTrainOldPin]
-plugin1Id = 11113101
-Pin11113101Active = true
-Pin11113101InputId = 421
-freshness = 0
-
-[AuthPluginResetNoReTrain]
-plugin1Id = 11113101
-Pin11113101Active = true
-Pin11113101InputId = 1234
-freshness = 0
-
-[AuthPluginResetUnsupOldPin]
-plugin1Id = 11113102
-Pin11113102Active = true
-Pin11113102InputId = 422
-freshness = 0
-
-[AuthPluginResetUnsup]
-plugin1Id = 11113102
-Pin11113102Active = true
-Pin11113102InputId = 1234
-freshness = 0
-
-[AuthPluginBiometricOldPin]
-plugin1Id = 11113103
-Pin11113103Active = true
-Pin11113103InputId = 423
-freshness = 0
-
-[AuthPluginBiometric]
-plugin1Id = 11113103
-Pin11113103Active = true
-Pin11113103InputId = 1234
-freshness = 0
-
-[AuthPluginTokenOldPin]
-plugin1Id = 11113104
-Pin11113104Active = true
-Pin11113104InputId = 424
-freshness = 0
-
-[AuthPluginToken]
-plugin1Id = 11113104
-Pin11113104Active = true
-Pin11113104InputId = 1234
-freshness = 0
-
-[ResetIdAllMissingUser]
-ResetType=ResetAll
-IdentityString=MoreAmazingUser
-RegistrationData=1234
-
-[ResetIdAllInvalidUser]
-ResetType=ResetAll
-IdentityString=
-RegistrationData=1234
-
-[ResetIdTypeInvalidUser]
-ResetType=ResetByType
-PluginType=EAuthKnowledge
-IdentityString=
-RegistrationData=1234
-
-[ResetIdListInvalidUser]
-ResetType=ResetByList
-IdentityString=
-PluginCount=1
-PluginId0=200032E5
-RegistrationData0=1234
-
-[ResetIdListNoPlugins]
-ResetType=ResetByList
-IdentityString=AmazingUser
-PluginCount=0
-
-[ResetIdListCountMismatch]
-ResetType=ResetByList
-IdentityString=AmazingUser
-PluginCount=-1
-
-[ResetIdTypeKnowledge]
-ResetType=ResetByType
-PluginType=EAuthKnowledge
-IdentityString=AmazingUser
-RegistrationData=1234
-
-[ResetIdTypeBiometric]
-ResetType=ResetByType
-PluginType=EAuthBiometric
-IdentityString=AmazingUser
-RegistrationData=1234
-
-[ResetIdListPinPlugin]
-ResetType=ResetByList
-IdentityString=AmazingUser
-PluginCount=1
-PluginId0=200032E5
-RegistrationData0=1234
-
-[ResetIdListInvalidUser]
-ResetType=ResetByList
-IdentityString=MoreAmazingUser
-PluginCount=1
-PluginId0=200032E5
-RegistrationData0=1234
-
-[ResetIdListUnsupPlugin]
-ResetType=ResetByList
-IdentityString=AmazingUser
-PluginCount=1
-PluginId0=11113102
-RegistrationData0=1234
-
-[ResetIdListBiometricPlugin]
-ResetType=ResetByList
-IdentityString=AmazingUser
-PluginCount=1
-PluginId0=11113103
-RegistrationData0=1234
-
-[Test0193]
-alias = 11113100 & ( weak | strong )
-aliasString0 = fast & medium | weak
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113100
-synchronous = true
-
-[Test0194]
-alias = 11113333 | ( Knowledge & Biometric & Token )
-aliasString0 = fast & medium | weak
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113100
-synchronous = true
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-
-[Test0195]
-alias = ( 11113100 & ( weak | strong )
-aliasString0 = fast & medium | weak
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113100
-synchronous = true
-
-[Test0196]
-alias = 11113333 | Knoledge
-synchronous = true
-KnowledgePref = 11113100
-BiometricPref = 11113103
-TokenPref     = 11113104
-
-
-
-[Test0197]
-defaultPlugin = PIN
-IdentityString=AmazingUser
-Pin11113100InputTrain = 420
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0198]
-plugin1Id = 11113100
-Pin11113100Active = true 
-Pin11113100InputId = 420
-
-[time]
-time = 0
-
-[time1]
-time = 600
-
-[Test0199]
-plugin1Id = 11113100
-Pin11113100Active = true 
-Pin11113100InputId = 1234
-freshness = 300
-
-
-[Test0200]
-Pin11113101InputTrain = 5112
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0201]
-plugin1Id = 11113101
-Pin11113101Active = true 
-Pin11113101InputId = 5112
-
-[time2]
-time = -600
-
-[Test0202]
-plugin1Id = 11113101
-Pin11113101Active = true 
-Pin11113101InputId = 1234
-freshness = 5
-
-[multithreadedRegister]
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin11113100InputTrain = 2035
-Pin11113100Default = true
-Pin11113100Active = true
-finalUserName = NewUser
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1921 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Authentication Server tests...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0144
-//! @SYMTestCaseDesc Remove_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHSVR-0144
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE SEC-AUT-AUTHSVR-0144
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0006
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined
-//! 		     (FirstStart1_Normal)
-//! @SYMREQ REQ 4941 4943 4953 4954 4955 4956
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults Default identity is the only one present
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0006
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0001
-END_TESTCASE SEC-AUT-AUTHSVR-0006
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0007
-//! @SYMTestCaseDesc Start the authServer with no identities, and no default plug-in exists
-//! 		     (FirstStart2_NoDefaultPlugin)
-//! @SYMREQ REQ 4941 4943 4953 4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults AuthServer panics, since there are no identities
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0007
-RUN_UTILS CopyFile C:\tauth\tauthsvr\testdata\pinplugin_inactive.txt C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-2 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0002
-END_TESTCASE SEC-AUT-AUTHSVR-0007 
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0008
-//! @SYMTestCaseDesc Start the authServer with no identities, and the default plugin is set to a biometric plugin
-//! 		     (FirstStart3_DefaultIsBiometricType)
-//! @SYMREQ REQ 4941 4943 4953 4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults AuthServer panics, since default plugins have to be of knowledge or token type
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0008
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-2 100	tAuthSvr 	AUTHSVR_CHECK   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0003
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-END_TESTCASE SEC-AUT-AUTHSVR-0008
-
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0009
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined
-//! 		     (RegisterIdentity1_Normal)
-//! @SYMREQ REQ4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults Default identity is the only one listed
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0009
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=Fail  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0021b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0021a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0021b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0021c
-
-END_TESTCASE SEC-AUT-AUTHSVR-0009
-
-
-// //============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0010
-//! @SYMTestCaseDesc , Attempt to register a new identity, while a specific plugin inactive, the plugin should be remain untrained
-//! 		     (RegisterIdentity2_NoActivePlugin)
-//! @SYMREQ REQ4941 REQ4943 REQ4953 REQ4954 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Start the authServer with no identities. 
-//!			Have a default plugin defined, which is inactive,
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//! @SYMTestExpectedResults Specific plugin is untrained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0010
-
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !RESULT=-2 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0022b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0022a
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0022b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0022c
-
-END_TESTCASE SEC-AUT-AUTHSVR-0010
-
-
-// //============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0011
-//! @SYMTestCaseDesc Attempt to register a new identity, while no plugins are active, then one is activated.
-//! 		     (RegisterIdentity3_PluginActivatedLater)
-//! @SYMREQ REQ4947 REQ4954 REQ4960 REQ4962 REQ4968 REQ4957 REQ4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!                     Attempt to register a new identity, attempt to authenticate assuming this identity
-//!                     was registered. Check the number of identities.
-//!                     Reset the state of the system
-//!                     Set one of the plugins to be active then attempt to register an identity
-//!                     Attempt to read and set the username.
-//!                     Attempt to authenticate assuming this identity was registered. 
-//!                     Check the number of identities.
-//! @SYMTestExpectedResults Default plugin is untrained, then fully trained after the 2nd try
-//!                     The authentication fails first time(no errors), fails again the second time (no errors)
-//!                     It passes the third time 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0011
-
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !Error=-2 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023b
-// RUN_TEST_STEP !Error=-2 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023a
-// RUN_TEST_STEP !Error=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023b
-// RUN_TEST_STEP !Error=-2  100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023c
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023d
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023f
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0023e
-// RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-
-END_TESTCASE SEC-AUT-AUTHSVR-0011
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0012
-//! @SYMTestCaseDesc Attempt to register a new identity, but the transient key obtained from one of auth Plugin is non-unique.
-//! 		     (RegisterIdentity4_NonUniqueTransientkey)
-//! @SYMREQ REQ4953 REQ4954 REQ4955 REQ4957 REQ4958 REQ4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the same 'Entered-Pin' as for the default identity.
-//! @SYMTestExpectedResults KErrAuthServPluginCancelled is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0012
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024d
-
-END_TESTCASE SEC-AUT-AUTHSVR-0012
-
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0013
-//! @SYMTestCaseDesc Attempt to register a new identity, but a plugin returns the cancellation code
-//! 		     (RegisterIdentity5_PluginCancel)
-//! @SYMREQ REQ4954 REQ4955 REQ4958 REQ4968 REQ4970 4971 4972 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the 'Cancel' code as the PIN input
-//! @SYMTestExpectedResults KErrAuthServPluginCancelled is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0013
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025e
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025f
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025g
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025h
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0025i
-
-END_TESTCASE SEC-AUT-AUTHSVR-0013
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0014
-//! @SYMTestCaseDesc Attempt to register a new identity, but a plugin returns the 'quit' code
-//! 		     (RegisterIdentity6_PluginExit)
-//! @SYMREQ REQ4954 REQ4955 REQ4958 REQ4968 REQ4970 4971 4972 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the 'Quit' code as the PIN input
-//! @SYMTestExpectedResults KErrAuthServPluginQuit is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0014
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Error=-10805 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0026a
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0026b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0026c
-
-END_TESTCASE SEC-AUT-AUTHSVR-0014 
-
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0015
-//! @SYMTestCaseDesc Attempt to register a new identity, but the authserver cannot uniquely resolve the identity with any of the supplied plugins
-//! 		     (RegisterIdentity7_NonUniqueIdentity_Retrain)
-//! @SYMREQ REQ4953 REQ4954 4955 4956 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and two others which are active
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity. While training all the plug-ins, 
-//!			use the same data that was used with the default identity
-//! @SYMTestExpectedResults The second identity is not registered. All the plugins are still 
-//!				fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0015
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Error=-10810  100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0027a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0027b
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-
-END_TESTCASE SEC-AUT-AUTHSVR-0015 
-
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0016
-//! @SYMTestCaseDesc Attempt to register a new identity, but the training for the 2 active plugins is cancelled
-//! 		     (RegisterIdentity8_NonUniqueIdentity_AllPluginsCancelled)
-//! @SYMREQ REQ4953 REQ4954 4955 4956 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API 
-//!			Try to register a 2nd identity while using the 'Cancel' code as the PIN input for all 3 plugins
-//! @SYMTestExpectedResults The 2nd identity is not registered then the 3 plugins are showed as fully trained
-//!			       
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0016
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Error=-10810 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0028a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0028b
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0016
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0017
-//! @SYMTestCaseDesc Successful attempt at retraining a specified plugin
-//! 		     (RetrainPlug-in1_Normal)
-//! @SYMREQ REQ4953 REQ4954 4955 4956 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate using the same PIN input so that the identity to be trained is one
-//!			that has been previously trained. 
-//!			Then call the Train() function, giving a different input. Then attempt to authenticate,
-//!			giving the new input
-//! @SYMTestExpectedResults The authentication, registration and retrain are successful. The plugin status is 
-//!			fully trained, then fully trained again. The new authenticate is successful.
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0017
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0041a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0041b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0041c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0041d
-END_TESTCASE SEC-AUT-AUTHSVR-0017 
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0018
-//! @SYMTestCaseDesc Attempt at retraining a specified plugin, but authentication fails
-//! 		     (RetrainPlug-in2_AuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4952 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that has not been used before 
-//!			so that no identity is returned as having that PIN. 
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain is unsuccessful. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0018
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0042a
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0042b
-RUN_TEST_STEP !Error=-10806 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0042b
-END_TESTCASE SEC-AUT-AUTHSVR-0018
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0019
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but the plugin is unknown
-//! 		     (RetrainPlug-in3_UnknownPlugin)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4952 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a valid PIN so that an identity is 
-//!                     returned as having that PIN. 
-//!                     Attempt to retrain a plugin, but specify an unknown plugin.
-//! @SYMTestExpectedResults The registration is successful, the authentication passes, the retrain is unsuccessful. 
-//!                     and the KErrauthServNoSuchPlugin is returned
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0019
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0043a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0043b
-RUN_TEST_STEP !Error=-10802 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0043c
-END_TESTCASE SEC-AUT-AUTHSVR-0019
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0020
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but the 2nd authentication fails
-//! 		     (RetrainPlug-in4_2ndAuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4952 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that was used before so that the 
-//!			2nd identity is returned. A new PIN is now associated with the identity and that plugin
-//!			Attempt the authentication again, but using a wrong PIN. 
-//!                     Attempt the retrain a second time, given that the authentication has failed
-//! @SYMTestExpectedResults The registration is successful, The first 'authenticate' and 'train' calls succeed. 
-//!			The 2nd authentication fails, and so the 2nd call to train is unsuccessful. 
-//!			The plugin status is fully trained, all three times that it is checked
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0020
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0044a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0044d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0044b
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0044e
-RUN_TEST_STEP !Error=-10806 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0044c
-END_TESTCASE SEC-AUT-AUTHSVR-0020
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0030
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a non-unique transient key is generated, prompting 
-//!			the retrain to be cancelled
-//! 		     (RetrainPlug-in5_NonUniqueTransientKey)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a unique PIN input
-//!                     Successfully register a 3rd identity while using another unique PIN input
-//!			Authenticate so that the 2nd identity is returned then call the Train() function. 
-//!                     Attempt to use the same PIN input that was used to register the 3rd Id, to train the 2nd Id
-//!			so that the retrain is cancelled.
-//! @SYMTestExpectedResults The registrations are successful, the authentication passes, but the retrain is cancelled. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0030
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0045a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0045b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0045c
-RUN_TEST_STEP !Error=-10804 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0045d
-
-END_TESTCASE SEC-AUT-AUTHSVR-0030
-
-
-// //// //
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0031
-// //! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a cancellation code is entered at the 'retrain' stage
-// //! 		        (RetrainPlug-in6_Cancel)
-// //! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 4993 5008 5009
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //!			Successfully register a 2nd identity while using a specified PIN input
-// //!			Authenticate then call the Train() function. Use the a cancellation code as the input
-// //!			so that the retrain is cancelled.
-// //! @SYMTestExpectedResults The registration is successful, the authentication passes, but the retrain is cancelled. 
-// //!			The plugin status is fully trained, then fully trained again
-// //! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0031
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0046a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0046b
-RUN_TEST_STEP !Error=-10804	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0046c
-END_TESTCASE SEC-AUT-AUTHSVR-0031
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0032
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a Quit code is entered at the 'retrain' stage
-//! 		     (RetrainPlug-in7_Quit)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a Quit code as the input
-//!			so that the retrain is quit.
-//! @SYMTestExpectedResults The registration is successful, the authentication passes, but the retrain is quit 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0032
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0047a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0047b
-RUN_TEST_STEP !Error=-10805 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0047c
-END_TESTCASE SEC-AUT-AUTHSVR-0032
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0033
-//! @SYMTestCaseDesc Successful attempt to retrain a specified plugin, then another plugin. 
-//! 		     (RetrainPlug-in8_TwoPlugins)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function on the first plugin. Use the a valid, unique input
-//!			Authenticate then call the Train function on the second plugin. Use a valid, unique input
-//!                  Attempt an authentication using a now-invalid input.(what was used earlier)
-//! @SYMTestExpectedResults The registration is successful, the authentication is successful in both cases, 
-//!			as well as the retrain calls. The last authentication fails since the training data has changed.
-//!			The plugin status for both plugins is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0033
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048e
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0048f
-END_TESTCASE SEC-AUT-AUTHSVR-0033
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0034
-//! @SYMTestCaseDesc Attempt to add a new authentication method first to one then the second of the
-//!			two present identities
-//! 		     (AddAuthMethod1_BothIdentities_Normal)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input with the default plugin only
-//!			Authenticate then call the Train() function. Use an identifying input that corresponds to what
-//!			was used to register the default identity using the default plugin. Therefore the default identity
-//!			is returned following the Authentication. The training is then done for the 2nd plugin
-//!			Carry out the same process with the second identity
-//! @SYMTestExpectedResults The authentication is successful,  and the first train call passes.
-//!			but the second train call passes as well
-//!			The plugin status for the second plugin is untrained, trained, then fully trained
-//!			There are 2 identities present after the register identity step
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0034
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061Ta
-RUN_TEST_STEP !Error=-5 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061Tb
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061e
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0061f
-END_TESTCASE SEC-AUT-AUTHSVR-0034
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0035
-//! @SYMTestCaseDesc Attempt to add a new authentication method first to one then the second of the
-//!			two present identities. Authentication fails in both cases.
-//! 		     (AddAuthMethod2_BothIdentities_AuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 4993 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions   Have a default plugin defined, which is active, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input with the default plugin only
-//!			Fail to authenticate then try to call the Train() function. Use an identifying input that does not 
-//!			correspond to what was used to register the default identity using the default plugin. Therefore no identity
-//!			is returned following the Authentication. The training is then attempted for the 2nd plugin
-//!			Carry out the same process with the second identity
-//! @SYMTestExpectedResults The authentication is successful,  and the first train call passes.
-//!			but the second train call passes as well
-//!			The plugin status for the second plugin is untrained, trained, then fully trained
-//!			There are 2 identities present after the register identity step
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0035
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062c
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062d
-RUN_TEST_STEP !Error=-10806 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062e
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0062f
-END_TESTCASE SEC-AUT-AUTHSVR-0035
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0063
-//! @SYMTestCaseDesc Attempt to add a new authentication method to one identity,
-//!		        but the pluginId is unknown
-//! 		     (AddAuthMethod3_UnknownPlugin)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions   Have a default plugin defined, which is active, and a second one of the same type, but not
-//!                     supporting default data
-//!			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			Successfully register a 2nd identity with the default plugin only
-//!
-//!			Successfully authenticate for the 2nd identity
-//!			then call the ReTrain() function specifying a unknown plugin
-//!
-//! @SYMTestExpectedResults The default plugin is fully trained, the 2nd plugin is untrained
-//!                     The authentication is successful, but the Retrain call fails
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0063
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0063a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0063b
-RUN_TEST_STEP !Error=-10802 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0063c
-END_TESTCASE SEC-AUT-AUTHSVR-0063
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0065
-//! @SYMTestCaseDesc Attempt to add a new authentication method to the 2nd identity,
-//!		        but the training data used for the 2nd plugin is non-unique
-//! 		     (AddAuthMethod5_2ndIdentity_NonUniqueTransientKey)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions   Have a default plugin defined, which is active, and a second one of the same type, and both
-//!                     support default data
-//!			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			Successfully register a 2nd identity with both plugins
-//!
-//!			Successfully authenticate for the 2nd identity
-//!			then call the ReTrain() function specifying the 2nd plugin and the same training
-//!                  data used to train the first identity
-//!
-//! @SYMTestExpectedResults The default plugin is fully trained, the 2nd plugin is untrained
-//!                     The authentication is successful, but the Retrain call fails
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0065
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0065a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0065b
-RUN_TEST_STEP !Error=-10804 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0065c
-END_TESTCASE SEC-AUT-AUTHSVR-0065
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0066
-//! @SYMTestCaseDesc Attempt to add a new authentication method to the 2nd identity,
-//!		        but the cancel code is sent by the user at the training stage
-//! 		     (AddAuthMethod6_2ndIdentity_Cancel)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one of the same type, and only the
-//!                     default plugin supports default data
-//!			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			Successfully register a 2nd identity with the default plugin only
-//!
-//!			Successfully authenticate for the 2nd identity
-//!			then call the ReTrain() function specifying the 2nd plugin and the cancel code as training data 
-//!
-//! @SYMTestExpectedResults The default plugin is fully trained, the 2nd plugin is untrained
-//!                     The authentication is successful, but the Retrain call fails
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0066
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0066a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0066b
-RUN_TEST_STEP !Error=-10804 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0066c
-END_TESTCASE SEC-AUT-AUTHSVR-0066
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0067
-//! @SYMTestCaseDesc Attempt to add a new authentication method to the 2nd identity,
-//!		        but the Quit code is sent by the user at the training stage
-//! 		     (AddAuthMethod7_2ndIdentity_Exit)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one of the same type, and only the 
-//!                     default plugin supports default data
-//!			Use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			Successfully register a 2nd identity with the default plugin only
-//!
-//!			Successfully authenticate for the 2nd identity
-//!			then call the ReTrain() function specifying the 2nd plugin and the Quit code as training data 
-//!   
-//! @SYMTestExpectedResults The default plugin is fully trained, the 2nd plugin is untrained
-//!                     The authentication is successful, but the Retrain call fails
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0067
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0067a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0067b
-RUN_TEST_STEP !Error=-10805 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0067c
-END_TESTCASE SEC-AUT-AUTHSVR-0067
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0081
-//! @SYMTestCaseDesc An AuthClient successfully authenticates a user
-//! 		     (Authenticate1_Normal)
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have the default identity and a 2nd identity registered, 
-//!			having both plug-ins trained with both identities.
-//!			Call the ‘Authenticate’ API  on the 2nd identity, with a freshness of 0 seconds
-//!			and an authentication expression.(Default AND 2nd plug-in)
-//! @SYMTestExpectedResults  The 2nd identity is successfully authenticated
-//!				A valid result is stored, i.e. a new identity number 
-//!				other than ‘unknown’ is now present. 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0081
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0081b
-END_TESTCASE SEC-AUT-AUTHSVR-0081
-
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0082
-//! @SYMTestCaseDesc An AuthClient successfully authenticates a user using a subset of the auth. methods
-//! 		     (Authenticate2_SpecifiyMethodSubset)
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0082
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=Fail 100  tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0082b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0082c
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0082d
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0082e
-END_TESTCASE SEC-AUT-AUTHSVR-0082 
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0083
-//! @SYMTestCaseDesc Authenticate3_NoActiveMethods
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0083
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0083b
-END_TESTCASE SEC-AUT-AUTHSVR-0083
-
- 
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0084
-//! @SYMTestCaseDesc Authenticate4_RestrictedAuth_VariousConfigurations
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0084
-LOAD_SUITE tAuthSvrWDD
-LOAD_SUITE tAuthSvrNC
-RUN_TEST_STEP !Result=0 100	tAuthSvrWDD 	REMOVE_DBS
-RUN_TEST_STEP !Result=Fail 100	tAuthSvrWDD 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0084b
-RUN_TEST_STEP !Result=0 100	tAuthSvrWDD	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0084b
-RUN_TEST_STEP !Error=-46 100	tAuthSvrNC 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0084b
-RUN_TEST_STEP !Result=0 100	tAuthSvrNC 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0084c
-RUN_TEST_STEP !Result=0 100	tAuthSvrNC 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0084d
-END_TESTCASE SEC-AUT-AUTHSVR-0084
-
-
-// ////
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0085
-// //! @SYMTestCaseDesc Authenticate5_SpecifyType
-// //! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  
-// //! @SYMTestExpectedResults 
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0085
-// RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0085b
-// RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-// RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0085b
-// RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0085c
-// END_TESTCASE SEC-AUT-AUTHSVR-0085
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0086
-//! @SYMTestCaseDesc Authenticate6_SpecifyPreferredPluginOfType
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0086 
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0086b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0086b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0086c
-END_TESTCASE SEC-AUT-AUTHSVR-0086
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0087
-//! @SYMTestCaseDesc Authenticate7_NoActivePluginsOfSpecifiedType
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0087
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0087b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0087b
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0087c
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0087d
-END_TESTCASE SEC-AUT-AUTHSVR-0087
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0088
-//! @SYMTestCaseDesc Authenticate8_PluginInactiveSoAlternativeSubExpressionIsUsed
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0088
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0087b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0088b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0088c
-END_TESTCASE SEC-AUT-AUTHSVR-0088
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0089
-//! @SYMTestCaseDesc Authenticate9_ServerStopped
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0089
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0089b
-DELAY 3500
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0089c
-END_TESTCASE SEC-AUT-AUTHSVR-0089
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0092
-//! @SYMTestCaseDesc Authenticate12_NoUserIdentified
-//! @SYMREQ REQ4966 4977 4978 4979 4980 4981 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0092
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0092b
-END_TESTCASE SEC-AUT-AUTHSVR-0092
-
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0093
-//! @SYMTestCaseDesc An authclient successfully authenticates where the user specifies the auth method
-//!                  given that no preferred method exists
-//! 		     (Authenticate13_UserSelectsMethod)
-//! @SYMREQ 4984 4977 4979 4980 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have 3 plugins that support default data and are active, all trained with the default identity
-//!                  and a second identity
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 0 seconds and an auth expression
-//!                  of (2nd OR 3rd plugin). Supply correct input for the 3rd plugin, but wrong info for the 2nd plugin
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 300 seconds and an auth
-//!                  expression of (Default AND 2nd plugin). Supply wrong input for the 2nd plugin and the default plugin
-//! @SYMTestExpectedResults First, the 2nd identity is successfully authenticated.
-//!                  During the second auth call, the input data is not read since the auth step is waived, since the 
-//!                  freshness period has not elapsed.
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0093
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0093b
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0093c
-END_TESTCASE SEC-AUT-AUTHSVR-0093
-
-
-
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0036
-//! @SYMTestCaseDesc Successful attempt to remove a specified identity
-//! 		     (RemoveIdentity1_Normal)
-//! @SYMREQ 4964 4965 4966 4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function. Use the a valid input so that the
-//!			identity that was recently registered is returned following the Authentication, then removed
-//! @SYMTestExpectedResults The registration is successful, the authentication is successful, 
-//!			as well as the removeIdentity call.
-//!			The plugin status for both plugins is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0036
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0101a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0101b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0101b
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0101d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0101b
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0036
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0037
-//! @SYMTestCaseDesc Attempt to remove a specified identity when only one identity exists
-//! 		     (RemoveIdentity2_OneIdentity)
-//! @SYMREQ 4964 4965 4966 4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Authenticate then call the removeIdentity() function. Use an input that corresponds to what
-//!			was used to register the default identity. Therefore the default identity is returned 
-//!			following the Authentication, then attempt to remove it
-//! @SYMTestExpectedResults The authentication is successful, but the removeIdentity call fails
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0037
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0102a
-RUN_TEST_STEP !Error=-10811 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0102b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0102c
-END_TESTCASE SEC-AUT-AUTHSVR-0037
-
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0038
-//! @SYMTestCaseDesc Attempt to remove a non-existent identity
-//! 		     (RemoveIdentity3_NonExistentIdentity)
-//! @SYMREQ 4964 4965 4966 4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function.
-//!                     However, set the forgetUnknown flag to true, so that the test attempts to remove
-//!                     a non-existent identity
-//! @SYMTestExpectedResults The authentication is successful.
-//!			but the removeIdentity call fails because the identity is not found by the AuthServer
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0038
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0103a
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0103b
-RUN_TEST_STEP !Error=-10808 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0103c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0103c
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0038
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0039
-//! @SYMTestCaseDesc Attempt to remove a specified identity but the authentication fails
-//! 		     (RemoveIdentity4_AuthFailed)
-//! @SYMREQ 4964 4965 4966 4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function. Use an input that doesn't correspond
-//!			to what was used to register the 2nd identity. Therefore no identity is returned 
-//!			following the Authentication. Attempt to remove this absent identity.
-//! @SYMTestExpectedResults The authentication fails,  and the removeIdentity call fails.
-//!			because there is no such identity in the authentication server.
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//!			There's 1 identity present after the 2 removeIdentity calls
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0039
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0104a
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0104b
-RUN_TEST_STEP !Error=-10808 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0104c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0104c
-END_TESTCASE SEC-AUT-AUTHSVR-0039
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0040
-//! @SYMTestCaseDesc Attempt to remove a non-existent identity when two other identities exist
-//! 		     (RemoveIdentity5_NonExistentIdentity_TwoOthersExist)
-//! @SYMREQ 4964 4965 4966 4954 4963 5011
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Successfully register a 3rd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function. Use an input that corresponds to what
-//!			was used to register the 2nd identity. Therefore the 2nd identity is returned 
-//!			following the Authentication. Remove this second identity then attempt to remove it again
-//! @SYMTestExpectedResults The authentication is successful,  and the first removeIdentity call passes.
-//!			but the second removeIdentity call fails because an unknown identity was specified
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//!			There are 2 identities present after the 2 removeIdentity calls
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0040
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0105a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0105b
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0105c
-RUN_TEST_STEP !Error=-10808 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0105d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0105d
-END_TESTCASE SEC-AUT-AUTHSVR-0040
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0049
-//! @SYMTestCaseDesc A user successfully removes an authentication plug-in trained for their identity
-//! 		     (ForgetPlug-in1_Normal)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0049 
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0121b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0121a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0121c
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0121d
-END_TESTCASE SEC-AUT-AUTHSVR-0049
-
-// ////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0050
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in trained for their identity, but there's only a single auth method for the identity.
-//! 		     (ForgetPlug-in1_LastPlugin)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0050
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0122b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0122a
-RUN_TEST_STEP !Error=-10812 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0122c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0122a
-END_TESTCASE SEC-AUT-AUTHSVR-0050
-
-// ///
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0051
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the identity has no transient key associated with this plug-in
-//! 		     (ForgetUntrainedAuthMethod)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0051
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0123b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0123a
-RUN_TEST_STEP !Error=-10809 100      tAuthSvr        FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0123c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0123a
-END_TESTCASE SEC-AUT-AUTHSVR-0051 
-
-// ///
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0052
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the plugin does not exist
-//! 		     (ForgetUnknownPlugin)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954 4963
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0052
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0124b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0124a
-RUN_TEST_STEP !Error=-10809 100 tAuthSvr 	FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0124c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0124a
-END_TESTCASE SEC-AUT-AUTHSVR-0052
-
-// //
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0053
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the identity specified does not exist
-//! 		     (ForgetUnknownIdentity)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0053
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Error=-10803 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0125
-END_TESTCASE SEC-AUT-AUTHSVR-0053
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0054
-//! @SYMTestCaseDesc Auth preferences are set correctly.
-//! 		     (SetPreference_Success)
-//! @SYMREQ REQ4983 REQ4973 REQ4966 REQ4967 REQ4968
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0054
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0141
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	SET_PREFS 	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0141
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0141
-END_TESTCASE SEC-AUT-AUTHSVR-0054
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0055
-//! @SYMTestCaseDesc An Auth preference is set with an invalid plug-in
-//! 		     (SetPreference_UnknownPlugin)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0055
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0142
-RUN_TEST_STEP !Error=-6 100	tAuthSvr 	SET_PREFS       c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0142
-RUN_TEST_STEP !Error=-10802 100	tAuthSvr AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0142
-END_TESTCASE SEC-AUT-AUTHSVR-0055
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0143
-//! @SYMTestCaseDesc An Auth preference is set with plugin types that don't match the specified categories for which
-//!                  they were set as preferred.
-//! 		     (SetPreference_WrongCategory)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954 REQ4974
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Register an identity, training with 4 plugins, A, B, C, D
-//!                  Set the preferences Knowledge = C,  Biometric = A, Token = B
-//!                  Where C, A and B are actually Biometric, Knowledge and Knowledge types
-//! @SYMTestExpectedResults The registration is successful, but the authentication fails, since the plugins
-//!                  selected in the preferences are of the wrong type or category
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0143
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0143
-RUN_TEST_STEP !Error=-6	tAuthSvr 	SET_PREFS       c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0143
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0143
-END_TESTCASE SEC-AUT-AUTHSVR-0143
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0145
-//! @SYMTestCaseDesc Remove_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHSVR-0145
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE SEC-AUT-AUTHSVR-0145
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0146
-//! @SYMTestCaseDesc Check the information published with no identities registered.
-//! @SYMREQ REQ11228
-//! @SYMTestPriority High
-//! @SYMTestActions  Start the AuthServer and check for information published by KUidAuthServerLastAuth property
-//! @SYMTestExpectedResults No value is published
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0146
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RESULT_AVAILABILITY	c:\tauth\tAuthSvr\testdata\authsvrpolicy.ini SectionOne
-END_TESTCASE SEC-AUT-AUTHSVR-0146
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0147
-//! @SYMTestCaseDesc Check the published value on authentication failure for the first user
-//! @SYMREQ REQ11228 
-//! @SYMTestPriority High
-//! @SYMTestActions  Register an Identity but cause the authentication to fail.Check for the value published by KUidAuthServerLastAuth 
-//! @SYMTestExpectedResults No Value is published
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0147
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0156
-RUN_TEST_STEP !Result=Fail 100 tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0157
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RESULT_AVAILABILITY	c:\tauth\tAuthSvr\testdata\authsvrpolicy.ini SectionOne
-END_TESTCASE SEC-AUT-AUTHSVR-0147
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0148
-//! @SYMTestCaseDesc Check the published value on successful authentication
-//! @SYMREQ REQ11228
-//! @SYMTestPriority High
-//! @SYMTestActions  Register and Authenticate a user successfully.Check for the published KUidAuthServerLastAuth property value
-//! @SYMTestExpectedResults The authenticated user information should be available.
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0148
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0158
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0159
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RESULT_AVAILABILITY	c:\tauth\tAuthSvr\testdata\authsvrpolicy.ini SectionOne
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0159
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RESULT_AVAILABILITY	c:\tauth\tAuthSvr\testdata\authsvrpolicy.ini SectionOne
-END_TESTCASE SEC-AUT-AUTHSVR-0148
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0149
-//! @SYMTestCaseDesc Check the published value on authentication failure
-//! @SYMREQ REQ11228 
-//! @SYMTestPriority High
-//! @SYMTestActions  Register an Identity but cause the authentication to fail.Check for the value published by KUidAuthServerLastAuth 
-//! @SYMTestExpectedResults The User Information of the previously successful Identity is available.
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0149
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0156
-RUN_TEST_STEP !Result=Fail 100 tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0157
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RESULT_AVAILABILITY	c:\tauth\tAuthSvr\testdata\authsvrpolicy.ini SectionOne
-END_TESTCASE SEC-AUT-AUTHSVR-0149
- 
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0150
-//! @SYMTestCaseDesc Notification of a change in authenticated identity on successful authentication.
-//! @SYMREQ REQ11228,REQ11229
-//! @SYMTestPriority High
-//! @SYMTestActions  Register and Authenticate an identity and check if the KUidAuthServerAuthChangeEvent Property 
-//!      	      gets published with  the new Identity .Reauthenticate the same identity again and check for the published value		      value
-//! @SYMTestExpectedResults Registration and Authentication is successful,KUidAuthServerAuthChangeEvent gets published with
-//!			    the new Identity. ReAuthentication is successful, but KUidAuthServerAuthChangeEvent is not published
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0150
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	RESULT_NOTIFICATION   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0160
-END_TESTCASE SEC-AUT-AUTHSVR-0150
-
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0151
-//! @SYMTestCaseDesc Notification of a change in authenticated identity on authentication failure.
-//! @SYMREQ REQ11228,REQ11229
-//! @SYMTestPriority High
-//! @SYMTestActions  Register an Identity but fail the Authentication.check if the KUidAuthServerAuthChangeEvent Property 
-//!      	      gets published with  the new Identity
-//! @SYMTestExpectedResults Registration is successful,Authentication fails,KUidAuthServerAuthChangeEvent is not published
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0151
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	RESULT_NOTIFICATION   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0161
-END_TESTCASE SEC-AUT-AUTHSVR-0151
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0152
-//! @SYMTestCaseDesc Notification of a change in authenticated identity upon DeAuthentication
-//! @SYMREQ REQ11228,REQ11229
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Register and Authenticate an identity and DeAuthenticate it.
-//! @SYMTestExpectedResults DeAuthentication is successful, KUidAuthServerAuthChangeEvent gets published with 0.
-//! @SYMDevelopedForRelease Intulo
-
-
-START_TESTCASE SEC-AUT-AUTHSVR-0152
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	RESULT_NOTIFICATION   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0162
-END_TESTCASE SEC-AUT-AUTHSVR-0152
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0153
-//! @SYMTestCaseDesc Update the default plugin to 11113100
-
-START_TESTCASE SEC-AUT-AUTHSVR-0153
-RUN_UTILS DeleteFile C:\private\10202be9\persists\2001ea7f.cre
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-END_TESTCASE SEC-AUT-AUTHSVR-0153
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0154
-//! @SYMTestCaseDesc API validation testing for Asynchronous Authenticate using the default plugin.
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-//! @SYMTestExpectedResults Authentication is successful.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0154
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity1
-END_TESTCASE SEC-AUT-AUTHSVR-0154
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0155
-//! @SYMTestCaseDesc API validation testing for Synchronous Authenticate using the default plugin.
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-//! @SYMTestExpectedResults Authentication is successful.
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0155
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity2
-END_TESTCASE SEC-AUT-AUTHSVR-0155
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0155
-//! @SYMTestCaseDesc API validation testing for Asynchronous Authenticate using the default plugin.
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and an invalid pin.
-//! @SYMTestExpectedResults Authentication fails.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0155
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity3
-END_TESTCASE SEC-AUT-AUTHSVR-0155
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0156
-//! @SYMTestCaseDesc API validation testing for Synchronous Authenticate using the default plugin.
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and an invalid pin.
-//! @SYMTestExpectedResults Authentication fails
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0156
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity4
-END_TESTCASE SEC-AUT-AUTHSVR-0156
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0157
-//! @SYMTestCaseDesc Set the default plugin value to a plugin with no default data                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-//! @SYMTestExpectedResults AuthServer fails to startup as the default user is not created successfully.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0157
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_UTILS DeleteFile C:\private\10202be9\persists\2001ea7f.cre
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin2
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin3
-END_TESTCASE SEC-AUT-AUTHSVR-0157
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0158
-//! @SYMTestCaseDesc Try to retrain the default user              
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call retrain on the default identity.
-//! @SYMTestExpectedResults Fails with KErrNotSupported.
-//! @SYMDevelopedForRelease Intulo
-
-
-START_TESTCASE SEC-AUT-AUTHSVR-0158
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity2
-RUN_TEST_STEP !Error=-5  100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin4
-END_TESTCASE SEC-AUT-AUTHSVR-0158
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0159
-//! @SYMTestCaseDesc Try to remove the default user                
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and authenticate successfully using the default Id.
-//! 			   Try to remove the default identity.
-//! @SYMTestExpectedResults Fails with -10811 (KErrAuthServCanNotRemoveDefaultIdentity)
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0159
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity2
-RUN_TEST_STEP !Error=-10811  100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity6
-END_TESTCASE SEC-AUT-AUTHSVR-0159
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0160
-//! @SYMTestCaseDesc Call forget plugin on the default identity/default plugin pair 
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and authenticate successfully using the default Id.
-//! 			   Call forget plugin on the default Identity/ default plugin pair.
-//! @SYMTestExpectedResults Fails with -10812 (KErrAuthServCanNotRemoveLastPlugin)
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0160
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 		REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 		AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity2
-RUN_TEST_STEP !Error=-10812  100	tAuthSvr 	FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity7
-END_TESTCASE SEC-AUT-AUTHSVR-0160
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0161
-//! @SYMTestCaseDesc API validation testing for Asynchronous Authenticate using the default plugin (null alias).
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-//! @SYMTestExpectedResults Authentication is successful.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0161
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity8
-END_TESTCASE SEC-AUT-AUTHSVR-0161
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0162
-//! @SYMTestCaseDesc API validation testing for Synchronous Authenticate using the default plugin (null alias).
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-//! @SYMTestExpectedResults Authentication is successful.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0162
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity9
-END_TESTCASE SEC-AUT-AUTHSVR-0162
-
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0163
-//! @SYMTestCaseDesc API validation testing for Asynchronous Authenticate using the default plugin (null alias)..
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-/
-//! @SYMTestExpectedResults Authentication fails.
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0163
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity10
-END_TESTCASE SEC-AUT-AUTHSVR-0163
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0164
-//! @SYMTestCaseDesc API validation testing for Synchronous Authenticate using the default plugin (null alias).
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database and call Authenticate using the default plugin and default identity.
-/
-//! @SYMTestExpectedResults Authentication fails
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0164
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defidentity11
-RUN_UTILS DeleteFile C:\private\10202be9\persists\2001ea7f.cre
-END_TESTCASE SEC-AUT-AUTHSVR-0164
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0166
-//! @SYMTestCaseDesc Test authentication using an alias which is defined in terms of other aliases wherein 
-//!		     some of those aliases are inturn defined as empty string in authserver's cenrep file.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate it using an alias as described above.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthStrengthAliasNotDefined.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0166
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthTestRegister
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0166
-RUN_TEST_STEP !Error=-10816 100 tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0166
-
-END_TESTCASE SEC-AUT-AUTHSVR-0166
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0170
-//! @SYMTestCaseDesc Test authentication using an alias which is defined in terms of other aliases wherein some 
-//!		     of those aliases are inturn defined as empty quotes in authserver's cenrep file.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate it using an alias as described above.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthStrengthAliasNotDefined.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0170
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0170
-RUN_TEST_STEP !Error=-10816 100 tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0170
-
-END_TESTCASE SEC-AUT-AUTHSVR-0170
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0171
-//! @SYMTestCaseDesc Test authentication using an alias whose alias string is an invalid expression (invalid/unknown alias).
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate it using an alias as described above.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthServInvalidAliasStringExpression.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0171
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0171
-RUN_TEST_STEP !Error=-10817 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0171
-
-END_TESTCASE SEC-AUT-AUTHSVR-0171
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0172
-//! @SYMTestCaseDesc Test authentication using an alias whose alias string is an invalid expression (invalid operator).
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate it using an alias as described above.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthServInvalidAliasStringExpression.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0172
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0172
-RUN_TEST_STEP !Error=-10817 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0172
-
-END_TESTCASE SEC-AUT-AUTHSVR-0172
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0173
-//! @SYMTestCaseDesc Test synchronous mode of authentication using an alias which is defined in terms of multiple aliases.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0173
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0173
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0173
-
-END_TESTCASE SEC-AUT-AUTHSVR-0173
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0174
-//! @SYMTestCaseDesc Test asynchronous mode of authentication using an alias which is defined in terms of multiple aliases.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0174
-
-//Tests aynchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0174
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0174
-
-END_TESTCASE SEC-AUT-AUTHSVR-0174
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0175
-//! @SYMTestCaseDesc Test synchronous mode of authentication using an alias which is defined as a subset of other aliases.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0175
-
-// Tests asynchronous mode of authentication wherein some aliases are a subset of the other.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0175
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0175
-
-END_TESTCASE SEC-AUT-AUTHSVR-0175
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0176
-//! @SYMTestCaseDesc Test the auth expression evaluation .An alias which is defined as a 
-//!		     combination of other aliases and pluginId, and one of the plugin 11113103 is supplied with wrong pin.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0176
-
-// Tests asynchronous mode of authentication with complex auth expressions.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0176
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0176
-
-END_TESTCASE SEC-AUT-AUTHSVR-0176
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0177
-//! @SYMTestCaseDesc Authentication via aliases recursive definition test. Tests short circuit condition.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias which has been defined recursively.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthServInvalidAliasStringExpression.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0177
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0177
-RUN_TEST_STEP !Error=-10817 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0177
-
-END_TESTCASE SEC-AUT-AUTHSVR-0177
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0178
-//! @SYMTestCaseDesc Authentication via aliases recursive definition test. Tests short circuit condition.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias which has been defined recursively.
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthServInvalidAliasStringExpression.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0178
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0178
-RUN_TEST_STEP !Error=-10817 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0178
-
-END_TESTCASE SEC-AUT-AUTHSVR-0178
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0179
-//! @SYMTestCaseDesc Authenticate using an alias which is not specified in authserver's cenrep file.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an unknown alias.
-//! @SYMTestExpectedResults Authentication must fail with KErrUnknownAuthStrengthAlias.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0179
-
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0179
-RUN_TEST_STEP !Error=-10815 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0179
-
-END_TESTCASE SEC-AUT-AUTHSVR-0179
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0180
-//! @SYMTestCaseDesc Negative tests for authentication via aliases.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication must fail.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0180
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0180
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0180
-
-END_TESTCASE SEC-AUT-AUTHSVR-0180
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0193
-//! @SYMTestCaseDesc Test synchronous mode of authentication using combination of plugin id and alias.
-//! @SYMDEF DEF133935
-//! @SYMTestActions  Initialize the cenrep, authenticate the user.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0193
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0193
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0193
-
-END_TESTCASE SEC-AUT-AUTHSVR-0193
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0194
-//! @SYMTestCaseDesc Test synchronous mode of authentication using combination of alias and default type
-//! for knowledge.
-//! @SYMDEF DEF133935
-//! @SYMTestActions  Initialize the cenrep, set the default preference for knowledge, authenticate the user.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0194
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0194
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0194
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0194
-
-END_TESTCASE SEC-AUT-AUTHSVR-0194
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0195
-//! @SYMTestCaseDesc Test synchronous mode of authentication using combination of alias and default type
-//! for knowledge.
-//! @SYMDEF DEF133935
-//! @SYMTestActions  Initialize the cenrep, set the default preference for knowledge, authenticate the user.
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0195
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0195
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0195
-
-END_TESTCASE SEC-AUT-AUTHSVR-0195
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0196
-//! @SYMTestCaseDesc Test synchronous mode of authentication using combination of an incorrect auth
-//! type and non existent plugin id
-//! @SYMDEF DEF133935
-//! @SYMTestActions  Initialize the cenrep, set the default preference for knowledge, authenticate the user.
-//! @SYMTestExpectedResults Authentication fails as the incorrect type is assumed to be an alias name which
-//! is not present.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0196
-
-// Tests synchronous mode of authentication.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0196
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0196
-RUN_TEST_STEP !Error=-10815 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0196
-
-END_TESTCASE SEC-AUT-AUTHSVR-0196
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0181
-//! @SYMTestCaseDesc Authentication via aliases Unicode support check.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias which has been defined recursively
-//! @SYMTestExpectedResults Authentication must succeed.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0181
-
-//asynchronous mode of authentication
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2_unicode.ini Test0181
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2_unicode.ini Test0181
-
-END_TESTCASE SEC-AUT-AUTHSVR-0181
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0182
-//! @SYMTestCaseDesc Negative test for authentication via alias using unicode alias strength definition
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Register an identity and authenticate using an alias which has been defined recursively
-//! @SYMTestExpectedResults Authentication must fail with KErrAuthServInvalidAliasStringExpression.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0182
-
-//synchronous mode of authentication
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2_unicode.ini Test0182
-RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2_unicode.ini Test0182
-
-END_TESTCASE SEC-AUT-AUTHSVR-0182
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0183
-//! @SYMTestCaseDesc Authserver CenRep file validation.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Set the alias count in the cenrep file to a negative value and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication must fail with KErrArgument.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0183
-
-// the alias count in the cenrep file is set to a negative value.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0183
-RUN_TEST_STEP !Error=-6 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0183
-
-END_TESTCASE SEC-AUT-AUTHSVR-0183
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0184
-//! @SYMTestCaseDesc Authserver CenRep file validation.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Set the alias count in the cenrep file to zero and authenticate using an alias.
-//! @SYMTestExpectedResults Authentication must fail with KErrNotFound.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0184
-
-// the alias count in the cenrep file is set to a zero.
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0184
-RUN_TEST_STEP !Error=-1 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0184
-
-END_TESTCASE SEC-AUT-AUTHSVR-0184
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0185
-//! @SYMTestCaseDesc Authserver CenRep file validation.Verify that only authserver can access auth cenrep file.
-//! @SYMREQ REQ11232,REQ11234
-//! @SYMTestActions  Verify that only authserver can access auth cenrep file.
-//! @SYMTestExpectedResults Initializing cenrep must fail with KErrPermissionDenied.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-AUT-AUTHSVR-0185
-
-RUN_TEST_STEP !Result=-46	tAuthSvr	INIT_CENREP	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0184
-
-END_TESTCASE SEC-AUT-AUTHSVR-0185
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0186
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//! 				 Positive case with single knowledge-based plugin and Reset all plugins API.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Authenticate with old pin fails after reset and autheticate with new pin value passes.
-START_TESTCASE SEC-AUT-AUTHSVR-0186
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterId
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdAll
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPluginOldPin
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100OldPin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100
-END_TESTCASE SEC-AUT-AUTHSVR-0186
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0187
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//! 				 Positive case with single knowledge-based plugin and Reset of given plugin type API.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Authenticate with old pin fails after reset and autheticate with new pin value passes.
-START_TESTCASE SEC-AUT-AUTHSVR-0187
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterId
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdAllInvalidUser
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdTypeKnowledge
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPluginOldPin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-END_TESTCASE SEC-AUT-AUTHSVR-0187
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0188
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//! 				 Negative case where a single biometric-type plugin is attempted for a Reset.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Reset must fail.
-START_TESTCASE SEC-AUT-AUTHSVR-0188
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterId
-RUN_TEST_STEP !Error=-10818 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdTypeBiometric
-END_TESTCASE SEC-AUT-AUTHSVR-0188
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0189
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//!                  Repeat of SEC-AUT-AUTHSVR-0186 exercising reset by plugin id list.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Authenticate with old pin fails after reset and autheticate with new pin value passes.
-START_TESTCASE SEC-AUT-AUTHSVR-0189
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterId
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListInvalidUser
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListPinPlugin
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPluginOldPin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100OldPin
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100
-END_TESTCASE SEC-AUT-AUTHSVR-0189
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0190
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//!                  Negative case with single knowledge-based plugin that does not support Reset. 
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Authenticate with new pin value fails with new pin for the plugins that don't support reset.
-START_TESTCASE SEC-AUT-AUTHSVR-0190
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterIdLotsOfPlugins
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdAll
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetNoReTrain
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetUnsup
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginBiometric
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginToken
-END_TESTCASE SEC-AUT-AUTHSVR-0190
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0191
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//!                  Negative case where reg data is passed to a single plugin which does not support reset.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Authenticate with new pin value fails with new pin for the plugins that don't support reset.
-START_TESTCASE SEC-AUT-AUTHSVR-0191
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterIdLotsOfPlugins
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListUnsupPlugin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPluginOldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPinPlugin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100OldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPlugin11113100
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetNoReTrainOldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetNoReTrain
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetUnsupOldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginResetUnsup
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginBiometricOldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginBiometric
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginTokenOldPin
-RUN_TEST_STEP !RESULT=FAIL 100 tAuthSvr AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini AuthPluginToken
-RUN_TEST_STEP !Error=-5 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListUnsupPlugin
-END_TESTCASE SEC-AUT-AUTHSVR-0191
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0192
-//! @SYMTestCaseDesc Test of Reset Identity functionality. 
-//!                  Negative cases where invalid inputs are supplied for the reset APIs.
-//! @SYMREQ REQ11397
-//! @SYMTestExpectedResults Failure with KErrArgument.
-START_TESTCASE SEC-AUT-AUTHSVR-0192
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini RegisterId
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdAllMissingUser
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdAllInvalidUser
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdTypeInvalidUser
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListInvalidUser
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListNoPlugins
-RUN_TEST_STEP !Error=-6 100 tAuthSvr RESET_IDENTITY c:\tauth\tAuthSvr\scripts\tauthsvr2.ini ResetIdListCountMismatch
-END_TESTCASE SEC-AUT-AUTHSVR-0192
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0193
-//! @SYMTestCaseDesc Test Multithreaded Register (2 concurrent register requests). 
-//! @SYMREQ REQ4962
-//! @SYMDEF	DEF141403
-//! @SYMTestExpectedResults The first register thread completes successfully, the second thread returns KErrServerBusy
-START_TESTCASE SEC-AUT-AUTHSVR-0193
-RUN_UTILS CopyFile C:\tauth\tauthsvr\testdata\pinplugin_inactive.txt C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr MULTI_THREADED c:\tauth\tAuthSvr\scripts\tauthsvr2.ini multithreadedRegister
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-END_TESTCASE SEC-AUT-AUTHSVR-0193
-
-START_TESTCASE Remove_PinPlugin_Data
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE Remove_PinPlugin_Data
-
-
-// This is to shut down the auth server
-DELAY 5000
Binary file authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr2_unicode.ini has changed
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr3.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1007 +0,0 @@
-# Index of key values
-#iSupportsDefaultData 	- bool that defines if the chosen plugin supports default data
-#NumIdentities		- int that defines the expected number of identities that are registered on the server
-#pluginType		- 
-#isDefaultPlugin	- No longer in use. defaultPlugin is used instead
-#defaultPlugin		- string that defines which plugin to use as the default. Used to update the AuthServer policy file
-#pluginId		- Hex string that is the uid of the Ecom implementation. In the Test0000 to Test0009, it's used as a cue, and is also the expected UserId
-#userResult		- Int that contains what the user has input on being prompted to 'identify', i.e. the PIN
-#			In cases where this is absent, then we're expecting the 'data' returned to be the same as the pluginId value (cueValue)
-#userId			- String that contains the expected Id
-
-#plugin1Id		- Hex string that is the uid of the Ecom implementation
-#			  	In the RetrainPlugin steps, this is the plugin that is to be trained.
-#plugin1Status		- Int that specifies the expected status of the above plugin 
-				(0, 64, 128 -EAuthUntrained, EAuthTrained, EAuthFullyTrained)
-#Pin11113100Default	- bool that defines whether the plugins support default data. Also Pin11113101Default and Pin11113102Default
-#Pin11113100Active	- bool that defines whether the plugin is active or not. Also Pin11113101Active, Pin11113102Active
-#Pin11113100InputId	- string that defines the input to the plugin. Else, the default is used. (in Identify function)
-#Pin11113100InputTrain	- string that defines the input to the plugin. Else, the default is used. (in Train function)
-#finalUserName 		- string that defines the new name (description or identitystring) of a given identity
-retryRemove		- bool that defines whether the attempt to remove an identity is tried again in the same test step
-freshness		- Int that defines the number of seconds(timeout) within which a cached identity is returned (
-				(Authentication is skipped)
-[Test0000]
-NumIdentities = 3
-pluginId = 11113000
-
-[Test0001]
-iSupportsDefaultData = true
-NumIdentities = 3
-pluginType = EAuthKnowledge
-#isDefaultPlugin = true
-defaultPlugin = PIN
-pluginId = 11113100
-#userResult = 0011
-#userId = 597430
-#userResult = 2533
-#userId = 0873948
-userResult = 5555
-userId = 82383
-
-[Test0002]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthKnowledge
-#isDefaultPlugin = false
-#defaultPlugin = PIN
-
-[Test0003]
-iSupportsDefaultData = true
-NumIdentities = 0
-pluginType = EAuthBiometric
-isDefaultPlugin = true
-defaultPlugin = FINGER
-
-
-[Test0004]
-iSupportsDefaultData = false
-NumIdentities = 0
-pluginType = EAuthKnowledge
-#isDefaultPlugin = true
-defaultPlugin = PIN
-
-
-[Test0021a]
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin11113100InputTrain = 2035
-Pin11113100Default = true
-Pin11113100Active = true
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-[Test0021b]
-plugin1Id = 11113100
-Pin11113100InputId = 2035
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-
-[Test0021c]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 128
-
-#==========================================================
-#Next section is what is according to the test spec
-[Test0022a]
-#iSupportsDefaultData = true
-#pluginType = EAuthKnowledge
-#defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-Pin11113100InputId = 5110
-Pin11113101InputId = 5101
-Pin11113102InputId = 5102
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 5101
-Pin11113102InputTrain = 5102
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-finalUserName = NewNameOfId2
-
-
-[Test0022b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-freshness = 0
-
-[Test0022c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0022-works]
-iSupportsDefaultData = true
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthTrained
-plugin1Status = 64
-#Value below should be used.
-#plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113101InputId = 5101
-Pin11113102InputId = 5102
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 5101
-Pin11113102InputTrain = 5102
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-finalUserName = NewNameOfId2
-
-[Test0022-Unused]
-iSupportsDefaultData = true
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthTrained
-plugin1Status = 64
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-#==========================================================
-[Test0023a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0023b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = false
-Pin11113101Default = false
-Pin11113102Default = false
-Pin11113100Active = false
-Pin11113101Active = false
-Pin11113102Active = false
-
-
-[Test0023c]
-NumIdentities = 1
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0023d]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0023e]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthUnTrained
-plugin1Status = 128
-
-[Test0023f]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-#==========================================================
-[Test0024a]
-#This test expects the presence of plugin 10274104, else i'll need to supply the 3 properties for 11113101, input being 5101
-
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = true
-Pin11113101Active = true
-finalUserName = NewNameOfId2
-
-[Test0024b]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113101Default = true
-Pin11113102Default = true
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0024c]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0024d]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-#==========================================================
-[Test0025a]
-NumIdentities = 1
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025b]
-NumIdentities = 1
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025c]
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025d]
-NumIdentities = 2
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0025e]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0025f]
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025g]
-plugin1Id = 11113101
-Pin11113101InputTrain = 5112
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0025h]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-[Test0025i]
-plugin1Id = 11113101
-Pin11113101InputId = 5112
-Pin11113101Default = false
-Pin11113101Active = true
-freshness = 0
-
-#=========================================
-[Test0026a]
-NumIdentities = 1
-#plugin1Id = 11113100
-#EAuthTrained
-#plugin1Status = 64
-Pin11113100InputTrain = 5110
-Pin11113101InputTrain = Quit
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = true
-
-[Test0026b]
-plugin1Id = 11113101
-Pin11113101InputId = 5110
-Pin11113101Default = false
-Pin11113101Active = true
-freshness = 0
-
-#=========================================
-[Test0027a]
-#Requires the presence of only 3 plugins.
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-#Pin11113100InputId = 0000
-Pin11113100InputTrain = 0000
-Pin11113100Default = true
-Pin11113100Active = true 
-#Pin11113101InputId = 0000
-Pin11113101InputTrain = 0000
-Pin11113101Default = true
-Pin11113101Active = true 
-#Pin11113102InputId = 0000
-Pin11113102InputTrain = 0000
-Pin11113102Default = true
-Pin11113102Active = true 
-
-[Test0027b]
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0028a]
-#Requires the presence of only 3 plugins, or i can set the other plugins to use the 'cancel' code
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-#plugin1Id = 11113100
-#EAuthTrained
-#plugin1Status = 64
-Pin11113100InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = Cancel 
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputTrain = Cancel
-Pin11113102Default = true
-Pin11113102Active = true
-
-[Test0028b]
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0041a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0041b]
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-
-[Test0041c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0041d]
-Pin11113100InputId = 5118
-plugin1Id = 11113100
-
-[Test0042a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0042b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 51194
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-
-[Test0043a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0043b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113188
-#EAuthUnTrained
-plugin1Status = 1
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0044a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0044b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0044c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5117
-Pin11113100InputTrain = 5116
-Pin11113100Default = true
-Pin11113100Active = true 
-freshness = 0
-
-[Test0045a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0045b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 0000
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0046a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0046b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = Cancel
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0047a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-
-[Test0047b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = Quit
-Pin11113100Default = true
-Pin11113100Active = true
-
-[Test0048a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-
-[Test0048b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-
-[Test0048c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113101InputId = 5111
-Pin11113101InputTrain = 51175
-Pin11113101Default = true
-Pin11113101Active = true 
-freshness = 0
-
-[Test0061Test]
-#NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-
-[Test0061a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0061b]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0061c]
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5111
-Pin11113101Active = true
-freshness = 60
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-[Test0061d]
-plugin1Id = 11113101
-#EAuthTrained
-plugin1Status = 64
-
-[Test0061e]
-Pin11113100InputId = 0000
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5112
-Pin11113101Active = true
-freshness = 60
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0061f]
-plugin1Id = 11113101
-#EAuthFullyTrained
-plugin1Status = 128
-
-[Test0062a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Default = false
-Pin11113101Active = false
-freshness = 0
-
-[Test0062b]
-NumIdentities = 2
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0062c]
-Pin11113100InputId = 511085474
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5111
-Pin11113101Active = true
-freshness = 60
-
-[Test0062d]
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0062e]
-Pin11113100InputId = 000011883
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101InputTrain = 5112
-Pin11113101Active = true
-freshness = 60
-
-[Test0062f]
-plugin1Id = 11113101
-#EAuthUnTrained
-plugin1Status = 1
-
-[Test0101a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0101b]
-Pin11113101InputId = 5111
-plugin1Id = 11113101
-freshness = 0
-
-[Test0101c]
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-#freshness = 0
-
-[Test0101d]
-Pin11113101InputId = 5111
-plugin1Id = 11113101
-freshness = 0
-
-[Test0102b]
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 0000
-#Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-
-
-[Test0103a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0103b]
-NumIdentities = 1
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-#Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-retryRemove = true
-
-[Test0104a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0104b]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 51178
-#Pin11113100InputTrain = 51178
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-
-[Test0105a]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0105b]
-NumIdentities = 3
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputTrain = 6110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 6111
-Pin11113101Default = true
-Pin11113101Active = true 
-
-[Test0105c]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin11113100InputId = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-freshness = 0
-retryRemove = true
-
-
-[Test0121a]
-iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113101
-Pin11113100InputId = 5110
-Pin11113101InputId = 6110
-freshness = 0
-Pin11113100Default = true
-Pin11113101Active = true
-Pin11113100Active = true
-
-[Test0121b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113101Active = true
-Pin11113101InputTrain = 6110
-
-[Test0121c]
-forgetPlugin = 11113100
-
-[Test0121d]
-
-NumIdentities = 2
-plugin1Id = 11113100
-Pin11113100Active = true
-Pin11113100InputId = 5110
-freshness = 0
-
-[Test0122a]
-iSupportsDefaultData = true
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0122b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0122c]
-forgetPlugin = 11113100
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0123a]
-iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113102
-Pin11113100InputId = 5110
-Pin11113102InputId = 6220
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0123b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113102Active = true
-Pin11113102InputTrain = 6220
-Pin11113101Active = false
-
-[Test0123c]
-forgetPlugin = 11113101
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0124a]
-iSupportsDefaultData = true
-plugin1Id = 11113100 & 11113102
-Pin11113100InputId = 5110
-Pin11113102InputId = 6220
-freshness = 0
-Pin11113100Default = true
-Pin11113100Active = true
-Pin11113101Active = false
-Pin11113102Active = false
-
-[Test0124b]
-NumIdentities = 2
-Pin11113100Active = true
-Pin11113100InputTrain = 5110
-Pin11113102Active = true
-Pin11113102InputTrain = 6220
-Pin11113101Active = false
-
-[Test0124c]
-forgetPlugin = ffffffff
-Pin11113100Active = true
-Pin11113101Active = true
-Pin11113102Active = true
-
-[Test0125]
-forgetPlugin = 11113100
-forgetUnknown = true
-Pin11113100Active = true
-Pin11113100Default = true
-Pin11113101Active = true
-Pin11113102Active = true
-iSupportsDefaultData = true
-
-[Test0141]
-Pin11113100InputId = 5000
-Pin11113100InputTrain = 5000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputId = 5001
-Pin11113101InputTrain = 5001
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputId = 5002
-Pin11113102InputTrain = 5002
-Pin11113102Default = true
-Pin11113102Active = true 
-plugin1Id = B & K & T
-KnowledgePref = 11113100
-BiometricPref = 11113101
-TokenPref     = 11113102
-
-[Test0142]
-Pin11113100InputId = 5000
-Pin11113100InputTrain = 5000
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputId = 5001
-Pin11113101InputTrain = 5001
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102InputId = 5002
-Pin11113102InputTrain = 5002
-Pin11113102Default = true
-Pin11113102Active = true 
-plugin1Id = B & K & T
-KnowledgePref = 11113100
-BiometricPref = 11113101
-TokenPref     = 11119999
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr3.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,786 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Authentication Server tests...
-
-//LOAD_SUITE tAuthSvr -SharedData
-
-LOAD_SUITE tAuthSvr
-
-//Next line makes use of the new keyword that is more readable
-//LOAD_SERVER tAuthSvrServer -SharedData		
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0056
-//! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined
-//! 		     (IdentifyMultiple_AllAtOnce)
-//! @SYMREQ REQ , REQ , REQ , REQ 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Identity API
-//! @SYMTestExpectedResults Default identity is the only one listed
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0056
-
-//RUN_UTILS MakeReadWrite c:\tauth\tAuthSvr\testdata\AuthSvrPolicy.ini
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	CreateTestDb 
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FIRST_START			c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0001
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	IDENTIFY_MULTIPLE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0001
-
-END_TESTCASE SEC-AUT-AUTHSVR-0056
-
-//============================================================
-// //
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0021
-// //! @SYMTestCaseDesc Start the authServer with no identities, having a default plugin defined
-// //! 		        (RegisterIdentity1_Normal)
-// //! @SYMREQ REQ4969 4970 4971 4972 4975 4976 4977 4978
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Identity API
-// //! @SYMTestExpectedResults Default identity is the only one listed
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0021
-
-// RUN_UTILS MakeReadWrite c:\tauth\tAuthSvr\testdata\AuthSvrPolicy.ini
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !Result=Fail  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0021b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0021a
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0021b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0021c
-// END_TESTCASE SEC-AUT-AUTHSVR-0021
-
-
-//============================================================
-//
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0022
-// //! @SYMTestCaseDesc , Attempt to register a new identity, while a specific plugin inactive, the plugin should be remain untrained
-// //! 		        (RegisterIdentity2_NoActivePlugin)
-// //! @SYMREQ REQ4941 REQ4943 REQ4953 REQ4954
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Start the authServer with no identities. 
-// //!			Have a default plugin defined, which is inactive,
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //! @SYMTestExpectedResults Specific plugin is untrained
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0022
-
-// RUN_UTILS MakeReadWrite c:\tauth\tAuthSvr\testdata\AuthSvrPolicy.ini
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !RESULT=-2 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0022b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0022a
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0022b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0022c
-
-// // END_TESTCASE SEC-AUT-AUTHSVR-0022
- 
-
-//============================================================
-// ////
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0023
-// //! @SYMTestCaseDesc Attempt to register a new identity, while no plugins are active, then one is activated.
-// //! 		        (RegisterIdentity3_PluginActivatedLater
-// //! @SYMREQ REQ4954 REQ4960 REQ4962 REQ4968 REQ4957
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //! @SYMTestExpectedResults Default plugin is untrained, then fully trained after the 2nd try
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0023
-
-// //RUN_UTILS MakeReadWrite c:\tauth\tAuthSvr\testdata\AuthSvrPolicy.ini
-RUN_UTILS MKDIR C:\testplugin_active\
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023a
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023b
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023c
-// RUN_TEST_STEP_RESULT 0  100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP !RESULT=-2  100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023d
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023f
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0023e
-
-// END_TESTCASE SEC-AUT-AUTHSVR-0023
-
-
-//============================================================
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0024
-//! @SYMTestCaseDesc Attempt to register a new identity, but the transient key obtained from one of auth Plugin is non-unique.
-//! 		     (RegisterIdentity4_NonUniqueTransientkey)
-//! @SYMREQ REQ4953 REQ4954 REQ4955 REQ4957 REQ4958
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the same 'Entered-Pin' as for the default identity.
-//! @SYMTestExpectedResults KErrAuthServPluginCancelled is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0024
-
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0024b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0024a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0024b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0024c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0024d
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0024 
-
-//============================================================
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0025
-//! @SYMTestCaseDesc Attempt to register a new identity, but a plugin returns the cancellation code
-//! 		     (RegisterIdentity5_PluginCancel)
-//! @SYMREQ REQ4954 REQ4955 REQ4958 REQ4968 REQ4970 4971 4972
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the 'Cancel' code as the PIN input
-//! @SYMTestExpectedResults KErrAuthServPluginCancelled is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0025
-
-
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025e
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025f
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025g
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025d
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025h
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0025i
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0025
-
-
-//============================================================
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0026
-//! @SYMTestCaseDesc Attempt to register a new identity, but a plugin returns the 'quit' code
-//! 		     (RegisterIdentity6_PluginExit)
-//! @SYMREQ REQ4954 REQ4955 REQ4958 REQ4968 REQ4970 4971 4972
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the 'Quit' code as the PIN input
-//! @SYMTestExpectedResults KErrAuthServPluginQuit is received, then the plugin is showed as 
-//!				partially trained, not fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0026
-
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0026a
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0026b
-END_TESTCASE SEC-AUT-AUTHSVR-0026
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0027
-//! @SYMTestCaseDesc Attempt to register a new identity, but the authserver cannot uniquely resolve the identity with any of the supplied plugins
-//! 		     (RegisterIdentity7_NonUniqueIdentity_Retrain)
-//! @SYMREQ REQ4953 REQ4954 4955 4956 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and two others which are active
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the '0000' code as the PIN input
-//! @SYMTestExpectedResults The second identity is not registered. All the plugins are still 
-//!				fully trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0027
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0027a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0027b
-END_TESTCASE SEC-AUT-AUTHSVR-0027
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0028
-//! @SYMTestCaseDesc Attempt to register a new identity, but the training for the 2 active plugins is cancelled
-//! 		     (RegisterIdentity8_NonUniqueIdentity_AllPluginsCancelled)
-//! @SYMREQ REQ4953 REQ4954 4955 4956
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is inactive, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Try to register a 2nd identity while using the 'Cancel' code as the PIN input for all 3 plugins
-//! @SYMTestExpectedResults The 2nd identity is not registered then the 3 plugins are showed as fully trained
-//!			       
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0028
-
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0028a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0028b
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0028
-
-
-////
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0041
-// //! @SYMTestCaseDesc Successful attempt at retraining a specified plugin
-// //! 		        (RetrainPlug-in1_Normal)
-// //! @SYMREQ REQ4953 REQ4954 4955 4956
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //!			Successfully register a 2nd identity while using a specified PIN input
-// //!			Authenticate then call the Train() function. Use the same PIN input so that the identity trained is one
-// //!			that has been previously trained. The plugin status is then checked
-// //! @SYMTestExpectedResults The authentication, registration and retrain are successful. The plugin status is 
-// //!			fully trained, then fully trained again
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0041
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0041a
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0041b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0041c
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0041d
-// END_TESTCASE SEC-AUT-AUTHSVR-0041
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0042
-//! @SYMTestCaseDesc Attempt at retraining a specified plugin, but authentication fails
-//! 		     (RetrainPlug-in2_AuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4952
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that has not been used before 
-//!			so that no identity is returned as having that PIN. 
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain is unsuccessful. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0042 
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0042a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0042b
-END_TESTCASE SEC-AUT-AUTHSVR-0042
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0043
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but the plugin is unknown
-//! 		     (RetrainPlug-in3_UnknownPlugin)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4952
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that has not been used before 
-//!			so that no identity is returned as having that PIN. 
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain are unsuccessful. 
-//!			The plugin status is fully trained, then trained
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0043
-
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0043a
-//RUN_TEST_STEP_RESULT 106 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0043b
-END_TESTCASE SEC-AUT-AUTHSVR-0043
-
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0044
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but the 2nd authentication fails
-//! 		     (RetrainPlug-in4_2ndAuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978 4952
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that was used before so that the 
-//!			2nd identity is returned. A new PIN is now associated with the identity and that plugin
-//!			Attempt the authentication again, but using a wrong PIN. 
-//! @SYMTestExpectedResults The registration is successful, The first 'authenticate' and 'train' calls succeed. 
-//!			The 2nd authentication fails, and so the 2nd call to train is unsuccessful. 
-//!			The plugin status is fully trained, all three times that it is checked
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0044
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0044a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0044b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0044c
-END_TESTCASE SEC-AUT-AUTHSVR-0044
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0045
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a non-unique transient key is generated, prompting 
-//!			the retrain to be cancelled
-//! 		     (RetrainPlug-in5_NonUniqueTransientKey)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a PIN input that has not been used before 
-//!			so that the retrain is cancelled.
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain are unsuccessful. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0045
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0045a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0045b
-END_TESTCASE SEC-AUT-AUTHSVR-0045
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0046
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a cancellation code is entered at the 'retrain' stage
-//! 		     (RetrainPlug-in6_Cancel)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a cancellation code as the input
-//!			so that the retrain is cancelled.
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain are unsuccessful. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0046
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0046a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0046b
-END_TESTCASE SEC-AUT-AUTHSVR-0046
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0047
-//! @SYMTestCaseDesc Attempt to retrain a specified plugin, but a Quit code is entered at the 'retrain' stage
-//! 		     (RetrainPlug-in7_Quit)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function. Use the a Quit code as the input
-//!			so that the retrain is quit.
-//! @SYMTestExpectedResults The registration is successful, the authentication fails, and so the retrain are unsuccessful. 
-//!			The plugin status is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0047
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0047a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0047b
-END_TESTCASE SEC-AUT-AUTHSVR-0047
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0057
-//! @SYMTestCaseDesc Successful attempt to retrain a specified plugin, then another. 2nd Authentication required in both cases
-//! 		     (RetrainPlug-in8_2ndAuthRequired)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function on the first plugin. Use the a valid, unique input
-//!			Authtenticate then call the Train function on the second plugin. Use a valid, unique input
-//! @SYMTestExpectedResults The registration is successful, the 2nd authentication is successful in both cases, 
-//!			as well as the retrain calls.
-//!			The plugin status for both plugins is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0057
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048c
-END_TESTCASE SEC-AUT-AUTHSVR-0057
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0058
-//! @SYMTestCaseDesc Successful attempt to retrain a specified plugin, then another. 2nd Authentication required in both cases
-//! 		     (RetrainPlug-in8_2ndAuthRequired)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the Train() function on the first plugin. Use the a valid, unique input
-//!			Authtenticate then call the Train function on the second plugin. Use a valid, unique input
-//! @SYMTestExpectedResults The registration is successful, the 2nd authentication is successful in both cases, 
-//!			as well as the retrain calls.
-//!			The plugin status for both plugins is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0058
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0048c
-END_TESTCASE SEC-AUT-AUTHSVR-0058
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0061
-//! @SYMTestCaseDesc Attempt to add a new authentication method first to one then the second of the
-//!			two present identities
-//! 		     (AddAuthMethod1_BothIdentities_Normal)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input with the default plugin only
-//!			Authenticate then call the Train() function. Use an identifying input that corresponds to what
-//!			was used to register the default identity using the default plugin. Therefore the default identity
-//!			is returned following the Authentication. The training is then done for the 2nd plugin
-//!			Carry out the same process with the second identity
-//! @SYMTestExpectedResults The authentication is successful,  and the first train call passes.
-//!			but the second train call passes as well
-//!			The plugin status for the second plugin is untrained, trained, then fully trained
-//!			There are 2 identities present after the register identity step
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0061
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061Test
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061a
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061c
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061d
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061e
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0061f
-END_TESTCASE SEC-AUT-AUTHSVR-0061
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0062
-//! @SYMTestCaseDesc Attempt to add a new authentication method first to one then the second of the
-//!			two present identities. Authentication fails in both cases.
-//! 		     (AddAuthMethod2_BothIdentities_AuthFailed)
-//! @SYMREQ 4969 4970 4971 4972 4975 4976 4977 4978
-//! @SYMTestPriority Medium
-//! @SYMTestActions   Have a default plugin defined, which is active, and a second one which is inactive
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input with the default plugin only
-//!			Fail to authenticate then try to call the Train() function. Use an identifying input that does not 
-//!			corresponds to what was used to register the default identity using the default plugin. Therefore no identity
-//!			is returned following the Authentication. The training is then attempted for the 2nd plugin
-//!			Carry out the same process with the second identity
-//! @SYMTestExpectedResults The authentication is successful,  and the first train call passes.
-//!			but the second train call passes as well
-//!			The plugin status for the second plugin is untrained, trained, then fully trained
-//!			There are 2 identities present after the register identity step
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0062
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062a
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062c
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062d
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	RETRAIN_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062e
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0062f
-END_TESTCASE SEC-AUT-AUTHSVR-0062
-
-// //============================================================
-// //
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0101
-// //! @SYMTestCaseDesc Successful attempt to remove a specified identity
-// //! 		        (RemoveIdentity1_Normal)
-// //! @SYMREQ 4964 4965 4966 4954
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //!			Successfully register a 2nd identity while using a specified PIN input
-// //!			Authenticate then call the removeIdentity() function. Use the a valid input so that the
-// //!			identity that was recently registered is returned following the Authentication, then removed
-// //! @SYMTestExpectedResults The registration is successful, the authentication is successful, 
-// //!			as well as the removeIdentity call.
-// //!			The plugin status for both plugins is fully trained, then fully trained again
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0101
-RUN_UTILS MKDIR C:\testplugin_active\
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0101a
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0101b
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0101c
-// RUN_TEST_STEP !Result=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0101d
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0101c
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-// END_TESTCASE SEC-AUT-AUTHSVR-0101
-
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0102
-//! @SYMTestCaseDesc Attempt to remove a specified identity when only one identity exists
-//! 		     (RemoveIdentity2_OneIdentity)
-//! @SYMREQ 4964 4965 4966 4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Authenticate then call the removeIdentity() function. Use an input that corresponds to what
-//!			was used to register the default identity. Therefore the default identity is returned 
-//!			following the Authentication, then attempt to remove it
-//! @SYMTestExpectedResults The authentication is successful, but the removeIdentity call fails
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0102
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP !Error=-10811 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0102b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0102b
-END_TESTCASE SEC-AUT-AUTHSVR-0102
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0103
-//! @SYMTestCaseDesc Attempt to remove a specified identity when only one identity exists
-//! 		     (RemoveIdentity3_NonExistentIdentity)
-//! @SYMREQ 4964 4965 4966 4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function. Use an input that corresponds to what
-//!			was used to register the 2nd identity. Therefore the 2nd identity is returned 
-//!			following the Authentication. Remove this second identity then attempt to remove it again
-//! @SYMTestExpectedResults The authentication is successful,  and the first removeIdentity call passes.
-//!			but the second removeIdentity call fails because there's only 1 identity left
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//!			There's 1 identity present after the 2 removeIdentity calls
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0103
-RUN_UTILS MKDIR C:\testplugin_active\
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0103a
-//RUN_TEST_STEP !Error=-10811 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0103b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0103b
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-END_TESTCASE SEC-AUT-AUTHSVR-0103
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0104
-//! @SYMTestCaseDesc Attempt to remove a specified identity but the authentication fails
-//! 		     (RemoveIdentity4_AuthFailed)
-//! @SYMREQ 4964 4965 4966 4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-//!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-//!			call the Enumerate Plugins API
-//!			Successfully register a 2nd identity while using a specified PIN input
-//!			Authenticate then call the removeIdentity() function. Use an input that doesn't correspond
-//!			to what was used to register the 2nd identity. Therefore no identity is returned 
-//!			following the Authentication. Attempt to remove this absent identity.
-//! @SYMTestExpectedResults The authentication fails,  and the removeIdentity call fails.
-//!			because there is no such identity in the authentication server.
-//!			The plugin status for the specified plugin is fully trained, then fully trained again
-//!			There's 1 identity present after the 2 removeIdentity calls
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0104
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0104a
-//RUN_TEST_STEP !Error=-10808 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0104b
-//RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0104b
-END_TESTCASE SEC-AUT-AUTHSVR-0104
-
-
-// //============================================================
-// //
-// //! @SYMTestCaseID SEC-AUT-AUTHSVR-0105
-// //! @SYMTestCaseDesc Attempt to remove a specified identity when only one identity exists
-// //! 		        (RemoveIdentity5_NonExistentIdentity_TwoOthersExist)
-// //! @SYMREQ 4964 4965 4966 4954
-// //! @SYMTestPriority Medium
-// //! @SYMTestActions  Have a default plugin defined, which is active, and a second one which is active as well
-// //!			use a client that has ReadDeviceData capability to connect to the AuthServer, 
-// //!			call the Enumerate Plugins API
-// //!			Successfully register a 2nd identity while using a specified PIN input
-// //!			Successfully register a 3rd identity while using a specified PIN input
-// //!			Authenticate then call the removeIdentity() function. Use an input that corresponds to what
-// //!			was used to register the 2nd identity. Therefore the 2nd identity is returned 
-// //!			following the Authentication. Remove this second identity then attempt to remove it again
-// //! @SYMTestExpectedResults The authentication is successful,  and the first removeIdentity call passes.
-// //!			but the second removeIdentity call fails because an unknown identity was specified
-// //!			The plugin status for the specified plugin is fully trained, then fully trained again
-// //!			There are 2 identities present after the 2 removeIdentity calls
-// //! @SYMDevelopedForRelease Intulo
-// START_TESTCASE SEC-AUT-AUTHSVR-0105
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0105a
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0105b
-// RUN_TEST_STEP !Error=-10808 100	tAuthSvr 	REMOVE_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0105c
-// RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0105c
-// END_TESTCASE SEC-AUT-AUTHSVR-0105
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0121
-//! @SYMTestCaseDesc A user successfully removes an authentication plug-in trained for their identity
-//! 		     (ForgetPlug-in1_Normal)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0121
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0121b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0121a
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0121c
-RUN_TEST_STEP !RESULT=Fail 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0121d
-END_TESTCASE SEC-AUT-AUTHSVR-0121
-
-/============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0122
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in trained for their identity, but there's only a single auth method for the identity.
-//! 		     (ForgetPlug-in1_LastPlugin)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0122
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0122b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0122a
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0122c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0122a
-END_TESTCASE  SEC-AUT-AUTHSVR-0122
-/============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0123
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the identity has no transient key associated with this plug-in
-//! 		     (ForgetUntrainedAuthMethod)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0123
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0123b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0123a
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0123c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0123a
-END_TESTCASE SEC-AUT-AUTHSVR-0123
-
-/============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0124
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the plugin does not exist
-//! 		     (ForgetUnknownPlugin)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0124
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0124b
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0124a
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0124c
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0124a
-END_TESTCASE SEC-AUT-AUTHSVR-0124
-
-/============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0125
-//! @SYMTestCaseDesc A user attempts to remove an auth plug-in, but the identity specified does not exist
-//! 		     (ForgetUnknownIdentity)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0125
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=Fail 100 tAuthSvr FORGET_PLUGIN	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0125
-END_TESTCASE SEC-AUT-AUTHSVR-0125
-
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0141
-//! @SYMTestCaseDesc Auth preferences are set correctly.
-//! 		     (SetPreference_Success)
-//! @SYMREQ REQ4983 REQ4973 REQ4966 REQ4967 REQ4968
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0141
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0141
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0141
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0141
-END_TESTCASE SEC-AUT-AUTHSVR-0141
-
-//============================================================
-//
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0142
-//! @SYMTestCaseDesc An Auth preference is set with an invalid plug-in
-//! 		     (SetPreference_Success)
-//! @SYMREQ REQ4964 REQ4965 REQ4966 REQ4954
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults 
-//! @SYMDevelopedForRelease Intulo
-START_TESTCASE SEC-AUT-AUTHSVR-0142
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0142
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	SET_PREFS 		c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0142
-RUN_TEST_STEP !Error=-10802 100	tAuthSvr 	AUTHENTICATE    c:\tauth\tAuthSvr\scripts\tauthsvr3.ini Test0142
-END_TESTCASE SEC-AUT-AUTHSVR-0142
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr4.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Default Plugin negative test cases (Requires replacement of CenRep initialization files...)
-
-LOAD_SUITE tAuthSvr
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0165
-//! @SYMTestCaseDesc Start the Authserver with the Cenrep file containing a blank value for default plugin
-//!                  
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database. Try to start the authserver.
-//! @SYMTestExpectedResults Authserver start fails with KErrCorrupt (-20)
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVR-0165
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-20 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024d
-END_TESTCASE SEC-AUT-AUTHSVR-0165
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr5.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Default Plugin negative test cases (Requires replacement of CenRep initialization files...
-
-LOAD_SUITE tAuthSvr
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0166
-//! @SYMTestCaseDesc Start the Authserver with the Cenrep file containing an alias for default plugin           
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database. Try to start the authserver.
-//! @SYMTestExpectedResults Authserver start fails with KErrCorrupt (-20)
-//! @SYMDevelopedForRelease Intulo
-
-
-START_TESTCASE SEC-AUT-AUTHSVR-0166
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-20 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024d
-END_TESTCASE SEC-AUT-AUTHSVR-0166
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tAuthSvr6.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Default Plugin negative test cases (Requires replacement of CenRep initialization files...
-
-LOAD_SUITE tAuthSvr
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0165
-//! @SYMTestCaseDesc Start the Authserver with the Cenrep file containing a plugin type for default plugin           
-//! @SYMREQ REQ11230
-//! @SYMTestPriority High
-//! @SYMTestActions  Remove the Authentication database. Try to start the authserver.
-//! @SYMTestExpectedResults Authserver start fails with KErrCorrupt (-20)
-//! @SYMDevelopedForRelease Intulo
-
-
-START_TESTCASE SEC-AUT-AUTHSVR-0165
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=-20 100	tAuthSvr 	AUTHSVR_CHECK	c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0024d
-END_TESTCASE SEC-AUT-AUTHSVR-0165
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvr_performance.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-[Test0001]
-TestType = 3
-OOMTest = 2
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 128
-
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-iterationCount = 10
-
-[Test0002]
-TestType = 3
-OOMTest = 4
-Pin11113100InputId = 5110
-plugin1Id = 11113100
-iterationCount = 10
-
-[Test0003]
-TestType = 3
-OOMTest = 8
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 11113100
-#EAuthFullyTrained
-plugin1Status = 64
-#Pin11113100InputId = 5110
-Pin11113100InputTrain = 5118
-Pin11113100Default = true
-Pin11113100Active = true
-iterationCount = 10
-
-[Test0004]
-TestType = 3
-OOMTest = 2
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true
-iterationCount = 10
-
-[Test0005]
-TestType = 3
-OOMTest = 4
-plugin1Id = 11113100 & 11113101
-Pin11113100Active = true 
-Pin11113100InputId = 5110
-Pin11113101Active = true
-iterationCount = 10
-Pin11113101InputId = 5111
-freshness = 0
-iterationCount = 10
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvr_performance.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-PRINT Authentication Server Performance tests...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-RUN_UTILS CopyFile C:\tauth\tauthsvr\testdata\pinplugin_inactive.txt C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-START_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0001
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvr_performance.ini Test0001
-END_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0001
-
-START_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0002
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvr_performance.ini Test0002
-END_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0002
-
-START_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0003
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvr_performance.ini Test0003
-END_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0003
-
-START_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0004
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvr_performance.ini Test0004
-END_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0004
-
-// authenticate with 2 plugins.
-START_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0005
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvr_performance.ini Test0005
-END_TESTCASE SEC-AUT-AUTHSVR-PERFORMANCE-TEST0005
-
-RUN_UTILS DeleteFile  C:\pinplugin_inactive.txt
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvrclock.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//Script to test the secure clock implementation in Authserver.
-
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr_new
-LOAD_SUITE tAuthSvr
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0144
-//! @SYMTestCaseDesc Remove_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHSVR-0144
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE SEC-AUT-AUTHSVR-0144
-
-
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	UPDATE_SYSTIME c:\tauth\tAuthSvr\scripts\tauthsvr2.ini time
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0193
-//! @SYMTestCaseDesc Test the secure clock implementation in AuthServer.A user is first authenticated successfully
-//!			  	 after which the system time is set ahead by 600 seconds. Authentication is called again using a
-//!			   	a wrong pin and a freshness period of 300. Since a cached identity is returned ,authentication is 
-//!			   	successful. 
-//! @SYMTestPriority Medium
-//! @SYMTestActions Check if a cached identity is being returned
-//! @SYMTestExpectedResults Authentication is successful
-//! @SYMDevelopedForRelease Intulo 
- 
-START_TESTCASE SEC-AUT-AUTHSVR-0193
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0197
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0198
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	UPDATE_SYSTIME c:\tauth\tAuthSvr\scripts\tauthsvr2.ini time1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0199
-END_TESTCASE SEC-AUT-AUTHSVR-0193
-
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0194
-//! @SYMTestCaseDesc Test the secure clock implementation in AuthServer.A user is first authenticated successfully
-//!			   	after which a 5 second delay is used to advance the secure clock.The system clock is 
-//!			   	now set back by 600 seconds and an authentication is called with a wrong pin and freshess 5. Since 
-//!			  	 reauthentication occurs ,authentication fails
-//! @SYMTestPriority Medium
-//! @SYMTestActions Check if a cached identity is not being returned
-//! @SYMTestExpectedResults Authentication fails 
-//! @SYMDevelopedForRelease Intulo 
-
-START_TESTCASE SEC-AUT-AUTHSVR-0194
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100		tAuthSvr	REG_IDENTITY   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0200
-RUN_TEST_STEP_RESULT 0 100		tAuthSvr	AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0201
-DELAY 5000
-RUN_TEST_STEP_RESULT 0 100		tAuthSvr	UPDATE_SYSTIME c:\tauth\tAuthSvr\scripts\tauthsvr2.ini time2
-RUN_TEST_STEP !Result=Fail  100	tAuthSvr	AUTHENTICATE   c:\tauth\tAuthSvr\scripts\tauthsvr2.ini Test0202
-END_TESTCASE SEC-AUT-AUTHSVR-0194
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvroom.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-# Index of key values
-#TestType ---- OOM tests can be run on either the client side or the server side
-#	      For Client side      -- TestType = 1		
-#	      For Server side 	   -- TestType = 2
-#	      For Performane tests -- TestType = 3		
-#OOMTest ---- The OOM Test which has to be run. This is the index of the test in  CAuthSvrOom::doTestL()
-#
-
-
-[oom1]
-TestType = 2
-OOMTest = 3
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-DisplayMessage = " Display String 1 "
-
-[oom2]
-TestType = 2
-OOMTest = 2
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-Pin11113103Active = false
-Pin11113102Active = false
-Pin11113101Active = false
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-[oom3]
-TestType = 1
-OOMTest = 3
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-
-
-
-[oom4]
-TestType = 1
-OOMTest = 2
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin200032E5InputTrain = 2035
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-Pin11113103Active = false
-Pin11113102Active = false
-Pin11113101Active = false
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-[oom5]
-TestType = 2
-OOMTest = 4
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-
-
-[oom6]
-TestType = 1
-OOMTest = 4
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-
-[oom7]
-TestType = 2
-OOMTest = 5
-KnowledgePref = 200032E5
-
-[oom8]
-TestType = 2
-OOMTest = 6
-plugin1Id = 200032E5
-
-
-[oom9]
-TestType = 2
-OOMTest = 7
-plugin1Id = 200032E5
-
-[oom10]
-TestType = 2
-OOMTest = 8
-plugin1Id = 10274104
-
-
-[oom11]
-TestType = 2
-OOMTest = 9
-
-[oom12]
-TestType = 2
-OOMTest = 10
-
-[oom13]
-TestType = 2
-OOMTest = 11
-
-[oom14]
-TestType = 2
-OOMTest = 12
-
-[oom15]
-TestType = 2
-OOMTest = 13
-
-[oom16]
-TestType = 2
-OOMTest = 14
-
-[oom17]
-TestType = 2
-OOMTest = 15
-
-[oom18]
-TestType = 2
-OOMTest = 16
-plugin1Id = 200032E5
-
-[Test1]
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin11113100InputTrain = 2035
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-Pin11113103Active = false
-Pin11113102Active = false
-Pin11113101Active = false
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
-
-[Test2]
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-DisplayMessage = " Display String 1 "
-
-
-[Test3]
-plugin1Id = 200032E5
-Pin200032E5InputId = 2035
-freshness = 0
-Pin11113100Default = false
-Pin11113100Active = false
-DisplayMessage = " Display String 1 "
-
-[Test4]
-#iSupportsDefaultData = false
-pluginType = EAuthKnowledge
-defaultPlugin = PIN
-Pin200032E5InputTrain = 2035
-Pin11113100Default = false
-Pin11113100Active = false
-Pin11113104Active = false
-Pin11113103Active = false
-Pin11113102Active = false
-Pin11113101Active = false
-#initUserName = SOMENAME
-finalUserName = NewNameOfId2
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tauthsvroom.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-//AuthServer OOM Tests
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-LOAD_SUITE tAuthSvr_new
-LOAD_SUITE tAuthSvr
-
-
-//Delete plugin dat files and initialize default plugin value
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-
-
-
-//SEE tauthsvroom.ini for instructions on adding OOM tests.
-
-
-
-
-
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHSVROOM-0001
-//! @SYMTestCaseDesc Authserver OOM tests for all published api's
-//! @SYMREQ REQ4969 4970 4971 4972 4975 4976 4977 4978 4963 4985 5008 5009
-//! @SYMTestPriority Medium
-//! @SYMTestActions 
-//! @SYMTestExpectedResults All tests pass successfully
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-AUT-AUTHSVROOM-0001
-
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-//Synchronous Authenticate API check -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom1
-
-
-//Register API check -- SERVER SIDE
-RUN_UTILS CopyFile C:\tauth\tauthsvr\testdata\pinplugin_inactive.txt C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom2
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-
-
-//Synchronous Authenticate API check -- CLIENT SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom3
-
-
-//Register API check -- CLIENT SIDE
-RUN_UTILS CopyFile C:\tauth\tauthsvr\testdata\pinplugin_inactive.txt C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom4
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-
-
-//Asynchronous Authenticate API check -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom5
-
-
-//Asynchronous Authenticate API check -- CLIENT SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom6
-
-
-//Set preffered plugin type check -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom7
-
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test4
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test3
-
-//Check Remove Identity API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom8
-
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !RESULT=FAIL 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test4
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test3
-
-
-//Check Retrain Plugin API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom10
-
-//Check List PluginsL API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom11
-
-
-//Check List Active Plugins API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom12
-
-
-//Check List Plugins of type API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom13
-
-
-//Check List Plugins With Training status API -- SERVER SIDE
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom14
-
-
-//Check List Authentication aliases API
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom15
-
-
-//Delete plugin dat files and initialize default plugin value
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-
-//Expected result is fail because plugin count fails (tauthplugin.rsc is deleted). 
-//This identity is just used in the next few cases
-RUN_TEST_STEP !RESULT=FAIL	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test2
-
-
-
-//Check Reset Identity API (all plugins)
-
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom16
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//Expected result is fail because plugin count fails (tauthplugin.rsc is deleted). 
-//This identity is just used in the next few cases
-RUN_TEST_STEP !RESULT=FAIL	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test2
-
-
-//Check Reset Identity API (plugins of specified type)
-
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom17
-
-
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-//Expected result is fail because plugin count fails (tauthplugin.rsc is deleted). 
-//This identity is just used in the next few cases
-RUN_TEST_STEP !RESULT=FAIL	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test1
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	AUTHENTICATE	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini Test2
-
-
-//Check Reset Identity API (specified plugins)
-RUN_TEST_STEP_RESULT 0 1000	tAuthSvr 	OOM_TEST	c:\tauth\tAuthSvr\scripts\tauthsvroom.ini oom18
-
-
-
-
-END_TESTCASE SEC-AUT-AUTHSVROOM-0001
-
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tclientsidsupport.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-[Test0001]
-NumIdentities = 2
-plugin1Id = 11113100
-plugin1Status = 128
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true
-
-[Test0002]
-NumIdentities = 2
-clientSid = 2EDB49CA
-clientSpecificKey = true
-withString = false
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-PinInputTrain = 5118
-PinInputIdAfterRetrain = 5118
-
-[Test0003]
-NumIdentities = 2
-clientSid = 0
-callingAppSid = 10204F0D
-clientSpecificKey = true
-withString = false
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-PinInputTrain = 5118
-PinInputIdAfterRetrain = 5118
-
-[Test0004]
-NumIdentities = 2
-clientSid = 10204F0D
-clientSpecificKey = true
-withString = false
-plugin1Id = 11113100
-Pin11113100InputId = 5110
-PinInputTrain = 5118
-PinInputIdAfterRetrain = 5118
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tclientsidsupport.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,195 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Client Sid support tests...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-// Prepare a clone of TAuthSvr without ReadUserData capability.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 108b0 tAuthSvr1.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-LOAD_SUITE tAuthSvr1
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-////
-//! @SYMTestCaseID SEC-AUT-CLIENTSIDSUPPORT-0001
-//! @SYMTestCaseDesc 		When a client Sid is non-zero, the same must be used to generate the protection key 
-//!				of an identity.
-//! @SYMREQ 			REQ11236
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		Have a default plugin defined, which is active, and a second one which is active as well
-//!				use a client that has ReadUserData capability to connect to the AuthServer.
-//! 
-//!				Successfully register a 2nd identity while using a specified PIN input
-//!				Authenticate using the same PIN input so that the identity to be trained is one
-//!				that has been previously trained.Store the Identity obtained as a result of authentication.
-//! 
-//!				Then call the Train() function, giving a different input. Attempt to authenticate,
-//!				giving the new input.Store the identity obtained as a result of authentication.
-//!			
-//!				Generate a protection key using the key of the identity resulting from the first 
-//!				authentication with the client sid and compare with the identity key obtained from 
-//!				second authentication.
-//!				
-//! @SYMTestExpectedResults 	The authentication, registration and retrain are successful. Protection key generated 
-//!				by the identity resulting from first authentication must be the same as the protection key 
-//!				of the identity resulting from second authentication.
-//! @SYMDevelopedForRelease 	Diran
-//!
-START_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	CLIENT_SID_CHECK	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0002
-END_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0001
-
-
-////
-//! @SYMTestCaseID SEC-AUT-CLIENTSIDSUPPORT-0002
-//! @SYMTestCaseDesc 		When a client Sid is zero, the calling application's sid must be used to generate the 
-//!				protection key of an identity.
-//! @SYMREQ 			REQ11236
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		Have a default plugin defined, which is active, and a second one which is active as well
-//!				use a client that has ReadUserData capability to connect to the AuthServer.
-//! 
-//!				Successfully register a 2nd identity while using a specified PIN input
-//!				Authenticate using the same PIN input so that the identity to be trained is one
-//!				that has been previously trained.Store the Identity obtained as a result of authentication.
-//! 
-//!				Then call the Train() function, giving a different input. Attempt to authenticate,
-//!				giving the new input.Store the identity obtained as a result of authentication.
-//!			
-//!				Generate a protection key using the key of the identity resulting from the first 
-//!				authentication with the client sid of the calling application and compare with the 
-//!				identity key obtained from second authentication.
-//!				
-//! @SYMTestExpectedResults 	The authentication, registration and retrain are successful. Protection key generated 
-//!				by the identity resulting from first authentication must be the same as the protection key 
-//!				of the identity resulting from second authentication.
-//! @SYMDevelopedForRelease 	Diran
-//!
-START_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0002
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	CLIENT_SID_CHECK	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0003
-END_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0002
-
-
-////
-//! @SYMTestCaseID SEC-AUT-CLIENTSIDSUPPORT-0003
-//! @SYMTestCaseDesc 		When a client sid is non-zero and is not the same as the calling application's SID, 
-//!				a call to authenticate method fails if the calling application doesn't 
-//!				possess ReadUserData capability. 
-//! @SYMREQ 			REQ11236
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		Have a default plugin defined, which is active, and a second one which is active as well
-//!				use a client that does not have ReadUserData capability to connect to the AuthServer.
-//! 
-//!				Successfully register a 2nd identity while using a specified PIN input
-//!				Authenticate using the same PIN input so that the identity to be trained is one
-//!				that has been previously trained.Authentication fails with KErrPermissionDenied,
-//!				since the calling appliction doesn't possess ReadUserData capability.
-//!				Authentication must fail with KErrPermissionDenied.
-//! @SYMDevelopedForRelease 	Diran
-//!
-START_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0003
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0001
-RUN_TEST_STEP !Error=-46 100	tAuthSvr1 	CLIENT_SID_CHECK	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0002
-END_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0003
-
-////
-//! @SYMTestCaseID SEC-AUT-CLIENTSIDSUPPORT-0004
-//! @SYMTestCaseDesc 		When a client sid is zero, a call to authenticate method succeeds even if the calling 
-//!				application doesn't have ReadUserData capability.
-//! @SYMREQ 			REQ11236
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		Have a default plugin defined, which is active, and a second one which is active as well
-//!				use a client that doesn't possess ReadUserData capability to connect to the AuthServer.
-//! 
-//!				Successfully register a 2nd identity while using a specified PIN input
-//!				Authenticate using the same PIN input so that the identity to be trained is one
-//!				that has been previously trained.Store the Identity obtained as a result of authentication.
-//! 
-//!				Then call the Train() function, giving a different input. Attempt to authenticate,
-//!				giving the new input.Store the identity obtained as a result of authentication.
-//!			
-//!				Generate a protection key using the key of the identity resulting from the first 
-//!				authentication with the client sid of the calling application and compare with the 
-//!				identity key obtained from second authentication.
-//!				
-//! @SYMTestExpectedResults 	The authentication, registration and retrain are successful. Protection key generated 
-//!				by the identity resulting from first authentication must be the same as the protection key 
-//!				of the identity resulting from second authentication.
-//! @SYMDevelopedForRelease 	Diran
-//!
-
-START_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0004
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr1 	CLIENT_SID_CHECK	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0003
-END_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0004
-
-////
-//! @SYMTestCaseID SEC-AUT-CLIENTSIDSUPPORT-0005
-//! @SYMTestCaseDesc 		When a client sid is non-zero and is the same as the calling application's sid,
-//!				, a call to authenticate method succeeds even if the calling application doesn't 
-//!				have ReadUserData capability.
-//! @SYMREQ 			REQ11236
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		Have a default plugin defined, which is active, and a second one which is active as well
-//!				use a client that doesn't possess ReadUserData capability to connect to the AuthServer.
-//! 
-//!				Successfully register a 2nd identity while using a specified PIN input
-//!				Authenticate using the same PIN input so that the identity to be trained is one
-//!				that has been previously trained.Store the Identity obtained as a result of authentication.
-//! 
-//!				Then call the Train() function, giving a different input. Attempt to authenticate,
-//!				giving the new input.Store the identity obtained as a result of authentication.
-//!			
-//!				Generate a protection key using the key of the identity resulting from the first 
-//!				authentication with the client sid of the calling application and compare with the 
-//!				identity key obtained from second authentication.
-//!				
-//! @SYMTestExpectedResults 	The authentication, registration and retrain are successful. Protection key generated 
-//!				by the identity resulting from first authentication must be the same as the protection key 
-//!				of the identity resulting from second authentication.
-//! @SYMDevelopedForRelease 	Diran
-//!
-
-START_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0005
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr 	REG_IDENTITY	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr1 	CLIENT_SID_CHECK	c:\tauth\tAuthSvr\scripts\tclientsidsupport.ini Test0004
-END_TESTCASE SEC-AUT-CLIENTSIDSUPPORT-0005
-
-// This is to shut down the auth server
-DELAY 5000
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,66 +0,0 @@
-[Test0001]
-srcPlugin=c:\tauth\tpostmarketplugins\testpluginsupgrade.dll
-destPlugin=c:\sys\bin\testplugins.dll
-srcRscFile=c:\tauth\tpostmarketplugins\testpluginsupgrade.rsc
-destRscFile=c:\resource\plugins\testplugins.rsc
-initialPluginCount=10
-expectedPluginCount=10
-pluginNamePostInstall=Test Plugin #1 - Upgrade
-pluginNamePostUninstall=Test Plugin #1
-
-
-[Test0002]
-srcPlugin=c:\tauth\tpostmarketplugins\tauthpluginupgrade.dll
-destPlugin=c:\sys\bin\tauthplugin.dll
-srcRscFile=c:\tauth\tpostmarketplugins\tauthpluginupgrade.rsc
-destRscFile=c:\resource\plugins\tauthplugin.rsc
-initialPluginCount=10
-expectedPluginCount=10
-pluginNamePostInstall=Pin1
-pluginNamePostUninstall=Pin1
-
-// when a new non-ROM plugin is installed with macro disabled, the plugin count remains the same,
-// before and post install.
-[Test0003]
-srcPlugin=c:\tauth\tpostmarketplugins\tpostmarketramplugin.dll
-destPlugin=c:\sys\bin\tpostmarketramplugin.dll
-srcRscFile=c:\tauth\tpostmarketplugins\tpostmarketramplugin.rsc
-destRscFile=c:\resource\plugins\tpostmarketramplugin.rsc
-initialPluginCount=10
-expectedPluginCount=10
-
-
-// The following are used when KEnablePostMarketAutheticationPlugins is set using the 
-// macro SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS specified in ROM build for hardware tests and 
-// patch data KEnablePostMarketAutheticationPlugins set to one in epoc.ini for emulator tests.
-
-// when a new non-ROM plugin is installed with macro enabled, the plugin count increments by one post install operation,
-// and decrements by one post uninstall operation.
-[Test0004]
-srcPlugin=c:\tauth\tpostmarketplugins\tpostmarketramplugin.dll
-destPlugin=c:\sys\bin\tpostmarketramplugin.dll
-srcRscFile=c:\tauth\tpostmarketplugins\tpostmarketramplugin.rsc
-destRscFile=c:\resource\plugins\tpostmarketramplugin.rsc
-initialPluginCount=10
-expectedPluginCount=11
-pluginNamePostInstall=PostMarketRAMPlugin
-
-[Test0005]
-NumIdentities = 2
-#The plugin below is for the pinAuthPlugin
-plugin1Id = 10234100
-#EAuthFullyTrained
-plugin1Status = 128
-Pin10234100InputTrain = 4110
-Pin10234100Default = true
-Pin10234100Active = true
-
-[Test0006]
-plugin1Id = 10234100
-Pin10234100InputId = 4110
-
-[Test0007]
-srcPlugin=c:\sys\bin\tpostmarketramplugin.dll
-destPlugin=c:\tauth\tpostmarketplugins\tpostmarketramplugin.dll
-srcRscFile=c:\resource\plugins\tpostmarketramplugin.rsc
-destRscFile=c:\tauth\tpostmarketplugins\tpostmarketramplugin.rsc
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,128 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-PRINT Post Market Plugin tests...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-// The following tests are run when KEnablePostMarketAutheticationPlugins is set to zero,
-// i.e post market plugins are not supported.
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0001
-//! @SYMTestCaseDesc 		Install an upgrade of a ROM plugin whose ROM_Only field is set to zero.Verify that the upgrade version is loaded.
-//!				during install and ROM version is loaded during uninstall.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before an upgrade is installed.
-//!		     		2)Install an upgrade of a ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the upgrade version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.
-//!				4)Retrieve the plugin list before the upgrade (installed in step 2) is uninstalled.
-//!				5)Uninstall the ROM upgrade.
-//!		     		6)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.		
-//! @SYMTestExpectedResults	Upgraded version of the specfied ROM plugin must be loaded during install and ROM version must be loaded after uninstall.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0001
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0001
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0002
-//! @SYMTestCaseDesc 		Install an upgrade of a ROM plugin whose ROM_Only field is set to one.Verify that the ROM version is loaded during install and uninstall.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before an upgrade is installed.
-//!		     		2)Install an upgrade of a ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.
-//!				4)Retrieve the plugin list before the upgrade (installed in step 2) is uninstalled.
-//!				5)Uninstall the ROM upgrade.
-//!		     		6)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.			
-//! @SYMTestExpectedResults	ROM version of the specfied ROM plugin must be loaded during install and uninstall.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0002
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0002
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0002
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0003
-//! @SYMTestCaseDesc 		Install and uninstall a non-ROM plugin.Verify that the plugin count remains the same pre and post install and uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before a non-ROM plugin is installed.
-//!		     		2)Install non-ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count remains the same pre and post install operation.
-//!				4)Retrieve the available plugin list before non-ROM plugin is uninstalled.
-//!				5)Uninstall the non-ROM plugin(installed in step 2).
-//!		     		6)Repeat step 1.Verify that the plugin count remains the same pre and post uninstall operation.
-//!						
-//! @SYMTestExpectedResults	Plugin count remains the same pre and post install and uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0003
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0003
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0003
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0004
-//! @SYMTestCaseDesc 		Verify authentication behaviour using a non ROM plugin post install and uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Install non-ROM plugin specified in the ini file.
-//!		     		2)Register an identity using a specified pin input.
-//!				3)Authenticate using the non ROM plugin installed in step 1.
-//!		     		4)Uninstall the plugin.
-//!				5)Authenticate again using the same plugin.
-//!				
-//!						
-//! @SYMTestExpectedResults	Authentication must fail with KErrAuthServNoSuchPlugin using the non ROM plugin 
-//!				post install and uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0004
-
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr INSTALL_PLUGIN c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0003
-DELAY 3000
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0005
-RUN_TEST_STEP !Error=-10802 100 tAuthSvr AUTHENTICATE c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0006
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr UNINSTALL_PLUGIN c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0007
-DELAY 3000
-RUN_TEST_STEP !Error=-10802 100 tAuthSvr AUTHENTICATE c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0006
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0004
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketplugin_macroenabled.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-
-PRINT Post Market Plugin tests with KEnablePostMarketAuthenticationPlugins enabled...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-
-// The following tests are run for KEnablePostMarketAutheticationPlugins set using the 
-// macro SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS specified in ROM build for hardware tests and 
-// patch data KEnablePostMarketAutheticationPlugins set to one in epoc.ini for emulator tests.
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0005
-//! @SYMTestCaseDesc 		Install an upgrade of a ROM plugin whose ROM_Only field is set to zero.Verify that the upgrade version is loaded.
-//!				during install and ROM version is loaded during uninstall.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before an upgrade is installed.
-//!		     		2)Install an upgrade of a ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the upgrade version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.
-//!				4)Retrieve the plugin list before the upgrade (installed in step 2) is uninstalled.
-//!				5)Uninstall the ROM upgrade.
-//!		     		6)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.		
-//! @SYMTestExpectedResults	Upgraded version of the specfied ROM plugin must be loaded during install and ROM version must be loaded after uninstall.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0005
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0001
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0005
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0006
-//! @SYMTestCaseDesc 		Install an upgrade of a ROM plugin whose ROM_Only field is set to one.Verify that the ROM version is loaded during install and uninstall.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before an upgrade is installed.
-//!		     		2)Install an upgrade of a ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.
-//!				4)Retrieve the plugin list before the upgrade (installed in step 2) is uninstalled.
-//!				5)Uninstall the ROM upgrade.
-//!		     		6)Repeat step 1.Verify that the plugin count matches the expected,and that 
-//!                    		the ROM version of the plugin is loaded by comparing the plugin name with 
-//!                    		the expected name specified in the ini file.			
-//! @SYMTestExpectedResults	ROM version of the specfied ROM plugin must be loaded during install and uninstall.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0006
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0002
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0006
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0007
-//! @SYMTestCaseDesc 		Install and uninstall a non-ROM plugin.Verify that the plugin count increments by one post install operation 
-//!				and decrements by one post uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before a non-ROM plugin is installed.
-//!		     		2)Install non-ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count increments by one.
-//!				4)Retrieve the available plugin list before the non-ROM plugin is uninstalled.
-//!				5)Uninstall the non-ROM plugin(installed in step 2).
-//!		     		6)Repeat step 1.Verify that the plugin count decrements by one.
-//!						
-//! @SYMTestExpectedResults	Plugin count increments by one post install and decrements by one post uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0007
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0004
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0007
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGIN-0008
-//! @SYMTestCaseDesc 		Verify authentication behaviour using a non ROM plugin post install and uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Install non-ROM plugin specified in the ini file.
-//!		     		2)Register an identity using a specified pin input.
-//!				3)Authenticate using the non ROM plugin installed in step 1.
-//!		     		4)Uninstall the plugin.
-//!				5)Authenticate again using the sme plugin.
-//!				
-//!						
-//! @SYMTestExpectedResults	Authentication must succeed using the non ROM plugin after install operation 
-//!				and must fail with KErrAuthServNoSuchPlugin post uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0008
-
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr INSTALL_PLUGIN c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0003
-DELAY 3000
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REMOVE_DBS
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr REG_IDENTITY c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0005
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr AUTHENTICATE c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0006
-RUN_TEST_STEP_RESULT 0 100 tAuthSvr UNINSTALL_PLUGIN c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0007
-DELAY 3000
-RUN_TEST_STEP !Error=-10802 100 tAuthSvr AUTHENTICATE c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0006
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGIN-0008
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketpluginenabled1_winscw.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-
-PRINT Post Market Plugin tests with KEnablePostMarketAuthenticationPlugins enabled...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-// The following test is run for KEnablePostMarketAutheticationPlugins set to a positive value greater than zero,
-// in epoc.ini.This test is executed only in winscw.
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGINENABLED1-0001
-//! @SYMTestCaseDesc 		Install and uninstall a non-ROM plugin.Verify that the plugin count increments by one post install operation 
-//!				and decrements by one post uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before a non-ROM plugin is installed.
-//!		     		2)Install non-ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count increments by one.
-//!				4)Retrieve the available plugin list before the non-ROM plugin is uninstalled.
-//!				5)Uninstall the non-ROM plugin(installed in step 2).
-//!		     		6)Repeat step 1.Verify that the plugin count decrements by one.
-//!						
-//! @SYMTestExpectedResults	Plugin count increments by one post install and decrements by one post uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGINENABLED1-0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0004
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGINENABLED1-0001
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/scripts/tpostmarketpluginenabled_winscw.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-PRINT Post Market Plugin tests with KEnablePostMarketAuthenticationPlugins enabled...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-// This test must be executed in order to set the default plugin, else authserver will never start.
-
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-
-// The following test is run for KEnablePostMarketAutheticationPlugins set to a negative value,
-// in epoc.ini.This test is executed only in winscw.
-
-LOAD_SUITE tAuthSvr
-
-////
-//! @SYMTestCaseID 		SEC-AUT-AUTHPOSTMARKETPLUGINENABLED-0001
-//! @SYMTestCaseDesc 		Install and uninstall a non-ROM plugin.Verify that the plugin count increments by one post install operation 
-//!				and decrements by one post uninstall operation.
-//! @SYMREQ 			REQ 11235
-//! @SYMTestPriority 		Medium
-//! @SYMTestActions  		1)Retrieve the available plugin list before a non-ROM plugin is installed.
-//!		     		2)Install non-ROM plugin specified in the ini file.
-//!		     		3)Repeat step 1.Verify that the plugin count increments by one.
-//!				4)Retrieve the available plugin list before the non-ROM plugin is uninstalled.
-//!				5)Uninstall the non-ROM plugin(installed in step 2).
-//!		     		6)Repeat step 1.Verify that the plugin count decrements by one.
-//!						
-//! @SYMTestExpectedResults	Plugin count increments by one post install and decrements by one post uninstall operation.
-//! @SYMDevelopedForRelease 	Diran
-
-START_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGINENABLED-0001
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr	POST_MARKET_PLUGIN	c:\tauth\tAuthSvr\scripts\tpostmarketplugin.ini Test0004
-END_TESTCASE SEC-AUT-AUTHPOSTMARKETPLUGINENABLED-0001
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/10204F10.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Registry file for the miscellaneous authServer Interface Implementation Collection
-* UIDs quick-ref
-* ECOM DLL UID:			0x10204F10 
-* ECOM interface UID:		0x102740FE
-* ECOM Implementation:		0x11113100	-PIN
-*
-*/
-
-
-/**
- @file 10204F10.rss
-*/
-
-
-#include "registryinfov2.rh"
-
-// Declares info for one implementation
-RESOURCE REGISTRY_INFO theInfo
-	{
-	// UID for the plug-in DLL; matches name of this file
-	dll_uid = 0x10204F10;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-
-	// Declare array of interface info
-	interfaces = 
-		{
-		INTERFACE_INFO
-		 	{
-		 	// UID of interface that is implemented (i.e. CAuthPluginInterface)							
-		 	interface_uid = 0x102740FE;			
-			implementations = 
-				{
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113100;
-					version_no = 1;
-					display_name = "11113100 -Pin0 Implementation of AuthServer plugin";
-					default_data = "11113100";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113101;
-					version_no = 1;
-					display_name = "11113101 -Pin1 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113101";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113102;
-					version_no = 1;
-					display_name = "11113102 -Pin2 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113102";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113103;
-					version_no = 1;
-					display_name = "11113103 -Bio3 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113103";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113104;
-					version_no = 1;
-					display_name = "11113104 - Tok1 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113104";
-					opaque_data = "";
-					rom_only=1;
-					}
-				//,
-				// Info for CTFingerprintAuthPlugin
-				//IMPLEMENTATION_INFO
-				//	{
-				//	implementation_uid = 0x102740FE;
-				//	version_no = 1;
-				//	display_name = "Fingerprint Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-				//	default_data = "text/xml||Type of data handled";
-				//	opaque_data = "test_params";
-				//	}
-				};	
-			}
-		};			
-	}		
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/10204F10_upgrade.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,106 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Dummy Registry file for the tAuthPlugin upgrade Implementation Collection
-* UIDs quick-ref
-* ECOM DLL UID:			0x10204F10 
-* ECOM interface UID:		0x102740FE
-* ECOM Implementation:		0x11113100	-PIN
-*
-*/
-
-
-
-#include "registryinfov2.rh"
-
-// Declares info for one implementation
-RESOURCE REGISTRY_INFO theInfo
-	{
-	// UID for the plug-in DLL; matches name of this file
-	dll_uid = 0x10204F10;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-
-	// Declare array of interface info
-	interfaces = 
-		{
-		INTERFACE_INFO
-		 	{
-		 	// UID of interface that is implemented (i.e. CAuthPluginInterface)							
-		 	interface_uid = 0x102740FE;			
-			implementations = 
-				{
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113100;
-					version_no = 2;
-					display_name = "11113100 -Pin0 Implementation of AuthServer plugin";
-					default_data = "11113100";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113101;
-					version_no = 2;
-					display_name = "11113101 -Pin1 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113101";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113102;
-					version_no = 2;
-					display_name = "11113102 -Pin2 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113102";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113103;
-					version_no = 2;
-					display_name = "11113103 -Bio3 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113103";
-					opaque_data = "";
-					rom_only=1;
-					},
-				// Info for the first child PIN Plugin
-				IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x11113104;
-					version_no = 2;
-					display_name = "11113104 - Tok1 Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-					default_data = "11113104";
-					opaque_data = "";
-					rom_only=1;
-					}
-				//,
-				// Info for CTFingerprintAuthPlugin
-				//IMPLEMENTATION_INFO
-				//	{
-				//	implementation_uid = 0x102740FE;
-				//	version_no = 2;
-				//	display_name = "Fingerprint Implementation||Copyright © 1997-2001 Symbian Ltd. All Rights Reserved.||";
-				//	default_data = "text/xml||Type of data handled";
-				//	opaque_data = "test_params";
-				//	}
-				};	
-			}
-		};			
-	}		
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/main.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32base.h>
-
-/** DLL Entry point */
-
-//GLDEF_C TInt E32Dll(TDllReason /*aReason*/)
-//	{
-//	return(KErrNone);
-//	}
-
-TBool E32Dll()
-	{
-	return (ETrue);
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/proxy.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32std.h>
-#include <ecom/implementationproxy.h>	// ECOM header file
-
-#include "tPinAuthPlugin.h"			// Class definition for one of the available implementations
-
-
-// Map the interface UIDs to implementation factory functions
-const TImplementationProxy ImplementationTable[] = 
-	{
-		//Next line commented because of the use of parameterised classes
-		//IMPLEMENTATION_PROXY_ENTRY(0x11113100,	CTPinAuthPlugin::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113100,	CTPinAuthPlugin11113100::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113101,	CTPinAuthPlugin11113101::NewL),		
-		IMPLEMENTATION_PROXY_ENTRY(0x11113102,	CTPinAuthPlugin11113102::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113103,	CTPinAuthPlugin11113103::NewL),
-		IMPLEMENTATION_PROXY_ENTRY(0x11113104,	CTPinAuthPlugin11113104::NewL)
-	};
-
-// Exported proxy function to resolve intstantiation methods for an ECOM plugin dll
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return ImplementationTable;
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_AuthSvrCheck.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,102 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-CTAuthSvrCheck::CTAuthSvrCheck()
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTAuthSvrCheck);
-	}
-
-TVerdict CTAuthSvrCheck::doTestStepL()
-/**
-  @return - TVerdict code
-  Override of base class pure virtual
-  
- */
-	{	
-	
-__UHEAP_MARK;		// Check for memory leaks
-
-	SetTestStepResult(EPass);
-	
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-
-	//-----------------------------------------------------------------------------------------------------
-	//Connect to the AuthServer
-	AuthServer::RAuthClient authClient1;
-	//User::LeaveIfError(authClient1.Connect());
-	
-	TInt connectVal = authClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}
-	CleanupClosePushL(authClient1);
-	
-	//Check that the default identity has been created
-	//Call the Enumerate Identity API
-	AuthServer::RIdentityIdArray idList;
-	TRAPD(res1, authClient1.IdentitiesL(idList));
-	CleanupClosePushL(idList);
-	
-	if(KErrNone != res1)
-		{
-		ERR_PRINTF2(_L("authClient::IdentitiesL() performed a Leave with code %d"), res1 );
-		}
-	else
-		{
-		//Retrieve the expected information from the ini file
-		TInt expNumIdentities;
-	
-		if(GetIntFromConfig(ConfigSection(),_L("NumIdentities"), expNumIdentities) != EFalse) // the tag 'NumIdentities' was present
-			{
-			//Do the compare
-			if (idList.Count() != expNumIdentities)
-				{
-				ERR_PRINTF3(_L("expNumIdentities differs from expected, Expected = %d, Number of Identities = %d"), expNumIdentities, idList.Count());			
-				SetTestStepResult(EFail);
-				}
-			}
-		
-		// Check the status of a plugin compared to what was expected
-		CheckSpecifiedPluginStatusConnectedL(authClient1);
-		}
-	CleanupStack::PopAndDestroy(&idList);
-	CleanupStack::PopAndDestroy(&authClient1); 
-
-__UHEAP_MARKEND;
-	return TestStepResult();	
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_EnumIdenties.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,98 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-//#include <testexecutelog.h>
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-#include "authserver/identity.h"
-
-//using namespace AuthServer;
-
-CTEnumIdentities::CTEnumIdentities(CTAuthSvrServer& aParent): iParent(aParent)
-/**
- * Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTEnumIdentities);
-	}
-
-
-TVerdict CTRegIdentity::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class pure virtual
- * 
- */
-	{	
-	INFO_PRINTF1(_L("In EnumIdentities Step"));
-	SetTestStepResult(EPass);
-	
-	//If any test step leaves or panics, the test step thread exits and no further calls are made. 
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	InitAuthServerFromFile();
-	AuthServer::RAuthMgrClient client4 = (iParent.Cl());	//This is an R class, so the copy constructor provides the actual handle
-		
-	//User::LeaveIfError(iParent.Cl().Connect());	
-	//CleanupClosePushL(iParent.Cl());
-	User::LeaveIfError(client4.Connect());	
-	CleanupClosePushL(client4);
-	
-	//Call the Enumerate Identities API
-	AuthServer::RIdentityIdArray idArray;	//Initialisation
-	iParent.Cl().IdentitiesL(idArray);
-	
-	
-	//AuthServer::CIdentity aIdentity1 = new (ELeave) AuthServer::CIdentity(AuthServer::KUnknown, 0);
-	
-	TUint32 id1 = 0;
-	AuthServer::CProtectionKey *key1 (AuthServer::CProtectionKey::NewL(8));
-		
- 	AuthServer::CIdentity *aIdentity1 = new AuthServer::CIdentity(id1, key1);
- 	TRequestStatus reqStatus = KRequestPending;	//for async calls
-	
-	TRAPD(err, iParent.Cl().RegisterIdentity(*aIdentity1, reqStatus));
-		
-	User::WaitForRequest(reqStatus); //delay
-	//Check reqStatus
-	if (reqStatus.Int() == KErrNone)	//The request completed ok
-		{					
-		INFO_PRINTF2(_L("Request completed ok. reqStatus = %d"), reqStatus.Int());
-		SetTestStepResult(EPass);
-		}
-	else 	// The request failed
-		{					
-		INFO_PRINTF2(_L("Request failed. reqStatus = %d"), reqStatus.Int());
-		SetTestStepResult(EFail);
-		}
-	
-	//CleanupStack::PopAndDestroy(&(iParent.Cl());
-	CleanupStack::PopAndDestroy(&client4);
-	
-__UHEAP_MARKEND;
-	return TestStepResult();	
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_FirstStart.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,223 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-#include "authrepository.h"
-using namespace AuthServer;
-
-CTFirstStart::CTFirstStart()
-/**
- * Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTFirstStart);
-	}
-
-TVerdict CTFirstStart::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-TVerdict CTFirstStart::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class pure virtual
- * 
- */
-	{
-	// remove trained identity 22 for these tests
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-	db->RemoveIdentityL(22);
-	CleanupStack::PopAndDestroy(db);
-	
-	//INFO_PRINTF1(_L("In FirstStart Step"));
-	
-	//User::SetJustInTime(ETrue);	//a panic will kill just the thread, not the whole emulator.
-	
-	//If any test step leaves or panics, the test step thread exits and no further calls are made. 
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	SetTestStepResult(EPass);
-
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	fileName.Append(KAuthSvrPolicyFile);
-	CIniData* policyFile=NULL;
-	policyFile=CIniData::NewL(fileName);
-	CleanupStack::PushL(policyFile);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPluginIniFile);
-	
-	CIniData* pluginFile=NULL;
-	pluginFile=CIniData::NewL(fileName);
-	CleanupStack::PushL(pluginFile);
-	//Set a default plugin using an ini file. Read this value from a file if it is specified	
-	//Set this to be the default plugin (update the policy file) if the test case specifies it (in the script's ini file).
-	TInt defaultPluginFromFile;
-	if (GetIntFromConfig(ConfigSection(),_L("defaultPlugin"), defaultPluginFromFile) != EFalse) // the tag 'defaultPlugin' was present
-		{
-				
-		//Write this value to the policy file, Which is picked up by the AuthServer (not implemented yet)
-		//writeToNamedConfig(policyFile, KDefaultPluginTag, defaultPluginFromFile);
-		SetDefaultPluginIdL(defaultPluginFromFile);
-		}
-	
-	//Set whether a plugin supports default data. Read this value from a file if it is specified
-	_LIT(KTrueText,"true");
-	_LIT(KFalseText,"false");
-	
-	TBool iSupportsDefaultDataFromFile(ETrue);	//Default case - the plugin supports default data
-	
-	TBufC<16> trueBuf1(KTrueText);
-	TBufC<16> falseBuf1(KFalseText);
-	TPtr valueToWrite = trueBuf1.Des();			//Default case - the plugin supports default data
-	
-	
-	if (GetBoolFromConfig(ConfigSection(),_L("iSupportsDefaultData"), iSupportsDefaultDataFromFile) != EFalse) // the tag 'isTrusted' was present
-		{
-		//Set the value that will be picked up by the constructor of the plugin
-		//writeToNamedConfig(pluginIniFile, KPluginIniSection, _L("iSupportsDefaultData"), iSupportsDefaultDataFromFile);		
-		if (iSupportsDefaultDataFromFile)
-			{ valueToWrite = trueBuf1.Des();	}
-		else
-			{ valueToWrite = falseBuf1.Des();	}
-			
-		writeToNamedConfig(pluginFile, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);		
-		}
-	else
-		{
-		INFO_PRINTF1(_L("The iSupportsDefaultData tag was not specified in the testexecute ini file."));
-		//Use the default value of false		
-		writeToNamedConfig(pluginFile, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		}
-		
-	//Carry out the other initialisation that is required.	
-	// TODO.
-	
-
-	//-----------------------------------------------------------------------------------------------------
-	//Connect to the AuthServer
-	AuthServer::RAuthClient authClient1;
-	//TInt connectVal = User::LeaveIfError(authClient1.Connect());
-	TInt connectVal = authClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}
-	CleanupClosePushL(authClient1);
-
-
-	//Check that the default identity has been created
-	//Call the Enumerate Identity API
-	//AuthServer::RIdentityIdList idList;
-	AuthServer::RIdentityIdArray idArray;
-	CleanupClosePushL(idArray);
-	//TInt ret =  User::LeaveIfError(authClient1.IdentitiesL(idArray));
-	TInt ret = KErrNone;
-	TRAP(ret, authClient1.IdentitiesL(idArray));
-	if (KErrNone != ret)
-		{
-		ERR_PRINTF2(_L("IdentitiesL left with errorcode: %d"), ret);
-		SetTestStepResult(EFail);
-		}
-	
-	else
-		{
-		
-		//List the present identities by their strings
-		for (TInt i = 0; i < idArray.Count(); i++)
-			{
-			HBufC* idName = 0;
-			//TRAP(ret, idName = authClient1.IdentityStringL(idArray[i]));
-			idName = authClient1.IdentityStringL(idArray[i]);
-			INFO_PRINTF3(_L("Id %d has the name %S"), i, idName);
-			delete idName; 
-			}
-		//Retrieve the expected information from the ini file
-		TInt expNumIdentities;
-		
-		if(GetIntFromConfig(ConfigSection(),_L("NumIdentities"), expNumIdentities) != EFalse) // the tag 'NumIdentities' was present
-			{
-			//Do the compare
-			if ((idArray.Count()) != expNumIdentities)
-				{
-				ERR_PRINTF2(_L("expNumIdentities differs from expected, Number of Identities = %d"), (idArray.Count()));			
-				SetTestStepResult(EFail);
-				}
-			}
-		
-		TBool expIsDefaultPlugin = EFalse;	
-		if(GetBoolFromConfig(ConfigSection(), _L("isDefaultPlugin"), expIsDefaultPlugin) != EFalse) // the tag 'isDefaultPlugin' was present
-			{
-			if(!expIsDefaultPlugin && (KErrServerTerminated != ret) )
-				{
-				//The plugin is not a default plugin as defined in the policy file, and thus the server should have been terminated
-				ERR_PRINTF2(_L("connectVal differs from expected, connectVal= %d"), connectVal);			
-				SetTestStepResult(EFail);
-				}	
-			}
-	
-		}
-			
-		
-		//Maybe check the individual identifier -not predictable though..
-	CleanupStack::PopAndDestroy(&idArray); 
-	CleanupStack::PopAndDestroy(&authClient1); 
-	
-	REComSession::FinalClose(); 	//garbage collect the last previously destroyed implementation and close the REComSession if no longer in use
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-//TVerdict CTFirstStart::doTestStepPostambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-/*	{
-	INFO_PRINTF1(_L("Test Step Postamble"));
-	return TestStepResult();
-	}
-*/
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_IdentifyMultiple.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,277 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-
-using namespace AuthServer;
-
-
-CTIdentifyMultiple::CTIdentifyMultiple()
-/**
- * Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTIdentifyMultiple);
-	}
-
-CTIdentifyMultiple::~CTIdentifyMultiple()
-/**
- * Destructor
- */
-	{
-	 TInt i = iPluginIds.Count();
-	  while (i)
-		{
-		 REComSession::DestroyedImplementation(iPluginIds[--i]);
-		}
-	}
-	
-TVerdict CTIdentifyMultiple::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	SetTestStepResult(EPass);
-	
-	//Put in an initial value for the userResult (PIN) that will be used as input during the Identify() function
-	TPtrC userResultValue;
-	if(GetStringFromConfig(ConfigSection(),_L("userResult"), userResultValue) != EFalse) // the tag 'userResult ' was present
-		{
-		TDriveUnit sysDrive (RFs::GetSystemDrive());
-		TBuf<128> authSvrPolicyFile (sysDrive.Name());
-		authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-		
-		CIniData* policyFile=NULL;
-		policyFile=CIniData::NewL(authSvrPolicyFile);
-		CleanupStack::PushL(policyFile);
-		//Update AuthSvrPolicy.ini, section: SectionOne, value:EnteredPinValue
-		writeToNamedConfig(policyFile, _L("SectionOne"), _L("EnteredPinValue"), userResultValue);
-		policyFile->WriteToFileL();
-
-		CleanupStack::PopAndDestroy(policyFile);
-
-		}
-	return TestStepResult();
-	}
-	
- 
-TVerdict CTIdentifyMultiple::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class pure virtual
- * 
- */
-	{	
-	//INFO_PRINTF1(_L("In IdentifyMultiple Step"));
-	SetTestStepResult(EPass);
-	
-	//If any test step leaves or panics, the test step thread exits and no further calls are made. 
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	//Connect to the AuthServer
-	
-	
-	AuthServer::RAuthClient authClient1;
-	TInt connectVal = authClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	CleanupClosePushL(authClient1);
-
-
-/*
-	//Call the Enumerate Identities API
-	TInt ret = KErrNone;
-	AuthServer::RIdentityIdArray idArray;	//Initialisation
-	TRAP(ret, authClient1.IdentitiesL(idArray));		// This will need to be updated if the function returns errors like KErrServerTerminated, etc 
-			
-	//Retrieve the expected information from the ini file
-	TInt expNumIdentities = 0;	
-	if(GetIntFromConfig(ConfigSection(),_L("NumIdentities"), expNumIdentities) != EFalse) // the tag 'NumIdentities' was present
-		{//Do the compare
-		if (idArray.Count() != expNumIdentities)
-			{
-			ERR_PRINTF2(_L("expNumIdentities differs from expected, Number of Identities = %d"), idArray.Count());			
-			SetTestStepResult(EFail);
-			}
-		}
-*/
-///*
-	//Run through the list of plugins and call the Identify function on each
-	//Get all implementations using  CAuthPluginInterface::ListImplementationsL()	
-	RImplInfoPtrArray infoArray;
-	// Note that a special cleanup function is required to reset and destroy
-	// all items in the array, and then close it.
-	TCleanupItem cleanup(CleanupEComArray, &infoArray);
-	CleanupStack::PushL(cleanup);
-	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid, infoArray);
-	
-	TInt numPlugins = infoArray.Count();
-	INFO_PRINTF2(_L("Number of plugins: %d"), numPlugins);	
-	for (TInt i = 0;  i < numPlugins; i++)
-		{
-		//Retrieves default data for each
-		//TPtrC8 dataType = infoArray[i] ->DataType();
-		//TDesC displayName = infoArray[i] ->DisplayName();
-		
-		TInt data = HexString2Num(infoArray[i]->DataType());
-		INFO_PRINTF2(_L("Implementation Id: 0x%x"),infoArray[i]->ImplementationUid().iUid);
-		INFO_PRINTF2(_L("Display Name: %S"),&infoArray[i]->DisplayName());
-		INFO_PRINTF2(_L("Default Data: %x"),data);
-	    //INFO_PRINTF2(_L("Rom Only: %d"),impl[i]->RomOnly());
-		//INFO_PRINTF2(_L("Rom Based: %d"),impl[i]->RomBased());
-		   
-		//....
-		}	
-	// Clean up
-	CleanupStack::PopAndDestroy(&infoArray); //infoArray, results in a call to CleanupEComArray
-//*/
-
-	
-	//Read a cue from the ini file. A specific one in each section; the expected data is the same as the cue, so this minimizes
-	// the number of times the file is read
-	TInt fileCuePluginIdValue = 0;
-	TPluginId cuePluginIdValue = 0;
-	
-	//User::SetJustInTime(ETrue);
-		
-	if(GetHexFromConfig(ConfigSection(),_L("pluginId"), fileCuePluginIdValue) != EFalse) // the tag 'pluginId' was present
-		{
-		cuePluginIdValue = fileCuePluginIdValue;
-			
-		CAuthPluginInterface* plugin = 0;
-		TEComResolverParams resolverParams;
-		TBufC8<16> pluginIdTxt;
-			  
-		pluginIdTxt.Des().Format(_L8("%x"), cuePluginIdValue);
-			  
-		resolverParams.SetDataType(pluginIdTxt);
-			  
-		TAny* tempPlugin = 0; 
-		TUid Dtor_ID_Key = TUid::Null();
-		tempPlugin = 
-		REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-		    							  	Dtor_ID_Key,
-											resolverParams,
-											KRomOnlyResolverUid);	
-		
-		plugin = reinterpret_cast<CAuthPluginInterface*>(tempPlugin);
-		CleanupStack::PushL(plugin);
-		iPluginIds.Append(Dtor_ID_Key);
-		//Call the identify function for this plugin
-		HBufC8* result1 = 0;
-
-		TRequestStatus reqStatus1 = KErrNone;
-		TIdentityId userId = 0;
-		
-		plugin->Identify(userId, KNullDesC(), result1, reqStatus1);
-		CleanupStack::PushL(result1);
-		
-		//if (reqStatus1.Int() == CAuthPluginInterface::KIdSuccess)
-		if (reqStatus1.Int() == KErrNone)
-			{
-			//Check that this is what was expected		
-			TBuf8<32> cueValue;		
-			_LIT8(KFormatValue2, "%x");
-			cueValue.Format(KFormatValue2, cuePluginIdValue);		
-			
-			TInt userIdValue = 0;
-			//Check to see if there was a value in the testExecute 'ini' file to compare with						
-			if(GetHexFromConfig(ConfigSection(),_L("userId"), userIdValue) != EFalse) // the tag 'userId' was present
-				{	
-				if(userId != userIdValue)
-					{
-					ERR_PRINTF3(_L("Id value returned differs from expected, Returned userId value= %d, Expected Id value = %d"), userId, userIdValue);
-					SetTestStepResult(EFail);				
-					}
-				}
-
-			TInt userResultValue = 0;				
-			if(GetIntFromConfig(ConfigSection(),_L("userResult"), userResultValue) != EFalse) // the tag 'userId' was present
-			
-				{
-				//Convert result1 to an integer
-				TPtr8 ptr = result1->Des();		// Convert the HBufC8 to a TPtr8				
-				TUint32 result2;
-				TLex8 input (ptr);
-				TRadix aRadix = EDecimal;
-				input.Val(result2, aRadix);
-				RDebug::Print(_L("Integer representation of result1 = %d, result1 itself = %S"), result2, result1);
-								
-				if(result2 != userResultValue)
-					{
-					_LIT(KErrMsg1, "result value returned differs from expected, Returned userId value= %d, \n Returned data value = %d. Expected data value = %d");						
-					ERR_PRINTF4(KErrMsg1, userId, result2, userResultValue);					
-					SetTestStepResult(EFail);				
-					}
-				}	
-			//In this case, we're expecting the 'data' returned to be the same as the pluginId value (cueValue)
-			else if (result1->Compare(cueValue) != 0)
-				{
-				TPtr8 ptr = result1->Des();		// Convert the HBufC8 to a TPtr8				
-				TUint32 result2;
-				TLex8 input (ptr);
-				TRadix aRadix = EDecimal;
-				input.Val(result2, aRadix);
-				
-				ERR_PRINTF3(_L("result value returned differs from expected, Returned userId value= %d, Returned data value = %d"), userId, result2);
-				SetTestStepResult(EFail);		
-				}
-			else
-				{
-				//No errors returned. The process was successful
-				SetTestStepResult(EPass);
-				}				
-			}		
-		else
-			{
-			ERR_PRINTF2(_L("An error occurred in the Identity function. RequestStatus = %d"), reqStatus1.Int());
-			SetTestStepResult(EFail);		
-			}
-		
-		CleanupStack::PopAndDestroy(result1);
-		CleanupStack::PopAndDestroy(plugin);
-		}			
-	
-	CleanupStack::PopAndDestroy(&authClient1);	// authClient1	
-	
-	REComSession::FinalClose(); 	//garbage collect the last previously destroyed implementation and close the REComSession if no longer in use
-	
- 	__UHEAP_MARKEND;
-	return TestStepResult();	
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_RegIdentity.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,407 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-#include <s32file.h>
-class CAuthActive2 : public CActive
-    {
-    public:
-    CAuthActive2(RAuthMgrClient& aClient, CAuthExpression* aExpr,
-				 TInt aFresh, TBool aClientSpecific, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iAe(aExpr),
-         iStop(aStop),
-         iFresh(aFresh),
-         iIdToStore(0), 
-         iClientSpecific(aClientSpecific)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doAuth() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-    void doDeAuth()
-        {
-        iClient.DeauthenticateL();
-        }
-	void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-		switch (iRunCount)
-		  {
-		  case 0:
-            iStatus = KRequestPending;
-			iId = 0;
-
-			iClient.AuthenticateL(*iAe, iFresh, iClientSpecific, EFalse, iId, iStatus);
-			SetActive();
-
-			break;
-		  case 1:
-			if (0 != iId)
-				{
-				iIdToStore = iId->Id();
-				delete iId;
-				}
-			iStatus = KRequestPending;
-			TRequestStatus* status;
-			status = &iStatus;				
-			User::RequestComplete(status, iErr);				
-			SetActive();
-			
-			break;
-   		  case 2:
-			iResult = iStatus == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-				{
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    TInt iFresh;
-    TIdentityId iIdToStore;
-    TBool iClientSpecific;
-    };
-
-//====================================================================================================
-
-
-class CRegActive : public CActive
-    {
-    public:
-    CRegActive(RAuthMgrClient& aClient, HBufC* aIdentityString, CIdentity*& aResult) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iIdentityString(aIdentityString),
-         iErr(KErrNone)
-        {
-        CActiveScheduler::Add(this);
-        }
-    ~CRegActive()
-    	{
-    	delete iIdentityString; 
-    	}
-    void doReg()
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iFirstTime = ETrue;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iFirstTime)
-            {
-			SetActive();
-            iStatus = KRequestPending;
-            iClient.RegisterIdentityL(iResult, *iIdentityString, iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-            iErr = iStatus.Int();
-            CActiveScheduler::Stop();
-			}
-        }
-        
-    TBool iFirstTime;
-    RAuthMgrClient& iClient;
-    CIdentity*& iResult;
-    HBufC* iIdentityString;
-    TInt iErr;
-    };
-
-//====================================================================================================
-
-CTRegIdentity::~CTRegIdentity()
-/**
-  Destructor
- */
-	{}
-
-CTRegIdentity::CTRegIdentity(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTAuthSvrCheck);
-	}
-
-TVerdict CTRegIdentity::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();	
-	return TestStepResult();
-	}
-
-TVerdict CTRegIdentity::doTestStepL()
-/**
-  @return - TVerdict code
-  Override of base class pure virtual
-  
- */
-	{	
-	SetTestStepResult(EPass);	
-__UHEAP_MARK;		// Check for memory leaks
-	SetPinPluginStateL();
-	
-	//-----------------------------------------------------------------------------------------------------	
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	// this method creates the dat file from where the test implementation
-	// of pin plugin notifier reads user input.
-	// as the pin plugin fails without this data it has been included 
-	// in the code as a default step for initializing the pin plugin
-	// data.
-	TPinValue aPinValue;
-	CreatePinPluginInputFileL(EPinPluginTraining,aPinValue);
-	
-	CActiveScheduler::Install(iActSchd);
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		RemovePinPluginFileL();
-		User::LeaveIfError(connectVal);
-		}	
-	CleanupClosePushL(authMgrClient1);
-
-	//Examine the authserver and see what's there
-	ListPluginsL(authMgrClient1);
-	
-	TBool statusAll = EFalse;
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	
-	//Check the username of the second identity and then attempt to set it.
-//	SetTestStepResult(checkAndSetUserNameL(authMgrClient1, 0));	
-	
-	// Get the identity string (if defined)
-	TPtrC identityString;
-	if (!GetStringFromConfig(ConfigSection(), _L("IdentityString"), identityString))
-		{
-		identityString.Set(_L("SOMENAME"));
-		}
-	
-	//Register an identity using an active object
-	CIdentity* identity1 = 0;
-    CRegActive* active = new (ELeave) CRegActive(authMgrClient1, identityString.AllocL(), identity1); // Ownership transferred
-    active->doReg();
-	CActiveScheduler::Start();
-	TInt err = active->iErr;
-	delete active;
-
-	SetTestStepError(err);
-
-	if(KErrAuthServPluginQuit == err)
-		{
-		INFO_PRINTF1(_L("Training was Quit."));
-		INFO_PRINTF1(_L("User entered the Quit code as trainingInput."));		
-		}
-	else if (KErrAuthServPluginCancelled == err)
-		{
-		INFO_PRINTF1(_L("Training was cancelled."));
-		INFO_PRINTF1(_L("User entered trainingInput same as identifyingInput or an existing PIN."));
-		INFO_PRINTF1(_L("Or the Cancel code."));		
-		}
-    else if ((identity1 == 0) && (KErrAuthServPluginQuit != err))
-        {
-        ERR_PRINTF1(_L("An unexpected error occurred during the registration process."));
-        SetTestStepResult(EFail);
-        }
-    else
-  		{
-  		if (0 != identity1)
-  			{
-  			INFO_PRINTF3(_L("Id = %x , KeyLength = %d\n"), identity1->Id(), identity1->Key().KeyData().Size());
-  			}	
-		//Get a list of all the present identities
-		RIdentityIdArray ids;
-		authMgrClient1.IdentitiesL(ids);
-		CleanupClosePushL(ids);
-		TInt actualNumIds = ids.Count();
-				
-		//If specified in the ini file, check the number of identities now present
-		TInt numIdsValue = 0;
-		if (GetIntFromConfig(ConfigSection(),_L("NumIdentities"), numIdsValue) != EFalse) // the tag 'numIds' was present
-			{
-			if (actualNumIds != numIdsValue)
-				{
-				ERR_PRINTF3(_L("Error. ActualNumIds = %d, numIdsExpected = %d"), actualNumIds, numIdsValue);
-				SetTestStepResult(EFail);
-				}				
-			}
-		//List the present identities by their strings
-		for (TInt i = 0; i < actualNumIds; i++)
-			{
-			HBufC* idName = 0;			
-			idName = authMgrClient1.IdentityStringL(ids[i]);
-			INFO_PRINTF3(_L("Id %d has the name %S"), i, idName);
-			delete idName; 
-			}		
-		CleanupStack::PopAndDestroy(&ids);
-		delete identity1;				
-	
-  		}//End check for when identity1 == 0, i.e 'RegisterIdentity() fails
-
-	//Examine the authserver and see what's there
-	ListPluginsL(authMgrClient1);
-	
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	if (!statusAll)
-		{
-		SetTestStepResult(EFail);
-		}
-	CleanupStack::PopAndDestroy(&authMgrClient1);	// authClient1	
-	
-	RemovePinPluginFileL();
-	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 	
-__UHEAP_MARKEND;
-	return TestStepResult();	
-	}
-
-void CTRegIdentity::ListPluginsL(AuthServer::RAuthMgrClient& aAuthMgrClient )
-	{
-	RPluginDescriptions pluginList1;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-	CleanupStack::PushL(cleanup);					
-	aAuthMgrClient.PluginsL(pluginList1);	
-	TInt numTotalPlugins = pluginList1.Count();
-	TInt i;
-	for(i = 0; i < numTotalPlugins; i++)
-		{
-		TInt presentPluginIdVal = pluginList1[i]->Id();
-		TInt presentPluginStatus = pluginList1[i]->TrainingStatus();
-		INFO_PRINTF3(_L("PluginId=%x,status =%i"), presentPluginIdVal,presentPluginStatus);
-		}
-	CleanupStack::PopAndDestroy(&pluginList1); //infoArray, results in a call to CleanupEComArray	
-	
-	}
-
-void CTRegIdentity::SetPinPluginStateL()
-	{
-	TPtrC activeStateFromFile;
-	
-	_LIT(KPinPlugin,"pinplugin_inactive.txt");
-	
-	TFileName filename;
-	filename.Copy(KPinPlugin); // convert from 8 -> 16 bit descriptor
-		
-	TDriveUnit sysDrive = RFs::GetSystemDrive();
-	TDriveName sysDriveName (sysDrive.Name());
-	filename.Insert(0,sysDriveName);
-	filename.Insert(2,_L("\\"));		
-	
-	RFileWriteStream stream;
-	RFs fs;
-	CleanupClosePushL(fs);
-	User::LeaveIfError(fs.Connect());
-	fs.Delete(filename);
-		
-	if (GetStringFromConfig(ConfigSection(),_L("Pin200032E5Active"), activeStateFromFile)) 
-		{
-		if(activeStateFromFile == _L("false"))
-			{		
-			User::LeaveIfError(stream.Create(fs, filename, EFileWrite | EFileShareExclusive));
-			stream.Close();
-			}
-		}
-	CleanupStack::PopAndDestroy(); // fs
-	}
-
-void CTRegIdentity::RemovePinPluginFileL()
-	{
-	TPtrC activeStateFromFile;
-	_LIT(KPinPlugin,"pinplugin_inactive.txt");
-	TFileName filename;
-	filename.Copy(KPinPlugin); // convert from 8 -> 16 bit descriptor
-			
-	TDriveUnit sysDrive = RFs::GetSystemDrive();
-	TDriveName sysDriveName (sysDrive.Name());
-	filename.Insert(0,sysDriveName);
-	filename.Insert(2,_L("\\"));
-		
-	RFs fs;
-	CleanupClosePushL(fs);
-	User::LeaveIfError(fs.Connect());
-	fs.Delete(filename);
-	CleanupStack::PopAndDestroy(); // fs
-	}
-
-TVerdict CTRegIdentity::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_authenticate.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,681 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-#include "authrepository.h"
-#include "testutilclient.h"
-
-using namespace AuthServer;
-
-
-class CAuthActive2 : public CActive
-    {
-    public:
-    CAuthActive2(RAuthMgrClient& aClient, CAuthExpression* aExpression,
-				 TInt aFresh, TBool aClientSpecific, TBool aAuthViaAlias, const TDesC& aClientMessage, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iAe(aExpression),
-         iStop(aStop),
-         iFresh(aFresh),
-         iIdToStore(0), 
-         iClientSpecific(aClientSpecific),
-         iAuthViaAlias(aAuthViaAlias),
-         iClientMessage(aClientMessage)
-        {
-        CActiveScheduler::Add(this);
-        }
-    
-   void doAuth() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-	void DoCancel() 
-        {
-        }
-        
-    TInt RunError(TInt aError)
-    	{
-    	iErr = aError;
-	   	CActiveScheduler::Stop();
-    	return KErrNone;
-    	}
-    	
-    void RunL() 
-        {
-        iErr = iStatus.Int();
-       
-		switch (iRunCount)
-		  {
-		  case 0:
-		  	{
-		  	iId = 0;
-			TUid clientSid = {0};
-			iClient.AuthenticateL(*iAe, iFresh, iClientSpecific, clientSid, EFalse, iClientMessage, iId, iStatus);
-		
-			SetActive();
-
-			break;
-		  	}
-            
-		  case 1:
-			if (0 != iId)
-				{
-				iIdToStore = iId->Id();
-				delete iId;
-				iId = NULL;
-				}
-			
-			iResult = iStatus == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-			
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-
-	~CAuthActive2()
-		{
-		if(iId != NULL)
-			delete iId;
-		}
-          
-   		
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    TInt iFresh;
-    TIdentityId iIdToStore;
-    TBool iClientSpecific;
-    TBool iAuthViaAlias;
-    const TDesC& iClientMessage;
-    };
-    
-//====================================================================================================    
-CTAuthenticate::CTAuthenticate(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTAuthenticate);
-	}
-
-CTAuthenticate::~CTAuthenticate()
-/**
-  Destructor
- */
-	{}
-	
-TVerdict CTAuthenticate::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-
-	return TestStepResult();
-	}
-
-TVerdict CTAuthenticate::doTestStepL()
-/**
-  @return - TVerdict code
-  Override of base class pure virtual
-  
- */
-	{	
-	SetTestStepResult(EFail);
-
-__UHEAP_MARK;		// Check for memory leaks
-	 	
-	//-----------------------------------------------------------------------------------------------------
-	TPtrC displayMessage;
-	TBool messageSent = (GetStringFromConfig(ConfigSection(),_L("DisplayMessage"), displayMessage) != EFalse);
-	TBuf<100> message(displayMessage);
-	ClientMessage(messageSent, displayMessage);
-	if(!messageSent)
-		{
-		message = KNullDesC();
-		}
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	// this method creates the dat file from where the test implementation
-	// of pin plugin notifier reads user input.
-	// as the pin plugin fails without this data it has been included 
-	// in the code as a default step for initializing the pin plugin
-	// data.
-	// the pin value generate through the reference plugin is a random 
-	// value which should be retrieved from the output file and given 
-	// as an input back for creation of the input file again.
-	// If the ini file specified a pin use that instead
-	TPtrC pin;
-	if (GetStringFromConfig(ConfigSection(),_L("pinvalue"), pin))
-		{
-		TPinValue pinValue;
-		pinValue.Copy(pin);
-		//pinValue.
-		CreatePinPluginInputFileL(EPinPluginIdentify, pinValue);
-		}
-	else
-		{
-		TPinValue pinValue = GetPinFromOutputFileL();
-		CreatePinPluginInputFileL(EPinPluginIdentify, pinValue);
-		}
-
-	CActiveScheduler::Install(iActSchd);
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient1);
-
-	//-----------------------------------------------------------------------------------------------------
-	// Authenticate by reading the user input
-	
-	//Check that alias or pluginId is quoted in the ini file
-	TPtrC exprString;
-	TBool authViaAlias = GetStringFromConfig(ConfigSection(),_L("alias"), exprString);
-	TBool authViaExpr = EFalse;
-	if(!authViaAlias)
-		{
-		authViaExpr = GetStringFromConfig(ConfigSection(),_L("plugin1Id"), exprString);
-		}
-	
-	if(	! authViaAlias && ! authViaExpr)
-		{
-		INFO_PRINTF1(_L("Neither plugin1Id nor alias was specified in the ini file"));	
-		}
-	else
-		{
-	  	TInt freshnessVal = 0;	//Default value
-	 	//Retrieve the value of 'freshness' from the ini file, but if it's absent use the default value
-	 	if(GetIntFromConfig(ConfigSection(),_L("freshness"), freshnessVal) == EFalse)
-	 		{
-	 		freshnessVal = 10;
-	 		}
-	 		
-	 	TBool clientSpecificKeyVal = EFalse;	 	
-	 	//Retrieve the value of 'clientSpecificKey' from the ini file, but if it's absent use the default value
-	 	if(GetBoolFromConfig(ConfigSection(),_L("clientSpecificKey"), clientSpecificKeyVal) == EFalse)
-	 		{
-	 		clientSpecificKeyVal = EFalse;
-	 		}
-	 	
-	 	TBool defaultpluginusage = EFalse;
-	 	if(GetBoolFromConfig(ConfigSection(),_L("defaultpluginusage"), defaultpluginusage ) == EFalse)
-	 		 {
-	 		defaultpluginusage  = EFalse;
-	 		 }
-	 		
-	 	TBool isSynchronous = EFalse;
-	 	//Retrieve the value of 'synchronous' from the ini file, but if it's absent use the default value
-	 	if(GetBoolFromConfig(ConfigSection(),_L("synchronous"), isSynchronous) != EFalse)
-	 		{
-	 		CallSyncAuthenticateL(authMgrClient1, exprString, freshnessVal, clientSpecificKeyVal, authViaAlias, defaultpluginusage, message);
-	 		}
-	 	else
-	 		{
-	 		CallAsyncAuthenticateL(authMgrClient1, exprString, freshnessVal, clientSpecificKeyVal, authViaAlias, defaultpluginusage, message);
-	 		}
-
-	  	}
-
-	CleanupStack::PopAndDestroy(&authMgrClient1);	// authClient1	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTAuthenticate::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-
-void CTAuthenticate::setLastAuthIdL(AuthServer::TIdentityId idToStore)
-/**
-  Utility function that stores the most recently authenticated identity in the GlobalDb file
-  This should only be called by the Authenticate test step  class
- */
-	{	
-	TBuf<100> bufToWrite;
-	_LIT16(KFormatLastAuth,"%u");
-	
-	bufToWrite.Format(KFormatLastAuth, idToStore); //generates:
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<128> authSvrPolicyFile (sysDrive.Name());
-	authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-
-	CIniData* policyFile=NULL;
-	TRAP_IGNORE(policyFile=CIniData::NewL(authSvrPolicyFile));
-	CleanupStack::PushL(policyFile);
-
-	TInt ret = writeToNamedConfig(policyFile, KLastAuthIdTag, bufToWrite);
-
-	policyFile->WriteToFileL();
-	CleanupStack::PopAndDestroy(policyFile);
-
-	if (KErrNotFound == ret)
-		{
-		ERR_PRINTF3(_L("Error while setting last AuthId. Tag %S not found in %S file"), KLastAuthIdTag, &authSvrPolicyFile);
-		}
-	else
-		{
-		INFO_PRINTF2(_L("Setting last AuthId was successful. Id = %S"), &bufToWrite);
-		}
-	}
-	
-void CTAuthenticate::CallSyncAuthenticateL(RAuthMgrClient& aAuthMgrClient, const TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool aIsAlias, TBool aIsDefault, const TDesC& aClientMessage )
-	{
-	CIdentity* id = 0;
-	TInt error;
-	TUid val = TUid::Uid(0);
-	
-	CAuthExpression* expr = NULL;
-	
-	if(!aIsAlias)
-		{
-		if(!aIsDefault)
-			{
-			CAuthExpression* expr = CreateAuthExprLC(aInputString);			
-			TRAP(error, id = aAuthMgrClient.AuthenticateL(*expr, aFreshness, aClientSpecificKey, val, EFalse, aClientMessage));
-			CleanupStack::PopAndDestroy(expr);
-			}
-		else
-			{
-			CAuthExpression* expr = CreateAuthExprLC(KNullDesC());			
-			TRAP(error, id = aAuthMgrClient.AuthenticateL(*expr, aFreshness, aClientSpecificKey, val, EFalse, aClientMessage));
-			CleanupStack::PopAndDestroy(expr);
-			}
-		}
-	
-	else
-		{
-		TRAPD(err,expr = aAuthMgrClient.CreateAuthExpressionL(aInputString));
-			if(err != KErrNone)
-				{
-				SetTestStepError(err);
-				return;
-				}
-				
-		CleanupStack::PushL(expr);
-		TUid clientSid = {0};
-		TRAP(error, id = aAuthMgrClient.AuthenticateL(*expr, aFreshness, aClientSpecificKey, clientSid, EFalse, KNullDesC));
-		CleanupStack::PopAndDestroy(expr);
-		}
-		
-	if(error != KErrNone)
-	 	{
-	 	ERR_PRINTF2(_L("Authentication Result error = %d"), error);	
-	 	SetTestStepError(error);
-	 	return;	
-		}
-	 	
-	//Main check
-	if (0 == id->Id())
-		{
-		ERR_PRINTF1(_L("Authentication failed. No identity returned"));
-		delete id;
-		}
-	
-	else
-		{
-		INFO_PRINTF1(_L("Authentication successful."));
-		CleanupStack::PushL(id);
-		//Store the id in the Global Db file		
-		setLastAuthIdL(id->Id());
-		CleanupStack::PopAndDestroy(id);
-		SetTestStepResult(EPass);
-		}
-	}
-	
-void CTAuthenticate::CallAsyncAuthenticateL(RAuthMgrClient& aAuthMgrClient, TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool aIsAlias, TBool aIsDefault, const TDesC& aClientMessage)
-	{
-	CAuthExpression* expr = 0;
-	if(!aIsAlias)
-		{
-		if(!aIsDefault)
-			{	
-			expr = CreateAuthExprLC(aInputString);
-			}
-		else
-			{
-			expr = CreateAuthExprLC(KNullDesC());
-			}
-		}
-	else
-		{
-		TRAPD(err,expr = aAuthMgrClient.CreateAuthExpressionL(aInputString));
-		if(err != KErrNone)
-			{
-			SetTestStepError(err);
-			return;
-			}
-		CleanupStack::PushL(expr);
-		}
-	
-	CAuthActive2 active1(aAuthMgrClient, expr, aFreshness, aClientSpecificKey, aIsAlias, aClientMessage);
-	active1.doAuth();		
-	CActiveScheduler::Start();
-		
-	if(expr)
-		{
-		CleanupStack::PopAndDestroy(expr);
-		}
-	
-	 		
-	if(EPass != active1.iResult)
-		{
-		ERR_PRINTF3(_L("Authentication Result error = %d, iResult = %d\n"), active1.iErr, active1.iResult);			
-		SetTestStepError(active1.iErr);
-		}
-	
-	else if ((KErrNone == active1.iErr) && (EPass == active1.iResult))
-		{
-		INFO_PRINTF1(_L("No Authentication Errors."));
-		}
-		
-	else
-		{
-		ERR_PRINTF3(_L("Unexpected Authentication Result. error = %d, iResult = %d\n"), active1.iErr, active1.iResult);
-		}
-		
-	//Main check
-	if (0 == active1.iIdToStore)
-		{
-		ERR_PRINTF1(_L("Authentication failed. No identity returned"));
-		}
-	
-	else
-		{
-		INFO_PRINTF1(_L("Authentication successful."));
-		//Store the id in the Global Db file		
-		setLastAuthIdL(active1.iIdToStore);
-		SetTestStepResult(EPass);
-		}	
-	}
-	
-//---------------------------------------------------------------------------------------------------------------------------------
-
-CTInitCenRep::CTInitCenRep(CTAuthSvrServer& aParent): iParent(aParent)
-/**
- Constructor
-*/
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTInitCenRep);
-	}
-
-
- CTInitCenRep::~CTInitCenRep()
-/**
- Destructor
-*/
-	{}
- 	
-TVerdict CTInitCenRep::doTestStepPreambleL()
-/**
- @return - TVerdict code
- Override of base class virtual
-*/
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-	return TestStepResult();
-	}
-
-TVerdict CTInitCenRep::doTestStepL()
-/**
- @return - TVerdict code
- Override of base class pure virtual
-  
- */
-	{	
-
- __UHEAP_MARK;		// Check for memory leaks
-
-	//Initialize the repository
-	CRepository* repository = CRepository::NewL(KUidAuthServerRepository);
-	CleanupStack::PushL(repository);
-	
-	//If default plugin is specified, set it
-	TPtrC defaultPluginFromFile;
-	if(GetStringFromConfig(ConfigSection(),_L("default"), defaultPluginFromFile) != EFalse)
-		{
-		TLex pluginIdString = TLex(defaultPluginFromFile);
-		TPluginId defaultPluginId(0);
-		
-		pluginIdString.Val(defaultPluginId, EHex );
-		SetDefaultPluginIdL(defaultPluginId);
-	 		
-		//Retrieve the value
-		TInt value(0);
-		User::LeaveIfError(repository->Get(KAuthDefaultPlugin, value));
-		CleanupStack::PopAndDestroy(repository);
-		SetTestStepResult(EPass);
-		return TestStepResult();
-		}
-	TInt aliasCount = 0;
-	
-	// Retrieve the value of 'aliasCount' from the ini file, but if it's absent use the default value.
-	// This value is used for validation of cenrep file.
-	if(GetIntFromConfig(ConfigSection(),_L("aliasCount"), aliasCount) != EFalse)
-		{
-		User::LeaveIfError(repository->Set(EAuthAliasesCount, aliasCount));
-		CleanupStack::PopAndDestroy(repository);
-		SetTestStepResult(EPass);
-		return TestStepResult();
-		}
-	
-	User::LeaveIfError(repository->Get(EAuthAliasesCount, aliasCount));
-	// since we will only have four aliases in the cenrep file.
-	__ASSERT_DEBUG(aliasCount == 4, User::Leave(KErrArgument));
-	
-	// Retrieve the value of 'unicode' from the ini file, but if it's absent use the default value.
-	// For unicode tests we need to set the aliases in addition to thier corresponding alias string.
-	TBool isUnicode = EFalse;
-	if(GetBoolFromConfig(ConfigSection(),_L("unicode"), isUnicode) != EFalse)
-		{
-		TBuf<24> alias;
-		TPtrC aliasValue;
-	
-		for(TInt i = 0; i < aliasCount; ++i)
-			{
-			alias.Format(_L("alias%d"), i);
-			if (GetStringFromConfig(ConfigSection(), alias, aliasValue) != EFalse)
-				{
-				User::LeaveIfError(repository->Set(EAuthAliases+i, aliasValue));
-				}
-			}
-		}
-	
-	// for each alias ,set the corresponding alias string expression.
-	TBuf<24> aliasString;
-	TPtrC aliasStringValue;
-	
-	for(TInt i = 0; i < aliasCount; ++i)
-		{
-		aliasString.Format(_L("aliasString%d"), i);
-		if (GetStringFromConfig(ConfigSection(), aliasString, aliasStringValue) != EFalse)
-			{
-			User::LeaveIfError(repository->Set(EAuthAliasesExpr+i, aliasStringValue));
-			}
-		}
-	
-	CleanupStack::PopAndDestroy(repository);
-	SetTestStepResult(EPass);
-	
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-	
-TVerdict CTInitCenRep::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
- 	//Call the parent postamble, releasing the file handle, etc
- 	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-//====================================================================================================
-
-CTSysTimeUpdate::CTSysTimeUpdate(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTUpdateSysTime);
-	}
-
-
-CTSysTimeUpdate::~CTSysTimeUpdate()
-/**
-  Destructor
- */
-	{}
-	
-TVerdict CTSysTimeUpdate::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-
-	return TestStepResult();
-	}
-
-TVerdict CTSysTimeUpdate::doTestStepL()
-/**
-  @return - TVerdict code
-  Override of base class pure virtual
-  
- */
-	{	
-	SetTestStepResult(EFail);
-
-__UHEAP_MARK;		// Check for memory leaks
-	
-	//Get the "time" which must be added to the system time.
-	TInt timeVal(0);
-	GetIntFromConfig(ConfigSection(), _L("time"), timeVal);
-
-	TTime currentTime;
-	currentTime.UniversalTime();
-	
-	if(timeVal == 0 )
-		{
-		//Set the secure clock time.
-		RTestUtilSession session;
-		session.Connect();
-		CleanupClosePushL(session);
-		TInt ret = session.SetSecureClock(0);
-		INFO_PRINTF2(_L("Set the secure clock --- %d"), ret);
-		CleanupStack::PopAndDestroy(&session);
-		}
-	else
-		{
-		//Increment the time only if secure clock is present
-		TInt err = currentTime.UniversalTimeSecure();
-		INFO_PRINTF2(_L("Getting the secure clock time returned %d"), err );
-		if(!err)
-			{
-			INFO_PRINTF1(_L("Secure clock found !"));
-			TTimeIntervalSeconds increment(timeVal);
-			currentTime += increment;
-			User::LeaveIfError(User::SetUTCTime(currentTime));
-			}
-		else
-			{
-			INFO_PRINTF1(_L("Secure clock not found !"));
-			}
-	
-		}
-
-
-	SetTestStepResult(EPass);
-
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTSysTimeUpdate::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_base.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1398 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
-
-#include "tAuthSvrStep.h"
-#include <test/testexecutelog.h>
-
-#ifndef __INIPARSER_H__
-	#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-#include <s32file.h>
-#include <f32file.h>
-#include "authrepository.h"
-using namespace AuthServer;
-
-CTAuthSvrStepBase::CTAuthSvrStepBase()
-	{
-	}
-
-TInt CTAuthSvrStepBase::writeToNamedConfig(CIniData* aFile, const TDesC& aSectName,const TDesC& aKeyName,const TPtrC& aResult)
-	{
-	TInt retValue = KErrNone;
-	// Look for a key under a named section, retrieve text value	
-		
-	TInt ret = KErrNone;	//return value from FindVar functions
-	ret=aFile->SetValue(aSectName, aKeyName ,aResult);
-	if(ret != KErrNone)
-		{			
-		if(ret == KErrNotFound)
-			{
-			RDebug::Print(_L("Key not found. Unable to set value in ini file.  SectionName = %S, KeyName = %S, value = %S."),  &aSectName, &aKeyName, &aResult);
-			}
-		else
-			{
-			RDebug::Print(_L("Unable to set value in ini file. SectionName = %S, KeyName = %S, value = %S."), &aSectName, &aKeyName, &aResult);
-			}							
-		retValue = ret;
-		}
-	return retValue;	
-	}
-
-TInt CTAuthSvrStepBase::writeToNamedConfig(CIniData* aFile, const TDesC& aKeyName,const TPtrC& aResult)
-	{
-	
-	TInt retValue = KErrNone;
-	// Look for a key under no named section, retrieve text value	
-	
-	TInt ret = KErrNone;	//return value from FindVar functions
-	ret=aFile->SetValue(aKeyName ,aResult);
-	if(ret != KErrNone)
-		{
-		if(ret == KErrNotFound)
-			{
-			RDebug::Print(_L("Key not found. Unable to set value in ini file. KeyName = %S, value = %S."), &aKeyName, &aResult);
-			}			
-		else
-			{
-			RDebug::Print(_L("Unable to set value in ini file. KeyName = %S, value = %S."), &aKeyName, &aResult);
-			}
-		retValue = ret;
-		}
-	return retValue;	
-	}
-	
-TInt CTAuthSvrStepBase::readFromNamedConfigL(const TDesC& aFileName, const TDesC& aSectName,const TDesC& aKeyName, HBufC*& aResult)
-	{
-	TInt retValue = KErrNone;	
-	CIniData* file;
-	file = CIniData::NewL(aFileName);	
-	CleanupStack::PushL(file);
-	
-	// Look for a key under a named section, retrieve text value	
-	TBool ret=EFalse;	//return value from FindVar functions	
-	TPtrC resultPtr;
-	
-	ret=file->FindVar(aSectName, aKeyName ,resultPtr);	
-	if(ret == EFalse)
-		{		
-		RDebug::Print(_L("Unable to read value in ini file. Filename: %S, SectionName = %S, value = %S."), &aFileName, &aSectName, &aResult);
-		retValue = ret;
-		}
-	else
-		{
-		aResult = resultPtr.AllocL();
-		CleanupStack::PushL(aResult);
-		file->WriteToFileL(); //apply the implementation
-		CleanupStack::Pop(aResult);
-		}
-	CleanupStack::PopAndDestroy(file);
-
-	return retValue;
-	
-	}
-	
-TInt CTAuthSvrStepBase::readFromNamedConfigL(const TDesC& aFileName,const TDesC& aKeyName, HBufC*& aResult)
-	{
-	TInt retValue = KErrNone;	
-	CIniData* file=NULL;
-	file = CIniData::NewL(aFileName);	
-	CleanupStack::PushL(file);
-
-	TBool ret=EFalse;	//return value from FindVar functions
-	
-	TPtrC resultPtr;
-	ret=file->FindVar(aKeyName, resultPtr);
-	if(ret == EFalse)
-		{
-	    RDebug::Print(_L("Unable to read value in ini file. Filename: %S, SectionName = %S, value = %S."), &aFileName, &aKeyName, &aResult);
-		retValue = ret;
-		}
-	else
-		{			
-		aResult = resultPtr.AllocL();
-		CleanupStack::PushL(aResult);
-		file->WriteToFileL(); //apply the implementation
-		CleanupStack::Pop(aResult);
-		}	
-	CleanupStack::PopAndDestroy(file);
-
-	return retValue;
-	}
-
-
-
-void CTAuthSvrStepBase::SetDefaultPluginIdL(TInt aDefault)
-	{
-	//Read the default plugin value from the configuration file.
-	CRepository* repository = CRepository::NewL(KUidAuthServerRepository);
-	CleanupStack::PushL(repository);
-		
-	User::LeaveIfError(repository->Set(KAuthDefaultPlugin, aDefault));
-	
-	//Retrieve from file
-	TInt defaultPlugin(0);
-	User::LeaveIfError(repository->Get(KAuthDefaultPlugin, defaultPlugin));
-	INFO_PRINTF2(_L("Default plugin value set in cenrep to %d"),defaultPlugin);
-	
-	CleanupStack::PopAndDestroy(repository);
-		
-	}	
-/**
- Read data from testexecute ini file that will be used to initialise the Authentication Server
-*/
-TInt CTAuthSvrStepBase::InitAuthServerFromFileL()
-	{
-
-	//Set a default plugin using an ini file. Read this value from a file if it is specified	
-	//Set this to be the default plugin (update the policy file) if the test case specifies it (in the script's ini file).
-	
-	TPtrC defaultPluginFromFile;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	fileName.Append(KAuthSvrPolicyFile);
-
-	CIniData* policyFile=NULL;
-	TRAPD(r,policyFile=CIniData::NewL(fileName));
-	CleanupStack::PushL(policyFile);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPluginIniFile);
-	
-	CIniData* pluginFile=NULL;
-	TRAP(r,pluginFile=CIniData::NewL(fileName));
-	CleanupStack::PushL(pluginFile);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3100File);
-	
-	CIniData* p3100File=NULL;
-	TRAP(r,p3100File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3100File);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3101File);
-	
-	CIniData* p3101File=NULL;
-	TRAP(r,p3101File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3101File);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3102File);
-	CIniData* p3102File=NULL;
-	TRAP(r,p3102File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3102File);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3103File);
-
-	CIniData* p3103File=NULL;
-	TRAP(r,p3103File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3103File);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3104File);
-	
-	CIniData* p3104File=NULL;
-	TRAP(r,p3104File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3104File);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin4100File);
-	
-	CIniData* p4100File=NULL;
-	TRAP(r,p4100File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p4100File);
-	
-	if (GetStringFromConfig(ConfigSection(),_L("defaultPlugin"), defaultPluginFromFile) != EFalse) // the tag 'defaultPlugin' was present
-		{ 
-		//Write this value to the policy file
-		writeToNamedConfig(policyFile, KDefaultPluginTag, defaultPluginFromFile);
-	//	SetDefaultPluginIdL(defaultPluginFromFile);
-		}
-	TInt defaultPluginId(0);
-	if (GetIntFromConfig(ConfigSection(),_L("defaultPluginId"), defaultPluginId) != EFalse) // the tag 'defaultPlugin' was present
-		{ 
-		//Write this value to the policy file
-		//writeToNamedConfig(policyFile, KDefaultPluginTag, defaultPluginFromFile);
-		SetDefaultPluginIdL(defaultPluginId);
-		}
-	//Set whether a plugin supports default data. Read this value from a file if it is specified
-	_LIT(KTrueText,"true");
-	_LIT(KFalseText,"false");
-	
-	TBool iSupportsDefaultDataFromFile(ETrue);	//Default case - the plugin supports default data
-	
-	TBufC<16> trueBuf1(KTrueText);
-	TBufC<16> falseBuf1(KFalseText);
-	TPtr valueToWrite = trueBuf1.Des();			//Default case - the plugin supports default data
-	if (GetBoolFromConfig(ConfigSection(),_L("iSupportsDefaultData"), iSupportsDefaultDataFromFile) != EFalse) // the tag 'isTrusted' was present
-		{
-		//Set the value that will be picked up by the constructor of the plugin		
-		if (iSupportsDefaultDataFromFile)
-			{ valueToWrite = trueBuf1.Des();	}
-		else
-			{ valueToWrite = falseBuf1.Des();	}			
-		writeToNamedConfig(pluginFile, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);	
-		writeToNamedConfig(p3100File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3101File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3102File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3103File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p4100File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		}
-	else
-		{
-		INFO_PRINTF1(_L("The iSupportsDefaultData tag was not specified in the testexecute ini file."));
-		//Use the default value of TRUE		
-		valueToWrite = trueBuf1.Des();
-		writeToNamedConfig(pluginFile, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3100File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3101File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3102File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p3103File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		writeToNamedConfig(p4100File, KPluginIniSection, _L("iSupportsDefaultData"), valueToWrite);
-		}
-	
-	//Set a value for the training input that will be used by the CTPinAuthPlugin
-	//in the file AuthSvrPolicy.ini
-	TPtrC userPinInputFromFile;
-	TPtrC supportsDefaultFromFile;
-	TPtrC activeStateFromFile;
-
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113100InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin11113100Input' was present
-		{ writeToNamedConfig(p3100File, KIdEnteredPinTag, userPinInputFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113101InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin11113101Input' was present
-		{ writeToNamedConfig(p3101File, KIdEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113102InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin11113102Input' was present
-		{ writeToNamedConfig(p3102File, KIdEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113103InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin11113103Input' was present
-		{ writeToNamedConfig(p3103File, KIdEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113104InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin11113104Input' was present
-		{ writeToNamedConfig(p3104File, KIdEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin10234100InputId"), userPinInputFromFile) != EFalse) // the tag 'Pin10234100Input' was present
-		{ writeToNamedConfig(p4100File, KIdEnteredPinTag, userPinInputFromFile); }
-	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113100InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113100Input' was present
-		{ writeToNamedConfig(p3100File, KTrainEnteredPinTag, userPinInputFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113101InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113101Input' was present
-		{ writeToNamedConfig(p3101File, KTrainEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113102InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113102Input' was present
-		{ writeToNamedConfig(p3102File, KTrainEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113103InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113103Input' was present
-		{ writeToNamedConfig(p3103File, KTrainEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113104InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113104Input' was present
-		{ writeToNamedConfig(p3104File, KTrainEnteredPinTag, userPinInputFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin10234100InputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin10234100Input' was present
-		{ writeToNamedConfig(p4100File, KTrainEnteredPinTag, userPinInputFromFile); }
-		
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113100Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin11113102Default' was present
-		{ writeToNamedConfig(p3100File, KSupportsDefaultTag, supportsDefaultFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113101Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin11113101Default' was present
-		{ writeToNamedConfig(p3101File, KSupportsDefaultTag, supportsDefaultFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113102Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin11113102Default' was present
-		{ writeToNamedConfig(p3102File, KSupportsDefaultTag, supportsDefaultFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113104Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin11113104Default' was present
-		{ writeToNamedConfig(p3104File, KSupportsDefaultTag, supportsDefaultFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin10234100Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin10234100Default' was present
-		{ writeToNamedConfig(p4100File, KSupportsDefaultTag, supportsDefaultFromFile); }
-
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113103Default"), supportsDefaultFromFile) != EFalse) // the tag 'Pin11113103Default' was present
-		{ writeToNamedConfig(p3103File, KSupportsDefaultTag, supportsDefaultFromFile); }
-	else 
-		{ writeToNamedConfig(p3103File, KSupportsDefaultTag, falseBuf1.Des()); }	
-
-	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113100Active"), activeStateFromFile) != EFalse) // the tag 'Pin11113100Active' was present
-		{ writeToNamedConfig(p3100File, KActiveStateTag, activeStateFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113101Active"), activeStateFromFile) != EFalse) // the tag 'Pin11113101Active' was present
-		{ writeToNamedConfig(p3101File, KActiveStateTag, activeStateFromFile); }
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113102Active"), activeStateFromFile) != EFalse) // the tag 'Pin11113102Active' was present
-		{ writeToNamedConfig(p3102File, KActiveStateTag, activeStateFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113104Active"), activeStateFromFile) != EFalse) // the tag 'Pin11113104Active' was present
-		{ writeToNamedConfig(p3104File, KActiveStateTag, activeStateFromFile); }	
-	if (GetStringFromConfig(ConfigSection(),_L("Pin10234100Active"), activeStateFromFile) != EFalse) // the tag 'Pin10234100Active' was present
-		{ writeToNamedConfig(p4100File, KActiveStateTag, activeStateFromFile); }	
-		
-	if (GetStringFromConfig(ConfigSection(),_L("Pin11113103Active"), activeStateFromFile) != EFalse) // the tag 'Pin11113103Active' was present
-		{ writeToNamedConfig(p3103File, KActiveStateTag, activeStateFromFile); }	
-	else 
-		{ writeToNamedConfig(p3103File, KActiveStateTag, falseBuf1.Des()); }	
-	
-	// ... Other PinPluginDb's can be added
-	//Else the data is set in the 'Defaultdata() function'
-
-	policyFile->WriteToFileL();
-	pluginFile->WriteToFileL();
-	p3100File->WriteToFileL();
-	p3101File->WriteToFileL();
-	p3102File->WriteToFileL();
-	p3103File->WriteToFileL();
-	p3104File->WriteToFileL();
-	p4100File->WriteToFileL();
-
-	CleanupStack::PopAndDestroy(8,policyFile);
-	return KErrNone;
-	}
-
-/**
- Read plugin input train data from testexecute ini file , when aInitTrainInput
- is set to true, or plugin input id when set to false.This data will be used to 
- initialise the Authentication Server.
-  
-*/	
-TInt CTAuthSvrStepBase::InitPluginDataFromFileL(TBool aInitTrainInput)
-	{
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	fileName.Append(KPlugin3100File);
-	
-	CIniData* p3100File = NULL;
-	TRAPD(r,p3100File = CIniData::NewL(fileName));
-	if(r != KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &fileName);
-		return r;
-		}
-		
-	CleanupStack::PushL(p3100File);
-	
-	TPtrC userPinInputFromFile;
-	
-	if(aInitTrainInput)
-		{
-		if (GetStringFromConfig(ConfigSection(),_L("PinInputTrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113100Input' was present
-			{ writeToNamedConfig(p3100File, KTrainEnteredPinTag, userPinInputFromFile); }
-	
-		}
-		
-	else
-		{
-		if (GetStringFromConfig(ConfigSection(),_L("PinInputRetrain"), userPinInputFromFile) != EFalse) // the tag 'Pin11113100Input' was present
-			{ writeToNamedConfig(p3100File, KIdEnteredPinTag, userPinInputFromFile); }
-		
-		}
-		
-	p3100File->WriteToFileL();
-	CleanupStack::PopAndDestroy(p3100File);
-	return KErrNone;
-	}
-
-/**
- Wait for the server to shut down and so release the authentication database.
-*/
-void CTAuthSvrStepBase::WaitForServerToReleaseDb()
-	{
-	TFullName name;
-	for (;;)
-		{
-		TFindServer find(::KAuthServerName);
-		if (find.Next(name) != KErrNone)
-			{
-			break;
-			}
-
-		// Wait for server to terminate
-		User::After(1 * 1000 * 1000);
-		}
-	}
-	
-/**
- 	Remove any existing database file.
-*/
-void CTAuthSvrStepBase::RemoveExistingDbL()
-	{
-	WaitForServerToReleaseDb();
-
-	TInt r = KErrNone;
-	
-	TBuf<80> dbName(AuthServer::KDbName);
-	dbName[0] = 'A' + static_cast<TInt>(RFs::GetSystemDrive());				
-	while ((r = iFs.Delete(dbName)) == KErrInUse)
-		{
-		User::After(50000);
-		}
-	if ((KErrPathNotFound == r) || (KErrNotFound == r))  //-12 or -1
-		{
-		INFO_PRINTF1(_L("The database file was absent when I tried to delete it. \
-			Ignoring..."));
-		r = KErrNone;	//Not Important
-		}
-		User::LeaveIfError(r);
-
-	
-		
-	TBuf<80> pinDbName(_L("!:\\private\\102740FC\\plugin.store"));
-	pinDbName[0] = 'A' + static_cast<TInt>(RFs::GetSystemDrive());				
-	while ((r = iFs.Delete(pinDbName)) == KErrInUse)
-		{
-		User::After(50000);
-		}
-	
-	if ((KErrPathNotFound == r) || (KErrNotFound == r))  //-12 or -1
-		{
-		INFO_PRINTF1(_L("The pin plugin database file was absent when I tried to delete it. \
-					Ignoring..."));
-		r = KErrNone;	//Not Important
-		}
-	User::LeaveIfError(r);
-			
-	TBuf<80> pinDbName1(_L("!:\\t_pinplugindlg_in.dat"));
-	pinDbName1[0] = 'A' + static_cast<TInt>(RFs::GetSystemDrive());				
-	while ((r = iFs.Delete(pinDbName1)) == KErrInUse)
-		{
-	User::After(50000);
-		}
-			
-	if ((KErrPathNotFound == r) || (KErrNotFound == r))  //-12 or -1
-		{
-		INFO_PRINTF1(_L("The pin plugin database file (t_pinplugindlg_in.dat)was absent when I tried to delete it. \
-						Ignoring..."));
-		r = KErrNone;	//Not Important
-	}
-	User::LeaveIfError(r);
-		
-			
-	TBuf<80> pinDbName2(_L("!:\\t_pinplugindlg_out.dat"));
-	pinDbName2[0] = 'A' + static_cast<TInt>(RFs::GetSystemDrive());				
-	while ((r = iFs.Delete(pinDbName2)) == KErrInUse)
-		{
-		User::After(50000);
-		}
-				
-	if ((KErrPathNotFound == r) || (KErrNotFound == r))  //-12 or -1
-		{
-		INFO_PRINTF1(_L("The pin plugin database file (t_pinplugindlg_out.dat)was absent when I tried to delete it. \
-						Ignoring..."));
-		r = KErrNone;	//Not Important
-		}
-	User::LeaveIfError(r);
-		
-	
-	//Reset the data 'AllUserID&PinValues' in AuthSvrPolicy.ini & the 
-	// individual plugin Db files
-	TBufC<16> initPinDbBuffer(KInitPinDatabaseValue);
-	TPtr valueToWrite = initPinDbBuffer.Des();
-	
-	TBufC<16> initEnteredPinBuffer(KDefaultInput);
-	TPtr defaultInputValue = initEnteredPinBuffer.Des();
-	
-	TBuf<2> noIdentityVal;
-	_LIT16(KFormatLastAuth,"%u");
-	
-	noIdentityVal.Format(KFormatLastAuth, KErrNone); //generates:
-
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	fileName.Append(KAuthSvrPolicyFile);
-	
-	CIniData* policyFile=NULL;
-	TRAP(r,policyFile=CIniData::NewL(fileName));
-	CleanupStack::PushL(policyFile);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3100File);
-	
-	CIniData* p3100File=NULL;
-	TRAP(r,p3100File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3100File);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3101File);
-	
-	CIniData* p3101File=NULL;
-	TRAP(r,p3101File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3101File);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3102File);
-	
-	CIniData* p3102File=NULL;
-	TRAP(r,p3102File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3102File);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3103File);
-	
-	CIniData* p3103File=NULL;
-	TRAP(r,p3103File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3103File);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3104File);
-
-	CIniData* p3104File=NULL;
-	TRAP(r,p3104File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p3104File);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin4100File);
-
-	CIniData* p4100File=NULL;
-	TRAP(r,p4100File=CIniData::NewL(fileName));
-	CleanupStack::PushL(p4100File);
-	
-	writeToNamedConfig(policyFile, KLastAuthIdTag, noIdentityVal);
-	writeToNamedConfig(policyFile, KTotalDbTag, valueToWrite);
-	writeToNamedConfig(p3100File, KPinDbTag, valueToWrite); 
-	writeToNamedConfig(p3101File, KPinDbTag, valueToWrite); 
-	writeToNamedConfig(p3102File, KPinDbTag, valueToWrite); 
-	writeToNamedConfig(p3103File, KPinDbTag, valueToWrite); 
-	writeToNamedConfig(p3104File, KPinDbTag, valueToWrite);
-	writeToNamedConfig(p4100File, KPinDbTag, valueToWrite);
-	writeToNamedConfig(p3100File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3101File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3102File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3103File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3104File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p4100File, KIdEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3100File, KTrainEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3101File, KTrainEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3102File, KTrainEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3103File, KTrainEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p3104File, KTrainEnteredPinTag, defaultInputValue);
-	writeToNamedConfig(p4100File, KTrainEnteredPinTag, defaultInputValue);
-	
-	policyFile->WriteToFileL();
-	p3100File->WriteToFileL();
-	p3101File->WriteToFileL();
-	p3102File->WriteToFileL();
-	p3103File->WriteToFileL();
-	p3104File->WriteToFileL();
-	p4100File->WriteToFileL();
-
-	CleanupStack::PopAndDestroy(7,policyFile);
-	}
-	
-/**
- 	Utility function coverting HexString to Integer
-*/
-TInt CTAuthSvrStepBase::HexString2Num(const TDesC8& aStr)
-  {
-  	TInt data = 0;
-	TInt char2hex = 0;
-	TInt c = 0;
-	for (TInt i = 0 ; i < aStr.Length() ; ++i)
-	  {
-	  c = aStr[i];
-	  
-	  if (c < 'A')
-	    {
-	    char2hex='0';
-	    }
-	  else if (c < 'a')
-	    {
-	    char2hex='A';
-	    }
-	  else
-	    {
-	    char2hex='a';
-	    }
-	  data = data << 4;      
-	  data += aStr[i]-char2hex; 
-	  }
-	return data;
-  }
-
-
-/**
- Utility function to Update the Global Db by removing the training data 
- that is associated with a given Id. The removal will not happen if 
- the identity is not present in this list, however, this is not expected
- Called at the same time as RAuthMgrClient::RemoveIdentityL(aId)
- Returns KErrNone, or some error code
-*/
-TInt CTAuthSvrStepBase::RemoveIdFromGlobalDbL (TUint32 aId)
-	{
-	
-	TBuf8<500> totalDbFileContents, totalDbFileContents2;
-	TInt retValue = KErrNone;
-	CIniData* file=NULL;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	fileName.Append(KAuthSvrPolicyFile);
-	
-	TRAPD(r,file=CIniData::NewL(fileName));	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &fileName);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions		
-				
-		ret=file->FindVar(KPluginIniSection, KTotalDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the %S key in the file %S."), &KTotalDbTag, &fileName);
-			retValue = KErrNotFound;		
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			totalDbFileContents.Copy(result);
-			
-			//Format the searchstring as defined in the file so that it starts with a ',' and ends with a ':'.
-			_LIT8(KFormatValue3, ",%d:");
-			TBuf8<20> searchString;
-			searchString.Format(KFormatValue3, aId);
-			TInt searchResult;			
-			searchResult = totalDbFileContents.Find(searchString);
-			
-			if (searchResult)	// the tag was found
-			{				
-				//Extract the rest of the pinFileContents string before the start of the PIN (before the ':')
-				totalDbFileContents2 = totalDbFileContents.Left(searchResult);
-				
-				//The userId starts at the first ',' from the end of pinFileContents2, 
-				// where p2 is the portion of p1 to the left of searchResult
-				TInt userIdStartPos = totalDbFileContents2.LocateReverse(',');
-				
-				//Find where the PIN ends
-				TInt PinEndPos = searchResult + searchString.Length() - 1;
-								
-				//remove the found (total) string from the list
-				totalDbFileContents.Delete(userIdStartPos, (PinEndPos - userIdStartPos) );
-				
-				//Update the file
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-					TInt ret2 = 0;
-					HBufC* buf;
-					buf = HBufC::NewL(500);	
-					buf->Des().Copy(totalDbFileContents);
-								
-				ret2 = file->SetValue(KPluginIniSection, KTotalDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-				if (KErrNone != r)
-					{
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &fileName, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					RDebug::Print(_L("Error occurred in WriteToFileL(). Error = %d. Filename= %S"), ret2, &fileName);						
-					retValue = ret2;
-					}
-				else
-					{
-					retValue = KErrNone;		
-					}				
-				}
-				else // The identity was not found in the Db. 											
-				{				
-				RDebug::Print(_L("RemoveIdFromGlobalDb: The specified ID was not found in the totalDbFile"));
-				retValue = KErrAuthServIdentityNotFound;									
-				}
-			}//End check for key&section search in file
-		delete file;
-		}//End check for safe file access
-	return retValue;
-	}
-
-/**
-Returns EPass or EFail
-*/
-TVerdict CTAuthSvrStepBase::checkAndSetUserNameL(AuthServer::RAuthClient& authClient1, TInt idPosition)
-	{	
-	TBool retValue = ETrue;
-	TPtrC initNameValue;
-	TPtrC finalNameValue;
-	//Check that the user has specified the initial and later userNames for the identity 
-	
-	if( (GetStringFromConfig(ConfigSection(),_L("finalUserName"), finalNameValue)) 
-			!= EFalse) // the tags 'initUserName' and finalUserName are present
-		{
-		//Get a list of all the present identities
-		RIdentityIdArray ids;
-		authClient1.IdentitiesL(ids);
-		CleanupClosePushL(ids);
-		
-		//Check the userName of particular identity that was mentioned in the function call
-		HBufC* idName = authClient1.IdentityStringL(ids[idPosition]);
-		CleanupStack::PushL(idName);
-		
-		//Change the userName to what is desired
-		authClient1.SetIdentityStringL(ids[idPosition], finalNameValue);
-		
-		//Compare to the expected final value of the userName
-		
-		HBufC* idNameFinal = authClient1.IdentityStringL(ids[idPosition]);
-		
-		if (idNameFinal->Compare(finalNameValue) != 0)
-			{
-			INFO_PRINTF4(_L("Id %d has the Final name %S instead of %S"), idPosition, idNameFinal, &finalNameValue);
-			retValue = EFalse;
-			}
-		else
-			{
-			INFO_PRINTF4(_L("Id %d had the initial name %S and the Final name %S"), idPosition, idName, idNameFinal);	
-			retValue = ETrue;
-			}		
-		delete idNameFinal;			
-		CleanupStack::PopAndDestroy(2, &ids);	//idName, ids
-		}
-	else
-		{
-		INFO_PRINTF1(_L("finalUserName tag is absent in the script file"));		
-		}
-		
-	if (retValue)
-		{SetTestStepResult(EPass);}
-	else
-		{SetTestStepResult(EFail);}	
-	
-	return TestStepResult();
-	}
-
-
-//
-void CTAuthSvrStepBase::CheckSpecifiedPluginStatusL ()
-	{
-	//If the pluginId is quoted in the ini file, check it's training status
-	TInt plugin1IdValue = 0;
-	if (GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue) != EFalse) // the tag 'pluginId1' was present
-		{
-		AuthServer::RAuthClient ac;
-		User::LeaveIfError(ac.Connect());
-		CleanupClosePushL(ac);
-		// Get the status of the specified plugin
-		TInt plugin1StatusValue;
-		if (GetIntFromConfig(ConfigSection(),_L("plugin1Status"), plugin1StatusValue) != EFalse) 
-			{
-			TAuthTrainingStatus plugin1Status;// = plugin1StatusValue;
-			switch (plugin1StatusValue)
-				{
-				case EAuthUntrained:
-					plugin1Status = EAuthUntrained;
-					break;
-				case EAuthTrained:
-					plugin1Status = EAuthTrained;
-					break;
-				case EAuthFullyTrained:
-					plugin1Status = EAuthFullyTrained;
-					break;
-				default:
-					ERR_PRINTF2(_L("Error receiving a value of the pluginIdStatus. Value in file : %d "), plugin1StatusValue);
-					plugin1Status = EAuthUntrained;
-					break;
-				}				
-			
-			
-			RPluginDescriptions pluginList1;
-			TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-			CleanupStack::PushL(cleanup);				
-			ac.PluginsL(pluginList1);
-						
-			TInt numPlugins = pluginList1.Count();
-			for(TInt i = 0; i < numPlugins; i++)
-				{
-				TInt presentPluginIdVal = pluginList1[i]->Id();
-								
-				if (presentPluginIdVal == plugin1IdValue)
-					{
-					TInt presentPluginStatus = pluginList1[i]->TrainingStatus();
-					if (presentPluginStatus == plugin1Status)
-						{
-						INFO_PRINTF3(_L("PluginId=%x has the expected status =%i"), presentPluginIdVal, presentPluginStatus);
-						SetTestStepResult(EPass);
-						}
-					else
-						{
-						ERR_PRINTF4(_L("PluginId=%x has status =%i, instead of %i"), 
-							presentPluginIdVal, presentPluginStatus, plugin1Status);
-						SetTestStepResult(EFail);
-						}
-					break;	//Don't check any other plugins	
-					}
-				else
-					{
-					SetTestStepResult(EFail);	//After this, check others
-					}
-				}
-			if(numPlugins == 0) 				
-				{
-				ERR_PRINTF1(_L("No plugins in the system"));
-				SetTestStepResult(EFail);					
-				}
-				
-			if (TestStepResult() == EFail)
-				{
-				ERR_PRINTF3(_L("PluginId=%x does not have the expected status %i"), 
-					plugin1IdValue, plugin1StatusValue);
-				}
-				
-			CleanupStack::PopAndDestroy(&pluginList1); //infoArray, results in a call to CleanupEComArray
-			}
-		else
-			{
-			INFO_PRINTF1(_L("plugin1Status was not specified in the ini file"));
-			}
-		CleanupStack::PopAndDestroy(&ac);	// ac	
-		}
-	else
-		{
-		INFO_PRINTF1(_L("plugin1Id was not specified in the ini file"));	
-		}
-	}
-
-
-
-enum TOp
-    {
-    ENone =0,
-    EOr = 1,
-    EAnd = 2
-    };
-    
-enum TState
-    {
-    EFirstToken  = 0,
-    ESecondToken = 1,
-    EThirdToken  = 2,
-    ENumTokens = 3
-    };
-    
-AuthServer::CAuthExpression* CTAuthSvrStepBase::CreateAuthExprLC (const TDesC& aString)
-    {
-   
-    TLex  input(aString);
-    
-    _LIT(KKnowledge,"K");    
-    _LIT(KBiometric,"B");
-    _LIT(KToken,"T");  
-    _LIT(KDefault,"D");
-    _LIT(KAnd,"&");
-    _LIT(KOr,"|");
-    _LIT(KUnexpected, "Unexpected '%S' token while parsing authexpression");
-    
-    AuthServer::CAuthExpression* result = 0;
-    TState state = EFirstToken;
-    TOp op = ENone;
-    TBool err;
-    TPluginId plugin = 0;
-    
-    if (aString == KNullDesC)
-       	{
-       	result = AuthExpr();
-       	CleanupStack::PushL(result);
-       	return result;
-       	}
-    for (TPtrC token = input.NextToken(); token.Size() > 0 ; 
-         token.Set(input.NextToken()))
-        { 
-        AuthServer::CAuthExpression* newExpr = 0; 
-        INFO_PRINTF3(_L("Token %S Size = %d"), &token, token.Size()); 
-        if (token.Length() > 1)
-            {
-            TLex lexer(token);
-            if (lexer.Val(plugin,EHex) == KErrNone)
-                {
-                err = (state != EFirstToken && state != EThirdToken );
-                if (err) ERR_PRINTF2(KUnexpected, &token);
-                newExpr = AuthExpr(plugin);
-                }
-            else
-                {
-                err = true;
-                ERR_PRINTF2(KUnexpected, &token);
-                }
-            }
-        else if (token.CompareF(KKnowledge) == 0)
-            {
-            err = (state != EFirstToken && state != EThirdToken );
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            newExpr = AuthExpr(EAuthKnowledge);
-            }
-        else if (token.CompareF(KBiometric) == 0)
-            {   
-            err = (state != EFirstToken && state != EThirdToken );
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            newExpr = AuthExpr(EAuthBiometric);    
-            }
-        else if (token.CompareF(KToken) == 0)
-            {
-            err = (state != EFirstToken && state != EThirdToken );
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            newExpr = AuthExpr(EAuthToken);
-            }
-        else if (token.CompareF(KDefault) == 0)
-            {
-            err = (state != EFirstToken && state != EThirdToken );
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            newExpr = AuthExpr(EAuthDefault);
-            }
-        else if (token.CompareF(KAnd) == 0)
-            {
-            err = state != ESecondToken;
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            op = EAnd;
-            }
-        else if (token.CompareF(KOr) == 0)
-            {
-            err = state != ESecondToken;
-            if (err) ERR_PRINTF2(KUnexpected, &token);
-            op = EOr;
-            }
-        else 
-            {
-            err = true;
-            ERR_PRINTF2(_L("Unknown '%S' token while parsing authexpression"), &token);
-            }
-            
-        if (err) 
-            {
-            User::Leave(KErrGeneral);
-            }
-        switch (state)    
-            {
-            case EFirstToken:
-                if ( result == 0 && op == ENone)
-                    {
-                    result = newExpr;
-                    CleanupStack::PushL(result);
-                    }
-                else 
-                    {
-                    //err?
-                    }
-                state = ESecondToken;
-                break;
-            case ESecondToken:
-                state = EThirdToken;
-                break;
-            case EThirdToken:
-                if (op == EOr)
-                    {
-                    CleanupStack::Pop(result);
-                    result =  AuthOr(result, newExpr);
-                    CleanupStack::PushL(result);
-    
-                    }
-                else
-                    {
-                    CleanupStack::Pop(result);
-                    result =  AuthAnd(result, newExpr);
-                    CleanupStack::PushL(result);
-                    }
-                op = ENone;
-                state = ESecondToken;
-            }
-        }
-    if (state == EThirdToken)
-        {
-        ERR_PRINTF1(_L("Unexpected end of stream while parsing authexpression"));
-        User::Leave(KErrGeneral);
-        }
-    return result;
-    }
-    
-void CTAuthSvrStepBase::CheckSpecifiedPluginStatusConnectedL (AuthServer::RAuthClient& ac)
-	{
-	//If the pluginId is quoted in the ini file, check it's training status
-	TInt plugin1IdValue = 0;
-	if (GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue) != EFalse) // the tag 'pluginId1' was present
-		{
-		// Get the status of the specified plugin
-		TInt plugin1StatusValue = 0;
-		if (GetIntFromConfig(ConfigSection(),_L("plugin1Status"), plugin1StatusValue) != EFalse) 
-			{
-			TAuthTrainingStatus plugin1Status;// = plugin1StatusValue;
-			switch (plugin1StatusValue)
-				{
-				case EAuthUntrained:
-					plugin1Status = EAuthUntrained;
-					break;
-				case EAuthTrained:
-					plugin1Status = EAuthTrained;
-					break;
-				case EAuthFullyTrained:
-					plugin1Status = EAuthFullyTrained;
-					break;
-				default:
-					ERR_PRINTF2(_L("Error receiving a value of the pluginIdStatus. Value in file : %d "), plugin1StatusValue);
-					plugin1Status = EAuthUntrained;
-					break;
-				}				
-			
-			
-			RPluginDescriptions pluginList1;
-			TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-			CleanupStack::PushL(cleanup);						
-			ac.PluginsL(pluginList1);
-						
-			TInt numPlugins = pluginList1.Count();
-			for(TInt i = 0; i < numPlugins; i++)
-				{
-				TInt presentPluginIdVal = pluginList1[i]->Id();
-								
-				if (presentPluginIdVal == plugin1IdValue)
-					{
-					TInt presentPluginStatus = pluginList1[i]->TrainingStatus();
-					if (presentPluginStatus == plugin1Status)
-						{
-						INFO_PRINTF3(_L("PluginId=%x has the expected status =%i"), presentPluginIdVal, presentPluginStatus);
-						SetTestStepResult(EPass);
-						}
-					else
-						{
-						ERR_PRINTF4(_L("PluginId=%x has status =%i, instead of %i"), 
-							presentPluginIdVal, presentPluginStatus, plugin1Status);
-						SetTestStepResult(EFail);
-						}
-					break;	//Don't check any other plugins	
-					}
-				else
-					{
-					SetTestStepResult(EFail);	//After this, check others
-					}
-				}
-			if(numPlugins == 0) 				
-				{
-				ERR_PRINTF1(_L("No plugins in the system"));
-				SetTestStepResult(EFail);					
-				}
-				
-			if (TestStepResult() == EFail)
-				{
-				ERR_PRINTF3(_L("PluginId=%x does not have the expected status %i"), 
-					plugin1IdValue, plugin1StatusValue);
-				}
-				
-			CleanupStack::PopAndDestroy(&pluginList1); //infoArray, results in a call to CleanupEComArray
-			}
-		else
-			{
-			INFO_PRINTF1(_L("plugin1Status was not specified in the ini file"));
-			}		
-		}
-	else
-		{
-		INFO_PRINTF1(_L("plugin1Id was not specified in the ini file"));	
-		}	
-	}
-
-TBool CTAuthSvrStepBase::CheckPluginStatusAllL (AuthServer::RAuthClient& ac)
-	{
-	TBool retValue = EFalse;
-	
-	//Get a list of all the present plugins
-	RPluginDescriptions pluginList1;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-	CleanupStack::PushL(cleanup);	
-	ac.PluginsL(pluginList1);
-	
-	//Get a list of all the present identities
-	RIdentityIdArray ids;
-	ac.IdentitiesL(ids);
-	CleanupClosePushL(ids);
-	TInt actualNumIdsFromServer = ids.Count();
-	CleanupStack::PopAndDestroy(&ids);
-	
-	//Get the number of identities that has been trained for each of my 3 plugins
-	TInt numIdsTrained;
-
-	TInt numPlugins = pluginList1.Count();
-	for(TInt i = 0; i < numPlugins; i++)
-		{
-		TInt presentPluginStatus = pluginList1[i]->TrainingStatus();
-		TInt presentPluginId = pluginList1[i]->Id();
-		TInt expectedStatus = 0;
-		
-		TDriveUnit sysDrive (RFs::GetSystemDrive());
-		TDriveName sysDriveName (sysDrive.Name());
-		TBuf<128> fileName (sysDriveName);
-		
-		switch (presentPluginId)
-			{
-			case 0x11113100:
-				{
-				fileName.Append(KPlugin3100File);
-				numIdsTrained = GetNumIdsFromPluginDbL(fileName);
-				break;
-				}
-			
-			case 0x11113101:
-				{
-				fileName.Append(KPlugin3101File);
-				numIdsTrained = GetNumIdsFromPluginDbL(fileName);
-				break;
-				}
-				
-			case 0x11113102:
-				{
-				fileName.Append(KPlugin3102File);
-				numIdsTrained = GetNumIdsFromPluginDbL(fileName);
-				break;
-				}
-				
-			case 0x10234100:
-				{
-				fileName.Append(KPlugin4100File);
-				numIdsTrained = GetNumIdsFromPluginDbL(fileName);
-				break;
-				}
-				
-			case 0x200032E5:
-				{
-				numIdsTrained = actualNumIdsFromServer - 1;
-				}
-				
-			default:				
-				numIdsTrained = KErrNotFound;
-				break;
-			}
-		if (KErrNotFound != numIdsTrained)
-			{
-			//We are only considering the 3 specified Ids
-			if (0 == numIdsTrained)
-				{ expectedStatus = EAuthUntrained; }
-			else if(actualNumIdsFromServer == numIdsTrained)
-				{ expectedStatus = EAuthFullyTrained; }
-			else if (actualNumIdsFromServer > numIdsTrained)
-				{ expectedStatus = EAuthTrained; }
-			else 
-				{
-				ERR_PRINTF2(_L("Error!! PluginId=%x has an unexpected Number of Ids in the Database = %i"), 
-						numIdsTrained);
-				ERR_PRINTF2(_L("Actual number of Ids registered by the authServer = %i"), 
-						actualNumIdsFromServer);				
-				}
-			
-			//Final check
-			if (presentPluginStatus != expectedStatus)
-				{
-				ERR_PRINTF4(_L("Present PluginStatus of plugin %x is not as expected. It is %i instead of %i"), 
-							presentPluginId, presentPluginStatus, expectedStatus);
-				retValue = EFalse;
-				}
-			else
-				{
-				retValue = ETrue;	
-				}
-			}
-		}//End of for loop
-	CleanupStack::PopAndDestroy(&pluginList1); //infoArray, results in a call to CleanupEComArray
-	return retValue;	
-	}
-
-TInt CTAuthSvrStepBase::GetNumIdsFromPluginDbL(const TDesC& aFileName)
-	{
-	TBuf8<500> pluginDbFileContents;
-	TInt numIds = 0;	
-	CIniData* file=NULL;
-	file = CIniData::NewL(aFileName);	
-	CleanupStack::PushL(file);
-	
-	// Look for a key under a named section, retrieve text value	
-	TBool ret=EFalse;	//return value from FindVar functions	
-	TPtrC resultPtr;
-	
-	ret=file->FindVar(KPluginIniSection, KPinDbTag, resultPtr);	
-	if(ret == EFalse)
-		{		
-		RDebug::Print(_L("Unable to read value in ini file. Filename: %S, SectionName = %S, value = %S."), &aFileName, &KPluginIniSection, &KPinDbTag);
-		numIds = ret;
-		}
-	else
-		{
-		pluginDbFileContents.Copy(resultPtr);
-		_LIT8(KMarker, ":");
-		TBuf8<3> searchString;		
-		searchString = KMarker;
-		
-		TInt dBLen = pluginDbFileContents.Length();
-		for (TInt i = 0; i < dBLen; i++)
-			{
-			if (pluginDbFileContents[i] == ':')
-				{
-				numIds++;
-				}
-			}//End for
-		}//End check
-	CleanupStack::PopAndDestroy(file);
-	return numIds;
-	}
-
-void CTAuthSvrStepBase::CreatePinPluginInputFileL(TPinPluginDialogOperation aOperation, TPinValue aPinValue)
-	{
-	RFileWriteStream stream;
-	RFs fs;
-	User::LeaveIfError(fs.Connect());
-	TInt err = stream.Replace(fs, KInputFile, EFileWrite | EFileShareExclusive);
-	User::LeaveIfError(err);
-	stream.PushL();
-	
-	MStreamBuf* streamBuf = stream.Sink();
-	streamBuf->SeekL(MStreamBuf::EWrite, EStreamEnd);
-	stream.WriteInt32L(aOperation);
-	stream.WriteInt32L(aPinValue.Length());
-	stream.WriteL(aPinValue);
-	stream.WriteInt32L(0);
-	stream.WriteInt32L(4);
-	TPinPluginDialogResult cmdResult = EOk;
-	stream.WriteInt32L(cmdResult);
-	aOperation = EPinPluginInfo;
-	stream.WriteInt32L(aOperation);
-	TPinPluginDialogResult cmdFinalResult = EOk;
-	stream.WriteInt32L(cmdFinalResult);
-	stream.WriteInt32L(2);
-	stream.CommitL();
-	CleanupStack::PopAndDestroy(); // stream
-	
-	}
-
-TPinValue CTAuthSvrStepBase::GetPinFromOutputFileL()
-	{
-	RFileReadStream stream;
-	RFs fs;
-	TPinValue pinValue;
-	
-	User::LeaveIfError(fs.Connect());
-	TInt err = stream.Open(fs, KOutputFile, EFileRead | EFileShareExclusive);
-	if(err == KErrNotFound)
-		{
-		pinValue.Copy(_L("11111"));
-		return pinValue;
-		}
-	
-	User::LeaveIfError(err);
-	stream.PushL();
-
-	MStreamBuf* streamBuf = stream.Source();
-	
-	stream.ReadInt32L();
-	TInt pinValueLength = stream.ReadInt32L();
-	HBufC8* pinValueBuf = HBufC8::NewMaxLC(pinValueLength);
-	TPtr8 pinValuePtr(pinValueBuf->Des());
-	stream.ReadL(pinValuePtr, pinValueLength);
-	pinValue.Copy(pinValuePtr);
-	
-	CleanupStack::PopAndDestroy(2, &stream);	
-
-	return pinValue;
-	}
-
-AuthServer::TIdentityId CTAuthSvrStepBase::getLastAuthId()
-/**
-	Retrieve the last Identity that was authenticated from the Global Db file
-	@return		The last authenticated Identity
- */
-	{
-	TIdentityId lastId;
-	lastId = 0;
-		
-	HBufC* valueFromFile;
-	TInt ret = 0;
-	TInt err = 0;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<128> authSvrPolicyFile (sysDrive.Name());
-	authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-	
-	TRAP(err, ret = readFromNamedConfigL(authSvrPolicyFile, KLastAuthIdTag, valueFromFile));
-	
-	if (KErrNotFound == ret)
-		{		
-		ERR_PRINTF3(_L("Error while getting last AuthId. Tag %S not found in %S file"), KLastAuthIdTag, &authSvrPolicyFile);
-		}
-	else
-		{		
-		TLex input (*valueFromFile);
-		TRadix aRadix = EDecimal;
-		input.Val(lastId, aRadix);
-		RDebug::Print(_L("UserId that is retrieved from file = %u"), lastId);
-		}
-		
-	delete valueFromFile;		
-	
-	return lastId;
-	}
-	
-	
-void CTAuthSvrStepBase::ClientMessage(TBool aIsMessage, const TDesC& aDisplayString)
-	{
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> fileName (sysDriveName);
-	
-	fileName.Append(KAuthSvrPolicyFile);
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(fileName));	
-	CleanupStack::PushL(file);
-	if(r!=KErrNone)
-	{
-	RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &fileName);
-	}	
-	
-	if(aIsMessage)
-		{
-		TBool ret=file->SetValue(KPluginIniSection, KDisplayMessage, aDisplayString);
-		file->WriteToFileL();
-		}
-	else
-		{
-		TBool ret=file->SetValue(KPluginIniSection, KDisplayMessage, KNullDesC());	
-		}
-	file->WriteToFileL();
-	CleanupStack::PopAndDestroy(file);
-	}
-
-//Implementation of member functions for CTStepActSch
-
-TVerdict CTStepActSch::doTestStepPreambleL()
-/**
-	Override CTestStep by allocating an active scheduler which is available to the subclass.	
-	@return					This test step's result, which isn't actually used by ThreadStepExecutionL.
- */
-	{
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	iActSchd = new(ELeave) CActiveScheduler;
-	return TestStepResult();
-	}
-
-
-TVerdict CTStepActSch::doTestStepPostambleL()
-/**
-	Override CTestStep by deleting the active scheduler which allocated in doTestStepPreambleL.
-	@return					This test step's result, which isn't actually used by ThreadStepExecutionL.
- */
-	{
-	CTAuthSvrStepBase::doTestStepPostambleL();
-	delete iActSchd;
-	return TestStepResult();
-	}
-
-/**
- Utility clean up function used when working with locally declared arrays
- */
-void CleanupEComArray(TAny* aArrayOfPlugins)
-	{	
-	(static_cast<RImplInfoPtrArray*> (aArrayOfPlugins))->ResetAndDestroy();
-	(static_cast<RImplInfoPtrArray*> (aArrayOfPlugins))->Close();	
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_clientsidsupport.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,294 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bautils.h>
-#include <s32file.h>
-#include <test/testexecutelog.h>
-
-#include "authserver/authmgrclient.h"
-#include "authserver/authclient.h"
-#include "authserver/identity.h"
-#include "tAuthSvrStep.h"
-
-using namespace AuthServer;
-
-class CActiveObj : public CActive
-    {
-    public:
-    CActiveObj(RAuthMgrClient& aClient, CAuthExpression* aExpression,
-				 TInt aFresh, TBool aClientSpecific, TUid aClientSid, TBool aIdentityString, TPluginId aPluginId, TIdentityId aId) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iAe(aExpression),
-         iFresh(aFresh),
-         iClientSpecific(aClientSpecific),
-         iWithString(aIdentityString),
-         iPluginId(aPluginId),
-         iId(aId),
-         iMode(-1)
-        {
-        CActiveScheduler::Add(this);
-        iClientSid = aClientSid;
-        }
-   
-    void Authenticate() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-		iMode = 0;
-        }
-        
-   void Retrain() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-		iMode = 1;
-        }
-        
-    void DoCancel() 
-        {
-        }
-        
-    TInt RunError(TInt aError)
-    	{
-    	iErr = aError;
-	   	CActiveScheduler::Stop();
-	   	return KErrNone;
-    	}
-        
-    void RunL() 
-        {
-        switch (iRunCount)
-		  {
-		  case 0:
-		  
-		  switch (iMode)
-			  {
-			  
-			  case 0:
-				iClient.AuthenticateL(*iAe, iFresh, iClientSpecific, iClientSid, EFalse, KNullDesC(), iIdentity, iStatus);
-			    break;
-			    
-			  case 1:
-				iClient.TrainPlugin(iId, iPluginId, iStatus);
-				break;
-			  }
-			  
-			SetActive();
-			break;
-			
-		  case 1:
-   		  
-   		  	iResult = iStatus.Int() == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			CActiveScheduler::Stop();
-			break;
-			
-     	  default:
-			iResult = EFail;
-			CActiveScheduler::Stop();
-			 
-		    }
-		  ++iRunCount;
-          }
-          
-    ~CActiveObj()
-		{
-		
-		}
-		
-    RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iIdentity;
-    TInt iErr;
-    TInt iFresh;
-    TBool iClientSpecific;
-    TBool iWithString;
-    TPluginId iPluginId;
-    TIdentityId iId;
-    TInt iMode;
-    TUid iClientSid;
-    };
-    
- 
- CTStepClientSidSupport::CTStepClientSidSupport(CTAuthSvrServer& aParent): iParent(aParent)
- 	{
- 	SetTestStepName(KTStepClientSidSupportCheck);
- 	}
- 	
- TVerdict CTStepClientSidSupport::doTestStepPreambleL()
- 	{
- 	SetTestStepResult(EFail);
- 	
- 	CTStepActSch::doTestStepPreambleL();
- 	 	
- 	if(GetHexFromConfig(ConfigSection(),_L("plugin1Id"), iPluginId) == EFalse)
-		{
-		INFO_PRINTF1(_L("Plugin Id not specified in the ini file"));
-		return TestStepResult();
-		}
-
-	if(GetBoolFromConfig(ConfigSection(),_L("clientSpecificKey"), iClientSpecificKey) == EFalse)
-	 	{
-	 	INFO_PRINTF1(_L("Client Specific Key not specified in the ini file"));
-		return TestStepResult();
-	 	} 
-		 	
-	if(GetBoolFromConfig(ConfigSection(),_L("withString"), iWithString) == EFalse)
-	 	{
-	 	INFO_PRINTF1(_L("Identity String not specified in the ini file"));
-		return TestStepResult();
-	 	}
-	 	
-	TInt clientSid = 0;
-   	if(GetHexFromConfig(ConfigSection(),_L("clientSid"), clientSid) == EFalse)
-		{
-		INFO_PRINTF1(_L("Client Sid not specified in the ini file"));
-		return TestStepResult();
-		}
-	
-	iClientSid.iUid = clientSid;
- 	
-	 	
-	SetTestStepResult(EPass);
-	return TestStepResult();
- 	}
-  
- TVerdict CTStepClientSidSupport::doTestStepL()
-	{
-    SetTestStepResult(EFail);
-    
-    InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	CActiveScheduler::Install(iActSchd);
-    
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	CleanupClosePushL(authMgrClient1);
-	
-    TPtrC exprString;
-	if(GetStringFromConfig(ConfigSection(),_L("plugin1Id"), exprString) == EFalse)
-		{
-		INFO_PRINTF1(_L("Plugin Id not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	CAuthExpression* authExpr = CreateAuthExprLC(exprString);
-	CActiveObj active1(authMgrClient1, authExpr, 20, iClientSpecificKey, iClientSid, iWithString, iPluginId, 0);
-	active1.Authenticate();
-	CActiveScheduler::Start();
-	
-	if(EPass != active1.iResult)
-		{
-		ERR_PRINTF3(_L("Authentication Result error = %d, iResult = %d\n"), active1.iErr, active1.iResult);			
-		SetTestStepError(active1.iErr);
-		CleanupStack::PopAndDestroy(2, &authMgrClient1);
-		return TestStepResult();
-		}
-	
-	iIdentity = active1.iIdentity;
-	CleanupStack::PushL(iIdentity);
-	TIdentityId identityId = iIdentity->Id();
-	
-	// set plugin input train value.
-	InitPluginDataFromFileL(ETrue);
-	
-	CActiveObj active2(authMgrClient1, authExpr, 0, iClientSpecificKey, iClientSid, iWithString, iPluginId, identityId);
-	active2.Retrain();		
-	CActiveScheduler::Start();
-	
-	if(EPass != active1.iResult)
-		{
-		ERR_PRINTF3(_L("Error encountered while training plugin = %d, iResult = %d\n"), active2.iErr, active2.iResult);			
-		SetTestStepError(active2.iErr);
-		CleanupStack::PopAndDestroy(3, &authMgrClient1);
-		return TestStepResult();
-		}
-	
-	// set plugin inputId value.
-	InitPluginDataFromFileL(EFalse);
-	
-	CActiveObj active3(authMgrClient1, authExpr, 20, iClientSpecificKey, iClientSid, iWithString, iPluginId, 0);
-	active3.Authenticate();		
-	CActiveScheduler::Start();
-	
-	CleanupStack::Pop(iIdentity);	
-	CleanupStack::PopAndDestroy(2, &authMgrClient1);
-	
-	if(EPass != active1.iResult)
-		{
-		ERR_PRINTF3(_L("Authentication Result error = %d, iResult = %d\n"), active3.iErr, active3.iResult);			
-		SetTestStepError(active3.iErr);
-		delete iIdentity;
-		return TestStepResult();
-		}
-
-	iIdentityAfterRetrain = active3.iIdentity;
-	
-	TBool success = VerifyObtainedResultsWithExpectedL();
-	if(success)
-		{
-		SetTestStepResult(EPass);
-		}
-	
-	return TestStepResult();
-    };
-    
- TBool CTStepClientSidSupport::VerifyObtainedResultsWithExpectedL()
- 	{
- 	// required for ReadUserData capability test(when client sid is not equal
- 	// to the calling application's sid or zero, ReadUserData is required for
- 	// authentication.)
- 	if(iClientSid.iUid == 0)
- 		{
- 		TInt clientSid;
- 		if(GetHexFromConfig(ConfigSection(),_L("callingAppSid"), clientSid) == EFalse)
-			{
-			INFO_PRINTF1(_L("Sid of calling application not specified in the ini file"));
-			return TestStepResult();
-			}
-			
-		iClientSid.iUid = clientSid;
- 		}
- 		
- 	CProtectionKey* protection = iIdentity->Key().ClientKeyL(iClientSid.iUid);
- 	 	
- 	const CProtectionKey& obtainedKey = iIdentityAfterRetrain->Key();
- 	TBool success = EFalse;
- 	if(protection->KeyData() == obtainedKey.KeyData())
- 		{
- 		success = ETrue;
- 		}
- 	
- 	return success;
- 	}
- 	
- CTStepClientSidSupport::~CTStepClientSidSupport()
- 	{
- 	delete iIdentity;
- 	delete iIdentityAfterRetrain;
- 	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_createdb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,115 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-#include "tAuthSvrStep.h"
-#include <testexecutelog.h>
-#include "authserver/protectionkey.h"
-#include "../source/server/encryptedprotectionkey.h"
-#include "../source/server/transientkey.h"  
-#include "../source/server/transientkey.h"  
-#include "../source/server/transientkeyinfo.h"
-#include "../source/server/authdb.h"
-
-#include <s32file.h>
-#include <f32file.h>
-
-using namespace AuthServer;
-
-CTStepCreateDb::CTStepCreateDb()
-	{
-	SetTestStepName(KTStepCreateDb);
-	}
-
-TVerdict CTStepCreateDb::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-__UHEAP_MARK;		// Check for memory leaks
-
-	TBool res = ETrue;
-
-	/*
-	*/
-//	TBuf<50> path;
-	_LIT(kAuthDbFile, "authdb.db");
-	_LIT(kPath,"\\private\\102740FC\\");
-
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	iFs.CreatePrivatePath(sysDrive);
-
-	TBuf<128> filePath (sysDrive.Name());
-	filePath.Append(kPath);
-	TInt err = iFs.MkDirAll(filePath);
-    if (err != KErrAlreadyExists)
-	  {
-	  User::LeaveIfError(err);
-	  }
-	
-	filePath.Insert(filePath.Length(), kAuthDbFile);
-
-	// Set up database
-	CAuthDb* authDb = CAuthDb::NewL();
-	CleanupStack::PushL(authDb);
-
-	for (TInt i = 0 ; i < KNumPlugins ; ++i)
-	  {
-		authDb->AddPluginL(iPlugins[i]);
-		iPlugins[i] = 0; // transfer ownership
-	  }
-
-	_LIT(kId1Name, "Identity1");
-	_LIT(kId2Name, "Identity2");
-	_LIT(kId3Name, "Identity3");
-	
-	authDb->AddIdentityL(1, kId1Name, iId1Keys[0]);
-	iId1Keys[0] = 0; // transfer ownership
-	authDb->AddIdentityL(2, kId2Name, iId2Keys[0]); 
-	iId2Keys[0] = 0; // transfer ownership
-	authDb->AddIdentityL(3, kId3Name, iId3Keys[0]); 
-    iId3Keys[0] = 0; // transfer ownership
-
-	for (TInt i = 1 ; i < KNumPlugins ; ++i)
-	  {
-		// add a new key info
-		authDb->UpdateL(1, iId1Keys[i]);
-		iId1Keys[i] = 0; // transfer ownership
-		authDb->UpdateL(2, iId2Keys[i]);
-		iId2Keys[i] = 0; // transfer ownership
-		authDb->UpdateL(3, iId3Keys[i]);
-		iId3Keys[i] = 0; // transfer ownership
-	  }
-
-	// Externalize
-	RFileWriteStream writeStore;
-	User::LeaveIfError(writeStore.Replace(iFs, filePath, 
-										  EFileShareExclusive | EFileStream));
-    CleanupClosePushL(writeStore);
-
-	authDb->ExternalizeL(writeStore);
-
-	CleanupStack::PopAndDestroy(&writeStore);
-
-	CleanupStack::PopAndDestroy(1,authDb);
-
-	SetTestStepResult(res ? EPass : EFail);
-	
-__UHEAP_MARKEND;	
-	return TestStepResult();
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_multithreaded.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Multi threaded tests on AuthServer.
-*
-*/
-
-
-#include "tAuthSvrStep.h"
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-
-
-using namespace AuthServer;
-
-//Active object for registration
-class CMultiThreadedRegisterActive : public CActive
-    {
-    public:
-     CMultiThreadedRegisterActive(RAuthMgrClient& aClient, HBufC* aIdentityString, CIdentity*& aResult) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iIdentityString(aIdentityString),
-         iErr(KErrNone)
-        {
-        CActiveScheduler::Add(this);
-        }
-    ~CMultiThreadedRegisterActive()
-        {
-        delete iIdentityString; 
-        }
-    void doReg()
-        {
-        SetActive();        
-        TRequestStatus* status = &iStatus;
-        User::RequestComplete(status, KErrNone);
-        iFirstTime = ETrue;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iFirstTime)
-            {
-            SetActive();
-            iStatus = KRequestPending;
-            iClient.RegisterIdentityL(iResult, *iIdentityString, iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-            iErr = iStatus.Int();
-            RDebug::Printf("iErr = %d", iErr);
-            CActiveScheduler::Stop();
-            }
-        }
-        
-    TBool iFirstTime;
-    RAuthMgrClient& iClient;
-    CIdentity*& iResult;
-    HBufC* iIdentityString;
-    TInt iErr;
-    };
-
-CTMultiThreaded::~CTMultiThreaded()
-	{}
-
-CTMultiThreaded::CTMultiThreaded(CTAuthSvrServer& aParent): iParent(aParent)
-
-	{
-	
-	SetTestStepName(KTMultiThreadedTest);
-	}
-
-TVerdict CTMultiThreaded::doTestStepPreambleL()
-
-	{
-	CTStepActSch::doTestStepPreambleL();	
-	return TestStepResult();
-	}
-
-TVerdict CTMultiThreaded::doTestStepPostambleL()
-
-    {
-    
-    CTStepActSch::doTestStepPostambleL();
-    return TestStepResult();
-    }
-
-TVerdict CTMultiThreaded::doTestStepL()
-	{
-	SetTestStepResult(EPass);
-	Logger().ShareAuto();
-	//Initialize AuthServer.
-	InitAuthServerFromFileL();  
-	
-	
-	//Setup two threads which request for registration concurrently.    
-	//Create first thread.
-	RThread firstThread;
-	TInt err(0);
-	TThreadParams firstThreadParams;
-	err = firstThread.Create( _L("First Thread"), (TThreadFunction)runMultiThreadedTest, 
-                                    KDefaultStackSize, KMinHeapSize, 1024*1024 /*Max heap size*/, &firstThreadParams);
-	if(err != KErrNone)
-	    {
-	    ERR_PRINTF2(_L("Couldn't start first thread. Error = %d"), err);
-	    SetTestStepResult(EFail);
-	    return TestStepResult();
-	    }
-	    
-	// Setup the requeststatus for firstThread completion notification.
-	TRequestStatus firstThreadFinishStatus;
-	firstThread.Logon(firstThreadFinishStatus);
-	
-	
-	
-	//Setup the second thread similarly.
-	RThread secondThread;
-	TThreadParams secondThreadParams;
-    err = secondThread.Create( _L("Second Thread"), (TThreadFunction)runMultiThreadedTest, 
-									KDefaultStackSize, KMinHeapSize, 1024*1024 /*Max heap size*/, &secondThreadParams);
-    if(err != KErrNone)
-        {
-        ERR_PRINTF2(_L("Couldn't start second thread. Error = %d"), err);
-        SetTestStepResult(EFail);
-        return TestStepResult();
-        }
-        
-    // Setup the requeststatus for secondThread completion notification.
-    TRequestStatus secondThreadFinishStatus;
-    secondThread.Logon(secondThreadFinishStatus);
-    
-    //Resume both threads.
-	firstThread.Resume();   
-	secondThread.Resume();   
-	
-	//Wait for either request to complete.
-	User::WaitForRequest(firstThreadFinishStatus, secondThreadFinishStatus );     
-	
-	//Now, wait for the unfinished thread.
-	User::WaitForRequest(firstThreadFinishStatus == KRequestPending? firstThreadFinishStatus:secondThreadFinishStatus);
-	
-	INFO_PRINTF1(_L("Both Threads completed."));
-	INFO_PRINTF2(_L("First thread completed with %d."), firstThreadParams.result);
-	INFO_PRINTF2(_L("Second thread completed with %d."), secondThreadParams.result);
-	
-	if((firstThreadParams.result != KErrServerBusy && secondThreadParams.result != KErrNone) &&
-	        (firstThreadParams.result != KErrNone && secondThreadParams.result != KErrServerBusy))
-	    {
-	    SetTestStepResult(EFail);
-	    }
-	firstThread.Close();
-	secondThread.Close();
-	return TestStepResult();
-	}
-
-
-
-void CTMultiThreaded::runMultiThreadedTest(TThreadParams* aParams)
-    {
-    CTrapCleanup* cleanup = CTrapCleanup::New();
-    CActiveScheduler* sched(0);
-    
-    TRAPD(err, sched = new (ELeave) CActiveScheduler);
-    if(err != KErrNone)
-        {
-        delete cleanup;
-        User::Exit(err);
-        }
-    CActiveScheduler::Install(sched); 
-   
-    
-    /* Switch case can be added here to generalize this function to run any method.
-     * For now, only registration is called.
-     */
-    
-    TRAPD(ret,doRegisterL(*aParams));
-	
-	RDebug::Printf("doRegisterL returned %d", ret);
-    
-    delete cleanup;
-    delete sched;
-    }
-
-
-void CTMultiThreaded::doRegisterL(TThreadParams& aParams)
-    {
-    _LIT(KIdString, "User1");
-    
-    RAuthMgrClient client;
-    User::LeaveIfError(client.Connect());
-    CleanupClosePushL(client);
-    
-    HBufC* identityString = KIdString().AllocLC();
-    CIdentity* identity1 = 0;
-    
-    CMultiThreadedRegisterActive* active = new (ELeave)CMultiThreadedRegisterActive(client, identityString, identity1);
-    CleanupStack::PushL(active);
-    active->doReg();
-    CActiveScheduler::Start();
-    
-    //Store the error code in aParams.
-    aParams.result = active->iErr;
-    if(aParams.result == KErrNone)
-        {
-        RDebug::Printf("Registered new Identity! Id = %x", identity1->Id());
-        }
-    else
-        {
-        RDebug::Printf("Registration Failed !");
-        }
-    
-    delete identity1;
-    
-    CleanupStack::Pop(3, &client);
-    }
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_oom.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,861 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-#include "authrepository.h"
-#include <scs/cleanuputils.h>
-
-using namespace AuthServer;
-class CAuthOomActive : public CActive
-    {
-    public:
-    CAuthOomActive(RAuthMgrClient& aClient, CAuthExpression* aExpression,
-				 TInt aFresh, TBool aClientSpecific, TBool aAuthViaAlias, const TDesC& aClientMessage, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iAe(aExpression),
-         iStop(aStop),
-         iFresh(aFresh),
-         iIdToStore(0), 
-         iClientSpecific(aClientSpecific),
-         iAuthViaAlias(aAuthViaAlias),
-         iClientMessage(aClientMessage)
-        {
-        CActiveScheduler::Add(this);
-        }
-    
-   void doAuth() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-	void DoCancel() 
-        {
-        }
-        
-    TInt RunError(TInt aError)
-    	{
-    	 TRequestStatus* status = &iStatus;
-    	  if(iStatus.Int() == KErrNoMemory)
-    	 	 {
-    	 	 CActiveScheduler::Stop();
-    	 	 User::Leave(aError);
-    	 	   
-    	 	 }
-    	  else if (iStatus == KRequestPending)
-    	     {   		 
-    	      User::RequestComplete(status, aError);
-    	      CActiveScheduler::Stop();
-    	      User::Leave(aError);
-    	     }
-    	       	
-    	  CActiveScheduler::Stop();
-    	  if(aError == KErrNoMemory)
-    		  {
-    		  User::Leave(aError);
-    		  }
-    	  return KErrNone;
-    	}
-    	
-    void RunL() 
-        {
-        iErr = iStatus.Int();
-        TUid val = TUid::Uid(0);
-		switch (iRunCount)
-		  {
-		  case 0:
-		  	{
-		  	iId = 0;
-
-			TUid uid = TUid::Uid(0);
-				
-	
-			iClient.AuthenticateL(*iAe, iFresh, iClientSpecific, val, EFalse, iClientMessage, iId, iStatus);
-		
-			SetActive();
-
-			break;
-		  	}
-            
-		  case 1:
-			if (0 != iId)
-				{
-				iIdToStore = iId->Id();
-				delete iId;
-				iId = NULL;
-				}
-			
-			iResult = iStatus == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-            if(iErr == KErrNoMemory)
-            	{
-            	User::Leave(KErrNoMemory);
-            	}
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-			
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-
-	~CAuthOomActive()
-		{
-		if(iId != NULL)
-			delete iId;
-		}
-          
-   		
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    TInt iFresh;
-    TIdentityId iIdToStore;
-    TBool iClientSpecific;
-    TBool iAuthViaAlias;
-    const TDesC& iClientMessage;
-    };
-
-class CRegOomActive : public CActive
-    {
-    public:
-    CRegOomActive(RAuthMgrClient& aClient, CIdentity*& aResult) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iErr(KErrNone)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doReg()
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iFirstTime = ETrue;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iFirstTime)
-            {
-			SetActive();
-            iStatus = KRequestPending;
-            iClient.RegisterIdentityL(iResult, _L("SOMENAME"), iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-            iErr = iStatus.Int();
-            
-            if (iErr == KErrNoMemory)
-            	{
-            	User::Leave(KErrNoMemory);
-            	}
-            CActiveScheduler::Stop();
-			}
-        }
-     TInt RunError(TInt error)
-    	 {
-    	 
-    	 TRequestStatus* status = &iStatus;
-    	 if(iStatus.Int() == KErrNoMemory)
-    		 {
-    		 CActiveScheduler::Stop();
-    		 User::Leave(error);
-    		   
-    		 }
-    	 else if (iStatus == KRequestPending)
-    		 {   		 
-    		 User::RequestComplete(status, error);
-    		 CActiveScheduler::Stop();
-    		 User::Leave(error);
-    		 }
-     	
-    	 CActiveScheduler::Stop();
-         User::Leave(error);
-         return KErrNone;
-    	 }
-     
-     ~CRegOomActive()
-    	 {
-    	 Cancel(); 	 
-    	 }
-        
-    TBool iFirstTime;
-    RAuthMgrClient& iClient;
-    CIdentity*& iResult;
-    TInt iErr;
-    };
-
-class CTrainOomActive : public CActive
-    {
-    public:    
-    CTrainOomActive(RAuthMgrClient& aClient, TPluginId plugin1IdValue, TIdentityId iIdFromFile, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iStop(aStop),
-         pluginIdVal(plugin1IdValue),         
-         idToTrain (iIdFromFile)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doTrain() 
-        {
-
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iStatus.Int() != KErrNone)
-            {
-            }
-		switch (iRunCount)
-		  {
-		  case 0:
-				iStatus = KRequestPending;
-	            iClient.TrainPlugin(idToTrain, pluginIdVal, iStatus);
-				SetActive();
-			break;
-
-   		  case 1:
-			iResult = iStatus.Int() == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-            if (iErr == KErrNoMemory)
-                {
-                 User::Leave(KErrNoMemory);
-                }
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-
-     	  default:
-			iResult = EFail;
-			  if (iErr == KErrNoMemory)
-			    {
-			    User::Leave(KErrNoMemory);
-			    }
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-     TInt RunError(TInt error)
-    	 {
-
-    	 TRequestStatus* status = &iStatus;
-    	 if(iStatus.Int() == KErrNoMemory)
-    		 {
-    		 CActiveScheduler::Stop();
-    		 User::Leave(error);
-    		   
-    		 }
-    	 else if (iStatus == KRequestPending)
-    		 {   		 
-    		 User::RequestComplete(status, error);
-    		 CActiveScheduler::Stop();
-    		 User::Leave(error);
-    		 }
-     	
-    	 CActiveScheduler::Stop();
-         User::Leave(error);
-         return KErrNone;
-    	 
-    	 }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-    TBool iStop;
-    TInt iErr;
-    TPluginId pluginIdVal;
-    TIdentityId idToTrain;
-    };
-
-CAuthSvrOom::~CAuthSvrOom()
-/**
-  Destructor
- */
-	{}
-
-CAuthSvrOom::CAuthSvrOom(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	
-	SetTestStepName(KTAuthServerOom);
-	}
-
-TVerdict CAuthSvrOom::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-	CTStepActSch::doTestStepPreambleL();	
-	CActiveScheduler::Install(iActSchd);
-	return TestStepResult();
-	}
-
-
-TVerdict CAuthSvrOom::doTestStepL()
-	{
-	
-	//Client side/Server side OOM test or Performance test??
-	
-	TInt testType(0);
-	GetIntFromConfig(ConfigSection(), _L("TestType"), testType);
-	ReadTestConfigurationL();
-	switch(testType)
-		{
-		case 1: doClientOOMTestL();
-				break;
-		
-		case 2: doServerOOMTestL();
-				break;
-				
-		case 3: doPerformanceTestL();
-				break;
-				
-		default:
-			//Should not reach here !
-			   break;
-		}
-	
-	return TestStepResult();
-	}
-TVerdict CAuthSvrOom::doClientOOMTestL()
-/**
- * 	Runs the test step under OOM Conditions checking that each heap allocation is fail safe
- */
-	{	
-	// Pre and Post test heap cell allocation counts
- 	TInt cellCountAfter = 0;
-	TInt cellCountBefore = 0;
-	
-	/**
-	 * The loop tests each heap allocation under out of memory conditions to determine whether
-	 * the framework cleans up correctly without leaking memory.
-	 * 
-	 * The 'for' loop does not have any completion criteria, so the loop breaks out as soon 
-	 * as any of the following events occur:
-	 * a) The pre and post heap cell counts mismatch signalling a memory leakage
-	 * b) An unexpected leave (any leave with an error code other than 'KErrNoMemory')
-	 * c) All heap allocations have been tested and the test returns 'KErrNone'
-	 */
-	for (TInt testCount = 0; ; ++testCount)
- 		{
- 		__UHEAP_RESET;
- 		__UHEAP_MARK;
- 		
-__UHEAP_SETFAIL(RHeap::EDeterministic, testCount+1);
-		cellCountBefore = User::CountAllocCells();
- 		AuthServer::RAuthMgrClient authMgrClient;
- 		CleanupClosePushL(authMgrClient);
- 		authMgrClient.Connect();
- 		
- 		TRAPD(err, doTestL(authMgrClient));
- 		authMgrClient.ShutdownServer();
- 		CleanupStack::PopAndDestroy(&authMgrClient);
- 		
- 		cellCountAfter = User::CountAllocCells();
- __UHEAP_MARKEND;
- 		
- 		
- 		if (err == KErrNone)
- 			{
-			INFO_PRINTF1(_L("Client OOM Test Finished"));
- 			break;
- 			}
- 		else if(err == KErrNoMemory)
- 			{
- 			
- 			if (cellCountBefore != cellCountAfter)
- 				{
- 				ERR_PRINTF2(_L("OOM Test Result: Failed - Memory leakage on iteration %d"), testCount);
- 				SetTestStepResult(EFail);
- 				break;
- 				}
- 			else
- 				{
- 				INFO_PRINTF2(_L("OOM Pass %d"), testCount);
- 				}
- 			}
- 		else
- 			{
- 			User::Leave(err);
- 			break;
- 			}
-		}
-	
-	
-	return TestStepResult();
-	}
-
-TVerdict CAuthSvrOom::doServerOOMTestL()
-	{
-
-	TInt err(0),err2(0);	
-	AuthServer::RAuthMgrClient authMgrClient;
-	CleanupClosePushL(authMgrClient);
-	authMgrClient.Connect();	
-	// Pre and Post test heap cell allocation counts
-	for (TInt testCount=0; ; ++testCount)
- 		{
- 		
- 		err = authMgrClient.SetServerHeapFail(testCount+1);
- 		if(KErrNoMemory == err)
- 			{
- 			ERR_PRINTF1(_L("ReInitializing..."));
- 			authMgrClient.ResetServerHeapFail();
- 			continue;
- 			}
-
- 		TRAPD(retStepVal, doTestL(authMgrClient));
- 		err2 = authMgrClient.ResetServerHeapFail();
- 		if((err == KErrServerTerminated) || (err2 == KErrServerTerminated))
- 			{
- 			INFO_PRINTF1(_L("AuthServer Terminated"));	
- 			SetTestStepResult(EFail);
- 			break;
- 			}
- 			
- 		if(KErrNone != err)
- 			{
- 			SetTestStepResult(EFail);
- 			break;
- 			}
- 		 		
- 	
- 		if(KErrNoMemory == retStepVal)
- 			{
- 			INFO_PRINTF2(_L("OOM Pass %d"), testCount);
- 			}
- 		else if (KErrNone == retStepVal)
- 			{
- 			INFO_PRINTF1(_L("Server OOM Test Finished"));
- 			break;
- 			}
- 		else 
- 			{
- 			// Propagate all errors apart from KErrNoMemory
- 			User::Leave(retStepVal);
- 			}
- 		
- 		
- 		}// for
-		CleanupStack::PopAndDestroy(&authMgrClient);
-		WaitForServerToReleaseDb();
-	return TestStepResult();
-	}
-
-
-TVerdict CAuthSvrOom::doTestL(AuthServer::RAuthMgrClient& ac)
-	{
-	TInt oomValue;
-	GetIntFromConfig(ConfigSection(), _L("OOMTest"), oomValue);
-	
-	switch(oomValue)
-		{
-		case 1:
-			
-			break;
-		
-		case 2:
-			//Registration API check			
-			doRegOOMTestL(ac);		
-			break;
-		
-		case 3:
-			//Synchronous Authenticate API check	
-			doSyncAuthOOMTestL(ac);
-			break;
-		
-		case 4:
-			//Asynchronous Authenticate API check
-			doAsyncAuthOOMTestL(ac);
-			break;
-			
-		case 5:
-			//Set preffered plugin type check
-			doSetPreferredTypeL(ac);
-			break;
-			
-		case 6:
-			//Check Remove Identity API
-			doRemoveIdentityL(ac);
-			break;
-		case 7:
-			//Check forget plugin API
-			doForgetPluginL(ac);
-			break;
-		case 8:
-			//Check Retrain Plugin API
-			doRetrainPluginL(ac);
-			break;
-		case 9:
-			//Check List PluginsL API
-			doListPluginsL(ac);
-			break;
-		case 10:
-			//Check List Active Plugins API
-			doListActivePluginsL(ac);
-			break;
-		case 11:
-			//Check List Plugins of type API
-			doListPluginsOfTypeL(ac);
-			break;
-		case 12:
-			//Check List Plugins With Training status API
-			doListPluginsWithTrainingStatusL(ac);
-			break;
-		case 13:
-			//Check List Authentication aliases API
-			doListAuthStrengthAliasesL(ac);
-			break;
-		case 14:
-			// Check the reset API (all plugins)
-			doResetAll(ac);
-			break;
-		case 15:
-			// Check the reset API (plugins of specified type)
-			doResetType(ac);
-			break;
-		case 16:
-			// Check the reset API (specified plugins)
-			doResetList(ac);
-			break;
-		default:
-			//Should never reach here
-			break;
-		}
-	return TestStepResult();
-	}
-
-void CAuthSvrOom::doStartupTestL()
-	{
-	RAuthClient r1;
-	CleanupClosePushL(r1);
-	r1.Connect();
-	CleanupStack::PopAndDestroy(&r1);	
-	}
-
-void CAuthSvrOom::doRegOOMTestL(AuthServer::RAuthMgrClient &ac)
-	{
-	
-	CIdentity* identity1 = 0;
-    CRegOomActive active(ac, identity1);
-    active.doReg();
-	CActiveScheduler::Start();
-	delete identity1;
-	}
-
-void CAuthSvrOom::doSyncAuthOOMTestL(AuthServer::RAuthMgrClient &ac)
-	{
-	TUid val = TUid::Uid(0);
-	CIdentity* id = 0;
-	CAuthExpression* expr = CreateAuthExprLC(iExprString);			
-	id = ac.AuthenticateL(*expr, iFreshnessVal, iClientSpecificKeyVal, val, EFalse, iMessage);
-	
-	delete id;
-	id = 0;
-	CleanupStack::PopAndDestroy(expr);
-	}
-
-void CAuthSvrOom::doAsyncAuthOOMTestL(AuthServer::RAuthMgrClient &ac)
-	{
-	CAuthExpression* expr = ac.CreateAuthExpressionL(iExprString);
-	CleanupStack::PushL(expr);
-		
-	CAuthOomActive active(ac, expr, iFreshnessVal, iClientSpecificKeyVal, EFalse, iMessage);
-	active.doAuth();		
-	CActiveScheduler::Start();
-			
-	if(expr)
-		{
-		CleanupStack::PopAndDestroy(expr);
-		}
-	}
-
-void CAuthSvrOom::doSetPreferredTypeL(AuthServer::RAuthMgrClient &ac)
-	{
-	TInt plugin(0);
-	GetHexFromConfig(ConfigSection(),KKnowledgePrefsTag, plugin);
-	TPluginId id = plugin;
-	ac.SetPreferredTypePluginL(EAuthKnowledge, id);
-	}
-
-void CAuthSvrOom::doRemoveIdentityL(AuthServer::RAuthMgrClient &ac)
-	{
-	TInt plugin1IdValue = 0;	
-	GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue);
-	
-	//Read the identityId to be removed
-	TIdentityId idToRemove = getLastAuthId();
-	ac.RemoveIdentityL(idToRemove);
-	}
-
-void CAuthSvrOom::doForgetPluginL(AuthServer::RAuthMgrClient &ac)
-	{
-	TInt plugin1IdValue = 0;	
-	GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue);
-	
-	//Read the identityId to be forgotten
-	TIdentityId idToForget = getLastAuthId();
-	ac.ForgetPluginL( idToForget , plugin1IdValue);
-	}
-
-void CAuthSvrOom::doRetrainPluginL(AuthServer::RAuthMgrClient &ac)
-	{
-	TInt plugin1IdValue = 0;
-	GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue);
-	
-	TIdentityId idToTrain = getLastAuthId();
-	//Train the plugin again with this identity. 	    
- 	CTrainOomActive active(ac, plugin1IdValue, idToTrain);
-	active.doTrain();		
-	CActiveScheduler::Start();			
-	}
-
-void CAuthSvrOom::doListPluginsL(AuthServer::RAuthMgrClient &ac)
-	{
-	RPluginDescriptions pluginList1;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-	CleanupStack::PushL(cleanup);					
-	ac.PluginsL(pluginList1);	
-	CleanupStack::PopAndDestroy(&pluginList1);
-		
-	}
-
-void CAuthSvrOom::doListActivePluginsL(AuthServer::RAuthMgrClient &ac)
-	{
-	RPluginDescriptions pluginList1;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-	CleanupStack::PushL(cleanup);					
-	ac.ActivePluginsL(pluginList1);	
-	CleanupStack::PopAndDestroy(&pluginList1);
-	}
-
-void CAuthSvrOom::doListPluginsOfTypeL(AuthServer::RAuthMgrClient &ac)
-	{
-	RCPointerArray<const CPluginDesc> pluginsList;
-	CleanupClosePushL(pluginsList);
-	TAuthPluginType t1 = EAuthKnowledge;				
-	ac.PluginsOfTypeL(t1, pluginsList);	
-	CleanupStack::PopAndDestroy(&pluginsList);
-	}
-
-void CAuthSvrOom::doListPluginsWithTrainingStatusL(AuthServer::RAuthMgrClient &ac)
-	{
-	RCPointerArray<const CPluginDesc> pluginsList;
-	CleanupClosePushL(pluginsList);		
-	TAuthTrainingStatus t1 = EAuthTrained;
-	ac.PluginsWithTrainingStatusL(t1, pluginsList);	
-	CleanupStack::PopAndDestroy(&pluginsList);
-	}
-
-void CAuthSvrOom::doListAuthStrengthAliasesL(AuthServer::RAuthMgrClient &ac)
-	{
-	RPointerArray<HBufC> aliasList;
-	CleanupResetAndDestroyPushL(aliasList);
-	ac.ListAuthAliasesL(aliasList);
-	CleanupStack::PopAndDestroy(&aliasList);
-	}
-
-// Check the reset API (all plugins)
-void CAuthSvrOom::doResetAll(AuthServer::RAuthMgrClient& ac)
-	{
-	TIdentityId identity = getLastAuthId(); // Anything but 0 since client does sanity check
-	ac.ResetIdentityL(identity, _L("1234"));
-	}
-
-// Check the reset API (plugins of specified type)
-void CAuthSvrOom::doResetType(AuthServer::RAuthMgrClient& ac)
-	{
-	TIdentityId identity = getLastAuthId(); // Anything but 0 since client does sanity check
-	ac.ResetIdentityL(identity, EAuthKnowledge, _L("2342"));
-	}
-
-// Check the reset API (specified plugins)
-void CAuthSvrOom::doResetList(AuthServer::RAuthMgrClient& ac)
-	{
-	TIdentityId identity = getLastAuthId(); // Anything but 0 since client does sanity check
-	TInt pluginId(0);
-	GetHexFromConfig(ConfigSection(),_L("plugin1Id"), pluginId);
-	RArray<TPluginId> pluginList;
-	CleanupClosePushL(pluginList);
-	RPointerArray<const HBufC> regDataList;
-	CleanupResetAndDestroyPushL(regDataList);
-	pluginList.AppendL(pluginId);
-	regDataList.AppendL(_L("1344").AllocL());
-	ac.ResetIdentityL(identity, pluginList, regDataList);
-	CleanupStack::PopAndDestroy(2, &pluginList);
-	}
-
-void CAuthSvrOom::ReadTestConfigurationL()
-	{
-	
-	TPtrC displayMessage;
-	TBool messageSent = (GetStringFromConfig(ConfigSection(),_L("DisplayMessage"), displayMessage) != EFalse);
-	iMessage = displayMessage;
-	ClientMessage(messageSent, displayMessage);
-	if(!messageSent)
-		{
-		iMessage = KNullDesC();
-		}
-	
-	TPinValue pinValue = GetPinFromOutputFileL();
-	CreatePinPluginInputFileL(EPinPluginIdentify, pinValue);
-		
-
-	GetStringFromConfig(ConfigSection(),_L("pluginId"), iExprString);
-  	
-	
-	//Retrieve the value of 'freshness' from the ini file, but if it's absent use the default value
-	if(GetIntFromConfig(ConfigSection(),_L("freshness"), iFreshnessVal) == EFalse)
-		{
-		iFreshnessVal = 10;
-		}
-	 		
-	iClientSpecificKeyVal = EFalse;	 	
-	//Retrieve the value of 'clientSpecificKey' from the ini file, but if it's absent use the default value
-	if(GetBoolFromConfig(ConfigSection(),_L("clientSpecificKey"), iClientSpecificKeyVal) == EFalse)
-		{
-		iClientSpecificKeyVal = EFalse;
-		}
-	 	
-	iDefaultpluginusage = EFalse;
-	if(GetBoolFromConfig(ConfigSection(),_L("defaultpluginusage"), iDefaultpluginusage ) == EFalse)
-		 {
-		 iDefaultpluginusage  = EFalse;
-		 }
-
-	}
-
-
-TVerdict CAuthSvrOom::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-	
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-TVerdict CAuthSvrOom::doPerformanceTestL()
-/**
- * 	Runs the test step under OOM Conditions checking that each heap allocation is fail safe
- */
-	{
-	TInt oomValue;
-	GetIntFromConfig(ConfigSection(), _L("OOMTest"), oomValue);
-	GetIntFromConfig(ConfigSection(), _L("iterationCount"), iIterationCount);	
-	StartTimer();
-	
-	for (TInt i = 0; i < iIterationCount; ++i)
- 		{
- 		
- 		AuthServer::RAuthMgrClient authMgrClient;
- 		CleanupClosePushL(authMgrClient);
- 		authMgrClient.Connect();
- 	
- 		TRAPD(err, doTestL(authMgrClient));
- 		authMgrClient.ShutdownServer();
- 		CleanupStack::PopAndDestroy(&authMgrClient);
- 		if(err != KErrNone)
- 			{
- 			User::Leave(err);
- 			break;
- 			}
- 
- 		ReadTestConfigurationL();
- 		if (oomValue == 2)
- 			{
- 			RemoveExistingDbL();
- 			}
- 		}
-	
-	StopTimerAndPrintResultL();
-	return TestStepResult();
-	}
-	
-void CAuthSvrOom::PrintPerformanceLog(TTime aTime)
-	{
-	TDateTime timer = aTime.DateTime();
-	INFO_PRINTF6(_L("%S,%d:%d:%d:%d"), &KPerformanceTestInfo(), timer.Hour(), timer.Minute(), timer.Second(), timer.MicroSecond());
-	}
-
-void CAuthSvrOom::StartTimer()
-	{
-	iStartTime.HomeTime();
-	PrintPerformanceLog(iStartTime);
-	}
-
-void CAuthSvrOom::StopTimerAndPrintResultL()
-	{
-	TTime endTime;
-	endTime.HomeTime();
-	PrintPerformanceLog(endTime);
-	
-	TTimeIntervalMicroSeconds duration = endTime.MicroSecondsFrom(iStartTime);
-	TInt actualDuration = (I64INT(duration.Int64())/1000)/iIterationCount; // in millisecond
-	
-	INFO_PRINTF3(_L("%S,%d"), &KActualTestCaseDuration(), actualDuration);
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_postmarketplugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,468 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-#include <f32file.h>
-#include <ecom/ecom.h>
-#include <e32test.h>
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-const TInt KWaitDuration = 30000000; 
-#define WAIT_FOR3s User::After(KWaitDuration)
- 
-
-_LIT(KSysBinDir, "c:\\sys\\bin\\");
-_LIT(KRscDir, "c:\\resource\\plugins\\");
-
-CTPostMarketPlugin::CTPostMarketPlugin()
-	{
-	SetTestStepName(KTPostMarketPlugin);
-	}
-
-TVerdict CTPostMarketPlugin::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	SetTestStepResult(EFail);
-	
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	
-	if (!GetStringFromConfig(ConfigSection(), _L("srcPlugin"), iSrcPlugin))
-		{
-		INFO_PRINTF1(_L("Source plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destPlugin"), iTargetPlugin))
-		{
-		INFO_PRINTF1(_L("Target plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("srcRscFile"), iSrcRscFile))
-		{
-		INFO_PRINTF1(_L("Source resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destRscFile"), iTargetRscFile))
-		{
-		INFO_PRINTF1(_L("Target resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-	
-
-TBool CTPostMarketPlugin::VerifyObtainedResultsWithExpectedL(AuthServer::RAuthMgrClient& aAuthMgrClient, TInt aExpectedCount, const TDesC& aExpectedPluginName)
-	{
-	RPluginDescriptions pluginList;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList);
-	CleanupStack::PushL(cleanup);
-	
-	//Get a list of all the available plugins.					
-	aAuthMgrClient.PluginsL(pluginList);	
-	TInt count = pluginList.Count();
-	TBool result = ETrue;
-	if(count != aExpectedCount)
-		{
-		INFO_PRINTF3(_L("Expected plugin count %d differs from actual %d..."), &count, &aExpectedCount);
-		result = EFalse;
-		}
-		
-	if(aExpectedPluginName.Length())
-		{
-		TBool found = EFalse;
-		const TDesC* pluginName = 0;
-		for(TInt i = 0; i < count; i++)
-			{
-			pluginName = pluginList[i]->Name();
-			if(pluginName->Compare(aExpectedPluginName) == 0)
-				{
-				found = ETrue;
-				break;
-				}
-			}
-		
-		if(!found)
-			{
-			result = EFalse;
-			}
-		}
-	
-	CleanupStack::PopAndDestroy(&pluginList);	
-	return result;	
-	}
-	
-
-TVerdict CTPostMarketPlugin::doTestStepL()
-	{
-	SetTestStepResult(EFail);
-	
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient;	
-	TInt connectVal = authMgrClient.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient);
-	
-	RTestUtilSession testutil;
-	User::LeaveIfError(testutil.Connect());
-	CleanupClosePushL(testutil);
-	
-	// test plugin install operation.
-	INFO_PRINTF1(_L("Test Plugin Install"));
-	TBool success = TestPluginInstallL(authMgrClient, testutil);
-	if(!success)
-		{
-		INFO_PRINTF1(_L("Test Install failed!"));
-		CleanupStack::PopAndDestroy(2, &authMgrClient);
-		return TestStepResult();
-		}
-	
-	// test plugin uninstall operation.
-	INFO_PRINTF1(_L("Test Plugin Uninstall"));
-	success = TestPluginUninstallL(authMgrClient, testutil);
-	if(!success)
-		{
-		INFO_PRINTF1(_L("Test Uninstall failed!"));
-		CleanupStack::PopAndDestroy(2, &authMgrClient);
-		return TestStepResult();
-		}
-	
-	CleanupStack::PopAndDestroy(2, &authMgrClient);
-	
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-
-TBool CTPostMarketPlugin::TestPluginInstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession)
-	{
-	TBool success = EFalse;
-	
-	// get the list of available plugin implementations, before an plugin installation/upgrade.
-	TInt pluginCountPreInstall = 0;
-	if(GetIntFromConfig(ConfigSection(),_L("initialPluginCount"), pluginCountPreInstall) == EFalse)
-		{
-		INFO_PRINTF1(_L("Pre Install Plugin Count not specified in the ini file"));
-		return success;
-		}
-	
-	TBool result = VerifyObtainedResultsWithExpectedL(aAuthMgrClient, pluginCountPreInstall);
-	if(!result)
-		{
-		return success;
-		}
-		
-	// Install a plugin.
-	// Incase c:\sys\bin or c:\resource\plugins directory ,doesn't exist, 
-	// move operation fails with KErrPathNotFound.So create one.
-		
-	TInt err = aUtilSession.MkDirAll(KSysBinDir);
-	if(err != KErrAlreadyExists && err != KErrNone)
-		{
-		User::Leave(err);
-		}
-		
-	err = aUtilSession.MkDirAll(KRscDir);
-	if(err != KErrAlreadyExists && err != KErrNone)
-		{
-		User::Leave(err);
-		}
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcPlugin, &iTargetPlugin);
-	User::LeaveIfError(aUtilSession.Move(iSrcPlugin, iTargetPlugin));
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcRscFile, &iTargetRscFile);
-	User::LeaveIfError(aUtilSession.Move(iSrcRscFile, iTargetRscFile));
-		
-	WAIT_FOR3s;
-	
-	// get the list of available plugin implementations, post installation/upgrade.
-	TInt pluginCountPostInstall = 0;
-	if(GetIntFromConfig(ConfigSection(),_L("expectedPluginCount"), pluginCountPostInstall) == EFalse)
-		{
-		INFO_PRINTF1(_L("Post Install Plugin Count not specified in the ini file"));
-		return success;
-		}
-		
-	// get the plugin implementation list post installation.This should load the plugin version based on the ROM_only field.	
-	TPtrC pluginNamePostInstall;
-	if ((!GetStringFromConfig(ConfigSection(), _L("pluginNamePostInstall"), pluginNamePostInstall)))
-		{
-		INFO_PRINTF1(_L("Post Install Plugin Name not specified in the ini file"));
-		}
-	
-	result = VerifyObtainedResultsWithExpectedL(aAuthMgrClient, pluginCountPostInstall, pluginNamePostInstall);	
-	if(!result)
-		{
-		return success;
-		}
-	
-	success = ETrue;	
-	return success;
-	}
-
-
-TBool CTPostMarketPlugin::TestPluginUninstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession)
-	{
-	TBool success = EFalse;
-	
-	// get the list of available plugin implementations, before an plugin installation/upgrade.
-	TInt pluginCountPreUninstall = 0;
-	if(GetIntFromConfig(ConfigSection(),_L("expectedPluginCount"), pluginCountPreUninstall) == EFalse)
-		{
-		INFO_PRINTF1(_L("Pre Uninstall Plugin Count not specified in the ini file"));
-		return success;
-		}
-	
-	TBool result = VerifyObtainedResultsWithExpectedL(aAuthMgrClient, pluginCountPreUninstall);
-	if(!result)
-		{
-		return success;
-		}
-		
-	// Install a plugin.
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iTargetPlugin, &iSrcPlugin);
-	User::LeaveIfError(aUtilSession.Move(iTargetPlugin, iSrcPlugin));
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iTargetRscFile, &iSrcRscFile);
-	User::LeaveIfError(aUtilSession.Move(iTargetRscFile, iSrcRscFile));
-		
-	WAIT_FOR3s;
-	
-	// get the list of available plugin implementations, post uninstallation.
-	TInt pluginCountPostUninstall = 0;
-	if(GetIntFromConfig(ConfigSection(),_L("initialPluginCount"), pluginCountPostUninstall) == EFalse)
-		{
-		INFO_PRINTF1(_L("Post Uninstall Plugin Count not specified in the ini file"));
-		return success;
-		}
-		
-	// get the plugin name post uninstall.	
-	TPtrC pluginNamePostUninstall;
-	if ((!GetStringFromConfig(ConfigSection(), _L("pluginNamePostUninstall"), pluginNamePostUninstall)))
-		{
-		INFO_PRINTF1(_L("Post Uninstall Plugin Name not specified in the ini file"));
-		}
-	
-	result = VerifyObtainedResultsWithExpectedL(aAuthMgrClient, pluginCountPostUninstall, pluginNamePostUninstall);	
-	if(!result)
-		{
-		return success;
-		}
-	
-	success = ETrue;	
-	return success;
-	}
-	
-	
-CTPostMarketPlugin::~CTPostMarketPlugin()
-/**
- Destructor
-*/
-	{};
-	
-CTInstallPluginStep::CTInstallPluginStep()
-	{
-	SetTestStepName(KTInstallPluginStep);
-	}
-
-TVerdict CTInstallPluginStep::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	SetTestStepResult(EFail);
-	
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	
-	if (!GetStringFromConfig(ConfigSection(), _L("srcPlugin"), iSrcPlugin))
-		{
-		INFO_PRINTF1(_L("Source plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destPlugin"), iTargetPlugin))
-		{
-		INFO_PRINTF1(_L("Target plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("srcRscFile"), iSrcRscFile))
-		{
-		INFO_PRINTF1(_L("Source resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destRscFile"), iTargetRscFile))
-		{
-		INFO_PRINTF1(_L("Target resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-	
-
-TVerdict CTInstallPluginStep::doTestStepL()
-	{
-	SetTestStepResult(EFail);
-	
-	//Connect to the AuthServer	
-	RTestUtilSession testUtil;
-	User::LeaveIfError(testUtil.Connect());
-	CleanupClosePushL(testUtil);
-	
-	// simulate plugin install operation via move operation.
-	INFO_PRINTF1(_L("Install RAM Plugin "));
-	
-	// Install a plugin.
-	// Incase c:\sys\bin or c:\resource\plugins directory ,doesn't exist, 
-	// move operation fails with KErrPathNotFound.So create one.
-	
-	TInt err = testUtil.MkDirAll(KSysBinDir);
-	if(err != KErrAlreadyExists && err != KErrNone)
-		{
-		User::Leave(err);
-		}
-		
-	err = testUtil.MkDirAll(KRscDir);
-	if(err != KErrAlreadyExists && err != KErrNone)
-		{
-		User::Leave(err);
-		}
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcPlugin, &iTargetPlugin);
-	User::LeaveIfError(testUtil.Move(iSrcPlugin, iTargetPlugin));
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcRscFile, &iTargetRscFile);
-	User::LeaveIfError(testUtil.Move(iSrcRscFile, iTargetRscFile));
-			
-	CleanupStack::PopAndDestroy(&testUtil);
-	
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-
-CTInstallPluginStep::~CTInstallPluginStep()
-/**
- Destructor
-*/
-	{};
-	
-
-CTUninstallPluginStep::CTUninstallPluginStep()
-	{
-	SetTestStepName(KTUninstallPluginStep);
-	}
-
-TVerdict CTUninstallPluginStep::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	SetTestStepResult(EFail);
-	
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	
-	if (!GetStringFromConfig(ConfigSection(), _L("srcPlugin"), iSrcPlugin))
-		{
-		INFO_PRINTF1(_L("Source plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destPlugin"), iTargetPlugin))
-		{
-		INFO_PRINTF1(_L("Target plugin not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("srcRscFile"), iSrcRscFile))
-		{
-		INFO_PRINTF1(_L("Source resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	if (!GetStringFromConfig(ConfigSection(), _L("destRscFile"), iTargetRscFile))
-		{
-		INFO_PRINTF1(_L("Target resource file not specified in the ini file"));
-		return TestStepResult();
-		}
-		
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-	
-
-TVerdict CTUninstallPluginStep::doTestStepL()
-	{
-	SetTestStepResult(EFail);
-	
-	//Connect to the AuthServer	
-	RTestUtilSession testUtil;
-	User::LeaveIfError(testUtil.Connect());
-	CleanupClosePushL(testUtil);
-	
-	// simulate plugin uninstall operation via move operation.
-	INFO_PRINTF1(_L("Unnstall RAM Plugin "));
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcPlugin, &iTargetPlugin);
-	User::LeaveIfError(testUtil.Move(iSrcPlugin, iTargetPlugin));
-	
-	INFO_PRINTF3(_L("Moving plugin from %S to %S..."), &iSrcRscFile, &iTargetRscFile);
-	User::LeaveIfError(testUtil.Move(iSrcRscFile, iTargetRscFile));
-	
-	CleanupStack::PopAndDestroy(&testUtil);
-	
-	SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-
-CTUninstallPluginStep::~CTUninstallPluginStep()
-/**
- Destructor
-*/
-	{};
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_removeauthmethod.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-//====================================================================================================    
-CTRemoveAuthMethod::CTRemoveAuthMethod(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTForgetPlugin);
-	}
-
-CTRemoveAuthMethod::~CTRemoveAuthMethod()
-/**
-  Destructor
- */
-	{
-	}
-	
-TVerdict CTRemoveAuthMethod::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-	return TestStepResult();
-	}
-
-TVerdict CTRemoveAuthMethod::doTestStepL()
-/**
-  @return - Test step result (EPass or EFail)    
- */
-	{	
-	SetTestStepResult(EPass);
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	CActiveScheduler::Install(iActSchd);
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient1);
-	//-----------------------------------------------------------------------------------------------------
-	TBool statusAll = EFalse;
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-
-	TRAPD(res2, RemoveAuthMethodL(authMgrClient1) );
-	if(KErrNone != res2)
-		{
-		ERR_PRINTF2(_L("RemoveAuthMethodL() performed a Leave with code %d"), res2 );
-		SetTestStepError(res2);
-		SetTestStepResult(EFail);
-		}	
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	if (!statusAll)
-		{
-		SetTestStepResult(EFail);
-		}
-		
-	CleanupStack::PopAndDestroy(&authMgrClient1);	// authClient1	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTRemoveAuthMethod::doTestStepPostambleL()
-/**
-  @return - Pass or fail value of test step result
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();	
-	return TestStepResult();
-	}
-
-
-void CTRemoveAuthMethod::RemoveAuthMethodL (RAuthMgrClient& mgc)
-	{	
-	//If the pluginId is quoted in the ini file, check it's training status
-	TInt forgetPluginValue = 0;
-	TBool forgetUnknownId  = EFalse;
-
-
-	TBool ok =
-		GetHexFromConfig(ConfigSection(),_L("forgetPlugin"), forgetPluginValue);
-
-	GetBoolFromConfig(ConfigSection(),_L("forgetUnknown"), forgetUnknownId);
-	
-	if (ok)
-		{
-		// Get the most recently authenticated identity, which we want this plugin to forget.
-		TIdentityId identity = 0;
-
-		if (forgetUnknownId)
-		  {
-		  INFO_PRINTF1(_L("Forgetting for unknown identity!"));
-		  identity = 0;
-		  }
-		else
-		  {
-		  identity = getLastAuthId();
-		  }
-		
-		// now forget the plugin
-		RDebug::Printf("Forget %d, %d", identity, forgetPluginValue);
-		mgc.ForgetPluginL(identity, forgetPluginValue);
-		RDebug::Printf("DONE: Forget %d, %d", identity, forgetPluginValue);
-		}
-	else
-		{
-		INFO_PRINTF1(_L("missing parameters in the ini file!"));
-		SetTestStepResult(EFail);
-		}
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_removedbs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* step_retrainplugin.cpp
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-//====================================================================================================
-
-CTRemoveDbs::CTRemoveDbs()
-/**
- * Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTRemoveDbs);
-	}
-
-CTRemoveDbs::~CTRemoveDbs()
-/**
- * Destructor
- */
-	{}
-	
-TVerdict CTRemoveDbs::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	CTAuthSvrStepBase::doTestStepPreambleL();
-	
-	//SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-TVerdict CTRemoveDbs::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class pure virtual
- * 
- */
-	{	
-	//If any test step leaves or panics, the test step thread won't exit, further calls are made.
-	// but the html log is updatead, so that subsequent failures could be traced here if necessary. 
-	if (TestStepResult() != EPass)
-		{
-		INFO_PRINTF1(_L("There was an error in a previous test step"));
-		//return TestStepResult();
-		}
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	SetTestStepResult(EPass);
-	RemoveExistingDbL();
-	
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTRemoveDbs::doTestStepPostambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	//INFO_PRINTF1(_L("Test Step Postamble"));
-	return TestStepResult();
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_removeidentity.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,291 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-/*
-class CAuthActive : CActive
-    {
-    public:
-    CAuthActive(RAuthMgrClient& aClient, TPluginId plugin1IdValue, TInt aFresh, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iStop(aStop),
-         pluginIdVal(plugin1IdValue),
-         iFresh(aFresh)
-         
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doAuth() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-	void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iStatus.Int() != KErrNone)
-            {
-            }
-		switch (iRunCount)
-		  {
-		  case 0:
-            iStatus = KRequestPending;
-			iAe = AuthExpr(pluginIdVal);
-			iId = 0;
-
-			iClient.AuthenticateL(*iAe, iFresh, EFalse, EFalse, iId, iStatus);
-			SetActive();
-
-			break;
-		  case 1:
-			delete iAe;
-			iStatus = KRequestPending;
-			TRequestStatus* status;
-			status = &iStatus;				
-			User::RequestComplete(status, iErr);				
-			SetActive();
-			
-			break;
-   		  case 2:
-			iResult = iStatus.Int() == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    TPluginId pluginIdVal;
-    TInt iFresh;
-    };
-    */
-//====================================================================================================    
-CTRemoveIdentity::CTRemoveIdentity(CTAuthSvrServer& aParent): iParent(aParent)
-/**
- * Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTRemoveIdentity);
-	}
-
-CTRemoveIdentity::~CTRemoveIdentity()
-/**
- * Destructor
- */
-	{}
-	
-TVerdict CTRemoveIdentity::doTestStepPreambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-		
-	//SetTestStepResult(EPass);
-	return TestStepResult();
-	}
-
-TVerdict CTRemoveIdentity::doTestStepL()
-/**
- * @return - TVerdict code
- * Override of base class pure virtual
- * 
- */
-	{	
-	//INFO_PRINTF1(_L("In CTRemoveIdentity doTestStepL"));
-	
-	//User::SetJustInTime(ETrue);	//a panic will kill just the thread, not the whole emulator.
-	
-	//If any test step leaves or panics, the test step thread won't exit, further calls are made.
-	// but the html log is updated, so that subsequent failures could be traced here if necessary. 
-	if (TestStepResult() != EPass)
-		{
-		ERR_PRINTF1(_L("There was an error in a previous test step"));
-		//return TestStepResult();
-		}
-
-	SetTestStepResult(EPass);
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	CActiveScheduler::Install(iActSchd);
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient1);
-	//-----------------------------------------------------------------------------------------------------
-	/*
-	//Examine the authserver and see what's there
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-	RPluginDescriptions pluginList1;
-	TCleanupItem cleanup(CleanupEComArray, &pluginList1);
-	CleanupStack::PushL(cleanup);				
-	
-	ac.PluginsL(pluginList1);	
-	TInt numTotalPlugins = pluginList1.Count();
-	for(TInt i = 0; i < numTotalPlugins; i++)
-		{
-		TInt presentPluginIdVal = pluginList1[i]->Id();
-		TInt presentPluginStatus = pluginList1[i]->TrainingStatus();
-		INFO_PRINTF3(_L("PluginId=%x,status =%i"), presentPluginIdVal,presentPluginStatus);
-		}
-	CleanupStack::PopAndDestroy(&pluginList1); //infoArray, results in a call to CleanupEComArray	
-	
-	//Check the username of the second identity and then attempt to set it.
-	//SetTestStepResult(checkAndSetUserNameL(ac, 0));
-	
-	CleanupStack::PopAndDestroy(&ac);	// authClient
-	//-----------------------------------------------------------------------------------------------------
-	*/
-
-	TBool statusAll = EFalse;
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-
-	// Authenticate by reading the user input
-	// Then call the removeIdentityL function
-	
-	TRAPD(res2, doRemoveIdentityL(authMgrClient1) );
-	if(KErrNone != res2)
-		{
-		ERR_PRINTF2(_L("doRemoveIdentityL() performed a Leave with code %d"), res2 );
-		//SetTestStepResult(EPass);
-		SetTestStepError(res2);
-		}
-	
-	/*	
-	TRAPD(res1, CheckSpecifiedPluginStatusL());
-	if(KErrNone != res1)
-		{
-		ERR_PRINTF2(_L("checkSpecifiedPluginStatusL() performed a Leave with code %d"), res1 );
-		}
-	*/
-	
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	if (!statusAll)
-		{
-		SetTestStepResult(EFail);
-		}
-	else
-		{
-		INFO_PRINTF1(_L("Plugin Status OK !!"));
-		}
-
-	CleanupStack::PopAndDestroy(&authMgrClient1);	// authClient1	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTRemoveIdentity::doTestStepPostambleL()
-/**
- * @return - TVerdict code
- * Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	//INFO_PRINTF1(_L("Test Step Postamble"));
-	return TestStepResult();
-	}
-
-
-//
-//
-void CTRemoveIdentity::doRemoveIdentityL (RAuthMgrClient& mgc)
-	{	
-	
-	//If the pluginId is quoted in the ini file, check it's training status
-	TInt plugin1IdValue = 0;	
-	if (GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue) != EFalse) // the tag 'pluginId1' was present
-		{
-	 	//Read the identityId to be trained
-	 	TIdentityId idToRemove = getLastAuthId();
-
-		mgc.RemoveIdentityL(idToRemove);
-		
-		//Check to see if a retry is recommended
-		TBool retryRemoveValue = EFalse;
-		if (GetBoolFromConfig(ConfigSection(),_L("retryRemove"), retryRemoveValue) != EFalse) 
-			{
-			if (retryRemoveValue)
-				{ mgc.RemoveIdentityL(idToRemove); }
-			}
-		}
-		
-	else
-		{
-		INFO_PRINTF1(_L("plugin1Id was not specified in the ini file"));
-		}
-		
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_resetidentity.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,279 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-#include <scs/cleanuputils.h>
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-_LIT(KResetType, "ResetType");
-_LIT(KResetTypeResetAll, "ResetAll");
-_LIT(KResetTypeResetByType, "ResetByType");
-_LIT(KResetTypeResetByList, "ResetByList");
-_LIT(KResetIdentityString, "IdentityString");
-_LIT(KResetRegDataSingle, "RegistrationData");
-_LIT(KResetPluginCount, "PluginCount");
-_LIT(KResetPluginId, "PluginId%d");
-_LIT(KResetRegData, "RegistrationData%d");
-_LIT(KResetPluginType, "PluginType");
-_LIT(KResetPluginTypeKnowledge, "EAuthKnowledge");
-_LIT(KResetPluginTypeToken, "EAuthToken");
-_LIT(KResetPluginTypeBiometric, "EAuthBiometric");
-
-
-CTResetIdentity::CTResetIdentity(CTAuthSvrServer& aParent): iParent(aParent)
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTResetIdentity);
-	}
-
-CTResetIdentity::~CTResetIdentity()
-	{}
-
-TVerdict CTResetIdentity::doTestStepPreambleL()
-	{
-	// Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-	
-	return TestStepResult();
-	}
-
-TVerdict CTResetIdentity::doTestStepL()
-	{	
-	INFO_PRINTF1(_L("In CTResetIdentity doTestStepL"));
-
-	// If any test step leaves or panics, the test step thread won't exit, further calls are made.
-	// but the html log is updated, so that subsequent failures could be traced here if necessary. 
-	if (TestStepResult() != EPass)
-		{
-		ERR_PRINTF1(_L("There was an error in a previous test step"));
-		//return TestStepResult();
-		}
-
-	SetTestStepResult(EPass);
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	CActiveScheduler::Install(iActSchd);
-
-	TRAPD(res2, doResetIdentityL());
-	if(KErrNone != res2)
-		{
-		ERR_PRINTF2(_L("doResetIdentityL() performed a Leave with code %d"), res2 );
-		//SetTestStepResult(EPass);
-		SetTestStepError(res2);
-		}
-	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-TVerdict CTResetIdentity::doTestStepPostambleL()
-	{
-	// Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-void CTResetIdentity::doResetIdentityL ()
-	{
-	INFO_PRINTF1(_L("In CTResetIdentity doResetIdentityL"));
-	// Read the identity string whose id which needs to be reset
-	TPtrC identityString;
-	if (!GetStringFromConfig(ConfigSection(), KResetIdentityString, identityString))
-		{
-		INFO_PRINTF1(_L("Identity string not found in the ini file"));
-		User::Leave(KErrNotFound);
-		}
-
-	TIdentityId identityId = KUnknownIdentity;
-	if (identityString != KNullDesC)
-		{
-		INFO_PRINTF1(_L("In doResetIdentityL Here1"));
-		// From the AuthDb get the id corresponding to the string
-		// Wait for authserver to release the db
-		WaitForServerToReleaseDb();
-		WaitForServerToReleaseDb();	// In debug mode AuthServer takes some time to terminate
-		INFO_PRINTF1(_L("In doResetIdentityL Here2"));
-		CAuthDb2* db = CAuthDb2::NewLC(iFs);
-		INFO_PRINTF1(_L("In doResetIdentityL Here3"));
-		RIdAndStringArray idList;
-		CleanupResetAndDestroyPushL(idList);
-		TRAPD(err, db->IdentitiesWithDescriptionL(idList));
-		INFO_PRINTF1(_L("In doResetIdentityL Here4"));
-		if (err != KErrNone)
-			{
-			INFO_PRINTF2(_L("CAuthDb::IdentitiesWithDescriptionL() failed with %d"), err);
-			User::Leave(err);
-			}
-		INFO_PRINTF2(_L("CAuthDb::IdentitiesWithDescriptionL() found %d identities"), idList.Count());
-		for (TInt index = 0; index < idList.Count(); ++index)
-			{
-			INFO_PRINTF2(_L("CAuthDb::IdentitiesWithDescriptionL() found identities %S"), idList[index]->String());
-			if (identityString.Compare(*idList[index]->String()) == 0)
-				{
-				identityId = idList[index]->Id();
-				break;
-				}
-			}
-		CleanupStack::PopAndDestroy(2, db); // idList
-		}
-	
-	// Get the reset type form the ini file and relevant details to do the reset
-	TPtrC resetType;
-	if (!GetStringFromConfig(ConfigSection(), KResetType, resetType))
-		{
-		INFO_PRINTF2(_L("%s was not specified in the ini file"), KResetType);
-		return;
-		}
-
-	AuthServer::RAuthMgrClient authMgrClient;
-	CleanupClosePushL(authMgrClient);
-	TInt err = authMgrClient.Connect();
-	if (err == KErrNotFound)
-		{
-		// Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	// 2 Milliseconds
-		User::After(timeInterval);
-		err = authMgrClient.Connect();
-		}
-	if (err != KErrNone)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), err);
-		User::Leave(err);
-		}
-
-	if (resetType == KResetTypeResetAll)
-		{
-		INFO_PRINTF1(_L("In CTResetIdentity doResetIdentityL KResetTypeResetAll"));
-		// Read the registration data
-		TPtrC regData;
-		if (!GetStringFromConfig(ConfigSection(), KResetRegDataSingle, regData))
-			{
-			INFO_PRINTF1(_L("Registration data was not specified in the ini file"));
-			User::Leave(KErrNotFound);
-			}
-		authMgrClient.ResetIdentityL(identityId, regData);
-		}
-	else if (resetType == KResetTypeResetByType)
-		{
-		INFO_PRINTF1(_L("In CTResetIdentity doResetIdentityL KResetTypeResetByType"));
-		// Get the plugin type
-		TPtrC pluginType;
-		if (!GetStringFromConfig(ConfigSection(), KResetPluginType, pluginType))
-			{
-			INFO_PRINTF1(_L("Plugin type was not specified in the ini file"));
-			User::Leave(KErrNotFound);
-			}
-		TAuthPluginType type;
-		if (pluginType == KResetPluginTypeKnowledge)
-			{
-			type = EAuthKnowledge;
-			}
-		else if (pluginType == KResetPluginTypeToken)
-			{
-			type = EAuthToken;
-			}
-		else if (pluginType == KResetPluginTypeBiometric)
-			{
-			type = EAuthBiometric;
-			}
-		else
-			{
-			INFO_PRINTF1(_L("Invalid plugin type was specified in the ini file"));
-			CleanupStack::PopAndDestroy(&authMgrClient);
-			return;
-			}
-		// Read the registration data
-		TPtrC regData;
-		if (!GetStringFromConfig(ConfigSection(), KResetRegDataSingle, regData))
-			{
-			INFO_PRINTF1(_L("Registration data was not specified in the ini file"));
-			User::Leave(KErrNotFound);
-			}
-		authMgrClient.ResetIdentityL(identityId, type, regData);
-		}
-	else if (resetType == KResetTypeResetByList)
-		{
-		// Read the reset information
-		INFO_PRINTF1(_L("In CTResetIdentity doResetIdentityL KResetTypeResetByList"));
-		// Get the plugin details
-		TInt pluginCount;
-		if (!GetIntFromConfig(ConfigSection(), KResetPluginCount, pluginCount))
-			{
-			INFO_PRINTF1(_L("PluginCount missing/invalid in the ini file"));
-			User::Leave(KErrNotFound);
-			}
-		RArray<TPluginId> pluginList;
-		CleanupClosePushL(pluginList);
-		RPointerArray<const HBufC> regDataList;
-		CleanupResetAndDestroyPushL(regDataList);
-		if (pluginCount > 0)
-			{
-			for (TInt index = 0; index < pluginCount; ++index)
-				{
-				HBufC* fmt = HBufC::NewLC(KResetPluginId().Length() + 10);
-				TPtr fmtPtr(fmt->Des());
-				fmtPtr.Format(KResetPluginId, index);
-				TInt pluginId;
-				if (!GetHexFromConfig(ConfigSection(), *fmt, pluginId))
-					{
-					INFO_PRINTF2(_L("%S missing in the ini file"), fmt);
-					User::Leave(KErrNotFound);
-					}
-				pluginList.AppendL(static_cast<TPluginId>(pluginId));
-				CleanupStack::PopAndDestroy(fmt);
-				fmt = HBufC::NewLC(KResetRegData().Length() + 10);
-				fmtPtr.Set(fmt->Des());
-				fmtPtr.Format(KResetRegData, index);
-				TPtrC regData;
-				if (!GetStringFromConfig(ConfigSection(), *fmt, regData))
-					{
-					INFO_PRINTF2(_L("%S missing in the ini file"), fmt);
-					User::Leave(KErrNotFound);
-					}
-				HBufC* reg = regData.AllocLC();
-				regDataList.AppendL(reg);	// Takes ownership
-				CleanupStack::Pop(reg);
-				CleanupStack::PopAndDestroy(fmt);
-				}
-			}
-		else
-			{
-			// If plugin count is negative, simulate a condition where the pluginList count != regDataList count
-			pluginList.AppendL(0);
-			}
-		authMgrClient.ResetIdentityL(identityId, pluginList, regDataList);
-		CleanupStack::PopAndDestroy(2, &pluginList); // regDataList
-		}
-	else
-		{
-		INFO_PRINTF1(_L("Invalid reset type was specified in the ini file."));
-		User::Leave(KErrNotFound);
-		}
-	
-	CleanupStack::PopAndDestroy(&authMgrClient);
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_resultavailability.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,586 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tAuthSvrStep.h"
-#include <s32file.h>
-using namespace AuthServer;
-class CAuthActive3 : public CActive
-    {
-    public:
-    CAuthActive3(RAuthMgrClient& aClient, CAuthExpression* aExpr,
-				 TInt aFresh, TBool aClientSpecific, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iAe(aExpr),
-         iStop(aStop),
-         iFresh(aFresh),
-         iIdToStore(0), 
-         iClientSpecific(aClientSpecific)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doAuth() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-    void doDeAuth()
-        {
-        iClient.DeauthenticateL();
-        }
-	void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-		switch (iRunCount)
-		  {
-		  case 0:
-            iStatus = KRequestPending;
-			iId = 0;
-
-			iClient.AuthenticateL(*iAe, iFresh, iClientSpecific, EFalse, iId, iStatus);
-			SetActive();
-
-			break;
-		  case 1:
-			if (0 != iId)
-				{
-				iIdToStore = iId->Id();
-				delete iId;
-				}
-			iStatus = KRequestPending;
-			TRequestStatus* status;
-			status = &iStatus;				
-			User::RequestComplete(status, iErr);				
-			SetActive();
-			
-			break;
-   		  case 2:
-			iResult = iStatus == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-				{
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    TInt iFresh;
-    TIdentityId iIdToStore;
-    TBool iClientSpecific;
-    };
-
-//====================================================================================================
-
-
-class CRegActive2 : public CActive
-    {
-    public:
-    CRegActive2(RAuthMgrClient& aClient, CIdentity*& aResult) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iErr(KErrNone)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doReg()
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;
-		User::RequestComplete(status, KErrNone);
-		iFirstTime = ETrue;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iFirstTime)
-            {
-			SetActive();
-            iStatus = KRequestPending;
-            iClient.RegisterIdentityL(iResult, _L("SOMENAME"), iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-            iErr = iStatus.Int();
-            CActiveScheduler::Stop();
-			}
-        }
-        
-    TBool iFirstTime;
-    RAuthMgrClient& iClient;
-    CIdentity*& iResult;
-    TInt iErr;
-    };
-//====================================================================================================     
-CResultAvailability::~CResultAvailability()
-/**
-  Destructor
- */
-	{}
-
-CResultAvailability::CResultAvailability(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	
-	SetTestStepName(KTResultAvailability);
-	}
-
-TVerdict CResultAvailability::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-
-	CTStepActSch::doTestStepPreambleL();	
-	return TestStepResult();
-	}
-
-
-TVerdict CResultAvailability::doTestStepL()
-	{
-		SetTestStepResult(EFail);	
-		__UHEAP_MARK;		// Check for memory leaks
-
-		//-----------------------------------------------------------------------------------------------------	
-		//Get the Identity published by KUidAuthServerLastAuth property .
-		
-		TLastAuth lastAuth;
-		TPckg<TLastAuth> authPkg(lastAuth);
-		RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth, authPkg);
-		
-		//Get the Last Authenticated Id from the authsvrpolicy.ini file
-		
-		TPtrC userIdString;
-		GetStringFromConfig(ConfigSection(),_L("LastAuthId"), userIdString);
-		
-		TLex lex = TLex(userIdString);
-		TUint userId(0);
-		
-		lex.Val(userId);
-		INFO_PRINTF3(_L("The UserId published by KUidAuthServerLastAuth property is %x and the UserId from AuthSvrPolicy.ini is %x"), lastAuth.iId, userId );
-		if(lastAuth.iId == userId )
-			{
-			SetTestStepResult(EPass);	
-
-			}
-
-		 __UHEAP_MARKEND;
-		 return TestStepResult();
-	}
-TVerdict CResultAvailability::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-	
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-//====================================================================================================
-CResultChangeNotify::~CResultChangeNotify()
-/**
-  Destructor
- */
-	{}
-
-CResultChangeNotify::CResultChangeNotify(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	
-	SetTestStepName(KTResultChangeNotify);
-	}
-
-TVerdict CResultChangeNotify::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-
-	CTStepActSch::doTestStepPreambleL();	
-	return TestStepResult();
-	}
-
-TVerdict CResultChangeNotify::doTestStepL()
-	{
-	SetTestStepResult(EPass);	
-	__UHEAP_MARK;		// Check for memory leaks
-	SetPinPluginStateL();
-
-	//-----------------------------------------------------------------------------------------------------	
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	// this method creates the dat file from where the test implementation
-	// of pin plugin notifier reads user input.
-	// as the pin plugin fails without this data it has been included 
-	// in the code as a default step for initializing the pin plugin
-	// data.
-	TPinValue aPinValue;
-	CreatePinPluginInputFileL(EPinPluginTraining,aPinValue);
-	CActiveScheduler::Install(iActSchd);
-	
-	// KUidAuthServerAuthChangeEvent Property retrieves the last authenticated identity
-	TInt AuthIdChange = 0;
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, AuthIdChange);
-	INFO_PRINTF2(_L("Last Authenticated Identity is %x" ), AuthIdChange );
-	
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient;	
-	TInt connectVal = authMgrClient.Connect();
-	if (KErrNotFound == connectVal)
-		{
-			//Retry after a delay
-			TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-			User::After(timeInterval);
-			connectVal = authMgrClient.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-		
-	CleanupClosePushL(authMgrClient);
-
-	
-	//Register a new Identity
-	INFO_PRINTF1(_L("Registering a new Identity"));
-	CIdentity* identity = 0;
-	CRegActive2 regactive(authMgrClient, identity);
-	regactive.doReg();
-	CActiveScheduler::Start();
-	
-	if (0 != identity)
-	  	{
-	  		INFO_PRINTF1(_L("Registration Successful"));
-	  		INFO_PRINTF3(_L("Id = %x , KeyLength = %d\n"), identity->Id(), identity->Key().KeyData().Size());
-	  	}
-			
-	
-
-	//Authenticate the new Id.
-	
-	TPtrC exprString;	
-	TInt deAuth;
-	if (GetStringFromConfig(ConfigSection(), _L("plugin1Id"), exprString) != EFalse) // the tag 'pluginId1' was present
-		{
-				 	
-			TInt freshnessVal = 0;	//Default value
-			//Retrieve the value of 'freshness' from the ini file, but if it's absent use the default value
-			 if(GetIntFromConfig(ConfigSection(), _L("freshness"), freshnessVal) == EFalse)
-				 {
-				 	freshnessVal = 10;
-				 }
-				 		
-			TBool clientSpecificKeyVal = EFalse;	 	
-			//Retrieve the value of 'clientSpecificKey' from the ini file, but if it's absent use the default value
-			if(GetBoolFromConfig(ConfigSection(), _L("clientSpecificKey"), clientSpecificKeyVal) == EFalse)
-				 {
-				 	clientSpecificKeyVal = EFalse;
-				 }	 	
-				
-			if(GetIntFromConfig(ConfigSection(), _L("deauth"), deAuth) == EFalse)
-				{
-					deAuth = 0;
-				}
-			
-			TBool stop;
-			if(GetBoolFromConfig(ConfigSection(), _L("stop"), stop ) == EFalse)
-							{
-								stop = ETrue;
-							}
-			
-			//Create a CResultPropertyWatch object which subscribes to the KUidAuthServerAuthChangeEvent Property
-					
-			CResultPropertyWatch* watch = CResultPropertyWatch::NewLC();
-					
-				
-			//Train the plugin again with this identity.
-			CAuthExpression* expr = CreateAuthExprLC(exprString);
-		
-			CAuthActive3 authactive(authMgrClient, expr, freshnessVal, clientSpecificKeyVal,stop);
-	
-			INFO_PRINTF1(_L("Authenticating the new Identity"));
-			authactive.doAuth();		
-			CActiveScheduler::Start();
-		
-			//Check if Authentication successful.
-			if(authactive.iIdToStore)
-				{
-					INFO_PRINTF2(_L(" Successful Authentication Id = %x"), authactive.iIdToStore);
-				}
-			else
-				{
-					INFO_PRINTF1(_L(" Authentication Failed ."));
-				}
-			
-			if(watch->iNotified)
-				{
-				TInt AuthIdChange;
-					
-				//Get the published value
-				RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, AuthIdChange);	
-				INFO_PRINTF2(_L("Successfully received Notification. New User Identity is %x " ), AuthIdChange );
-				}
-			else
-				{
-				INFO_PRINTF1(_L("No Notification received "));
-				}
-			CleanupStack::PopAndDestroy(2,watch);
-			//Authenticate the same User again to verify that KUidAuthServerAuthChangeEvent 
-			//does not get published again
-			
-			//Create a CResultPropertyWatch object which subscribes to the KUidAuthServerAuthChangeEvent Property
-			
-			CResultPropertyWatch* watch2 = CResultPropertyWatch::NewLC();	
-			
-			CAuthExpression* expr2 = CreateAuthExprLC(exprString);
-			CAuthActive3 authactive2(authMgrClient, expr, freshnessVal, clientSpecificKeyVal);
-			authactive2.doAuth();		
-			CActiveScheduler::Start();
-		
-			//Check if Authentication successful.
-			if(authactive.iIdToStore)
-				{
-					INFO_PRINTF2(_L(" Successful Authentication Id = %x"), authactive.iIdToStore);
-				}
-			else
-				{
-					INFO_PRINTF1(_L(" Authentication Failed ."));
-					
-				}
-						
-			if(watch2->iNotified)
-				{
-					TInt AuthIdChange;	
-					//Get the published value
-					RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, AuthIdChange);	
-					INFO_PRINTF2(_L("Successfully received Notification. New User Identity is %x " ), AuthIdChange );
-					SetTestStepResult(EFail);
-				}
-			else
-				{
-					INFO_PRINTF1(_L("No Notification received "));
-				}
-			CleanupStack::PopAndDestroy(2,watch2);
-			// If deAuth flag is set ,subscribe to the KUidAuthServerAuthChangeEvent property
-			// and deauthenticate 
-			if(deAuth)
-			{
-								
-				INFO_PRINTF1(_L(" Trying to DeAuthenticate "));
-				//Creating a subscriber active object
-				CResultPropertyWatch* watch3 = CResultPropertyWatch::NewLC();
-		
-				TInt err;
-				TRAP(err,authactive.doDeAuth());
-				CActiveScheduler::Start();
-		
-				if(err != KErrNone)
-					{
-					INFO_PRINTF1(_L(" DeAuthentication Failed "));
-					SetTestStepResult(EFail);
-
-					}
-				else
-					{
-					INFO_PRINTF1(_L(" DeAuthentication Succeeded "));
-					}
-				
-				if(watch3->iNotified)
-					{
-					TInt AuthIdChange;	
-					//Get the published value
-					RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, AuthIdChange);	
-					INFO_PRINTF2(_L("Successfully received Notification. New User Identity is %x " ), AuthIdChange );
-					}
-				else
-					{
-					INFO_PRINTF1(_L(" No Notification of the change in the Authenticated Identity "));
-					SetTestStepResult(EFail);
-					}
-				CleanupStack::PopAndDestroy(watch3);
-				INFO_PRINTF1(_L(" Checking the Id published by KUidAuthServerLastAuth upon DeAuthentication"));
-				TLastAuth lastAuth;
-				TPckg<TLastAuth> authPkg(lastAuth);
-				RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth, authPkg);
-		
-				INFO_PRINTF2(_L("Id published by KUidAuthServerLastAuth = %x"), lastAuth.iId);
-		
-				if(lastAuth.iId != 0)
-					{
-					SetTestStepResult(EFail);
-					}
-			
-				}
-			}
-			
-		RemovePinPluginFileL();	
-		delete identity;
-		CleanupStack::PopAndDestroy(&authMgrClient);
-		 __UHEAP_MARKEND;
-		 return TestStepResult();
-	}
-
-	
-void CResultChangeNotify::SetPinPluginStateL()
-	{
-	TPtrC activeStateFromFile;
-	
-	_LIT(KPinPlugin,"pinplugin_inactive.txt");
-	
-	TFileName filename;
-	filename.Copy(KPinPlugin); // convert from 8 -> 16 bit descriptor
-		
-	TDriveUnit sysDrive = RFs::GetSystemDrive();
-	TDriveName sysDriveName (sysDrive.Name());
-	filename.Insert(0,sysDriveName);
-	filename.Insert(2,_L("\\"));		
-	
-	RFileWriteStream stream;
-	RFs fs;
-	CleanupClosePushL(fs);
-	User::LeaveIfError(fs.Connect());
-	fs.Delete(filename);
-		
-	if (GetStringFromConfig(ConfigSection(),_L("Pin200032E5Active"), activeStateFromFile)) 
-		{
-		if(activeStateFromFile == _L("false"))
-			{		
-			User::LeaveIfError(stream.Create(fs, filename, EFileWrite | EFileShareExclusive));
-			stream.Close();
-			}
-		}
-	CleanupStack::PopAndDestroy(); // fs
-	}
-
-void CResultChangeNotify::RemovePinPluginFileL()
-	{
-	TPtrC activeStateFromFile;
-	_LIT(KPinPlugin,"pinplugin_inactive.txt");
-	TFileName filename;
-	filename.Copy(KPinPlugin); // convert from 8 -> 16 bit descriptor
-			
-	TDriveUnit sysDrive = RFs::GetSystemDrive();
-	TDriveName sysDriveName (sysDrive.Name());
-	filename.Insert(0,sysDriveName);
-	filename.Insert(2,_L("\\"));
-		
-	RFs fs;
-	CleanupClosePushL(fs);
-	User::LeaveIfError(fs.Connect());
-	fs.Delete(filename);
-	CleanupStack::PopAndDestroy(); // fs
-	}
-
-
-TVerdict CResultChangeNotify::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-
- */
-	{
-	
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-//====================================================================================================     
-
-
-CResultPropertyWatch* CResultPropertyWatch::NewLC()
-{
-	CResultPropertyWatch* me=new(ELeave) CResultPropertyWatch;
-	CleanupStack::PushL(me);
-	me->ConstructL();
-	return me;
-}
-
-CResultPropertyWatch::CResultPropertyWatch() :CActive(EPriority)
-	{
-		iNotified = EFalse;
-	}
-
-
-void CResultPropertyWatch::ConstructL()
-{
-	User::LeaveIfError(iProperty.Attach(KAuthServerSecureId,
-			 KUidAuthServerAuthChangeEvent));
-	CActiveScheduler::Add(this);
-	// Subscribe to the KUidAuthServerAuthChangeEvent property
-	iProperty.Subscribe(iStatus);
-	SetActive();
-	
-	}
-CResultPropertyWatch::~CResultPropertyWatch()
-{
-	Cancel();
-	iProperty.Close();
-
-}
-void CResultPropertyWatch::DoCancel()
-{
-	iProperty.Cancel();
-}
-void CResultPropertyWatch::RunL()
-{	
-	TInt AuthIdChange;
-	
-	//Get the published value
-	iProperty.Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, AuthIdChange);
-	iNotified = ETrue;
-	RDebug::Print(_L("Received Notification. New User Identity is %x " ), AuthIdChange );
-	CActiveScheduler::Stop();
-		
-}
-
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_retrainplugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,257 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-
-//====================================================================================================
-
-class CTrainActive : public CActive
-    {
-    public:    
-    CTrainActive(RAuthMgrClient& aClient, TPluginId plugin1IdValue, TIdentityId iIdFromFile, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iStop(aStop),
-         pluginIdVal(plugin1IdValue),         
-         idToTrain (iIdFromFile)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doTrain() 
-        {
-
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iStatus.Int() != KErrNone)
-            {
-            }
-		switch (iRunCount)
-		  {
-		  case 0:
-				iStatus = KRequestPending;
-	            iClient.TrainPlugin(idToTrain, pluginIdVal, iStatus);
-				SetActive();
-			break;
-
-   		  case 1:
-			iResult = iStatus.Int() == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-    TBool iStop;
-    TInt iErr;
-    TPluginId pluginIdVal;
-    TIdentityId idToTrain;
-    };
-    
-//====================================================================================================    
-CTRetrainPlugin::CTRetrainPlugin(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTRetrainPlugin);
-	}
-
-CTRetrainPlugin::~CTRetrainPlugin()
-/**
-  Destructor
- */
-	{}
-	
-TVerdict CTRetrainPlugin::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();
-	return TestStepResult();
-	}
-
-TVerdict CTRetrainPlugin::doTestStepL()
-/**
-  @return - TVerdict code indicating the test step result    
- */
-	{
-	SetTestStepResult(EPass);
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	CActiveScheduler::Install(iActSchd);
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient1;	
-	TInt connectVal = authMgrClient1.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient1.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient1);
-
-	//-----------------------------------------------------------------------------------------------------
-	//Check the username of the second identity and then attempt to set it.
-	//SetTestStepResult(checkAndSetUserNameL(ac, 0));
-
-	TBool statusAll = EFalse;
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	
-	TRAPD(res2, RetrainPlugin(authMgrClient1) );
-	if(KErrNone != res2)
-		{
-		ERR_PRINTF2(_L("RetrainPluginL() performed a Leave with code %d"), res2 );
-		}
-		
-	TRAPD(res1, CheckSpecifiedPluginStatusL());
-	if(KErrNone != res1)
-		{
-		ERR_PRINTF2(_L("checkSpecifiedPluginStatusL() performed a Leave with code %d"), res1 );
-		}
-	
-	statusAll = CheckPluginStatusAllL(authMgrClient1);
-	if (!statusAll)
-		{
-		SetTestStepResult(EFail);
-		}
-	
-	CleanupStack::PopAndDestroy(&authMgrClient1);	// authClient1	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTRetrainPlugin::doTestStepPostambleL()
-/**
-  @return - TVerdict code  
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();	
-	return TestStepResult();
-	}
-
-/**
-  Retrain the plugin and set the test step error value as required.
- */
-void CTRetrainPlugin::RetrainPlugin (RAuthMgrClient& mgc)
-	{	
-	
-	//If the pluginId is quoted in the ini file, check it's training status
-	TInt plugin1IdValue = 0;	
-	if (GetHexFromConfig(ConfigSection(),_L("plugin1Id"), plugin1IdValue) != EFalse) // the tag 'pluginId1' was present
-		{ 	
-	 	//Read the identityId to be trained
-	 	TIdentityId idToTrain = getLastAuthId();
-	 	INFO_PRINTF2(_L("Id to be (re)trained: %u"), idToTrain);
-	 	
-	 	//Train the plugin again with this identity. 	    
- 	    CTrainActive active(mgc, plugin1IdValue, idToTrain);
-	    active.doTrain();		
-		CActiveScheduler::Start();		
-		
-		SetTestStepError(active.iErr);
-		
-		if (KErrAuthServPluginCancelled == active.iErr)
-			{
-			INFO_PRINTF1(_L("Training was cancelled."));
-			INFO_PRINTF1(_L("User entered trainingInput same as identifyingInput or an existing PIN."));
-			INFO_PRINTF1(_L("Or the Cancel code."));			
-			SetTestStepError(KErrAuthServPluginCancelled);
-			}
-		if (KErrAuthServPluginQuit == active.iErr)
-			{
-			INFO_PRINTF1(_L("Training was quit."));
-			INFO_PRINTF1(_L("User entered the Quit code as trainingInput."));						
-			SetTestStepError(KErrAuthServPluginQuit);
-			}
-		else if(EPass != active.iResult)
-			{
-			ERR_PRINTF3(_L("Training Result error = %d, iResult = %d\n"), active.iErr, active.iResult);			
-			SetTestStepError(active.iErr);
-			SetTestStepResult (EFail);
-			}
-		else if ((KErrNone == active.iErr) && (EPass == active.iResult))
-			{
-			INFO_PRINTF1(_L("(Re)train successful."));
-			SetTestStepResult (EPass);
-			}
-		else
-			{
-			ERR_PRINTF3(_L("Unexpected Training Result. error = %d, iResult = %d\n"), active.iErr, active.iResult);
-			SetTestStepError(active.iErr);
-			SetTestStepResult (EFail);
-			}		
-		}
-		
-	else
-		{
-		INFO_PRINTF1(_L("plugin1Id was not specified in the ini file"));
-		}
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/step_setauthprefs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,187 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTestStep derived implementation
-*
-*/
-
- 
-#include "tAuthSvrStep.h"
-
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-using namespace AuthServer;
-
-//====================================================================================================    
-CTSetAuthPrefs::CTSetAuthPrefs(CTAuthSvrServer& aParent): iParent(aParent)
-/**
-  Constructor
- */
-	{
-	// Call base class method to set up the human readable name for logging
-	SetTestStepName(KTSetPrefs);
-	}
-
-CTSetAuthPrefs::~CTSetAuthPrefs()
-/**
-  Destructor
- */
-	{}
-	
-TVerdict CTSetAuthPrefs::doTestStepPreambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent class preamble, setting up the file server, etc
-	CTStepActSch::doTestStepPreambleL();		
-	
-	return TestStepResult();
-	}
-
-TVerdict CTSetAuthPrefs::doTestStepL()
-/**
-  @return - TVerdict code
-  Override of base class pure virtual
-  
- */
-	{	
-	//If any test step leaves or panics, the test step thread won't exit, further calls are made.
-	// but the html log is updatead, so that subsequent failures could be traced here if necessary. 
-	if (TestStepResult() != EPass)
-		{
-		ERR_PRINTF1(_L("There was an error in a previous test step"));
-		return TestStepResult();
-		}
-
-	SetTestStepResult(EPass);
-
-__UHEAP_MARK;		// Check for memory leaks
-
-	//-----------------------------------------------------------------------------------------------------
-	InitAuthServerFromFileL();	// Set things like 'iSupportsDefaultData' and 'DefaultPlugin'
-	
-	//Connect to the AuthServer	
-	AuthServer::RAuthMgrClient authMgrClient;	
-	TInt connectVal = authMgrClient.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authMgrClient.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authMgrClient);
-	
-	AuthServer::RAuthClient authClient;
-			
-	connectVal = authClient.Connect();
-	if (KErrNotFound == connectVal)
-		{
-		//Retry after a delay
-		TTimeIntervalMicroSeconds32 timeInterval = 2000;	//2 Milliseconds
-		User::After(timeInterval);
-		connectVal = authClient.Connect();
-		}
-	if (KErrNone != connectVal)
-		{
-		ERR_PRINTF2(_L("Unable to start a session or other connection error. Err = %d"), connectVal);
-		User::LeaveIfError(connectVal);		
-		}	
-	
-	CleanupClosePushL(authClient);
-	//-----------------------------------------------------------------------------------------------------
-	TRAPD(res2, SetAuthPrefsL(authMgrClient, authClient) );
-	if(KErrNone != res2)
-		{
-		ERR_PRINTF2(_L("SetAuthPrefsL() performed a Leave with code %d"), res2 );
-		SetTestStepError(res2);
-		SetTestStepResult(EFail);
-		}
-		
-	CleanupStack::PopAndDestroy(2,&authMgrClient);	// authClient, authMgrClient 	
-	//Garbage collect the last previously destroyed implementation 
-	// and close the REComSession if no longer in use
-	REComSession::FinalClose(); 
-__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-TVerdict CTSetAuthPrefs::doTestStepPostambleL()
-/**
-  @return - TVerdict code
-  Override of base class virtual
- */
-	{
-	//Call the parent postamble, releasing the file handle, etc
-	CTStepActSch::doTestStepPostambleL();
-	return TestStepResult();
-	}
-
-
-void CTSetAuthPrefs::SetAuthPrefsL (AuthServer::RAuthMgrClient& aAuthMgrClient, 
-									AuthServer::RAuthClient& aAuthClient)
-	{	
-	TInt plugin = KUnknownPluginId;
-
-	TBool done = EFalse;
-
-	if (GetHexFromConfig(ConfigSection(),KDefauthPrefsTag, plugin))
-	  {
-	  aAuthMgrClient.SetPreferredTypePluginL(EAuthDefault, plugin);
-	  if(aAuthClient.PreferredTypePluginL(EAuthDefault) == plugin)
-		  {
-		  done = ETrue;
-		  }
-	  }
-	if (GetHexFromConfig(ConfigSection(),KKnowledgePrefsTag, plugin))
-	  {
-	  aAuthMgrClient.SetPreferredTypePluginL(EAuthKnowledge, plugin);
-	  if(aAuthClient.PreferredTypePluginL(EAuthKnowledge) == plugin)
-  		  {
-  		  done = ETrue;
-  		  }
-	  }
-	if (GetHexFromConfig(ConfigSection(),KBiometricPrefsTag, plugin))
-	  {
-	  aAuthMgrClient.SetPreferredTypePluginL(EAuthBiometric, plugin);
-	  if(aAuthClient.PreferredTypePluginL(EAuthBiometric) == plugin)
-  		  {
-  		  done = ETrue;
-  		  }
-	  }
-	if (GetHexFromConfig(ConfigSection(),KTokenPrefsTag, plugin))
-	  {
-	  aAuthMgrClient.SetPreferredTypePluginL(EAuthToken, plugin);
-	  if(aAuthClient.PreferredTypePluginL(EAuthToken) == plugin)
-  		  {
-  		  done = ETrue;
-  		  }
-	  }
-
-	if (!done)
-	  {
-		INFO_PRINTF1(_L("missing parameters in the ini file!"));
-		SetTestStepResult(EFail);
-	  }
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrServer.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,198 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Test code for the TestExecute Server
-*
-*/
-
-
-
-#include "tAuthSvrServer.h"
-#include "tAuthSvrStep.h"
-
-
-CTAuthSvrServer* CTAuthSvrServer::NewL()
-/**
- * @return - Instance of the test server
- * Called inside the MainL() function to create and start the
- * CTestServer derived server.
- */
-	{
-	CTAuthSvrServer* server = new (ELeave) CTAuthSvrServer();
-	CleanupStack::PushL(server);
-	
-	RProcess handle = RProcess();
-	TParsePtrC serverName(handle.FileName());
-	// Either use a StartL or ConstructL, the latter will permit
-	// server Logging.
-
-	//server->StartL(KServerName); 
-	server-> ConstructL(serverName.Name());
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-
-// EKA2 much simpler
-// Just an E32Main and a MainL()
-
-LOCAL_C void MainL()
-/**
- * Much simpler, uses the new Rendezvous() call to sync with the client
- */
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CTAuthSvrServer* server = NULL;
-	// Create the CTestServer derived server	
-	TRAPD(err,server = CTAuthSvrServer::NewL());
-	if(!err)
-		{
-		// Sync with the client and enter the active scheduler
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-
-GLDEF_C TInt E32Main()
-/**
- * @return - Standard Epoc error code on exit
- */
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());
-	delete cleanup;
-	return KErrNone;
-    }
-
-
-CTestStep* CTAuthSvrServer::CreateTestStep(const TDesC& aStepName)
-/**
- * @return - A CTestStep derived instance
- * Implementation of CTestServer pure virtual
- */
-	{
-	// Test step name constant in the test step header file
-	// Created "just in time"
-	if(aStepName == KTFirstStart)
-		{
-		return new CTFirstStart();
-		}
-	else if (aStepName == KTAuthSvrCheck)
-		{
-		return new CTAuthSvrCheck();
-		}
-	else if (aStepName == KTRegIdentity)
-		{
-		return new CTRegIdentity(*this);
-		}
-	else if (aStepName == KTIdentifyMultiple)
-		{
-		return new CTIdentifyMultiple();
-		}
-	else if (aStepName == KTStepCreateTestDb)
-		{
-		return new CTStepCreateTestDb();
-		}
-	else if (aStepName == KTRetrainPlugin)
-		{
-		return new CTRetrainPlugin(*this);
-		}
-	else if (aStepName == KTRemoveDbs)
-		{
-		return new CTRemoveDbs();
-		}
-	else if (aStepName == KTRemoveIdentity)
-		{
-		return new CTRemoveIdentity(*this);
-		}
-	else if (aStepName == KTForgetPlugin)
-		{
-		return new CTRemoveAuthMethod(*this);	
-		}
-	else if (aStepName == KTAuthenticate)
-		{
-		return new CTAuthenticate(*this);
-		}
-	else if (aStepName == KTSetPrefs)
-		{
-		return new CTSetAuthPrefs(*this);
-		}
-	else if (aStepName == KTInitCenRep)
-		{
-		return new CTInitCenRep(*this);
-		}
-	else if (aStepName == KTResultAvailability)
-		{
-		return new CResultAvailability(*this);
-		}
-	else if (aStepName == KTResultChangeNotify)
-		{
-		return new CResultChangeNotify(*this);
-		}
-	else if (aStepName == KTResetIdentity)
-		{
-		return new CTResetIdentity(*this);
-		}
-	else if (aStepName == KTPostMarketPlugin)
-		{
-		return new CTPostMarketPlugin();
-		}
-	else if (aStepName == KTStepClientSidSupportCheck)
-		{
-		return new CTStepClientSidSupport(*this);
-		}
-	else if (aStepName == KTInstallPluginStep)
-		{
-		return new CTInstallPluginStep();
-		}
-	else if (aStepName == KTUninstallPluginStep)
-		{
-		return new CTUninstallPluginStep();
-		}
-	else if (aStepName == KTAuthServerOom)
-		{
-		return new CAuthSvrOom(*this);
-		}
-	else if (aStepName == KTUpdateSysTime)
-		{
-		return new CTSysTimeUpdate(*this);
-		}
-	else if (aStepName == KTMultiThreadedTest)
-	    {
-	    return new CTMultiThreaded(*this);
-	    }
-	else
-		{
-		ERR_PRINTF1(_L("The test step name specified does not exist."));
-		}
-	
-	return NULL;
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrServer.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tAuthSvrServer is the base class for all authSvr tests
-*
-*/
-
-
-
-#ifndef T_AUTHSVR_SERVER_H
-#define T_AUTHSVR_SERVER_H
-
-#include <test/testexecuteserverbase.h>
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-
-
-class CTAuthSvrServer : public CTestServer
-	{
-public:
-	static CTAuthSvrServer*		NewL();	// First phase constructor
-	// Base class pure virtual
-	virtual CTestStep*			CreateTestStep(const TDesC& aStepName);
-	//RFs& Fs()	{return iFs;};
-	//AuthServer::RAuthClient Cl() {return client3;};
-	AuthServer::RAuthMgrClient Cl() {return client2;};	
-	//RAuthClient will be tested by way of inheritance
-	
-private:
-	//AuthServer::RAuthClient client3;	//variable that will be shared by the steps
-	AuthServer::RAuthMgrClient client2;	//variable that will be shared by the steps
-	//RFs		iFs;
-	
-	};
-
-#endif	/* T_AUTHSVR_SERVER_H */
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tAuthSvrStep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,786 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#ifndef T_AUTHSVR_STEP_H
-#define T_AUTHSVR_STEP_H
-
-#include <test/testexecutestepbase.h>
-#include <ecom/ecom.h>
-
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-#include <pinplugindialogdefs.h>
-
-#include "authserver_impl.h"
-#include "authserver/authclient.h"
-#include "authserver/authmgrclient.h"
-
-#include "tAuthSvrServer.h"
-#include "tauthdbstep.h"
-
-// these tests use some information which is normally
-// only visible to the server, or to the client DLL.
-
-#include "authdb.h"
-#include "authserveripc.h"
-#include "transientkey.h"
-#include "transientkeyinfo.h"
-#include "testutilclient.h"
-using namespace AuthServer;
-
-
-_LIT(KInputFile, 	"C:\\t_pinplugindlg_in.dat");
-_LIT(KOutputFile, "C:\\t_pinplugindlg_out.dat");
-_LIT(KEmptyString, "");
-
-// Used when creating the initial db
-//#define KNumPlugins 8	//Defined in tauthdbstep.h
-
-class CTAuthSvrStepBase : public CTestStep
-	{
-protected:
-	CTAuthSvrStepBase();
-	~CTAuthSvrStepBase();
-	virtual TVerdict doTestStepPreambleL()	
-		{
-
-		iFs.Connect();	
-	   	return TestStepResult();
-		}
-	virtual TVerdict doTestStepPostambleL()
-	    {
-		iFs.Close();
-		return TestStepResult();
-		
-		}
-	void SetDefaultPluginIdL(TInt aDefault);
-
-	HBufC* GetNameLC(TInt i);
-
-	void PluginData(AuthServer::TIdentityId aId, AuthServer::TPluginId aPlugin,	TPtr8 aDes) 
-		{
-		aDes.Fill(aId*aPlugin);
-		}
-
-//Needed because of the use of Step_CreateDb
-	inline void CreatePlugins();
-	inline void CreateKeyInfo();
-		
-	//Utility functions allowing text INI file parsing abilities
-	TInt writeToNamedConfig(CIniData* aFile, const TDesC &aSectName,const TDesC &aKeyName, const TPtrC &aResult);
-	//Section name unspecified
-	TInt writeToNamedConfig(CIniData* aFile, const TDesC &aKeyName,const TPtrC &aResult);
-	TInt readFromNamedConfigL(const TDesC &aFileName, const TDesC &aSectName,const TDesC &aKeyName, HBufC*& aResult);
-	//Section name unspecified
-	TInt readFromNamedConfigL(const TDesC &aFileName, const TDesC &aKeyName, HBufC*& aResult);
-	//Read data from testexecute ini file that will be used to initialise the Authentication Server
-	TInt InitAuthServerFromFileL();
-	
-	//Read plugin input train or plugin input id data from testexecute ini file 
-	//that will be used to initialise the Authentication Server, based on  
-	//aInitTrainInput.If set, this method reads plugin input train, else
-	//reads plugin input id.
-	TInt InitPluginDataFromFileL(TBool aInitTrainInput);
-	
-	// Wait for the server to shut down and so release the authentication database.
-	void WaitForServerToReleaseDb();
-	// 	Remove any existing database file.
-	void RemoveExistingDbL();
-	// 	Utility function coverting HexString to Integer
-	TInt HexString2Num(const TDesC8& aStr);
-	// Utility function for removing a specified Identity from the global Identity array
-	TInt RemoveIdFromGlobalDbL(TUint32 aId);
-	// Utility clean up function used when working with locally declared arrays
-	//void CleanupEComArray(TAny* aArrayOfPlugins);	
-	
-	//Utility function to read and set the username of a given identity
-	TVerdict checkAndSetUserNameL(AuthServer::RAuthClient& ac, TInt idPosition);	
-	// Utility function for checking the status of a pluginId that is specified
-	// in the ini file.
-	void CheckSpecifiedPluginStatusL();
-	// Version of above function that avoids a call to the 'Connect()' function
-	void CheckSpecifiedPluginStatusConnectedL(AuthServer::RAuthClient& ac);
-	
-	// Checks that the status of each plugin is as expected.
-	// based on the number of identities trained for that plugin, and the number of identities 
-	// present in the Authentication server.
-	TBool CheckPluginStatusAllL (AuthServer::RAuthClient& ac);
-	
-	// Reads the number of identities that have been trained with the plugin that 
-	// has its database in the named file
-	TInt GetNumIdsFromPluginDbL(const TDesC &aFileName);
-	
-	// Utility function for retrieving the last authenticated id from a file
-	AuthServer::TIdentityId getLastAuthId();
-	
-    AuthServer::CAuthExpression* CreateAuthExprLC(const TDesC& aString);
-    
-    void CreatePinPluginInputFileL(TPinPluginDialogOperation aOperation, TPinValue aPinValue);
-    
-    TPinValue GetPinFromOutputFileL();
-    
-    void ClientMessage(TBool aIsMessage, const TDesC& aDisplayString);
-    
-protected:
-	RFs iFs;	
-	
-	// Used when creating the initial db
-	AuthServer::CPluginDesc*       iPlugins[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId1Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId2Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId3Keys[KNumPlugins];
-
-	};
-	
-// Utility clean up function used when working with locally declared arrays
-	void CleanupEComArray(TAny* aArrayOfPlugins);	
-
-inline CTAuthSvrStepBase::~CTAuthSvrStepBase() 
-    {
-    for (TInt i = 0 ; i < KNumPlugins ; ++i)
-        {
-        delete iPlugins[i];
-        delete iId1Keys[i];
-        delete iId2Keys[i];
-        delete iId3Keys[i];
-        }
-    }
-
-inline HBufC* CTAuthSvrStepBase::GetNameLC(TInt id)
-    {
-    _LIT(nameTmpl, "Plugin_%d");
-	HBufC* name = HBufC::NewLC(15);
-	name->Des().Format(nameTmpl, id);
-	return name;
-    }
-    
-inline void CTAuthSvrStepBase::CreatePlugins()
-	{
-	using namespace AuthServer;
-	
-	const TAuthPluginType   types[KNumPlugins]
-		= { EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthToken, EAuthKnowledge
-		};
-	const TAuthTrainingStatus   training[KNumPlugins]
-		= { EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthTrained, EAuthFullyTrained
-		  };
-
-
-	for (TInt i = 0 ; i < KNumPlugins ; ++i)
-		{
-			HBufC* name = GetNameLC(i);
-			
-			iPlugins[i] = CPluginDesc::NewL(i, *name, types[i],
-											training[i], i*10000, i, i*4);
-		    CleanupStack::PopAndDestroy(name);									
-		}
-	}
-
-inline void CTAuthSvrStepBase::CreateKeyInfo()
-	{
-	using namespace AuthServer;
-
-	CProtectionKey* protKey1 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey2 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey3 = CProtectionKey::NewLC(8);
-
-	HBufC8* data = HBufC8::NewLC(4);
-	
-	for (TInt plugin = 0 ; plugin < KNumPlugins ; ++plugin)
-		{
-			CTransientKey* transient = 0;
-			// id 1
-			iId1Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			PluginData(1, plugin, data->Des());
-			transient = iId1Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey1 =
-				transient->EncryptL(*protKey1);
-			delete transient;
-			iId1Keys[plugin]->SetEncryptedProtectionKeyL(epKey1);
-			// id 2
-			PluginData(2, plugin, data->Des());
-			iId2Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId2Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey2 =
-				transient->EncryptL(*protKey2);
-			delete transient;
-			iId2Keys[plugin]->SetEncryptedProtectionKeyL(epKey2);
-			// id 3
-			PluginData(3, plugin, data->Des());
-			iId3Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId3Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey3 =
-				transient->EncryptL(*protKey3);
-			delete transient;
-			iId3Keys[plugin]->SetEncryptedProtectionKeyL(epKey3);
-		}
-	CleanupStack::Pop(4, protKey1);
-	}
-
-
-/**
-	This abstract subclass of CTAuthcliservStepBase
-	overrides the doTestStep(Pre|Post)ambleL functions
-	from CTestBase to allocate and free an active
-	scheduler.
-	
-	The scheduler is stored in the protected iActSchd
-	variable.  This class does not start or stop the
-	scheduler.
- */
-
-class CTStepActSch : public CTAuthSvrStepBase
-	{
-protected:
-	// override CTestStep
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-		
-protected:
-	/** The active scheduler which subclasses can use. */
-	CActiveScheduler* iActSchd;
-	};
-    
-
-class CTFirstStart : public CTAuthSvrStepBase
-	{
-public:
-	CTFirstStart();	
-	//~CTFirstStart();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	//virtual TVerdict doTestStepPostambleL();
-	};
-	
-class CTAuthSvrCheck: public CTAuthSvrStepBase
-	{
-public:
-	CTAuthSvrCheck();
-	//~CTAuthSvrCheck();
-	//virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	//virtual TVerdict doTestStepPostambleL();
-	};
-	
-class CTRegIdentity: public CTStepActSch
-	{
-public:
-	CTRegIdentity(CTAuthSvrServer& aParent);
-	~CTRegIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	void ListPluginsL(AuthServer::RAuthMgrClient& aAuthMgrClient );
-	void SetPinPluginStateL();
-	void RemovePinPluginFileL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-	
-class CTEnumIdentities: public CTAuthSvrStepBase
-	{
-public:
-	CTEnumIdentities(CTAuthSvrServer& aParent);
-	virtual TVerdict doTestStepL();	
-private:
-	CTAuthSvrServer& iParent;
-	};
-	
-class CTIdentifyMultiple: public CTAuthSvrStepBase
-	{
-public:
-	//CTIdentifyMultiple(CTAuthSvrServer& aParent);
-	CTIdentifyMultiple();
-	~CTIdentifyMultiple();
-	virtual TVerdict doTestStepPreambleL();	
-	virtual TVerdict doTestStepL();	
-private:
-	//CTAuthSvrServer& iParent;
-	RArray<TUid> iPluginIds;
-	};
-	
-class CTRetrainPlugin: public CTStepActSch
-	{
-public:	
-	//CTRetrainPlugin();
-	CTRetrainPlugin(CTAuthSvrServer& aParent);
-	~CTRetrainPlugin();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-	// Utility function that calls 'Train' for a specified plugin	
-	void RetrainPlugin (AuthServer::RAuthMgrClient& mgc);
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTRemoveAuthMethod: public CTStepActSch
-	{
-public:	
-	//CTRetrainPlugin();
-	CTRemoveAuthMethod(CTAuthSvrServer& aParent);
-	~CTRemoveAuthMethod();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-	void RemoveAuthMethodL (AuthServer::RAuthMgrClient& mgc);
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTRemoveDbs: public CTStepActSch
-	{
-public:	
-	CTRemoveDbs();
-	~CTRemoveDbs();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();	
-private:
-	
-	};
-	
-class CTRemoveIdentity: public CTStepActSch
-	{
-public:	
-	CTRemoveIdentity(CTAuthSvrServer& aParent);
-	~CTRemoveIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();		
-	// Utility function that calls 'authenticate, then removeIdentity', with a specified plugin	
-	void doRemoveIdentityL (AuthServer::RAuthMgrClient& mgc);	
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTAuthenticate: public CTStepActSch
-	{
-public:
-	CTAuthenticate(CTAuthSvrServer& aParent);
-	~CTAuthenticate();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-	//Utility function that stores the most recently authenticated identity in the GlobalDb file
-	//This should only be called by the Authenticate test step
-	void setLastAuthIdL(AuthServer::TIdentityId idToStore);
-	
-	/**
-  	This method calls the synchronous version of AuthenticateL method.
-  
-   	@param aAuthMgrClient		authMgrClient object.
-   	@param aInputString			descriptor containing either the alias string or auth expression
-   								string as read from the ini file.
-   	@param aFreshness			time period which serves as a check to determine if an authentication 
-   								has previously been performed within this period.This value is read from 
-   								the ini file.If not present,the default value is used.
- 
-  	@param aClientSpecificKey 	this value when true represents the key returned by 
-  								auth server will be unique to the calling client.This value is read from the 
-  								ini file.By default this is set to false.
- 
-  	@param isAlias 				this value when true specifies that the authentication is performed via alias.
-  								This value is read from the ini file.By default it is set to false.
- 
- 	
-  	*/
- 
-  	void CallSyncAuthenticateL(AuthServer::RAuthMgrClient& aAuthMgrClient, const TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool isAlias, TBool isDefault, const TDesC& aClientMessage);
-	
-	/**
-  	This method calls the asynchronous version of AuthenticateL method.
-  
-   	@param aAuthMgrClient		authMgrClient object.
-   	@param aInputString			descriptor containing either the alias string or auth expression
-   								string as read from the ini file.
-   	@param aFreshness			time period which serves as a check to determine if an authentication 
-   								has previously been performed within this period.This value is read from 
-   								the ini file.If not present,the default value is used.
- 
-  	@param aClientSpecificKey 	this value when true represents the key returned by 
-  								auth server will be unique to the calling client.This value is read from the 
-  								ini file.By default this is set to false.
- 
-  	@param isAlias 				this value when true specifies that the authentication is performed via alias.
-  								This value is read from the ini file.By default it is set to false.
- 
- 	
-  	*/
-	void CallAsyncAuthenticateL(AuthServer::RAuthMgrClient& aAuthMgrClient, TDesC& aInputString, TInt aFreshness, TBool aClientSpecificKey, TBool isAlias, TBool isDefault, const TDesC& aClientMessage);
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-		
-class CTSetAuthPrefs: public CTStepActSch
-	{
-public:
-	CTSetAuthPrefs(CTAuthSvrServer& aParent);
-	~CTSetAuthPrefs();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-	void SetAuthPrefsL(AuthServer::RAuthMgrClient& aAuthMgrClient, AuthServer::RAuthClient& aAuthClient);
-
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CTResetIdentity: public CTStepActSch
-	{
-public:	
-	CTResetIdentity(CTAuthSvrServer& aParent);
-	~CTResetIdentity();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();		
-	// Utility function that calls 'resetIdentity', with a specified plugin
-	void doResetIdentityL();
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-/**
-	This class initializes the aliases in the authserver's central repository file 
-	with different values as specified in the ini file.
-  */
-
-class CTInitCenRep: public CTStepActSch
-	{
-public:
-	CTInitCenRep(CTAuthSvrServer& aParent);
-	~CTInitCenRep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();	
-	virtual TVerdict doTestStepL();
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CResultAvailability: public CTStepActSch
-	{
-public:
-	CResultAvailability(CTAuthSvrServer& aParent);
-	~CResultAvailability();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	};
-
-class CAuthSvrOom: public CTStepActSch
-	{
-public:
-	CAuthSvrOom(CTAuthSvrServer& aParent);
-	~CAuthSvrOom();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	TVerdict doClientOOMTestL();
-	TVerdict doServerOOMTestL();
-	TVerdict doPerformanceTestL();
-	void ReadTestConfigurationL();
-	TVerdict doTestL(AuthServer::RAuthMgrClient& ac);
-	void doStartupTestL();
-	void doRegOOMTestL(AuthServer::RAuthMgrClient &ac);
-	void doSyncAuthOOMTestL(AuthServer::RAuthMgrClient& ac);
-	void doAsyncAuthOOMTestL(AuthServer::RAuthMgrClient& ac);
-	void doSetPreferredTypeL(AuthServer::RAuthMgrClient& ac);
-	void doRemoveIdentityL(AuthServer::RAuthMgrClient& ac);
-	void doForgetPluginL(AuthServer::RAuthMgrClient& ac);
-	void doRetrainPluginL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsL(AuthServer::RAuthMgrClient& ac);
-	void doListActivePluginsL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsOfTypeL(AuthServer::RAuthMgrClient& ac);
-	void doListPluginsWithTrainingStatusL(AuthServer::RAuthMgrClient& ac);
-	void doListAuthStrengthAliasesL(AuthServer::RAuthMgrClient& ac);
-	void doResetAll(AuthServer::RAuthMgrClient& ac);
-	void doResetType(AuthServer::RAuthMgrClient& ac);
-	void doResetList(AuthServer::RAuthMgrClient& ac);
-// performance tests.
-	void StartTimer();
-	void StopTimerAndPrintResultL();
-	void PrintPerformanceLog(TTime aTime);
-	
-
-private:
-	CTAuthSvrServer& iParent;
-	TInt iFreshnessVal;
-	TPtrC iExprString;
-	TBool iClientSpecificKeyVal;
-	TBool iDefaultpluginusage;
-	TBuf<100> iMessage;
-	TTime iStartTime;
-	TInt iIterationCount;
-
-	};
-
-class CResultPropertyWatch:CActive
-	{
-	enum {EPriority=0};
-	public:
-	static CResultPropertyWatch* NewLC();
-	~CResultPropertyWatch();
-	void DoCancel();
-	private:
-	CResultPropertyWatch();
-	void ConstructL();
-	
-	void RunL();
-	
-	private:
-	RProperty iProperty;
-	public:	
-	TBool iNotified;
-	};
-
-class CResultChangeNotify: public CTStepActSch
-	{
-public:
-	CResultChangeNotify(CTAuthSvrServer& aParent);
-	~CResultChangeNotify();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	void SetPinPluginStateL();
-	void RemovePinPluginFileL();
-private:
-	CTAuthSvrServer& iParent;
-	CResultPropertyWatch* watch;
-
-	};
-
-
-class CTPostMarketPlugin: public CTAuthSvrStepBase
-	{
-public:
-
-	CTPostMarketPlugin();
-	~CTPostMarketPlugin();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-
-	/**
-  	This method simulates plugin installation.In case of upgrades to ROM, it verifies 
-  	that the right plugin is loaded (depending on the ROM_Only field in the plugin registration file),
-  	and that the plugin count increments when the macro to enable post market plugins is set to one,
-  	and remains the same when the macro is disabled.
-  
-   	*/
-	
-	TBool TestPluginInstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession);
-
- 	/**
-  	This method simulates plugin uninstallation.In case of upgrades to ROM, it verifies 
-  	that the ROM plugin is loaded, and that the plugin count decrements when the macro to enable 
-	post market plugins is set to one, 	and remains the same when the macro is disabled.
-  
-   	*/
-	
-	TBool TestPluginUninstallL(AuthServer::RAuthMgrClient& aAuthMgrClient, RTestUtilSession& aUtilSession);
-	
-	/**
-  	This method lists the available plugin implementations and tests whether
-  	it matches with the expected plugin count.This method also takes plugin name 
-  	as a default argument,which assists in testing whether the right plugin has 
-  	been loaded during ROM upgrade operat
-  
-  	@param aAuthMgrClient	authMgrClient object.
-   	@param aExpectedCount	expected plugin count.
-   	@param aPluginName		expected plugin name.Default argument.
-   	@return 				true, when the actual plugin count equals the expected one.
-   							When the plugin name is specified, returns true, if
-   							the plugin name matches the expected one.
-   
-   	*/
-	TBool VerifyObtainedResultsWithExpectedL(AuthServer::RAuthMgrClient& aAuthMgrClient, TInt aExpectedCount, const TDesC& aPluginName = KEmptyString);
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};
-  	
- class CTStepClientSidSupport : public CTStepActSch
-	{
-public:
-	CTStepClientSidSupport(CTAuthSvrServer& aParent);
-	
-	~CTStepClientSidSupport();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	TBool VerifyObtainedResultsWithExpectedL();
-	
-private:
-	CTAuthSvrServer& iParent;
-	TUid iClientSid;
-	TBool iClientSpecificKey;
-	TBool iWithString;
-	TInt iPluginId;
-	AuthServer::CIdentity* iIdentity;
-	AuthServer::CIdentity* iIdentityAfterRetrain;
-	};
-	
-class CTInstallPluginStep: public CTAuthSvrStepBase
-	{
-public:
-
-	CTInstallPluginStep();
-	~CTInstallPluginStep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};
-  	
-class CTUninstallPluginStep: public CTAuthSvrStepBase
-	{
-public:
-
-	CTUninstallPluginStep();
-	~CTUninstallPluginStep();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepL();
-	
-private:
-	
-	TPtrC iSrcPlugin;
-	TPtrC iTargetPlugin;
-	TPtrC iSrcRscFile;
-	TPtrC iTargetRscFile;
-  	};  	
-  	
-
-class CTSysTimeUpdate: public CTStepActSch
-	{
-public:
- 	CTSysTimeUpdate(CTAuthSvrServer& aParent);
- 	~CTSysTimeUpdate();
- 	virtual TVerdict doTestStepPreambleL();
- 	virtual TVerdict doTestStepPostambleL();	
- 	virtual TVerdict doTestStepL();
-private:
- 	CTAuthSvrServer& iParent;
- 	};
-   		
-//Parameters class.For now, used only to get the result.
-class TThreadParams
-    {
-public:
-    TInt result;
-    };
-
-
-class CTMultiThreaded: public CTStepActSch
-    {
-public:
-    CTMultiThreaded(CTAuthSvrServer& aParent);
-    ~CTMultiThreaded();
-    virtual TVerdict doTestStepPreambleL();
-    virtual TVerdict doTestStepPostambleL();    
-    virtual TVerdict doTestStepL();
-    static void runMultiThreadedTest(TThreadParams* aParams);
-    static void doRegisterL(TThreadParams& aParams);
-private:
-    CTAuthSvrServer& iParent;
-    };
-
-// Strings for the server create test step code
-_LIT(KTFirstStart,					"FIRST_START");
-_LIT(KTAuthSvrCheck,				"AUTHSVR_CHECK");
-_LIT(KTRegIdentity,					"REG_IDENTITY");
-_LIT(KTEnumIdentities, 				"ENUM_IDENTITIES");
-_LIT(KTIdentifyMultiple, 			"IDENTIFY_MULTIPLE");
-_LIT(KTRetrainPlugin,				"RETRAIN_PLUGIN");
-_LIT(KTForgetPlugin,				"FORGET_PLUGIN");
-_LIT(KTRemoveDbs,					"REMOVE_DBS");
-_LIT(KTRemoveIdentity,				"REMOVE_IDENTITY");
-_LIT(KTAuthenticate,				"AUTHENTICATE");
-_LIT(KTSetPrefs, 			    	"SET_PREFS");
-_LIT(KTInitCenRep,					"INIT_CENREP");
-_LIT(KTResultAvailability, 			"RESULT_AVAILABILITY");
-_LIT(KTResultChangeNotify, 			"RESULT_NOTIFICATION");
-_LIT(KTPostMarketPlugin,			"POST_MARKET_PLUGIN");
-_LIT(KTStepClientSidSupportCheck, 	"CLIENT_SID_CHECK");
-_LIT(KTInstallPluginStep, 			"INSTALL_PLUGIN");
-_LIT(KTUninstallPluginStep, 		"UNINSTALL_PLUGIN");
-_LIT(KTAuthServerOom,	 			"OOM_TEST");
-_LIT(KTResetIdentity,				"RESET_IDENTITY");
-_LIT(KTUpdateSysTime,				"UPDATE_SYSTIME");
-_LIT(KTMultiThreadedTest,           "MULTI_THREADED");
-
-// Performance related names
-_LIT(KMaxDurationName, 				"MaxDuration");
-_LIT(KMaxTestCaseDuration, 			"TEST_CASE_MAXIMUM_ALLOWED_DURATION");
-_LIT(KActualTestCaseDuration, 		"TEST_CASE_ACTUAL_DURATION");
-_LIT(KPerformanceTestInfo, 			"PERFORMANCE_LOG_INFORMATION");
-// String used to store the filename that contains the initialisation data used by the PinAuthPlugin, etc
-
-_LIT(KPluginIniFile, 			"\\tAuth\\tAuthSvr\\testdata\\initialisation_Info.ini");
-_LIT(KPluginIniSection,			"SectionOne");
-_LIT(KAuthSvrPolicyFile, 		"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-_LIT(KDefaultPluginTag, 		"DefaultPlugin");
-_LIT(KIdEnteredPinTag, 			"IdEnteredPinValue");
-_LIT(KTrainEnteredPinTag, 		"TrainEnteredPinValue");
-_LIT(KSupportsDefaultTag,		"iSupportsDefaultData");	//used to specify whether the individual plugins support default data 
-_LIT(KActiveStateTag,			"activeState");	//used to specify whether the individual plugins are active
-_LIT(KPinDbTag,					"Identity&PinValues");
-_LIT(KTotalDbTag,				"AllUserID&PinValues");
-_LIT(KDisplayMessage,			"DisplayMessage");
-_LIT(KLastAuthIdTag,			"LastAuthId");
-_LIT(KDefauthPrefsTag,			"DefaultPref");
-_LIT(KKnowledgePrefsTag,		"KnowledgePref");
-_LIT(KBiometricPrefsTag,		"BiometricPref");
-_LIT(KTokenPrefsTag,			"TokenPref");
-
-_LIT(KInitPinDatabaseValue,		",");
-_LIT(KDefaultInput,				"0000");
-
-// Strings used to store the filenames for the pluginDb files
-_LIT(KPlugin3100File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113100Db.ini");
-_LIT(KPlugin3101File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113101Db.ini");
-_LIT(KPlugin3102File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113102Db.ini");
-_LIT(KPlugin3103File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113103Db.ini");
-_LIT(KPlugin3104File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113104Db.ini");
-_LIT(KPlugin4100File,		"\\tAuth\\tAuthSvr\\testdata\\Pin10234100Db.ini");
-
-#endif	/* T_AUTHSVR_STEP_H */
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tPinAuthPlugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1182 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <f32file.h>
-
-#include "tPinAuthPlugin.h"
-#include <e32svr.h>
-
-#ifndef __INIPARSER_H__
-	#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-
-CTPinAuthPlugin::~CTPinAuthPlugin()
-	{
-	delete iClientMessage;
-	}
-
-CTPinAuthPlugin::CTPinAuthPlugin()
-	{	
-	// See ConstructL() for initialisation completion.
-	}
-		
-/**
- Safely complete the initialization of the constructed object	
-*/
-void CTPinAuthPlugin::ConstructL()
-	{
-	iName.Set(KPluginNamePin);
-	iDescription.Set(KPluginDescriptionPin);
-	iMinEntropy = KEntropyPin;
-	iFalsePositiveRate = KFalsePosPin;
-  	iFalseNegativeRate = KFalseNegPin;
-  	iClientMessage = HBufC::NewL(2048);
-	ReloadAllFromIniFile();
-	}
-	
-/**
-  Sets information like iActiveState and iSupportsDefaultData from 
-  the TEF ini file to the individual plugin database files
-*/	
-void CTPinAuthPlugin::ReloadAllFromIniFile()
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");					
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret;	//return value from FindVar functions
-		ret=file->FindVar(_L("SectionOne"),_L("iSupportsDefaultData"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iSupportsDefaultData default value used."));
-			iSupportsDefaultData = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			iSupportsDefaultData = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}		
-				
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			
-			// If the string 'false' was not found, we set the value to 'true' -the default value
-			iActiveState = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = iSupportsDefaultData,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		
-		delete file;
-		TRAP(r,file=CIniData::NewL(KAuthSvrPolicyFile));
-		TPtrC displayMessage;
-		ret=file->FindVar(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-		if(displayMessage.Length() == 0)   //Value = 0
-			{
-			RDebug::Print(_L("DisplayMessage not passed."));
-			iClientMessage = iClientMessage->ReAllocL(0);	// Default value
-			TPtr ptr(iClientMessage->Des());
-			ptr = KNullDesC();
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		else
-			{
-			iClientMessage = iClientMessage->ReAllocL(displayMessage.Length());
-			TPtr ptr(iClientMessage->Des());
-			ptr = displayMessage;
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		delete file;
-		}
-			
-	}
-
-void CTPinAuthPlugin::ReloadActiveStateFromIniFile() const
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");
-	
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			if (resultLowerCase.FindF(KFalse) == KErrNotFound) 
-				iActiveState = ETrue;	// The string 'false' was not found, so we set the value to 'true' -the default value
-			else
-				iActiveState = EFalse;
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = activeState,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		delete file;
-		}
-	}
-
-
-	
-//Implement CAuthPluginInterface definitions
-
-/**
- Normally, this would ask the user to input a 4-digit pin and then compare it to 
- the values that this plugin has been trained with. The result should be the 
- user that this PIN corresponds to.
- 'aResult' should be the 'hash' of the stored PIN (which corresponds to the freshly entered PIN)
- but in this case, it's returned as it was 'unhashed'.
-*/
-
-void CTPinAuthPlugin::Identify(TIdentityId& aId, const TDesC& aClientMessage,
-							   HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	ASSERT(IsActive());
-	
-	// We are simulating user input by reading from a file
-	// (The data contained in this file has been freshly written by the 'client part in TestExecute')
-	
-	if(aClientMessage != *ClientMessage())
-		{
-		RDebug::Print(_L("Display String Mismatch !!!"));	
-		}
-	else
-		{
-		RDebug::Print(_L("Display String at the plugin matches the string sent !! "));
-		}
-	aRequest = KRequestPending;
-		
-	TBuf8<32> userInput;
-	TRAPD(result1, IdReadUserInput(userInput));	//Get the data from the AuthSvrPolicy.ini file
-	if (KErrNone != result1)
-		{
-		aRequest = result1;
-		}
-	else
-		{
-		// No errors, carry on					
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		buf = HBufC::NewLC(32);
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug1,"Identifying Userinput read from file = %S");    		
-		RDebug::Print(KMsgDebug1, buf);
-		CleanupStack::PopAndDestroy(buf);	//Memory cleanup. This string was only needed for the above Print function
-			
-		// Possibly, to allow for the cancellation or quitting, allow that to be the input string
-		_LIT8(KCancelText, "Cancel");	
-		_LIT8(KQuitText, "Quit");	
-		if (userInput == KCancelText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginCancelled);
-			//aResult will not be updated, as specified
-			}
-		else if (userInput == KQuitText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginQuit);
-			//aResult will not be updated, as specified
-			}
-		else
-			{
-			//compare with the known set of inputs and see if this is one of them.	
-			TInt result2 = CheckForStringPresence(aId, userInput, aRequest);
-			if (KErrNone == result2)	//The above function did not leave
-				{
-				//See if the string was found.
-				TInt length = userInput.Length();
-				
-				aResult = HBufC8::New(length);	
-				aResult->Des().Format(_L8("%S"), &userInput);
-				
-				RDebug::Printf("aResult has been updated. aResult = %S, userInput = %S", 
-									aResult, &userInput);
-				TRequestStatus* status  = &aRequest;
-				User::RequestComplete(status, result2);
-			
-				//Note: aRequest has been updated by the CheckForStringPresence function				
-				}
-			else if (KErrNotFound == result2)
-				{
-				RDebug::Printf("The data that the user input was not found (recognized)"
-								"Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}			
-			else
-				{
-				//Caters for file access errors etc
-				RDebug::Printf("Error occurred while checking for the presence of the string"
-								"in the list. Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}
-			}
-			//End of 'else' where the user did not cancel or quit the 'identify' process
-		}		
-	}
-	
-void CTPinAuthPlugin::Cancel()
-	{		
-	}
-
-void CTPinAuthPlugin::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	
-	//Accept user input and update the list of inputs along with IDs.
-	
-ASSERT(IsActive());
-	
-	aRequest = KRequestPending;
-	//TInt result = KErrNone;
-	
-	TBuf8<32> userInput;
-	TRAPD(result1, TrainReadUserInput(userInput));
-	if (KErrNone != result1)
-		{
-		_LIT(KMsgDebug2,"Training Userinput read Error: result = %d");    
-		RDebug::Print(KMsgDebug2, result1);
-		}
-	else
-		{
-		// No errors, carry on		
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		TRAPD(err, buf = HBufC::NewL(32));
-		
-		if(err == KErrNoMemory)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrNoMemory);
-			return;
-			}
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug3, "--Training Userinput read from file = %S");
-		RDebug::Print(KMsgDebug3, buf);
-		delete buf;	//Memory cleanup. This string was only needed for the above Print function			
-		
-		// To allow for the cancellation or quitting, allow that to be the input string
-		TRequestStatus aRequest2 = KRequestPending;
-		_LIT8(KCancelText, "Cancel");
-		_LIT8(KQuitText, "Quit");
-		userInput.Trim();		
-		if (userInput.CompareF(KCancelText) == 0)
-			{ aRequest2 = KErrAuthServPluginCancelled; }		
-		else if (userInput.CompareF(KQuitText) == 0)
-			{ aRequest2 = KErrAuthServPluginQuit; }
-		else
-			{
-			//compare with the present set of inputs and see if this is one of them.
-			// update this list with this new user input, tagged to the aId
-			TRAPD(result2, CheckForNewStringPresenceL(aId, userInput, aRequest2));			
-			if (KErrNone != result2)
-				{
-				_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-				RDebug::Print(KMsgDebug4, result2);
-				}
-			else if(KErrNone == aRequest2.Int())
-				{
-				// No errors, update aResult.
-				// First allocate space for it since this variable will always be a 
-				// null pointer coming into this function
-				
-				TRAPD(err1,aResult = HBufC8::NewL(userInput.Size()));	
-				if(err1 == KErrNoMemory)
-					{
-					TRequestStatus* status  = &aRequest;
-					RDebug::Printf("User::request complete with kerr no memory");
-					User::RequestComplete(status, KErrNoMemory);	
-					return;
-					}
-				*aResult = userInput;
-				aRequest2 = KErrNone;
-				}			
-			else
-				{
-				_LIT(KMsgDebug5, "Error occurred during training. aRequest.Int() = %d");
-				RDebug::Print(KMsgDebug5, aRequest2.Int());
-				//aResult is not updated, nor is aId				
-				}
-			}
-		// Complete the asynchronous function
-		TRequestStatus* status  = &aRequest;
-		User::RequestComplete(status, aRequest2.Int());
-		}
-	}
-
-TBool CTPinAuthPlugin::IsActive () const
-	{
-	// There is never any user intervention required
-	//return true;
-	// As a future development note, this value may be read from a file (or a section in a file)
-	
-	ReloadActiveStateFromIniFile();
-	return iActiveState;
-	}
-	
-TInt CTPinAuthPlugin::Forget(TIdentityId aId)
-	{
-	// Open the list of userInputs that have been stored by this plugin
-	// Then find the one that corresponds to this id
-	// Then remove this string from the list and return the correct status value
-	
-	//Open the file
-	TRAPD(result3, FindStringAndRemoveL(aId));
-	return result3;
-			
-	}
-	
-TInt CTPinAuthPlugin::DefaultData(TIdentityId aId, HBufC8*& aOutputBuf)
-	{
-	
-	// This implementation of the PIN plugin does support default data.
-	// There will be cases where i don't want this available. Hence the addition of a 
-	// new class member iSupportsDefaultData
-	ReloadAllFromIniFile();
-	
-	TInt result = KErrNotSupported;
-	TRequestStatus aRequest2 = KRequestPending;
-	
-	if (iSupportsDefaultData)	//Class member initialised in the constructor
-		{
-		TBufC8<16> defaultBuf(KDefaultData);
-		//compare with the present set of inputs and see if this is one of them.
-		// update this list with this new user input, tagged to the aId
-		TRAPD(result2, CheckForNewStringPresenceL(aId, defaultBuf, aRequest2));			
-		if (KErrNone != result2)
-			{
-			_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-			RDebug::Print(KMsgDebug4, result2);
-			}
-		else if(KErrNone == aRequest2.Int())
-			{
-			// No errors, update aOutputBuf.
-			// First allocate space for it since this variable will always be a 
-			// null pointer coming into this function				
-			
-			TRAPD(resAlloc, (aOutputBuf = HBufC8::NewL(KDefaultData().Size())) );
-			if (KErrNone != resAlloc)
-				{
-				_LIT(KMsgAllocFailed2,"Failed to allocate memory for updating aOutputBuf");
-				RDebug::Print(KMsgAllocFailed2);
-				result = resAlloc;
-				}
-			else
-				{
-				*aOutputBuf = KDefaultData;
-				result = KErrNone;				
-				}
-			}			
-		else
-			{
-			_LIT(KMsgDebug5, "Error occurred during training. aRequest2.Int() = %d");
-			RDebug::Print(KMsgDebug5, aRequest2.Int());
-			//aOutputBuf is not updated, nor is aId				
-			}
-		}
-		
-	return result;	
-	}
-
-TInt CTPinAuthPlugin::Reset(TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult)
-	{
-	// To enable testing return KErrNotSupported for one of the knowledge-based incarnations of this class
-	if (Id() == 0x11113102)
-		{
-		return KErrNotSupported;
-		}
-
-	// If no registration data is supplied or if this plugin is configured as non-knowledge 
-	// type plugin then reset is simply a forget operation else the registration data is 
-	// used to retrain the plugin
-	if ((aRegistrationData == KNullDesC) || (Id() == 0x11113101) || (Type() == EAuthBiometric) || (Type() == EAuthToken))
-		{
-		aResult = NULL;
-		TRAPD(err, FindStringAndRemoveL(aId));
-		return err;
-		}
-
-	// For EAuthKnowledge type
-	// Convert the 16-bit string to a 8-bit string (pin)
-	// Note that no unicode conversion is being done here since a pin cannot be in unicode
-	RBuf8 pinBuf;
-	TBuf8<32> newPin;
-	TRAPD(err, pinBuf.CreateL(32);\
-				CleanupClosePushL(pinBuf);\
-				pinBuf.Copy(aRegistrationData.Left(32));\
-				newPin = pinBuf;\
-				CleanupStack::PopAndDestroy(&pinBuf));
-	if (err != KErrNone)
-		{
-		return err;
-		}
-
-	// Log a message
-	TBuf8<32> userInput;
-	_LIT(KMsgDebug3, "Reset with registration data = %S");
-	RDebug::Print(KMsgDebug3, &aRegistrationData);
-
-	// Compare with the present set of inputs and see if this is one of them.
-	// update this list with this new user input, tagged to the aId
-	TRequestStatus request = KRequestPending;
-	TRAP(err, CheckForNewStringPresenceL(aId, newPin, request));	
-	
-	if( KErrNoMemory == err)
-		{
-		User::LeaveNoMemory();
-		}
-	if (err != KErrNone)
-		{
-		RDebug::Print(_L("Reset error = %d"), err);
-		return err;
-		}
-	else if (request.Int() == KErrNone)
-		{
-		// No errors, update aResult.
-		TRAP(err, aResult = HBufC8::NewL(newPin.Size()));
-		if (err != KErrNone)
-			{
-			return err;
-			}
-		*aResult = newPin;
-		}
-	else
-		{
-		_LIT(KMsgDebug5, "Error occurred during reset. request.Int() = %d");
-		RDebug::Print(KMsgDebug5, request.Int());
-		return request.Int();
-		}
-
-	return KErrNone;
-	}
-
-//--------------------------------------------------------------------------------
-
-/**
- Utility method to capture the data that the user has input 
- (in the form of data stored in a file)
-*/
-TInt CTPinAuthPlugin::IdReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("IdEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. IdEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Later,include a check to ensure that only digits were entered
-			aInputValue.Copy(result);
-			aInputValue.Trim();			
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-TInt CTPinAuthPlugin::TrainReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("TrainEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. TrainEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-   			aInputValue.Copy(result);
-			aInputValue.Trim();
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Called by Identify()
- @return - success or failure value
-*/
-TInt CTPinAuthPlugin::CheckForStringPresence(TIdentityId& aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{
-
-	TInt retValue = KErrNone;	
-	// First format the aInputValue string so that it starts with a ':' and ends with a ','.
-	_LIT8(KFormatValue2, ":%S,");
-	TBuf8<32> aInputValue2;
-	aInputValue2.Format(KFormatValue2, &aInputValue);
-
-	//Convert the 8-bit string to a 16-bit string for printing in RDebug
-	HBufC* buf = 0;
-	buf = HBufC::New(32);
-	buf->Des().Copy(aInputValue);		
-	RDebug::Print(_L("Formatted string: %S"), buf);
-	delete buf;	//Memory cleanup. This string was only needed for the above Print function
-
-	TBuf8<500> pinFileContents1, pinFileContents2;
-	// Read the contents of the file that contains all the ID/PIN combinations
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(KErrNoMemory == r)
-		{
-		delete file;
-		RDebug::Print(_L("Unable to create CIniData object - No memory !! "));
-		User::LeaveNoMemory();
-		
-		}
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("Identity&PinValues"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the Identity&PinValues key in the file %S."), &iFileToRead);
-			retValue = KErrNotFound;
-			aRequestValue =KErrNotFound;
-			}
-		else
-			{
-			pinFileContents1.Copy(result);	
-			
-			TInt searchResult;
-			searchResult = pinFileContents1.Find(aInputValue2);
-			
-			if (KErrNotFound == searchResult)
-				{
-				RDebug::Print(_L("Userinput not found in the pinFile %S. Identification error"), &iFileToRead);
-				aRequestValue= KErrAuthServIdentityNotFound;
-				retValue  = searchResult;
-				}
-			else if (searchResult)	// a positive value
-				{				
-				// Now find the userID by searching back through the string for the "," marker				
-				pinFileContents2 = pinFileContents1.Left(searchResult);
-				TInt userIdStartPos = pinFileContents2.LocateReverse(',');
-								 
-				//Extract this userId for use by the calling function
-				TBuf8<50> p1 = pinFileContents2.Right(searchResult - userIdStartPos - 1);
-				TLex8 input (p1);
-				TRadix aRadix = EDecimal;
-				input.Val(aId, aRadix);
-				RDebug::Print(_L("UserId that is stored = %u"), aId);
-				aRequestValue = KErrNone;
-				retValue = KErrNone;
-				}				
-			else
-				{
-				RDebug::Print(_L("Unexpected error in the 'Find' function. Searchresult = %d"), searchResult);
-				aRequestValue = searchResult;
-				retValue = searchResult;				
-				}//End check for key&section search in file				
-			}//End check for safe file access
-		delete file;
-		}
-	
-	return retValue;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Used to find out if the input is unique. 
- -since KIdAmbiguous is no longer used, KIdCancel will be returned if the input is non-unique
- Called by Train() and DefaultData()
-*/
-TInt CTPinAuthPlugin::CheckForNewStringPresenceL(TIdentityId aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{	
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrNone;
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(KErrNoMemory == r)
-		{
-		User::LeaveNoMemory();
-		}
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		return r;
-		}	
-	
-	
-	// Look for a key under a named section, retrieve text value	
-	TPtrC result;		
-	TBool ret=EFalse;	//return value from FindVar functions
-	aRequestValue = KErrAuthServIdentityNotFound;	//Initialisation		
-			
-	ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-	if(!ret)
-		{
-		RDebug::Print(_L("Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-		delete file;
-		return KErrNotFound;			
-		}
-	
-	//Copy the data from the named section in the file, and see if any previous user has used this input string
-	pinFileContents.Copy(result);			
-	
-	TInt searchResultPin;
-	TBuf8<50> searchStringPin;
-	_LIT8(KFormat3, ":%S,");
-	searchStringPin.Format(KFormat3, &aInputValue);
-	searchResultPin = pinFileContents.Find(searchStringPin);
-				
-	if (KErrNotFound == searchResultPin)
-		{				
-		//check that the identity is unique, if so, update the Db 
-		// with the new Id-PIN pair, as is done already
-		// else update the PIN only, ie training data for that identity
-		TInt searchResultId;
-		TBuf8<50> searchStringId;
-		_LIT8(KFormat4, ",%u:");
-		searchStringId.Format(KFormat4, aId);
-		
-		searchResultId = pinFileContents.Find(searchStringId);
-		
-		TDriveUnit sysDrive (RFs::GetSystemDrive());
-		TBuf<80> policyFile;
-		if (KErrNotFound == searchResultId)
-			{									
-			// Add this entry to the file
-			// This is a simple system, expecting a format as below:
-			// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-			
-			_LIT8(KFormat2, "%S%u:%S,");
-			if (pinFileContents.Size() == 0)
-				{
-				pinFileContents.Append(',');	//Initialisation
-				}
-			pinFileContents2.Format(KFormat2, &pinFileContents, aId, &aInputValue);				
-										
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			TRAPD(err,buf = HBufC::NewL(pinFileContents2.Length()));
-				
-			if(err == KErrNoMemory)
-				{
-				delete file;
-				User::LeaveNoMemory();
-				}
-			buf->Des().Copy(pinFileContents2);												
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-						
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone == ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			
-			}
-
-		else
-			{
-			//The Identity has already been trained with this plugin, 
-			// update the PIN (training data)
-			
-			//extract the string to the right of the end of the aId
-			pinFileContents2 = pinFileContents.Mid(searchResultId + searchStringId.Size());
-			
-			//Find the end of the PIN (Training data)
-			_LIT8(KPinEndMarker, ",");
-			TBufC8<5> bufPinEndMarker(KPinEndMarker);					
-			TInt pinEndPos = pinFileContents2.Find(bufPinEndMarker);
-			
-			//Replace this with the new PIN
-			pinFileContents.Replace((searchResultId + searchStringId.Size()),
-									 pinEndPos, aInputValue);	
-			
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			TRAPD(err1,buf = HBufC::NewL(pinFileContents.Length()));
-			if(err1 == KErrNoMemory)
-				{
-				delete file;
-				User::LeaveNoMemory();
-				}
-			buf->Des().Copy(pinFileContents);
-								
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone ==ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			}
-		delete file;
-		return ret;
-		}
-	if (searchResultPin)	// a positive value
-		{
-		// A user has already tried to train this plugin using the given data.
-		// The pinFileContents are not updated, to avoid duplication
-		
-		aRequestValue = KErrAuthServPluginCancelled;
-		delete file;
-		return searchResultPin;
-		}	
-	
-	RDebug::Print(_L("Unexpected error in the 'Find' function. SearchresultPin = %d"), searchResultPin);
-	retValue = searchResultPin;
-
-	delete file;
-		
-	return retValue;
-	}
-
-	
-/**
- Utility function to remove the training data that is associated with a given Id
- Called by the Forget function
- @return - KIdSuccess, KIdUnknown or some error code  
- */ 
-TInt CTPinAuthPlugin::FindStringAndRemoveL (TIdentityId aId)
-	{
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrAuthServNoSuchIdentity;		//init
-	CIniData* file=NULL;
-	//First read the list of userId and PIN combinations from a file
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-				
-		ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Config error: Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			pinFileContents.Copy(result);				
-			
-			//Format the searchstring as defined in the file so that it starts with a ',' and ends with a ':'.
-			_LIT8(KFormatValue3, ",%u:");			
-			
-			TBuf8<32> searchString;
-			searchString.Format(KFormatValue3, aId);
-
-			//For the purpose of printing the data to a file, i'll create a 16-bit version of pinFileContents
-			HBufC* buf = 0;
-			buf = HBufC::NewL(searchString.Length());
-			buf->Des().Copy(searchString);
-			RDebug::Print(_L("Formatted searchString used in 'FindStringAndRemove(): %S"), buf);
-			delete buf;
-
-			TInt userIdStartPos;	//The offset of the searchString within pinFileContents
-									//i.e the position of the '.' just before the identityId
-			userIdStartPos = pinFileContents.Find(searchString);
-			if (KErrNotFound == userIdStartPos)
-				{
-				RDebug::Print(_L("FindStringAndRemoveL: The specified ID was not found in the pinFile"));
-				retValue = KErrAuthServNoSuchIdentity;	//KIdUnknown;
-				}
-			else
-				{
-				
-				//Find where the string (including PIN) ends
-				TLex8 aLex = TLex8(pinFileContents);
-				TInt length(0);
-				aLex.Inc(userIdStartPos+1);
-				while(aLex.Peek() != ',') 
-					{
-					aLex.Inc();
-					length++;
-					}
-	
-				//remove the found (total) string from the list (including the starting ',')
-				pinFileContents.Delete(userIdStartPos,length+1);
-				
-				//Update the file
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf;
-				buf = HBufC::NewL(pinFileContents.Length());	
-				buf->Des().Copy(pinFileContents);
-								
-				ret2 = file->SetValue(KPluginIniSection, KPinDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-				TDriveUnit sysDrive (RFs::GetSystemDrive());
-				TBuf<2> sysDriveName (sysDrive.Name());
-				TBuf<84> policyFile;
-								
-				if (KErrNone != r)
-					{
-					policyFile.Copy(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					policyFile .Copy(sysDriveName);
-					policyFile.Append(KAuthSvrPolicyFile);
-					RDebug::Print(_L("Error occurred in WriteToFileL(). Error = %d. Filename= %S"), ret2, &policyFile);
-					retValue = ret2;
-					}
-				else
-					{
-					retValue = KErrNone;		
-					}				
-				}			
-			}//End check for key&section search in file
-		delete file;
-		}//End check for safe file access
-	
-	return retValue;
-	}
-
-
-/**
- Utility function to Update the Global Db with the training data 
- that is associated with a given Id. The update will not happen if 
- the identity is already present in this list, i.e. it's been pu in 
- by another plugin
- Called by the CheckForNewStringPresence function
- @return - KErrNone, or some error code
-*/
-TInt CTPinAuthPlugin::AddToGlobalDb (TIdentityId aId, TBuf8<32> aInputValue)
-	{
-	
-	TBuf8<500> totalDbFileContents, totalDbFileContents2;
-	TInt retValue = KErrNone;
-	CIniData* file=NULL;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> authSvrPolicyFile(sysDriveName);
-	authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-	
-	TRAPD(r,file=CIniData::NewL(authSvrPolicyFile));	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &authSvrPolicyFile);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions		
-				
-		ret=file->FindVar(KPluginIniSection, KTotalDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the %S key in the file %S."), &KTotalDbTag, &authSvrPolicyFile);
-			retValue = KErrNotFound;		
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			totalDbFileContents.Copy(result);
-			TBuf8<20> aidString;
-			aidString.Num(aId, EDecimal);			
-			TInt searchResult;			
-			searchResult = totalDbFileContents.Find(aidString);
-			
-			if (KErrNotFound == searchResult)
-				{
-				// Add this entry to the file
-				// This is a simple system, expecting a format as below:
-				// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-				_LIT8(KFormat2, "%S%u:%S,");
-				if (totalDbFileContents.Size() == 0)
-					{					
-					totalDbFileContents.Append(',');	//Initialisation
-					}
-				totalDbFileContents2.Format(KFormat2, &totalDbFileContents, aId, &aInputValue);				
-					
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf = 0;
-				TRAPD(err,buf = HBufC::NewL(totalDbFileContents2.Length()));
-				if(err == KErrNoMemory)
-					{
-					delete file;
-					return KErrNoMemory;
-					}
-				buf->Des().Copy(totalDbFileContents2);								
-				ret2 = file->SetValue(KPluginIniSection, KTotalDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-									
-				if (KErrNone != r)
-					{
-					TBuf<80> policyFile(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;	//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					RDebug::Print(_L("Error occurred in SetValue(). Error = %d. Filename= %S"), ret2, &authSvrPolicyFile);
-					retValue = ret2;
-					}
-				}
-			else
-				{
-				// A user has already tried to train this plugin using the given data.
-				// The pinFileContents are not updated, to avoid duplication				
-				retValue = KErrNone;													
-				}//End aidString search in the totalDbFileContents string (Find())
-			}//End check for key&section search in file (FindVar())
-			delete file;
-		}//End check for safe file access
-	return retValue;
-	}
-
-const HBufC* CTPinAuthPlugin::ClientMessage()
-	{
-	return iClientMessage;
-	}
-
-const TPtrC& CTPinAuthPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CTPinAuthPlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CTPinAuthPlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CTPinAuthPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CTPinAuthPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CTPinAuthPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tPinAuthPlugin.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,178 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTPinAuthPlugin is an interface implementation for CAuthPluginInterface
-*
-*/
-
-
-
-#ifndef TPINAUTHPLUGIN_H
-#define TPINAUTHPLUGIN_H
-
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-
-
-
-//An implementation of the CAuthPluginInterface definition
-
-using namespace AuthServer;
-	
-//implementation_uid = 0x10204F10
-class CTPinAuthPlugin : public CAuthPluginInterface
-	{
-public:
-	// Two phase constructor
-	static CTPinAuthPlugin* NewL();
-	// Destructor
-	virtual ~CTPinAuthPlugin();
-	//Implementation of CAuthPluginInterface definitions using a PIN system
-	virtual void Identify(TIdentityId& aId, const TDesC& aClientMessage, HBufC8*& aResult, TRequestStatus& aRequest);	
-	virtual void Cancel();	
-	virtual void Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);		
-	virtual TBool IsActive() const;
-	virtual TInt Forget(TIdentityId aId);
-	virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf);
-	virtual TInt Reset(TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult);
-	//virtual TPluginId Id() const;
-	virtual const TPtrC& Name() const;
-	virtual const TPtrC& Description() const;
-	virtual AuthServer::TEntropy MinEntropy() const;
-	virtual AuthServer::TPercentage FalsePositiveRate() const;
-	virtual AuthServer::TPercentage FalseNegativeRate() const;
-	virtual AuthServer::TAuthPluginType Type() const;
-		
-	// Utility functions
-	TInt IdReadUserInput(TBuf8<32>& inputValue);
-	TInt TrainReadUserInput(TBuf8<32>& inputValue);
-	TInt CheckForStringPresence(TIdentityId& aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue);
-	TInt CheckForNewStringPresenceL(TIdentityId aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue);
-	TInt FindStringAndRemoveL(TIdentityId aId);
-	TInt AddToGlobalDb (TIdentityId aId, TBuf8<32> aInputValue);
-	TInt RemoveFromGlobalDb (TIdentityId aId);
-	const HBufC* ClientMessage ();
-	
-
-public:
-	mutable TBuf<70> iFileToRead;
-	void ConstructL();
-	CTPinAuthPlugin();
-	void ReloadAllFromIniFile();
-	void ReloadActiveStateFromIniFile() const;
-protected:
- 	/// The name of the plugin. Derived classes should set this member.
- 	TPtrC iName;
- 	/// The plugin's description. Derived classes should set this member.
- 	TPtrC iDescription;
- 	/// The minumum entropy provided by the plugin. Derived classes should set
- 	/// this member.
- 	AuthServer::TEntropy iMinEntropy;
- 	/// The false positive rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalsePositiveRate;
- 	/// The false negative rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalseNegativeRate;
-  	/// The type of the plugin. Derived classes should set this member.
- 	AuthServer::TAuthPluginType iType;
-
-private:
-	// Data read from file determining if this plugin supports default data
-	TBool iSupportsDefaultData;
-	mutable TBool iActiveState;
-	HBufC* iClientMessage;
-	};
-
-
-//=========================================================================	
-// The various classes that are spawned from this base class by inheriting the implementations besides
-// the Id() function (Uses the #define macro)
-
-// number is hex, type is one of the TAuthPluginType enums
-// Id() returns the Id of the plugin
-
-
-#define NClass(id,type) class CTPinAuthPlugin##id : public CTPinAuthPlugin\
-	{                                        		\
-public:                                      		\
-	typedef CTPinAuthPlugin##id TMyPinType;	    	\
-	TPluginId Id() const 		               		\
-		{ return 0x##id; }  	               		\
-		const TPtrC& Name() const					\
-		  {											\
-		  return iName;								\
-		  }											\
-		const TPtrC& Description() const			\
-		  {											\
-		  return iDescription;						\
-		  }											\
-		AuthServer::TAuthPluginType Type() const 	\
-		  {											\
-		  return iType;								\
-		  }											\
-		AuthServer::TEntropy MinEntropy() const		\
-		  {											\
-		  return iMinEntropy;						\
-		  }											\
-		AuthServer::TPercentage FalsePositiveRate() const \
-		  {												  \
-		  return iFalsePositiveRate;					  \
-		  }												  \
-		AuthServer::TPercentage FalseNegativeRate() const \
-		  {												  \
-		  return iFalseNegativeRate;					  \
-		  }												  \
-	static TMyPinType* NewL()                   	\
-    	{										 	\
-        TMyPinType* r = new (ELeave) TMyPinType();	\
-        CleanupStack::PushL(r);						\
-	  	r->ConstructL();						 	\
-	  	CleanupStack::Pop(r);						\
-        r->iType = type;                            \
-	  	return r;                              		\
-		}											\
-	}
-
-NClass(11113100, EAuthKnowledge);
-NClass(11113101, EAuthKnowledge);
-NClass(11113102, EAuthKnowledge);
-NClass(11113103, EAuthBiometric);
-NClass(11113104, EAuthToken);
-
-//=========================================================================		
-// Constants used in the utility functions -File locations, etc
-_LIT8(KDefaultData, "0000");
-_LIT(KInitInfoFile, "\\tAuth\\tAuthSvr\\testdata\\initialisation_Info.ini");
-_LIT(KPolicyFile, 	"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-
-_LIT(KPluginNamePin, "Pin1");
-_LIT(KPluginDescriptionPin, "Pin Plugin, can store and return known id and training data for each identity.");
-
-static const TInt KEntropyPin = 999;
-static const TInt KFalsePosPin = 100;
-static const TInt KFalseNegPin = 10;
-
-//From Step_Base.cpp
-_LIT(KPluginIniSection,			"SectionOne");
-_LIT(KAuthSvrPolicyFile, 		"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-_LIT(KDefaultPluginTag, 		"DefaultPlugin");
-_LIT(KEnteredPinTag, 			"EnteredPinValue");
-_LIT(KPinDbTag,					"Identity&PinValues");
-_LIT(KTotalDbTag,				"AllUserID&PinValues");
-_LIT(KInitPinDatabaseValue,		",");
-
-
-
-#endif	/* TPINAUTHPLUGIN_H */
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tauthsvrservernc.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,136 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tAuthSvrServer.cpp
-* Test code for the TestExecute Server
-*
-*/
-
-
-
-#include "tAuthSvrServer.h"
-#include "tAuthSvrStep.h"
-
-
-_LIT(KServerName,"tAuthSvrNC");	
-
-CTAuthSvrServer* CTAuthSvrServer::NewL()
-/**
- * @return - Instance of the test server
- * Called inside the MainL() function to create and start the
- * CTestServer derived server.
- */
-	{
-	CTAuthSvrServer* server = new (ELeave) CTAuthSvrServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit
-	// server Logging.
-
-	//server->StartL(KServerName); 
-	server-> ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-
-// EKA2 much simpler
-// Just an E32Main and a MainL()
-
-LOCAL_C void MainL()
-/**
- * Much simpler, uses the new Rendezvous() call to sync with the client
- */
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	
-	CTAuthSvrServer* server = NULL;
-	// Create the CTestServer derived server	
-	TRAPD(err,server = CTAuthSvrServer::NewL());
-	if(!err)
-		{
-		// Sync with the client and enter the active scheduler
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-
-GLDEF_C TInt E32Main()
-/**
- * @return - Standard Epoc error code on exit
- */
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());
-	delete cleanup;
-	return KErrNone;
-    }
-
-
-CTestStep* CTAuthSvrServer::CreateTestStep(const TDesC& aStepName)
-/**
- * @return - A CTestStep derived instance
- * Implementation of CTestServer pure virtual
- */
-	{
-	CTestStep* testStep = NULL;
-	
-	// Test step name constant in the test step header file
-	// Created "just in time"
-	if(aStepName == KTFirstStart)
-		testStep = new CTFirstStart();
-	else if (aStepName == KTAuthSvrCheck)
-		testStep = new CTAuthSvrCheck();
-	else if (aStepName == KTRegIdentity)
-		testStep = new CTRegIdentity(*this);
-	else if (aStepName == KTIdentifyMultiple)
-		testStep = new CTIdentifyMultiple();
-	else if (aStepName == KTStepCreateTestDb)
-		testStep = new CTStepCreateTestDb();
-	else if (aStepName == KTRetrainPlugin)
-		testStep = new CTRetrainPlugin(*this);
-	else if (aStepName == KTRemoveDbs)
-		testStep = new CTRemoveDbs();
-	else if (aStepName == KTRemoveIdentity)
-		testStep = new CTRemoveIdentity(*this);
-	else if (aStepName == KTForgetPlugin)
-		testStep = new CTRemoveAuthMethod(*this);	
-	else if (aStepName == KTAuthenticate)
-		testStep = new CTAuthenticate(*this);
-	else if (aStepName == KTSetPrefs)
-		testStep = new CTSetAuthPrefs(*this);
-	else
-		{
-		ERR_PRINTF1(_L("The test step name specified does not exist."));
-		}
-	
-	return testStep;
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tauthsvrserverwdd.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,136 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tAuthSvrServer.cpp
-* Test code for the TestExecute Server
-*
-*/
-
-
-
-#include "tAuthSvrServer.h"
-#include "tAuthSvrStep.h"
-
-
-_LIT(KServerName,"tAuthSvrWDD");	
-
-CTAuthSvrServer* CTAuthSvrServer::NewL()
-/**
- * @return - Instance of the test server
- * Called inside the MainL() function to create and start the
- * CTestServer derived server.
- */
-	{
-	CTAuthSvrServer* server = new (ELeave) CTAuthSvrServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit
-	// server Logging.
-
-	//server->StartL(KServerName); 
-	server-> ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-
-// EKA2 much simpler
-// Just an E32Main and a MainL()
-
-LOCAL_C void MainL()
-/**
- * Much simpler, uses the new Rendezvous() call to sync with the client
- */
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	
-	CTAuthSvrServer* server = NULL;
-	// Create the CTestServer derived server	
-	TRAPD(err,server = CTAuthSvrServer::NewL());
-	if(!err)
-		{
-		// Sync with the client and enter the active scheduler
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-
-GLDEF_C TInt E32Main()
-/**
- * @return - Standard Epoc error code on exit
- */
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());
-	delete cleanup;
-	return KErrNone;
-    }
-
-
-CTestStep* CTAuthSvrServer::CreateTestStep(const TDesC& aStepName)
-/**
- * @return - A CTestStep derived instance
- * Implementation of CTestServer pure virtual
- */
-	{
-	CTestStep* testStep = NULL;
-	
-	// Test step name constant in the test step header file
-	// Created "just in time"
-	if(aStepName == KTFirstStart)
-		testStep = new CTFirstStart();
-	else if (aStepName == KTAuthSvrCheck)
-		testStep = new CTAuthSvrCheck();
-	else if (aStepName == KTRegIdentity)
-		testStep = new CTRegIdentity(*this);
-	else if (aStepName == KTIdentifyMultiple)
-		testStep = new CTIdentifyMultiple();
-	else if (aStepName == KTStepCreateTestDb)
-		testStep = new CTStepCreateTestDb();
-	else if (aStepName == KTRetrainPlugin)
-		testStep = new CTRetrainPlugin(*this);
-	else if (aStepName == KTRemoveDbs)
-		testStep = new CTRemoveDbs();
-	else if (aStepName == KTRemoveIdentity)
-		testStep = new CTRemoveIdentity(*this);
-	else if (aStepName == KTForgetPlugin)
-		testStep = new CTRemoveAuthMethod(*this);	
-	else if (aStepName == KTAuthenticate)
-		testStep = new CTAuthenticate(*this);
-	else if (aStepName == KTSetPrefs)
-		testStep = new CTSetAuthPrefs(*this);
-	else
-		{
-		ERR_PRINTF1(_L("The test step name specified does not exist."));
-		}
-	
-	return testStep;
-	}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/src/tpinauthpluginupgrade.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1068 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* dummy dll upgrade implementation.
-*
-*/
-
-
-#include <f32file.h>
-
-#include "tPinAuthPlugin.h"
-#include <e32svr.h>
-
-#ifndef __INIPARSER_H__
-	#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-_LIT(KPluginUpgradeNamePin, "Pin1-Upgrade");
-
-CTPinAuthPlugin::~CTPinAuthPlugin()
-	{
-	delete iClientMessage;
-	}
-
-CTPinAuthPlugin::CTPinAuthPlugin()
-	{}
-		
-void CTPinAuthPlugin::ConstructL()
-	{
-	iName.Set(KPluginUpgradeNamePin);
-	iDescription.Set(KPluginDescriptionPin);
-	iMinEntropy = KEntropyPin;
-	iFalsePositiveRate = KFalsePosPin;
-  	iFalseNegativeRate = KFalseNegPin;
-  	iClientMessage = HBufC::NewL(2048);
-	ReloadAllFromIniFile();
-	}
-	
-/**
-  Sets information like iActiveState and iSupportsDefaultData from 
-  the TEF ini file to the individual plugin database files
-*/	
-void CTPinAuthPlugin::ReloadAllFromIniFile()
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");					
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret;	//return value from FindVar functions
-		ret=file->FindVar(_L("SectionOne"),_L("iSupportsDefaultData"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iSupportsDefaultData default value used."));
-			iSupportsDefaultData = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			iSupportsDefaultData = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			
-			// If the string 'false' was not found, we set the value to 'true' -the default value
-			iActiveState = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = iSupportsDefaultData,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		delete file;
-		TRAP(r,file=CIniData::NewL(KAuthSvrPolicyFile));
-		TPtrC displayMessage;
-		ret=file->FindVar(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-		if(displayMessage.Length() == 0)   //Value = 0
-			{
-			RDebug::Print(_L("DisplayMessage not passed."));
-			iClientMessage = iClientMessage->ReAllocL(0);	// Default value
-			TPtr ptr(iClientMessage->Des());
-			ptr = KNullDesC();
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		else
-			{
-			iClientMessage = iClientMessage->ReAllocL(displayMessage.Length());
-			TPtr ptr(iClientMessage->Des());
-			ptr = displayMessage;
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		delete file;
-		}
-			
-	}
-
-void CTPinAuthPlugin::ReloadActiveStateFromIniFile() const
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");
-	
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			if (resultLowerCase.FindF(KFalse) == KErrNotFound) 
-				iActiveState = ETrue;	// The string 'false' was not found, so we set the value to 'true' -the default value
-			else
-				iActiveState = EFalse;
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = activeState,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		delete file;
-		}
-	}
-
-
-	
-//Implement CAuthPluginInterface definitions
-
-/**
- Normally, this would ask the user to input a 4-digit pin and then compare it to 
- the values that this plugin has been trained with. The result should be the 
- user that this PIN corresponds to.
- 'aResult' should be the 'hash' of the stored PIN (which corresponds to the freshly entered PIN)
- but in this case, it's returned as it was 'unhashed'.
-*/
-
-void CTPinAuthPlugin::Identify(TIdentityId& aId, const TDesC& aClientMessage,
-							   HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	ASSERT(IsActive());
-	
-	// We are simulating user input by reading from a file
-	// (The data contained in this file has been freshly written by the 'client part in TestExecute')
-	
-	if(aClientMessage != *ClientMessage())
-		{
-		TRequestStatus* status  = &aRequest;
-		User::RequestComplete(status, KErrGeneral);
-		RDebug::Print(_L("Display String Mismatch !!! ABORTING WITH KERRGENERAL"));
-		return;	
-		}
-	else
-		{
-		RDebug::Print(_L("Display String at the plugin matches the string sent !! "));
-		}
-	aRequest = KRequestPending;
-		
-	TBuf8<32> userInput;
-	TRAPD(result1, IdReadUserInput(userInput));	//Get the data from the AuthSvrPolicy.ini file
-	if (KErrNone != result1)
-		{
-		aRequest = result1;
-		}
-	else
-		{
-		// No errors, carry on					
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		buf = HBufC::New(32);
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug1,"Identifying Userinput read from file = %S");    		
-		RDebug::Print(KMsgDebug1, buf);
-		delete buf;	//Memory cleanup. This string was only needed for the above Print function
-			
-		// Possibly, to allow for the cancellation or quitting, allow that to be the input string
-		_LIT8(KCancelText, "Cancel");	
-		_LIT8(KQuitText, "Quit");	
-		if (userInput == KCancelText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginCancelled);
-			//aResult will not be updated, as specified
-			}
-		else if (userInput == KQuitText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginQuit);
-			//aResult will not be updated, as specified
-			}
-		else
-			{
-			//compare with the known set of inputs and see if this is one of them.	
-			TInt result2 = CheckForStringPresence(aId, userInput, aRequest);
-			if (KErrNone == result2)	//The above function did not leave
-				{
-				//See if the string was found.
-				TInt length = userInput.Length();
-				
-				aResult = HBufC8::New(length);	
-				aResult->Des().Format(_L8("%S"), &userInput);
-				
-				RDebug::Printf("aResult has been updated. aResult = %S, userInput = %S", 
-									aResult, &userInput);
-				TRequestStatus* status  = &aRequest;
-				User::RequestComplete(status, result2);
-			
-				//Note: aRequest has been updated by the CheckForStringPresence function				
-				}
-			else if (KErrNotFound == result2)
-				{
-				RDebug::Printf("The data that the user input was not found (recognized)"
-								"Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}			
-			else
-				{
-				//Caters for file access errors etc
-				RDebug::Printf("Error occurred while checking for the presence of the string"
-								"in the list. Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}
-			}
-			//End of 'else' where the user did not cancel or quit the 'identify' process
-		}		
-	}
-	
-void CTPinAuthPlugin::Cancel()
-	{		
-	}
-
-void CTPinAuthPlugin::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	
-	//Accept user input and update the list of inputs along with IDs.
-	
-ASSERT(IsActive());
-	
-	aRequest = KRequestPending;
-	//TInt result = KErrNone;
-	
-	TBuf8<32> userInput;
-	TRAPD(result1, TrainReadUserInput(userInput));
-	if (KErrNone != result1)
-		{
-		_LIT(KMsgDebug2,"Training Userinput read Error: result = %d");    
-		RDebug::Print(KMsgDebug2, result1);
-		}
-	else
-		{
-		// No errors, carry on		
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		buf = HBufC::New(32);
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug3, "Training Userinput read from file = %S");
-		RDebug::Print(KMsgDebug3, buf);
-		delete buf;	//Memory cleanup. This string was only needed for the above Print function			
-		
-		// To allow for the cancellation or quitting, allow that to be the input string
-		TRequestStatus aRequest2 = KRequestPending;
-		_LIT8(KCancelText, "Cancel");
-		_LIT8(KQuitText, "Quit");
-		userInput.Trim();		
-		if (userInput.CompareF(KCancelText) == 0)
-			{ aRequest2 = KErrAuthServPluginCancelled; }		
-		else if (userInput.CompareF(KQuitText) == 0)
-			{ aRequest2 = KErrAuthServPluginQuit; }
-		else
-			{
-			//compare with the present set of inputs and see if this is one of them.
-			// update this list with this new user input, tagged to the aId
-			TRAPD(result2, CheckForNewStringPresenceL(aId, userInput, aRequest2));			
-			if (KErrNone != result2)
-				{
-				_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-				RDebug::Print(KMsgDebug4, result2);
-				}
-			else if(KErrNone == aRequest2.Int())
-				{
-				// No errors, update aResult.
-				// First allocate space for it since this variable will always be a 
-				// null pointer coming into this function
-				
-				aResult = HBufC8::New(userInput.Size());									
-				*aResult = userInput;
-				aRequest2 = KErrNone;
-				}			
-			else
-				{
-				_LIT(KMsgDebug5, "Error occurred during training. aRequest.Int() = %d");
-				RDebug::Print(KMsgDebug5, aRequest2.Int());
-				//aResult is not updated, nor is aId				
-				}
-			}
-		// Complete the asynchronous function
-		TRequestStatus* status  = &aRequest;
-		User::RequestComplete(status, aRequest2.Int());
-		}
-	}
-
-TBool CTPinAuthPlugin::IsActive () const
-	{
-	// There is never any user intervention required
-	//return true;
-	// As a future development note, this value may be read from a file (or a section in a file)
-	
-	ReloadActiveStateFromIniFile();
-	return iActiveState;
-	}
-	
-TInt CTPinAuthPlugin::Forget(TIdentityId aId)
-	{
-	// Open the list of userInputs that have been stored by this plugin
-	// Then find the one that corresponds to this id
-	// Then remove this string from the list and return the correct status value
-	
-	//Open the file
-	TRAPD(result3, FindStringAndRemoveL(aId));
-	return result3;
-			
-	}
-	
-TInt CTPinAuthPlugin::DefaultData(TIdentityId aId, HBufC8*& aOutputBuf)
-	{
-	
-	// This implementation of the PIN plugin does support default data.
-	// There will be cases where i don't want this available. Hence the addition of a 
-	// new class member iSupportsDefaultData
-	ReloadAllFromIniFile();
-	
-	TInt result = KErrNotSupported;
-	TRequestStatus aRequest2 = KRequestPending;
-	
-	if (iSupportsDefaultData)	//Class member initialised in the constructor
-		{
-		TBufC8<16> defaultBuf(KDefaultData);
-		//compare with the present set of inputs and see if this is one of them.
-		// update this list with this new user input, tagged to the aId
-		TRAPD(result2, CheckForNewStringPresenceL(aId, defaultBuf, aRequest2));			
-		if (KErrNone != result2)
-			{
-			_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-			RDebug::Print(KMsgDebug4, result2);
-			}
-		else if(KErrNone == aRequest2.Int())
-			{
-			// No errors, update aOutputBuf.
-			// First allocate space for it since this variable will always be a 
-			// null pointer coming into this function				
-			
-			TRAPD(resAlloc, (aOutputBuf = HBufC8::NewL(KDefaultData().Size())) );
-			if (KErrNone != resAlloc)
-				{
-				_LIT(KMsgAllocFailed2,"Failed to allocate memory for updating aOutputBuf");
-				RDebug::Print(KMsgAllocFailed2);
-				result = resAlloc;
-				}
-			else
-				{
-				*aOutputBuf = KDefaultData;
-				result = KErrNone;				
-				}
-			}			
-		else
-			{
-			_LIT(KMsgDebug5, "Error occurred during training. aRequest2.Int() = %d");
-			RDebug::Print(KMsgDebug5, aRequest2.Int());
-			//aOutputBuf is not updated, nor is aId				
-			}
-		}
-		
-	return result;	
-	}
-
-TInt CTPinAuthPlugin::Reset(TIdentityId/* aId*/, const TDesC&/* aRegistrationData*/, HBufC8*&/* aResult*/)
-	{
-	return KErrNotSupported;
-	}
-
-//--------------------------------------------------------------------------------
-
-/**
- Utility method to capture the data that the user has input 
- (in the form of data stored in a file)
-*/
-TInt CTPinAuthPlugin::IdReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("IdEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. IdEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Later,include a check to ensure that only digits were entered
-			aInputValue.Copy(result);
-			aInputValue.Trim();			
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-TInt CTPinAuthPlugin::TrainReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("TrainEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. TrainEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-   			aInputValue.Copy(result);
-			aInputValue.Trim();
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Called by Identify()
- @return - success or failure value
-*/
-TInt CTPinAuthPlugin::CheckForStringPresence(TIdentityId& aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{
-
-	TInt retValue = KErrNone;	
-	// First format the aInputValue string so that it starts with a ':' and ends with a ','.
-	_LIT8(KFormatValue2, ":%S,");
-	TBuf8<32> aInputValue2;
-	aInputValue2.Format(KFormatValue2, &aInputValue);
-
-	//Convert the 8-bit string to a 16-bit string for printing in RDebug
-	HBufC* buf = 0;
-	buf = HBufC::New(32);
-	buf->Des().Copy(aInputValue);		
-	RDebug::Print(_L("Formatted string: %S"), buf);
-	delete buf;	//Memory cleanup. This string was only needed for the above Print function
-
-	TBuf8<500> pinFileContents1, pinFileContents2;
-	// Read the contents of the file that contains all the ID/PIN combinations
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("Identity&PinValues"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the Identity&PinValues key in the file %S."), &iFileToRead);
-			retValue = KErrNotFound;
-			aRequestValue =KErrNotFound;
-			}
-		else
-			{
-			pinFileContents1.Copy(result);	
-			
-			TInt searchResult;
-			searchResult = pinFileContents1.Find(aInputValue2);
-			
-			if (KErrNotFound == searchResult)
-				{
-				RDebug::Print(_L("Userinput not found in the pinFile %S. Identification error"), &iFileToRead);
-				aRequestValue= KErrAuthServIdentityNotFound;
-				retValue  = searchResult;
-				}
-			else if (searchResult)	// a positive value
-				{				
-				// Now find the userID by searching back through the string for the "," marker				
-				pinFileContents2 = pinFileContents1.Left(searchResult);
-				TInt userIdStartPos = pinFileContents2.LocateReverse(',');
-								 
-				//Extract this userId for use by the calling function
-				TBuf8<50> p1 = pinFileContents2.Right(searchResult - userIdStartPos - 1);
-				TLex8 input (p1);
-				TRadix aRadix = EDecimal;
-				input.Val(aId, aRadix);
-				RDebug::Print(_L("UserId that is stored = %u"), aId);
-				aRequestValue = KErrNone;
-				retValue = KErrNone;
-				}				
-			else
-				{
-				RDebug::Print(_L("Unexpected error in the 'Find' function. Searchresult = %d"), searchResult);
-				aRequestValue = searchResult;
-				retValue = searchResult;				
-				}//End check for key&section search in file				
-			}//End check for safe file access
-		delete file;
-		}
-	
-	return retValue;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Used to find out if the input is unique. 
- -since KIdAmbiguous is no longer used, KIdCancel will be returned if the input is non-unique
- Called by Train() and DefaultData()
-*/
-TInt CTPinAuthPlugin::CheckForNewStringPresenceL(TIdentityId aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{	
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrNone;
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-		
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		return r;
-		}	
-	
-	// Look for a key under a named section, retrieve text value	
-	TPtrC result;		
-	TBool ret=EFalse;	//return value from FindVar functions
-	aRequestValue = KErrAuthServIdentityNotFound;	//Initialisation		
-			
-	ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-	if(!ret)
-		{
-		RDebug::Print(_L("Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-		delete file;
-		return KErrNotFound;			
-		}
-	
-	//Copy the data from the named section in the file, and see if any previous user has used this input string
-	pinFileContents.Copy(result);			
-	
-	TInt searchResultPin;
-	TBuf8<50> searchStringPin;
-	_LIT8(KFormat3, ":%S,");
-	searchStringPin.Format(KFormat3, &aInputValue);
-	searchResultPin = pinFileContents.Find(searchStringPin);
-				
-	if (KErrNotFound == searchResultPin)
-		{				
-		//check that the identity is unique, if so, update the Db 
-		// with the new Id-PIN pair, as is done already
-		// else update the PIN only, ie training data for that identity
-		TInt searchResultId;
-		TBuf8<50> searchStringId;
-		_LIT8(KFormat4, ",%u:");
-		searchStringId.Format(KFormat4, aId);
-		
-		searchResultId = pinFileContents.Find(searchStringId);
-		
-		TDriveUnit sysDrive (RFs::GetSystemDrive());
-		TBuf<80> policyFile;
-		if (KErrNotFound == searchResultId)
-			{									
-			// Add this entry to the file
-			// This is a simple system, expecting a format as below:
-			// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-			
-			_LIT8(KFormat2, "%S%u:%S,");
-			if (pinFileContents.Size() == 0)
-				{
-				pinFileContents.Append(',');	//Initialisation
-				}
-			pinFileContents2.Format(KFormat2, &pinFileContents, aId, &aInputValue);				
-										
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			buf = HBufC::NewL(pinFileContents2.Length());
-			buf->Des().Copy(pinFileContents2);												
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-						
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone == ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			
-			}
-
-		else
-			{
-			//The Identity has already been trained with this plugin, 
-			// update the PIN (training data)
-			
-			//extract the string to the right of the end of the aId
-			pinFileContents2 = pinFileContents.Mid(searchResultId + searchStringId.Size());
-			
-			//Find the end of the PIN (Training data)
-			_LIT8(KPinEndMarker, ",");
-			TBufC8<5> bufPinEndMarker(KPinEndMarker);					
-			TInt pinEndPos = pinFileContents2.Find(bufPinEndMarker);
-			
-			//Replace this with the new PIN
-			pinFileContents.Replace((searchResultId + searchStringId.Size()),
-									 pinEndPos, aInputValue);	
-			
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			buf = HBufC::NewL(pinFileContents.Length());
-			buf->Des().Copy(pinFileContents);
-								
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone ==ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			}
-		delete file;
-		return ret;
-		}
-	if (searchResultPin)	// a positive value
-		{
-		// A user has already tried to train this plugin using the given data.
-		// The pinFileContents are not updated, to avoid duplication
-		
-		aRequestValue = KErrAuthServPluginCancelled;
-		delete file;
-		return searchResultPin;
-		}	
-	
-	RDebug::Print(_L("Unexpected error in the 'Find' function. SearchresultPin = %d"), searchResultPin);
-	retValue = searchResultPin;
-
-	delete file;
-		
-	return retValue;
-	}
-
-	
-/**
- Utility function to remove the training data that is associated with a given Id
- Called by the Forget function
- @return - KIdSuccess, KIdUnknown or some error code  
- */ 
-TInt CTPinAuthPlugin::FindStringAndRemoveL (TIdentityId aId)
-	{
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrAuthServNoSuchIdentity;		//init
-	CIniData* file=NULL;
-	//First read the list of userId and PIN combinations from a file
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-				
-		ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Config error: Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			pinFileContents.Copy(result);				
-			
-			//Format the searchstring as defined in the file so that it starts with a ',' and ends with a ':'.
-			_LIT8(KFormatValue3, ",%u:");			
-			
-			TBuf8<32> searchString;
-			searchString.Format(KFormatValue3, aId);
-
-			//For the purpose of printing the data to a file, i'll create a 16-bit version of pinFileContents
-			HBufC* buf = 0;
-			buf = HBufC::NewL(searchString.Length());
-			buf->Des().Copy(searchString);
-			RDebug::Print(_L("Formatted searchString used in 'FindStringAndRemove(): %S"), buf);
-			delete buf;
-
-			TInt userIdStartPos;	//The offset of the searchString within pinFileContents
-									//i.e the position of the '.' just before the identityId
-			userIdStartPos = pinFileContents.Find(searchString);
-			if (KErrNotFound == userIdStartPos)
-				{
-				RDebug::Print(_L("FindStringAndRemoveL: The specified ID was not found in the pinFile"));
-				retValue = KErrAuthServNoSuchIdentity;	//KIdUnknown;
-				}
-			else
-				{
-				
-				//Find where the string (including PIN) ends
-				TLex8 aLex = TLex8(pinFileContents);
-				TInt length(0);
-				aLex.Inc(userIdStartPos+1);
-				while(aLex.Peek() != ',') 
-					{
-					aLex.Inc();
-					length++;
-					}
-								
-				//remove the found (total) string from the list (including the starting ',')
-				pinFileContents.Delete(userIdStartPos,length+1);
-				
-				//Update the file
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf;
-				buf = HBufC::NewL(pinFileContents.Length());	
-				buf->Des().Copy(pinFileContents);
-								
-				ret2 = file->SetValue(KPluginIniSection, KPinDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-				TDriveUnit sysDrive (RFs::GetSystemDrive());
-				TBuf<2> sysDriveName (sysDrive.Name());
-				TBuf<84> policyFile;
-								
-				if (KErrNone != r)
-					{
-					policyFile.Copy(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					policyFile .Copy(sysDriveName);
-					policyFile.Append(KAuthSvrPolicyFile);
-					RDebug::Print(_L("Error occurred in WriteToFileL(). Error = %d. Filename= %S"), ret2, &policyFile);
-					retValue = ret2;
-					}
-				else
-					{
-					retValue = KErrNone;		
-					}				
-				}			
-			}//End check for key&section search in file
-		delete file;
-		}//End check for safe file access
-	
-	return retValue;
-	}
-
-
-/**
- Utility function to Update the Global Db with the training data 
- that is associated with a given Id. The update will not happen if 
- the identity is already present in this list, i.e. it's been pu in 
- by another plugin
- Called by the CheckForNewStringPresence function
- @return - KErrNone, or some error code
-*/
-TInt CTPinAuthPlugin::AddToGlobalDb (TIdentityId aId, TBuf8<32> aInputValue)
-	{
-	
-	TBuf8<500> totalDbFileContents, totalDbFileContents2;
-	TInt retValue = KErrNone;
-	CIniData* file=NULL;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> authSvrPolicyFile(sysDriveName);
-	authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-	
-	TRAPD(r,file=CIniData::NewL(authSvrPolicyFile));	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &authSvrPolicyFile);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions		
-				
-		ret=file->FindVar(KPluginIniSection, KTotalDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the %S key in the file %S."), &KTotalDbTag, &authSvrPolicyFile);
-			retValue = KErrNotFound;		
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			totalDbFileContents.Copy(result);
-			TBuf8<20> aidString;
-			aidString.Num(aId, EDecimal);			
-			TInt searchResult;			
-			searchResult = totalDbFileContents.Find(aidString);
-			
-			if (KErrNotFound == searchResult)
-				{
-				// Add this entry to the file
-				// This is a simple system, expecting a format as below:
-				// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-				_LIT8(KFormat2, "%S%u:%S,");
-				if (totalDbFileContents.Size() == 0)
-					{					
-					totalDbFileContents.Append(',');	//Initialisation
-					}
-				totalDbFileContents2.Format(KFormat2, &totalDbFileContents, aId, &aInputValue);				
-					
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf = 0;
-				buf = HBufC::New(totalDbFileContents2.Length());
-				buf->Des().Copy(totalDbFileContents2);								
-				ret2 = file->SetValue(KPluginIniSection, KTotalDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-									
-				if (KErrNone != r)
-					{
-					TBuf<80> policyFile(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					RDebug::Print(_L("Error occurred in SetValue(). Error = %d. Filename= %S"), ret2, &authSvrPolicyFile);
-					retValue = ret2;
-					}
-				}
-			else
-				{
-				// A user has already tried to train this plugin using the given data.
-				// The pinFileContents are not updated, to avoid duplication				
-				retValue = KErrNone;													
-				}//End aidString search in the totalDbFileContents string (Find())
-			}//End check for key&section search in file (FindVar())
-			delete file;
-		}//End check for safe file access
-	return retValue;
-	}
-const HBufC* CTPinAuthPlugin::ClientMessage()
-	{
-	return iClientMessage;
-	}
-
-const TPtrC& CTPinAuthPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CTPinAuthPlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CTPinAuthPlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CTPinAuthPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CTPinAuthPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CTPinAuthPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/AuthSvrPolicy.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-EnteredPinValue = 0011
-DefaultPlugin = PIN
-LastAuthId = 0
-AllUserID&PinValues = ,597430:0011,82383:5555,0873948:2533,
-DisplayMessage = 
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin10234100Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113100Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113101Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113102Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113103Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/Pin11113104Db.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#EnteredPinValue 	- String that contains the PIN that the user has entered after being prompted
-#DefaultPlugin		- String used to define which plugin is the default plugin
-#AllUserID&PinValues	- string that contains the list of the userId and Pin 'pairs'. 
-#			  The format is ,UserId:Pin,
-#			  An empty one has just a comma
-
-
-[SectionOne]
-#EnteredPinValue = 5312
-TrainEnteredPinValue = 5000
-IdEnteredPinValue = 5000
-iSupportsDefaultData = true
-activeState = true
-DefaultPlugin = PIN
-Identity&PinValues = ,
-
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
-# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file# end of file
Binary file authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep1.txt has changed
Binary file authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep2.txt has changed
Binary file authenticationservices/authenticationserver/test/tAuthSvr/testdata/cenrep3.txt has changed
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/initialisation_Info.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-[SectionOne]
-iSupportsDefaultData = true
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/pin_Contents.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-[SectionOne]
-AllUserID&PinValues = ,597430:0011,82383:5555,0873948:2533,
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tAuthSvr/testdata/pin_Input.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-[SectionOne]
-EnteredPinValue = 5312
\ No newline at end of file
Binary file authenticationservices/authenticationserver/test/tAuthSvr/testdata/unicode.txt has changed
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/main.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32base.h>
-
-/** DLL Entry point */
-
-TBool E32Dll()
-	{
-	return (ETrue);
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/proxy.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include <e32std.h>
-#include <ecom/implementationproxy.h>	// ECOM header file
-
-#include "tpostmarketramplugin.h"			// Class definition for one of the dummy implementations
-
-
-// Map the interface UIDs to implementation factory functions
-const TImplementationProxy ImplementationTable[] = 
-	{
-	IMPLEMENTATION_PROXY_ENTRY(0x10234100,	CTPostMarketRAMPlugin10234100::NewL),
-	};
-
-// Exported proxy function to resolve intstantiation methods for an ECOM plugin dll
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return ImplementationTable;
-	}
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/1023F3F4.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Dummy registry file for tpostmarketramplugin implementation.
-* UIDs quick-ref
-* ECOM DLL UID:			0x1023F3F4 
-* ECOM interface UID:		0x102740FE 
-* ECOM Implementation:		0x10234100
-*
-*/
-
-
-#include <ecom/registryinfov2.rh>
-
-RESOURCE REGISTRY_INFO r_registry
-{
-	dll_uid = 0x1023F3F4;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-	interfaces =
-	{
-		INTERFACE_INFO
-		{ 
-		interface_uid = 0x102740FE;	// Const for all data recognisers
-		implementations = 
-			{
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10234100;
-				version_no = 1;
-				display_name = "PostMarketTestRAMPlugin";
-				default_data = "10234100";
-				opaque_data = "";
-				rom_only=0;
-				}
-			};
-		}
-	};
-}
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/buildpostmarketplugintestdata.fil	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-MAKEDATA :
-!IF "$(PLATFORM)" == "GCCXML" || "$(PLATFORM)" == "TOOLS" || "$(PLATFORM)" == "TOOLS2"
-	cd
-	echo ----------------
-	echo  Do nothing ...
-	echo ----------------
-!ELSE
-	cd
-	echo ---------------------------------------------------------------------
-	echo Copy test upgrade dlls and rsc files to c:\tauth\tpostmarketplugins\
-	echo ---------------------------------------------------------------------
-	
-	if not exist %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins mkdir %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins
-	copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\tauthpluginupgrade.dll %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tauthpluginupgrade.dll
-	copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\testpluginsupgrade.dll %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\testpluginsupgrade.dll
-	copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\tpostmarketramplugin.dll %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tpostmarketramplugin.dll
-
-	del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\tauthpluginupgrade.dll
-	del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\testpluginsupgrade.dll
-	del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\tpostmarketramplugin.dll
-
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tauthpluginupgrade.rsc copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tauthpluginupgrade.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tauthpluginupgrade.rsc
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\testpluginsupgrade.rsc copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\testpluginsupgrade.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\testpluginsupgrade.rsc
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tpostmarketramplugin.rsc copy %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tpostmarketramplugin.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tpostmarketramplugin.rsc
-
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\testpluginsupgrade.rsc copy /y %EPOCROOT%epoc32\data\z\resource\plugins\testpluginsupgrade.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\testpluginsupgrade.rsc
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\tauthpluginupgrade.rsc copy /y %EPOCROOT%epoc32\data\z\resource\plugins\tauthpluginupgrade.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tauthpluginupgrade.rsc
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\tpostmarketramplugin.rsc copy /y %EPOCROOT%epoc32\data\z\resource\plugins\tpostmarketramplugin.rsc %EPOCROOT%epoc32\winscw\c\tauth\tpostmarketplugins\tpostmarketramplugin.rsc
-
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\testpluginsupgrade.rsc del %EPOCROOT%epoc32\data\z\resource\plugins\testpluginsupgrade.rsc
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\tauthpluginupgrade.rsc  del %EPOCROOT%epoc32\data\z\resource\plugins\tauthpluginupgrade.rsc 
-	if exist %EPOCROOT%epoc32\data\z\resource\plugins\tpostmarketramplugin.rsc del %EPOCROOT%epoc32\data\z\resource\plugins\tpostmarketramplugin.rsc
-
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tauthpluginupgrade.rsc del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tauthpluginupgrade.rsc
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\testpluginsupgrade.rsc del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\testpluginsupgrade.rsc
-	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tpostmarketramplugin.rsc del %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\resource\plugins\tpostmarketramplugin.rsc
-
-!ENDIF
-
-DO_NOTHING:
-	rem do nothing
-
-#
-# The targets invoked by abld...
-#
-
-MAKMAKE : DO_NOTHING
-FREEZE : DO_NOTHING
-LIB : DO_NOTHING
-RESOURCE : DO_NOTHING
-CLEANLIB : DO_NOTHING
-BLD : DO_NOTHING
-RELEASABLES : DO_NOTHING
-
-SAVESPACE : BLD
-
-FINAL : MAKEDATA
-
-CLEAN : 
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_enablepostmarketplugin.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-PlatSecDiagnostics ON
-PlatSecEnforcement ON 
-PlatSecProcessIsolation ON 
-PlatSecEnforceSysBin ON
-
-_epoc_drive_d \epoc32\drive_d
-
-KEnablePostMarketAuthenticationPlugins 0x01
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatanegative.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-PlatSecDiagnostics ON
-PlatSecEnforcement ON 
-PlatSecProcessIsolation ON 
-PlatSecEnforceSysBin ON
-
-_epoc_drive_d \epoc32\drive_d
-
-KEnablePostMarketAuthenticationPlugins -1
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/testdata/epoc_patchdatapositive.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-PlatSecDiagnostics ON
-PlatSecEnforcement ON 
-PlatSecProcessIsolation ON 
-PlatSecEnforceSysBin ON
-
-_epoc_drive_d \epoc32\drive_d
-
-KEnablePostMarketAuthenticationPlugins 0x0A
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/tpostmarketramplugin.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1076 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* dummy plugin to test post market plugin support.
-*
-*/
-
-
-#include <f32file.h>
-
-#include "tpostmarketramplugin.h"
-#include <e32svr.h>
-
-#ifndef __INIPARSER_H__
-	#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-	
-//Implement CAuthPluginInterface definitions
-CTPostMarketRAMPlugin::~CTPostMarketRAMPlugin()
-	{
-	delete iClientMessage;
-	}
-
-CTPostMarketRAMPlugin::CTPostMarketRAMPlugin()
-	{	
-	// See ConstructL() for initialisation completion.
-	}
-		
-/**
- Safely complete the initialization of the constructed object	
-*/
-void CTPostMarketRAMPlugin::ConstructL()
-	{
-	iName.Set(KPluginNamePin);
-	iDescription.Set(KPluginDescriptionPin);
-	iMinEntropy = KEntropyPin;
-	iFalsePositiveRate = KFalsePosPin;
-  	iFalseNegativeRate = KFalseNegPin;
-  	iClientMessage = HBufC::NewL(2048);
-	ReloadAllFromIniFile();
-	}
-	
-/**
-  Sets information like iActiveState and iSupportsDefaultData from 
-  the TEF ini file to the individual plugin database files
-*/	
-void CTPostMarketRAMPlugin::ReloadAllFromIniFile()
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");					
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret;	//return value from FindVar functions
-		ret=file->FindVar(_L("SectionOne"),_L("iSupportsDefaultData"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iSupportsDefaultData default value used."));
-			iSupportsDefaultData = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			iSupportsDefaultData = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}		
-				
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;			
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			
-			// If the string 'false' was not found, we set the value to 'true' -the default value
-			iActiveState = (resultLowerCase.FindF(KFalse) == KErrNotFound);
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = iSupportsDefaultData,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		
-		delete file;
-		TRAP(r,file=CIniData::NewL(KAuthSvrPolicyFile));
-		TPtrC displayMessage;
-		ret=file->FindVar(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-		if(displayMessage.Length() == 0)   //Value = 0
-			{
-			RDebug::Print(_L("DisplayMessage not passed."));
-			iClientMessage = iClientMessage->ReAllocL(0);	// Default value
-			TPtr ptr(iClientMessage->Des());
-			ptr = KNullDesC();
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		else
-			{
-			iClientMessage = iClientMessage->ReAllocL(displayMessage.Length());
-			TPtr ptr(iClientMessage->Des());
-			ptr = displayMessage;
-			ret=file->SetValue(_L("SectionOne"),_L("DisplayMessage"),displayMessage);
-			TRAP(r,file->WriteToFileL());
-			}
-		delete file;
-		}
-			
-	}
-
-void CTPostMarketRAMPlugin::ReloadActiveStateFromIniFile() const
-	{
-	// Set the file to be read, based on the Id of the plugin
-	
-	_LIT(KFileText, "\\tAuth\\tAuthSvr\\testdata\\Pin");
-	_LIT(KFileSuffix, "Db.ini");
-	
-	_LIT(KFormatFileName,"%S%x%S");
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> fileText(sysDrive.Name());
-	fileText.Append(KFileText);
-	iFileToRead.Format(KFormatFileName,&fileText, Id(), &KFileSuffix);
-
-	//Read data from file to get initialisation information
-	
-	// Open and read in INI file
-	// Default path to look for INI file is in 'c:\system\data' 
-	// on target filesystem
-	
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	
-	//Put file on the cleanupstack if anything else in this function is going to leave, but nothing does.	
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-
-		// Set the active state of the plugin depending on the contents of the 
-		// corresponding file, which has been set as a member variable
-		ret =file->FindVar(_L("SectionOne"),_L("activeState"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Key or section not found. iActiveState default value of ETRUE used."));			
-			iActiveState = ETrue;	// Default value
-			}
-		else
-			{
-			_LIT(KFalse,"false");
-			// Create a lower case copy of the data that is read from the file
-			TBuf<10> resultLowerCase;
-			resultLowerCase.Copy(result);
-			resultLowerCase.LowerCase();
-			if (resultLowerCase.FindF(KFalse) == KErrNotFound) 
-				iActiveState = ETrue;	// The string 'false' was not found, so we set the value to 'true' -the default value
-			else
-				iActiveState = EFalse;
-			}
-		TRAPD(r,file->WriteToFileL());
-		
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file."));
-			TBuf<84> initInfoFile(sysDrive.Name());
-			initInfoFile.Append(KInitInfoFile);
-			RDebug::Print(_L("Filename = %S, KeyName = activeState,"), &initInfoFile);
-			RDebug::Print(_L("value = %S."), &result);
-			}
-		delete file;
-		}
-	}
-
-
-	
-//Implement CAuthPluginInterface definitions
-
-/**
- Normally, this would ask the user to input a 4-digit pin and then compare it to 
- the values that this plugin has been trained with. The result should be the 
- user that this PIN corresponds to.
- 'aResult' should be the 'hash' of the stored PIN (which corresponds to the freshly entered PIN)
- but in this case, it's returned as it was 'unhashed'.
-*/
-
-void CTPostMarketRAMPlugin::Identify(TIdentityId& aId, const TDesC& aClientMessage,
-							   HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	ASSERT(IsActive());
-	
-	// We are simulating user input by reading from a file
-	// (The data contained in this file has been freshly written by the 'client part in TestExecute')
-	
-	if(aClientMessage != *ClientMessage())
-		{
-		TRequestStatus* status  = &aRequest;
-		User::RequestComplete(status, KErrGeneral);
-		RDebug::Print(_L("Display String Mismatch !!! ABORTING WITH KERRGENERAL"));
-		return;	
-		}
-	else
-		{
-		RDebug::Print(_L("Display String at the plugin matches the string sent !! "));
-		}
-	aRequest = KRequestPending;
-		
-	TBuf8<32> userInput;
-	TRAPD(result1, IdReadUserInput(userInput));	//Get the data from the AuthSvrPolicy.ini file
-	if (KErrNone != result1)
-		{
-		aRequest = result1;
-		}
-	else
-		{
-		// No errors, carry on					
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		buf = HBufC::New(32);
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug1,"Identifying Userinput read from file = %S");    		
-		RDebug::Print(KMsgDebug1, buf);
-		delete buf;	//Memory cleanup. This string was only needed for the above Print function
-			
-		// Possibly, to allow for the cancellation or quitting, allow that to be the input string
-		_LIT8(KCancelText, "Cancel");	
-		_LIT8(KQuitText, "Quit");	
-		if (userInput == KCancelText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginCancelled);
-			//aResult will not be updated, as specified
-			}
-		else if (userInput == KQuitText)
-			{
-			TRequestStatus* status  = &aRequest;
-			User::RequestComplete(status, KErrAuthServPluginQuit);
-			//aResult will not be updated, as specified
-			}
-		else
-			{
-			//compare with the known set of inputs and see if this is one of them.	
-			TInt result2 = CheckForStringPresence(aId, userInput, aRequest);
-			if (KErrNone == result2)	//The above function did not leave
-				{
-				//See if the string was found.
-				TInt length = userInput.Length();
-				
-				aResult = HBufC8::New(length);	
-				aResult->Des().Format(_L8("%S"), &userInput);
-				
-				RDebug::Printf("aResult has been updated. aResult = %S, userInput = %S", 
-									aResult, &userInput);
-				TRequestStatus* status  = &aRequest;
-				User::RequestComplete(status, result2);
-			
-				//Note: aRequest has been updated by the CheckForStringPresence function				
-				}
-			else if (KErrNotFound == result2)
-				{
-				RDebug::Printf("The data that the user input was not found (recognized)"
-								"Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}			
-			else
-				{
-				//Caters for file access errors etc
-				RDebug::Printf("Error occurred while checking for the presence of the string"
-								"in the list. Error = %d", result2);
-				
-				TRequestStatus* status  = &aRequest;
-				aId = KUnknownIdentity;
-				User::RequestComplete(status, KErrNone);
-				}
-			}
-			//End of 'else' where the user did not cancel or quit the 'identify' process
-		}		
-	}
-	
-void CTPostMarketRAMPlugin::Cancel()
-	{		
-	}
-
-void CTPostMarketRAMPlugin::Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest)
-	{
-	
-	//Accept user input and update the list of inputs along with IDs.
-	
-ASSERT(IsActive());
-	
-	aRequest = KRequestPending;
-	//TInt result = KErrNone;
-	
-	TBuf8<32> userInput;
-	TRAPD(result1, TrainReadUserInput(userInput));
-	if (KErrNone != result1)
-		{
-		_LIT(KMsgDebug2,"Training Userinput read Error: result = %d");    
-		RDebug::Print(KMsgDebug2, result1);
-		}
-	else
-		{
-		// No errors, carry on		
-		//Convert the 8-bit string to a 16-bit string for printing in RDebug
-		HBufC* buf = 0;
-		buf = HBufC::New(32);
-		buf->Des().Copy(userInput);
-		_LIT(KMsgDebug3, "Training Userinput read from file = %S");
-		RDebug::Print(KMsgDebug3, buf);
-		delete buf;	//Memory cleanup. This string was only needed for the above Print function			
-		
-		// To allow for the cancellation or quitting, allow that to be the input string
-		TRequestStatus aRequest2 = KRequestPending;
-		_LIT8(KCancelText, "Cancel");
-		_LIT8(KQuitText, "Quit");
-		userInput.Trim();		
-		if (userInput.CompareF(KCancelText) == 0)
-			{ aRequest2 = KErrAuthServPluginCancelled; }		
-		else if (userInput.CompareF(KQuitText) == 0)
-			{ aRequest2 = KErrAuthServPluginQuit; }
-		else
-			{
-			//compare with the present set of inputs and see if this is one of them.
-			// update this list with this new user input, tagged to the aId
-			TRAPD(result2, CheckForNewStringPresenceL(aId, userInput, aRequest2));			
-			if (KErrNone != result2)
-				{
-				_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-				RDebug::Print(KMsgDebug4, result2);
-				}
-			else if(KErrNone == aRequest2.Int())
-				{
-				// No errors, update aResult.
-				// First allocate space for it since this variable will always be a 
-				// null pointer coming into this function
-				
-				aResult = HBufC8::New(userInput.Size());									
-				*aResult = userInput;
-				aRequest2 = KErrNone;
-				}			
-			else
-				{
-				_LIT(KMsgDebug5, "Error occurred during training. aRequest.Int() = %d");
-				RDebug::Print(KMsgDebug5, aRequest2.Int());
-				//aResult is not updated, nor is aId				
-				}
-			}
-		// Complete the asynchronous function
-		TRequestStatus* status  = &aRequest;
-		User::RequestComplete(status, aRequest2.Int());
-		}
-	}
-
-TBool CTPostMarketRAMPlugin::IsActive () const
-	{
-	// There is never any user intervention required
-	//return true;
-	// As a future development note, this value may be read from a file (or a section in a file)
-	
-	ReloadActiveStateFromIniFile();
-	return iActiveState;
-	}
-	
-TInt CTPostMarketRAMPlugin::Forget(TIdentityId aId)
-	{
-	// Open the list of userInputs that have been stored by this plugin
-	// Then find the one that corresponds to this id
-	// Then remove this string from the list and return the correct status value
-	
-	//Open the file
-	TRAPD(result3, FindStringAndRemoveL(aId));
-	return result3;
-			
-	}
-	
-TInt CTPostMarketRAMPlugin::DefaultData(TIdentityId aId, HBufC8*& aOutputBuf)
-	{
-	
-	// This implementation of the PIN plugin does support default data.
-	// There will be cases where i don't want this available. Hence the addition of a 
-	// new class member iSupportsDefaultData
-	ReloadAllFromIniFile();
-	
-	TInt result = KErrNotSupported;
-	TRequestStatus aRequest2 = KRequestPending;
-	
-	if (iSupportsDefaultData)	//Class member initialised in the constructor
-		{
-		TBufC8<16> defaultBuf(KDefaultData);
-		//compare with the present set of inputs and see if this is one of them.
-		// update this list with this new user input, tagged to the aId
-		TRAPD(result2, CheckForNewStringPresenceL(aId, defaultBuf, aRequest2));			
-		if (KErrNone != result2)
-			{
-			_LIT(KMsgDebug4, "Training Userinput read Error: results = %d");    
-			RDebug::Print(KMsgDebug4, result2);
-			}
-		else if(KErrNone == aRequest2.Int())
-			{
-			// No errors, update aOutputBuf.
-			// First allocate space for it since this variable will always be a 
-			// null pointer coming into this function				
-			
-			TRAPD(resAlloc, (aOutputBuf = HBufC8::NewL(KDefaultData().Size())) );
-			if (KErrNone != resAlloc)
-				{
-				_LIT(KMsgAllocFailed2,"Failed to allocate memory for updating aOutputBuf");
-				RDebug::Print(KMsgAllocFailed2);
-				result = resAlloc;
-				}
-			else
-				{
-				*aOutputBuf = KDefaultData;
-				result = KErrNone;				
-				}
-			}			
-		else
-			{
-			_LIT(KMsgDebug5, "Error occurred during training. aRequest2.Int() = %d");
-			RDebug::Print(KMsgDebug5, aRequest2.Int());
-			//aOutputBuf is not updated, nor is aId				
-			}
-		}
-		
-	return result;	
-	}
-//--------------------------------------------------------------------------------
-
-/**
- Utility method to capture the data that the user has input 
- (in the form of data stored in a file)
-*/
-TInt CTPostMarketRAMPlugin::IdReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("IdEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. IdEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Later,include a check to ensure that only digits were entered
-			aInputValue.Copy(result);
-			aInputValue.Trim();			
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-TInt CTPostMarketRAMPlugin::TrainReadUserInput(TBuf8<32>& aInputValue)
-	{
-
-	TInt retValue;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("TrainEnteredPinValue"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the key in the file %S. TrainEnteredPinValue is not known, 9999 used. Error = %d"), &iFileToRead, ret);
-			_LIT8(KEnteredPinValueErr, "9999");
-			aInputValue = KEnteredPinValueErr;	// Default value
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-   			aInputValue.Copy(result);
-			aInputValue.Trim();
-			retValue = KErrNone;	//Not necessary
-			}
-		delete file;	//memory cleanup
-		}
-	
-	return retValue;
-	}
-
-TInt CTPostMarketRAMPlugin::Reset(TIdentityId/* aId*/, const TDesC&/* aRegistrationData*/, HBufC8*&/* aResult*/)
-	{
-	return KErrNotSupported;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Called by Identify()
- @return - success or failure value
-*/
-TInt CTPostMarketRAMPlugin::CheckForStringPresence(TIdentityId& aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{
-
-	TInt retValue = KErrNone;	
-	// First format the aInputValue string so that it starts with a ':' and ends with a ','.
-	_LIT8(KFormatValue2, ":%S,");
-	TBuf8<32> aInputValue2;
-	aInputValue2.Format(KFormatValue2, &aInputValue);
-
-	//Convert the 8-bit string to a 16-bit string for printing in RDebug
-	HBufC* buf = 0;
-	buf = HBufC::New(32);
-	buf->Des().Copy(aInputValue);		
-	RDebug::Print(_L("Formatted string: %S"), buf);
-	delete buf;	//Memory cleanup. This string was only needed for the above Print function
-
-	TBuf8<500> pinFileContents1, pinFileContents2;
-	// Read the contents of the file that contains all the ID/PIN combinations
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-		
-		ret=file->FindVar(_L("SectionOne"),_L("Identity&PinValues"),result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the Identity&PinValues key in the file %S."), &iFileToRead);
-			retValue = KErrNotFound;
-			aRequestValue =KErrNotFound;
-			}
-		else
-			{
-			pinFileContents1.Copy(result);	
-			
-			TInt searchResult;
-			searchResult = pinFileContents1.Find(aInputValue2);
-			
-			if (KErrNotFound == searchResult)
-				{
-				RDebug::Print(_L("Userinput not found in the pinFile %S. Identification error"), &iFileToRead);
-				aRequestValue= KErrAuthServIdentityNotFound;
-				retValue  = searchResult;
-				}
-			else if (searchResult)	// a positive value
-				{				
-				// Now find the userID by searching back through the string for the "," marker				
-				pinFileContents2 = pinFileContents1.Left(searchResult);
-				TInt userIdStartPos = pinFileContents2.LocateReverse(',');
-								 
-				//Extract this userId for use by the calling function
-				TBuf8<50> p1 = pinFileContents2.Right(searchResult - userIdStartPos - 1);
-				TLex8 input (p1);
-				TRadix aRadix = EDecimal;
-				input.Val(aId, aRadix);
-				RDebug::Print(_L("UserId that is stored = %u"), aId);
-				aRequestValue = KErrNone;
-				retValue = KErrNone;
-				}				
-			else
-				{
-				RDebug::Print(_L("Unexpected error in the 'Find' function. Searchresult = %d"), searchResult);
-				aRequestValue = searchResult;
-				retValue = searchResult;				
-				}//End check for key&section search in file				
-			}//End check for safe file access
-		delete file;
-		}
-	
-	return retValue;
-	}
-
-/**
- Utility method to compare the data that the user has input 
- with all the data that has been stored for users 
- Used to find out if the input is unique. 
- -since KIdAmbiguous is no longer used, KIdCancel will be returned if the input is non-unique
- Called by Train() and DefaultData()
-*/
-TInt CTPostMarketRAMPlugin::CheckForNewStringPresenceL(TIdentityId aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue)
-	{	
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrNone;
-
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-		
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		return r;
-		}	
-	
-	// Look for a key under a named section, retrieve text value	
-	TPtrC result;		
-	TBool ret=EFalse;	//return value from FindVar functions
-	aRequestValue = KErrAuthServIdentityNotFound;	//Initialisation		
-			
-	ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-	if(!ret)
-		{
-		RDebug::Print(_L("Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-		delete file;
-		return KErrNotFound;			
-		}
-	
-	//Copy the data from the named section in the file, and see if any previous user has used this input string
-	pinFileContents.Copy(result);			
-	
-	TInt searchResultPin;
-	TBuf8<50> searchStringPin;
-	_LIT8(KFormat3, ":%S,");
-	searchStringPin.Format(KFormat3, &aInputValue);
-	searchResultPin = pinFileContents.Find(searchStringPin);
-				
-	if (KErrNotFound == searchResultPin)
-		{				
-		//check that the identity is unique, if so, update the Db 
-		// with the new Id-PIN pair, as is done already
-		// else update the PIN only, ie training data for that identity
-		TInt searchResultId;
-		TBuf8<50> searchStringId;
-		_LIT8(KFormat4, ",%u:");
-		searchStringId.Format(KFormat4, aId);
-		
-		searchResultId = pinFileContents.Find(searchStringId);
-		
-		TDriveUnit sysDrive (RFs::GetSystemDrive());
-		TBuf<80> policyFile;
-		if (KErrNotFound == searchResultId)
-			{									
-			// Add this entry to the file
-			// This is a simple system, expecting a format as below:
-			// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-			
-			_LIT8(KFormat2, "%S%u:%S,");
-			if (pinFileContents.Size() == 0)
-				{
-				pinFileContents.Append(',');	//Initialisation
-				}
-			pinFileContents2.Format(KFormat2, &pinFileContents, aId, &aInputValue);				
-										
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			buf = HBufC::NewL(pinFileContents2.Length());
-			buf->Des().Copy(pinFileContents2);												
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-						
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone == ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			
-			}
-
-		else
-			{
-			//The Identity has already been trained with this plugin, 
-			// update the PIN (training data)
-			
-			//extract the string to the right of the end of the aId
-			pinFileContents2 = pinFileContents.Mid(searchResultId + searchStringId.Size());
-			
-			//Find the end of the PIN (Training data)
-			_LIT8(KPinEndMarker, ",");
-			TBufC8<5> bufPinEndMarker(KPinEndMarker);					
-			TInt pinEndPos = pinFileContents2.Find(bufPinEndMarker);
-			
-			//Replace this with the new PIN
-			pinFileContents.Replace((searchResultId + searchStringId.Size()),
-									 pinEndPos, aInputValue);	
-			
-			//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-			TInt ret2 = 0;
-			HBufC* buf = 0;
-			buf = HBufC::NewL(pinFileContents.Length());
-			buf->Des().Copy(pinFileContents);
-								
-			ret2 = file->SetValue(_L("SectionOne"),_L("Identity&PinValues"), *buf);
-			
-			TRAPD(r,file->WriteToFileL());
-			
-			if (KErrNone != r)
-				{
-				policyFile.Copy(sysDrive.Name());
-				policyFile.Append(KPolicyFile);
-				RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-				}
-			delete buf;		//Memory cleanup. This string was only needed for the above Print function
-			
-			if(KErrNone ==ret2)
-				{				
-				aRequestValue = KErrNone;
-				
-				//Update the global database
-				AddToGlobalDb(aId, aInputValue);
-				}
-			else
-				{
-				RDebug::Print(_L("Error occurred while writing data to file. Error = %d"), ret2);					
-				aRequestValue = ret2;
-				}
-			}
-		delete file;
-		return ret;
-		}
-	if (searchResultPin)	// a positive value
-		{
-		// A user has already tried to train this plugin using the given data.
-		// The pinFileContents are not updated, to avoid duplication
-		
-		aRequestValue = KErrAuthServPluginCancelled;
-		delete file;
-		return searchResultPin;
-		}	
-	
-	RDebug::Print(_L("Unexpected error in the 'Find' function. SearchresultPin = %d"), searchResultPin);
-	retValue = searchResultPin;
-
-	delete file;
-		
-	return retValue;
-	}
-
-	
-/**
- Utility function to remove the training data that is associated with a given Id
- Called by the Forget function
- @return - KIdSuccess, KIdUnknown or some error code  
- */ 
-TInt CTPostMarketRAMPlugin::FindStringAndRemoveL (TIdentityId aId)
-	{
-	TBuf8<500> pinFileContents, pinFileContents2;
-	TInt retValue = KErrAuthServNoSuchIdentity;		//init
-	CIniData* file=NULL;
-	//First read the list of userId and PIN combinations from a file
-	TRAPD(r,file=CIniData::NewL(iFileToRead));
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &iFileToRead);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions
-				
-		ret=file->FindVar(KPluginIniSection, KPinDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Config error: Unable to find the %S key in the file %S."), &KPinDbTag, &iFileToRead);
-			retValue = KErrNotFound;						
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			pinFileContents.Copy(result);				
-			
-			//Format the searchstring as defined in the file so that it starts with a ',' and ends with a ':'.
-			_LIT8(KFormatValue3, ",%u:");			
-			
-			TBuf8<32> searchString;
-			searchString.Format(KFormatValue3, aId);
-
-			//For the purpose of printing the data to a file, i'll create a 16-bit version of pinFileContents
-			HBufC* buf = 0;
-			buf = HBufC::NewL(searchString.Length());
-			buf->Des().Copy(searchString);
-			RDebug::Print(_L("Formatted searchString used in 'FindStringAndRemove(): %S"), buf);
-			delete buf;
-
-			TInt userIdStartPos;	//The offset of the searchString within pinFileContents
-									//i.e the position of the '.' just before the identityId
-			userIdStartPos = pinFileContents.Find(searchString);
-			if (KErrNotFound == userIdStartPos)
-				{
-				RDebug::Print(_L("FindStringAndRemoveL: The specified ID was not found in the pinFile"));
-				retValue = KErrAuthServNoSuchIdentity;	//KIdUnknown;
-				}
-			else
-				{
-				
-				//Find where the string (including PIN) ends
-				TLex8 aLex = TLex8(pinFileContents);
-				TInt length(0);
-				aLex.Inc(userIdStartPos+1);
-				while(aLex.Peek() != ',') 
-					{
-					aLex.Inc();
-					length++;
-					}
-	
-				//remove the found (total) string from the list (including the starting ',')
-				pinFileContents.Delete(userIdStartPos,length+1);
-				
-				//Update the file
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf;
-				buf = HBufC::NewL(pinFileContents.Length());	
-				buf->Des().Copy(pinFileContents);
-								
-				ret2 = file->SetValue(KPluginIniSection, KPinDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-				TDriveUnit sysDrive (RFs::GetSystemDrive());
-				TBuf<2> sysDriveName (sysDrive.Name());
-				TBuf<84> policyFile;
-								
-				if (KErrNone != r)
-					{
-					policyFile.Copy(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					policyFile .Copy(sysDriveName);
-					policyFile.Append(KAuthSvrPolicyFile);
-					RDebug::Print(_L("Error occurred in WriteToFileL(). Error = %d. Filename= %S"), ret2, &policyFile);
-					retValue = ret2;
-					}
-				else
-					{
-					retValue = KErrNone;		
-					}				
-				}			
-			}//End check for key&section search in file
-		delete file;
-		}//End check for safe file access
-	
-	return retValue;
-	}
-
-
-/**
- Utility function to Update the Global Db with the training data 
- that is associated with a given Id. The update will not happen if 
- the identity is already present in this list, i.e. it's been pu in 
- by another plugin
- Called by the CheckForNewStringPresence function
- @return - KErrNone, or some error code
-*/
-TInt CTPostMarketRAMPlugin::AddToGlobalDb (TIdentityId aId, TBuf8<32> aInputValue)
-	{
-	
-	TBuf8<500> totalDbFileContents, totalDbFileContents2;
-	TInt retValue = KErrNone;
-	CIniData* file=NULL;
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<128> authSvrPolicyFile(sysDriveName);
-	authSvrPolicyFile.Append(KAuthSvrPolicyFile);
-	
-	TRAPD(r,file=CIniData::NewL(authSvrPolicyFile));	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &authSvrPolicyFile);
-		retValue = r;
-		}	
-	else
-		{
-		// Look for a key under a named section, retrieve text value	
-		TPtrC result;		
-		TBool ret=EFalse;	//return value from FindVar functions		
-				
-		ret=file->FindVar(KPluginIniSection, KTotalDbTag,result);
-		if(!ret)
-			{
-			RDebug::Print(_L("Unable to find the %S key in the file %S."), &KTotalDbTag, &authSvrPolicyFile);
-			retValue = KErrNotFound;		
-			}
-		else
-			{
-			//Copy the data from the named section in the file, and see if any previous user has used this input string
-			totalDbFileContents.Copy(result);
-			TBuf8<20> aidString;
-			aidString.Num(aId, EDecimal);			
-			TInt searchResult;			
-			searchResult = totalDbFileContents.Find(aidString);
-			
-			if (KErrNotFound == searchResult)
-				{
-				// Add this entry to the file
-				// This is a simple system, expecting a format as below:
-				// ",aId:inputPin,aId:inputPin,aId:inputPin,"				
-				_LIT8(KFormat2, "%S%u:%S,");
-				if (totalDbFileContents.Size() == 0)
-					{					
-					totalDbFileContents.Append(',');	//Initialisation
-					}
-				totalDbFileContents2.Format(KFormat2, &totalDbFileContents, aId, &aInputValue);				
-					
-				//For the purpose of writing the data to a file, i'll create a 16-bit version of pinFileContents
-				TInt ret2 = 0;
-				HBufC* buf = 0;
-				buf = HBufC::New(totalDbFileContents2.Length());
-				buf->Des().Copy(totalDbFileContents2);								
-				ret2 = file->SetValue(KPluginIniSection, KTotalDbTag, *buf);
-				
-				TRAPD(r,file->WriteToFileL());
-									
-				if (KErrNone != r)
-					{
-					TBuf<80> policyFile(sysDriveName);
-					policyFile.Append(KPolicyFile);
-					RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = AllUserID&PinValues, value = %S."), &policyFile, buf);
-					}
-				delete buf;		//Memory cleanup. This string was only needed for the above Print function
-				
-				if (KErrNone !=ret2)
-					{
-					RDebug::Print(_L("Error occurred in SetValue(). Error = %d. Filename= %S"), ret2, &authSvrPolicyFile);
-					retValue = ret2;
-					}
-				}
-			else
-				{
-				// A user has already tried to train this plugin using the given data.
-				// The pinFileContents are not updated, to avoid duplication				
-				retValue = KErrNone;													
-				}//End aidString search in the totalDbFileContents string (Find())
-			}//End check for key&section search in file (FindVar())
-			delete file;
-		}//End check for safe file access
-	return retValue;
-	}
-
-const HBufC* CTPostMarketRAMPlugin::ClientMessage()
-	{
-	return iClientMessage;
-	}
-
-const TPtrC& CTPostMarketRAMPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CTPostMarketRAMPlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CTPostMarketRAMPlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CTPostMarketRAMPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CTPostMarketRAMPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CTPostMarketRAMPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
--- a/authenticationservices/authenticationserver/test/tAuthSvr/tpostmarketplugins/tpostmarketramplugin.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,149 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CTPostRAMMarketPlugin is a dummy interface implementation for CAuthPluginInterface
-*
-*/
-
-
-
-#ifndef TPOSTMARKETRAMPLUGIN_H
-#define TPOSTMARKETRAMPLUGIN_H
-
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-
-//An implementation of the CAuthPluginInterface definition
-
-using namespace AuthServer;
-	
-//implementation_uid = 0x1023F3F3
-class CTPostMarketRAMPlugin : public CAuthPluginInterface
-	{
-public:
-	// Two phase constructor
-	static CTPostMarketRAMPlugin* NewL();
-	// Destructor
-	virtual ~CTPostMarketRAMPlugin();
-	//Implementation of CAuthPluginInterface definitions using a PIN system
-	virtual void Identify(TIdentityId& aId, const TDesC& aClientMessage, HBufC8*& aResult, TRequestStatus& aRequest);	
-	virtual void Cancel();	
-	virtual void Train(TIdentityId aId, HBufC8*& aResult, TRequestStatus& aRequest);		
-	virtual TBool IsActive() const;
-	virtual TInt Forget(TIdentityId aId);
-	virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf);
-	virtual TInt Reset(TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult);
-	virtual TPluginId Id() const = 0;
-	virtual const TPtrC& Name() const;
-	virtual const TPtrC& Description() const;
-	virtual AuthServer::TEntropy MinEntropy() const;
-	virtual AuthServer::TPercentage FalsePositiveRate() const;
-	virtual AuthServer::TPercentage FalseNegativeRate() const;
-	virtual AuthServer::TAuthPluginType Type() const;
-		
-	// Utility functions
-	TInt IdReadUserInput(TBuf8<32>& inputValue);
-	TInt TrainReadUserInput(TBuf8<32>& inputValue);
-	TInt CheckForStringPresence(TIdentityId& aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue);
-	TInt CheckForNewStringPresenceL(TIdentityId aId, TBuf8<32> aInputValue, TRequestStatus& aRequestValue);
-	TInt FindStringAndRemoveL(TIdentityId aId);
-	TInt AddToGlobalDb (TIdentityId aId, TBuf8<32> aInputValue);
-	TInt RemoveFromGlobalDb (TIdentityId aId);
-	const HBufC* ClientMessage ();
-	
-
-public:
-	mutable TBuf<70> iFileToRead;
-	void ConstructL();
-	CTPostMarketRAMPlugin();
-	void ReloadAllFromIniFile();
-	void ReloadActiveStateFromIniFile() const;
-
-protected:
- 	/// The name of the plugin. Derived classes should set this member.
- 	TPtrC iName;
- 	/// The plugin's description. Derived classes should set this member.
- 	TPtrC iDescription;
- 	/// The minumum entropy provided by the plugin. Derived classes should set
- 	/// this member.
- 	AuthServer::TEntropy iMinEntropy;
- 	/// The false positive rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalsePositiveRate;
- 	/// The false negative rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalseNegativeRate;
-  	/// The type of the plugin. Derived classes should set this member.
- 	AuthServer::TAuthPluginType iType;
-
-private:
-	// Data read from file determining if this plugin supports default data
-	TBool iSupportsDefaultData;
-	mutable TBool iActiveState;
-	HBufC* iClientMessage;
-	};
-
-
-//=========================================================================	
-// The various classes that are spawned from this base class by inheriting the implementations besides
-// the Id() function (Uses the #define macro)
-
-// number is hex, type is one of the TAuthPluginType enums
-// Id() returns the Id of the plugin
-
-
-#define NClass(id,type) class CTPostMarketRAMPlugin##id : public CTPostMarketRAMPlugin\
-	{                                        		\
-public:                                      		\
-	typedef CTPostMarketRAMPlugin##id TMyPinType;	    	\
-	TPluginId Id() const 		               		\
-		{ return 0x##id; }  	               		\
-	static TMyPinType* NewL()                   	\
-    	{										 	\
-        TMyPinType* r = new (ELeave) TMyPinType();	\
-        CleanupStack::PushL(r);						\
-	  	r->ConstructL();						 	\
-	  	CleanupStack::Pop(r);						\
-        r->iType = type;                            \
-	  	return r;                              		\
-		}											\
-	}
-
-NClass(10234100, EAuthKnowledge);
-	
-//=========================================================================		
-
-// Constants used in the utility functions -File locations, etc
-_LIT8(KDefaultData, "0000");
-_LIT(KInitInfoFile, "\\tAuth\\tAuthSvr\\testdata\\initialisation_Info.ini");
-_LIT(KPolicyFile, 	"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-
-_LIT(KPluginNamePin, "PostMarketRAMPlugin");
-_LIT(KPluginDescriptionPin, "Post Market RAM Plugin, a test plugin does nothing.");
-
-static const TInt KEntropyPin = 999;
-static const TInt KFalsePosPin = 100;
-static const TInt KFalseNegPin = 10;
-
-//From Step_Base.cpp
-_LIT(KPluginIniSection,			"SectionOne");
-_LIT(KAuthSvrPolicyFile, 		"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-_LIT(KDefaultPluginTag, 		"DefaultPlugin");
-_LIT(KEnteredPinTag, 			"EnteredPinValue");
-_LIT(KPinDbTag,					"Identity&PinValues");
-_LIT(KTotalDbTag,				"AllUserID&PinValues");
-_LIT(KInitPinDatabaseValue,		",");
-	
-
-#endif	/* TPOSTMARKETRAMPLUGIN_H */
--- a/authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthcliserv.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// authentication client server classes tests
-
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-
-LOAD_SUITE tauthcliserv
-LOAD_SUITE tpinplugin
-LOAD_SUITE tAuthSvr_new
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0004
-//! @SYMTestCaseDesc	Remove_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHCLISVR-0004
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_TEST_STEP_RESULT 0 100	tAuthSvr_new 	INIT_CENREP c:\tauth\tAuthSvr\scripts\tauthsvr2.ini defaultplugin1
-
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE SEC-AUT-AUTHCLISVR-0004
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0005
-//! @SYMTestCaseDesc	Initialize_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHCLISVR-0005
-RUN_TEST_STEP 100 tpinplugin CreateInputFile c:\tauth\tpinplugin\scripts\tpinplugin.ini datfile
-END_TESTCASE SEC-AUT-AUTHCLISVR-0005
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0001
-//! @SYMTestCaseDesc	Tests that on first start only the default user in present in the database.
-//! @SYMREQ REQ 4953 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults All tests pass.
-//! @SYMDevelopedForRelease 
-
-START_TESTCASE SEC-AUT-AUTHCLISVR-0001
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP 40 tauthcliserv FIRSTSTART 
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-
-END_TESTCASE SEC-AUT-AUTHCLISVR-0001
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0002
-//! @SYMTestCaseDesc	Tests that correct list of identities are retrieved from auth server 
-//!						database.
-//!						Expected plugins are listed correctly.
-//!						Authentication of a single and multiple user(s).
-//! @SYMREQ REQ 4948 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults All tests pass.
-//! @SYMDevelopedForRelease 
-
-START_TESTCASE SEC-AUT-AUTHCLISVR-0002
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP 120 tauthcliserv CLIENT 
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-
-END_TESTCASE SEC-AUT-AUTHCLISVR-0002
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0003
-//! @SYMTestCaseDesc	Tests removal of identity, registration, training and retaining of plugin.
-//! @SYMREQ REQ 4948 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  
-//! @SYMTestExpectedResults All tests pass.
-//! @SYMDevelopedForRelease 
-
-START_TESTCASE SEC-AUT-AUTHCLISVR-0003
-RUN_UTILS MKDIR C:\testplugin_active\
-RUN_TEST_STEP 120 tauthcliserv MGRCLIENT 
-RUN_UTILS DELETEDIRECTORY C:\testplugin_active\
-
-END_TESTCASE SEC-AUT-AUTHCLISVR-0003
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0006
-//! @SYMTestCaseDesc	Remove_PinPlugin_Data
-START_TESTCASE SEC-AUT-AUTHCLISVR-0006
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE SEC-AUT-AUTHCLISVR-0006
--- a/authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthcliserv_debug.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// authentication db classes tests
-
-LOAD_SUITE tauthcliserv
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0007
-//! @SYMTestCaseDesc	Authentication db classes test
-START_TESTCASE SEC-AUT-AUTHCLISVR-0007
-RUN_PANIC_STEP_RESULT 64 AUTHEXPR 10 tauthcliserv AuthExprTypePanic
-RUN_PANIC_STEP_RESULT 64 AUTHEXPR 10 tauthcliserv AuthExprTypePanicBadLeft
-RUN_PANIC_STEP_RESULT 64 AUTHEXPR 10 tauthcliserv AuthExprTypePanicBadRight
-END_TESTCASE SEC-AUT-AUTHCLISVR-0007
- 
--- a/authenticationservices/authenticationserver/test/tauthcliserv/scripts/tauthexpr.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// authentication client server classes tests
-
-LOAD_SUITE tauthcliserv
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHCLISVR-0008
-//! @SYMTestCaseDesc	Authentication client server classes test
-START_TESTCASE SEC-AUT-AUTHCLISVR-0008
-RUN_TEST_STEP 10 tauthcliserv AuthExprBuild
-RUN_PANIC_STEP_RESULT 3 AuthServer 10 tauthcliserv AuthExprBadAuthExt
-RUN_TEST_STEP 10 tauthcliserv AuthExprHighVer
-RUN_TEST_STEP 300 tauthcliserv AuthExprEval
-END_TESTCASE SEC-AUT-AUTHCLISVR-0008
- 
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_authexpr_build.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,759 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <s32mem.h>
-#include "tauthcliservstep.h"
-#include <scs/scsclient.h>
-using namespace AuthServer;
-
-inline void CorruptTypeField(const CAuthExpressionImpl* aExpr)
-/**
-	Corrupt the type field of the supplied
-	expression so the invariant-checking code fails.
-	
-	@param	aExpr			Expression to corrupt.  This
-							is const, even though it is
-							modified, because Left and
-							Right return pointers to const
-							expressions.
- */
-	{
-	// 4 == _FOFF(CAuthExpression, iType), but iType is private
-	// sizeof(CAuthExpression::iType) == 8
-	*(((TUint32*)aExpr) + 2) = ~0;
-	}
-
-
-CTStepAuthExprBuild::CTStepAuthExprBuild()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprBuild);
-	}
-
-
-TVerdict CTStepAuthExprBuild::doTestStepL()
-/**
-	Implement CTestStep by creating simple and
-	complex expression types.  In debug mode this
-	function also ensures the operations fail
-	cleanly in OOM.
- */
-	{
-	RunTestsL();		// create all expression types
-	TestFailedCombsL();
-	TestCorruptPersistL();
-	
-	// create all expression types in OOM
-#ifdef _DEBUG
-	TInt i = 1;
-	TBool failed = EFalse;
-	
-	do
-		{
-		__UHEAP_SETFAIL(RAllocator::EDeterministic, i);
-		TRAPD(r, RunTestsL());
-		TESTL(r == KErrNone || r == KErrNoMemory);
-		__UHEAP_RESET;
-		
-		failed = (r == KErrNoMemory);
-		++i;
-		} while (failed);
-	
-	// i is now one greater than the last alloc count.
-	// run the tests again, to ensure there really was
-	// enough memory, and this wasn't just an error case
-	// that wasn't handled properly.
-	
-	TInt lim = i * 2;
-	while (i++ < lim)
-		{
-		__UHEAP_SETFAIL(RAllocator::EDeterministic, i);
-		RunTestsL();
-		__UHEAP_RESET;
-		}
-#endif	
-	
-	return EPass;
-	}
-
-
-void CTStepAuthExprBuild::RunTestsL()
-/**
-	Helper function for doTestStepL.  This generates
-	authentication expressions.
-	
-	1. creating simple type and plugin id nodes.
-	2. creating simple AND and OR combinations
-	3. creating complex (multi-level) AND and OR combinations.
- */
-	{
-	TestSimpleExprL();
-	TestSimpleExprCombsConsL();
-	TestComplexExprCombsConsL();
-	}
-
-
-void CTStepAuthExprBuild::TestExprLD(
-	void (CTStepAuthExprBuild::*aTestFuncL)(CAuthExpression*),
-	CAuthExpression* aExpr)
-/**
-	Run the supplied test function on the supplied expression.
-	This function only exists to place the expression on the
-	cleanup stand and delete it afterwards.
-	
-	This function leaves with KErrNoMemory if the supplied
-	expression is NULL.
- */
-	{
-	User::LeaveIfNull(aExpr);
-	
-	CleanupStack::PushL(aExpr);
-	(this->*aTestFuncL)(aExpr);
-	
-	// test externalization and internalization
-	// (this can fail because of OOM.)
-	TSizeStream ss;
-	RWriteStream ws(&ss);
-	aExpr->ExternalizeL(ws);
-	
-	HBufC8* buf = HBufC8::NewLC(ss.Size());
-	TPtr8 bufPtr(buf->Des());	
-	RDesWriteStream dws(bufPtr);
-	aExpr->ExternalizeL(dws);
-	dws.CommitL();
-	
-	RDesReadStream drs(*buf);
-	CAuthExpression* aeRestore = CAuthExpressionImpl::NewL(drs);
-	CleanupStack::PushL(aeRestore);
-	
-	(this->*aTestFuncL)(aExpr);
-	
-	CleanupStack::PopAndDestroy(3, aExpr);
-	}
-
-
-void CTStepAuthExprBuild::TestSimpleExprL()
-/**
-	Test constructing leaf node expressions from
-	a plugin ID and a plugin type.
- */
-	{
-	__UHEAP_MARK;
-	
-	TestExprLD(&CTStepAuthExprBuild::TestPluginIdL, AuthExpr(KTestPluginId0));
-	TestExprLD(&CTStepAuthExprBuild::TestPluginTypeL, AuthExpr(EAuthKnowledge));
-
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprBuild::TestPluginIdL(CAuthExpression* aExpr)
-/**
-	Tests the supplied expression is a simple expression
-	for plugin ID KTestPluginId0.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KPluginId);
-	TESTL(impl->PluginId() == KTestPluginId0);
-	}
-
-
-void CTStepAuthExprBuild::TestPluginTypeL(CAuthExpression* aExpr)
-/**
-	Tests the supplied expression is a simple expression
-	for plugin type EAuthKnowledge.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KPluginType);
-	TESTL(impl->PluginType() == EAuthKnowledge);
-	}
-
-
-void CTStepAuthExprBuild::TestSimpleExprCombsConsL()
-/**
-	Tests combining two simple types (plugin type or plugin id)
-	with the AuthAnd and AuthOr functions, and with the overloaded
-	binary AND (&) and OR (|) operators.
- */
-	{
-	__UHEAP_MARK;
-	
-	// type AND type
-	OpTestExprLD(&CTStepAuthExprBuild::TestTypeAndTypeL, AuthExpr(EAuthKnowledge) & AuthExpr(EAuthBiometric));
-	TestExprLD(&CTStepAuthExprBuild::TestTypeAndTypeL, AuthAnd(AuthExpr(EAuthKnowledge), AuthExpr(EAuthBiometric)));
-	
-	// id OR id
-	OpTestExprLD(&CTStepAuthExprBuild::TestTypeOrTypeL, AuthExpr(EAuthKnowledge) | AuthExpr(EAuthBiometric));
-	TestExprLD(&CTStepAuthExprBuild::TestTypeOrTypeL, AuthOr(AuthExpr(EAuthKnowledge), AuthExpr(EAuthBiometric)));
-	
-	// ID AND type
-	OpTestExprLD(&CTStepAuthExprBuild::TestIdAndTypeL, AuthExpr(KTestPluginId0) & AuthExpr(EAuthBiometric));
-	TestExprLD(&CTStepAuthExprBuild::TestIdAndTypeL, AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(EAuthBiometric)));
-	
-	// type AND ID
-	OpTestExprLD(&CTStepAuthExprBuild::TestTypeAndIdL, AuthExpr(EAuthBiometric) & AuthExpr(KTestPluginId0));
-	TestExprLD(&CTStepAuthExprBuild::TestTypeAndIdL, AuthAnd(AuthExpr(EAuthBiometric), AuthExpr(KTestPluginId0)));
-	
-	// id AND id
-	OpTestExprLD(&CTStepAuthExprBuild::TestIdAndIdL, AuthExpr(KTestPluginId0) & AuthExpr(KTestPluginId1));
-	TestExprLD(&CTStepAuthExprBuild::TestIdAndIdL, AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1)));
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprBuild::TestTypeAndTypeL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says know & bio.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KAnd);
-	TESTL(impl->Left()->Type() == KPluginType);
-	TESTL(impl->Left()->PluginType() == EAuthKnowledge);
-	TESTL(impl->Right()->Type() == KPluginType);
-	TESTL(impl->Right()->PluginType() == EAuthBiometric);
-	}
-
-
-void CTStepAuthExprBuild::TestTypeOrTypeL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says know | bio.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KOr);
-	TESTL(impl->Left()->Type() == KPluginType);
-	TESTL(impl->Left()->PluginType() == EAuthKnowledge);
-	TESTL(impl->Right()->Type() == KPluginType);
-	TESTL(impl->Right()->PluginType() == EAuthBiometric);
-	}
-
-
-void CTStepAuthExprBuild::TestIdAndTypeL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says id0 & bio.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KAnd);
-	TESTL(impl->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Right()->Type() == KPluginType);
-	TESTL(impl->Right()->PluginType() == EAuthBiometric);
-	}
-
-
-void CTStepAuthExprBuild::TestTypeAndIdL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says bio & id0.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KAnd);
-	TESTL(impl->Left()->Type() == KPluginType);
-	TESTL(impl->Left()->PluginType() == EAuthBiometric);
-	TESTL(impl->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->PluginId() == KTestPluginId0);
-	}
-
-
-void CTStepAuthExprBuild::TestIdAndIdL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says id0 & id1.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KAnd);
-	TESTL(impl->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->PluginId() == KTestPluginId1);
-	}
-
-
-void CTStepAuthExprBuild::TestComplexExprCombsConsL()
-/**
-	Test complex AND and OR combinations.
-	For the overloaded operators, this additionally checks
-	that precedence works as expected.
- */
-	{
-	__UHEAP_MARK;
-	
-	// complex combinations - ensure precedence works
-	
-	// id AND id AND id == (id AND id) AND id
-	OpTestExprLD(&CTStepAuthExprBuild::TestAndAndL, AuthExpr(KTestPluginId0) & AuthExpr(KTestPluginId1) & AuthExpr(KTestPluginId2));
-	TestExprLD(&CTStepAuthExprBuild::TestAndAndL, AuthAnd(AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1)), AuthExpr(KTestPluginId2)));
-	
-	// id AND id AND id == (id AND id) OR id
-	OpTestExprLD(&CTStepAuthExprBuild::TestAndOrL, AuthExpr(KTestPluginId0) & AuthExpr(KTestPluginId1) | AuthExpr(KTestPluginId2));
-	TestExprLD(&CTStepAuthExprBuild::TestAndOrL, AuthOr(AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1)), AuthExpr(KTestPluginId2)));
-	
-	// id OR id AND id == id OR (id AND id)
-	OpTestExprLD(&CTStepAuthExprBuild::TestOrAndL, AuthExpr(KTestPluginId0) | AuthExpr(KTestPluginId1) & AuthExpr(KTestPluginId2));
-	TestExprLD(&CTStepAuthExprBuild::TestOrAndL, AuthOr(AuthExpr(KTestPluginId0), AuthAnd(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId2))));
-	
-	// id OR id OR id == (id OR id) OR id
-	OpTestExprLD(&CTStepAuthExprBuild::TestOrOrL, AuthExpr(KTestPluginId0) | AuthExpr(KTestPluginId1) | AuthExpr(KTestPluginId2));
-	OpTestExprLD(&CTStepAuthExprBuild::TestOrOrL, AuthOr(AuthOr(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1)), AuthExpr(KTestPluginId2)));
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprBuild::TestAndAndL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says (id0 & id1) & id2.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KAnd);
-	TESTL(impl->Left()->Type() == KAnd);
-	TESTL(impl->Left()->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Left()->Right()->Type() == KPluginId);
-	TESTL(impl->Left()->Right()->PluginId() == KTestPluginId1);
-	TESTL(impl->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->PluginId() == KTestPluginId2);
-	}
-
-
-void CTStepAuthExprBuild::TestAndOrL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says (id0 & id 1) | id2.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KOr);
-	TESTL(impl->Left()->Type() == KAnd);
-	TESTL(impl->Left()->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Left()->Right()->Type() == KPluginId);
-	TESTL(impl->Left()->Right()->PluginId() == KTestPluginId1);
-	TESTL(impl->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->PluginId() == KTestPluginId2);
-	}
-
-
-void CTStepAuthExprBuild::TestOrAndL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says id0 | (id1 & id2).
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KOr);
-	TESTL(impl->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Right()->Type() == KAnd);
-	TESTL(impl->Right()->Left()->Type() == KPluginId);
-	TESTL(impl->Right()->Left()->PluginId() == KTestPluginId1);
-	TESTL(impl->Right()->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->Right()->PluginId() == KTestPluginId2);
-	}
-
-
-void CTStepAuthExprBuild::TestOrOrL(CAuthExpression* aExpr)
-/**
-	Test the supplied expression says (id0 | id1) | id2.
- */
-	{
-	CAuthExpressionImpl* impl = static_cast<CAuthExpressionImpl*>(aExpr);
-	TESTL(impl->Type() == KOr);
-	TESTL(impl->Left()->Type() == KOr);
-	TESTL(impl->Left()->Left()->Type() == KPluginId);
-	TESTL(impl->Left()->Left()->PluginId() == KTestPluginId0);
-	TESTL(impl->Left()->Right()->Type() == KPluginId);
-	TESTL(impl->Left()->Right()->PluginId() == KTestPluginId1);
-	TESTL(impl->Right()->Type() == KPluginId);
-	TESTL(impl->Right()->PluginId() == KTestPluginId2);
-	}
-
-
-void CTStepAuthExprBuild::TestFailedCombsL()
-/**
-	Test that complex expression builder fails cleanly
-	for all permutations of unallocated input.
- */
-	{
-	__UHEAP_MARK;
-	
-	// left null only
-	CAuthExpression* aeRight = AuthExpr(KTestPluginId0);
-	User::LeaveIfNull(aeRight);
-	CAuthExpression* aeLeftNull = AuthAnd(0, aeRight);
-	TESTL(aeLeftNull == 0);
-	
-	// right null only
-	CAuthExpression* aeLeft = AuthExpr(KTestPluginId1);
-	User::LeaveIfNull(aeRight);
-	CAuthExpression* aeRightNull = AuthAnd(aeLeft, 0);
-	TESTL(aeRightNull == 0);
-	
-	// both null
-	CAuthExpression* aeBothNull = AuthAnd(0, 0);
-	TESTL(aeBothNull == 0);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprBuild::TestCorruptPersistL()
-/**
-	Test get expected errors when externalize or
-	internalize invalid expressions.
- */
-	{
-	TInt r;
-	
-	__UHEAP_MARK;
-	CAuthExpression* aeTest = AuthExpr(KTestPluginId0);
-	TESTL(aeTest != 0);
-	CleanupStack::PushL(aeTest);
-	
-	TSizeStream ss;
-	RWriteStream ws(&ss);
-	aeTest->ExternalizeL(ws);
-	
-	TInt len = ss.Size();
-	TAny* buf= User::AllocLC(ss.Size());
-	
-	// externalize valid expression
-	RMemWriteStream mwsValid(buf, len);
-	aeTest->ExternalizeL(mwsValid);
-	
-	// internalize unsupported expression stream
-	TInt8& verByteP = ((TInt8*)buf)[0];
-	TInt8 origVer = verByteP;
-	verByteP = KMaxTInt8;
-	RMemReadStream mrsHighVer(buf, len);
-	TRAP(r, /* ignore */ CAuthExpressionImpl::NewL(mrsHighVer));
-	TESTL(r == KErrAuthServUnsupportedExprVersion);
-	verByteP = origVer;
-	
-	// internalize corrupt expression stream
-	TInt8& typeByteP = ((TInt8*)buf)[1];
-	TInt8 origType = typeByteP;
-	typeByteP = ~0;
-	RMemReadStream mrsCorrupt(buf, len);
-	TRAP(r, /* ignore */ CAuthExpressionImpl::NewL(mrsCorrupt));
-	TESTL(r == KErrAuthServInvalidInternalizeExpr);
-	typeByteP = origType;
-	
-	// internalize valid expression stream
-	RMemReadStream mrsValid(buf, len);
-	CAuthExpression* aeRestore = CAuthExpressionImpl::NewL(mrsValid);
-	TESTL(aeRestore != 0);
-	delete aeRestore;
-	
-	CleanupStack::PopAndDestroy(2, aeTest);
-	__UHEAP_MARKEND;
-	}
-
-
-// -------- Server fails expressions from client --------
-
-
-namespace {
-
-class RTestAuthClient : public RAuthClient
-/**
-	This subclass of RAuthClient is used to
-	send a corrupt externalized expression
-	to the authentication server.
-	
-	The test code can't call SendReceive() on
-	an instance of RAuthClient because it is
-	protected.
- */
-	{
-public:
-	void SendCorruptAuthExprL();
-	void SendHighVerAuthExprL();
-
-	static HBufC8* GetAuthExprExternalizationLC();
-	};
-
-HBufC8* RTestAuthClient::GetAuthExprExternalizationLC()
-/**
-	Helper function for SendCorruptAuthExprL and
-	SendHighVerAuthExprL.  This allocates a buffer
-	containing an externalized auth expr, so the
-	calling function can corrupt it.
-	
-	@return					Buffer containing externalized
-							authentication expression.  This
-							is also placed on the cleanup stack.
-	@see SendCorruptAuthExprL
-	@see SendHighVerAuthExprL
- */
-	{
-	CAuthExpression* ae = AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(ae);
-	CleanupStack::PushL(ae);
-	
-	TSizeStream ss;
-	RWriteStream ws(&ss);
-	ae->ExternalizeL(ws);
-	
-	HBufC8* buf = HBufC8::NewLC(ss.Size());
-	TPtr8 bufPtr = buf->Des();
-	
-	RDesWriteStream dws(bufPtr);
-	ae->ExternalizeL(dws);
-	dws.CommitL();
-
-	CleanupStack::Pop(2, ae);
-	CleanupStack::PushL(buf);
-	
-	return buf;
-	}
-
-
-void RTestAuthClient::SendCorruptAuthExprL()
-/**
-	Send an authenticate request to the server,
-	with a corrupt authentication expression.
- */
-	{
-	HBufC8* buf = GetAuthExprExternalizationLC();
-	
-	// corrupt the type field, one byte after the version field
-	buf->Des()[1] = ~0;
-	
-	// the server should panick this thread with
-	// category "AuthServer" and reason EPanicBadExternalizedAuthExpr (3)
-	TRequestStatus rs;
-	CallSessionFunction(EAuthenticate, TIpcArgs(buf), rs);
-	
-	// this code will not be reached
-	User::WaitForRequest(rs);
-	CleanupStack::PopAndDestroy(buf);
-	}
-
-
-void RTestAuthClient::SendHighVerAuthExprL()
-/**
-	Send an authenticate request to the server,
-	with an unsupported version number.
-	
-	The server should fail the request with
-	KErrAuthServUnsupportedExprVersion.
- */
-	{
-	HBufC8* buf = GetAuthExprExternalizationLC();
-	
-	// change the version field, which is the first byte
-	buf->Des()[0] = KMaxTInt8;
-	
-	TRequestStatus rs;
-	CallSessionFunction(EAuthenticate, TIpcArgs(buf), rs);
-	User::WaitForRequest(rs);
-	
-	// this isn't semantically the right code to
-	// fail the test with, because it is expected.
-	// However, it is easy to find in the test code
-	// if it occurs.
-	if (rs != KErrAuthServUnsupportedExprVersion)
-		User::Leave(KErrAuthServUnsupportedExprVersion);
-	
-	CleanupStack::PopAndDestroy(buf);
-	}
-
-
-void RunTestAuthClientFunctionL(void (RTestAuthClient::* aTacFuncL)())
-/**
-	Connect to the authentication server using
-	RTestAuthClient, and call the supplied function.
-	
-	This is a helper function for CTStepBadExtAuthExpr
-	and CTStepAuthExprHighVer which both use
-	RTestAuthClient, and only call different functions.
-	
-	@param	aTacFuncL		Function to call on RTestAuthClient
-							once the connection has been made.
-							If this function leaves then the
-							leave code is propagated through this
-							(RunTestAuthClientFunctionL) function.
- */
-	{
-	RTestAuthClient tac;
-	User::LeaveIfError(tac.Connect());
-	CleanupClosePushL(tac);
-	
-	// this function should not return
-	(tac.*aTacFuncL)();
-	
-	CleanupStack::PopAndDestroy(&tac);
-	}
-
-
-}	// namespace
-
-
-CTStepBadExtAuthExpr::CTStepBadExtAuthExpr()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepBadExtAuthExpr);
-	}
-
-
-TVerdict CTStepBadExtAuthExpr::doTestStepL()
-/**
-	Implement CTestStep by calling RAuthClient::Authenticate
-	with a corrupt externalized authentication expression.
-	
-	The current thread should be panicked with
-	category AuthServer and reason EPanicBadExternalizedAuthExpr.
- */
-	{
-	// this function should not return
-	RunTestAuthClientFunctionL(&RTestAuthClient::SendCorruptAuthExprL);
-	return EPass;
-	}
-
-
-CTStepAuthExprHighVer::CTStepAuthExprHighVer()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprHighVer);
-	}
-
-
-TVerdict CTStepAuthExprHighVer::doTestStepL()
-/**
-	Implement CTestStep by calling RAuthClient::SendHighVerAuthExprL()
-	and ensuring the server fails the request if
-	the externalized auth expr uses an unsupported
-	version number.
- */
-	{
-	RunTestAuthClientFunctionL(&RTestAuthClient::SendHighVerAuthExprL);
-	return EPass;
-	}
-
-
-// -------- Debug-mode client-side panicks --------
-
-
-#ifdef _DEBUG
-
-
-// -------- CTStepAuthExprTypePnc --------
-
-
-CTStepAuthExprTypePnc::CTStepAuthExprTypePnc()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprTypePnc);
-	}
-
-
-TVerdict CTStepAuthExprTypePnc::doTestStepL()
-/**
-	Implement CTestStep by creating a plugin id
-	node, corrupting the type field, and testing
-	that it is panicked when the type is
-	retrieved.  Debug only.
- */
-	{
-	CAuthExpression* ae = AuthExpr(KTestPluginId0);
-	User::LeaveIfNull(ae);
-	CAuthExpressionImpl* aeImpl = static_cast<CAuthExpressionImpl*>(ae);
-	CorruptTypeField(aeImpl);
-	/* ignore */ aeImpl->Type();
-	
-	// this code should never be reached
-	return EPass;
-	}
-
-
-// -------- CTStepAuthExprTypePncBadLeft --------
-
-
-CTStepAuthExprTypePncBadLeft::CTStepAuthExprTypePncBadLeft()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprTypePncBadLeft);
-	}
-
-
-TVerdict CTStepAuthExprTypePncBadLeft::doTestStepL()
-/**
-	Implement CTestStep by creating a complex
-	expression where the left subexpression is
-	corrupt.  This tests that the invariant
-	correctly validates the left subtree.
- */
-	{
-	CAuthExpression* ae = AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(ae);
-	CAuthExpressionImpl* aeImpl = static_cast<CAuthExpressionImpl*>(ae);
-	CorruptTypeField(aeImpl->Left());	
-	/* ignore */ aeImpl->Type();
-	
-	// this code should never be reached
-	return EPass;
-	}
-
-
-// -------- CTStepAuthExprTypePncBadRight --------
-
-
-CTStepAuthExprTypePncBadRight::CTStepAuthExprTypePncBadRight()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprTypePncBadRight);
-	}
-
-
-TVerdict CTStepAuthExprTypePncBadRight::doTestStepL()
-/**
-	Implement CTestStep by creating a complex
-	expression where the Right subexpression is
-	corrupt.  This tests that the invariant
-	correctly validates the Right subtree.
- */
-	{
-	CAuthExpression* ae = AuthAnd(AuthExpr(KTestPluginId0), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(ae);
-	CAuthExpressionImpl* aeImpl = static_cast<CAuthExpressionImpl*>(ae);
-	CorruptTypeField(aeImpl->Right());	
-	/* ignore */ aeImpl->Type();
-	
-	// this code should never be reached
-	return EPass;
-	}
-
-
-#endif	// #ifdef _DEBUG
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_authexpr_eval.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,697 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This file contains functions which are used to
-* test evaluating authentication expressions.
-*
-*/
-
-
-#include "tauthcliservstep.h"
-
-using namespace AuthServer;
-
-typedef TTestPluginInterface::TCallEntry TCE;
-
-#define elemCount(___x)		(sizeof(___x) / sizeof(___x[0]))
-
-static TAuthExpressionWrapper BuildLeftAnd(TInt aRemainingLevels);
-static TAuthExpressionWrapper BuildRightAnd(TInt aRemainingLevels);
-static TAuthExpressionWrapper BuildBalancedAnd(TInt aRemainingLevels);
-static TAuthExpressionWrapper BuildFailedAnd(TInt aRemainingLevels);
-static TAuthExpressionWrapper BuildSuccessfulOr(TInt aRemainingLevels);
-
-
-// -------- CTStepActSch --------
-
-
-// -------- CTStepAuthExprEval --------
-
-
-void TTestPluginInterface::Evaluate(TPluginId aPluginId, TIdentityId& aIdentity,
-		   CAuthExpressionImpl::TType /*aType*/, TRequestStatus& aStatus)
-/**
-	Implement MEvaluatorPluginInterface by completing
-	the request with an identity equal to the plugin id.
- */
-	{
-	const TCallEntry ce(aPluginId);
-	TInt r = iCallLog.Append(ce);
-	
-	// this can be KErrNoMemory in OOM tests
-	if (r == KErrNone)
-		{
-		if (aPluginId == KTestPluginUnknown)
-			aIdentity = KUnknownIdentity;
-		else
-			aIdentity = static_cast<TIdentityId>(aPluginId);
-		}
-		
-	aStatus = KRequestPending;
-	TRequestStatus* rs = &aStatus;
-	User::RequestComplete(rs, r);
-	}
-
-
-void TTestPluginInterface::Evaluate(TAuthPluginType aPluginType, TIdentityId& aIdentity, 
-									CAuthExpressionImpl::TType /*aType*/, TRequestStatus& aStatus)
-/**
-	Implement MEvaluatorPluginInterface by completing
-	the request with an identity equal to the plugin type.
- */
-	{
-	const TCallEntry ce(aPluginType);
-	TInt r = iCallLog.Append(ce);
-	
-	// this can be KerrNoMemory in OOM tests
-	if (r == KErrNone)
-		aIdentity = static_cast<TIdentityId>(aPluginType);
-	
-	aStatus = KRequestPending;
-	TRequestStatus* rs = &aStatus;
-	User::RequestComplete(rs, KErrNone);
-	}
-
-
-bool TTestPluginInterface::TCallEntry::operator==(const TTestPluginInterface::TCallEntry& aRhs) const
-	{
-	if (iCallType != aRhs.iCallType)
-		return false;
-	
-	if (iCallType == CAuthExpressionImpl::EPluginId)
-		return iPluginId == aRhs.iPluginId;
-	else
-		return iPluginType == aRhs.iPluginType;
-	}
-
-
-void TTestClientInterface::EvaluationSucceeded(TIdentityId aIdentityId)
-/**
-	Implement MEvaluatorClientInterface by recording
-	that the evaluation succeeded, and the resulting identity.
- */
-	{
-	iMode = ESucceeded;
-	iIdentityId = aIdentityId;
-
-	CActiveScheduler::Stop();
-	}
-
-
-void TTestClientInterface::EvaluationFailed(TInt aReason)
-/**
-	Implement MEvaluatorClientInterface by recording
-	that the evaluation failed, and the failure reason.
- */
-	{
-	iMode = EFailed;
-	iReason = aReason;
-	
-	CActiveScheduler::Stop();
-	}
-
-
-CLaunchEval* CLaunchEval::NewL()
-/**
-	Factory function allocates new instance of CLaunchEval.
-	
-	@return					New instance of CLaunchEval.
- */
-	{
-	CLaunchEval* self = new(ELeave) CLaunchEval();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-
-CLaunchEval::CLaunchEval()
-/**
-	Set timer priority and add self to active scheduler.
- */
-:	CActive(CActive::EPriorityStandard)
-	{
-	CActiveScheduler::Add(this);
-	}
-
-
-void CLaunchEval::ConstructL()
-/**
-	Allocate evaluator and initialize superclass timer.
- */
-	{
-//	CTimer::ConstructL();
-	iEval = CEvaluator::NewL(&iPluginInterface, &iClientInterface);
-	}
-
-
-CLaunchEval::~CLaunchEval()
-/**
-	Deletes evaluator which was allocated for this object.
- */
-	{
-	ResetInterfaces();
-	delete iEval;
-	}
-
-
-void CLaunchEval::ResetInterfaces()
-/**
-	Free resources used by plugin and client interfaces.
- */
-	{
-	iPluginInterface.iCallLog.Reset();
-	iClientInterface.iMode = TTestClientInterface::ENone;
-	}
-
-
-void CLaunchEval::Evaluate(const CAuthExpression* aExpr)
-/**
-	Queue this timer object and start the active
-	scheduler.  This function returns when the evaluation
-	has completed.
-	
-	This object's client and plugin interfaces are reset
-	before the expression is evaluated, so they can be
-	tested by the function which calls this.
-	
-	@param	aExpr			Expression to evaluate.
- */
-	{
-	ResetInterfaces();
-	iExpr = aExpr;			// store so can see in RunL
-	
-	// signal this object.  This ensures there
-	// is a pending active object before the scheduler
-	// is started.
-	iStatus = KRequestPending;
-	TRequestStatus* rs = &iStatus;
-	User::RequestComplete(rs, KErrNone);
-	SetActive();
-	
-	// block until the evaluation has completed.
-	CActiveScheduler::Start();
-	}
-
-
-void CLaunchEval::RunL()
-/**
-	Implement CActive by launching the evaluation.
-	At this point the active scheduler should have
-	been started.
- */
-	{
-	iEval->Evaluate(static_cast<const CAuthExpressionImpl*>(iExpr));
-	}
-
-
-void CLaunchEval::DoCancel()
-/**
-	Implement CActive by cancelling the evaluation
-	which is currently in progress.
-	
-	Not yet implemented.
- */
-	{
-	// empty.
-	}
-
-
-CTStepAuthExprEval::CTStepAuthExprEval()
-/**
-	Record this test step's name.
- */
-	{
-	SetTestStepName(KTStepAuthExprTypePncBadRight);
-	}
-
-
-TVerdict CTStepAuthExprEval::doTestStepL()
-	{
- 	CActiveScheduler::Install(iActSchd);
- 	User::SetJustInTime(ETrue);
- 	
- 	__UHEAP_MARK;
-	TestEvalCreateL();
-	TestEvalSimpleL();
-	TestEvalAndL();
-	TestEvalOrL();
-	TestRPNReallocL();
-	__UHEAP_MARKEND;
-	
-	return EPass;
-	}
-
-
-void CTStepAuthExprEval::TestEvalCreateL()
-/**
-	Test allocating and deleting an evaluator,
-	without using it for anything.
- */
-	{
-	__UHEAP_MARK;
-	
-	TTestClientInterface tci;
-	TTestPluginInterface tpi;
-	
-	CEvaluator* ev = CEvaluator::NewL(&tpi, &tci);
-	delete ev;
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprEval::TestEvalSimpleL()
-/**
-	Test evaluating a simple plugin id, and
-	evaluating a simple plugin type.
- */
-	{
-	__UHEAP_MARK;
-	
-	CLaunchEval* le = CLaunchEval::NewL();
-	CleanupStack::PushL(le);
-
-	// simple plugin id	
-	CAuthExpression* aeId = AuthExpr(KTestPluginId0);
-	User::LeaveIfNull(aeId);
-	le->Evaluate(aeId);
-	delete aeId;
-	
-	const TCE aceI0[] = {TCE(KTestPluginId0)};
-	TestEvalResultL(le, KTestPluginId0, aceI0, elemCount(aceI0));
-	
-	// simple plugin type
-	CAuthExpression* aeType = AuthExpr(EAuthBiometric);
-	User::LeaveIfNull(aeType);
-	le->Evaluate(aeType);
-	delete aeType;
-	
-	const TCE aceTB[] = {TCE(EAuthBiometric)};
-	TestEvalResultL(le, EAuthBiometric, aceTB, elemCount(aceTB));
-	
-	CleanupStack::PopAndDestroy(le);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprEval::TestEvalAndL()
-/**
-	Test evaluating simple AND expressions.
- */
-	{
-	__UHEAP_MARK;
-	
-	CLaunchEval* le = CLaunchEval::NewL();
-	CleanupStack::PushL(le);
-
-	// U & U = U (sc)
-	CAuthExpression* aeUU = AuthAnd(AuthExpr(KTestPluginUnknown), AuthExpr(KTestPluginUnknown));
-	User::LeaveIfNull(aeUU);
-	le->Evaluate(aeUU);
-	delete aeUU;
-
-	const TCE aceUU[] = {TCE(KTestPluginUnknown)};
-	TestEvalResultL(le, KUnknownIdentity, aceUU, elemCount(aceUU));
-
-	// U & I1 = U (sc)
-	CAuthExpression* aeUI1 = AuthAnd(AuthExpr(KTestPluginUnknown), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(aeUI1);
-	le->Evaluate(aeUI1);
-	delete aeUI1;
-	
-	const TCE aceUI1[] = {TCE(KTestPluginUnknown)};
-	TestEvalResultL(le, KUnknownIdentity, aceUI1, elemCount(aceUI1));
-	
-	// I1 & U = U
-	CAuthExpression* aeI1U = AuthAnd(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginUnknown));
-	User::LeaveIfNull(aeI1U);
-	le->Evaluate(aeI1U);
-	delete aeI1U;
-
-	const TCE aceI1U[] = {TCE(KTestPluginId1), TCE(KTestPluginUnknown)};
-	TestEvalResultL(le, KUnknownIdentity, aceI1U, elemCount(aceI1U));
-	
-	// I1 & I1 = I1
-	CAuthExpression* aeI1I1 = AuthAnd(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(aeI1I1);
-	le->Evaluate(aeI1I1);
-	delete aeI1I1;
-
-	const TCE aceI1I1[] = {TCE(KTestPluginId1), TCE(KTestPluginId1)};
-	TestEvalResultL(le, KTestPluginId1, aceI1I1, elemCount(aceI1I1));
-	
-	// I1 & I2 = U
-	CAuthExpression* aeI1I2 = AuthAnd(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId2));
-	User::LeaveIfNull(aeI1I2);
-	le->Evaluate(aeI1I2);
-	delete aeI1I2;
-	
-	const TCE aceI1I2[] = {TCE(KTestPluginId1), TCE(KTestPluginId2)};
-	TestEvalResultL(le, KUnknownIdentity, aceI1I2, elemCount(aceI1I2));
-	
-	CleanupStack::PopAndDestroy(le);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprEval::TestEvalOrL()
-/**
-	Test evaluating simple OR expressions.
- */
-	{
-	__UHEAP_MARK;
-	
-	CLaunchEval* le = CLaunchEval::NewL();
-	CleanupStack::PushL(le);
-
-	// U | U = U
-	CAuthExpression* aeUU = AuthOr(AuthExpr(KTestPluginUnknown), AuthExpr(KTestPluginUnknown));
-	User::LeaveIfNull(aeUU);
-	le->Evaluate(aeUU);
-	delete aeUU;
-	
-	const TCE aceUU[] = {TCE(KTestPluginUnknown), TCE(KTestPluginUnknown)};
-	TestEvalResultL(le, KUnknownIdentity, aceUU, elemCount(aceUU));
-	
-	// U | I1 = I1
-	CAuthExpression* aeUI1 = AuthOr(AuthExpr(KTestPluginUnknown), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(aeUI1);
-	le->Evaluate(aeUI1);
-	delete aeUI1;
-	
-	const TCE aceUI1[] = {TCE(KTestPluginUnknown), TCE(KTestPluginId1)};
-	TestEvalResultL(le, KTestPluginId1, aceUI1, elemCount(aceUI1));
-	
-	// I1 | U = I1 (sc)
-	CAuthExpression* aeI1U = AuthOr(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginUnknown));
-	User::LeaveIfNull(aeI1U);
-	le->Evaluate(aeI1U);
-	delete aeI1U;
-	
-	const TCE aceI1U[] = {TCE(KTestPluginId1)};
-	TestEvalResultL(le, KTestPluginId1, aceI1U, elemCount(aceI1U));
-	
-	// I1 | I1 = I1 (sc)
-	CAuthExpression* aeI1I1 = AuthOr(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId1));
-	User::LeaveIfNull(aeI1I1);
-	le->Evaluate(aeI1I1);
-	delete aeI1I1;
-	
-	const TCE aceI1I1[] = {TCE(KTestPluginId1)};
-	TestEvalResultL(le, KTestPluginId1, aceI1I1, elemCount(aceI1I1));
-	
-	// I1 | I2 = I1 (sc)
-	CAuthExpression* aeI1I2 = AuthOr(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId2));
-	User::LeaveIfNull(aeI1I2);
-	le->Evaluate(aeI1I2);
-	delete aeI1I2;
-	
-	const TCE aceI1I2[] = {TCE(KTestPluginId1)};
-	TestEvalResultL(le, KTestPluginId1, aceI1I2, elemCount(aceI1I2));
-	
-	CleanupStack::PopAndDestroy(le);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepAuthExprEval::TestEvalResultL(
-	CLaunchEval* aLaunchEval, TIdentityId aIdentityId,
-	const TTestPluginInterface::TCallEntry* aExpEntries, TInt aEntryCount)
-/**
-	Test the evaluation produced the expected result, and
-	that the expected plugins were called in the right order.
- */
-	{
-	const TTestClientInterface& cli = aLaunchEval->iClientInterface;
-	TESTL(cli.iMode == TTestClientInterface::ESucceeded);
-	TESTL(cli.iIdentityId == aIdentityId);
-	
-	const RArray<TCE>& log = aLaunchEval->iPluginInterface.iCallLog;
-	
-	TESTL(log.Count() == aEntryCount);
-	for (TInt i = 0; i < aEntryCount; ++i)
-		{
-		TESTL(log[i] == aExpEntries[i]);
-		}
-	}
-
-
-static TAuthExpressionWrapper BuildLeftAnd(TInt aRemainingLevels)
-/**
-	Build an expression where the left side is an
-	AND expression and the right side is a plugin ID.
-	
-	@param	aRemainingLevels The number of layers to build
-							below this layer.  If
-							aRemainingLevels == 0 this function
-							returns a simple plugin ID expression.
- */
-	{
-	return (aRemainingLevels == 0)
-		?	AuthExpr(KTestPluginId1)
-		:	AuthAnd(BuildLeftAnd(aRemainingLevels - 1), AuthExpr(KTestPluginId1));
-	}
-
-
-static TAuthExpressionWrapper BuildRightAnd(TInt aRemainingLevels)
-/**
-	Build an expression where the left side is a
-	plugin ID and the right side is an AND expression.
-
-	@param	aRemainingLevels The number of layers to build
-							below this layer.  If
-							aRemainingLevels == 0 this function
-							returns a simple plugin ID expression.
- */
-	{
-	return (aRemainingLevels == 0)
-		?	AuthExpr(KTestPluginId1)
-		:	AuthAnd(AuthExpr(KTestPluginId1), BuildRightAnd(aRemainingLevels - 1));
-	}
-
-
-static TAuthExpressionWrapper BuildBalancedAnd(TInt aRemainingLevels)
-/**
-	Build an expression where both the left and right side
-	have the same depth, aRemainingLevels - 1.
-	
-	@param	aRemainingLevels The number of layers to build
-							below this layer.  If
-							aRemainingLevels == 0 this function
-							returns a simple plugin ID expression.
- */
-	{
-	return (aRemainingLevels == 0)
-		?	AuthExpr(KTestPluginId1)
-		:	AuthAnd(
-				BuildBalancedAnd(aRemainingLevels - 1),
-				BuildBalancedAnd(aRemainingLevels - 1));
-	}
-
-
-static TAuthExpressionWrapper BuildFailedAnd(TInt aRemainingLevels)
-/**
-	This function creates an expression where the left node
-	is a simple plugin ID expression and the right node is
-	built recursively with this function.  The final AND node
-	has a left unknown plugin ID.
-	
-	This causes an unknown plugin ID to be automatically pushed
-	onto the RPN stack as a right value before the compounder is used.
-	
-	@param	aRemainingLevels Number of levels to generate after this.
-							If aRemainingLevels == 1 this function
-							creates an AND node where the left node
-							is unknown.  Otherwise it generates an
-							AND node where the left node is a known
-							plugin ID and the right node is generated
-							recursively.
- */
-	{
-	return (aRemainingLevels == 1)
-		?	AuthAnd(AuthExpr(KTestPluginUnknown), AuthExpr(KTestPluginId1))
-		:	AuthAnd(AuthExpr(KTestPluginId1), BuildFailedAnd(aRemainingLevels - 1));
-	}
-
-
-static TAuthExpressionWrapper BuildSuccessfulOr(TInt aRemainingLevels)
-/**
-	This function creates an AND node where the left node
-	is a known plugin ID, and the right right node is generated
-	recursively.  This creates a right-descent list, but the
-	penultimate node is an OR expression whose left node is a
-	known plugin ID.
-	
-	This puts a series of known plugin IDs on the RPN stack from
-	the left nodes of the AND nodes.  When the OR node is evaluated
-	the left node is known, and so automatically put on the
-	RPN stack.
-	
-	This means that an OR right node is automatically put on the
-	RPN stack at a known point, which is used to stress test failing
-	to append an OR right expression in OOM.
-
-	@param	aRemainingLevels Number of levels to generate after this.
-							If aRemainingLevels == 1 this function
-							generates an OR node.  Otherwise it creates
-							and AND node as described above.
- */
-	{
-	return (aRemainingLevels == 1)
-		?	AuthOr(AuthExpr(KTestPluginId1), AuthExpr(KTestPluginId1))
-		:	AuthAnd(AuthExpr(KTestPluginId1), BuildSuccessfulOr(aRemainingLevels - 1));
-	}
-
-
-void CTStepAuthExprEval::TestRPNReallocL()
-/**
-	Create a deeply nested expression which is
-	deep enough that the evaluator has to reallocate
-	its RPN stack, and checks the evaluation fails
-	gracefully in OOM.
- */
-	{
-	__UHEAP_MARK;
-	
-	RunOomTestsL(BuildLeftAnd, KTestPluginId1, 0);
-	RunOomTestsL(BuildRightAnd, KTestPluginId1, 0);
-	RunOomTestsL(BuildBalancedAnd, KTestPluginId1, 0);
-	RunOomTestsL(BuildFailedAnd, KUnknownIdentity, 1);
-	RunOomTestsL(BuildSuccessfulOr, KTestPluginId1, 1);
-	
-	__UHEAP_MARKEND;
-	}
-
-	
-void CTStepAuthExprEval::RunOomTestsL(
-	TAuthExpressionWrapper (*aAllocator)(TInt),
-	TIdentityId aExpectedIdentity, TInt aInitDepth)
-/**
-	Attempt to evaluate the supplied expresision in OOM.
-	
-	Running in OOM will both fail the evaluation, when the
-	plugin interface attempts to append to the call log, and
-	when the evaluator attempts to extend the RPN stack.
-	
-	OOM can only be tested in debug builds.  In release builds,
-	this function evaluates the expression at each depth and
-	tests the evaluator produces the correct result.
-	
-	@param	aAllocator		Function which allocates the expression.
-	@param	aExpectedIdentity Identity which should be returned on
-							successful evaluation.
-	@param	aInitDepth		Initial depth.
- */
-	{
-	CLaunchEval* le = CLaunchEval::NewL();
-	User::LeaveIfNull(le);
-	CleanupStack::PushL(le);
-	
-	const volatile TTestClientInterface& cli = le->iClientInterface;
-	
-	// depth starts at zero because, even though RPN stack
-	// is not used, the evaluator will attempt to grow its
-	// call log, and so fail the evaluation.  (This test is
-	// therefore also used to test failed plugin evaluations.)
-	
-	// max depth is 13 because CStepControl::StartL creates
-	// a worker thread with a 1MB maximum heap.  The
-	// number of allocated node cells for a balanced tree
-	// is 2^(depth+1) - 1.  When depth==13, there are
-	// 16383 cells using 327,672 bytes excluding cell headers.
-	// Allocation fails for depth == 14.
-	
-	const TInt KMaxDepth = 13;
-	for (TInt depth = aInitDepth; depth <= KMaxDepth; ++depth)
-		{
-		CAuthExpression* ae = aAllocator(depth);
-		User::LeaveIfNull(ae);
-		CleanupStack::PushL(ae);
-		
-		// OOM testing only available in debug builds
-#ifndef _DEBUG
-		le->Evaluate(ae);
-		TESTL(cli.iMode == TTestClientInterface::ESucceeded);
-		TESTL(cli.iIdentityId == aExpectedIdentity);
-#else
-		TInt i = 0;
-		do
-			{
-			// Ideally, the heap would be marked before and
-			// after the evaluation.  However, CEvaluator uses
-			// an CArrayFixFlat<TIdentityId> to store the RPN stack.
-			// When the first item is inserted, it allocates a
-			// CBufBase object to hold the data.  This object
-			// is reset but not deleted when the RPN stack is
-			// reset, so there will be a heap imbalance of one
-			// if anything was added to the RPN stack, even though
-			// the stack is reset.
-			
-			TInt preSize;
-			TInt preCount = User::AllocSize(preSize);
-//			__UHEAP_MARK;
-			
-			__UHEAP_SETFAIL(RAllocator::EDeterministic, i);
-			le->Evaluate(ae);
-			__UHEAP_RESET;
-			
-			TESTL(	cli.iMode == TTestClientInterface::EFailed
-				||	cli.iMode == TTestClientInterface::ESucceeded);
-			
-			if (cli.iMode == TTestClientInterface::EFailed)
-				{
-				TESTL(cli.iReason == KErrNoMemory);
-				}
-			else
-				{
-				TESTL(cli.iIdentityId == aExpectedIdentity);
-				}
-			
-			// clear call log so heap checking will work
-			le->iPluginInterface.iCallLog.Reset();
-			++i;
-
-			TInt postSize;
-			TInt postCount = User::AllocSize(postSize);			
-			TESTL(postCount == preCount || postCount == preCount + 1);
-//			__UHEAP_MARKEND;
-			} while (cli.iMode != TTestClientInterface::ESucceeded);
-		
-		// test evaluation still succeeds and failed allocation
-		// was not ignored
-		TInt limit = 2 * i;
-		while (i++ < limit)
-			{
-			__UHEAP_SETFAIL(RAllocator::EDeterministic, i++);
-			le->Evaluate(ae);
-			__UHEAP_RESET;
-			
-			TESTL(cli.iMode == TTestClientInterface::ESucceeded);
-			TESTL(cli.iIdentityId == aExpectedIdentity);
-			}
-
-		// clear plugin call log to reset mem usage for next iteration.
-		le->iPluginInterface.iCallLog.Reset();
-#endif	// #else #ifndef _DEBUG
-		CleanupStack::PopAndDestroy(ae);
-		}
-	
-	CleanupStack::PopAndDestroy(le);
-	}
-
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_base.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tauthcliservstep.h"
-
-using namespace AuthServer;
-
-
-void CTAuthcliservStepBase::WaitForServerToReleaseDb()
-/**
-	Wait for the server to shut down and so
-	release the authentication database.
- */
-	{
-	TFullName name;
-	for (;;)
-		{
-		TFindServer find(::KAuthServerName);
-		if (find.Next(name) != KErrNone)
-			{
-			break;
-			}
-
-		// Wait for server to terminate
-		User::After(1 * 1000 * 1000);
-		}
-	}
-
-
-void CTAuthcliservStepBase::RemoveExistingDbL()
-/**
-	Remove any existing database file.
- */
-	{
-	WaitForServerToReleaseDb();
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	
-	TFileName dbName(KDbName);
-	dbName[0] = 'A' + sysDrive;	
-	TInt r = iFs.Delete(dbName);
-	User::LeaveIfError(r);
-	
-	//Reset the data 'AllUserID&PinValues' in AuthSvrPolicy.ini & the 
-	// individual plugin Db files
-	//_LIT(KInitPinDatabaseValue, ",");
-	TBufC<16> initPinDbBuffer(KInitPinDatabaseValue);
-	TPtr valueToWrite = initPinDbBuffer.Des();
-	
-	TBuf<64> fileName (sysDriveName);
-	fileName.Append(KAuthSvrPolicyFile);
-	writeToNamedConfig(fileName, KTotalDbTag, valueToWrite);
-	
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3100File);
-	writeToNamedConfig(fileName, KPinDbTag, valueToWrite);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3101File);
-	writeToNamedConfig(fileName, KPinDbTag, valueToWrite);
-
-	fileName.Copy(sysDriveName);
-	fileName.Append(KPlugin3102File);
-	writeToNamedConfig(fileName, KPinDbTag, valueToWrite); 
-	}
-
-TInt CTAuthcliservStepBase::writeToNamedConfig(const TDesC &aFileName, const TDesC &aKeyName,const TPtrC &aResult)
-	{
-	
-	TInt retValue = KErrNone;
-	CIniData* file=NULL;
-	TRAPD(r,file=CIniData::NewL(aFileName));
-	
-	if(r!=KErrNone)
-		{
-		RDebug::Print(_L("Unable to create CIniData object. Error = %d, File = %S"), r, &aFileName);
-		retValue = r;
-		}
-	
-	else
-		{
-		// Look for a key under no named section, retrieve text value	
-		
-		TInt ret = KErrNone;	//return value from FindVar functions
-		ret=file->SetValue(aKeyName ,aResult);
-		if(ret != KErrNone)
-			{
-			if(ret == KErrNotFound)
-				{
-				RDebug::Print(_L("Key not found. Unable to set value in ini file. Filename: %S, KeyName = %S, value = %S."), &aFileName, &aKeyName, &aResult);
-				}			
-			else
-				{
-				RDebug::Print(_L("Unable to set value in ini file. Filename: %S, KeyName = %S, value = %S."), &aFileName, &aKeyName, &aResult);
-				}
-			retValue = ret;
-			}
-		TRAPD(r,file->WriteToFileL());
-		if (KErrNone != r)
-			{
-			RDebug::Print(_L("Error occurred while writing to the file. Filename = %S, KeyName = %S, value = %S."), &aFileName, &aKeyName, &aResult);
-			}
-		delete file;
-		}
-	return retValue;	
-	}
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_client.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,820 +0,0 @@
-/*
-* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <test/testexecutelog.h>
-#include "tauthcliservstep.h"
-#include "authserver/aspubsubdefs.h"
-#include <e32property.h>
-#include <authserver/authpatchdata.h>
-#include <u32hal.h>
-#include <e32svr.h>
- 
-using namespace AuthServer;
-
-class CAuthActive : CActive
-    {
-public:
-    CAuthActive(RAuthClient& aClient, CIdentity*& aResult, CTStepClient* aStep,
-				TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult), 
-         iStep(aStep),
-		 iStop(aStop)
-	    {
-        CActiveScheduler::Add(this);
-        }
-	
-    void doAuthenticate(TPluginId aPlugin, TTimeIntervalSeconds aTime )
-        {
-		iPlugin = aPlugin;
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iFirstTime = ETrue;
-		iTime = aTime;
-        }
-	
-        void DoCancel() 
-        {
-        }
-        void RunL() 
-        {
-		static TBool client = ETrue;
-		static TBool withString = ETrue;
-		client = !client;
-        if (iFirstTime)
-            {
-			// inactive | plugin id
-            iAe = AuthExpr(0x10274106) | AuthExpr(iPlugin);
-			User::LeaveIfNull(iAe);
-			SetActive();
-            iStatus = KRequestPending;
-            iClient.AuthenticateL(*iAe, iTime, client, withString,
-								  iResult, iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-			if (iStop)
-				{
-				CActiveScheduler::Stop();
-				}
-            delete iAe;
-			}
-		iErr =  iStatus.Int();
-		}
-    TBool iFirstTime;
-    RAuthClient& iClient;
-    CIdentity*& iResult;
-    CTStepClient* iStep;
-    CAuthExpression* iAe;
-    TPluginId        iPlugin;
-	TTimeIntervalSeconds iTime;
-	TInt iErr;
-	TBool iStop;
-    };
-
-
-
-const TPluginId KIdentity1Id = 0xE0494423;
-_LIT(KIdentity1Desc, "identity-1-desc");
-const TPluginId KIdentity2Id = 0xE0494443;
-_LIT(KIdentity2Desc, "identity-2-desc");
-const TPluginId KIdentity3Id = 0xE0494453;
-
-
-
-CTStepClient::CTStepClient()
-/**
-	Record this test step's name.
- */
-	{
- 	SetTestStepName(KTStepClient);
-	}
-
-
-void CTStepClient::TestIdentitiesL()
-/**
-	Test can retrieve correct identity arrays and
-	descritptinos from auth db.
- */
-	{
-	__UHEAP_MARK;
-	RemoveExistingDbL();
-	
-	RArray<TIdentityId> ids;
-	
-
-	// one identities (first start adds one)
-	GetIdentitiesLC(ids);
-	TESTL(ids.Count() == 1);
-	CleanupStack::PopAndDestroy(&ids);
-
-	
-	// two identity
-	AddIdentityL(KIdentity1Id, KIdentity1Desc);
-	GetIdentitiesLC(ids);
-	TESTL(ids.Count() == 2);
-	TESTL(ids[0] == KIdentity1Id || ids[1] == KIdentity1Id);
-	CleanupStack::PopAndDestroy(&ids);
-	TestIdentityL(KIdentity1Id, KIdentity1Desc);
-	
-	
-	// three identities
-	AddIdentityL(KIdentity2Id, KIdentity2Desc);
-	GetIdentitiesLC(ids);
-	TESTL(ids.Count() == 3);
-	TESTL(	ids.Find(KIdentity1Id) >= 0 && 
-	        ids.Find(KIdentity2Id) >= 0);
-	CleanupStack::PopAndDestroy(&ids);
-	TestIdentityL(KIdentity1Id, KIdentity1Desc);
-	TestIdentityL(KIdentity2Id, KIdentity2Desc);
-
-	// test fail to get description for non-existent identity
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-	
-	
-	TRAPD(r, ac.IdentityStringL(KIdentity3Id));
-	TESTL(r == KErrAuthServIdentityNotFound);
-
-	// check id and string retrieval
-	RIdAndStringArray idWithString;
-	ac.IdentitiesWithStringL(idWithString);
-	CleanupClosePushL(idWithString);
-	
-    for (TInt i = 0 ; i < idWithString.Count() ; ++i)
-	    {
-	    TestIdentityL(idWithString[i]->Id(), *idWithString[i]->String());
-		INFO_PRINTF3(_L("0x%x - %S"), idWithString[i]->Id(), idWithString[i]->String()); 
-	    }
-
-	CleanupStack::PopAndDestroy(2,&ac);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepClient::GetIdentitiesLC(RArray<TIdentityId>& aIds)
-/**
-	Populate the supplied array with the currently available
-	identities, as returned by the server.
-	
-	@param	aIds			Array to populate.  Any existing entries
-							are removed when this function is called.
-							On success, the array is placed on the
-							cleanup stack.
- */
-	{
-	aIds.Reset();
-	CleanupClosePushL(aIds);
-	
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-	ac.IdentitiesL(aIds);	// clears array on failure?
-	CleanupStack::PopAndDestroy(&ac);
-	}
-
-
-void CTStepClient::AddIdentityL(TIdentityId aIdentityId, const TDesC& aDesc)
-/**
-	Add the described identity directly to the database.
-	
-	This function does not use the authentication manager APIs.
- */
-	{
-	WaitForServerToReleaseDb();
-	CAuthDb2* db = CAuthDb2::NewL(iFs);
-	CleanupStack::PushL(db);
-	db->AddIdentityL(aIdentityId, aDesc);
-	CleanupStack::PopAndDestroy(db);
-	}
-
-
-void CTStepClient::TestIdentityL(TIdentityId aIdentityId, const TDesC& aExpDesc)
-/**
-	Test the supplied identity has the supplied description,
-	as read via the RAuthClient API.
-	
-	@param	aIdentityId		Identity to retrieve description for.
-	@param	aExpDesc		The expected description.
- */
-	{
-	RAuthClient ac;
-	CleanupClosePushL(ac);
-	User::LeaveIfError(ac.Connect());
-	HBufC* desc = ac.IdentityStringL(aIdentityId);
-	CleanupStack::PushL(desc);
-	TESTL(*desc == aExpDesc);
-	CleanupStack::PopAndDestroy(2, &ac);
-	}
-
-
-/**
-	TestClientPluginListsL poulates this with a description for
-	every plugin that can be seen with ECOM.
- */
-static RCPointerArray<CPluginDesc> allPlugins;
-
-/**
-	Total number of plugins on the device.  Should be equal to
-	allPlugins.Count().
- */
-static TInt totalCount;
-
-/**
-	Maximum number of plugins which can are expected.  This is
-	an arbitrary value which is used to size an array.  It can be
-	changed if required.
- */
-const TInt KMaxSeenCount = 17;
-
-/**
-	This array stores how many times each plugin from allPlugins
-	has been seen.  It is set by SetSeenCountsL.
- */
-static TFixedArray<TInt, KMaxSeenCount> seenCounts;
-
-
-void CTStepClient::GetDescriptionsFromEComL(RPointerArray<CPluginDesc>& aDescs)
-/**
-	Populate the supplied array with plugin descriptions generated
-	from the available ECOM plugins.  The array can then be used to
-	check the results from the server.
- */
-	{
-	WaitForServerToReleaseDb();
-	
-	CAuthDb2* db = CAuthDb2::NewL(iFs);
-	CleanupStack::PushL(db);
-	
-	// typedef RPointerArray<CImplementationInformation> RImplInfoPtrArray;
-	RCPointerArray<CImplementationInformation> implInfo;
-	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid, implInfo);
-	CleanupClosePushL(implInfo);
-	
-	TInt implCount = implInfo.Count();
-	TInt err = 0;
-	for (TInt i = 0; i < implCount; ++i)
-		{
-		// avoid RVCT warning C2874W: pi may be used before being set
-		CAuthPluginInterface* pi = 0;
-
-		TEComResolverParams resolverParams;
-		TBufC8<16> pluginIdTxt;
-		  
-		pluginIdTxt.Des().Format(_L8("%x"), implInfo[i]->ImplementationUid().iUid);
-		pluginIdTxt.Des().UpperCase();	  
-		resolverParams.SetDataType(pluginIdTxt);
-		 
-		//To load plugins from sources other than ROM the patch 
-		// data KEnablePostMarketAuthenticationPlugins must be set to True.
-		TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-#ifdef __WINS__
-
-    	// Default SymbianOS behavior is to only load auth plugins from ROM.
-		enablePostMarketPlugin = 0;
-
-		// For the emulator allow the constant to be patched via epoc.ini
-		UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-		(TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-#endif			  
-		TAny* plugin = 0; 
-		TUid Dtor_ID_Key = TUid::Null();
-		if(enablePostMarketPlugin == 0) 
-			{
-			TRAP(err, plugin = 
-			REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-												Dtor_ID_Key,
-												resolverParams,
-												KRomOnlyResolverUid));
-			}
-			  
-		else
-		  	{
-		  	TRAP(err, plugin = 
-			REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-												Dtor_ID_Key,
-												resolverParams));
-		  	}
-					  
-		if (err == KErrAuthServNoSuchPlugin)
-			continue;
-		User::LeaveIfError(err);
-		pi = reinterpret_cast<CAuthPluginInterface*>(plugin);	
-	
-		// get training status from db
-		TAuthTrainingStatus ts = db->PluginStatusL(pi->Id());
-		
-		CleanupStack::PushL(pi);
-		CPluginDesc* pd = CPluginDesc::NewL(
-			pi->Id(), pi->Name(), pi->Type(),
-			ts, pi->MinEntropy(),
-			pi->FalsePositiveRate(), pi->FalseNegativeRate() );
-		CleanupStack::PopAndDestroy(pi);
-		REComSession::DestroyedImplementation(Dtor_ID_Key);
-		
-		CleanupStack::PushL(pd);
-		aDescs.AppendL(pd);
-		CleanupStack::Pop(pd);
-		}
-	
-	CleanupStack::PopAndDestroy(2, db);
-	REComSession::FinalClose();
-	}
-
-
-static TBool AreDescsEqual(const CPluginDesc& aLeft, const CPluginDesc& aRight)
-/**
-	Predicate function determines whether the two supplied
-	plugin descriptions contain the same information.
-
-	@param	aLeft			Plugin description to compare to aRight.
-	@param	aRight			Plugin description to compare to aLeft.
-	@return					Zero if the two descriptions contains different
-							information, non-zero otherwise.
- */
-	{
-	return	aLeft.Id() == aRight.Id()
-		&&	*aLeft.Name() == *aRight.Name()
-		&&	aLeft.Type() == aRight.Type()
-		&&	aLeft.TrainingStatus() == aRight.TrainingStatus()
-		&&	aLeft.MinEntropy() == aRight.MinEntropy()
-		&&	aLeft.FalsePositiveRate() == aRight.FalsePositiveRate()
-		&&	aLeft.FalseNegativeRate() == aRight.FalseNegativeRate();
-	}
-
-
-inline TBool AreDescsEqual(const CPluginDesc* aLeftP, const CPluginDesc* aRightP)
-	{
-	return AreDescsEqual(*aLeftP, *aRightP);
-	}
-	
-
-void CTStepClient::SetSeenCountsL(const RCPointerArray<const CPluginDesc>& aPlugins)
-/**
-	Update seenCounts array so each entry contains the
-	number of times that plugin was seen in aPlugins.
- */
-	{
-	const TInt suppliedCount = aPlugins.Count();
-	const TInt totalCount = allPlugins.Count();
-	
-	// i = index into seenCounts
-	for (TInt i = 0; i < totalCount; ++i)
-		{
-		seenCounts[i] = 0;
-		
-		// j = index into aPlugins
-		TInt j = 0;
-		for (; j < suppliedCount; ++j)
-			{
-			if (AreDescsEqual(*allPlugins[i], *aPlugins[j]))
-				{
-				++seenCounts[i];
-				break;		// assume plugins in allPlugins are unique
-				}
-			}
-		
-		// if plugin not found in reference set then abort
-		TESTL(j < totalCount);
-		}
-	}
-
-
-void CTStepClient::TestClientPluginListsL()
-/**
-	Test the expected plugins are returned when the
-	client asks the server to list them.
- */
-	{	
-	__UHEAP_MARK;
-	
-	CleanupClosePushL(allPlugins);
-	GetDescriptionsFromEComL(allPlugins);
-	PrepareTrainedPluginsL();
-	
-	// re-read plugins now training statuses have been set
-	allPlugins.ResetAndDestroy();	
-	GetDescriptionsFromEComL(allPlugins);
-	CleanupClosePushL(allPlugins);
-	
-	totalCount = allPlugins.Count();
-	TESTL(totalCount <= KMaxSeenCount);
-	
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-	
-	// ensure all plugins are returned by PluginsL
-	RCPointerArray<const CPluginDesc> fullPlugins;
-	ac.PluginsL(fullPlugins);
-	CleanupClosePushL(fullPlugins);
-	TESTL(fullPlugins.Count() == totalCount);
-	SetSeenCountsL(fullPlugins);
-	for (TInt k = 0; k < totalCount; ++k)
-		{
-		TESTL(seenCounts[k] == 1);
-		}
-	CleanupStack::PopAndDestroy(&fullPlugins);
-	
-	// ensure expected plugins are returned for each type
-	TestTypedPluginsL(ac, EAuthKnowledge);
-	TestTypedPluginsL(ac, EAuthBiometric);
-	TestTypedPluginsL(ac, EAuthToken);
-
-	TestActivePluginsL(ac);
-	
-	CleanupStack::PopAndDestroy(&ac);
-	
-	TestTrainedPluginsL();
-	
-	CleanupStack::PopAndDestroy(2, &allPlugins);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepClient::TestTypedPluginsL(RAuthClient& aClient,
-									 TAuthPluginType aPluginType)
-/**
-	Ensure the plugin descriptions returned by the server
-	match those directly seen by ECOM.
-	
-	@param	aPluginType		Type of plugin to retrieve.
- */
-	{
-	__UHEAP_MARK;
-	RCPointerArray<const CPluginDesc> typedPlugins;
-	aClient.PluginsOfTypeL(aPluginType, typedPlugins);
-	CleanupClosePushL(typedPlugins);
-	SetSeenCountsL(typedPlugins);
-	
-	for (TInt k = 0; k < totalCount; ++k)
-		{
-		TInt& recCount = seenCounts[k];
-		TESTL(recCount == (allPlugins[k]->Type() == aPluginType) ? 1 : 0);
-		}
-	
-	CleanupStack::PopAndDestroy(&typedPlugins);
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepClient::TestActivePluginsL(RAuthClient& aClient)
-/**
-	Ensure the plugin descriptions returned by the server
-	match those directly seen by ECOM.
- */
-	{
-	__UHEAP_MARK;
-	RCPointerArray<const CPluginDesc> activePlugins;
-	aClient.ActivePluginsL(activePlugins);
-	CleanupClosePushL(activePlugins);
-		
-	CleanupStack::PopAndDestroy(&activePlugins);
-	__UHEAP_MARKEND;
-	}
-
-void CTStepClient::TestTrainedPluginsL()
-/**
-	Test the expected plugins are returned when filtering
-	for training types.
-	
-	@param	aClient			Client with open connection to auth server.
- */
-	{
-	RCPointerArray<const CPluginDesc> pids;
-	CleanupClosePushL(pids);
-	
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-	
-	const CPluginDesc* pdsc0 = allPlugins[0];
-	const CPluginDesc* pdsc1 = allPlugins[1];
-	const CPluginDesc* pdsc2 = allPlugins[2];
-	const CPluginDesc* pdsc3 = allPlugins[3];
-
-	ac.PluginsWithTrainingStatusL(EAuthUntrained, pids);
-	TInt filterCount = pids.Count();
-	TESTL(filterCount == totalCount - 4);
-	for (TInt i = 0; i < filterCount; ++i)
-	{
-		const CPluginDesc* pidF = pids[i];
-		TBool eq0 = AreDescsEqual(pidF, pdsc0);
-		TBool eq1 = AreDescsEqual(pidF, pdsc1);
-		TBool eq2 = AreDescsEqual(pidF, pdsc2);
-		TBool eq3 = AreDescsEqual(pidF, pdsc3);
-		TESTL(!eq0 && !eq1 && !eq2 && !eq3);
-		}
-
-	pids.ResetAndDestroy();
-	ac.PluginsWithTrainingStatusL(EAuthTrained, pids);
-	TESTL(pids.Count() == 2);
-	TESTL(	(AreDescsEqual(pids[0], pdsc0) && AreDescsEqual(pids[1], pdsc1))
-		||	(AreDescsEqual(pids[0], pdsc1) && AreDescsEqual(pids[1], pdsc0)) );
-	
-	pids.ResetAndDestroy();
-	ac.PluginsWithTrainingStatusL(EAuthFullyTrained, pids);
-	TESTL(pids.Count() == 2);
-	TESTL(	(AreDescsEqual(pids[0], pdsc2) && AreDescsEqual(pids[1], pdsc3))
-		||	(AreDescsEqual(pids[0], pdsc3) && AreDescsEqual(pids[1], pdsc2)) );
-	
-	CleanupStack::PopAndDestroy(2, &pids);
-	}
-
-
-void CTStepClient::PrepareTrainedPluginsL()
-/**
-	Helper function for TestTrainedPluginsL.
-	
-	Train some plugins so they can be filtered out later.
-	This function replaces the database.
- */
-	{
-	// There have to be at least four available plugins
-	// to run the training status test.
-	TESTL(allPlugins.Count() >= 4);
-	
-	RemoveExistingDbL();
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-
-	db->AddIdentityL(KIdentity1Id, KIdentity1Desc);
-	db->AddIdentityL(KIdentity2Id, KIdentity2Desc);
-
-	const CTransientKeyInfo& tki = *iId1Keys[0];
-	
-	// partially train plugins zero and one
-	TPluginId pid0 = allPlugins[0]->Id();
-	TPluginId pid1 = allPlugins[1]->Id();
-	db->SetTrainedPluginL(KIdentity1Id, pid0, tki);
-	db->SetTrainedPluginL(KIdentity2Id, pid1, tki);
-
-	// fully train plugins two and three
-	TPluginId pid2 = allPlugins[2]->Id();
-	TPluginId pid3 = allPlugins[3]->Id();
-	db->SetTrainedPluginL(KIdentity1Id, pid2, tki);
-	db->SetTrainedPluginL(KIdentity2Id, pid2, tki);
-	db->SetTrainedPluginL(KIdentity1Id, pid3, tki);
-	db->SetTrainedPluginL(KIdentity2Id, pid3, tki);
-
-	CleanupStack::PopAndDestroy(db);
-	}
-
-TBool CTStepClient::TestMultiAuthL()
-	{
-	INFO_PRINTF1(_L("Testing only a single client can make an auth "));
-	INFO_PRINTF1(_L("request at any one time"));	
-	
-	RAuthClient ac1;
-	User::LeaveIfError(ac1.Connect());
-	CleanupClosePushL(ac1);
-
-	RAuthClient ac2;
-	User::LeaveIfError(ac2.Connect());
-	CleanupClosePushL(ac2);
-
-    CIdentity* result1 = 0;
-    CAuthActive active1(ac1, result1, this);
-    active1.doAuthenticate(KTestPluginBlocking,0);
-
-    CIdentity* result2 = 0;
-    CAuthActive active2(ac2, result2, this, EFalse);
-    active2.doAuthenticate(KTestPluginBlocking,0);
-	
-	CActiveScheduler::Start();
-
-    TEST(active1.iErr == KErrNone);
-	TEST(active2.iErr == KErrServerBusy);
-	
-    delete result1;
-	delete result2;
-	
-	CleanupStack::PopAndDestroy(2,&ac1);
-	return ETrue;
-	}
-
-
-TBool CTStepClient::TestAuthenticateL()
-/**
-	Send simple authentication request.
- */
-	{
-	// create a transient key
-	CProtectionKey* key = CProtectionKey::NewLC(8);
-	CTransientKeyInfo* tki = CTransientKeyInfo::NewLC(KTestPluginId22);
-	
-	CTransientKey* tk = tki->CreateTransientKeyL(KIdentifyData);
-	CleanupStack::PushL(tk);
-	
-	CEncryptedProtectionKey* epKey = tk->EncryptL(*key);
-	CleanupStack::PushL(epKey);
-	
-	tki->SetEncryptedProtectionKeyL(epKey);
-	CleanupStack::Pop(epKey);	// now owned by tki
-	
-	// create identity 22, which identified by test plugin
-	WaitForServerToReleaseDb();
-	CAuthDb2* db = CAuthDb2::NewL(iFs);
-	CleanupStack::PushL(db);	
-	db->AddIdentityL(22, _L("22-desc"));
-	db->SetTrainedPluginL(22, KTestPluginId22, *tki);
-
-	CleanupStack::PopAndDestroy(4, key);	// tki, tk, db
-	
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-
-	RAuthMgrClient amc;
-	User::LeaveIfError(amc.Connect());
-	CleanupClosePushL(amc);
-
-	TInt eventId = KUnknownIdentity;
-	TLastAuth lastAuth;
-	TPckg<TLastAuth> lastAuthPckg(lastAuth);
-
-	TInt err = RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth,
-							  lastAuthPckg);
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, eventId);
-	TESTL(eventId == KUnknownIdentity);
-	TESTL(lastAuth.iId == KUnknownIdentity);
-	TESTL(lastAuth.iAuthTime == 0);
-	TESTL(lastAuth.iMaxCombinations == 0);
-	TESTL(lastAuth.iFalsePositiveRate == 0);
-	TESTL(lastAuth.iFalseNegativeRate == 0);
-	TESTL(lastAuth.iNumFactors == 0);
-	
-	// authenticate the client with the test plugin but using type
-	
-	amc.SetPreferredTypePluginL(EAuthKnowledge,
-								KTestPluginId22);
-    CleanupStack::PopAndDestroy(&amc);
-	TESTL(KTestPluginId22 == ac.PreferredTypePluginL(EAuthKnowledge));
-
-	CAuthExpression* ae = AuthExpr(EAuthKnowledge);		// plugin type
-	User::LeaveIfNull(ae);
-	CleanupStack::PushL(ae);
-
-    CIdentity* result = 0;
-    result = ac.AuthenticateL(
-    	*ae,		// aExpression
-    	0,			// aTimeout
-    	ETrue,     // aClientSpecificKey       
-		EFalse);	// aWithString
-	INFO_PRINTF3(_L("1. Id = 0x%x , KeyLength = %d\n"), result->Id(),
-				 result->Key().KeyData().Size());
-	TESTL(result->Id() == 22);
-	delete result;
-
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth, lastAuthPckg);
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, eventId);
-	TESTL(eventId == eventId);
-	TESTL(lastAuth.iId == 22);
-	TTime now;
-	TTimeIntervalSeconds since;
-	now.UniversalTime();
-	now.SecondsFrom(lastAuth.iAuthTime, since);
-	TESTL(since < TTimeIntervalSeconds(5));
-	TESTL(lastAuth.iMaxCombinations == KEntropy);
-	TESTL(lastAuth.iFalsePositiveRate == KFalsePos);
-	TESTL(lastAuth.iFalseNegativeRate == KFalseNeg);
-	TESTL(lastAuth.iNumFactors == 1);
-	
-	
-	// authenticate again, to get cached value
-    result = ac.AuthenticateL(
-    	*ae,		// aExpression
-    	55,			// aTimeout
-    	ETrue,      // aClientSpecificKey
-		ETrue);	    // aWithString
-	TDesC p = result->String();
-	INFO_PRINTF4(_L("2. Id = 0x%x , KeyLength = %d, String = %S\n"), result->Id(),
-				 result->Key().KeyData().Size(), &p);
-	TESTL(result->Id() == 22);
-	delete result;
-
-	
-	// deauthenticate
-	TRAP(err, ac.DeauthenticateL());
-	TESTL(err == KErrNone);
-
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerLastAuth, lastAuthPckg);
-	RProperty::Get(KAuthServerSecureId, KUidAuthServerAuthChangeEvent, eventId);
-	TESTL(eventId == KUnknownIdentity);
-	TESTL(lastAuth.iId == KUnknownIdentity);	
-	TESTL(lastAuth.iAuthTime == 0);
-	TESTL(lastAuth.iMaxCombinations == 0);
-	TESTL(lastAuth.iFalsePositiveRate == 0);
-	TESTL(lastAuth.iFalseNegativeRate == 0);
-	TESTL(lastAuth.iNumFactors == 0);
-		
-    result = 0;
-    CAuthActive active(ac, result, this);
-    active.doAuthenticate(KTestPluginId22,0);		
-	CActiveScheduler::Start();
-	INFO_PRINTF3(_L("3. Id = 0x%x , KeyLength = %d"), result->Id(),
-				 result->Key().KeyData().Size());
-    TESTL(result->Id() == 22);
-	delete result;
-
-	
-	// unknown
-    result = 0;
-    active.doAuthenticate(KTestPluginIdUnknown,0);		
-	CActiveScheduler::Start();
-	INFO_PRINTF2(_L("4. Id = 0x%x"),result->Id());
-	TESTL(result->Id() == KUnknownIdentity);
-	delete result;
-
-	
-	// failure (bad plugin)
-    result = 0;
-    active.doAuthenticate(0xD0DAD0DA,0);		
-	CActiveScheduler::Start();
-	INFO_PRINTF3(_L("5. CAuthActive:RunL err %d : res = 0x%x"),
-				 active.iErr, result);
-	TESTL(active.iErr == KErrAuthServNoSuchPlugin && result == 0);
-	
-	CleanupStack::PopAndDestroy(2, &ac);	// ae, ac
-	return ETrue;
-	}
-
-void CTStepClient::TestSetIdentityStrL()
-    {
-	// assumes TestAuthenticateL has been called and id 22 is created
-	RAuthClient ac;
-	User::LeaveIfError(ac.Connect());
-	CleanupClosePushL(ac);
-
-	_LIT(KId22DescNew, "ID22NewDesc");
-
-	HBufC* desc = ac.IdentityStringL(22);
-	CleanupStack::PushL(desc);
-	TESTL(*desc == _L("22-desc")); 
-	CleanupStack::PopAndDestroy(desc); 
-	
-	ac.SetIdentityStringL(22, KId22DescNew);
-	
-	desc = ac.IdentityStringL(22);
-	CleanupStack::PushL(desc); 
-	TESTL(*desc == KId22DescNew); 
-	CleanupStack::PopAndDestroy(desc); 
-	
-	CleanupStack::PopAndDestroy(&ac);
-	}    
-
-						 
-
-TVerdict CTStepClient::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		return TestStepResult();
-	SetTestStepResult(EPass);
-	__UHEAP_MARK;
-	
-	CActiveScheduler::Install(iActSchd);
-	
-	INFO_PRINTF1(_L("Test identities"));
-	TestIdentitiesL();
-	
-	INFO_PRINTF1(_L("Test ClientPluginLists"));
- 	TestClientPluginListsL();
- 	
- 	INFO_PRINTF1(_L("Test Authenticate"));
-	TestAuthenticateL();
-	
-	INFO_PRINTF1(_L("Test MultiAuth"));
-	TestMultiAuthL();
-	
-	INFO_PRINTF1(_L("Test SetIdentityStr"));
-	TestSetIdentityStrL();
-	
-	__UHEAP_MARKEND;	
-	
-	return EPass;
-	}
-
-
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_firststart.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tauthcliservstep.h"
-#include <test/testexecutelog.h>
-
-#include "authserver/authmgrclient.h"
-#include "authserver/identity.h"
-
-#include <s32file.h>
-
-using namespace AuthServer;
-
-CTStepFirstStart::CTStepFirstStart()
-	{
-	SetTestStepName(KTStepFirstStart);
-	}
-
-TVerdict CTStepFirstStart::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		INFO_PRINTF1(_L("Previous step failed"));
-
-		return TestStepResult();
-		}
-__UHEAP_MARK;		// Check for memory leaks
-    SetTestStepResult(EFail);
-    
-	TBool res = ETrue;
-	TBool tmp = ETrue;
-	TInt  err = KErrNone;
-
- 	User::SetJustInTime(ETrue);
-
-    TRAP(err, RemoveExistingDbL());
-    
-	RAuthClient client;
-	err = client.Connect();
-	CleanupClosePushL(client);
-
-    TEST(tmp = (err == KErrNone));
-    res = tmp && res;
-    INFO_PRINTF2(_L("Connect result = %d"), err);
-    
-	RIdentityIdArray ids;
-	client.IdentitiesL(ids); 
-	
-	TEST(tmp = ids.Count() == 1);
-    res = tmp && res;
-
-	HBufC* str = client.IdentityStringL(ids[0]);
-	CleanupStack::PushL(str);
-	
-	ids.Close();
-	
-	SetTestStepResult(res ? EPass : EFail);
-
-	CleanupStack::PopAndDestroy(2, &client);
-__UHEAP_MARKEND;	
-	return TestStepResult();
-	}
-
--- a/authenticationservices/authenticationserver/test/tauthcliserv/step_mgrclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,501 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bautils.h>
-#include <s32file.h>
-#include <test/testexecutelog.h>
-
-#include "authserver/authmgrclient.h"
-#include "authserver/identity.h"
-#include "tauthcliservstep.h"
-
-using namespace AuthServer;
-
-class CRegActive : public CActive
-    {
-    public:
-    CRegActive(RAuthMgrClient& aClient, CIdentity*& aResult, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iFirstTime(true),
-         iClient(aClient), 
-         iResult(aResult),
-         iStop(aStop)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doReg()
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iFirstTime = ETrue;				
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        if (iFirstTime)
-            {
-			SetActive();
-            iStatus = KRequestPending;
-            iClient.RegisterIdentityL(iResult, _L("SOMENAME"), iStatus);
-            iFirstTime = false;
-            }
-        else
-            {
-            if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-            iErr = iStatus.Int();
-			}
-        }
-        TBool iFirstTime;
-        RAuthMgrClient& iClient;
-        CIdentity*& iResult;
-        TBool iStop;
-        TInt iErr;
-    };
-
-class CTrainActive : public CActive
-    {
-    public:
-    CTrainActive(RAuthMgrClient& aClient, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0),
-         iStop(aStop)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doTrain() 
-        {
-
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iRunCount = 0;
-        }
-        void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        iErr = iStatus.Int();
-        if (iStatus.Int() != KErrNone)
-            {
-            }
-		switch (iRunCount)
-		  {
-		  case 0:
-            iStatus = KRequestPending;
-			iAe = AuthExpr(0x10274104);
-			iId = 0;
-
-			iClient.AuthenticateL(*iAe, 10, EFalse, EFalse, iId, iStatus);
-			SetActive();
-
-			break;
-		  case 1:
-			delete iAe;
-			delete iId;
-            iStatus = KRequestPending;
-            iClient.TrainPlugin(22, 0x10274104, iStatus);
-			SetActive();
-
-			break;
-   		  case 2:
-			iResult = iStatus.Int() == KErrNone ? EPass : EFail;
-            iErr = iStatus.Int();
-			if (iStop)
-                {
-                CActiveScheduler::Stop();
-                }
-
-			break;
-     	  default:
-			iResult = EFail;
-			
-			if (iStop)
-			    {
-			    CActiveScheduler::Stop();
-			    }
-		    }
-		  ++iRunCount;
-          }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    };
-
-class CTrainActive2 : public CActive
-    {
-    public:
-    CTrainActive2(RAuthMgrClient& aClient, TBool aStop = ETrue) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-         iRunCount(0),
-         iStop(aStop)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doTrain() 
-        {
-        SetActive();		
-		iClient.TrainPlugin(22, 0x10274105, iStatus);
-		}
-	void DoCancel() 
-        {
-        }
-	void RunL()
-	    {
-		iErr = iStatus.Int();
-		if (iStop)
-		    {
-			CActiveScheduler::Stop();
-		    }
-	    }
-	
-	RAuthMgrClient& iClient;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-    TBool iStop;
-    TInt iErr;
-    };
-
-class CCancelActive : public CActive
-    {
-    public:
-    CCancelActive(RAuthMgrClient& aClient) : 
-         CActive(EPriorityNormal),
-         iClient(aClient),
-		 iResult(EFail),
-         iRunCount(0)
-        {
-        CActiveScheduler::Add(this);
-        }
-    void doIdCancel() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iMode = 1;
-		iRunCount = 0;
-        }
-    void doRegCancel() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iMode = 2;
-		iRunCount = 0;
-        }
-    void doTrainCancel() 
-        {
-        SetActive();		
-		TRequestStatus* status = &iStatus;		    
-		User::RequestComplete(status, KErrNone);
-		iMode = 0;
-		iRunCount = 0;
-        }
-	void DoCancel() 
-        {
-        }
-     void RunL() 
-        {
-        if (iStatus.Int() != KErrNone)
-            {
-			  //RDebug::Printf("CCancelActive error: %d", iStatus.Int());
-            }
-		switch (iRunCount)
-		  {
-		  case 0:
-            iStatus = KRequestPending;
-			iAe = AuthExpr(0x10274105);
-			iId = 0;
-			switch (iMode)
-			  {
-			  case 2:
-				iClient.RegisterIdentityL(iId, _L("RegCancelID"), iStatus);
-				break;
-			  case 1:
-				iClient.AuthenticateL(*iAe, 0, EFalse, ETrue, iId, iStatus);
-			    break;
-			  case 0:
-				iClient.TrainPlugin(22, 0x10274105, iStatus);
-				break;
-			  }
-			SetActive();
-            User::After(1000000);
-            iClient.Cancel();
-
-			break;
-		  case 1:
-			//iStatus = KRequestPending;
-
-			delete iAe;
-			delete iId;
-            //SetActive();
-
-		    //break;
-   		  case 2:
-			iResult = iStatus.Int() == KErrCancel ? EPass : EFail;
-            CActiveScheduler::Stop();
-
-			break;
-     	  default:
-			iResult = EFail;
-            CActiveScheduler::Stop();
-		  }
-		++iRunCount;
-        }
-	RAuthMgrClient& iClient;
-	TVerdict iResult;
-	TInt iRunCount;
-	CAuthExpression* iAe;
-	CIdentity* iId;
-	TInt iMode;
-    };
-
-
-CTStepMgrClient::CTStepMgrClient()
-	{
-	SetTestStepName(KTStepMgrClient);
-	}
-
-
-TBool CTStepMgrClient::TestMultiRegisterL(RAuthMgrClient& client)
-    {
-    CIdentity* result = 0;
-    CRegActive active(client, result);
-    
-    CIdentity* result2 = 0;
-    RAuthMgrClient client2;
-    User::LeaveIfError(client2.Connect());
-    CleanupClosePushL(client2);
-    
-    CRegActive active2(client2, result2, EFalse);
-
-    active.doReg();		
-    active2.doReg();		
-    
-	CActiveScheduler::Start();
-
-    TEST(active.iErr == KErrNone);
-    TEST(active2.iErr == KErrServerBusy);
-    
-    delete result;
-    delete result2;
-    CleanupStack::PopAndDestroy(&client2);
-	return ETrue;
-    
-    }
-
-TBool CTStepMgrClient::TestRegister(RAuthMgrClient& client)
-  {
-    CIdentity* result = 0;
-    CRegActive active(client, result);
-
-    active.doReg();		
-
-	CActiveScheduler::Start();
-    if (result == 0)
-        {
-        return EFalse;
-        }
-        
-	INFO_PRINTF3(_L("Id = %d , KeyLength = %d\n"), result->Id(), result->Key().KeyData().Size());
-	delete result;
-	result = 0;
-    return ETrue;
-  }
-
-TBool CTStepMgrClient::TestMultiTrainL(RAuthMgrClient& client)
-  {
-    CTrainActive2 active(client);
-    active.doTrain();		
-
-    RAuthMgrClient client2;
-    User::LeaveIfError(client2.Connect());
-    CleanupClosePushL(client2);
-    
-    CTrainActive2 active2(client2, EFalse);
-    active2.doTrain();		
-
-	CActiveScheduler::Start();
-	
-	TEST(active.iErr == KErrAuthServPluginCancelled); // blocking plugin returns
-	                                                  // cancelled if left to
-	                                                  // complete
-    TEST(active2.iErr == KErrServerBusy);
-    
-	CleanupStack::PopAndDestroy(&client2);	
-	INFO_PRINTF3(_L("Training Result (%d,%d)\n"),
-	     active.iErr,
-	     active2.iErr);
-	     
-	return true;
-  }
-
-
-TBool CTStepMgrClient::TestTrain(RAuthMgrClient& client)
-  {
-    CTrainActive active(client);
-    active.doTrain();		
-	CActiveScheduler::Start();
-	INFO_PRINTF2(_L("Training Result = %d\n"), active.iResult == EPass);
-	return active.iResult == EPass;
-  }
-
-TBool CTStepMgrClient::TestCancellation(RAuthMgrClient& client)
-  {
-    CCancelActive active(client);
-    
-    active.doTrainCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Training Cancel Result = %d\n"), active.iResult == EPass);
-
-    active.doTrainCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Training Cancel Result = %d\n"), active.iResult == EPass);
-
-    active.doTrainCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Training Cancel Result = %d\n"), active.iResult == EPass);
-
-    //User::After(5000000);
-    active.doIdCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Id Cancel Result = %d\n"), active.iResult == EPass);
-
-    active.doIdCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Id Cancel Result = %d\n"), active.iResult == EPass);
-
-	active.doRegCancel();		
-	CActiveScheduler::Start();
-	TEST(active.iResult == EPass);
-	INFO_PRINTF2(_L("Registration Cancel Result = %d\n"), active.iResult == EPass);
-		
-	return active.iResult == EPass;
-  }
-
-TVerdict CTStepMgrClient::doTestStepL()
-	{
-	TInt r = 0;
-	
-	if (TestStepResult() != EPass)
-		{
-		INFO_PRINTF1(_L("Previous step failed"));
-
-		return TestStepResult();
-		}
-
-		
-	WaitForServerToReleaseDb();
-	
-
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	
-	_LIT(KDbSrcFile ,"\\authdb0.db");
-	TBuf<64> dbSrcFileName (sysDriveName);
-	dbSrcFileName.Append(KDbSrcFile);
-
-	TBuf<128> dbName(KDbName);
-	dbName[0] = 'A' + sysDrive;	
-
-	r = BaflUtils::CopyFile(iFs, dbSrcFileName, dbName);
-	
-	INFO_PRINTF2(_L("File copy returned %d"), r);
-
-	User::LeaveIfError(r);
-	
-
-	
-	__UHEAP_MARK;
-    SetTestStepResult(EPass);
-    
-	CActiveScheduler::Install(iActSchd);
-
-    
-	RAuthMgrClient mgrclient;
-	User::LeaveIfError(mgrclient.Connect());
-	CleanupClosePushL(mgrclient);
-	
-   	mgrclient.RemoveIdentityL(2);
-
-
-	RIdentityIdArray ids;
-	mgrclient.IdentitiesL(ids);
-	CleanupClosePushL(ids);
-
-	TESTL(ids.Count() == 3);
-
-	// ensure each expected identity occurs once.
-	// (This technique is simple but doesn't generalise.)
-	TInt sum = 0;
-	for (TInt i = 0; i < 3; ++i)
-		{
-		TIdentityId id = ids[i];
-		TESTL(id == 1 || id == 3 || id == 22);
-		sum += id;
-		}
-	TESTL(sum == 1 + 3 + 22);
-
-	CleanupStack::PopAndDestroy(&ids);
-
-	TEST(TestRegister(mgrclient));
-
-	mgrclient.IdentitiesL(ids);
-	CleanupClosePushL(ids);
-	TEST(ids.Count() == 4);
-	CleanupStack::PopAndDestroy(&ids);
-
-	TEST(TestTrain(mgrclient));
-
-	INFO_PRINTF1(_L("Testing cancellation"));
-    TEST(TestCancellation(mgrclient));
-    
-    INFO_PRINTF1(_L("Testing simultaneous registrations are blocked"));
-    TEST(TestMultiRegisterL(mgrclient));
-    
-    INFO_PRINTF1(_L("Testing simultaneous trainings are blocked"));
-    TestMultiTrainL(mgrclient);
-    
-	// Last plugin can't be removed 
-	TRAPD(err, mgrclient.ForgetPluginL(22,0x10274104));
-	TEST(err == KErrAuthServCanNotRemoveLastPlugin);
-	
-	CleanupStack::PopAndDestroy(1, &mgrclient);
-
-	__UHEAP_MARKEND;	
-	return EPass;
-	}
--- a/authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tauthdbserver.cpp
-* server implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "tauthcliservstep.h"
-
-_LIT(KServerName,"tauthcliserv");
-
-/**
- * Called inside the MainL() function to create and start the CTestServer 
- * derived server.
- * @return Instance of the test server
- */
-CTAuthDbServer* CTAuthDbServer::NewL()
-	{
-	CTAuthDbServer * server = new (ELeave) CTAuthDbServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit Server Logging.
-
-	server->ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-LOCAL_C void MainL()
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CTAuthDbServer* server = NULL;
-	// Create the CTestServer derived server
-	TRAPD(err,server = CTAuthDbServer::NewL());
-	if(!err)
-		{
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-GLDEF_C TInt E32Main()
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());	
-	delete cleanup;
-	return KErrNone;
-    }
-
-CTestStep* CTAuthDbServer::CreateTestStep(const TDesC& aStepName)
-	{
-	CTestStep* testStep = NULL;
-
-	if(aStepName == KTStepClient)
-		{
-		testStep = new CTStepClient();
-		}
-	else if(aStepName == KTStepMgrClient)
-		{
-		testStep = new CTStepMgrClient();
-		}
-	else if(aStepName == KTStepFirstStart)
-		{
-		testStep = new CTStepFirstStart();
-		}
-
-	// authentication expression tests
-	else if (aStepName == KTStepAuthExprBuild)
-		{
-		testStep = new CTStepAuthExprBuild();
-		}
-	else if (aStepName == KTStepBadExtAuthExpr)
-		{
-		testStep = new CTStepBadExtAuthExpr();
-		}
-	else if (aStepName == KTStepAuthExprHighVer)
-		{
-		testStep = new CTStepAuthExprHighVer();
-		}
-	else if (aStepName == KTStepAuthExprEval)
-		{
-		testStep = new CTStepAuthExprEval();
-		}
-#ifdef _DEBUG
-	else if (aStepName == KTStepAuthExprTypePnc)
-		{
-		testStep = new CTStepAuthExprTypePnc();
-		}
-	else if (aStepName == KTStepAuthExprTypePncBadLeft)
-		{
-		testStep = new CTStepAuthExprTypePncBadLeft();
-		}
-	else if (aStepName == KTStepAuthExprTypePncBadRight)
-		{
-		testStep = new CTStepAuthExprTypePncBadRight();
-		}
-#endif
-
-	return testStep;
-	}
--- a/authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tauthdbserver.h
-* TAuthDbServer is the server for all authentication keys tests
-*
-*/
-
-
-#ifndef TAUTHDBSERVER_H
-#define TAUTHDBSERVER_H
-#include <test/testexecuteserverbase.h>
-
-class CTAuthDbServer : public CTestServer
-	{
-public:
-	static CTAuthDbServer*	NewL();
-	virtual CTestStep*      CreateTestStep(const TDesC& aStepName);
-	RFs& Fs()	{return iFs;};
-
-private:
-	RFs	iFs;
-	};
-
-#endif	/* TAUTHDBSERVER_H */
-
--- a/authenticationservices/authenticationserver/test/tauthcliserv/tauthcliserv.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-OPTION GCCE -Wno-multichar
-
-TARGET			tauthcliserv.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F0D
-VENDORID		0x70000001
-
-CAPABILITY TrustedUI ProtServ ReadDeviceData WriteDeviceData Location SurroundingsDD UserEnvironment ReadUserData WriteUserData AllFiles 
-
-USERINCLUDE		../../source/common
-USERINCLUDE		../../source/server
-USERINCLUDE		../../source/client
-USERINCLUDE		../../inc_private
-USERINCLUDE		../../inc/authserver
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-SOURCEPATH		.
-USERINCLUDE		.
-SOURCE			tauthcliserv.cpp
-SOURCE			step_base.cpp
-SOURCE			step_client.cpp
-SOURCE			step_mgrclient.cpp
-SOURCE			step_authexpr_build.cpp
-SOURCE			step_authexpr_eval.cpp
-SOURCE			step_firststart.cpp
-
-SOURCE			../../source/server/authserver.cpp
-SOURCE			../../source/server/authserversession.cpp
-SOURCE			../../source/server/authdb.cpp
-SOURCE			../../source/server/transientkeyinfo.cpp
-SOURCE			../../source/server/encryptedprotectionkey.cpp
-SOURCE			../../source/server/transientkey.cpp
-SOURCE			../../source/server/evaluator.cpp
-SOURCE			../../source/server/pluginmgr.cpp
-SOURCE			../../source/server/trainingmgr.cpp
-SOURCE			../../source/server/authtransaction.cpp
-SOURCE			../../source/server/pluginobserver.cpp
-SOURCE			../../source/server/authrepository.cpp
-
-LIBRARY			bafl.lib edbms.lib ecom.lib estor.lib efsrv.lib euser.lib 
-LIBRARY         testexecuteutils.lib testexecutelogclient.lib
-LIBRARY         authclient.lib authcommon.lib  scsclient.lib
-LIBRARY         cryptography.lib pbe.lib random.lib
-LIBRARY 		cinidata.lib	// add text INI file parsing ability
-LIBRARY			sectcbutil.lib
-LIBRARY			centralrepository.lib scsserver.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tauthcliserv/tauthcliservstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,629 +0,0 @@
-/*
-* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TAUTHCLISERVSTEP_H
-#define TAUTHCLISERVSTEP_H
-
-#include <e32cmn.h>
-#include <ct/rcpointerarray.h>
-#include <ecom/ecom.h>
-
-#include <test/testexecutestepbase.h>
-#include <test/testexecutelog.h>
-
-#include "tauthcliserv.h"
-
-#ifndef __INIPARSER_H__
-#include <cinidata.h>
-#endif // __INIPARSER_H__
-
-// publicly available include file
-#include "authserver_client.h"
-#include <authserver/authplugininterface.h>
-
-// these tests use some information which is normally
-// only visible to the server, or to the client DLL.
-
-#include "authserveripc.h"
-#include "authdb.h"
-#include "transientkey.h"
-#include "transientkeyinfo.h"
-#include "evaluator.h"
-
-// load test plugin data
-#include "../tauthplugins/consts.h"
-
-using AuthServer::TIdentityId;
-using AuthServer::TPluginId;
-using AuthServer::TAuthPluginType;
-using AuthServer::TAuthTrainingStatus;
-using AuthServer::CAuthExpression;
-using AuthServer::CAuthExpressionImpl;
-using AuthServer::TAuthExpressionWrapper;
-using AuthServer::CEvaluator;
-using AuthServer::CPluginDesc;
-using AuthServer::RAuthClient;
-
-// Authserver name
-_LIT(KAuthServerName, "!AuthServer");
-
-_LIT(KTStepCreateDb,"CREATEDB");
-_LIT(KTStepClient,	"CLIENT");
-_LIT(KTStepMgrClient,	"MGRCLIENT");
-_LIT(KTStepFirstStart,	"FIRSTSTART");
-
-_LIT(KTStepAuthExprBuild, "AuthExprBuild");
-_LIT(KTStepBadExtAuthExpr, "AuthExprBadAuthExt");
-_LIT(KTStepAuthExprHighVer, "AuthExprHighVer");
-_LIT(KTStepAuthExprEval, "AuthExprEval");
-
-// debug-mode tests for client-side panicks
-_LIT(KTStepAuthExprTypePnc, "AuthExprTypePanic");
-_LIT(KTStepAuthExprTypePncBadLeft, "AuthExprTypePanicBadLeft");
-_LIT(KTStepAuthExprTypePncBadRight, "AuthExprTypePanicBadRight");
-
-// These are used in the RemoveExistingDbL() function
-// applying to DBs used by tPinAuthPlugin
-_LIT(KPlugin3100File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113100Db.ini");
-_LIT(KPlugin3101File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113101Db.ini");
-_LIT(KPlugin3102File,		"\\tAuth\\tAuthSvr\\testdata\\Pin11113102Db.ini");
-_LIT(KAuthSvrPolicyFile, 	"\\tAuth\\tAuthSvr\\testdata\\AuthSvrPolicy.ini");
-_LIT(KPinDbTag,				"Identity&PinValues");
-_LIT(KTotalDbTag,			"AllUserID&PinValues");
-_LIT(KInitPinDatabaseValue,	",");
-_LIT(KDisplayMessage,		"DisplayMessage");
-
-#define KNumPlugins 8
-
-const TInt KTestPluginId22       = 0x10274104;
-const TInt KTestPluginBlocking   = 0x10274105;
-const TInt KTestPluginIdInactive = 0x10274106;
-const TInt KTestPluginIdUnknown  = 0x10274107;
-
-
-class CTAuthcliservStepBase : public CTestStep
-	{
-protected:
-	CTAuthcliservStepBase() {}
-	virtual ~CTAuthcliservStepBase();
-	virtual TVerdict doTestStepPreambleL()
-	   {
-	   iFs.Connect();
-	
-	   CreatePlugins();
-	   CreateKeyInfo();
-	   
-	   return TestStepResult();
-	   }
-	virtual TVerdict doTestStepPostambleL()
-    	{
-		iFs.Close();
-		return TestStepResult();
-		}
-	
-	inline void CreatePlugins();
-	inline void CreateKeyInfo();
-	HBufC* GetNameLC(TInt i);
-
-	void PluginData(AuthServer::TIdentityId aId,
-					AuthServer::TPluginId aPlugin,
-					TPtr8 aDes) 
-	{
-	aDes.Fill(aId*aPlugin);
-	}
-
-	void WaitForServerToReleaseDb();
-	void RemoveExistingDbL();
-	//Utility function allowing text INI file parsing abilities	
-	//Section name unspecified
-	TInt writeToNamedConfig(const TDesC &aFileName, const TDesC &aKeyName,const TPtrC &aResult);
-	
-	
-protected:
-	RFs		iFs;
-
-
-	AuthServer::CPluginDesc*       iPlugins[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId1Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId2Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId3Keys[KNumPlugins];
-  };
-
-inline CTAuthcliservStepBase::~CTAuthcliservStepBase() 
-    {
-    for (TInt i = 0 ; i < KNumPlugins ; ++i)
-        {
-        delete iPlugins[i];
-        delete iId1Keys[i];
-        delete iId2Keys[i];
-        delete iId3Keys[i];
-        }
-    }
-
-class CTStepActSch : public CTAuthcliservStepBase
-/**
-	This abstract subclass of CTAuthcliservStepBase
-	overrides the doTestStep(Pre|Post)ambleL functions
-	from CTestBase to allocate and free an active
-	scheduler.
-	
-	The scheduler is stored in the protected iActSchd
-	variable.  This class does not start or stop the
-	scheduler.
- */
-	{
-private:
-	// override CTestStep
-	inline virtual TVerdict doTestStepPreambleL();
-	inline virtual TVerdict doTestStepPostambleL();
-	
-protected:
-	/** The active scheduler which subclasses can use. */
-	CActiveScheduler* iActSchd;
-	};
-
-
-
-inline TVerdict CTStepActSch::doTestStepPreambleL()
-/**
-	Override CTestStep by allocating an active
-	scheduler which is available to the subclass.
-	
-	@return					This test step's result,
-							which isn't actually used
-							by ThreadStepExecutionL.
- */
-	{
-	CTAuthcliservStepBase::doTestStepPreambleL();
-	iActSchd = new(ELeave) CActiveScheduler;
-	return TestStepResult();
-	}
-
-
-inline TVerdict CTStepActSch::doTestStepPostambleL()
-/**
-	Override CTestStep by deleting the active
-	scheduler which allocated in doTestStepPreambleL.
-	
-	@return					This test step's result,
-							which isn't actually used
-							by ThreadStepExecutionL.
- */
-	{
-	CTAuthcliservStepBase::doTestStepPostambleL();
-	delete iActSchd;
-	return TestStepResult();
-	}
-
-
-class CTStepClient : public CTStepActSch
-	{
-public:
-	CTStepClient();
-	virtual TVerdict doTestStepL();
-	TBool TestAuthenticate(AuthServer::RAuthClient& client);
-	TBool TestAuthenticate2(AuthServer::RAuthClient& client);
-	TBool TestAuthenticate3(AuthServer::RAuthClient& client);
-	TBool TestAuthenticateFail(AuthServer::RAuthClient& client);
-
-
-
-private:
-	void GetDescriptionsFromEComL(RPointerArray<CPluginDesc>& aDescs);
-	
-	void TestIdentitiesL();
-	void GetIdentitiesLC(RArray<TIdentityId>& aIds);
-	void AddIdentityL(TIdentityId aIdentityId, const TDesC& aDesc);
-	void TestIdentityL(TIdentityId aIdentityId, const TDesC& aExpDesc);
-	void TestSetIdentityStrL();
-
-	void TestClientPluginListsL();
-	void SetSeenCountsL(const RCPointerArray<const CPluginDesc>& aPlugins);
-	void TestTypedPluginsL(RAuthClient& aClient, TAuthPluginType aPluginType);
-	void TestTrainedPluginsL();
-	void PrepareTrainedPluginsL();
-	void TestActivePluginsL(RAuthClient& aClient);
-	TBool TestAuthenticateL();
-	TBool TestMultiAuthL();
-	
-private:
-	RArray<TUid> iPluginIds;
-	};
-	
-class CTStepMgrClient : public CTStepActSch
-	{
-public:
-	CTStepMgrClient();
-	virtual TVerdict doTestStepL();
-	TBool TestRegister(AuthServer::RAuthMgrClient& client);
-	TBool TestMultiRegisterL(AuthServer::RAuthMgrClient& client);
-	
-	TBool TestMultiTrainL(AuthServer::RAuthMgrClient& client);
-	TBool TestTrain(AuthServer::RAuthMgrClient& client);
-	TBool TestCancellation(AuthServer::RAuthMgrClient& client);
-	};
-
-class CTStepFirstStart : public CTAuthcliservStepBase
-	{
-public:
-	CTStepFirstStart();
-	virtual TVerdict doTestStepL();
-	};
-
-
-inline HBufC* CTAuthcliservStepBase::GetNameLC(TInt id)
-    {
-    _LIT(nameTmpl, "Plugin_%d");
-	HBufC* name = HBufC::NewLC(15);
-	name->Des().Format(nameTmpl, id);
-	return name;
-    }
-    
-inline void CTAuthcliservStepBase::CreatePlugins()
-	{
-	using namespace AuthServer;
-	
-	const TAuthPluginType   types[KNumPlugins]
-		= { EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthToken, EAuthKnowledge
-		};
-	const TAuthTrainingStatus   training[KNumPlugins]
-		= { EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthTrained, EAuthFullyTrained
-		  };
-
-
-	for (TInt i = 0 ; i < KNumPlugins ; ++i)
-		{
-			HBufC* name = GetNameLC(i);
-			
-			iPlugins[i] = CPluginDesc::NewL(i,
-											*name,
-											types[i],
-											training[i],
-											i*10000,
-											i,
-											i*4);
-		    CleanupStack::PopAndDestroy(name);									
-		}
-	}
-inline void CTAuthcliservStepBase::CreateKeyInfo()
-	{
-	using namespace AuthServer;
-
-	CProtectionKey* protKey1 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey2 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey3 = CProtectionKey::NewLC(8);
-
-	HBufC8* data = HBufC8::NewLC(4);
-	
-	for (TInt plugin = 0 ; plugin < KNumPlugins ; ++plugin)
-		{
-			CTransientKey* transient = 0;
-			// id 1
-			iId1Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			PluginData(1, plugin, data->Des());
-			transient = iId1Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey1 =
-				transient->EncryptL(*protKey1);
-			delete transient;
-			iId1Keys[plugin]->SetEncryptedProtectionKeyL(epKey1);
-			// id 2
-			PluginData(2, plugin, data->Des());
-			iId2Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId2Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey2 =
-				transient->EncryptL(*protKey2);
-			delete transient;
-			iId2Keys[plugin]->SetEncryptedProtectionKeyL(epKey2);
-			// id 3
-			PluginData(3, plugin, data->Des());
-			iId3Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId3Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey3 =
-				transient->EncryptL(*protKey3);
-			delete transient;
-			iId3Keys[plugin]->SetEncryptedProtectionKeyL(epKey3);
-		}
-	CleanupStack::Pop(4, protKey1);
-	}
-
-// -------- Authentication expression tests --------
-
-class CTStepAuthExprBuild : public CTAuthcliservStepBase
-/**
-	This test step ensures that complex authentication
-	expressions can be constructed, or fail cleanly in OOM.
- */
-	{
-public:
-	CTStepAuthExprBuild();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	
-private:
-	void RunTestsL();
-	void TestExprLD(
-		void (CTStepAuthExprBuild::*aTestFuncL)(AuthServer::CAuthExpression*),
-		AuthServer::CAuthExpression* aExpr);
-
-#ifdef AUTH_EXPR_BINARY_OPS
-	inline void OpTestExprLD(
-		void (CTStepAuthExprBuild::*aTestFuncL)(AuthServer::CAuthExpression*),
-		AuthServer::CAuthExpression* aExpr)
-		{
-		TestExprLD(aTestFuncL, aExpr);
-		}
-#else
-	// this isn't an empty inline because don't want compiler
-	// to build expression with binary operators.
-	#define OpTestExprLD(___f, ___expr)
-#endif
-
-	void TestSimpleExprL();
-	void TestPluginIdL(AuthServer::CAuthExpression* aExpr);
-	void TestPluginTypeL(AuthServer::CAuthExpression* aExpr);
-
-	void TestSimpleExprCombsConsL();
-	void TestTypeAndTypeL(AuthServer::CAuthExpression* aExpr);
-	void TestTypeOrTypeL(AuthServer::CAuthExpression* aExpr);
-	void TestIdAndTypeL(AuthServer::CAuthExpression* aExpr);
-	void TestTypeAndIdL(AuthServer::CAuthExpression* aExpr);
-	void TestIdAndIdL(AuthServer::CAuthExpression* aExpr);
-
-	void TestComplexExprCombsConsL();
-	void TestAndAndL(AuthServer::CAuthExpression* aExpr);
-	void TestAndOrL(AuthServer::CAuthExpression* aExpr);
-	void TestOrAndL(AuthServer::CAuthExpression* aExpr);
-	void TestOrOrL(AuthServer::CAuthExpression* aExpr);
-
-	void TestFailedCombsL();
-	void TestCorruptPersistL();
-	};
-
-class CTStepAuthExprTypePnc : public CTAuthcliservStepBase
-/**
-	This test step ensures the client is panicked when
-	they attempt to retrieve the type of a corrupt expression.
- */
-	{
-public:
-	CTStepAuthExprTypePnc();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-
-class CTStepAuthExprTypePncBadLeft : public CTAuthcliservStepBase
-/**
-	This test step ensures the client is panicked when
-	they attempt to retrieve the type of a expression,
-	where the left subtree is corrupt.
- */
-	{
-public:
-	CTStepAuthExprTypePncBadLeft();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-
-class CTStepAuthExprTypePncBadRight : public CTAuthcliservStepBase
-/**
-	This test step ensures the client is panicked when
-	they attempt to retrieve the type of a expression,
-	where the right subtree is corrupt.
- */
-	{
-public:
-	CTStepAuthExprTypePncBadRight();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-
-class CTStepAuthExprHighVer : public CTAuthcliservStepBase
-/**
-	This step tests sending an unsupported authentication
-	expression to the server.
-	
-	The server should fail the request.
- */
-	{
-public:
-	CTStepAuthExprHighVer();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-	
-class CTStepBadExtAuthExpr : public CTAuthcliservStepBase
-/**
-	This step tests trying to authenticate a server with
-	an invalid authentication expression.
-	
-	The client code should be panicked.
- */
-	{
-public:
-	CTStepBadExtAuthExpr();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-	
-
-class TTestPluginInterface : public AuthServer::MEvaluatorPluginInterface
-/**
-	This implementation records which calls were made
-	to the interface, so the test code can test the
-	evaluator made the right calls in the right order.
- */
-	{
-public:
-	virtual void Evaluate(TPluginId aPluginId, TIdentityId& aIdentity,
-			   CAuthExpressionImpl::TType aType, TRequestStatus& aStatus);
-	virtual void Evaluate(TAuthPluginType aPluginType, TIdentityId& aIdentity,
-			   CAuthExpressionImpl::TType aType, TRequestStatus& aStatus);
-	virtual void CancelEvaluate() {} ;
-public:
-	class TCallEntry
-		{
-	public:
-		inline TCallEntry(TPluginId aPluginId)
-		:	iCallType(CAuthExpressionImpl::EPluginId),
-			iPluginId(aPluginId)
-			{
-			// empty.
-			}
-		
-		inline TCallEntry(TAuthPluginType aPluginType)
-		:	iCallType(CAuthExpressionImpl::EPluginType),
-			iPluginType(aPluginType)
-			{
-			// empty.
-			}
-		
-		bool operator==(const TCallEntry& aRhs) const;
-		
-	public:
-		/** Type of call - ID or plugin type. */
-		CAuthExpressionImpl::TType iCallType;
-		
-		union
-			{
-			TPluginId iPluginId;
-			TAuthPluginType iPluginType;
-			};
-		};
-
-	/**
-		The sequence of Evaluate requests which have been received
-		by this object.  This is a non-standard case of a T class
-		owning resources.  These resources are freed by CLaunchEval
-		because it is not worth making this an R-class or C-class
-		for test code.
-	 */
-	RArray<TCallEntry> iCallLog;
-	};
-
-class TTestClientInterface : public AuthServer::MEvaluatorClientInterface
-/**
-	This implementation records whether the evaluation
-	succeeded or failed, so the test code can check the
-	result.
- */
-	{
-public:
-	virtual void EvaluationSucceeded(TIdentityId aIdentityId);
-	virtual void EvaluationFailed(TInt aReason);
-	
-public:
-	enum TCompletionMode {ENone = 0x10, ESucceeded, EFailed};
-	TCompletionMode iMode;
-	/** This is valid iff iMode == ESucceeded. */
-	TIdentityId iIdentityId;
-	/** This is valid iff iMode == EFailed. */
-	TInt iReason;
-	};
-
-
-class CLaunchEval : public CActive
-/**
-	Active object which launches an evaluation.
-	
-	This object is defined so there is one pending
-	object when the active scheduler is started.
- */
-	{
-public:
-	static CLaunchEval* NewL();
-	virtual ~CLaunchEval();
-	
-	void Evaluate(const CAuthExpression* aExpr);
-	
-private:
-	CLaunchEval();
-	void ConstructL();
-	void ResetInterfaces();
-
-	// implement CActive
-	virtual void RunL();
-	virtual void DoCancel();
-
-public:	
-	TTestClientInterface iClientInterface;
-	TTestPluginInterface iPluginInterface;
-	
-private:
-	/**
-		Expression to evaluate.  This is set for each
-		call to Evaluate.
-	 */
-	const CAuthExpression* iExpr;
-	
-	/** Evaluator, which is allocated at construction. */
-	CEvaluator* iEval;
-	};
-
-
-class CTStepAuthExprEval : public CTStepActSch
-/**
-	This step tests trying to authenticate a server with
-	an invalid authentication expression.
-	
-	The client code should be panicked.
- */
-	{
-public:
-	CTStepAuthExprEval();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	
-private:
-	void TestEvalCreateL();
-	void TestEvalSimpleL();
-	void TestEvalAndL();
-	void TestEvalOrL();
-	void TestEvalResultL(
-		CLaunchEval* aLaunchEval, TIdentityId aIdentityId,
-		const TTestPluginInterface::TCallEntry* aExpEntries, TInt aEntryCount);
-	
-	void TestRPNReallocL();
-	void RunOomTestsL(
-		TAuthExpressionWrapper (*aAllocator)(TInt),
-		TIdentityId aExpectedIdentity, TInt aInitDepth);
-	};
-	
-const TPluginId KTestPluginId0 = 0xE0494453;
-const TPluginId KTestPluginId1 = 0xE0494463;
-const TPluginId KTestPluginId2 = 0xE0494473;
-const TPluginId KTestPluginUnknown = 0xE0494483;
-
-// These constants are defined to provide short
-// names for readability only.
-
-const CAuthExpressionImpl::TType KAnd = CAuthExpressionImpl::EAnd;
-const CAuthExpressionImpl::TType KOr = CAuthExpressionImpl::EOr;
-const CAuthExpressionImpl::TType KPluginId = CAuthExpressionImpl::EPluginId;
-const CAuthExpressionImpl::TType KPluginType = CAuthExpressionImpl::EPluginType;
-#endif	/* TAUTHCLISERVSTEP_H */
--- a/authenticationservices/authenticationserver/test/tauthdb/scripts/tauthdb.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// authentication db classes tests
-
-LOAD_SUITE tauthdb
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHDB-0001
-//! @SYMTestCaseDesc	Authentication db classes test
-START_TESTCASE SEC-AUT-AUTHDB-0001
-RUN_TEST_STEP 15 tauthdb CreateTestDb
-RUN_TEST_STEP 15 tauthdb PERSIST2
-END_TESTCASE SEC-AUT-AUTHDB-0001
- 
--- a/authenticationservices/authenticationserver/test/tauthdb/step_createtestdb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,113 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bautils.h>
-#include "tauthdbstep.h"
-
-using namespace AuthServer;
-
-
-CTStepCreateTestDb::CTStepCreateTestDb()
-	{
-	SetTestStepName(KTStepCreateTestDb);
-	}
-
-
-TVerdict CTStepCreateTestDb::doTestStepL()
-/**
-	Create a test database and copy the file to
-	authdb0.db to system drive.  This database is used by both
-	tauthdb and tauthsvr.
- */
-	{
-	TInt r;
-	
-	// create the server's private directory.  This happens
-	// when the server starts up, but some of the tests use
-	// the server's classes directly.
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-
-	TBuf<128> dbName(KDbName);
-	dbName[0] = 'A' + sysDrive;	
-	
-	r = iFs.MkDirAll(dbName);			// db name not used
-	if (r != KErrAlreadyExists)
-		User::LeaveIfError(r);
-	
-	RemoveExistingDbL();
-	
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-	
-	_LIT(kId1Name, "Identity1");
-	_LIT(kId2Name, "Identity2");
-	_LIT(kId3Name, "Identity3");
-	_LIT(kId22Name, "Identity22");
-	
-	db->AddIdentityL(1, kId1Name);
-	const CTransientKeyInfo* tki1 = iId1Keys[0];
-	db->SetTrainedPluginL(1, tki1->PluginId(), *tki1);
-	
-	db->AddIdentityL(2, kId2Name);
-	const CTransientKeyInfo* tki2 = iId2Keys[0];
-	db->SetTrainedPluginL(2, tki2->PluginId(), *tki2);
-	
-	db->AddIdentityL(3, kId3Name);
-	const CTransientKeyInfo* tki3 = iId3Keys[0];
-	db->SetTrainedPluginL(3, tki3->PluginId(), *tki3); 
-	
-	// create additional trained plugins
-	for (TInt i = 1 ; i < KNumPlugins ; ++i)
-		{
-		db->SetTrainedPluginL(1, iId1Keys[i]->PluginId(), *iId1Keys[i]);
-		db->SetTrainedPluginL(2, iId1Keys[i]->PluginId(), *iId2Keys[i]);
-		db->SetTrainedPluginL(3, iId1Keys[i]->PluginId(), *iId3Keys[i]);
-		}
-    
-    // Add 1 more id for use with test plugin
-    CProtectionKey* key = CProtectionKey::NewLC(8);
-    
-    CTransientKeyInfo* tki = CTransientKeyInfo::NewLC(0x10274104);
-    
-	_LIT8(KIdentifyData, "ABABABABABABABABABAB");
-    CTransientKey* tk = tki->CreateTransientKeyL(KIdentifyData);
-    CleanupStack::PushL(tk);
-    
-    CEncryptedProtectionKey* epKey = tk->EncryptL(*key);
-    CleanupStack::PushL(epKey);	// epKey takes ownership
-        
-    tki->SetEncryptedProtectionKeyL(epKey);
-    CleanupStack::Pop(epKey);	// eki takes ownership
-    
-	db->AddIdentityL(22, kId22Name);
-	db->SetTrainedPluginL(22, tki->PluginId(), *tki); 
-
-	CleanupStack::PopAndDestroy(3, key);
-	
-	CleanupStack::PopAndDestroy(db);
-	
-	_LIT(KDbTrgFileName ,"\\authdb0.db");
-	TBuf<128> dbTrgFileName (sysDriveName);
-	dbTrgFileName.Append(KDbTrgFileName);
-	
-	// copy the file to the system drive 
-	r = BaflUtils::CopyFile(iFs, dbName, dbTrgFileName);
-	TESTL(r == KErrNone);
-	
-	return EPass;
-	}
--- a/authenticationservices/authenticationserver/test/tauthdb/step_persist2.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,595 +0,0 @@
-/*
-* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <s32mem.h>
-#include "tauthdbstep.h"
-#include <f32file.h>
-
-using namespace AuthServer;
-
-const TIdentityId KIdentity1Id = 0xE0494409;
-const TIdentityId KIdentity2Id = 0xE0494410;
-const TIdentityId KIdentity3Id = 0xE0494411;
-_LIT(KIdentity1Desc, "identity-1-desc");
-_LIT(KIdentity1DescB, "identity-1-descB");
-_LIT(KIdentity2Desc, "identity-2-desc");
-_LIT(KIdentity3Desc, "identity-3-desc");
-
-const TPluginId KPlugin1Id = 0xE0494433;
-const TPluginId KPlugin2Id = 0xE0494434;
-const TPluginId KPlugin3Id = 0xE0494435;
-const TPluginId KPlugin4Id = 0xE0494436;
-const TPluginId KPluginAId = 0xE0494437;
-const TPluginId KPluginBId = 0xE0494438;
-
-
-CTStepPersist2::CTStepPersist2()
-	{
-	SetTestStepName(KTStepCreateTestDb);
-	}
-
-
-TVerdict CTStepPersist2::doTestStepL()
-	{
-	__UHEAP_MARK;
-	
-	RemoveExistingDbL();
-		
-	TestOpenCloseL();
-	TestIdentitiesL();
-	TestPrefsL();
-	TestTrainedPluginsL();
-	TestTrainingStatusL();
-	TestRepairL();
-	TestCompressL();
-	
-	__UHEAP_MARKEND;
-	return EPass;
-	}
-
-
-void CTStepPersist2::TestOpenCloseL()
-/**
-	Test simply opening and closing a database,
-	without using any other operations.
- */
-	{
-	CAuthDb2* db = CAuthDb2::NewL(iFs);
-	delete db;
-	}
-
-
-void CTStepPersist2::TestIdentitiesL()
-	{
-	TInt r;
-	
-	__UHEAP_MARK;
-	RemoveExistingDbL();
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-	
-	RArray<TIdentityId> ids;
-	
-	// get id list before any ids defined
-	ids.AppendL(0xE0494499);	// garbage; ensure removed
-	db->IdentitiesL(ids);
-	TESTL(ids.Count() == 0);
-	
-	// add an identity
-	db->AddIdentityL(KIdentity1Id, KIdentity1Desc);
-	db->IdentitiesL(ids);
-	TESTL(ids.Count() == 1);
-	TESTL(ids[0] == KIdentity1Id);
-	
-	// retrieve the identity's description
-	TestDescriptionL(db, KIdentity1Id, KIdentity1Desc);
-	
-	// change the identity's description
-	db->SetDescriptionL(KIdentity1Id, KIdentity1DescB);
-	TestDescriptionL(db, KIdentity1Id, KIdentity1DescB);
-
-	// change the identity's description to a string which is
-	// too long; ensure fails.
-	TBuf<KMaxDescLen + 1> dbuf;
-	dbuf.Fill('a', KMaxDescLen - 1);		// limit - 1
-	db->SetDescriptionL(KIdentity1Id, dbuf);
-	TestDescriptionL(db, KIdentity1Id, dbuf);
-	
-	dbuf.Fill('a', KMaxDescLen);			// limit
-	db->SetDescriptionL(KIdentity1Id, dbuf);
-	TestDescriptionL(db, KIdentity1Id, dbuf);
-	
-	db->SetDescriptionL(KIdentity1Id, KIdentity1DescB);
-	TestDescriptionL(db, KIdentity1Id, KIdentity1DescB);
-	dbuf.Fill('a', KMaxDescLen + 1);		// limit + 1
-	TRAP(r, db->SetDescriptionL(KIdentity1Id, dbuf));
-	TESTL(r == KErrAuthServDescTooLong);
-	TestDescriptionL(db, KIdentity1Id, KIdentity1DescB);	// keep old desc
-	
-	// add a second identity
-	db->AddIdentityL(KIdentity2Id, KIdentity2Desc);
-	db->IdentitiesL(ids);
-	TESTL(ids.Count() == 2);
-	TESTL(	(ids[0] == KIdentity1Id && ids[1] == KIdentity2Id)
-		||	(ids[0] == KIdentity2Id && ids[1] == KIdentity1Id) );
-	TestDescriptionL(db, KIdentity1Id, KIdentity1DescB);
-	TestDescriptionL(db, KIdentity2Id, KIdentity2Desc);
-	
-	// add an identity which already exists
-	TRAP(r, db->AddIdentityL(KIdentity2Id, KIdentity2Desc));
-	TESTL(r == KErrAuthServIdentityAlreadyExists);
-	
-	// retrieve description for an unregistered identity
-	TRAP(r, db->DescriptionL(KIdentity3Id));
-	TESTL(r == KErrAuthServIdentityNotFound);
-	
-	// set description for an unregistered identity
-	TRAP(r, db->SetDescriptionL(KIdentity3Id, KIdentity3Desc));
-	TESTL(r == KErrAuthServIdentityNotFound);
-	
-	// remove an unregistered identity
-	TRAP(r, db->RemoveIdentityL(KIdentity3Id));
-	TESTL(r == KErrAuthServIdentityNotFound);
-	
-	// remove an identity
-	db->RemoveIdentityL(KIdentity1Id);
-	db->IdentitiesL(ids);
-	TESTL(ids.Count() == 1);
-	TESTL(ids[0] == KIdentity2Id);
-	TestDescriptionL(db, KIdentity2Id, KIdentity2Desc);
-	
-	// remove the last identity
-	db->RemoveIdentityL(KIdentity2Id);
-	db->IdentitiesL(ids);
-	TESTL(ids.Count() == 0);
-	
-	// create an identity with a description to a string which is
-	// too long; ensure fails.
-	dbuf.Fill('a', KMaxDescLen - 1);		// limit - 1
-	db->AddIdentityL(KIdentity3Id, dbuf);
-	TestDescriptionL(db, KIdentity3Id, dbuf);
-	db->RemoveIdentityL(KIdentity3Id);
-	
-	dbuf.Fill('a', KMaxDescLen);			// limit
-	db->AddIdentityL(KIdentity3Id, dbuf);
-	TestDescriptionL(db, KIdentity3Id, dbuf);
-	db->RemoveIdentityL(KIdentity3Id);
-	
-	dbuf.Fill('a', KMaxDescLen + 1);		// limit + 1
-	TRAP(r, db->AddIdentityL(KIdentity3Id, dbuf));
-	TESTL(r == KErrAuthServDescTooLong);
-	db->IdentitiesL(ids);							// no identity created
-	TESTL(ids.Count() == 0);
-	
-	CleanupStack::PopAndDestroy(db);
-	__UHEAP_MARKEND;
-	}
-
-void CTStepPersist2::TestDescriptionL(
-	CAuthDb2* aDb, TIdentityId aIdentityId, const TDesC& aExpDesc)
-/**
-	Helper function for TestIdentitiesL.  Ensures the
-	supplied identity has the supplied description.
-	
-	@param	aDb				Database which contains the identity.
-	@param	aIdentity		Identity whose description should be
-							retrieved.
-	@param	aDesc			Expected description.
- */
-	{
-	HBufC* desc = aDb->DescriptionL(aIdentityId);
-	CleanupStack::PushL(desc);
-	TESTL(*desc == aExpDesc);
-	CleanupStack::PopAndDestroy(desc);
-	}
-
-
-void CTStepPersist2::TestPrefsL()
-/**
-	Tests adding, modifying, and removing
-	preferences from the database.
- */
-	{
-	TPluginId prefId;	
-	__UHEAP_MARK;
-	
-	RemoveExistingDbL();
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-
-	// get a preferred plugin for a type with no preferred plugin
-	prefId = db->PreferredPluginL(EAuthBiometric);
-	TESTL(prefId == KUnknownPluginId);
-
-	// set a type's preferred plugin
-	db->SetPreferredPluginL(EAuthBiometric, KPlugin1Id);
-	prefId = db->PreferredPluginL(EAuthBiometric);
-	TESTL(prefId == KPlugin1Id);
-	
-	// change a type's preferred plugin
-	db->SetPreferredPluginL(EAuthBiometric, KPlugin2Id);
-	prefId = db->PreferredPluginL(EAuthBiometric);
-	TESTL(prefId == KPlugin2Id);
-	
-	// clear a type's preferred plugin
-	db->ClearPreferredPluginL(EAuthBiometric);
-	prefId = db->PreferredPluginL(EAuthBiometric);
-	TESTL(prefId == KUnknownPluginId);
-	
-	// set preferred plugin for more than one type
-	db->SetPreferredPluginL(EAuthBiometric, KPlugin3Id);
-	db->SetPreferredPluginL(EAuthKnowledge, KPlugin4Id);
-	prefId = db->PreferredPluginL(EAuthBiometric);
-	TESTL(prefId == KPlugin3Id);
-	prefId = db->PreferredPluginL(EAuthKnowledge);
-	TESTL(prefId == KPlugin4Id);
-	
-	CleanupStack::PopAndDestroy(db);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepPersist2::TestTrainedPluginsL()
-/**
-	Test adding and removing trained plugins.
- */
-	{
-	__UHEAP_MARK;
-	
-	TInt r;
-	RemoveExistingDbL();
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-
-	const CTransientKeyInfo& tkiA = *iId1Keys[0];
-	const CTransientKeyInfo& tkiB = *iId1Keys[1];
-	const CTransientKeyInfo& tkiC = *iId1Keys[2];
-
-	// set key info for an unregistered identity
-	TRAP(r, db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiA));
-	TESTL(r == KErrAuthServIdentityNotFound);
-
-	// set key info for a registered identity
-	db->AddIdentityL(KIdentity1Id, KIdentity1Desc);
-	db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiA);
-	
-	// get key info for a trained identity
-	TestKeyPresentL(db, KIdentity1Id, KPluginAId, tkiA);
-
-	// change key info for a trained identity
-	db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiB);
-	TestKeyPresentL(db, KIdentity1Id, KPluginAId, tkiB);
-
-	// ---- bad KeyInfoL args ----
-	
-	// get key info for registered identity but untrained plugin
-	TRAP(r, db->KeyInfoL(KIdentity1Id, KPluginBId))
-	TESTL(r == KErrAuthServTrainingNotFound);
-
-	// get key info for unregistered identity but trained plugin	
-	TRAP(r, db->KeyInfoL(KIdentity3Id, KPluginAId))
-	TESTL(r == KErrAuthServTrainingNotFound);
-	
-	// get key info for unregistered identity and untrained plugin
-	TRAP(r, db->KeyInfoL(KIdentity3Id, KPluginBId));
-	TESTL(r == KErrAuthServTrainingNotFound);
-	
-	// ---- bad RemoveTrainedPluginL args ----
-	
-	// clear key info for registered identity but untrained plugin
-	TRAP(r, db->KeyInfoL(KIdentity1Id, KPluginBId))
-	TESTL(r == KErrAuthServTrainingNotFound);
-
-	// clear key info for unregistered identity but trained plugin	
-	TRAP(r, db->RemoveTrainedPluginL(KIdentity3Id, KPluginAId))
-	TESTL(r == KErrAuthServTrainingNotFound);
-	
-	// clear key info for unregistered identity and untrained plugin
-	TRAP(r, db->RemoveTrainedPluginL(KIdentity3Id, KPluginBId));
-	TESTL(r == KErrAuthServTrainingNotFound);
-	
-	// -----
-
-	// clear a present trained plugin
-	db->RemoveTrainedPluginL(KIdentity1Id, KPluginAId);
-	TRAP(r, db->KeyInfoL(KIdentity3Id, KPluginAId))
-	TESTL(r == KErrAuthServTrainingNotFound);
-	
-	// register multiple trained plugins for a single identity	
-	db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiA);
-	db->SetTrainedPluginL(KIdentity1Id, KPluginBId, tkiB);
-	TestKeyPresentL(db, KIdentity1Id, KPluginAId, tkiA);
-	TestKeyPresentL(db, KIdentity1Id, KPluginAId, tkiB);
-
-	// train a single plugin for multiple identities
-	db->AddIdentityL(KIdentity2Id, KIdentity2Desc);
-	db->SetTrainedPluginL(KIdentity2Id, KPluginAId, tkiC);
-	TestKeyPresentL(db, KIdentity1Id, KPluginAId, tkiA);
-	TestKeyPresentL(db, KIdentity1Id, KPluginBId, tkiB);
-	TestKeyPresentL(db, KIdentity2Id, KPluginAId, tkiC);
-	
-	// ---- atomic identity and key addition ----
-	
-	// add identity with trained plugin
-	db->AddIdentityWithTrainedPluginL(KIdentity3Id, KIdentity3Desc, tkiA);
-	TestKeyPresentL(db, KIdentity3Id, tkiA.PluginId(), tkiA);
-	
-	// fail to add identity with trained plugin - id already exists
-	TRAP(r, db->AddIdentityWithTrainedPluginL(KIdentity3Id, KIdentity3Desc, tkiA));
-	TESTL(r == KErrAuthServIdentityAlreadyExists);
-	
-	CleanupStack::PopAndDestroy(db);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-void CTStepPersist2::TestKeyPresentL(
-	CAuthDb2* aAuthDb, TIdentityId aIdentityId, TPluginId aPluginId,
-	const CTransientKeyInfo& aTarget)
-/**
-	Helper function for TestTrainedPluginsL.
-	
-	Test the described transient key exists in the database,
-	and that is is equal to the supplied key.  Leaves if not
-	the case.
-
-	@param	aAuthDb			Authorisation database to retrieve
-							transient key info from.
-	@param	aIdentityId		Identity which should be trained for
-							the supplied plugin.
-	@param	aPluginId		Plugin for which the supplied identity
-							should be trained.
-	@param	aTarget			The retrieved transient key info should
-							be equal to this.
- */
-	{
-	CTransientKeyInfo* tkiActual = aAuthDb->KeyInfoL(aIdentityId, aPluginId);
-	CleanupStack::PushL(tkiActual);
-
-	// ensure key infos have same externalized size
-	TSizeStream ssTarget;
-	RWriteStream wsTarget(&ssTarget);
-	aTarget.ExternalizeL(wsTarget);
-	TInt targetSize = ssTarget.Size();
-
-	TSizeStream ssActual;
-	RWriteStream wsActual(&ssActual);
-	tkiActual->ExternalizeL(wsActual);
-	TESTL(targetSize == ssActual.Size());
-
-	HBufC8* targetBuf = HBufC8::NewLC(targetSize);
-	TPtr8 targetBufDes = targetBuf->Des();
-	RDesWriteStream dwsTarget(targetBufDes);
-	aTarget.ExternalizeL(dwsTarget);
-
-	HBufC8* actualBuf = HBufC8::NewLC(targetSize);
-	TPtr8 actualBufDes = actualBuf->Des();
-	RDesWriteStream dwsActual(actualBufDes);
-	tkiActual->ExternalizeL(dwsActual);
-
-	TESTL(targetBufDes == actualBufDes);
-
-	CleanupStack::PopAndDestroy(3, tkiActual);
-	}
-
-
-void CTStepPersist2::TestTrainingStatusL()
-/**
-	Test the plugins' training statuses accurately
-	reflect the identities which are registered
-	with them.
- */
-	{
-	__UHEAP_MARK;
-
-	RemoveExistingDbL();
-	
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-
-	// if there are no users then a plugin should be marked
-	// as untrained, even though its training count is equal
-	// to the number of registered identities.
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthUntrained);
-
-	// untrained when no users trained
-	db->AddIdentityL(KIdentity1Id, KIdentity1Desc);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthUntrained);
-	db->AddIdentityL(KIdentity2Id, KIdentity2Desc);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthUntrained);
-
-	// trained when some, but not all, users trained
-	const CTransientKeyInfo& tkiA = *iId1Keys[0];
-	db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiA);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthTrained);
-	
-	// fully trained when all users trained
-	db->SetTrainedPluginL(KIdentity2Id, KPluginAId, tkiA);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthFullyTrained);
-	
-	// back to trained when identity untrained
-	db->RemoveTrainedPluginL(KIdentity1Id, KPluginAId);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthTrained);
-	
-	// back to untrained when last training removed
-	db->RemoveTrainedPluginL(KIdentity2Id, KPluginAId);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthUntrained);
-	
-	// restored to trained when identity trained
-	db->SetTrainedPluginL(KIdentity1Id, KPluginAId, tkiA);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthTrained);
-
-	// restored to fully trained when last identity trained
-	db->SetTrainedPluginL(KIdentity2Id, KPluginAId, tkiA);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthFullyTrained);
-	
-	// back to trained when new identity added
-	db->AddIdentityL(KIdentity3Id, KIdentity3Desc);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthTrained);
-
-	// upgraded to fully trained when untrained identity removed
-	db->RemoveIdentityL(KIdentity3Id);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthFullyTrained);
-	
-	// kept at fully trained when trained identity removed
-	db->RemoveIdentityL(KIdentity2Id);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthFullyTrained);
-	
-	// drop to untrained when last identity removed
-	db->RemoveIdentityL(KIdentity1Id);
-	TESTL(db->PluginStatusL(KPluginAId) == EAuthUntrained);
-	
-	CleanupStack::PopAndDestroy(db);
-	
-	__UHEAP_MARKEND;
-	}
-
-
-static void IdToTestDesc(TIdentityId aId, TDes& aDesc)
-/**
-	Helper function for TestRepairL generates a description
-	from the supplied identity.
-	
-	@param	aId				Identity Id.
-	@param	aDesc			Out paramater is populated with
-							description text.
- */
-	{
-	_LIT(KDescFmt, "desc_%08x");
-	aDesc.Format(KDescFmt, aId);
-	}
-
-
-void CTStepPersist2::TestRepairL()
-/**
-	Test CAuthDb repairs the database if possible.
- */
-	{
-	RemoveExistingDbL();
-	
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-	
-	// create a set of identities
-	const TInt KTestIdCount = 8;
-	for (TInt i = 1; i <= KTestIdCount; ++i)
-		{
-		TBuf<13> buf;
-		IdToTestDesc(i, buf);
-		db->AddIdentityL(i, buf);
-		}
-	CleanupStack::PopAndDestroy(db);
-	
-	// damage the database by inserting a new entry but then
-	// rolling it back.
-	RDbNamedDatabase ndb;
-	TFileName dbName(KDbName);
-	dbName[0] = RFs::GetSystemDriveChar();
-	
-	User::LeaveIfError(ndb.Open(iFs, dbName));
-	CleanupClosePushL(ndb);
-	
-	User::LeaveIfError(ndb.Begin());
-	
-	RDbTable table;
-	CleanupClosePushL(table);
-	User::LeaveIfError(table.Open(ndb, KIdentitiesTableName));
-	
-	table.InsertL();
-	table.SetColL(KIdentitiesIdentityIdCol, KTestIdCount+1);
-	table.SetColL(KIdentitiesDescCol, _L("descb"));
-	table.PutL();
-	table.Close();
-	ndb.Rollback();
-	TESTL(ndb.IsDamaged());
-	
-	CleanupStack::PopAndDestroy(2, &ndb);	// table ndb
-	
-	// ensure db contains the same identities when it
-	// is reopened.
-	db = CAuthDb2::NewLC(iFs);
-	
-	RArray<TIdentityId> ids;
-	db->IdentitiesL(ids);
-	TInt idCount = ids.Count();
-	ids.Reset();
-	TESTL(idCount == KTestIdCount);
-	
-	for (TInt index = 1; index <= KTestIdCount; ++index)
-		{
-		TBuf<13> bufExp;
-		IdToTestDesc(index, bufExp);
-		TBuf<KMaxDescLen> actDesc;
-		HBufC* descAct = db->DescriptionL(index);
-		CleanupStack::PushL(descAct);
-		TESTL(bufExp == *descAct);
-		CleanupStack::PopAndDestroy(descAct);
-		}
-	CleanupStack::PopAndDestroy(db);
-	}
-
-
-void CTStepPersist2::TestCompressL()
-/**
-	Creates and deletes identities to create unused
-	space in database file, and tests compressed.
- */
-	{
-	RemoveExistingDbL();
-	CAuthDb2* db = CAuthDb2::NewLC(iFs);
-	
-	const TInt KIdentityCount = 32;
-	for (TInt i = 0; i < KIdentityCount; ++i)
-		{
-		_LIT(KCompDesc, "tc-test");
-		db->AddIdentityL(i, KCompDesc);
-		db->RemoveIdentityL(i);
-		}
-	CleanupStack::PopAndDestroy(db);
-	
-	TInt szPreComp = DbFileSizeL();
-	
-	db = CAuthDb2::NewLC(iFs);
-	db->CompactIfRequired();
-	CleanupStack::PopAndDestroy(db);
-	
-	TInt szPostComp = DbFileSizeL();
-	
-	TESTL(szPreComp > szPostComp);
-	}
-
-
-TInt CTStepPersist2::DbFileSizeL()
-/**
-	Helper function for TestCompressL returns
-	the size of the database file in bytes.
- */
-	{
-	RFile f;
-	TFileName dbName(KDbName);
-	dbName[0] = RFs::GetSystemDriveChar();
-
-	User::LeaveIfError(f.Open(iFs, dbName, EFileRead | EFileStream));
-	CleanupClosePushL(f);
-	
-	TInt sz;
-	User::LeaveIfError(f.Size(sz));
-	CleanupStack::PopAndDestroy(&f);
-	
-	return sz;
-	}
-
-
-
--- a/authenticationservices/authenticationserver/test/tauthdb/tauthdb.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-OPTION GCCE -Wno-multichar
-
-TARGET			tauthdb.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F0D
-VENDORID		0x70000001
-
-CAPABILITY		AllFiles
-
-SOURCEPATH		.
-SOURCE			tauthdbserver.cpp
-SOURCE			step_persist2.cpp
-SOURCE			step_createtestdb.cpp
-SOURCE          ../../source/server/authdb.cpp
-SOURCE          ../../source/server/encryptedprotectionkey.cpp
-SOURCE          ../../source/server/transientkey.cpp
-SOURCE          ../../source/server/transientkeyinfo.cpp
-
-USERINCLUDE		.
-USERINCLUDE		../../source/common
-USERINCLUDE		../../source/server
-USERINCLUDE		../../source/client
-USERINCLUDE		../../inc_private
-USERINCLUDE             ../../inc/authserver
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-LIBRARY			bafl.lib edbms.lib estor.lib efsrv.lib euser.lib
-LIBRARY         testexecuteutils.lib testexecutelogclient.lib
-LIBRARY         random.lib pbe.lib cryptography.lib
-LIBRARY         authclient.lib authcommon.lib
-LIBRARY			sectcbutil.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tauthdb/tauthdbserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* server implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "tauthdbserver.h"
-#include "tauthdbstep.h"
-
-_LIT(KServerName,"tauthdb");
-
-/**
- * Called inside the MainL() function to create and start the CTestServer 
- * derived server.
- * @return Instance of the test server
- */
-CTAuthDbServer* CTAuthDbServer::NewL()
-	{
-	CTAuthDbServer * server = new (ELeave) CTAuthDbServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit Server Logging.
-
-	server->ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-LOCAL_C void MainL()
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CTAuthDbServer* server = NULL;
-	// Create the CTestServer derived server
-	TRAPD(err,server = CTAuthDbServer::NewL());
-	if(!err)
-		{
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-GLDEF_C TInt E32Main()
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());	
-	delete cleanup;
-	return KErrNone;
-    }
-
-CTestStep* CTAuthDbServer::CreateTestStep(const TDesC& aStepName)
-	{
-	CTestStep* testStep = NULL;
-
-	if(aStepName == KTStepPersist2)
-		{
-		testStep = new CTStepPersist2();
-		}
-	else if (aStepName == KTStepCreateTestDb)
-		{
-		testStep = new CTStepCreateTestDb;
-		}
-	
-	return testStep;
-	}
--- a/authenticationservices/authenticationserver/test/tauthdb/tauthdbserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TAuthDbServer is the server for all authentication keys tests
-*
-*/
-
-
-#ifndef TAUTHDBSERVER_H
-#define TAUTHDBSERVER_H
-#include <test/testexecuteserverbase.h>
-
-class CTAuthDbServer : public CTestServer
-	{
-public:
-	static CTAuthDbServer*	NewL();
-	virtual CTestStep*      CreateTestStep(const TDesC& aStepName);
-	RFs& Fs()	{return iFs;};
-
-private:
-	RFs	iFs;
-	};
-
-#endif	/* TAUTHDBSERVER_H */
-
--- a/authenticationservices/authenticationserver/test/tauthdb/tauthdbstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,233 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TAUTHDBSTEP_H
-#define TAUTHDBSTEP_H
-
-#include <test/testexecutestepbase.h>
-#include <test/testexecutelog.h>
-#include "tauthdbserver.h"
-#include <f32file.h>
-
-#include "authdb.h"
-#include "encryptedprotectionkey.h"
-#include "transientkey.h"  
-#include "transientkey.h"  
-#include "transientkeyinfo.h"
-
-_LIT(KTStepCreateTestDb, "CreateTestDb");
-_LIT(KTStepPersist2, "PERSIST2");
-
-#define KNumPlugins 10
-
-
-class CTAuthDbStepBase : public CTestStep
-	{
-protected:
-	CTAuthDbStepBase() {}
-	virtual ~CTAuthDbStepBase();
-	
-	void CreatePlugins();
-	void CreateKeyInfo();
-		
-	virtual TVerdict doTestStepPreambleL()
-	   {
-	   iFs.Connect();
-	
-	   CreatePlugins();
-	   CreateKeyInfo();
-	   
-	   return TestStepResult();
-	   }
-	virtual TVerdict doTestStepPostambleL()
-    	{
-		iFs.Close();
-		return TestStepResult();
-		}
-	
-	void RemoveExistingDbL()
-	/**
-		Remove any existing database file.
-	 */
-		{
-		CFileMan* fm = CFileMan::NewL(iFs);
-		CleanupStack::PushL(fm);
-
-		TFileName dbName(AuthServer::KDbName);
-		dbName[0] = RFs::GetSystemDriveChar();
-
-		TInt r = fm->Delete(dbName);
-		if (r != KErrNotFound)
-			User::LeaveIfError(r);
-
-		CleanupStack::PopAndDestroy(fm);	
-		}
-
-	HBufC* GetNameLC(TInt i);
-
-	void PluginData(AuthServer::TIdentityId aId,
-					AuthServer::TPluginId aPlugin,
-					TPtr8 aDes) 
-	{
-	aDes.Fill(aId*aPlugin);
-	}
-protected:
-	RFs		iFs;
-
-
-	AuthServer::CPluginDesc*       iPlugins[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId1Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId2Keys[KNumPlugins];
-	AuthServer::CTransientKeyInfo* iId3Keys[KNumPlugins];
-  };
-
-inline CTAuthDbStepBase::~CTAuthDbStepBase() 
-    {
-    for (TInt i = 0 ; i < KNumPlugins ; ++i)
-        {
-        delete iPlugins[i];
-        delete iId1Keys[i];
-        delete iId2Keys[i];
-        delete iId3Keys[i];
-        }
-    }
-
-
-class CTStepCreateTestDb : public CTAuthDbStepBase
-/**
-	Creates a test database which tauthcliserv can
-	use to test the manager later.
- */
-	{
-public:
-	CTStepCreateTestDb();
-	
-	// implement CTestStep
-	virtual TVerdict doTestStepL();
-	};
-
-
-class CTStepPersist2 : public CTAuthDbStepBase
-	{
-public:
-	CTStepPersist2();
-	
-private:
-	virtual TVerdict doTestStepL();
-	
-	void TestOpenCloseL();
-	
-	void TestIdentitiesL();
-	void TestDescriptionL(AuthServer::CAuthDb2* aDb, AuthServer::TIdentityId aIdentityId, const TDesC& aExpDesc);
-	
-	void TestPrefsL();
-	
-	void TestTrainedPluginsL();
-	void TestKeyPresentL(
-		AuthServer::CAuthDb2* aAuthDb, AuthServer::TIdentityId aIdentityId, AuthServer::TPluginId aPluginId,
-		const AuthServer::CTransientKeyInfo& aTarget);
-	
-	void TestTrainingStatusL();
-	
-	void TestRepairL();
-
-	void TestCompressL();
-	TInt DbFileSizeL();
-	};
-
-
-inline HBufC* CTAuthDbStepBase::GetNameLC(TInt id)
-    {
-    _LIT(nameTmpl, "Plugin_%d");
-	HBufC* name = HBufC::NewLC(15);
-	name->Des().Format(nameTmpl, id);
-	return name;
-    }
-    
-inline void CTAuthDbStepBase::CreatePlugins()
-	{
-	using namespace AuthServer;
-	
-	const TAuthPluginType   types[KNumPlugins]
-		= { EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthBiometric, EAuthToken, EAuthKnowledge,
-			EAuthToken, EAuthKnowledge
-		};
-	const TAuthTrainingStatus   training[KNumPlugins]
-		= { EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthUntrained, EAuthTrained, EAuthFullyTrained,
-			EAuthTrained, EAuthFullyTrained
-		  };
-
-
-	for (TInt i = 0 ; i < KNumPlugins ; ++i)
-		{
-			HBufC* name = GetNameLC(i);
-			
-			iPlugins[i] = CPluginDesc::NewL(i,
-											*name,
-											types[i],
-											training[i],
-											i*10000,
-											i,
-											i*4);
-		    CleanupStack::PopAndDestroy(name);									
-		}
-	}
-inline void CTAuthDbStepBase::CreateKeyInfo()
-	{
-	using namespace AuthServer;
-
-	CProtectionKey* protKey1 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey2 = CProtectionKey::NewLC(8);
-	CProtectionKey* protKey3 = CProtectionKey::NewLC(8);
-
-	HBufC8* data = HBufC8::NewLC(4);
-	
-	for (TInt plugin = 0 ; plugin < KNumPlugins ; ++plugin)
-		{
-			CTransientKey* transient = 0;
-			// id 1
-			iId1Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			PluginData(1, plugin, data->Des());
-			transient = iId1Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey1 =
-				transient->EncryptL(*protKey1);
-			delete transient;
-			iId1Keys[plugin]->SetEncryptedProtectionKeyL(epKey1);
-			// id 2
-			PluginData(2, plugin, data->Des());
-			iId2Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId2Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey2 =
-				transient->EncryptL(*protKey2);
-			delete transient;
-			iId2Keys[plugin]->SetEncryptedProtectionKeyL(epKey2);
-			// id 3
-			PluginData(3, plugin, data->Des());
-			iId3Keys[plugin] = CTransientKeyInfo::NewL(plugin);
-			transient = iId3Keys[plugin]->CreateTransientKeyL(data->Des());
-			CEncryptedProtectionKey* epKey3 =
-				transient->EncryptL(*protKey3);
-			delete transient;
-			iId3Keys[plugin]->SetEncryptedProtectionKeyL(epKey3);
-		}
-	CleanupStack::Pop(4, protKey1);
-	}
-
-#endif	/* TAUTHDBSTEP_H */
--- a/authenticationservices/authenticationserver/test/tauthkeys/scripts/tauthkeys.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-// Description:
-//
-//! @file
-// authentication key classes tests
-
-LOAD_SUITE tauthkeys
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHKEYS-0001
-//! @SYMTestCaseDesc	Authentication key classes test
-START_TESTCASE SEC-AUT-AUTHKEYS-0001
-RUN_TEST_STEP 100 tauthkeys PERSIST 
-RUN_TEST_STEP 100 tauthkeys ENCRYPT_KEY
-END_TESTCASE SEC-AUT-AUTHKEYS-0001
- 
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tauthkeys/step_encryptkey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,134 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <s32file.h>
-#include "tauthkeysstep.h"
-
-using namespace AuthServer;
-
-CTStepEncryptKey::CTStepEncryptKey()
-	{
-	SetTestStepName(KTStepEncryptKey);
-	}
-
-TVerdict CTStepEncryptKey::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-__UHEAP_MARK;		// Check for memory leaks
-
-    TBool res = ETrue; 
-    TBool tmp = ETrue; 
-	TInt  err = KErrNone;
- 
-
-	_LIT8(KPluginData, "ABCDEFGHIJ");
-	_LIT8(KBadPluginData, "KLMNOPQRST");
-	_LIT(KPluginName, "PasswordPlugin");
-
-    HBufC* pluginName = HBufC::NewLC(14);
-	
-	*pluginName = KPluginName;
-
-	CTransientKeyInfo* transInfo =
-	  CTransientKeyInfo::NewLC(9999);
-	  
-	CTransientKey* transient =
-		transInfo->CreateTransientKeyL(KPluginData);
-	CleanupStack::PushL(transient);
-
-	CProtectionKey* protection =
-		CProtectionKey::NewL(8);
-	CleanupStack::PushL(protection);
-		
-	CEncryptedProtectionKey* encrypted =
-		transient->EncryptL(*protection);
-	
-	transInfo->SetEncryptedProtectionKeyL(encrypted);
-	
-	// try to set another key 
-	TRAP(err, transInfo->SetEncryptedProtectionKeyL(encrypted));
-	TEST(tmp = (err == KErrAlreadyExists));
-	res = tmp && res;
-	
-	// check the encrypted key is different from the protection key
-	TEST(tmp = (encrypted->KeyData() != protection->KeyData()));
-	res = tmp && res;
-	
-	CProtectionKey* decrypted =
-		transient->DecryptL(*encrypted);
-	CleanupStack::PushL(decrypted);
-
-	// check that the decrypted key is the same as the protection key
-	TEST(tmp = (protection->KeyData() == decrypted->KeyData()));
-	res = tmp && res;
-	
-	// check we can't use the wrong plugin data
-	CTransientKey* transient2 = 0;
-	TRAP(err, transient2 = transInfo->CreateTransientKeyL(KBadPluginData)); 
-	TEST(tmp = (err != KErrNone));
-	res = tmp && res;
-
-	// avoid set but unused warning...
-	if (transient2 == 0) transient2 = 0;
-	
-	CProtectionKey* client = protection->ClientKeyL(0xabababab);
-	CleanupStack::PushL(client);
-
-	CProtectionKey* client2 = protection->ClientKeyL(0xcdcdcdcd);
-	CleanupStack::PushL(client2);
-
-	// check protection key is different from the client key 
-	TEST(tmp = (protection->KeyData() != client->KeyData()));
-	res = tmp && res;
-	TEST(tmp = (protection->KeyData().Length() == client->KeyData().Length()));
-	res = tmp && res;
-
-	// check two client keys are different 
-	TEST(tmp = (client->KeyData() != client2->KeyData()));
-	res = tmp && res;
-	TEST(tmp = (client->KeyData().Length() == client2->KeyData().Length()));
-	res = tmp && res;
-
-	// check key lengths larger than SHA1 output is handled correctly 
-	CProtectionKey* protection2 =
-		CProtectionKey::NewL(512);
-	CleanupStack::PushL(protection2);
-
-	CProtectionKey* client3 = protection2->ClientKeyL(0xcdcdcdcd);
-	CleanupStack::PushL(client3);
-	
-	// check protection key is different from the client key 
-	TEST(tmp = (protection2->KeyData() != client3->KeyData()));
-	res = tmp && res;
-	TEST(tmp = (protection2->KeyData().Length() ==
-				client3->KeyData().Length()));
-	res = tmp && res;
-
-	// cleanup
-	CleanupStack::PopAndDestroy(8, transInfo);
-	CleanupStack::PopAndDestroy(pluginName);
-
-	SetTestStepResult(res ? EPass : EFail);
-	
-__UHEAP_MARKEND;	
-	return TestStepResult();
-	}
-
--- a/authenticationservices/authenticationserver/test/tauthkeys/step_persist.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,146 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <s32file.h>
-#include "tauthkeysstep.h"
-#include <f32file.h>
-
-using namespace AuthServer;
-
-CTStepPersist::CTStepPersist()
-	{
-	SetTestStepName(KTStepPersist);
-	}
-
-TVerdict CTStepPersist::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-__UHEAP_MARK;		// Check for memory leaks
-    
-    TBool res = ETrue;
-	TBool tmp = ETrue;
-
-	iFs.CreatePrivatePath(RFs::GetSystemDrive());
-    TBuf<50> path;
-    iFs.PrivatePath(path);
-    
-    _LIT(kProtFile, "prot.xxx");
-    _LIT(kTransFile, "trans.xxx");
-	_LIT8(KPluginData, "ABCDEFGHIJ");
-	_LIT(KPluginName, "PasswordPlugin");
-
-    HBufC* pluginName = HBufC::NewLC(14);
-	*pluginName = KPluginName;
-
-	// create elements
-	CTransientKeyInfo* transInfo =
-	  CTransientKeyInfo::NewLC(9999);
-	  
-    CTransientKey* transient =
-		transInfo->CreateTransientKeyL(KPluginData);
-	CleanupStack::PushL(transient);
-	
-	CProtectionKey* protection =
-		CProtectionKey::NewLC(8);
-	
-    CEncryptedProtectionKey* encrypted =
-		transient->EncryptL(*protection);
-	CleanupStack::PushL(encrypted);
-
-	transInfo->SetEncryptedProtectionKeyL(encrypted);
-	CleanupStack::Pop(encrypted);
-	
-	// write the encrypted key
-	RFileWriteStream writeProt;
-	
-    path.Insert(path.Length(), kProtFile);
-	User::LeaveIfError(writeProt.Replace(iFs, path,
-										 EFileShareExclusive | EFileStream));
-    CleanupClosePushL(writeProt);
-	
-	encrypted->ExternalizeL(writeProt);
-		
-	CleanupStack::PopAndDestroy(&writeProt);
-	
-	// read the encrypted key	
-	RFileReadStream readStream;
-
-	User::LeaveIfError(readStream.Open(iFs, path,
-									   EFileShareExclusive | EFileStream));
-	CleanupClosePushL(readStream);
-	
-	CEncryptedProtectionKey* encrypted2 =
-		CEncryptedProtectionKey::NewL(readStream);
-	CleanupStack::PushL(encrypted2);
- 
-	// test the restored key matches the saved
-	TEST(tmp = (encrypted->KeyData() == encrypted2->KeyData()));
-	res = tmp && res;
-
-	// write the transient key info
-	RFileWriteStream writeTrans;
-
-	iFs.PrivatePath(path);
-    path.Insert(path.Length(), kTransFile);
-	User::LeaveIfError(writeTrans.Replace(iFs, path,
-										 EFileShareExclusive | EFileStream));
-    CleanupClosePushL(writeTrans);
-	
-	transInfo->ExternalizeL(writeTrans);
-		
-	CleanupStack::PopAndDestroy(&writeTrans);
-
-	// read the transient key info 
-	RFileReadStream readStream2;
-
-	User::LeaveIfError(readStream2.Open(iFs, path,
-									   EFileShareExclusive | EFileStream));
-	CleanupClosePushL(readStream2);
-	
-	CTransientKeyInfo* transInfo2 =
-		CTransientKeyInfo::NewL(readStream2);
-	CleanupStack::PushL(transInfo2);
-
-	// recreate the transient key
-	CTransientKey* transient2 = 
-		transInfo2->CreateTransientKeyL(KPluginData);
-	CleanupStack::PushL(transient2);
-
-	// recreate the protection key.
-	CProtectionKey* decrypted =
-		transient2->DecryptL(transInfo2->EncryptedKey());
-	CleanupStack::PushL(decrypted);
-    
-    // test that the protection key and decrypted key are the same
-	TEST(tmp = (protection->KeyData() == decrypted->KeyData()));
-	res = tmp && res;
-		
-	SetTestStepResult(res ? EPass : EFail);
-
-	CleanupStack::PopAndDestroy(9, transInfo);
-    CleanupStack::PopAndDestroy(pluginName);
-
-    iFs.Delete(path);
-	
-__UHEAP_MARKEND;	
-	return TestStepResult();
-	}
-
--- a/authenticationservices/authenticationserver/test/tauthkeys/tauthkeys.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tauthkeys.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F0D
-VENDORID		0x70000001
-
-SOURCEPATH		.
-SOURCE			tauthkeysserver.cpp
-SOURCE			step_persist.cpp
-SOURCE			step_encryptkey.cpp
-SOURCE          ../../source/server/encryptedprotectionkey.cpp
-SOURCE          ../../source/server/transientkey.cpp
-SOURCE          ../../source/server/transientkeyinfo.cpp
-
-USERINCLUDE		.
-USERINCLUDE		../../source/common
-USERINCLUDE		../../source/server
-USERINCLUDE		../../source/client
-USERINCLUDE		../../inc_private
-USERINCLUDE ../../inc/authserver
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-LIBRARY			euser.lib
-LIBRARY			efsrv.lib
-LIBRARY			estor.lib
-LIBRARY         testexecuteutils.lib
-LIBRARY         testexecutelogclient.lib
-LIBRARY         random.lib
-LIBRARY         pbe.lib
-LIBRARY         cryptography.lib
-LIBRARY         authclient.lib
-LIBRARY         authcommon.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tauthkeys/tauthkeysserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,95 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* server implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "tauthkeysserver.h"
-#include "tauthkeysstep.h"
-
-_LIT(KServerName,"tauthkeys");
-
-/**
- * Called inside the MainL() function to create and start the CTestServer 
- * derived server.
- * @return Instance of the test server
- */
-CTAuthKeysServer* CTAuthKeysServer::NewL()
-	{
-	CTAuthKeysServer * server = new (ELeave) CTAuthKeysServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit Server Logging.
-
-	server->ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-LOCAL_C void MainL()
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CTAuthKeysServer* server = NULL;
-	// Create the CTestServer derived server
-	TRAPD(err,server = CTAuthKeysServer::NewL());
-	if(!err)
-		{
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-GLDEF_C TInt E32Main()
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());	
-	delete cleanup;
-	return KErrNone;
-    }
-
-CTestStep* CTAuthKeysServer::CreateTestStep(const TDesC& aStepName)
-	{
-	CTestStep* testStep = NULL;
-
-	if(aStepName == KTStepPersist)
-		{
-		testStep = new CTStepPersist();
-		}
-	else if(aStepName == KTStepEncryptKey)
-		{
-		testStep = new CTStepEncryptKey();
-		}
-	return testStep;
-	}
--- a/authenticationservices/authenticationserver/test/tauthkeys/tauthkeysserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TAuthKeysServer is the server for all authentication keys tests
-*
-*/
-
-
-#ifndef TAUTHKEYSSERVER_H
-#define TAUTHKEYSSERVER_H
-#include <test/testexecuteserverbase.h>
-
-
-class CTAuthKeysServer : public CTestServer
-	{
-public:
-	static CTAuthKeysServer*	NewL();
-	virtual CTestStep*			CreateTestStep(const TDesC& aStepName);
-	RFs& Fs()	{return iFs;};
-
-private:
-	RFs								iFs;
-	};
-
-#endif	/* TAUTHKEYSSERVER_H */
-
--- a/authenticationservices/authenticationserver/test/tauthkeys/tauthkeysstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TAUTHKEYSSTEP_H
-#define TAUTHKEYSSTEP_H
-
-#include <test/testexecutestepbase.h>
-#include <test/testexecutelog.h>
-#include "tauthkeysserver.h"
-
-#include "encryptedprotectionkey.h"
-#include "transientkey.h"  
-#include "transientkey.h"  
-#include "transientkeyinfo.h"
-
-_LIT(KTStepPersist,	"PERSIST");
-_LIT(KTStepEncryptKey,	"ENCRYPT_KEY");
-
-class CTAuthKeysStepBase : public CTestStep
-	{
-protected:
-	CTAuthKeysStepBase() {}
-	~CTAuthKeysStepBase() {}
-	virtual TVerdict doTestStepPreambleL()
-	{
-	iFs.Connect();
- 	return TestStepResult();
-	}
-	virtual TVerdict doTestStepPostambleL()
-	{
-	iFs.Close();
-	return TestStepResult();
-	}
-	
-protected:
-	RFs		iFs;
-	};
-
-class CTStepPersist : public CTAuthKeysStepBase
-	{
-public:
-	CTStepPersist();
-	virtual TVerdict doTestStepL();
-	};
-
-
-class CTStepEncryptKey : public CTAuthKeysStepBase
-	{
-public:
-	CTStepEncryptKey();
-	virtual TVerdict doTestStepL();
-	};
-
-#endif	/* TAUTHKEYSSTEP_H */
--- a/authenticationservices/authenticationserver/test/tauthplugins/10204f0e.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* 10274104.rss
-* UIDs quick-ref
-* ECOM DLL UID:			0x10204F0E 
-* ECOM interface UID:		0x12345678
-* ECOM Implementation:		0x102741040, 0x10274105
-*
-*/
-
-
-#include <ecom/registryinfov2.rh>
-
-RESOURCE REGISTRY_INFO r_registry
-{
-	dll_uid = 0x10204F0E;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-	interfaces =
-	{
-		INTERFACE_INFO
-		{ 
-		interface_uid = 0x102740FE;	// Const for all data recognisers
-		implementations = 
-			{
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274104;
-				version_no = 1;
-				display_name = "testplugin1";
-				default_data = "10274104";
-				opaque_data = "";
-				rom_only=0;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274105;
-				version_no = 1;
-				display_name = "BlockingPlugin";
-				default_data = "10274105";
-				opaque_data = "";
-				rom_only=1;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274106;
-				version_no = 1;
-				display_name = "InactivePlugin";
-				default_data = "10274106";
-				opaque_data = "";
-				rom_only=1;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274107;
-				version_no = 1;
-				display_name = "UnknownIdPlugin";
-				default_data = "10274107";
-				opaque_data = "";
-				rom_only=1;
-				}
-			};
-		}
-	};
-}
--- a/authenticationservices/authenticationserver/test/tauthplugins/10204f0e_upgrade.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* 1027410e_upgrade.rss
-* UIDs quick-ref
-* ECOM DLL UID:			0x10204F0E 
-* ECOM interface UID:		0x12345678
-* ECOM Implementation:		0x10274104, 0x10274105
-*
-*/
-
-
-#include <ecom/registryinfov2.rh>
-
-RESOURCE REGISTRY_INFO r_registry
-{
-	dll_uid = 0x10204F0E;
-	resource_format_version = RESOURCE_FORMAT_VERSION_2;
-	interfaces =
-	{
-		INTERFACE_INFO
-		{ 
-		interface_uid = 0x102740FE;	// Const for all data recognisers
-		implementations = 
-			{
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274104;
-				version_no = 2;
-				display_name = "testplugin1";
-				default_data = "10274104";
-				opaque_data = "";
-				rom_only=0;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274105;
-				version_no = 1;
-				display_name = "BlockingPlugin";
-				default_data = "10274105";
-				opaque_data = "";
-				rom_only=1;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274106;
-				version_no = 1;
-				display_name = "InactivePlugin";
-				default_data = "10274106";
-				opaque_data = "";
-				rom_only=1;
-				},
-			IMPLEMENTATION_INFO
-				{
-				implementation_uid = 0x10274107;
-				version_no = 1;
-				display_name = "UnknownIdPlugin";
-				default_data = "10274107";
-				opaque_data = "";
-				rom_only=1;
-				}
-			};
-		}
-	};
-}
--- a/authenticationservices/authenticationserver/test/tauthplugins/consts.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,30 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "authserver/authtypes.h"
-
-_LIT(KPluginName, "Test Plugin #1");
-_LIT(KPluginDescription, "Returns known id and data for each method.");
-
-_LIT8(KIdentifyData, "ABABABABABABABABABAB");
-_LIT8(KTrainData, "BABABABABABABABABABA");
-_LIT8(KRetrainData, "CCCCCCCCCCCCCCCCCCCC");
-
-static const TInt KEntropy = 999;
-static const TInt KFalsePos = 100;
-static const TInt KFalseNeg = 10;
--- a/authenticationservices/authenticationserver/test/tauthplugins/scripts/tauthplugins.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-//! @file
-// authentication plugins tests
-
-LOAD_SUITE tauthplugins
-
-////
-//! @SYMTestCaseID SEC-AUT-AUTHPLUGINS-0001
-//! @SYMTestCaseDesc	Authentication plugins test
-START_TESTCASE SEC-AUT-AUTHPLUGINS-0001
-RUN_TEST_STEP 100 tauthplugins INTERFACE 
-END_TESTCASE SEC-AUT-AUTHPLUGINS-0001
- 
\ No newline at end of file
--- a/authenticationservices/authenticationserver/test/tauthplugins/step_interface.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,269 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tauthpluginsstep.h"
-#include "consts.h"
-
-#include <test/testexecutelog.h>
-#include "authserver/authplugininterface.h"
-#include <e32std.h>
-#include <s32file.h>
-#include <ecom/implementationinformation.h>
-#include <ecom/ecom.h>
-#include <authserver/authpatchdata.h>
-#include <authserver/auth_srv_errs.h>
-#include <u32hal.h> 
-#include <e32svr.h>
-
-using namespace AuthServer;
-
-CTStepInterface::CTStepInterface()
-	{
-	SetTestStepName(KTStepInterface);
-	}
-
-CTStepInterface::~CTStepInterface()
-	{}
-
-TInt HexString2Num(const TDesC8& aStr)
-  {
-  	TInt data = 0;
-	TInt char2hex = 0;
-	TInt c = 0;
-	for (TInt i = 0 ; i < aStr.Length() ; ++i)
-	  {
-	  c = aStr[i];
-	  
-	  if (c < 'A')
-	    {
-	    char2hex='0';
-	    }
-	  else if (c < 'a')
-	    {
-	    char2hex=('A'-10);
-	    }
-	  else
-	    {
-	    char2hex=('a'-10);
-	    }
-	  data = data << 4;      
-	  data += aStr[i]-char2hex; 
-	  }
-	return data;
-  }
-
-TVerdict CTStepInterface::doTestStepPreambleL()
-	{
-	TVerdict verdict = CTAuthPluginsStepBase::doTestStepPreambleL();
-	iActiveScheduler = new(ELeave) CActiveScheduler();
-	CActiveScheduler::Install(iActiveScheduler);
-	return verdict;
-	}
-
-TVerdict CTStepInterface::doTestStepPostambleL()
-	{
-	TVerdict verdict = CTAuthPluginsStepBase::doTestStepPostambleL();
-	delete iActiveScheduler;
-	return verdict;
-	}
-	
-TVerdict CTStepInterface::doTestStepL()
-	{
-	if (TestStepResult() != EPass)
-		{
-		return TestStepResult();
-		}
-__UHEAP_MARK;		// Check for memory leaks
-	
-    TBool res = ETrue; 
-    TBool tmp = ETrue; 
-	TInt  err = KErrNone;
-
-	RImplInfoPtrArray impl;
-	CleanupClosePushL(impl);
-	REComSession::ListImplementationsL(KCAuthPluginInterfaceUid, impl);
-	
-	TEST(tmp = impl.Count() > 0);
-	res = tmp && res;
-
-	
-	TInt data = HexString2Num(impl[0]->DataType());
-
-    INFO_PRINTF2(_L("Implementation Id: 0x%x"),impl[0]->ImplementationUid().iUid);
-    INFO_PRINTF2(_L("Display Name: %S"),&impl[0]->DisplayName());
-    INFO_PRINTF2(_L("Default Data: %x"),data);
-    INFO_PRINTF2(_L("Rom Only: %d"),impl[0]->RomOnly());
-    INFO_PRINTF2(_L("Rom Based: %d"),impl[0]->RomBased());
-
-	CAuthPluginInterface* plugin = 0;
-
-	TEComResolverParams resolverParams;
-	TBufC8<16> pluginIdTxt;
-			  
-	pluginIdTxt.Des().Format(_L8("%x"), impl[0]->ImplementationUid().iUid);
-				  
-	resolverParams.SetDataType(pluginIdTxt);
-				  
-	TAny* tempPlugin = 0; 
-	TUid Dtor_ID_Key = TUid::Null();
-  	TRAP(err, tempPlugin = 
-	REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-										Dtor_ID_Key,
-										resolverParams));
-  	
-  	plugin = reinterpret_cast<CAuthPluginInterface*>(tempPlugin);	
-	if (plugin != 0)
-	    {
-	    
-	    	
-
-	    TRequestStatus t;
-	    TIdentityId id;
-
-	    HBufC8* data = 0; 
-	    plugin->Identify(id, KNullDesC(), data,t);
-        CleanupStack::PushL(data);
-        
-	    TEST(tmp = id == 22);
-    	res = tmp && res;
-	    
-	    TEST(tmp = *data == KIdentifyData);
-    	res = tmp && res;
-
-	    HBufC8* data2 = 0; 
-        plugin->Train(id,data2,t);
-        CleanupStack::PushL(data2);
-        
-        TEST(tmp = *data2 == KTrainData);
-    	res = tmp && res;
-    	
-	    HBufC8* data4 = 0; 
-        TEST(tmp = plugin->DefaultData(0, data4) == KErrNotSupported);
-    	res = tmp && res;
-
-        TEST(tmp = plugin->Name() == KPluginName);
-    	res = tmp && res;		
-
-        TEST(tmp = plugin->Description() == KPluginDescription);
-    	res = tmp && res;
-
-        TEST(tmp = plugin->MinEntropy() == KEntropy);
-    	res = tmp && res;
-
-        TEST(tmp = plugin->FalsePositiveRate() == KFalsePos);
-    	res = tmp && res;
-
-        TEST(tmp = plugin->FalseNegativeRate() == KFalseNeg);
-    	res = tmp && res;
-		
-	    CleanupStack::PopAndDestroy(2);
-	    delete plugin;
-	    REComSession::DestroyedImplementation(Dtor_ID_Key);
-	    }
-	else
-	    {
-	    ERR_PRINTF1(_L("Failed to load plugin"));
-	        
-	    res = false;
-	    }
-	    
-	 
-	TInt count = impl.Count();		
-	for (TInt i = 0; i < count; i++)
-		{
-
-		TEComResolverParams resolverParams;
-		TBufC8<16> pluginIdTxt;
-			  
-		pluginIdTxt.Des().Format(_L8("%x"), impl[i]->ImplementationUid().iUid);
-		//paste begin
-
-    	pluginIdTxt.Des().UpperCase();
-		resolverParams.SetDataType(pluginIdTxt);
-			  
-		//To load plugins from sources other than ROM the patch 
-		// data KEnablePostMarketAuthenticationPlugins must be set to True.
-		TUint32 enablePostMarketPlugin = KEnablePostMarketAuthenticationPlugins;
-
-#ifdef __WINS__
-    
-		// Default SymbianOS behavior is to only load auth plugins from ROM.
-		enablePostMarketPlugin = 0;
-
-		// For the emulator allow the constant to be patched via epoc.ini
-		UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-       (TAny*)"KEnablePostMarketAuthenticationPlugins", &enablePostMarketPlugin); // read emulator property (if present)
-
-#endif
-
-    	  TAny* tempPlugin = 0;
-		  TInt err = 0;
-		  TUid Dtor_ID_Key = TUid::Null();
-			  
-		 if(enablePostMarketPlugin == 0) 
-		  	{
-		  	TRAP(err, tempPlugin = 
-			REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-												Dtor_ID_Key,
-												resolverParams,
-												KRomOnlyResolverUid));
-		  	}
-		  
-		  else
-		  	{
-		  	TRAP(err, tempPlugin = 
-			REComSession::CreateImplementationL(KCAuthPluginInterfaceUid,
-												Dtor_ID_Key,
-												resolverParams));
-		  	}
-		  
-		 if (err == KErrNotFound)
-		    {
-		    err = KErrAuthServNoSuchPlugin;  
-		    }
-		  User::LeaveIfError(err);
-		    						  	  	
-		plugin = reinterpret_cast<CAuthPluginInterface*>(tempPlugin);	
-
-	    INFO_PRINTF2(_L("ID:           0x%x"),plugin->Id());
-	    INFO_PRINTF2(_L("Name:         %S"),&plugin->Name());
-	    INFO_PRINTF2(_L("Description:  %S"),&plugin->Description());
-	    INFO_PRINTF2(_L("Type          %x"),plugin->Type());
-	    INFO_PRINTF2(_L("MinEntropy:   %d"),plugin->MinEntropy());
-	    INFO_PRINTF2(_L("FPR           %d"),plugin->FalsePositiveRate());
-	    INFO_PRINTF2(_L("FNR           %d"),plugin->FalseNegativeRate());
-	    INFO_PRINTF2(_L("IsActive      %d"),plugin->IsActive());
-		HBufC8* buf = 0;
-		INFO_PRINTF2(_L("DefaultData   %d"),plugin->DefaultData(0,buf));
-		if (buf) { delete buf; }
-		
-	    delete plugin;
-		delete impl[i];
-		REComSession::DestroyedImplementation(Dtor_ID_Key);
-		}
-	
-	CleanupStack::PopAndDestroy(&impl);
-	
-	REComSession::FinalClose();
-
-	SetTestStepResult(res ? EPass : EFail);
-	
-__UHEAP_MARKEND;	
-	return TestStepResult();
-	}
-
--- a/authenticationservices/authenticationserver/test/tauthplugins/tauthplugins.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET			tauthplugins.exe
-TARGETTYPE		exe
-UID				0x1000007A 0x10204F0D
-VENDORID		0x70000001
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(test)
-
-USERINCLUDE			.
-USERINCLUDE			../../source/common
-USERINCLUDE			../../source/server
-USERINCLUDE			../../source/client
-USERINCLUDE			../../inc_private
-
-SOURCEPATH		.
-SOURCE			tauthpluginsserver.cpp
-SOURCE			step_interface.cpp
-
-SOURCE          ../../source/common/plugindesc.cpp
-
-LIBRARY			euser.lib
-LIBRARY			efsrv.lib
-LIBRARY			estor.lib
-LIBRARY         testexecuteutils.lib
-LIBRARY         testexecutelogclient.lib
-LIBRARY         ecom.lib
-LIBRARY			authcommon.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* server implementation
-*
-*/
-
-
-/**
- @file 
-*/
-
-#include "tauthpluginsserver.h"
-#include "tauthpluginsstep.h"
-
-_LIT(KServerName,"tauthplugins");
-
-/**
- * Called inside the MainL() function to create and start the CTestServer 
- * derived server.
- * @return Instance of the test server
- */
-CTAuthPluginsServer* CTAuthPluginsServer::NewL()
-	{
-	CTAuthPluginsServer * server = new (ELeave) CTAuthPluginsServer();
-	CleanupStack::PushL(server);
-	
-	// Either use a StartL or ConstructL, the latter will permit Server Logging.
-
-	server->ConstructL(KServerName);
-	CleanupStack::Pop(server);
-	return server;
-	}
-
-LOCAL_C void MainL()
-	{
-	// Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-	RProcess().DataCaging(RProcess::EDataCagingOn);
-	RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-	CActiveScheduler* sched=NULL;
-	sched=new(ELeave) CActiveScheduler;
-	CleanupStack::PushL(sched);
-	CActiveScheduler::Install(sched);
-	CTAuthPluginsServer* server = NULL;
-	// Create the CTestServer derived server
-	TRAPD(err,server = CTAuthPluginsServer::NewL());
-	if(!err)
-		{
-		RProcess::Rendezvous(KErrNone);
-		sched->Start();
-		}
-	CleanupStack::Pop(sched);
-	delete server;
-	delete sched;
-	}
-
-GLDEF_C TInt E32Main()
-	{
-	CTrapCleanup* cleanup = CTrapCleanup::New();
-	if(cleanup == NULL)
-		{
-		return KErrNoMemory;
-		}
-	TRAP_IGNORE(MainL());	
-	delete cleanup;
-	return KErrNone;
-    }
-
-CTestStep* CTAuthPluginsServer::CreateTestStep(const TDesC& aStepName)
-	{
-	CTestStep* testStep = NULL;
-
-	if(aStepName == KTStepInterface)
-		{
-		testStep = new CTStepInterface();
-		}
-
-	return testStep;
-	}
--- a/authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TAuthPluginsServer is the server for all authentication plugins tests
-*
-*/
-
-
-#ifndef TAUTHPLUGINSSERVER_H
-#define TAUTHPLUGINSSERVER_H
-#include <test/testexecuteserverbase.h>
-
-class CTAuthPluginsServer : public CTestServer
-	{
-public:
-	static CTAuthPluginsServer*	NewL();
-	virtual CTestStep*			CreateTestStep(const TDesC& aStepName);
-	RFs& Fs()	{return iFs;};
-
-private:
-	RFs								iFs;
-	};
-
-#endif	/* TAUTHPLUGINSSERVER_H */
-
--- a/authenticationservices/authenticationserver/test/tauthplugins/tauthpluginsstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TAUTHPLUGINSSTEP_H
-#define TAUTHPLUGINSSTEP_H
-
-#include <test/testexecutestepbase.h>
-#include "tauthpluginsserver.h"
-
-_LIT(KTStepInterface, "INTERFACE");
-
-class CTAuthPluginsStepBase : public CTestStep
-	{
-protected:
-	CTAuthPluginsStepBase() {}
-	~CTAuthPluginsStepBase() {}
-	virtual TVerdict doTestStepPreambleL()
-	{
-	iFs.Connect();
- 	return TestStepResult();
-	}
-	virtual TVerdict doTestStepPostambleL()
-	{
-	iFs.Close();
-	return TestStepResult();
-	}
-	
-protected:
-	RFs		iFs;
-	};
-
-
-class CTStepInterface : public CTAuthPluginsStepBase
-	{
-public:
-	CTStepInterface();
-	~CTStepInterface();
-	virtual TVerdict doTestStepL();
-	virtual TVerdict doTestStepPreambleL();
-	virtual TVerdict doTestStepPostambleL();
-	
-private:
-	CActiveScheduler* iActiveScheduler;
-	};
-
-#endif	/* TAUTHPLUGINSSTEP_H */
--- a/authenticationservices/authenticationserver/test/tauthplugins/testplugins.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,249 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "testplugins.h"
-#include <ecom/ecom.h>
-#include <f32file.h>
-#include "consts.h"
-
-using namespace AuthServer;
-
-TBool E32Dll()
-  {
-  return (ETrue);
-  }
-
-CTestPlugin1::CTestPlugin1()  : iActive(false)
-  {
-  iName.Set(KPluginName);
-  iDescription.Set(KPluginDescription);
-  iType = EAuthKnowledge;
-  iMinEntropy = KEntropy;
-  iFalsePositiveRate = KFalsePos;
-  iFalseNegativeRate = KFalseNeg;
-
-  RFs fs;
-  fs.Connect();
-  TEntry file;
-  
-  _LIT(KActiveFile, "\\testplugin_active\\");
-  TDriveUnit sysDrive (fs.GetSystemDrive());
-  TBuf<128> activeFile (sysDrive.Name());
-  activeFile.Append(KActiveFile);
-  iActive = fs.Entry(activeFile, file);;
-  fs.Close();
-  //RDebug::Printf("Plugin started, active = %d", iActive);
-  iActive = iActive != KErrNotFound;
-  //RDebug::Printf("Plugin started, active = %d", iActive);
-  }
-
-void CTestPlugin1::Identify(TIdentityId& aId, const TDesC& /*aClientMessage*/,
-							HBufC8*& aResult, TRequestStatus& aRequest)
-    {
-	aId = 22;
-	aResult = HBufC8::New(20);
-	
-	TRequestStatus *stat = &aRequest;
-	
-	if(aResult == NULL)
-			{
-			User::RequestComplete(stat, KErrNoMemory);
-			return;
-			}
-	
-	*aResult = KIdentifyData;
-	User::RequestComplete(stat, KErrNone);
-    }
-  
-void CTestPlugin1::Train(TIdentityId /*aId*/, HBufC8*& aResult,
-						 TRequestStatus& aRequest)
-    {
-	aResult = HBufC8::New(20);
-	
-	TRequestStatus* status = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-
-	*aResult = KTrainData;
-	User::RequestComplete(status, KErrNone);
-			
-	}
-
-
-void CUnknownPlugin::Identify(TIdentityId& aId, const TDesC& /*aClientMessage*/,
-							  HBufC8*& aResult, TRequestStatus& aRequest)
-    {
-	aId = KUnknownIdentity;
-	aResult = HBufC8::New(0);
-	
-	TRequestStatus *stat = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(stat, KErrNoMemory);
-		return;
-		}
-	
-	User::RequestComplete(stat, KErrNone);
-    }
-  
-void CUnknownPlugin::Train(TIdentityId /*aId*/, HBufC8*& aResult,
-						 TRequestStatus& aRequest)
-    {
-	aResult = HBufC8::New(0);
-	TRequestStatus* status = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-	
-	User::RequestComplete(status, KErrAuthServPluginCancelled);
-	}
-
-TBool CTestPlugin1::IsActive() const 
-    {
-	return iActive;
-	}
-
-
-TInt CTestPlugin1::Forget(TIdentityId /*aId*/)
-    {
-	return KErrNone;
-    }
-TInt CTestPlugin1::DefaultData(TIdentityId /*aId*/, HBufC8*& /*aOutputBuf*/)
-    {
-	return KErrNotSupported;
-    }
-
-TInt CTestPlugin1::Reset(TIdentityId /*aId*/, const TDesC& /*aRegistrationData*/, HBufC8*& /*aResult*/)
-	{
-	return KErrNotSupported;
-	}
-
-const TImplementationProxy ImplementationTable[] =
-  {
-	IMPLEMENTATION_PROXY_ENTRY(0x10274104, CTestPlugin1::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274105, CBlockPlugin::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274106, CInactivePlugin::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274107, CUnknownPlugin::NewL)
-  };
-
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-  {
-  aTableCount = sizeof(ImplementationTable) /
-	sizeof(TImplementationProxy);
-  return ImplementationTable;
-  }
-
-const TPtrC& CTestPlugin1::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CTestPlugin1::Description() const
-  {
-  return iDescription;
-  }
-TAuthPluginType CTestPlugin1::Type() const 
-  {
-  return iType;
-  }
-
-TEntropy CTestPlugin1::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-TPercentage CTestPlugin1::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-TPercentage CTestPlugin1::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
-//Unknown Plugin
-
-const TPtrC& CUnknownPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CUnknownPlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CUnknownPlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CUnknownPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CUnknownPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CUnknownPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
-
-//Inactive Plugin
-
-const TPtrC& CInactivePlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CInactivePlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CInactivePlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CInactivePlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CInactivePlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CInactivePlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
--- a/authenticationservices/authenticationserver/test/tauthplugins/testplugins.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,231 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <ecom/implementationproxy.h>
-#include <e32base.h>
-
-#include "authserver/authplugininterface.h"
-#include "authserver/authtypes.h"
-#include "authserver/auth_srv_errs.h"
-
-
-
-namespace AuthServer
-{
-class CTestPlugin1 : public CAuthPluginInterface
-	{
-public:
-	static CTestPlugin1* NewL()
-	{ return new (ELeave) CTestPlugin1(); }
-
-	CTestPlugin1();
-	virtual ~CTestPlugin1() {}
-	virtual TPluginId Id() const { return 0x10274104; }
-	virtual void Train(TIdentityId aId, HBufC8*& aResult,
-  					   TRequestStatus& aRequest);
-	virtual void Cancel() {};
- 
-	virtual  void Identify(TIdentityId& aId, const TDesC& aClientMessage,
-						   HBufC8*& aResult, TRequestStatus& aRequest);
-
-	virtual TBool IsActive() const;
-	virtual TInt Forget(TIdentityId aId);
-	virtual TInt DefaultData(TIdentityId aId, HBufC8*& aOutputBuf);
-	virtual TInt Reset(TIdentityId aId, const TDesC& aRegistrationData, HBufC8*& aResult);
-	virtual const TPtrC& Name() const;
-	virtual const TPtrC& Description() const;
-	virtual AuthServer::TEntropy MinEntropy() const;
-	virtual AuthServer::TPercentage FalsePositiveRate() const;
-	virtual AuthServer::TPercentage FalseNegativeRate() const;
-	virtual AuthServer::TAuthPluginType Type() const;
-
-protected:
- 	/// The name of the plugin. Derived classes should set this member.
- 	TPtrC iName;
- 	/// The plugin's description. Derived classes should set this member.
- 	TPtrC iDescription;
- 	/// The minumum entropy provided by the plugin. Derived classes should set
- 	/// this member.
- 	AuthServer::TEntropy iMinEntropy;
- 	/// The false positive rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalsePositiveRate;
- 	/// The false negative rate of the plugin. Derived classes should set this
- 	/// member.
- 	AuthServer::TPercentage iFalseNegativeRate;
-  	/// The type of the plugin. Derived classes should set this member.
- 	AuthServer::TAuthPluginType iType;
- 	/// the state of the plugin.
- 	TBool iActive;
-
-    };
-
-class CInactivePlugin : public CTestPlugin1
-	{
-public:
-	static CInactivePlugin* NewL()
-	{ return new (ELeave) CInactivePlugin(); }
-
-	CInactivePlugin() {}
-	virtual ~CInactivePlugin() {}
-	virtual TPluginId Id() const { return 0x10274106; }
-
-	virtual TBool IsActive() const { return EFalse; }
-	virtual const TPtrC& Name() const;
-	virtual const TPtrC& Description() const;
-	virtual AuthServer::TEntropy MinEntropy() const;
-	virtual AuthServer::TPercentage FalsePositiveRate() const;
-	virtual AuthServer::TPercentage FalseNegativeRate() const;
-	virtual AuthServer::TAuthPluginType Type() const;
-    };
-
-
-class CUnknownPlugin : public CTestPlugin1
-	{
-public:
-	static CUnknownPlugin* NewL()
-	{ return new (ELeave) CUnknownPlugin(); }
-
-	CUnknownPlugin() {}
-	virtual ~CUnknownPlugin() {}
-	virtual TPluginId Id() const { return 0x10274107; }
-	virtual  void Identify(TIdentityId& aId,  const TDesC& aClientMessage,
-							HBufC8*& aResult, TRequestStatus& aRequest);
-
-	virtual void Train(TIdentityId aId, HBufC8*& aResult,
-  					   TRequestStatus& aRequest);
-	virtual TBool IsActive() const { return ETrue; }
-	const TPtrC& Name() const;
-	const TPtrC& Description() const;
-	virtual AuthServer::TEntropy MinEntropy() const;
-	virtual AuthServer::TPercentage FalsePositiveRate() const;
-	virtual AuthServer::TPercentage FalseNegativeRate() const;
-	virtual AuthServer::TAuthPluginType Type() const;
-    };
-    
-class CWaitToComplete : public CTimer
-    {
-    public: 
-    CWaitToComplete() : CTimer(EPriorityNormal)
-        { CTimer::ConstructL(); }
-        
-    void RunL()
-        {
-        RDebug::Printf("TestPlugin waittocomplete RUNL() : %d", iStatus.Int());
-        if (iStatus != KErrNone)
-            {
-            iReturn = iStatus.Int();
-            }
-        User::RequestComplete(iCliReq, iReturn); 
-        }
-        
-     
-    void SetCliStatus(TRequestStatus& aResult, TInt aReturn)    
-        { iCliReq = &aResult; iReturn = aReturn; }
-        
-    TRequestStatus* iCliReq;    
-    TInt iReturn; 
-    };
-    
-class CBlockPlugin : public CTestPlugin1
-	{
-public:
-	static CBlockPlugin* NewL()
-	{ return new (ELeave) CBlockPlugin(); }
-
-	CBlockPlugin() 
-	    {
-	    }
-	virtual ~CBlockPlugin() {}
-  
-	virtual TPluginId Id() const { return 0x10274105; }
-
-	virtual void Train(TIdentityId /*aId*/, HBufC8*& aResult,
-  					   TRequestStatus& aRequest)
-    	{
-		if (!iTimer.IsAdded())
-            {
-            CActiveScheduler::Add(&iTimer);
-            }
-        iClientStatus = &aRequest;
-        aRequest =  KRequestPending;
-        iTimer.SetCliStatus(aRequest, KErrAuthServPluginCancelled);
-        iTimer.After(5000000);        
-        aResult = 0;
-        }
-
-	virtual void Cancel()
-	    {
-        iTimer.Cancel();
-        User::RequestComplete(iClientStatus, KErrCancel);
-        }
- 
-	virtual  void Identify(TIdentityId& aId, const TDesC& /*aClientMessage*/,
-							HBufC8*& aResult, TRequestStatus& aRequest)
-	    {
-		if (!iTimer.IsAdded())
-            {
-            CActiveScheduler::Add(&iTimer);
-            }
-        iClientStatus = &aRequest;
-        aRequest =  KRequestPending;
-        iTimer.SetCliStatus(aRequest, KErrNone);
-        iTimer.After(5000000);  
-		aId = KUnknownIdentity;
-		aResult = 0;
-		}
-	virtual const TPtrC& Name() const
-	  {
-	  return iName;
-	  }
-	virtual const TPtrC& Description() const
-	  {
-	  return iDescription;
-	  }
-	virtual TAuthPluginType Type() const 
-	  {
-	  return iType;
-	  }
-
-	virtual TEntropy MinEntropy() const
-	  {
-	  return iMinEntropy;
-	  }
-
-	virtual TPercentage FalsePositiveRate() const
-	  {
-	  return iFalsePositiveRate;
-	  }
-
-	virtual TPercentage FalseNegativeRate() const
-	  {
-	  return iFalseNegativeRate;
-	  }
-
-	private:
-	
-	TRequestStatus  iStatus;
-	TRequestStatus* iClientStatus;
-	CWaitToComplete iTimer;
-	
-    };
-
-} 
-
-IMPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount);
-  
--- a/authenticationservices/authenticationserver/test/tauthplugins/testplugins.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET				testplugins.dll
-TARGETTYPE			PLUGIN
-UID					0x10009d8d 0x10204F0E
-VENDORID			0x70000001
-
-CAPABILITY			ALL -TCB
-
-OS_LAYER_SYSTEMINCLUDE
-
-USERINCLUDE			.
-USERINCLUDE			../../source/common
-USERINCLUDE			../../source/server
-USERINCLUDE			../../source/client
-USERINCLUDE			../../inc_private
-
-SOURCEPATH			.
-SOURCE				testplugins.cpp
-
-START RESOURCE        10204f0e.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET testplugins.rsc
-#endif
-END
-
-
-
-
-LIBRARY			euser.lib ecom.lib efsrv.lib authcommon.lib
-SMPSAFE
--- a/authenticationservices/authenticationserver/test/tauthplugins/testpluginsupgrade.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,251 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "testplugins.h"
-#include <ecom/ecom.h>
-#include <f32file.h>
-#include "consts.h"
-
-using namespace AuthServer;
-
-_LIT(KTestPluginsUpgradeNamePin, "Test Plugin #1 - Upgrade");
-
-TBool E32Dll()
-  {
-  return (ETrue);
-  }
-
-CTestPlugin1::CTestPlugin1()  : iActive(false)
-  {
-  iName.Set(KTestPluginsUpgradeNamePin);
-  iDescription.Set(KPluginDescription);
-  iType = EAuthKnowledge;
-  iMinEntropy = KEntropy;
-  iFalsePositiveRate = KFalsePos;
-  iFalseNegativeRate = KFalseNeg;
-
-  RFs fs;
-  fs.Connect();
-  TEntry file;
-  
-  _LIT(KActiveFile, "\\testplugin_active\\");
-  TDriveUnit sysDrive (fs.GetSystemDrive());
-  TBuf<128> activeFile (sysDrive.Name());
-  activeFile.Append(KActiveFile);
-  iActive = fs.Entry(activeFile, file);;
-  fs.Close();
-  //RDebug::Printf("Plugin started, active = %d", iActive);
-  iActive = iActive != KErrNotFound;
-  //RDebug::Printf("Plugin started, active = %d", iActive);
-  }
-
-void CTestPlugin1::Identify(TIdentityId& aId, const TDesC& /*aClientMessage*/,
-							HBufC8*& aResult, TRequestStatus& aRequest)
-    {
-	aId = 22;
-	aResult = HBufC8::New(20);
-	
-	TRequestStatus *stat = &aRequest;
-	
-	if(aResult == NULL)
-			{
-			User::RequestComplete(stat, KErrNoMemory);
-			return;
-			}
-	
-	*aResult = KIdentifyData;
-	User::RequestComplete(stat, KErrNone);
-    }
-  
-void CTestPlugin1::Train(TIdentityId /*aId*/, HBufC8*& aResult,
-						 TRequestStatus& aRequest)
-    {
-	aResult = HBufC8::New(20);
-	
-	TRequestStatus* status = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-
-	*aResult = KTrainData;
-	User::RequestComplete(status, KErrNone);
-			
-	}
-
-
-void CUnknownPlugin::Identify(TIdentityId& aId, const TDesC& /*aClientMessage*/,
-							  HBufC8*& aResult, TRequestStatus& aRequest)
-    {
-	aId = KUnknownIdentity;
-	aResult = HBufC8::New(0);
-	
-	TRequestStatus *stat = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(stat, KErrNoMemory);
-		return;
-		}
-	
-	User::RequestComplete(stat, KErrNone);
-    }
-  
-void CUnknownPlugin::Train(TIdentityId /*aId*/, HBufC8*& aResult,
-						 TRequestStatus& aRequest)
-    {
-	aResult = HBufC8::New(0);
-	TRequestStatus* status = &aRequest;
-	
-	if(aResult == NULL)
-		{
-		User::RequestComplete(status, KErrNoMemory);
-		return;
-		}
-	
-	User::RequestComplete(status, KErrAuthServPluginCancelled);
-	}
-
-TBool CTestPlugin1::IsActive() const 
-    {
-	return iActive;
-	}
-
-
-TInt CTestPlugin1::Forget(TIdentityId /*aId*/)
-    {
-	return KErrNone;
-    }
-TInt CTestPlugin1::DefaultData(TIdentityId /*aId*/, HBufC8*& /*aOutputBuf*/)
-    {
-	return KErrNotSupported;
-    }
-
-TInt CTestPlugin1::Reset(TIdentityId /*aId*/, const TDesC& /*aRegistrationData*/, HBufC8*& /*aResult*/)
-	{
-	return KErrNotSupported;
-	}
-
-const TImplementationProxy ImplementationTable[] =
-  {
-	IMPLEMENTATION_PROXY_ENTRY(0x10274104, CTestPlugin1::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274105, CBlockPlugin::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274106, CInactivePlugin::NewL),
-	IMPLEMENTATION_PROXY_ENTRY(0x10274107, CUnknownPlugin::NewL)
-  };
-
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-  {
-  aTableCount = sizeof(ImplementationTable) /
-	sizeof(TImplementationProxy);
-  return ImplementationTable;
-  }
-
-const TPtrC& CTestPlugin1::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CTestPlugin1::Description() const
-  {
-  return iDescription;
-  }
-TAuthPluginType CTestPlugin1::Type() const 
-  {
-  return iType;
-  }
-
-TEntropy CTestPlugin1::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-TPercentage CTestPlugin1::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-TPercentage CTestPlugin1::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
-//Unknown Plugin
-
-const TPtrC& CUnknownPlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CUnknownPlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CUnknownPlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CUnknownPlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CUnknownPlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CUnknownPlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
-
-
-//Inactive Plugin
-
-const TPtrC& CInactivePlugin::Name() const
-  {
-  return iName;
-  }
-const TPtrC& CInactivePlugin::Description() const
-  {
-  return iDescription;
-  }
-AuthServer::TAuthPluginType CInactivePlugin::Type() const 
-  {
-  return iType;
-  }
-
-AuthServer::TEntropy CInactivePlugin::MinEntropy() const
-  {
-  return iMinEntropy;
-  }
-
-AuthServer::TPercentage CInactivePlugin::FalsePositiveRate() const
-  {
-  return iFalsePositiveRate;
-  }
-
-AuthServer::TPercentage CInactivePlugin::FalseNegativeRate() const
-  {
-  return iFalseNegativeRate;
-  }
-
--- a/authenticationservices/authenticationserver/test/tauthplugins/testpluginsupgrade.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET				testpluginsupgrade.dll
-TARGETTYPE			PLUGIN
-UID					0x10009d8d 0x10204F0E
-VENDORID			0x70000001
-
-CAPABILITY			ALL -TCB
-
-VERSION 10.1
-
-OS_LAYER_SYSTEMINCLUDE
-
-USERINCLUDE			.
-USERINCLUDE			../../source/common
-USERINCLUDE			../../source/server
-USERINCLUDE			../../source/client
-USERINCLUDE			../../inc_private
-
-SOURCEPATH			.
-SOURCE				testpluginsupgrade.cpp
-
-START RESOURCE        10204f0e_upgrade.rss
-#ifdef SYMBIAN_SECURE_ECOM
-TARGET testpluginsupgrade.rsc
-#endif
-END
-
-
-
-LIBRARY			euser.lib ecom.lib efsrv.lib authcommon.lib
-SMPSAFE
--- a/authorisation/userpromptservice/bwins/upspoliciesu.def	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/bwins/upspoliciesu.def	Wed Sep 01 12:40:57 2010 +0100
@@ -6,7 +6,7 @@
 	??0TSidClasses@UserPromptService@@QAE@G@Z @ 5 NONAME ; UserPromptService::TSidClasses::TSidClasses(unsigned short)
 	??1CDialogCreator@UserPromptService@@UAE@XZ @ 6 NONAME ; UserPromptService::CDialogCreator::~CDialogCreator(void)
 	??1CPolicyEvaluator@UserPromptService@@UAE@XZ @ 7 NONAME ; UserPromptService::CPolicyEvaluator::~CPolicyEvaluator(void)
-	??1CPromptRequest@UserPromptService@@UAE@XZ @ 8 NONAME ABSENT ; UserPromptService::CPromptRequest::~CPromptRequest(void)
+	??1CPromptRequest@UserPromptService@@UAE@XZ @ 8 NONAME ; UserPromptService::CPromptRequest::~CPromptRequest(void)
 	??8TId@CPolicyList@UserPromptService@@QBEHABV012@@Z @ 9 NONAME ; int UserPromptService::CPolicyList::TId::operator==(class UserPromptService::CPolicyList::TId const &) const
 	?PromptRequired@CPolicy@UserPromptService@@QBEHXZ @ 10 NONAME ; int UserPromptService::CPolicy::PromptRequired(void) const
 	?AppendNameToPath@TId@CPolicyList@UserPromptService@@QBEXAAVTDes16@@@Z @ 11 NONAME ; void UserPromptService::CPolicyList::TId::AppendNameToPath(class TDes16 &) const
@@ -59,7 +59,7 @@
 	?OpaqueData@CPromptRequest@UserPromptService@@QBEABVTDesC8@@XZ @ 58 NONAME ; class TDesC8 const & UserPromptService::CPromptRequest::OpaqueData(void) const
 	?Options@CPolicy@UserPromptService@@QBE?AW4TOptions@12@XZ @ 59 NONAME ; enum UserPromptService::CPolicy::TOptions UserPromptService::CPolicy::Options(void) const
 	?PolicyEvaluator@CPolicy@UserPromptService@@QBEABVTUid@@XZ @ 60 NONAME ; class TUid const & UserPromptService::CPolicy::PolicyEvaluator(void) const
-	?ReadPolicyL@CPolicyReader@UserPromptService@@AAEPAVCPolicy@2@XZ @ 61 NONAME ABSENT ; class UserPromptService::CPolicy * UserPromptService::CPolicyReader::ReadPolicyL(void)
+	?ReadPolicyL@CPolicyReader@UserPromptService@@AAEPAVCPolicy@2@XZ @ 61 NONAME ; class UserPromptService::CPolicy * UserPromptService::CPolicyReader::ReadPolicyL(void)
 	?ReleasePlugin@CPluginManager@UserPromptService@@AAEXXZ @ 62 NONAME ; void UserPromptService::CPluginManager::ReleasePlugin(void)
 	?SecurityResult@CPromptRequest@UserPromptService@@QBEHXZ @ 63 NONAME ; int UserPromptService::CPromptRequest::SecurityResult(void) const
 	?ServerSid@CPromptRequest@UserPromptService@@QBEABVTSecureId@@XZ @ 64 NONAME ; class TSecureId const & UserPromptService::CPromptRequest::ServerSid(void) const
--- a/authorisation/userpromptservice/database/source/upsdb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/database/source/upsdb.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
 
 #include "upsdbw.h"
--- a/authorisation/userpromptservice/database/source/upsdbcompact.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/database/source/upsdbcompact.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
  
 #include "upsdbw.h"
--- a/authorisation/userpromptservice/database/source/upsdbw.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/database/source/upsdbw.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
 
 #include "upsdbw.h"
--- a/authorisation/userpromptservice/database/test/tupsdb/source/tupsdbbase.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/database/test/tupsdb/source/tupsdbbase.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -572,11 +572,11 @@
 		if(recordList.Count() != 1)
 			{
 			SetTestStepResult(EFail);
-			CleanupStack::PopAndDestroy(3, record);
+			CleanupStack::PopAndDestroy(3,record);
 			break;
-			}		
-		CleanupStack::PopAndDestroy(3, record);
-		}	
+			}
+		CleanupStack::PopAndDestroy(3,record);	
+		}				
 	}
 
 
--- a/authorisation/userpromptservice/database/test/tupsdb/source/tupsdbstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/database/test/tupsdb/source/tupsdbstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -25,6 +25,7 @@
 #include "tupsdbstep.h"
 #include <test/testexecutelog.h>
 
+
 using namespace UserPromptService;
 
 
--- a/authorisation/userpromptservice/eabi/upspoliciesu.def	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/eabi/upspoliciesu.def	Wed Sep 01 12:40:57 2010 +0100
@@ -16,7 +16,7 @@
 	_ZN17UserPromptService13CClientEntity4NewLERK6TDesC8 @ 15 NONAME
 	_ZN17UserPromptService13CClientEntity5NewLCERK6TDesC8 @ 16 NONAME
 	_ZN17UserPromptService13CPolicyReader11NextPolicyLEv @ 17 NONAME
-	_ZN17UserPromptService13CPolicyReader11ReadPolicyLEv @ 18 NONAME ABSENT
+	_ZN17UserPromptService13CPolicyReader11ReadPolicyLEv @ 18 NONAME
 	_ZN17UserPromptService13CPolicyReader14DefaultPolicyLEv @ 19 NONAME
 	_ZN17UserPromptService13CPolicyReader4NewLER3RFsRK7TDesC16 @ 20 NONAME
 	_ZN17UserPromptService13CPolicyReader5NewLCER3RFsRK7TDesC16 @ 21 NONAME
@@ -34,9 +34,9 @@
 	_ZN17UserPromptService14CPluginManager6UnloadEv @ 33 NONAME
 	_ZN17UserPromptService14CPromptRequest4NewLERK9TSecureIdRK9TVendorIdRK9TThreadIdR10TProcessIdS3_RK4TUidR6RBuf16R5RBuf8i @ 34 NONAME
 	_ZN17UserPromptService14CPromptRequest5NewLCERK9TSecureIdRK9TVendorIdRK9TThreadIdR10TProcessIdS3_RK4TUidR6RBuf16R5RBuf8i @ 35 NONAME
-	_ZN17UserPromptService14CPromptRequestD0Ev @ 36 NONAME ABSENT
-	_ZN17UserPromptService14CPromptRequestD1Ev @ 37 NONAME ABSENT
-	_ZN17UserPromptService14CPromptRequestD2Ev @ 38 NONAME ABSENT
+	_ZN17UserPromptService14CPromptRequestD0Ev @ 36 NONAME
+	_ZN17UserPromptService14CPromptRequestD1Ev @ 37 NONAME
+	_ZN17UserPromptService14CPromptRequestD2Ev @ 38 NONAME
 	_ZN17UserPromptService16CPolicyEvaluator10Extension_EjRPvS1_ @ 39 NONAME
 	_ZN17UserPromptService16CPolicyEvaluator12ForcePromptLERKNS_15CDecisionRecordERj @ 40 NONAME
 	_ZN17UserPromptService16CPolicyEvaluator12GetExtensionEjRPvS1_ @ 41 NONAME
--- a/authorisation/userpromptservice/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -24,14 +24,13 @@
 #include "../examples/bld.inf"
 
 PRJ_EXPORTS
-../inc/ups.hrh			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ups/ups.hrh)
+../inc/ups.hrh			/epoc32/include/ups/ups.hrh
 ../inc/upsconst.h		SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ups/upsconst.h)
 ../inc/upserr.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ups/upserr.h)
 ../inc/upstypes.h		SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ups/upstypes.h)
 ../inc/ups.iby			/epoc32/rom/include/ups.iby
 
 
-
 PRJ_TESTEXPORTS
 ../inc/tups.iby				/epoc32/rom/include/tups.iby
 ../inc/tups_integ.iby		/epoc32/rom/include/tups_integ.iby
--- a/authorisation/userpromptservice/inc/tups.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/inc/tups.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -22,11 +22,8 @@
 #include <testexecute.iby>
 #include <tupspolicies.iby>
 #include <tups_integ.iby>
-#ifdef _SERIAL_DOWNLOAD
 #include <upstechview.iby>
-#else
-#include <security_ups_utils.iby>
-#endif
+
 define ZDRIVE \epoc32\data\Z
 
 REM User Prompt Service Tests
--- a/authorisation/userpromptservice/inc/tups_integ.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/inc/tups_integ.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -133,5 +133,20 @@
 data = ZDRIVE\tups\integ\corrupted_db_integ\ups_corrupted2.db	\tups\integ\corrupted_db_integ\ups_corrupted2.db
 
 
+REM Integration test sis files and related.
+data = ZDRIVE\tups\integ\packages\uninstall.xml					\tups\integ\packages\uninstall.xml
+data = ZDRIVE\tups\integ\packages\simple.xml					\tups\integ\packages\simple.xml
+data = ZDRIVE\tups\integ\packages\tupsinteg_post1.sis			\tups\integ\packages\tupsinteg_post1.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_policies1.sis 			\tups\integ\packages\tupsinteg_policies1.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_policies2.sis			\tups\integ\packages\tupsinteg_policies2.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_evaluator1.sis			\tups\integ\packages\tupsinteg_evaluator1.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_dialog1.sis				\tups\integ\packages\tupsinteg_dialog1.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_eclipse1.sis			\tups\integ\packages\tupsinteg_eclipse1.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_ca_not_instore.sis		    \tups\integ\packages\tupsinteg_ca_not_instore.sis
+data = ZDRIVE\tups\integ\packages\tupsinteg_policies1_negative.sis     \tups\integ\packages\tupsinteg_policies1_negative.sis
+
+
+REM Integration test, file to simulate tamper attempt for backup and restore.
+data = ZDRIVE\tups\integ\tampered_backup\backup10285777.1			\tups\integ\tampered_backup\backup10285777.1
 
 #endif
--- a/authorisation/userpromptservice/policies/source/policyreader.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/policies/source/policyreader.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -192,7 +192,7 @@
 	return p;
 	}
 
-CPolicy* CPolicyReader::ReadPolicyL()
+EXPORT_C CPolicy* CPolicyReader::ReadPolicyL()
 /**
 Reads the next policy from the resource file.
 
--- a/authorisation/userpromptservice/policies/source/promptrequest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/policies/source/promptrequest.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -204,7 +204,7 @@
 	return iSecurityResult;
 	}
 	
-CPromptRequest::~CPromptRequest()
+EXPORT_C CPromptRequest::~CPromptRequest()
 /**
 Destructor
 */
--- a/authorisation/userpromptservice/server/source/upsclient/upsclientserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/server/source/upsclient/upsclientserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
 #include <s32strm.h>
 #include <ups/upstypes.h>
--- a/authorisation/userpromptservice/test/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -27,6 +27,9 @@
 
 PRJ_TESTEXPORTS
 
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../include/tups_clientapi_sysserver.h		/epoc32/include/test/tups_clientapi_sysserver.h
+#endif
 
 //// test scripts ////
 ../tups/scripts/tups_properties.ini     z:/tups/integ/scripts/tups_properties.ini
@@ -43,6 +46,13 @@
 ../tups/corrupted_db_integ/ups_corrupted1.db     z:/tups/integ/corrupted_db_integ/ups_corrupted1.db
 ../tups/corrupted_db_integ/ups_corrupted2.db     z:/tups/integ/corrupted_db_integ/ups_corrupted2.db
 
+////  XML files to control sis files installations.
+../tups/packages/uninstall.xml		z:/tups/integ/packages/uninstall.xml
+../tups/packages/simple.xml		z:/tups/integ/packages/simple.xml
+
+
+//// File to simulate tamper attempt for backup and restore.
+../tups/tampered_backup/backup10285777.1         z:/tups/integ/tampered_backup/backup10285777.1
 
 PRJ_TESTMMPFILES
 
@@ -50,6 +60,8 @@
 #ifndef TOOLS2
 #ifndef GCCXML
 
+tups_install.mmp
+tups_backuprestore.mmp
 tupsinteg.mmp
 tupsinteg_unprotected.mmp
 tups_clientapi_sysserver.mmp
@@ -68,11 +80,14 @@
 tups_dialogcreator_always.mmp
 tups_dialogcreator_never.mmp
 tups_dialogcreator07.mmp
-//tups_notifier.mmp
+tups_notifier.mmp
 tups_nopolicies_server.mmp
 
 tupsinteg_post1.mmp  // target need to be deleted after sis creation 
 
+//// create SIS files for postmanufacture tests and negative postmanufacture tests   /////
+makefile  ../tups/packages/integ_buildsis.fil
+
 gnumakefile ../tups/packages/testromstub.mak
 
 #endif
--- a/authorisation/userpromptservice/test/group/tups_dialogcreator_never.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/group/tups_dialogcreator_never.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -36,6 +36,8 @@
 macro			DIALOG_NEVER
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
+
 
 sourcepath		../tups_dialogcreator/source
 source			tups_dialogcreator_noprops.cpp
@@ -44,11 +46,14 @@
 target			tups_dialogcreator_never.rsc
 end
 
+library			apgrfx.lib
+library			apparc.lib
 library			ecom.lib
 library 		euser.lib
 library			ipcstream.lib 
 library 		estor.lib
 library 		hash.lib
 library			upspolicies.lib
+library 		sisregistryclient.lib 
 library			upsnotifierutil.lib 
 SMPSAFE
--- a/authorisation/userpromptservice/test/group/tupsinteg.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/group/tupsinteg.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -44,6 +44,7 @@
 USERINCLUDE ../include 
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 //Please add your system include under here. 
 
--- a/authorisation/userpromptservice/test/group/tupsinteg_post1.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/group/tupsinteg_post1.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -46,6 +46,7 @@
 USERINCLUDE ../include 
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 //Please add your system include under here. 
 
--- a/authorisation/userpromptservice/test/group/tupsinteg_unprotected.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/group/tupsinteg_unprotected.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -39,6 +39,7 @@
 USERINCLUDE ../include 
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 //Please add your system include under here. 
 
--- a/authorisation/userpromptservice/test/inc_private/tups_notifiertypes.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/inc_private/tups_notifiertypes.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file
  @internalTechnology 
- @released 
+ @prototype 
 */
 
 #ifndef TUPSNOTIFIERTYPES_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/copy.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,60 @@
+@rem
+@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+@rem All rights reserved.
+@rem This component and the accompanying materials are made available
+@rem under the terms of the License "Eclipse Public License v1.0"
+@rem which accompanies this distribution, and is available
+@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+@rem 
+@rem Initial Contributors:
+@rem Nokia Corporation - initial contribution.
+@rem 
+@rem Contributors:
+@rem 
+@rem Description: 
+@rem 
+
+
+echo Copy pkg files to common location and change to that location
+call mkdir %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\
+copy /y tupsinteg_post1.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_post1.pkg
+copy /y tupsinteg_policies1.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_policies1.pkg
+copy /y tupsinteg_policies2.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_policies2.pkg
+copy /y tupsinteg_evaluator1.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_evaluator1.pkg
+copy /y tupsinteg_eclipse1.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_eclipse1.pkg
+copy /y tupsinteg_dialog1.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_dialog1.pkg
+copy /y tupsinteg_ca_not_instore.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_ca_not_instore.pkg
+copy /y testupsromstub.pkg %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\testupsromstub.pkg
+copy /y dummy.txt %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\dummy.txt
+
+copy /y %EPOCROOT%epoc32\release\%1\%2\tupsinteg_post1.exe %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tupsinteg_post1.exe
+copy /y %EPOCROOT%epoc32\release\%1\%2\tups_policyevaluator05.dll %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tups_policyevaluator05.dll
+copy /y %EPOCROOT%epoc32\data\z\resource\plugins\tups_policyevaluator05.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tups_policyevaluator05.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\tups_dialogcreator07.dll %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tups_dialogcreator07.dll
+copy /y %EPOCROOT%epoc32\data\z\resource\plugins\tups_dialogcreator07.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\tups_dialogcreator07.rsc
+
+if "%1"=="WINSCW" goto WINSCW;
+if "%1"=="ARMV5" goto ARMV5;
+
+
+:WINSCW
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_ff000001_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version1.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_ff000001_version2.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version2.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_0000aaa2_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_0000aaa2_version1.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\eclipse_ups_101f7f1f_0000aaa3.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\eclipse_ups_101f7f1f_0000aaa3.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_0000aaa4.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_0000aaa4.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_ff000001_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version1.rsc
+copy /y %EPOCROOT%epoc32\release\%1\%2\Z\private\10283558\policies\t_ups_101f7f1f_ff000001_version2.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version2.rsc
+goto EXIT;
+
+:ARMV5
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_ff000001_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version1.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_ff000001_version2.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version2.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_0000aaa2_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_0000aaa2_version1.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\eclipse_ups_101f7f1f_0000aaa3.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\eclipse_ups_101f7f1f_0000aaa3.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_0000aaa4.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_0000aaa4.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_ff000001_version1.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version1.rsc
+copy /y %EPOCROOT%epoc32\data\z\private\10283558\policies\t_ups_101f7f1f_ff000001_version2.rsc %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\t_ups_101f7f1f_ff000001_version2.rsc
+goto EXIT;
+
+:EXIT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/create.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,53 @@
+@rem
+@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+@rem All rights reserved.
+@rem This component and the accompanying materials are made available
+@rem under the terms of the License "Eclipse Public License v1.0"
+@rem which accompanies this distribution, and is available
+@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+@rem 
+@rem Initial Contributors:
+@rem Nokia Corporation - initial contribution.
+@rem 
+@rem Contributors:
+@rem 
+@rem Description: 
+@rem 
+
+
+
+echo makesis
+cd %EPOCROOT%epoc32\WINSCW\c\tups\data\%2\
+makesis %3.pkg %4_unsigned.sis
+
+echo signsis
+if "%5"=="ROOT5CA" signsis %4_unsigned.sis %4.sis %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\root5ca\ca.pem  %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\root5ca\ca.key.pem
+if "%5"=="ALL" signsis %4_unsigned.sis %4.sis %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\symbiantestallcapabilitiesca\symbiantestallcapabilitiesca.pem  %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\symbiantestallcapabilitiesca\cakey.pem
+if "%5"=="TESTROOT" signsis %4_unsigned.sis %4.sis %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\symbiantestrootcadsa\ca.pem %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\symbiantestrootcadsa\ca.key.pem
+if "%5"=="SELF" signsis %4_unsigned.sis %4.sis %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\certificatesnotinstore\selfsigned_cert.pem %SECURITYSOURCEDIR%\testframework\testcertificates\ups\test\certificatesnotinstore\selfsigned_key.pem
+
+if "%1"=="WINSCW" goto COPYWINSCW;
+if "%1"=="ARMV5" goto COPYARMV5;
+
+:COPYWINSCW
+
+echo Copy winscw sis to emulator drive or armv5 to data z tree
+copy /y %4.sis %EPOCROOT%epoc32\release\%1\%2\z\tups\integ\packages\%4.sis
+goto clean;
+
+	
+:COPYARMV5
+echo Copy winscw sis to emulator drive or armv5 to data z tree
+copy /y %4.sis %EPOCROOT%epoc32\data\z\tups\integ\packages\%4.sis
+
+
+goto clean;
+
+:clean
+del /q %4_unsigned.sis 
+del /q %4.sis 
+
+goto exit;
+
+:exit
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/dummy.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,1 @@
+I'm a dummy file used to signal SIS file installation is finished.
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/integ_buildsis.fil	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,93 @@
+MAKEDATA :
+!IF "$(PLATFORM)" == "GCCXML" || "$(PLATFORM)" == "TOOLS" || "$(PLATFORM)" == "TOOLS2" 
+	cd
+	echo ----------------
+	echo  Do nothing ...
+	echo ----------------
+!ELSE
+	cd
+	echo --------------------------------------------------------------
+	echo Copying required input datas
+	echo --------------------------------------------------------------
+
+	call copy.bat $(PLATFORM) $(CFG)
+
+	echo --------------------------------------------------------------
+	echo Building SIS file to install removable test client
+	echo --------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_post1 tupsinteg_post1 ROOT5CA
+	
+
+	echo --------------------------------------------------------------
+	echo Building SIS to install policy files post manufacture.
+	echo --------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_policies1 tupsinteg_policies1 ROOT5CA
+
+	echo --------------------------------------------------------------
+	echo Building SIS to install policy files post manufacture.
+	echo --------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_policies2 tupsinteg_policies2 ROOT5CA
+
+	echo --------------------------------------------------------------
+	echo Building SIS file to install a policy evaluator via SWI
+	echo --------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_evaluator1	tupsinteg_evaluator1 ALL
+    
+	echo ---------------------------------------------------------------------------
+	echo Building SIS file to install a policy evaluator and dialog creator via SWI
+	echo ---------------------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_dialog1 tupsinteg_dialog1 ALL
+
+	echo -------------------------------------- 
+	echo Building SIS to eclipse policy files.
+	echo --------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_eclipse1 tupsinteg_eclipse1 ROOT5CA
+
+	echo --------------------------------------------------------------------------
+	echo Building SIS to (attempt to) install policy files (incorrect cert used)
+	echo --------------------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_policies1	tupsinteg_policies1_negative TESTROOT
+
+	echo -----------------------------------------------------------------------
+	echo Building SIS to install policy files signed with CA cert not in store
+	echo -----------------------------------------------------------------------
+	
+	call create.bat $(PLATFORM) $(CFG) tupsinteg_ca_not_instore tupsinteg_ca_not_instore SELF
+
+	echo
+
+!ENDIF
+
+
+DO_NOTHING:
+	rem do nothing
+
+#
+# The targets invoked by abld...
+#
+
+MAKMAKE : DO_NOTHING
+FREEZE : DO_NOTHING
+LIB : DO_NOTHING
+RESOURCE : DO_NOTHING
+CLEANLIB : DO_NOTHING
+BLD : DO_NOTHING
+RELEASABLES : DO_NOTHING
+
+SAVESPACE : BLD
+
+FINAL : MAKEDATA
+
+CLEAN : 
+	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_post1.sis 	del /q %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_post1.sis 
+	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_policies1.sis 	del /q %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_policies1.sis 
+	if exist %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_policies2.sis 	del /q %EPOCROOT%epoc32\release\"$(PLATFORM)"\"$(CFG)"\z\tups\integ\packages\tupsinteg_policies2.sis 
+	
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/simple.xml	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
+<!-- simple.sis: Installation of a simple text file -->
+<Script>
+	<!-- Accept installation prompt -->
+	<dialog name="DisplayInstall">
+		<return type="TBool">true</return>
+	</dialog>
+	<!-- Choose the first language by its index -->
+	<dialog name="DisplayLanguage">
+		<return type="TInt">0</return>
+	</dialog>
+	<!-- Choose drive C which is the first in the list -->
+	<dialog name="DisplayDrive">
+		<return type="TInt"> c</return>
+	</dialog>
+	<!-- Display text file, ask user to confirm or abort -->
+	<dialog name="DisplayText">
+		<return type="TBool">true</return> 
+	</dialog>
+	<dialog name="DisplayUpgrade">
+		<return type="TBool">true</return> 
+	</dialog>
+	<!-- Display security warning, continue if possible -->
+	<dialog name="DisplaySecurityWarning">
+		<return type="TBool">true</return>
+	</dialog>
+	<!-- Display Grant Capabilities dialog -->
+	<dialog name="DisplayGrantCapabilities">
+		<return type="TBool">true</return>
+	</dialog>
+</Script>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_ca_not_instore.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,29 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integ UPS policy update Ca cert not stored"}, (0x10285777), 1, 0, 2, TYPE=SP
+%{"UPS integration test"}
+:"UPS integration test"
+
+; The VERIFY option is used to flag the files as non-modifiable so that SWI
+; checks the hashes during restore.
+
+"t_ups_101f7f1f_ff000001_version2.rsc"-"!:\private\10283558\policies\ups_101f7f1f_ff000001.rsc", VERIFY
+"dummy.txt"-"C:\tups\integ\ca_no_instore_was_installed.txt"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_dialog1.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,31 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integration UPS new dialog creator"}, (0x10285777), 1, 0, 2, TYPE=SP
+%{"UPS integration test"}
+:"UPS integration test"
+
+; The VERIFY option is used to flag the files as non-modifiable so that SWI
+; checks the hashes during restore.
+
+"t_ups_101f7f1f_0000aaa2_version1.rsc"-"!:\private\10283558\policies\ups_101f7f1f_0000aaa2.rsc", VERIFY
+"tups_dialogcreator07.rsc"-"!:\resource\plugins\tups_dialogcreator07.rsc" 
+"tups_dialogcreator07.dll"-"!:\sys\bin\tups_dialogcreator07.dll" 
+"dummy.txt"-"C:\tups\integ\dialog1pkg_was_installed.txt"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_eclipse1.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,30 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integration UPS test policy eclipsing"}, (0x10285777), 1, 0, 0, TYPE=SP
+%{"Symbian Software Ltd"}
+:"Symbian Software Ltd"
+
+; The VERIFY option is used to flag the files as non-modifiable so that SWI
+; checks the hashes during restore.
+
+"eclipse_ups_101f7f1f_0000aaa3.rsc"-"!:\private\10283558\policies\ups_101f7f1f_0000aaa3.rsc", VERIFY
+"t_ups_101f7f1f_0000aaa4.rsc"-"!:\private\10283558\policies\ups_101f7f1f_0000aaa4.rsc", VERIFY
+"dummy.txt"-"C:\tups\integ\eclipse1pkg_was_installed.txt"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_evaluator1.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,29 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integration UPS test policy evaluator install"}, (0xE1111E50), 1, 0, 0, TYPE=SA
+%{"Symbian Software Ltd"}
+:"Symbian Software Ltd"
+
+
+; installs a new policy evaluator to be used for ups integration tests. 
+"tups_policyevaluator05.rsc"-"!:\resource\plugins\tups_policyevaluator05.rsc" 
+"tups_policyevaluator05.dll"-"!:\sys\bin\tups_policyevaluator05.dll" 
+"dummy.txt"-"C:\tups\integ\evaluator1pkg_was_installed.txt"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_policies1.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,28 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integration UPS test policy update"}, (0x10285777), 1, 0, 0, TYPE=SP
+%{"Symbian Software Ltd"}
+:"Symbian Software Ltd"
+
+; The VERIFY option is used to flag the files as non-modifiable so that SWI
+; checks the hashes during restore.
+
+"t_ups_101f7f1f_ff000001_version1.rsc"-"!:\private\10283558\policies\ups_101f7f1f_ff000001.rsc", VERIFY
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_policies2.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,29 @@
+;
+; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+
+; Tests the installation of UPS policies files
+
+&EN
+
+#{"integration UPS test policy update"}, (0x10285777), 1, 0, 2, TYPE=SP
+%{"UPS integration test"}
+:"UPS integration test"
+
+; The VERIFY option is used to flag the files as non-modifiable so that SWI
+; checks the hashes during restore.
+
+"t_ups_101f7f1f_ff000001_version2.rsc"-"!:\private\10283558\policies\ups_101f7f1f_ff000001.rsc", VERIFY
+"dummy.txt"-"C:\tups\integ\policies2pkg_was_installed.txt"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/tupsinteg_post1.pkg	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,28 @@
+;
+; Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of the License "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: 
+;
+&EN
+
+;Header
+#{"TUPS: used for Post manufacture tests"}, (0x80003141), 1, 2, 3, TYPE=SA
+
+%{"Vendor"}
+:"ups integration test"
+
+
+; Do not be scare about this strange manouvre, this runs in conjuction with a .fil file.
+"tupsinteg_post1.exe"-"!:\sys\bin\tupsinteg_post1.exe" 
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/packages/uninstall.xml	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
+<Script>
+	<dialog name="DisplayUninstall">
+		<return type="TBool">true</return>
+	</dialog>
+	<dialog name="DisplayDependencyBreak">
+		<return type="TBool">true</return> 
+	</dialog>
+  </Script>
\ No newline at end of file
--- a/authorisation/userpromptservice/test/tups/scripts/tups_integ.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/tups/scripts/tups_integ.script	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 //
-// Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -1168,6 +1168,323 @@
 END_TESTCASE SEC-UPS-D004
 
 
+//! @SYMTestCaseID 	SEC-INTEG-UPS-D006
+//! @SYMTestCaseDesc 	Removal of decision from DB by uninstalling client. 
+//!                     (client_removal)
+//!		
+//! @SYMPREQ		PREQ1262
+//! @SYMREQ		REQ7387
+//! @SYMTestPriority 	Critical
+//! @SYMTestStatus   	Implemented
+//! @SYMTestActions  	Preconditions:
+//!		     	• For each of the services There is an appropriate policy, policy evaluator and dialog 
+//!			creator that matches the UID of the service offered by the “system server”.
+//!		     	• The test clients used for this test case were installed with a SIS file that did not 
+//!			install the policy or policy evaluator mapped to these test clients.
+//!		     	• There is more than one decision stored for test applications. 
+//!		     	
+//!			Test Actions:
+//!		     	• Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
+//!                  	• Uninstall test client B. 
+//!		     	• Launch test clients (A & C), these two Clients should have normal access to test service 
+//!			without need for security dialog prompt.
+//!
+//! @SYMTestExpectedResults  	• Decision for test client B was removed from decision DB. Decisions for test clients 
+//!				A & C are still present in DB with value “always”
+//!			     	• Test client A & C are granted access to test service. 
+//!
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-D006
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// Installs new client via swi (tupsinteg_post1)
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_post1
+LOAD_SUITE tupsinteg_post1
+
+// creates decision for new installed client.
+// This odd jump to another script is indispensable in this situation. 
+RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
+
+CONCURRENT
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+// Unsinstall  new client via swi (tupsinteg_post1)
+RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini  uninstall_post1 
+CONSECUTIVE
+
+// Need to reinstall client to be able to check decisions
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_post1
+
+// creates decision for new installed client.
+// This odd jump to another script is indispensable in this situation. 
+RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
+
+// decisions for other clients are expected to be unchanged. 
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// Last Unsinstall of new client via swi (tupsinteg_post1) (clean up)
+RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini  uninstall_post1 
+
+END_TESTCASE SEC-INTEG-UPS-D006
+
+
+//! @SYMTestCaseID SEC-INTEG-UPS-D007
+//! @SYMTestCaseDesc Removal of decision from DB by upgrading client. 
+//!                  (client_update)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7387 REQ7470
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions  Preconditions:
+//!		     •	For each of the services There is an appropriate policy, policy evaluator 
+//!			and dialog creator that matches the UID of the service offered by the “system server”.
+//!                  •  The test clients used for this test case were installed with a SIS file that did not 
+//!			install the policy or policy evaluator mapped to these test clients.
+//!		     •	More than 1 decision is associated to test client.
+//!		     Test Actions:
+//!                  •  Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
+//!		     •	Upgrade test client B by using SIS file. This SIS file should replace EXE file associated 
+//!			to test client B. 
+//!		     •	Launch test clients (A, B, C), A & C should have normal access to test service without 
+//!			need for security dialog prompt. UPS should display security dialog for Client B, select  “Never”.
+//!
+//! @SYMTestExpectedResults  •	Decision for test client B was changed in the decision DB from “Always” to “Never”. 
+//!				Decisions for test clients A & C are still present in DB with value “always”
+//! 			     •	Test client A & C are granted access to test service.
+//!
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-D007
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// Installs new client via swi (tupsinteg_post1)
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_post1
+
+// creates decision for new installed client.
+// This odd jump to another script is indispensable in this situation. 
+RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1.script
+
+CONCURRENT
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+// Reinstall client via swi, this counts as an upgrate (tupsinteg_post1)
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_post1
+CONSECUTIVE
+
+// creates decision for new installed client.
+// This odd jump to another script is indispensable in this situation. 
+RUN_SCRIPT z:\tups\integ\scripts\tups_integ_post1_check.script
+
+// decisions for other clients are expected to be unchanged. 
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// Last Unsinstall of new client via swi (tupsinteg_post1) (clean up)
+RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini  uninstall_post1 
+
+END_TESTCASE SEC-INTEG-UPS-D007
+
+//! @SYMTestCaseID SEC-INTEG-UPS-D009
+//! @SYMTestCaseDesc Removal of decision from DB by uninstalling policy file
+//!                  (policy_removal)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7397 REQ7399 REQ7400
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			•  For each of the services there is an appropriate policy, policy evaluator and dialog creator 
+//!			   that matches the UID of the service offered by the “system server”.
+//!			•  The SIS file used to install test policy did NOT install any executable client that could be 
+//!			   mapped to this policy. 
+//!			Test Actions:
+//!			•  Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
+//!			•  Uninstall policy mapped to Client B.
+//!			•  Launch test clients (A, B, C).  Clients A & C should have normal access test service.
+//!			•  For Client B, test system server should receive a KErrUpsMissingPolicyFile form UPS. 
+//!			•  Check that Client A & C can access test service.
+//!
+//! @SYMTestExpectedResults  •	Decision DB contains only “Always” decision stored for Clients A & C, Client B 
+//!				should not have any decision associated to it.
+//!			     •	Test client A & C are granted access to test service.
+//!			     •	Test client B is granted not granted service.
+//!			     •	KErrUpsMissingPolicyFile issued to system server when request security dialog for client B.
+//!
+//! @SYMTestType CIT
+START_TESTCASE SEC-INTEG-UPS-D009
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs policy file version 1
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v1
+
+
+// populates decisions related to policy just installed
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// uninstall policy file.
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v1
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+END_TESTCASE SEC-INTEG-UPS-D009
+
+//! @SYMTestCaseID SEC-INTEG-UPS-D010
+//! @SYMTestCaseDesc Removal of decision from DB by upgrading policy file
+//!                  (policy_update)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7397 REQ7399 REQ7400
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions  Preconditions:
+//!		     Preconditions:
+//!			• For each of the services There is an appropriate policy, policy evaluator and 
+//!    			 dialog creator that matches the UID of the service offered by the “system server”.
+//!			• The SIS file used to install test policy did NOT install any executable client that 
+//!			  could be mapped to this policy. 
+//!			Test Actions:
+//!			• Populate decision DB for 3 test clients (A, B, C) with “Always” decisions for 3 Clients.
+//!			• Upgrade policy mapped to Client B via SWI.
+//!			• Launch test clients (A, B, C).  Clients A & C should have normal access test service (no
+//!			 prompting). For Client B, UPS should prompt again for user permission, select “never” option.
+//!			• Check that Client A & C can access test service.
+//! @SYMTestExpectedResults  •	Decision DB contains only “Always” decision stored for Clients A & C, for Client
+//!				 B the decision stored now is “never”.  
+//!			     •	 Test client A & C are granted access to test service.
+//!			     •	Policy files were installed in private directory
+//!
+//! @SYMTestType CIT
+START_TESTCASE SEC-INTEG-UPS-D010
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs policy file version 1
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v1
+
+
+// populates decisions related to policy just installed
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// installs policy file version 2, this should cause decisions to be deleted
+CONCURRENT
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v2
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_inflight_change
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+CONSECUTIVE
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// Cleanup 
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v2
+
+////////////     repeats same test sequence but without concurrency  /////////////////////////
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs policy file version 1
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v1
+
+// populates decisions related to policy just installed
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v1_check
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// installs policy file version 2, this should cause decisions to be deleted.
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v2
+
+// populates decisions that are expected to be deleted.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
+
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// Cleanup 
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v2
+
+
+
+END_TESTCASE SEC-INTEG-UPS-D010
+
+
 //********************** SEC-UPS-E : SECURITY POLICIES AND POLICY EVALUATOR PLUG-INS  **********************
 //! @SYMTestCaseID SEC-UPS-INTEG-E001
 //! @SYMTestCaseDesc To ensure that when a single bit is set in the “options” no security
@@ -1415,6 +1732,133 @@
 RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini question_mark_card
 END_TESTCASE SEC-UPS-INTEG-E009
 
+//! @SYMTestCaseID SEC-INTEG-UPS-E017
+//! @SYMTestCaseDesc Post manufacture install of Policy Evaluator
+//!                  (policy_evaluator_install)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7408
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			•  There a policy file associated to test service, however the policy evaluator specified 
+//!			   in the “Policy evaluator field”  is not present in the phone
+//!			Test Actions:
+//!			•  Using SIS file install new policy evaluator that is listed in policy file (This SIS file 
+//!			   only installs policy evaluator plug-in, it does NOT install policy file).
+//! 			•  Launch test client which uses policy file that invokes use of new policy evaluator, verify 
+//!			   that UPS invokes the new policy evaluator, use test client to store new “never” and “always” 
+//!			   decisions.
+//!			•  Uninstall the policy evaluator that was just previously installed, re-install again the same
+//!			   policy evaluator; as decisions are not expected to be deleted verify that the decisions are 
+//!			   still there in database.
+//!			•  Run the previous test sequence concurrently with other clients using decisions stored in DB not
+//!		           related to new policy evaluator, check that these decisions are not affected by installation 
+//!			   and removal of policy evaluator.  
+//!
+//! @SYMTestExpectedResults  •	Newly installed policy evaluator is used after installation by SIS file.
+//!			     •	Decisions in DB are not affected by installation/removal of policy evaluator.
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-E017
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs new policy evaluator 
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_evaluator5
+
+// Delay added to alow new plugin to be scaned by some magic entity in the phone 
+DELAY 8000
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini newevaluator5
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// uninstall policy file.
+RUN_TEST_STEP 100 tups_install UninstallStep z:\tups\integ\scripts\tups_integ.ini  uninstall_evaluator5
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_30
+
+END_TESTCASE SEC-INTEG-UPS-E017
+
+
+//! @SYMTestCaseID SEC-INTEG-UPS-E018
+//! @SYMTestCaseDesc Post manufacture install of dialog creator
+//!                  (dialog_creator_install)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7408
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			• Existence of SIS file that can install new dialog creator and policy file.
+//!		     Test Actions:     
+//!			• Using SIS file install new dialog creator and policy file.
+//!			• Request specific services to test system server that will invoke ups for 
+//!			  authorization and using the new dialog creator and policy file installed. Make 
+//!			  sure that an “always” and “never” decisions are stored in DB.
+//!			• Uninstall the SIS file, check the new decisions related to previously installed 
+//!			  dialog creator were removed for DB.
+//!
+//! @SYMTestExpectedResults  
+//!			• Newly installed dialog and policy are used by UPS after installation by 
+//!			  SIS file. 
+//!			• New decisions related to new dialog creator and policy file are stored correctly
+//!			  into decision DB. 
+//!			• Decisions related to policy file (installed by the same SIS file) are removed 
+//!			  from DB. 
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-E018
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs new policy evaluator 
+RUN_TEST_STEP !Heap=0x150000 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_dialog7
+// Delay Allows new plugin to be scanned by ECOM
+DELAY 8000
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini newdialog7
+
+
+// uninstall policy file.
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  uninstall_dialog7
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+END_TESTCASE SEC-INTEG-UPS-E018
+
+
 
 //! @SYMTestCaseID SEC-INTEG-UPS-E024
 //! @SYMTestCaseDesc Security Policy Authorisation - EAlwaysCheck  
@@ -2156,6 +2600,109 @@
 
 //********************** SEC-UPS-G : NEGATIVE TEST CASES  **********************
 
+//! @SYMTestCaseID SEC-INTEG-UPS-G001
+//! @SYMTestCaseDesc Policy installation via SWI signed with CA certificate non present in certstore. 
+//!                  (policy_file_ca_not_in_store)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7398
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			• Policy to be installed does not currently exist in phone
+//!			• The SIS file to attempt a policy file installation has been signed with 
+//!			  a CA certificate is not present in the SWI CA store.
+//!		     Test Actions: 
+//!			• Install sis that installs policy.
+//!
+//! @SYMTestExpectedResults  
+//!			• SWI should reject SIS file for security reasons.
+//!			 
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-G001
+
+RUN_TEST_STEP_RESULT -10254 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini ca_cert_no_stored
+
+END_TESTCASE SEC-INTEG-UPS-G001
+
+
+
+
+
+
+
+
+//! @SYMTestCaseID SEC-INTEG-UPS-G002
+//! @SYMTestCaseDesc Tamper attempt in policy files backup and restore
+//!                  (tampered_policy_file_backup_restore)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ4701
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			• There is a set of static policies already present in phone. 
+//!			• The policy files installed via SIS file to be used for test purpose was flagged 
+//!			  with “VERIFY” in the package file.
+//!		     Test Actions: 
+//!			• Install policy file flagged with “VERIFY”, populate decisions in database.
+//!			• Back up policy files.
+//!			• Delete policy file form private directory.
+//!			• Try to restore static policies from a backed up archive that is different that the 
+//!			  one obtained originally.
+//!			
+//!
+//! @SYMTestExpectedResults  
+//!			•	Restore operation should fail and tampered archive rejected.
+//!			 
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-G002
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
+RUN_UTILS DeleteFile C:\tswi\tbackuprestore\backup10285777.1
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+
+// installs policy file with VERIFY flag
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v2
+
+// populates decisions related to policy just installed
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
+
+// backs up policy file
+RUN_TEST_STEP 100 tups_backuprestore  BACKUP  z:\tups\integ\scripts\tups_integ.ini	backup_policy_file2
+
+// deletes valid backup files
+RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
+RUN_UTILS DeleteFile c:\tswi\tbackuprestore\backup10285777.1
+
+//copies altered backup files to replace the valid ones.
+RUN_UTILS CopyFile z:\tups\integ\tampered_backup\backup10285777.1  c:\tswi\tbackuprestore\backup10285777.1
+RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
+
+//Deletes current policy file been used by 
+RUN_UTILS DeleteFile c:\private\10283558\policies\ups_101f7f1f_ff000001.rsc
+
+// restores policy file
+RUN_TEST_STEP_RESULT -11 100 tups_backuprestore  RESTORE  z:\tups\integ\scripts\tups_integ.ini	backup_policy_file2
+
+// uninstall SIS files previously installed
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v2
+
+END_TESTCASE SEC-INTEG-UPS-G002
+
+
+
 //! @SYMTestCaseID SEC-UPS-INTEG-G004
 //! @SYMTestCaseDesc Non ProtServ capability system server   
 //!                  (no_protser_cap)
@@ -2186,6 +2733,30 @@
 RUN_TEST_STEP 100 TUPSInteg_1 NonProtServAuthorisation z:\tups\integ\scripts\tups_integ.ini no_protser_cap_b
 END_TESTCASE SEC-UPS-INTEG-G004
 
+//! @SYMTestCaseID SEC-UPS-INTEG-G006
+//! @SYMTestCaseDesc Non AllFiles capability CA   
+//!                  (no_allfiles_cap_ca)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7398
+//!
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions 	Preconditions:
+//!			•  Policy to be installed does not currently exist in phone.
+//!			•  The SIS file to attempt a policy file installation has been 
+//!			signed with a CA certificate but this CA certificate has not Installation via SWI of policy file signed with a CA certificate with no All_files  capabilities.
+//!
+//!			Test Actions:
+//!			•  Install non CA signed sis that installs policy.
+//!
+//! @SYMTestExpectedResults 	• System server receives a KErrSecurityError from SWI. 
+//!
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-UPS-INTEG-G006
+RUN_TEST_STEP_RESULT -10254 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini no_allfiles_ca
+END_TESTCASE SEC-UPS-INTEG-G006
 
 //! @SYMTestCaseID 	SEC-UPS-G007
 //! @SYMTestCaseDesc 	Protected deletion and update of decisions.
@@ -2394,6 +2965,162 @@
 
 //********************** SEC-UPS-H : MISCELLANEOUS  **********************
 
+
+//! @SYMTestCaseID SEC-INTEG-UPS-H008
+//! @SYMTestCaseDesc Eclipsing of policy via SWI.
+//!                  (policy_file_eclipse)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ7393 REQ7498
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			• There is a policy file in ROM that matches the UID of the service offered by 
+//!			  the “system server”. (uses policy evaluator A)
+//! 			• The policy to be deployed via SWI to eclipse the policy above maps the policy to 
+//!			  a different policy evaluator. (uses policy evaluator B). New policy is written in 
+//!			  system drive.  
+//!			• There are some decisions stored in DB related to policy file about to be eclipsed.
+//!		     Test Actions: 
+//!			• Launch “test client” which tries to use system servers. System server should invoke 
+//!			  UPS to display security dialog.
+//!			• Select “always” option on security dialog, make sure that “policy evaluator A” was 
+//!			  invoked, check that test client can access intended service. 
+//!			• Deploy new policy using SIS file to eclipse existing ROM policy.
+//!			• Check that previous entries related to policy file were deleted from DB.
+//!			• Launch the same test client again, the security dialog should be displayed again as the
+//!			  existing “always” decision stored in DB is expected to be deleted. 
+//! 			• Select “always” option on security dialog, make sure that “policy evaluator B” was 
+//!			  invoked, check that test client can access intended service. 
+//!			
+//!
+//! @SYMTestExpectedResults  
+//!			• After deployment of new policy a different policy evaluator is invoked for system 
+//!			  server.
+//!			• Related decisions were removed after eclipsing.
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-H008
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini pre_eclipse
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_30
+
+// SIS file eclipses policy file from ROM
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_eclipse1
+
+// Eclipsing of policy file is expected to remove some decisions 
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+// cheks new policy file (on C drive)
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini post_eclipse
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_32
+
+// uninstall last eclipse.
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  uninstall_eclipse1
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+END_TESTCASE SEC-INTEG-UPS-H008
+
+
+//! @SYMTestCaseID SEC-INTEG-UPS-H009
+//! @SYMTestCaseDesc Policy files backup and restore.
+//!                  (policy_file_backup_restore)
+//!		
+//! @SYMPREQ PREQ1262
+//! @SYMREQ REQ4701
+//! @SYMTestPriority Critical
+//! @SYMTestStatus   Implemented
+//! @SYMTestActions   
+//!		     Preconditions:
+//!			• There is a set of static policies already present in phone. 
+//!			• The policy files installed via SIS file to be used for test purpose was flagged 
+//!			  with “VERIFY” in the package file.
+//!		     Test Actions: 
+//!			• Install policy file flagged with “VERIFY”, populate decisions in database.
+//!			• Back up static policies.
+//!			• Uninstall the policy file.
+//!			• Try to restore static policies.
+//!			• Verify that policy files can be reused correctly, verify correctness of decision 
+//!			  database.
+//!			
+//!
+//! @SYMTestExpectedResults  
+//!			• Restore operation does not show any problem in operation.
+//!			• Policy file restored is equal to policy file backed up.
+//! @SYMTestType CIT
+
+START_TESTCASE SEC-INTEG-UPS-H009
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+RUN_UTILS DeleteFile c:\private\10283558\database\ups.db
+RUN_UTILS MakeReadWrite c:\tswi\tbackuprestore\backup10285777.1
+RUN_UTILS DeleteFile C:\tswi\tbackuprestore\backup10285777.1
+
+// populate decision database with some inital values.
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini populate_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+// installs policy file with VERIFY flag
+RUN_TEST_STEP 100 tups_install InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v2
+
+// populates decisions related to policy just installed
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_populate
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini policies1v2_check
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_29
+
+// backs up policy file
+RUN_TEST_STEP 100 tups_backuprestore  BACKUP  z:\tups\integ\scripts\tups_integ.ini	backup_policy_file2
+
+RUN_TEST_STEP 100 TUPSInteg_1 UtilsCloseUps
+
+// uninstall the augmentation before trying to restore the policy file
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v2
+
+// restores policy file
+RUN_TEST_STEP 100 tups_backuprestore  RESTORE  z:\tups\integ\scripts\tups_integ.ini	backup_policy_file2
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+// uninstall SIS files previously installed
+RUN_TEST_STEP 100 tups_install UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v2
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_2 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+RUN_TEST_STEP 100 TUPSInteg_3 UPSClientStep z:\tups\integ\scripts\tups_integ.ini check_sample
+
+RUN_TEST_STEP 100 TUPSInteg_1 UPSDbManagementStep z:\tups\integ\scripts\tups_integ.ini count_27
+
+END_TESTCASE SEC-INTEG-UPS-H009
+
+
 //! @SYMTestCaseID SEC-UPS-INTEG-H010
 //! @SYMTestCaseDesc Simple request cancelation        
 //!                  (simple_cancel)
--- a/authorisation/userpromptservice/test/tups/src/tupsclientstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/tups/src/tupsclientstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -406,6 +406,13 @@
 					INFO_PRINTF3(_L("%S :Closing session to server: %S"),&iTEFServerName, &iArraySersToRequest[index].iServerName );    
 					CloseSessionL(iArraySersToRequest[index].iServerName);
 					}   
+
+				// If it needs to wait for file installation (via swi)
+				if(iArraySersToRequest[index].iWaitUntilFileAppears.CompareF(_L(""))!=0)
+					{
+					WaitThatFileAppearsL(iArraySersToRequest[index].iWaitUntilFileAppears);
+					INFO_PRINTF3(_L("%S :File installed by SWI found: %S"),&iTEFServerName,&iArraySersToRequest[index].iWaitUntilFileAppears);
+					}
 				}  // End of second loop
 			}// End of first loop
 		
@@ -850,3 +857,45 @@
 		
 	return checkPassed;
 	}  // End of function.
+
+
+void  CUpsClientStep::WaitThatFileAppearsL(const TDesC& aFileName)
+	{
+	RFs aFs;
+	aFs.Connect();
+						
+	RProperty checkSwiState;
+	
+	User::LeaveIfError(checkSwiState.Attach(KUidSystemCategory, Swi::KUidSoftwareInstallKey));
+	CleanupClosePushL(checkSwiState);
+	
+    TRequestStatus swiStatus;
+    TInt swisState;
+
+  	while(ETrue)
+		{
+		checkSwiState.Subscribe(swiStatus);
+		checkSwiState.Get(KUidSystemCategory,Swi::KUidSoftwareInstallKey, swisState);
+		if(((swisState & Swi::KSwisOperationMask) == Swi::ESwisNone) && BaflUtils::FileExists(aFs,aFileName))
+	 		{
+	 		checkSwiState.Cancel();
+	 		break;
+	 		}
+		User::WaitForRequest(swiStatus);
+		}
+
+	CleanupStack::PopAndDestroy(&checkSwiState);
+
+	//Wait for swiobserver to shutdown
+    while(ETrue)
+	    {
+		_LIT(KSWIObserverName,"swiobserver.exe*");	    
+	    TFindProcess finder(KSWIObserverName);       
+	    TFullName result;
+	     if (KErrNone != finder.Next(result))
+	         {
+	         break;         
+	         }
+		User::After(4000);
+	    }
+	}  // End of function.
--- a/authorisation/userpromptservice/test/tups/src/tupsclientstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/tups/src/tupsclientstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -26,6 +26,7 @@
 #define  UPSQUERRY_STEP_H 
 #include <test/testexecutestepbase.h>
 #include <bautils.h>
+#include <swi/swispubsubdefs.h>
 #include "tupsintegstepbase.h"
 #include "tups_clientapi_sysserver.h"
 #include "tupsproperty.h"
@@ -93,6 +94,7 @@
 	TBool 				CheckResultsL(TInt aIndex);
 	TBool				CheckDialogCreatorResultsL(TInt aIndex);	
 	TBool				CheckPolicyEvaluatorResultsL(TInt aIndex);
+	void				WaitThatFileAppearsL(const TDesC& aFileName);			
 	void 				HoldClientL(void);
 		
 	// Array containing pointers to open sessions
Binary file authorisation/userpromptservice/test/tups/tampered_backup/backup10285777.1 has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups/tampered_backup/howto_readme.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,33 @@
+The metadata and backup file were obtained by using tbackuprestore  test step.
+
+
+Script file:
+
+LOAD_SUITE tuiscriptadaptors
+LOAD_SUITE tbackuprestore
+
+// creates resource file via swi
+RUN_TEST_STEP 100 tuiscriptadaptors InstallStep z:\tups\integ\scripts\tups_integ.ini  install_policies1v1
+
+//backup resource file
+RUN_TEST_STEP 100 tbackuprestore  BACKUP  z:\tups\integ\scripts\tups_integ.ini	backup_policy_file1
+
+// uninstall SIS files previously installed
+RUN_TEST_STEP 100 tuiscriptadaptors UninstallAugStep z:\tups\integ\scripts\tups_integ.ini  un_install_policies1v1
+
+
+INI file:
+
+
+
+ [backup_policy_file1]
+FILE1.1 = C:\private\10283558\policies\ups_101f7f1f_ff000001.rsc
+SIS1 = z:\tups\integ\packages\tupsinteg_policies1.sis
+UID1 = 10285777
+INSTALLDRIVE1 = C
+
+[install_policies1v1]
+sis=z:\tups\integ\packages\tupsinteg_policies1.sis
+script=z:\tups\integ\packages\simple.xml
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/step_backup.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,92 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestorestep.h"
+#include <test/testexecutelog.h>
+
+#include "swi/backuprestore.h"
+#include "cleanuputils.h"
+
+CTStepBackup::CTStepBackup()
+	{
+	SetTestStepName(KTStepBackup);
+	}
+
+TVerdict CTStepBackup::doTestStepL()
+	{
+	if (TestStepResult() != EPass)
+		{
+		return TestStepResult();
+		}
+		
+	RFs fs;
+	User::LeaveIfError(fs.Connect());
+	CleanupClosePushL(fs);
+	
+	Swi::RBackupSession session;
+	User::LeaveIfError(session.Connect());
+	CleanupClosePushL(session);
+	
+	while (NextPackage())
+		{
+		TInt cellCountBefore = User::CountAllocCells();
+		
+ 		RPointerArray<HBufC> files;
+ 		CleanupResetAndDestroyPushL(files);
+ 		HBufC8* metadata = session.GetMetaDataL(PackageUID(), files);
+ 		CleanupStack::PopAndDestroy(&files); // ignore this parameter
+		CleanupStack::PushL(metadata);
+		WriteMetaDataL(metadata);
+		CleanupStack::PopAndDestroy(metadata);
+		
+		TInt cellCountAfter = User::CountAllocCells();
+		
+		if ( cellCountAfter - cellCountBefore )
+			{
+			ERR_PRINTF2(_L("Memory Leak is Detected in TVerdict CTStepBackup::doTestStepL(): %d cell(s)"),
+						cellCountAfter - cellCountBefore);
+			SetTestStepResult(EFail);
+			CleanupStack::PopAndDestroy(2, &fs); // session;
+			return TestStepResult();
+			}
+			
+		
+		while (NextFile())
+			{
+			CopyFileL(InstalledFileName(), BackupFileName());
+			if (ModifyFile())
+				{
+				// write some note to the end of this file
+				RFile backup;
+				User::LeaveIfError(backup.Open(fs, BackupFileName(), EFileWrite));
+				CleanupClosePushL(backup);
+				
+				_LIT8(KSomeSpuriousCrap, "ALL YOUR RESTORES ARE BELONG TO US");
+				TInt pos = 0;
+				User::LeaveIfError(backup.Seek(ESeekEnd, pos));
+				User::LeaveIfError(backup.Write(KSomeSpuriousCrap));
+				
+				CleanupStack::PopAndDestroy(&backup);
+				}
+			}
+		}
+		
+	CleanupStack::PopAndDestroy(2, &fs); // session;
+
+	return TestStepResult();
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/step_base.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,324 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestorestep.h"
+#include <test/testexecutelog.h>
+
+#include <f32file.h>
+
+_LIT(KMetaDataFileName, "\\tswi\\tbackuprestore\\metadata%x");
+_LIT(KBackupFileName, "\\tswi\\tbackuprestore\\backup%x.%u");
+
+_LIT(KExpectedResultKeyFormat, "expectedresult%d");
+const TInt KResultKeyMaxLength = 16;
+const TInt KResultKeyMaxNum = 99;
+
+
+CTBackupRestoreStepBase::~CTBackupRestoreStepBase()
+	{
+	iFs.Close();
+	}
+
+CTBackupRestoreStepBase::CTBackupRestoreStepBase()
+	{
+	}
+
+TVerdict CTBackupRestoreStepBase::doTestStepPreambleL()
+	{
+	User::LeaveIfError(iFs.Connect());
+	SetTestStepResult(EPass);
+	return TestStepResult();
+	}
+
+TVerdict CTBackupRestoreStepBase::doTestStepPostambleL()
+	{
+	return TestStepResult();
+	}
+
+TBool CTBackupRestoreStepBase::Exists(TPtrC aFileName)
+	{
+	TEntry entry;
+	TInt err = iFs.Entry(aFileName, entry);
+	INFO_PRINTF3(_L("Entry of %S returned %d"), &aFileName, err);
+	return err == KErrNone;
+	}
+	
+TBool CTBackupRestoreStepBase::ModifyFile()
+	{
+	TBuf<20> token;
+	token.Format(_L("MODIFY%d.%d"), iCurrentPackageNumber, iCurrentFileNumber);
+	TInt doIt = 0;
+	TBool found = GetIntFromConfig(ConfigSection(),token, doIt);
+	return (found && doIt != 0);
+	}
+
+void CTBackupRestoreStepBase::CopyFileL(TPtrC aSourceFileName, TPtrC aDestFileName)
+	{
+	INFO_PRINTF3(_L("Copy %S to %S"), &aSourceFileName, &aDestFileName);
+	RFile infile;
+	RFile outfile;
+	User::LeaveIfError(infile.Open(iFs,aSourceFileName,EFileRead));
+	CleanupClosePushL(infile);
+	if (KErrNone != outfile.Create(iFs,aDestFileName,EFileWrite))
+		{
+		User::LeaveIfError(outfile.Open(iFs, aDestFileName, EFileWrite));
+		}
+		
+	CleanupClosePushL(outfile);
+	
+	HBufC8* buffer = HBufC8::NewLC(1024);
+	TPtr8 ptr = buffer->Des();
+	
+	User::LeaveIfError(infile.Read(ptr));
+	while(ptr.Length() != 0)
+		{
+		User::LeaveIfError(outfile.Write(*buffer));
+		User::LeaveIfError(infile.Read(ptr));
+		}
+	
+	CleanupStack::PopAndDestroy(3, &infile); // buffer, outfile
+	}
+
+TBool CTBackupRestoreStepBase::NextPackage()
+	{
+	iCurrentPackageNumber++;
+	iCurrentFileNumber=0;
+	iDataFileNumber=0;
+	if (PackageUID().iUid != 0)
+		{
+		INFO_PRINTF2(_L("Package %d"), iCurrentPackageNumber);
+		return ETrue;
+		}
+	return EFalse;
+	}
+
+TUid CTBackupRestoreStepBase::PackageUID()
+	{
+	TUid uid;
+	TInt tmp;
+	TBuf<20> token;
+	token.Format(_L("UID%d"), iCurrentPackageNumber);
+	if(GetHexFromConfig(ConfigSection(),token, tmp) == EFalse)
+		{
+		tmp = 0;
+		}
+	uid.iUid = tmp;
+	return uid;
+	}
+
+TBool CTBackupRestoreStepBase::NextFile()
+	{
+	iCurrentFileNumber++;
+	if (InstalledFileName().Length() != 0)
+		{
+		INFO_PRINTF2(_L("File %d"), iCurrentFileNumber);
+		return ETrue;
+		}
+	return EFalse;
+	}
+	
+TBool CTBackupRestoreStepBase::NextDataFile()
+	{
+	iDataFileNumber++;
+	if (DataFileName().Length() != 0)
+		{
+		return ETrue;
+		}
+	return EFalse;
+	}
+
+TPtrC CTBackupRestoreStepBase::SISFileNameL()
+	{
+	TBuf<20> token;
+	token.Format(_L("SIS%d"), iCurrentPackageNumber);
+	TPtrC sisfile;
+	if (GetStringFromConfig(ConfigSection(),token, sisfile) == EFalse)
+		{
+		User::Leave(KErrNotFound);
+		}
+	return sisfile;
+	}
+
+TPtrC CTBackupRestoreStepBase::WrongInstalledFileName()
+	{
+	TBuf<20> token;
+	token.Format(_L("WrongFile%d.%d"), iCurrentPackageNumber, iCurrentFileNumber);
+	TPtrC filename;
+	GetStringFromConfig(ConfigSection(),token, filename);
+	return filename;
+	}
+
+TPtrC CTBackupRestoreStepBase::InstalledFileName()
+	{
+	TBuf<20> token;
+	token.Format(_L("FILE%d.%d"), iCurrentPackageNumber, iCurrentFileNumber);
+	TPtrC filename;
+	GetStringFromConfig(ConfigSection(),token, filename);
+	return filename;
+	}
+
+TPtrC CTBackupRestoreStepBase::DataFileName()
+	{
+	TBuf<20> token;
+	token.Format(_L("DATA%d.%d"), iCurrentPackageNumber, iDataFileNumber);
+	TPtrC filename;
+	GetStringFromConfig(ConfigSection(),token, filename);
+	return filename;
+	}
+
+
+
+TFileName CTBackupRestoreStepBase::BackupFileName()
+	{
+	TFileName backupFileName;
+	TDriveUnit sysDrive(RFs::GetSystemDrive());
+	TBuf<128> fileName = sysDrive.Name();
+	fileName.Append(KBackupFileName);
+	backupFileName.Format(fileName, PackageUID().iUid, iCurrentFileNumber);
+	return backupFileName;
+	}
+	
+void CTBackupRestoreStepBase::TouchL(const TDesC& aFileName)
+	{
+	iFs.MkDirAll(aFileName);
+	RFile file;
+	TRAP_IGNORE(file.Replace(iFs, aFileName, EFileWrite));
+	file.Close();
+	}
+
+void CTBackupRestoreStepBase::WriteMetaDataL(HBufC8* aMetaData)
+	{
+	RFile metadatafile;
+	TBuf<256> metadataFileName;
+	TDriveUnit sysDrive(RFs::GetSystemDrive());
+	TBuf<128> fileName = sysDrive.Name();
+	fileName.Append(KMetaDataFileName);
+	metadataFileName.Format(fileName, PackageUID().iUid);
+
+	User::LeaveIfError(metadatafile.Replace(iFs, metadataFileName, EFileWrite));
+	
+	CleanupClosePushL(metadatafile);
+	User::LeaveIfError(metadatafile.Write(*aMetaData));
+	CleanupStack::PopAndDestroy(&metadatafile);
+	}
+
+HBufC8*	CTBackupRestoreStepBase::ReadMetaDataL(TInt aBytesToCrop)
+	{
+	RFile metadatafile;
+	TBuf<256> metadataFileName;
+	TDriveUnit sysDrive(RFs::GetSystemDrive());
+	TBuf<128> fileName = sysDrive.Name();
+	fileName.Append(KMetaDataFileName);
+	metadataFileName.Format(fileName, PackageUID().iUid);
+
+	User::LeaveIfError(metadatafile.Open(iFs, metadataFileName, EFileRead));
+	CleanupClosePushL(metadatafile);
+	
+	TInt length(0);
+	metadatafile.Seek(ESeekEnd,length);
+	length -= aBytesToCrop;
+	TInt dummy(0);
+	metadatafile.Seek(ESeekStart,dummy);
+	
+	HBufC8* metadata = HBufC8::NewL(length);
+	TPtr8 ptr = metadata->Des();
+	TInt err = metadatafile.Read(ptr, length);
+	if (err != KErrNone)
+		{
+		delete metadata;
+		User::Leave(err);
+		}
+	CleanupStack::PopAndDestroy(&metadatafile);
+	return metadata;
+	}
+
+TInt CTBackupRestoreStepBase::MetaDataCropLength()
+	{
+	TInt cropLength(0);
+	TBuf<24> token;
+	token.Format(_L("METADATACROPBYTES%d"), iCurrentPackageNumber);
+	if(GetIntFromConfig(ConfigSection(),token, cropLength))
+		{
+		INFO_PRINTF3(_L("Ignoring last %d bytes from metadata for package %d."),
+						cropLength, iCurrentPackageNumber);
+		}
+	return cropLength;	
+	}
+
+TChar CTBackupRestoreStepBase::ExpectedDriveL()
+	{
+	TBuf<20> token;
+	token.Format(_L("INSTALLDRIVE%d"), iCurrentPackageNumber);
+	TPtrC driveString;
+	if (GetStringFromConfig(ConfigSection(),token, driveString) == EFalse)
+		{
+		User::Leave(KErrNotFound);
+		}
+	TChar sisDrive(0);
+	if (driveString.Length() > 0)
+		{
+		sisDrive = driveString[0];
+		}
+	return sisDrive;
+	}
+
+
+void CTBackupRestoreStepBase::CheckExpectedResultCodesL()
+	{
+	RArray<TInt> expectedResultCodes;
+	CleanupClosePushL(expectedResultCodes);
+	TInt result = KErrNone;
+	TBuf<KResultKeyMaxLength> resultKey;
+	TBool found = ETrue;
+
+	for (TInt i = 1; i <= KResultKeyMaxNum && found; i++)
+		{
+		resultKey.Format(KExpectedResultKeyFormat, i);
+		found = GetIntFromConfig(ConfigSection(), resultKey, result);
+		if (found)
+			{
+			INFO_PRINTF2(_L("Acceptable result code %d"), result);
+			TInt err = expectedResultCodes.InsertInOrder(result);
+			if (err != KErrNone && err != KErrAlreadyExists)
+				{
+				User::Leave(err);
+				}
+			}
+		}
+
+	if (expectedResultCodes.Count() > 0)
+		{
+		// A result code matching one of the possible expected results will
+		// be converted to EPass, otherwise the result will be EFail.
+		if (expectedResultCodes.FindInOrder(TestStepResult()) == KErrNotFound)
+			{
+			ERR_PRINTF2(_L("Result code %d is not expected"), TestStepResult());
+			SetTestStepResult(EFail);
+			}
+		else
+			{
+			INFO_PRINTF2(_L("Result code %d is in accepted list"), TestStepResult());
+			SetTestStepResult(EPass);
+			}
+		}
+	CleanupStack::PopAndDestroy(&expectedResultCodes);
+	}
+
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/step_install.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,74 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestorestep.h"
+#include <test/testexecutelog.h>
+
+#include <f32file.h>
+
+#include <swi/launcher.h>
+#include "tui.h"
+
+CTStepInstall::CTStepInstall()
+	{
+	SetTestStepName(KTStepInstall);
+	}
+
+TVerdict CTStepInstall::doTestStepL()
+	{
+	if (TestStepResult() != EPass)
+		{
+		return TestStepResult();
+		}
+
+	RFs fs;
+	User::LeaveIfError(fs.Connect());
+	CleanupClosePushL(fs);
+	fs.ShareProtected();
+		
+	CInstallPrefs* prefs = CInstallPrefs::NewLC();
+	prefs->SetPerformRevocationCheck(EFalse);
+	
+	TInt expectedResult;
+	if (GetIntFromConfig(ConfigSection(),_L("InstallResult"), expectedResult) == EFalse)
+		{
+		expectedResult = KErrNone;
+		}
+			
+	while (NextPackage())
+		{
+		TPtrC sisfilename(SISFileNameL());
+		INFO_PRINTF2(_L("Installing %S"), &sisfilename);
+		
+		TUI ui;
+		RFile file;
+		User::LeaveIfError(file.Open(fs, sisfilename, EFileRead));
+
+		TInt err = Launcher::Install (ui, file, *prefs);
+
+		if (err != expectedResult)
+			{
+			INFO_PRINTF3(_L("Expected %d, got %d"), expectedResult, err);
+			SetTestStepResult(EFail);
+			}
+		}
+	CleanupStack::PopAndDestroy(2, &fs); // prefs
+	
+	return TestStepResult();
+	}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/step_restore.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,100 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestorestep.h"
+#include <test/testexecutelog.h>
+
+#include "swi/backuprestore.h"
+#include "swi/swispubsubdefs.h"
+
+CTStepRestore::CTStepRestore()
+	{
+	SetTestStepName(KTStepRestore);
+	}
+
+TVerdict CTStepRestore::doTestStepL()
+	{
+	if (TestStepResult() != EPass)
+		{
+		return TestStepResult();
+		}
+	
+	TInt err = KErrNone;
+	TRAP(err, RestoreL());
+	INFO_PRINTF2(_L("RestoreL returned %d"), err);
+	if (err != KErrNone)
+		{
+		// Can't set error to KErrServerBusy, or Testexecute will retry.
+		SetTestStepResult((err != KErrServerBusy)? static_cast<TVerdict>(err) : EFail);
+		}
+
+	CheckExpectedResultCodesL();
+	return TestStepResult();
+	}
+	
+void CTStepRestore::RestoreL()
+	{
+	RFs fs;
+	User::LeaveIfError(fs.Connect());
+	CleanupClosePushL(fs);
+	fs.ShareProtected();
+	
+	Swi::RRestoreSession session;
+	User::LeaveIfError(session.Connect());
+	CleanupClosePushL(session);
+	
+	while (NextPackage())
+		{
+		HBufC8* metadata = ReadMetaDataL(MetaDataCropLength());
+		CleanupStack::PushL(metadata);
+		session.StartPackageL(PackageUID(), *metadata);
+		while (NextFile())
+			{
+			RFile sourcefile;
+			User::LeaveIfError(sourcefile.Open(fs, BackupFileName(), EFileRead));
+			TPtrC destfilename = InstalledFileName();
+			session.RestoreFileL(sourcefile, destfilename);
+			}
+			
+		// Create dummy files to simulate restore of data files
+		while (NextDataFile())
+			{
+			TouchL(DataFileName());
+			}
+			
+		session.CommitPackageL();
+		CleanupStack::PopAndDestroy(metadata);
+		
+		TInt property;
+		User::LeaveIfError(RProperty::Get(KUidSystemCategory, Swi::KUidSoftwareInstallKey, property));
+			
+		if (property != Swi::ESwisNone)
+			{
+				
+			// The Pub&Sub property should have been reset to none,
+			// Regardless of the actual result of the test.
+			SetTestStepResult(EFail);
+			User::Leave(KErrGeneral);
+				
+			}
+		
+		}	
+	CleanupStack::PopAndDestroy(2, &fs);	// session	
+	}
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/step_uninstall.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,65 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestorestep.h"
+#include <test/testexecutelog.h>
+
+#include <swi/launcher.h>
+#include "tui.h"
+
+CTStepUninstall::CTStepUninstall()
+	{
+	SetTestStepName(KTStepUninstall);
+	}
+
+TVerdict CTStepUninstall::doTestStepL()
+	{
+	if (TestStepResult() != EPass)
+		{
+		return TestStepResult();
+		}
+
+	TInt expectedResult;
+	if (GetIntFromConfig(ConfigSection(),_L("UninstallResult"), expectedResult) == EFalse)
+		{
+		expectedResult = KErrNone;
+		}
+		
+	while (NextPackage())
+		{
+		TUI ui;	
+		TInt err = Launcher::Uninstall(ui, PackageUID());
+		if (expectedResult == KErrNotFound)
+			{
+			if (err != KErrNone)
+				{
+				// Can't set error to KErrServerBusy, or Testexecute will retry.
+				SetTestStepResult((err != KErrServerBusy)? static_cast<TVerdict>(err) : EFail);
+				}
+			CheckExpectedResultCodesL();
+			err = expectedResult;
+			}
+		if (err != expectedResult)
+			{
+			INFO_PRINTF3(_L("Expected %d, got %d"), expectedResult, err);
+			SetTestStepResult(EFail);
+			SetTestStepError(err);
+			}
+		}
+	return TestStepResult();
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/tbackuprestore.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,92 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tbackuprestore.h"
+#include "tbackuprestorestep.h"
+
+_LIT(KServerName,"tups_backuprestore");
+
+CTBackupRestoreServer* CTBackupRestoreServer::NewL()
+	{
+	CTBackupRestoreServer * server = new (ELeave) CTBackupRestoreServer();
+	CleanupStack::PushL(server);
+	
+	// Either use a StartL or ConstructL, the latter will permit Server Logging.
+
+	//server->StartL(KServerName); 
+	server->ConstructL(KServerName);
+	CleanupStack::Pop(server);
+	return server;
+	}
+
+LOCAL_C void MainL()
+	{
+	// Leave the hooks in for platform security
+#if (defined __DATA_CAGING__)
+	RProcess().DataCaging(RProcess::EDataCagingOn);
+	RProcess().SecureApi(RProcess::ESecureApiOn);
+#endif
+	CActiveScheduler* sched=NULL;
+	sched=new(ELeave) CActiveScheduler;
+	CActiveScheduler::Install(sched);
+	CTBackupRestoreServer* server = NULL;
+	TRAPD(err,server = CTBackupRestoreServer::NewL());
+	if(!err)
+		{
+		RProcess::Rendezvous(KErrNone);
+		sched->Start();
+		}
+	delete server;
+	delete sched;
+	}
+
+GLDEF_C TInt E32Main()
+	{
+	CTrapCleanup* cleanup = CTrapCleanup::New();
+	if(cleanup == NULL)
+		{
+		return KErrNoMemory;
+		}
+	TRAP_IGNORE(MainL());
+	delete cleanup;
+	return KErrNone;
+    }
+
+CTestStep* CTBackupRestoreServer::CreateTestStep(const TDesC& aStepName)
+	{
+	CTestStep* testStep = NULL;
+
+	if(aStepName == KTStepInstall)
+		{
+		testStep = new CTStepInstall();
+		}
+	else if(aStepName == KTStepUninstall)
+		{
+		testStep = new CTStepUninstall();
+		}
+	else if(aStepName == KTStepBackup)
+		{
+		testStep = new CTStepBackup();
+		}
+	else if(aStepName == KTStepRestore)
+		{
+		testStep = new CTStepRestore();
+		}
+
+	return testStep;
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/tbackuprestore.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,38 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#ifndef __T_BACKUP_RESTORE_H__
+#define __T_BACKUP_RESTORE_H__
+#include <test/testexecuteserverbase.h>
+
+class CTBackupRestoreServer : public CTestServer
+	{
+public:
+	static CTBackupRestoreServer*	NewL();
+	virtual CTestStep*				CreateTestStep(const TDesC& aStepName);
+	inline RFs&						Fs();
+
+private:
+	RFs								iFs;
+	};
+
+inline RFs& CTBackupRestoreServer::Fs()
+	{
+	return iFs;
+	}
+#endif	/* __T_BACKUP_RESTORE_H__ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/tbackuprestorestep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,112 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#ifndef __T_BACKUP_RESTORE_STEP_H__
+#define __T_BACKUP_RESTORE_STEP_H__
+
+#include <test/testexecutestepbase.h>
+#include "tbackuprestore.h"
+
+_LIT(KTStepInstall,					"INSTALL");
+_LIT(KTStepUninstall,				"UNINSTALL");
+_LIT(KTStepBackup,					"BACKUP");
+_LIT(KTStepRestore,					"RESTORE");
+
+
+class CTBackupRestoreStepBase : public CTestStep
+	{
+protected:
+	CTBackupRestoreStepBase();
+	~CTBackupRestoreStepBase();
+	virtual TVerdict doTestStepPreambleL();
+	virtual TVerdict doTestStepPostambleL();
+	// Iterates through SIS files within a step
+	TBool	NextPackage();
+	// The UID of the current SIS file
+	TUid	PackageUID();
+	// The filename of the current SIS file
+	TPtrC	SISFileNameL();
+	// The expected selected drive of the current package
+	TChar	ExpectedDriveL();
+	// Iterates through files within a SIS file
+	TBool	NextFile();
+	TBool	NextDataFile();
+	TFileName	BackupFileName();
+	// The location where the current file is [to be] installed
+	TPtrC	InstalledFileName();
+	TPtrC	DataFileName();
+	// The location where the current file is not [to be] installed
+	TPtrC	WrongInstalledFileName();
+	// Utility method
+	TBool	Exists(TPtrC aFileName);
+	// Method for creating empty files
+	void TouchL(const TDesC& aFileName);
+	// Utility method
+	void	CopyFileL(TPtrC aSourceFileName, TPtrC aDestFileName);
+	// Utility method for storing backup metadata
+	void	WriteMetaDataL(HBufC8* aMetaData);
+	// Utility method for recovering backup metadata
+	HBufC8*	ReadMetaDataL(TInt aBytesToCrop = 0);
+
+	// test if we should write some garbage to the file, just test
+	// if we can/can not restore a file that would fail its hash check
+	TBool	ModifyFile();
+
+	// Get the length in bytes to crop from the end of the metadata on restore.
+	TInt	MetaDataCropLength();
+	// utility method to Check current step result against list of expected result codes.
+	void CheckExpectedResultCodesL();
+	
+private:
+	TInt	iCurrentPackageNumber;
+	TInt	iCurrentFileNumber;
+	TInt	iDataFileNumber;
+	RFs		iFs;
+	};
+
+class CTStepInstall : public CTBackupRestoreStepBase
+	{
+public:
+	CTStepInstall();
+	virtual TVerdict doTestStepL();
+	};
+
+class CTStepUninstall : public CTBackupRestoreStepBase
+	{
+public:
+	CTStepUninstall();
+	virtual TVerdict doTestStepL();
+	};
+
+class CTStepBackup : public CTBackupRestoreStepBase
+	{
+public:
+	CTStepBackup();
+	virtual TVerdict doTestStepL();
+	};
+
+class CTStepRestore : public CTBackupRestoreStepBase
+	{
+public:
+	CTStepRestore();
+	virtual TVerdict doTestStepL();
+private:
+	void RestoreL();
+	};
+
+#endif	/* __T_BACKUP_RESTORE_STEP_H__ */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/tui.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,106 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#include "tui.h"
+
+TBool TUI::DisplayTextL(const CAppInfo&, TFileTextOption, const TDesC&)
+	{
+	return ETrue;
+	}
+
+void TUI::DisplayErrorL(const CAppInfo&, TErrorDialog, const TDesC&)
+	{
+	}
+
+TBool TUI::DisplayDependencyBreakL(const CAppInfo&, const RPointerArray<TDesC>&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayApplicationsInUseL(const CAppInfo&, const RPointerArray<TDesC>&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayQuestionL(const CAppInfo&, TQuestionDialog, const TDesC&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayUninstallL(const CAppInfo&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayInstallL(const CAppInfo&, const CApaMaskedBitmap*, const RPointerArray<CCertificateInfo>&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayGrantCapabilitiesL(const CAppInfo&, const TCapabilitySet&)
+	{
+	return ETrue;
+	}
+
+TInt TUI::DisplayLanguageL(const CAppInfo&, const RArray<TLanguage>&)
+	{
+	return 0;
+	}
+
+TInt TUI::DisplayDriveL(const CAppInfo&, TInt64, const RArray<TChar>&, const RArray<TInt64>&)
+	{
+	return 0;
+	}
+
+TBool TUI::DisplayUpgradeL(const CAppInfo&, const CAppInfo&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayOptionsL(const CAppInfo&, const RPointerArray<TDesC>&, RArray<TBool>&)
+	{
+	return ETrue;
+	}
+
+TBool TUI::HandleInstallEventL(const CAppInfo&, TInstallEvent, TInt, const TDesC&)
+	{
+	return ETrue;
+	}
+
+void TUI::HandleCancellableInstallEventL(const CAppInfo&, TInstallCancellableEvent, MCancelHandler&, TInt, const TDesC&)
+	{
+	}
+
+TBool TUI::DisplaySecurityWarningL(const CAppInfo&, TSignatureValidationResult, RPointerArray<CPKIXValidationResultBase>&, RPointerArray<CCertificateInfo>&, TBool)
+	{
+	return ETrue;
+	}
+
+TBool TUI::DisplayOcspResultL(const CAppInfo&, TRevocationDialogMessage, RPointerArray<TOCSPOutcome>&, RPointerArray<CCertificateInfo>&, TBool)
+	{
+	return ETrue;
+	}
+
+void TUI::DisplayCannotOverwriteFileL(const CAppInfo&, const CAppInfo&, const TDesC&)
+	{
+	}
+
+TBool TUI::DisplayMissingDependencyL( const CAppInfo&, const TDesC&, TVersion, TVersion, TVersion)
+	{
+	return ETrue;
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_backuprestore/tui.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,52 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#ifndef __T_BACKUP_RESTORE_UI_H__
+#define __T_BACKUP_RESTORE_UI_H__
+
+#include <swi/msisuihandlers.h>
+
+using namespace Swi;
+
+class TUI : public Swi::MUiHandler
+	{
+public:
+	// MCommonDialogs
+	TBool DisplayTextL(const CAppInfo& aAppInfo, TFileTextOption aOption, const TDesC& aText);
+	void DisplayErrorL(const CAppInfo& aAppInfo, TErrorDialog aType, const TDesC& aParam);
+	TBool DisplayDependencyBreakL(const CAppInfo& aAppInfo, const RPointerArray<TDesC>& aComponents);
+	TBool DisplayApplicationsInUseL(const CAppInfo& aAppInfo, const RPointerArray<TDesC>& aAppNames);
+	TBool DisplayQuestionL(const CAppInfo& aAppInfo, TQuestionDialog aQuestion, const TDesC& aDes);
+	// MUninstallerUiHandler
+	TBool DisplayUninstallL(const CAppInfo& aAppInfo);
+	// MInstallerUiHandler
+	TBool DisplayInstallL(const CAppInfo& aAppInfo, const CApaMaskedBitmap* aLogo, const RPointerArray<CCertificateInfo>& aCertificates);
+	TBool DisplayGrantCapabilitiesL(const CAppInfo& aAppInfo, const TCapabilitySet& aCapabilitySet);
+	TInt DisplayLanguageL(const CAppInfo& aAppInfo, const RArray<TLanguage>& aLanguages);
+	TInt DisplayDriveL(const CAppInfo& aAppInfo, TInt64 aSize, const RArray<TChar>& aDriveLetters, const RArray<TInt64>& aDriveSpaces);
+	TBool DisplayUpgradeL(const CAppInfo& aAppInfo, const CAppInfo& aExistingAppInfo);
+	TBool DisplayOptionsL(const CAppInfo& aAppInfo, const RPointerArray<TDesC>& aOptions, RArray<TBool>& aSelections);
+	TBool HandleInstallEventL(const CAppInfo& aAppInfo, TInstallEvent aEvent, TInt aValue, const TDesC& aDes);
+	void HandleCancellableInstallEventL(const CAppInfo& aAppInfo, TInstallCancellableEvent aEvent, MCancelHandler& aCancelHandler, TInt aValue, const TDesC& aDes);
+	TBool DisplaySecurityWarningL(const CAppInfo& aAppInfo, TSignatureValidationResult aSigValidationResult, RPointerArray<CPKIXValidationResultBase>& aPkixResults, RPointerArray<CCertificateInfo>& aCertificates, TBool aInstallAnyway);
+	TBool DisplayOcspResultL(const CAppInfo& aAppInfo, TRevocationDialogMessage aMessage, RPointerArray<TOCSPOutcome>& aOutcomes, RPointerArray<CCertificateInfo>& aCertificates, TBool aWarningOnly);
+	void DisplayCannotOverwriteFileL(const CAppInfo& aAppInfo, const CAppInfo& aInstalledAppInfo, const TDesC& aFileName);
+	TBool DisplayMissingDependencyL( const CAppInfo& aAppInfo, const TDesC& aDependencyName, TVersion aWantedVersionFrom, TVersion aWantedVersionTo, TVersion aInstalledVersion);
+	};
+
+#endif	/* __T_BACKUP_RESTORE_UI_H__ */
--- a/authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -21,8 +21,11 @@
 #include "tups_dialogcreator_defs.h"
 #include "tupsintegdefs.h"
 #include <ecom/implementationproxy.h>
-#include <e32debug.h>
+#include <apaid.h>
+#include <apgcli.h>
 #include <ups/promptrequest.h>
+#include <swi/sisregistrypackage.h>
+#include <swi/sisregistrysession.h>
 #include <scs/nullstream.h>
 #include <s32mem.h>
 
--- a/authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator_noprops.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/authorisation/userpromptservice/test/tups_dialogcreator/source/tups_dialogcreator_noprops.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -19,7 +19,11 @@
 #include "tups_dialogcreator_noprops.h"
 #include "tups_dialogcreator_defs.h"
 #include <ecom/implementationproxy.h>
+#include <apaid.h>
+#include <apgcli.h>
 #include <ups/promptrequest.h>
+#include <swi/sisregistrypackage.h>
+#include <swi/sisregistrysession.h>
 #include <scs/nullstream.h>
 #include <s32mem.h>
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/languagetable.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,132 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* Table of languages 
+*
+*/
+
+
+
+
+/**
+ @file
+*/
+
+#ifndef __LANGUAGETABLE_H__
+#define __LANGUAGETABLE_H__
+
+
+TPtrC KLanguageTable[100]=
+	{
+	_L("Test"),
+	_L("English"),
+	_L("French"),
+	_L("German"),
+	_L("Spanish"),
+	_L("Italian"),
+	_L("Swedish"),
+	_L("Danish"),
+	_L("Norwegian"),
+	_L("Finnish"),
+	_L("American"),
+	_L("SwissFrench"),
+	_L("SwissGerman"),
+	_L("Portuguese"),
+	_L("Turkish"),
+	_L("Icelandic"),
+	_L("Russian"),
+	_L("Hungarian"),
+	_L("Dutch"),
+	_L("BelgianFlemish"),
+	_L("Australian"),
+	_L("BelgianFrench"),
+	_L("Austrian"),
+	_L("NewZealand"),
+	_L("InternationalFrench"),
+	_L("Czech"),
+	_L("Slovak"),
+	_L("Polish"),
+	_L("Slovenian"),
+	_L("TaiwanChinese"),
+	_L("HongKongChinese"),
+	_L("PrcChinese"),
+	_L("Japanese"),
+	_L("Thai"),
+	_L("Afrikaans"),
+	_L("Albanian"),
+	_L("Amharic"),
+	_L("Arabic"),
+	_L("Armenian"),
+	_L("Tagalog"),
+	_L("Belarussian"),
+	_L("Bengali"),
+	_L("Bulgarian"),
+	_L("Burmese"),
+	_L("Catalan"),
+	_L("Croatian"),
+	_L("CanadianEnglish"),
+	_L("InternationalEnglish"),
+	_L("SouthAfricanEnglish"),
+	_L("Estonian"),
+	_L("Farsi"),
+	_L("CanadianFrench"),
+	_L("ScotsGaelic"),
+	_L("Georgian"),
+	_L("Greek"),
+	_L("CyprusGreek"),
+	_L("Gujarati"),
+	_L("Hebrew"),
+	_L("Hindi"),
+	_L("Indonesian"),
+	_L("Irish"),
+	_L("SwissItalian"),
+	_L("Kannada"),
+	_L("Kazakh"),
+	_L("Khmer"),
+	_L("Korean"),
+	_L("Lao"),
+	_L("Latvian"),
+	_L("Lithuanian"),
+	_L("Macedonian"),
+	_L("Malay"),
+	_L("Malayalam"),
+	_L("Marathi"),
+	_L("Moldavian"),
+	_L("Mongolian"),
+	_L("NorwegianNynorsk"),
+	_L("BrazilianPortuguese"),
+	_L("Punjabi"),
+	_L("Romanian"),
+	_L("Serbian"),
+	_L("Somali"),
+	_L("InternationalSpanish"),
+	_L("LatinAmericanSpanish"),
+	_L("Swahili"),
+	_L("Reserved1"),
+	_L("Tamil"),
+	_L("Telugu"),
+	_L("Tibetan"),
+	_L("Tigrinya"),
+	_L("CyprusTurkish"),
+	_L("Turkmen"),
+	_L("Ukrainian"),
+	_L("Urdu"),
+	_L("Reserved2"),
+	_L("Vietnamese"),
+	_L("Welsh"),
+	_L("Zulu"),
+	_L("Other")
+	};
+
+#endif // __TSWISSERVER_H__
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tuiscriptadaptors.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,1741 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#define __INCLUDE_CAPABILITY_NAMES__
+
+#include <e32test.h>
+#include <f32file.h>
+#include <test/testexecutelogger.h>
+#include "tuiscriptadaptors.h"
+#include "languagetable.h"
+
+#include <swi/launcher.h>
+#include <e32capability.h>
+#include <utf.h>
+
+using namespace Swi;
+using namespace Swi::Test;
+using namespace Xml;
+
+_LIT8(KParserDataType, "text/xml");
+_LIT8(KTrueValue,      "true");
+_LIT8(KFalseValue,     "false");
+_LIT8(KIndexType,      "item");
+_LIT8(KReturnType,     "return");
+_LIT8(KDialogName,     "dialog");
+_LIT8(KUpdateProgressReturn, "updateprogressreturn");
+_LIT8(KUpdateProgressFinalReturn, "updateprogressfinalreturn");
+
+
+enum TDialogs
+		{
+		KDisplayInstall1      = 1, 
+		KDisplayLanguage1,
+		KDisplayDrive1,
+		KDisplayUpgrade1,	
+		KDisplayOptions1,
+		KDisplaySecurityWarning1,
+		KDisplayOcspResult1,
+		KDisplayCannotOverwriteFile1,
+		KDisplayUninstall1,
+		KDisplayText1,
+		KDisplayError1,
+		KDisplayDependencyBreak1,
+		KDisplayApplicationsInUse1,
+		KDisplayQuestion1,
+		KDisplayMissingDependency1,
+		KInstallEvenDialogSetProgressBar,
+		KInstallEvenDialogUpdateProgressBar,
+		KInstallEvenDialogCompletedInstall,
+		KInstallEvenDialogOcspCheckEnd,
+		KInstallEvenDialogCompletedUnInstall,
+		KInstallEvenDevCert,
+		KCancelInstallRemoving,
+		KCancelInstallShuttingDown,
+		KCancelInstallCopyingFiles,
+		KCancelInstallOcspCheckStart
+		};
+/* Functions Literals */
+_LIT8(KDisplayInstall,               "DisplayInstall");
+_LIT8(KDisplayGrantCapabilities,     "DisplayGrantCapabilities");
+_LIT8(KDisplayLanguage,              "DisplayLanguage");
+_LIT8(KDisplayDrive,                 "DisplayDrive");
+_LIT8(KDisplayUpgrade,               "DisplayUpgrade");
+_LIT8(KDisplayOptions,               "DisplayOptions");
+_LIT8(KHandleInstallEvent,           "HandleInstallEvent");
+_LIT8(KHandleCancellableInstallEvent,"HandleCancellableInstallEvent");
+_LIT8(KDisplaySecurityWarning,       "DisplaySecurityWarning");
+_LIT8(KDisplayOcspResult,            "DisplayOcspResult");
+_LIT8(KDisplayCannotOverwriteFile,   "DisplayCannotOverwriteFile");
+_LIT8(KDisplayUninstall,             "DisplayUninstall");
+_LIT8(KDisplayText,                  "DisplayText");
+_LIT8(KDisplayError,                 "DisplayError");
+_LIT8(KDisplayDependencyBreak,       "DisplayDependencyBreak");
+_LIT8(KDisplayApplicationsInUse,     "DisplayApplicationsInUse");
+_LIT8(KDisplayQuestion,              "DisplayQuestion");
+_LIT8(KDisplayMissingDependency,     "DisplayMissingDependency");
+_LIT8(KDisplaySIDMismatch,           "DisplaySIDMismatch"); 
+
+#define	KGenericBufferSize		      100
+
+// Init defaults which will be overridden by script data (or not)
+TXmlFileData::TXmlFileData()
+	: InstallResult(ETrue)
+	, CapabilitiesResult(ETrue)
+	, LanguagesResult(0)
+	, DriveResult('c'-'a') // Default to installing to C:
+	, UpgradeResult(ETrue)
+	, OptionsResult(ETrue)
+	, WarningResult(ETrue)
+	, OcspResult(ETrue)
+	, UninstallResult(ETrue)
+	, TextResult(ETrue)
+	, DependencyResult(EFalse)
+	, ApplicationsInUseResult(ETrue)
+	, QuestionResult(EFalse)
+	, MissingDependencyResult(EFalse)
+	, DevCertsResult(ETrue)
+	, UpdateProgressBarResult(ETrue)
+	, ProgressBarFinalValueResult(ETrue)
+	{
+	}
+	
+CUIScriptAdaptor::CUIScriptAdaptor(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+								   RArray<TTableOfInstallSizes>* aExpectedValue)
+	:
+	iXmlFileName(aXmlFileName), 
+	iLogger(aLogger),
+	iExpectedValue(aExpectedValue),
+	iDelayDialogNumber(-1)
+	{
+	}
+
+CUIScriptAdaptor* CUIScriptAdaptor::NewLC(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+										  RArray<TTableOfInstallSizes>* aExpectedValue)
+	{
+	CUIScriptAdaptor* self = new(ELeave) CUIScriptAdaptor(aXmlFileName, aLogger, aExpectedValue);
+	CleanupStack::PushL(self);
+	self->ConstructL();
+	return self;
+	}
+
+CUIScriptAdaptor* CUIScriptAdaptor::NewL(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+										 RArray<TTableOfInstallSizes>* aExpectedValue)
+	{
+	CUIScriptAdaptor* self = NewLC(aXmlFileName, aLogger, aExpectedValue);
+	CleanupStack::Pop(self);
+	return self;
+	}
+	
+CUIScriptAdaptor::CUIScriptAdaptor(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+								   TPtrC aExpectedText,
+								   TPtrC aTextIsHash,
+								   TInt aExpectedDailog,
+								   TInt aKerrCode)
+	:
+	iXmlFileName(aXmlFileName), 
+	iLogger(aLogger),
+	iExpectedDisplayText(aExpectedText),
+	iExpectedHash(aTextIsHash),
+	iExpectedDialog(aExpectedDailog),
+	iKerrCode(aKerrCode),
+	iDelayDialogNumber(-1),
+	iDisplayedTextActual(NULL)
+	{
+	}
+	
+CUIScriptAdaptor* CUIScriptAdaptor::NewLC(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+										  TPtrC aExpectedText,
+										  TPtrC aTextIsHash,
+										  TInt aExpectedDailog,
+										  TInt aKerrCode
+										  )
+	{
+	CUIScriptAdaptor* self = new(ELeave) CUIScriptAdaptor(aXmlFileName, aLogger, aExpectedText, aTextIsHash, aExpectedDailog, aKerrCode);
+	CleanupStack::PushL(self);
+	self->ConstructL();
+	return self;
+	}
+
+CUIScriptAdaptor* CUIScriptAdaptor::NewL(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+	   								     TPtrC aExpectedText,
+	   								     TPtrC aTextIsHash,
+	   								     TInt aExpectedDailog,
+										 TInt aKerrCode
+	   								     )
+	{
+	CUIScriptAdaptor* self = NewLC(aXmlFileName, aLogger, aExpectedText,aTextIsHash, aExpectedDailog, aKerrCode);
+	CleanupStack::Pop(self);
+	return self;
+	}	
+void CUIScriptAdaptor::ConstructL()
+	{
+	User::LeaveIfError(iFs.Connect());
+	ScriptParseL();
+	}
+
+CUIScriptAdaptor::~CUIScriptAdaptor()
+	{
+	iResult.OptionSelection.Close();
+	iFs.Close();
+    iObservedOcspOutcomes.ResetAndDestroy();
+    delete iFileOwner;
+   	delete iDisplayedTextActual;
+	}
+
+/**
+ * The function is called to parse the XML file.
+ */
+void CUIScriptAdaptor::ScriptParseL()
+	{
+	CRebuildingContentHandler* contentHandler = 
+		CRebuildingContentHandler::NewLC(iLogger);
+	
+	// Open parser session
+	CParser* parser = CParser::NewLC(KParserDataType, *contentHandler);
+	
+	// Starts parser session and active scheduler.
+	INFO_PRINTF1(_L("Parsing XML..."));
+	ParseL(*parser, iFs, iXmlFileName);
+			
+	iResult = contentHandler->GetOptions();
+	CleanupStack::PopAndDestroy(2, contentHandler); // parser, contentHandler
+	}
+
+/**
+ * Extracts the nPos command line argument.
+ */
+
+HBufC* GetArgumentL(TInt nPos)
+	{
+	HBufC *argv = HBufC::NewLC(User::CommandLineLength());
+	TPtr cmd(argv->Des());
+	User::CommandLine(cmd);
+
+	TLex arguments(cmd);
+
+	// finds nth parameter
+	while(nPos && !arguments.Eos())
+		{
+		TPtrC token = arguments.NextToken();
+		if(token.Length() > 0)
+			{
+			nPos--;
+			}
+		}
+
+	HBufC* result = NULL;
+
+	if(!arguments.Eos())
+		{
+		TPtrC testfile(arguments.NextToken());
+
+		if(testfile.Length() > 0)
+			{
+			result = testfile.AllocL();
+			}
+		};
+
+	// no parameter found, but must return something so..
+	if(!result)
+		{
+		result = HBufC::NewL(0);
+		}
+
+	CleanupStack::PopAndDestroy(argv);
+
+	return result;
+	}
+
+CRebuildingContentHandler* CRebuildingContentHandler::NewLC(
+	CTestExecuteLogger& aLogger)
+	{
+	CRebuildingContentHandler* self = new(ELeave) CRebuildingContentHandler(
+		aLogger);
+	CleanupStack::PushL(self);
+	return self;
+	}
+
+CRebuildingContentHandler* CRebuildingContentHandler::NewL(
+	CTestExecuteLogger& aLogger)
+	{
+	CRebuildingContentHandler* self = new(ELeave) CRebuildingContentHandler(
+		aLogger);
+	return self;
+	}
+
+CRebuildingContentHandler::CRebuildingContentHandler(
+	CTestExecuteLogger& aLogger)
+	: 
+	iError(KErrNone), 
+	iLogger(aLogger),
+	iLevel1(EScript)
+	{
+	}
+
+CRebuildingContentHandler::~CRebuildingContentHandler()
+	{
+	}
+
+void CRebuildingContentHandler::OnStartDocumentL(const RDocumentParameters& 
+											/*aDocParam*/, TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	}
+
+void CRebuildingContentHandler::OnEndDocumentL(TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	}
+	
+void CRebuildingContentHandler::OnStartElementL(const RTagInfo& aElement, 
+						const RAttributeArray& aAttributes, TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+
+	TInt nAttributes = aAttributes.Count();
+	for(TInt i=0; i<nAttributes; i++)
+		{
+		const RAttribute& attribute = aAttributes[i];
+		const TDesC8& value8 = attribute.Value().DesC();
+		const TDesC8& tagname8 = aElement.LocalName().DesC();
+		switch(iLevel1)
+			{
+			case EScript:
+				if(value8.Compare(KDisplaySIDMismatch)==KErrNone)
+					{
+					 iLevel1 = EDisplaySIDMismatch;
+					  break;
+					}
+				else if (value8.Compare(KDisplayInstall) == KErrNone )
+					{
+					iLevel1 = EDisplayInstall;
+					break;
+					}
+				else if (value8.Compare(KDisplayGrantCapabilities) == KErrNone)
+					{
+					iLevel1 = EDisplayGrantCapabilities;
+					break;
+					}
+				else if (value8.Compare(KDisplayLanguage) == KErrNone )
+					{
+					iLevel1 = EDisplayLanguage;
+					break;
+					}
+				else if (value8.Compare(KDisplayDrive) == KErrNone )
+					{
+					iLevel1 = EDisplayDrive;
+					break;
+					}
+				else if (value8.Compare(KDisplayUpgrade) == KErrNone )
+					{
+					iLevel1 = EDisplayUpgrade;
+					break;
+					}
+				else if (value8.Compare(KDisplayOptions) == KErrNone )
+					{
+					iLevel1 = EDisplayOptions;
+					break;
+					}
+				else if (value8.Compare(KHandleInstallEvent) == KErrNone )
+					{
+					iLevel1 = EHandleInstallEvent;
+					break;
+					}
+				else if (value8.Compare(KHandleCancellableInstallEvent) == KErrNone )
+					{
+					iLevel1 = EHandleCancellableInstallEvent;
+					break;
+					}
+				else if (value8.Compare(KDisplaySecurityWarning) == KErrNone )
+					{
+					iLevel1 = EDisplaySecurityWarning;
+					break;
+					}
+				else if (value8.Compare(KDisplayOcspResult) == KErrNone )
+					{
+					iLevel1 = EDisplayOcspResult;
+					break;
+					}
+				else if (value8.Compare(KDisplayCannotOverwriteFile) == KErrNone )
+					{
+					iLevel1 = EDisplayCannotOverwriteFile;
+					break;
+					}
+				else if (value8.Compare(KDisplayUninstall) == KErrNone )
+					{
+					iLevel1 = EDisplayUninstall;
+					break;
+					}
+				else if (value8.Compare(KDisplayText) == KErrNone )
+					{
+					iLevel1 = EDisplayText;
+					break;
+					}
+				else if (value8.Compare(KDisplayError) == KErrNone )
+					{
+					iLevel1 = EDisplayError;
+					break;
+					}
+				else if (value8.Compare(KDisplayDependencyBreak) == KErrNone )
+					{
+					iLevel1 = EDisplayDependencyBreak;
+					break;
+					}
+				else if (value8.Compare(KDisplayApplicationsInUse) == KErrNone )
+					{
+					iLevel1 = EDisplayApplicationsInUse;
+					break;
+					}
+				else if (value8.Compare(KDisplayQuestion) == KErrNone )
+					{
+					iLevel1 = EDisplayQuestion;
+					break;
+					}
+				else if (value8.Compare(KDisplayMissingDependency) == KErrNone )
+					{
+					iLevel1 = EDisplayMissingDependency;
+					break;
+					}
+			case EDisplayInstall:
+			case EDisplayGrantCapabilities:
+			case EDisplayLanguage:
+			case EDisplayDrive:
+			case EDisplayUpgrade:
+			case EHandleCancellableInstallEvent:
+			case EDisplaySecurityWarning:
+			case EDisplayOcspResult:
+			case EDisplayCannotOverwriteFile:
+			case EDisplayUninstall:
+			case EDisplayText:
+			case EDisplayError:
+			case EDisplayDependencyBreak:
+			case EDisplayApplicationsInUse:
+			case EDisplayQuestion:
+			case EDisplayMissingDependency:
+			case EDisplaySIDMismatch:
+				if ( tagname8.Compare(KReturnType) == KErrNone )
+					{
+					iLevel2 = EReturn;
+					}
+				break;
+			case EDisplayOptions:
+				if ( tagname8.Compare(KIndexType) == KErrNone )
+					{
+					iLevel3 = EItemIndex;
+					}
+				else if ( tagname8.Compare(KReturnType) == KErrNone )
+						{
+						iLevel2 = EReturn;
+						}
+				break;
+			case EHandleInstallEvent:
+				if ( tagname8.Compare(KUpdateProgressReturn) == KErrNone )
+					{
+					iLevel2 = EUpdateProgress;
+					}
+				else if (tagname8.Compare(KUpdateProgressFinalReturn) == KErrNone )
+					{
+					iLevel2 = EUpdateProgressFinal;
+					}
+				else if ( tagname8.Compare(KReturnType) == KErrNone )
+					{
+					iLevel2 = EReturn;
+					}
+				break;
+			default:
+				break;
+			}
+		}
+	}
+
+void CRebuildingContentHandler::OnEndElementL(const RTagInfo& aElement, 
+												TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	const TDesC8& localPart8 = aElement.LocalName().DesC();
+	if ( localPart8.Compare(KDialogName) == KErrNone )
+		{
+		iLevel1 = EScript;
+		iLevel2 = KErrNone;
+		iLevel3 = KErrNone;
+		}
+	}
+
+void CRebuildingContentHandler::OnContentL(const TDesC8& aData8, 
+												TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+
+	switch(iLevel1)
+		{
+		case EDisplayInstall:
+			if ( iLevel2 == EReturn )	
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayInstallL will return ETrue"));
+					iResult.InstallResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayInstallL will return EFalse"));
+					iResult.InstallResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayGrantCapabilities:
+			if ( iLevel2 == EReturn )	
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayGrantCapabilitiesL will return ETrue"));
+					iResult.CapabilitiesResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayGrantCapabilitiesL will return EFalse"));
+					iResult.CapabilitiesResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayLanguage:
+			if ( iLevel2 == EReturn )	
+				{
+				TName	tagdata;
+				TInt	lang=0;
+				tagdata.Copy(aData8);
+				tagdata.Trim();
+				TLex value(tagdata);
+				value.Val(lang);
+				if (!iLangLogged)
+					{
+					INFO_PRINTF2(_L("DisplayLanguageL will return %d"), lang);
+					iResult.LanguagesResult = lang;
+					iLangLogged = ETrue;
+					}
+				}
+			break;
+		case EDisplayDrive:
+			if ( iLevel2 == EReturn )	
+				{
+				TInt	drive=-1;
+				TName	tagdata;
+				tagdata.Copy(aData8);
+				tagdata.Trim();
+				
+				if (tagdata.Size() && TChar(tagdata[0]).IsAlphaDigit()) 
+					{
+					drive=tagdata[0]-'a';
+					}
+				if (!iDriveLogged)
+					{
+					INFO_PRINTF2(_L("DisplayDriveL will return drive '%c'"), drive+'A');
+					iResult.DriveResult = drive;
+					iDriveLogged = ETrue;
+					}
+				}
+			break;
+		case EDisplayUpgrade:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayUpgradeL will return ETrue"));
+					iResult.UpgradeResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayUpgradeL will return EFalse"));
+					iResult.UpgradeResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayOptions:
+			if ( iLevel3 == EItemIndex && iLevel2 != EReturn)
+				{			
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Selection Index of the DisplayOptionsL	  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.OptionSelection.Append(ETrue);
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Selection Index of the DisplayOptionsL	  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.OptionSelection.Append(EFalse);
+					}
+				}
+			else if ( iLevel2 == EReturn )	
+					{
+					if ( aData8.Compare(KTrueValue) == KErrNone )
+						{
+						/*
+						TBuf8<KGenericBufferSize> text;
+						text.Format(_L8 ("\015\012The Input value of the DisplayOptionsL	 	  : "));
+						iOutFile.Write(text);	
+						iOutFile.Write(aData8);
+						*/
+						iResult.OptionsResult = ETrue;
+						}
+					else if ( aData8.Compare(KFalseValue) == KErrNone )
+						{
+						/*
+						TBuf8<KGenericBufferSize> text;
+						text.Format(_L8 ("\015\012The Input value of the DisplayOptionsL	  : "));
+						iOutFile.Write(text);
+						iOutFile.Write(aData8);
+						*/
+						iResult.OptionsResult = EFalse;
+						}
+					}
+			break;
+			
+		case EHandleInstallEvent:
+			if (iLevel2 == EUpdateProgress)
+				{
+				if (aData8.Compare(KTrueValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-UpdateProgress will return ETrue"));
+					iResult.UpdateProgressBarResult = ETrue;
+					}
+				else if (aData8.Compare(KFalseValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-UpdateProgress will return EFalse"));
+					iResult.UpdateProgressBarResult = EFalse;
+					}
+				}
+			else if (iLevel2 == EUpdateProgressFinal)
+				{
+				if (aData8.Compare(KTrueValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-UpdateProgressFinal will return ETrue"));
+					iResult.ProgressBarFinalValueResult = ETrue;
+					}
+				else if (aData8.Compare(KFalseValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-UpdateProgressFinal will return EFalse"));
+					iResult.ProgressBarFinalValueResult = EFalse;
+					}
+				}
+			else if (iLevel2 == EReturn)
+				{
+				if (aData8.Compare(KTrueValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-DevCert will return ETrue"));
+					iResult.DevCertsResult = ETrue;
+					}
+				else if (aData8.Compare(KFalseValue) == KErrNone)
+					{
+					INFO_PRINTF1(_L("HandleInstallEvent-DevCert will return EFalse"));
+					iResult.DevCertsResult = EFalse;
+					}					
+				}
+			break;
+			
+		case EHandleCancellableInstallEvent:
+			// No return values for these events.
+			break;
+			
+		case EDisplaySecurityWarning:
+			if (iLevel2 == EReturn)
+				{
+				TBool found=EFalse;
+				if (aData8.Compare(KTrueValue) == KErrNone)
+					{
+					iResult.WarningResult = ETrue;
+					found=ETrue;
+					}
+				else if (aData8.Compare(KFalseValue) == KErrNone)
+					{
+					iResult.WarningResult = EFalse;
+					found=ETrue;
+					}
+					
+				if (found && !iSecWarnLogged)
+					{
+					_LIT(KETrue, "ETrue");
+					_LIT(KEFalse, "EFalse");
+					INFO_PRINTF2(
+						_L("DisplaySecurityWarningL will return '%S'"), 
+						iResult.WarningResult ? &KETrue : &KEFalse);
+					iSecWarnLogged=ETrue;
+					}
+				}
+			break;
+			
+		case EDisplayOcspResult:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					iResult.OcspResult = ETrue;
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					iResult.OcspResult = EFalse;
+				_LIT(KETrue, "ETrue");
+				_LIT(KEFalse, "EFalse");
+				INFO_PRINTF2(
+					_L("DisplayOcspResultL will return '%S'"), 
+					iResult.OcspResult ? &KETrue : &KEFalse);
+				}
+			break;
+		case EDisplayCannotOverwriteFile:
+			break;
+			
+		case EDisplayUninstall:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayUninstallL will return ETrue"));
+					iResult.UninstallResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayUninstallL will return EFalse"));
+					iResult.UninstallResult = EFalse;
+					}
+				}
+			break;
+			
+		case EDisplayText:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayTextL		  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.TextResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayTextL		  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.TextResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayError:
+			break;
+		case EDisplayDependencyBreak:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayDependencyBreakL    : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.DependencyResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayDependencyBreakL    : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.DependencyResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayApplicationsInUse:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayApplicationsInUseL  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.ApplicationsInUseResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayApplicationsInUseL  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.ApplicationsInUseResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayQuestion:
+			if ( iLevel2 == EReturn )
+				{
+				if ( aData8.Compare(KTrueValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayQuestionL		  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.QuestionResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					/*
+					TBuf8<KGenericBufferSize> text;
+					text.Format(_L8 ("\015\012The Input value of the DisplayQuestionL		  : "));
+					iOutFile.Write(text);
+					iOutFile.Write(aData8);
+					*/
+					iResult.QuestionResult = EFalse;
+					}
+				}
+			break;
+		case EDisplayMissingDependency:
+			if (iLevel2 == EReturn)
+				{
+				if (aData8.Compare(KTrueValue)==KErrNone)
+					{
+					INFO_PRINTF1(_L("DisplayMissingDependencyL will return ETrue"));
+					iResult.MissingDependencyResult = ETrue;
+					}
+				else if ( aData8.Compare(KFalseValue) == KErrNone )
+					{
+					INFO_PRINTF1(_L("DisplayMissingDependencyL will return EFalse"));
+					iResult.MissingDependencyResult = EFalse;
+					}
+				}
+			break;
+		default:
+			break;
+		}
+	}
+
+void CRebuildingContentHandler::OnStartPrefixMappingL(const RString& /*aPrefix*/, 
+									  const RString& /*aUri*/, TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	}
+
+void CRebuildingContentHandler::OnEndPrefixMappingL(const RString& /*aPrefix*/, 
+													TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	}
+
+void CRebuildingContentHandler::OnIgnorableWhiteSpaceL(const TDesC8& /*aBytes*/, 
+													  TInt /*aErrorCode*/)
+	{
+	}
+
+void CRebuildingContentHandler::OnSkippedEntityL(const RString& /*aName*/, 
+												 TInt /*aErrorCode*/)
+	{
+	}
+
+void CRebuildingContentHandler::OnProcessingInstructionL(const TDesC8& /*aTarget8*/, 
+									 const TDesC8& /*aData8*/, TInt aErrorCode)
+	{
+	User::LeaveIfError(aErrorCode);
+	}
+
+void CRebuildingContentHandler::OnExtensionL(const RString& /*aData*/, 
+										TInt /*aToken*/, TInt /*aErrorCode*/)
+	{
+	/*
+	_LIT(KUnsupportedFeature,"Illegal call to TRebuildingContentHandler:: \
+												OnExtensionL - aborting\n");
+	test.Panic(KErrNotSupported, KUnsupportedFeature);
+	*/
+	}
+
+void CRebuildingContentHandler::OnOutOfData()
+	{
+	//_LIT(KUnexpectedOutOfData,"Unexpected call to OnOutOfData - aborting\n");
+	}
+
+void CRebuildingContentHandler::OnError(TInt aError)
+	{
+	iError = aError;
+//	test.Printf(_L("TRebuildingContentHandler::OnError - ERROR: code=%d - \
+//									  Aborting parsing process\n"), aError);
+	}
+
+TAny* CRebuildingContentHandler::GetExtendedInterface(const TInt32)
+	{
+	return NULL;
+	}
+	
+
+TXmlFileData& CRebuildingContentHandler::GetOptions()
+	{
+	return iResult;
+	}
+
+// CUISCriptAdaptor functions
+void CUIScriptAdaptor::DialogReached()
+	{
+
+	if ((iDialogDelay.Int() != 0) &&
+		(iDelayDialogNumber < 0 || iDelayDialogNumber == iCurrentDialogNumber))
+			{
+			// We need to make sure that (un)installation is not too quick,
+			// otherwise the async cancel tests will fail.
+			User::After(iDialogDelay);
+			}
+
+	if ((iCurrentDialogNumber++ == iCancelDialogNumber) &&
+		(iDialogCancelType == ECancelFromDialog ||
+		 iDialogCancelType == ECancelAfterDialog))
+		{
+		iInstallationCancelled=ETrue;
+		// Cancel the installation
+
+		if (iDialogCancelType == ECancelFromDialog)
+			{
+			if(iCancelHandler)
+				{
+				INFO_PRINTF1(_L("Canceling via CancellableInstallEvent callback"));
+				iCancelHandler->HandleCancel();
+				}
+			else
+				{
+				INFO_PRINTF1(_L("Cancelling via static Cancel API"));
+				Launcher::Cancel();
+				}	
+			}
+		else
+			{
+			// Cancelling after a dialog is done for the async install
+			// and uninstall steps.  Stopping the active scheduler will let
+			// CSwisAsyncStep::RunOperation start a cancel delay timer, and
+			// the cancel will actually be invoked when the timer expires.
+			// The install or uninstall will carry on until this happens.
+			INFO_PRINTF1(_L("Calling CActiveScheduler::Stop()"));
+			CActiveScheduler::Stop();
+			}
+		}
+
+	if (iCurrentDialogNumber > iCancelDialogNumber && 
+		(iDialogCancelType == ECancelFromDialog ||
+		 iDialogCancelType == ECancelAfterDialog))
+		{
+		ERR_PRINTF3(_L("Reached an unexpected dialog. Dialogs expected: %d, dialog reached: %d"), iCancelDialogNumber, iCurrentDialogNumber);
+		}
+	}
+
+
+void CUIScriptAdaptor::DisplayAppInfo(const TDesC& aPreText, const CAppInfo& aAppInfo)
+	{
+	INFO_PRINTF7(_L("\t%S {\"%S\", \"%S\", V%u.%u.%u}"),
+		&aPreText,
+		&aAppInfo.AppName(), &aAppInfo.AppVendor(),
+		aAppInfo.AppVersion().iMajor,
+		aAppInfo.AppVersion().iMinor,
+		aAppInfo.AppVersion().iBuild);
+	}
+
+void CUIScriptAdaptor::DisplayBoolReturn(TBool aReturn)
+	{
+	_LIT(KTrue, "True");
+	_LIT(KFalse, "False");
+	INFO_PRINTF2(_L("\tReturning %S"), aReturn ? &KTrue : &KFalse);
+	}
+
+void CUIScriptAdaptor::DisplayIntReturn(TInt aReturn)
+	{
+	INFO_PRINTF2(_L("\tReturning %d"), aReturn);
+	}
+	
+void CUIScriptAdaptor::CheckFinalProgressBarL()
+	{
+	if (iProgressBarCurrent != iProgressBarFinal)
+		{
+		INFO_PRINTF3(_L("\tProgress for installation not finished %d out of %d"), iProgressBarCurrent, iProgressBarFinal);
+		User::Leave(KErrAbort);
+		}
+	}
+
+void CUIScriptAdaptor::CheckExpectedAndCalculatedInstallSizesL(const TDesC& aAppInfoName, TInt64 aSize)
+	{		
+	TInt i=0;
+	TBool foundExpectedInstallSize = EFalse;
+	
+	RArray<TTableOfInstallSizes> arrayOfExpectedValues = *iExpectedValue;
+
+	while ((!foundExpectedInstallSize) && (i<arrayOfExpectedValues.Count()))
+		{
+		if (arrayOfExpectedValues[i].iPkgFileName == aAppInfoName)
+			{
+			if (arrayOfExpectedValues[i].iInstallSize != aSize)
+				{
+				INFO_PRINTF3(_L("\tThe calculated install size (%D bytes) does not match the expected install size (%D bytes)."),
+								I64LOW(aSize), arrayOfExpectedValues[i].iInstallSize);
+				User::Leave(KErrAbort);
+				}
+			else
+				{
+				INFO_PRINTF2(_L("\tSize (calculated value matches expected value): %D bytes."), I64LOW(aSize));
+				foundExpectedInstallSize = ETrue;
+				}
+			}
+		else
+			{
+			i = i + 1;
+			}
+		}
+	if (!foundExpectedInstallSize)
+		{
+		INFO_PRINTF2(_L("\tThe calculated install size (%D bytes) does not match any of the expected install sizes."),
+						I64LOW(aSize));
+		User::Leave(KErrAbort);
+		}
+	}
+	
+	
+//
+// Implementation for the virtual functions for the MUiHandler class. 
+//
+
+/**
+ * Displays Install dialog and logs all incoming information.
+ *
+ * @param aAppInfo      Application information.
+ * @param aLogo         Optional bitmap logo.
+ * @param aCertificates Array of end-entity certificates (can be empty).
+ *
+ * @return A value from script: \b ETrue to continue, \b EFalse to abort 
+ *         installation.
+ */
+TBool CUIScriptAdaptor::DisplayInstallL(const CAppInfo& aAppInfo,
+	const CApaMaskedBitmap* aLogo,
+	const RPointerArray<CCertificateInfo>& aCertificates)
+	{
+	INFO_PRINTF1(_L("DisplayInstallL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	TInt bootMode = 0;
+	User::LeaveIfError(RProperty::Get(KUidSystemCategory, KSystemStartupModeKey, bootMode));
+	(void) aLogo;
+	if (aCertificates.Count())
+		{
+		INFO_PRINTF2(_L("\tCertificate(s): %u"),aCertificates.Count());
+		for (TInt i=0; i<aCertificates.Count(); i++)
+			{
+			INFO_PRINTF4(_L("\t[%02u] Subj: \"%S\", Issuer: \"%S\""),i,
+				&aCertificates[i]->SubjectName(),
+				&aCertificates[i]->IssuerName());
+
+			TTime validFrom(aCertificates[i]->ValidFrom());
+			TTime validTo(aCertificates[i]->ValidTo());
+			TBuf<KMaxLongDateFormatSpec> validFromBuf, validToBuf;
+			validFrom.FormatL(validFromBuf, TLongDateFormatSpec());
+			validTo.FormatL(validToBuf, TLongDateFormatSpec());
+			INFO_PRINTF3(_L("\t     ValidFrom: \"%S\", ValidTo: \"%S\""),
+				&validFromBuf, &validToBuf);
+			}
+		}
+	
+	LeaveError(KDisplayInstall1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.InstallResult);
+	return iResult.InstallResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayGrantCapabilitiesL(const CAppInfo& aAppInfo, 
+	const TCapabilitySet& aCapabilitySet)
+   {
+   iGrantUserCapsDialogCalled=ETrue;
+   
+   INFO_PRINTF1(_L("DisplayGrantCapabilitiesL():"));
+  	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	// Build requested capabilities string.
+	const TInt KMaxBufSize=512; // should be enough for all capability names
+	const TInt KMaxCapName=64; // should be enough for one capability name
+	_LIT(KSpace," ");
+	HBufC* buf=HBufC::NewLC(KMaxBufSize);
+	TPtr p=buf->Des();
+	TInt capsAppended=0;
+	TBuf8<KMaxCapName> capName8;
+	TBuf<KMaxCapName> capName;
+
+	for (TInt i=0; i<ECapability_HardLimit; i++)
+		{
+		if (aCapabilitySet.HasCapability(static_cast<TCapability>(i)))
+			{
+			if (capsAppended)
+				p.Append(KSpace);
+			capName8=reinterpret_cast<const TUint8*>(CapabilityNames[i]);
+			capName.Copy(capName8);
+			p.Append(capName);
+			capsAppended++;
+			}
+		}
+
+	INFO_PRINTF2(_L("\tRequesting capabilities: %S"),&p);
+	CleanupStack::PopAndDestroy(buf);
+
+	DialogReached();
+	DisplayBoolReturn(iResult.CapabilitiesResult);
+	return iResult.CapabilitiesResult;
+	}
+
+
+TInt CUIScriptAdaptor::DisplayLanguageL(const CAppInfo& aAppInfo, 
+						 const RArray<TLanguage>& aLanguages)
+	{
+	INFO_PRINTF1(_L("DisplayLanguageL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	HBufC* languages=HBufC::NewLC(1024);
+	TPtr pLanguages(languages->Des());
+
+	for (TInt i=0; i < aLanguages.Count();)
+		{
+		pLanguages.AppendFormat(_L("%S"), &KLanguageTable[aLanguages[i]]);
+		if (++i  >= aLanguages.Count())
+			break;
+		pLanguages.Append(_L(", "));
+		}
+	INFO_PRINTF2(_L("\tLanguages: %S"), &pLanguages);
+	CleanupStack::PopAndDestroy(languages);
+
+	LeaveError(KDisplayLanguage1);
+	DialogReached();
+	DisplayIntReturn(iResult.LanguagesResult);
+	return iResult.LanguagesResult;
+	}
+
+
+TInt CUIScriptAdaptor::DisplayDriveL(const CAppInfo& aAppInfo,
+						 TInt64 aSize,const RArray<TChar>& aDriveLetters,
+						 const RArray<TInt64>& aDriveSpaces)
+	{
+	iDisplayDriveDialogCalled = ETrue;
+	INFO_PRINTF1(_L("DisplayDriveL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	HBufC* drives=HBufC::NewLC(1024);
+	TPtr pDrives(drives->Des());
+    TInt letter;
+	for (TInt i=0; i < aDriveLetters.Count();)
+		{
+        letter = aDriveLetters[i];
+		pDrives.AppendFormat(_L("%c"),letter);
+		pDrives.AppendFormat(_L(" (%U bytes)"), I64LOW(aDriveSpaces[i]));
+		if (++i  >= aDriveLetters.Count())
+			break;
+		pDrives.Append(_L(", "));
+		}
+	INFO_PRINTF2(_L("\tDrives: %S"), &pDrives);
+	CleanupStack::PopAndDestroy(drives);
+	
+	// If the test case contains information about expected install sizes,
+	// then compare them against the calculated install size. Otherwise,
+	// just print out the calculated install size.
+	if (iExpectedValue != NULL)
+		{
+		CheckExpectedAndCalculatedInstallSizesL(aAppInfo.AppName(), aSize);
+		}
+	else
+		{
+		INFO_PRINTF2(_L("\tSize: %d"), I64LOW(aSize));
+		}
+	
+	LeaveError(KDisplayDrive1);
+	DialogReached();
+
+	// Drive result is the drive we want to return so we need to go through the list
+	// looking for it
+	for (TInt i=0; i < aDriveLetters.Count() ; ++i)
+		{
+		if (TChar(iResult.DriveResult+'a') == TChar(aDriveLetters[i]).GetLowerCase())
+			{
+			DisplayIntReturn(i);
+			return i;
+			}
+		}
+	
+	DisplayIntReturn(-1);
+	return -1; // Could not find drive we want, cancelling installation
+	}
+
+
+TBool CUIScriptAdaptor::DisplayUpgradeL(const CAppInfo& aAppInfo,
+	const CAppInfo& aExistingAppInfo)
+	{
+	INFO_PRINTF1(_L("DisplayUpgradeL():"));
+	DisplayAppInfo(_L("From App:"), aExistingAppInfo);
+	DisplayAppInfo(_L("To App:"), aAppInfo);
+	LeaveError(KDisplayUpgrade1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.UpgradeResult);
+	return iResult.UpgradeResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayOptionsL(const CAppInfo& aAppInfo,
+						  const RPointerArray<TDesC>& aOptions,
+						  RArray<TBool>& aSelections)
+	{
+	INFO_PRINTF1(_L("DisplayOptionsL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	HBufC* options=HBufC::NewLC(4096);
+	TPtr pOptions(options->Des());
+
+	for (TInt i=0; i < aOptions.Count();)
+		{
+		pOptions.AppendFormat(_L("%S"), aOptions[i]);
+		
+		if (i >= iResult.OptionSelection.Count())
+			{
+			pOptions.Append(_L(" (?)"));		
+			}
+		else if (iResult.OptionSelection[i])
+			{
+			pOptions.Append(_L(" (*)"));		
+			}
+		else
+			{
+			pOptions.Append(_L(" ( )"));		
+			}		
+
+		if (++i  >= aOptions.Count())
+			break;
+		pOptions.Append(_L(", "));
+		}
+	INFO_PRINTF2(_L("\tOptions: %S"), &pOptions);
+	CleanupStack::PopAndDestroy(options);
+
+	TInt count = iResult.OptionSelection.Count();
+	for (TInt index=0; index < count; index++)
+		{
+		aSelections[index]=iResult.OptionSelection[index];	
+		}
+	LeaveError(KDisplayOptions1);
+	DialogReached();
+	DisplayBoolReturn(iResult.OptionsResult);
+	return 	iResult.OptionsResult;
+	}
+
+TBool CUIScriptAdaptor::HandleInstallEventL(
+						const CAppInfo& aAppInfo,
+						TInstallEvent   aEvent, 
+						TInt            aValue, 
+						const TDesC&    aDes)
+	{
+	INFO_PRINTF1(_L("HandleInstallEventL"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	
+	TBool ret(ETrue);
+	// update progress
+	// We shouldn't cancel on the last dialog, since installation/uninstallation has 
+	// finished, and the tests will fail due to cancellation being flagged, but the
+	// installation/uninstallation completing with no error, as expected.
+	switch (aEvent)
+		{
+	case EEventSetProgressBarFinalValue:
+		INFO_PRINTF2(_L("\tEvent:\tEEventSetProgressBarFinalValue %d"), aValue);
+		
+		// Keep track of progress bar values
+		iProgressBarFinal=aValue;
+		iProgressBarCurrent=0;
+		LeaveError(KInstallEvenDialogSetProgressBar);
+		DialogReached();
+		ret = iResult.ProgressBarFinalValueResult;
+		break;
+
+	case EEventUpdateProgressBar:
+		// Keep track of progress bar values
+		iProgressBarCurrent+=aValue;
+		INFO_PRINTF4(_L("\tEvent:\tEEventUpdateProgressBar %d - %d/%d"), aValue, iProgressBarCurrent, iProgressBarFinal);
+		LeaveError(KInstallEvenDialogUpdateProgressBar);
+		DialogReached();
+		ret = iResult.UpdateProgressBarResult;
+ 		break;
+      
+	case EEventAbortedInstall:
+		INFO_PRINTF1(_L("\tEvent:\tEEventAbortedInstall"));
+		break;
+
+	case EEventCompletedInstall:
+		INFO_PRINTF1(_L("\tEvent:\tEEventCompletedInstall"));
+		LeaveError(KInstallEvenDialogCompletedInstall);
+     	CheckFinalProgressBarL();
+		break;
+
+	case EEventOcspCheckEnd:
+		INFO_PRINTF1(_L("\tEvent:\tEEventOcspCheckEnd"));
+		LeaveError(KInstallEvenDialogOcspCheckEnd);
+		DialogReached();
+		break;
+
+	case EEventCompletedNoMessage:
+		INFO_PRINTF1(_L("\tEvent:\tEEventCompletedNoMessage"));
+		break;
+
+	case EEventAbortedUnInstall:
+		INFO_PRINTF1(_L("\tEvent:\tEEventAbortedUnInstall"));
+		break;
+
+	case EEventCompletedUnInstall:
+		INFO_PRINTF1(_L("\tEvent:\tEEventCompletedUnInstall"));
+		LeaveError(KInstallEvenDialogCompletedUnInstall);
+     	CheckFinalProgressBarL();
+		break;
+
+	case EEventLeave:
+		INFO_PRINTF2(_L("\tEvent:\tEEventLeave %d"), aValue);
+		INFO_PRINTF1(_L("\tEvent:\tEEventCompletedUnInstall"));
+		DialogReached();
+		break;
+	
+	case EEventDevCert:
+		INFO_PRINTF2(_L("\tEvent:\tEEventDevCert %S"), &aDes);
+		LeaveError(KInstallEvenDevCert);
+		DialogReached();
+		ret=iResult.DevCertsResult;
+		break;
+
+	default:
+		INFO_PRINTF4(_L("\tResult:\tUnknown (%d) Value: %d Des %S"), aEvent, aValue, &aDes);
+		ASSERT(false);
+		}
+
+	return ret;
+	}
+
+void CUIScriptAdaptor::HandleCancellableInstallEventL(
+						const CAppInfo&          aAppInfo,
+						TInstallCancellableEvent aEvent, 
+						MCancelHandler&          aCancelHandler,
+						TInt                     aValue, 
+						const TDesC&             aDes)
+	{
+	iCancelHandler = &aCancelHandler;
+
+	INFO_PRINTF1(_L("HandleCancellableInstallEventL"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	
+	switch (aEvent)
+		{
+	case EEventRemovingFiles:
+		INFO_PRINTF1(_L("\tEvent:\tEEventRemovingFiles"));
+		LeaveError(KCancelInstallRemoving);
+      break;
+	case EEventShuttingDownApps:
+		INFO_PRINTF1(_L("\tEvent:\tEEventShuttingDownApps"));
+		LeaveError(KCancelInstallShuttingDown);
+      break;
+	case EEventCopyingFiles:
+		INFO_PRINTF1(_L("\tEvent:\tEEventCopyingFiles"));
+		LeaveError(KCancelInstallCopyingFiles);
+      break;
+	case EEventOcspCheckStart:
+		INFO_PRINTF1(_L("\tEvent:\tEEventOcspCheckStart"));
+		LeaveError(KCancelInstallOcspCheckStart);
+      break;
+	
+	default:
+		INFO_PRINTF4(_L("\tEvent:\tUnknown (%d) Value: %d Des %S"), aEvent, aValue, &aDes);
+		}
+	DialogReached();
+	}
+
+TBool CUIScriptAdaptor::DisplaySecurityWarningL(
+		const CAppInfo& aAppInfo,
+		TSignatureValidationResult aSigValidationResult,
+		RPointerArray<CPKIXValidationResultBase>& /*aPkixResults*/,
+		RPointerArray<CCertificateInfo>& /*aCertificates*/,
+		TBool aInstallAnyway)
+	{
+	_LIT(KTrue, "True");
+	_LIT(KFalse, "False");
+	
+	INFO_PRINTF1(_L("DisplaySecurityWarningL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	
+	switch (aSigValidationResult)
+	{
+	case EValidationSucceeded:
+		INFO_PRINTF1(_L("\tResult:\tEValidationSucceeded"));
+      break;
+    case ESignatureSelfSigned:
+    	INFO_PRINTF1(_L("\tResult:\tESignatureSelfSigned"));
+    	break;
+ 	case ENoCertificate:
+		INFO_PRINTF1(_L("\tResult:\tENoCertificate"));
+        break;
+	case ECertificateValidationError:
+		INFO_PRINTF1(_L("\tResult:\tECertificateValidationError"));
+      break;
+	case ESignatureNotPresent:
+		INFO_PRINTF1(_L("\tResult:\tESignatureNotPresent"));
+      break;
+	case ESignatureCouldNotBeValidated:
+		INFO_PRINTF1(_L("\tResult:\tESignatureCouldNotBeValidated"));
+      break;
+	case ENoCodeSigningExtension:
+		INFO_PRINTF1(_L("\tResult:\tENoCodeSigningExtension"));
+      break;
+ 	case ENoSupportedPolicyExtension:
+		INFO_PRINTF1(_L("\tResult:\tENoSupportedPolicyExtension"));
+      break;
+	case EMandatorySignatureMissing:
+		INFO_PRINTF1(_L("\tResult:\tEMandatorySignatureMissing"));
+      break;
+ 	default:
+ 		INFO_PRINTF2(_L("\tResult:\tUnknown (%d)"), aSigValidationResult);
+      break;
+ 	};
+	
+	LeaveError(KDisplaySecurityWarning1);	
+	DialogReached();
+	
+	++iSecurityWarningDialogsInvoked;
+
+	INFO_PRINTF3(
+		_L("\tReturning %S (override possible: %S)"), 
+		iResult.WarningResult ? &KTrue : &KFalse,
+		aInstallAnyway ? &KTrue : &KFalse);
+	return iResult.WarningResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayOcspResultL(const CAppInfo& aAppInfo,
+					 TRevocationDialogMessage aMessage, 
+					 RPointerArray<TOCSPOutcome>& aOutcomes, 
+					 RPointerArray<CCertificateInfo>& aCertificates,
+					 TBool aWarningOnly)
+	{	
+	INFO_PRINTF1(_L("DisplayOcspResultL():"));
+	INFO_PRINTF6(_L("\t  App: { \"%S\" \"%S\" V%u.%u.%u }"),&aAppInfo.AppName(),
+		&aAppInfo.AppVendor(),aAppInfo.AppVersion().iMajor,
+		aAppInfo.AppVersion().iMinor,aAppInfo.AppVersion().iBuild);
+	INFO_PRINTF2(_L("\t  Msg: %u"),aMessage);
+	TInt numCerts=aCertificates.Count();
+	TInt numOutcomes=aOutcomes.Count();
+	INFO_PRINTF3(_L("\tCerts: %u, outcomes: %u"),numCerts,numOutcomes);
+
+	if (numCerts != numOutcomes)
+ 		{
+ 		ERR_PRINTF1(_L("\tMismatched certs and outcomes arrays!"));
+ 		User::Leave(KErrArgument);
+ 		}
+
+	for (TInt i=0; i<numCerts; i++)
+      {
+        INFO_PRINTF3(_L("\t Cert: [%u] DN = \"%S\""), i,
+                     &aCertificates[i]->SubjectName());
+      }
+    
+	iObservedOcspOutcomes.ResetAndDestroy();
+ 	for (TInt i=0; i<numOutcomes; i++)
+ 		{
+ 		INFO_PRINTF4(_L("\t outcome[%u] = {%d, %d}"),
+                     i,
+                     aOutcomes[i]->iStatus,
+                     aOutcomes[i]->iResult);
+        TOCSPOutcome* outcome = new(ELeave) TOCSPOutcome(*aOutcomes[i]);
+ 		CleanupStack::PushL(outcome);
+ 		iObservedOcspOutcomes.AppendL(outcome);
+ 		CleanupStack::Pop(outcome);
+ 		}
+
+	_LIT(KYes,"Yes");
+	_LIT(KNo,"No");
+	INFO_PRINTF2(_L("\tFatal: %S"), aWarningOnly ? &KNo : &KYes);
+	
+	if (! aWarningOnly)	
+		{
+		iFatalOcspResponseEncountered = ETrue;
+		}
+
+	LeaveError(KDisplayOcspResult1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.OcspResult);
+	return iResult.OcspResult;
+	}
+
+void CUIScriptAdaptor::DisplayCannotOverwriteFileL(const CAppInfo& aAppInfo,
+						 const CAppInfo& aInstalledAppInfo,
+						 const TDesC& aFileName)
+	{
+	iCannotOverwriteFileDialogCalled = ETrue;
+	iFileOwner = aInstalledAppInfo.AppName().AllocL();
+	INFO_PRINTF1(_L("DisplayCannotOverwriteFileL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	INFO_PRINTF2(_L("\tFile : %S"), &aFileName);
+	LeaveError(KDisplayCannotOverwriteFile1);	
+	DisplayAppInfo(_L("From App:"), aInstalledAppInfo);
+	DialogReached();
+	}
+
+TBool CUIScriptAdaptor::DisplayUninstallL(const CAppInfo& aAppInfo)
+	{
+	INFO_PRINTF1(_L("DisplayUninstallL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	LeaveError(KDisplayUninstall1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.UninstallResult);
+	return iResult.UninstallResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayTextL(const CAppInfo& aAppInfo, 
+						  TFileTextOption aOption, const TDesC& aText)
+	{
+	INFO_PRINTF1(_L("DisplayTextL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	
+	switch (aOption)
+		{
+	case EInstFileTextOptionContinue:
+		INFO_PRINTF1(_L("\tOption:\tEInstFileTextOptionContinue"));
+      break;
+	case EInstFileTextOptionSkipOneIfNo:
+		INFO_PRINTF1(_L("\tOption:\tEInstFileTextOptionSkipOneIfNo"));
+      break;
+	case EInstFileTextOptionAbortIfNo:
+		INFO_PRINTF1(_L("\tOption:\tEInstFileTextOptionAbortIfNo"));
+      break;
+	case EInstFileTextOptionExitIfNo:
+		INFO_PRINTF1(_L("\tOption:\tEInstFileTextOptionExitIfNo"));
+      break;
+
+	default:
+		INFO_PRINTF2(_L("Option: Unknown (%d)"), aOption);
+		}
+		
+	INFO_PRINTF2(_L("Text: \"%S\""), &aText);
+
+	// Record the displayed text so it can be compared with the
+	// ExpectedDisplayText configuration value later
+	iDisplayedText = aText.Left(Min(KMaxDisplayText, aText.Length()));
+	iDisplayedText.TrimRight();
+
+	// Record the displayed text (unchanged) so it can be compared with the
+	// contents of a text file
+	iDisplayedTextActual = HBufC16::NewL(aText.Length());
+	*iDisplayedTextActual = aText;
+
+	LeaveError(KDisplayText1);
+	DialogReached();
+	DisplayBoolReturn(iResult.TextResult);
+	return iResult.TextResult;
+	}
+
+void CUIScriptAdaptor::DisplayErrorL(const CAppInfo& aAppInfo,
+						 TErrorDialog aType, const TDesC& aDes)
+	{
+	INFO_PRINTF1(_L("DisplayErrorL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	switch (aType)
+		{
+	case EUiAlreadyInRom:
+		INFO_PRINTF2(_L("\tError:\tEUiAlreadyInRom file=%S"), &aDes);
+      break;
+	case EUiBlockingEclipsingFile:
+		INFO_PRINTF2(_L("\tError:\tEUiBlockingEclipsingFile %S"), &aDes);     
+      break;
+	case EUiMissingDependency:
+		INFO_PRINTF1(_L("\tError:\tEUiMissingDependency"));
+      break;
+	case EUiRequireVer:
+		INFO_PRINTF1(_L("\tError:\tEUiRequireVer"));
+      break;
+	case EUiRequireVerOrGreater:
+		INFO_PRINTF1(_L("\tError:\tEUiRequireVerOrGreater"));
+      break;
+	case EUiFileCorrupt:
+		INFO_PRINTF1(_L("\tError:\tEUiFileCorrupt"));
+      break;
+	case EUiDiskNotPresent:
+		INFO_PRINTF1(_L("\tError:\tEUiDiskNotPresent"));
+      break;
+	case EUiCannotRead:
+		INFO_PRINTF1(_L("\tError:\tEUiCannotRead"));
+      break;
+	case EUiCannotDelete:
+		INFO_PRINTF1(_L("\tError:\tEUiCannotDelete"));
+      break;
+	case EUiInvalidFileName:
+		INFO_PRINTF1(_L("\tError:\tEUiInvalidFileName"));
+      break;
+	case EUiFileNotFound:
+		INFO_PRINTF1(_L("\tError:\tEUiFileNotFound"));
+      break;
+	case EUiInsufficientSpaceOnDrive:
+		INFO_PRINTF1(_L("\tError:\tEUiInsufficientSpaceOnDrive"));
+      break;
+	case EUiCapabilitiesCannotBeGranted:
+		INFO_PRINTF2(_L("\tError:\tEUiCapabilitiesCannotBeGranted %S"), &aDes);   	
+      break;
+	case EUiUnknownFile:
+		INFO_PRINTF1(_L("\tError:\tEUiUnknownFile"));
+      break;
+	case EUiMissingBasePackage:
+		INFO_PRINTF1(_L("\tError:\tEUiMissingBasePackage"));
+      break;
+	case EUiConstraintsExceeded:
+		INFO_PRINTF1(_L("\tError:\tEUiConstraintsExceeded"));
+      break;
+	case EUiSIDViolation:
+		INFO_PRINTF1(_L("\tError:\tEUiSIDViolation"));
+      break;
+	case EUiVIDViolation:
+		INFO_PRINTF1(_L("\tError:\tEUiVIDViolation"));
+      break;
+	case EUiUIDPackageViolation:
+		INFO_PRINTF1(_L("\tError:\tEUiUIDPackageViolation"));
+      break;
+	case EUiSIDMismatch:
+		INFO_PRINTF1(_L("\tError:\tEUiSIDMismatch"));
+	  break;
+	default:
+		INFO_PRINTF3(_L("\tError:\tUnknown (%d) Des %S"), aType, &aDes);
+	 	};
+
+	LeaveError(KDisplayError1);	
+	DialogReached();
+	}
+
+TBool CUIScriptAdaptor::DisplayDependencyBreakL(const CAppInfo& aAppInfo,
+					      const RPointerArray<TDesC>& aComponents)
+	{
+	INFO_PRINTF1(_L("DisplayDependencyBreakL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	HBufC* components=HBufC::NewLC(1024);
+	TPtr pComponents(components->Des());
+
+	for (TInt i=0; i < aComponents.Count();)
+		{
+		pComponents.AppendFormat(_L("%S"), aComponents[i]);
+		if (++i  >= aComponents.Count())
+			break;
+		pComponents.Append(_L(", "));
+		}
+	INFO_PRINTF2(_L("\tComponents: %S"), &pComponents);
+	CleanupStack::PopAndDestroy(components);
+
+	LeaveError(KDisplayDependencyBreak1);
+	DialogReached();
+	DisplayBoolReturn(iResult.DependencyResult);
+	return iResult.DependencyResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayApplicationsInUseL(const CAppInfo& aAppInfo, 
+							const RPointerArray<TDesC>& aAppNames)
+	{
+	INFO_PRINTF1(_L("DisplayApplicationsInUseL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	HBufC* applications=HBufC::NewLC(1024);
+	TPtr pApplications(applications->Des());
+
+	for (TInt i=0; i < aAppNames.Count();)
+		{
+		pApplications.AppendFormat(_L("%S"), aAppNames[i]);
+		if (++i  >= aAppNames.Count())
+			break;
+		pApplications.Append(_L(", "));
+		}
+	INFO_PRINTF2(_L("\tComponents: %S"), &pApplications);
+	CleanupStack::PopAndDestroy(applications);
+
+	LeaveError(KDisplayApplicationsInUse1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.ApplicationsInUseResult);
+	return iResult.ApplicationsInUseResult;
+	}
+
+TBool CUIScriptAdaptor::DisplayQuestionL(const CAppInfo& aAppInfo, 
+							TQuestionDialog aQuestion, const TDesC& aDes)
+	{
+	INFO_PRINTF1(_L("DisplayQuestionL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+	
+	switch (aQuestion)
+		{
+	case EQuestionIncompatible:
+		INFO_PRINTF1(_L("\tQuestion:\tEQuestionIncompatible"));
+      break;
+	
+	case EQuestionOverwriteFile:
+		INFO_PRINTF1(_L("\tQuestion:\tEQuestionOverwriteFile"));
+		INFO_PRINTF2(_L("\tFile Name:\t%S"), &aDes);
+      break;
+
+	default:
+		INFO_PRINTF3(_L("\tQuestion:\tUnknown (%d) Des %S"), aQuestion, &aDes);
+		}
+	
+	LeaveError(KDisplayQuestion1);	
+	DialogReached();
+	DisplayBoolReturn(iResult.QuestionResult);
+	return iResult.QuestionResult;
+	}
+
+
+TBool CUIScriptAdaptor::DisplayMissingDependencyL(const CAppInfo& aAppInfo,
+	const TDesC& aDependencyName,TVersion aWantedVersionFrom,
+	TVersion aWantedVersionTo,TVersion aInstalledVersion)
+	{
+	INFO_PRINTF1(_L("DisplayMissingDependencyL():"));
+	DisplayAppInfo(_L("AppInfo:"), aAppInfo);
+
+	INFO_PRINTF2(_L("\tMissing dependency name: %S"),&aDependencyName);
+	INFO_PRINTF7(_L("\t         Wanted version: %u.%u.%u - %u.%u.%u"),
+		aWantedVersionFrom.iMajor,aWantedVersionFrom.iMinor,
+		aWantedVersionFrom.iBuild,
+		aWantedVersionTo.iMajor,aWantedVersionTo.iMinor,
+		aWantedVersionTo.iBuild);
+	INFO_PRINTF4(_L("\t       Existing version: %u.%u.%u"),
+		aInstalledVersion.iMajor,aInstalledVersion.iMinor,
+		aInstalledVersion.iBuild);
+
+	LeaveError(KDisplayMissingDependency1);
+	DialogReached();
+	DisplayBoolReturn(iResult.MissingDependencyResult);
+	return iResult.MissingDependencyResult;
+	}
+void CUIScriptAdaptor::LeaveError(TInt aReason)
+	{
+		if (iExpectedDialog == aReason)
+		{
+		User::Leave(iKerrCode);	
+		}
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tuiscriptadaptors.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,448 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#ifndef __TUISCRIPTADAPATORS_H__
+#define __TUISCRIPTADAPATORS_H__
+
+#include <xml/parser.h>
+#include <xml/contenthandler.h>
+#include <swi/msisuihandlers.h>
+#include <e32property.h>
+#include <e32uid.h>
+
+
+class TTableOfInstallSizes
+	{
+public:	
+	TBuf<64>  iPkgFileName;
+	TInt      iInstallSize; 
+	};
+
+namespace Swi
+{
+namespace Test
+{
+const TInt KBufSize = 5;
+
+enum TFunctions{
+	EScript = 0,
+	EDisplayInstall,
+    EDisplayGrantCapabilities,
+	EDisplayLanguage,
+	EDisplayDrive,
+	EDisplayUpgrade,
+	EDisplayOptions,
+	EHandleInstallEvent,
+	EHandleCancellableInstallEvent,
+	EDisplaySecurityWarning,
+	EDisplayOcspResult,
+	EDisplayCannotOverwriteFile,
+	EDisplayUninstall,
+	EDisplayText,
+	EDisplayError,
+	EDisplayDependencyBreak,
+	EDisplayApplicationsInUse,
+	EDisplayQuestion,
+	EDisplayMissingDependency,
+	EDisplaySIDMismatch,
+};
+
+enum TLeveltags{
+	EItemIndex =1,
+	EReturn,
+	EUpdateProgress,
+	EUpdateProgressFinal
+};
+
+enum TSwiCancelType{
+	ENoCancel,
+	ECancelTimerFromStart,
+	ECancelFromDialog,
+	ECancelAfterDialog
+};
+
+
+/**
+ * Structure to hold the parsed value of the XML file.
+ */
+struct TXmlFileData {
+	TBool			  InstallResult;
+	TBool			  CapabilitiesResult; 
+	TInt			  LanguagesResult;
+	TInt			  DriveResult;
+	TBool			  UpgradeResult;
+	TBool			  OptionsResult;
+	RArray< TBool >	  OptionSelection;
+	TBool			  WarningResult;
+	TBool			  OcspResult;
+	TBool			  UninstallResult;
+	TBool			  TextResult;
+	TBool			  DependencyResult;
+	TBool			  ApplicationsInUseResult;
+	TBool			  QuestionResult;
+	TBool             MissingDependencyResult;
+	TBool			  DevCertsResult;
+	TBool			  UpdateProgressBarResult;
+	TBool			  ProgressBarFinalValueResult;
+		
+	TXmlFileData();
+};
+
+/**
+ * This class defines the interface required by a client of the xml framework.
+ * It allows a client to be placed in a chain with other clients, i.e. a Parser,
+ * a Validator, or a User, and therefore allows the flow of information between 
+ * these links.
+ */
+class CRebuildingContentHandler : public CBase, public Xml::MContentHandler
+	{
+public:
+	static CRebuildingContentHandler* NewL(CTestExecuteLogger& aLogger);
+	static CRebuildingContentHandler* NewLC(CTestExecuteLogger& aLogger);
+	~CRebuildingContentHandler();
+	void OnStartDocumentL(const Xml::RDocumentParameters& aDocParam, TInt aErrorCode);
+	void OnEndDocumentL(TInt aErrorCode);
+	void OnStartElementL(const Xml::RTagInfo& aElement, const Xml::RAttributeArray& aAttributes, TInt aErrorCode);
+	void OnEndElementL(const Xml::RTagInfo& aElement, TInt aErrorCode);
+	void OnContentL(const TDesC8& aBytes, TInt aErrorCode);
+	void OnStartPrefixMappingL(const RString& aPrefix, const RString& aUri, TInt aErrorCode);
+	void OnEndPrefixMappingL(const RString& aPrefix, TInt aErrorCode);
+	void OnIgnorableWhiteSpaceL(const TDesC8& aBytes, TInt aErrorCode);
+	void OnSkippedEntityL(const RString& aName, TInt aErrorCode) ;
+	void OnProcessingInstructionL(const TDesC8& aTarget, const TDesC8& aData, TInt aErrorCode);
+	void OnExtensionL(const RString& aData, TInt aToken, TInt aErrorCode);
+	void OnOutOfData();
+	void OnError(TInt aErrorCode);
+	TAny* GetExtendedInterface(const TInt32 aUid);
+	TXmlFileData& GetOptions();
+	
+public:
+	TInt iError;
+	
+private:
+	CRebuildingContentHandler(CTestExecuteLogger& aLogger);
+		
+	CTestExecuteLogger& Logger();
+	TXmlFileData iResult;
+	CTestExecuteLogger& iLogger;
+	TInt		 iLevel1;
+	TInt		 iLevel2;
+	TInt		 iLevel3;
+	TBool        iLangLogged;    ///< Has language dialog result been logged?
+	TBool        iDriveLogged;   ///< Has drive dialog result been logged?
+	TBool        iSecWarnLogged; ///< Has security warning result been logged?
+	};
+
+inline CTestExecuteLogger& CRebuildingContentHandler::Logger()
+	{
+	return iLogger;
+	}
+
+/**
+	When the FT option is used to display a dialog, up to this
+	many characters are recorded from the displayed string.  They
+	can be compared with the text specified in ExpectedDisplayText
+	if it is in the ini file.
+ */
+const TInt KMaxDisplayText = 32;
+
+class CUIScriptAdaptor : public CBase, public MUiHandler
+	{
+public:	
+	~CUIScriptAdaptor();
+	static CUIScriptAdaptor* NewL(const TFileName& aXmlFileName,
+		CTestExecuteLogger& aLogger, RArray<TTableOfInstallSizes>* aExpectedValue = NULL);
+	static CUIScriptAdaptor* NewLC(const TFileName& aXmlFileName,
+		CTestExecuteLogger& aLogger, RArray<TTableOfInstallSizes>* aExpectedValue = NULL);
+	static CUIScriptAdaptor* NewL(const TFileName& aXmlFileName,
+		CTestExecuteLogger& aLogger, TPtrC aExpectedText,TPtrC aTextIsHash, TInt aExpectedDialog, TInt aKerrCode);
+	static CUIScriptAdaptor* NewLC(const TFileName& aXmlFileName,
+		CTestExecuteLogger& aLogger, TPtrC aExpectedText,TPtrC aTextIsHash, TInt aExpectedDialog, TInt aKerrCode);
+	
+	/// Displays install dialog, logging all incoming information.
+	TBool DisplayInstallL(const CAppInfo& aAppInfo,
+			const CApaMaskedBitmap* aLogo,
+				const RPointerArray<CCertificateInfo>& aCertificates);
+
+	TBool DisplayGrantCapabilitiesL(const CAppInfo& aAppInfo,
+			const TCapabilitySet& aCapabilitySet);
+
+	TInt DisplayLanguageL(const CAppInfo& aAppInfo, 
+			const RArray<TLanguage>& aLanguages);
+
+	TInt DisplayDriveL(const CAppInfo& aAppInfo,TInt64 aSize,
+			const RArray<TChar>& aDriveLetters,
+				const RArray<TInt64>& aDriveSpaces);
+
+	TBool DisplayUpgradeL(const CAppInfo& aAppInfo,
+			const CAppInfo& aExistingAppInfo);
+
+	TBool DisplayOptionsL(const CAppInfo& aAppInfo, 
+			const RPointerArray<TDesC>& aOptions,
+				RArray<TBool>& aSelections); 
+
+	TBool HandleInstallEventL(const CAppInfo& aAppInfo,
+			TInstallEvent aEvent, TInt aValue=0, 
+				const TDesC& aDes=KNullDesC);
+
+	void HandleCancellableInstallEventL(const CAppInfo& aAppInfo,
+			TInstallCancellableEvent aEvent, 
+				MCancelHandler& aCancelHandler,TInt aValue=0, 
+					const TDesC& aDes=KNullDesC);
+
+	TBool DisplaySecurityWarningL(const CAppInfo& aAppInfo,
+			TSignatureValidationResult aSigValidationResult,
+			RPointerArray<CPKIXValidationResultBase>& aPkixResults,
+			RPointerArray<CCertificateInfo>& aCertificates,
+			TBool aInstallAnyway);
+
+	TBool DisplayOcspResultL(const CAppInfo& aAppInfo,
+			TRevocationDialogMessage aMessage, 
+			RPointerArray<TOCSPOutcome>& aOutcomes,
+			RPointerArray<CCertificateInfo>& aCertificates,
+			TBool aWarningOnly);
+
+	void DisplayCannotOverwriteFileL(const CAppInfo& aAppInfo,
+			const CAppInfo& aInstalledAppInfo,
+				const TDesC& aFileName);
+
+	TBool DisplayUninstallL(const CAppInfo& aAppInfo);
+
+	TBool DisplayTextL(const CAppInfo& aAppInfo, 
+			TFileTextOption aOption,
+				const TDesC& aText);
+
+	void DisplayErrorL(const CAppInfo& aAppInfo,
+			TErrorDialog aType, 
+				const TDesC& aParam);
+
+	TBool DisplayDependencyBreakL(const CAppInfo& aAppInfo,
+	        const RPointerArray<TDesC>& aComponents);
+
+	TBool DisplayApplicationsInUseL(const CAppInfo& aAppInfo, 
+		    const RPointerArray<TDesC>& aAppNames);
+
+	TBool DisplayQuestionL(const CAppInfo& aAppInfo, 
+		    TQuestionDialog aQuestion, const TDesC& aDes=KNullDesC);
+		    
+	TBool DisplayMissingDependencyL(const CAppInfo& aAppInfo,
+		const TDesC& aDependencyName,TVersion aWantedVersionFrom,
+		TVersion aWantedVersionTo,TVersion aInstalledVersion);
+
+	// functions to handle displaying info to file
+	void DisplayAppInfo(const TDesC& aPreText, const CAppInfo& aAppInfo);
+	void DisplayBoolReturn(TBool aReturn);
+	void DisplayIntReturn(TInt aReturn);
+
+	// function to check progress bar
+	void CheckFinalProgressBarL();
+
+	// Function that aborts a test case when the expected
+	// installation size does not match the calculated size.
+	void CheckExpectedAndCalculatedInstallSizesL(const TDesC& aAppInfoName, TInt64 aSize);
+
+	// function to check if the "Display Drive" dialog have been called
+ 	TBool DisplayDriveDialogCalled() const;
+
+	// function to check the "Grant Capabilities" dialog has been called
+	TBool GrantUserCapsDialogCalled() const;
+	
+	// function to check the "CannotOverwrite" dialog has been called
+	TBool CannotOverwriteFileDialogCalled() const;
+
+	// function to check the "file owner" name in the CannotOverwrite dialog.
+	const TDesC& FileOwner() const;
+
+	// function to check whether a fatal OCSP response was encountered
+	TBool FatalOcspResponseEncountered() const;
+		
+	//Function to check the expected Ocsp Outcomes
+    const RPointerArray<TOCSPOutcome>& ObservedOcspOutcomes() const;
+	
+	/// Use to enable and disable cancel testing inside dialogs
+	void SetCancelDialogTesting(TSwiCancelType aCancelType);
+	
+	// Set the dialog number to cancel on
+	void SetCancelDialogNumber(TInt aDialogNumber);
+
+	/// Use to enable and disable dialog delays
+	void SetDialogDelay(TTimeIntervalMicroSeconds32 aUsec);
+
+	// Set specific dialog number to delay at (default is all dialogs if dialog delay > 0)
+	void SetDelayDialogNumber(TInt aDialog);
+
+	// Reset the current dialog number, and set iInstallationCancelled to False
+	void ResetCurrentDialogNumber(TInt aDialogNumber = 0);
+	TBool InstallationCancelled() const;
+
+	inline const TDesC& DisplayedText() const;
+	inline const TDesC& DisplayedTextActual() const;
+
+	//Leave with error code
+	void LeaveError(TInt aReason);
+	
+	inline TInt NumberOfSecurityDialogsInvoked() const;
+		
+private:
+	/** 
+	 * Constructor
+	 * @param aXmlFileName    Name of the XML file containing dialog parameters
+	 * @param aLogger         TestExecute logger
+	 * @param aExpectedValue  Array of install sizes, if present.
+	 */
+	CUIScriptAdaptor(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+					 RArray<TTableOfInstallSizes>* aExpectedValue = NULL);
+	CUIScriptAdaptor(const TFileName& aXmlFileName, CTestExecuteLogger& aLogger,
+					 TPtrC aExpectedText,
+					 TPtrC aTextIsHash,
+					 TInt aExpectedDailog,
+					 TInt aKerrcode
+					 );				 					 
+					 					 
+	void ConstructL();
+	void ScriptParseL();
+	CTestExecuteLogger& Logger();
+	
+	// Called whenever a dialog is reached
+	void DialogReached();
+
+	TXmlFileData         iResult;
+	TFileName            iXmlFileName;
+	RFs			         iFs;
+	CTestExecuteLogger& iLogger;
+	
+	TInt iProgressBarFinal;	///< Progress bar final value.
+	TInt iProgressBarCurrent;	///< Progress bar current value.
+	TPtrC iExpectedDisplayText;
+	TPtrC iExpectedHash;
+	TInt iExpectedDialog;
+	TInt  iKerrCode;
+	RArray<TTableOfInstallSizes>* iExpectedValue;
+
+	TBool iDialogCancelType;			///< Controls whether we do cancel testing
+	TInt iCancelDialogNumber;		///< The dialog to cancel at 
+	TInt iCurrentDialogNumber;		///< The currentDialogNumber.
+	TBool iInstallationCancelled;	///< Whether we've cancelled the install yet
+	MCancelHandler *iCancelHandler; ///< Current CancellableInstallEvent cancel callback
+
+	// TBools for whether certain dialogs have been called
+	TBool iDisplayDriveDialogCalled;
+	TBool iGrantUserCapsDialogCalled;
+	TBool iCannotOverwriteFileDialogCalled;
+	HBufC* iFileOwner;
+	TTimeIntervalMicroSeconds32 iDialogDelay; // For async cancel testing
+	TInt iDelayDialogNumber;
+	TBool iFatalOcspResponseEncountered;
+	/** Possibly truncated text which was displayed with FT. */
+	TBuf<KMaxDisplayText> iDisplayedText;
+	HBufC *iDisplayedTextActual;
+	TInt iSecurityWarningDialogsInvoked;
+	// Array of observed ocsp outcomes for comparison to expected values.
+    RPointerArray<TOCSPOutcome> iObservedOcspOutcomes;
+    };
+
+inline TBool CUIScriptAdaptor::DisplayDriveDialogCalled() const
+ 	{
+ 	return iDisplayDriveDialogCalled;
+ 	}
+ 
+inline TBool CUIScriptAdaptor::GrantUserCapsDialogCalled() const
+	{
+	return iGrantUserCapsDialogCalled;
+	}
+
+inline TBool CUIScriptAdaptor::FatalOcspResponseEncountered() const 
+	{
+	return iFatalOcspResponseEncountered;
+	}
+
+inline const RPointerArray<TOCSPOutcome>& CUIScriptAdaptor::ObservedOcspOutcomes() const
+    {
+    return iObservedOcspOutcomes;  	
+    }
+ 
+inline 	CTestExecuteLogger& CUIScriptAdaptor::Logger()
+	{
+	return iLogger;
+	}
+
+inline void CUIScriptAdaptor::SetCancelDialogTesting(TSwiCancelType aCancelType)
+	{
+	iDialogCancelType = aCancelType;
+	}
+
+inline void CUIScriptAdaptor::SetCancelDialogNumber(TInt aDialogNumber)
+	{
+	iCancelDialogNumber = aDialogNumber;
+	}
+
+inline void CUIScriptAdaptor::ResetCurrentDialogNumber(TInt aDialogNumber)
+	{
+	iCurrentDialogNumber = aDialogNumber;
+	iInstallationCancelled = EFalse;
+	if(aDialogNumber == 0) iCancelHandler = 0;
+	}
+
+inline TBool CUIScriptAdaptor::InstallationCancelled() const
+	{
+	return iInstallationCancelled;
+	}
+
+inline void CUIScriptAdaptor::SetDialogDelay(TTimeIntervalMicroSeconds32 aDialogDelay)
+	{
+	iDialogDelay = aDialogDelay;
+	}
+
+inline void CUIScriptAdaptor::SetDelayDialogNumber(TInt aDialog)
+	{
+	iDelayDialogNumber = aDialog;
+	}
+
+inline const TDesC& CUIScriptAdaptor::DisplayedText() const
+/**
+	Returns text displayed with FT.
+
+	@return					Text displayed with FT.
+ */
+	{
+	return iDisplayedText;
+	}
+
+inline const TDesC& CUIScriptAdaptor::DisplayedTextActual() const
+	{
+	return *iDisplayedTextActual;		// Unchanged text
+	}
+
+inline TBool CUIScriptAdaptor::CannotOverwriteFileDialogCalled() const
+ 	{
+ 	return iCannotOverwriteFileDialogCalled;
+ 	}
+
+inline const TDesC& CUIScriptAdaptor::FileOwner() const
+	{
+	return *iFileOwner;
+	}
+
+inline TInt CUIScriptAdaptor::NumberOfSecurityDialogsInvoked() const
+	{
+	return iSecurityWarningDialogsInvoked;
+	}
+
+}//swi
+}//test
+#endif // TUISCRIPTADAPATORS_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tupsserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,140 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* tups_installserver.cpp
+*
+*/
+
+
+
+#include <c32comm.h>
+
+#if defined (__WINS__)
+#define PDD_NAME		_L("ECDRV")
+#else
+#define PDD_NAME		_L("EUART1")
+#define PDD2_NAME		_L("EUART2")
+#define PDD3_NAME		_L("EUART3")
+#define PDD4_NAME		_L("EUART4")
+#endif
+
+#define LDD_NAME		_L("ECOMM")
+
+/**
+ * @file
+ *
+ * SWIS test server implementation
+ */
+
+#include "tupsserver.h"
+#include "tupsstep.h"
+
+_LIT(KServerName, "tups_install");
+
+/**
+ * Called inside the MainL() function to create and start the CTestServer 
+ * derived server.
+ * @return Instance of the test server
+ */
+CUpsTestServer* CUpsTestServer::NewL()
+	{
+	CUpsTestServer *server = new(ELeave) CUpsTestServer();
+	CleanupStack::PushL(server);
+	server->ConstructL(KServerName);
+	CleanupStack::Pop(server);
+	return server;
+	}
+
+static void InitCommsL()
+    {
+    TInt ret = User::LoadPhysicalDevice(PDD_NAME);
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+
+#ifndef __WINS__
+    ret = User::LoadPhysicalDevice(PDD2_NAME);
+    ret = User::LoadPhysicalDevice(PDD3_NAME);
+    ret = User::LoadPhysicalDevice(PDD4_NAME);
+#endif
+
+    ret = User::LoadLogicalDevice(LDD_NAME);
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+    ret = StartC32();
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+    }
+
+LOCAL_C void MainL()
+	{
+	// Leave the hooks in for platform security
+#if (defined __DATA_CAGING__)
+	RProcess().DataCaging(RProcess::EDataCagingOn);
+	RProcess().SecureApi(RProcess::ESecureApiOn);
+#endif
+	InitCommsL();
+	
+	CActiveScheduler* sched=NULL;
+	sched=new(ELeave) CActiveScheduler;
+	CActiveScheduler::Install(sched);
+	CUpsTestServer* server = NULL;
+	// Create the CTestServer derived server
+	TRAPD(err, server = CUpsTestServer::NewL());
+	if(!err)
+		{
+		// Sync with the client and enter the active scheduler
+		RProcess::Rendezvous(KErrNone);
+		sched->Start();
+		}
+	delete server;
+	delete sched;
+	}
+
+/**
+ * Server entry point
+ * @return Standard Epoc error code on exit
+ */
+GLDEF_C TInt E32Main()
+	{
+	__UHEAP_MARK;
+	CTrapCleanup* cleanup = CTrapCleanup::New();
+	if(cleanup == NULL)
+		{
+		return KErrNoMemory;
+		}
+	TRAP_IGNORE(MainL());
+	delete cleanup;
+	__UHEAP_MARKEND;
+	return KErrNone;
+	}
+
+/**
+ * Implementation of CTestServer pure virtual
+ * @return A CTestStep derived instance
+ */
+CTestStep* CUpsTestServer::CreateTestStep(const TDesC& aStepName)
+	{
+	CTestStep* testStep = NULL;
+
+	// This server creates just one step but create as many as you want
+	// They are created "just in time" when the worker thread is created
+	// install steps
+	if (aStepName == KUpsInstallStep)	// Install with file name
+		testStep = new CUpsInstallStep(CUpsInstallStep::EUseFileName);
+// Uninstall
+	else if (aStepName == KUpsUnInstallStep)
+		testStep = new CUpsUninstallStep(CUpsUninstallStep::EByUid);
+	else if (aStepName == KUpsUnInstallAugStep)
+		testStep = new CUpsUninstallStep(CUpsUninstallStep::EByPackage);
+	
+	return testStep;
+
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tupsserver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,44 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* tswisserver.h
+* SWIS test server
+*
+*/
+
+
+
+
+/**
+ @file
+*/
+
+#ifndef __TUPSSERVER_H__
+#define __TUPSSERVER_H__
+
+#include <f32file.h>
+#include <test/testexecuteserverbase.h>
+
+class CUpsTestServer : public CTestServer
+	{
+public:
+	static CUpsTestServer* NewL();
+	virtual CTestStep* CreateTestStep(const TDesC& aStepName);
+	RFs& Fs() {return iFs;}
+
+private:
+	RFs iFs;
+	};
+
+#endif // __TUPSSERVER_H__
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tupsstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,342 @@
+/*
+* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* tswisstep.cpp
+* UPS test step implementation
+*
+*/
+
+
+
+
+/**
+ @file
+*/
+
+
+#include <e32std.h>
+#include "tupsstep.h"
+#include "testutilclient.h"
+#include <test/testexecutelog.h>
+#include <swi/launcher.h>
+#include "swi/sisregistryentry.h"
+#include "swi/sisregistrysession.h"
+#include "swi/sisregistrypackage.h"
+#include "cleanuputils.h"
+
+using namespace Swi;
+using namespace Swi::Test;
+
+//
+// CUpsInstallStep
+//
+
+CUpsInstallStep::~CUpsInstallStep()
+	{
+	delete iUi;
+	}
+	
+
+CUpsInstallStep::CUpsInstallStep(TInstallType aInstallType)
+	: iInstallType(aInstallType)
+	{
+	// Call base class method to set up the human readable name for logging
+	SetTestStepName(KUpsInstallStep);
+	}
+
+/**
+ * Override of base class virtual. Prepares for the test run of SWIS
+ * @return TVerdict code
+ */
+TVerdict CUpsInstallStep::doTestStepPreambleL()
+	{
+	// get step parameters
+	TPtrC str;
+	if (!GetStringFromConfig(ConfigSection(), _L("sis"), str))
+		{
+		ERR_PRINTF1(_L("Missing SIS file name"));
+		SetTestStepResult(EFail);
+		}
+	else
+		{
+		iSisFileName.Copy(str);
+		if (!GetStringFromConfig(ConfigSection(), _L("script"), str))
+			{
+			ERR_PRINTF1(_L("Missing XML file name"));
+			SetTestStepResult(EFail);
+			}
+		else
+			{
+			iXmlFileName.Copy(str);
+			INFO_PRINTF3(_L("Installing '%S' using script '%S'"), 
+				&iSisFileName, &iXmlFileName);
+			// create UI handler with default entries
+			iUi = CUIScriptAdaptor::NewL(iXmlFileName, Logger());
+			}
+		}
+
+	return TestStepResult();
+	}
+	
+/**
+ * Override of base class pure virtual
+ * Demonstrates reading configuration parameters fom an ini file section
+ * @return TVerdict code
+ */
+TVerdict CUpsInstallStep::doTestStepL()
+	{
+	INFO_PRINTF1(KUpsInstallStep);
+
+	// launch the installation
+	CInstallPrefs* prefs = CInstallPrefs::NewLC();
+
+	TInt err = DoInstallL(*prefs);
+	INFO_PRINTF2(_L("DoInstallL returned %d"), err);
+	if (err != KErrNone)
+		{
+		// Can't set error to KErrServerBusy, or Testexecute will retry.
+		SetTestStepResult((err != KErrServerBusy)? static_cast<TVerdict>(err) : EFail);
+		}
+	CleanupStack::PopAndDestroy(prefs);
+	return TestStepResult();
+	}
+
+TInt CUpsInstallStep::DoInstallL(CInstallPrefs& aInstallPrefs)
+	{
+	switch (iInstallType)
+		{
+		case EUseFileName:
+			return Launcher::Install(*iUi, iSisFileName, aInstallPrefs);
+		}
+			
+	// Shouldn't get here
+	return KErrGeneral;
+	}
+
+/**
+ * Override of base class virtual
+ * @return TVerdict code
+ */
+TVerdict CUpsInstallStep::doTestStepPostambleL()
+	{
+/*	if((TestStepResult() == EPass))
+		{
+		RSisRegistrySession registrySession;
+		User::LeaveIfError(registrySession.Connect());
+		CleanupClosePushL(registrySession);
+
+		RSisRegistryEntry registryEntry;
+		TInt error=registryEntry.Open(registrySession, iUid);
+		if(error != KErrNone)
+			{
+			ERR_PRINTF2(_L("RSisRegistrySession::Open failed error=%d\n"), error);
+			SetTestStepResult(EFail);
+			}
+		else
+			{
+			CleanupClosePushL(registryEntry);
+				
+			TInt userDrive =0;
+			TRAP(error, userDrive = registryEntry.SelectedDriveL());
+			if((error != KErrNone) || (userDrive != iExpectedUserDrive))
+				{
+				ERR_PRINTF4(_L("SelectedDriveL err=%d, userDrive expected %d got %d\n"),
+							error, iExpectedUserDrive, userDrive);
+				SetTestStepResult(EFail);
+				}
+			else
+				{
+				INFO_PRINTF2(_L("SelectedDriveL userDrive = %d OK\n"), userDrive);
+				}
+		
+			CleanupStack::PopAndDestroy(&registryEntry);
+			}
+		CleanupStack::PopAndDestroy(&registrySession);
+		}*/
+
+	return TestStepResult();
+	}
+
+//
+// CSwisUninstallStep
+//
+
+CUpsUninstallStep::~CUpsUninstallStep()
+	{
+	delete iUi;
+	}
+
+CUpsUninstallStep::CUpsUninstallStep(TUninstallType aType)
+	: iType(aType)
+	{
+	// Call base class method to set up the human readable name for logging
+	SetTestStepName(KUpsUnInstallStep);
+	}
+
+	
+	
+	
+/**
+ * Override of base class virtual. Prepares for the test run of SWIS
+ * @return TVerdict code
+ */
+TVerdict CUpsUninstallStep::doTestStepPreambleL()
+	{
+	INFO_PRINTF1(_L("CUpsUninstallStep::doTestStepPreambleL"));
+	// get step parameters
+	
+	TPtrC str;
+	if (!GetStringFromConfig(ConfigSection(), _L("script"), str))
+		{
+		ERR_PRINTF1(_L("Missing XML file name"));
+		SetTestStepResult(EFail);
+		return EFail;
+		}
+	iXmlFileName.Copy(str);	
+	TInt uid=0;
+
+	if (!GetHexFromConfig(ConfigSection(), _L("uid"), uid))
+		{
+		ERR_PRINTF1(_L("Missing uid"));
+		SetTestStepResult(EFail);
+		return EFail;
+		}
+
+	iUid.iUid=uid;
+		
+	if (iType == EByPackage)
+		{
+		TPtrC vendorName;
+		if (!GetStringFromConfig(ConfigSection(), _L("vendorName"), vendorName))
+			{
+			ERR_PRINTF1(_L("Missing Vendor Name"));
+			SetTestStepResult(EFail);
+			return EFail;
+			}
+		iVendorName.Set(vendorName);
+		
+		TPtrC packageName;
+		if (!GetStringFromConfig(ConfigSection(), _L("packageName"), packageName))
+			{
+			ERR_PRINTF1(_L("Missing Package Name"));
+			SetTestStepResult(EFail);
+			return EFail;
+			}
+		iPackageName.Set(packageName);
+			
+		
+		INFO_PRINTF5(_L("Uninstalling %D, %S, %S  using script '%S'"), 
+			iUid.iUid, &iPackageName, &iVendorName, &iXmlFileName);
+		// create UI handler with default entries
+		iUi = CUIScriptAdaptor::NewL(iXmlFileName, Logger());	
+		}
+	else if (iType== EByUid)
+		{
+		INFO_PRINTF3(_L("Uninstalling '%D' using script '%S'"), 
+			iUid.iUid, &iXmlFileName);
+		// create UI handler with default entries
+		iUi = CUIScriptAdaptor::NewL(iXmlFileName, Logger());	
+		}
+	
+	return TestStepResult();
+	}
+
+/**
+ * Override of base class pure virtual
+ * Demonstrates reading configuration parameters fom an ini file section
+ * @return TVerdict code
+ */
+
+TInt CUpsUninstallStep::DoUninstallL()
+	{
+	TInt error = KErrNotFound;
+
+	if (iType == EByUid)
+		{
+		// launch the installation
+		return Launcher::Uninstall(*iUi, iUid); 
+		}
+	else if (iType == EByPackage)
+		{
+		
+		TInt err = KErrNotFound;
+		// Go through list of packages from base package to get augmentations.
+		CSisRegistryPackage* uninstallPackage=CSisRegistryPackage::NewLC(iUid, iPackageName, iVendorName);
+		
+		RSisRegistrySession registrySession;
+		User::LeaveIfError(registrySession.Connect());
+		CleanupClosePushL(registrySession);
+
+		RSisRegistryEntry registryEntry;
+	
+		User::LeaveIfError(registryEntry.Open(registrySession, iUid));
+		CleanupClosePushL(registryEntry);
+
+		CSisRegistryPackage* package=registryEntry.PackageL();
+		CleanupStack::PushL(package);
+		
+		if (*package == *uninstallPackage)
+			{
+				err = -1;
+				err=Launcher::Uninstall(*iUi, *package); 
+			}
+		else
+			{
+			// check augmenations
+			RPointerArray<CSisRegistryPackage> augmentationPackages;
+			CleanupResetAndDestroy<RPointerArray<CSisRegistryPackage> >::PushL(augmentationPackages);
+
+			registryEntry.AugmentationsL(augmentationPackages);
+			for (TInt i=0; i < augmentationPackages.Count(); ++i)
+				{
+				if (*augmentationPackages[i] == *uninstallPackage)
+					{
+					err=User::LeaveIfError(Launcher::Uninstall(*iUi, *augmentationPackages[i])); 
+					break;
+					}
+				}
+			CleanupStack::PopAndDestroy(&augmentationPackages);
+			}	
+		
+		CleanupStack::PopAndDestroy(3, &registrySession);
+		CleanupStack::PopAndDestroy(uninstallPackage);
+		error = err;
+		}
+	return error;
+	}
+
+TVerdict CUpsUninstallStep::doTestStepL()
+	{
+	INFO_PRINTF1(KUpsUnInstallStep);
+
+	TInt err = DoUninstallL();
+	INFO_PRINTF2(_L("DoUninstallL returned %d"), err);
+	if (err != KErrNone)
+		{
+		// Can't set error to KErrServerBusy, or Testexecute will retry.
+		SetTestStepResult((err != KErrServerBusy)? static_cast<TVerdict>(err) : EFail);
+		}
+	return TestStepResult();
+	}
+
+/**
+ * Override of base class virtual
+ * @return TVerdict code
+ */
+TVerdict CUpsUninstallStep::doTestStepPostambleL()
+	{
+	return TestStepResult();
+	}
+
+// End of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/authorisation/userpromptservice/test/tups_install/tupsstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,277 @@
+/*
+* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* tswisstep.h
+* SWIS test step declaration
+*
+*/
+
+
+
+
+/**
+ @file
+*/
+
+#ifndef __TSWISSTEP_H__
+#define __TSWISSTEP_H__
+
+#include <test/testexecutestepbase.h>
+#include "../../testutil/client/testutilclient.h"
+#include "tupsserver.h"
+#include "tuiscriptadaptors.h"
+
+#include "e32base.h"
+
+namespace Swi
+	{
+	class CInstallPrefs;
+	}
+
+/**
+ * Base test step class containing handy functions
+ * @test
+ * @internalComponent
+ */
+class CUpsTestStep : public CTestStep
+	{
+protected:
+
+	enum TReadType
+		{
+		ESimpleType,		//to read "numexist" and "numnonexist" value from INI.
+		ECancelType,		//to read "numexistcancel" and "numnonexistcancel" value from INI.
+		ERegisteredType		//to read "numregistered" value from INI.
+		};
+		
+	/**
+	 * Get the file names for checking if present or missing.
+	 * The test step's INI file must contain entry "numexistcancel=<n>" and one or more entries
+	 * "existcancel<i>=<fname>". 
+	 * The test step's INI file must contain entry "numnonexistcancel=<n>" and one or more entries 
+	 * "nonexistcancel<i>=<fname>".
+	 * The test step's INI file must contain entry "numexist=<n>" and one or more entries 
+	 * "exist<i>=<fname>".
+	 * The test step's INI file must contain entry "numnonexist=<n>" and one or more entries 
+	 * "nonexist<i>=<fname>".
+	 * 
+	 * @param aFileNumExist     this array contains the name of the files which must exist after
+	 *						    installation/un-installation/cancellation.
+	 * @param aFileNumNonExist	this array contains the name of the files which must not exist after
+	 * 							installation/un-installation/cancellation.
+	 * @param aDoCancelTest     Used to make decision for reading from the INI file.
+	 *                          ETrue  Cancel Testing is enabled, so read entries "numexistcancel" and "numnonexistcancel".
+	 *                          EFalse Read entries "numexist" and "numnonexist".
+	 */
+	void GetFileNamesForCheck(RArray<TPtrC>& aFileNumExist,RArray<TPtrC>& aFileNumNonExist, TReadType aReadType);
+	 
+	/**
+	 * Extract the file names from the INI file. 
+	 * @param aEntries     Number of file name entries. 
+	 * @param aEntryBase   Base name of the keys specifying names of files to 
+	 *                     check; an index (0..n-1) is appended to the base 
+	 *                     name to get the actual key name.
+	 * @param aFileArray   Contains all the file names to check for missing or present. 
+	 */ 
+	void ExtractFileName(TInt aEntries, const TDesC& aEntryBase, RArray<TPtrC>& aFileArray);
+	 
+	/** 
+	 * Checks for files that should exist if the installation was successful,
+	 * and which shouldn't exist if the installation was cancelled. 
+	 * @param aCheckExist  Controls the kind of testing done
+	 *                     ETrue  Files must exist
+	 *                     EFalse Files must not exist
+	 * @param aFileArray   Contains all the file names to check for missing or present depending
+	 *					   on the aCheckExist. If ETrue, this contains the names of files that must exist
+	 *					   else if EFalse contains the names of files that must not be present.
+	 * @param aTestUtil    Contains reference to the testutilserver session.
+	 * @param aMsecTimeout Timeout to wait for file to be created, if not already existing
+     */
+	void CheckIfFilesExist(TBool aCheckExist, const RArray<TPtrC>& aFileArray, RTestUtilSession& aTestUtil, TInt aMsecTimeout=0);
+	 
+	/**
+	 * Checks whether certain files do or do not exist by checking the registry entry and
+	 * sets test step result accordingly.
+	 * @param aFileArray   Contains all the file names to check for missing/present.
+	 */ 
+	void CheckRegistryEntry(RArray<TPtrC>& aFileArray);
+
+	/**
+	 * Checks that the correct dialogs have been called during the installation.
+	 */
+	void CheckDialogsCalled(const Swi::Test::CUIScriptAdaptor& ui);
+	
+	/**
+	 * Checks whether a fatal OCSP response was encountered during the installation.
+	 */
+	void CheckFatalOcspResponse(const Swi::Test::CUIScriptAdaptor& ui);
+	
+	/**
+	 * Checks whether the values of ocsp outcomes in the ini file matches with that of 
+	 * the DisplayOcspResultL function.
+	 */
+    void  CheckExpectedOcspOutcomes(const Swi::Test::CUIScriptAdaptor& ui);	
+
+   /**
+	 * Copy files from one place to another.
+	 *
+	 * @param aNumEntries Name of the key that specifies number of file name 
+	 *                    entries
+	 * @param aFrom  Base name of the keys specifying names of files to 
+	 *                    copy from; an index (0..n-1) is appended to the base 
+	 *                    name to get the actual key name
+	 * @param aTo    Base name of the keys specifying names of files to 
+	 *                    copy to; an index (0..n-1) is appended to the base 
+	 *                    name to get the actual key name
+	 */
+	void CopyFilesL(const TDesC& aNumEntries, const TDesC& aFrom, const TDesC& aTo);
+	
+	/**
+ 	 * Delete files.
+ 	 *
+ 	 * @param aNumEntries     Name of the key that specifies number of file name 
+ 	 *                        entries
+ 	 * @param aDeleteKeyBase  Base name of the keys specifying names of files
+ 	 *                        to delete; an index (0..n-1) is appended to the
+ 	 *                        base name to get the actual key name
+ 	 */
+ 	void DeleteFilesL(const TDesC& aNumEntries, const TDesC& aDeleteKeyBase);
+	
+	/**
+	 * Stores all the values of expected install sizes as indicated in the test
+	 * step's INI file.
+	 * @param aNumExpectedSizeEntries Name of key that specifies the number of
+	 *                                expected install sizes.
+	 * @param aExpectedInstallSize    A reference to the array of install sizes.
+	 */
+	void StoreExpectedInstallSizesL(TInt aNumExpectedSizeEntries, RArray<TTableOfInstallSizes>& aExpectedValue);
+	
+	/** Verify the Pub and Sub value of the current installation/uninstallation */
+	void CheckPubSubStatus(TDesC& aPubSubStatus);
+
+	/**
+	 * Check that the pub and sub status returns to KErrNone after a test.
+	 * This check should typically be last, whereas the previous method should
+	 * be done ASAP after an install/uninstall since there's a race condition.
+	 */
+	void CheckPubSubStatusIdle();
+	
+   /**
+	 * Set or clear read only bit on files.
+	 *
+	 * @param aNumEntries     Name of the key that specifies number of file name 
+	 *                        entries
+	 * @param aFileKeyBase    Base name of the keys specifying names of files
+	 *                        to set; an index (0..n-1) is appended to the
+	 *                        base name to get the actual key name
+	 * @param aFileKeyBase    Base name of the keys specifying operation on files
+	 *                        ; an index (0..n-1) is appended to the
+	 *                        base name to get the actual key name.
+	 */
+	void SetClearReadOnlyFilesL(const TDesC& aNumEntries,
+								const TDesC& aFileKeyBase,
+								const TDesC& aSetClearOpBase);
+	
+   /**
+	 * Check current step result against list of expected result codes.
+	 */
+	void CheckExpectedResultCodesL();
+
+	/**
+	 * Compares hashes for pairs of files read from config section, sets the
+	 * test step result to fail if any pair does not match or if there is an
+	 * error attempting to get a hash.
+	 */
+	void CompareFilesL();
+
+	/**
+	 * Compares file contents with buffer. Sets test step result to fail if
+	 * the contents do not match or there is an error in performing the
+	 * operation.
+	 */
+	void CompareFileWithBufferL(const Swi::Test::CUIScriptAdaptor& ui);
+	};
+
+/**
+ * Installation test step class
+ * @test
+ * @internalComponent
+ */
+class CUpsInstallStep : public CUpsTestStep
+	{
+public:
+	enum TInstallType { EUseFileName };
+
+	CUpsInstallStep(TInstallType aInstallType);
+	~CUpsInstallStep();
+	virtual TVerdict doTestStepPreambleL();
+	virtual TVerdict doTestStepPostambleL();
+	virtual TVerdict doTestStepL();
+private:
+	TInt DoInstallL(Swi::CInstallPrefs& aInstallPrefs);
+	void GetFilesToHoldOpenL();
+
+private:
+	TFileName iSisFileName; // name of the file to install
+	TFileName iXmlFileName; // name of the file containing dialog data
+	Swi::Test::CUIScriptAdaptor* iUi; // XML script-based UI implementation
+	TInstallType iInstallType; // use file handle to install
+	RArray<TTableOfInstallSizes> iExpectedValue; // array of expected install sizes
+	TBool iDoCancelTest;
+	TPtrC iExpectedHash;
+	TInt iExpectedDialog;
+	TInt  iKErrCode;
+	TPtrC Outcomes;// outcomes as received from ini file
+	TUid iUid;
+	TInt iExpectedUserDrive; // -1 if not checked
+	TPtrC iPubSubStatus;
+	TBool iExpectFileChange;
+	};
+
+/**
+ * Uninstallation test step class
+ * @test
+ * @internalComponent
+ */
+class CUpsUninstallStep : public CUpsTestStep
+	{
+public:
+	enum TUninstallType { EByUid, EByPackage };
+	
+	CUpsUninstallStep(TUninstallType aType);
+	~CUpsUninstallStep();
+	virtual TVerdict doTestStepPreambleL();
+	virtual TVerdict doTestStepPostambleL();
+	virtual TVerdict doTestStepL();
+private:
+	TInt DoUninstallL();
+
+private:
+	TUid iUid;
+	TFileName iXmlFileName; // name of the file containing dialog data
+	TPtrC iVendorName;
+	TInt iKErrCode;
+	Swi::Test::CUIScriptAdaptor* iUi; // XML script-based UI implementation
+	TPtrC iPackageName;
+	TUninstallType iType;
+	};
+
+
+_LIT(KUpsInstallStep, "InstallStep");
+
+_LIT(KUpsUnInstallAugStep, "UninstallAugStep");
+
+_LIT(KUpsUnInstallStep, "UninstallStep");
+
+#endif // __TSWISSTEP_H__
--- a/build.config.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE SystemDefinition SYSTEM "sysdef_1_4_0.dtd" [
-  <!ENTITY layer_real_source_path "common/generic/security/os/security" >
-]>
-
-<SystemDefinition name="security" schema="1.4.0">
-	<systemModel>
-		<layer name="os_layer">
-
-			<!-- 
-			<module name="authenticationserver">
-				<unit name="authserver" unitID="secdo.authserver" bldFile="&layer_real_source_path;\authenticationservices\authenticationserver\group" mrp="&layer_real_source_path;\authenticationservices\authenticationserver\group\security_authserver.mrp"/>
-			</module>
-			-->
-
-			<module name="userpromptservice">
-				<unit name="ups" unitID="secdo.ups" bldFile="&layer_real_source_path;\authorisation\userpromptservice\group" mrp="&layer_real_source_path;\authorisation\userpromptservice\group\security_ups.mrp"/>
-			</module>
-			<module name="userpromptutils">
-				<unit name="upsutils" unitID="secdo.upsutils" bldFile="&layer_real_source_path;\authorisation\userpromptutils\group" mrp="&layer_real_source_path;\authorisation\userpromptutils\group\security_ups_utils.mrp"/>
-			</module>
-			<module name="reccafconfig">
-				<unit name="reccafconfig" unitID="secdo.reccafconfig" bldFile="&layer_real_source_path;\contentmgmt\cafrecogniserconfig" mrp="&layer_real_source_path;\contentmgmt\cafrecogniserconfig\security_reccafconfig.mrp"/>
-			</module>
-			<module name="caf streaming support">
-				<unit name="cafstreamingsupport" unitID="secdo.cafstreamingsupport" bldFile="&layer_real_source_path;\contentmgmt\cafstreamingsupport\group" mrp="&layer_real_source_path;\contentmgmt\cafstreamingsupport\group\security_streamingcaf.mrp"/>
-			</module>
-			<module name="content access framework for drm">
-				<unit name="contentaccessfwfordrm" unitID="secdo.contentaccessfwfordrm" bldFile="&layer_real_source_path;\contentmgmt\contentaccessfwfordrm\group" mrp="&layer_real_source_path;\contentmgmt\contentaccessfwfordrm\group\security_caf2.mrp"/>
-			</module>
-			<!-- 
-			<module name="mtputils">
-				<unit name="mtputils" unitID="secdo.mtputils" bldFile="&layer_real_source_path;\contentmgmt\mtputils\group" mrp="&layer_real_source_path;\contentmgmt\mtputils\group\security_mtputils.mrp"/>
-			</module>
-			-->
-			<module name="reference drmagent">
-				<unit name="rta" unitID="secdo.rta" bldFile="&layer_real_source_path;\contentmgmt\referencedrmagent\RefTestAgent\group" mrp="&layer_real_source_path;\contentmgmt\referencedrmagent\RefTestAgent\group\security_rta.mrp"/>
-			</module>
-			<module name="weakcryptospi">
-				<unit name="weakcryptospi" unitID="secdo.weakcryptospi" bldFile="&layer_real_source_path;\crypto\weakcryptospi\group" mrp="&layer_real_source_path;\crypto\weakcryptospi\group\security_cryptospi_weak.mrp"/>
-			</module>
-			<module name="strongcryptospi">
-				<unit name="strongcryptospi" unitID="secdo.strongcryptospi" bldFile="&layer_real_source_path;\crypto\weakcryptospi\strong" mrp="&layer_real_source_path;\crypto\weakcryptospi\group\security_cryptospi_strong.mrp"/>
-			</module>
-			<module name="cryptotoken framework">
-				<unit name="secdo.cryptotokenfw" unitID="secdo.cryptotokenfw" bldFile="&layer_real_source_path;\cryptomgmtlibs\cryptotokenfw\group" mrp="&layer_real_source_path;\cryptomgmtlibs\cryptotokenfw\group\security_cryptotokens.mrp"/>
-			</module>
-			<module name="security common utils">
-				<unit name="secdo.securitycommonutils" unitID="secdo.securitycommonutils" bldFile="&layer_real_source_path;\cryptomgmtlibs\securitycommonutils\group" mrp="&layer_real_source_path;\cryptomgmtlibs\securitycommonutils\group\security_commonutils.mrp"/>
-			</module>
-			<module name="security utils">
-				<unit name="secdo.securityutils" unitID="secdo.securityutils" bldFile="&layer_real_source_path;\cryptomgmtlibs\securityutils\group" mrp="&layer_real_source_path;\cryptomgmtlibs\securityutils\group\security_common.mrp"/>
-			</module>
-			<module name="crypto spi plugins">
-				<unit name="secdo.cryptospiplugins" unitID="secdo.cryptospiplugins" bldFile="&layer_real_source_path;\cryptoplugins\cryptospiplugins\group" mrp="&layer_real_source_path;\cryptoplugins\cryptospiplugins\group\security_cryptospi_plugins.mrp"/>
-			</module>
-			<module name="asnpkcs">
-				<unit name="secdo.asnpkcs" unitID="secdo.asnpkcs" bldFile="&layer_real_source_path;\cryptoservices\asnpkcs\group" mrp="&layer_real_source_path;\cryptoservices\asnpkcs\group\security_asnpkcs.mrp"/>
-			</module>
-			<module name="certificate and key management">
-				<unit name="secdo.certman" unitID="secdo.certman" bldFile="&layer_real_source_path;\cryptoservices\certificateandkeymgmt\group" mrp="&layer_real_source_path;\cryptoservices\certificateandkeymgmt\group\security_certman.mrp"/>
-			</module>
-			<module name="file based certificate and keystores">
-				<unit name="secdo.filetokens" unitID="secdo.filetokens" bldFile="&layer_real_source_path;\cryptoservices\filebasedcertificateandkeystores\group" mrp="&layer_real_source_path;\cryptoservices\filebasedcertificateandkeystores\group\security_filetokens.mrp"/>
-			</module>
-			<module name="securityanddataprivacytools">
-				<unit name="secdo.securityconfig" unitID="secdo.securityconfig" bldFile="&layer_real_source_path;\securityanddataprivacytools\securityconfig\group" mrp="&layer_real_source_path;\securityanddataprivacytools\securityconfig\group\security_config.mrp"/>
-			</module>
-			<module name="securitytools">
-				<unit name="secdo.securitytools" unitID="sos.securitytools" bldFile="&layer_real_source_path;\securityanddataprivacytools\securitytools\group" mrp="&layer_real_source_path;\securityanddataprivacytools\securitytools\group\security_tools.mrp"/>
-			</module>
-    </layer>
-	<layer name="unit_test_layer">
-			<module name="Securityfw_test">
-				<unit name="secdo.securitytestfw" unitID="secdo.securitytestfw.test" bldFile="&layer_real_source_path;\cryptomgmtlibs\securitytestfw\group" mrp="&layer_real_source_path;\cryptomgmtlibs\securitytestfw\group\security_testframework.mrp"/>
-			</module>
-			<module name="Security_test">
-			<!-- 
-				<unit name="secdo.authserver" unitID="secdo.authserver.test" bldFile="&layer_real_source_path;\authenticationservices\authenticationserver\group" mrp="&layer_real_source_path;\authenticationservices\authenticationserver\group\security_authserver.mrp"/>
-			-->
-				<unit name="secdo.ups" unitID="secdo.ups.test" bldFile="&layer_real_source_path;\authorisation\userpromptservice\group" mrp="&layer_real_source_path;\authorisation\userpromptservice\group\security_ups.mrp"/>
-				<unit name="secdo.cafstreamingsupport" unitID="secdo.cafstreamingsupport.test" bldFile="&layer_real_source_path;\contentmgmt\cafstreamingsupport\group" mrp="&layer_real_source_path;\contentmgmt\cafstreamingsupport\group\security_streamingcaf.mrp"/>
-				<unit name="secdo.contentaccessfwfordrm" unitID="secdo.contentaccessfwfordrm.test" bldFile="&layer_real_source_path;\contentmgmt\contentaccessfwfordrm\group" mrp="&layer_real_source_path;\contentmgmt\contentaccessfwfordrm\group\security_caf2.mrp"/>
-			<!-- 
-				<unit name="secdo.mtputils" unitID="secdo.mtputils.test" bldFile="&layer_real_source_path;\contentmgmt\mtputils\group" mrp="&layer_real_source_path;\contentmgmt\mtputils\group\security_mtputils.mrp"/>
-			-->
-				<unit name="secdo.rta" unitID="secdo.rta.test" bldFile="&layer_real_source_path;\contentmgmt\referencedrmagent\RefTestAgent\group" mrp="&layer_real_source_path;\contentmgmt\referencedrmagent\RefTestAgent\group\security_rta.mrp"/>
-				<unit name="secdo.weakcryptospi" unitID="secdo.weakcryptospi.test" bldFile="&layer_real_source_path;\crypto\weakcryptospi\group" mrp="&layer_real_source_path;\crypto\weakcryptospi\group\security_cryptospi_weak.mrp"/>
-				<unit name="secdo.cryptotokenfw" unitID="secdo.cryptotokenfw.test" bldFile="&layer_real_source_path;\cryptomgmtlibs\cryptotokenfw\group" mrp="&layer_real_source_path;\cryptomgmtlibs\cryptotokenfw\group\security_cryptotokens.mrp"/>
-				<unit name="secdo.securitycommonutils" unitID="secdo.securitycommonutils.test" bldFile="&layer_real_source_path;\cryptomgmtlibs\securitycommonutils\group" mrp="&layer_real_source_path;\cryptomgmtlibs\securitycommonutils\group\security_commonutils.mrp"/>
-				<unit name="secdo.securityutils" unitID="secdo.securityutils.test" bldFile="&layer_real_source_path;\cryptomgmtlibs\securityutils\group" mrp="&layer_real_source_path;\cryptomgmtlibs\securityutils\group\security_common.mrp"/>
-				<unit name="secdo.cryptospiplugins" unitID="secdo.cryptospiplugins.test" bldFile="&layer_real_source_path;\cryptoplugins\cryptospiplugins\group" mrp="&layer_real_source_path;\cryptoplugins\cryptospiplugins\group\security_cryptospi_plugins.mrp"/>
-				<unit name="secdo.asnpkcs" unitID="secdo.asnpkcs.test" bldFile="&layer_real_source_path;\cryptoservices\asnpkcs\group" mrp="&layer_real_source_path;\cryptoservices\asnpkcs\group\security_asnpkcs.mrp"/>
-				<unit name="secdo.certman" unitID="secdo.certman.test" bldFile="&layer_real_source_path;\cryptoservices\certificateandkeymgmt\group" mrp="&layer_real_source_path;\cryptoservices\certificateandkeymgmt\group\security_certman.mrp"/>
-				<unit name="secdo.filetokens" unitID="secdo.filetokens.test" bldFile="&layer_real_source_path;\cryptoservices\filebasedcertificateandkeystores\group" mrp="&layer_real_source_path;\cryptoservices\filebasedcertificateandkeystores\group\security_filetokens.mrp"/>
-				<unit name="secdo.securityconfig" unitID="secdo.securityconfig.test" bldFile="&layer_real_source_path;\securityanddataprivacytools\securityconfig\group" mrp="&layer_real_source_path;\securityanddataprivacytools\securityconfig\group\security_config.mrp"/>
-				<unit name="secdo.securitytools" unitID="sos.securitytools.test" bldFile="&layer_real_source_path;\securityanddataprivacytools\securitytools\group" mrp="&layer_real_source_path;\securityanddataprivacytools\securitytools\group\security_tools.mrp"/>
-			</module>
-    </layer>
-  </systemModel>
-</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contentmgmt/cafrecogniserconfig/ABLD.BAT	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,15 @@
+@ECHO OFF
+
+REM Bldmake-generated batch file - ABLD.BAT
+REM ** DO NOT EDIT **
+
+perl -S abld.pl "\sf\os\security\contentmgmt\cafrecogniserconfig\\" %1 %2 %3 %4 %5 %6 %7 %8 %9
+if errorlevel==1 goto CheckPerl
+goto End
+
+:CheckPerl
+perl -v >NUL
+if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?
+goto End
+
+:End
--- a/contentmgmt/cafstreamingsupport/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -49,7 +49,6 @@
 
 #ifndef TOOLS
 #ifndef TOOLS2
-
 // Common test stream agent implementation projects 
 stashared.mmp
 staclient.mmp		
@@ -70,8 +69,13 @@
 PRJ_TESTEXPORTS
 
 ../test/tscaf/scripts/tscaf.ini				z:/tcaf/tscaf/tscaf.ini
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 ../test/tscaf/scripts/tscaf.script				z:/tcaf/tscaf/tscaf.script
 ../test/tscaf/scripts/tscaf_oom.script			z:/tcaf/tscaf/tscaf_oom.script
+#else
+../test/tscaf/scripts/tscaf_without_upward_dependent.script				z:/tcaf/tscaf/tscaf.script
+../test/tscaf/scripts/tscaf_oom_without_upward_dependent.script			z:/tcaf/tscaf/tscaf_oom.script
+#endif
 ../test/tscaf/scripts/tscafipsec.script			z:/tcaf/tscaf/tscafipsec.script
 ../test/tscaf/scripts/tscafipsec_oom.script			z:/tcaf/tscaf/tscafipsec_oom.script
 ../test/tscaf/scripts/tscafipsecmanual.script			z:/tcaf/tscaf/tscafipsecmanual.script
--- a/contentmgmt/cafstreamingsupport/group/staclient.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/staclient.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -25,10 +25,9 @@
 
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 SOURCEPATH 	../test/streamingtestagent/source/client
 SOURCE 		staclient.cpp
@@ -37,7 +36,9 @@
 LIBRARY		scsclient.lib
 LIBRARY		estor.lib
 LIBRARY		cafutils.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		stashared.lib
 LIBRARY 	streamingcaf.lib efsrv.lib
 SMPSAFE
--- a/contentmgmt/cafstreamingsupport/group/staserver.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/staserver.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -23,12 +23,10 @@
 CAPABILITY	DRM NetworkControl NetworkServices
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 SOURCEPATH 	../test/streamingtestagent/source/server
 SOURCE 		staserver.cpp
@@ -40,7 +38,9 @@
 LIBRARY		efsrv.lib
 LIBRARY		cafutils.lib
 LIBRARY		estor.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		bafl.lib
 LIBRARY		stashared.lib
 LIBRARY 	streamingcaf.lib
--- a/contentmgmt/cafstreamingsupport/group/stashared.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/stashared.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -26,11 +26,9 @@
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../test/streamingtestagent_singleprocess/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 SOURCEPATH 	../test/streamingtestagent/source/shared
 SOURCE		testprotstrdesc.cpp
@@ -47,7 +45,9 @@
 LIBRARY		estor.lib
 LIBRARY		staclient.lib
 LIBRARY		srautils.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		efsrv.lib
 LIBRARY		bafl.lib
 SMPSAFE
--- a/contentmgmt/cafstreamingsupport/group/tscaf.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/tscaf.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -46,11 +46,9 @@
 USERINCLUDE	../test/streamingtestagent/inc
 USERINCLUDE	../test/streamingtestagent_singleprocess/inc
 USERINCLUDE	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 LIBRARY euser.lib 
 LIBRARY estlib.lib
@@ -61,7 +59,9 @@
 LIBRARY testexecutelogclient.lib
 LIBRARY rfileloggerclient.lib
 LIBRARY cafutils.lib
-LIBRARY localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY sdpcodec.lib
+#endif
 LIBRARY bafl.lib
 LIBRARY streamingcaf.lib
 LIBRARY stashared.lib
--- a/contentmgmt/cafstreamingsupport/group/tscaf_singleprocess_streamagent.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/tscaf_singleprocess_streamagent.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -35,15 +35,15 @@
 USERINCLUDE 	../test/streamingtestagent_singleprocess/inc
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 LIBRARY 	euser.lib
 LIBRARY		streamingcaf.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY 	stashared.lib 
 LIBRARY 	srautils.lib
 
--- a/contentmgmt/cafstreamingsupport/group/tscaf_streamagent01.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/tscaf_streamagent01.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -34,15 +34,15 @@
 
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 LIBRARY 	euser.lib
 LIBRARY		streamingcaf.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		stashared.lib
 LIBRARY		srautils.lib
 
--- a/contentmgmt/cafstreamingsupport/group/tscaf_streamagent02.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/group/tscaf_streamagent02.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,4 +1,4 @@
-// Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -34,15 +34,15 @@
 
 USERINCLUDE 	../test/streamingtestagent/inc
 USERINCLUDE 	../../referencedrmagent/RefTestAgent/streamingrefagent/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/inc
-USERINCLUDE 	../../referencedrmagent/RefTestAgent/localsdp/api
-
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 LIBRARY 	euser.lib
 LIBRARY		streamingcaf.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		stashared.lib
 LIBRARY		srautils.lib
 
--- a/contentmgmt/cafstreamingsupport/test/run_tests.bat	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/run_tests.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -2,7 +2,8 @@
 @rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 @rem All rights reserved.
 @rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"@rem which accompanies this distribution, and is available
+@rem under the terms of the License "Eclipse Public License v1.0"
+@rem which accompanies this distribution, and is available
 @rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
 @rem
 @rem Initial Contributors:
@@ -10,10 +11,10 @@
 @rem
 @rem Contributors:
 @rem
-@rem
 @rem Description:
 @rem
 
+
 @ECHO OFF
 rem Runs this component's tests for udeb and cleans up afterwards, results stored in \logs\winscw\.  
 rem This script requires ExecTimeOut.exe to be downloaded through Perforce from //PR/share/DABSRelease/buildscripts/ and the environment variable SECURITYSOURCEDIR to be set (though this should have been set prior to a build) to the root of the security source tree.
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/stacommon.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/stacommon.h	Wed Sep 01 12:40:57 2010 +0100
@@ -31,14 +31,14 @@
 #include <e32uid.h>
 #include <s32mem.h>
 #include <stringpool.h>
-
-#include "sdpdocument.h"
-#include "sdpmediafield.h"
-#include "sdpattributefield.h"
-#include "sdpcodecstringpool.h"
-#include "sdpfmtattributefield.h"
-#include "sdpcodecstringconstants.h"
-
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpdocument.h>
+#include <sdpmediafield.h>
+#include <sdpattributefield.h>
+#include <sdpcodecstringpool.h>
+#include <sdpfmtattributefield.h>
+#include <sdpcodecstringconstants.h>
+#endif
 #include <caf/streaming/streamcaftypes.h>
 #include <caf/streaming/keyassociation.h>
 #include <caf/streaming/keystreamsink.h>
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/staserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent/inc/staserver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -74,8 +74,10 @@
 	private:
 		HBufC8* iBuffer;
 		CKeyStreamSink* iKeyStreamSink;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 		CSdpMediaField* iSdp;
 		CSdpDocument* iSdpDoc;
+#endif
 		CSraRightsObject* iRo;
 		};
 	
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/client/staclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/client/staclient.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -151,10 +151,15 @@
  	@param aKey An SDP object data.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	HBufC8* sdpBuf(0);
 	TPtr8 ptr(EncodeLC(aSdp, sdpBuf));
 	User::LeaveIfError(CallSessionFunction(ESetSdpKeyStream, TIpcArgs(&ptr)));
 	CleanupStack::PopAndDestroy(sdpBuf);
+#else
+	(void) aSdp;
+#endif
+
 	}
 
 EXPORT_C void RStaClient::SetSdpDocumentL(const CSdpDocument& aSdpDoc) const
@@ -163,10 +168,15 @@
  	@param aKey An SDP object data.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	HBufC8* sdpDocBuf(0);
 	TPtr8 ptr(EncodeLC(aSdpDoc, sdpDocBuf));
 	User::LeaveIfError(CallSessionFunction(ESetSdpDocument, TIpcArgs(&ptr)));
 	CleanupStack::PopAndDestroy(sdpDocBuf);
+#else
+	(void) aSdpDoc;
+#endif
+
 	}
 
 EXPORT_C void RStaClient::SendIpSecAssociationL(TInt32 aSpi, HBufC8* aEncryptionKey, HBufC8* aAuthenticationKey) const
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/staserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/staserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -66,7 +66,9 @@
  */
 	{
 	iFs.Close();
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	SdpCodecStringPool::Close();
+#endif
 	}
 	
 	
@@ -94,7 +96,9 @@
 	User::LeaveIfError(iFs.Connect());
 	User::LeaveIfError(iFs.ShareProtected());
 	User::LeaveIfError(iFs.CreatePrivatePath(iFs.GetSystemDrive()));
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	SdpCodecStringPool::OpenL();
+#endif
 	StartL(KStaName);
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/stasession.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent/source/server/stasession.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -39,8 +39,10 @@
 	delete iBuffer;	
 	delete iKeyStreamSink;
 	delete iRo;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	delete iSdp;
 	delete iSdpDoc;
+#endif
 	}
 
 	
@@ -345,6 +347,7 @@
  	@param	aMessage	Standard server-side handle to message.
   */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TInt len = aMessage.GetDesMaxLengthL(0);
 	HBufC8* des = HBufC8::NewLC(len);
 	TPtr8 ptr(des->Des());
@@ -364,6 +367,10 @@
 		{
 		User::Leave(KErrCANoRights);
 		}
+#else
+	(void) aMessage;
+	User::Leave(KErrCANoRights);
+#endif
 	}
 
 void CStaSession::SetSdpDocumentL(const RMessage2& aMessage)
@@ -373,6 +380,7 @@
  	@param	aMessage	Standard server-side handle to message.
   */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TInt len = aMessage.GetDesMaxLengthL(0);
 	HBufC8* des = HBufC8::NewLC(len);
 	TPtr8 ptr(des->Des());
@@ -385,6 +393,9 @@
 	// Decode the SDP document object from the encoded data
 	iSdpDoc = CSdpDocument::DecodeL(*des);
 	CleanupStack::PopAndDestroy(des);
+#else
+	(void) aMessage;
+#endif
 	}
 
 void CStaSession::VerifyRoL()
--- a/contentmgmt/cafstreamingsupport/test/streamingtestagent_singleprocess/source/shared/testsingleprocesskeystreamdecoder.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/streamingtestagent_singleprocess/source/shared/testsingleprocesskeystreamdecoder.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -41,8 +41,10 @@
 	iFs.Close();
 	
 	delete iKeyStreamSink;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY	
 	delete iSdp;
 	delete iSdpDoc;
+#endif
 	delete iRo;
 	}
 
@@ -91,8 +93,13 @@
 	iKeyStreamSink->SetEncryptionAlgorithmL(EAES_128_CBC);
 	iKeyStreamSink->SetAuthenticationAlgorithmL(EHMAC_SHA1);
 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY	
 	iSdp = aSdpKeyStream.CloneL();
 	iSdpDoc = aSdpDoc.CloneL();
+#else
+    (void) aSdpKeyStream;
+	(void) aSdpDoc;
+#endif
 	SetRoL();
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/tscaf/inc/tscafstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/inc/tscafstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -111,9 +111,11 @@
 	TVerdict doTestStepL();
 	TVerdict doTestStepPostambleL();
 	void CleanAgentsPrivateFolderL(const TDesC& aPrivatePath);
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	CSdpDocument* CreateSdpDocumentLC();
 	CSdpMediaField* CreateSdpLC(TInt aSdpNum);
 	void AddMediaFieldL(CSdpDocument& aSdpDoc, const CSdpMediaField* aSdpKeyStream);
+#endif
 	CKeyStreamSink* CreateKeyStreamSinkLC(const TDesC& aFilePath, const TDesC& aPrivPath);
 	void CopyFile2AgentsPrivateFolderL(RFs& aFs, const TDesC& aFileName, const TDesC& aPrivPath);
 	HBufC* GetFullPathLC(const TDesC& aPath, const TDesC& aFileName);
@@ -137,7 +139,9 @@
 									const TDesC& aExpectedValue);
 	
 private:
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	void AddAttributes2SdpL(CSdpMediaField& aSdp, TInt aSdpNum);
+#endif
 	void PrintErrorAndLeaveL(TDesC& aKey);
 	static void DeleteSdpDocAndCloseCodecPool(TAny* aSdpDoc);
 	
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/scripts/tscaf_oom_without_upward_dependent.script	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,134 @@
+//
+// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of the License "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+// Streaming CAF "Out of Memory" Tests
+
+PRINT Run PREQ782 Streaming CAF OOM Tests
+
+// Load Suite
+LOAD_SUITE tscaf
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-0001
+//! @SYMTestCaseDesc 		StartupComms
+
+START_TESTCASE SEC-SCAF-OOM-0001
+RUN_TEST_STEP 100 tscaf StartupCommsStep
+END_TESTCASE SEC-SCAF-OOM-0001
+
+
+// Note: For test case descriptions, please refer to the corresponding tscaf.script file
+
+
+//********************** SEC-SCAF-A : CONSUMER INTERFACE  **********************
+
+ 
+//! @SYMTestCaseID 		SEC-SCAF-OOM-A001
+//! @SYMTestCaseDesc 		(keystreamdecoder_positiveconstruct_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-A001
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamDecoderConstruct z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positiveconstruct_OOM
+END_TESTCASE SEC-SCAF-OOM-A001
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-A004
+//! @SYMTestCaseDesc 		(keystreamdecoder_positivequery_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-A004
+
+// Copy the necessary 'Program' Protected rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positivequery_programprotectedRO_OOM
+
+// Copy the necessary 'Service' Protected rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Service
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positivequery_serviceprotectedRO_OOM
+
+END_TESTCASE SEC-SCAF-OOM-A004
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-A008
+//! @SYMTestCaseDesc 		(multikeystreamdecoders_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-A008
+
+// Copy the necessary rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_ServiceProgram
+
+// 2 Key Stream Decoders, Invoking the same stream agent
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_singlethread_singleagent_OOM
+
+// 2 Key Stream Decoders, Invoking different stream agents
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_singlethread_multiagents_OOM
+
+END_TESTCASE SEC-SCAF-OOM-A008
+
+
+
+//************	SEC-SCAF-C : INTEROPERABILITY WITH DECODING STACK   ***********
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-C001
+//! @SYMTestCaseDesc 		(keystreamsinks_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-C001
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamSink z:\tcaf\tscaf\tscaf.ini sdp_service_protected_OOM
+END_TESTCASE SEC-SCAF-OOM-C001
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-C002
+//! @SYMTestCaseDesc 		(concurrent_keystreamsinks_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-C002
+RUN_TEST_STEP 150 tscaf SCAFConcurrentKeyStreamSinks z:\tcaf\tscaf\tscaf.ini concurrent_keystreamsinks_OOM
+END_TESTCASE SEC-SCAF-OOM-C002
+
+
+
+//********************** SEC-SCAF-D : POST-ACQUISITION  **********************
+
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-D001
+//! @SYMTestCaseDesc 		(postacqusition_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-D001
+
+RUN_TEST_STEP 100 tscaf SCAFPostAcquisition z:\tcaf\tscaf\tscaf.ini post_acquisition_OOM
+
+RUN_TEST_STEP 100 tscaf SCAFPostAcquisition z:\tcaf\tscaf\tscaf.ini post_acquisition_create_outputs_OOM
+
+END_TESTCASE SEC-SCAF-OOM-D001
+
+
+
+//********************** SEC-SCAF-E : INTEROPERABILITY WITH DECODING STACK - IPSEC    ***********
+
+RUN_SCRIPT z:\tcaf\tscaf\tscafipsec_oom.script
+
+
+
+//********************** SEC-SCAF-H : REFERENCE AGENT TEST  **********************
+
+//! @SYMTestCaseID 		SEC-SCAF-OOM-H001
+//! @SYMTestCaseDesc 		(referenceagent_OOM)
+
+START_TESTCASE SEC-SCAF-OOM-H001
+RUN_TEST_STEP 100 tscaf SCAFRefAgent z:\tcaf\tscaf\tscaf.ini reference_agent_OOM
+END_TESTCASE SEC-SCAF-OOM-H001
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/scripts/tscaf_without_upward_dependent.script	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,566 @@
+//
+// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of the License "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+// Streaming CAF Integration Tests
+
+PRINT Run PREQ782 Streaming CAF Integration Tests
+
+// Load Suite
+LOAD_SUITE tscaf
+
+
+//! @SYMTestCaseID 		SEC-SCAF-MISC-0001
+//! @SYMTestCaseDesc 		StartupComms
+
+START_TESTCASE SEC-SCAF-MISC-0001
+RUN_TEST_STEP 100 tscaf StartupCommsStep
+END_TESTCASE SEC-SCAF-MISC-0001
+
+
+//********************** SEC-SCAF-A : CONSUMER INTERFACE  **********************
+
+//! @SYMTestCaseID 		SEC-SCAF-A001
+//! @SYMTestCaseDesc 		Key stream decoder construction with a supported protected key stream description
+//! 				(keystreamdecoder_positiveconstruct)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7772, REQ7776, REQ7781, REQ7784, REQ7954
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions 		Preconditions:
+//!				• There are the necessary ROM based test stream agent plug-ins present that support 
+//!				the SDP media description supplied during construction of the key stream decoder.
+//!
+//!				Test Actions:
+//!				• Generate a protected key stream description.
+//!				• Generate an SDP media description for the key stream.
+//!				• Construct the key stream decoder using the protected stream description and SDP
+//!				media description objects previously generated.
+//!				• Destroy the key stream decoder object.
+//!
+//! @SYMTestExpectedResults 	• The key stream decoder is successfully created and destroyed.
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-A001
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamDecoderConstruct z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positiveconstruct
+END_TESTCASE SEC-SCAF-A001
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-A004
+//! @SYMTestCaseDesc 		Querying attributes related to a key stream decoder
+//! 				(keystreamdecoder_positivequery)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7772, REQ7776, REQ7784, REQ7954
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• The necessary ROM based test stream agent plug-in is present that supports the SDP
+//!				media description 	
+//!				supplied during construction of the key stream decoder.
+//!				• There are two Rights Objects files (serviceProtectedRO and programProtectedRO) in
+//!				the private folder of the supporting test stream agent.
+//!				• The Rights Issuer URI of the serviceProtectedRO is set to “IssuerUriServiceProtectedRO”
+//!				and programProtectedRO is set to “IssuerUriProgramProtectedRO”
+//!			
+//!				Test Actions:
+//!				• Generate a protected key stream description.
+//!				• Generate an SDP media description for the key stream with an attribute requiring 
+//!				programProtectedRO
+//!				• Construct the key stream decoder using the protected stream description and SDP media 
+//!				description objects previously generated.
+//!				• Query the stream agent to determine whether the program is protected.
+//!				• Query the stream agent to determine whether the whole service is protected.
+//!				• Query the stream agent to retrieve the Rights Issuer URI.
+//!				• Destroy the key stream decoder object.
+//!				
+//! @SYMTestExpectedResults 	• The key stream decoder is successfully created.
+//!				• The program is protected but the whole service is not.
+//!				• The Rights Issuer URI retrieved is “IssuerUriProgramProtectedRO”
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-A004
+
+// Copy the necessary 'Program' Protected rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positivequery_programprotectedRO
+
+// Copy the necessary 'Service' Protected rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Service
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_positivequery_serviceprotectedRO
+
+END_TESTCASE SEC-SCAF-A004
+
+//! @SYMTestCaseID 		SEC-SCAF-A007
+//! @SYMTestCaseDesc 		Concurrent key stream decoder construction and querying
+//! 				(keystreamdecoder_concurrentquery)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7772, REQ7776, REQ7781, REQ7784, REQ7954
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				The following test actions should be carried out concurrently in 3 separate threads:
+//!				• Generate a protected key stream description.
+//!				• Generate an SDP media description. Thread A should generate an SDP media description
+//!				supported by test stream agent plug-in A and Threads B & C should generate SDP media
+//!				description objects supported by test stream agent plug-in B.
+//!				• Construct a key stream decoder object using the generated protected key stream
+//!				description and SDP media description objects.
+//!				• When the key stream decoder has been constructed, query the attributes associated
+//!				with the stream agent.
+//!				• Destroy the key stream decoder object.
+//!
+//! @SYMTestExpectedResults 	• Each key stream decoder object should construct successfully.
+//!				• Checking the implementation attributes reveals that Thread A has invoked test stream
+//!				agent A and Thread B & C have invoked test stream agent B.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-A007
+
+// Copy the necessary rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_ServiceProgram
+
+CONCURRENT
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_concurrentquery_threadA
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_concurrentquery_threadB
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini keystreamdecoder_concurrentquery_threadC
+CONSECUTIVE
+
+END_TESTCASE SEC-SCAF-A007
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-A008
+//! @SYMTestCaseDesc 		Concurrent multi-thread usage of multiple key stream decoders
+//! 				(multikeystreamdecoders)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7772, REQ7775, REQ7776, REQ7781, REQ7784, REQ7954
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				The following test actions should be carried out concurrently in 3 separate threads:
+//!				• Generate a protected key stream description.
+//!				• Generate an SDP media description (SDPa) for the key stream with an attribute
+//!				requiring serviceProtectedRO.
+//!				• Construct a key stream decoder object using the generated protected key stream
+//!				description and SDP media description object SDPa – decoderA.
+//!				• Generate another SDP media description (SDPb) for the key stream with an attribute
+//!				requiring programProtectedRO.
+//!				• Construct another key stream decoder object using the generated protected key stream
+//!				description and SDP media description object SDPb – decoderB.
+//!				• Query decoderA to retrieve the ‘Rights Issuer URI’ attribute from the invoked 
+//!				stream agent.
+//!				• Query decoderB to retrieve the ‘Rights Issuer URI’ attribute from the invoked 
+//!				stream agent.
+//!				• Destroy both key stream decoder objects.			
+//!
+//! @SYMTestExpectedResults 	• Each key stream decoder object should construct successfully.
+//!				• The Rights Issuer URI  attribute value retrieved from decoderA is 
+//!				“IssuerUriServiceProtectedRO”
+//!				• The Rights Issuer URI  attribute value retrieved from decoderB is 
+//!				“IssuerUriProgramProtectedRO”
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-A008
+
+// Copy the necessary rights objects into the stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_ServiceProgram
+
+// 2 Key Stream Decoders, Invoking the same stream agent
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_singlethread_singleagent
+
+// 2 Key Stream Decoders, Invoking different stream agents
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_singlethread_multiagents
+
+// 3 concurrent threads, 2 key stream decoders per thread invoking the same agent
+CONCURRENT
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_singleagent_threadA
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_singleagent_threadB
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_singleagent_threadC
+CONSECUTIVE
+
+// 3 concurrent threads, 2 key stream decoders per thread invoking different agents 
+CONCURRENT
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_multiagents_threadA
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_multiagents_threadB
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_multiagents_threadC
+CONSECUTIVE
+
+END_TESTCASE SEC-SCAF-A008
+
+
+
+//******************	TEST STREAM AGENT UNIT TESTING	    *******************
+
+//! @SYMTestCaseID SEC-SCAF-S001
+//! @SYMTestCaseDesc A unit test step which tests the Test Streaming Agent
+//! 		     (StreamingTestAgent)
+//! @SYMREQ Req-b
+//! @SYMTestPriority Low
+//! @SYMTestActions A connection is established with the Test Agent Server via its client side and the closed.  
+//! @SYMTestExpectedResults Successful connection and disconnectiom to/from the Test Streaming Agent Server. 
+//! @SYMDevelopedForRelease Oghma
+
+START_TESTCASE SEC-SCAF-S001
+RUN_TEST_STEP 100 tscaf SCAFTestAgentServer
+END_TESTCASE SEC-SCAF-S001
+
+
+
+//************	SEC-SCAF-C : INTEROPERABILITY WITH DECODING STACK   ***********
+
+
+//! @SYMTestCaseID 		SEC-SCAF-C001
+//! @SYMTestCaseDesc 		Usage of key stream sink
+//! 				(keystreamsinks)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7774, REQ7778, REQ7786
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• There are the necessary ROM based test stream agent plug-ins present that support 
+//!				the SDP media description supplied during construction of each key stream decoder.
+//!				• There is a Right Object file in the private folder of the supporting test stream agent.
+//!
+//!				Test Actions:
+//!				• Create a key stream sink
+//!				• Create a plain key and encrypt it with the key extracted from the RO
+//!				• Connect to the Test Agent
+//!				• Send the key stream sink
+//!				• Send the encrypted string (a simple key stream)
+//!				• The test agent server decrypts the key stream by using the key from the RO.
+//!				• The test agent server processes the decrypted key (the key is written into a file 
+//!				defined in the key stream sink)
+//!				• Check whether the right plain key is written down 
+//!				• Destroy the key stream decoder object.				
+//!
+//! @SYMTestExpectedResults 	• The plain string is found in the predefined location.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-C001
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamSink z:\tcaf\tscaf\tscaf.ini sdp_service_protected
+END_TESTCASE SEC-SCAF-C001
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-C002
+//! @SYMTestCaseDesc 		Usage of key stream sinks in concurrent sessions
+//! 				(concurrent_keystreamsinks)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7774, REQ7778, REQ7786
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Preconditions:
+//!				• There are the necessary ROM based test stream agent plug-ins present that support
+//!				the SDP media description supplied during construction of each key stream decoder.
+//!				• There are two Rights Object files (serviceProtectedRO and programProtectedRO) in the
+//!				private folder of each test stream agent.
+//!
+//!				Test Actions:
+//!				• Generate a protected key stream description.
+//!				• Generate an SDP media description (SDPa) for the key stream with an attribute requiring
+//!				serviceProtectedRO.
+//!				• Construct a key stream decoder object using the generated protected key stream 
+//!				description and SDP media description object SDPa – decoderA.
+//!				• Generate another SDP media description (SDPb) for the key stream with an attribute requiring 
+//!				programProtectedRO.
+//!				• Construct another key stream decoder object using the generated protected key stream 
+//!				description and SDP media description object SDPb – decoderB.
+//!				• Create plain_keyA
+//!				• Encrypt plain_keyA with encryption_keyA extracted from serviceProtectedRO
+//!				• Send the encrypted plain_keyA using decoderA
+//!				• Create plain_keyB
+//!				• Encrypt plain_keyB with encryption_keyB extracted from programProtectedRO
+//!				• Send the encrypted plain_keyB using decoderB
+//!				• Check whether stringA is in pathA and stringB is in pathB
+//!				• Destroy both key stream decoder objects.				
+//!
+//! @SYMTestExpectedResults 	• The plain strings are found in the predefined locations.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-C002
+RUN_TEST_STEP 100 tscaf SCAFConcurrentKeyStreamSinks z:\tcaf\tscaf\tscaf.ini concurrent_keystreamsinks
+END_TESTCASE SEC-SCAF-C002
+
+
+
+//********************** SEC-SCAF-D : POST-ACQUISITION  **********************
+
+
+//! @SYMTestCaseID 		SEC-SCAF-D001
+//! @SYMTestCaseDesc 		Post-acquisition content protection
+//! 				(postacqusition)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			REQ7788
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				The following test actions should be carried out:
+//!				• Copy  rorecordable.dr (a rights object where ECanExport and EMustProtectIfRecording
+//!				flags shall be set) and its post-acquistion rights object (ropostacquisition.dr) into
+//!				the private directory of the test agent server.
+//!			      	• Generate a test key stream description
+//!				• Generate an SDP media description for the key stream with an attribute requiring 
+//!				rorecordable.dr
+//!				• Construct the key stream decoder using the protected key stream description and SDP
+//!				media description objects previously generated.
+//!				• Query the stream agent to determine whether it is allowed to export and record the 
+//!				content.
+//!				• Request and gets a handle to the postacqusition rights object file
+//!				• Import the postacqusition rights object file to the post-acquisition caf agent
+//!                     	• Open a session to import the content
+//!				• Import the content to the post-acquisition caf agent	
+//!
+//! @SYMTestExpectedResults 	
+//!				• The protected stream is allowed to be recorded
+//!				• The test streaming agent returns a handle of the post-acquistion RO successfully
+//!				• The post-acquistion RO is successfully imported to the post-acquisition caf agent
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-D001
+
+RUN_TEST_STEP 100 tscaf SCAFPostAcquisition z:\tcaf\tscaf\tscaf.ini post_acquisition
+
+RUN_TEST_STEP 100 tscaf SCAFPostAcquisition z:\tcaf\tscaf\tscaf.ini post_acquisition_create_outputs
+
+END_TESTCASE SEC-SCAF-D001
+
+
+
+//********************** SEC-SCAF-E : INTEROPERABILITY WITH DECODING STACK - IPSEC    ***********
+
+RUN_SCRIPT z:\tcaf\tscaf\tscafipsec.script
+
+
+
+//********************** SEC-SCAF-G : SINGLE PROCESS STREAM AGENT TESTING  **********************
+
+//! @SYMTestCaseID 		SEC-SCAF-G001
+//! @SYMTestCaseDesc 		SPSA - Key stream decoder construction with a supported protected key stream description
+//! 				(spsa_keystreamdecoder_positiveconstruct)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			
+//! @SYMTestPriority 		High
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• The necessary ROM based ‘single process’ stream agent plug-in is present that supports
+//!				the SDP media description supplied during construction of the key stream decoder.
+//!
+//!				Test Actions:
+//!				• Run the test step actions as described in test case SEC-SCAF-A001.
+//!
+//! @SYMTestExpectedResults 	• The key stream decoder constructed by the single process stream agent is successfully 
+//!				created and destroyed.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-G001
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamDecoderConstruct z:\tcaf\tscaf\tscaf.ini spsa_keystreamdecoder_positiveconstruct
+END_TESTCASE SEC-SCAF-G001
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-G002
+//! @SYMTestCaseDesc 		SPSA - Querying attributes related to a key stream decoder
+//! 				(spsa_keystreamdecoder_positivequery)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			
+//! @SYMTestPriority 		High
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• The necessary ROM based ‘single process’ stream agent plug-in is present that supports
+//!				the SDP media description supplied during construction of the key stream decoder.
+//!				• The required Rights Object file is present in the private folder for the supporting 
+//!				single process stream agent.
+//!
+//!				Test Actions:
+//!				• Run the test step actions as described in test case SEC-SCAF-A004.				
+//!
+//! @SYMTestExpectedResults 	• The key stream decoder constructed by the single process stream agent is successfully
+//!				created.
+//!				• All of the expected attribute values match their corresponding values retrieved from
+//!				the key stream decoder.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-G002
+
+// Copy the necessary 'Program' Protected rights objects into the single process stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program_SingleProcessAgent
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini spsa_keystreamdecoder_positivequery_programprotectedRO
+
+// Copy the necessary 'Service' Protected rights objects into the single process stream agent's private directory
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Service_SingleProcessAgent
+RUN_TEST_STEP tscaf SCAFKeyStreamDecoderAttributes z:\tcaf\tscaf\tscaf.ini spsa_keystreamdecoder_positivequery_serviceprotectedRO
+
+END_TESTCASE SEC-SCAF-G002
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-G003
+//! @SYMTestCaseDesc 		SPSA - Concurrent multi-thread usage of multiple key stream decoders
+//! 				(spsa_multikeystreamdecoders)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			
+//! @SYMTestPriority 		High
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• The necessary ROM based ‘single process’ and ‘client-server’ stream agent plug-in
+//!				implementations are present that support the SDP media descriptions supplied during 
+//!				construction of the key stream decoders.
+//!				• The required Rights Object files are present in the private folder of the supporting
+//!				stream agents.
+//!
+//!				Test Actions:
+//!				The following test actions should be carried out concurrently in 3 separate threads 
+//!				(1 of the threads should instantiate a ‘single process’ stream agent, whereas the others
+//!				should instantiate ‘client-server’ based stream agents) :
+//!				
+//!				• Run the test step actions as described in test case SEC-SCAF-A008 				
+//!
+//! @SYMTestExpectedResults 	• Each of the key stream decoder objects that have been constructed by either a 
+//!				client-server or single process stream agent plug-in are created successfully.
+//!				• All of the expected attribute values match their corresponding values retrieved from
+//!				the associated key stream decoder.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-G003
+
+// Copy the necessary rights objects into the stream agent's private directory (Client/Server Architecture)
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_ServiceProgram
+
+// Copy the necessary rights objects into the stream agent's private directory (Single Process Stream Agent)
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_ServiceProgram_SingleProcessAgent
+
+// 2 Key Stream Decoders, Invoking the same single process stream agent
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_singlethread_singleagent
+
+// 2 Key Stream Decoders, Invoking different stream agents (1 Single Process & 1 Client/Server)
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_singlethread_multiagents
+
+// 3 concurrent threads, 2 key stream decoders per thread invoking the same agent
+CONCURRENT
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_concurrent_singleagent_threadA
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_singleagent_threadB
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini multikeystreamdecoders_concurrent_singleagent_threadC
+CONSECUTIVE
+
+// 3 concurrent threads, 2 key stream decoders per thread invoking different agents (1 Single Process & 1 Client/Server)
+CONCURRENT
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_concurrent_multiagents_threadA
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_concurrent_multiagents_threadB
+RUN_TEST_STEP tscaf SCAFMultiKeyStreamDecoders z:\tcaf\tscaf\tscaf.ini spsa_multikeystreamdecoders_concurrent_multiagents_threadC
+CONSECUTIVE
+
+END_TESTCASE SEC-SCAF-G003
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-G004
+//! @SYMTestCaseDesc 		SPSA - Usage of key stream sink
+//! 				(spsa_keystreamsinks)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			
+//! @SYMTestPriority 		High
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		Preconditions:
+//!				• The necessary ROM based ‘single process’ stream agent plug-in is present that supports
+//!				the SDP media description supplied during construction of the key stream decoder.
+//!				• The required Rights Object file is present in the private folder for the supporting single
+//!				process stream agent.
+//!
+//!				Test Actions:
+//!				• Run the test step actions as described in test case SEC-SCAF-C001.				
+//!
+//! @SYMTestExpectedResults 	• The expected plain text string is found in the predefined location.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-G004
+
+// Single Process Stream Agent Invoked
+RUN_TEST_STEP 100 tscaf SCAFKeyStreamSink z:\tcaf\tscaf\tscaf.ini spsa_keystreamink
+
+// 2 Single Process Stream Agents Invoked
+RUN_TEST_STEP 100 tscaf SCAFConcurrentKeyStreamSinks z:\tcaf\tscaf\tscaf.ini spsa_concurrent_keystreamsinks
+
+// 1 Single Process Stream Agent and 1 Client/Server Stream Agent Invoked
+RUN_TEST_STEP 100 tscaf SCAFConcurrentKeyStreamSinks z:\tcaf\tscaf\tscaf.ini spsa_cssa_concurrent_keystreamsinks
+
+END_TESTCASE SEC-SCAF-G004
+
+
+
+//! @SYMTestCaseID 		SEC-SCAF-G006
+//! @SYMTestCaseDesc 		SPSA - Testing IPSec integration with key stream decoder
+//! 				(spsa_ipsec_integration_decoder_automatic)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			
+//! @SYMTestPriority 		High
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions 		Preconditions:
+//!				• The necessary ROM based ‘single process’ stream agent plug-in is present that supports the
+//!				SDP media description supplied during construction of the key stream decoder.
+//!
+//!				Test Actions:
+//!				• Run the test step actions as described in test case SEC-SCAF-E015.
+//!
+//! @SYMTestExpectedResults 	• Associations was added 
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-G006
+
+RUN_TEST_STEP tscaf SCAFSetupRightsObjects z:\tcaf\tscaf\tscaf.ini Rights_Program_SingleProcessAgent
+
+//The time limit is disabled since this test is manual
+RUN_TEST_STEP -1 tscaf SCAFIpSecDecoderIntegration z:\tcaf\tscaf\tscaf.ini spsa_ipsec_integration_decoder_automatic
+
+END_TESTCASE SEC-SCAF-G006
+
+
+
+//********************** SEC-SCAF-H : REFERENCE AGENT TEST  **********************
+
+
+//! @SYMTestCaseID 		SEC-SCAF-H001
+//! @SYMTestCaseDesc 		Smoke testing for the Reference Agent
+//! 				(referenceagent)
+//! @SYMPREQ 			PREQ782
+//! @SYMREQ 			-------
+//! @SYMTestPriority 		Critical
+//! @SYMTestStatus   		Implemented
+//! @SYMTestActions  		
+//!				•	Generate a IPSec protected key stream description. 
+//!				•	Create a key stream sink from the protected key stream description.
+//!				•	Create a key stream decoder from an SDP message requiring the reference agent 
+//!					and the key stream sink.
+//!				•	Create a short term key message and write it to a predefined socket.
+//! @SYMTestExpectedResults 	
+//!				• Interfaces are invoked without leaves and panics.
+//!
+//! @SYMTestType 		CIT
+
+START_TESTCASE SEC-SCAF-H001
+
+RUN_TEST_STEP 100 tscaf SCAFRefAgent z:\tcaf\tscaf\tscaf.ini reference_agent
+
+END_TESTCASE SEC-SCAF-H001
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tipsec.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tipsec.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -360,6 +360,7 @@
 
 TVerdict CScafIpSecDecoderIntegration::doTestL()
 	{	
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TBool integrationTest(ETrue);
 	GetBoolFromConfig(ConfigSection(), _L("IntegrationTest"), integrationTest);
 	
@@ -416,6 +417,7 @@
 		}
 	CleanupStack::PopAndDestroy(2, keyStreamSink);
 	CleanupStack::PopAndDestroy(); // sdpDoc
+#endif
 	return TestStepResult();
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderattributes.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderattributes.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -55,6 +55,7 @@
 
 TVerdict CScafKeyStreamDecoderAttributes::doTestL()
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	// Assume faliure, unless all is successful
 	SetTestStepResult(EFail);
 	
@@ -105,6 +106,7 @@
 		}
 	
 	CleanupStack::PopAndDestroy(3, sdpDoc); //< decoder, protectStreamDesc, sdpDoc
+#endif	
 	return TestStepResult();
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderconstruct.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamdecoderconstruct.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -40,6 +40,7 @@
 
 TVerdict CScafKeyStreamDecoderConstruct::doTestL()
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	// Assume the test has failed if the test step result hasn't been otherwise set to EPass
 	SetTestStepResult(EFail);
 	
@@ -86,5 +87,6 @@
 	
 	// Delete the protected stream descriptor
 	CleanupStack::PopAndDestroy(2, sdpDoc);	//< protectStreamDesc, sdpDoc
+#endif	
 	return TestStepResult();
 	}
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamsink.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tkeystreamsink.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -67,6 +67,7 @@
 	encryptedStr.Append(*ro->Key());
 	CleanupStack::PopAndDestroy(ro);
 	
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	//Create an SDP document object and set the created key stream field object
 	CSdpDocument* sdpDoc = CreateSdpDocumentLC();
 	//Create an SDP key stream field object with an attribute requiring the service protected RO
@@ -112,6 +113,9 @@
 		}
 
 	CleanupStack::PopAndDestroy(4, sdpDoc); // fOutputKey, decoder, sink, sdpDoc
+#endif
+
+	
 	return TestStepResult();
 	}
 
@@ -171,6 +175,7 @@
 	CopyFile2AgentsPrivateFolderL(iParent.Fs(), KProgramProtectedRo(), privatePathA);
 	CopyFile2AgentsPrivateFolderL(iParent.Fs(), KProgramProtectedRo(), privatePathB);
 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	//Create an SDP document object and set the created key stream field object for each decoder
 	CSdpDocument* sdpDoc = CreateSdpDocumentLC();
 	
@@ -279,5 +284,6 @@
 	CleanupStack::PopAndDestroy(2, sinkB);		//< decoderB, sink B
 	CleanupStack::PopAndDestroy(2, sinkA);		//< decoderA, sinkA
 	CleanupStack::PopAndDestroy(sdpDoc); 		//< sdpDoc
+#endif	
 	return TestStepResult();
 	}
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tmultikeystreamdecoders.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tmultikeystreamdecoders.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -54,6 +54,7 @@
 
 TVerdict CScafMultiKeyStreamDecoders::doTestL()
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	// Assume the test has failed if the test step result hasn't been otherwise set to EPass
 	SetTestStepResult(EFail);
 	
@@ -162,6 +163,7 @@
 		}
 	
 	CleanupStack::PopAndDestroy(5, sdpDoc); //< decoderB, decoderA, protectStreamDescB, protectStreamDescA, sdpDoc
+#endif	
 	return TestStepResult();	
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tpostacquisition.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tpostacquisition.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -57,6 +57,7 @@
 
 TVerdict CScafPostAcquisition::doTestL()
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TBool createOutputFile = EFalse;
 	
 	if(!GetBoolFromConfig(ConfigSection(), KCreateOutputFiles, createOutputFile))
@@ -175,6 +176,7 @@
 		SetTestStepResult(EFail);		
 		}
 	CleanupStack::PopAndDestroy(3, content);
+#endif	
 	return TestStepResult();
 	}
 
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/treferenceagent.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/treferenceagent.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -22,7 +22,9 @@
 
 using namespace StreamAccess;
 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 const TUint32 KTestSpiBase = 667;
+#endif
 
 CScafRefAgent::CScafRefAgent(CScafServer& aParent): CScafIpSec(aParent)
 	{
@@ -32,6 +34,7 @@
 
 TVerdict CScafRefAgent::doTestL()
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	SetTestStepResult(EPass);
 	CleanAgentsPrivateFolderL(KSraPrivateFolder());
 	CopyFile2AgentsPrivateFolderL(iParent.Fs(), KProgramProtectedRo(), KSraPrivateFolder());
@@ -92,5 +95,6 @@
 	// Release the allocated memories
 	CleanupStack::PopAndDestroy(5, protectedStreamDesc);
 	CleanupStack::PopAndDestroy(); // sdpDoc
+#endif
 	return TestStepResult();	
 	}
--- a/contentmgmt/cafstreamingsupport/test/tscaf/source/tscafstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/cafstreamingsupport/test/tscaf/source/tscafstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -16,8 +16,10 @@
 //
 
 #include "tscafstep.h"
-#include "sdpconnectionfield.h"
-#include "sdporiginfield.h"
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpconnectionfield.h>
+#include <sdporiginfield.h>
+#endif
 
 TSdpAttribute::TSdpAttribute()
 	{
@@ -119,6 +121,7 @@
 	return TestStepResult();
 	}
 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 // We need this dummy function because TCleanupItem c'tor (see below) does not accept functions without parameters
 void CloseSdpCodecPool(TAny *)
 	{
@@ -271,6 +274,7 @@
 	
 	return sdp;
 	}
+#endif
 
 CKeyStreamSink* CScafStep::CreateKeyStreamSinkLC(const TDesC& aFileName, const TDesC& aPrivPath)
 /**
@@ -312,8 +316,12 @@
  	@param aSdp The SDP object which will be deleted.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	delete reinterpret_cast<CSdpDocument *>(aSdpDoc);
 	SdpCodecStringPool::Close();
+#else
+	(void) aSdpDoc;
+#endif
 	}
 
 void CScafStep::CopyFile2AgentsPrivateFolderL(RFs& aFs, const TDesC& aFileName, const TDesC& aPrivPath)
@@ -348,6 +356,7 @@
 	CleanupStack::PopAndDestroy(2, fTarget);
 	}
 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 void CScafStep::AddAttributes2SdpL(CSdpMediaField& aSdp, TInt aSdpNum)
 /**
  * Add attributes from the instance within the CSdpConfiguration array, where 
@@ -395,6 +404,7 @@
 		CleanupStack::PopAndDestroy(3);
 		}//for
 	}//End of function
+#endif
 
 void CScafStep::PrintErrorAndLeaveL(TDesC& aKey)
 /**
--- a/contentmgmt/contentaccessfwfordrm/BWINS/caf_v3u.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,193 +0,0 @@
-EXPORTS
-	?DataSizeL@CData@ContentAccess@@QAEXAAH@Z @ 1 NONAME ; public: void __thiscall ContentAccess::CData::DataSizeL(int &)
-	?EvaluateIntent@CData@ContentAccess@@QAEHW4TIntent@2@@Z @ 2 NONAME ; public: int __thiscall ContentAccess::CData::EvaluateIntent(enum ContentAccess::TIntent)
-	?ExecuteIntent@CData@ContentAccess@@QAEHW4TIntent@2@@Z @ 3 NONAME ; public: int __thiscall ContentAccess::CData::ExecuteIntent(enum ContentAccess::TIntent)
-	?GetL@CAttribute@ContentAccess@@QAEXXZ @ 4 NONAME ; public: void __thiscall ContentAccess::CAttribute::GetL(void)
-	?NewAttributeL@CContent@ContentAccess@@QAEPAVCAttribute@2@H@Z @ 5 NONAME ; public: class ContentAccess::CAttribute * __thiscall ContentAccess::CContent::NewAttributeL(int)
-	?NewL@CContent@ContentAccess@@SAPAV12@ABVTDesC16@@@Z @ 6 NONAME ; public: static class ContentAccess::CContent * __cdecl ContentAccess::CContent::NewL(class TDesC16 const &)
-	?NewLC@CContent@ContentAccess@@SAPAV12@ABVTDesC16@@@Z @ 7 NONAME ; public: static class ContentAccess::CContent * __cdecl ContentAccess::CContent::NewLC(class TDesC16 const &)
-	?OpenContentL@CContent@ContentAccess@@QAEPAVCData@2@W4TIntent@2@@Z @ 8 NONAME ; public: class ContentAccess::CData * __thiscall ContentAccess::CContent::OpenContentL(enum ContentAccess::TIntent)
-	?QuerySet@CAttribute@ContentAccess@@QAEAAVCBitset@2@XZ @ 9 NONAME ; public: class ContentAccess::CBitset & __thiscall ContentAccess::CAttribute::QuerySet(void)
-	?Read@CData@ContentAccess@@QBEHAAVTDes8@@@Z @ 10 NONAME ; public: int __thiscall ContentAccess::CData::Read(class TDes8 &)const 
-	?Read@CData@ContentAccess@@QBEHAAVTDes8@@H@Z @ 11 NONAME ; public: int __thiscall ContentAccess::CData::Read(class TDes8 &,int)const 
-	?Read@CData@ContentAccess@@QBEXAAVTDes8@@AAVTRequestStatus@@@Z @ 12 NONAME ; public: void __thiscall ContentAccess::CData::Read(class TDes8 &,class TRequestStatus &)const 
-	?Read@CData@ContentAccess@@QBEXAAVTDes8@@HAAVTRequestStatus@@@Z @ 13 NONAME ; public: void __thiscall ContentAccess::CData::Read(class TDes8 &,int,class TRequestStatus &)const 
-	?Reset@CAttribute@ContentAccess@@QAEXXZ @ 14 NONAME ; public: void __thiscall ContentAccess::CAttribute::Reset(void)
-	?ResponseSet@CAttribute@ContentAccess@@QBEABVCBitset@2@XZ @ 15 NONAME ; public: class ContentAccess::CBitset const & __thiscall ContentAccess::CAttribute::ResponseSet(void)const 
-	?Seek@CData@ContentAccess@@QBEHW4TSeek@@AAH@Z @ 16 NONAME ; public: int __thiscall ContentAccess::CData::Seek(enum TSeek,int &)const 
-	?SetQosL@CData@ContentAccess@@QAEXW4TQosAttribute@2@H@Z @ 17 NONAME ; public: void __thiscall ContentAccess::CData::SetQosL(enum ContentAccess::TQosAttribute,int)
-	?GetMimeTypeL@CData@ContentAccess@@QBEHAAVTDes8@@@Z @ 18 NONAME ; public: int __thiscall ContentAccess::CData::GetMimeTypeL(class TDes8 &)const 
-	?AttributesL@CSupplierOutputFile@ContentAccess@@QAEAAVCAttribute@2@H@Z @ 19 NONAME ; public: class ContentAccess::CAttribute & __thiscall ContentAccess::CSupplierOutputFile::AttributesL(int)
-	?ConsumerMimeTypes@CAgentResolver@ContentAccess@@QBEABV?$RArray@VTPtrC8@@@@XZ @ 20 NONAME ; public: class RArray<class TPtrC8> const & __thiscall ContentAccess::CAgentResolver::ConsumerMimeTypes(void)const 
-	?DeleteFileL@CManager@ContentAccess@@SAXABVTDesC16@@@Z @ 21 NONAME ; public: static void __cdecl ContentAccess::CManager::DeleteFileL(class TDesC16 const &)
-	?DoRecognizeL@CAgentResolver@ContentAccess@@QAEHABVTDesC16@@ABVTDesC8@@AAVTDes8@@2@Z @ 22 NONAME ; public: int __thiscall ContentAccess::CAgentResolver::DoRecognize(class TDesC16 const &,class TDesC8 const &,class TDes8 &,class TDes8 &)
-	?FileName@CSupplierOutputFile@ContentAccess@@QBE?AVTPtrC16@@XZ @ 23 NONAME ; public: class TPtrC16  __thiscall ContentAccess::CSupplierOutputFile::FileName(void)const 
-	?ImportFileL@CSupplier@ContentAccess@@QAEPAVCImportFile@2@AAVCCafMimeHeader@2@ABVTDesC16@@@Z @ 24 NONAME ; public: class ContentAccess::CImportFile * __thiscall ContentAccess::CSupplier::ImportFileL(class ContentAccess::CCafMimeHeader &,class TDesC16 const &)
-	?IsImportSupported@CSupplier@ContentAccess@@QAEHABVTDesC8@@@Z @ 25 NONAME ; public: int __thiscall ContentAccess::CSupplier::IsImportSupported(class TDesC8 const &)
-	?MimeTypeL@CSupplierOutputFile@ContentAccess@@QAE?AVTPtrC8@@XZ @ 26 NONAME ; public: class TPtrC8  __thiscall ContentAccess::CSupplierOutputFile::MimeTypeL(void)
-	?NewL@CAgentResolver@ContentAccess@@SAPAV12@H@Z @ 27 NONAME ; public: static class ContentAccess::CAgentResolver * __cdecl ContentAccess::CAgentResolver::NewL(int)
-	?NewL@CSupplier@ContentAccess@@SAPAV12@XZ @ 28 NONAME ; public: static class ContentAccess::CSupplier * __cdecl ContentAccess::CSupplier::NewL(void)
-	?NewL@CSupplierOutputFile@ContentAccess@@SAPAV12@ABVTDesC16@@W4TOutputType@2@@Z @ 29 NONAME ; public: static class ContentAccess::CSupplierOutputFile * __cdecl ContentAccess::CSupplierOutputFile::NewL(class TDesC16 const &,enum ContentAccess::TOutputType)
-	?NewLC@CAgentResolver@ContentAccess@@SAPAV12@H@Z @ 30 NONAME ; public: static class ContentAccess::CAgentResolver * __cdecl ContentAccess::CAgentResolver::NewLC(int)
-	?NewLC@CSupplier@ContentAccess@@SAPAV12@XZ @ 31 NONAME ; public: static class ContentAccess::CSupplier * __cdecl ContentAccess::CSupplier::NewLC(void)
-	?OutputFileCountL@CImportFile@ContentAccess@@QBEHXZ @ 32 NONAME ; public: int __thiscall ContentAccess::CImportFile::OutputFileCountL(void)const 
-	?OutputFileL@CImportFile@ContentAccess@@QBEAAVCSupplierOutputFile@2@H@Z @ 33 NONAME ; public: class ContentAccess::CSupplierOutputFile & __thiscall ContentAccess::CImportFile::OutputFileL(int)const 
-	?OutputType@CSupplierOutputFile@ContentAccess@@QBE?AW4TOutputType@2@XZ @ 34 NONAME ; public: enum ContentAccess::TOutputType  __thiscall ContentAccess::CSupplierOutputFile::OutputType(void)const 
-	?PreferredBufferSize@CAgentResolver@ContentAccess@@QAEHXZ @ 35 NONAME ; public: int __thiscall ContentAccess::CAgentResolver::PreferredBufferSize(void)
-	?SetOutputDirectoryL@CSupplier@ContentAccess@@QAEXABVTDesC16@@@Z @ 36 NONAME ; public: void __thiscall ContentAccess::CSupplier::SetOutputDirectoryL(class TDesC16 const &)
-	?SupplierMimeTypes@CAgentResolver@ContentAccess@@QBEABV?$RArray@VTPtrC8@@@@XZ @ 37 NONAME ; public: class RArray<class TPtrC8> const & __thiscall ContentAccess::CAgentResolver::SupplierMimeTypes(void)const 
-	?WriteData@CImportFile@ContentAccess@@QAEHABVTDesC8@@@Z @ 38 NONAME ; public: int __thiscall ContentAccess::CImportFile::WriteData(class TDesC8 const &)
-	?WriteData@CImportFile@ContentAccess@@QAEXABVTDesC8@@AAVTRequestStatus@@@Z @ 39 NONAME ; public: void __thiscall ContentAccess::CImportFile::WriteData(class TDesC8 const &,class TRequestStatus &)
-	?WriteDataComplete@CImportFile@ContentAccess@@QAEHXZ @ 40 NONAME ; public: int __thiscall ContentAccess::CImportFile::WriteDataComplete(void)
-	?WriteDataComplete@CImportFile@ContentAccess@@QAEXAAVTRequestStatus@@@Z @ 41 NONAME ; public: void __thiscall ContentAccess::CImportFile::WriteDataComplete(class TRequestStatus &)
-	?NewAttributeL@CContent@ContentAccess@@QAEPAVCAttribute@2@HW4TContentShareMode@2@@Z @ 42 NONAME ; public: class ContentAccess::CAttribute * __thiscall ContentAccess::CContent::NewAttributeL(int,enum ContentAccess::TContentShareMode)
-	?OpenContentL@CContent@ContentAccess@@QAEPAVCData@2@W4TIntent@2@W4TContentShareMode@2@@Z @ 43 NONAME ; public: class ContentAccess::CData * __thiscall ContentAccess::CContent::OpenContentL(enum ContentAccess::TIntent,enum ContentAccess::TContentShareMode)
-	?NewL@CContent@ContentAccess@@SAPAV12@AAVRFile@@@Z @ 44 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewL(class RFile &)
-	?NewLC@CContent@ContentAccess@@SAPAV12@AAVRFile@@@Z @ 45 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewLC(class RFile &)
-	??1CAgentFactory@ContentAccess@@UAE@XZ @ 46 NONAME ; ContentAccess::CAgentFactory::~CAgentFactory(void)
-	?Agent@CContent@ContentAccess@@QBEABVTAgent@2@XZ @ 47 NONAME ; class ContentAccess::TAgent const & ContentAccess::CContent::Agent(void) const
-	?AgentSpecificCommand@CContent@ContentAccess@@QAEHHABVTDesC8@@AAVTDes8@@@Z @ 48 NONAME ; int ContentAccess::CContent::AgentSpecificCommand(int, class TDesC8 const &, class TDes8 &)
-	?AgentSpecificCommand@CContent@ContentAccess@@QAEXHABVTDesC8@@AAVTDes8@@AAVTRequestStatus@@@Z @ 49 NONAME ; void ContentAccess::CContent::AgentSpecificCommand(int, class TDesC8 const &, class TDes8 &, class TRequestStatus &)
-	?AgentSpecificCommand@CManager@ContentAccess@@QAEHAAVTAgent@2@HABVTDesC8@@AAVTDes8@@@Z @ 50 NONAME ; int ContentAccess::CManager::AgentSpecificCommand(class ContentAccess::TAgent &, int, class TDesC8 const &, class TDes8 &)
-	?AgentSpecificCommand@CManager@ContentAccess@@QAEXAAVTAgent@2@HABVTDesC8@@AAVTDes8@@AAVTRequestStatus@@@Z @ 51 NONAME ; void ContentAccess::CManager::AgentSpecificCommand(class ContentAccess::TAgent &, int, class TDesC8 const &, class TDes8 &, class TRequestStatus &)
-	?CancelNotifyStatusChange@CContent@ContentAccess@@QAEHAAVTRequestStatus@@@Z @ 52 NONAME ; int ContentAccess::CContent::CancelNotifyStatusChange(class TRequestStatus &)
-	?CancelNotifyStatusChange@CContent@ContentAccess@@QAEHAAVTRequestStatus@@ABVTDesC16@@@Z @ 53 NONAME ; int ContentAccess::CContent::CancelNotifyStatusChange(class TRequestStatus &, class TDesC16 const &)
-	?CancelNotifyStatusChange@CManager@ContentAccess@@QAEHABVTDesC16@@AAVTRequestStatus@@@Z @ 54 NONAME ; int ContentAccess::CManager::CancelNotifyStatusChange(class TDesC16 const &, class TRequestStatus &)
-	?CancelRequestRights@CContent@ContentAccess@@QAEHAAVTRequestStatus@@@Z @ 55 NONAME ; int ContentAccess::CContent::CancelRequestRights(class TRequestStatus &)
-	?CancelRequestRights@CContent@ContentAccess@@QAEHAAVTRequestStatus@@ABVTDesC16@@@Z @ 56 NONAME ; int ContentAccess::CContent::CancelRequestRights(class TRequestStatus &, class TDesC16 const &)
-	?CloseContainer@CContent@ContentAccess@@QAEHXZ @ 57 NONAME ; int ContentAccess::CContent::CloseContainer(void)
-	?ContinueWithNewOutputFile@CImportFile@ContentAccess@@QAEHAAVRFile@@ABVTDesC16@@@Z @ 58 NONAME ; int ContentAccess::CImportFile::ContinueWithNewOutputFile(class RFile &, class TDesC16 const &)
-	?ContinueWithNewOutputFile@CImportFile@ContentAccess@@QAEXAAVRFile@@ABVTDesC16@@AAVTRequestStatus@@@Z @ 59 NONAME ; void ContentAccess::CImportFile::ContinueWithNewOutputFile(class RFile &, class TDesC16 const &, class TRequestStatus &)
-	?CopyFile@CManager@ContentAccess@@QBEHABVTDesC16@@0@Z @ 60 NONAME ; int ContentAccess::CManager::CopyFile(class TDesC16 const &, class TDesC16 const &) const
-	?CreateRightsManagerL@CManager@ContentAccess@@QBEPAVCRightsManager@2@AAVTAgent@2@@Z @ 61 NONAME ; class ContentAccess::CRightsManager * ContentAccess::CManager::CreateRightsManagerL(class ContentAccess::TAgent &) const
-	?DeleteAllRightsObjects@CRightsManager@ContentAccess@@QAEHABVTVirtualPathPtr@2@@Z @ 62 NONAME ; int ContentAccess::CRightsManager::DeleteAllRightsObjects(class ContentAccess::TVirtualPathPtr const &)
-	?DeleteFile@CManager@ContentAccess@@QBEHABVTDesC16@@@Z @ 63 NONAME ; int ContentAccess::CManager::DeleteFile(class TDesC16 const &) const
-	?DeleteRightsObject@CRightsManager@ContentAccess@@QAEHABVCRightsInfo@2@@Z @ 64 NONAME ; int ContentAccess::CRightsManager::DeleteRightsObject(class ContentAccess::CRightsInfo const &)
-	?DisplayInfoL@CContent@ContentAccess@@QBEXW4TDisplayInfo@2@@Z @ 65 NONAME ; void ContentAccess::CContent::DisplayInfoL(enum ContentAccess::TDisplayInfo) const
-	?DisplayInfoL@CContent@ContentAccess@@QBEXW4TDisplayInfo@2@ABVTDesC16@@@Z @ 66 NONAME ; void ContentAccess::CContent::DisplayInfoL(enum ContentAccess::TDisplayInfo, class TDesC16 const &) const
-	?DisplayInfoL@CManager@ContentAccess@@QAEXW4TDisplayInfo@2@ABVTVirtualPathPtr@2@@Z @ 67 NONAME ; void ContentAccess::CManager::DisplayInfoL(enum ContentAccess::TDisplayInfo, class ContentAccess::TVirtualPathPtr const &)
-	?DisplayManagementInfoL@CManager@ContentAccess@@QAEXAAVTAgent@2@@Z @ 68 NONAME ; void ContentAccess::CManager::DisplayManagementInfoL(class ContentAccess::TAgent &)
-	?ExternalizeL@CSupplierOutputFile@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 69 NONAME ; void ContentAccess::CSupplierOutputFile::ExternalizeL(class RWriteStream &) const
-	?GetAttribute@CContent@ContentAccess@@QBEHHAAH@Z @ 70 NONAME ; int ContentAccess::CContent::GetAttribute(int, int &) const
-	?GetAttribute@CContent@ContentAccess@@QBEHHAAHABVTDesC16@@@Z @ 71 NONAME ; int ContentAccess::CContent::GetAttribute(int, int &, class TDesC16 const &) const
-	?GetAttribute@CData@ContentAccess@@QBEHHAAH@Z @ 72 NONAME ; int ContentAccess::CData::GetAttribute(int, int &) const
-	?GetAttribute@CManager@ContentAccess@@QBEHHAAHABVTVirtualPathPtr@2@@Z @ 73 NONAME ; int ContentAccess::CManager::GetAttribute(int, int &, class ContentAccess::TVirtualPathPtr const &) const
-	?GetAttributeSet@CContent@ContentAccess@@QBEHAAVRAttributeSet@2@@Z @ 74 NONAME ; int ContentAccess::CContent::GetAttributeSet(class ContentAccess::RAttributeSet &) const
-	?GetAttributeSet@CContent@ContentAccess@@QBEHAAVRAttributeSet@2@ABVTDesC16@@@Z @ 75 NONAME ; int ContentAccess::CContent::GetAttributeSet(class ContentAccess::RAttributeSet &, class TDesC16 const &) const
-	?GetAttributeSet@CData@ContentAccess@@QBEHAAVRAttributeSet@2@@Z @ 76 NONAME ; int ContentAccess::CData::GetAttributeSet(class ContentAccess::RAttributeSet &) const
-	?GetAttributeSet@CManager@ContentAccess@@QBEHAAVRAttributeSet@2@ABVTVirtualPathPtr@2@@Z @ 77 NONAME ; int ContentAccess::CManager::GetAttributeSet(class ContentAccess::RAttributeSet &, class ContentAccess::TVirtualPathPtr const &) const
-	?GetDir@CManager@ContentAccess@@QBEHABVTDesC16@@ABVTUidType@@IAAPAVCDir@@@Z @ 78 NONAME ; int ContentAccess::CManager::GetDir(class TDesC16 const &, class TUidType const &, unsigned int, class CDir * &) const
-	?GetDir@CManager@ContentAccess@@QBEHABVTDesC16@@IIAAPAVCDir@@1@Z @ 79 NONAME ; int ContentAccess::CManager::GetDir(class TDesC16 const &, unsigned int, unsigned int, class CDir * &, class CDir * &) const
-	?GetDir@CManager@ContentAccess@@QBEHABVTDesC16@@IIAAPAVCDir@@@Z @ 80 NONAME ; int ContentAccess::CManager::GetDir(class TDesC16 const &, unsigned int, unsigned int, class CDir * &) const
-	?GetEmbeddedObjectsL@CContent@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@2@@Z @ 81 NONAME ; void ContentAccess::CContent::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &) const
-	?GetEmbeddedObjectsL@CContent@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@2@W4TEmbeddedType@2@@Z @ 82 NONAME ; void ContentAccess::CContent::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, enum ContentAccess::TEmbeddedType) const
-	?GetImportStatus@CImportFile@ContentAccess@@QBE?AW4TImportStatus@2@XZ @ 83 NONAME ; enum ContentAccess::TImportStatus ContentAccess::CImportFile::GetImportStatus(void) const
-	?GetRightsDataL@CRightsManager@ContentAccess@@QBEPAVMAgentRightsBase@2@ABVCRightsInfo@2@@Z @ 84 NONAME ; class ContentAccess::MAgentRightsBase * ContentAccess::CRightsManager::GetRightsDataL(class ContentAccess::CRightsInfo const &) const
-	?GetStringAttribute@CContent@ContentAccess@@QBEHHAAVTDes16@@@Z @ 85 NONAME ; int ContentAccess::CContent::GetStringAttribute(int, class TDes16 &) const
-	?GetStringAttribute@CContent@ContentAccess@@QBEHHAAVTDes16@@ABVTDesC16@@@Z @ 86 NONAME ; int ContentAccess::CContent::GetStringAttribute(int, class TDes16 &, class TDesC16 const &) const
-	?GetStringAttribute@CData@ContentAccess@@QBEHHAAVTDes16@@@Z @ 87 NONAME ; int ContentAccess::CData::GetStringAttribute(int, class TDes16 &) const
-	?GetStringAttribute@CManager@ContentAccess@@QBEHHAAVTDes16@@ABVTVirtualPathPtr@2@@Z @ 88 NONAME ; int ContentAccess::CManager::GetStringAttribute(int, class TDes16 &, class ContentAccess::TVirtualPathPtr const &) const
-	?GetStringAttributeSet@CContent@ContentAccess@@QBEHAAVRStringAttributeSet@2@@Z @ 89 NONAME ; int ContentAccess::CContent::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &) const
-	?GetStringAttributeSet@CContent@ContentAccess@@QBEHAAVRStringAttributeSet@2@ABVTDesC16@@@Z @ 90 NONAME ; int ContentAccess::CContent::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &, class TDesC16 const &) const
-	?GetStringAttributeSet@CData@ContentAccess@@QBEHAAVRStringAttributeSet@2@@Z @ 91 NONAME ; int ContentAccess::CData::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &) const
-	?GetStringAttributeSet@CManager@ContentAccess@@QBEHAAVRStringAttributeSet@2@ABVTVirtualPathPtr@2@@Z @ 92 NONAME ; int ContentAccess::CManager::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &, class ContentAccess::TVirtualPathPtr const &) const
-	?GetSuggestedOutputFileExtension@CImportFile@ContentAccess@@QAEHAAVTDes16@@@Z @ 93 NONAME ; int ContentAccess::CImportFile::GetSuggestedOutputFileExtension(class TDes16 &)
-	?GetSuggestedOutputFileName@CImportFile@ContentAccess@@QAEHAAVTDes16@@@Z @ 94 NONAME ; int ContentAccess::CImportFile::GetSuggestedOutputFileName(class TDes16 &)
-	?ImportFileL@CSupplier@ContentAccess@@QAEPAVCImportFile@2@ABVTDesC8@@ABVCMetaDataArray@2@@Z @ 95 NONAME ; class ContentAccess::CImportFile * ContentAccess::CSupplier::ImportFileL(class TDesC8 const &, class ContentAccess::CMetaDataArray const &)
-	?ImportFileL@CSupplier@ContentAccess@@QAEPAVCImportFile@2@ABVTDesC8@@ABVCMetaDataArray@2@ABVTDesC16@@@Z @ 96 NONAME ; class ContentAccess::CImportFile * ContentAccess::CSupplier::ImportFileL(class TDesC8 const &, class ContentAccess::CMetaDataArray const &, class TDesC16 const &)
-	?ListAgentsL@CManager@ContentAccess@@QAEXAAV?$RArray@VTAgent@ContentAccess@@@@@Z @ 97 NONAME ; void ContentAccess::CManager::ListAgentsL(class RArray<class ContentAccess::TAgent> &)
-	?ListAllRightsL@CRightsManager@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCRightsInfo@ContentAccess@@@2@@Z @ 98 NONAME ; void ContentAccess::CRightsManager::ListAllRightsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CRightsInfo> &) const
-	?ListContentL@CRightsManager@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCVirtualPath@ContentAccess@@@2@AAVCRightsInfo@2@@Z @ 99 NONAME ; void ContentAccess::CRightsManager::ListContentL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CVirtualPath> &, class ContentAccess::CRightsInfo &) const
-	?ListRightsL@CRightsManager@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCRightsInfo@ContentAccess@@@2@AAVTVirtualPathPtr@2@@Z @ 100 NONAME ; void ContentAccess::CRightsManager::ListRightsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CRightsInfo> &, class ContentAccess::TVirtualPathPtr &) const
-	?ListRightsL@CRightsManager@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCRightsInfo@ContentAccess@@@2@ABVTDesC16@@@Z @ 101 NONAME ; void ContentAccess::CRightsManager::ListRightsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CRightsInfo> &, class TDesC16 const &) const
-	?MkDir@CManager@ContentAccess@@QBEHABVTDesC16@@@Z @ 102 NONAME ; int ContentAccess::CManager::MkDir(class TDesC16 const &) const
-	?MkDirAll@CManager@ContentAccess@@QBEHABVTDesC16@@@Z @ 103 NONAME ; int ContentAccess::CManager::MkDirAll(class TDesC16 const &) const
-	?Name@TAgent@ContentAccess@@QBEABVTDesC16@@XZ @ 104 NONAME ; class TDesC16 const & ContentAccess::TAgent::Name(void) const
-	?NewL@CContent@ContentAccess@@SAPAV12@ABVTDesC16@@W4TContentShareMode@2@@Z @ 105 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewL(class TDesC16 const &, enum ContentAccess::TContentShareMode)
-	?NewL@CManager@ContentAccess@@SAPAV12@XZ @ 106 NONAME ; class ContentAccess::CManager * ContentAccess::CManager::NewL(void)
-	?NewL@CSupplierOutputFile@ContentAccess@@SAPAV12@AAVRReadStream@@@Z @ 107 NONAME ; class ContentAccess::CSupplierOutputFile * ContentAccess::CSupplierOutputFile::NewL(class RReadStream &)
-	?NewL@CSupplierOutputFile@ContentAccess@@SAPAV12@ABVTDesC16@@W4TOutputType@2@ABVTDesC8@@@Z @ 108 NONAME ; class ContentAccess::CSupplierOutputFile * ContentAccess::CSupplierOutputFile::NewL(class TDesC16 const &, enum ContentAccess::TOutputType, class TDesC8 const &)
-	?NewLC@CContent@ContentAccess@@SAPAV12@ABVTDesC16@@W4TContentShareMode@2@@Z @ 109 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewLC(class TDesC16 const &, enum ContentAccess::TContentShareMode)
-	?NewLC@CManager@ContentAccess@@SAPAV12@XZ @ 110 NONAME ; class ContentAccess::CManager * ContentAccess::CManager::NewLC(void)
-	?NotifyStatusChange@CContent@ContentAccess@@QAEXW4TEventMask@2@AAVTRequestStatus@@@Z @ 111 NONAME ; void ContentAccess::CContent::NotifyStatusChange(enum ContentAccess::TEventMask, class TRequestStatus &)
-	?NotifyStatusChange@CContent@ContentAccess@@QAEXW4TEventMask@2@AAVTRequestStatus@@ABVTDesC16@@@Z @ 112 NONAME ; void ContentAccess::CContent::NotifyStatusChange(enum ContentAccess::TEventMask, class TRequestStatus &, class TDesC16 const &)
-	?NotifyStatusChange@CManager@ContentAccess@@QAEXABVTDesC16@@W4TEventMask@2@AAVTRequestStatus@@@Z @ 113 NONAME ; void ContentAccess::CManager::NotifyStatusChange(class TDesC16 const &, enum ContentAccess::TEventMask, class TRequestStatus &)
-	?OpenContainer@CContent@ContentAccess@@QAEHABVTDesC16@@@Z @ 114 NONAME ; int ContentAccess::CContent::OpenContainer(class TDesC16 const &)
-	?OpenContentL@CContent@ContentAccess@@QAEPAVCData@2@W4TIntent@2@ABVTDesC16@@@Z @ 115 NONAME ; class ContentAccess::CData * ContentAccess::CContent::OpenContentL(enum ContentAccess::TIntent, class TDesC16 const &)
-	?RenameFile@CManager@ContentAccess@@QBEHABVTDesC16@@0@Z @ 116 NONAME ; int ContentAccess::CManager::RenameFile(class TDesC16 const &, class TDesC16 const &) const
-	?RequestRights@CContent@ContentAccess@@QAEXAAVTRequestStatus@@@Z @ 117 NONAME ; void ContentAccess::CContent::RequestRights(class TRequestStatus &)
-	?RequestRights@CContent@ContentAccess@@QAEXAAVTRequestStatus@@ABVTDesC16@@@Z @ 118 NONAME ; void ContentAccess::CContent::RequestRights(class TRequestStatus &, class TDesC16 const &)
-	?RmDir@CManager@ContentAccess@@QBEHABVTDesC16@@@Z @ 119 NONAME ; int ContentAccess::CManager::RmDir(class TDesC16 const &) const
-	?Search@CContent@ContentAccess@@QAEHAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@2@ABVTDesC8@@H@Z @ 120 NONAME ; int ContentAccess::CContent::Search(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, class TDesC8 const &, int)
-	?SetProperty@CContent@ContentAccess@@QAEHW4TAgentProperty@2@H@Z @ 121 NONAME ; int ContentAccess::CContent::SetProperty(enum ContentAccess::TAgentProperty, int)
-	?SetProperty@CData@ContentAccess@@QAEHW4TAgentProperty@2@H@Z @ 122 NONAME ; int ContentAccess::CData::SetProperty(enum ContentAccess::TAgentProperty, int)
-	?SetProperty@CManager@ContentAccess@@QAEHW4TAgentProperty@2@H@Z @ 123 NONAME ; int ContentAccess::CManager::SetProperty(enum ContentAccess::TAgentProperty, int)
-	?SetProperty@CRightsManager@ContentAccess@@QAEHW4TAgentProperty@2@H@Z @ 124 NONAME ; int ContentAccess::CRightsManager::SetProperty(enum ContentAccess::TAgentProperty, int)
-	?PrepareHTTPRequestHeaders@CSupplier@ContentAccess@@QBEXAAVRStringPool@@AAVRHTTPHeaders@@@Z @ 125 NONAME ; void ContentAccess::CSupplier::PrepareHTTPRequestHeaders(class RStringPool &, class RHTTPHeaders &) const
-	?NewL@CData@ContentAccess@@SAPAV12@AAVRFile@@ABVTDesC16@@W4TIntent@2@@Z @ 126 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class RFile &, class TDesC16 const &, enum ContentAccess::TIntent)
-	?NewL@CData@ContentAccess@@SAPAV12@ABVTVirtualPathPtr@2@W4TIntent@2@W4TContentShareMode@2@@Z @ 127 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class ContentAccess::TVirtualPathPtr const &, enum ContentAccess::TIntent, enum ContentAccess::TContentShareMode)
-	?NewLC@CData@ContentAccess@@SAPAV12@AAVRFile@@ABVTDesC16@@W4TIntent@2@@Z @ 128 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class RFile &, class TDesC16 const &, enum ContentAccess::TIntent)
-	?NewLC@CData@ContentAccess@@SAPAV12@ABVTVirtualPathPtr@2@W4TIntent@2@W4TContentShareMode@2@@Z @ 129 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class ContentAccess::TVirtualPathPtr const &, enum ContentAccess::TIntent, enum ContentAccess::TContentShareMode)
-	?OpenContentLC@CContent@ContentAccess@@QAEPAVCData@2@W4TIntent@2@@Z @ 130 NONAME ; class ContentAccess::CData * ContentAccess::CContent::OpenContentLC(enum ContentAccess::TIntent)
-	?OpenContentLC@CContent@ContentAccess@@QAEPAVCData@2@W4TIntent@2@ABVTDesC16@@@Z @ 131 NONAME ; class ContentAccess::CData * ContentAccess::CContent::OpenContentLC(enum ContentAccess::TIntent, class TDesC16 const &)
-	?RenameDir@CManager@ContentAccess@@QBEHABVTDesC16@@0@Z @ 132 NONAME ; int ContentAccess::CManager::RenameDir(class TDesC16 const &, class TDesC16 const &) const
-	?RenameDir@CAgentManager@ContentAccess@@UAEHABVTDesC16@@0@Z @ 133 NONAME ; int ContentAccess::CAgentManager::RenameDir(class TDesC16 const &, class TDesC16 const &)
-	?Cancel@CAgentImportFile@ContentAccess@@UAEXXZ @ 134 NONAME ; void ContentAccess::CAgentImportFile::Cancel(void)
-	?Cancel@CImportFile@ContentAccess@@QAEXXZ @ 135 NONAME ; void ContentAccess::CImportFile::Cancel(void)
-	?NewL@CData@ContentAccess@@SAPAV12@AAVRFile@@ABVTDesC16@@@Z @ 136 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class RFile &, class TDesC16 const &)
-	?NewL@CData@ContentAccess@@SAPAV12@ABVTVirtualPathPtr@2@W4TContentShareMode@2@@Z @ 137 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class ContentAccess::TVirtualPathPtr const &, enum ContentAccess::TContentShareMode)
-	?NewLC@CData@ContentAccess@@SAPAV12@AAVRFile@@ABVTDesC16@@@Z @ 138 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class RFile &, class TDesC16 const &)
-	?NewLC@CData@ContentAccess@@SAPAV12@ABVTVirtualPathPtr@2@W4TContentShareMode@2@@Z @ 139 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class ContentAccess::TVirtualPathPtr const &, enum ContentAccess::TContentShareMode)
-	?CopyFile@CAgentManager@ContentAccess@@UAEHAAVRFile@@ABVTDesC16@@@Z @ 140 NONAME ; int ContentAccess::CAgentManager::CopyFile(class RFile &, class TDesC16 const &)
-	?CopyFile@CManager@ContentAccess@@QBEHAAVRFile@@ABVTDesC16@@@Z @ 141 NONAME ; int ContentAccess::CManager::CopyFile(class RFile &, class TDesC16 const &) const
-	?Read@CAgentData@ContentAccess@@UAEHHAAVTDes8@@HAAVTRequestStatus@@@Z @ 142 NONAME ; int ContentAccess::CAgentData::Read(int, class TDes8 &, int, class TRequestStatus &)
-	?Read_Unused@CData@ContentAccess@@ABEHHAAVTDes8@@HAAVTRequestStatus@@@Z @ 143 NONAME ; int ContentAccess::CData::Read_Unused(int, class TDes8 &, int, class TRequestStatus &) const
-	?KCafLoadPostProductionAgents@@3EB @ 144 NONAME ; unsigned char const KCafLoadPostProductionAgents
-	?ReadCancel@CData@ContentAccess@@QBEXAAVTRequestStatus@@@Z @ 145 NONAME ; void ContentAccess::CData::ReadCancel(class TRequestStatus &) const   
-	?ReadCancel@CAgentData@ContentAccess@@UAEXAAVTRequestStatus@@@Z @ 146 NONAME ; void ContentAccess::CAgentData::ReadCancel(class TRequestStatus &) const   
-	?DeleteAllRightsObjects@CAgentRightsManager@ContentAccess@@UAEHAAVRFile@@ABVTDesC16@@@Z @ 147 NONAME ; int ContentAccess::CAgentRightsManager::DeleteAllRightsObjects(class RFile &, class TDesC16 const &)
-	?DeleteAllRightsObjects@CRightsManager@ContentAccess@@QAEHAAVRFile@@ABVTDesC16@@@Z @ 148 NONAME ; int ContentAccess::CRightsManager::DeleteAllRightsObjects(class RFile &, class TDesC16 const &)
-	?DisplayInfoL@CAgentManager@ContentAccess@@UAEXW4TDisplayInfo@2@AAVRFile@@ABVTDesC16@@@Z @ 149 NONAME ; void ContentAccess::CAgentManager::DisplayInfoL(enum ContentAccess::TDisplayInfo, class RFile &, class TDesC16 const &)
-	?DisplayInfoL@CManager@ContentAccess@@QAEXW4TDisplayInfo@2@AAVRFile@@ABVTDesC16@@@Z @ 150 NONAME ; void ContentAccess::CManager::DisplayInfoL(enum ContentAccess::TDisplayInfo, class RFile &, class TDesC16 const &)
-	?GetAttribute@CAgentManager@ContentAccess@@UAEHHAAHAAVRFile@@ABVTDesC16@@@Z @ 151 NONAME ; int ContentAccess::CAgentManager::GetAttribute(int, int &, class RFile &, class TDesC16 const &)
-	?GetAttribute@CManager@ContentAccess@@QAEHHAAHAAVRFile@@ABVTDesC16@@@Z @ 152 NONAME ; int ContentAccess::CManager::GetAttribute(int, int &, class RFile &, class TDesC16 const &)
-	?GetAttributeSet@CAgentManager@ContentAccess@@UAEHAAVRAttributeSet@2@AAVRFile@@ABVTDesC16@@@Z @ 153 NONAME ; int ContentAccess::CAgentManager::GetAttributeSet(class ContentAccess::RAttributeSet &, class RFile &, class TDesC16 const &)
-	?GetAttributeSet@CManager@ContentAccess@@QAEHAAVRAttributeSet@2@AAVRFile@@ABVTDesC16@@@Z @ 154 NONAME ; int ContentAccess::CManager::GetAttributeSet(class ContentAccess::RAttributeSet &, class RFile &, class TDesC16 const &)
-	?GetStringAttribute@CAgentManager@ContentAccess@@UAEHHAAVTDes16@@AAVRFile@@ABVTDesC16@@@Z @ 155 NONAME ; int ContentAccess::CAgentManager::GetStringAttribute(int, class TDes16 &, class RFile &, class TDesC16 const &)
-	?GetStringAttribute@CManager@ContentAccess@@QAEHHAAVTDes16@@AAVRFile@@ABVTDesC16@@@Z @ 156 NONAME ; int ContentAccess::CManager::GetStringAttribute(int, class TDes16 &, class RFile &, class TDesC16 const &)
-	?GetStringAttributeSet@CAgentManager@ContentAccess@@UAEHAAVRStringAttributeSet@2@AAVRFile@@ABVTDesC16@@@Z @ 157 NONAME ; int ContentAccess::CAgentManager::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &, class RFile &, class TDesC16 const &)
-	?GetStringAttributeSet@CManager@ContentAccess@@QAEHAAVRStringAttributeSet@2@AAVRFile@@ABVTDesC16@@@Z @ 158 NONAME ; int ContentAccess::CManager::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &, class RFile &, class TDesC16 const &)
-	?ListRightsL@CAgentRightsManager@ContentAccess@@UBEXAAV?$RStreamablePtrArray@VCRightsInfo@ContentAccess@@@2@AAVRFile@@ABVTDesC16@@@Z @ 159 NONAME ; void ContentAccess::CAgentRightsManager::ListRightsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CRightsInfo> &, class RFile &, class TDesC16 const &) const
-	?ListRightsL@CRightsManager@ContentAccess@@QBEXAAV?$RStreamablePtrArray@VCRightsInfo@ContentAccess@@@2@AAVRFile@@ABVTDesC16@@@Z @ 160 NONAME ; void ContentAccess::CRightsManager::ListRightsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CRightsInfo> &, class RFile &, class TDesC16 const &) const
-	?ContentMimeTypeL@CAgentImportFile@ContentAccess@@UAEHAAVTDes8@@@Z @ 161 NONAME ; int ContentAccess::CAgentImportFile::ContentMimeTypeL(class TDes8 &)
-	?ContentMimeTypeL@CImportFile@ContentAccess@@QAEHAAVTDes8@@@Z @ 162 NONAME ; int ContentAccess::CImportFile::ContentMimeTypeL(class TDes8 &)
-	?DataSize64L@CAgentData@ContentAccess@@UAEXAA_J@Z @ 163 NONAME ; void ContentAccess::CAgentData::DataSize64L(long long &)
-	?DataSize64L@CData@ContentAccess@@QAEXAA_J@Z @ 164 NONAME ; void ContentAccess::CData::DataSize64L(long long &)
-	?Read64@CAgentData@ContentAccess@@UAEH_JAAVTDes8@@HAAVTRequestStatus@@@Z @ 165 NONAME ; int ContentAccess::CAgentData::Read64(long long, class TDes8 &, int, class TRequestStatus &)
-	?Read@CData@ContentAccess@@QBEH_JAAVTDes8@@HAAVTRequestStatus@@@Z @ 166 NONAME ; int ContentAccess::CData::Read(long long, class TDes8 &, int, class TRequestStatus &) const
-	?Seek64@CAgentData@ContentAccess@@UAEHW4TSeek@@AA_J@Z @ 167 NONAME ; int ContentAccess::CAgentData::Seek64(enum TSeek, long long &)
-	?Seek64@CData@ContentAccess@@QBEHW4TSeek@@AA_J@Z @ 168 NONAME ; int ContentAccess::CData::Seek64(enum TSeek, long long &) const
-	?GetStringAttribute@CManager@ContentAccess@@QBEHABVTDesC8@@HAAVTDes16@@@Z @ 169 NONAME ; int ContentAccess::CManager::GetStringAttribute(class TDesC8 const &, int, class TDes16 &) const
-	?GetStringAttributeSet@CAgentManager@ContentAccess@@UAEHABVTDesC8@@AAVRStringAttributeSet@2@@Z @ 170 NONAME ; int ContentAccess::CAgentManager::GetStringAttributeSet(class TDesC8 const &, class ContentAccess::RStringAttributeSet &)
-	?GetAttribute@CAgentManager@ContentAccess@@UAEHABVTDesC8@@HAAH@Z @ 171 NONAME ; int ContentAccess::CAgentManager::GetAttribute(class TDesC8 const &, int, int &)
-	?NewL@CData@ContentAccess@@SAPAV12@ABVTDesC8@@W4TIntent@2@@Z @ 172 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class TDesC8 const &, enum ContentAccess::TIntent)
-	?CreateContentBrowserL@CAgentFactory@ContentAccess@@UAEPAVCAgentContent@2@ABVTDesC8@@@Z @ 173 NONAME ; class ContentAccess::CAgentContent * ContentAccess::CAgentFactory::CreateContentBrowserL(class TDesC8 const &)
-	?Read@CData@ContentAccess@@QBEXABVTDesC8@@AAVTDes8@@AAVTRequestStatus@@@Z @ 174 NONAME ; void ContentAccess::CData::Read(class TDesC8 const &, class TDes8 &, class TRequestStatus &) const
-	?Read@CAgentData@ContentAccess@@UAEXABVTDesC8@@AAVTDes8@@AAVTRequestStatus@@@Z @ 175 NONAME ; void ContentAccess::CAgentData::Read(class TDesC8 const &, class TDes8 &, class TRequestStatus &)
-	?GetAttributeSet@CManager@ContentAccess@@QBEHABVTDesC8@@AAVRAttributeSet@2@@Z @ 176 NONAME ; int ContentAccess::CManager::GetAttributeSet(class TDesC8 const &, class ContentAccess::RAttributeSet &) const
-	?GetAttributeSet@CAgentManager@ContentAccess@@UAEHABVTDesC8@@AAVRAttributeSet@2@@Z @ 177 NONAME ; int ContentAccess::CAgentManager::GetAttributeSet(class TDesC8 const &, class ContentAccess::RAttributeSet &)
-	?DoRecognizeL@CAgentResolver@ContentAccess@@QAEHABVTDesC8@@AAVTDes8@@1@Z @ 178 NONAME ; int ContentAccess::CAgentResolver::DoRecognizeL(class TDesC8 const &, class TDes8 &, class TDes8 &)
-	?GetAttribute@CManager@ContentAccess@@QBEHABVTDesC8@@HAAH@Z @ 179 NONAME ; int ContentAccess::CManager::GetAttribute(class TDesC8 const &, int, int &) const
-	?NewLC@CContent@ContentAccess@@SAPAV12@ABVTDesC8@@@Z @ 180 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewLC(class TDesC8 const &)
-	?GetStringAttributeSet@CManager@ContentAccess@@QBEHABVTDesC8@@AAVRStringAttributeSet@2@@Z @ 181 NONAME ; int ContentAccess::CManager::GetStringAttributeSet(class TDesC8 const &, class ContentAccess::RStringAttributeSet &) const
-	?CreateDataConsumerL@CAgentFactory@ContentAccess@@UAEPAVCAgentData@2@ABVTDesC8@@@Z @ 182 NONAME ; class ContentAccess::CAgentData * ContentAccess::CAgentFactory::CreateDataConsumerL(class TDesC8 const &)
-	?IsRecognizedL@CAgentManager@ContentAccess@@UBEHABVTDesC8@@@Z @ 183 NONAME ; int ContentAccess::CAgentManager::IsRecognizedL(class TDesC8 const &) const
-	?NewL@CData@ContentAccess@@SAPAV12@ABVTDesC8@@@Z @ 184 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewL(class TDesC8 const &)
-	?Read@CAgentData@ContentAccess@@UAEHABVTDesC8@@AAVTDes8@@@Z @ 185 NONAME ; int ContentAccess::CAgentData::Read(class TDesC8 const &, class TDes8 &)
-	?GetStringAttribute@CAgentManager@ContentAccess@@UAEHABVTDesC8@@HAAVTDes16@@@Z @ 186 NONAME ; int ContentAccess::CAgentManager::GetStringAttribute(class TDesC8 const &, int, class TDes16 &)
-	?RecognizeContentL@CAgentManager@ContentAccess@@UBEHABVTDesC8@@AAVTDes8@@1@Z @ 187 NONAME ; int ContentAccess::CAgentManager::RecognizeContentL(class TDesC8 const &, class TDes8 &, class TDes8 &) const
-	?NewLC@CData@ContentAccess@@SAPAV12@ABVTDesC8@@@Z @ 188 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class TDesC8 const &)
-	?Read@CData@ContentAccess@@QBEHABVTDesC8@@AAVTDes8@@@Z @ 189 NONAME ; int ContentAccess::CData::Read(class TDesC8 const &, class TDes8 &) const
-	?NewLC@CData@ContentAccess@@SAPAV12@ABVTDesC8@@W4TIntent@2@@Z @ 190 NONAME ; class ContentAccess::CData * ContentAccess::CData::NewLC(class TDesC8 const &, enum ContentAccess::TIntent)
-	?NewL@CContent@ContentAccess@@SAPAV12@ABVTDesC8@@@Z @ 191 NONAME ; class ContentAccess::CContent * ContentAccess::CContent::NewL(class TDesC8 const &)
-
--- a/contentmgmt/contentaccessfwfordrm/BWINS/cafutils_v2u.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,103 +0,0 @@
-EXPORTS
-	??4CBitset@ContentAccess@@QAEAAV01@ABV01@@Z @ 1 NONAME ; public: class ContentAccess::CBitset & __thiscall ContentAccess::CBitset::operator=(class ContentAccess::CBitset const &)
-	??8CBitset@ContentAccess@@QBEHABV01@@Z @ 2 NONAME ; public: int __thiscall ContentAccess::CBitset::operator==(class ContentAccess::CBitset const &)const 
-	?ExternalizeL@CBitset@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 3 NONAME ; public: void __thiscall ContentAccess::CBitset::ExternalizeL(class RWriteStream &)const 
-	?InternalizeL@CBitset@ContentAccess@@QAEXAAVRReadStream@@@Z @ 4 NONAME ; public: void __thiscall ContentAccess::CBitset::InternalizeL(class RReadStream &)
-	?Invert@CBitset@ContentAccess@@QAEXXZ @ 5 NONAME ; public: void __thiscall ContentAccess::CBitset::Invert(void)
-	?IsSet@CBitset@ContentAccess@@QBEHH@Z @ 6 NONAME ; public: int __thiscall ContentAccess::CBitset::IsSet(int)const 
-	?IsSetList@CBitset@ContentAccess@@QBAHHZZ @ 7 NONAME ; public: int __cdecl ContentAccess::CBitset::IsSetList(int,...)const 
-	?NewL@CBitset@ContentAccess@@SAPAV12@ABV12@@Z @ 8 NONAME ; public: static class ContentAccess::CBitset * __cdecl ContentAccess::CBitset::NewL(class ContentAccess::CBitset const &)
-	?NewL@CBitset@ContentAccess@@SAPAV12@H@Z @ 9 NONAME ; public: static class ContentAccess::CBitset * __cdecl ContentAccess::CBitset::NewL(int)
-	?NewLC@CBitset@ContentAccess@@SAPAV12@ABV12@@Z @ 10 NONAME ; public: static class ContentAccess::CBitset * __cdecl ContentAccess::CBitset::NewLC(class ContentAccess::CBitset const &)
-	?NewLC@CBitset@ContentAccess@@SAPAV12@H@Z @ 11 NONAME ; public: static class ContentAccess::CBitset * __cdecl ContentAccess::CBitset::NewLC(int)
-	?Reset@CBitset@ContentAccess@@QAEXXZ @ 12 NONAME ; public: void __thiscall ContentAccess::CBitset::Reset(void)
-	?Set@CBitset@ContentAccess@@QAEXH@Z @ 13 NONAME ; public: void __thiscall ContentAccess::CBitset::Set(int)
-	?SetAll@CBitset@ContentAccess@@QAEXXZ @ 14 NONAME ; public: void __thiscall ContentAccess::CBitset::SetAll(void)
-	?SetListL@CBitset@ContentAccess@@QAAXHZZ @ 15 NONAME ; public: void __cdecl ContentAccess::CBitset::SetListL(int,...)
-	?Unset@CBitset@ContentAccess@@QAEXH@Z @ 16 NONAME ; public: void __thiscall ContentAccess::CBitset::Unset(int)
-	?MaxBits@CBitset@ContentAccess@@QBEHXZ @ 17 NONAME ; public: int __thiscall ContentAccess::CBitset::MaxBits(void)const 
-	??1CCafMimeHeader@ContentAccess@@UAE@XZ @ 18 NONAME ; public: virtual __thiscall ContentAccess::CCafMimeHeader::~CCafMimeHeader(void)
-	?AddNonStandardMimeL@CCafMimeHeader@ContentAccess@@QAEXABVTDesC8@@0@Z @ 19 NONAME ; public: void __thiscall ContentAccess::CCafMimeHeader::AddNonStandardMimeL(class TDesC8 const &,class TDesC8 const &)
-	?ExternalizeL@CCafMimeHeader@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 20 NONAME ; public: void __thiscall ContentAccess::CCafMimeHeader::ExternalizeL(class RWriteStream &)const 
-	?InternalizeL@CCafMimeHeader@ContentAccess@@QAEXAAVRReadStream@@@Z @ 21 NONAME ; public: void __thiscall ContentAccess::CCafMimeHeader::InternalizeL(class RReadStream &)
-	?NewL@CCafMimeHeader@ContentAccess@@SAPAV12@ABVTDesC8@@@Z @ 22 NONAME ; public: static class ContentAccess::CCafMimeHeader * __cdecl ContentAccess::CCafMimeHeader::NewL(class TDesC8 const &)
-	?NonStandardMimeCount@CCafMimeHeader@ContentAccess@@QBEHXZ @ 23 NONAME ; public: int __thiscall ContentAccess::CCafMimeHeader::NonStandardMimeCount(void)const 
-	?NonStandardMimeData@CCafMimeHeader@ContentAccess@@QBE?AVTPtrC8@@H@Z @ 24 NONAME ; public: class TPtrC8  __thiscall ContentAccess::CCafMimeHeader::NonStandardMimeData(int)const 
-	?NonStandardMimeField@CCafMimeHeader@ContentAccess@@QBE?AVTPtrC8@@H@Z @ 25 NONAME ; public: class TPtrC8  __thiscall ContentAccess::CCafMimeHeader::NonStandardMimeField(int)const 
-	?SetStandardMimeDataL@CCafMimeHeader@ContentAccess@@QAEXABW4TMimeFields@2@ABVTDesC8@@@Z @ 26 NONAME ; public: void __thiscall ContentAccess::CCafMimeHeader::SetStandardMimeDataL(enum ContentAccess::TMimeFields const &,class TDesC8 const &)
-	?StandardMimeData@CCafMimeHeader@ContentAccess@@QBE?AVTPtrC8@@ABW4TMimeFields@2@@Z @ 27 NONAME ; public: class TPtrC8  __thiscall ContentAccess::CCafMimeHeader::StandardMimeData(enum ContentAccess::TMimeFields const &)const 
-	??0RAttributeSet@ContentAccess@@QAE@XZ @ 28 NONAME ; ContentAccess::RAttributeSet::RAttributeSet(void)
-	??0RStringAttributeSet@ContentAccess@@QAE@XZ @ 29 NONAME ; ContentAccess::RStringAttributeSet::RStringAttributeSet(void)
-	??0TVirtualPathPtr@ContentAccess@@QAE@ABV01@@Z @ 30 NONAME ; ContentAccess::TVirtualPathPtr::TVirtualPathPtr(class ContentAccess::TVirtualPathPtr const &)
-	??0TVirtualPathPtr@ContentAccess@@QAE@ABVTDesC16@@0@Z @ 31 NONAME ; ContentAccess::TVirtualPathPtr::TVirtualPathPtr(class TDesC16 const &, class TDesC16 const &)
-	??0TVirtualPathPtr@ContentAccess@@QAE@ABVTDesC16@@@Z @ 32 NONAME ; ContentAccess::TVirtualPathPtr::TVirtualPathPtr(class TDesC16 const &)
-	??4TVirtualPathPtr@ContentAccess@@QAEAAV01@ABV01@@Z @ 33 NONAME ; class ContentAccess::TVirtualPathPtr & ContentAccess::TVirtualPathPtr::operator=(class ContentAccess::TVirtualPathPtr const &)
-	??4TVirtualPathPtr@ContentAccess@@QAEAAV01@ABVTDesC16@@@Z @ 34 NONAME ; class ContentAccess::TVirtualPathPtr & ContentAccess::TVirtualPathPtr::operator=(class TDesC16 const &)
-	??ACDirStreamable@ContentAccess@@QBEABVTEntry@@H@Z @ 35 NONAME ; class TEntry const & ContentAccess::CDirStreamable::operator[](int) const
-	??ACMetaDataArray@ContentAccess@@QBEABVCMetaData@1@H@Z @ 36 NONAME ; class ContentAccess::CMetaData const & ContentAccess::CMetaDataArray::operator[](int) const
-	??ARAttributeSet@ContentAccess@@QBEHH@Z @ 37 NONAME ; int ContentAccess::RAttributeSet::operator[](int) const
-	??ARStringAttributeSet@ContentAccess@@QBEHH@Z @ 38 NONAME ; int ContentAccess::RStringAttributeSet::operator[](int) const
-	?AddL@CDirStreamable@ContentAccess@@QAEXABVTEntry@@@Z @ 39 NONAME ; void ContentAccess::CDirStreamable::AddL(class TEntry const &)
-	?AddL@CMetaDataArray@ContentAccess@@QAEXABVTDesC16@@0@Z @ 40 NONAME ; void ContentAccess::CMetaDataArray::AddL(class TDesC16 const &, class TDesC16 const &)
-	?AddL@CMetaDataArray@ContentAccess@@QAEXABVTDesC8@@0@Z @ 41 NONAME ; void ContentAccess::CMetaDataArray::AddL(class TDesC8 const &, class TDesC8 const &)
-	?AddL@RAttributeSet@ContentAccess@@QAEXH@Z @ 42 NONAME ; void ContentAccess::RAttributeSet::AddL(int)
-	?AddL@RStringAttributeSet@ContentAccess@@QAEXH@Z @ 43 NONAME ; void ContentAccess::RStringAttributeSet::AddL(int)
-	?Close@RAttributeSet@ContentAccess@@QAEXXZ @ 44 NONAME ; void ContentAccess::RAttributeSet::Close(void)
-	?Close@RStringAttributeSet@ContentAccess@@QAEXXZ @ 45 NONAME ; void ContentAccess::RStringAttributeSet::Close(void)
-	?Count@CDirStreamable@ContentAccess@@QBEHXZ @ 46 NONAME ; int ContentAccess::CDirStreamable::Count(void) const
-	?Count@CMetaDataArray@ContentAccess@@QBEHXZ @ 47 NONAME ; int ContentAccess::CMetaDataArray::Count(void) const
-	?Count@RAttributeSet@ContentAccess@@QBEHXZ @ 48 NONAME ; int ContentAccess::RAttributeSet::Count(void) const
-	?Count@RStringAttributeSet@ContentAccess@@QBEHXZ @ 49 NONAME ; int ContentAccess::RStringAttributeSet::Count(void) const
-	?Data8@CMetaData@ContentAccess@@QBEABVTDesC8@@XZ @ 50 NONAME ; class TDesC8 const & ContentAccess::CMetaData::Data8(void) const
-	?Data@CMetaData@ContentAccess@@QBEABVTDesC16@@XZ @ 51 NONAME ; class TDesC16 const & ContentAccess::CMetaData::Data(void) const
-	?Description@CRightsInfo@ContentAccess@@QBEABVTDesC16@@XZ @ 52 NONAME ; class TDesC16 const & ContentAccess::CRightsInfo::Description(void) const
-	?ExternalizeL@CDirStreamable@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 53 NONAME ; void ContentAccess::CDirStreamable::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CEmbeddedObject@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 54 NONAME ; void ContentAccess::CEmbeddedObject::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CMetaDataArray@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 55 NONAME ; void ContentAccess::CMetaDataArray::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CRightsInfo@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 56 NONAME ; void ContentAccess::CRightsInfo::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@CVirtualPath@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 57 NONAME ; void ContentAccess::CVirtualPath::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@RAttributeSet@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 58 NONAME ; void ContentAccess::RAttributeSet::ExternalizeL(class RWriteStream &) const
-	?ExternalizeL@RStringAttributeSet@ContentAccess@@QBEXAAVRWriteStream@@@Z @ 59 NONAME ; void ContentAccess::RStringAttributeSet::ExternalizeL(class RWriteStream &) const
-	?Field8@CMetaData@ContentAccess@@QBEABVTDesC8@@XZ @ 60 NONAME ; class TDesC8 const & ContentAccess::CMetaData::Field8(void) const
-	?Field@CMetaData@ContentAccess@@QBEABVTDesC16@@XZ @ 61 NONAME ; class TDesC16 const & ContentAccess::CMetaData::Field(void) const
-	?GetCombinedUriUniqueId@CVirtualPath@ContentAccess@@QAEABVTDesC16@@XZ @ 62 NONAME ; class TDesC16 const & ContentAccess::CVirtualPath::GetCombinedUriUniqueId(void)
-	?GetValue@RAttributeSet@ContentAccess@@QBEHHAAH@Z @ 63 NONAME ; int ContentAccess::RAttributeSet::GetValue(int, int &) const
-	?GetValue@RStringAttributeSet@ContentAccess@@QBEHHAAVTDes16@@@Z @ 64 NONAME ; int ContentAccess::RStringAttributeSet::GetValue(int, class TDes16 &) const
-	?GetValueLength@RStringAttributeSet@ContentAccess@@QBEHH@Z @ 65 NONAME ; int ContentAccess::RStringAttributeSet::GetValueLength(int) const
-	?InternalizeL@RAttributeSet@ContentAccess@@QAEXAAVRReadStream@@@Z @ 66 NONAME ; void ContentAccess::RAttributeSet::InternalizeL(class RReadStream &)
-	?InternalizeL@RStringAttributeSet@ContentAccess@@QAEXAAVRReadStream@@@Z @ 67 NONAME ; void ContentAccess::RStringAttributeSet::InternalizeL(class RReadStream &)
-	?MimeType@CEmbeddedObject@ContentAccess@@QBEABVTDesC8@@XZ @ 68 NONAME ; class TDesC8 const & ContentAccess::CEmbeddedObject::MimeType(void) const
-	?Name@CEmbeddedObject@ContentAccess@@QBEABVTDesC16@@XZ @ 69 NONAME ; class TDesC16 const & ContentAccess::CEmbeddedObject::Name(void) const
-	?NewL@CDirStreamable@ContentAccess@@SAPAV12@AAVCDir@@@Z @ 70 NONAME ; class ContentAccess::CDirStreamable * ContentAccess::CDirStreamable::NewL(class CDir &)
-	?NewL@CDirStreamable@ContentAccess@@SAPAV12@VRReadStream@@@Z @ 71 NONAME ; class ContentAccess::CDirStreamable * ContentAccess::CDirStreamable::NewL(class RReadStream)
-	?NewL@CDirStreamable@ContentAccess@@SAPAV12@XZ @ 72 NONAME ; class ContentAccess::CDirStreamable * ContentAccess::CDirStreamable::NewL(void)
-	?NewL@CEmbeddedObject@ContentAccess@@SAPAV12@AAVRReadStream@@@Z @ 73 NONAME ; class ContentAccess::CEmbeddedObject * ContentAccess::CEmbeddedObject::NewL(class RReadStream &)
-	?NewL@CEmbeddedObject@ContentAccess@@SAPAV12@ABVTDesC16@@0ABVTDesC8@@W4TEmbeddedType@2@@Z @ 74 NONAME ; class ContentAccess::CEmbeddedObject * ContentAccess::CEmbeddedObject::NewL(class TDesC16 const &, class TDesC16 const &, class TDesC8 const &, enum ContentAccess::TEmbeddedType)
-	?NewL@CEmbeddedObject@ContentAccess@@SAPAV12@ABVTDesC16@@ABVTDesC8@@W4TEmbeddedType@2@@Z @ 75 NONAME ; class ContentAccess::CEmbeddedObject * ContentAccess::CEmbeddedObject::NewL(class TDesC16 const &, class TDesC8 const &, enum ContentAccess::TEmbeddedType)
-	?NewL@CMetaDataArray@ContentAccess@@SAPAV12@AAVRReadStream@@@Z @ 76 NONAME ; class ContentAccess::CMetaDataArray * ContentAccess::CMetaDataArray::NewL(class RReadStream &)
-	?NewL@CMetaDataArray@ContentAccess@@SAPAV12@XZ @ 77 NONAME ; class ContentAccess::CMetaDataArray * ContentAccess::CMetaDataArray::NewL(void)
-	?NewL@CRightsInfo@ContentAccess@@SAPAV12@AAVRReadStream@@@Z @ 78 NONAME ; class ContentAccess::CRightsInfo * ContentAccess::CRightsInfo::NewL(class RReadStream &)
-	?NewL@CRightsInfo@ContentAccess@@SAPAV12@ABVTDesC16@@0HW4TRightsStatus@2@@Z @ 79 NONAME ; class ContentAccess::CRightsInfo * ContentAccess::CRightsInfo::NewL(class TDesC16 const &, class TDesC16 const &, int, enum ContentAccess::TRightsStatus)
-	?NewL@CVirtualPath@ContentAccess@@SAPAV12@AAVRReadStream@@@Z @ 80 NONAME ; class ContentAccess::CVirtualPath * ContentAccess::CVirtualPath::NewL(class RReadStream &)
-	?NewL@CVirtualPath@ContentAccess@@SAPAV12@ABVTDesC16@@0@Z @ 81 NONAME ; class ContentAccess::CVirtualPath * ContentAccess::CVirtualPath::NewL(class TDesC16 const &, class TDesC16 const &)
-	?NewL@CVirtualPath@ContentAccess@@SAPAV12@ABVTDesC16@@@Z @ 82 NONAME ; class ContentAccess::CVirtualPath * ContentAccess::CVirtualPath::NewL(class TDesC16 const &)
-	?NewL@CVirtualPath@ContentAccess@@SAPAV12@ABVTVirtualPathPtr@2@@Z @ 83 NONAME ; class ContentAccess::CVirtualPath * ContentAccess::CVirtualPath::NewL(class ContentAccess::TVirtualPathPtr const &)
-	?NewLC@CMetaDataArray@ContentAccess@@SAPAV12@XZ @ 84 NONAME ; class ContentAccess::CMetaDataArray * ContentAccess::CMetaDataArray::NewLC(void)
-	?RightsStatus@CRightsInfo@ContentAccess@@QBE?AW4TRightsStatus@2@XZ @ 85 NONAME ; enum ContentAccess::TRightsStatus ContentAccess::CRightsInfo::RightsStatus(void) const
-	?RightsType@CRightsInfo@ContentAccess@@QBEHXZ @ 86 NONAME ; int ContentAccess::CRightsInfo::RightsType(void) const
-	?SearchL@CMetaDataArray@ContentAccess@@QBEABVTDesC16@@ABV3@H@Z @ 87 NONAME ; class TDesC16 const & ContentAccess::CMetaDataArray::SearchL(class TDesC16 const &, int) const
-	?SearchL@CMetaDataArray@ContentAccess@@QBEABVTDesC8@@ABV3@H@Z @ 88 NONAME ; class TDesC8 const & ContentAccess::CMetaDataArray::SearchL(class TDesC8 const &, int) const
-	?SetValue@RAttributeSet@ContentAccess@@QAEHHHH@Z @ 89 NONAME ; int ContentAccess::RAttributeSet::SetValue(int, int, int)
-	?SetValue@RStringAttributeSet@ContentAccess@@QAEHHABVTDesC16@@H@Z @ 90 NONAME ; int ContentAccess::RStringAttributeSet::SetValue(int, class TDesC16 const &, int)
-	?Sort@CDirStreamable@ContentAccess@@QAEHI@Z @ 91 NONAME ; int ContentAccess::CDirStreamable::Sort(unsigned int)
-	?Type@CEmbeddedObject@ContentAccess@@QBE?AW4TEmbeddedType@2@XZ @ 92 NONAME ; enum ContentAccess::TEmbeddedType ContentAccess::CEmbeddedObject::Type(void) const
-	?URI@CVirtualPath@ContentAccess@@QBEABVTDesC16@@XZ @ 93 NONAME ; class TDesC16 const & ContentAccess::CVirtualPath::URI(void) const
-	?URI@TVirtualPathPtr@ContentAccess@@QBEABVTDesC16@@XZ @ 94 NONAME ; class TDesC16 const & ContentAccess::TVirtualPathPtr::URI(void) const
-	?UniqueId@CEmbeddedObject@ContentAccess@@QBEABVTDesC16@@XZ @ 95 NONAME ; class TDesC16 const & ContentAccess::CEmbeddedObject::UniqueId(void) const
-	?UniqueId@CRightsInfo@ContentAccess@@QBEABVTDesC16@@XZ @ 96 NONAME ; class TDesC16 const & ContentAccess::CRightsInfo::UniqueId(void) const
-	?UniqueId@CVirtualPath@ContentAccess@@QBEABVTDesC16@@XZ @ 97 NONAME ; class TDesC16 const & ContentAccess::CVirtualPath::UniqueId(void) const
-	?UniqueId@TVirtualPathPtr@ContentAccess@@QBEABVTDesC16@@XZ @ 98 NONAME ; class TDesC16 const & ContentAccess::TVirtualPathPtr::UniqueId(void) const
-	?NewL@CCAFHelper@ContentAccess@@SAPAV12@XZ @ 99 NONAME ; class ContentAccess::CCAFHelper * ContentAccess::CCAFHelper::NewL(void)
-	?NewLC@CCAFHelper@ContentAccess@@SAPAV12@XZ @ 100 NONAME ; class ContentAccess::CCAFHelper * ContentAccess::CCAFHelper::NewLC(void)
-	??RCCAFHelper@ContentAccess@@QBEAAVMCAFHelperInterface@1@XZ @ 101 NONAME ; class ContentAccess::MCAFHelperInterface & ContentAccess::CCAFHelper::operator()(void) const
-
--- a/contentmgmt/contentaccessfwfordrm/EABI/caf_v3u.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,225 +0,0 @@
-EXPORTS
-	_ZN13ContentAccess10CAttribute4GetLEv @ 1 NONAME
-	_ZN13ContentAccess10CAttribute5ResetEv @ 2 NONAME
-	_ZN13ContentAccess10CAttribute8QuerySetEv @ 3 NONAME
-	_ZN13ContentAccess5CData13ExecuteIntentENS_7TIntentE @ 4 NONAME
-	_ZN13ContentAccess5CData14EvaluateIntentENS_7TIntentE @ 5 NONAME
-	_ZN13ContentAccess5CData7SetQosLENS_13TQosAttributeEi @ 6 NONAME
-	_ZN13ContentAccess5CData9DataSizeLERi @ 7 NONAME
-	_ZN13ContentAccess8CContent12OpenContentLENS_7TIntentE @ 8 NONAME
-	_ZN13ContentAccess8CContent13NewAttributeLEi @ 9 NONAME
-	_ZN13ContentAccess8CContent4NewLERK7TDesC16 @ 10 NONAME
-	_ZN13ContentAccess8CContent5NewLCERK7TDesC16 @ 11 NONAME
-	_ZNK13ContentAccess10CAttribute11ResponseSetEv @ 12 NONAME
-	_ZNK13ContentAccess5CData4ReadER5TDes8 @ 13 NONAME
-	_ZNK13ContentAccess5CData4ReadER5TDes8R14TRequestStatus @ 14 NONAME
-	_ZNK13ContentAccess5CData4ReadER5TDes8i @ 15 NONAME
-	_ZNK13ContentAccess5CData4ReadER5TDes8iR14TRequestStatus @ 16 NONAME
-	_ZNK13ContentAccess5CData4SeekE5TSeekRi @ 17 NONAME
-	_ZN13ContentAccess11CImportFile17WriteDataCompleteER14TRequestStatus @ 18 NONAME
-	_ZN13ContentAccess11CImportFile17WriteDataCompleteEv @ 19 NONAME
-	_ZN13ContentAccess11CImportFile9WriteDataERK6TDesC8 @ 20 NONAME
-	_ZN13ContentAccess11CImportFile9WriteDataERK6TDesC8R14TRequestStatus @ 21 NONAME
-	_ZN13ContentAccess14CAgentResolver12DoRecognizeLERK7TDesC16RK6TDesC8R5TDes8S8_ @ 22 NONAME
-	_ZN13ContentAccess14CAgentResolver19PreferredBufferSizeEv @ 23 NONAME
-	_ZN13ContentAccess14CAgentResolver4NewLEi @ 24 NONAME
-	_ZN13ContentAccess14CAgentResolver5NewLCEi @ 25 NONAME
-	_ZN13ContentAccess19CSupplierOutputFile11AttributesLEi @ 26 NONAME
-	_ZN13ContentAccess19CSupplierOutputFile4NewLERK7TDesC16NS_11TOutputTypeE @ 27 NONAME
-	_ZN13ContentAccess19CSupplierOutputFile9MimeTypeLEv @ 28 NONAME
-	_ZN13ContentAccess8CManager11DeleteFileLERK7TDesC16 @ 29 NONAME
-	_ZN13ContentAccess9CSupplier11ImportFileLERNS_14CCafMimeHeaderERK7TDesC16 @ 30 NONAME
-	_ZN13ContentAccess9CSupplier17IsImportSupportedERK6TDesC8 @ 31 NONAME
-	_ZN13ContentAccess9CSupplier19SetOutputDirectoryLERK7TDesC16 @ 32 NONAME
-	_ZN13ContentAccess9CSupplier4NewLEv @ 33 NONAME
-	_ZN13ContentAccess9CSupplier5NewLCEv @ 34 NONAME
-	_ZNK13ContentAccess11CImportFile11OutputFileLEi @ 35 NONAME
-	_ZNK13ContentAccess11CImportFile16OutputFileCountLEv @ 36 NONAME
-	_ZNK13ContentAccess14CAgentResolver17ConsumerMimeTypesEv @ 37 NONAME
-	_ZNK13ContentAccess14CAgentResolver17SupplierMimeTypesEv @ 38 NONAME
-	_ZNK13ContentAccess19CSupplierOutputFile10OutputTypeEv @ 39 NONAME
-	_ZNK13ContentAccess19CSupplierOutputFile8FileNameEv @ 40 NONAME
-	_ZNK13ContentAccess5CData12GetMimeTypeLER5TDes8 @ 41 NONAME
-	_ZN13ContentAccess8CContent12OpenContentLENS_7TIntentENS_17TContentShareModeE @ 42 NONAME
-	_ZN13ContentAccess8CContent13NewAttributeLEiNS_17TContentShareModeE @ 43 NONAME
-	_ZTIN13ContentAccess10CAgentInfoE @ 44 NONAME ; #<TI>#
-	_ZTIN13ContentAccess10CAttributeE @ 45 NONAME ; #<TI>#
-	_ZTIN13ContentAccess11CImportFileE @ 46 NONAME ; #<TI>#
-	_ZTIN13ContentAccess14CAgentResolverE @ 47 NONAME ; #<TI>#
-	_ZTIN13ContentAccess19CSupplierOutputFileE @ 48 NONAME ; #<TI>#
-	_ZTIN13ContentAccess5CDataE @ 49 NONAME ; #<TI>#
-	_ZTIN13ContentAccess8CContentE @ 50 NONAME ; #<TI>#
-	_ZTIN13ContentAccess9CSupplierE @ 51 NONAME ; #<TI>#
-	_ZTVN13ContentAccess10CAgentInfoE @ 52 NONAME ; #<VT>#
-	_ZTVN13ContentAccess10CAttributeE @ 53 NONAME ; #<VT>#
-	_ZTVN13ContentAccess11CImportFileE @ 54 NONAME ; #<VT>#
-	_ZTVN13ContentAccess14CAgentResolverE @ 55 NONAME ; #<VT>#
-	_ZTVN13ContentAccess19CSupplierOutputFileE @ 56 NONAME ; #<VT>#
-	_ZTVN13ContentAccess5CDataE @ 57 NONAME ; #<VT>#
-	_ZTVN13ContentAccess8CContentE @ 58 NONAME ; #<VT>#
-	_ZTVN13ContentAccess9CSupplierE @ 59 NONAME ; #<VT>#
-	_ZN13ContentAccess8CContent4NewLER5RFile @ 60 NONAME
-	_ZN13ContentAccess8CContent5NewLCER5RFile @ 61 NONAME
-	_ZN13ContentAccess11CImportFile25ContinueWithNewOutputFileER5RFileRK7TDesC16 @ 62 NONAME
-	_ZN13ContentAccess11CImportFile25ContinueWithNewOutputFileER5RFileRK7TDesC16R14TRequestStatus @ 63 NONAME
-	_ZN13ContentAccess11CImportFile26GetSuggestedOutputFileNameER6TDes16 @ 64 NONAME
-	_ZN13ContentAccess11CImportFile31GetSuggestedOutputFileExtensionER6TDes16 @ 65 NONAME
-	_ZN13ContentAccess13CAgentFactoryD0Ev @ 66 NONAME
-	_ZN13ContentAccess13CAgentFactoryD1Ev @ 67 NONAME
-	_ZN13ContentAccess13CAgentFactoryD2Ev @ 68 NONAME
-	_ZN13ContentAccess14CRightsManager11SetPropertyENS_14TAgentPropertyEi @ 69 NONAME
-	_ZN13ContentAccess14CRightsManager18DeleteRightsObjectERKNS_11CRightsInfoE @ 70 NONAME
-	_ZN13ContentAccess14CRightsManager22DeleteAllRightsObjectsERKNS_15TVirtualPathPtrE @ 71 NONAME
-	_ZN13ContentAccess19CSupplierOutputFile4NewLER11RReadStream @ 72 NONAME
-	_ZN13ContentAccess19CSupplierOutputFile4NewLERK7TDesC16NS_11TOutputTypeERK6TDesC8 @ 73 NONAME
-	_ZN13ContentAccess5CData11SetPropertyENS_14TAgentPropertyEi @ 74 NONAME
-	_ZN13ContentAccess8CContent11SetPropertyENS_14TAgentPropertyEi @ 75 NONAME
-	_ZN13ContentAccess8CContent12OpenContentLENS_7TIntentERK7TDesC16 @ 76 NONAME
-	_ZN13ContentAccess8CContent13OpenContainerERK7TDesC16 @ 77 NONAME
-	_ZN13ContentAccess8CContent13RequestRightsER14TRequestStatus @ 78 NONAME
-	_ZN13ContentAccess8CContent13RequestRightsER14TRequestStatusRK7TDesC16 @ 79 NONAME
-	_ZN13ContentAccess8CContent14CloseContainerEv @ 80 NONAME
-	_ZN13ContentAccess8CContent18NotifyStatusChangeENS_10TEventMaskER14TRequestStatus @ 81 NONAME
-	_ZN13ContentAccess8CContent18NotifyStatusChangeENS_10TEventMaskER14TRequestStatusRK7TDesC16 @ 82 NONAME
-	_ZN13ContentAccess8CContent19CancelRequestRightsER14TRequestStatus @ 83 NONAME
-	_ZN13ContentAccess8CContent19CancelRequestRightsER14TRequestStatusRK7TDesC16 @ 84 NONAME
-	_ZN13ContentAccess8CContent20AgentSpecificCommandEiRK6TDesC8R5TDes8 @ 85 NONAME
-	_ZN13ContentAccess8CContent20AgentSpecificCommandEiRK6TDesC8R5TDes8R14TRequestStatus @ 86 NONAME
-	_ZN13ContentAccess8CContent24CancelNotifyStatusChangeER14TRequestStatus @ 87 NONAME
-	_ZN13ContentAccess8CContent24CancelNotifyStatusChangeER14TRequestStatusRK7TDesC16 @ 88 NONAME
-	_ZN13ContentAccess8CContent4NewLERK7TDesC16NS_17TContentShareModeE @ 89 NONAME
-	_ZN13ContentAccess8CContent5NewLCERK7TDesC16NS_17TContentShareModeE @ 90 NONAME
-	_ZN13ContentAccess8CContent6SearchERNS_19RStreamablePtrArrayINS_15CEmbeddedObjectEEERK6TDesC8i @ 91 NONAME
-	_ZN13ContentAccess8CManager11ListAgentsLER6RArrayINS_6TAgentEE @ 92 NONAME
-	_ZN13ContentAccess8CManager11SetPropertyENS_14TAgentPropertyEi @ 93 NONAME
-	_ZN13ContentAccess8CManager12DisplayInfoLENS_12TDisplayInfoERKNS_15TVirtualPathPtrE @ 94 NONAME
-	_ZN13ContentAccess8CManager18NotifyStatusChangeERK7TDesC16NS_10TEventMaskER14TRequestStatus @ 95 NONAME
-	_ZN13ContentAccess8CManager20AgentSpecificCommandERNS_6TAgentEiRK6TDesC8R5TDes8 @ 96 NONAME
-	_ZN13ContentAccess8CManager20AgentSpecificCommandERNS_6TAgentEiRK6TDesC8R5TDes8R14TRequestStatus @ 97 NONAME
-	_ZN13ContentAccess8CManager22DisplayManagementInfoLERNS_6TAgentE @ 98 NONAME
-	_ZN13ContentAccess8CManager24CancelNotifyStatusChangeERK7TDesC16R14TRequestStatus @ 99 NONAME
-	_ZN13ContentAccess8CManager4NewLEv @ 100 NONAME
-	_ZN13ContentAccess8CManager5NewLCEv @ 101 NONAME
-	_ZN13ContentAccess9CSupplier11ImportFileLERK6TDesC8RKNS_14CMetaDataArrayE @ 102 NONAME
-	_ZN13ContentAccess9CSupplier11ImportFileLERK6TDesC8RKNS_14CMetaDataArrayERK7TDesC16 @ 103 NONAME
-	_ZNK13ContentAccess11CImportFile15GetImportStatusEv @ 104 NONAME
-	_ZNK13ContentAccess14CRightsManager11ListRightsLERNS_19RStreamablePtrArrayINS_11CRightsInfoEEERK7TDesC16 @ 105 NONAME
-	_ZNK13ContentAccess14CRightsManager11ListRightsLERNS_19RStreamablePtrArrayINS_11CRightsInfoEEERNS_15TVirtualPathPtrE @ 106 NONAME
-	_ZNK13ContentAccess14CRightsManager12ListContentLERNS_19RStreamablePtrArrayINS_12CVirtualPathEEERNS_11CRightsInfoE @ 107 NONAME
-	_ZNK13ContentAccess14CRightsManager14GetRightsDataLERKNS_11CRightsInfoE @ 108 NONAME
-	_ZNK13ContentAccess14CRightsManager14ListAllRightsLERNS_19RStreamablePtrArrayINS_11CRightsInfoEEE @ 109 NONAME
-	_ZNK13ContentAccess19CSupplierOutputFile12ExternalizeLER12RWriteStream @ 110 NONAME
-	_ZNK13ContentAccess5CData12GetAttributeEiRi @ 111 NONAME
-	_ZNK13ContentAccess5CData15GetAttributeSetERNS_13RAttributeSetE @ 112 NONAME
-	_ZNK13ContentAccess5CData18GetStringAttributeEiR6TDes16 @ 113 NONAME
-	_ZNK13ContentAccess5CData21GetStringAttributeSetERNS_19RStringAttributeSetE @ 114 NONAME
-	_ZNK13ContentAccess6TAgent4NameEv @ 115 NONAME
-	_ZNK13ContentAccess8CContent12DisplayInfoLENS_12TDisplayInfoE @ 116 NONAME
-	_ZNK13ContentAccess8CContent12DisplayInfoLENS_12TDisplayInfoERK7TDesC16 @ 117 NONAME
-	_ZNK13ContentAccess8CContent12GetAttributeEiRi @ 118 NONAME
-	_ZNK13ContentAccess8CContent12GetAttributeEiRiRK7TDesC16 @ 119 NONAME
-	_ZNK13ContentAccess8CContent15GetAttributeSetERNS_13RAttributeSetE @ 120 NONAME
-	_ZNK13ContentAccess8CContent15GetAttributeSetERNS_13RAttributeSetERK7TDesC16 @ 121 NONAME
-	_ZNK13ContentAccess8CContent18GetStringAttributeEiR6TDes16 @ 122 NONAME
-	_ZNK13ContentAccess8CContent18GetStringAttributeEiR6TDes16RK7TDesC16 @ 123 NONAME
-	_ZNK13ContentAccess8CContent19GetEmbeddedObjectsLERNS_19RStreamablePtrArrayINS_15CEmbeddedObjectEEE @ 124 NONAME
-	_ZNK13ContentAccess8CContent19GetEmbeddedObjectsLERNS_19RStreamablePtrArrayINS_15CEmbeddedObjectEEENS_13TEmbeddedTypeE @ 125 NONAME
-	_ZNK13ContentAccess8CContent21GetStringAttributeSetERNS_19RStringAttributeSetE @ 126 NONAME
-	_ZNK13ContentAccess8CContent21GetStringAttributeSetERNS_19RStringAttributeSetERK7TDesC16 @ 127 NONAME
-	_ZNK13ContentAccess8CContent5AgentEv @ 128 NONAME
-	_ZNK13ContentAccess8CManager10DeleteFileERK7TDesC16 @ 129 NONAME
-	_ZNK13ContentAccess8CManager10RenameFileERK7TDesC16S3_ @ 130 NONAME
-	_ZNK13ContentAccess8CManager12GetAttributeEiRiRKNS_15TVirtualPathPtrE @ 131 NONAME
-	_ZNK13ContentAccess8CManager15GetAttributeSetERNS_13RAttributeSetERKNS_15TVirtualPathPtrE @ 132 NONAME
-	_ZNK13ContentAccess8CManager18GetStringAttributeEiR6TDes16RKNS_15TVirtualPathPtrE @ 133 NONAME
-	_ZNK13ContentAccess8CManager20CreateRightsManagerLERNS_6TAgentE @ 134 NONAME
-	_ZNK13ContentAccess8CManager21GetStringAttributeSetERNS_19RStringAttributeSetERKNS_15TVirtualPathPtrE @ 135 NONAME
-	_ZNK13ContentAccess8CManager5MkDirERK7TDesC16 @ 136 NONAME
-	_ZNK13ContentAccess8CManager5RmDirERK7TDesC16 @ 137 NONAME
-	_ZNK13ContentAccess8CManager6GetDirERK7TDesC16RK8TUidTypejRP4CDir @ 138 NONAME
-	_ZNK13ContentAccess8CManager6GetDirERK7TDesC16jjRP4CDir @ 139 NONAME
-	_ZNK13ContentAccess8CManager6GetDirERK7TDesC16jjRP4CDirS6_ @ 140 NONAME
-	_ZNK13ContentAccess8CManager8CopyFileERK7TDesC16S3_ @ 141 NONAME
-	_ZNK13ContentAccess8CManager8MkDirAllERK7TDesC16 @ 142 NONAME
-	_ZTIN13ContentAccess13CAgentFactoryE @ 143 NONAME ; #<TI>#
-	_ZTIN13ContentAccess14CRightsManagerE @ 144 NONAME ; #<TI>#
-	_ZTIN13ContentAccess8CManagerE @ 145 NONAME ; #<TI>#
-	_ZTVN13ContentAccess13CAgentFactoryE @ 146 NONAME ; #<VT>#
-	_ZTVN13ContentAccess14CRightsManagerE @ 147 NONAME ; #<VT>#
-	_ZTVN13ContentAccess8CManagerE @ 148 NONAME ; #<VT>#
-	_ZNK13ContentAccess9CSupplier25PrepareHTTPRequestHeadersER11RStringPoolR12RHTTPHeaders @ 149 NONAME
-	_ZN13ContentAccess5CData4NewLER5RFileRK7TDesC16NS_7TIntentE @ 150 NONAME
-	_ZN13ContentAccess5CData4NewLERKNS_15TVirtualPathPtrENS_7TIntentENS_17TContentShareModeE @ 151 NONAME
-	_ZN13ContentAccess5CData5NewLCER5RFileRK7TDesC16NS_7TIntentE @ 152 NONAME
-	_ZN13ContentAccess5CData5NewLCERKNS_15TVirtualPathPtrENS_7TIntentENS_17TContentShareModeE @ 153 NONAME
-	_ZN13ContentAccess8CContent13OpenContentLCENS_7TIntentE @ 154 NONAME
-	_ZN13ContentAccess8CContent13OpenContentLCENS_7TIntentERK7TDesC16 @ 155 NONAME
-	_ZNK13ContentAccess8CManager9RenameDirERK7TDesC16S3_ @ 156 NONAME
-	_ZTIN13ContentAccess13CAgentManagerE @ 157 NONAME ; #<TI>#
-	_ZTVN13ContentAccess13CAgentManagerE @ 158 NONAME ; #<VT>#
-	_ZN13ContentAccess13CAgentManager9RenameDirERK7TDesC16S3_ @ 159 NONAME
-	_ZN13ContentAccess11CImportFile6CancelEv @ 160 NONAME
-	_ZN13ContentAccess16CAgentImportFile6CancelEv @ 161 NONAME
-	_ZTIN13ContentAccess16CAgentImportFileE @ 162 NONAME ; #<TI>#
-	_ZTVN13ContentAccess16CAgentImportFileE @ 163 NONAME ; #<VT>#
-	_ZN13ContentAccess5CData4NewLER5RFileRK7TDesC16 @ 164 NONAME
-	_ZN13ContentAccess5CData4NewLERKNS_15TVirtualPathPtrENS_17TContentShareModeE @ 165 NONAME
-	_ZN13ContentAccess5CData5NewLCER5RFileRK7TDesC16 @ 166 NONAME
-	_ZN13ContentAccess5CData5NewLCERKNS_15TVirtualPathPtrENS_17TContentShareModeE @ 167 NONAME
-	_ZN13ContentAccess13CAgentManager8CopyFileER5RFileRK7TDesC16 @ 168 NONAME
-	_ZNK13ContentAccess8CManager8CopyFileER5RFileRK7TDesC16 @ 169 NONAME
-	_ZN13ContentAccess10CAgentData4ReadEiR5TDes8iR14TRequestStatus @ 170 NONAME
-	_ZNK13ContentAccess5CData11Read_UnusedEiR5TDes8iR14TRequestStatus @ 171 NONAME
-	_ZTIN13ContentAccess10CAgentDataE @ 172 NONAME ; #<TI>#
-	_ZTVN13ContentAccess10CAgentDataE @ 173 NONAME ; #<VT>#
-	KCafLoadPostProductionAgents @ 174 NONAME DATA 1
-	_ZNK13ContentAccess5CData10ReadCancelER14TRequestStatus @ 175 NONAME
-	_ZN13ContentAccess10CAgentData10ReadCancelER14TRequestStatus @ 176 NONAME
-	_ZN13ContentAccess13CAgentManager12DisplayInfoLENS_12TDisplayInfoER5RFileRK7TDesC16 @ 177 NONAME
-	_ZN13ContentAccess13CAgentManager12GetAttributeEiRiR5RFileRK7TDesC16 @ 178 NONAME
-	_ZN13ContentAccess13CAgentManager15GetAttributeSetERNS_13RAttributeSetER5RFileRK7TDesC16 @ 179 NONAME
-	_ZN13ContentAccess13CAgentManager18GetStringAttributeEiR6TDes16R5RFileRK7TDesC16 @ 180 NONAME
-	_ZN13ContentAccess13CAgentManager21GetStringAttributeSetERNS_19RStringAttributeSetER5RFileRK7TDesC16 @ 181 NONAME
-	_ZN13ContentAccess14CRightsManager22DeleteAllRightsObjectsER5RFileRK7TDesC16 @ 182 NONAME
-	_ZN13ContentAccess19CAgentRightsManager22DeleteAllRightsObjectsER5RFileRK7TDesC16 @ 183 NONAME
-	_ZN13ContentAccess8CManager12DisplayInfoLENS_12TDisplayInfoER5RFileRK7TDesC16 @ 184 NONAME
-	_ZN13ContentAccess8CManager12GetAttributeEiRiR5RFileRK7TDesC16 @ 185 NONAME
-	_ZN13ContentAccess8CManager15GetAttributeSetERNS_13RAttributeSetER5RFileRK7TDesC16 @ 186 NONAME
-	_ZN13ContentAccess8CManager18GetStringAttributeEiR6TDes16R5RFileRK7TDesC16 @ 187 NONAME
-	_ZN13ContentAccess8CManager21GetStringAttributeSetERNS_19RStringAttributeSetER5RFileRK7TDesC16 @ 188 NONAME
-	_ZNK13ContentAccess14CRightsManager11ListRightsLERNS_19RStreamablePtrArrayINS_11CRightsInfoEEER5RFileRK7TDesC16 @ 189 NONAME
-	_ZNK13ContentAccess19CAgentRightsManager11ListRightsLERNS_19RStreamablePtrArrayINS_11CRightsInfoEEER5RFileRK7TDesC16 @ 190 NONAME
-	_ZTIN13ContentAccess19CAgentRightsManagerE @ 191 NONAME
-	_ZTVN13ContentAccess19CAgentRightsManagerE @ 192 NONAME
-	_ZN13ContentAccess11CImportFile16ContentMimeTypeLER5TDes8 @ 193 NONAME
-	_ZN13ContentAccess16CAgentImportFile16ContentMimeTypeLER5TDes8 @ 194 NONAME
-	_ZN13ContentAccess10CAgentData11DataSize64LERx @ 195 NONAME
-	_ZN13ContentAccess10CAgentData6Read64ExR5TDes8iR14TRequestStatus @ 196 NONAME
-	_ZN13ContentAccess10CAgentData6Seek64E5TSeekRx @ 197 NONAME
-	_ZN13ContentAccess5CData11DataSize64LERx @ 198 NONAME
-	_ZNK13ContentAccess5CData4ReadExR5TDes8iR14TRequestStatus @ 199 NONAME
-	_ZNK13ContentAccess5CData6Seek64E5TSeekRx @ 200 NONAME
-	_ZN13ContentAccess10CAgentData4ReadERK6TDesC8R5TDes8 @ 201 NONAME
-	_ZN13ContentAccess10CAgentData4ReadERK6TDesC8R5TDes8R14TRequestStatus @ 202 NONAME
-	_ZN13ContentAccess13CAgentFactory19CreateDataConsumerLERK6TDesC8 @ 203 NONAME
-	_ZN13ContentAccess13CAgentFactory21CreateContentBrowserLERK6TDesC8 @ 204 NONAME
-	_ZN13ContentAccess13CAgentManager12GetAttributeERK6TDesC8iRi @ 205 NONAME
-	_ZN13ContentAccess13CAgentManager15GetAttributeSetERK6TDesC8RNS_13RAttributeSetE @ 206 NONAME
-	_ZN13ContentAccess13CAgentManager18GetStringAttributeERK6TDesC8iR6TDes16 @ 207 NONAME
-	_ZN13ContentAccess13CAgentManager21GetStringAttributeSetERK6TDesC8RNS_19RStringAttributeSetE @ 208 NONAME
-	_ZN13ContentAccess14CAgentResolver12DoRecognizeLERK6TDesC8R5TDes8S5_ @ 209 NONAME
-	_ZN13ContentAccess5CData4NewLERK6TDesC8 @ 210 NONAME
-	_ZN13ContentAccess5CData4NewLERK6TDesC8NS_7TIntentE @ 211 NONAME
-	_ZN13ContentAccess5CData5NewLCERK6TDesC8 @ 212 NONAME
-	_ZN13ContentAccess5CData5NewLCERK6TDesC8NS_7TIntentE @ 213 NONAME
-	_ZN13ContentAccess8CContent4NewLERK6TDesC8 @ 214 NONAME
-	_ZN13ContentAccess8CContent5NewLCERK6TDesC8 @ 215 NONAME
-	_ZNK13ContentAccess13CAgentManager13IsRecognizedLERK6TDesC8 @ 216 NONAME
-	_ZNK13ContentAccess13CAgentManager17RecognizeContentLERK6TDesC8R5TDes8S5_ @ 217 NONAME
-	_ZNK13ContentAccess5CData4ReadERK6TDesC8R5TDes8 @ 218 NONAME
-	_ZNK13ContentAccess5CData4ReadERK6TDesC8R5TDes8R14TRequestStatus @ 219 NONAME
-	_ZNK13ContentAccess8CManager12GetAttributeERK6TDesC8iRi @ 220 NONAME
-	_ZNK13ContentAccess8CManager15GetAttributeSetERK6TDesC8RNS_13RAttributeSetE @ 221 NONAME
-	_ZNK13ContentAccess8CManager18GetStringAttributeERK6TDesC8iR6TDes16 @ 222 NONAME
-	_ZNK13ContentAccess8CManager21GetStringAttributeSetERK6TDesC8RNS_19RStringAttributeSetE @ 223 NONAME
-
--- a/contentmgmt/contentaccessfwfordrm/EABI/cafutils_v2U.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,128 +0,0 @@
-EXPORTS
-	_ZN13ContentAccess7CBitset12InternalizeLER11RReadStream @ 1 NONAME
-	_ZN13ContentAccess7CBitset3SetEi @ 2 NONAME
-	_ZN13ContentAccess7CBitset4NewLERKS0_ @ 3 NONAME
-	_ZN13ContentAccess7CBitset4NewLEi @ 4 NONAME
-	_ZN13ContentAccess7CBitset5NewLCERKS0_ @ 5 NONAME
-	_ZN13ContentAccess7CBitset5NewLCEi @ 6 NONAME
-	_ZN13ContentAccess7CBitset5ResetEv @ 7 NONAME
-	_ZN13ContentAccess7CBitset5UnsetEi @ 8 NONAME
-	_ZN13ContentAccess7CBitset6InvertEv @ 9 NONAME
-	_ZN13ContentAccess7CBitset6SetAllEv @ 10 NONAME
-	_ZN13ContentAccess7CBitset8SetListLEiz @ 11 NONAME
-	_ZN13ContentAccess7CBitsetaSERKS0_ @ 12 NONAME
-	_ZNK13ContentAccess7CBitset12ExternalizeLER12RWriteStream @ 13 NONAME
-	_ZNK13ContentAccess7CBitset5IsSetEi @ 14 NONAME
-	_ZNK13ContentAccess7CBitset7MaxBitsEv @ 15 NONAME
-	_ZNK13ContentAccess7CBitset9IsSetListEiz @ 16 NONAME
-	_ZNK13ContentAccess7CBitseteqERKS0_ @ 17 NONAME
-	_ZN13ContentAccess14CCafMimeHeader12InternalizeLER11RReadStream @ 18 NONAME
-	_ZN13ContentAccess14CCafMimeHeader19AddNonStandardMimeLERK6TDesC8S3_ @ 19 NONAME
-	_ZN13ContentAccess14CCafMimeHeader20SetStandardMimeDataLERKNS_11TMimeFieldsERK6TDesC8 @ 20 NONAME
-	_ZN13ContentAccess14CCafMimeHeader4NewLERK6TDesC8 @ 21 NONAME
-	_ZN13ContentAccess14CCafMimeHeaderD0Ev @ 22 NONAME
-	_ZN13ContentAccess14CCafMimeHeaderD1Ev @ 23 NONAME
-	_ZN13ContentAccess14CCafMimeHeaderD2Ev @ 24 NONAME
-	_ZNK13ContentAccess14CCafMimeHeader12ExternalizeLER12RWriteStream @ 25 NONAME
-	_ZNK13ContentAccess14CCafMimeHeader16StandardMimeDataERKNS_11TMimeFieldsE @ 26 NONAME
-	_ZNK13ContentAccess14CCafMimeHeader19NonStandardMimeDataEi @ 27 NONAME
-	_ZNK13ContentAccess14CCafMimeHeader20NonStandardMimeCountEv @ 28 NONAME
-	_ZNK13ContentAccess14CCafMimeHeader20NonStandardMimeFieldEi @ 29 NONAME
-	_ZTIN13ContentAccess14CCafMimeHeaderE @ 30 NONAME ; #<TI>#
-	_ZTVN13ContentAccess14CCafMimeHeaderE @ 31 NONAME ; #<VT>#
-	_ZTIN13ContentAccess7CBitsetE @ 32 NONAME ; #<TI>#
-	_ZTVN13ContentAccess7CBitsetE @ 33 NONAME ; #<VT>#
-	_ZN13ContentAccess11CRightsInfo4NewLER11RReadStream @ 34 NONAME
-	_ZN13ContentAccess11CRightsInfo4NewLERK7TDesC16S3_iNS_13TRightsStatusE @ 35 NONAME
-	_ZN13ContentAccess12CVirtualPath22GetCombinedUriUniqueIdEv @ 36 NONAME
-	_ZN13ContentAccess12CVirtualPath4NewLER11RReadStream @ 37 NONAME
-	_ZN13ContentAccess12CVirtualPath4NewLERK7TDesC16 @ 38 NONAME
-	_ZN13ContentAccess12CVirtualPath4NewLERK7TDesC16S3_ @ 39 NONAME
-	_ZN13ContentAccess12CVirtualPath4NewLERKNS_15TVirtualPathPtrE @ 40 NONAME
-	_ZN13ContentAccess13RAttributeSet12InternalizeLER11RReadStream @ 41 NONAME
-	_ZN13ContentAccess13RAttributeSet4AddLEi @ 42 NONAME
-	_ZN13ContentAccess13RAttributeSet5CloseEv @ 43 NONAME
-	_ZN13ContentAccess13RAttributeSet8SetValueEiii @ 44 NONAME
-	_ZN13ContentAccess13RAttributeSetC1Ev @ 45 NONAME
-	_ZN13ContentAccess13RAttributeSetC2Ev @ 46 NONAME
-	_ZN13ContentAccess14CDirStreamable4AddLERK6TEntry @ 47 NONAME
-	_ZN13ContentAccess14CDirStreamable4NewLE11RReadStream @ 48 NONAME
-	_ZN13ContentAccess14CDirStreamable4NewLER4CDir @ 49 NONAME
-	_ZN13ContentAccess14CDirStreamable4NewLEv @ 50 NONAME
-	_ZN13ContentAccess14CDirStreamable4SortEj @ 51 NONAME
-	_ZN13ContentAccess14CMetaDataArray4AddLERK6TDesC8S3_ @ 52 NONAME
-	_ZN13ContentAccess14CMetaDataArray4AddLERK7TDesC16S3_ @ 53 NONAME
-	_ZN13ContentAccess14CMetaDataArray4NewLER11RReadStream @ 54 NONAME
-	_ZN13ContentAccess14CMetaDataArray4NewLEv @ 55 NONAME
-	_ZN13ContentAccess14CMetaDataArray5NewLCEv @ 56 NONAME
-	_ZN13ContentAccess15CEmbeddedObject4NewLER11RReadStream @ 57 NONAME
-	_ZN13ContentAccess15CEmbeddedObject4NewLERK7TDesC16RK6TDesC8NS_13TEmbeddedTypeE @ 58 NONAME
-	_ZN13ContentAccess15CEmbeddedObject4NewLERK7TDesC16S3_RK6TDesC8NS_13TEmbeddedTypeE @ 59 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC1ERK7TDesC16 @ 60 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC1ERK7TDesC16S3_ @ 61 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC1ERKS0_ @ 62 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC2ERK7TDesC16 @ 63 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC2ERK7TDesC16S3_ @ 64 NONAME
-	_ZN13ContentAccess15TVirtualPathPtrC2ERKS0_ @ 65 NONAME
-	_ZN13ContentAccess15TVirtualPathPtraSERK7TDesC16 @ 66 NONAME
-	_ZN13ContentAccess15TVirtualPathPtraSERKS0_ @ 67 NONAME
-	_ZN13ContentAccess19RStringAttributeSet12InternalizeLER11RReadStream @ 68 NONAME
-	_ZN13ContentAccess19RStringAttributeSet4AddLEi @ 69 NONAME
-	_ZN13ContentAccess19RStringAttributeSet5CloseEv @ 70 NONAME
-	_ZN13ContentAccess19RStringAttributeSet8SetValueEiRK7TDesC16i @ 71 NONAME
-	_ZN13ContentAccess19RStringAttributeSetC1Ev @ 72 NONAME
-	_ZN13ContentAccess19RStringAttributeSetC2Ev @ 73 NONAME
-	_ZNK13ContentAccess11CRightsInfo10RightsTypeEv @ 74 NONAME
-	_ZNK13ContentAccess11CRightsInfo11DescriptionEv @ 75 NONAME
-	_ZNK13ContentAccess11CRightsInfo12ExternalizeLER12RWriteStream @ 76 NONAME
-	_ZNK13ContentAccess11CRightsInfo12RightsStatusEv @ 77 NONAME
-	_ZNK13ContentAccess11CRightsInfo8UniqueIdEv @ 78 NONAME
-	_ZNK13ContentAccess12CVirtualPath12ExternalizeLER12RWriteStream @ 79 NONAME
-	_ZNK13ContentAccess12CVirtualPath3URIEv @ 80 NONAME
-	_ZNK13ContentAccess12CVirtualPath8UniqueIdEv @ 81 NONAME
-	_ZNK13ContentAccess13RAttributeSet12ExternalizeLER12RWriteStream @ 82 NONAME
-	_ZNK13ContentAccess13RAttributeSet5CountEv @ 83 NONAME
-	_ZNK13ContentAccess13RAttributeSet8GetValueEiRi @ 84 NONAME
-	_ZNK13ContentAccess13RAttributeSetixEi @ 85 NONAME
-	_ZNK13ContentAccess14CDirStreamable12ExternalizeLER12RWriteStream @ 86 NONAME
-	_ZNK13ContentAccess14CDirStreamable5CountEv @ 87 NONAME
-	_ZNK13ContentAccess14CDirStreamableixEi @ 88 NONAME
-	_ZNK13ContentAccess14CMetaDataArray12ExternalizeLER12RWriteStream @ 89 NONAME
-	_ZNK13ContentAccess14CMetaDataArray5CountEv @ 90 NONAME
-	_ZNK13ContentAccess14CMetaDataArray7SearchLERK6TDesC8i @ 91 NONAME
-	_ZNK13ContentAccess14CMetaDataArray7SearchLERK7TDesC16i @ 92 NONAME
-	_ZNK13ContentAccess14CMetaDataArrayixEi @ 93 NONAME
-	_ZNK13ContentAccess15CEmbeddedObject12ExternalizeLER12RWriteStream @ 94 NONAME
-	_ZNK13ContentAccess15CEmbeddedObject4NameEv @ 95 NONAME
-	_ZNK13ContentAccess15CEmbeddedObject4TypeEv @ 96 NONAME
-	_ZNK13ContentAccess15CEmbeddedObject8MimeTypeEv @ 97 NONAME
-	_ZNK13ContentAccess15CEmbeddedObject8UniqueIdEv @ 98 NONAME
-	_ZNK13ContentAccess15TVirtualPathPtr3URIEv @ 99 NONAME
-	_ZNK13ContentAccess15TVirtualPathPtr8UniqueIdEv @ 100 NONAME
-	_ZNK13ContentAccess19RStringAttributeSet12ExternalizeLER12RWriteStream @ 101 NONAME
-	_ZNK13ContentAccess19RStringAttributeSet14GetValueLengthEi @ 102 NONAME
-	_ZNK13ContentAccess19RStringAttributeSet5CountEv @ 103 NONAME
-	_ZNK13ContentAccess19RStringAttributeSet8GetValueEiR6TDes16 @ 104 NONAME
-	_ZNK13ContentAccess19RStringAttributeSetixEi @ 105 NONAME
-	_ZNK13ContentAccess9CMetaData4DataEv @ 106 NONAME
-	_ZNK13ContentAccess9CMetaData5Data8Ev @ 107 NONAME
-	_ZNK13ContentAccess9CMetaData5FieldEv @ 108 NONAME
-	_ZNK13ContentAccess9CMetaData6Field8Ev @ 109 NONAME
-	_ZTIN13ContentAccess11CRightsInfoE @ 110 NONAME ; #<TI>#
-	_ZTIN13ContentAccess12CVirtualPathE @ 111 NONAME ; #<TI>#
-	_ZTIN13ContentAccess14CDirStreamableE @ 112 NONAME ; #<TI>#
-	_ZTIN13ContentAccess14CMetaDataArrayE @ 113 NONAME ; #<TI>#
-	_ZTIN13ContentAccess15CEmbeddedObjectE @ 114 NONAME ; #<TI>#
-	_ZTIN13ContentAccess16CStringAttributeE @ 115 NONAME ; #<TI>#
-	_ZTIN13ContentAccess9CMetaDataE @ 116 NONAME ; #<TI>#
-	_ZTVN13ContentAccess11CRightsInfoE @ 117 NONAME ; #<VT>#
-	_ZTVN13ContentAccess12CVirtualPathE @ 118 NONAME ; #<VT>#
-	_ZTVN13ContentAccess14CDirStreamableE @ 119 NONAME ; #<VT>#
-	_ZTVN13ContentAccess14CMetaDataArrayE @ 120 NONAME ; #<VT>#
-	_ZTVN13ContentAccess15CEmbeddedObjectE @ 121 NONAME ; #<VT>#
-	_ZTVN13ContentAccess16CStringAttributeE @ 122 NONAME ; #<VT>#
-	_ZTVN13ContentAccess9CMetaDataE @ 123 NONAME ; #<VT>#
-	_ZN13ContentAccess10CCAFHelper4NewLEv @ 124 NONAME
-	_ZN13ContentAccess10CCAFHelper5NewLCEv @ 125 NONAME
-	_ZNK13ContentAccess10CCAFHelperclEv @ 126 NONAME
-
Binary file contentmgmt/contentaccessfwfordrm/engineering/dox/multiple DRM file2.gif has changed
--- a/contentmgmt/contentaccessfwfordrm/group/CafUtils.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/group/CafUtils.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -28,11 +28,7 @@
 UID			0x101FD9B8
 VENDORID	0x70000001
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-deffile		cafutils_v2.def
-#else
 deffile		cafutils.def
-#endif
 UNPAGED
 
 SOURCEPATH	../source/cafutils
@@ -48,9 +44,6 @@
 SOURCE		Virtualpathptr.cpp
 SOURCE		dirstreamable.cpp
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-SOURCE		cafhelper.cpp
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 #ifndef REMOVE_CAF1
 // deprecated stuff from CAF 1.0
--- a/contentmgmt/contentaccessfwfordrm/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -21,10 +21,6 @@
  @file
 */
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "../../referencedrmagent/refcafhelper/group/bld.inf"
-#endif
-
 
 PRJ_PLATFORMS
 DEFAULT
@@ -75,10 +71,6 @@
 ../inc/StreamablePtrArray.inl	SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(caf/streamableptrarray.inl)
 ../inc/dirstreamable.h			SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(caf/dirstreamable.h)
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-../inc/cafhelper.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(caf/cafhelper.h)
-../inc/cafhelperinterface.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(caf/cafhelperinterface.h)
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 // ROMKIT includes
 ../inc/caf.iby /epoc32/rom/include/caf.iby
@@ -157,13 +149,6 @@
 ../../referencedrmagent/tcaf/testdata/Audio.content				z:/tcaf/testdata/audio.content
 ../../referencedrmagent/tcaf/testdata/Audiomulti.content			z:/tcaf/testdata/audiomulti.content
 ../../referencedrmagent/tcaf/testdata/notes1.txt				z:/tcaf/testdata/notes1.txt
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-../../referencedrmagent/tcaf/scripts/tcafhelper.script 				z:/tcaf/tcafhelper.script
-../../referencedrmagent/tcaf/scripts/tcafhelper.ini 				z:/tcaf/tcafhelper.ini
-../../referencedrmagent/tcaf/scripts/tcafwmdrmsupport.script 			z:/tcaf/tcafwmdrmsupport.script
-../../referencedrmagent/tcaf/scripts/tcafwmdrmsupport.ini 			z:/tcaf/tcafwmdrmsupport.ini
-../../referencedrmagent/tcaf/testdata/dummywm.asf				z:/tcaf/testdata/dummywm.asf
-#endif  //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 // ROM test iby
 ../inc/caftest.iby 						/epoc32/rom/include/caftest.iby
 
--- a/contentmgmt/contentaccessfwfordrm/group/caf.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/group/caf.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -31,11 +31,7 @@
 UNPAGED
 
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-deffile		caf_v3.def
-#else
 deffile		caf_v2.def
-#endif
 #else
 deffile		caf.def
 #endif
--- a/contentmgmt/contentaccessfwfordrm/group/tcaf.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/group/tcaf.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -46,10 +46,6 @@
 USERINCLUDE		../source/caf
 USERINCLUDE		../inc
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-USERINCLUDE		../../referencedrmagent/refcafhelper/inc
-#endif
-
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
 MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 OS_LAYER_LIBC_SYSTEMINCLUDE
--- a/contentmgmt/contentaccessfwfordrm/inc/agentfactory.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/agentfactory.h	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2003 - 2007,2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2003 - 2007,2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -118,7 +118,7 @@
 		 @param aShareMode The share mode for opening the file containing the content object
 		 @return A pointer to the CAgentData object.
 		 */
-		 virtual CAgentData* CreateDataConsumerL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)  = 0;
+		virtual CAgentData* CreateDataConsumerL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)  = 0;
 
 		/**
 		 Factory function creates a CAgentData object for reading 
@@ -173,26 +173,6 @@
 		*/
 		virtual CAgentRightsManager* CreateRightsManagerL() = 0;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
-		/**
-		Factory function creates a CAgentData object from header data of WMDRM file or stream content
-		for reading/decrypting WMDRM data packets.
-		 
-		@param aHeaderData	Header data of WMDRM file or stream content.
-		@return				A pointer to CAgentData object.
-		*/
-		IMPORT_C virtual CAgentData* CreateDataConsumerL(const TDesC8& aHeaderData);
-		
-		/**
-		Factory function creates a CAgentContent object from header data of WMDRM file or stream content
-		for browsing WMDRM content.
-		 
-		@param aHeaderData	Header data of WMDRM file or stream content.
-		@return 			A pointer to CAgentContent object.
-		*/
-		IMPORT_C virtual CAgentContent* CreateContentBrowserL(const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 	private:
 		// ECOM session key. This is set by 
 		// REComSession::CreateImplementationL() during construction
--- a/contentmgmt/contentaccessfwfordrm/inc/agentinterface.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/agentinterface.h	Wed Sep 01 12:40:57 2010 +0100
@@ -377,37 +377,6 @@
 		IMPORT_C virtual TInt Read64(TInt64 aPos, TDes8& aDes, TInt aLength, TRequestStatus& aStatus);
 #endif //SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		/**
-		Decrypts the encrypted input data packet.Default implementation of this method returns KErrCANotSupported.
-		
-		@param aEncryptedInputDataPacket	Buffer descriptor containing the encrypted data packet supplied by client application. 
-		@param aDecryptedOutputDataPacket	Buffer descriptor supplied by the client application into which the decrypted data is written.
-											The length of this descriptor must be equal to or greater than the input packet.
-		@return								KErrNone if successful or KErrInsuffcientDataPacketLength, if a part of input data packet
-											is provided for decryption.Otherwise one of the CAF error codes defined in \c caferr.h  or 
-		 									one of the other system-wide error.
-		@capability 						DRM Access to DRM protected content is not permitted for processes without DRM capability.
-											Access to unprotected content is unrestricted.
-		*/
-		IMPORT_C virtual TInt Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket);
-		
-		
-		/**
-		Decrypts the encrypted input data packet asynchronously.Default implementation of this method returns KErrCANotSupported.
-	
-		@param aEncryptedInputDataPacket	Buffer descriptor containing the encrypted data packet supplied by client application. 
-		@param aDecryptedOutputDataPacket	Buffer descriptor supplied by the client application into which the decrypted data is written.
-											The length of this descriptor must be equal to or greater than the input packet.
-		@param aStatus						Asynchronous request status. On completion this will contain one of the following error codes:
-											KErrNone if the data packet was successfully decrypted or KErrInsuffcientDataPacketLength, if a part of input data packet
-											is provided for decryption.Otherwise one of the CAF error codes defined in \c caferr.h  or 
-		 									one of the other system-wide error codes.
-		@capability 						DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										    Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C virtual void Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		};
 
 	/**	Defines the agent interface allowing clients to browse the objects 
@@ -1455,95 +1424,6 @@
 		*/
 		IMPORT_C virtual TInt CopyFile(RFile& aSource, const TDesC& aDestination);
 		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		/** 
-		Identifies whether or not the WMDRM content is handled by this agent using the header
-		data of WMDRM file or stream content.
-		
-		The agent should leave only if a temporary or permanent condition prevents it from knowing
-		whether it can detect the content's type.
-
-		@param aHeaderData	Header data of WMDRM file or stream content.
-	    @return ETrue 		If this agent recognises the given content. 
-		*/
-		IMPORT_C virtual TBool IsRecognizedL(const TDesC8& aHeaderData) const;
-		
-		/** 
-		 Determines whether or not the WMDRM content is recognized by this agent. 
-		 If it is recognized, the agent will populate the file and content mime 
-		 type. 
-		 
-		 The agent should leave only if a temporary or permanent condition prevents it from 
-		 detecting content's type.
-
-		 @param aHeaderData			Header data of WMDRM content.
-		 @param aFileMimeType 		Used to return the mime type of the content to the caller.
-		 @param aContentMimeType	Used to return the mime type of the content embedded within the file to the caller. This field should be zero length if there is no embedded content.
-	     @return					Whether or not the content was recognized.
- 		 @return ETrue 				If the content is handled by this agent. The aFileMimeType and aContentMimeType were updated.
-		 @return EFalse 			If the content was not recognized by this agent.
-		 */
-		IMPORT_C virtual TBool RecognizeContentL(const TDesC8& aHeaderData, TDes8& aFileMimeType, TDes8& aContentMimeType) const;
-		
-		/**  Get an attribute from WMDRM content.
-	
-		@param aHeaderData	Header data of WMDRM content.
-		@param aAttribute	The attribute to retrieve from ContentAccess::TAttribute.
-		@param aValue		Used to return the value of the attribute.
-		
-		@return				KErrNone if the attribute value was updated.
-		@return				KErrCANotSupported if the requested attribute is not supported for this content.
-		@return				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-							other system-wide error codes for any other errors.
-		@capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C virtual TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue);
-		
-		/** Get a set of attributes from WMDRM content.
-
-		@param aHeaderData		Header data of WMDRM content.
-		@param aAttributeSet	The set of attributes to query and update.
-		
-		@return 				KErrNone if the attribute set was updated successfully.
-		@return 				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-								other system-wide error codes for any other errors.
-		@capability DRM 		Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C virtual TInt GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet);
-		
-		
-		/**  Get text string attributes or meta-data from WMDRM content.
-
-		@param aHeaderData	Header data of WMDRM content.
-		@param aAttribute	The attribute to retrieve from ContentAccess::TStringAttribute.
-		@param aValue		Used to return the value of the attribute.
-		
-		@return				KErrNone if the attribute was retrieved successfully.
-		@return				KErrNotFound if the content object does not exist.
-		@return				KErrCANotSupported if the requested attribute does not apply to this content object.
-		@return				KErrOverflow if the buffer was not large enough to return the result.
-		@return				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-							other system-wide error codes for any other errors.
-		@capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C virtual TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue);
-		
-		/** Used to obtain a set of string attributes from WMDRM content.
-
-		@param aStringAttributeSet	The set of attributes to query and update.
-		@param aHeaderData			Header data of WMDRM content.
-	
-		@return 					KErrNone if the attribute set was updated successfully.
-		@return 					KErrNotFound if the object with the given virtual path was not found.
-		@return 					Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-									other system-wide error codes for any other errors.
-		@capability DRM 			Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C virtual TInt GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet);
-
-
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		
 		};
 
 		
--- a/contentmgmt/contentaccessfwfordrm/inc/attribute.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/attribute.h	Wed Sep 01 12:40:57 2010 +0100
@@ -86,20 +86,6 @@
 		 @released
 		 */
 		static CAttribute* NewLC(TUid aAgentUid, const TDesC& aURI, TContentShareMode aShareMode=EContentShareReadOnly);
-
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
-		/**
-		 Constructs a new attribute given an agent and WMDRM header data.
-		 
-		 @param aAgentUid	The agent Uid
-		 @param aHeaderData	Header data of WMDRM content
-		 @return			The new CAttribute.
-		 
-		 @internalComponent
-		 @released		 
-		 */
-		static CAttribute* NewLC(TUid aAgentUid, const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		
 		virtual ~CAttribute();
 
@@ -147,10 +133,6 @@
 		void ConstructL(TUid aAgentUid, RFile& aFile);
 		void ConstructL(TUid aAgentUid, const TDesC& aURI, TContentShareMode aShareMode=EContentShareReadOnly);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		void ConstructL(TUid aAgentUid, const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
 		CAttribute();
 				
 	private:
--- a/contentmgmt/contentaccessfwfordrm/inc/caferr.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/caferr.h	Wed Sep 01 12:40:57 2010 +0100
@@ -137,18 +137,4 @@
 */ 
 const TInt KErrCACorruptContent = -17459;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-/**
-
-This error is returned when only a part of encrypted input packet provided for decryption.
-*/
-const TInt KErrInsufficientDataPacketLength = -17460;
-
-/**
-
-This error is returned when only a part of encrypted input packet provided for decryption.
-*/
-const TInt KErrMissingWmdrmHeaderData = -17461;
-
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 #endif // __CAFERR_H__
--- a/contentmgmt/contentaccessfwfordrm/inc/cafhelper.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/** 
-@file 
-
-@publishedPartner
-@released
-*/
-
-#ifndef __CAFHELPER_H__
-#define __CAFHELPER_H__
-
-#include <e32base.h>
-#include <f32file.h>
-
-namespace ContentAccess
-	{
-	//forward declaration
-	class MCAFHelperInterface;
-	
-	/**
-	 CAF client application can use this class to load cafhelper.dll and get access to entry function pointer
-	 of the dll,using which the appropriate error handling APIs can be called.
-
-	 @publishedPartner
-	 @released
-	 */
-	 	
-	NONSHARABLE_CLASS(CCAFHelper) : public CBase
-		{
-	public:
-		
-		/** 
-		 Constructs a new CCAFHelper object.
-		 
-		 @return 		A pointer to an instance of CCAFHelper class.
-		 @capability	All -TCB. 
-		 */
-		 
-		IMPORT_C static CCAFHelper* NewL();
-		
-		/** 
-		 Constructs a new CCAFHelper object and puts a pointer to the new object 
-	 	 onto the cleanup stack..
-		 
-		 @return		A pointer to an instance of CCAFHelper class.
-		 @capability	All -TCB. 
-		 */
-		 
-		IMPORT_C static CCAFHelper* NewLC();
-		
-		/**
-		Accessor method which returns an entry point function pointer of cafhelper.dll,
-		using which the error handling APIs can be accessed.
-		
-		@return		Reference to an instance of MCafHelperInterface class.
-		@capability	All -TCB. 
-		*/
-		
-		IMPORT_C MCAFHelperInterface& operator()() const;
-		
-		// virtual destructor.		
-		virtual ~CCAFHelper(); 
-		
-			
-		private:
-		
-		CCAFHelper();
-		void ConstructL();
-		
-		private:
-		
-		RLibrary iLibrary;
-		MCAFHelperInterface* iHelper;
-		};
-
-	} // namespace ContentAccess
-	
-#endif // __CAFHELPER_H__
-
--- a/contentmgmt/contentaccessfwfordrm/inc/cafhelperinterface.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,91 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/** 
-@file 
-
-@publishedPartner
-@released
-*/
-
-#ifndef __CAFHELPERINTERFACE_H__
-#define __CAFHELPERINTERFACE_H__
-
-#include <e32base.h>
-#include <f32file.h>
-
-namespace ContentAccess
-	{
-	
-	// UID for CAF Helper Dll.
-	const TUid KCAFHelperInterfaceUID = {0x20024480};
-	
-	_LIT(KCAFHelperLibraryName, "cafhelper.dll");
-	
-	/**
-	 This interface defined by UID KCAFHelperInterfaceUID provides APIs to handle 
-	 CAF error messages when CAF client application is not interested /unable to handle 
-	 CAF errors.UI/device manufacturer will provide error handling functionality by 
-	 implementing this interface class as a dll which is enforced to be named as cafhelper.dll.
-
-	 @publishedPartner
-	 @released
-	 */
-	 	
-	class MCAFHelperInterface
-		{
-	public:
-		
-		/**  
-		 This method handles the CAF error received for a given file.
-		 @param aError		One of the CAF errors. 
-		 @param aFileName 	File name or file URI for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/
-		virtual TInt HandleCAFErrorL(TInt aError, const TDesC& aFileName) = 0;
-		
-		/**  
-		 This method handles the CAF error received for a given file .
-		 @param aError		One of the CAF errors. 
-		 @param aFileHandle File handle for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/	
-		virtual TInt HandleCAFErrorL(TInt aError, RFile& aFileHandle) = 0;
-		
-		/**  
-		 This method handles the CAF error received for WMDRM content .
-		 @param aError		One of the CAF errors. 
-		 @param aHeaderData The header data of the content for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/
-		virtual TInt HandleCAFErrorL(TInt aError, const TDesC8& aHeaderData) = 0;
-		
-		virtual void Release() = 0;
-		
-		};
-		
-	} // namespace ContentAccess
-	
-#endif // __CAFHELPERINTERFACE_H__
-
--- a/contentmgmt/contentaccessfwfordrm/inc/caftest.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/caftest.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -72,11 +72,4 @@
 data = DATAZ_\tcaf\testdata\audiomulti.content	tcaf\testdata\audiomulti.content
 data = DATAZ_\tcaf\testdata\notes1.txt			tcaf\testdata\notes1.txt
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-data = DATAZ_\tcaf\testdata\dummywm.asf			tcaf\testdata\dummywm.asf
-data = DATAZ_\tcaf\tcafwmdrmsupport.script		tcaf\tcafwmdrmsupport.script
-data = DATAZ_\tcaf\tcafwmdrmsupport.ini			tcaf\tcafwmdrmsupport.ini
-data = DATAZ_\tcaf\tcafhelper.script			tcaf\tcafhelper.script
-data = DATAZ_\tcaf\tcafhelper.ini			tcaf\tcafhelper.ini
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 #endif
--- a/contentmgmt/contentaccessfwfordrm/inc/content.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/content.h	Wed Sep 01 12:40:57 2010 +0100
@@ -165,30 +165,6 @@
 		*/
 		IMPORT_C static CContent* NewL(RFile& aFile);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
-		/** 
-		 Constructs a new CContent object.
-
-  		 @param aHeaderData	Header data of WMDRM file/stream content. 
-		 @return 			CContent object.
-		 @leave 			KErrMissingHeaderData if the header data is NULL or one of the CAF error codes defined in caferr.h  
-		 					or one of the system-wide error codes for any other errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-	 	 */
-		IMPORT_C static CContent* NewL(const TDesC8& aHeaderData);
-		
-		/** 
-		 Constructs a new CContent object.
-  		 
-  		 @param aHeaderData	Header data of WMDRM file/stream content.  
-		 @return 			CContent object.
-		 @leave 			KErrMissingHeaderData if the header data is NULL or one of the CAF error codes defined in caferr.h  or one of the 
-							system-wide error codes for any other errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		 */
-		IMPORT_C static CContent* NewLC(const TDesC8& aHeaderData);
-		
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 		/** destructor */
 		virtual ~CContent();
@@ -991,34 +967,6 @@
 		CContent(); 
 		void ConstructL(RFile& aFile); 
 		void ConstructL(const TDesC& aURI, TContentShareMode aShareMode); 
-		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		void ConstructL(const TDesC8& aHeaderData);
-
-		/**
-		Create a CData object for reading WMDRM content.
-		
-		@param	aIntent		The intended use of the content.
-		@param	aHeaderData	Header data of WMDRM file/stream content.
-		@return				CData object.
-		@leave 				One of the CAF error codes defined in caferr.h  or one of the system-wide error codes for any errors.
-		@capability DRM 	Access to DRM agents is not permitted for processes without DRM capability.
-		*/
-		
-		CData* OpenContentL(TIntent aIntent, const TDesC8& aHeaderData);
-		
-		/**
-		Create a CData object for reading WMDRM content.
-		
-		@param	aIntent		The intended use of the content.
-		@param	aHeaderData	Header data of WMDRM file/stream content.
-		@return				CData object.
-		@leave 				One of the CAF error codes defined in caferr.h  or one of the system-wide error codes for any errors.
-		@capability DRM 	Access to DRM agents is not permitted for processes without DRM capability.
-		*/
-		CData* OpenContentLC(TIntent aIntent, const TDesC8& aHeaderData);
-		
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 	private:	
 	
@@ -1052,10 +1000,6 @@
 		RFile iFile;
 #endif //SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		HBufC8* iHeaderData;
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 		};
 
 #include <caf/content.inl>
--- a/contentmgmt/contentaccessfwfordrm/inc/data.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/data.h	Wed Sep 01 12:40:57 2010 +0100
@@ -273,74 +273,6 @@
 		 */
 		static CData* NewLC(TUid aAgentUid, RFile& aFile, const TDesC& aUniqueId, TIntent aIntent);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		
-		/** 
-		 Creates a new CData object. 
-		 @param aHeaderData				Header data of WMDRM file/stream content. 
-		 @return 						CData object.
-		 @leave							One of the CAF error codes defined in caferr.h or one of the 
-										system-wide error for any other errors.
-		 @capability 					DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										Access to unprotected content is unrestricted.
-		*/
-			
-		IMPORT_C static CData* NewL(const TDesC8& aHeaderData);
-		
-		/** 
-		 Creates a new CData object. 
-		 @param aHeaderData				Header data of WMDRM file/stream content.
-		 @param aIntent					The intended use of the content.
-		 @return 						CData object.
-		 @leave							One of the CAF error codes defined in caferr.h or one of the 
-										system-wide error for any other errors.
-		 @capability 					DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										Access to unprotected content is unrestricted.
-		*/		
-		
-		IMPORT_C static CData* NewL(const TDesC8& aHeaderData, TIntent aIntent);
-		
-		/** 
-		 Creates a new CData object. 
-		 @param aHeaderData				Header data of WMDRM file/stream content. 
-		 @return 						CData object.
-		 @leave							One of the CAF error codes defined in caferr.h or one of the 
-										system-wide error for any other errors.
-		 @capability 					DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										Access to unprotected content is unrestricted.
-		*/
-		
-		IMPORT_C static CData* NewLC(const TDesC8& aHeaderData);
-		
-		/** 
-		 Creates a new CData object. 
-		 @param aHeaderData				Header data of WMDRM file/stream content.
-		 @param aIntent					The intended use of the content. 
-		 @return 						CData object.
-		 @leave							One of the CAF error codes defined in caferr.h or one of the 
-										system-wide error for any other errors.
-		 @capability 					DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										Access to unprotected content is unrestricted.
-		*/
-		
-		IMPORT_C static CData* NewLC(const TDesC8& aHeaderData, TIntent aIntent);
-		
-		/** 
-		 Creates a new CData object.
-		 @param	aAgentUid				UID of an agent which supports this content. 
-		 @param aHeaderData				Header data of WMDRM file/stream content.
-		 @param aIntent					The intended use of the content.
-		 @return 						CData object.
-		 @leave							One of the CAF error codes defined in caferr.h or one of the 
-										system-wide error for any other errors.
-		 @capability 					DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										Access to unprotected content is unrestricted.
-		 
-		*/
-		
-		static CData* NewLC(TUid aAgentUid, const TDesC8& aHeaderData, TIntent aIntent);
-		
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 		/** destructor */
 		virtual ~CData();
@@ -809,37 +741,6 @@
 		IMPORT_C TBool GetMimeTypeL(TDes8& aMimeType) const;
 #endif	// REMOVE_CAF1
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		/**
-		Decrypts the encrypted input data packet.
-		
-		@param aEncryptedInputDataPacket	Buffer descriptor containing the encrypted data packet supplied by client application. 
-		@param aDecryptedOutputDataPacket	Buffer descriptor supplied by the client application into which the decrypted data is written.
-											The length of this descriptor must be equal to or greater than the input packet.
-		@return								KErrNone if successful.KErrInsufficientDataPacketLength if a part of input packet is provided,
-											otherwise one of the CAF error codes defined in \c caferr.h  or 
-		 									one of the other system-wide error codes.
-		@capability 						DRM Access to DRM protected content is not permitted for processes without DRM capability.
-											Access to unprotected content is unrestricted.
-		*/
-
-		IMPORT_C TInt Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket) const;
-		
-		/**
-		Decrypts the encrypted input data packet asynchronously.
-		@param aEncryptedInputDataPacket	Buffer descriptor containing the encrypted data packet supplied by client application. 
-		@param aDecryptedOutputDataPacket	Buffer descriptor supplied by the client application into which the decrypted data is written.
-											The length of this descriptor must be equal to or greater than the input packet.
-		@param aStatus						Asynchronous request status. On completion this will contain one of the following error codes:
-											KErrNone if the data packet was successfully decrypted.KErrInsufficientDataPacketLength if a 
-											part of input packet is provided, otherwise one of the CAF error codes defined in \c caferr.h or 
-		 									one of the other system-wide error codes.
-		@capability 						DRM Access to DRM protected content is not permitted for processes without DRM capability.
-										    Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C void Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus) const;
-
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	
 	private:
 		CData();
@@ -853,15 +754,6 @@
 		void ConstructL(TUid aAgentUid, RFile& aFile, const TDesC& aUniqueId);
 		void ConstructL(TUid aAgentUid, const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode); 
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		
-		void ConstructL(TUid aAgentUid, const TDesC8& aHeaderData, TIntent aIntent);
-		void ConstructL(const TDesC8& aHeaderData);
-		void ConstructL(const TDesC8& aHeaderData, TIntent aIntent);
-		void ConstructL(TUid aAgentUid, const TDesC8& aHeaderData);
-		
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 		/*
 		 * This is the obselete 32bit Read and replaced by its 64bit counterpart
--- a/contentmgmt/contentaccessfwfordrm/inc/manager.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/inc/manager.h	Wed Sep 01 12:40:57 2010 +0100
@@ -690,66 +690,6 @@
 		IMPORT_C static void DeleteFileL (const TDesC &aFileName);
 #endif // REMOVE_CAF1
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-		/**  Get an attribute from WMDRM content.
-	
-		@param aAttribute	The attribute to retrieve, from ContentAccess::TAttribute.
-		@param aValue		Used to return the value of the attribute.
-		@param aHeaderData	Header data of WMDRM content.
-		@return				Whether the attribute value was updated.
-		@return				KErrNone if the attribute value was updated.
-		@return				KErrCANotSupported if the requested attribute is not supported for this content.
-		@return				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-							other system-wide error codes for any other errors.
-		@capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const;
-		
-		/** Get a set of attributes from WMDRM content.
-
-		@param aAttributeSet	The set of attributes to query and update.
-		@param aHeaderData		Header data of WMDRM content.
-		@return 				Whether the attribute set was updated.
-		@return 				KErrNone if the attribute set was updated successfully.
-		@return 				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-								other system-wide error codes for any other errors.
-		@capability DRM 		Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C TInt GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet) const;
-		
-		
-		/**  Get text string attributes or meta-data from WMDRM content.
-
-		@param aAttribute	The attribute to retrieve, from ContentAccess::TStringAttribute.
-		@param aValue		Used to return the value of the attribute.
-		@param aHeaderData	Header data of WMDRM content.
-		@return				Whether the value was updated.
-		@return				KErrNone if the attribute was retrieved successfully.
-		@return				KErrNotFound if the content object does not exist.
-		@return				KErrCANotSupported if the requested attribute does not apply to this content object.
-		@return				KErrOverflow if the buffer was not large enough to return the result.
-		@return				Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-							other system-wide error codes for any other errors.
-		@capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const;
-		
-		/** Used to obtain a set of string attributes from WMDRM content.
-
-		@param aStringAttributeSet	The set of attributes to query and update.
-		@param aHeaderData			Header data of WMDRM content.
-		@return 					Whether the string attribute set was updated.
-		@return 					KErrNone if the attribute set was updated successfully.
-		@return 					KErrNotFound if the object with the given virtual path was not found.
-		@return 					Otherwise one of the other CAF error codes defined in \c caferr.h  or one of the 
-									other system-wide error codes for any other errors.
-		@capability DRM 			Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted. 
-		*/
-		IMPORT_C TInt GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet) const;
-
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 	private:
 		CManager();
 		void ConstructL();
@@ -783,13 +723,6 @@
 		void DoCancelNotifyStatusChangeL(const TDesC& aURI, TRequestStatus& aStatus);
 		void DoSetPropertyL(TAgentProperty aProperty, TInt aValue);
 		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		void DoGetAttributeL(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const;
-		void DoGetAttributeSetL(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet) const;
-		void DoGetStringAttributeL(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const;
-		void DoGetStringAttributeSetL(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet) const;	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
 	private:
 		// Holds instances of all the agents
 		CAgentResolver* iResolver;
--- a/contentmgmt/contentaccessfwfordrm/source/caf/Agentfactory.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/Agentfactory.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -122,64 +122,4 @@
 	User::Leave(KErrCANotSupported);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
-EXPORT_C TInt CAgentData::Read(const TDesC8& /*aEncryptedInputDataPacket*/, TDes8& /*aDecryptedOutputDataPacket*/)
-	{
- 	return KErrCANotSupported;
- 	}
- 	
-EXPORT_C void CAgentData::Read(const TDesC8& /*aEncryptedInputDataPacket*/, TDes8& /*aDecryptedOutputDataPacket*/, TRequestStatus& aStatus)
- 	{
- 	TRequestStatus* status = &aStatus;
-  	User::RequestComplete(status, KErrCANotSupported);
- 	}
- 	
-EXPORT_C TBool CAgentManager::IsRecognizedL(const TDesC8& /*aHeaderData*/) const
- 	{
-  	return EFalse;
- 	}
- 	
-EXPORT_C TBool CAgentManager::RecognizeContentL(const TDesC8& /*aHeaderData*/, TDes8& aFileMimeType, TDes8& aContentMimeType) const
-	{
-	aFileMimeType.Copy(KNullDesC8());
-	aContentMimeType.Copy(KNullDesC8());
- 	return EFalse;
-	}
-	
-EXPORT_C TInt CAgentManager::GetAttribute(const TDesC8& /*aHeaderData*/, TInt /*aAttribute*/, TInt& /*aValue*/)
-	{
-	return KErrCANotSupported;
-	}
 
-EXPORT_C TInt CAgentManager::GetAttributeSet(const TDesC8& /*aHeaderData*/, RAttributeSet& /*aAttributeSet*/)
-	{
-	return KErrCANotSupported;
-	}
-	
-EXPORT_C TInt CAgentManager::GetStringAttribute(const TDesC8& /*aHeaderData*/, TInt /*aAttribute*/, TDes& /*aValue*/)
-	{
-	return KErrCANotSupported;
-	}
-	
-EXPORT_C TInt CAgentManager::GetStringAttributeSet(const TDesC8& /*aHeaderData*/, RStringAttributeSet& /*aStringAttributeSet*/)
-	{
-	return KErrCANotSupported;
-	}
- 	
-EXPORT_C CAgentData* CAgentFactory::CreateDataConsumerL(const TDesC8& /*aHeaderData*/)
- 	{
- 	User::Leave(KErrCANotSupported);
- 	// cannot reach here. The return statement is added to avoid warning.
- 	return NULL;
-  	}
- 		
-EXPORT_C CAgentContent* CAgentFactory::CreateContentBrowserL(const TDesC8& /*aHeaderData*/)
- 	{
- 	User::Leave(KErrCANotSupported);
- 	// cannot be reach here . The return statement is added to avoid warning.
- 	return NULL;
- 	}
- 	
-
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/attribute.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -48,16 +48,6 @@
 	return self;
 	}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-CAttribute* CAttribute::NewLC(TUid aAgentUid, const TDesC8& aHeaderData)
-	{
-	CAttribute* self = new(ELeave) CAttribute();
-	CleanupStack::PushL(self);
-	self->ConstructL(aAgentUid, aHeaderData);
-	return self;
-	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 CAttribute::CAttribute()
 	{
 	}
@@ -94,18 +84,6 @@
 	iResponseSet = CBitset::NewL(static_cast<TInt>(KAttrTop));
     }
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void CAttribute::ConstructL(TUid aAgentUid, const TDesC8& aHeaderData)
-	{
-	// create a agent factory implementation (pseudo ECOM handle)
-	iAgentFactory = CAgentFactory::NewL(aAgentUid);
-	iAgentContent = iAgentFactory->CreateContentBrowserL(aHeaderData);
-
-	iQuerySet = CBitset::NewL(static_cast<TInt>(KAttrTop));
-	iResponseSet = CBitset::NewL(static_cast<TInt>(KAttrTop));
-    }
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 EXPORT_C void CAttribute::Reset()
 	{
 	iQuerySet->Reset();
--- a/contentmgmt/contentaccessfwfordrm/source/caf/content.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/content.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -75,24 +75,6 @@
 	return self;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-EXPORT_C CContent* CContent::NewLC(const TDesC8& aHeaderData) 
-	{
-	CContent* self = new(ELeave) CContent();
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData);
-	return self;
-	}
-
-EXPORT_C CContent* CContent::NewL(const TDesC8& aHeaderData) 
-	{
-	CContent* self=CContent::NewLC(aHeaderData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-	
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 CContent::CContent() : iDefaultVirtualPath(KNullDesC(), KDefaultContentObject())
 	{ 
@@ -108,10 +90,6 @@
 		delete iVirtualPath;
 		}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	delete iHeaderData;
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
 	// Finished with agent, this closes ECOM handle
 	delete iAgentFactory;
 	REComSession::FinalClose();
@@ -189,35 +167,6 @@
 	CleanupStack::PopAndDestroy(2, resolver); // actualUri
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-void CContent::ConstructL(const TDesC8& aHeaderData) 
-	{
-	if(aHeaderData.Length() <= 0)
-		{
-		User::Leave(KErrMissingWmdrmHeaderData);
-		}
-	
-	iHeaderData = aHeaderData.AllocL();
-	
-	CAgentResolver* resolver = CAgentResolver::NewLC(EFalse);
-	
-	// Find the agent who handles the file
-	CAgentInfo& agentInfo = resolver->ResolveFileL(aHeaderData);
-
-	// copy the agent name and Uid
-	iAgent = agentInfo.Agent();
-
-	// Construct the agent factory (ECOM handle)
-	iAgentFactory = CAgentFactory::NewL(iAgent.ImplementationUid());
-	// Construct the CAgentContent object
-	iAgentContent = iAgentFactory->CreateContentBrowserL(aHeaderData);
-
-	// Finished with resolver (and the agentInfo object it owns)
-	CleanupStack::PopAndDestroy(resolver); 
-	}
-
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 EXPORT_C TInt CContent::OpenContainer(const TDesC &aUniqueId) 
 	{
@@ -351,26 +300,12 @@
 
 EXPORT_C CData* CContent::OpenContentL(TIntent aIntent)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData != NULL)
-		return OpenContentL(aIntent, *iHeaderData);
-    else
-		return OpenContentL(aIntent, iDefaultVirtualPath.UniqueId());
-#else
 	return OpenContentL(aIntent, iDefaultVirtualPath.UniqueId());
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
 
 EXPORT_C CData* CContent::OpenContentLC(TIntent aIntent)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData != NULL)
-		return OpenContentLC(aIntent, *iHeaderData);
-	else
-		return OpenContentLC(aIntent, iDefaultVirtualPath.UniqueId());
-#else
 	return OpenContentLC(aIntent, iDefaultVirtualPath.UniqueId());
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
 
 EXPORT_C CData* CContent::OpenContentL(TIntent aIntent, const TDesC &aUniqueId)
@@ -395,22 +330,6 @@
 		}
 	}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-CData* CContent::OpenContentL(TIntent aIntent, const TDesC8& aHeaderData)
-	{
-	CData* data = OpenContentLC(aIntent, aHeaderData);
-	CleanupStack::Pop(data);
-	return data;
-	}
-
-CData* CContent::OpenContentLC(TIntent aIntent, const TDesC8& aHeaderData)
-	{
-	return CData::NewLC(iAgent.ImplementationUid(), aHeaderData, aIntent);
-	}
-	
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 EXPORT_C const TAgent& CContent::Agent() const
 	{
 	// The agent handling this content
@@ -443,39 +362,6 @@
 	return NewAttributeL(aPreloaded, EContentShareReadOnly);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-EXPORT_C CAttribute* CContent::NewAttributeL(TBool aPreloaded, TContentShareMode aShareMode)
-	{
-	CAttribute* attr = NULL;
-	
-	if(iVirtualPath)
-		{
-		// if we were opened with a file name
-		attr = CAttribute::NewLC(iAgent.ImplementationUid(), iDefaultVirtualPath.URI(), aShareMode);
-		}
-	else if(iHeaderData)
-		{
-		attr = CAttribute::NewLC(iAgent.ImplementationUid(), *iHeaderData);
-		}
-	else
-		{
-		// if we were opened with a file handle 
-		attr = CAttribute::NewLC(iAgent.ImplementationUid(), iFile);
-		}
-
-	// If aPreloaded is set, query the agent immediately for all the attributes
-	if (aPreloaded)
-		{
-		attr->QuerySet().SetAll();
-		attr->GetL();
-		}
-
-	CleanupStack::Pop(attr);
-	return attr;
-	}
-
-#else
-
 EXPORT_C CAttribute* CContent::NewAttributeL(TBool aPreloaded, TContentShareMode aShareMode)
 	{
 	CAttribute* attr = NULL;
@@ -502,8 +388,6 @@
 	return attr;
 	}
 
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 #endif // REMOVE_CAF1
 
 // DLL entry point - only for EKA1
--- a/contentmgmt/contentaccessfwfordrm/source/caf/data.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/data.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -111,47 +111,6 @@
 	return self;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-EXPORT_C CData* CData::NewL(const TDesC8& aHeaderData)
-	{
-	CData* self = CData::NewLC(aHeaderData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-		
-EXPORT_C CData* CData::NewL(const TDesC8& aHeaderData, TIntent aIntent)
-	{
-	CData* self = CData::NewLC(aHeaderData, aIntent);
-	CleanupStack::Pop(self);
-	return self;
-	}
-		
-EXPORT_C CData* CData::NewLC(const TDesC8& aHeaderData)
-	{
-	CData* self = new (ELeave) CData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData);
-	return self;
-	}
-		
-EXPORT_C CData* CData::NewLC(const TDesC8& aHeaderData, TIntent aIntent)
-	{
-	CData* self = new (ELeave) CData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData, aIntent);
-	return self;
-	}
-		
-CData* CData::NewLC(TUid aAgentUid, const TDesC8& aHeaderData, TIntent aIntent)
-	{
-	CData* self = new (ELeave) CData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aAgentUid, aHeaderData, aIntent);
-	return self;
-	}
-
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 CData::CData()
 	{ 
@@ -291,49 +250,6 @@
 	iAgentData = iAgentFactory->CreateDataConsumerL(aFile, aUniqueId);
   	}
   
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-  	
-void CData::ConstructL(const TDesC8& aHeaderData)
-	{
-	// Find the agent who handles the file
-	CAgentResolver* resolver = CAgentResolver::NewLC(EFalse);
-	CAgentInfo& agentInfo = resolver->ResolveFileL(aHeaderData);
-	
-	// Figure out the Uid of the agent
-	TUid agentUid = agentInfo.Agent().ImplementationUid();
-	CData::ConstructL(agentUid, aHeaderData);
-	
-	// Cleanup resolver after creating CData to unnecessary 
-	// unloading and loading of agent plug-ins
-	CleanupStack::PopAndDestroy(resolver); 
-	}
-
-void CData::ConstructL(const TDesC8& aHeaderData, TIntent aIntent)
-	{
-	CData::ConstructL(aHeaderData);
-	
-	// Ensure that client's intent is possible
-	User::LeaveIfError(iAgentData->EvaluateIntent(aIntent));
-	}
-	
-void CData::ConstructL(TUid aAgentUid, const TDesC8& aHeaderData)
-	{
-	iAgentUid = aAgentUid;
-	
-	iAgentFactory = CAgentFactory::NewL(iAgentUid);
-	// create an instance of agent's CAgentStreamData.
-	iAgentData = iAgentFactory->CreateDataConsumerL(aHeaderData);
-	}
-
-void CData::ConstructL(TUid aUid, const TDesC8& aHeaderData, TIntent aIntent)
-	{
-	CData::ConstructL(aUid, aHeaderData);
-	
-	// Ensure that client's intent is possible
-	User::LeaveIfError(iAgentData->EvaluateIntent(aIntent));
-	}
-	
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	
 EXPORT_C void CData::DataSizeL(TInt& aSize)
 	{
@@ -402,20 +318,6 @@
 	iAgentData->ReadCancel(aStatus);
 	}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-EXPORT_C TInt CData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputPacket) const
-	{
-	return iAgentData->Read(aEncryptedInputDataPacket, aDecryptedOutputPacket);
-	}
-		
-EXPORT_C void CData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputPacket, TRequestStatus& aStatus) const
-	{
-	iAgentData->Read(aEncryptedInputDataPacket, aDecryptedOutputPacket, aStatus);
-	}
-
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 	EXPORT_C TInt CData::Read_Unused(TInt aPos, TDes8& aDes, 
 								TInt aLength, TRequestStatus& aStatus) const
--- a/contentmgmt/contentaccessfwfordrm/source/caf/manager.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/manager.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -703,63 +703,4 @@
 	}
 #endif // REMOVE_CAF1
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
-EXPORT_C TInt CManager::GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const
-	{
-	TRAPD(err, DoGetAttributeL(aHeaderData, aAttribute, aValue));
-	return err;
-	}
-
-void CManager::DoGetAttributeL(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const
-	{
-	// Find the agent who handles the file 
-	CAgentInfo& agentInfo = iResolver->ResolveFileL(aHeaderData);
-	User::LeaveIfError(agentInfo.AgentManagerL().GetAttribute(aHeaderData, aAttribute, aValue));
-	}
-	
-EXPORT_C TInt CManager::GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet) const
-	{
-	TRAPD(err, DoGetAttributeSetL(aHeaderData, aAttributeSet));
-	return err;
-	}
-
-void CManager::DoGetAttributeSetL(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet) const	
-	{
-	// Find the agent who handles the file 
-	CAgentInfo& agentInfo = iResolver->ResolveFileL(aHeaderData);
-	
-	User::LeaveIfError(agentInfo.AgentManagerL().GetAttributeSet(aHeaderData, aAttributeSet));
-	}
-	
-EXPORT_C TInt CManager::GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const
-	{
-	TRAPD(err, DoGetStringAttributeL(aHeaderData, aAttribute, aValue));
-	return err;
-	}
-	
-void CManager::DoGetStringAttributeL(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const
-	{
-	// Find the agent who handles the file 
-	CAgentInfo& agentInfo = iResolver->ResolveFileL(aHeaderData);
-	
-	// find out the attribute
-	User::LeaveIfError(agentInfo.AgentManagerL().GetStringAttribute(aHeaderData, aAttribute, aValue));
-	}
-	
-EXPORT_C TInt CManager::GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet) const
-	{
-	TRAPD(err, DoGetStringAttributeSetL(aHeaderData, aStringAttributeSet));
-	return err;
-	}
-
-void CManager::DoGetStringAttributeSetL(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet) const
-	{
-	// Find the agent who handles the file 
-	CAgentInfo& agentInfo = iResolver->ResolveFileL(aHeaderData);
-
-	// find out the array of attributes
-	User::LeaveIfError(agentInfo.AgentManagerL().GetStringAttributeSet(aHeaderData, aStringAttributeSet));
-	}
-	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/caf/resolver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/resolver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -353,75 +353,6 @@
 	return *iDefaultAgent;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-CAgentInfo& CAgentResolver::ResolveFileL(const TDesC8& aHeaderData)
-	{
-	// Go through all the agents and return the one which supports the given WMDRM content.
-	
-	TInt agentsCount(iAgentInfos.Count());
-	CAgentManager* agentManager = NULL;
-	
-	for (TInt i = 0; i < agentsCount; ++i)
-		{
-		TRAPD(result, agentManager = &iAgentInfos[i]->AgentManagerL());
-		if(result != KErrNone)
-			{
-			if(KErrNoMemory == result)
-				{
-				User::Leave(result);
-				}
-			else
-				{
-				continue;	
-				}
-			}
-			
-		if (agentManager->IsRecognizedL(aHeaderData))
-			{
-			return *iAgentInfos[i];
-			}
-		}
-		
-    // will never reach here	
-	return *iDefaultAgent;
-	}
-	
-	
-EXPORT_C TBool CAgentResolver::DoRecognizeL(const TDesC8& aHeader, TDes8& aFileMimeType, TDes8& aContentMimeType)
-	{
-	// Go through all the agents and return the one which supports the given WMDRM content.
-	TInt agentsCount(iAgentInfos.Count());
-	CAgentManager* agentManager = NULL;
-	for (TInt i = 0; i < agentsCount; ++i)
-		{
-		TRAPD(result, agentManager = &iAgentInfos[i]->AgentManagerL());
-		if(result != KErrNone)
-			{
-			if(KErrNoMemory == result)
-				{
-				User::Leave(result);
-				}
-			else
-				{
-				continue;	
-				}
-			}
-			
-		if (agentManager->RecognizeContentL(aHeader, aFileMimeType, aContentMimeType))
-			{
-			// force to lower case to ensure that chosen lower case scheme for mime types is maintained
-			aFileMimeType.LowerCase();
-			aContentMimeType.LowerCase();			
-			return ETrue;
-			}
-		}
-		
-	return EFalse;
-	}
-	
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
 TUid CAgentResolver::ResolveDirectory(const TDesC& aPath, TDes& aActualPath, TBool& aThePrivateDir) const
 	{
 	TInt i = 0;
--- a/contentmgmt/contentaccessfwfordrm/source/caf/resolver.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/caf/resolver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -90,16 +90,7 @@
 			*/
 			CAgentInfo& ResolveFileL(RFile& aFile) const;			
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-			
-			/** Finds the agent which handles this piece of content.
-			@param aHeaderData	Header data of WMDRM file or stream content.
-			@return				CAgentInfo object associated with the agent that will handle WMDRM content.	
-			*/
-			CAgentInfo& ResolveFileL(const TDesC8& aHeaderData);
-			
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-						
+					
 			/** Finds the agent that handles a file and returns the actual URI of the content.
 			
 			If the aUri is of the form "c:\\private\\agent_name\\" 
@@ -174,20 +165,6 @@
 			*/
 			IMPORT_C const RArray<TPtrC8>& ConsumerMimeTypes() const;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT			
-			/** This function should only be used by the CAF recogizer DLL.
-			
-			@param aHeader			Header data of WMDRM content.
-			@param aFileMimeType	If the content is recognized this will be populated with 
-									the mime type of the content.
-			@param aContentMimeType	If the content is recognized this will be populated with the mime type of the content. 
-
-			@return					ETrue if the content is recognized by content access agent
-			@return					EFalse if the content is not recognized by a content access agent
-			*/
-			IMPORT_C TBool DoRecognizeL(const TDesC8& aHeader, TDes8& aFileMimeType, TDes8& aContentMimeType);
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT	
-
 			/** Find an agent by it's Uid */
 			CAgentInfo& AgentInfoL(const TUid& aUid) const;
 			
--- a/contentmgmt/contentaccessfwfordrm/source/cafutils/cafhelper.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "cafhelper.h"
-#include "cafhelperinterface.h"
-#include <e32def.h>
-#include <e32uid.h>
-
-using namespace ContentAccess;
-
-EXPORT_C CCAFHelper* CCAFHelper::NewL()
-	{
-	CCAFHelper* self = CCAFHelper::NewLC();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CCAFHelper* CCAFHelper::NewLC()
-	{
-	CCAFHelper* self = new (ELeave) CCAFHelper;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-	
-CCAFHelper::CCAFHelper()
-	{
-	}
-
-void CCAFHelper::ConstructL()
-	{
-	// Dynamically load the DLL.
-	TUidType uidType(KDynamicLibraryUid, KCAFHelperInterfaceUID);
-	
-	User::LeaveIfError(iLibrary.Load(KCAFHelperLibraryName, uidType));
-	
-	// Function at ordinal 1 creates new CCAFAgentHelper.
-	TLibraryFunction entryFunc = iLibrary.Lookup(1);
-	if (entryFunc == NULL)
-    	{
-        iLibrary.Close();
-        User::Leave(KErrBadLibraryEntryPoint);
-    	}
-		
-	// Call the function to create new CCAFAgentHelper.
-	iHelper = (MCAFHelperInterface*)entryFunc();
-	}
-
-EXPORT_C MCAFHelperInterface& CCAFHelper::operator()() const
-	{
-	return *iHelper;
-	}
-	
-CCAFHelper::~CCAFHelper()
-	{
-	iHelper->Release();
-	iLibrary.Close();
-	}
-	
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -42,16 +42,6 @@
 	return self;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-CF32AgentContent* CF32AgentContent::NewL(const TDesC8& aHeaderData)
-	{
-	CF32AgentContent* self = new (ELeave) CF32AgentContent;
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	
 CF32AgentContent::CF32AgentContent()
 	{
@@ -66,10 +56,6 @@
 		iFs.Close();
 		}
 	delete iURI;
-	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT	
-	delete iHeaderData;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
   
 void CF32AgentContent::ConstructL(const TDesC& aURI, TContentShareMode aShareMode)
@@ -88,16 +74,6 @@
 	User::LeaveIfError(iFile.Duplicate(aFile));
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT	
-void CF32AgentContent::ConstructL(const TDesC8& aHeaderData)
-	{
-	if(aHeaderData.Length() > 0)
-		iHeaderData = aHeaderData.AllocL();
-	else
-		User::Leave(KErrMissingWmdrmHeaderData);
-	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 TInt CF32AgentContent::OpenContainer(const TDesC&)
 	{
 	return KErrNotFound;
@@ -182,33 +158,6 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-TInt CF32AgentContent::GetAttribute(TInt aAttribute, TInt& aValue, const TDesC& aUniqueId)
-	{
-	
-	// check that the unique Id exists
-	if(TF32DefaultAttributes::CheckUniqueId(aUniqueId) != KErrNone)
-		{
-		return KErrNotFound;	
-		}
-	
-	TInt err = KErrNone;
-	if(iURI)
-		{
-		err = TF32DefaultAttributes::GetAttribute(aAttribute, aValue, *iURI);
-		}
-	else if(iHeaderData)
-		{
-		err = TF32DefaultAttributes::GetAttribute(*iHeaderData, aAttribute, aValue);
-		}
-	else
-		{
-		err = TF32DefaultAttributes::GetAttribute(aAttribute, aValue, iFile);
-		}
-	return err;
-	}
-
-#else
 TInt CF32AgentContent::GetAttribute(TInt aAttribute, TInt& aValue, const TDesC& aUniqueId)
 	{
 	// check that the unique Id exists
@@ -228,35 +177,7 @@
 		}
 	return err;
 	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-TInt CF32AgentContent::GetAttributeSet(RAttributeSet& aAttributeSet, const TDesC& aUniqueId)
-	{
-	// check that the unique Id exists
-	if(TF32DefaultAttributes::CheckUniqueId(aUniqueId) != KErrNone)
-		{
-		return KErrNotFound;	
-		}
-		
-	TInt err = KErrNone;
-	if(iURI)
-		{
-		err = TF32DefaultAttributes::GetAttributeSet(aAttributeSet, *iURI);
-		}
-	else if(iHeaderData)
-		{
-		err = TF32DefaultAttributes::GetAttributeSet(*iHeaderData, aAttributeSet);
-		}
-	else
-		{
-		err = TF32DefaultAttributes::GetAttributeSet(aAttributeSet, iFile);
-		}
-	return err;
-	}
-
-#else
 
 TInt CF32AgentContent::GetAttributeSet(RAttributeSet& aAttributeSet, const TDesC& aUniqueId)
 	{
@@ -278,35 +199,6 @@
 	return err;
 	}
 
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-TInt CF32AgentContent::GetStringAttribute(TInt aAttribute, TDes& aValue, const TDesC& aUniqueId)
-	{
-	// check that the unique Id exists
-	if(TF32DefaultAttributes::CheckUniqueId(aUniqueId) != KErrNone)
-		{
-		return KErrNotFound;	
-		}
-		
-	TInt err = KErrNone;
-	if(iURI)
-		{
-		err = TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, *iURI);
-		}
-	else if(iHeaderData)
-		{
-		err = TF32DefaultAttributes::GetStringAttribute(*iHeaderData, aAttribute, aValue);
-		}
-	else
-		{
-		err = TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, iFile);
-		}
-	return err;
-	}
-
-#else
 TInt CF32AgentContent::GetStringAttribute(TInt aAttribute, TDes& aValue, const TDesC& aUniqueId)
 	{
 	// check that the unique Id exists
@@ -326,35 +218,7 @@
 		}
 	return err;
 	}
-#endif
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-TInt CF32AgentContent::GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet, const TDesC& aUniqueId)
-	{
-	// check that the unique Id exists
-	if(TF32DefaultAttributes::CheckUniqueId(aUniqueId) != KErrNone)
-		{
-		return KErrNotFound;	
-		}
-	
-	TInt err = KErrNone;
-	if(iURI)
-		{
-		err = TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, *iURI);
-		}
-	else if(iHeaderData)
-		{
-		err = TF32DefaultAttributes::GetStringAttributeSet(*iHeaderData, aStringAttributeSet);
-		}
-	else
-		{
-		err = TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, iFile);
-		}
-	return err;
-	}
-
-#else
 
 TInt CF32AgentContent::GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet, const TDesC& aUniqueId)
 	{
@@ -376,8 +240,6 @@
 	return err;
 	}
 
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 TInt CF32AgentContent::AgentSpecificCommand(TInt , const TDesC8& , TDes8& )
 	{
 	return KErrCANotSupported;
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentcontent.h	Wed Sep 01 12:40:57 2010 +0100
@@ -52,10 +52,6 @@
 		// a file handle
 		static CF32AgentContent* NewL(RFile& aFile);
 		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		static CF32AgentContent* NewL(const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 		virtual ~CF32AgentContent();
 
 	public: 
@@ -82,10 +78,7 @@
 		CF32AgentContent();
 		void ConstructL(const TDesC& aURI, TContentShareMode aShareMode);
 		void ConstructL(RFile& aFile);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		void ConstructL(const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		
+	
 		CF32AgentUi& AgentUiL();		
 		void SearchL(RStreamablePtrArray<CEmbeddedObject>& aArray, const TDesC8& aMimeType, TBool aRecursive);
 
@@ -99,9 +92,6 @@
 		RFile iFile;
 #endif //SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 		CF32AgentUi* iAgentUi;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		HBufC8* iHeaderData;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		};
 } // namespace ContentAccess
 #endif // __F32AgentContent_H__
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -43,26 +43,6 @@
 	return self;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-CF32AgentData* CF32AgentData::NewL(const TDesC8& aHeaderData)
-	{
-	CF32AgentData* self = new (ELeave) CF32AgentData;
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-	
-void CF32AgentData::ConstructL(const TDesC8& aHeaderData)
-	{
-	if(aHeaderData.Length() > 0)
-		iHeaderData = aHeaderData.AllocL();
-	else
-		User::Leave(KErrMissingWmdrmHeaderData);
-	}
-	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 CF32AgentData::CF32AgentData()
 	{
@@ -79,9 +59,6 @@
 
 	delete iVirtualPath;
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	delete iHeaderData;			
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
   
 void CF32AgentData::ConstructL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)
@@ -234,22 +211,6 @@
 
 TInt CF32AgentData::GetAttribute(TInt aAttribute, TInt& aValue)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData)
-		{
-		return TF32DefaultAttributes::GetAttribute(*iHeaderData, aAttribute, aValue);
-		}
-		
-	else if(iVirtualPath)
-		{
-		return TF32DefaultAttributes::GetAttribute(aAttribute, aValue, iVirtualPath->URI());
-		}
-		
-	else
-		{
-		return TF32DefaultAttributes::GetAttribute(aAttribute, aValue, iFile);
-		}
-#else
 	if(iVirtualPath)
 		{
 		return TF32DefaultAttributes::GetAttribute(aAttribute, aValue, iVirtualPath->URI());
@@ -258,27 +219,10 @@
 		{
 		return TF32DefaultAttributes::GetAttribute(aAttribute, aValue, iFile);
 		}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
 
 TInt CF32AgentData::GetAttributeSet(RAttributeSet& aAttributeSet)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData)
-		{
-		return TF32DefaultAttributes::GetAttributeSet(*iHeaderData, aAttributeSet);
-		}
-		
-	else if(iVirtualPath)
-		{
-		return TF32DefaultAttributes::GetAttributeSet(aAttributeSet, iVirtualPath->URI());
-		}
-			
-	else
-		{
-		return TF32DefaultAttributes::GetAttributeSet(aAttributeSet, iFile);
-		}
-#else
 	if(iVirtualPath)
 		{
 		return TF32DefaultAttributes::GetAttributeSet(aAttributeSet, iVirtualPath->URI());
@@ -287,26 +231,10 @@
 		{
 		return TF32DefaultAttributes::GetAttributeSet(aAttributeSet, iFile);
 		}	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
 	}
 
 TInt CF32AgentData::GetStringAttribute(TInt aAttribute, TDes& aValue)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData)
-		{
-		return TF32DefaultAttributes::GetStringAttribute(*iHeaderData, aAttribute, aValue);
-		}
-	
-	else if(iVirtualPath)
-		{
-		return TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, iVirtualPath->URI());
-		}
-	else
-		{
-		return TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, iFile);
-		}
-#else
 	if(iVirtualPath)
 		{
 		return TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, iVirtualPath->URI());
@@ -315,26 +243,10 @@
 		{
 		return TF32DefaultAttributes::GetStringAttribute(aAttribute, aValue, iFile);
 		}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT	
 	}
 
 TInt CF32AgentData::GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	if(iHeaderData)
-		{
-		return TF32DefaultAttributes::GetStringAttributeSet(*iHeaderData, aStringAttributeSet);
-		}
-		
-	else if(iVirtualPath)
-		{
-		return TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, iVirtualPath->URI());
-		}
-	else
-		{
-		return TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, iFile);
-		}
-#else
 	if(iVirtualPath)
 		{
 		return TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, iVirtualPath->URI());
@@ -343,7 +255,6 @@
 		{
 		return TF32DefaultAttributes::GetStringAttributeSet(aStringAttributeSet, iFile);
 		}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
 
 CF32AgentUi& CF32AgentData::AgentUiL()
@@ -356,29 +267,4 @@
 	return *iAgentUi;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
-TInt CF32AgentData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket)
-	{
-	if(aEncryptedInputDataPacket.Length() <= 0)
-		{
-		return KErrInsufficientDataPacketLength;
-		}
-	
-	aDecryptedOutputDataPacket = aEncryptedInputDataPacket;
-	return KErrNone;
-	}
-			
-void CF32AgentData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	if(aEncryptedInputDataPacket.Length() <= 0)
-		{
-		User::RequestComplete(status, KErrInsufficientDataPacketLength);		
-		}
-	
-	aDecryptedOutputDataPacket = aEncryptedInputDataPacket;
-	User::RequestComplete(status, KErrNone);
-	}
-
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentdata.h	Wed Sep 01 12:40:57 2010 +0100
@@ -46,10 +46,6 @@
 		static CF32AgentData* NewL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode);
 		static CF32AgentData* NewL(RFile& aFile, const TDesC& aUniqueId);
 		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		static CF32AgentData* NewL(const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 		~CF32AgentData();
 
 	public: // From CAgentData
@@ -78,20 +74,11 @@
 		virtual TInt Read64(TInt64 aPos, TDes8& aDes, TInt aLength, TRequestStatus& aStatus);
 #endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		virtual TInt Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket);		
-		virtual void Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus);
-#endif	//SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 	private:
 		CF32AgentData();
 		void ConstructL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode);
 		void ConstructL(RFile& aFile, const TDesC& aUniqueId);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		void ConstructL(const TDesC8& aHeaderData);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 		CF32AgentUi& AgentUiL();
 		
 	private:
@@ -108,9 +95,6 @@
 		CVirtualPath* iVirtualPath;
 		CF32AgentUi* iAgentUi;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		HBufC8* iHeaderData;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		};
 } // namespace ContentAccess
 #endif // __F32AGENTDATA_H__
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -80,14 +80,3 @@
 	return NULL;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-CAgentData* CF32AgentFactory::CreateDataConsumerL(const TDesC8& aHeaderData)
-	{
-	return CF32AgentData::NewL(aHeaderData);
-	}
-
-CAgentContent* CF32AgentFactory::CreateContentBrowserL(const TDesC8& aHeaderData)
-	{
-	return CF32AgentContent::NewL(aHeaderData);
-	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentfactory.h	Wed Sep 01 12:40:57 2010 +0100
@@ -88,11 +88,7 @@
 		@panic CAF EF32AgentRightsManagerNotSupported 
 		*/
 		virtual CAgentRightsManager* CreateRightsManagerL();
-		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		virtual CAgentData* CreateDataConsumerL(const TDesC8& aHeaderData);
-		virtual CAgentContent* CreateContentBrowserL(const TDesC8& aHeaderData);
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
+			
 		};
 } // namespace ContentAccess
 #endif // __F32AGENTFACTORY_H__
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -340,38 +340,3 @@
 	User::Panic(KCafPanicString, ECafPanicF32AgentPrepareHTTPHeadersNotSupported);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-TBool CF32AgentManager::IsRecognizedL(const TDesC8& /*aHeaderData*/) const
-	{
-	// F32 should be the default agent and should never be called here
-	return EFalse;
-	}
-	
-TBool CF32AgentManager::RecognizeContentL(const TDesC8&, TDes8&, TDes8&) const
-	{
-	// F32 should be the default agent and should never be called here
-	return EFalse;
-	}
-	
-TInt CF32AgentManager::GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue)
-	{
-	return TF32DefaultAttributes::GetAttribute(aHeaderData, aAttribute, aValue);
-	}
-
-TInt CF32AgentManager::GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet)
-	{
-	return TF32DefaultAttributes::GetAttributeSet(aHeaderData, aAttributeSet);
-	}
-
-TInt CF32AgentManager::GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) 
-	{
-	return TF32DefaultAttributes::GetStringAttribute(aHeaderData, aAttribute, aValue);
-	}
-
-TInt CF32AgentManager::GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aAttributeSet) 
-	{
-	return TF32DefaultAttributes::GetStringAttributeSet(aHeaderData, aAttributeSet);
-	}
-	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32agentmanager.h	Wed Sep 01 12:40:57 2010 +0100
@@ -89,14 +89,6 @@
 		virtual void PrepareHTTPRequestHeaders(RStringPool& aStringPool, RHTTPHeaders& aRequestHeaders) const;
 		virtual TInt RenameDir(const TDesC& aOldName, const TDesC& aNewName);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		virtual TBool IsRecognizedL(const TDesC8& aHeaderData) const;
-		virtual TBool RecognizeContentL(const TDesC8& aHeaderData, TDes8& aFileMimeType, TDes8& aContentMimeType) const;
-		virtual TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue);
-		virtual TInt GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet);
-		virtual TInt GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aAttributeSet);
-		virtual TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue);
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 	protected:
 		CF32AgentManager();
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -286,73 +286,3 @@
 	return fileMode;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	
-TInt TF32DefaultAttributes::GetAttribute(const TDesC8& /*aHeaderData*/, TInt aAttribute, TInt& aValue)
-	{
-	return GetAttribute(aAttribute, aValue, KNullDesC);
-	}
-	
-TInt TF32DefaultAttributes::GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet)
-	{
-	TInt i = 0;
-	TInt attribute = 0;
-	TInt value = 0;
-	TInt err = KErrNone;
-	TInt numAttributes = aAttributeSet.Count();
-	
-	// loop through all the attriutes in the set and find their values
-	for(i = 0; i < numAttributes; i++)
-		{
-		attribute = aAttributeSet[i];
-		err = GetAttribute(aHeaderData, attribute, value);
-		aAttributeSet.SetValue(attribute, value, err);
-		}	
-	return KErrNone;
-	}
-	
-TInt TF32DefaultAttributes::GetStringAttribute(const TDesC8& /*aHeaderData*/, TInt aAttribute, TDes& aValue)
-	{
-	TInt err = KErrNone;
-	TBuf8 <KMaxDataTypeLength> mimeType;
-
-	switch(aAttribute)
-		{
-		case EMimeType:
-			aValue.Copy(KNullDesC());
-			break;
-		case EContentID:
-			aValue.Copy(KDefaultContentObject());
-			break;
-		default:
-			err = KErrCANotSupported;
-			break;
-		};
-	return err;
-	}
-	
-TInt TF32DefaultAttributes::GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet)
-	{
-	TInt i = 0;
-	TInt attribute = 0;
-	TInt err = KErrNone;
-	TBuf <KMaxDataTypeLength> buf;
-
-	TInt numAttributes = aStringAttributeSet.Count();
-
-	// loop through all the attriutes in the set and find their values
-	for(i = 0; i < numAttributes; i++)
-		{
-		buf.SetLength(0);
-		attribute = aStringAttributeSet[i];
-		err = GetStringAttribute(aHeaderData, attribute, buf);
-		err = aStringAttributeSet.SetValue(attribute, buf, err);
-		if(err != KErrNone)
-			{
-			return err;
-			}
-		}	
-	return KErrNone;
-	}
-
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
--- a/contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/f32agent/f32defaultattributes.h	Wed Sep 01 12:40:57 2010 +0100
@@ -55,13 +55,6 @@
 		static TInt GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet, RFile& aFile);
 		static void GetMimeTypeL(RFile& aFile, TDes8& aMimeType);
 		
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT		
-		static TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue);
-		static TInt GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet);
-		static TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue);
-		static TInt GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aStringAttributeSet);
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 		static TInt CheckUniqueId(const TDesC& aUniqueId);
 		static TInt CheckVirtualPath(const TVirtualPathPtr& aVirtualPath);	
 		static TUint GetFileMode(TContentShareMode aMode);
--- a/contentmgmt/contentaccessfwfordrm/source/reccaf/CafApaRecognizer.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/contentaccessfwfordrm/source/reccaf/CafApaRecognizer.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2003-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -227,45 +227,36 @@
 	else 
 		{
 		RFile* fileHandle = CApaCafRecognizer::FilePassedByHandleL();
-		
-		if( fileHandle == NULL )
-		{
-			return;
-		}
-
 		TBuf<KMaxDataTypeLength> fileName;
 		User::LeaveIfError(fileHandle->Name(fileName));
 		isRecognized = iResolver->DoRecognizeL(fileName, aBuffer, FileMimeType, ContentMimeType);
 		}
 	
-	if (isRecognized == EFalse)
-	{
-		return;
-	}
+	if (isRecognized)
+		{
+		// If there is no content type but the file is recognized it is assumed
+		// to be a file that can be processed through the supplier interface
+		
+		// dummy object for comparison in match function
+		CMimeTypeMapping* mimeTypeMapping = (ContentMimeType.Length() == 0) ?  
+												CMimeTypeMapping::NewL(FileMimeType) :
+												CMimeTypeMapping::NewL(ContentMimeType);
 
 
-	// If there is no content type but the file is recognized it is assumed
-	// to be a file that can be processed through the supplier interface
-		
-	// dummy object for comparison in match function
-	CMimeTypeMapping* mimeTypeMapping = (ContentMimeType.Length() == 0) ?  
-										 CMimeTypeMapping::NewL(FileMimeType) :
-										 CMimeTypeMapping::NewL(ContentMimeType);
-
+		// check that the content mime type is one of the ones we
+		// told Apparc we can recognize in the beginning
+		// The mime type should always be found as the file has been recognised.
+		// If not it is because an agent, when recognising the file, has set a mime type not in its supplier list.
+		// Mime types are always forced to lower case therefore this match can be case sensitive.
+		TInt index = iContentTypes.Find(mimeTypeMapping, CMimeTypeMapping::ContentMimeTypeMatch);
+		if (index != KErrNotFound)
+			{
+			iDataType = TDataType(iContentTypes[index]->CafMimeType());
+			iConfidence=ECertain;
+			}
 
-	// check that the content mime type is one of the ones we
-	// told Apparc we can recognize in the beginning
-	// The mime type should always be found as the file has been recognised.
-	// If not it is because an agent, when recognising the file, has set a mime type not in its supplier list.
-	// Mime types are always forced to lower case therefore this match can be case sensitive.
-	TInt index = iContentTypes.Find(mimeTypeMapping, CMimeTypeMapping::ContentMimeTypeMatch);
-	if (index != KErrNotFound)
-	{
-	    iDataType = TDataType(iContentTypes[index]->CafMimeType());
-		iConfidence=ECertain;
-	}
-
-	delete mimeTypeMapping;
+		delete mimeTypeMapping;
+		}
 	}
 
 const TImplementationProxy ImplementationTable[] = 
--- a/contentmgmt/referencedrmagent/RefTestAgent/BWINS/rtaclient_v3u.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-EXPORTS
-	??0RRtaData@ReferenceTestAgent@@QAE@XZ @ 1 NONAME ; ReferenceTestAgent::RRtaData::RRtaData(void)
-	??0RRtaRights@ReferenceTestAgent@@QAE@XZ @ 2 NONAME ; ReferenceTestAgent::RRtaRights::RRtaRights(void)
-	?AddRightsL@RRtaRights@ReferenceTestAgent@@QAEXAAVCRightsObject@2@@Z @ 3 NONAME ; void ReferenceTestAgent::RRtaRights::AddRightsL(class ReferenceTestAgent::CRightsObject &)
-	?ClearAllRightsL@RRtaRights@ReferenceTestAgent@@QAEXXZ @ 4 NONAME ; void ReferenceTestAgent::RRtaRights::ClearAllRightsL(void)
-	?Connect@RRtaRights@ReferenceTestAgent@@QAEHXZ @ 5 NONAME ; int ReferenceTestAgent::RRtaRights::Connect(void)
-	?DataSize@RRtaData@ReferenceTestAgent@@QAEHAA_J@Z @ 6 NONAME ; int ReferenceTestAgent::RRtaData::DataSize(long long &)
-	?DumpRightsDatabaseL@RRtaRights@ReferenceTestAgent@@QAEXABVTDesC16@@@Z @ 7 NONAME ; void ReferenceTestAgent::RRtaRights::DumpRightsDatabaseL(class TDesC16 const &)
-	?EvaluateIntentL@RRtaData@ReferenceTestAgent@@QAEXW4TIntent@ContentAccess@@@Z @ 8 NONAME ; void ReferenceTestAgent::RRtaData::EvaluateIntentL(enum ContentAccess::TIntent)
-	?ExecuteIntentL@RRtaData@ReferenceTestAgent@@QAEXW4TIntent@ContentAccess@@@Z @ 9 NONAME ; void ReferenceTestAgent::RRtaData::ExecuteIntentL(enum ContentAccess::TIntent)
-	?GetAttribute@RRtaData@ReferenceTestAgent@@QBEHHAAH@Z @ 10 NONAME ; int ReferenceTestAgent::RRtaData::GetAttribute(int, int &) const
-	?GetAttributeSet@RRtaData@ReferenceTestAgent@@QBEHAAVRAttributeSet@ContentAccess@@@Z @ 11 NONAME ; int ReferenceTestAgent::RRtaData::GetAttributeSet(class ContentAccess::RAttributeSet &) const
-	?GetStringAttribute@RRtaData@ReferenceTestAgent@@QBEHHAAVTDes16@@@Z @ 12 NONAME ; int ReferenceTestAgent::RRtaData::GetStringAttribute(int, class TDes16 &) const
-	?GetStringAttributeSet@RRtaData@ReferenceTestAgent@@QBEHAAVRStringAttributeSet@ContentAccess@@@Z @ 13 NONAME ; int ReferenceTestAgent::RRtaData::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &) const
-	?Open@RRtaData@ReferenceTestAgent@@QAEHAAVRFile@@ABVTDesC16@@@Z @ 14 NONAME ; int ReferenceTestAgent::RRtaData::Open(class RFile &, class TDesC16 const &)
-	?Open@RRtaData@ReferenceTestAgent@@QAEHABVTDesC16@@0I@Z @ 15 NONAME ; int ReferenceTestAgent::RRtaData::Open(class TDesC16 const &, class TDesC16 const &, unsigned int)
-	?Read@RRtaData@ReferenceTestAgent@@QAEHAAVTDes8@@H@Z @ 16 NONAME ; int ReferenceTestAgent::RRtaData::Read(class TDes8 &, int)
-	?Seek@RRtaData@ReferenceTestAgent@@QBEHW4TSeek@@AA_J@Z @ 17 NONAME ; int ReferenceTestAgent::RRtaData::Seek(enum TSeek, long long &) const
-	??0RRtaManager@ReferenceTestAgent@@QAE@XZ @ 18 NONAME ; ReferenceTestAgent::RRtaManager::RRtaManager(void)
-	?Connect@RRtaManager@ReferenceTestAgent@@QAEHXZ @ 19 NONAME ; int ReferenceTestAgent::RRtaManager::Connect(void)
-	?CopyFile@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@0@Z @ 20 NONAME ; int ReferenceTestAgent::RRtaManager::CopyFile(class TDesC16 const &, class TDesC16 const &) const
-	?DeleteFile@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 21 NONAME ; int ReferenceTestAgent::RRtaManager::DeleteFile(class TDesC16 const &) const
-	?GetDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@IIAAPAVCDir@@1@Z @ 22 NONAME ; int ReferenceTestAgent::RRtaManager::GetDir(class TDesC16 const &, unsigned int, unsigned int, class CDir * &, class CDir * &) const
-	?GetDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@IIAAPAVCDir@@@Z @ 23 NONAME ; int ReferenceTestAgent::RRtaManager::GetDir(class TDesC16 const &, unsigned int, unsigned int, class CDir * &) const
-	?GetDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@VTUidType@@IAAPAVCDir@@@Z @ 24 NONAME ; int ReferenceTestAgent::RRtaManager::GetDir(class TDesC16 const &, class TUidType, unsigned int, class CDir * &) const
-	?MkDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 25 NONAME ; int ReferenceTestAgent::RRtaManager::MkDir(class TDesC16 const &) const
-	?MkDirAll@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 26 NONAME ; int ReferenceTestAgent::RRtaManager::MkDirAll(class TDesC16 const &) const
-	?RenameFile@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@0@Z @ 27 NONAME ; int ReferenceTestAgent::RRtaManager::RenameFile(class TDesC16 const &, class TDesC16 const &) const
-	?RmDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 28 NONAME ; int ReferenceTestAgent::RRtaManager::RmDir(class TDesC16 const &) const
-	?RenameDir@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@0@Z @ 29 NONAME ; int ReferenceTestAgent::RRtaManager::RenameDir(class TDesC16 const &, class TDesC16 const &) const
-	?GetAttribute@RRtaManager@ReferenceTestAgent@@QBEHABVTVirtualPathPtr@ContentAccess@@HAAH@Z @ 30 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttribute(class ContentAccess::TVirtualPathPtr const &, int, int &) const
-	?GetAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHABVTVirtualPathPtr@ContentAccess@@AAVRAttributeSet@4@@Z @ 31 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttributeSet(class ContentAccess::TVirtualPathPtr const &, class ContentAccess::RAttributeSet &) const
-	?GetStringAttribute@RRtaManager@ReferenceTestAgent@@QBEHABVTVirtualPathPtr@ContentAccess@@HAAVTDes16@@@Z @ 32 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttribute(class ContentAccess::TVirtualPathPtr const &, int, class TDes16 &) const
-	?GetStringAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHABVTVirtualPathPtr@ContentAccess@@AAVRStringAttributeSet@4@@Z @ 33 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttributeSet(class ContentAccess::TVirtualPathPtr const &, class ContentAccess::RStringAttributeSet &) const
-	??0RRtaContent@ReferenceTestAgent@@QAE@XZ @ 34 NONAME ; ReferenceTestAgent::RRtaContent::RRtaContent(void)
-	?CloseContainer@RRtaContent@ReferenceTestAgent@@QBEHXZ @ 35 NONAME ; int ReferenceTestAgent::RRtaContent::CloseContainer(void) const
-	?GetAttribute@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@HAAH@Z @ 36 NONAME ; int ReferenceTestAgent::RRtaContent::GetAttribute(class TDesC16 const &, int, int &) const
-	?GetAttributeSet@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@AAVRAttributeSet@ContentAccess@@@Z @ 37 NONAME ; int ReferenceTestAgent::RRtaContent::GetAttributeSet(class TDesC16 const &, class ContentAccess::RAttributeSet &) const
-	?GetEmbeddedObjectsL@RRtaContent@ReferenceTestAgent@@QBEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@@Z @ 38 NONAME ; void ReferenceTestAgent::RRtaContent::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &) const
-	?GetEmbeddedObjectsL@RRtaContent@ReferenceTestAgent@@QBEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@W4TEmbeddedType@4@@Z @ 39 NONAME ; void ReferenceTestAgent::RRtaContent::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, enum ContentAccess::TEmbeddedType) const
-	?GetStringAttribute@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@HAAVTDes16@@@Z @ 40 NONAME ; int ReferenceTestAgent::RRtaContent::GetStringAttribute(class TDesC16 const &, int, class TDes16 &) const
-	?GetStringAttributeSet@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@AAVRStringAttributeSet@ContentAccess@@@Z @ 41 NONAME ; int ReferenceTestAgent::RRtaContent::GetStringAttributeSet(class TDesC16 const &, class ContentAccess::RStringAttributeSet &) const
-	?Open@RRtaContent@ReferenceTestAgent@@QAEHAAVRFile@@@Z @ 42 NONAME ; int ReferenceTestAgent::RRtaContent::Open(class RFile &)
-	?Open@RRtaContent@ReferenceTestAgent@@QAEHABVTDesC16@@I@Z @ 43 NONAME ; int ReferenceTestAgent::RRtaContent::Open(class TDesC16 const &, unsigned int)
-	?OpenContainer@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 44 NONAME ; int ReferenceTestAgent::RRtaContent::OpenContainer(class TDesC16 const &) const
-	?Search@RRtaContent@ReferenceTestAgent@@QBEHAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@ABVTDesC8@@H@Z @ 45 NONAME ; int ReferenceTestAgent::RRtaContent::Search(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, class TDesC8 const &, int) const
-	?CopyFile@RRtaManager@ReferenceTestAgent@@QBEHAAVRFile@@ABVTDesC16@@@Z @ 46 NONAME ; int ReferenceTestAgent::RRtaManager::CopyFile(class RFile &, class TDesC16 const &) const
-	?DeleteRightsByKeyL@RRtaRights@ReferenceTestAgent@@QAEXABVTDesC8@@@Z @ 47 NONAME ; void ReferenceTestAgent::RRtaRights::DeleteRightsByKeyL(class TDesC8 const &)
-	?EraseDeleteKeyL@RRtaRights@ReferenceTestAgent@@QAEXABVTDesC8@@@Z @ 48 NONAME ; void ReferenceTestAgent::RRtaRights::EraseDeleteKeyL(class TDesC8 const &)
-	?Read@RRtaData@ReferenceTestAgent@@QAEH_JAAVTDes8@@H@Z @ 49 NONAME ; int ReferenceTestAgent::RRtaData::Read(long long, class TDes8 &, int)
-	?ReloadRightsDatabaseL@RRtaRights@ReferenceTestAgent@@QAEXABVTDesC16@@@Z @ 50 NONAME ; void ReferenceTestAgent::RRtaRights::ReloadRightsDatabaseL(class TDesC16 const &)
-	?GetAttribute@RRtaManager@ReferenceTestAgent@@QBEHHAAHAAVRFile@@ABVTDesC16@@@Z @ 51 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttribute(int, int &, class RFile &, class TDesC16 const &) const
-	?GetAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHAAVRAttributeSet@ContentAccess@@AAVRFile@@ABVTDesC16@@@Z @ 52 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttributeSet(class ContentAccess::RAttributeSet &, class RFile &, class TDesC16 const &) const
-	?GetStringAttribute@RRtaManager@ReferenceTestAgent@@QBEHHAAVTDes16@@AAVRFile@@ABVTDesC16@@@Z @ 53 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttribute(int, class TDes16 &, class RFile &, class TDesC16 const &) const
-	?GetStringAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHAAVRStringAttributeSet@ContentAccess@@AAVRFile@@ABVTDesC16@@@Z @ 54 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &, class RFile &, class TDesC16 const &) const
-	?CancelNotifyStatusChange@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 55 NONAME ; int ReferenceTestAgent::RRtaContent::CancelNotifyStatusChange(class TDesC16 const &) const
-	?DisplayInfoL@RRtaManager@ReferenceTestAgent@@QBEXW4TDisplayInfo@ContentAccess@@ABVTVirtualPathPtr@4@@Z @ 56 NONAME ; void ReferenceTestAgent::RRtaManager::DisplayInfoL(enum ContentAccess::TDisplayInfo, class ContentAccess::TVirtualPathPtr const &) const
-	?AgentSpecificCommand@RRtaManager@ReferenceTestAgent@@QBEHHABVTDesC8@@AAVTDes8@@@Z @ 57 NONAME ; int ReferenceTestAgent::RRtaManager::AgentSpecificCommand(int, class TDesC8 const &, class TDes8 &) const
-	?CancelNotifyStatusChange@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 58 NONAME ; int ReferenceTestAgent::RRtaManager::CancelNotifyStatusChange(class TDesC16 const &) const
-	?CancelRequestRights@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@@Z @ 59 NONAME ; int ReferenceTestAgent::RRtaContent::CancelRequestRights(class TDesC16 const &) const
-	?DisplayInfoL@RRtaContent@ReferenceTestAgent@@QBEXW4TDisplayInfo@ContentAccess@@ABVTDesC16@@@Z @ 60 NONAME ; void ReferenceTestAgent::RRtaContent::DisplayInfoL(enum ContentAccess::TDisplayInfo, class TDesC16 const &) const
-	?NotifyStatusChangeL@RRtaManager@ReferenceTestAgent@@QBEXABVTDesC16@@W4TEventMask@ContentAccess@@@Z @ 61 NONAME ; void ReferenceTestAgent::RRtaManager::NotifyStatusChangeL(class TDesC16 const &, enum ContentAccess::TEventMask) const
-	?DisplayManagementInfoL@RRtaManager@ReferenceTestAgent@@QBEXXZ @ 62 NONAME ; void ReferenceTestAgent::RRtaManager::DisplayManagementInfoL(void) const
-	?AgentSpecificCommand@RRtaContent@ReferenceTestAgent@@QBEHHABVTDesC8@@AAVTDes8@@@Z @ 63 NONAME ; int ReferenceTestAgent::RRtaContent::AgentSpecificCommand(int, class TDesC8 const &, class TDes8 &) const
-	?SetProperty@RRtaData@ReferenceTestAgent@@QBEHW4TAgentProperty@ContentAccess@@H@Z @ 64 NONAME ; int ReferenceTestAgent::RRtaData::SetProperty(enum ContentAccess::TAgentProperty, int) const
-	?SetProperty@RRtaManager@ReferenceTestAgent@@QBEHW4TAgentProperty@ContentAccess@@H@Z @ 65 NONAME ; int ReferenceTestAgent::RRtaManager::SetProperty(enum ContentAccess::TAgentProperty, int) const
-	?DisplayInfoL@RRtaManager@ReferenceTestAgent@@QBEXW4TDisplayInfo@ContentAccess@@AAVRFile@@ABVTDesC16@@@Z @ 66 NONAME ; void ReferenceTestAgent::RRtaManager::DisplayInfoL(enum ContentAccess::TDisplayInfo, class RFile &, class TDesC16 const &) const
-	?SetProperty@RRtaContent@ReferenceTestAgent@@QBEHW4TAgentProperty@ContentAccess@@H@Z @ 67 NONAME ; int ReferenceTestAgent::RRtaContent::SetProperty(enum ContentAccess::TAgentProperty, int) const
-	?RequestRightsL@RRtaContent@ReferenceTestAgent@@QBEXABVTDesC16@@@Z @ 68 NONAME ; void ReferenceTestAgent::RRtaContent::RequestRightsL(class TDesC16 const &) const
-	?NotifyStatusChangeL@RRtaContent@ReferenceTestAgent@@QBEXW4TEventMask@ContentAccess@@ABVTDesC16@@@Z @ 69 NONAME ; void ReferenceTestAgent::RRtaContent::NotifyStatusChangeL(enum ContentAccess::TEventMask, class TDesC16 const &) const
-	?GetWmdrmAttribute@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@HAAH@Z @ 70 NONAME ; int ReferenceTestAgent::RRtaContent::GetWmdrmAttribute(class TDesC16 const &, int, int &) const
-	?GetWmdrmStringAttribute@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@HAAVTDes16@@@Z @ 71 NONAME ; int ReferenceTestAgent::RRtaContent::GetWmdrmStringAttribute(class TDesC16 const &, int, class TDes16 &) const
-	?GetStringAttribute@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC8@@HAAVTDes16@@@Z @ 72 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttribute(class TDesC8 const &, int, class TDes16 &) const
-	?GetWmdrmAttributeSet@RRtaData@ReferenceTestAgent@@QBEHAAVRAttributeSet@ContentAccess@@@Z @ 73 NONAME ; int ReferenceTestAgent::RRtaData::GetWmdrmAttributeSet(class ContentAccess::RAttributeSet &) const
-	?GetWmdrmStringAttribute@RRtaData@ReferenceTestAgent@@QBEHHAAVTDes16@@@Z @ 74 NONAME ; int ReferenceTestAgent::RRtaData::GetWmdrmStringAttribute(int, class TDes16 &) const
-	?GetWmdrmAttributeSet@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@AAVRAttributeSet@ContentAccess@@@Z @ 75 NONAME ; int ReferenceTestAgent::RRtaContent::GetWmdrmAttributeSet(class TDesC16 const &, class ContentAccess::RAttributeSet &) const
-	?GetWmdrmAttribute@RRtaData@ReferenceTestAgent@@QBEHHAAH@Z @ 76 NONAME ; int ReferenceTestAgent::RRtaData::GetWmdrmAttribute(int, int &) const
-	?Open@RRtaData@ReferenceTestAgent@@QAEHABVTDesC8@@@Z @ 77 NONAME ; int ReferenceTestAgent::RRtaData::Open(class TDesC8 const &)
-	?Open@RRtaContent@ReferenceTestAgent@@QAEHABVTDesC8@@@Z @ 78 NONAME ; int ReferenceTestAgent::RRtaContent::Open(class TDesC8 const &)
-	?Read@RRtaData@ReferenceTestAgent@@QAEHABVTDesC8@@AAVTDes8@@@Z @ 79 NONAME ; int ReferenceTestAgent::RRtaData::Read(class TDesC8 const &, class TDes8 &)
-	?GetAttribute@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC8@@HAAH@Z @ 80 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttribute(class TDesC8 const &, int, int &) const
-	?GetStringAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC8@@AAVRStringAttributeSet@ContentAccess@@@Z @ 81 NONAME ; int ReferenceTestAgent::RRtaManager::GetStringAttributeSet(class TDesC8 const &, class ContentAccess::RStringAttributeSet &) const
-	?GetWmdrmStringAttributeSet@RRtaContent@ReferenceTestAgent@@QBEHABVTDesC16@@AAVRStringAttributeSet@ContentAccess@@@Z @ 82 NONAME ; int ReferenceTestAgent::RRtaContent::GetWmdrmStringAttributeSet(class TDesC16 const &, class ContentAccess::RStringAttributeSet &) const
-	?GetAttributeSet@RRtaManager@ReferenceTestAgent@@QBEHABVTDesC8@@AAVRAttributeSet@ContentAccess@@@Z @ 83 NONAME ; int ReferenceTestAgent::RRtaManager::GetAttributeSet(class TDesC8 const &, class ContentAccess::RAttributeSet &) const
-	?GetWmdrmStringAttributeSet@RRtaData@ReferenceTestAgent@@QBEHAAVRStringAttributeSet@ContentAccess@@@Z @ 84 NONAME ; int ReferenceTestAgent::RRtaData::GetWmdrmStringAttributeSet(class ContentAccess::RStringAttributeSet &) const
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/BWINS/rtaparser_v3u.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-EXPORTS
-	?Cid@CDrmFileContent@ReferenceTestAgent@@QAEABVTDesC8@@XZ @ 1 NONAME ; class TDesC8 const & ReferenceTestAgent::CDrmFileContent::Cid(void)
-	?Cid@CRightsObject@ReferenceTestAgent@@QAEABVTDesC8@@XZ @ 2 NONAME ; class TDesC8 const & ReferenceTestAgent::CRightsObject::Cid(void)
-	?CloseContainer@CDrmFiles@ReferenceTestAgent@@QAEHXZ @ 3 NONAME ; int ReferenceTestAgent::CDrmFiles::CloseContainer(void)
-	?CurrentContainer@CDrmFiles@ReferenceTestAgent@@QAEAAVCDrmFileContainer@2@XZ @ 4 NONAME ; class ReferenceTestAgent::CDrmFileContainer & ReferenceTestAgent::CDrmFiles::CurrentContainer(void)
-	?DrmFilesL@CDrmFilesParser@ReferenceTestAgent@@QAEAAVCDrmFiles@2@XZ @ 5 NONAME ; class ReferenceTestAgent::CDrmFiles & ReferenceTestAgent::CDrmFilesParser::DrmFilesL(void)
-	?DrmRightsL@CDrmRightsParser@ReferenceTestAgent@@QAEAAVCDrmRights@2@XZ @ 6 NONAME ; class ReferenceTestAgent::CDrmRights & ReferenceTestAgent::CDrmRightsParser::DrmRightsL(void)
-	?EvaluateIntent@CRightsObject@ReferenceTestAgent@@QAEHW4TIntent@ContentAccess@@@Z @ 7 NONAME ; int ReferenceTestAgent::CRightsObject::EvaluateIntent(enum ContentAccess::TIntent)
-	?ExecuteIntentL@CRightsObject@ReferenceTestAgent@@QAEXW4TIntent@ContentAccess@@@Z @ 8 NONAME ; void ReferenceTestAgent::CRightsObject::ExecuteIntentL(enum ContentAccess::TIntent)
-	?ExternalizeL@CRightsObject@ReferenceTestAgent@@QAEXAAVRWriteStream@@@Z @ 9 NONAME ; void ReferenceTestAgent::CRightsObject::ExternalizeL(class RWriteStream &)
-	?FindL@CDrmFiles@ReferenceTestAgent@@QAEAAVCDrmFileContent@2@ABVTDesC16@@@Z @ 10 NONAME ; class ReferenceTestAgent::CDrmFileContent & ReferenceTestAgent::CDrmFiles::FindL(class TDesC16 const &)
-	?GetAttribute@CDrmFileContent@ReferenceTestAgent@@QAEHHAAH@Z @ 11 NONAME ; int ReferenceTestAgent::CDrmFileContent::GetAttribute(int, int &)
-	?GetAttributeSet@CDrmFileContent@ReferenceTestAgent@@QAEHAAVRAttributeSet@ContentAccess@@@Z @ 12 NONAME ; int ReferenceTestAgent::CDrmFileContent::GetAttributeSet(class ContentAccess::RAttributeSet &)
-	?GetEmbeddedObjectsL@CDrmFileContainer@ReferenceTestAgent@@QAEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@@Z @ 13 NONAME ; void ReferenceTestAgent::CDrmFileContainer::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &)
-	?GetEmbeddedObjectsL@CDrmFileContainer@ReferenceTestAgent@@QAEXAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@W4TEmbeddedType@4@@Z @ 14 NONAME ; void ReferenceTestAgent::CDrmFileContainer::GetEmbeddedObjectsL(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, enum ContentAccess::TEmbeddedType)
-	?GetStringAttribute@CDrmFileContent@ReferenceTestAgent@@QAEHHAAVTDes16@@@Z @ 15 NONAME ; int ReferenceTestAgent::CDrmFileContent::GetStringAttribute(int, class TDes16 &)
-	?GetStringAttributeSet@CDrmFileContent@ReferenceTestAgent@@QAEHAAVRStringAttributeSet@ContentAccess@@@Z @ 16 NONAME ; int ReferenceTestAgent::CDrmFileContent::GetStringAttributeSet(class ContentAccess::RStringAttributeSet &)
-	?MergeL@CRightsObject@ReferenceTestAgent@@QAEXAAV12@@Z @ 17 NONAME ; void ReferenceTestAgent::CRightsObject::MergeL(class ReferenceTestAgent::CRightsObject &)
-	?NewL@CDrmFilesParser@ReferenceTestAgent@@SAPAV12@AAVCVirtualFile@2@@Z @ 18 NONAME ; class ReferenceTestAgent::CDrmFilesParser * ReferenceTestAgent::CDrmFilesParser::NewL(class ReferenceTestAgent::CVirtualFile &)
-	?NewL@CDrmRightsParser@ReferenceTestAgent@@SAPAV12@AAVCVirtualFile@2@@Z @ 19 NONAME ; class ReferenceTestAgent::CDrmRightsParser * ReferenceTestAgent::CDrmRightsParser::NewL(class ReferenceTestAgent::CVirtualFile &)
-	?NewL@CDrmRightsParser@ReferenceTestAgent@@SAPAV12@XZ @ 20 NONAME ; class ReferenceTestAgent::CDrmRightsParser * ReferenceTestAgent::CDrmRightsParser::NewL(void)
-	?NewL@CRightsObject@ReferenceTestAgent@@SAPAV12@AAVRReadStream@@H@Z @ 21 NONAME ; class ReferenceTestAgent::CRightsObject * ReferenceTestAgent::CRightsObject::NewL(class RReadStream &, int)
-	?OpenContainer@CDrmFiles@ReferenceTestAgent@@QAEHABVTDesC16@@@Z @ 22 NONAME ; int ReferenceTestAgent::CDrmFiles::OpenContainer(class TDesC16 const &)
-	?ParseL@CDrmRightsParser@ReferenceTestAgent@@QAEXABVTDesC8@@@Z @ 23 NONAME ; void ReferenceTestAgent::CDrmRightsParser::ParseL(class TDesC8 const &)
-	?Read@CDrmFileContent@ReferenceTestAgent@@QAEHAAVTDes8@@H@Z @ 24 NONAME ; int ReferenceTestAgent::CDrmFileContent::Read(class TDes8 &, int)
-	?Search@CDrmFileContainer@ReferenceTestAgent@@QAEHAAV?$RStreamablePtrArray@VCEmbeddedObject@ContentAccess@@@ContentAccess@@ABVTDesC8@@H@Z @ 25 NONAME ; int ReferenceTestAgent::CDrmFileContainer::Search(class ContentAccess::RStreamablePtrArray<class ContentAccess::CEmbeddedObject> &, class TDesC8 const &, int)
-	?Seek@CDrmFileContent@ReferenceTestAgent@@QAEHW4TSeek@@AA_J@Z @ 26 NONAME ; int ReferenceTestAgent::CDrmFileContent::Seek(enum TSeek, long long &)
-	?Size@CDrmFileContent@ReferenceTestAgent@@QAEHAA_J@Z @ 27 NONAME ; int ReferenceTestAgent::CDrmFileContent::Size(long long &)
-	?WriteDescription@CRightsObject@ReferenceTestAgent@@QAEXAAVRFile@@@Z @ 28 NONAME ; void ReferenceTestAgent::CRightsObject::WriteDescription(class RFile &)
-	?Content@CDrmFiles@ReferenceTestAgent@@QAEAAVCDrmFileContent@2@H@Z @ 29 NONAME ; class ReferenceTestAgent::CDrmFileContent & ReferenceTestAgent::CDrmFiles::Content(int)
-	?ContentCount@CDrmFiles@ReferenceTestAgent@@QAEHXZ @ 30 NONAME ; int ReferenceTestAgent::CDrmFiles::ContentCount(void)
-	?FindL@CDrmFiles@ReferenceTestAgent@@QAEAAVCDrmFileContent@2@ABVTDesC8@@@Z @ 31 NONAME ; class ReferenceTestAgent::CDrmFileContent & ReferenceTestAgent::CDrmFiles::FindL(class TDesC8 const &)
-	?Remove@CDrmRights@ReferenceTestAgent@@QAEXH@Z @ 32 NONAME ; void ReferenceTestAgent::CDrmRights::Remove(int)
-	?Rights@CDrmRights@ReferenceTestAgent@@QAEAAVCRightsObject@2@H@Z @ 33 NONAME ; class ReferenceTestAgent::CRightsObject & ReferenceTestAgent::CDrmRights::Rights(int)
-	?RightsCount@CDrmRights@ReferenceTestAgent@@QAEHXZ @ 34 NONAME ; int ReferenceTestAgent::CDrmRights::RightsCount(void)
-	?SetCommonSourceFileL@CDrmFileContent@ReferenceTestAgent@@QAEXAAVRFile64@@AAVRSemaphore@@_J2@Z @ 35 NONAME ; void ReferenceTestAgent::CDrmFileContent::SetCommonSourceFileL(class RFile64 &, class RSemaphore &, long long, long long)
-	?MimeType@CDrmFileContent@ReferenceTestAgent@@QAEABVTDesC8@@XZ @ 36 NONAME ; class TDesC8 const & ReferenceTestAgent::CDrmFileContent::MimeType(void)
-	?SetEntireFileL@CDrmFiles@ReferenceTestAgent@@QAEXAAVRFile64@@AAVRSemaphore@@_J2@Z @ 37 NONAME ; void ReferenceTestAgent::CDrmFiles::SetEntireFileL(class RFile64 &, class RSemaphore &, long long, long long)
-	?SetDeleteKeyL@CRightsObject@ReferenceTestAgent@@QAEXABVTDesC8@@@Z @ 38 NONAME ; void ReferenceTestAgent::CRightsObject::SetDeleteKeyL(class TDesC8 const &)
-	?DeleteKey@CRightsObject@ReferenceTestAgent@@QAEABVTDesC8@@XZ @ 39 NONAME ; class TDesC8 const & ReferenceTestAgent::CRightsObject::DeleteKey(void)
-	?Read@CDrmFileContent@ReferenceTestAgent@@QAEH_JAAVTDes8@@H@Z @ 40 NONAME ; int ReferenceTestAgent::CDrmFileContent::Read(long long, class TDes8 &, int)
-	?GetStringAttribute@CWmdrmContentParser@ReferenceTestAgent@@QBEHHAAVTDes16@@@Z @ 41 NONAME ; int ReferenceTestAgent::CWmdrmContentParser::GetStringAttribute(int, class TDes16 &) const
-	?GetAttribute@CWmdrmContentParser@ReferenceTestAgent@@QBEHHAAH@Z @ 42 NONAME ; int ReferenceTestAgent::CWmdrmContentParser::GetAttribute(int, int &) const
-	?GetStringAttributeSetL@CWmdrmContentParser@ReferenceTestAgent@@QBEXAAVRStringAttributeSet@ContentAccess@@@Z @ 43 NONAME ; void ReferenceTestAgent::CWmdrmContentParser::GetStringAttributeSetL(class ContentAccess::RStringAttributeSet &) const
-	?GetAttributeSet@CWmdrmContentParser@ReferenceTestAgent@@QBEHAAVRAttributeSet@ContentAccess@@@Z @ 44 NONAME ; int ReferenceTestAgent::CWmdrmContentParser::GetAttributeSet(class ContentAccess::RAttributeSet &) const
-	?NewL@CWmdrmContentParser@ReferenceTestAgent@@SAPAV12@ABVTDesC8@@@Z @ 45 NONAME ; class ReferenceTestAgent::CWmdrmContentParser * ReferenceTestAgent::CWmdrmContentParser::NewL(class TDesC8 const &)
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/EABI/rtaParser_v3u.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,87 +0,0 @@
-EXPORTS
-	_ZN18ReferenceTestAgent10CDrmRights11RightsCountEv @ 1 NONAME
-	_ZN18ReferenceTestAgent10CDrmRights6RemoveEi @ 2 NONAME
-	_ZN18ReferenceTestAgent10CDrmRights6RightsEi @ 3 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject12ExternalizeLER12RWriteStream @ 4 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject14EvaluateIntentEN13ContentAccess7TIntentE @ 5 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject14ExecuteIntentLEN13ContentAccess7TIntentE @ 6 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject3CidEv @ 7 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject4NewLER11RReadStreami @ 8 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject6MergeLERS0_ @ 9 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent12GetAttributeEiRi @ 10 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent15GetAttributeSetERN13ContentAccess13RAttributeSetE @ 11 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent18GetStringAttributeEiR6TDes16 @ 12 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent20SetCommonSourceFileLER7RFile64R10RSemaphorexx @ 13 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent21GetStringAttributeSetERN13ContentAccess19RStringAttributeSetE @ 14 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent3CidEv @ 15 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent4ReadER5TDes8i @ 16 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent4SeekE5TSeekRx @ 17 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent4SizeERx @ 18 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent8MimeTypeEv @ 19 NONAME
-	_ZN18ReferenceTestAgent15CDrmFilesParser4NewLERNS_12CVirtualFileE @ 20 NONAME
-	_ZN18ReferenceTestAgent15CDrmFilesParser9DrmFilesLEv @ 21 NONAME
-	_ZN18ReferenceTestAgent16CDrmRightsParser10DrmRightsLEv @ 22 NONAME
-	_ZN18ReferenceTestAgent16CDrmRightsParser4NewLERNS_12CVirtualFileE @ 23 NONAME
-	_ZN18ReferenceTestAgent16CDrmRightsParser4NewLEv @ 24 NONAME
-	_ZN18ReferenceTestAgent16CDrmRightsParser6ParseLERK6TDesC8 @ 25 NONAME
-	_ZN18ReferenceTestAgent17CDrmFileContainer19GetEmbeddedObjectsLERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEE @ 26 NONAME
-	_ZN18ReferenceTestAgent17CDrmFileContainer19GetEmbeddedObjectsLERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEENS1_13TEmbeddedTypeE @ 27 NONAME
-	_ZN18ReferenceTestAgent17CDrmFileContainer6SearchERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEERK6TDesC8i @ 28 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles12ContentCountEv @ 29 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles13OpenContainerERK7TDesC16 @ 30 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles14CloseContainerEv @ 31 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles16CurrentContainerEv @ 32 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles5FindLERK6TDesC8 @ 33 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles5FindLERK7TDesC16 @ 34 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles7ContentEi @ 35 NONAME
-	_ZTIN18ReferenceTestAgent10CDrmRightsE @ 36 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent13CExpiryParserE @ 37 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent13CIntentParserE @ 38 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent13CRightsObjectE @ 39 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent13CRightsParserE @ 40 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent13CStringParserE @ 41 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent14CContentParserE @ 42 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent15CDrmFileContentE @ 43 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent15CDrmFilesParserE @ 44 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent16CAttributeParserE @ 45 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent16CContainerParserE @ 46 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent16CDrmRightsParserE @ 47 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent17CDrmFileContainerE @ 48 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent17CParseHandlerBaseE @ 49 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent20CRightsCriteriaCountE @ 50 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent21CRightsCriteriaExpiryE @ 51 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent22CStringAttributeParserE @ 52 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent7CIntentE @ 53 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent9CDrmFilesE @ 54 NONAME ; #<TI>#
-	_ZTIN18ReferenceTestAgent9MCriteriaE @ 55 NONAME ; #<TI>#
-	_ZTVN18ReferenceTestAgent10CDrmRightsE @ 56 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent13CExpiryParserE @ 57 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent13CIntentParserE @ 58 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent13CRightsObjectE @ 59 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent13CRightsParserE @ 60 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent13CStringParserE @ 61 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent14CContentParserE @ 62 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent15CDrmFileContentE @ 63 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent15CDrmFilesParserE @ 64 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent16CAttributeParserE @ 65 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent16CContainerParserE @ 66 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent16CDrmRightsParserE @ 67 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent17CDrmFileContainerE @ 68 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent17CParseHandlerBaseE @ 69 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent20CRightsCriteriaCountE @ 70 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent21CRightsCriteriaExpiryE @ 71 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent22CStringAttributeParserE @ 72 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent7CIntentE @ 73 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent9CDrmFilesE @ 74 NONAME ; #<VT>#
-	_ZTVN18ReferenceTestAgent9MCriteriaE @ 75 NONAME ; #<VT>#
-	_ZN18ReferenceTestAgent13CRightsObject16WriteDescriptionER5RFile @ 76 NONAME
-	_ZN18ReferenceTestAgent9CDrmFiles14SetEntireFileLER7RFile64R10RSemaphorexx @ 77 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject13SetDeleteKeyLERK6TDesC8 @ 78 NONAME
-	_ZN18ReferenceTestAgent13CRightsObject9DeleteKeyEv @ 79 NONAME
-	_ZN18ReferenceTestAgent15CDrmFileContent4ReadExR5TDes8i @ 80 NONAME
-	_ZN18ReferenceTestAgent19CWmdrmContentParser4NewLERK6TDesC8 @ 81 NONAME
-	_ZNK18ReferenceTestAgent19CWmdrmContentParser12GetAttributeEiRi @ 82 NONAME
-	_ZNK18ReferenceTestAgent19CWmdrmContentParser15GetAttributeSetERN13ContentAccess13RAttributeSetE @ 83 NONAME
-	_ZNK18ReferenceTestAgent19CWmdrmContentParser18GetStringAttributeEiR6TDes16 @ 84 NONAME
-	_ZNK18ReferenceTestAgent19CWmdrmContentParser22GetStringAttributeSetLERN13ContentAccess19RStringAttributeSetE @ 85 NONAME
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/EABI/rtaclient_v3u.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-EXPORTS
-	_ZN18ReferenceTestAgent10RRtaRights10AddRightsLERNS_13CRightsObjectE @ 1 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights15ClearAllRightsLEv @ 2 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights19DumpRightsDatabaseLERK7TDesC16 @ 3 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights7ConnectEv @ 4 NONAME
-	_ZN18ReferenceTestAgent10RRtaRightsC1Ev @ 5 NONAME
-	_ZN18ReferenceTestAgent10RRtaRightsC2Ev @ 6 NONAME
-	_ZN18ReferenceTestAgent8RRtaData14ExecuteIntentLEN13ContentAccess7TIntentE @ 7 NONAME
-	_ZN18ReferenceTestAgent8RRtaData15EvaluateIntentLEN13ContentAccess7TIntentE @ 8 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4OpenER5RFileRK7TDesC16 @ 9 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4OpenERK7TDesC16S3_j @ 10 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4ReadER5TDes8i @ 11 NONAME
-	_ZN18ReferenceTestAgent8RRtaData8DataSizeERx @ 12 NONAME
-	_ZN18ReferenceTestAgent8RRtaDataC1Ev @ 13 NONAME
-	_ZN18ReferenceTestAgent8RRtaDataC2Ev @ 14 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData12GetAttributeEiRi @ 15 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData15GetAttributeSetERN13ContentAccess13RAttributeSetE @ 16 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData18GetStringAttributeEiR6TDes16 @ 17 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData21GetStringAttributeSetERN13ContentAccess19RStringAttributeSetE @ 18 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData4SeekE5TSeekRx @ 19 NONAME
-	_ZN18ReferenceTestAgent11RRtaManager7ConnectEv @ 20 NONAME
-	_ZN18ReferenceTestAgent11RRtaManagerC1Ev @ 21 NONAME
-	_ZN18ReferenceTestAgent11RRtaManagerC2Ev @ 22 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager10DeleteFileERK7TDesC16 @ 23 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager10RenameFileERK7TDesC16S3_ @ 24 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager12GetAttributeERKN13ContentAccess15TVirtualPathPtrEiRi @ 25 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager15GetAttributeSetERKN13ContentAccess15TVirtualPathPtrERNS1_13RAttributeSetE @ 26 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager18GetStringAttributeERKN13ContentAccess15TVirtualPathPtrEiR6TDes16 @ 27 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager21GetStringAttributeSetERKN13ContentAccess15TVirtualPathPtrERNS1_19RStringAttributeSetE @ 28 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager5MkDirERK7TDesC16 @ 29 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager5RmDirERK7TDesC16 @ 30 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager6GetDirERK7TDesC168TUidTypejRP4CDir @ 31 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager6GetDirERK7TDesC16jjRP4CDir @ 32 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager6GetDirERK7TDesC16jjRP4CDirS6_ @ 33 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager8CopyFileERK7TDesC16S3_ @ 34 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager8MkDirAllERK7TDesC16 @ 35 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager9RenameDirERK7TDesC16S3_ @ 36 NONAME
-	_ZN18ReferenceTestAgent11RRtaContent4OpenER5RFile @ 37 NONAME
-	_ZN18ReferenceTestAgent11RRtaContent4OpenERK7TDesC16j @ 38 NONAME
-	_ZN18ReferenceTestAgent11RRtaContentC1Ev @ 39 NONAME
-	_ZN18ReferenceTestAgent11RRtaContentC2Ev @ 40 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent12GetAttributeERK7TDesC16iRi @ 41 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent13OpenContainerERK7TDesC16 @ 42 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent14CloseContainerEv @ 43 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent15GetAttributeSetERK7TDesC16RN13ContentAccess13RAttributeSetE @ 44 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent18GetStringAttributeERK7TDesC16iR6TDes16 @ 45 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent19GetEmbeddedObjectsLERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEE @ 46 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent19GetEmbeddedObjectsLERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEENS1_13TEmbeddedTypeE @ 47 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent21GetStringAttributeSetERK7TDesC16RN13ContentAccess19RStringAttributeSetE @ 48 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent6SearchERN13ContentAccess19RStreamablePtrArrayINS1_15CEmbeddedObjectEEERK6TDesC8i @ 49 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager8CopyFileER5RFileRK7TDesC16 @ 50 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights18DeleteRightsByKeyLERK6TDesC8 @ 51 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights15EraseDeleteKeyLERK6TDesC8 @ 52 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4ReadExR5TDes8i @ 53 NONAME
-	_ZN18ReferenceTestAgent10RRtaRights21ReloadRightsDatabaseLERK7TDesC16 @ 54 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager12GetAttributeEiRiR5RFileRK7TDesC16 @ 55 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager15GetAttributeSetERN13ContentAccess13RAttributeSetER5RFileRK7TDesC16 @ 56 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager18GetStringAttributeEiR6TDes16R5RFileRK7TDesC16 @ 57 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager21GetStringAttributeSetERN13ContentAccess19RStringAttributeSetER5RFileRK7TDesC16 @ 58 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent11SetPropertyEN13ContentAccess14TAgentPropertyEi @ 59 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent12DisplayInfoLEN13ContentAccess12TDisplayInfoERK7TDesC16 @ 60 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent14RequestRightsLERK7TDesC16 @ 61 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent19CancelRequestRightsERK7TDesC16 @ 62 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent19NotifyStatusChangeLEN13ContentAccess10TEventMaskERK7TDesC16 @ 63 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent20AgentSpecificCommandEiRK6TDesC8R5TDes8 @ 64 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent24CancelNotifyStatusChangeERK7TDesC16 @ 65 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager11SetPropertyEN13ContentAccess14TAgentPropertyEi @ 66 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager12DisplayInfoLEN13ContentAccess12TDisplayInfoER5RFileRK7TDesC16 @ 67 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager12DisplayInfoLEN13ContentAccess12TDisplayInfoERKNS1_15TVirtualPathPtrE @ 68 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager19NotifyStatusChangeLERK7TDesC16N13ContentAccess10TEventMaskE @ 69 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager20AgentSpecificCommandEiRK6TDesC8R5TDes8 @ 70 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager22DisplayManagementInfoLEv @ 71 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager24CancelNotifyStatusChangeERK7TDesC16 @ 72 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData11SetPropertyEN13ContentAccess14TAgentPropertyEi @ 73 NONAME
-	_ZN18ReferenceTestAgent11RRtaContent4OpenERK6TDesC8 @ 74 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4OpenERK6TDesC8 @ 75 NONAME
-	_ZN18ReferenceTestAgent8RRtaData4ReadERK6TDesC8R5TDes8 @ 76 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent17GetWmdrmAttributeERK7TDesC16iRi @ 77 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent20GetWmdrmAttributeSetERK7TDesC16RN13ContentAccess13RAttributeSetE @ 78 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent23GetWmdrmStringAttributeERK7TDesC16iR6TDes16 @ 79 NONAME
-	_ZNK18ReferenceTestAgent11RRtaContent26GetWmdrmStringAttributeSetERK7TDesC16RN13ContentAccess19RStringAttributeSetE @ 80 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager12GetAttributeERK6TDesC8iRi @ 81 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager15GetAttributeSetERK6TDesC8RN13ContentAccess13RAttributeSetE @ 82 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager18GetStringAttributeERK6TDesC8iR6TDes16 @ 83 NONAME
-	_ZNK18ReferenceTestAgent11RRtaManager21GetStringAttributeSetERK6TDesC8RN13ContentAccess19RStringAttributeSetE @ 84 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData17GetWmdrmAttributeEiRi @ 85 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData20GetWmdrmAttributeSetERN13ContentAccess13RAttributeSetE @ 86 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData23GetWmdrmStringAttributeEiR6TDes16 @ 87 NONAME
-	_ZNK18ReferenceTestAgent8RRtaData26GetWmdrmStringAttributeSetERN13ContentAccess19RStringAttributeSetE @ 88 NONAME
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAParser/wmdrmcontentparser.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "wmdrmcontentparser.h"
-#include <caf/caferr.h>
-
-using namespace ReferenceTestAgent;
-using namespace ContentAccess;
-
-EXPORT_C CWmdrmContentParser* CWmdrmContentParser::NewL(const TDesC8& aHeaderData)
-	{
-	CWmdrmContentParser* self = new (ELeave) CWmdrmContentParser;
-	CleanupStack::PushL(self);
-	self->ConstructL(aHeaderData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-
-CWmdrmContentParser::CWmdrmContentParser()
-	{
-	}
-
-
-void CWmdrmContentParser::ConstructL(const TDesC8& aHeaderData)
-	{
-	iHeaderData = aHeaderData.AllocL();	
-	
-	// Initialise default attributes.
-	CreateAttributeSetL();
-	CreateStringAttributeSetL();
-	}
-	
-void CWmdrmContentParser::CreateAttributeSetL()
-	{
-	// Initialise attributes
-	SetAttributeL(EIsProtected, ETrue, KErrNone);
-	SetAttributeL(EIsForwardable, EFalse, KErrNone);
-	SetAttributeL(EIsModifyable, EFalse, KErrNone);
-	SetAttributeL(EIsCopyable, EFalse, KErrNone);
-	SetAttributeL(ECanPlay, EFalse, KErrNone);
-	SetAttributeL(ECanPrint, EFalse, KErrNone);
-	SetAttributeL(ECanExecute, EFalse, KErrNone);
-	SetAttributeL(ECanView, EFalse, KErrNone);
-	SetAttributeL(ERightsNone, ETrue, KErrNone);
-	SetAttributeL(ERightsPending, EFalse, KErrNone);
-	SetAttributeL(ERightsHaveExpired, EFalse, KErrNone);
-	SetAttributeL(EPreviewAvailable, EFalse, KErrNone);
-	SetAttributeL(ECanRewind, EFalse, KErrNone);
-	SetAttributeL(ECopyPaste, EFalse, KErrNone);
-	SetAttributeL(ERightsConsumable, EFalse, KErrNone);
-	SetAttributeL(ERightsStateless, EFalse, KErrNone);
-	SetAttributeL(ECanMove, ETrue, KErrNone);
-	SetAttributeL(ECanRename, ETrue, KErrNone);
-	SetAttributeL(ECanAutomaticConsume, EFalse, KErrNone);
-	}
-	
-void CWmdrmContentParser::CreateStringAttributeSetL()
-	{
-	// Initialise string attributes.
-	_LIT(KDescription, "WMDRM");
-	SetStringAttributeL(EDescription , KDescription, KErrNone);
-	
-	_LIT(KMimeType, "application/vnd.drm.asf");
-
-	SetStringAttributeL(EMimeType, KMimeType, KErrNone);
-	}
-
-void CWmdrmContentParser::SetAttributeL(TInt aAttribute, TInt aValue, TInt aErrorCode)	
-	{
-	iAttributeSet.AddL(aAttribute);
-	User::LeaveIfError(iAttributeSet.SetValue(aAttribute, aValue, aErrorCode));
-	}
-	
-void CWmdrmContentParser::SetStringAttributeL(TInt aAttribute, const TDesC& aValue, TInt aErrorCode)	
-	{
-	iStringAttributeSet.AddL(aAttribute);
-	User::LeaveIfError(iStringAttributeSet.SetValue(aAttribute, aValue, aErrorCode));
-	}
-	
-CWmdrmContentParser::~CWmdrmContentParser()
-	{
-	delete iHeaderData;
-	
-	iAttributeSet.Close();
-	iStringAttributeSet.Close();
-	}
-
-EXPORT_C TInt CWmdrmContentParser::GetAttribute(TInt aAttribute, TInt& aValue) const
-	{
-	return iAttributeSet.GetValue(aAttribute, aValue);
-	}
-	
-EXPORT_C TInt CWmdrmContentParser::GetStringAttribute(TInt aAttribute, TDes& aValue) const
-	{
-	return iStringAttributeSet.GetValue(aAttribute, aValue);
-	}
-	
-EXPORT_C TInt CWmdrmContentParser::GetAttributeSet(RAttributeSet &aAttributeSet) const
-	{
-	TInt value = 0;
-	TInt err = KErrNone;
-	for(TInt i = 0; i < aAttributeSet.Count(); i++)
-		{
-		TInt attribute = aAttributeSet[i];
-		err = GetAttribute(attribute, value);
-		if(err != KErrNone)
-			{
-			break;
-			}
-	
-		aAttributeSet.SetValue(attribute, value, err);
-		}
-	return err;
-	}
-
-EXPORT_C void CWmdrmContentParser::GetStringAttributeSetL(RStringAttributeSet &aStringAttributeSet) const
-	{
-	for(TInt i = 0; i < aStringAttributeSet.Count(); i++)
-		{
-		TInt attribute = aStringAttributeSet[i];
-		HBufC* value = HBufC::NewLC(iStringAttributeSet.GetValueLength(attribute));
-		TPtr valuePtr = value->Des();
-		User::LeaveIfError(GetStringAttribute(attribute, valuePtr));
-		aStringAttributeSet.SetValue(attribute, valuePtr, KErrNone);
-		CleanupStack::PopAndDestroy(value);
-		}
-	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtacontent.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtacontent.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -266,11 +266,7 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void RRtaContent::GetAttributeSetL (const TDesC& aUniqueId, RAttributeSet &aAttributeSet, TBool aWmdrmFlag) const     
-#else  
 void RRtaContent::GetAttributeSetL (const TDesC& aUniqueId, RAttributeSet &aAttributeSet) const
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	{
 	TInt err = KErrOverflow;
 	TInt length = 0;
@@ -299,15 +295,8 @@
 		transferBuffer->Des().Copy(bufPtr);
 		TPtr8 transferPtr = transferBuffer->Des();
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        if(aWmdrmFlag)     
-            err = SendReceive(EWMDRMGetAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));     
-        else     
-            err = SendReceive(EGetAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));     
-#else 
 		// attempt to retrieve the attributes
 		err = SendReceive(EGetAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		if(err == KErrOverflow)
 			{
 			// Find out the length required to receive the resulting attribute set
@@ -339,11 +328,7 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void RRtaContent::GetStringAttributeSetL(const TDesC& aUniqueId, RStringAttributeSet &aStringAttributeSet, TBool aWmdrmFlag) const       
-#else 
 void RRtaContent::GetStringAttributeSetL (const TDesC& aUniqueId, RStringAttributeSet &aStringAttributeSet) const
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	{
 	TInt err = KErrOverflow;
 	TInt length = 0;
@@ -371,15 +356,8 @@
 		HBufC8* transferBuffer = HBufC8::NewLC(length);
 		transferBuffer->Des().Copy(bufPtr);
 		TPtr8 transferPtr = transferBuffer->Des();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        if(aWmdrmFlag)     
-            err = SendReceive(EWMDRMGetStringAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));     
-        else     
-            err = SendReceive(EGetStringAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));     
-#else    
 		// attempt to retrieve the attributes
 		err = SendReceive(EGetStringAttributeSet, TIpcArgs(&aUniqueId, &transferPtr));	
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		if(err == KErrOverflow)
 			{
 			// Find out the length required to receive the resulting attribute set
@@ -496,66 +474,3 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-EXPORT_C TInt RRtaContent::Open(const TDesC8& aHeaderData)     
-    {     
-    TInt err = RRtaClient::Connect();     
-    if (err != KErrNone)     
-        {     
-        return err;     
-        }     
-         
-    if(IsDrmCapabilityEnforced())     
-        {     
-        err = SendReceive(ECreateContentMessageHandler, TIpcArgs());     
-        if(err != KErrNone)     
-            {     
-            return err;     
-            }     
-             
-        err = SendReceive(EReadWMDRMHeaderData, TIpcArgs(&aHeaderData));     
-        }     
-             
-    else     
-        {     
-        err = SendReceive(ENoEnforceCreateContentMessageHandler, TIpcArgs());     
-        if(err != KErrNone)     
-            {     
-            return err;     
-            }     
-                 
-        err = SendReceive(ENoEnforceReadWMDRMHeaderData, TIpcArgs(&aHeaderData));     
-        }     
-             
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaContent::GetWmdrmAttribute(const TDesC& /*aUniqueId*/, TInt aAttribute, TInt& aValue) const     
-    {     
-    TPckg<TInt> valuePkg(aValue);     
-    TInt result = SendReceive(EWMDRMGetAttribute, TIpcArgs(aAttribute, &valuePkg));     
-    return result;     
-    }     
-         
-EXPORT_C TInt RRtaContent::GetWmdrmAttributeSet(const TDesC& aUniqueId, ContentAccess::RAttributeSet& aAttributeSet) const     
-    {     
-    TRAPD( err, GetAttributeSetL(aUniqueId, aAttributeSet, ETrue));     
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaContent::GetWmdrmStringAttribute(const TDesC& /*aUniqueId*/, TInt aAttribute, TDes& aValue) const     
-    {     
-    TIpcArgs ipcArgs(aAttribute, &aValue);     
-    TInt result = SendReceive(EWMDRMGetStringAttribute, ipcArgs);     
-    return result;     
-    }     
-      
-EXPORT_C TInt RRtaContent::GetWmdrmStringAttributeSet(const TDesC& aUniqueId, ContentAccess::RStringAttributeSet& aStringAttributeSet) const     
-    {     
-    TRAPD( err, GetStringAttributeSetL(aUniqueId, aStringAttributeSet, ETrue));     
-    return err;     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtadata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtadata.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -234,11 +234,7 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void RRtaData::GetAttributeSetL (RAttributeSet &aAttributeSet, TBool aWmdrmFlag) const     
-#else 
 void RRtaData::GetAttributeSetL (RAttributeSet &aAttributeSet) const
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	{
 	TInt err = KErrOverflow;
 	TInt length = 0;
@@ -267,15 +263,8 @@
 		transferBuffer->Des().Copy(bufPtr);
 		TPtr8 transferPtr = transferBuffer->Des();
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        if(aWmdrmFlag)     
-            err = SendReceive(EWMDRMGetAttributeSet, TIpcArgs(&transferPtr));     
-        else     
-            err = SendReceive(EGetAttributeSet, TIpcArgs(&transferPtr));         
-#else 
 		// attempt to retrieve the attributes
 		err = SendReceive(EGetAttributeSet, TIpcArgs(&transferPtr));	
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		if(err == KErrOverflow)
 			{
 			// Find out the length required to receive the resulting attribute set
@@ -307,11 +296,7 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void RRtaData::GetStringAttributeSetL (RStringAttributeSet &aStringAttributeSet, TBool aWmdrmFlag) const     
-#else 
 void RRtaData::GetStringAttributeSetL (RStringAttributeSet &aStringAttributeSet) const
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	{
 	TInt err = KErrOverflow;
 	TInt length = 0;
@@ -340,15 +325,8 @@
 		transferBuffer->Des().Copy(bufPtr);
 		TPtr8 transferPtr = transferBuffer->Des();
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        if(aWmdrmFlag)     
-            err = SendReceive(EWMDRMGetStringAttributeSet, TIpcArgs(&transferPtr));     
-        else     
-            err = SendReceive(EGetStringAttributeSet, TIpcArgs(&transferPtr));       
-#else 
 		// attempt to retrieve the attributes
 		err = SendReceive(EGetStringAttributeSet, TIpcArgs(&transferPtr));	
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		if(err == KErrOverflow)
 			{
 			// Find out the length required to receive the resulting attribute set
@@ -384,77 +362,3 @@
 	return err;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-EXPORT_C TInt RRtaData::Open(const TDesC8& aHeaderData)     
-    {     
-    TInt err = RRtaClient::Connect();     
-    if(err != KErrNone)     
-        {     
-        return err;     
-        }     
-         
-    if(IsDrmCapabilityEnforced())     
-        {     
-        err = SendReceive(ECreateDataMessageHandler, TIpcArgs());     
-        if(err != KErrNone)     
-            return err;     
-             
-        err = SendReceive(EReadWMDRMHeaderData, TIpcArgs(&aHeaderData));     
-        }     
-             
-    else     
-        {     
-        err = SendReceive(ENoEnforceCreateDataMessageHandler, TIpcArgs());     
-        if(err != KErrNone)     
-            return err;     
-             
-        err = SendReceive(ENoEnforceReadWMDRMHeaderData, TIpcArgs(&aHeaderData));     
-        }     
-      
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaData::Read(const TDesC8& aEncryptedInputPacket, TDes8& aDecryptedOutputPacket)     
-    {     
-    TInt err = 0;     
-    if(IsDrmCapabilityEnforced())     
-        {     
-        err =  SendReceive(EReadWMDRMDataPacket, TIpcArgs(&aEncryptedInputPacket, &aDecryptedOutputPacket));         
-        }     
-    else     
-        {     
-        err =  SendReceive(ENoEnforceReadWMDRMDataPacket, TIpcArgs(&aEncryptedInputPacket, &aDecryptedOutputPacket));        
-        }     
-         
-    return err;     
-    }     
-         
-      
-EXPORT_C TInt RRtaData::GetWmdrmAttribute(TInt aAttribute, TInt& aValue) const     
-    {     
-    TPckg<TInt> valuePkg(aValue);     
-    TInt err = SendReceive(EWMDRMGetAttribute, TIpcArgs(aAttribute, &valuePkg));     
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaData::GetWmdrmAttributeSet(ContentAccess::RAttributeSet& aAttributeSet) const     
-    {     
-    TRAPD( err, GetAttributeSetL(aAttributeSet, ETrue));     
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaData::GetWmdrmStringAttribute(TInt aAttribute, TDes& aValue) const     
-    {     
-    return SendReceive(EWMDRMGetStringAttribute, TIpcArgs(aAttribute, &aValue));     
-    }     
-      
-EXPORT_C TInt RRtaData::GetWmdrmStringAttributeSet(ContentAccess::RStringAttributeSet& aStringAttributeSet) const     
-    {     
-    TRAPD( err, GetStringAttributeSetL(aStringAttributeSet, ETrue));     
-    return err;     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtamanager.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Client/rtamanager.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -737,94 +737,3 @@
 		}
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-EXPORT_C TInt RRtaManager::GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const     
-    {     
-    TPckg<TInt> valuePkg(aValue);     
-    TInt result = SendReceive(EWMDRMGetAttribute, TIpcArgs(&aHeaderData, aAttribute, &valuePkg));     
-    return result;     
-    }     
-         
-EXPORT_C TInt RRtaManager::GetAttributeSet(const TDesC8& aHeaderData, ContentAccess::RAttributeSet& aAttributeSet) const     
-    {     
-    TRAPD(err, GetAttributeSetL (aHeaderData, aAttributeSet));     
-    return err;     
-    }     
-         
-EXPORT_C TInt RRtaManager::GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const     
-    {     
-    TInt result = SendReceive(EWMDRMGetStringAttribute, TIpcArgs(&aHeaderData, aAttribute, &aValue));     
-    return result;     
-    }     
-      
-EXPORT_C TInt RRtaManager::GetStringAttributeSet(const TDesC8& aHeaderData, ContentAccess::RStringAttributeSet& aStringAttributeSet) const     
-    {     
-    TRAPD(err, GetStringAttributeSetL(aHeaderData, aStringAttributeSet));     
-    return err;     
-    }     
-         
-void RRtaManager::GetAttributeSetL(const TDesC8& aHeaderData, ContentAccess::RAttributeSet& aAttributeSet) const     
-    {     
-    // dynamic buffer since we don't know in advance the size required     
-    CBufFlat* buffer = CBufFlat::NewL(KDefaultBufferSize);     
-    CleanupStack::PushL(buffer);     
-         
-    RBufWriteStream stream(*buffer);     
-    CleanupClosePushL(stream);     
-         
-    // write the directory to the stream     
-    aAttributeSet.ExternalizeL(stream);     
-    CleanupStack::PopAndDestroy(&stream);     
-         
-    // Create an HBufC8 from the stream buf's length, and copy      
-    // the stream buffer into this descriptor     
-    HBufC8* transferBuffer = HBufC8::NewLC(buffer->Size() * 15);     
-    TPtr8 ptr = buffer->Ptr(0);     
-    transferBuffer->Des().Copy(ptr);     
-    TPtr8 transferPtr = transferBuffer->Des();     
-         
-    User::LeaveIfError(SendReceive(EWMDRMGetAttributeSet, TIpcArgs(&aHeaderData, &transferPtr)));     
-      
-    // read in the attribute values from the buffer     
-    RDesReadStream readStream(transferPtr);     
-    CleanupClosePushL(readStream);     
-    aAttributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(&readStream);     
-         
-    CleanupStack::PopAndDestroy(2, buffer);     
-    }     
-         
-void RRtaManager::GetStringAttributeSetL(const TDesC8& aHeaderData, ContentAccess::RStringAttributeSet& aStringAttributeSet) const     
-    {     
-    // dynamic buffer since we don't know in advance the size required     
-    CBufFlat* buffer = CBufFlat::NewL(KDefaultBufferSize);     
-    CleanupStack::PushL(buffer);     
-         
-    RBufWriteStream stream(*buffer);     
-    CleanupClosePushL(stream);     
-         
-    // write the directory to the stream     
-    aStringAttributeSet.ExternalizeL(stream);     
-    CleanupStack::PopAndDestroy(&stream);     
-         
-    // Create an HBufC8 from the stream buf's length, and copy      
-    // the stream buffer into this descriptor     
-    HBufC8* transferBuffer = HBufC8::NewLC(buffer->Size()*15);     
-    TPtr8 ptr = buffer->Ptr(0);     
-    transferBuffer->Des().Copy(ptr);     
-    TPtr8 transferPtr = transferBuffer->Des();     
-         
-    User::LeaveIfError(SendReceive(EWMDRMGetStringAttributeSet, TIpcArgs(&aHeaderData, &transferPtr)));     
-         
-    // read in the attribute values from the buffer     
-    RDesReadStream readStream(transferPtr);     
-    CleanupClosePushL(readStream);     
-    aStringAttributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(&readStream);     
-                     
-    CleanupStack::PopAndDestroy(2, buffer);     
-    }     
-         
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Common/clientserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Common/clientserver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -116,15 +116,7 @@
 		EManagerDisplayManagementInfo = 105,
 
 		EDataSetProperty = 106,
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        EReadWMDRMHeaderData = 107,     
-        EReadWMDRMDataPacket = 108,     
-        EWMDRMGetAttribute = 109,     
-        EWMDRMGetStringAttribute = 110,     
-        EWMDRMGetAttributeSet = 111,     
-        EWMDRMGetStringAttributeSet = 112,     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-		
+
 		// These operations do not require DRM capability
 		ESeparatorUnprotected   = 500,
 		EGetAttribute			= 501,
@@ -132,15 +124,6 @@
 		EGetStringAttribute 	= 503,
 		EGetStringAttributeSet  = 504,
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-        ENoEnforceReadWMDRMHeaderData = 701,     
-        ENoEnforceReadWMDRMDataPacket = 702,     
-        ENoEnforceWMDRMGetAttribute = 703,     
-        ENoEnforceWMDRMGetStringAttribute = 704,     
-        ENoEnforceWMDRMGetAttributeSet = 705,     
-        ENoEnforceWMDRMGetStringAttributeSet = 706,     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 		// IPC messages to use when DRM capability enforcing is disabled
 		ENoEnforceAddRights		 = 1001,
 		ENoEnforceEvaluateIntent = 1002,
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -50,9 +50,6 @@
 	{
 	delete iArchive;
 	iFile.Close();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    delete iWmdrmContentObject;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 	}
 
 void CRtaContentHandler::ServiceL(const RMessage2& aMessage)
@@ -130,32 +127,7 @@
 	case ENoEnforceContentSetProperty:
 		SetPropertyL(aMessage);
 		break;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    case EReadWMDRMHeaderData:     
-    case ENoEnforceReadWMDRMHeaderData:     
-        ReadWMDRMHeaderL(aMessage);     
-        break;     
-         
-    case EWMDRMGetAttribute:     
-    case ENoEnforceWMDRMGetAttribute:     
-        GetWMDRMAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetAttributeSet:     
-    case ENoEnforceWMDRMGetAttributeSet:     
-        GetWMDRMAttributeSetL(aMessage);     
-        break;     
-         
-    case EWMDRMGetStringAttribute:     
-    case ENoEnforceWMDRMGetStringAttribute:     
-        GetWMDRMStringAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetStringAttributeSet:     
-    case ENoEnforceWMDRMGetStringAttributeSet:     
-        GetWMDRMStringAttributeSetL(aMessage);     
-        break;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
+
 	default:
 		CRtaSession::PanicClient(aMessage,EPanicIllegalFunction);
 		break;
@@ -407,102 +379,3 @@
 	User::Leave(KErrCANotSupported);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-void CRtaContentHandler::ReadWMDRMHeaderL(const RMessage2& aMessage)     
-    {     
-    HBufC8* headerData = ReadDesC8LC(aMessage, 0);       
-    iWmdrmContentObject = CWmdrmContentParser::NewL(*headerData);     
-         
-    CleanupStack::PopAndDestroy(headerData);     
-    }     
-         
-void CRtaContentHandler::GetWMDRMAttributeL(const RMessage2& aMessage)     
-    {     
-    TInt attribute = aMessage.Int0();     
-    TInt value;     
-    TPckg<TInt> valuePkg(value);     
-      
-    User::LeaveIfError(iWmdrmContentObject->GetAttribute(attribute, value));     
-    WriteL(aMessage, 1, valuePkg);     
-    }     
-         
-void CRtaContentHandler::GetWMDRMStringAttributeL(const RMessage2& aMessage)     
-    {     
-    TInt attribute = aMessage.Int0();     
-    HBufC* value = ReadDes16LC(aMessage, 1);     
-    TPtr valuePtr = value->Des();     
-      
-    User::LeaveIfError(iWmdrmContentObject->GetStringAttribute(attribute, valuePtr));     
-    WriteL(aMessage, 1, valuePtr);     
-         
-    CleanupStack::PopAndDestroy(value);     
-    }     
-         
-void CRtaContentHandler::GetWMDRMAttributeSetL(const RMessage2& aMessage)     
-    {     
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 1);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetAttributeSet(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-         
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 1, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }     
-         
-void CRtaContentHandler::GetWMDRMStringAttributeSetL(const RMessage2& aMessage)     
-    {     
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 1);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetStringAttributeSetL(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 1, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtacontenthandler.h	Wed Sep 01 12:40:57 2010 +0100
@@ -30,9 +30,6 @@
 #include "RTAserver.h"
 #include "rtamessagehandler.h"
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "wmdrmcontentparser.h"     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 namespace ReferenceTestAgent
 	{
@@ -71,13 +68,6 @@
 		void CancelRequestRightsL(const RMessage2& aMessage);
 		void DisplayInfoL(const RMessage2& aMessage);
 		void SetPropertyL(const RMessage2& aMessage);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void ReadWMDRMHeaderL(const RMessage2& aMessage);     
-        void GetWMDRMAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMAttributeSetL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeSetL(const RMessage2& aMessage);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 	private:
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
@@ -86,9 +76,6 @@
 		RFile iFile;
 #endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 		CRefTestAgentArchive* iArchive;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT          
-        CWmdrmContentParser* iWmdrmContentObject;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 		};
 	} //namespace
 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -49,9 +49,6 @@
 	{
 	delete iArchive;
 	iFile.Close();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT          
-    delete iWmdrmContentObject;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 	}
 
 void CRtaDataHandler::ServiceL(const RMessage2& aMessage)
@@ -109,37 +106,7 @@
 	case ENoEnforceDataSetProperty:
 		SetPropertyL(aMessage);
 		break;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    case EReadWMDRMHeaderData:     
-    case ENoEnforceReadWMDRMHeaderData:     
-        ReadWMDRMHeaderL(aMessage);     
-        break;     
-         
-    case EReadWMDRMDataPacket:     
-    case ENoEnforceReadWMDRMDataPacket:     
-        DecryptWMDRMDataPacketL(aMessage);     
-        break;     
-             
-    case EWMDRMGetAttribute:     
-    case ENoEnforceWMDRMGetAttribute:     
-        GetWMDRMAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetAttributeSet:     
-    case ENoEnforceWMDRMGetAttributeSet:     
-        GetWMDRMAttributeSetL(aMessage);     
-        break;     
-         
-    case EWMDRMGetStringAttribute:     
-    case ENoEnforceWMDRMGetStringAttribute:     
-        GetWMDRMStringAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetStringAttributeSet:     
-    case ENoEnforceWMDRMGetStringAttributeSet:     
-        GetWMDRMStringAttributeSetL(aMessage);     
-        break;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT        
+     
 	default:
 		CRtaSession::PanicClient(aMessage,EPanicIllegalFunction);
 		break;
@@ -362,113 +329,3 @@
 	User::Leave(KErrCANotSupported);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-void CRtaDataHandler::ReadWMDRMHeaderL(const RMessage2& aMessage)     
-    {     
-    HBufC8* headerData = ReadDesC8LC(aMessage, 0);       
-    iWmdrmContentObject = CWmdrmContentParser::NewL(*headerData);     
-         
-    CleanupStack::PopAndDestroy(headerData);     
-    }     
-         
-void CRtaDataHandler::DecryptWMDRMDataPacketL(const RMessage2& aMessage)     
-    {     
-    HBufC8* inputPacket = ReadDesC8LC(aMessage, 0);     
-         
-    HBufC8* decryptedPacket = ReadDes8LC(aMessage, 1);     
-    TPtr8 decryptedPacketPtr = decryptedPacket->Des();     
-         
-    decryptedPacketPtr.Copy(*inputPacket);     
-         
-    WriteL(aMessage, 1, decryptedPacketPtr);     
-         
-    CleanupStack::PopAndDestroy(2, inputPacket);     
-    }     
-         
-void CRtaDataHandler::GetWMDRMAttributeL(const RMessage2& aMessage)     
-    {     
-    TInt attribute = aMessage.Int0();     
-    TInt value;     
-    TPckg <TInt> valuePckg(value);               
-    User::LeaveIfError(iWmdrmContentObject->GetAttribute(attribute, value));     
-         
-    WriteL(aMessage, 1, valuePckg);     
-    }     
-         
-void CRtaDataHandler::GetWMDRMStringAttributeL(const RMessage2& aMessage)     
-    {     
-    TInt attribute = aMessage.Int0();     
-    HBufC* value = ReadDes16LC(aMessage, 1);     
-    TPtr valuePtr = value->Des();     
-         
-    User::LeaveIfError(iWmdrmContentObject->GetStringAttribute(attribute, valuePtr));     
-    WriteL(aMessage, 1, valuePtr);     
-         
-    CleanupStack::PopAndDestroy(value);     
-    }     
-         
-void CRtaDataHandler::GetWMDRMAttributeSetL(const RMessage2& aMessage)     
-    {     
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 0);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetAttributeSet(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 0, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }     
-         
-void CRtaDataHandler::GetWMDRMStringAttributeSetL(const RMessage2& aMessage)     
-    {     
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 0);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetStringAttributeSetL(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 0, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }        
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtadatahandler.h	Wed Sep 01 12:40:57 2010 +0100
@@ -30,9 +30,6 @@
 #include "RTAserver.h"
 #include "rtamessagehandler.h"
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "wmdrmcontentparser.h"     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 namespace ReferenceTestAgent
 	{
@@ -64,14 +61,6 @@
 		void GetStringAttributeL(const RMessage2& aMessage);
 		void GetStringAttributeSetL(const RMessage2& aMessage);
 		void SetPropertyL(const RMessage2& aMessage);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void ReadWMDRMHeaderL(const RMessage2& aMessage);     
-        void DecryptWMDRMDataPacketL(const RMessage2& aMessage);     
-        void GetWMDRMAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMAttributeSetL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeSetL(const RMessage2& aMessage);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT    
 
 	private:
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
@@ -83,9 +72,6 @@
 		
 		// this pointer should not be deleted since it points to something owned by iArchive
 		CDrmFileContent* iContentObject;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT          
-        CWmdrmContentParser* iWmdrmContentObject;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 		};
 	} //namespace
 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -68,9 +68,6 @@
 	{
 	delete iArchive;
 	iFile.Close();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    delete iWmdrmContentObject;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 	}
 
 void CRtaManagerHandler::ServiceL(const RMessage2& aMessage)
@@ -173,27 +170,7 @@
 	case ENoEnforceManagerDisplayManagementInfo:
 		DisplayManagementInfoL(aMessage);
 		break;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    case EWMDRMGetAttribute:     
-    case ENoEnforceWMDRMGetAttribute:     
-        GetWMDRMAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetAttributeSet:     
-    case ENoEnforceWMDRMGetAttributeSet:     
-        GetWMDRMAttributeSetL(aMessage);     
-        break;     
-         
-    case EWMDRMGetStringAttribute:     
-    case ENoEnforceWMDRMGetStringAttribute:     
-        GetWMDRMStringAttributeL(aMessage);     
-        break;     
-             
-    case EWMDRMGetStringAttributeSet:     
-    case ENoEnforceWMDRMGetStringAttributeSet:     
-        GetWMDRMStringAttributeSetL(aMessage);     
-        break;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
+
 	default:
 		CRtaSession::PanicClient(aMessage,EPanicIllegalFunction);
 		break;
@@ -570,108 +547,3 @@
 	User::Leave(KErrCANotSupported);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-void CRtaManagerHandler::OpenWmdrmContentObjectL(const RMessage2& aMessage, TInt aHeaderParameter)     
-    {     
-    HBufC8* headerData = ReadDesC8LC(aMessage, aHeaderParameter);        
-    iWmdrmContentObject = CWmdrmContentParser::NewL(*headerData);     
-         
-    CleanupStack::PopAndDestroy(headerData);     
-    }     
-      
-void CRtaManagerHandler::GetWMDRMAttributeL(const RMessage2& aMessage)     
-    {     
-    OpenWmdrmContentObjectL(aMessage, 0);     
-         
-    TInt attribute = aMessage.Int1();     
-    TInt value;     
-    TPckg<TInt> valuePckg(value);     
-      
-    User::LeaveIfError(iWmdrmContentObject->GetAttribute(attribute, value));     
-    WriteL(aMessage, 2, valuePckg);     
-    }     
-         
-void CRtaManagerHandler::GetWMDRMStringAttributeL(const RMessage2& aMessage)     
-    {     
-    OpenWmdrmContentObjectL(aMessage, 0);     
-      
-    TInt attribute = aMessage.Int1();     
-    HBufC* value = ReadDes16LC(aMessage, 2);     
-    TPtr valuePtr = value->Des();     
-      
-    User::LeaveIfError(iWmdrmContentObject->GetStringAttribute(attribute, valuePtr));     
-    WriteL(aMessage, 2, valuePtr);     
-         
-    CleanupStack::PopAndDestroy(value);     
-    }     
-         
-void CRtaManagerHandler::GetWMDRMAttributeSetL(const RMessage2& aMessage)     
-    {     
-    OpenWmdrmContentObjectL(aMessage, 0);     
-         
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 1);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetAttributeSet(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 1, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }     
-         
-void CRtaManagerHandler::GetWMDRMStringAttributeSetL(const RMessage2& aMessage)     
-    {     
-    OpenWmdrmContentObjectL(aMessage, 0);     
-         
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-         
-    HBufC8* value = ReadDes8LC(aMessage, 1);     
-    TPtr8 valuePtr = value->Des();     
-    RDesReadStream readStream(valuePtr);     
-    CleanupClosePushL(readStream);     
-         
-    attributeSet.InternalizeL(readStream);     
-    CleanupStack::PopAndDestroy(2, value);     
-         
-    iWmdrmContentObject->GetStringAttributeSetL(attributeSet);     
-      
-    // Write the object out to a buffer, send to client     
-    CBufFlat* buf = CBufFlat::NewL(50);     
-    CleanupStack::PushL(buf);     
-    // create write stream     
-    RBufWriteStream writeStream(*buf);     
-    CleanupClosePushL(writeStream);     
-         
-    // write the directory to the stream     
-    attributeSet.ExternalizeL(writeStream);     
-    CleanupStack::PopAndDestroy(&writeStream);     
-         
-    TPtr8 bufPtr = buf->Ptr(0);     
-    WriteL(aMessage, 1, bufPtr);     
-             
-    CleanupStack::PopAndDestroy(2, &attributeSet); // buf, attributeSet     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RTAServer/Server/rtamanagerhandler.h	Wed Sep 01 12:40:57 2010 +0100
@@ -30,10 +30,6 @@
 #include "clientserver.h"
 #include "RTAserver.h"
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "wmdrmcontentparser.h"     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 namespace ReferenceTestAgent
 	{
 	class CRefTestAgentArchive;
@@ -82,14 +78,6 @@
 		 */
 		void OpenContentObjectL(const RMessage2& aMessage, TInt aUriOrFileSession, TInt aUniqueIdOrFileHandle);
 		void WriteCDirToMessageL(const RMessage2& aMessage, TInt aParam, CDir& aDir);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-        void GetWMDRMAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeL(const RMessage2& aMessage);     
-        void GetWMDRMAttributeSetL(const RMessage2& aMessage);     
-        void GetWMDRMStringAttributeSetL(const RMessage2& aMessage);     
-             
-        void OpenWmdrmContentObjectL(const RMessage2& aMessage, TInt aParameter);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 	private:
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
@@ -102,9 +90,6 @@
 		
 		// this pointer should not be deleted since it points to something owned by iArchive
 		CDrmFileContent* iContentObject;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-        CWmdrmContentParser* iWmdrmContentObject;     
-#endif  //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 		};
 	
 	} //namespace
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -51,23 +51,6 @@
 	self->ConstructL(aFile);
 	return self;
 	}
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-CRefTestAgentContent* CRefTestAgentContent::NewL(const TDesC8& aHeaderData)  
-	{
-	CRefTestAgentContent* self = NewLC(aHeaderData);    
-    CleanupStack::Pop(self);
-    return self;
-	}
-          
-CRefTestAgentContent* CRefTestAgentContent::NewLC(const TDesC8& aHeaderData)  
-	{
-    CRefTestAgentContent* self = new (ELeave) CRefTestAgentContent;
-	CleanupStack::PushL(self);  
-	self->ConstructL(aHeaderData);
-	return self;
-	}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 
 CRefTestAgentContent::CRefTestAgentContent() 
 	{
@@ -76,9 +59,6 @@
 CRefTestAgentContent::~CRefTestAgentContent()
 	{
 	iContentSession.Close();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    delete iHeaderData;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
   
 void CRefTestAgentContent::ConstructL(const TDesC& aURI, TContentShareMode aShareMode)
@@ -115,14 +95,6 @@
 	CleanupStack::PopAndDestroy(&file);
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void CRefTestAgentContent::ConstructL(const TDesC8& aHeaderData)     
-    {     
-    iHeaderData = aHeaderData.AllocL();     
-    User::LeaveIfError(iContentSession.Open(aHeaderData));     
-    }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 TInt CRefTestAgentContent::OpenContainer(const TDesC& aUniqueId)
 	{
 	return iContentSession.OpenContainer(aUniqueId);
@@ -150,50 +122,22 @@
 
 TInt CRefTestAgentContent::GetAttribute(TInt aAttribute, TInt& aValue, const TDesC& aUniqueId)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)  
-        return iContentSession.GetWmdrmAttribute(aUniqueId, aAttribute, aValue); 
-    else
-        return iContentSession.GetAttribute(aUniqueId, aAttribute, aValue);
-#else
 	return iContentSession.GetAttribute(aUniqueId, aAttribute, aValue);
-#endif
 	}
 
 TInt CRefTestAgentContent::GetAttributeSet(RAttributeSet& aAttributeSet, const TDesC& aUniqueId)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)
-        return iContentSession.GetWmdrmAttributeSet(aUniqueId, aAttributeSet);
-    else
-        return iContentSession.GetAttributeSet(aUniqueId, aAttributeSet);
-#else
 	return iContentSession.GetAttributeSet(aUniqueId, aAttributeSet);
-#endif
 	}
 
 TInt CRefTestAgentContent::GetStringAttribute(TInt aAttribute, TDes& aValue, const TDesC& aUniqueId)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)
-        return iContentSession.GetWmdrmStringAttribute(aUniqueId, aAttribute, aValue);
-    else
-        return iContentSession.GetStringAttribute(aUniqueId, aAttribute, aValue);
-#else
 	return iContentSession.GetStringAttribute(aUniqueId, aAttribute, aValue);
-#endif
 	}
 
 TInt CRefTestAgentContent::GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet, const TDesC& aUniqueId)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)
-        return iContentSession.GetWmdrmStringAttributeSet(aUniqueId, aStringAttributeSet);
-    else
-        return iContentSession.GetStringAttributeSet(aUniqueId, aStringAttributeSet);
-#else
 	return iContentSession.GetStringAttributeSet(aUniqueId, aStringAttributeSet);
-#endif
 	}
 
 TInt CRefTestAgentContent::AgentSpecificCommand(TInt aCommand, const TDesC8& aInputBuffer, TDes8& aOutputBuffer)
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentcontent.h	Wed Sep 01 12:40:57 2010 +0100
@@ -37,11 +37,6 @@
 	static CRefTestAgentContent* NewL(RFile& aFile);
 	static CRefTestAgentContent* NewLC(RFile& aFile);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        static CRefTestAgentContent* NewL(const TDesC8& aHeaderData);     
-        static CRefTestAgentContent* NewLC(const TDesC8& aHeaderData);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	virtual ~CRefTestAgentContent();
 
 public: 
@@ -69,16 +64,8 @@
 	void ConstructL(const TDesC& aURI, ContentAccess::TContentShareMode aShareMode);
 	void ConstructL(RFile& aFile);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void ConstructL(const TDesC8& aHeaderData);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-		
 private:
 	ReferenceTestAgent::RRtaContent iContentSession;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        HBufC8* iHeaderData;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	};
 #endif // __REFTestAgentContent_H__
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -53,31 +53,6 @@
 	return self;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-CRefTestAgentData* CRefTestAgentData::NewL(const TDesC8& aHeaderData)     
-    {     
-    CRefTestAgentData* self = NewLC(aHeaderData);     
-    CleanupStack::Pop(self);     
-    return self;     
-    }     
-      
-CRefTestAgentData* CRefTestAgentData::NewLC(const TDesC8& aHeaderData)     
-    {     
-    CRefTestAgentData* self = new (ELeave) CRefTestAgentData;     
-    CleanupStack::PushL(self);     
-    self->ConstructL(aHeaderData);     
-    return self;     
-    }     
-         
-void CRefTestAgentData::ConstructL(const TDesC8& aHeaderData)     
-    {     
-    iHeaderData = aHeaderData.AllocL();     
-    User::LeaveIfError(iServer.Open(aHeaderData));     
-    }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
-
 CRefTestAgentData::CRefTestAgentData()
 	{
 	}
@@ -85,9 +60,6 @@
 CRefTestAgentData::~CRefTestAgentData()
 	{
 	iServer.Close();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    delete iHeaderData;     
-#endif 
 	}
   
 void CRefTestAgentData::ConstructL(const TVirtualPathPtr& aVirtualPath, TContentShareMode aShareMode)
@@ -209,50 +181,22 @@
 
 TInt CRefTestAgentData::GetAttribute(TInt aAttribute, TInt& aValue)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)     
-        return iServer.GetWmdrmAttribute(aAttribute, aValue);     
-    else     
-        return iServer.GetAttribute(aAttribute, aValue);     
-#else     
     return iServer.GetAttribute(aAttribute, aValue);
-#endif
 	}
 
 TInt CRefTestAgentData::GetAttributeSet(RAttributeSet& aAttributeSet)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)     
-        return iServer.GetWmdrmAttributeSet(aAttributeSet);     
-    else     
-        return iServer.GetAttributeSet(aAttributeSet);     
-#else 
 	return iServer.GetAttributeSet(aAttributeSet);
-#endif
 	}
 
 TInt CRefTestAgentData::GetStringAttribute(TInt aAttribute, TDes& aValue)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)     
-        return iServer.GetWmdrmStringAttribute(aAttribute, aValue);     
-    else     
-        return iServer.GetStringAttribute(aAttribute, aValue);     
-#else 
 	return iServer.GetStringAttribute(aAttribute, aValue);
-#endif
 	}
 
 TInt CRefTestAgentData::GetStringAttributeSet(RStringAttributeSet& aStringAttributeSet)
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    if(iHeaderData != NULL)     
-        return iServer.GetWmdrmStringAttributeSet(aStringAttributeSet);     
-    else     
-        return iServer.GetStringAttributeSet(aStringAttributeSet);     
-#else    
 	return iServer.GetStringAttributeSet(aStringAttributeSet);
-#endif
 	}
 
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
@@ -282,18 +226,3 @@
 	// cannot be a situation where the consumer waits for an asynchronous operation to complete
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-TInt CRefTestAgentData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket)     
-    {     
-    return iServer.Read(aEncryptedInputDataPacket, aDecryptedOutputDataPacket);     
-    }     
-                 
-void CRefTestAgentData::Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus)     
-    {     
-    TInt err = Read(aEncryptedInputDataPacket, aDecryptedOutputDataPacket);     
-    TRequestStatus* status = &aStatus;     
-    User::RequestComplete(status, err);     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentdata.h	Wed Sep 01 12:40:57 2010 +0100
@@ -34,11 +34,6 @@
 		static CRefTestAgentData* NewL(RFile& aFile, const TDesC& aUniqueId);
 		static CRefTestAgentData* NewLC(RFile& aFile, const TDesC& aUniqueId);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        static CRefTestAgentData* NewL(const TDesC8& aHeaderData);     
-        static CRefTestAgentData* NewLC(const TDesC8& aHeaderData);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 		virtual ~CRefTestAgentData();
 
 	public: // From CAgentData
@@ -64,24 +59,13 @@
 		virtual TInt Read64(TInt64 aPos, TDes8& aDes, TInt aLength, TRequestStatus& aStatus);
 #endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        virtual TInt Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket);           
-        virtual void Read(const TDesC8& aEncryptedInputDataPacket, TDes8& aDecryptedOutputDataPacket, TRequestStatus& aStatus);     
-#endif  //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	private:
 		CRefTestAgentData();
 		void ConstructL(const ContentAccess::TVirtualPathPtr& aVirtualPath, ContentAccess::TContentShareMode aShareMode);
 		void ConstructL(RFile& aFile, const TDesC& aUniqueId);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void ConstructL(const TDesC8& aHeaderData);     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 		
 	private:
 		ReferenceTestAgent::RRtaData iServer;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-        HBufC8* iHeaderData;     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 		};
 
 #endif // __REFTESTAGENTCONSUMER_H__
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -71,14 +71,3 @@
 	return CRefTestAgentRightsManager::NewL();
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-CAgentData* CRefTestAgentFactory::CreateDataConsumerL(const TDesC8& aHeaderData)     
-    {     
-    return CRefTestAgentData::NewL(aHeaderData);     
-    }     
-      
-CAgentContent* CRefTestAgentFactory::CreateContentBrowserL(const TDesC8& aHeaderData)     
-    {     
-    return CRefTestAgentContent::NewL(aHeaderData);     
-    }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentfactory.h	Wed Sep 01 12:40:57 2010 +0100
@@ -37,10 +37,6 @@
 		virtual ContentAccess::CAgentImportFile* CreateImporterL(const TDesC8& aMimeType, const ContentAccess::CMetaDataArray& aMetaDataArray, const TDesC& aOutputDirectory, const TDesC& aSuggestedFileName);
 		virtual ContentAccess::CAgentImportFile* CreateImporterL(const TDesC8& aMimeType, const ContentAccess::CMetaDataArray& aMetaDataArray);
 		virtual ContentAccess::CAgentRightsManager* CreateRightsManagerL();	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        virtual ContentAccess::CAgentData* CreateDataConsumerL(const TDesC8& aHeaderData);     
-        virtual ContentAccess::CAgentContent* CreateContentBrowserL(const TDesC8& aHeaderData);     
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT   
 		};
 
 #endif // __REFTESTAGENTFACTORY_H__
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -239,15 +239,6 @@
 	// Get the name of the file
 	TFileName fileName;
 	aFile.Name(fileName);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TPtrC extension(fileName.Right(KRtaExtensionContent().Length()));     
-    TPtrC wmdrmExtn(fileName.Right(KRtaWmdrmFileExtension().Length()));     
-    if((extension.CompareF(KRtaExtensionContent) == 0) || (wmdrmExtn.CompareF(KRtaWmdrmFileExtension) == 0))     
-        {     
-        result = ETrue;     
-        }     
-      
-#else 
 	// Check that the file has content only, otherwise it should
 	// be put through the supplier API before it can be used
 	TPtrC extension(fileName.Right(KRtaExtensionContent().Length()));
@@ -255,7 +246,6 @@
 		{
 		result = ETrue;
 		}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	return result;
 	}
 
@@ -265,22 +255,7 @@
 	
 	// Check filename extension
 	TPtrC extension(aFileName.Right(KRtaExtensionContent().Length()));
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TPtrC wmdrmExtn(aFileName.Right(KRtaWmdrmFileExtension().Length()));     
-    if(wmdrmExtn.CompareF(KRtaWmdrmFileExtension) == 0)     
-        {     
-        aFileMimeType.Copy(KRtaWmaContentType);     
-        aContentMimeType.Copy(KRtaWmaContentType);     
-        result = ETrue;     
-        }     
-         
-    else if(extension.CompareF(KRtaExtensionContent) == 0)     
-        {     
-        aFileMimeType.Copy(KRtaMimeContent());     
-        CRefTestAgentArchive::GetDefaultMimeTypeFromHeaderL(aBuffer, aContentMimeType);     
-        result = ETrue;      
-        }     
-#else    
+
 	if(extension.CompareF(KRtaExtensionContent) == 0)
 		{
 		// It's a content file ready for applications to read
@@ -288,7 +263,6 @@
 		CRefTestAgentArchive::GetDefaultMimeTypeFromHeaderL(aBuffer, aContentMimeType);
 		result = ETrue;	
 		}
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	else
 		{
 		extension.Set(aFileName.Right(KRtaExtensionContentRights().Length()));
@@ -363,51 +337,3 @@
 #endif
 
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-TBool CRefTestAgentManager::IsRecognizedL(const TDesC8& aHeaderData) const
-    {
-    TBool result = EFalse;
-    if(aHeaderData.Find(KRtaAsfHeaderObject) != KErrNotFound)     
-        {     
-        result = ETrue;     
-        }     
-             
-    return result;     
-    }
-     
-TBool CRefTestAgentManager::RecognizeContentL(const TDesC8& aHeaderData, TDes8& aFileMimeType, TDes8& aContentMimeType) const     
-    {     
-    TBool result = EFalse;     
-    if(aHeaderData.Find(KRtaAsfHeaderObject) != KErrNotFound)     
-        {     
-        aFileMimeType.Copy(KRtaWmaContentType);     
-        aContentMimeType.Copy(KRtaWmaContentType);     
-        result = ETrue;     
-        }     
-         
-    return result;     
-    }     
-         
-TInt CRefTestAgentManager::GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue)     
-    {     
-    return iManagerSession.GetAttribute(aHeaderData, aAttribute, aValue);     
-    }     
-      
-TInt CRefTestAgentManager::GetAttributeSet(const TDesC8& aHeaderData, RAttributeSet& aAttributeSet)     
-    {     
-    return iManagerSession.GetAttributeSet(aHeaderData, aAttributeSet);     
-    }     
-      
-TInt CRefTestAgentManager::GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue)      
-    {     
-    return iManagerSession.GetStringAttribute(aHeaderData, aAttribute, aValue);     
-    }     
-      
-TInt CRefTestAgentManager::GetStringAttributeSet(const TDesC8& aHeaderData, RStringAttributeSet& aAttributeSet)      
-    {     
-    return iManagerSession.GetStringAttributeSet(aHeaderData, aAttributeSet);     
-    }     
-         
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/RefTestAgent/Reftestagentmanager.h	Wed Sep 01 12:40:57 2010 +0100
@@ -70,14 +70,6 @@
 		virtual void AgentSpecificCommand(TInt aCommand, const TDesC8& aInputBuffer, TDes8& aOutputBuffer, TRequestStatus& aStatus);
 		virtual void DisplayManagementInfoL();
 		virtual void PrepareHTTPRequestHeaders(RStringPool& aStringPool, RHTTPHeaders& aRequestHeaders) const;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        virtual TBool IsRecognizedL(const TDesC8& aHeaderData) const;     
-        virtual TBool RecognizeContentL(const TDesC8& aHeaderData, TDes8& aFileMimeType, TDes8& aContentMimeType) const;     
-        virtual TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue);     
-        virtual TInt GetAttributeSet(const TDesC8& aHeaderData, ContentAccess::RAttributeSet& aAttributeSet);     
-        virtual TInt GetStringAttributeSet(const TDesC8& aHeaderData, ContentAccess::RStringAttributeSet& aAttributeSet);     
-        virtual TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue);     
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 	private:
 		CRefTestAgentManager();
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/ABLD.BAT	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,15 @@
+@ECHO OFF
+
+REM Bldmake-generated batch file - ABLD.BAT
+REM ** DO NOT EDIT **
+
+perl -S abld.pl "\sf\os\security\contentmgmt\referencedrmagent\RefTestAgent\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9
+if errorlevel==1 goto CheckPerl
+goto End
+
+:CheckPerl
+perl -v >NUL
+if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?
+goto End
+
+:End
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/RTAclient.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/RTAclient.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -34,11 +34,7 @@
 UNPAGED
 
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-deffile     rtaclient_v3.def
-#else
 deffile		rtaclient_v2.def
-#endif
 #else
 deffile		rtaclient.def
 #endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/RTAparser.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/RTAparser.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -32,11 +32,7 @@
 UNPAGED
 
 #ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-deffile     rtaparser_v3.def
-#else
 deffile		rtaparser_v2.def
-#endif
 #else
 deffile		rtaparser.def
 #endif
@@ -62,9 +58,6 @@
 SOURCE		rightscriteriacount.cpp
 SOURCE		rightscriteriaexpiry.cpp
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-SOURCE          wmdrmcontentparser.cpp 
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 USERINCLUDE		../RTAParser
 USERINCLUDE		../inc
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -48,8 +48,6 @@
 sraserver.mmp
 sraplugin.mmp
 srautils.mmp
-// Local SDP codec library. Made this local to avoid the dependency on middleware layer.
-../localsdp/group/localsdpcodec.mmp
 #endif // TOOLS2
 #endif // TOOLS
 
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/sraclient.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/sraclient.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -26,10 +26,7 @@
 CAPABILITY	All -Tcb
 
 USERINCLUDE 	../streamingrefagent/inc
-USERINCLUDE 	../localsdp/inc
-USERINCLUDE 	../localsdp/api
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 SOURCEPATH 	../streamingrefagent/source/client
 SOURCE 		sraclient.cpp
@@ -39,7 +36,9 @@
 LIBRARY 	euser.lib 
 LIBRARY		estor.lib
 LIBRARY		cafutils.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY 	streamingcaf.lib 
 LIBRARY	    efsrv.lib
 SMPSAFE
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/sraplugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/sraplugin.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -34,14 +34,14 @@
 SOURCE		srakeystreamdecoder.cpp
 
 USERINCLUDE 	../streamingrefagent/inc
-USERINCLUDE 	../localsdp/inc
-USERINCLUDE 	../localsdp/api
 
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 LIBRARY 	euser.lib
 LIBRARY		streamingcaf.lib
-LIBRARY		localsdpcodec.lib 
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib 
+#endif
 LIBRARY		sraclient.lib srautils.lib
 
 START RESOURCE 10285A34.rss
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/sraserver.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/sraserver.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -24,11 +24,9 @@
 
 CAPABILITY	DRM NetworkControl NetworkServices
 
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 USERINCLUDE ../streamingrefagent/inc
-USERINCLUDE 	../localsdp/inc
-USERINCLUDE 	../localsdp/api
 
 SOURCEPATH 	../streamingrefagent/source/server
 SOURCE 		sraserver.cpp
@@ -42,7 +40,9 @@
 LIBRARY		efsrv.lib
 LIBRARY		cafutils.lib
 LIBRARY		estor.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY		bafl.lib
 LIBRARY 	streamingcaf.lib
 LIBRARY 	srautils.lib
--- a/contentmgmt/referencedrmagent/RefTestAgent/group/srautils.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/group/srautils.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -28,10 +28,8 @@
 CAPABILITY	All -Tcb
 
 USERINCLUDE 	../streamingrefagent/inc
-USERINCLUDE 	../localsdp/inc
-USERINCLUDE 	../localsdp/api
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
+MW_LAYER_SYSTEMINCLUDE_SYMBIAN
+APP_LAYER_SYSTEMINCLUDE_SYMBIAN
 
 SOURCEPATH 	../streamingrefagent/source/utils
 SOURCE		srautils.cpp
@@ -43,7 +41,9 @@
 LIBRARY 	euser.lib
 LIBRARY 	estor.lib
 LIBRARY		streamingcaf.lib
-LIBRARY		localsdpcodec.lib
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+LIBRARY		sdpcodec.lib
+#endif
 LIBRARY     efsrv.lib 
 LIBRARY		bafl.lib
 SMPSAFE
--- a/contentmgmt/referencedrmagent/RefTestAgent/inc/reftestagentconstants.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/inc/reftestagentconstants.h	Wed Sep 01 12:40:57 2010 +0100
@@ -38,15 +38,7 @@
 
 _LIT(KRtaDefaultOutputDirectory, "c:\\");
 _LIT(KRtaDefaultOutputFile, "output");
-
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-// Asf header object GUID.
-_LIT8(KRtaAsfHeaderObject, "75B22630668E11CFA6D900AA0062CE6C");
-_LIT8(KRtaWmaContentType, "audio/x-ms-wma");
-_LIT(KRtaWmdrmFileExtension, ".asf");
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
+   
 
 // combine KRtaDefaultOutputDirectory, KRtaDefaultOutputFile and
 // KRtaExtensionContent
--- a/contentmgmt/referencedrmagent/RefTestAgent/inc/rta.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/inc/rta.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -33,8 +33,6 @@
 file=ABI_DIR\BUILD_DIR\sraserver.exe		System\Libs\sraserver.exe
 file=ABI_DIR\BUILD_DIR\sraclient.dll		System\Libs\sraclient.dll
 file=ABI_DIR\BUILD_DIR\srautils.dll			System\Libs\srautils.dll
-// Local SDP codec library. Added to avoid the dependency on middleware layer.
-file=ABI_DIR\BUILD_DIR\localsdpcodec.dll	System\Libs\localsdpcodec.dll
 
 ECOM_PLUGIN(sraplugin.dll,sraplugin.rsc)
 #endif // __RTA_IBY__
--- a/contentmgmt/referencedrmagent/RefTestAgent/inc/rtacontent.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/inc/rtacontent.h	Wed Sep 01 12:40:57 2010 +0100
@@ -60,24 +60,11 @@
 		IMPORT_C void DisplayInfoL(ContentAccess::TDisplayInfo aInfo, const TDesC& aUniqueId) const;
 		IMPORT_C TInt SetProperty(ContentAccess::TAgentProperty aProperty, TInt aValue) const;
 		
-		#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        IMPORT_C TInt Open(const TDesC8& aHeaderData);
-        IMPORT_C TInt GetWmdrmAttribute(const TDesC& aUniqueId, TInt aAttribute, TInt &aValue) const;
-        IMPORT_C TInt GetWmdrmAttributeSet(const TDesC& aUniqueId, ContentAccess::RAttributeSet &aAttributeSet) const; 
-        IMPORT_C TInt GetWmdrmStringAttribute(const TDesC& aUniqueId, TInt aAttribute, TDes &aValue) const; 
-        IMPORT_C TInt GetWmdrmStringAttributeSet(const TDesC& aUniqueId, ContentAccess::RStringAttributeSet &aStringAttributeSet) const;
-		#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
 	private:
 		void SearchL (ContentAccess::RStreamablePtrArray< ContentAccess::CEmbeddedObject > &aArray, const TDesC8 &aMimeType, TBool aRecursive) const;
 		
-		#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-            void GetAttributeSetL(const TDesC& aUniqueId, ContentAccess::RAttributeSet &aAttributeSet, TBool aWmdrmFlag = EFalse) const;
-            void GetStringAttributeSetL(const TDesC& aUniqueId, ContentAccess::RStringAttributeSet &aStringAttributeSet, TBool aWmdrmFlag = EFalse) const;
-		#else
-			void GetAttributeSetL (const TDesC& aUniqueId, ContentAccess::RAttributeSet &aAttributeSet) const;
-			void GetStringAttributeSetL (const TDesC& aUniqueId, ContentAccess::RStringAttributeSet &aStringAttributeSet) const;
-		#endif
+		void GetAttributeSetL (const TDesC& aUniqueId, ContentAccess::RAttributeSet &aAttributeSet) const;
+		void GetStringAttributeSetL (const TDesC& aUniqueId, ContentAccess::RStringAttributeSet &aStringAttributeSet) const;
 		};
 	} // namespace
 #endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/inc/rtadata.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/inc/rtadata.h	Wed Sep 01 12:40:57 2010 +0100
@@ -59,23 +59,10 @@
 		IMPORT_C TInt GetStringAttribute (TInt aAttribute, TDes &aValue) const; 
 		IMPORT_C TInt GetStringAttributeSet (ContentAccess::RStringAttributeSet &aStringAttributeSet) const; 
 		IMPORT_C TInt SetProperty(ContentAccess::TAgentProperty aProperty, TInt aValue) const;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        IMPORT_C TInt Open(const TDesC8& aHeaderData);
-        IMPORT_C TInt Read(const TDesC8& aEncryptedInputPacket, TDes8& aDecryptedOutputPacket);
-        IMPORT_C TInt GetWmdrmAttribute(TInt aAttribute, TInt &aValue) const;
-        IMPORT_C TInt GetWmdrmAttributeSet(ContentAccess::RAttributeSet &aAttributeSet) const;
-        IMPORT_C TInt GetWmdrmStringAttribute(TInt aAttribute, TDes &aValue) const;
-        IMPORT_C TInt GetWmdrmStringAttributeSet(ContentAccess::RStringAttributeSet &aStringAttributeSet) const;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 		
 	private:
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void GetAttributeSetL (ContentAccess::RAttributeSet &aAttributeSet, TBool aWmdrmFlag = EFalse) const;
-        void GetStringAttributeSetL (ContentAccess::RStringAttributeSet &aStringAttributeSet, TBool aWmdrmFlag = EFalse) const;
-#else
 		void GetAttributeSetL (ContentAccess::RAttributeSet &aAttributeSet) const;
 		void GetStringAttributeSetL (ContentAccess::RStringAttributeSet &aStringAttributeSet) const;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 		};
 	} // namespace
--- a/contentmgmt/referencedrmagent/RefTestAgent/inc/rtamanager.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/inc/rtamanager.h	Wed Sep 01 12:40:57 2010 +0100
@@ -73,12 +73,6 @@
 		IMPORT_C void DisplayInfoL(ContentAccess::TDisplayInfo aInfo, RFile& aFile, const TDesC& aUniqueId) const;
 		IMPORT_C TInt AgentSpecificCommand(TInt aCommand, const TDesC8& aInputBuffer, TDes8& aOutputBuffer) const;		 
 		IMPORT_C void DisplayManagementInfoL() const;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        IMPORT_C TInt GetAttribute(const TDesC8& aHeaderData, TInt aAttribute, TInt& aValue) const;
-        IMPORT_C TInt GetAttributeSet(const TDesC8& aHeaderData, ContentAccess::RAttributeSet& aAttributeSet) const;
-        IMPORT_C TInt GetStringAttributeSet(const TDesC8& aHeaderData, ContentAccess::RStringAttributeSet& aAttributeSet) const;
-        IMPORT_C TInt GetStringAttribute(const TDesC8& aHeaderData, TInt aAttribute, TDes& aValue) const;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 	private:
 		enum TRetrievalType
@@ -96,10 +90,6 @@
 		void GetStringAttributeSetL(ContentAccess::RStringAttributeSet& aStringAttributeSet, RFile& aFile, const TDesC& aUniqueId) const;
 		void AttributeSetL(const TRetrievalType& aRetrievalType,const ContentAccess::TVirtualPathPtr* aVirtualPath, ...) const;
 		void StringAttributeSetL(const TRetrievalType& aRetrievalType,const ContentAccess::TVirtualPathPtr* aVirtualPath, ...) const;
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-        void GetAttributeSetL(const TDesC8& aHeaderData, ContentAccess::RAttributeSet& aAttributeSet) const;
-        void GetStringAttributeSetL(const TDesC8& aHeaderData, ContentAccess::RStringAttributeSet& aAttributeSet) const;
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 		};
 	} // namespace
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/_sdpdefs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : _sdpdefs.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef _SDPDEFS_H
-#define _SDPDEFS_H
-
-#ifdef CPPUNIT_TEST
-#undef EXPORT_C
-#define EXPORT_C
-#endif
-
-#ifdef CPPUNIT_TEST
-#undef IMPORT_C
-#define IMPORT_C
-#endif
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpattributefield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,392 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpAttributeField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPATTRIBUTEFIELD_H
-#define CSDPATTRIBUTEFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "sdpcodecstringconstants.h"
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpFmtAttributeField;
-class CSdpAttributeFieldPtrs;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the attribute field of Session Description Protocol
- *	for media and session level attributes. Media format/payload type level
- *  attributes are supported by the CSdpFmtAttributeField class. 
- * 
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpAttributeField : public CBase
-	{
-    public:     // Constructors and destructor
-
-        /**
-         *	Constructs a new attribute field.
-		 *			 
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpAttributeField* DecodeL( const TDesC8& aText );
-
-        /**
-         *	Constructs a new attribute field and adds the pointer to the 
-         *  cleanup stack.
-		 *		 
-         *	@param aTest A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpAttributeField* DecodeLC( const TDesC8& aText );
-
-        /**
-         *	Constructs a new attribute field. 
-		 *
-         *	@param aAttribute The attribute name. It can be a pre-
-         *         defined name in the SDP string pool or defined by the 
-         *         client.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpAttributeField* NewL(
-            RStringF aAttribute, const TDesC8& aValue );
-
-        /**
-         *	Constructs a new attribute field and adds the pointer to the 
-         *  cleanup stack. 
-		 *
-         *	@param aAttribute The attribute name. It can be a pre-defined 
-         *         name in the SDP string pool or defined by the client.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpAttributeField* NewLC(
-            RStringF aAttribute, const TDesC8& aValue );
-
- 		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpAttributeField();
-
-    public:     // New functions
-	
-    	/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream Stream used for output. On return the 
-         *         stream includes correctly formatted attribute field.
-		 */
-		IMPORT_C void EncodeL( RWriteStream& aStream ) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpAttributeField* CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj: The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == ( const CSdpAttributeField& aObj ) const;
-
-		/**
-		 *	Gets the attribute name.
-		 *	
-		 *	@return	The attribute name. The name can be pre-defined 
-         *          name in the SDP string table or defined by the client.
-		 */
-		IMPORT_C RStringF Attribute() const;
-
-		/**
-		 *	Gets the attribute.
-		 *
- 		 *	@return	The value or an empty descriptor if there is no value part.
-		 */
-		IMPORT_C const TDesC8& Value() const;
-
-		/**
-		 *	Sets the attribute and attribute value.
-		 *
-         *	@param aAttribute A valid attribute name. It can be a 
-         *         pre-defined name in the SDP string pool or 
-         *         defined by the client.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-		 *  @leave KErrSdpCodecAttributeField if the attribute part is not 
-		 *         pre-defined EAttributeFmtp or EAttributeRtpmap.
-		 */
-		IMPORT_C void SetL( RStringF aAttribute, const TDesC8& aValue );
-		
-		/**
- 		 *	Assigns attribute to the format level attribute.
- 		 *  In the final output the attribute will placed after format level
-		 *  attribute.
- 		 *
- 		 *	@param aFmtAttribute A format level 
- 		 *         attribute this attribute is assigned to.
- 		 */
- 		IMPORT_C void AssignTo(const CSdpFmtAttributeField& aFmtAttribute);
-		
-		/**
-		 *	Test if the attribute belongs to the given format level attribute.
-		 *  Note, that the check can be true for the media level paremeter if
-		 *  it appears after the last format level attribute.
-		 *
-		 *	@param  aFmtAttribute: A format level 
-		 *          attribute this attribute belongs to.
-		 *	@return	ETrue if attribute belongs to the format level attribute, 
-		 *          EFalse otherwise.
-		 */
-		IMPORT_C TBool BelongsTo(const CSdpFmtAttributeField& aFmtAttribute) const;
-
-    public:     // Internal to codec
-
-        /**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL( RWriteStream& aStream ) const;
-
-        /**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read
-         *  @return Initialized object
-         */
-        static CSdpAttributeField* InternalizeL( RReadStream& aStream );
-        
-        /**
-         *  Informs if the attribute belongs to any format level attribute.
-         *
-         *  @return ETrue if attribute belongs to any format level 
-		 *			attribute, EFalse otherwise.
-         */
-        TBool IsFmtAttribute();
-    
-	private:    // Constructors
-
-        /**
-         *  Constructor
-         */
-		CSdpAttributeField();
-
-        /**
-         *  Second phase constructor
-         *
-         *  @param aText Text string ending to LF character
-         */
-        void ConstructL( const TDesC8& aText );
-
-        /**
-         *  Second phase constructor
-         *
-         *  @param aAttribute Attribute identifier
-         *  @param aValue Value of the attribute of KNullDesC8
-         */
-        void ConstructL( RStringF aAttribute, const TDesC8& aValue );
-    
-    private:    // Internal
-
-        /**
-         *  Verifies that attribute is valid property attribute and initializes
-         *  the member variables of class accordingly
-         *
-         *  @param aAttribute Attribute in descriptor
-         */
-        void FormatProperyAttributeL( const TDesC8& aAttribute );
-
-        /**
-         *  Verifies that attribute is valid value attribute and initializes
-         *  the member variables of class accordingly
-         *
-         *  @param aArray Array of the attributes
-         */
-        void FormatValueAttributeL( const TDesC8& aAttribute,
-                                    const TDesC8& aValue );
-
-        /**
-         *  Verifies that the value is valid for the attribute
-         *
-         *  @param aAttribute The attribute
-         *  @param aArray Array containing the values (and attribute)
-         */
-        void VerifyValueAttributeL( SdpCodecStringConstants::TStrings aString,
-                                    const TDesC8& aValue );
-                                    
-        /**
-         *  Forms attribute and value strings out of the token array
-         *  and pushes both (aAttribute & aValue) into cleanup stack
-         *
-         *  @param aArray Token array
-         *  @param aAttribute Attribute string (in cleanup stack)
-         *  @param aValue Value string (in cleanup stack)
-         */
-        void CreateAttributeAndValueStringsLC( RArray<TPtrC8>& aArray,
-                                               HBufC8*& aAttribute,
-                                               HBufC8*& aValue );
-
-        /**
-         *  Checks if the value is among the valid orient attributes
-         *
-         *  @param aValue Value string
-         */
-        void CheckValidOrientL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid language attribute as
-         *  specified in RFC 3066
-         *
-         *  @param aValue Value string
-         */
-        void CheckValidLangStrL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid framerate attribute
-         *
-         *  @param aValue Value string
-         */
-        void CheckValidFrameRateL( const TDesC8& aValue );
-        
-        /**
-         *  Checks if the value is among valid uri value for control attribute
-         *
-         *  @param aValue Value string
-         */       
-        void CheckValidControlL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid value for group attribute as
-         *  specified in RFC 3388
-         *
-         *  @param aValue Value string
-         */       
-        void CheckValidGroupL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid value for des attribute as
-         *  specified in RFC 3312
-         *
-         *  @param aValue Value string
-         */       
-        void CheckValidDesL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid value for curr and conf attribute as
-         *  specified in RFC 3312
-         *
-         *  @param aValue Value string
-         */       
-        void CheckValidCurrAndConfL( const TDesC8& aValue );
-
-        /**
-         *  Checks if value is included in the list of predefined values
-         *
-         *  @param aItemsCount Predefined values count
-         *  @param aValuesList List of predefined values
-         *  @param aValue Value string
-         */       
-        void ValidValueInListL( TInt aItemsCount, 
-                                const TText8* const aValuesList[], 
-                                const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid value for range attribute as
-         *  specified in RFC 2326
-         *
-         *  @param aValue Value string
-         */       
-        void CheckValidRangeL( const TDesC8& aValue );
-
-
-        /**
-         *  Checks if the value is valid rtpmap string
-         *
-         *  @param aValue Value string
-         */   
-        void CheckValidRtpmapL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the value is valid fmtp string
-         *
-         *  @param aValue Value string
-         */   
-        void CheckValidFmtpL( const TDesC8& aValue );
-        
-        /**
-         *  Set attribute and values. Attribute is not one of predefined ones.
-         *
-         *  @param aAttribute Attribute string (in cleanup stack)
-         *  @param aValue Value string
-         */   
-        void SetNotPredefinedAttributeL( const TDesC8& aAttribute, 
-                                         const TDesC8& aValue );
-        
-        void CreateAttributeFieldPtrsL();
-        
-        inline CSdpAttributeFieldPtrs& AttributeFieldPtrs();      
-        
-        inline const CSdpAttributeFieldPtrs& AttributeFieldPtrs() const;
-	   
-		void __DbgTestInvariant() const;
-
-
-    private:    // Data
-
-        // String pool
-        RStringPool iPool;
-
-        // Attribute name
-        RStringF iAttribute;
-
-        // Flag indicating if the attribute is a property attribute
-        TBool iPropertyAttribute;
-
-        // Value field
-        HBufC8* iValue;
-	};
-
-#endif // CSDPATTRIBUTEFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpbandwidthfield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,190 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpBandwidthField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPBANDWIDTHFIELD_H
-#define CSDPBANDWIDTHFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the bandwidth field of 
- *  the Session Description Protocol.
- * 
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpBandwidthField : public CBase
-	{
-	public:// Constructors and destructor
-       /**
-         *	Constructs a new bandwidth field.
-		 *	
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpBandwidthField* DecodeL(const TDesC8& aText);
-
-         /**
-         *	Constructs a new bandwidth field and adds the pointer to the 
-         *  cleanup stack.
-		 *	
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpBandwidthField* DecodeLC(const TDesC8& aText);
-
-        /**
-         *	Constructs a new bandwidth field.
-		 *
-         *	@param aModifier Bandwidth modifier.
-		 *  @param aValue Bandwidth value.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpBandwidthField* NewL(RStringF aModifier,
-												 TUint32 aValue);
-
-        /**
-         *	Constructs a new bandwidth field and adds the pointer to the 
-         *  cleanup stack.
-		 *
-         *	@param aModifier Bandwidth modifier.
-		 *  @param aValue Bandwidth value.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpBandwidthField* NewLC(RStringF aModifier,
-												  TUint32 aValue);
-
- 
-        /**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpBandwidthField();
-
-    public: // New functions
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted bandwidth field.
-		 */
-		IMPORT_C void EncodeL(RWriteStream& aStream) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpBandwidthField * CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const CSdpBandwidthField& aObj) const;
-
-		/**
-		 *	Gets the bandwidth modifier.
-		 *
-		 *	@return The modifier that can be pre-defined in the 
-		 *          SDP string table or defined by the user.
-		 */
-		IMPORT_C RStringF Modifier() const;
-
-		/**
-		 *	Sets the bandwidth modifier.
-		 *
-         *	@param aModifier A valid bandwidth modifier name.
-		 */
-		IMPORT_C void SetModifier(RStringF aModifier);
-
-		/**
-		 *	Gets the bandwidth value.
-		 *
-		 *	@return The value.
-		 */
-		IMPORT_C TUint32 Value() const;
-
-		/**
-		 *	Sets the bandwidth value.
-		 *
-		 *	@param aValue The Value.
-		 */
-		IMPORT_C void SetValue(TUint32 aValue);
-
-    public:
-		/**
-		 *	Externalize the instance in a memory optimized format.
-		 *
-		 *	@param aStream The stream used for externalization.
-		 */
-		void ExternalizeL(RWriteStream& aStream) const;
-
-		/**
-		 *	Create a new instance from value created with ExternalizeL().
-		 *
-		 *	@param aStream The stream used for internalization.
-		 *	@return	The new instance.
-		 */
-        static CSdpBandwidthField* InternalizeL(RReadStream& aStream);
-
-    private:
-        CSdpBandwidthField();
-		void ConstructL(const TDesC8& aText);
-		void ConstructL(RStringF aModifier, TUint32 aValue);
-		void ConstructL(const TDesC8& aModifier, TUint32 aValue);
-
-        /**
-         *  Copies given modifier to iModifier. If aModifier is none of 
-         *  predefined ones, new modifier is added to stringPool.
-         *
-         *  @param aModifier Given modifier
-         */
-        void CopyModifierL(const TDesC8& aModifier);
-
-    private: // Data
-		RStringF iModifier;
-        TUint32 iValue;
-        RStringPool iStringPool;
-	};
-
-#endif // CSDPBANDWIDTHFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecconstants.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecConstants.h
-* Part of       : SDPCodec
-* Constants defination file 
-* Version       : 1.0 
-*
-*/
-
-
-
-
-#ifndef __SDPCODECCONSTANTS_H__
-#define __SDPCODECCONSTANTS_H__
-
-/**
-* @file
-* @publishedAll
-* @released
-*/
-
-
-// Delimiter constants
-const TText8 KDotChar = '.';
-const TText8 KColonChar = ':';
-const TText8 KSPChar = ' ';  
-const TText8 KEqualChar = '=';
-const TText8 KSlashChar = '/';
-const TText8 KHyphenChar = '-';
-const TText8 KLFChar = '\n';
-const TText8 KCRChar = '\r';
-const TText8 KEofChar = '\0';
-
-_LIT8(KDotStr, ".");
-_LIT8(KColonStr, ":");
-_LIT8(KSPStr, " ");
-_LIT8(KEqualStr, "=");
-_LIT8(KSlashStr, "/");
-_LIT8(KHyphenStr, "-");
-_LIT8(KCRLFStr, "\r\n");
-_LIT8(KLFStr, "\n");
-_LIT8(KCRStr, "\r");
-_LIT8(KEofStr, "\0");
-_LIT8(KValidFQDNChars, 
-      "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-");
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecerr.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecErr.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef SDPCODECERR_H
-#define SDPCODECERR_H
-
-/**
-* @file
-* @publishedAll
-* @released
-*/
-
-/**
- * Base value for the SdpCode error code range
- */
-const TInt KSdpCodecErrorBase = -17875;
-/**
- * Codec encoding errors for SDP fields
- */
-const TInt KErrSdpCodecVersionField			= KSdpCodecErrorBase;
-const TInt KErrSdpCodecOriginField			= KSdpCodecErrorBase - 1; 
-const TInt KErrSdpCodecSessionField			= KSdpCodecErrorBase - 2; 
-const TInt KErrSdpCodecInfoField			= KSdpCodecErrorBase - 3; 
-const TInt KErrSdpCodecUriField				= KSdpCodecErrorBase - 4; 
-const TInt KErrSdpCodecEmailField			= KSdpCodecErrorBase - 5; 
-const TInt KErrSdpCodecPhoneField			= KSdpCodecErrorBase - 6; 
-const TInt KErrSdpCodecConnectionField		= KSdpCodecErrorBase - 7; 
-const TInt KErrSdpCodecBandwidthField		= KSdpCodecErrorBase - 8; 
-const TInt KErrSdpCodecTimeField			= KSdpCodecErrorBase - 9; 
-const TInt KErrSdpCodecRepeatField			= KSdpCodecErrorBase - 10; 
-const TInt KErrSdpCodecZoneField			= KSdpCodecErrorBase - 11; 
-const TInt KErrSdpCodecKeyField				= KSdpCodecErrorBase - 12; 
-const TInt KErrSdpCodecAttributeField		= KSdpCodecErrorBase - 13; 
-const TInt KErrSdpCodecMediaField			= KSdpCodecErrorBase - 14; 
-const TInt KErrSdpCodecMediaInfoField		= KSdpCodecErrorBase - 15; 
-const TInt KErrSdpCodecMediaConnectionField	= KSdpCodecErrorBase - 16; 
-const TInt KErrSdpCodecMediaBandwidthField	= KSdpCodecErrorBase - 17; 
-const TInt KErrSdpCodecMediaKeyField	    = KSdpCodecErrorBase - 18; 
-const TInt KErrSdpCodecMediaAttributeField	= KSdpCodecErrorBase - 19; 
-const TInt KErrSdpCodecTypedTime            = KSdpCodecErrorBase - 20;
-
-const TInt KErrSdpCodecStringPool           = KSdpCodecErrorBase - 21;
-const TInt KErrSdpCodecDecode				= KSdpCodecErrorBase - 22;
-
-#endif //SDPCODECERR_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpcodecstringpool.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecStringPool.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef SDPCODECSTRINGPOOL_H
-#define SDPCODECSTRINGPOOL_H
-
-//  INCLUDES
-#include <e32base.h>
-#include "_sdpdefs.h"
-#include <stringpool.h>
-
-class CSdpCodecStringPool;
-
-// CLASS DECLARATION
-/**
-* @publishedAll
-* @released
-*
-* This class defines string pool for Local SDP Codec.
-* The client of Local SDP Codec must call OpenL() before 
-* invoking any function of Local SDP Codec classes.
-* The client must close the string pool when finished using
-* Local SDP Codec classes.
-*
-* Note: the client must not close the string pool while
-*       using Local SDP Codec classes.
-* 
-* @lib localsdpcodec.lib
-*/
-class SdpCodecStringPool
-	{
-public: // Constructors and destructor
- 		
-	/**
-	* Opens Local SDP Codec string pool.
-	*
-    * @leave KErrAlreadyExists if pool already exists in TLS.
-	*/
-	IMPORT_C static void OpenL();
-
-	/**
-	* Closes Local SDP Codec string pool.
-	*
-	*/
-	IMPORT_C static void Close(); 
-
-public: 
-	
-	/**
-	* Gets the string pool used by Local SDP Codec.
-	*
-	* @return RStringPool: A handle to a string pool
-	* @leave KErrSdpCodecStringPool if the pool is not opened.
-	*
-	*/
-	IMPORT_C static RStringPool StringPoolL();
-
-	/**
-	* Gets the string table used by Local SDP Codec.
-	*
-	* @return TStringTable&: The string pool table
-	* @leave KErrSdpCodecStringPool if the pool is not opened.
-	*
-	*/
-	IMPORT_C static const TStringTable& StringTableL();
-	};
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpconnectionfield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,445 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpConnectionField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPCONNECTIONFIELD_H
-#define CSDPCONNECTIONFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <in_sock.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// CONSTANTS
-const TUint KDefaultNumOfAddress = 1;
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the connection information field of 
- *  the Session Description Protocol.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpConnectionField : public CBase
-	{
-    public: // Constructors and destructor
-
-        /**
-         *	Constructs a new connection field.
-		 * 
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* DecodeL( const TDesC8& aText );
-
-        /**
-         *	Constructs a new connection field and adds the pointer to the 
-         *  cleanup stack.
-		 *	
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* DecodeLC( const TDesC8& aText );
-
-        /**
-         *	Constructs a new connection field.
-		 *	Also sets the network type to "IN" and address type to "IP4" or
-		 *  "IP6" depending on the address family of aAddress.
-		 *	
-		 *	@param aAddress IP address from either KAfInet 
-         *         or KAfInet6 family
-         *  @param aTTL Time-To-Live for IP4 multicasts, set it as
-         *         KErrNotFound if IPv6 multicast or IPv4 unicast
-         *  @param aNumOfAddress Number of addresses in multicast,
-         *         if unicast, must be 1
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* NewL(            
-            const TInetAddr& aAddress,
-            TInt aTTL = KErrNotFound, 
-            TUint aNumOfAddress = KDefaultNumOfAddress );
-
-        /**
-         *	Constructs a new connection field.
-		 *	
-         *	@param aNetType A valid network type name from the pre-
-         *              defined SDP string table or defined by the user.
-		 *  @paramaAddressType A valid address type name from the 
-         *              pre-defined SDP string table or defined by the user.
-		 *	@param  const TDesC8& aAddress: A valid address of the address type.
-         *              Can contain TTL & number of addresses parameter as well.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* NewL(
-			RStringF aNetType, 
-			RStringF aAddressType, 
-			const TDesC8& aAddress );
-
-		/**
-         *	Constructs a new connection field and adds the pointer to the 
-         *  cleanup stack. Also sets the network type to "IN" and address type
-		 *	to "IP4" or "IP6" depending on the address family of aAddress.
-		 *
-		 *	@param aAddress IP address from either KAfInet 
-         *              or KAfInet6 family
-         *  @param aTTL Time-To-Live for IP4 multicasts, set it as
-         *              KErrNotFound if IPv6 multicast or IPv4 unicast
-         *  @param aNumOfAddress Number of addresses in multicast,
-         *              if unicast, must be 1
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* NewLC(       
-            const TInetAddr& aAddress, 
-            TInt aTTL = KErrNotFound,
-            TUint aNumOfAddress = KDefaultNumOfAddress );
-
-        /**
-         *	Construct a new connection field  and adds the pointer to the
-         *  cleanup stack.
-		 *	
-         *	@param aNetType A valid network type name from the pre-
-         *         defined SDP string table or defined by the user
-		 *  @paramaAddressType A valid address type name from the 
-         *              pre-defined SDP string table or defined by the user
-		 *	@param  const TDesC8& aAddress: A valid address of the address type.
-         *              Can contain TTL & number of addresses parameter as well.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpConnectionField* NewLC(
-            RStringF aNetType, RStringF aAddressType, const TDesC8& aAddress );
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpConnectionField();
-
-    public: // New functions
-
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream: Stream used for output. On return the
-         *         stream includes correctly formatted connection field.
-		 */
-		IMPORT_C void EncodeL( RWriteStream& aStream ) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpConnectionField* CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param const CSdpConnectionField& aObj: The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator== ( const CSdpConnectionField& aObj ) const;
-
-		/**
-		 *	Gets the network type that is from the pre-defined SDP string table
-         *  or given by the user.
-		 *
-		 *	@return The network type.
-		 */
-		IMPORT_C RStringF NetType() const;
-
-		/**
-		 *	Gets the address type that is from the pre-defined SDP string table 
-         *  or given by the user.
-		 *
-		 *	@return The address type.
-		 */
-		IMPORT_C RStringF AddressType() const;
-
-		/**
-		 *	Gets the address.
-		 *
-		 *	@return Address as an IP address or null if it is
-         *          not an IP address. This may be e.g. when the address
-		 *          has been specified as a FQDN. In this case, the address
-         *          can be accessed using the other getters.
-		 */
-		IMPORT_C const TInetAddr* InetAddress() const;
-
-		/**
-		 *	Gets the address.
-		 *
-		 *  @return Address as a string.
-		 */
-		IMPORT_C const TDesC8& Address() const;
-
-		/**
-		 *	Sets the address, network and address type. Also sets the network 
-		 *	type to "IN" and address type to "IP4" or "IP6" depending on the 
-		 *  address family of aAddress.
-		 *
-		 *	@param aValue The new address.
-         *  @param aTTL Time-To-Live for IP4 multicasts, set it as
-         *         KErrNotFound if IPv6 multicast or IPv4 unicast
-         *  @param aNumOfAddress Number of addresses in multicast,
-         *         if unicast, must be 1.
-         *  @leave KErrSdpCodecConnectionField ifaddress to be set is wrongly 
-         *         formatted.
-         */
-		IMPORT_C void SetInetAddressL( const TInetAddr& aValue, 
-                                   TInt aTTL = KErrNotFound,
-                                   TUint aNumOfAddress = KDefaultNumOfAddress);
-
-		/**
-		 *	Sets the address, network and address type.
-		 *
-         *	@param aNetType A valid network type name from the pre-
-         *         defined SDP string table or defined by the user
-		 *  @param aAddressType A valid address type name from the 
-         *         pre-defined SDP string table or defined by the user
-		 *	@param aAddress A valid address of the address type.
-		 */
-		IMPORT_C void SetAddressL( RStringF aNetType, 
-								   RStringF aAddressType, 
-								   const TDesC8& aAddress );
-
-        /**
-         *  Gets TTL attribute.
-         *
-         *  @return TTL or KErrNotFound, if one is not available for the address
-         */
-        IMPORT_C TInt TTLValue() const;
-
-        /**
-         *  Sets TTL attribute (only valid for IP4 multicasts).
-         *  Leaves if trying to set TTL to address that doesn't support it.
-         *
-         *  @param aTTL Time-To-Live for IP4 multicasts
-         *	@leave KErrSdpCodecConnectionField if aTTL is invalid.
-         */
-        IMPORT_C void SetTTLL( TInt aTTL );
-
-        /**
-         *  Gets the number of addresses (can be more than 1 for multicasts).
-         *  Multicast addresses are contiguously allocated above the base 
-         *  address.
-         *
-         *  @return Number of addresses
-         */
-        IMPORT_C TInt NumOfAddress() const;
-         
-        /**
-         *  Sets the number of addreses allocated for multicast. 
-         *  
-         *	@param aNumOfAddress Number of addresses in multicast
-         *  @leave KErrSdpCodecConnectionField if the address is unicast.
-         */
-        IMPORT_C void SetNumOfAddressL( TUint aNumOfAddress );
-
-    public:     // Internal to codec
-
-        /**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL( RWriteStream& aStream ) const;
-
-        /**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read
-         *  @return Initialized object
-         */
-		static CSdpConnectionField* InternalizeL( RReadStream& aStream );
-
-    private:    // Internal
-
-        /**
-         *  Constructor
-         */
-        CSdpConnectionField();
-
-        /**
-         *  2nd phase constructor
-         *
-         *	@param aText A string containing a correctly formatted field value
-		 *         terminated by a CRLF.         
-         */         
-        void ConstructL( const TDesC8& aText );
-        
-        /**
-         *  2nd phase constructor
-         *
-         *	@param aAddress IP address from either KAfInet or KAfInet6 family
-         *  @param aTTL Time-To-Live for IP4 multicasts
-         *  @param aNumOfAddress Nubmer of addresses in multicast
-         */
-        void ConstructL( const TInetAddr& aAddress,
-                         TInt aTTL, TUint aNumOfAddress );
-
-        /**
-         *  2nd phase constructor
-         *
-         *	@param aNetType A valid network type name from the pre-defined
-		 *         SDP string table or defined by the user
-		 *  @param aAddressType A valid address type name from the pre-defined
-		 *         SDP string table or defined by the user
-		 *	@param aAddress A valid address of the address type
-         */
-        void ConstructL( RStringF aNetType, RStringF aAddressType, 
-	                     const TDesC8& aAddress );
-
-        /**
-         *  Checks if the address is valid against given arguments
-         *
-         *  @param aAddressTypeIP4 The given type of address (EFalse = IP6)
-         *  @param aAddress Address with possibly TTL & number of addresses
-         *  @return error code (KErrNone if valid)
-         */
-        TInt IsValidAddress( TBool aAddressTypeIP4,
-                             const TDesC8& aAddress ) const;
-
-        /**
-         *  Checks if the address is valid against given arguments
-         *         
-         *  @param aAddress Address in TInetAddr format
-         *  @param aTTL TTL attribute
-         *  @param aNumOfAddress Number off addresses
-         *  @return error code (KErrNone if valid)
-         */
-        TInt IsValidAddress( const TInetAddr& aAddress, 
-                             TInt aTTL, TUint aNumOfAddress ) const;
-        
-        /**
-         *  Parses address field
-         *
-         *  @param aAddressTypeIP4 The given type of address (EFalse = IP6)
-         *  @param aAddress Address with possibly TTL & number of addresses
-         *  @param aTTL TTL value is stored here (or KErrNotFound)
-         *  @param aNumberOfAddresses Range of addreses
-         *  @return The address
-         */
-        HBufC8* ParseAddressFieldL( TBool aAddressTypeIP4,
-                                    const TDesC8& aAddress,
-                                    TInt& aTTL,
-                                    TUint& aNumberOfAddresses ) const;
-
-        /**
-         *  Parses IP4 address
-         *
-         *  @param aPos Position of the (first) separation mark         
-         *  @param aTTL TTL value is stored here (or KErrNotFound)
-         *  @param aAddr Addres in TInetAddr format
-         *  @param aAddress The whole address field
-         *  @param aNumberOfAddresses Range of addreses
-         *  @return The address
-         */
-        HBufC8* ParseIP4AddressL( TInt aPos, 
-                                  TInetAddr& aAddr,
-                                  const TDesC8& aAddress,
-                                  TInt& aTTL,
-                                  TUint& aNumberOfAddresses ) const;
-
-        /**
-         *  Parses IP6 address
-         *
-         *  @param aPos Position of the (first) separation mark         
-         *  @param aTTL TTL value is stored here (or KErrNotFound)
-         *  @param aAddr Addres in TInetAddr format
-         *  @param aAddress The whole address field
-         *  @param aNumberOfAddresses Range of addreses
-         *  @return The address
-         */
-        HBufC8* ParseIP6AddressL( TInt aPos, 
-                                  TInetAddr& aAddr,
-                                  const TDesC8& aAddress,
-                                  TInt& aTTL,
-                                  TUint& aNumberOfAddresses ) const;
-
-        /**
-         *  Copies given network type to iNetType and verifies aNetType to
-         *  be valid
-         *
-         *  @param aNetType Given network type                
-         */
-        void CopyNetTypeL( const TDesC8& aNetType );
-
-        /**
-         *  Copies given address type to iAddressType and verifies aAddrType
-         *  to be valid
-         * 
-         *  @param aAddrType Given address type     
-         */
-        void CopyAddressTypeL( const TDesC8& aAddrType );
-
-        /**
-         *  Copies address to iAddress, and initalizes TTL & number of addresses,
-         *  leaves on error
-         *  
-         *  @param aAddress Address string, which can also contain TTL
-         *                  and number of addresses attributes
-         */
-        void CopyAddressL( const TDesC8& aAddress, RStringPool aPool );
-
-    private:    // Data
-
-        // <network type>
-        RStringF iNetType;
-        
-        // <address type>        
-        RStringF iAddressType;
-
-        // mutable TInetAddr for InetAddress()
-        mutable TInetAddr iInetAddress;
-
-        // Address in text format
-        HBufC8* iAddress;
-
-        // TTL for IP4 multicast addresses
-        TInt iTTL;
-        // Number of addresses
-        TUint iNumOfAddress;
-
-        // String pool
-        RStringPool iPool;
-
-		void __DbgTestInvariant() const;
-
-
-	};
-
-#endif // CSDPCONNECTIONFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpdocument.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,446 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpDocument.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPDOCUMENT_H
-#define CSDPDOCUMENT_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <badesca.h>
-#include "_sdpdefs.h"
-#include <stringpool.h>
-
-// FORWARD DECLARATIONS
-class SdpUtil;
-class RReadStream;
-class RWriteStream;
-class CUri8;
-class CDesC8Array;
-class CSdpOriginField;
-class CSdpEmailField;
-class CSdpPhoneField;
-class CSdpConnectionField;
-class CSdpBandwidthField;
-class CSdpTimeField;
-class CSdpAttributeField;
-class CSdpMediaField;
-class CSdpKeyField;
-class CSdpCodecParseUtil;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *    This class encapsulates the Session Description Protocol (SDP) document.
- *  The SDP document is a collection of SDP fields and related values
- *    describing a session.
- *
- *    The normative reference for correct formatting and values is
- *    draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpDocument : public CBase
-    {
-    public: // Constructors and destructor
-        /**
-        * Constructs a new SDP document.
-        *    
-        * @param aText A string containing a correctly formatted SDP document.
-        * @return a new instance.
-        */
-        IMPORT_C static CSdpDocument* DecodeL(const TDesC8& aText);
-
-        /**
-        * Constructs a new SDP document and adds the pointer to the cleanup stack.
-        *    
-        * @param aText A string containing a correctly formatted SDP document.
-        * @return a new instance.
-        */
-        IMPORT_C static CSdpDocument* DecodeLC(const TDesC8& aText);
-            
-        /**
-        * Constructs a new, empty SDP document.
-        * The instance will have the following initial values:
-        *      v=0
-        *      s=-
-        *      t=0 0
-        *
-        * @return a new instance.
-        */
-        IMPORT_C static CSdpDocument* NewL();
-
-        /**
-        * Constructs a new, empty SDP document document and adds the pointer to 
-        * the cleanup stack.
-        * The instance will have the following initial values:
-        *      v=0
-        *      s=-
-        *      t=0 0
-        *
-        * @return a new instance.
-        */
-        IMPORT_C static CSdpDocument* NewLC();
-
-        /**
-        * Deletes the resources held by the instance.
-        */
-        IMPORT_C ~CSdpDocument();
-
-    public: 
-        /**
-        * Externalizes the object state in an internal, memory optimized format.
-        *
-        * @param aStream The output stream.
-        */
-        IMPORT_C void ExternalizeL(RWriteStream& aStream) const;
-
-        /**
-        * Internalizes the object state from an internal, memory optimized format.
-        *
-        * @param aStream The input stream.
-        * @return A new SDP document internalized from the input stream.
-        */
-        IMPORT_C static CSdpDocument* InternalizeL(RReadStream& aStream);
-
-        /**
-        * Outputs the SDP document formatted according to SDP syntax.
-        * It is possible to output the document even though it is
-        * incomplete in the sense that all mandatory SDP fields are
-        * not present.When creating an SDP document to be used e.g.
-        * as part of SIP signalling, caller should first ensure the
-        * validity of the document using the IsValid() function.
-        * 
-        * @param aStream Stream used for output. On return the 
-        *        stream includes correctly formatted SDP description.
-        */
-        IMPORT_C void EncodeL(RWriteStream& aStream) const;
-
-        /**
-        * Creates a new instance that is equal to the target.
-        *
-        * @return a new instance.
-        */
-        IMPORT_C CSdpDocument* CloneL() const;
-
-        /**
-        * Checks if the instance represents a valid SDP document.
-        *
-        * @return ETrue if SDP document is valid and EFalse if not.
-        */
-        IMPORT_C TBool IsValid() const;
-
-        /**
-        * Gets the SDP version used in the version field.
-        * Note, that the current implementation supports only version number 0.
-        *
-        * @return The SDP version number.
-        */ 
-        IMPORT_C TUint SdpVersion() const;
-
-        /**
-        * Gets a reference to the session origin field.
-        * Note, that the ownership is not transferred and
-        * the instance must not be deleted by the caller.
-        *
-        * @return The origin field or zero if not present.
-        */
-        IMPORT_C CSdpOriginField* OriginField();
-
-        /**
-        * Gets a reference to the session origin field.
-        *
-        * @return The origin field or zero if not present.
-        */
-        IMPORT_C const CSdpOriginField* OriginField() const;
-
-        /**
-        * Sets or removes the session origin field.
-        * Note, that the ownership of the argument is 
-        * transferred to the SDP document object.
-        *
-        * @param aObj New origin field or null to remove the field.
-        */
-        IMPORT_C void SetOriginField(CSdpOriginField* aObj);
-
-        /**
-        * Gets the session name field value.
-        *
-        * @return The session name or empty descriptor if not present.
-        */
-        IMPORT_C const TDesC8& SessionName() const;
-
-        /**
-        * Sets the session name field value.
-        *
-        * @param aValue Valid session name value. 
-        *        Note that an empty value is not accepted.
-        * @leave KErrSdpCodecSessionField if
-        *        aValue is not empty or aValue includes invalid byte strings 
-        *        (´\0´, ´\n´, ´\r´).
-        */
-        IMPORT_C void SetSessionNameL(const TDesC8& aValue);
-
-        /**
-        * Gets the session information field value.
-        *
-        * @return Info field value or an empty descriptor if not present.
-        */
-        IMPORT_C const TDesC8& Info() const;
-
-        /**
-        * Sets or removes the session information field value.
-        *
-        * @param New field value or an empty descriptor to remove the field.
-        * @leave KErrSdpCodecInfoField if aValue is not empty or aValue includes 
-        *        invalid byte strings (´\0´, ´\n´, ´\r´).
-        */
-        IMPORT_C void SetInfoL(const TDesC8& aValue);
-
-        /**
-        *    Gets the session URI field value.
-        *    Note, that the ownership is not transferred and
-        *    the instance must not be deleted by the caller.
-        *
-        *    @return CUri8*: Session URI or zero if the field is not present.
-        */
-        IMPORT_C CUri8* Uri();
-
-        /**
-        * Gets the session URI field value.
-        *
-        * @return Session URI or zero if the field is not present.
-        */
-        IMPORT_C const CUri8* Uri() const;
-
-        /**
-        * Sets or removes the session level URI field.
-        * Note, that the ownership of the argument is 
-        * transferred to the SDP document object.
-        *
-        * @param New value of the field or zero to remove the field.
-        */
-        IMPORT_C void SetUri(CUri8* aValue);
-
-        /**
-        * Gets the set of session level email field values. This array is used to
-        * add and remove fields into the document.
-        * Note, that only correctly formatted email field values should be placed
-        * into the array. Empty values in the array will be ignored.
-        *
-        * @return Email fields in array or empty array if no email fields.
-        */
-        IMPORT_C CDesC8Array& EmailFields();
-
-        /**
-        * Gets the set of session level phone field values. This array is used to
-        * add and remove fields into the document.
-        * Note, that only correctly formatted phone field values should be placed
-        * into the array. Empty values in the array will be ignored.
-        *  
-        * @return Phone fields in array or empty array if no phone fields.
-        */
-        IMPORT_C CDesC8Array& PhoneFields();
-
-        /**
-        * Gets the session level connection field.
-        * Note, that the ownership is not transferred and the instance must not be
-        * deleted by the caller.
-        *
-        * @return Connection field or zero if not present.
-        */
-        IMPORT_C CSdpConnectionField* ConnectionField();
-
-        /**
-        * Gets the session level connection field.
-        *
-        * @return Connection field or zero if not present.
-        */
-        IMPORT_C const CSdpConnectionField* ConnectionField() const;
-
-        /**
-        * Sets or removes the session level connection field.
-        * Note, that the ownership of the argument is 
-        * transferred to the SDP document object.
-        *
-        * @param New connection field or zero to remove the field.
-        */    
-        IMPORT_C void SetConnectionField(CSdpConnectionField* aObj);
-
-        /**
-        * Gets the possibly empty set of session level bandwidth fields.
-        * This array is used directly for element insertion and removal.
-        * The array may contain zero references and these are ignored.
-        *
-        * The objects referenced from the array are owned by the document
-        * instance and must not be deleted. An object can be removed from
-        * the document by setting the corresponding element to zero. By
-        * doing so, the calling party receives ownership of the removed object.
-        *
-        * @return Set of bandwidth fields.
-        */
-        IMPORT_C RPointerArray<CSdpBandwidthField>& BandwidthFields();
-
-        /**
-        * Gets the set of session level time description fields.
-        * This array is used directly for element insertion and removal.
-        * There must be at least one time description field in a valid SDP
-        * document.The array may contain zero references and these are ignored.
-        *
-        * The objects referenced from the array are owned by the document 
-        * instance and must not be deleted. An object can be removed from the
-        * document by setting the corresponding element to zero. By doing so,
-        * the calling party receives ownership of the removed object.  
-        *
-        * @return Set of time fields.
-        */
-        IMPORT_C RPointerArray<CSdpTimeField>& TimeFields();
-
-        /** 
-        * Gets the zone adjustments field value.
-        *
-        * @return The field value or an empty descriptor if the
-        *         field is not present.
-        */
-        IMPORT_C const TDesC8& ZoneAdjustments() const;
-
-        /** 
-        * Sets the zone adjustments field value.
-        *
-        * @param aValue A valid field value or an empty descriptor
-        *        if field is not present.
-        */
-        IMPORT_C void SetZoneAdjustmentsL(const TDesC8& aValue);
-
-        /**
-        * Gets the session level encryption key field.
-        * Note, that the ownership is not transferred and
-        * the instance must not be deleted by the caller.
-        *
-        * @return The encryption key or zero if not present.
-        */
-        IMPORT_C CSdpKeyField* Key();
-
-        /**
-        * Gets the session level encryption key field.
-        *
-        * @return The encryption key or zero if not present.
-        */
-        IMPORT_C const CSdpKeyField* Key() const;
-
-        /**
-        * Sets or removes the encryption key field.
-        * Note, that the ownership of the argument is 
-        * transferred to the SDP document object.
-        *
-        * @param aObj New value of the field or zero to remove the field.
-        */
-        IMPORT_C void SetKey(CSdpKeyField* aObj);
-
-        /**
-        * Gets the possibly empty set of session level attribute fields.
-        * This array is used directly for element insertion and removal.
-        * The array may contain zero references and these are ignored.
-        *
-        * The objects referenced from the array are owned by the document
-        * instance and must not be deleted. An object can be removed from the
-        * document by setting the corresponding element to zero. By doing so,
-        * the calling party receives ownership of the removed object.
-        *
-        * @return Set of session level attributes.
-        */
-        IMPORT_C RPointerArray<CSdpAttributeField>& AttributeFields();
-
-        /**
-        * Gets the possibly empty set of media description fields.
-        * This array is used directly for element insertion and removal.
-        * Note, that media level attributes and fields are managed 
-        * through the corresponding media field instance and not through
-        * the document instance.
-        * The array may contain zero references and these are ignored.
-        *
-        * The objects referenced from the array are owned by the document
-        * instance and must not be deleted. An object can be removed from the
-        * document by setting the corresponding element to zero. By doing so,
-        * the calling party receives ownership of the removed object.
-        *
-        * @return Set of media description fields.
-        */
-        IMPORT_C RPointerArray<CSdpMediaField>& MediaFields();
-
-    private:
-        CSdpDocument();
-        void ConstructL();
-        void ConstructL(const CSdpDocument& aSdpDocument);
-        void DoInternalizeL(RReadStream& aStream);
-
-        void ParseL (const TDesC8& aText);
-        void ParseSessionVersionL();
-        void ParseSessionOwnerL();
-        void ParseSessionNameL();
-        void ParseSessionInformationL();
-        void ParseUriL();
-        void ParseEmailL();
-        void ParsePhoneL();
-        void ParseConnectionL();
-        void ParseBandwidthL();
-        void ParseTimeFieldL();
-        void ParseZoneAdjustmentL();
-        void ParseEncryptionKeyL();
-        void ParseAttributeFieldL();
-        void ParseMediaLevelL ();
-        void ExternalizeDesCArrayL(CDesC8ArraySeg& aArray,
-                               RWriteStream& aStream) const;
-        void EncodeDesCArrayL(CDesC8ArraySeg& aArray,TInt aIndex,
-                                            RWriteStream& aStream) const;
-
-        TDesC8& GetTokenFromStreamL(RReadStream& aStream);
-
-        CSdpDocument(const CSdpDocument&); // Hidden.
-        CSdpDocument& operator = (const CSdpDocument&); // Hidden
-
-    private: // Data
-            
-        HBufC8* iInfo;
-        HBufC8* iSessionName;
-        HBufC8* iZoneAdjustments;
-        CSdpKeyField* iSdpKeyField;
-        CSdpOriginField* iSdpOriginField;
-        CSdpConnectionField* iSdpConnectionField;
-        TUint iSdpVersion;
-        RPointerArray<CSdpTimeField>* iTimeFields;
-        RPointerArray<CSdpBandwidthField>* iBandwidthFields;
-        RPointerArray<CSdpAttributeField>* iAttributeFields;
-        RPointerArray<CSdpMediaField>* iMediaFields;
-        CUri8* iUri;
-        CDesC8ArraySeg* iEmailFields;
-        CDesC8ArraySeg* iPhoneFields;
-        RStringPool iPool;
-        HBufC8* iToken;
-        CSdpCodecParseUtil* iSdpCodecParseUtil;
-    };
-
-#endif // CSDPDOCUMENT_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpfmtattributefield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,264 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpFmtAttributeField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPFMTATTRIBUTEFIELD_H
-#define CSDPFMTATTRIBUTEFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpAttributeField;
-class TSdpRtpmapValue;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the attribute field of the Session Description
- *  Protocol for media format/payload type level attributes. Media and session
- *  level attributes are supported by the CSdpAttributeField class. 
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpFmtAttributeField : public CBase
-	{
-    public: // Constructors and destructor
-        /**
-         *	Constructs a new media format level attribute field.
-		 * 
-		 *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *  @return a new instance.
-         */
-		IMPORT_C static CSdpFmtAttributeField* DecodeL( const TDesC8& aText );
-
-        /**
-         *	Constructs a new media format level attribute field  and adds the 
-         *  pointer to the cleanup stack.
-		 *			 
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpFmtAttributeField* DecodeLC( const TDesC8& aText);
-
-        /**
-         *	Constructs a new media level format attribute field.
-		 *
-         *	@param aAttribute The attribute name. It can be a pre-defined
-         *         name in the SDP string pool or defined by the client.
-         *	@param aFormat A valid format/payload identifier 
-         *         used in the format list of the media description.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpFmtAttributeField* NewL(
-            RStringF aAttribute, const TDesC8& aFormat, const TDesC8& aValue );
-
-        /**
-         *	Constructs a new media format level attribute field and adds the 
-         *  pointer to the cleanup stack.
-		 *
-         *	@param aAttribute The attribute name. It can be a pre-defined 
-         *         name in the SDP string pool or defined by the client.
-         *	@param aFormat A valid format/payload identifier 
-         *         used in the format list of the media description.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-         *	@return a new instance.
-		 */
-		IMPORT_C static CSdpFmtAttributeField* NewLC(
-            RStringF aAttribute, const TDesC8& aFormat, const TDesC8& aValue );
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpFmtAttributeField();
-
-    public: // New functions
-
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted attribute field.
-		 */
-		IMPORT_C void EncodeL( RWriteStream& aStream ) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpFmtAttributeField * CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality. 
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator== ( const CSdpFmtAttributeField& aObj ) const;
-
-		/**
-		 *	Gets the attribute.
-		 *	
-		 *	@return	The attribute name. The name can be pre-defined 
-         *          name in the SDP string table or defined by the client.
-         */
-		IMPORT_C RStringF Attribute() const;
-
-		/**
-		 *	Gets the format.
-		 *	
-		 *	@return	The format.
-		 */
-		IMPORT_C const TDesC8& Format() const;
-
-		/**
-		 *	Gets the attribute value.
-		 *	
-		 *	@return The value  or an empty descriptor if there is no value part.
-		 */
-		IMPORT_C const TDesC8& Value() const;
-
-		/**
-		 *	Sets the attribute, format/payload type and attribute value.
-		 *
-         *	@param aAttribute A valid attribute name. It can be a 
-         *         pre-defined name in the SDP string pool or defined by 
-         *         the client.
-         *	@param aFormat A valid format/payload identifier 
-         *         used in the formatlist of the media description.
-         *	@param aValue A valid attribute value or an empty 
-         *         descriptor to omit the value part.
-         *  @leave KErrSdpCodecMediaAttributeField if aAttribute is not rtpmap
-         *         or fmtp attribute.
-		 */
-		IMPORT_C void SetL(
-            RStringF aAttribute, const TDesC8& aFormat, const TDesC8& aValue );
-
-    public: // Internal to codec
-
-        /**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL( RWriteStream& aStream ) const;
-
-        /**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read        
-         *  @return Initialized object
-         */
-		static CSdpFmtAttributeField* InternalizeL( RReadStream& aStream );
-
-        /**
-         *  Returns attribute field
-         *
-         *  @return Attribute field
-         */
-        const CSdpAttributeField* AttributeField() const;
-
-    private: // New methods
-
-        /**
-         *  Creates object from the stream data.
-         *	Does the "2nd phase construction" of internalization.
-         *
-         *  @param aStream Stream where the object's state will be read
-         */
-        void DoInternalizeL( RReadStream& aStream );
-
-        /**
-         *  Formats value parameters
-         *
-         *  @param aField Attribute field object
-         */
-        void FormatValueParamsL( CSdpAttributeField* aField );
-
-    private: // Construction and destruction
-        
-        /**
-         *  Constructor
-         */
-        CSdpFmtAttributeField();
-
-        /**
-         *  Second phase construction
-         *         
-         *  @param aText A string containing a correctly formatted field value
-		 *         terminated by a CRLF.
-         */
-        void ConstructL( const TDesC8& aText );
-
-        /**
-         *  Second phase construction
-         *
-         *	@param aAttribute The attribute from the pre-defined SDP string 
-		 *         table or defined by the user
-         *	@param aFormat A valid format/payload identifier used in the format
-		 *         list of the media description.
-         *	@param aValue A valid attribute value or an empty descriptor
-		 *         to omit the value part.         
-		 */
-		void ConstructL(
-            RStringF aAttribute, const TDesC8& aFormat, const TDesC8& aValue );    
-
-        
-        /**
-         *  Decode format parameter from string
-         *
-         *	@param aText A text includeing format parameter.
-		 */
-        void DecodeFormatL(const TDesC8& aText);
-        
-		void __DbgTestInvariant() const;
-
-
-    private:
-
-        RStringPool iPool;
-        CSdpAttributeField* iAttributeField;       
-		/** Pointer to the format part*/
-		TPtrC8 iFormat;
-        /** Pointer to the format parameters*/
-		TPtrC8 iValuePart;
-	};
-
-#endif // CSDPFMTATTRIBUTEFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpkeyfield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,194 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpKeyField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPKEYFIELD_H
-#define CSDPKEYFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the encryption key field of 
- *  the Session Description Protocol.
- * 
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpKeyField : public CBase
-	{
-    public: // Constructors and destructor
-        /**
-         *	Constructs a new encryption key field.
-		 *	
-         *	@param aFieldValue A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpKeyField* DecodeL(const TDesC8& aFieldValue);
-
-        /**
-         *	Constructs a new encryption key field and adds the pointer to 
-         *  the cleanup stack.
-		 *	
-         *	@param aFieldValue A string containing a correctly 
-         *              formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         *  @leave  In error case function leaves.
-         */
-		IMPORT_C static CSdpKeyField* DecodeLC(const TDesC8& aFieldValue);
-
-        /**
-         *	Constructs a new encryption key field.
-		 *	
-         *	@param aMethod Encryption method from the pre-defined 
-         *         SDP string table. User defined values are not accepted.
-		 *  @param aEncryptionKey A valid encryption key value 
-         *         or an empty descriptor to omit the key part.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpKeyField* NewL(RStringF aMethod,
-											const TDesC8& aEncryptionKey);
-
-        /**
-         *	Constructs a new encryption key field and adds the pointer to 
-         *  the cleanup stack.
-		 *	
-         *	@param aMethod Encryption method from the pre-defined 
-         *         SDP string table. User defined values are not accepted.
-		 *  @param aEncryptionKey A valid encryption key value 
-         *         or an empty descriptor to omit the key part.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpKeyField* NewLC(RStringF aMethod,
-											const TDesC8& aEncryptionKey);
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpKeyField();
-
-    public: // New functions
-		/**
-		 *	Writes the instance as a complete SDP field encoded as UTF-8
-		 *	and formatted as defined in draft-ietf-mmusic-sdp-new-14.
-         *
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted key field.
-		 */
-		IMPORT_C void EncodeL(RWriteStream& aStream) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpKeyField * CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const CSdpKeyField& aObj) const;
-
-		/**
-		 *	Gets the encryption method.
-		 *
-		 *	@return The method.
-		 */
-		IMPORT_C RStringF Method() const;
-
-		/**
-		 *	Gets the encryption key.
-		 *
-		 *	@return The key or an empty descriptor if there is no key part.
-		 */
-		IMPORT_C const TDesC8& EncryptionKey() const;
-
-		/**
-		 *	Sets the encryption method and key.
-		 *
-         *	@param aMethod Encryption method from the pre-defined 
-         *         SDP string table. User defined values are not accepted.
-		 *  @param aEncryptionKey A valid encryption key value 
-         *         or an empty descriptor to omit the key part.
-		 */
-		IMPORT_C void SetL(RStringF aMethod,
-						   const TDesC8& aEncryptionKey);
-
-    public:
-    	/**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL(RWriteStream& aStream) const;
-		
-		/**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read        
-         *  @return Initialized object
-         */
-		static CSdpKeyField* InternalizeL(RReadStream& aStream);
-
-	private:
-		CSdpKeyField();
-		void ConstructL(const TDesC8& aText);
-		void ConstructL(RStringF aMethod, const TDesC8& aEncryptionKey);
-        void DoInternalizeL(RReadStream& aStream);
-        void SetMethodAndKeyL(RStringF aMethod, 
-                              const TDesC8& aEncryptionKey,
-                              TBool aAllowEmptyKeyValue);
-        void SetMethodClearAndKeyL(RStringF aMethod, const TDesC8& aEncryptionKey);
-        void SetMethodBase64AndKeyL(RStringF aMethod, const TDesC8& aText);
-        void SetMethodUriAndKeyL(RStringF aMethod, const TDesC8& aText);
-        void SetMethodPromptL(RStringF aMethod, const TDesC8& aText);
-        RArray<TPtrC8> GetElementsFromLineL( TLex8& aLexer);
-
-    private: // Data
-		RStringF iMethod;
-        TBool iMethodOpen;
-		HBufC8* iEncryptionKey;
-        RStringPool iStringPool;
-
-		void __DbgTestInvariant() const;
-	
-	};
-
-#endif // CSDPKEYFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdpmediafield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,445 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpMediaField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPMEDIAFIELD_H
-#define CSDPMEDIAFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include "_sdpdefs.h"
-#include <stringpool.h>
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpConnectionField;
-class CSdpBandwidthField;
-class CSdpAttributeField;
-class CSdpKeyField;
-class CSdpFmtAttributeField;
-class CSdpCodecParseUtil;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the media description field and related media
- *  specific subfields of the Session Description Protocol.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpMediaField : public CBase
-	{
-
-	public:
-
-
-    public: // Constructors and destructor
-        /**
-         *	Constructs a new media description field.
-		 *	
-         *	@param aText A correctly formatted media field 
-         *         terminated by a CRLF followed by zero or more media 
-         *         attribute fields separated by a CRLF.
-         *	@param aRecurse If ETrue, attempts to construct also media 
-         *         attributes following the CRLF terminating the media field.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpMediaField* DecodeL(const TDesC8& aText,
-												TBool aRecurse = ETrue);
-
-        /**
-         *	Constructs a new media description field and adds the pointer to 
-         *  the cleanup stack.
-		 *	
-         *	@param aText A correctly formatted media field 
-         *         terminated by a CRLF followed by zero or more media 
-         *         attribute fields separated by a CRLF.
-         *	@param aRecurse If ETrue, attempts to construct also media 
-         *         attributes following the CRLF terminating the media field.
-		 *  @return a new instance.
-         */
-		IMPORT_C static	CSdpMediaField* DecodeLC(const TDesC8& aText,
-												 TBool aRecurse = ETrue);
-
-        /**
-         *	Constructs a new media description field.
-		 *  The optional portcount component of the field is initialized to 1.
-		 *
-		 *	@param aMedia A valid media type name.
-         *	@param aPort Port number.
-         *	@param aProtocol A valid media protocol name.
-         *	@param aFormatList A valid format list.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpMediaField* NewL(RStringF aMedia,
-											 TUint aPort,
-											 RStringF aProtocol,
-											 const TDesC8& aFormatList);
-
-		/**
-         *	Constructs a new media description field and adds the pointer to 
-         *  the cleanup stack.
-		 *  The optional portcount component of the field is initialized to 1.
-		 *	
-		 *	@param aMedia A valid media type name.
-         *	@param aPort Port number.
-         *	@param aProtocol A valid media protocol name.
-         *	@param aFormatList A valid format list.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpMediaField* NewLC(RStringF aMedia,
-											  TUint aPort,
-										      RStringF aProtocol,
-										      const TDesC8& aFormatList);
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpMediaField();
-
-    public: // New functions
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF. Optionally output also the related media 
-		 *  level fields. 
-		 * 
-		 *	@param aStream Stream used for output. On return the
-         *         stream includes correctly formatted media field with 
-         *         media part fields if aRecurse is defined to ETrue.
-		 *	@param aRecurse Flag to specify whether to output media 
-		 *         attributes also (ETrue) or only the media field (EFalse).
-		 */
-		IMPORT_C void 
-			EncodeL(RWriteStream& aStream, TBool aRecurse = ETrue) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *  Optionally also related subfields are cloned.
-		 *
-		 *	@param aRecurse Flag to specify whether to clone subfields
-		 *         also (ETrue) or only the media field (EFalse).
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpMediaField * CloneL(TBool aRecurse = ETrue) const;
-
-		/**	
-		 *	Compares this instance to another for equality. Subfields are
-		 *  included in the comparison if present.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const CSdpMediaField& aObj) const;
-
-		/**
-		 *	Checks the consistency between the media field and it's subfields.
-		 *  In particular, this function checks that each format specific 
-		 *  attribute is related to a format in the format list of the
-		 *  media field.
-		 *
-		 *	@return	ETrue if media description is consistent and EFalse if not.
-		 */
-		IMPORT_C TBool IsValid() const;
-
-		/**
-		 *	Gets the media type.
-		 *
-		 *	@return The media type.
-		 */
-		IMPORT_C RStringF Media() const;
-
-		/**
-		 *	Sets the media type.
-		 *
-		 *	@param aMedia The media type.
-		 *  @leave KErrSdpCodecMediaField if aMedia is not valid character
-		 */
-		IMPORT_C void SetMediaL(RStringF aMedia);
-
-		/**
-		 *	Gets the media protocol.
-		 *
-		 *	@return The media protocol.
-		 */
-		IMPORT_C RStringF Protocol() const;
-
-		/**
-		 *	Sets the media protocol.
-		 *
-		 *	@param aProtocol The media protocol.
-		 *  @leave KErrSdpCodecMediaField if 
-		 *		   aProtocol containing two elements divided by slash are not 
-         *         valid tokens.
-		 */
-		IMPORT_C void SetProtocolL(RStringF aProtocol);
-
-		/**
-		 *	Gets the port number.
-		 *
-		 *	@return The port number.
-		 */
-		IMPORT_C TUint Port() const;
-
-		/**
-		 *	Sets the port number.
-		 *
-		 *	@param aPort The port number.
-		 *  @leave KErrSdpCodecMediaField if port is not valid number as 
-         *         defined in draft-ietf-mmusic-sdp-new-14
-		 */
-		IMPORT_C void SetPortL(TUint aPort);
-
-		/**
-		 *	Gets the port count.
-		 *
-		 *	@return The port count.
-		 */
-		IMPORT_C TUint PortCount() const;
-
-		/**
-		 *	Sets the port count.
-		 *
-		 *	@param aCount The port count that must be greater than zero.
-		 *  @leave KErrSdpCodecMediaField if aCount equals to zero.
-		 */
-		IMPORT_C void SetPortCountL(TUint aCount);
-
-		/**
-		 *	Gets the format list.
-		 *
-		 *	@return The format list.
-		 */
-		IMPORT_C const TDesC8& FormatList() const;
-
-		/**
-		 *	Sets the format list.
-		 *  The format list should contain one or more format tokens separated
-		 *  by a single whitespace character.
-		 *
-		 *	@param aValue A valid format list.
-		 *  @leave KErrSdpCodecMediaField if aValue contains invalid tokens
-		 */
-		IMPORT_C void SetFormatListL(const TDesC8& aValue);
-
-		/**
-		 *	Return the media level info field value.
-		 *
-		 *	@return The value or an empty descriptor if not present.
-		 */
-		IMPORT_C const TDesC8& Info() const;
-
-		/**
-		 *	Sets the media level info field value.
-		 *
-		 *	@param aValue A valid info field value.
-		 *	@leave KErrSdpCodecMediaInfoField if aValue is not KNullDesC8 or 
-         *         aValue includes invalid byte strings (´\0´, ´\n´, ´\r´).
-		 */
-		IMPORT_C void SetInfoL(const TDesC8& aValue);
-
-		/**
-		 *	Gets the media level encryption key field.
-		 *	Note, that the ownership is not transferred and
-		 *	the instance must not be deleted by the caller.
-		 *
-		 *	@return Encryption key field or null if not present.
-		 */
-		IMPORT_C CSdpKeyField* Key();
-
-		/**
-		 *	Gets the media level encryption key field.
-		 *
-		 *	@return Encryption key field or null if not present.
-		 */
-		IMPORT_C const CSdpKeyField* Key() const;
-
-		/**
-		 *	Sets or removes the media level encryption key field.
-		 *
-		 *	@param aObj The new key field or null if field is 
-         *         to be removed. Ownership of the referenced object
-		 *         is transferred to the media field instance.
-		 */
-		IMPORT_C void SetKey(CSdpKeyField* aObj);
-
-		/**
-		 *	Gets the set of media format level attributes.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	The objects referenced from the array are owned by the media
-		 *  field instance and must not be deleted. An object can be
-		 *  removed from the media description by setting the corresponding
-		 *  element to zero. By doing so, the calling party receives ownership
-		 *  of the removed object.
-		 *
-		 *	@return The set of media format level attributes.
-		 */
-		IMPORT_C RPointerArray<CSdpFmtAttributeField>& FormatAttributeFields();
-
-		/**
-		 *	Gets the set of media level, format independent attributes.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	The objects referenced from the array are owned by the media
-		 *  field instance and must not be deleted. An object can be
-		 *  removed from the media description by setting the corresponding
-		 *  element to zero. By doing so, the calling party receives ownership
-		 *  of the removed object.
-		 *
-		 *	@return The set of media level attributes.
-		 */
-		IMPORT_C RPointerArray<CSdpAttributeField>& AttributeFields();
-
-		/**
-		 *	Gets the set of media level bandwidth fields.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	The objects referenced from the array are owned by the media
-		 *  field instance and must not be deleted. An object can be
-		 *  removed from the media description by setting the corresponding
-		 *  element to zero. By doing so, the calling party receives ownership
-		 *  of the removed object.
-		 *
-		 *	@return The set of media level bandwidth fields.
-		 */
-		IMPORT_C RPointerArray<CSdpBandwidthField>& BandwidthFields();
-
-		/**
-		 *	Gets the set of media level connection fields.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	The objects referenced from the array are owned by the media
-		 *  field instance and must not be deleted. An object can be
-		 *  removed from the media description by setting the corresponding
-		 *  element to zero. By doing so, the calling party receives ownership
-		 *  of the removed object.
-		 *
-		 *	@return The set of media level connection fields.
-		 */
-		IMPORT_C RPointerArray<CSdpConnectionField>& ConnectionFields();
-
-		/**
-		 *	Removes a specific format from the media description.
-		 *  The function will remove the named format from the format list if
-		 *  found and then delete all format level attributes of type 
-		 *  CSdpFmtAttributeField related to the removed format. 
-		 *
-		 *	@param aFormat The name of the format to remove.
-		 */
-		IMPORT_C void RemoveFormatL(const TDesC8& aFormat);
-
-		/**
-		 *	Removes all formats except one from the media description.
-		 *  The function will set the format list to only contain the one
-		 *  format to keep and then delete all format level attributes that
-		 *  are related to the removed formats. If the format is not found
-		 *  from the format list, it is added there. If there are no format
-		 *  level attributes for the specified format, the format level
-		 *  attribute set will be empty.
-		 *
-		 *	@param aFormat The name of the format to keep after 
-		 *         removing all others.
-		 */
-		IMPORT_C void KeepFormatL(const TDesC8& aFormat);
-
-		/**
-		 *	Sets this media description into rejected state.
-		 *  The rejected state is defined by the offer/answer model in
-		 *  RFC3264. The function sets the port number to 0 and removes
-		 *  all formats except one. The remaining format is determined
-		 *  by the implementation.
-		 */
-		IMPORT_C void RejectMedia();
-
-    public:
-		/**
-		 *	Shows if contact is present
-		 *
-		 *	@return ETrue if contact present, otherwise EFalse
-		 */
-		TBool IsContactPresent() const;
-		
-		/**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL(RWriteStream& aStream) const;
-		
-		/**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read	
-         *  @return Initialized object
-         */
-		static CSdpMediaField* InternalizeL(RReadStream& aStream);
-
-	private:
-		CSdpMediaField();
-		void ConstructL();
-		void ConstructL(TBool aRecurse);
-		void ConstructL(RStringF aMedia, TUint aPort, RStringF aProtocol, 
-						const TDesC8& aFormatList);
-
-		void ConstructL(const CSdpMediaField& aSdpMediaField);
-		void DoInternalizeL(RReadStream& aStream);
-		void ParseL (const TDesC8& aText);
-		void ParseMediaL();
-		void ParseInformationL();
-		void ParseConnectionL();
-		void ParseBandwithL();
-		void ParseEncryptionKeyL();
-		void ParseAttributeFieldsL();
-		TDesC8& GetTokenFromStreamL(RReadStream& aStream);
-
-
-		CSdpMediaField(const CSdpMediaField&); // Hidden.
-		CSdpMediaField& operator = (const CSdpMediaField&); // Hidden
-
-    private: // Data
-		HBufC8* iInfo;
-		CSdpKeyField* iSdpKeyField;
-		RArray<TPtrC8> iElementArray;
-		RStringPool iPool;
-		TBool iRecurse;
-		RStringF iMedia;
-		RStringF iProtocol;
-		TUint iPort;
-		TUint iPortCount;
-		HBufC8* iFormatList;
-		RPointerArray<CSdpBandwidthField>* iBandwidthFields;
-		RPointerArray<CSdpAttributeField>* iAttributeFields;
-		RPointerArray<CSdpConnectionField>* iConnectionFields;
-		RPointerArray<CSdpFmtAttributeField>* iFmtAttrFields;
-		HBufC8* iToken;
-		CSdpCodecParseUtil* iSdpCodecParseUtil;
-	};
-
-#endif // CSDPMEDIAFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdporiginfield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,461 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpOriginField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPORIGINFIELD_H
-#define CSDPORIGINFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <in_sock.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-//  CONSTANTS
-const TInt KMaxAddressLength = 256;
-
-//  FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpOriginFieldPtrs;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the origin field of 
- *  the Session Description Protocol.
- * 
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpOriginField : public CBase
-	{
-    public:     // Constructors and destructor
-
-        /**
-         *	Constructs a new origin field.
-		 *		 
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* DecodeL( const TDesC8& aText );
-
-        /**
-         *	Constructs a new origin field and adds the pointer to the cleanup 
-         *  stack.
-		 * 		
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* DecodeLC( const TDesC8& aText );
-
-        /**
-         *	Constructs a new origin field.
-		 *	         
-         *	@param aUserName A valid user name value.
-         *	@param aSessionId A valid session id value.
-         *	@param aSessionVersion A valid announcement version value.
-         *	@param aAddress A unicast IP address from either
-		 *         KAfInet or KAfInet6 family.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* NewL( const TDesC8& aUserName, 
-											   TInt64 aSessionId, 
-											   TInt64 aSessionVersion, 
-											   TInetAddr& aAddress );
-
-        /**
-         *	Constructs a new origin field and adds the pointer to the cleanup 
-         *  stack.
-		 *	         
-         *	@param aUserName A valid user name value.
-         *	@param aSessionId A valid session id value.
-         *	@param aSessionVersion A valid announcement version value.
-         *	@param aAddress A unicast IP address from either
-		 *         KAfInet or KAfInet6 family.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* NewLC( const TDesC8& aUserName, 
-											    TInt64 aSessionId, 
-											    TInt64 aSessionVersion, 
-											    TInetAddr& aAddress );
-
-		/**
-         *	Constructs a new origin field.
-		 *	
-         *	@param aUserName A valid user name value.
-         *	@param aSessionId A valid session id value.
-         *	@param aSessionVersion A valid announcement version value.
-         *	@param aNetType A valid network type value (typically "IN").
-		 *  @param aAddressType A valid address type value 
-		 *         (typically "IP4" or "IP6").
-		 *	@param aAddress A unicast IP Address, Fully 
-         *         Qualified Domain Name (FQDN), or an other type of 
-         *         address allowed for the address type.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* NewL( const TDesC8& aUserName, 
-											TInt64 aSessionId, 
-											TInt64 aSessionVersion, 
-											RStringF aNetType, 
-											RStringF aAddressType, 
-											const TDesC8& aAddress );
-
-		/**
-         *	Constructs a new origin field and adds the pointer to the cleanup 
-         *  stack.
-		 *	
-         *	@param aUserName A valid user name value.
-         *	@param aSessionId A valid session id value.
-         *	@param aSessionVersion A valid announcement version value.
-         *	@param aNetType A valid network type value (typically "IN").
-		 *  @param aAddressType A valid address type value 
-		 *         (typically "IP4" or "IP6").
-		 *	@param aAddress A unicast IP Address, Fully Qualified Domain
-		 *         Name (FQDN), or an other type of address allowed
-		 *         for the address type.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpOriginField* NewLC( const TDesC8& aUserName, 
-											TInt64 aSessionId, 
-											TInt64 aSessionVersion, 
-											RStringF aNetType, 
-											RStringF aAddressType, 
-											const TDesC8& aAddress );
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpOriginField();
-
-    public: // New functions
-
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted origin field.
-		 */
-		IMPORT_C void EncodeL( RWriteStream& aStream ) const;
-
-		/**
-    	 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpOriginField* CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == ( const CSdpOriginField& aObj ) const;
-
-		/**
-		 *	Gets the user name.
-		 *
-		 *	@return User name.
-		 */
-		IMPORT_C const TDesC8& UserName() const;
-
-		/**
-		 *	Sets the user name.
-		 *
-		 *	@param aValue A valid user name value.
-		 *	@leave KErrSdpCodecOriginField if aValue is not a valid user name.
-		 */
-		IMPORT_C void SetUserNameL( const TDesC8& aValue );
-
-		/**
-		 *	Gets the session id of the origin field.
-		 *  
-		 *	@return Session id.
-		 */
-		IMPORT_C TInt64 SessionId() const;
-
-		/**
-		 *	Sets the session id.
-		 *
-		 *	@param aValue A valid session id value.
-		 */
-		IMPORT_C void SetSessionId( TInt64 aValue );
-		
-		/**
-		 *	Gets the announcement version.
-		 *	
-		 *	@return Version.
-		 */
-		IMPORT_C TInt64 Version() const;
-
-		/**
-		 *	Sets the announcement version..
-		 *
-		 *	@param aValue A valid version value.
-		 */
-		IMPORT_C void SetVersion( TInt64 aValue );
-
-		/**
-		 *	Gets the network type.
-		 *
-		 *	@return The network type from pre-defined SDP string 
-         *          table or given by the user.
-		 */
-		IMPORT_C RStringF NetType() const;
-
-		/**
-		 *	Gets the address type.
-		 *
-		 *	@return The address type from pre-defined SDP string 
-         *          table or given by the user.
-		 */
-		IMPORT_C RStringF AddressType() const;
-		
-		/**
-		 *	Gets the address.
-		 *
-		 *	@return Address as an IP address or null if it is
-		 *          not an IP address. This may be e.g. when the address has 
-		 *          been specified as a FQDN. In this case, the address can be 
-		 *          accessed using the other getters.
-		 */
-		IMPORT_C const TInetAddr* InetAddress() const;
-
-		/**
-		 *	Gets the address.
-		 *
-		 *  @return Address as a string.
-		 */
-		IMPORT_C const TDesC8& Address() const;
-
-		/**
-		 *	Sets the address, network and address type.
-		 *	Also sets the network type to "IN" and address type to "IP4" or 
-		 *  "IP6" depending on the address family of aValue.
-		 *
-         *	@param aValue A unicast IP address from either KAfInet 
-         *         or KAfInet6 family.
-		 */
-		IMPORT_C void SetInetAddress( const TInetAddr& aValue );
-
-		/**
-		 *	Sets the address, network and address type.
-		 *
-		 *	@param aAddress A unicast IP Address, Fully Qualified Domain
-		 *         Name (FQDN), or an other type of address allowed for the
-		 *         address type.
-         *	@param aNetType A valid network type value (typically "IN").
-		 *  @param aAddressType A valid address type value 
-		 *         (typically "IP4" or "IP6").
-		 *	@leave KErrSdpCodecOriginField if aNetType or aAddressType are not
-		 *		   valid tokens, or aAddress is invalid, or aAddress type 
-		 *		   is not aligned with the address format
-		 */
-		IMPORT_C void SetAddressL( const TDesC8& aAddress, 
-								   RStringF aNetType, 
-								   RStringF aAddressType );
-        
-    public:     // Internal to codec
-
-        /**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL( RWriteStream& aStream ) const;
-
-        /**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read	
-         *  @return Initialized object
-         */
-		static CSdpOriginField* InternalizeL( RReadStream& aStream );
-
-	private:    // Constructors
-
-        /**
-         *  Constructor
-         */
-		CSdpOriginField();
-
-        /**
-         *  Second phase constructor. Parses the text string and initializes
-         *  the member variables
-         *         
-         *  @param aText Line of text that will be parsed (ends on the newline)
-         */
-		void ConstructL( const TDesC8& aText );
-        
-        /**
-         *  Second phase constructor. Constructs the object.
-         *
-         *  @param aUserName  A valid user name value.
-         *  @param aSessionId A valid session id value.
-         *  @param aSessionVersion A valid announcement version value.
-         *  @param aAddress A unicast IP address from either
-		 *                  KAfInet or KAfInet6 family.        
-         */
-		void ConstructL( const TDesC8& aUserName, 
-						 TInt64 aSessionId, 
-                         TInt64 aSessionVersion, 
-						 TInetAddr& aUnicastAddress );
-         
-        /**                        
-         *	Second phase constructor. Constructs the object.
-		 *	
-         *	@param aUserName  A valid user name value.
-         *	@param aSessionId A valid session id value.
-         *	@param aSessionVersion A valid announcement version value.
-         *	@param aNetType A valid network type value (typically "IN").
-		 *  @param aAddressType A valid address type value 
-		 *         (typically "IP4" or "IP6").
-		 *	@param aAddress A unicast IP Address, Fully Qualified Domain
-		 *         Name (FQDN), or an other type of address allowed
-		 *         for the address type.
-         */
-        void ConstructL( const TDesC8& aUserName, 
-	                     TInt64 aSessionId, 
-	                     TInt64 aSessionVersion, 
-	                     RStringF aNetType, 
-					     RStringF aAddressType, 
-	                     const TDesC8& aAddress );
-
-        // These are unnecessary? Derived from CBase, prevents the use
-		CSdpOriginField( const CSdpOriginField& ); // Hidden.
-		CSdpOriginField& operator = ( const CSdpOriginField& ); // Hidden
-
-    private:        // New methods
-
-        /**
-         *  Checks if the given address is valid
-         *
-         *  @param aAddress Address to be checked
-         *  @return Valid address or not
-         */
-        TBool IsValidAddress( const TDesC8& aAddress ) const;   
-        
-        /**
-         *  Checks if the given address is valid
-         *
-         *  @param aAddr Address to be checked
-         *  @return Valid address or not
-         */             
-        TBool IsValidAddress( const TInetAddr& addr ) const;
-
-        /**
-         *  Checks that address type matches with address format
-         *
-         *  @param aAddress Address
-         *  @param aType Address type
-         *  @param aPool String pool
-         *  @return Type Matches with format or not
-         */
-        TBool TypeMatchesWithFormat( 
-            const TDesC8& aAddress, const TDesC8& aType, 
-            RStringPool aPool ) const;
-
-        /**
-         *  Checks if the given username is valid
-         *
-         *  @param aUserName Username
-         *  @return Validity of the given username
-         */
-        TBool IsValidUserName( const TDesC8& aUserName ) const;
-
-        /**
-         *  Parses username, initializes iUserName
-         *
-         *  @param aArray Array containing all the elements
-         */
-        void ParseUserNameL( RArray<TPtrC8>& aArray );
-
-        /**
-         *  Parses session ID and version, initializes iSessionId
-         *  and iSessionVersion
-         *
-         *  @param aArray Array containing all the elements
-         */
-        void ParseSessionIDAndVersionL( RArray<TPtrC8>& aArray );
-
-        /**
-         *  Parses network type and address type, initializes
-         *  iNetType and iAddressType
-         *
-         *  @param aArray Array containing all the elements
-         */
-       void ParseNetTypeAndAddressTypeL( RArray<TPtrC8>& aArray );
-
-        /**
-         *  Parses address, checks address against address type,
-         *  initializes iAddress
-         *
-         *  @param aArray Array containing all the elements
-         */
-        void ParseAddressL( RArray<TPtrC8>& aArray );
-
-		inline CSdpOriginFieldPtrs& OriginFieldPtrs();
-
-		inline const CSdpOriginFieldPtrs& OriginFieldPtrs() const;
-
-		TInt64 Get63Msbs( const TDesC8& aDecimalValue ) const;
-		void SetIPAddressType( const TInetAddr& aAddr );
-
-    private:    // Data
-
-        RStringPool iPool;
-
-        // <username>
-		HBufC8* iUserName;
-        // <session id>
-		TInt64 iSessionId;
-        // <version>
-		TInt64 iSessionVersion;
-        // <net type>
-        RStringF iNetType;
-        // <address type>        
-        RStringF iAddressType;
-        // <address>
-        // Either one is used (this or iAddressType/iAddress combo)
-        // Can be defined as mutable because this variable does not affect
-        // to the state of the object, but it is needed as const pointer
-        // is returned on InetAddr() method
-		mutable TInetAddr iUnicastAddress;        
-        TBuf8<KMaxAddressLength> iAddress; 
-        // For configuring the address into TInetAddr
-        TBuf<KMaxAddressLength> iAddress16;          
-
-		void __DbgTestInvariant() const;
-
-	};
-
-#endif // CSDPORIGINFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdprepeatfield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,212 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpRepeatField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPREPEATFIELD_H
-#define CSDPREPEATFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-#include "sdptypedtime.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the repeat times field of the 
- *  Session Description Protocol.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpRepeatField : public CBase
-	{
-    public: // Constructors and destructor
-        /**
-         *	Constructs a new repeat times field.
-		 *	
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpRepeatField* DecodeL(const TDesC8& aText);
-
-        /**
-         *	Constructs a new repeat times field and adds the pointer to the 
-         *  cleanup stack.
-		 *	
-         *	@param aText A string containing a correctly 
-         *         formatted field value terminated by a CRLF.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpRepeatField* DecodeLC(const TDesC8& aText);
-
-        /**
-         *	Constructs a new repeat times field.
-		 *	
-         *	@param aRepeatInterval Repeat interval value 
-         *         greater than zero.
-         *	@param aActiveDuration Active duration.
-         *	@param aOffsets At least one time offset.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpRepeatField* NewL(
-                                        const TSdpTypedTime  aRepeatInterval,
-										const TSdpTypedTime  aActiveDuration,
-										const RArray<TSdpTypedTime>& aOffsets);
-
-        /**
-         *	Constructs a new repeat times field and adds the pointer to the 
-         *  cleanup stack.
-		 *	
-         *	@param aRepeatInterval Repeat interval value 
-         *         greater than zero.
-         *	@param aActiveDuration Active duration.
-         *	@param aOffsets At least one time offset.
-         *	@return a new instance.
-         */
-		IMPORT_C static	CSdpRepeatField* NewLC(
-                                        const TSdpTypedTime  aRepeatInterval,
-										const TSdpTypedTime aActiveDuration,
-										const RArray<TSdpTypedTime>& aOffsets);
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpRepeatField();
-
-    public: // New functions
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted repeat field.
-		 */
-		IMPORT_C void EncodeL(RWriteStream& aStream) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpRepeatField * CloneL() const;
-
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const CSdpRepeatField & aObj) const;
-
-		/**
-		 *	Gets the repeat interval.
-		 *
-		 *	@return The repeat interval.
-		 */
-		IMPORT_C const TSdpTypedTime RepeatInterval() const;
-
-		/**
-		 *	Sets the repeat interval.
-		 *
-         *	@param aValue Repeat interval value greater than zero.
-         *	@leave KErrSdpCodecRepeatField if aValue is not positive integer 
-         *         value.
-		 */
-		IMPORT_C void SetRepeatIntervalL(const TSdpTypedTime  aValue);
-
-		/**
-		 *	Gets the active duration..
-		 *
-		 *	@return The active duration.
-		 */
-		IMPORT_C const TSdpTypedTime ActiveDuration() const;
-
-		/**
-		 *	Sets the active duration.
-		 *
-         *	@param Active duration.
-		 */
-		IMPORT_C void SetActiveDuration(const TSdpTypedTime aValue);
-
-		/**
-		 *	Gets the array of time offsets.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	@return The offsets.
-		 */
-		IMPORT_C const RArray<TSdpTypedTime>& TimeOffsets() const;
-
-		/**
-		 *	Sets the time offsets.
-		 *
-         *	@param aOffsets At least one time offset.
-		 */
-		IMPORT_C void SetTimeOffsetsL(const RArray<TSdpTypedTime>& aValue);
-
-    public:
-		/**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL(RWriteStream& aStream) const;
-		
-		/**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read	
-         *  @return Initialized object
-         */
-		static CSdpRepeatField* InternalizeL(RReadStream& aStream);
-
-	private:
-		CSdpRepeatField(const TSdpTypedTime aRepeatInterval,
-						const TSdpTypedTime aActiveDuration);
-		CSdpRepeatField();
-		void ConstructL(const TDesC8& aText);
-		void ConstructL(const RArray<TSdpTypedTime>& aOffsets);
-        
-
-    private: // Data
-        RStringPool iPool;
-		TSdpTypedTime iRepeatInterval;
-		TSdpTypedTime iActiveDuration;
-		RArray<TSdpTypedTime> iTimeOffsets;
-
-		void __DbgTestInvariant() const;
-	
-	};
-
-#endif // CSDPREPEATFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdprtpmapvalue.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpRtpmapValue.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef TSDPRTPMAPVALUE_H
-#define TSDPRTPMAPVALUE_H
-
-// INCLUDES
-#include <e32std.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	Utility class for manipulating the value of an rtpmap-attribute.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class TSdpRtpmapValue
-	{
-    public: // Constructors and destructor
-
-		/**
-		 *	Initializes the instance to refer to the given rtpmap components.
-		 *	The parameters must stay in scope as long as this instance exists.
-		 *	Otherwise, the member variables of this class will point to
-		 *	a released memory.
-		 *  
-		 *	@param aEncodingName Valid rtpmap encoding name value.	
-		 *	@param aClockrate Valid rtpmap clockrate value.	
-		 *	@param aEncodingParameters Valid rtpmap encoding 
-         *         parameter list.	
-		 */
-		IMPORT_C TSdpRtpmapValue( 
-						const TPtrC8& aEncodingName,
-						const TPtrC8& aClockrate,
-						const TPtrC8& aEncodingParameters );
-
-    public: // New functions
-
-		/**
-		 *	Tries to parse a string as an rtpmap attribute value up to the end 
-		 *	of the string or CRLF, whichever comes first, and set pointers to 
-		 *	the components found. The parameter must stay in scope as long as 
-         *  this instance exists. Otherwise, the member variables of this class 
-         *  will point to a released memory.
-		 *         
-		 *	@param aText String containing the value of an rtpmap attribute.
-         *  @return a new instance 
-		 *	@leave  KErrArgument if parsing fails.
-		 */
-		IMPORT_C static TSdpRtpmapValue DecodeL( const TDesC8& aText );
-
-		/**
-		 *	Outputs the attribute value formatted according to SDP syntax.
-		 *  The field terminating CRLF is not included in the output.
-         *  When constructing CSdpFmtAttributeField, return value of this 
-         *  function can be used as aValue in CSdpFmtAttributeField::NewL
-         *  (RStringF aAttribute, const TDesC8& aFormat, const TDesC8& aValue)
-         *  function.
-		 * 
-         *  @return Encoded value. Ovnership of buffer is changed to caller.
-		 */
-		IMPORT_C HBufC8* EncodeL() const;        
-
-    public: // Data
-
-		/** 
-		* Encoding name part of an rtpmap value 
-		* @internalComponent
-		*/
-		TPtrC8 iEncName;
-
-		/** 
-		* Clockrate part of an rtpmap value. 
-		* @internalComponent
-		*/
-		TPtrC8 iClockrate;
-
-		/** 
-		* Encoding parameters part of an rtpmap value. 
-		* @internalComponent
-		*/
-		TPtrC8 iEncParams;
-	};
-
-#endif // TSDPRTPMAPVALUE_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdptimefield.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,231 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpTimeField.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef CSDPTIMESFIELD_H
-#define CSDPTIMESFIELD_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpRepeatField;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class encapsulates the time field and the related zero or 
- *  more repeat times fields and an optional time zone adjustment
- *  field of the Session Description Protocol.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpTimeField : public CBase
-	{
-    public: // Constructors and destructor
-        /**
-         *	Constructs a time field.
-		 * 
-         *	@param aText A correctly formatted time field value
-         *         terminated by a CRLF followed by zero or more repeat 
-         *         times and zero or one time zone adjustment fields 
-         *         separeted by a CRLF.
-		 *	@param aRecurse Flag to specify whether to decode subfields 
-		 *         also (ETrue) or only the time field (EFalse).
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpTimeField * DecodeL(const TDesC8& aText, 
-                                                TBool aRecurse = ETrue);
-
-        /**
-         *	Constructs a time field and adds the pointer to the cleanup stack.
-		 *	
-         *	@param aText A correctly formatted time field value 
-         *         terminated by a CRLF followed by zero or more repeat 
-         *         times and zero or one time zone adjustment fields 
-         *         separeted by a CRLF.
-		 *	@param aRecurse Flag to specify whether to decode subfields 
-		 *         also (ETrue) or only the time field (EFalse).
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpTimeField * DecodeLC(const TDesC8& aText,
-                                                TBool aRecurse = ETrue);
-
-        /**
-         *	Constructs a time field.
-		 *	
-         *	@param aStartTime Session start time.
-         *	@param aStopTime Session end time that must be 
-         *         greater than or equal to the start time.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpTimeField * NewL(const TDesC8& aStartTime,
-									        const TDesC8& aStopTime);
-
-        /**
-         *	Constructs a time field and adds the pointer to the cleanup stack.
-		 *	
-         *	@param aStartTime Session start time.
-         *	@param aStopTime Session end time that must be 
-         *         greater than or equal to the start time.
-         *	@return a new instance.
-         */
-		IMPORT_C static CSdpTimeField * NewLC(const TDesC8& aStartTime,
-									        const TDesC8& aStopTime);
-
-		/**
-		 *	Deletes the resources held by the instance.
-		 */
-		IMPORT_C ~CSdpTimeField();
-
-    public: // New functions
-		/**
-		 *	Outputs the field formatted according to SDP syntax and including
-		 *  the terminating CRLF. Optionally output also the related repeat
-		 *  times.
-		 * 
-		 *	@param aStream Stream used for output. On return 
-         *         the stream includes correctly formatted time field with 
-         *         repeat fields if aRecurse is ETrue.
-		 *	@param aRecurse Flag to specify whether to output subfields
-		 *         also (ETrue) or only the time field (EFalse).
-		 */
-		IMPORT_C void EncodeL(RWriteStream& aStream, TBool aRecurse = ETrue) const;
-
-		/**
-		 *	Creates a new instance that is equal to the target.
-		 *  Optionally also related repeat times are cloned.
-		 *
-		 *	@param aRecurse Flag to specify whether to clone subfields 
-		 *         also (ETrue) or only the time field (EFalse).
-		 *	@return a new instance.
-		 */
-		IMPORT_C CSdpTimeField * CloneL(TBool aRecurse = ETrue) const;
-
-		/**	
-		 *	Compares this instance to another for equality. Subfields are
-		 *	included in comparison if present.
-		 *
-		 *	@param aObj The instance to compare to.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const CSdpTimeField & aObj) const;
-
-		/**
-		 *	Checks the consistency of the time description and it's subfields.
-		 *.
-		 *	@return	ETrue if time description is valid and EFalse if not.
-		 */
-		IMPORT_C TBool IsValid() const;
-
-		/**
-		 *	Gets the session start time.
-		 *
-		 *	@return The session start time.
-		 */
-		IMPORT_C const TDesC8& StartTime() const;
-
-		/**
-		 *	Gets the session stop time.
-		 *
-		 *	@return The session stop time.
-		 */
-		IMPORT_C const TDesC8& StopTime() const;
-
-		/**
-		 *	Sets the session start and stop times.
-		 *
-         *	@param aStartTime Session start time..
-         *	@param aStopTime Session end time that must be 
-         *         greater than or equal to the start time.
-		 *	@leave KErrSdpCodecTimeField if start time and stop time are not 
-         *         correct as defined draft-ietf-mmusic-sdp-new-14.
-		 */
-		IMPORT_C void SetTimesL(const TDesC8& aStartTime, const TDesC8& aStopTime);
-
-		/**
-		 *	Gets the set of repeat times fields related to this time field.
-		 *  This array is used directly for element insertion and removal.
-		 *
-		 *	The objects referenced from the array are owned by the media field
-		 *  instance and must not be deleted. An object can be removed from the 
-		 *  media description by setting the corresponding element to zero. By
-		 *  doing so, the calling party receives ownership of the removed object.
-		 *
-		 *	@return The set of repeat fields.
-		 */
-		IMPORT_C RPointerArray<CSdpRepeatField>& RepeatFields();
-	
-    public:
-		/**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL(RWriteStream& aStream) const;
-		
-		/**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read
-         *  @return Initialized object
-         */
-		static CSdpTimeField* InternalizeL(RReadStream& aStream);
-        
-        /**
-         *  Creates object from the stream data.
-         *	Does the "2nd phase construction" of internalization.
-         *
-         *  @param aStream Stream where the object's state will be read
-         */
-        void DoInternalizeL(RReadStream& aStream);
-
-	private:
-   		CSdpTimeField();
-
-		void ConstructL(const TDesC8& aText, TBool aRecurse=ETrue);
-		void ConstructL(const TDesC8& aStartTime, const TDesC8& aStopTime);
-
-        TBool RepeatFieldsCompare(const CSdpTimeField& aObj) const;
-
-    private: // Data
-		HBufC8* iStartTime;
-		HBufC8* iStopTime;
-		RPointerArray<CSdpRepeatField> iRFields;
-        RStringPool iStringPool;
-
-		void __DbgTestInvariant() const;
-
-	};
-
-#endif // CSDPTIMESFIELD_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/api/sdptypedtime.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,143 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpTypedTime.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef TSDPTYPEDTIME_H
-#define TSDPTYPEDTIME_H
-
-//  INCLUDES
-#include <e32std.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *  @publishedAll
- *  @released
- *
- *	This class implements the typed time element of the Session
- *	Description Protocol.
- *
- *	The normative reference for correct formatting and values is
- *	draft-ietf-mmusic-sdp-new-14 unless specified otherwise in
- *  member documentation. The implementation supports this normative
- *  reference, but does not enforce it fully. 
- *
- *  @lib localsdpcodec.lib
- */
-class TSdpTypedTime
-	{
-    public: // enums
-
-        /** Time units. */
-        enum TUnit
-            {
-            ETimeUnitDays,      /** d */
-            ETimeUnitHours,     /** h */
-		    ETimeUnitMinutes,   /** m */
-		    ETimeUnitSeconds,   /** s */
-		    ETimeUnitNone,
-            };
-
-    public: // Constructors and destructor
-		/**
-		 *	Constructs a typed time equal to zero and with no time unit set.
-		 */
-		IMPORT_C TSdpTypedTime();
-
-		/**
-		 *	Constructs a typed time equal to specified value and time unit.
-		 *
-		 *	@param aValue Time value.
-		 *	@param aUnit Time unit.
-		 */
-		IMPORT_C TSdpTypedTime(TInt64 aValue, TUnit aUnit);
-
-    public: // New functions
-		/**	
-		 *	Compares this instance to another for equality.
-		 *
-		 *	@param aObj Another instance to compare with.
-		 *	@return ETrue if equal, EFalse if not.
-		 */
-		IMPORT_C TBool operator == (const TSdpTypedTime& aObj) const;
-
-		/**
-		 *	Sets the typed time value.
-		 *
-		 *	@param aValue Time value.
-		 *	@param aUnit Time unit.
-		 */
-		IMPORT_C void SetValue(TInt64 aValue, TUnit aUnit);
-
-    public:
-		
-		/**
-         *  Externalizes the object to stream
-         *
-         *  @param aStream Stream where the object's state will be stored
-         */
-		void ExternalizeL(RWriteStream& aStream) const;
-		
-		/**
-         *  Creates object from the stream data
-         *
-         *  @param aStream Stream where the object's state will be read
-         *  @return Initialized object
-         */
-		static TSdpTypedTime InternalizeL(RReadStream& aStream);
-        
-        /**
-		 *	Output the field formatted according to SDP syntax and including
-		 *  the terminating CRLF.
-		 * 
-		 *	@param aStream	Stream used for output.
-		 */
-        void EncodeL(RWriteStream& aStream) const;
-        
-        /**
-         *	Construct a new origin field.
-		 *		 
-         *	@param aText A string containing a correctly formatted field value
-		 *               terminated by a CRLF.
-         *	@return The new instance.
-         */
-        static TSdpTypedTime DecodeL(const TDesC8& aText);
-
-    public: // Data
-    
-        /**
-        * @internalComponent
-        */
-		TInt64 iValue;
-		
-		/**
-		* @internalComponent
-		*/
-		TInt iUnit;
-
-	};
-
-#endif // TSDPTYPEDTIME_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/bwins/localsdpcodecu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,203 +0,0 @@
-EXPORTS
-	??0TSdpRtpmapValue@@QAE@ABVTPtrC8@@00@Z @ 1 NONAME ; TSdpRtpmapValue::TSdpRtpmapValue(class TPtrC8 const &, class TPtrC8 const &, class TPtrC8 const &)
-	??0TSdpTypedTime@@QAE@XZ @ 2 NONAME ; TSdpTypedTime::TSdpTypedTime(void)
-	??0TSdpTypedTime@@QAE@_JW4TUnit@0@@Z @ 3 NONAME ; TSdpTypedTime::TSdpTypedTime(long long, enum TSdpTypedTime::TUnit)
-	??1CSdpAttributeField@@UAE@XZ @ 4 NONAME ; CSdpAttributeField::~CSdpAttributeField(void)
-	??1CSdpBandwidthField@@UAE@XZ @ 5 NONAME ; CSdpBandwidthField::~CSdpBandwidthField(void)
-	??1CSdpConnectionField@@UAE@XZ @ 6 NONAME ; CSdpConnectionField::~CSdpConnectionField(void)
-	??1CSdpDocument@@UAE@XZ @ 7 NONAME ; CSdpDocument::~CSdpDocument(void)
-	??1CSdpFmtAttributeField@@UAE@XZ @ 8 NONAME ; CSdpFmtAttributeField::~CSdpFmtAttributeField(void)
-	??1CSdpKeyField@@UAE@XZ @ 9 NONAME ; CSdpKeyField::~CSdpKeyField(void)
-	??1CSdpMediaField@@UAE@XZ @ 10 NONAME ; CSdpMediaField::~CSdpMediaField(void)
-	??1CSdpOriginField@@UAE@XZ @ 11 NONAME ; CSdpOriginField::~CSdpOriginField(void)
-	??1CSdpRepeatField@@UAE@XZ @ 12 NONAME ; CSdpRepeatField::~CSdpRepeatField(void)
-	??1CSdpTimeField@@UAE@XZ @ 13 NONAME ; CSdpTimeField::~CSdpTimeField(void)
-	??8CSdpAttributeField@@QBEHABV0@@Z @ 14 NONAME ; int CSdpAttributeField::operator==(class CSdpAttributeField const &) const
-	??8CSdpBandwidthField@@QBEHABV0@@Z @ 15 NONAME ; int CSdpBandwidthField::operator==(class CSdpBandwidthField const &) const
-	??8CSdpConnectionField@@QBEHABV0@@Z @ 16 NONAME ; int CSdpConnectionField::operator==(class CSdpConnectionField const &) const
-	??8CSdpFmtAttributeField@@QBEHABV0@@Z @ 17 NONAME ; int CSdpFmtAttributeField::operator==(class CSdpFmtAttributeField const &) const
-	??8CSdpKeyField@@QBEHABV0@@Z @ 18 NONAME ; int CSdpKeyField::operator==(class CSdpKeyField const &) const
-	??8CSdpMediaField@@QBEHABV0@@Z @ 19 NONAME ; int CSdpMediaField::operator==(class CSdpMediaField const &) const
-	??8CSdpOriginField@@QBEHABV0@@Z @ 20 NONAME ; int CSdpOriginField::operator==(class CSdpOriginField const &) const
-	??8CSdpRepeatField@@QBEHABV0@@Z @ 21 NONAME ; int CSdpRepeatField::operator==(class CSdpRepeatField const &) const
-	??8CSdpTimeField@@QBEHABV0@@Z @ 22 NONAME ; int CSdpTimeField::operator==(class CSdpTimeField const &) const
-	??8TSdpTypedTime@@QBEHABV0@@Z @ 23 NONAME ; int TSdpTypedTime::operator==(class TSdpTypedTime const &) const
-	?ActiveDuration@CSdpRepeatField@@QBE?BVTSdpTypedTime@@XZ @ 24 NONAME ; class TSdpTypedTime const CSdpRepeatField::ActiveDuration(void) const
-	?Address@CSdpConnectionField@@QBEABVTDesC8@@XZ @ 25 NONAME ; class TDesC8 const & CSdpConnectionField::Address(void) const
-	?Address@CSdpOriginField@@QBEABVTDesC8@@XZ @ 26 NONAME ; class TDesC8 const & CSdpOriginField::Address(void) const
-	?AddressType@CSdpConnectionField@@QBE?AVRStringF@@XZ @ 27 NONAME ; class RStringF CSdpConnectionField::AddressType(void) const
-	?AddressType@CSdpOriginField@@QBE?AVRStringF@@XZ @ 28 NONAME ; class RStringF CSdpOriginField::AddressType(void) const
-	?Attribute@CSdpAttributeField@@QBE?AVRStringF@@XZ @ 29 NONAME ; class RStringF CSdpAttributeField::Attribute(void) const
-	?Attribute@CSdpFmtAttributeField@@QBE?AVRStringF@@XZ @ 30 NONAME ; class RStringF CSdpFmtAttributeField::Attribute(void) const
-	?AttributeFields@CSdpDocument@@QAEAAV?$RPointerArray@VCSdpAttributeField@@@@XZ @ 31 NONAME ; class RPointerArray<class CSdpAttributeField> & CSdpDocument::AttributeFields(void)
-	?AttributeFields@CSdpMediaField@@QAEAAV?$RPointerArray@VCSdpAttributeField@@@@XZ @ 32 NONAME ; class RPointerArray<class CSdpAttributeField> & CSdpMediaField::AttributeFields(void)
-	?BandwidthFields@CSdpDocument@@QAEAAV?$RPointerArray@VCSdpBandwidthField@@@@XZ @ 33 NONAME ; class RPointerArray<class CSdpBandwidthField> & CSdpDocument::BandwidthFields(void)
-	?BandwidthFields@CSdpMediaField@@QAEAAV?$RPointerArray@VCSdpBandwidthField@@@@XZ @ 34 NONAME ; class RPointerArray<class CSdpBandwidthField> & CSdpMediaField::BandwidthFields(void)
-	?CloneL@CSdpAttributeField@@QBEPAV1@XZ @ 35 NONAME ; class CSdpAttributeField * CSdpAttributeField::CloneL(void) const
-	?CloneL@CSdpBandwidthField@@QBEPAV1@XZ @ 36 NONAME ; class CSdpBandwidthField * CSdpBandwidthField::CloneL(void) const
-	?CloneL@CSdpConnectionField@@QBEPAV1@XZ @ 37 NONAME ; class CSdpConnectionField * CSdpConnectionField::CloneL(void) const
-	?CloneL@CSdpDocument@@QBEPAV1@XZ @ 38 NONAME ; class CSdpDocument * CSdpDocument::CloneL(void) const
-	?CloneL@CSdpFmtAttributeField@@QBEPAV1@XZ @ 39 NONAME ; class CSdpFmtAttributeField * CSdpFmtAttributeField::CloneL(void) const
-	?CloneL@CSdpKeyField@@QBEPAV1@XZ @ 40 NONAME ; class CSdpKeyField * CSdpKeyField::CloneL(void) const
-	?CloneL@CSdpMediaField@@QBEPAV1@H@Z @ 41 NONAME ; class CSdpMediaField * CSdpMediaField::CloneL(int) const
-	?CloneL@CSdpOriginField@@QBEPAV1@XZ @ 42 NONAME ; class CSdpOriginField * CSdpOriginField::CloneL(void) const
-	?CloneL@CSdpRepeatField@@QBEPAV1@XZ @ 43 NONAME ; class CSdpRepeatField * CSdpRepeatField::CloneL(void) const
-	?CloneL@CSdpTimeField@@QBEPAV1@H@Z @ 44 NONAME ; class CSdpTimeField * CSdpTimeField::CloneL(int) const
-	?Close@SdpCodecStringPool@@SAXXZ @ 45 NONAME ; void SdpCodecStringPool::Close(void)
-	?ConnectionField@CSdpDocument@@QAEPAVCSdpConnectionField@@XZ @ 46 NONAME ; class CSdpConnectionField * CSdpDocument::ConnectionField(void)
-	?ConnectionField@CSdpDocument@@QBEPBVCSdpConnectionField@@XZ @ 47 NONAME ; class CSdpConnectionField const * CSdpDocument::ConnectionField(void) const
-	?ConnectionFields@CSdpMediaField@@QAEAAV?$RPointerArray@VCSdpConnectionField@@@@XZ @ 48 NONAME ; class RPointerArray<class CSdpConnectionField> & CSdpMediaField::ConnectionFields(void)
-	?DecodeL@CSdpAttributeField@@SAPAV1@ABVTDesC8@@@Z @ 49 NONAME ; class CSdpAttributeField * CSdpAttributeField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpBandwidthField@@SAPAV1@ABVTDesC8@@@Z @ 50 NONAME ; class CSdpBandwidthField * CSdpBandwidthField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpConnectionField@@SAPAV1@ABVTDesC8@@@Z @ 51 NONAME ; class CSdpConnectionField * CSdpConnectionField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpDocument@@SAPAV1@ABVTDesC8@@@Z @ 52 NONAME ; class CSdpDocument * CSdpDocument::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpFmtAttributeField@@SAPAV1@ABVTDesC8@@@Z @ 53 NONAME ; class CSdpFmtAttributeField * CSdpFmtAttributeField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpKeyField@@SAPAV1@ABVTDesC8@@@Z @ 54 NONAME ; class CSdpKeyField * CSdpKeyField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpMediaField@@SAPAV1@ABVTDesC8@@H@Z @ 55 NONAME ; class CSdpMediaField * CSdpMediaField::DecodeL(class TDesC8 const &, int)
-	?DecodeL@CSdpOriginField@@SAPAV1@ABVTDesC8@@@Z @ 56 NONAME ; class CSdpOriginField * CSdpOriginField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpRepeatField@@SAPAV1@ABVTDesC8@@@Z @ 57 NONAME ; class CSdpRepeatField * CSdpRepeatField::DecodeL(class TDesC8 const &)
-	?DecodeL@CSdpTimeField@@SAPAV1@ABVTDesC8@@H@Z @ 58 NONAME ; class CSdpTimeField * CSdpTimeField::DecodeL(class TDesC8 const &, int)
-	?DecodeL@TSdpRtpmapValue@@SA?AV1@ABVTDesC8@@@Z @ 59 NONAME ; class TSdpRtpmapValue TSdpRtpmapValue::DecodeL(class TDesC8 const &)
-	?DecodeLC@CSdpAttributeField@@SAPAV1@ABVTDesC8@@@Z @ 60 NONAME ; class CSdpAttributeField * CSdpAttributeField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpBandwidthField@@SAPAV1@ABVTDesC8@@@Z @ 61 NONAME ; class CSdpBandwidthField * CSdpBandwidthField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpConnectionField@@SAPAV1@ABVTDesC8@@@Z @ 62 NONAME ; class CSdpConnectionField * CSdpConnectionField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpDocument@@SAPAV1@ABVTDesC8@@@Z @ 63 NONAME ; class CSdpDocument * CSdpDocument::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpFmtAttributeField@@SAPAV1@ABVTDesC8@@@Z @ 64 NONAME ; class CSdpFmtAttributeField * CSdpFmtAttributeField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpKeyField@@SAPAV1@ABVTDesC8@@@Z @ 65 NONAME ; class CSdpKeyField * CSdpKeyField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpMediaField@@SAPAV1@ABVTDesC8@@H@Z @ 66 NONAME ; class CSdpMediaField * CSdpMediaField::DecodeLC(class TDesC8 const &, int)
-	?DecodeLC@CSdpOriginField@@SAPAV1@ABVTDesC8@@@Z @ 67 NONAME ; class CSdpOriginField * CSdpOriginField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpRepeatField@@SAPAV1@ABVTDesC8@@@Z @ 68 NONAME ; class CSdpRepeatField * CSdpRepeatField::DecodeLC(class TDesC8 const &)
-	?DecodeLC@CSdpTimeField@@SAPAV1@ABVTDesC8@@H@Z @ 69 NONAME ; class CSdpTimeField * CSdpTimeField::DecodeLC(class TDesC8 const &, int)
-	?EmailFields@CSdpDocument@@QAEAAVCDesC8Array@@XZ @ 70 NONAME ; class CDesC8Array & CSdpDocument::EmailFields(void)
-	?EncodeL@CSdpAttributeField@@QBEXAAVRWriteStream@@@Z @ 71 NONAME ; void CSdpAttributeField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpBandwidthField@@QBEXAAVRWriteStream@@@Z @ 72 NONAME ; void CSdpBandwidthField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpConnectionField@@QBEXAAVRWriteStream@@@Z @ 73 NONAME ; void CSdpConnectionField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpDocument@@QBEXAAVRWriteStream@@@Z @ 74 NONAME ; void CSdpDocument::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpFmtAttributeField@@QBEXAAVRWriteStream@@@Z @ 75 NONAME ; void CSdpFmtAttributeField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpKeyField@@QBEXAAVRWriteStream@@@Z @ 76 NONAME ; void CSdpKeyField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpMediaField@@QBEXAAVRWriteStream@@H@Z @ 77 NONAME ; void CSdpMediaField::EncodeL(class RWriteStream &, int) const
-	?EncodeL@CSdpOriginField@@QBEXAAVRWriteStream@@@Z @ 78 NONAME ; void CSdpOriginField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpRepeatField@@QBEXAAVRWriteStream@@@Z @ 79 NONAME ; void CSdpRepeatField::EncodeL(class RWriteStream &) const
-	?EncodeL@CSdpTimeField@@QBEXAAVRWriteStream@@H@Z @ 80 NONAME ; void CSdpTimeField::EncodeL(class RWriteStream &, int) const
-	?EncodeL@TSdpRtpmapValue@@QBEPAVHBufC8@@XZ @ 81 NONAME ; class HBufC8 * TSdpRtpmapValue::EncodeL(void) const
-	?EncryptionKey@CSdpKeyField@@QBEABVTDesC8@@XZ @ 82 NONAME ; class TDesC8 const & CSdpKeyField::EncryptionKey(void) const
-	?ExternalizeL@CSdpDocument@@QBEXAAVRWriteStream@@@Z @ 83 NONAME ; void CSdpDocument::ExternalizeL(class RWriteStream &) const
-	?Format@CSdpFmtAttributeField@@QBEABVTDesC8@@XZ @ 84 NONAME ; class TDesC8 const & CSdpFmtAttributeField::Format(void) const
-	?FormatAttributeFields@CSdpMediaField@@QAEAAV?$RPointerArray@VCSdpFmtAttributeField@@@@XZ @ 85 NONAME ; class RPointerArray<class CSdpFmtAttributeField> & CSdpMediaField::FormatAttributeFields(void)
-	?FormatList@CSdpMediaField@@QBEABVTDesC8@@XZ @ 86 NONAME ; class TDesC8 const & CSdpMediaField::FormatList(void) const
-	?InetAddress@CSdpConnectionField@@QBEPBVTInetAddr@@XZ @ 87 NONAME ; class TInetAddr const * CSdpConnectionField::InetAddress(void) const
-	?InetAddress@CSdpOriginField@@QBEPBVTInetAddr@@XZ @ 88 NONAME ; class TInetAddr const * CSdpOriginField::InetAddress(void) const
-	?Info@CSdpDocument@@QBEABVTDesC8@@XZ @ 89 NONAME ; class TDesC8 const & CSdpDocument::Info(void) const
-	?Info@CSdpMediaField@@QBEABVTDesC8@@XZ @ 90 NONAME ; class TDesC8 const & CSdpMediaField::Info(void) const
-	?InternalizeL@CSdpDocument@@SAPAV1@AAVRReadStream@@@Z @ 91 NONAME ; class CSdpDocument * CSdpDocument::InternalizeL(class RReadStream &)
-	?IsValid@CSdpDocument@@QBEHXZ @ 92 NONAME ; int CSdpDocument::IsValid(void) const
-	?IsValid@CSdpMediaField@@QBEHXZ @ 93 NONAME ; int CSdpMediaField::IsValid(void) const
-	?IsValid@CSdpTimeField@@QBEHXZ @ 94 NONAME ; int CSdpTimeField::IsValid(void) const
-	?KeepFormatL@CSdpMediaField@@QAEXABVTDesC8@@@Z @ 95 NONAME ; void CSdpMediaField::KeepFormatL(class TDesC8 const &)
-	?Key@CSdpDocument@@QAEPAVCSdpKeyField@@XZ @ 96 NONAME ; class CSdpKeyField * CSdpDocument::Key(void)
-	?Key@CSdpDocument@@QBEPBVCSdpKeyField@@XZ @ 97 NONAME ; class CSdpKeyField const * CSdpDocument::Key(void) const
-	?Key@CSdpMediaField@@QAEPAVCSdpKeyField@@XZ @ 98 NONAME ; class CSdpKeyField * CSdpMediaField::Key(void)
-	?Key@CSdpMediaField@@QBEPBVCSdpKeyField@@XZ @ 99 NONAME ; class CSdpKeyField const * CSdpMediaField::Key(void) const
-	?Media@CSdpMediaField@@QBE?AVRStringF@@XZ @ 100 NONAME ; class RStringF CSdpMediaField::Media(void) const
-	?MediaFields@CSdpDocument@@QAEAAV?$RPointerArray@VCSdpMediaField@@@@XZ @ 101 NONAME ; class RPointerArray<class CSdpMediaField> & CSdpDocument::MediaFields(void)
-	?Method@CSdpKeyField@@QBE?AVRStringF@@XZ @ 102 NONAME ; class RStringF CSdpKeyField::Method(void) const
-	?Modifier@CSdpBandwidthField@@QBE?AVRStringF@@XZ @ 103 NONAME ; class RStringF CSdpBandwidthField::Modifier(void) const
-	?NetType@CSdpConnectionField@@QBE?AVRStringF@@XZ @ 104 NONAME ; class RStringF CSdpConnectionField::NetType(void) const
-	?NetType@CSdpOriginField@@QBE?AVRStringF@@XZ @ 105 NONAME ; class RStringF CSdpOriginField::NetType(void) const
-	?NewL@CSdpAttributeField@@SAPAV1@VRStringF@@ABVTDesC8@@@Z @ 106 NONAME ; class CSdpAttributeField * CSdpAttributeField::NewL(class RStringF, class TDesC8 const &)
-	?NewL@CSdpBandwidthField@@SAPAV1@VRStringF@@K@Z @ 107 NONAME ; class CSdpBandwidthField * CSdpBandwidthField::NewL(class RStringF, unsigned long)
-	?NewL@CSdpConnectionField@@SAPAV1@ABVTInetAddr@@HI@Z @ 108 NONAME ; class CSdpConnectionField * CSdpConnectionField::NewL(class TInetAddr const &, int, unsigned int)
-	?NewL@CSdpConnectionField@@SAPAV1@VRStringF@@0ABVTDesC8@@@Z @ 109 NONAME ; class CSdpConnectionField * CSdpConnectionField::NewL(class RStringF, class RStringF, class TDesC8 const &)
-	?NewL@CSdpDocument@@SAPAV1@XZ @ 110 NONAME ; class CSdpDocument * CSdpDocument::NewL(void)
-	?NewL@CSdpFmtAttributeField@@SAPAV1@VRStringF@@ABVTDesC8@@1@Z @ 111 NONAME ; class CSdpFmtAttributeField * CSdpFmtAttributeField::NewL(class RStringF, class TDesC8 const &, class TDesC8 const &)
-	?NewL@CSdpKeyField@@SAPAV1@VRStringF@@ABVTDesC8@@@Z @ 112 NONAME ; class CSdpKeyField * CSdpKeyField::NewL(class RStringF, class TDesC8 const &)
-	?NewL@CSdpMediaField@@SAPAV1@VRStringF@@I0ABVTDesC8@@@Z @ 113 NONAME ; class CSdpMediaField * CSdpMediaField::NewL(class RStringF, unsigned int, class RStringF, class TDesC8 const &)
-	?NewL@CSdpOriginField@@SAPAV1@ABVTDesC8@@_J1AAVTInetAddr@@@Z @ 114 NONAME ; class CSdpOriginField * CSdpOriginField::NewL(class TDesC8 const &, long long, long long, class TInetAddr &)
-	?NewL@CSdpOriginField@@SAPAV1@ABVTDesC8@@_J1VRStringF@@20@Z @ 115 NONAME ; class CSdpOriginField * CSdpOriginField::NewL(class TDesC8 const &, long long, long long, class RStringF, class RStringF, class TDesC8 const &)
-	?NewL@CSdpRepeatField@@SAPAV1@VTSdpTypedTime@@0ABV?$RArray@VTSdpTypedTime@@@@@Z @ 116 NONAME ; class CSdpRepeatField * CSdpRepeatField::NewL(class TSdpTypedTime, class TSdpTypedTime, class RArray<class TSdpTypedTime> const &)
-	?NewL@CSdpTimeField@@SAPAV1@ABVTDesC8@@0@Z @ 117 NONAME ; class CSdpTimeField * CSdpTimeField::NewL(class TDesC8 const &, class TDesC8 const &)
-	?NewLC@CSdpAttributeField@@SAPAV1@VRStringF@@ABVTDesC8@@@Z @ 118 NONAME ; class CSdpAttributeField * CSdpAttributeField::NewLC(class RStringF, class TDesC8 const &)
-	?NewLC@CSdpBandwidthField@@SAPAV1@VRStringF@@K@Z @ 119 NONAME ; class CSdpBandwidthField * CSdpBandwidthField::NewLC(class RStringF, unsigned long)
-	?NewLC@CSdpConnectionField@@SAPAV1@ABVTInetAddr@@HI@Z @ 120 NONAME ; class CSdpConnectionField * CSdpConnectionField::NewLC(class TInetAddr const &, int, unsigned int)
-	?NewLC@CSdpConnectionField@@SAPAV1@VRStringF@@0ABVTDesC8@@@Z @ 121 NONAME ; class CSdpConnectionField * CSdpConnectionField::NewLC(class RStringF, class RStringF, class TDesC8 const &)
-	?NewLC@CSdpDocument@@SAPAV1@XZ @ 122 NONAME ; class CSdpDocument * CSdpDocument::NewLC(void)
-	?NewLC@CSdpFmtAttributeField@@SAPAV1@VRStringF@@ABVTDesC8@@1@Z @ 123 NONAME ; class CSdpFmtAttributeField * CSdpFmtAttributeField::NewLC(class RStringF, class TDesC8 const &, class TDesC8 const &)
-	?NewLC@CSdpKeyField@@SAPAV1@VRStringF@@ABVTDesC8@@@Z @ 124 NONAME ; class CSdpKeyField * CSdpKeyField::NewLC(class RStringF, class TDesC8 const &)
-	?NewLC@CSdpMediaField@@SAPAV1@VRStringF@@I0ABVTDesC8@@@Z @ 125 NONAME ; class CSdpMediaField * CSdpMediaField::NewLC(class RStringF, unsigned int, class RStringF, class TDesC8 const &)
-	?NewLC@CSdpOriginField@@SAPAV1@ABVTDesC8@@_J1AAVTInetAddr@@@Z @ 126 NONAME ; class CSdpOriginField * CSdpOriginField::NewLC(class TDesC8 const &, long long, long long, class TInetAddr &)
-	?NewLC@CSdpOriginField@@SAPAV1@ABVTDesC8@@_J1VRStringF@@20@Z @ 127 NONAME ; class CSdpOriginField * CSdpOriginField::NewLC(class TDesC8 const &, long long, long long, class RStringF, class RStringF, class TDesC8 const &)
-	?NewLC@CSdpRepeatField@@SAPAV1@VTSdpTypedTime@@0ABV?$RArray@VTSdpTypedTime@@@@@Z @ 128 NONAME ; class CSdpRepeatField * CSdpRepeatField::NewLC(class TSdpTypedTime, class TSdpTypedTime, class RArray<class TSdpTypedTime> const &)
-	?NewLC@CSdpTimeField@@SAPAV1@ABVTDesC8@@0@Z @ 129 NONAME ; class CSdpTimeField * CSdpTimeField::NewLC(class TDesC8 const &, class TDesC8 const &)
-	?NumOfAddress@CSdpConnectionField@@QBEHXZ @ 130 NONAME ; int CSdpConnectionField::NumOfAddress(void) const
-	?OpenL@SdpCodecStringPool@@SAXXZ @ 131 NONAME ; void SdpCodecStringPool::OpenL(void)
-	?OriginField@CSdpDocument@@QAEPAVCSdpOriginField@@XZ @ 132 NONAME ; class CSdpOriginField * CSdpDocument::OriginField(void)
-	?OriginField@CSdpDocument@@QBEPBVCSdpOriginField@@XZ @ 133 NONAME ; class CSdpOriginField const * CSdpDocument::OriginField(void) const
-	?PhoneFields@CSdpDocument@@QAEAAVCDesC8Array@@XZ @ 134 NONAME ; class CDesC8Array & CSdpDocument::PhoneFields(void)
-	?Port@CSdpMediaField@@QBEIXZ @ 135 NONAME ; unsigned int CSdpMediaField::Port(void) const
-	?PortCount@CSdpMediaField@@QBEIXZ @ 136 NONAME ; unsigned int CSdpMediaField::PortCount(void) const
-	?Protocol@CSdpMediaField@@QBE?AVRStringF@@XZ @ 137 NONAME ; class RStringF CSdpMediaField::Protocol(void) const
-	?RejectMedia@CSdpMediaField@@QAEXXZ @ 138 NONAME ; void CSdpMediaField::RejectMedia(void)
-	?RemoveFormatL@CSdpMediaField@@QAEXABVTDesC8@@@Z @ 139 NONAME ; void CSdpMediaField::RemoveFormatL(class TDesC8 const &)
-	?RepeatFields@CSdpTimeField@@QAEAAV?$RPointerArray@VCSdpRepeatField@@@@XZ @ 140 NONAME ; class RPointerArray<class CSdpRepeatField> & CSdpTimeField::RepeatFields(void)
-	?RepeatInterval@CSdpRepeatField@@QBE?BVTSdpTypedTime@@XZ @ 141 NONAME ; class TSdpTypedTime const CSdpRepeatField::RepeatInterval(void) const
-	?SdpVersion@CSdpDocument@@QBEIXZ @ 142 NONAME ; unsigned int CSdpDocument::SdpVersion(void) const
-	?SessionId@CSdpOriginField@@QBE_JXZ @ 143 NONAME ; long long CSdpOriginField::SessionId(void) const
-	?SessionName@CSdpDocument@@QBEABVTDesC8@@XZ @ 144 NONAME ; class TDesC8 const & CSdpDocument::SessionName(void) const
-	?SetActiveDuration@CSdpRepeatField@@QAEXVTSdpTypedTime@@@Z @ 145 NONAME ; void CSdpRepeatField::SetActiveDuration(class TSdpTypedTime)
-	?SetAddressL@CSdpConnectionField@@QAEXVRStringF@@0ABVTDesC8@@@Z @ 146 NONAME ; void CSdpConnectionField::SetAddressL(class RStringF, class RStringF, class TDesC8 const &)
-	?SetAddressL@CSdpOriginField@@QAEXABVTDesC8@@VRStringF@@1@Z @ 147 NONAME ; void CSdpOriginField::SetAddressL(class TDesC8 const &, class RStringF, class RStringF)
-	?SetConnectionField@CSdpDocument@@QAEXPAVCSdpConnectionField@@@Z @ 148 NONAME ; void CSdpDocument::SetConnectionField(class CSdpConnectionField *)
-	?SetFormatListL@CSdpMediaField@@QAEXABVTDesC8@@@Z @ 149 NONAME ; void CSdpMediaField::SetFormatListL(class TDesC8 const &)
-	?SetInetAddress@CSdpOriginField@@QAEXABVTInetAddr@@@Z @ 150 NONAME ; void CSdpOriginField::SetInetAddress(class TInetAddr const &)
-	?SetInetAddressL@CSdpConnectionField@@QAEXABVTInetAddr@@HI@Z @ 151 NONAME ; void CSdpConnectionField::SetInetAddressL(class TInetAddr const &, int, unsigned int)
-	?SetInfoL@CSdpDocument@@QAEXABVTDesC8@@@Z @ 152 NONAME ; void CSdpDocument::SetInfoL(class TDesC8 const &)
-	?SetInfoL@CSdpMediaField@@QAEXABVTDesC8@@@Z @ 153 NONAME ; void CSdpMediaField::SetInfoL(class TDesC8 const &)
-	?SetKey@CSdpDocument@@QAEXPAVCSdpKeyField@@@Z @ 154 NONAME ; void CSdpDocument::SetKey(class CSdpKeyField *)
-	?SetKey@CSdpMediaField@@QAEXPAVCSdpKeyField@@@Z @ 155 NONAME ; void CSdpMediaField::SetKey(class CSdpKeyField *)
-	?SetL@CSdpAttributeField@@QAEXVRStringF@@ABVTDesC8@@@Z @ 156 NONAME ; void CSdpAttributeField::SetL(class RStringF, class TDesC8 const &)
-	?SetL@CSdpFmtAttributeField@@QAEXVRStringF@@ABVTDesC8@@1@Z @ 157 NONAME ; void CSdpFmtAttributeField::SetL(class RStringF, class TDesC8 const &, class TDesC8 const &)
-	?SetL@CSdpKeyField@@QAEXVRStringF@@ABVTDesC8@@@Z @ 158 NONAME ; void CSdpKeyField::SetL(class RStringF, class TDesC8 const &)
-	?SetMediaL@CSdpMediaField@@QAEXVRStringF@@@Z @ 159 NONAME ; void CSdpMediaField::SetMediaL(class RStringF)
-	?SetModifier@CSdpBandwidthField@@QAEXVRStringF@@@Z @ 160 NONAME ; void CSdpBandwidthField::SetModifier(class RStringF)
-	?SetNumOfAddressL@CSdpConnectionField@@QAEXI@Z @ 161 NONAME ; void CSdpConnectionField::SetNumOfAddressL(unsigned int)
-	?SetOriginField@CSdpDocument@@QAEXPAVCSdpOriginField@@@Z @ 162 NONAME ; void CSdpDocument::SetOriginField(class CSdpOriginField *)
-	?SetPortCountL@CSdpMediaField@@QAEXI@Z @ 163 NONAME ; void CSdpMediaField::SetPortCountL(unsigned int)
-	?SetPortL@CSdpMediaField@@QAEXI@Z @ 164 NONAME ; void CSdpMediaField::SetPortL(unsigned int)
-	?SetProtocolL@CSdpMediaField@@QAEXVRStringF@@@Z @ 165 NONAME ; void CSdpMediaField::SetProtocolL(class RStringF)
-	?SetRepeatIntervalL@CSdpRepeatField@@QAEXVTSdpTypedTime@@@Z @ 166 NONAME ; void CSdpRepeatField::SetRepeatIntervalL(class TSdpTypedTime)
-	?SetSessionId@CSdpOriginField@@QAEX_J@Z @ 167 NONAME ; void CSdpOriginField::SetSessionId(long long)
-	?SetSessionNameL@CSdpDocument@@QAEXABVTDesC8@@@Z @ 168 NONAME ; void CSdpDocument::SetSessionNameL(class TDesC8 const &)
-	?SetTTLL@CSdpConnectionField@@QAEXH@Z @ 169 NONAME ; void CSdpConnectionField::SetTTLL(int)
-	?SetTimeOffsetsL@CSdpRepeatField@@QAEXABV?$RArray@VTSdpTypedTime@@@@@Z @ 170 NONAME ; void CSdpRepeatField::SetTimeOffsetsL(class RArray<class TSdpTypedTime> const &)
-	?SetTimesL@CSdpTimeField@@QAEXABVTDesC8@@0@Z @ 171 NONAME ; void CSdpTimeField::SetTimesL(class TDesC8 const &, class TDesC8 const &)
-	?SetUri@CSdpDocument@@QAEXPAVCUri8@@@Z @ 172 NONAME ; void CSdpDocument::SetUri(class CUri8 *)
-	?SetUserNameL@CSdpOriginField@@QAEXABVTDesC8@@@Z @ 173 NONAME ; void CSdpOriginField::SetUserNameL(class TDesC8 const &)
-	?SetValue@CSdpBandwidthField@@QAEXK@Z @ 174 NONAME ; void CSdpBandwidthField::SetValue(unsigned long)
-	?SetValue@TSdpTypedTime@@QAEX_JW4TUnit@1@@Z @ 175 NONAME ; void TSdpTypedTime::SetValue(long long, enum TSdpTypedTime::TUnit)
-	?SetVersion@CSdpOriginField@@QAEX_J@Z @ 176 NONAME ; void CSdpOriginField::SetVersion(long long)
-	?SetZoneAdjustmentsL@CSdpDocument@@QAEXABVTDesC8@@@Z @ 177 NONAME ; void CSdpDocument::SetZoneAdjustmentsL(class TDesC8 const &)
-	?StartTime@CSdpTimeField@@QBEABVTDesC8@@XZ @ 178 NONAME ; class TDesC8 const & CSdpTimeField::StartTime(void) const
-	?StopTime@CSdpTimeField@@QBEABVTDesC8@@XZ @ 179 NONAME ; class TDesC8 const & CSdpTimeField::StopTime(void) const
-	?StringPoolL@SdpCodecStringPool@@SA?AVRStringPool@@XZ @ 180 NONAME ; class RStringPool SdpCodecStringPool::StringPoolL(void)
-	?StringTableL@SdpCodecStringPool@@SAABUTStringTable@@XZ @ 181 NONAME ; struct TStringTable const & SdpCodecStringPool::StringTableL(void)
-	?TTLValue@CSdpConnectionField@@QBEHXZ @ 182 NONAME ; int CSdpConnectionField::TTLValue(void) const
-	?TimeFields@CSdpDocument@@QAEAAV?$RPointerArray@VCSdpTimeField@@@@XZ @ 183 NONAME ; class RPointerArray<class CSdpTimeField> & CSdpDocument::TimeFields(void)
-	?TimeOffsets@CSdpRepeatField@@QBEABV?$RArray@VTSdpTypedTime@@@@XZ @ 184 NONAME ; class RArray<class TSdpTypedTime> const & CSdpRepeatField::TimeOffsets(void) const
-	?Uri@CSdpDocument@@QAEPAVCUri8@@XZ @ 185 NONAME ; class CUri8 * CSdpDocument::Uri(void)
-	?Uri@CSdpDocument@@QBEPBVCUri8@@XZ @ 186 NONAME ; class CUri8 const * CSdpDocument::Uri(void) const
-	?UserName@CSdpOriginField@@QBEABVTDesC8@@XZ @ 187 NONAME ; class TDesC8 const & CSdpOriginField::UserName(void) const
-	?Value@CSdpAttributeField@@QBEABVTDesC8@@XZ @ 188 NONAME ; class TDesC8 const & CSdpAttributeField::Value(void) const
-	?Value@CSdpBandwidthField@@QBEKXZ @ 189 NONAME ; unsigned long CSdpBandwidthField::Value(void) const
-	?Value@CSdpFmtAttributeField@@QBEABVTDesC8@@XZ @ 190 NONAME ; class TDesC8 const & CSdpFmtAttributeField::Value(void) const
-	?Version@CSdpOriginField@@QBE_JXZ @ 191 NONAME ; long long CSdpOriginField::Version(void) const
-	?ZoneAdjustments@CSdpDocument@@QBEABVTDesC8@@XZ @ 192 NONAME ; class TDesC8 const & CSdpDocument::ZoneAdjustments(void) const
-	?__DbgTestInvariant@CSdpAttributeField@@QBEXXZ @ 193 NONAME ABSENT; void CSdpAttributeField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpConnectionField@@QBEXXZ @ 194 NONAME ABSENT ; void CSdpConnectionField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpFmtAttributeField@@QBEXXZ @ 195 NONAME ABSENT ; void CSdpFmtAttributeField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpKeyField@@QBEXXZ @ 196 NONAME ABSENT ; void CSdpKeyField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpOriginField@@QBEXXZ @ 197 NONAME ABSENT ; void CSdpOriginField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpRepeatField@@QBEXXZ @ 198 NONAME ABSENT ; void CSdpRepeatField::__DbgTestInvariant(void) const
-	?__DbgTestInvariant@CSdpTimeField@@QBEXXZ @ 199 NONAME ABSENT ; void CSdpTimeField::__DbgTestInvariant(void) const
-	?AssignTo@CSdpAttributeField@@QAEXABVCSdpFmtAttributeField@@@Z @ 200 NONAME ; void CSdpAttributeField::AssignTo(class CSdpFmtAttributeField const &)
-	?BelongsTo@CSdpAttributeField@@QBEHABVCSdpFmtAttributeField@@@Z @ 201 NONAME ; int CSdpAttributeField::BelongsTo(class CSdpFmtAttributeField const &) const
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/eabi/localsdpcodecu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,247 +0,0 @@
-EXPORTS
-	_ZN12CSdpDocument10TimeFieldsEv @ 1 NONAME
-	_ZN12CSdpDocument11EmailFieldsEv @ 2 NONAME
-	_ZN12CSdpDocument11MediaFieldsEv @ 3 NONAME
-	_ZN12CSdpDocument11OriginFieldEv @ 4 NONAME
-	_ZN12CSdpDocument11PhoneFieldsEv @ 5 NONAME
-	_ZN12CSdpDocument12InternalizeLER11RReadStream @ 6 NONAME
-	_ZN12CSdpDocument14SetOriginFieldEP15CSdpOriginField @ 7 NONAME
-	_ZN12CSdpDocument15AttributeFieldsEv @ 8 NONAME
-	_ZN12CSdpDocument15BandwidthFieldsEv @ 9 NONAME
-	_ZN12CSdpDocument15ConnectionFieldEv @ 10 NONAME
-	_ZN12CSdpDocument15SetSessionNameLERK6TDesC8 @ 11 NONAME
-	_ZN12CSdpDocument18SetConnectionFieldEP19CSdpConnectionField @ 12 NONAME
-	_ZN12CSdpDocument19SetZoneAdjustmentsLERK6TDesC8 @ 13 NONAME
-	_ZN12CSdpDocument3KeyEv @ 14 NONAME
-	_ZN12CSdpDocument3UriEv @ 15 NONAME
-	_ZN12CSdpDocument4NewLEv @ 16 NONAME
-	_ZN12CSdpDocument5NewLCEv @ 17 NONAME
-	_ZN12CSdpDocument6SetKeyEP12CSdpKeyField @ 18 NONAME
-	_ZN12CSdpDocument6SetUriEP5CUri8 @ 19 NONAME
-	_ZN12CSdpDocument7DecodeLERK6TDesC8 @ 20 NONAME
-	_ZN12CSdpDocument8DecodeLCERK6TDesC8 @ 21 NONAME
-	_ZN12CSdpDocument8SetInfoLERK6TDesC8 @ 22 NONAME
-	_ZN12CSdpDocumentD0Ev @ 23 NONAME
-	_ZN12CSdpDocumentD1Ev @ 24 NONAME
-	_ZN12CSdpDocumentD2Ev @ 25 NONAME
-	_ZN12CSdpKeyField4NewLE8RStringFRK6TDesC8 @ 26 NONAME
-	_ZN12CSdpKeyField4SetLE8RStringFRK6TDesC8 @ 27 NONAME
-	_ZN12CSdpKeyField5NewLCE8RStringFRK6TDesC8 @ 28 NONAME
-	_ZN12CSdpKeyField7DecodeLERK6TDesC8 @ 29 NONAME
-	_ZN12CSdpKeyField8DecodeLCERK6TDesC8 @ 30 NONAME
-	_ZN12CSdpKeyFieldD0Ev @ 31 NONAME
-	_ZN12CSdpKeyFieldD1Ev @ 32 NONAME
-	_ZN12CSdpKeyFieldD2Ev @ 33 NONAME
-	_ZN13CSdpTimeField12RepeatFieldsEv @ 34 NONAME
-	_ZN13CSdpTimeField4NewLERK6TDesC8S2_ @ 35 NONAME
-	_ZN13CSdpTimeField5NewLCERK6TDesC8S2_ @ 36 NONAME
-	_ZN13CSdpTimeField7DecodeLERK6TDesC8i @ 37 NONAME
-	_ZN13CSdpTimeField8DecodeLCERK6TDesC8i @ 38 NONAME
-	_ZN13CSdpTimeField9SetTimesLERK6TDesC8S2_ @ 39 NONAME
-	_ZN13CSdpTimeFieldD0Ev @ 40 NONAME
-	_ZN13CSdpTimeFieldD1Ev @ 41 NONAME
-	_ZN13CSdpTimeFieldD2Ev @ 42 NONAME
-	_ZN13TSdpTypedTime8SetValueExNS_5TUnitE @ 43 NONAME
-	_ZN13TSdpTypedTimeC1Ev @ 44 NONAME
-	_ZN13TSdpTypedTimeC1ExNS_5TUnitE @ 45 NONAME
-	_ZN13TSdpTypedTimeC2Ev @ 46 NONAME
-	_ZN13TSdpTypedTimeC2ExNS_5TUnitE @ 47 NONAME
-	_ZN14CSdpMediaField11KeepFormatLERK6TDesC8 @ 48 NONAME
-	_ZN14CSdpMediaField11RejectMediaEv @ 49 NONAME
-	_ZN14CSdpMediaField12SetProtocolLE8RStringF @ 50 NONAME
-	_ZN14CSdpMediaField13RemoveFormatLERK6TDesC8 @ 51 NONAME
-	_ZN14CSdpMediaField13SetPortCountLEj @ 52 NONAME
-	_ZN14CSdpMediaField14SetFormatListLERK6TDesC8 @ 53 NONAME
-	_ZN14CSdpMediaField15AttributeFieldsEv @ 54 NONAME
-	_ZN14CSdpMediaField15BandwidthFieldsEv @ 55 NONAME
-	_ZN14CSdpMediaField16ConnectionFieldsEv @ 56 NONAME
-	_ZN14CSdpMediaField21FormatAttributeFieldsEv @ 57 NONAME
-	_ZN14CSdpMediaField3KeyEv @ 58 NONAME
-	_ZN14CSdpMediaField4NewLE8RStringFjS0_RK6TDesC8 @ 59 NONAME
-	_ZN14CSdpMediaField5NewLCE8RStringFjS0_RK6TDesC8 @ 60 NONAME
-	_ZN14CSdpMediaField6SetKeyEP12CSdpKeyField @ 61 NONAME
-	_ZN14CSdpMediaField7DecodeLERK6TDesC8i @ 62 NONAME
-	_ZN14CSdpMediaField8DecodeLCERK6TDesC8i @ 63 NONAME
-	_ZN14CSdpMediaField8SetInfoLERK6TDesC8 @ 64 NONAME
-	_ZN14CSdpMediaField8SetPortLEj @ 65 NONAME
-	_ZN14CSdpMediaField9SetMediaLE8RStringF @ 66 NONAME
-	_ZN14CSdpMediaFieldD0Ev @ 67 NONAME
-	_ZN14CSdpMediaFieldD1Ev @ 68 NONAME
-	_ZN14CSdpMediaFieldD2Ev @ 69 NONAME
-	_ZN15CSdpOriginField10SetVersionEx @ 70 NONAME
-	_ZN15CSdpOriginField11SetAddressLERK6TDesC88RStringFS3_ @ 71 NONAME
-	_ZN15CSdpOriginField12SetSessionIdEx @ 72 NONAME
-	_ZN15CSdpOriginField12SetUserNameLERK6TDesC8 @ 73 NONAME
-	_ZN15CSdpOriginField14SetInetAddressERK9TInetAddr @ 74 NONAME
-	_ZN15CSdpOriginField4NewLERK6TDesC8xx8RStringFS3_S2_ @ 75 NONAME
-	_ZN15CSdpOriginField4NewLERK6TDesC8xxR9TInetAddr @ 76 NONAME
-	_ZN15CSdpOriginField5NewLCERK6TDesC8xx8RStringFS3_S2_ @ 77 NONAME
-	_ZN15CSdpOriginField5NewLCERK6TDesC8xxR9TInetAddr @ 78 NONAME
-	_ZN15CSdpOriginField7DecodeLERK6TDesC8 @ 79 NONAME
-	_ZN15CSdpOriginField8DecodeLCERK6TDesC8 @ 80 NONAME
-	_ZN15CSdpOriginFieldD0Ev @ 81 NONAME
-	_ZN15CSdpOriginFieldD1Ev @ 82 NONAME
-	_ZN15CSdpOriginFieldD2Ev @ 83 NONAME
-	_ZN15CSdpRepeatField15SetTimeOffsetsLERK6RArrayI13TSdpTypedTimeE @ 84 NONAME
-	_ZN15CSdpRepeatField17SetActiveDurationE13TSdpTypedTime @ 85 NONAME
-	_ZN15CSdpRepeatField18SetRepeatIntervalLE13TSdpTypedTime @ 86 NONAME
-	_ZN15CSdpRepeatField4NewLE13TSdpTypedTimeS0_RK6RArrayIS0_E @ 87 NONAME
-	_ZN15CSdpRepeatField5NewLCE13TSdpTypedTimeS0_RK6RArrayIS0_E @ 88 NONAME
-	_ZN15CSdpRepeatField7DecodeLERK6TDesC8 @ 89 NONAME
-	_ZN15CSdpRepeatField8DecodeLCERK6TDesC8 @ 90 NONAME
-	_ZN15CSdpRepeatFieldD0Ev @ 91 NONAME
-	_ZN15CSdpRepeatFieldD1Ev @ 92 NONAME
-	_ZN15CSdpRepeatFieldD2Ev @ 93 NONAME
-	_ZN15TSdpRtpmapValue7DecodeLERK6TDesC8 @ 94 NONAME
-	_ZN15TSdpRtpmapValueC1ERK6TPtrC8S2_S2_ @ 95 NONAME
-	_ZN15TSdpRtpmapValueC2ERK6TPtrC8S2_S2_ @ 96 NONAME
-	_ZN18CSdpAttributeField4NewLE8RStringFRK6TDesC8 @ 97 NONAME
-	_ZN18CSdpAttributeField4SetLE8RStringFRK6TDesC8 @ 98 NONAME
-	_ZN18CSdpAttributeField5NewLCE8RStringFRK6TDesC8 @ 99 NONAME
-	_ZN18CSdpAttributeField7DecodeLERK6TDesC8 @ 100 NONAME
-	_ZN18CSdpAttributeField8DecodeLCERK6TDesC8 @ 101 NONAME
-	_ZN18CSdpAttributeFieldD0Ev @ 102 NONAME
-	_ZN18CSdpAttributeFieldD1Ev @ 103 NONAME
-	_ZN18CSdpAttributeFieldD2Ev @ 104 NONAME
-	_ZN18CSdpBandwidthField11SetModifierE8RStringF @ 105 NONAME
-	_ZN18CSdpBandwidthField4NewLE8RStringFm @ 106 NONAME
-	_ZN18CSdpBandwidthField5NewLCE8RStringFm @ 107 NONAME
-	_ZN18CSdpBandwidthField7DecodeLERK6TDesC8 @ 108 NONAME
-	_ZN18CSdpBandwidthField8DecodeLCERK6TDesC8 @ 109 NONAME
-	_ZN18CSdpBandwidthField8SetValueEm @ 110 NONAME
-	_ZN18CSdpBandwidthFieldD0Ev @ 111 NONAME
-	_ZN18CSdpBandwidthFieldD1Ev @ 112 NONAME
-	_ZN18CSdpBandwidthFieldD2Ev @ 113 NONAME
-	_ZN18SdpCodecStringPool11StringPoolLEv @ 114 NONAME
-	_ZN18SdpCodecStringPool12StringTableLEv @ 115 NONAME
-	_ZN18SdpCodecStringPool5CloseEv @ 116 NONAME
-	_ZN18SdpCodecStringPool5OpenLEv @ 117 NONAME
-	_ZN19CSdpConnectionField11SetAddressLE8RStringFS0_RK6TDesC8 @ 118 NONAME
-	_ZN19CSdpConnectionField15SetInetAddressLERK9TInetAddrij @ 119 NONAME
-	_ZN19CSdpConnectionField16SetNumOfAddressLEj @ 120 NONAME
-	_ZN19CSdpConnectionField4NewLE8RStringFS0_RK6TDesC8 @ 121 NONAME
-	_ZN19CSdpConnectionField4NewLERK9TInetAddrij @ 122 NONAME
-	_ZN19CSdpConnectionField5NewLCE8RStringFS0_RK6TDesC8 @ 123 NONAME
-	_ZN19CSdpConnectionField5NewLCERK9TInetAddrij @ 124 NONAME
-	_ZN19CSdpConnectionField7DecodeLERK6TDesC8 @ 125 NONAME
-	_ZN19CSdpConnectionField7SetTTLLEi @ 126 NONAME
-	_ZN19CSdpConnectionField8DecodeLCERK6TDesC8 @ 127 NONAME
-	_ZN19CSdpConnectionFieldD0Ev @ 128 NONAME
-	_ZN19CSdpConnectionFieldD1Ev @ 129 NONAME
-	_ZN19CSdpConnectionFieldD2Ev @ 130 NONAME
-	_ZN21CSdpFmtAttributeField4NewLE8RStringFRK6TDesC8S3_ @ 131 NONAME
-	_ZN21CSdpFmtAttributeField4SetLE8RStringFRK6TDesC8S3_ @ 132 NONAME
-	_ZN21CSdpFmtAttributeField5NewLCE8RStringFRK6TDesC8S3_ @ 133 NONAME
-	_ZN21CSdpFmtAttributeField7DecodeLERK6TDesC8 @ 134 NONAME
-	_ZN21CSdpFmtAttributeField8DecodeLCERK6TDesC8 @ 135 NONAME
-	_ZN21CSdpFmtAttributeFieldD0Ev @ 136 NONAME
-	_ZN21CSdpFmtAttributeFieldD1Ev @ 137 NONAME
-	_ZN21CSdpFmtAttributeFieldD2Ev @ 138 NONAME
-	_ZNK12CSdpDocument10SdpVersionEv @ 139 NONAME
-	_ZNK12CSdpDocument11OriginFieldEv @ 140 NONAME
-	_ZNK12CSdpDocument11SessionNameEv @ 141 NONAME
-	_ZNK12CSdpDocument12ExternalizeLER12RWriteStream @ 142 NONAME
-	_ZNK12CSdpDocument15ConnectionFieldEv @ 143 NONAME
-	_ZNK12CSdpDocument15ZoneAdjustmentsEv @ 144 NONAME
-	_ZNK12CSdpDocument3KeyEv @ 145 NONAME
-	_ZNK12CSdpDocument3UriEv @ 146 NONAME
-	_ZNK12CSdpDocument4InfoEv @ 147 NONAME
-	_ZNK12CSdpDocument6CloneLEv @ 148 NONAME
-	_ZNK12CSdpDocument7EncodeLER12RWriteStream @ 149 NONAME
-	_ZNK12CSdpDocument7IsValidEv @ 150 NONAME
-	_ZNK12CSdpKeyField13EncryptionKeyEv @ 151 NONAME
-	_ZNK12CSdpKeyField6CloneLEv @ 152 NONAME
-	_ZNK12CSdpKeyField6MethodEv @ 153 NONAME
-	_ZNK12CSdpKeyField7EncodeLER12RWriteStream @ 154 NONAME
-	_ZNK12CSdpKeyFieldeqERKS_ @ 155 NONAME
-	_ZNK13CSdpTimeField6CloneLEi @ 156 NONAME
-	_ZNK13CSdpTimeField7EncodeLER12RWriteStreami @ 157 NONAME
-	_ZNK13CSdpTimeField7IsValidEv @ 158 NONAME
-	_ZNK13CSdpTimeField8StopTimeEv @ 159 NONAME
-	_ZNK13CSdpTimeField9StartTimeEv @ 160 NONAME
-	_ZNK13CSdpTimeFieldeqERKS_ @ 161 NONAME
-	_ZNK13TSdpTypedTimeeqERKS_ @ 162 NONAME
-	_ZNK14CSdpMediaField10FormatListEv @ 163 NONAME
-	_ZNK14CSdpMediaField3KeyEv @ 164 NONAME
-	_ZNK14CSdpMediaField4InfoEv @ 165 NONAME
-	_ZNK14CSdpMediaField4PortEv @ 166 NONAME
-	_ZNK14CSdpMediaField5MediaEv @ 167 NONAME
-	_ZNK14CSdpMediaField6CloneLEi @ 168 NONAME
-	_ZNK14CSdpMediaField7EncodeLER12RWriteStreami @ 169 NONAME
-	_ZNK14CSdpMediaField7IsValidEv @ 170 NONAME
-	_ZNK14CSdpMediaField8ProtocolEv @ 171 NONAME
-	_ZNK14CSdpMediaField9PortCountEv @ 172 NONAME
-	_ZNK14CSdpMediaFieldeqERKS_ @ 173 NONAME
-	_ZNK15CSdpOriginField11AddressTypeEv @ 174 NONAME
-	_ZNK15CSdpOriginField11InetAddressEv @ 175 NONAME
-	_ZNK15CSdpOriginField6CloneLEv @ 176 NONAME
-	_ZNK15CSdpOriginField7AddressEv @ 177 NONAME
-	_ZNK15CSdpOriginField7EncodeLER12RWriteStream @ 178 NONAME
-	_ZNK15CSdpOriginField7NetTypeEv @ 179 NONAME
-	_ZNK15CSdpOriginField7VersionEv @ 180 NONAME
-	_ZNK15CSdpOriginField8UserNameEv @ 181 NONAME
-	_ZNK15CSdpOriginField9SessionIdEv @ 182 NONAME
-	_ZNK15CSdpOriginFieldeqERKS_ @ 183 NONAME
-	_ZNK15CSdpRepeatField11TimeOffsetsEv @ 184 NONAME
-	_ZNK15CSdpRepeatField14ActiveDurationEv @ 185 NONAME
-	_ZNK15CSdpRepeatField14RepeatIntervalEv @ 186 NONAME
-	_ZNK15CSdpRepeatField6CloneLEv @ 187 NONAME
-	_ZNK15CSdpRepeatField7EncodeLER12RWriteStream @ 188 NONAME
-	_ZNK15CSdpRepeatFieldeqERKS_ @ 189 NONAME
-	_ZNK15TSdpRtpmapValue7EncodeLEv @ 190 NONAME
-	_ZNK18CSdpAttributeField5ValueEv @ 191 NONAME
-	_ZNK18CSdpAttributeField6CloneLEv @ 192 NONAME
-	_ZNK18CSdpAttributeField7EncodeLER12RWriteStream @ 193 NONAME
-	_ZNK18CSdpAttributeField9AttributeEv @ 194 NONAME
-	_ZNK18CSdpAttributeFieldeqERKS_ @ 195 NONAME
-	_ZNK18CSdpBandwidthField5ValueEv @ 196 NONAME
-	_ZNK18CSdpBandwidthField6CloneLEv @ 197 NONAME
-	_ZNK18CSdpBandwidthField7EncodeLER12RWriteStream @ 198 NONAME
-	_ZNK18CSdpBandwidthField8ModifierEv @ 199 NONAME
-	_ZNK18CSdpBandwidthFieldeqERKS_ @ 200 NONAME
-	_ZNK19CSdpConnectionField11AddressTypeEv @ 201 NONAME
-	_ZNK19CSdpConnectionField11InetAddressEv @ 202 NONAME
-	_ZNK19CSdpConnectionField12NumOfAddressEv @ 203 NONAME
-	_ZNK19CSdpConnectionField6CloneLEv @ 204 NONAME
-	_ZNK19CSdpConnectionField7AddressEv @ 205 NONAME
-	_ZNK19CSdpConnectionField7EncodeLER12RWriteStream @ 206 NONAME
-	_ZNK19CSdpConnectionField7NetTypeEv @ 207 NONAME
-	_ZNK19CSdpConnectionField8TTLValueEv @ 208 NONAME
-	_ZNK19CSdpConnectionFieldeqERKS_ @ 209 NONAME
-	_ZNK21CSdpFmtAttributeField5ValueEv @ 210 NONAME
-	_ZNK21CSdpFmtAttributeField6CloneLEv @ 211 NONAME
-	_ZNK21CSdpFmtAttributeField6FormatEv @ 212 NONAME
-	_ZNK21CSdpFmtAttributeField7EncodeLER12RWriteStream @ 213 NONAME
-	_ZNK21CSdpFmtAttributeField9AttributeEv @ 214 NONAME
-	_ZNK21CSdpFmtAttributeFieldeqERKS_ @ 215 NONAME
-	_ZTI12CSdpDocument @ 216 NONAME ; #<TI>#
-	_ZTI12CSdpKeyField @ 217 NONAME ; #<TI>#
-	_ZTI13CSdpTimeField @ 218 NONAME ; #<TI>#
-	_ZTI14CSdpMediaField @ 219 NONAME ; #<TI>#
-	_ZTI15CSdpOriginField @ 220 NONAME ; #<TI>#
-	_ZTI15CSdpRepeatField @ 221 NONAME ; #<TI>#
-	_ZTI18CSdpAttributeField @ 222 NONAME ; #<TI>#
-	_ZTI18CSdpBandwidthField @ 223 NONAME ; #<TI>#
-	_ZTI18CSdpCodecParseUtil @ 224 NONAME ; #<TI>#
-	_ZTI19CSdpCodecStringPool @ 225 NONAME ; #<TI>#
-	_ZTI19CSdpConnectionField @ 226 NONAME ; #<TI>#
-	_ZTI21CSdpFmtAttributeField @ 227 NONAME ; #<TI>#
-	_ZTV12CSdpDocument @ 228 NONAME ; #<VT>#
-	_ZTV12CSdpKeyField @ 229 NONAME ; #<VT>#
-	_ZTV13CSdpTimeField @ 230 NONAME ; #<VT>#
-	_ZTV14CSdpMediaField @ 231 NONAME ; #<VT>#
-	_ZTV15CSdpOriginField @ 232 NONAME ; #<VT>#
-	_ZTV15CSdpRepeatField @ 233 NONAME ; #<VT>#
-	_ZTV18CSdpAttributeField @ 234 NONAME ; #<VT>#
-	_ZTV18CSdpBandwidthField @ 235 NONAME ; #<VT>#
-	_ZTV18CSdpCodecParseUtil @ 236 NONAME ; #<VT>#
-	_ZTV19CSdpCodecStringPool @ 237 NONAME ; #<VT>#
-	_ZTV19CSdpConnectionField @ 238 NONAME ; #<VT>#
-	_ZTV21CSdpFmtAttributeField @ 239 NONAME ; #<VT>#
-	_ZN18CSdpAttributeField8AssignToERK21CSdpFmtAttributeField @ 240 NONAME
-	_ZNK18CSdpAttributeField9BelongsToERK21CSdpFmtAttributeField @ 241 NONAME
-	_ZTI22CSdpAttributeFieldPtrs @ 242 NONAME ; #<TI>#
-	_ZTV22CSdpAttributeFieldPtrs @ 243 NONAME ; #<VT>#
-	_ZTI19CSdpOriginFieldPtrs @ 244 NONAME ; #<TI>#
-	_ZTV19CSdpOriginFieldPtrs @ 245 NONAME ; #<VT>#
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/group/localsdpcodec.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : localsdpcodec is a local copy of the sdpcodec.dll added here to avoid mw dependency
-// Part of       : Local SDP Codec
-// Version       : SIP/5.0
-//
-
-
-
-TARGET        localsdpcodec.dll
-TARGETTYPE    dll
-UID           0x1000008d 0x200305C5
-
-SOURCEPATH    ../src
-SOURCE        sdpattributefield.cpp
-SOURCE        sdpattributefieldptrs.cpp
-SOURCE        sdpbandwidthfield.cpp
-SOURCE        sdprepeatfield.cpp
-SOURCE        sdptimefield.cpp
-SOURCE        sdptypedtime.cpp
-SOURCE        sdpconnectionfield.cpp
-SOURCE        sdpdocument.cpp
-SOURCE        sdpfmtattributefield.cpp
-SOURCE        sdpkeyfield.cpp
-SOURCE        sdpmediafield.cpp
-SOURCE        sdporiginfield.cpp
-SOURCE        sdporiginfieldptrs.cpp
-SOURCE        sdprtpmapvalue.cpp
-SOURCE        sdputil.cpp
-SOURCE        sdpcodecstringpool.cpp
-SOURCE        csdpcodecstringpool.cpp
-SOURCE        sdpcodecparseutil.cpp
-
- SOURCEPATH ../strings
- START STRINGTABLE localsdpcodecstringconstants.st
- 	  EXPORTPATH  /epoc32/include
- END
-
-USERINCLUDE   ../api
-USERINCLUDE   ../inc
-USERINCLUDE   ../src
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY       euser.lib
-LIBRARY       insock.lib
-LIBRARY       esock.lib
-LIBRARY       estor.lib
-LIBRARY       bafl.lib
-LIBRARY       inetprotutil.lib 
-
-VENDORID 0x70000001
-
-CAPABILITY All -Tcb
-
-SMPSAFE
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/csdpcodecstringpool.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecStringPool.h
-* Part of       : Local SDP Codec
-* Interface     : SDK API, Local SDP Codec API
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef CSDPCODECSTRINGPOOL_H
-#define CSDPCODECSTRINGPOOL_H
-
-//  INCLUDES
-#include <e32base.h>
-#include "_sdpdefs.h"
-#include <stringpool.h>
-
-
-// CLASS DECLARATION
-/**
- *	This class defines string pool for SdpCodec.
- *  Only one CSdpCodecStringPool object must be created in an application.
- *  If more than one CSdpCodecStringPool objects are used by an
- *  application with CSdpDocument objects, panic occurs. 
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpCodecStringPool : public CBase
-	{
-public: // Constructors and destructor
- 		
-	/**
-	*	StringPool is created for SdpCodec.
-	*
-    *	@return The new instance.
-	*/
-	static CSdpCodecStringPool* NewLC();
-
-	/**
-	*	Deletes the resources held by the instance.
-	*/
-	~CSdpCodecStringPool();
-
-public: 
-	
-	/**
-	* Gets the string pool used by SDP
-	*
-	* @return a handle to a string pool
-	*/
-	RStringPool StringPool();
-
-	/**
-	* Gets the SDP's string pool table
-	*
-	* @return the string pool table
-	*/
-	static const TStringTable& StringTable();
-
-private:
-
-	CSdpCodecStringPool();
-	void ConstructL();
-
-private: // Data
-		
-	RStringPool iPool;
-	};
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpattributefieldptrs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpAttributeFieldPtrs.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef CSDPATTRIBUTEFIELDPTRS_H
-#define CSDPATTRIBUTEFIELDPTRS_H
-
-//  INCLUDES
-#include <e32base.h>
-
-// FORWARD DECLARATIONS
-class CSdpFmtAttributeField;
-
-// CLASS DECLARATION
-/**
- *	This class encapsulates the data of CSdpAttributeField.
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpAttributeFieldPtrs : public CBase
-    {
-    public:
-    
-        static CSdpAttributeFieldPtrs* NewL();
-	    ~CSdpAttributeFieldPtrs();
-
-        void SetValueL( const TDesC8& aValue );
-        const TDesC8& Value() const;
-        
-        void SetFmtAttribute( const CSdpFmtAttributeField* aFmtAttribute );
-        const CSdpFmtAttributeField* FmtAttribute() const;
-
-    private: // Second phase constructors
-    
-        CSdpAttributeFieldPtrs();
-        void ConstructL();
-    
-    private: // Data
-
-        HBufC8* iValue; // Owned
-        const CSdpFmtAttributeField* iFmtAttributeField; // Not owned	    
-    };
-
-#endif // CSDPATTRIBUTEFIELDPTRS_H
-
-// End of File
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodec.pan	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpCodec.pan
-// Part of       : SDP Codec
-// Interface     : -
-// Version       : 1.0
-//
-
-
-
-#ifndef SDPCODEC_PAN
-#define SDPCODEC_PAN
-
-// Panic category for SDP Codec
-_LIT(KSdpCodecPanicCat, "SDPCODEC");
-
-// Panic codes for SDP Codec
-const TInt KSdpCodecPanicInternal	= 100;   // Internal error
-const TInt KSdpConstructor          = 101;   // Constructor fails
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodecparseutil.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecParseUtil.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef CSDPCODECPARSEUTIL_H
-#define CSDPCODECPARSEUTIL_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include "_sdpdefs.h"
-#include <e32std.h>
-#include "badesca.h"
-class CSdpTimeField;
-class CSdpBandwidthField;
-class CSdpAttributeField;
-class CSdpMediaField;	
-class CSdpOriginField;
-class CUri8;
-class CSdpConnectionField;
-class CSdpKeyField;
-class RReadStream;
-class RWriteStream;
-
-// CLASS DECLARATION
-/**
- *	Common utilities used in the implementation of the Local SDP codec.
- */
-class CSdpCodecParseUtil :public CBase
-	{
-    public: // Constructors and destructor
-
-		/**
-		*	Construct a new, CSdpCodecParseUtil object.
-		*	@return The new instance.
-		*/
-		static CSdpCodecParseUtil* NewL(RStringPool aPool,const TDesC8& aValue,
-											  TInt aErrCode);
-
-		/**
-		*	Construct a new, CSdpCodecParseUtil object.
-		*	@return The new instance.
-		*/
-		static CSdpCodecParseUtil* NewLC(RStringPool aPool,const TDesC8& aValue,
-											  TInt aErrCode);
-
-	    ~CSdpCodecParseUtil();
-
-    public: // New functions
-
-		static TPtrC8 FieldLineValueL(const TDesC8& aValue);
-		static RArray<TPtrC8> CheckFieldNameL(RStringPool aPool,
-											  TInt aIndex, 
-											  const TDesC8& aValue,
-											  TInt aErrCode);
-		static RArray<TPtrC8> CheckOptionalFieldNameL(RStringPool aPool, 
-													TInt aIndex, 
-													const TDesC8& aValue,
-												    TInt aErrCode);
-		TUint ParseSessionVersionL(TInt aErrCode);
-		CSdpOriginField* ParseSessionOwnerL(TInt aErrCode);
-		const TDesC8& ParseSessionNameL(TInt aErrCode);
-		const TDesC8& ParseInformationL(TInt aErrCode);
-		CUri8* ParseUriL(TInt aErrCode);
-		CDesC8ArraySeg* ParseEmailL(TInt aErrCode);
-		CDesC8ArraySeg* ParsePhoneL(TInt aErrCode);
-		CSdpConnectionField* ParseConnectionL(TInt aErrCode);
-		RPointerArray<CSdpBandwidthField>* ParseBandwidthL(TInt aErrCode);
-		RPointerArray<CSdpConnectionField>* ParseConnectionFieldsL(TInt aErrCode);
-		RPointerArray<CSdpTimeField>* ParseTimeFieldL(TInt aErrCode);
-		const TDesC8& ParseZoneAdjustmentL(TInt aErrCode);
-		CSdpKeyField* ParseEncryptionKeyL(TInt aErrCode);
-		RPointerArray<CSdpAttributeField>* ParseAttributeFieldL(TInt aErrCode);
-		RPointerArray<CSdpMediaField>* ParseMediaLevelL ();
-		RArray<TPtrC8> FirstLineArrayElementL(RStringPool aPool,
-											  TInt aIndex,
-											  TInt aErrCode);
-
-        RArray<TPtrC8>& LineArray();
-
-	private:
-
-		CSdpCodecParseUtil();
-		
-		void ConstructL(RStringPool aPool,const TDesC8& aValue,TInt aErrCode);
-
-	private: // Data
-		RArray<TPtrC8> iLineArray;
-		RArray<TPtrC8> iElementArray;
-		RStringPool iPool;
-		RPointerArray<CSdpTimeField>* iTimeFields;
-		RPointerArray<CSdpBandwidthField>* iBandwidthFields;
-		RPointerArray<CSdpAttributeField>* iAttributeFields;
-		RPointerArray<CSdpMediaField>* iMediaFields;
-		RPointerArray<CSdpConnectionField>* iConnectionFields;
-		CDesC8ArraySeg* iEmailFields;
-		CDesC8ArraySeg* iPhoneFields;
-		HBufC8* iToken;
-		TPtrC8 iData;
-	};
-
-#endif // CSDPCODECPARSEUTIL_H
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodecstringconstants.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,203 +0,0 @@
-// Autogenerated from epoc32/build/cafstreamingsupport/c_f439661e83f96b9c/localsdpcodec_dll/sdpcodecstringconstants.st by the stringtable tool - Do not edit
-
-#ifndef STRINGTABLE_SdpCodecStringConstants
-#define STRINGTABLE_SdpCodecStringConstants
-
-#include <stringpool.h>
-
-struct TStringTable;
-
-/**
- * @publishedAll
- * @released
-*/
-class SdpCodecStringConstants 
-	{
-public:
-	enum TStrings
-		{
-		// SDP field names:
-		/** v= */
-		EVersion,
-		/** o= */
-		EOrigin,
-		/** s= */
-		ESession,
-		/** i= */
-		EInfo,
-		/** u= */
-		EUri,
-		/** e= */
-		EEmail,
-		/** p= */
-		EPhone,
-		/** c= */
-		EConnection,
-		/** b= */
-		EBandwidth,
-		/** z= */
-		EZone,
-		/** k= */
-		EKey,
-		/** a= */
-		EAttribute,
-		/** t= */
-		ETime,
-		/** r= */
-		ERepeat,
-		/** m= */
-		EMedia,
-		// Predefined bandwidth modifiers:
-		/** CT */
-		EModifierCT,
-		/** AS */
-		EModifierAS,
-		// Typed time units:
-		/** d */
-		ETimeUnitDays,
-		/** h */
-		ETimeUnitHours,
-		/** m */
-		ETimeUnitMinutes,
-		/** s */
-		ETimeUnitSeconds,
-		// No typed time unit defined:
-		/**  */
-		ETimeUnitNone,
-		// Predefined encryption methods:
-		/** clear */
-		EMethodClear,
-		/** base64 */
-		EMethodBase64,
-		/** uri */
-		EMethodUri,
-		/** prompt */
-		EMethodPrompt,
-		// Predefined attributes:
-		/** cat */
-		EAttributeCat,
-		/** keywds */
-		EAttributeKeywds,
-		/** tool */
-		EAttributeTool,
-		/** ptime */
-		EAttributePtime,
-		/** maxptime */
-		EAttributeMaxptime,
-		/** recvonly */
-		EAttributeRecvonly,
-		/** sendrecv */
-		EAttributeSendrecv,
-		/** sendonly */
-		EAttributeSendonly,
-		/** inactive */
-		EAttributeInactive,
-		/** orient */
-		EAttributeOrient,
-		// Predefined Orient attribute values
-		/** portrait */
-		EAttributeOrientValuePortrait,
-		/** landscape */
-		EAttributeOrientValueLandscape,
-		/** seascape */
-		EAttributeOrientValueSeascape,
-		/** type */
-		EAttributeType,
-		/** charset */
-		EAttributeCharset,
-		/** sdplang */
-		EAttributeSdplang,
-		/** lang */
-		EAttributeLang,
-		/** framerate */
-		EAttributeFramerate,
-		/** quality */
-		EAttributeQuality,
-		/** control */
-		EAttributeControl,
-		/** range */
-		EAttributeRange,
-		/** etag */
-		EAttributeEtag,
-		/** des */
-		EAttributeDes,
-		/** curr */
-		EAttributeCurr,
-		/** conf */
-		EAttributeConf,
-		// Predefined Strength tag for Curr, Conf and Des attributes
-		/** mandatory */
-		EAttributeStatusStrengthTagMandatory,
-		/** optional */
-		EAttributeStatusStrengthTagOptional,
-		/** none */
-		EAttributeStatusStrengthTagNone,
-		/** failure */
-		EAttributeStatusStrengthTagFailure,
-		/** unknown */
-		EAttributeStatusStrengthTagUnknown,
-		// Predefined Status type for Curr, Conf and Des attributes
-		/** e2e */
-		EAttributeStatusTypeE2e,
-		/** local */
-		EAttributeStatusTypeLocal,
-		/** remote */
-		EAttributeStatusTypeRemote,
-		// Predefined Direction tag for Curr, Conf and Des attributes
-		/** none */
-		EAttributeStatusDirectionTagNone,
-		/** send */
-		EAttributeStatusDirectionTagSend,
-		/** recv */
-		EAttributeStatusDirectionTagRecv,
-		/** sendrecv */
-		EAttributeStatusDirectionTagSendrecv,
-		/** mid */
-		EAttributeMid,
-		/** group */
-		EAttributeGroup,
-		// Predefined semantics for Group attribute
-		/** LS */
-		EAttributeGroupSemanticLS,
-		/** FID */
-		EAttributeGroupSemanticFID,
-		/** SRF */
-		EAttributeGroupSemanticSRF,
-		/** rtpmap */
-		EAttributeRtpmap,
-		/** fmtp */
-		EAttributeFmtp,
-		// Predefined media types:
-		/** audio */
-		EMediaAudio,
-		/** video */
-		EMediaVideo,
-		/** application */
-		EMediaApplication,
-		/** data */
-		EMediaData,
-		/** control */
-		EMediaControl,
-		/** image */
-		EMediaImage,
-		// Predefined media transport protocols:
-		/** RTP/AVP */
-		EProtocolRtpAvp,
-		/** udp */
-		EProtocolUdp,
-		/** TCP */
-		EProtocolTcp,
-		// Network type:
-		/** IN */
-		ENetType,
-		// Address types:
-		/** IP4 */
-		EAddressTypeIP4,
-		/** IP6 */
-		EAddressType
-		};
-	static const TStringTable Table;	
-	};
-
-#endif // STRINGTABLE_SdpCodecStringConstants
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodectemplate.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecTemplate.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef SDPCODECTEMPLATE_H
-#define SDPCODECTEMPLATE_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-
-#include "_sdpdefs.h"
-#include "e32std.h"
-#include "stringpool.h"
-
-class RReadStream;
-class RWriteStream;
-
-template<class T> class SdpCodecTemplate
-	{
-    public: 
-
-		static void ExternalizeL(const T* aElement, RWriteStream& aWriteStream);
-		static void ExternalizeArrayL(RPointerArray<T> aArray,RWriteStream& aStream);
-		static void EncodeArrayL(RPointerArray<T> aArray, RWriteStream& aStream);
-		static void EncodeL(const T* aElement, RWriteStream& aWriteStream);
-		static void InternalizeArrayL(RPointerArray<T>& aArray, RReadStream& aStream);
-		static void 
-		CloneArrayL(RPointerArray<T>& aArray, RPointerArray<T> aSourceArray);
-
-	};
-
-#include "SdpCodecTemplate.inl"
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdpcodectemplate.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpCodecTemplate.inl
-* Part of       : SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-#ifndef SDPCODECTEMPLATE_INL
-#define SDPCODECTEMPLATE_INL
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-
-#include "_sdpdefs.h"
-#include "e32std.h"
-
-class RReadStream;
-class RWriteStream;
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::ExternalizeL 
-// ---------------------------------------------------------------------------
-//
-template<class T> void SdpCodecTemplate<T>::ExternalizeL(const T* aElement,
-										RWriteStream& aWriteStream)
-	{
-	if(aElement)
-		{
-		aWriteStream.WriteUint8L (1);
-		aElement->ExternalizeL(aWriteStream);
-		}
-	else
-		{
-		aWriteStream.WriteUint8L (0);
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::ExternalizeArrayL
-// ---------------------------------------------------------------------------
-//
-template<class T> void 
-SdpCodecTemplate<T>::ExternalizeArrayL(RPointerArray<T> aArray,
-						   RWriteStream& aStream)
-	{
-	aStream.WriteUint32L (aArray.Count());
-	for (TInt i = 0;i < aArray.Count();i++)
-		{
-		aArray[i]->ExternalizeL(aStream);
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::EncodeArrayL
-// ---------------------------------------------------------------------------
-//
-template<class T> void 
-SdpCodecTemplate<T>::EncodeArrayL(RPointerArray<T> aArray, RWriteStream& aStream)
-	{
-	for (TInt i = 0;i < aArray.Count();i++)
-		{
-		aArray[i]->EncodeL(aStream);
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::EncodeL
-// ---------------------------------------------------------------------------
-//
-template<class T> void SdpCodecTemplate<T>::EncodeL(const T* aElement,
-										RWriteStream& aWriteStream)
-	{
-	if(aElement)
-		{
-		aElement->EncodeL(aWriteStream);
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::InternalizeArrayL
-// ---------------------------------------------------------------------------
-//
-template<class T> void 
-SdpCodecTemplate<T>::InternalizeArrayL(RPointerArray<T>& aArray, 
-								RReadStream& aStream)
-	{
-	TInt count = aStream.ReadUint32L();
-	for (TInt i = 0;i < count;i++)
-		{
-		T* obj = T::InternalizeL(aStream);
-		CleanupStack::PushL(obj);
-		User::LeaveIfError(aArray.Append(obj));
-		CleanupStack::Pop();//obj
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpCodecTemplate<T>::CloneArrayL
-// ---------------------------------------------------------------------------
-//
-template<class T> void 
-SdpCodecTemplate<T>::CloneArrayL(RPointerArray<T>& aArray,
-						  RPointerArray<T> aSourceArray)
-	{
-	for (TInt i=0; i < (aSourceArray).Count(); i++)
-		{
-		T* obj = aSourceArray[i]->CloneL();
-		CleanupStack::PushL(obj);
-		User::LeaveIfError(aArray.Append(obj));
-		CleanupStack::Pop();//obj
-		}
-	}
-
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdporiginfieldptrs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpOriginFieldPtrs.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef CSDPORIGINFIELDPTRS_H
-#define CSDPORIGINFIELDPTRS_H
-
-//  INCLUDES
-#include <e32base.h>
-
-// CONSTANTS
-const TUint KMaxTInt64Digits = 30;
-
-// FORWARD DECLARATIONS
-
-// CLASS DECLARATION
-/**
- *	This class encapsulates the data of CSdpAttributeField.
- *
- *  @lib localsdpcodec.lib
- */
-class CSdpOriginFieldPtrs : public CBase
-    {
-    public:
-    
-        static CSdpOriginFieldPtrs* NewL( TInt64 aSessionId,
-        								  TInt64 aSessionVersion );
-	    ~CSdpOriginFieldPtrs();
-
-        void SetUserNameL( const TDesC8& aUserName );        
-        const TDesC8& UserName() const;
-        
-        void SetSessionIdL( const TDesC8& aSessionId );
-        void SetSessionIdL( TInt64 aSessionId );
-        const TDesC8& SessionId() const;
-        
-        void SetSessionVersionL( const TDesC8& aSessionVersion );
-        void SetSessionVersionL( TInt64 aSessionVersion );
-        const TDesC8& SessionVersion() const;
-
-    private: // Second phase constructors
-
-        CSdpOriginFieldPtrs();
-        void ConstructL( TInt64 aSessionId, TInt64 aSessionVersion );
-    
-    private: // Data
-
-		// Owned
-		HBufC8* iUserName;
-		// Owned
-		HBufC8* iSessionId;
-		// Owned
-		HBufC8* iSessionVersion;
-    };
-
-#endif // CSDPORIGINFIELDPTRS_H
-
-// End of File
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/inc/sdputil.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,316 +0,0 @@
-/*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:
-* Name          : SdpUtil.h
-* Part of       : Local SDP Codec
-* Interface     : -
-* Version       : 1.0
-*
-*/
-
-
-
-
-/**
- @internalComponent
-*/
-
-#ifndef SDPUTIL_H
-#define SDPUTIL_H
-
-//  INCLUDES
-#include <e32base.h>
-#include <stringpool.h>
-#include <e32std.h>
-#include "_sdpdefs.h"
-
-// FORWARD DECLARATIONS
-class RReadStream;
-class RWriteStream;
-class CSdpConnectionField;
-class CSSdpKeyField;
-class CSdpOriginField;
-class TInetAddr;
-
-// CLASS DECLARATION
-/**
- *	Common utilities used in the implementation of the Local SDP codec.
- *  Utility class, cannot be instantiated
- */
-class SdpUtil
-	{
-
-    public: // New functions
-
-        /**
-         *  Generic method that checks that all aValue's chars are not on illegal charset
-         *
-         *  @param aIllegalChars Illegal character set
-         *  @param aValue String to be checked
-         *  @param aStart Start position of the string
-         *  @param aEnd End position of the string
-         *  @return Validity of the string
-         */
-		static TBool IsValidCharSet( 
-            const TDesC8& aIllegalChars, const TDesC8& aValue, TInt aStart, TInt aEnd );
-
-        /**
-         *  Checks that token list is valid (tokens with space as delimiter)
-         *
-         *  @param aValue String containing tokens
-         *  @return Validity of the string
-         */
-		static TBool IsTokenList( const TDesC8& aValue );
-
-        /**
-         *  Checks that the token is valid (substring inside string)
-         *
-         *  @param aValue String containing the token
-         *  @param aStart Start position of the token inside the string
-         *  @param aEnd End position of the token inside the string
-         *  @return Validity of the token
-         */
-		static TBool IsToken( const TDesC8& aValue, TInt aStart, TInt aEnd );
-
-        /**
-         *  Checks that the token is valid
-         *
-         *  @param aValue Token string 
-         *  @return Validity of the token
-         */
-		static TBool IsToken( const TDesC8& aValue );
-
-        /**
-         *  Checks that the byte string is valid (substring inside string)
-         *
-         *  @param aValue String 
-         *  @param aStart Start position of the byte string inside the string
-         *  @param aEnd End position of the byte string inside the string
-         *  @return Validity of the byte string
-         */
-		static TBool IsByteString( const TDesC8& aValue, TInt aStart, TInt aEnd );
-
-        /**
-         *  Checks that the byte string is valid
-         *
-         *  @param aValue String containing the token        
-         *  @return Validity of the byte string
-         */
-		static TBool IsByteString( const TDesC8& aValue );
-
-        /**
-         *  Checks that the substring is a token-byte string pair with colon char
-         *  as delimiter of the two strings
-         *
-         *  @param aValue String containing the pair
-         *  @param aStart Start position of the string pair
-         *  @param aEnd End position of the string pair        
-         *  @return Validity of the pair
-         */
-		static TBool IsTokenTextPair( 
-            const TDesC8& aValue, TInt aStart, TInt aEnd );
-
-        /**
-         *  Checks that the string conatins valid token-byte string pair with color
-         *  char as delimiter of the two strings
-         *
-         *  @param aValue String containing the pair        
-         *  @return Validity of the byte string
-         */
-		static TBool IsTokenTextPair( const TDesC8& aValue );
-
-        /**
-         *  Checks that the string does not contain any whitespace characters
-         *
-         *  @param aValue String        
-         *  @return Validity of the string
-         */
-		static TBool IsNonWhitespace( const TDesC8& aValue );
-
-        /**
-         *  Checks that the string contains a valid NTP-time element
-         *
-         *  @param aValue String
-         *  @return Validity of the string
-         */
-		static TBool IsValidNtpTime( const TDesC8& aValue );
-
-        /**
-         *  Divides the buffer into a number of lines. Each line is marked
-         *  as a TPtrC8 object and added to array that is returned to the user
-         *  NOTE! Each line in the returned array ends in LF character
-         *  NOTE! The aLines must end in LF character, not '\0' character
-         *
-         *  @param aLines Buffer that contains all the string
-         *  @param aErrCode Error code that is used on leave situations, when the
-         *                  aLines parameter contains invalid string set
-         *  @return Array that contains the division of buffer to lines
-         */
-        static RArray<TPtrC8> DivideToLinesL( 
-            const TDesC8& aLines, TInt aErrCode );
-
-        /**
-         *  Parses elements from each line. The first item in the returned array
-         *  is the field attribute and equal character (e.g. "a=", "c="), following
-         *  elements are parsed from the string using space character as delimiter
-         *
-         *  @param aLine String containing line that ends to LF character
-         *  @param aErrCode Error code that is used on leave situations, when
-         *                  the contents of aLine are illegal
-         *  @return Array that contains the division of string to elements
-         */
-        static RArray<TPtrC8> GetElementsFromLineL( 
-            const TDesC8& aLine, TInt aErrCode );
-    
-        /**
-         *  Parses elements from each line. The first item in the returned array
-         *  is the field attribute and equal character (e.g. "a=", "c="), following
-         *  elements are parsed from the string using aDelimiter as delimiter
-         *
-         *  @param aLine String containing line that ends to LF character
-         *  @param aDelimiter Delimiter character
-         *  @param aErrCode Error code that is used on leave situations, when
-         *                  the contents of aLine are illegal
-         *  @return Array that contains the division of string to elements
-         */
-        static RArray<TPtrC8> GetElementsFromLineL( 
-            const TDesC8& aLine, TChar aDelimiter, TInt aErrCode ); 
-            
-        /**
-         *  Parses elements from each line. The first item in the returned array
-         *  is the field attribute and equal character (e.g. "a=", "c="), following
-         *  elements are parsed from the string using space character as delimiter
-         *
-         *  @param aLexer Lexer that has been initialized with the string
-         *  @param aErrCode Error code that is used on leave situations, when
-         *                  the contents of aLine are illegal
-         *  @return Array that contains the division of string to elements
-         */       
-        static RArray<TPtrC8> GetElementsFromLineL( 
-            TLex8& aLexer, TChar aDelimiter, TInt aErrCode );
-        
-        /**
-         *  Checks if the string contains only POS-DIGIT characters
-         *
-         *  @param aDes String
-         *  @return Validity of POS-DIGIT string
-         */
-        static TBool IsPosDigit( const TDesC8& aDes );
-
-        /**
-         *  Checks if the string contains only DIGIT characters
-         *
-         *  @param aDes String
-         *  @return Validity of DIGIT string
-         */
-        static TBool IsDigit( const TDesC8& aDes );
-
-        /**
-         *  Checks if the string contains valid characters
-         *  
-         *  @param aValidChars Valid characters allowed in the string
-         *  @param aDes String
-         *  @return Validity of the string
-         */
-        static TBool IsValidChars( const TDesC8& aValidChars, const TDesC8& aDes );                
-
-        /**
-         *  Checks if the string contains only token characters
-         *
-         *  @param aValue String
-         *  @return Validity of the string
-         */
-        static TBool IsTokenChar( const TDesC8& aValue );
-
-        /**
-         *  Checks if the character is a valid token character
-         *
-         *  @param aChar Character
-         *  @return Validity of the character
-         */
-		static TBool IsTokenChar( TChar aChar );
-
-        /**
-         *  Checks if the string is a valid token. The string can contain slash character,
-         *  which divides the line into two tokens. The two tokens are then individually
-         *  verified.
-         *
-         *  @param aValue String
-         *  @return Validity of the string
-         */
-		static TBool IsTokenCharWithOptionalSlash( const TDesC8& aValue );
-
-        /**
-         *  Checks if the string is a valid token. The string can contain space characters,
-         *  which divides the string into a number of tokens. Each token is then individually
-         *  verified.
-         *
-         *  @param aValue String
-         *  @return Validity of the string
-         */
-		static TBool IsTokenCharWithSpacesL( const TDesC8& aValue );
-
-        /**
-         *  Checks if the string is a valid token. The string can contain slash character,
-         *  which divides the line into two tokens. The two tokens are then individually
-         *  verified.
-         *
-         *  @param aValue String
-         *  @return Validity of the string
-         */
-		static void EncodeBufferL( 
-            const TDesC8& aValue, TInt aIndex, RWriteStream& aStream );
-
-        /**
-         *  Sets default network type ("IN") and default address type ("IP4" or "IP6")
-         *  to variables given as parameters
-         *  
-         *  @param aPool String pool
-         *  @param aInetAddr Internet address
-         *  @param aNetType Network type
-         *  @param aAddressType Address type
-         */
-        static void SetDefaultNetTypeAndAddrType( 
-            RStringPool aPool, const TInetAddr& aAddress,
-            RStringF& aNetType, RStringF& aAddressType );
-
-        /**
-         * Skips spaces until next line break, if the line break can be found.
-         * @param aLexer
-         * @return ETrue if the line break was found, otherwise EFalse. 
-         */
-        static TBool SkipSpacesUntilNextLineBreak( TLex8& aLexer );
- 
-    private:
-
-        /**
-         *  After the field tag has been parsed out, all the field elements are
-         *  parsed in this method
-         *
-         *  @param aArray Reference to the array that contains the chopped elements
-         *  @param aLexer Used lexer
-         *  @param aDelimiter Delimiter character that determines the separation of elements
-         *  @param aErrCode The error code that is used on leaves, when the argument is invalid
-         */
-        static void ChopElementsFromLineL( 
-            RArray<TPtrC8>& aArray, TLex8& aLexer, TChar aDelimiter, TInt aErrCode );
-        
-        /**
-         *  Private constructor         
-         *  This class can never be instantiated
-         */
-        SdpUtil();
-	};
-
-#endif
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/csdpcodecstringpool.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : CSdpCodecStringPool.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <stringpool.h>
-#include "csdpcodecstringpool.h"
-#include "sdpcodecstringconstants.h"
-#include "_sdpdefs.h"
-
-
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::NewLC
-// ----------------------------------------------------------------------------
-//
-CSdpCodecStringPool* CSdpCodecStringPool::NewLC()
-	{
-	CSdpCodecStringPool* self = new(ELeave)CSdpCodecStringPool;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::~CSdpCodecStringPool
-// ----------------------------------------------------------------------------
-//
-CSdpCodecStringPool::~CSdpCodecStringPool()
-	{
-	iPool.Close();
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::StringPool
-// ----------------------------------------------------------------------------
-//
-RStringPool CSdpCodecStringPool::StringPool()
-	{
-	return iPool;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::StringTable
-// ----------------------------------------------------------------------------
-//
-const TStringTable& CSdpCodecStringPool::StringTable()
-	{
-	return SdpCodecStringConstants::Table;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::CSdpCodecStringPool
-// ----------------------------------------------------------------------------
-//
-CSdpCodecStringPool::CSdpCodecStringPool()
-	{
-	}
-	
-// ----------------------------------------------------------------------------
-// CSdpCodecStringPool::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpCodecStringPool::ConstructL()
-	{
-	iPool.OpenL(SdpCodecStringConstants::Table);
-	}
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpattributefield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,986 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpAttributeField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include <uri8.h>
-#include "sdpattributefield.h"
-#include "sdpattributefieldptrs.h"
-#include "sdpfmtattributefield.h"
-#include "sdputil.h"
-#include "sdpcodec.pan"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecstringpool.h"
-#include "sdprtpmapvalue.h"
-#include "sdpcodecerr.h"
-#include "_sdpdefs.h"
-
-// CONSTANTS
-const TInt KHeaderIndex = 0;
-const TInt KAttributeIndex = 1;
-const TInt KMinAttributeNum = 2;
-const TInt KMaxSubtagLength = 8;
-const TInt KMaxPrimarySubtagLength = 8;
-
-// Valid property attribute strings
-const TInt KPropertyStringNum = 4;
-const SdpCodecStringConstants::TStrings 
-    KValidPropertyStrings[KPropertyStringNum] =
-    {
-    SdpCodecStringConstants::EAttributeRecvonly,
-    SdpCodecStringConstants::EAttributeSendrecv,
-    SdpCodecStringConstants::EAttributeSendonly,
-    SdpCodecStringConstants::EAttributeInactive
-    };
-
-// Valid value attribute strings
-const TInt KValueStringNum = 22;
-const SdpCodecStringConstants::TStrings KValidValueStrings[KValueStringNum] =
-    {
-    SdpCodecStringConstants::EAttributeCat,
-    SdpCodecStringConstants::EAttributeKeywds,
-    SdpCodecStringConstants::EAttributeTool,
-    SdpCodecStringConstants::EAttributePtime,
-    SdpCodecStringConstants::EAttributeMaxptime,
-    SdpCodecStringConstants::EAttributeRtpmap,
-    SdpCodecStringConstants::EAttributeOrient,
-    SdpCodecStringConstants::EAttributeType,
-    SdpCodecStringConstants::EAttributeCharset,
-    SdpCodecStringConstants::EAttributeSdplang,
-    SdpCodecStringConstants::EAttributeLang,
-    SdpCodecStringConstants::EAttributeFramerate,
-    SdpCodecStringConstants::EAttributeQuality,    
-    SdpCodecStringConstants::EAttributeFmtp,
-    SdpCodecStringConstants::EAttributeControl,
-    SdpCodecStringConstants::EAttributeEtag,
-    SdpCodecStringConstants::EAttributeMid,
-    SdpCodecStringConstants::EAttributeGroup,
-    SdpCodecStringConstants::EAttributeCurr,
-    SdpCodecStringConstants::EAttributeDes,
-    SdpCodecStringConstants::EAttributeConf,
-    SdpCodecStringConstants::EAttributeRange
-    };
-
-// Valid orient value strings
-const TInt KValidOrientStringNum = 3;
-static const TText8* const KOrientStrings[KValidOrientStringNum] = 
-    {
-    _S8("portrait\0"),
-    _S8("landscape\0"),
-    _S8("seascape\0")
-    };
-
-const TInt KValidGroupSemanticsNum = 3;
-static const TText8* const KGroupSemantics[KValidGroupSemanticsNum] =
-    {
-    _S8("LS"),
-    _S8("FID"),
-    _S8("SRF")
-    };
-
-const TInt KValidStatusTypeNum = 3;
-static const TText8* const KStatusTypes[KValidStatusTypeNum] =
-    {
-    _S8("e2e"),
-    _S8("local"),
-    _S8("remote")
-    };
-
-const TInt KValidDirectionTagsNum = 4;
-static const TText8* const KDirectionTags[KValidDirectionTagsNum] =
-    {
-    _S8("none"),
-    _S8("send"),
-    _S8("recv"),
-    _S8("sendrecv")
-    };
-
-const TInt KValidStrengthTagsNum = 5;
-static const TText8* const KStrengthTags[KValidStrengthTagsNum] =
-    {
-    _S8("mandatory"),
-    _S8("optional"),
-    _S8("none"),
-    _S8("failure"),
-    _S8("unknown")
-    };
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CSdpAttributeField
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CSdpAttributeField::CSdpAttributeField()
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::ConstructL( const TDesC8& aText )
-	{
-    // aText should be in format
-    // a=<attribute> or a=<attribute>:<value> or 
-    // a=<attribute>:<value> <value specific attributes>
-
-    __ASSERT_ALWAYS(aText.Length() > 0, User::Leave(KErrSdpCodecAttributeField));
-
-    iPool = SdpCodecStringPool::StringPoolL();
-    CreateAttributeFieldPtrsL();
-    
-    RArray<TPtrC8> array;
-    
-    TInt length = aText.Length();
-    if ( aText[aText.Length() - 1] == KLFChar )
-        {
-        if ( length > 1 && aText[aText.Length() - 2] == KCRChar )
-            {
-            length--;
-            }
-        length--;
-        }  
-    TPtrC8 restValue( aText.Left( length ));
-    
-    __ASSERT_ALWAYS(SdpUtil::IsByteString(restValue) 
-            || SdpUtil::IsToken(restValue)
-            || SdpUtil::IsValidChars(KEqualStr, restValue),
-            User::Leave(KErrSdpCodecAttributeField));
-    
-    array = SdpUtil::GetElementsFromLineL( aText, KErrSdpCodecAttributeField );
-    CleanupClosePushL( array );
-
-    RStringF origHeader =  iPool.StringF( SdpCodecStringConstants::EAttribute, 
-                                          SdpCodecStringConstants::Table );
-    
-    // We need to have at least two tokens (and this should be always the case,
-    // unless TSdpUtil::GetElementsFromLineL() gets modified)
-    __ASSERT_ALWAYS( origHeader.DesC().Compare( array[KHeaderIndex] ) == 0
-                    && array.Count() >= KMinAttributeNum,
-        User::Leave( KErrSdpCodecAttributeField ) );
-        
-    if ( array[KAttributeIndex].Locate( KColonChar ) == KErrNotFound )
-        {
-        // For property attributes exactly two attributes are needed
-        __ASSERT_ALWAYS( array.Count() == KMinAttributeNum,
-            User::Leave( KErrSdpCodecAttributeField ));
-
-        FormatProperyAttributeL( array[KAttributeIndex] );  
-        }
-    else
-        {    
-        HBufC8* attribute = NULL;
-        HBufC8* value = NULL;             
-        CreateAttributeAndValueStringsLC( array, attribute, value );
-        FormatValueAttributeL( *attribute, *value );
-        CleanupStack::PopAndDestroy( 2 );   // attribute, value
-        }
-
-    CleanupStack::PopAndDestroy();  // array
-
-    __TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::ConstructL( RStringF aAttribute, 
-                                    const TDesC8& aValue )
-	{	
-    iPool = SdpCodecStringPool::StringPoolL();
-    CreateAttributeFieldPtrsL();
-
-    TBool property( EFalse );
-    for ( TInt i( 0 ); i < KPropertyStringNum && !property; i++ )
-        {
-        if ( aAttribute == 
-             iPool.StringF( KValidPropertyStrings[i], 
-                            SdpCodecStringConstants::Table ) )
-            {
-            property = ETrue;
-            }
-        }
-
-    if ( property || aValue.Length() == 0)
-        {
-        // For property attributes, no value is valid value
-        __ASSERT_ALWAYS( aValue.Length() == 0, 
-            User::Leave( KErrSdpCodecAttributeField ));
-                   
-        FormatProperyAttributeL( aAttribute.DesC() );  
-        }
-    else
-        {   
-        FormatValueAttributeL( aAttribute.DesC(), aValue );        
-        }        
-
-    __TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::DecodeL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpAttributeField* CSdpAttributeField::DecodeL( const TDesC8& aText )
-	{
-	CSdpAttributeField* obj = DecodeLC( aText );
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::DecodeLC
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpAttributeField* CSdpAttributeField::DecodeLC( 
-    const TDesC8& aText )
-	{
-	CSdpAttributeField* obj = new ( ELeave ) CSdpAttributeField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL( aText );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::NewL
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpAttributeField* CSdpAttributeField::NewL( RStringF aAttribute, 
-                                                    const TDesC8& aValue )
-	{
-	CSdpAttributeField* obj = NewLC( aAttribute, aValue );
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::NewLC
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpAttributeField* CSdpAttributeField::NewLC( RStringF aAttribute,
-                                                        const TDesC8& aValue )
-	{
-	CSdpAttributeField* obj = new ( ELeave ) CSdpAttributeField;
-	CleanupStack::PushL(obj);
-	obj->ConstructL( aAttribute, aValue );
-	return obj;
-	}
-
-// Destructor
-EXPORT_C CSdpAttributeField::~CSdpAttributeField()
-	{    
-    iAttribute.Close();
-    CSdpAttributeFieldPtrs* tmp = 
-        reinterpret_cast< CSdpAttributeFieldPtrs* >( iValue ); 
-	delete tmp;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::EncodeL
-// Encodes a string into valid output string format
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpAttributeField::EncodeL( RWriteStream& aStream ) const
-	{
-	__TEST_INVARIANT;
-    
-    RStringF header = iPool.StringF( SdpCodecStringConstants::EAttribute, 
-                                     SdpCodecStringConstants::Table );
-    aStream.WriteL( header.DesC() );
-    aStream.WriteL( iAttribute.DesC() );
-    TPtrC8 value( AttributeFieldPtrs().Value() );
-    if ( value.Length() > 0 )
-        {
-        aStream.WriteL( KColonStr );
-        aStream.WriteL( value );
-        }
-    aStream.WriteL( KCRLFStr );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CloneL
-// Clones an object and returns the new attribute field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpAttributeField * CSdpAttributeField::CloneL() const
-	{
-	__TEST_INVARIANT;
-
-    CSdpAttributeField* obj = 
-        CSdpAttributeField::NewL( iAttribute, AttributeFieldPtrs().Value() );
-
-	__ASSERT_DEBUG( *this == *obj, 
-                    User::Panic(KSdpCodecPanicCat, KSdpCodecPanicInternal) );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::operator==
-// Checks if the two attribute fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpAttributeField::operator== (
-    const CSdpAttributeField& aObj ) const
-	{
-	__TEST_INVARIANT;
-
-    return ( iAttribute == aObj.Attribute() && 
-             AttributeFieldPtrs().Value().CompareF( aObj.Value() ) == 0 );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::Attribute
-// Returns attribute part of attribute field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpAttributeField::Attribute() const
-	{
-    __TEST_INVARIANT;
-    return iAttribute;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::Value
-// Returns value part of attribute field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpAttributeField::Value() const
-	{
-    __TEST_INVARIANT;
-    
-    return AttributeFieldPtrs().Value();
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::SetL
-// Sets new attribute field values
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpAttributeField::SetL( RStringF aAttribute, 
-                                        const TDesC8& aValue )
-	{
-    __TEST_INVARIANT;
-
-    ConstructL( aAttribute, aValue ); 
-
-    __TEST_INVARIANT;  
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::AssignTo
-// Assigns attribute to a format attribute
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpAttributeField::AssignTo(
-    const CSdpFmtAttributeField& aFmtAttribute)
-	{
-	AttributeFieldPtrs().SetFmtAttribute(&aFmtAttribute);
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::BelongsTo
-// Check if the attribute field belongs to the format attribute
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpAttributeField::BelongsTo(
-    const CSdpFmtAttributeField& aFmtAttribute) const
-	{
-	return ( AttributeFieldPtrs().FmtAttribute() == &aFmtAttribute );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::ExternalizeL( RWriteStream& aStream ) const
-	{
-    // Attribute
-    aStream.WriteUint32L( iAttribute.DesC().Length() );
-    aStream.WriteL( iAttribute.DesC() );
-    // Value
-    TPtrC8 value( AttributeFieldPtrs().Value() );
-    aStream.WriteUint32L( value.Length() );
-    if ( value.Length() > 0 )
-        {
-        aStream.WriteL( value, value.Length() );
-        }
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpAttributeField* CSdpAttributeField::InternalizeL( RReadStream& aStream )
-	{
-    RStringPool pool = SdpCodecStringPool::StringPoolL();
-
-	// Attribute
-    HBufC8* tmpBuf2;
-    TUint32 length = aStream.ReadUint32L();
-    HBufC8* tmpBuf = HBufC8::NewLC( length );
-    TPtr8 ptr( tmpBuf->Des() );
-    aStream.ReadL( ptr, length ); 
-    RStringF attribute = pool.OpenFStringL( ptr );
-    CleanupClosePushL( attribute );
-
-    length = aStream.ReadUint32L();
-    if ( length > 0 )
-        {
-        tmpBuf2 = HBufC8::NewLC( length );
-        TPtr8 ptr2( tmpBuf2->Des() );
-        aStream.ReadL( ptr2, length );
-        }
-    else
-        {
-        tmpBuf2 = KNullDesC8().AllocLC();
-        }
-
-    CSdpAttributeField* obj = CSdpAttributeField::NewL( attribute, *tmpBuf2 );
-    CleanupStack::PopAndDestroy( 3 );  // attribute, tmpBuf, tmpBuf2
-
-    return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::FormatPropertyAttributeL
-// Formats and initializes class to be a property attribute
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::FormatProperyAttributeL( const TDesC8& aAttribute )
-    {
-    __ASSERT_ALWAYS( SdpUtil::IsToken( aAttribute ), 
-        User::Leave( KErrSdpCodecAttributeField ));
-
-    TBool found( EFalse );
-    for ( TInt i( 0 ); i < KPropertyStringNum && !found; i++ )
-        {
-        RStringF attrString = 
-            iPool.StringF( KValidPropertyStrings[i], 
-                        SdpCodecStringConstants::Table );
-
-        if ( attrString.DesC().CompareF( aAttribute ) == 0 )
-            {
-            AttributeFieldPtrs().SetValueL( KNullDesC8 );
-            
-            iAttribute.Close();           
-            iAttribute = attrString.Copy();            
-            iPropertyAttribute = ETrue;            
-
-            found = ETrue;
-            }                                       
-        }
-
-    if ( !found )
-        {
-        HBufC8* tempValue = KNullDesC8().AllocLC();
-        SetNotPredefinedAttributeL(aAttribute, *tempValue);
-        CleanupStack::PopAndDestroy(); // tempValue
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::FormatValueAttributeL
-// Formats and initializes class to be a value attribute
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::FormatValueAttributeL( const TDesC8& aAttribute,
-                                                const TDesC8& aValue )
-    {
-    TBool found( EFalse ); 
-
-    __ASSERT_ALWAYS( SdpUtil::IsToken( aAttribute ) 
-                && SdpUtil::IsByteString( aValue ),
-            User::Leave( KErrSdpCodecAttributeField ) );
-
-    TInt i = 0;
-    for( i = 0; i < KPropertyStringNum && !found; i++)
-        {
-        RStringF attrString = 
-            iPool.StringF( KValidPropertyStrings[i], 
-                        SdpCodecStringConstants::Table );
-
-        if ( attrString.DesC().CompareF( aAttribute ) == 0 )
-            {
-            //found = ETrue;
-            User::Leave(KErrSdpCodecAttributeField);
-            }
-        }
-    
-    for ( i = 0; i < KValueStringNum && !found; i++ )
-        {
-        RStringF attrString = 
-            iPool.StringF( KValidValueStrings[i], 
-                        SdpCodecStringConstants::Table );
-
-        if ( attrString.DesC().CompareF( aAttribute ) == 0 )
-            {
-            VerifyValueAttributeL( KValidValueStrings[i], aValue );
-            iAttribute.Close();                          
-            iAttribute = attrString.Copy();            
-            found = ETrue;
-            }
-        }
-
-    if ( !found )
-        {
-        SetNotPredefinedAttributeL(aAttribute, aValue);
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::VerifyValueAttributeL
-// Verifies that value given to the attribute is valid
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::VerifyValueAttributeL( 
-    SdpCodecStringConstants::TStrings aString,
-    const TDesC8& aValue )
-    {
-    TUint str( aString );
-    switch ( str )
-        {
-        case SdpCodecStringConstants::EAttributeCat:
-        case SdpCodecStringConstants::EAttributeType:    
-        case SdpCodecStringConstants::EAttributeCharset: 
-        case SdpCodecStringConstants::EAttributeEtag:
-            __ASSERT_ALWAYS( aValue.Length() > 0 
-                && aValue.Locate( KSPChar ) == KErrNotFound,
-            User::Leave( KErrSdpCodecAttributeField ) );
-            break;
-
-        case SdpCodecStringConstants::EAttributeKeywds:
-        case SdpCodecStringConstants::EAttributeTool:      
-            __ASSERT_ALWAYS( aValue.Length() > 0, 
-                 User::Leave( KErrSdpCodecAttributeField ) );
-            break;
-
-        case SdpCodecStringConstants::EAttributePtime:
-        case SdpCodecStringConstants::EAttributeMaxptime:
-        case SdpCodecStringConstants::EAttributeQuality:
-            __ASSERT_ALWAYS( SdpUtil::IsDigit( aValue ),
-                User::Leave( KErrSdpCodecAttributeField ) );
-            break;
-
-        case SdpCodecStringConstants::EAttributeOrient:
-            CheckValidOrientL( aValue );
-            break;
-      
-        case SdpCodecStringConstants::EAttributeSdplang:
-        case SdpCodecStringConstants::EAttributeLang:
-            CheckValidLangStrL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeFramerate:
-            CheckValidFrameRateL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeControl:
-            CheckValidControlL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeMid:
-            if (SdpUtil::IsToken( aValue ) == EFalse)
-                {
-                User::Leave( KErrSdpCodecAttributeField );
-                }
-            break;
-
-        case SdpCodecStringConstants::EAttributeGroup:
-            CheckValidGroupL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeCurr:
-            CheckValidCurrAndConfL( aValue );
-            break;
-        
-        case SdpCodecStringConstants::EAttributeDes:
-            CheckValidDesL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeConf:
-            CheckValidCurrAndConfL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeRange:
-            CheckValidRangeL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeRtpmap:
-            CheckValidRtpmapL( aValue );
-            break;
-
-        case SdpCodecStringConstants::EAttributeFmtp:
-            CheckValidFmtpL( aValue );
-            break;
-
-        default:
-            User::Leave( KErrSdpCodecAttributeField );
-            break;
-        }
-
-    AttributeFieldPtrs().SetValueL( aValue );
-    iPropertyAttribute = EFalse;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CreateAttributeAndValueStringsLC
-// Forms attribute and value strings
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CreateAttributeAndValueStringsLC( 
-    RArray<TPtrC8>& aArray,
-    HBufC8*& aAttribute,
-    HBufC8*& aValue )
-    {
-    TInt pos = aArray[KAttributeIndex].Locate( KColonChar );
-    __ASSERT_ALWAYS( pos > 0, User::Leave( KErrSdpCodecAttributeField ) );
-
-    aAttribute = HBufC8::NewLC( pos );
-    aAttribute->Des().Copy( aArray[KAttributeIndex].Left( pos ) );
-
-    // Find out the total length of value string
-    TPtrC8 initialValue( aArray[KAttributeIndex].Right( 
-                            aArray[KAttributeIndex].Length() - pos - 1 ) );
-
-    TInt valueLength( initialValue.Length() );    
-    for ( TInt i( KAttributeIndex + 1 ); i < aArray.Count(); i++ )
-        {
-        valueLength += KSPStr().Length();
-        valueLength += aArray[i].Length();
-        }
-
-    // Copy the value string to the value buffer
-    aValue = HBufC8::NewLC( valueLength );
-    aValue->Des().Append( initialValue );
-    for ( TInt j( KAttributeIndex + 1 ); j < aArray.Count(); j++ )
-        {
-        aValue->Des().Append( KSPStr );
-        aValue->Des().Append( aArray[j] ) ;
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidOrientL
-// Checks if value is valid orient value
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CheckValidOrientL( const TDesC8& aValue )
-    {    
-    TBool found( EFalse );
-    for ( TInt i( 0 ); i < KValidOrientStringNum && !found; i++ )
-        {
-        TPtrC8 strPtr( KOrientStrings[i] );
-        if ( strPtr.CompareF( aValue ) == 0 )
-            {
-            found = ETrue;
-            } 
-        }
-
-    __ASSERT_ALWAYS(found, User::Leave( KErrSdpCodecAttributeField ) );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidLangStrL
-// Checks if value is valid language tag
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CheckValidLangStrL( const TDesC8& aValue )
-    {
-    // Language-Tag = Primary-subtag *( "-" Subtag )
-    // Primary-subtag = 1*8ALPHA
-    // Subtag = 1*8(ALPHA / DIGIT)
-    TInt primarySubtagPos = aValue.Locate( KHyphenChar );
-
-    if ( primarySubtagPos > KMaxPrimarySubtagLength )
-        {
-        User::Leave( KErrSdpCodecAttributeField );
-        }    
-
-    TInt subtagPos( primarySubtagPos );    
-    TPtrC8 ptr( aValue.Right( aValue.Length() - subtagPos - 1 ) );
-    // Check all subtags
-    while ( subtagPos != ptr.Length() )
-        {
-        subtagPos = ptr.Locate( KHyphenChar );
-            
-        if ( subtagPos == KErrNotFound )
-            {
-            subtagPos = ptr.Length();
-            }
-      
-        // Check length
-        __ASSERT_ALWAYS( subtagPos > 0 && subtagPos < KMaxSubtagLength,
-            User::Leave( KErrSdpCodecAttributeField ) );
-   
-        if ( subtagPos != ptr.Length() )
-            {
-            ptr.Set( aValue.Right( ptr.Length() - subtagPos - 1 ) );
-            }
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidFrameRateL
-// Checks if value is valid framerate value
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CheckValidFrameRateL( const TDesC8& aValue )
-    {
-    TInt dotFound = 0;
-    // There can be one dot and digits
-    for ( TInt i( 0 ); i < aValue.Length(); i++ )
-        {
-        __ASSERT_ALWAYS((aValue[i] == KDotChar || TChar( aValue[i] ).IsDigit())
-            && dotFound <= 1,
-            User::Leave( KErrSdpCodecAttributeField ));
-                        
-        if ( aValue[i] == KDotChar )
-            {
-            dotFound++;
-            }
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidControlL
-// Checks if value is valid uri for group attribute
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::CheckValidControlL( const TDesC8& aValue )
-    {
-    TUriParser8 parser;
-	User::LeaveIfError(parser.Parse(aValue));
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidGroupL
-// Checks if value is valid value for group attribute
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::CheckValidGroupL( const TDesC8& aValue )
-    {
-   ValidValueInListL(KValidGroupSemanticsNum, KGroupSemantics, aValue);
-    TInt pos = aValue.Locate( KSPChar );
-    TPtrC8 ptr(aValue);
-
-    while ( pos != KErrNotFound)
-        {
-        ptr.Set( ptr.Right( ptr.Length() - pos - 1 ) );
-        pos = ptr.Locate( KSPChar );           
-        }    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidDesL
-// Checks if value is valid value for des attribute
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::CheckValidDesL( const TDesC8& aValue )
-    {
-    TInt pos = aValue.Locate( KSPChar );
-    __ASSERT_ALWAYS(pos > 0, User::Leave( KErrSdpCodecAttributeField ));
-    TPtrC8 ptr(aValue.Left(pos));
-    __ASSERT_ALWAYS( SdpUtil::IsToken(ptr), 
-        User::Leave( KErrSdpCodecAttributeField ) );
-        
-    ptr.Set(aValue.Right( aValue.Length() - pos - 1 ));
-    pos = ptr.Locate( KSPChar );
-    __ASSERT_ALWAYS(pos > 0, User::Leave( KErrSdpCodecAttributeField ));
-    ValidValueInListL(KValidStrengthTagsNum, KStrengthTags, ptr.Left( pos ));
-
-    ptr.Set(ptr.Right( ptr.Length() - pos - 1 ));
-    pos = ptr.Locate( KSPChar );
-    __ASSERT_ALWAYS(pos > 0, User::Leave( KErrSdpCodecAttributeField ));
-    ValidValueInListL(KValidStatusTypeNum, KStatusTypes, ptr.Left( pos ));
-    
-    ptr.Set(ptr.Right( ptr.Length() - pos - 1 ));
-    __ASSERT_ALWAYS(ptr.Locate( KSPChar ) == KErrNotFound, 
-                    User::Leave( KErrSdpCodecAttributeField ));
-    ValidValueInListL(KValidDirectionTagsNum, KDirectionTags, ptr);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidCurrAndConfL
-// Checks if value is valid value for curr and conf attribute
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::CheckValidCurrAndConfL( const TDesC8& aValue )
-    {
-    TInt pos = aValue.Locate( KSPChar );
-    __ASSERT_ALWAYS(pos > 0, User::Leave( KErrSdpCodecAttributeField ));
-    TPtrC8 ptr(aValue.Left(pos));
-    __ASSERT_ALWAYS( SdpUtil::IsToken(ptr), 
-        User::Leave( KErrSdpCodecAttributeField ) );
-    
-    ptr.Set(aValue.Right( aValue.Length() - pos - 1 ));
-    pos = ptr.Locate( KSPChar );
-    __ASSERT_ALWAYS(pos > 0, User::Leave( KErrSdpCodecAttributeField ));
-    ValidValueInListL(KValidStatusTypeNum, KStatusTypes, ptr.Left( pos ));
-
-    ptr.Set(ptr.Right( ptr.Length() - pos - 1 ));
-    __ASSERT_ALWAYS(ptr.Locate( KSPChar ) == KErrNotFound, 
-                    User::Leave( KErrSdpCodecAttributeField ));
-    ValidValueInListL(KValidDirectionTagsNum, KDirectionTags, ptr);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::ValidValueInListL
-// Checks if value is included in predefined values list
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::ValidValueInListL( TInt aItemsCount, 
-                                            const TText8* const aValuesList[],
-                                            const TDesC8& aValue )
-    {
-    TBool found( EFalse );
-    TInt pos = 0;
-    for ( TInt i( 0 ); i < aItemsCount && !found; i++ )
-        {
-        TPtrC8 strPtr( aValuesList[i] );
-        pos = aValue.Find(strPtr); 
-        if ( pos != KErrNotFound && pos >= 0 )
-            {
-            found = ETrue;
-            } 
-        }
-
-    __ASSERT_ALWAYS(found, User::Leave( KErrSdpCodecAttributeField ));
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidCRangefL
-// Checks if precondition type value is valid value
-// -----------------------------------------------------------------------------
-//      
-void CSdpAttributeField::CheckValidRangeL( const TDesC8& aValue )
-    {
-    TInt found = aValue.Find(KEqualStr);
-    __ASSERT_ALWAYS(found != KErrNotFound && found > 0, User::Leave( KErrSdpCodecAttributeField ));
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidRtpmapL
-// Checks if value is valid rtpmap value
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CheckValidRtpmapL( const TDesC8& aValue )
-    {
-    // If this doesn't leave, then the value is OK
-    TSdpRtpmapValue::DecodeL( aValue );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CheckValidFmtpL
-// Checks if value is valid format value
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::CheckValidFmtpL( const TDesC8& aValue )
-    {
-    __ASSERT_ALWAYS(SdpUtil::IsByteString(aValue) && aValue.Length() > 0, 
-                User::Leave( KErrSdpCodecMediaAttributeField ));
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::SetNotPredefinedAttributeL
-// Sets attribute and value. Attribute is not one of predefined ones.
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeField::SetNotPredefinedAttributeL(const TDesC8& aAttribute, 
-                                                    const TDesC8& aValue)
-    {
-    iAttribute.Close();
-    iAttribute = iPool.OpenFStringL(aAttribute);
-    AttributeFieldPtrs().SetValueL( aValue );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::IsFmtAttribute
-// Check if the attribute field belongs to any format attribute
-// -----------------------------------------------------------------------------
-//
-TBool CSdpAttributeField::IsFmtAttribute()
-	{
-	if ( AttributeFieldPtrs().FmtAttribute() )
-		{
-		return ETrue;
-		}
-	return EFalse;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::CreateAttributeFieldPtrsL
-// -----------------------------------------------------------------------------
-//	
-void CSdpAttributeField::CreateAttributeFieldPtrsL()
-    {
-    CSdpAttributeFieldPtrs* newObj = CSdpAttributeFieldPtrs::NewL();
-    CSdpAttributeFieldPtrs* oldObj = 
-        reinterpret_cast< CSdpAttributeFieldPtrs* >( iValue );
-    delete oldObj;
-    iValue = reinterpret_cast< HBufC8* >( newObj );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::AttributeFieldPtrs
-// -----------------------------------------------------------------------------
-//  
-inline CSdpAttributeFieldPtrs& CSdpAttributeField::AttributeFieldPtrs()
-    {
-    return *( reinterpret_cast< CSdpAttributeFieldPtrs* >( iValue ) );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeField::AttributeFieldPtrs
-// -----------------------------------------------------------------------------
-//  
-inline const CSdpAttributeFieldPtrs& 
-CSdpAttributeField::AttributeFieldPtrs() const
-    {
-    return *( reinterpret_cast< CSdpAttributeFieldPtrs* >( iValue ) );
-    }
-
-// For DEBUG builds
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//	
-void CSdpAttributeField::__DbgTestInvariant() const
-	{    
-	TBool invariant = ( 
-        SdpUtil::IsToken( iAttribute.DesC() ) 
-		&& iValue != 0 );
-
-	if (!invariant)
-		User::Invariant();
-	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpattributefieldptrs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpAttributeFieldPtrs.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include "sdpattributefieldptrs.h"
-#include "sdpfmtattributefield.h"
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::NewL
-// -----------------------------------------------------------------------------
-//
-CSdpAttributeFieldPtrs* CSdpAttributeFieldPtrs::NewL()
-	{
-	CSdpAttributeFieldPtrs* self = new ( ELeave ) CSdpAttributeFieldPtrs;
-	CleanupStack::PushL( self );
-	self->ConstructL();
-	CleanupStack::Pop( self );
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::CSdpAttributeFieldPtrs
-// ----------------------------------------------------------------------------
-//
-CSdpAttributeFieldPtrs::CSdpAttributeFieldPtrs()
-	{
-	}	
-
-// ----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpAttributeFieldPtrs::ConstructL()
-	{
-	iValue = KNullDesC8().AllocL();
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::~CSdpAttributeFieldPtrs
-// ----------------------------------------------------------------------------
-//
-CSdpAttributeFieldPtrs::~CSdpAttributeFieldPtrs()
-	{
-	delete iValue;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::SetValueL
-// -----------------------------------------------------------------------------
-// 
-void CSdpAttributeFieldPtrs::SetValueL( const TDesC8& aValue )
-    {
-    HBufC8* tmp = aValue.AllocL();
-    delete iValue;
-    iValue = tmp;
-    }
-        
-// -----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::Value
-// -----------------------------------------------------------------------------
-//
-const TDesC8& CSdpAttributeFieldPtrs::Value() const
-    {
-    return *iValue;
-    }
-	
-// -----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::SetFmtAttribute
-// -----------------------------------------------------------------------------
-//
-void CSdpAttributeFieldPtrs::SetFmtAttribute( 
-    const CSdpFmtAttributeField* aFmtAttribute )
-    {
-    iFmtAttributeField = aFmtAttribute;
-    }
-	
-// -----------------------------------------------------------------------------
-// CSdpAttributeFieldPtrs::FmtAttribute
-// -----------------------------------------------------------------------------
-//
-const CSdpFmtAttributeField* CSdpAttributeFieldPtrs::FmtAttribute() const
-    {
-    return iFmtAttributeField;
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpbandwidthfield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,316 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpBandwidthField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include "sdpbandwidthfield.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "sdpcodecstringconstants.h"
-#include "sdputil.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecstringpool.h"
-
-// LOCAL CONSTANTS
-const TInt KLines = 1;
-const TInt KElements = 3;
-const TUint KMaxTInt64Digits = 30;
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::DecodeL
-// Decodes bandwidth field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField* CSdpBandwidthField::DecodeL(const TDesC8& aText)
-	{
-	CSdpBandwidthField* obj = DecodeLC(aText);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::DecodeLC
-// Decodes bandwidth field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField* CSdpBandwidthField::DecodeLC(const TDesC8& aText)
-	{
-    CSdpBandwidthField* obj = new (ELeave) CSdpBandwidthField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aText);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField* CSdpBandwidthField::NewL(RStringF aModifier, 
-                                                      TUint32 aValue)
-	{
-	CSdpBandwidthField* obj = NewLC(aModifier, aValue);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField* CSdpBandwidthField::NewLC(RStringF aModifier, 
-                                                       TUint32 aValue)
-	{
-	CSdpBandwidthField* obj = new (ELeave) CSdpBandwidthField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aModifier, aValue);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::~CSdpBandwidthField
-// Destructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField::~CSdpBandwidthField()
-	{
-    iModifier.Close();
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpBandwidthField::EncodeL(RWriteStream& aStream) const
-	{
-    RStringF header = iModifier.Pool().StringF( 
-                                        SdpCodecStringConstants::EBandwidth,
-                                        SdpCodecStringConstants::Table );
-    aStream.WriteL( header.DesC() );
-
-    aStream.WriteL( iModifier.DesC() );
-    aStream.WriteL( KColonStr );
-
-    TBuf8<KMaxTInt64Digits> number;
-    number.Format( _L8("%u"), iValue );
-	aStream.WriteL( number );
-
-    aStream.WriteL( KCRLFStr );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::CloneL
-// Creates an exact copy of the bandwidth field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpBandwidthField * CSdpBandwidthField::CloneL() const
-	{
-	CSdpBandwidthField* obj = NewL(iModifier, iValue);
-	__ASSERT_DEBUG(*this == *obj, User::Panic(KSdpCodecPanicCat, 
-                                            KSdpCodecPanicInternal));
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::operator ==
-// Checks if two bandwidth fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpBandwidthField::operator == (const CSdpBandwidthField& aObj)
-const
-	{
-	return iModifier == aObj.iModifier && iValue == aObj.iValue;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::Modifier
-// Returns bandwidth modifier
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpBandwidthField::Modifier() const
-	{
-	return iModifier;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::SetModifier
-// Set new bandwidth modifier
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpBandwidthField::SetModifier(RStringF aModifier)
-	{
-    iModifier.Close();
-	iModifier = aModifier.Copy();
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::Value
-// Returns bandwidth value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TUint32 CSdpBandwidthField::Value() const
-	{
-	return iValue;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::SetValue
-// Set new bandwidth value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpBandwidthField::SetValue(TUint32 aValue)
-	{
-	iValue = aValue;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpBandwidthField::ExternalizeL(RWriteStream& aStream) const
-	{
-    aStream.WriteUint32L(iModifier.DesC().Length());
-    aStream.WriteL(iModifier.DesC(), iModifier.DesC().Length());
-    aStream.WriteUint32L(iValue);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpBandwidthField* CSdpBandwidthField::InternalizeL(RReadStream& aStream)
-	{
-    TUint32 length = aStream.ReadUint32L();
-    HBufC8* modifier = HBufC8::NewLC(length);
-    TPtr8 ptr(modifier->Des());
-    aStream.ReadL(ptr, length); 
-
-    TUint32 value = aStream.ReadUint32L();
-
-   	CSdpBandwidthField* obj = new (ELeave) CSdpBandwidthField();
-    CleanupStack::PushL(obj);
-    obj->ConstructL(*modifier, value);
-
-    CleanupStack::PopAndDestroy(); // modifier
-    CleanupStack::Pop(obj);
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::CSdpBandwidthField
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CSdpBandwidthField::CSdpBandwidthField()
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpBandwidthField::ConstructL(const TDesC8& aText)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-	RArray <TPtrC8> lines;
-    lines = SdpUtil::DivideToLinesL(aText, KErrSdpCodecBandwidthField);
-    CleanupClosePushL(lines);
-    RArray<TPtrC8> bwArray;
-    bwArray = SdpUtil::GetElementsFromLineL(lines[0], KColonChar, 
-                                            KErrSdpCodecBandwidthField);
-    CleanupClosePushL(bwArray);
-    const TDesC8& bwName = iStringPool.StringF(
-                                        SdpCodecStringConstants::EBandwidth,
-                                        SdpCodecStringConstants::Table).DesC();       
-
-    __ASSERT_ALWAYS(lines.Count() == KLines
-                    && bwArray.Count() == KElements
-                    && bwArray[0].Find(bwName) != KErrNotFound,
-                    User::Leave(KErrSdpCodecBandwidthField));
-
-    CopyModifierL(bwArray[1]);
-    TLex8 lexer(bwArray[2]);
-    lexer.Val(iValue, EDecimal);
-    
-    CleanupStack::PopAndDestroy(2); //lines, bwArray
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpBandwidthField::ConstructL(RStringF aModifier, TUint32 aValue)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-	iModifier = aModifier.Copy();
-    iValue = aValue;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpBandwidthField::ConstructL(const TDesC8& aModifier, TUint32 aValue)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-	CopyModifierL(aModifier);
-    iValue = aValue;
-	}
-
-
-// -----------------------------------------------------------------------------
-// CSdpBandwidthField::CopyModifierL
-// Copies modifier to object after check
-// -----------------------------------------------------------------------------
-//
-void CSdpBandwidthField::CopyModifierL(const TDesC8& aModifier)
-    {
-    RStringF modifierCT = iStringPool.StringF(
-                                        SdpCodecStringConstants::EModifierCT,
-                                        SdpCodecStringConstants::Table );
-    RStringF modifierAS = iStringPool.StringF( 
-                                        SdpCodecStringConstants::EModifierAS,
-                                        SdpCodecStringConstants::Table );
-    
-    if (modifierCT.DesC().CompareF(aModifier) == 0)
-        {
-        iModifier.Close();
-        iModifier = modifierCT.Copy();
-        }
-    else if ( modifierAS.DesC().CompareF(aModifier) == 0)
-        {
-        iModifier.Close();
-        iModifier = modifierAS.Copy();
-        }
-    else
-        {
-        iModifier.Close();
-        iModifier = iStringPool.OpenFStringL(aModifier);
-        }
-    }
-
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpcodecparseutil.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,763 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpCodecParseUtil.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include "sdpcodecparseutil.h"
-#include "sdpcodecstringconstants.h"
-#include "_sdpdefs.h"
-#include <s32strm.h>
-#include "sdputil.h"
-#include "sdptimefield.h"
-#include "sdpbandwidthfield.h"
-#include "sdpattributefield.h"
-#include "sdpmediafield.h"
-#include "sdpconnectionfield.h"
-#include "sdpkeyfield.h"
-#include "sdporiginfield.h"
-#include "sdprepeatfield.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecconstants.h"
-#include "uri8.h"
-#include "uriutilscommon.h"
-#include "badesca.h"
-
-// ----------------------------------------------------------------------------
-// CSdpCodecParseUtil::NewL
-// ----------------------------------------------------------------------------
-//
-CSdpCodecParseUtil* 
-CSdpCodecParseUtil::NewL(RStringPool aPool, const TDesC8& aValue,TInt aErrCode)
-	{
-	CSdpCodecParseUtil* obj = CSdpCodecParseUtil::NewLC(aPool, aValue,aErrCode);
-	CleanupStack::Pop();//obj
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecParseUtil::NewLC
-// ----------------------------------------------------------------------------
-//
-CSdpCodecParseUtil* 
-CSdpCodecParseUtil::NewLC(RStringPool aPool, const TDesC8& aValue,TInt aErrCode)
-	{
-	CSdpCodecParseUtil* obj = new(ELeave)CSdpCodecParseUtil;
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aPool, aValue,aErrCode);
-	return obj;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::FieldLineValueL
-// ---------------------------------------------------------------------------
-//
-TPtrC8 CSdpCodecParseUtil::FieldLineValueL(const TDesC8& aValue)
-	{
-	__ASSERT_ALWAYS (aValue.Length() > 0, User::Leave(KErrArgument));
-	TPtrC8 lineStartBuf(aValue.Mid(2));
-	TInt lineEndPosition = lineStartBuf.Locate('\r');
-	if(lineEndPosition == KErrNotFound)
-		{
-		lineEndPosition = lineStartBuf.Locate('\n');
-		}
-	return lineStartBuf.Left(lineEndPosition);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::CheckFieldNameL
-// ---------------------------------------------------------------------------
-//
-RArray<TPtrC8> CSdpCodecParseUtil::CheckFieldNameL(RStringPool aPool,
-												  TInt aIndex, 
-												  const TDesC8& aValue,
-												  TInt aErrCode)
-	{
-	if(!aValue.Length())
-			{
-			User::Leave(KErrArgument);
-			}
-	RArray<TPtrC8> elementArray = SdpUtil::GetElementsFromLineL(aValue, 
-																aErrCode);
-	CleanupClosePushL(elementArray);
-	RStringF name = aPool.OpenFStringL(elementArray[0]);
-	CleanupClosePushL(name);
-	if(name!=(aPool.StringF(aIndex, SdpCodecStringConstants::Table)))
-		{
-		User::Leave(KErrArgument);//parsererror
-		}
-	CleanupStack::Pop(2);//name, elementArray
-	name.Close();
-	return elementArray;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::CheckOptionalFieldNameL
-// ---------------------------------------------------------------------------
-//
-RArray<TPtrC8> CSdpCodecParseUtil::CheckOptionalFieldNameL(RStringPool aPool, 
-												 TInt aIndex, 
-												 const TDesC8& aValue,
-												  TInt aErrCode)
-	{
-	RArray<TPtrC8> elementArray;
-	elementArray.Reset();
-	if(aValue.Length())
-		{
-		elementArray = SdpUtil::GetElementsFromLineL(aValue, aErrCode);
-	    CleanupClosePushL(elementArray);
-		RStringF name = aPool.OpenFStringL(elementArray[0]);
-		CleanupClosePushL(name);
-		if(name!=(aPool.StringF(aIndex, SdpCodecStringConstants::Table)))
-			{
-			elementArray.Reset();
-			}
-		CleanupStack::Pop(2);//name, elementArray
-		name.Close();
-		}
-	return elementArray;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecParseUtil::CSdpCodecParseUtil
-// ----------------------------------------------------------------------------
-//
-CSdpCodecParseUtil::CSdpCodecParseUtil()
-	{
-
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecParseUtil::~CSdpCodecParseUtil
-// ----------------------------------------------------------------------------
-//
-CSdpCodecParseUtil::~CSdpCodecParseUtil()
-	{
-	iLineArray.Reset();
-	iElementArray.Reset();
-	if(iTimeFields)
-		{
-		iTimeFields->ResetAndDestroy();
-		delete iTimeFields;
-		}
-	
-	if(iBandwidthFields)
-		{
-		iBandwidthFields->ResetAndDestroy();
-		delete iBandwidthFields;
-		}
-	
-	if(iAttributeFields)
-		{
-		iAttributeFields->ResetAndDestroy();
-		delete iAttributeFields;
-		}
-	
-	if(iMediaFields)
-		{
-		iMediaFields->ResetAndDestroy();
-		delete iMediaFields;
-		}
-
-	if(iConnectionFields)
-		{
-		iConnectionFields->ResetAndDestroy();
-		delete iConnectionFields;
-		}
-
-	if(iEmailFields)
-		{
-		iEmailFields->Reset();
-		delete iEmailFields;
-		}
-
-	if(iPhoneFields)
-		{
-		iPhoneFields->Reset();
-		delete iPhoneFields;
-		}
-	delete iToken;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpCodecParseUtil::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpCodecParseUtil::ConstructL(RStringPool aPool, const TDesC8& aValue,
-									TInt aErrCode)
-	{
-	iPool = aPool;
-	iData.Set(aValue);
-	iToken = KNullDesC8().AllocL();
-	iEmailFields = new(ELeave)CDesC8ArraySeg(1);
-	iPhoneFields = new(ELeave)CDesC8ArraySeg(1);
-	iBandwidthFields = new(ELeave)RPointerArray<CSdpBandwidthField>;
-	iTimeFields = new(ELeave)RPointerArray<CSdpTimeField>;
-	iAttributeFields = new(ELeave)RPointerArray<CSdpAttributeField>;
-	iMediaFields = new(ELeave)RPointerArray<CSdpMediaField>;
-	iConnectionFields = new(ELeave)RPointerArray<CSdpConnectionField>;
-	iLineArray = SdpUtil::DivideToLinesL(aValue,aErrCode);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseSessionVersionL
-// ---------------------------------------------------------------------------
-//
-TUint CSdpCodecParseUtil::ParseSessionVersionL(TInt aErrCode)
-	{
-	TUint sdpVersion = 0;
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckFieldNameL(iPool,
-											SdpCodecStringConstants::EVersion,
-											iLineArray[0],aErrCode);
-		if(iElementArray.Count() > 1)
-			{
-			TLex8 lex(iElementArray[1]);
-			if(lex.Val(sdpVersion) == KErrNone)
-				{
-				iLineArray.Remove(0);
-				iElementArray.Reset();
-				}
-			else
-				{
-				User::Leave(KErrSdpCodecVersionField);
-				}
-			}
-		}
-	else
-		{
-		User::Leave(KErrSdpCodecVersionField);
-		}
-	return sdpVersion;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseSessionOwnerL
-// ---------------------------------------------------------------------------
-//
-CSdpOriginField* CSdpCodecParseUtil::ParseSessionOwnerL(TInt aErrCode)
-	{
-	CSdpOriginField* sdpOriginField = NULL;
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckFieldNameL(iPool,
-											SdpCodecStringConstants::EOrigin,
-											iLineArray[0],aErrCode);
-		sdpOriginField = 
-					CSdpOriginField::DecodeL(iLineArray[0]);
-		iElementArray.Reset();
-		iLineArray.Remove(0);
-		}
-	else
-		{
-		User::Leave(KErrSdpCodecOriginField);
-		}
-	return sdpOriginField;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseSessionNameL
-// ---------------------------------------------------------------------------
-//
-const TDesC8& CSdpCodecParseUtil::ParseSessionNameL(TInt aErrCode)
-	{
-	delete iToken;
-	iToken = 0;
-	iToken = KNullDesC8().AllocL();
-	if(iLineArray.Count())
-		{
-		if(iLineArray[0].Length() < 6 && 
-			(iLineArray[0].CompareF(_L8("s= \r\n")) == 0 ||
-			iLineArray[0].CompareF(_L8("s= \n")) == 0 ))
-			{
-			iLineArray.Remove(0);
-			delete iToken;
-			iToken = 0;
-			iToken = _L8(" ").AllocL();
-			return	*iToken;
-			}
-		iElementArray = CSdpCodecParseUtil::CheckFieldNameL(iPool,
-											SdpCodecStringConstants::ESession,
-											iLineArray[0],aErrCode);
-		__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-		User::Leave(KErrSdpCodecSessionField));
-		delete iToken;
-		iToken = 0;
-		iToken = (CSdpCodecParseUtil::FieldLineValueL(iLineArray[0])).AllocL();
-		iElementArray.Reset();
-		iLineArray.Remove(0);
-		}
-	else
-		{
-		User::Leave(KErrSdpCodecSessionField);
-		}
-	return *iToken;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseInformationL
-// ---------------------------------------------------------------------------
-//
-const TDesC8& CSdpCodecParseUtil::ParseInformationL(TInt aErrCode)
-	{
-	delete iToken;
-	iToken = 0;
-	iToken = KNullDesC8().AllocL();
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::EInfo,
-												iLineArray[0],aErrCode);
-
-		if(iElementArray.Count())
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-			User::Leave(KErrSdpCodecInfoField));
-			delete iToken;
-			iToken = 0;
-			iToken = 
-				(CSdpCodecParseUtil::FieldLineValueL(iLineArray[0])).AllocL();
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		}
-	return *iToken;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseUriL
-// ---------------------------------------------------------------------------
-//
-CUri8* CSdpCodecParseUtil::ParseUriL(TInt aErrCode)
-	{
-	CUri8* uri = 0;
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::EUri,
-												iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() == 2, 
-				User::Leave(KErrSdpCodecUriField));
-			TUriParser8 parser;
-			User::LeaveIfError(parser.Parse(iElementArray[1]));
-			uri = CUri8::NewL(parser);
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		}
-	return uri;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseEmailL
-// ---------------------------------------------------------------------------
-//
-CDesC8ArraySeg* CSdpCodecParseUtil::ParseEmailL(TInt aErrCode)
-	{
-	TBool endloop = EFalse;
-	while (iLineArray.Count() && !endloop)
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::EEmail,
-												iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-				User::Leave(KErrSdpCodecEmailField));
-			iEmailFields->AppendL(
-				CSdpCodecParseUtil::FieldLineValueL(iLineArray[0]));
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	CDesC8ArraySeg* array = iEmailFields;
-	iEmailFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParsePhoneL
-// ---------------------------------------------------------------------------
-//
-CDesC8ArraySeg* CSdpCodecParseUtil::ParsePhoneL(TInt aErrCode)
-	{
-	TBool endloop = EFalse;
-	while (iLineArray.Count() && !endloop)
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::EPhone,
-												iLineArray[0],aErrCode);
-		if(iElementArray.Count() != 0)
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-				User::Leave(KErrSdpCodecPhoneField));
-			iPhoneFields->AppendL(
-				CSdpCodecParseUtil::FieldLineValueL(iLineArray[0]));
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	CDesC8ArraySeg* array = iPhoneFields;
-	iPhoneFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseConnectionL
-// ---------------------------------------------------------------------------
-//
-CSdpConnectionField* CSdpCodecParseUtil::ParseConnectionL(TInt aErrCode)
-	{
-	CSdpConnectionField* sdpConnectionField = NULL;
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-										SdpCodecStringConstants::EConnection,
-										iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			sdpConnectionField =  
-				CSdpConnectionField::DecodeL(iLineArray[0]);
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		}
-	return sdpConnectionField;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseBandwidthL
-// ---------------------------------------------------------------------------
-//
-RPointerArray<CSdpBandwidthField>* 
-CSdpCodecParseUtil::ParseBandwidthL(TInt aErrCode)
-	{
-	TBool endloop = EFalse;
-	CSdpBandwidthField* bandwidth = NULL;
-	while (iLineArray.Count() && !endloop)
-		{
-		iElementArray = 
-		    CSdpCodecParseUtil::CheckOptionalFieldNameL(
-		        iPool,SdpCodecStringConstants::EBandwidth,
-		        iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{			
-			bandwidth = CSdpBandwidthField::DecodeLC(iLineArray[0]);
-			iBandwidthFields->AppendL(bandwidth);
-			CleanupStack::Pop(bandwidth);
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	RPointerArray<CSdpBandwidthField>* array = iBandwidthFields;
-	iBandwidthFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseConnectionFieldsL
-// ---------------------------------------------------------------------------
-//
-RPointerArray<CSdpConnectionField>* 
-CSdpCodecParseUtil::ParseConnectionFieldsL(TInt aErrCode)
-	{
-	TBool endloop = EFalse;
-	CSdpConnectionField* connection = NULL;
-	while(iLineArray.Count() && !endloop)
-		{
-		iElementArray = 
-		    CSdpCodecParseUtil::CheckOptionalFieldNameL(
-		        iPool,SdpCodecStringConstants::EConnection,
-		        iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{			
-			connection = CSdpConnectionField::DecodeLC(iLineArray[0]);
-			iConnectionFields->AppendL(connection);
-			CleanupStack::Pop(connection);
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	RPointerArray<CSdpConnectionField>* array = iConnectionFields;
-	iConnectionFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseTimeFieldL
-// ---------------------------------------------------------------------------
-//
-RPointerArray<CSdpTimeField>* 
-CSdpCodecParseUtil::ParseTimeFieldL(TInt aErrCode)
-	{
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckFieldNameL(iPool,
-											SdpCodecStringConstants::ETime,
-											iLineArray[0],aErrCode);
-		iElementArray.Reset();
-		CSdpTimeField* timefield = NULL;
-		CSdpRepeatField* repeatfield = NULL;
-		TBool endloop = EFalse;
-		while(iLineArray.Count() && !endloop)
-			{
-			iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::ETime,
-												iLineArray[0],aErrCode);
-			if(iElementArray.Count())
-				{
-				timefield = CSdpTimeField::DecodeLC(iLineArray[0]);
-				User::LeaveIfError(iTimeFields->Append(timefield));
-				CleanupStack::Pop();//timefield
-				iElementArray.Reset();
-				iLineArray.Remove(0);
-				TBool repeatEnd = EFalse;
-				while(iLineArray.Count() && !repeatEnd)
-					{
-					iElementArray = 
-						CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-											SdpCodecStringConstants::ERepeat,
-											iLineArray[0],aErrCode);
-					if(iElementArray.Count())
-						{
-						repeatfield =
-							CSdpRepeatField::DecodeLC(iLineArray[0]);
-						User::LeaveIfError((timefield->RepeatFields()).Append(
-																  repeatfield));
-						CleanupStack::Pop();//repeatfield
-						repeatfield = 0;
-						iElementArray.Reset();
-						iLineArray.Remove(0);
-						}
-					else
-						{
-						repeatEnd = ETrue;
-						}
-					}
-				timefield = 0;
-				}
-			else
-				{
-				endloop = ETrue;
-				}
-			}
-		}
-	RPointerArray<CSdpTimeField>* array = iTimeFields;
-	iTimeFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseZoneAdjustmentL
-// ---------------------------------------------------------------------------
-//
-const TDesC8& CSdpCodecParseUtil::ParseZoneAdjustmentL(TInt aErrCode)
-	{
-	delete iToken;
-	iToken = 0;
-	iToken = KNullDesC8().AllocL();
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-											SdpCodecStringConstants::EZone,
-											iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-				User::Leave(KErrSdpCodecZoneField));
-			delete iToken;
-			iToken = 0;
-			iToken = 
-				(CSdpCodecParseUtil::FieldLineValueL(iLineArray[0])).AllocL();
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		}
-	return *iToken;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseEncryptionKeyL
-// ---------------------------------------------------------------------------
-//
-CSdpKeyField* CSdpCodecParseUtil::ParseEncryptionKeyL(TInt aErrCode)
-	{
-	CSdpKeyField* sdpKeyField = NULL;
-	if(iLineArray.Count())
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-												SdpCodecStringConstants::EKey,
-												iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			__ASSERT_ALWAYS (iElementArray.Count() > 1, 
-				User::Leave(KErrSdpCodecKeyField));
-			sdpKeyField = CSdpKeyField::DecodeL(iLineArray[0]);
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		}
-	return sdpKeyField;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseAttributeFieldL
-// ---------------------------------------------------------------------------
-//
-RPointerArray<CSdpAttributeField>* 
-CSdpCodecParseUtil::ParseAttributeFieldL(TInt aErrCode)
-	{
-	TBool endloop = EFalse;
-	CSdpAttributeField* attributefield = NULL;
-	while(iLineArray.Count() && !endloop)
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-										SdpCodecStringConstants::EAttribute,
-										iLineArray[0],aErrCode);
-		if(iElementArray.Count())
-			{
-			attributefield = 
-						CSdpAttributeField::DecodeLC(iLineArray[0]);
-			User::LeaveIfError(iAttributeFields->Append(attributefield));
-			CleanupStack::Pop();//attributefield
-			attributefield = NULL;
-			iElementArray.Reset();
-			iLineArray.Remove(0);
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	RPointerArray<CSdpAttributeField>* array = iAttributeFields;
-	iAttributeFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::ParseMediaLevelL
-// ---------------------------------------------------------------------------
-//
-RPointerArray<CSdpMediaField>* 
-CSdpCodecParseUtil::ParseMediaLevelL()
-	{
-	RStringF headername = iPool.StringF( SdpCodecStringConstants::EMedia, 
-                                         SdpCodecStringConstants::Table );
-	TInt linestartPosition = 0;
-	TInt lineEndPosition = 0;
-	CSdpMediaField* mediafield = NULL;
-	TBool endloop = EFalse;
-	while(iData.Length() > 0 && !endloop)
-		{
-		linestartPosition = iData.FindF(headername.DesC());
-		if(linestartPosition != KErrNotFound)
-			{
-			TPtrC8 firstline(iData.Mid(linestartPosition));
-			TPtrC8 templine(iData.Mid(linestartPosition + 1));
-			HBufC8* searchString = 
-			 	HBufC8::NewLC(KCRLFStr().Length() + 
-			 	headername.DesC().Length());
-			TPtr8 strPtr(searchString->Des());
-			strPtr.Append(KCRLFStr);
-			strPtr.Append(headername.DesC());
-			lineEndPosition = templine.FindF(strPtr);
-			CleanupStack::PopAndDestroy(searchString);
-			if(lineEndPosition == KErrNotFound)
-				{
-				mediafield = 
-				CSdpMediaField::DecodeLC(iData.Mid(linestartPosition));
-				User::LeaveIfError(iMediaFields->Append(mediafield));
-				CleanupStack::Pop();//mediafield
-				mediafield = 0;
-				iElementArray.Reset();
-				iLineArray.Reset();
-				endloop = ETrue;
-				}
-			else 
-				{
-				mediafield = 
-				CSdpMediaField::DecodeLC(firstline.Left(
-									lineEndPosition+1+KCRLFStr().Length()));
-				User::LeaveIfError(iMediaFields->Append(mediafield));
-				CleanupStack::Pop();//mediafield
-				mediafield = 0;
-				iData.Set(firstline.Mid(lineEndPosition+1));
-				}
-			}
-		else
-			{
-			endloop = ETrue;
-			}
-		}
-	RPointerArray<CSdpMediaField>* array = iMediaFields;
-	iMediaFields = 0;
-	return array;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::FirstLineArrayElementL
-// ---------------------------------------------------------------------------
-//
-RArray<TPtrC8> CSdpCodecParseUtil::FirstLineArrayElementL(RStringPool aPool,
-												          TInt aIndex,
-														  TInt aErrCode)
-	{
-	if(!iLineArray.Count())
-			{
-			User::Leave(aErrCode);
-			}
-	RArray<TPtrC8> elementArray = 
-		SdpUtil::GetElementsFromLineL(iLineArray[0],aErrCode);
-	CleanupClosePushL(elementArray);
-	RStringF name = aPool.OpenFStringL(elementArray[0]);
-	CleanupClosePushL(name);
-	if(name!=(aPool.StringF(aIndex, SdpCodecStringConstants::Table)))
-		{
-		User::Leave(aErrCode);//parsererror
-		}
-	CleanupStack::Pop(2);//name, elementArray
-	name.Close();
-	return elementArray;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpCodecParseUtil::LineArray
-// ---------------------------------------------------------------------------
-//
-RArray<TPtrC8>& CSdpCodecParseUtil::LineArray()
-	{
-	return iLineArray;
-	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpcodecstringpool.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpCodecStringPool.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <stringpool.h>
-#include "sdpcodecerr.h"
-#include "sdpcodecstringpool.h"
-#include "csdpcodecstringpool.h"
-#include "sdpcodecstringconstants.h"
-#include "_sdpdefs.h"
-
-
-// -----------------------------------------------------------------------------
-// SdpCodecStringPool::OpenL
-// Opens stringpool owner, leaves if one already exists in TLS
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void SdpCodecStringPool::OpenL()
-	{
-	__ASSERT_ALWAYS( Dll::Tls() == NULL, User::Leave ( KErrAlreadyExists ) );
-
-	CSdpCodecStringPool* codecStringPool = CSdpCodecStringPool::NewLC();
-	User::LeaveIfError( Dll::SetTls( codecStringPool ) );
-	CleanupStack::Pop();    //  codecStringPool
-	}
-
-// -----------------------------------------------------------------------------
-// SdpCodecStringPool::Close
-// Closes & deletes string pool
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void SdpCodecStringPool::Close()
-	{
-	if ( Dll::Tls() == NULL )
-        {
-        return;
-        }
-
-	CSdpCodecStringPool* codecStringPool =
-        static_cast<CSdpCodecStringPool*>( Dll::Tls() );
-    delete codecStringPool;
-	Dll::SetTls( NULL );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpCodecStringPool::StringPoolL
-// Returns string pool
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringPool SdpCodecStringPool::StringPoolL()
-    {
-    CSdpCodecStringPool* codecStringPool =
-        static_cast<CSdpCodecStringPool*>( Dll::Tls() );
-    __ASSERT_ALWAYS( codecStringPool != NULL,
-                     User::Leave( KErrSdpCodecStringPool ) );
-
-	return codecStringPool->StringPool();
-    }
-
-// -----------------------------------------------------------------------------
-// SdpCodecStringPool::StringTableL
-// Returns string table
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TStringTable& SdpCodecStringPool::StringTableL()
-    {
-     CSdpCodecStringPool* codecStringPool =
-        static_cast<CSdpCodecStringPool*>( Dll::Tls() );
-    __ASSERT_ALWAYS( codecStringPool != NULL,
-                     User::Leave( KErrSdpCodecStringPool ) );
-
-	return codecStringPool->StringTable();
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpconnectionfield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1155 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpConnectionField.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-
-#include <in_sock.h>
-#include <s32strm.h>
-#include <stringpool.h>
-#include "sdpconnectionfield.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecstringpool.h"
-#include "sdputil.h"
-#include "sdpcodecerr.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "uriutils.h"
-
-// LOCAL CONSTANTS
-const TInt KHeaderIndex = 0;
-const TInt KNetworkTypeIndex = 1;
-const TInt KAddressTypeIndex = 2;
-const TInt KAddressIndex = 3;
-const TInt KTokenCount = 4;
-const TInt KMaxAddressLength = 256;
-const TUint KMaxIPDesLength = 39;
-_LIT16(KWildAddr, "0.0.0.0");
-_LIT16(KWildAddrIPv6, "::");
-
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::CSdpConnectionField
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CSdpConnectionField::CSdpConnectionField() :
-    iTTL( KErrNotFound ),
-    iNumOfAddress( KDefaultNumOfAddress )
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::ConstructL(
-    const TDesC8& aText )
-	{
-    // aText should be in format
-    // c=<network type> <address type> <connection address>
-    iPool = SdpCodecStringPool::StringPoolL();
-
-    RArray<TPtrC8> array =
-        SdpUtil::GetElementsFromLineL( aText, KErrSdpCodecConnectionField );
-    CleanupClosePushL( array );
-
-    if ( array.Count() != KTokenCount )
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-    RStringF origHeader =  iPool.StringF( SdpCodecStringConstants::EConnection,
-                                          SdpCodecStringConstants::Table );
-    if ( origHeader.DesC().CompareF( array[KHeaderIndex] ) != 0 )
-        {
-        // Header didn't match
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-    // <network type>
-    CopyNetTypeL( array[KNetworkTypeIndex] );
-
-    // <address type>
-    CopyAddressTypeL( array[KAddressTypeIndex] );
-
-    // <address>
-    CopyAddressL( array[KAddressIndex], iPool );
-
-    CleanupStack::PopAndDestroy();  // array
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::ConstructL(
-    const TInetAddr& aAddress,
-    TInt aTTL,
-    TUint aNumOfAddress )
-	{
-    __ASSERT_ALWAYS( IsValidAddress(aAddress, aTTL, aNumOfAddress) == KErrNone,
-                     User::Leave( KErrSdpCodecConnectionField ) );
-
-    iPool = SdpCodecStringPool::StringPoolL();
-    TBuf<KMaxIPDesLength> addr;
-    //If aAddress is IPv4-Mapped IPv6,the result of Output is IPv4
-    aAddress.Output( addr );
-
-    // Copy address
-    iAddress = HBufC8::NewL( addr.Length() );
-    iAddress->Des().Copy( addr );
-
-    // TTL
-    iTTL = aTTL;
-    // Num of addresses
-    iNumOfAddress = aNumOfAddress;
-    // Network type
-    iNetType = iPool.StringF( SdpCodecStringConstants::ENetType,
-                              SdpCodecStringConstants::Table ).Copy();
-    // Address type
-	if ( UriUtils::HostType( addr ) == UriUtils::EIPv4Host )
-		{
-		//addresstype for IPv4
-			iAddressType = iPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                                      SdpCodecStringConstants::Table ).Copy();
-			}
-	else if ( UriUtils::HostType( addr ) == UriUtils::EIPv6Host )
-			{
-			//addresstype IPv6
-			iAddressType = iPool.StringF( SdpCodecStringConstants::EAddressType,
-                                      SdpCodecStringConstants::Table ).Copy();
-			}
-	else
-		{
-		User::Leave(KErrArgument);
-		}
-
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::ConstructL(
-    RStringF aNetType,
-	RStringF aAddressType,
-	const TDesC8& aAddress )
-    {
-    iPool = SdpCodecStringPool::StringPoolL();
-
-    // Network type
-    CopyNetTypeL( aNetType.DesC() );
-
-    // Address type
-    CopyAddressTypeL( aAddressType.DesC() );
-
-    // Address + TTL + numOfAddress
-    CopyAddressL( aAddress, aNetType.Pool() );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::DecodeL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::DecodeL(
-    const TDesC8& aText )
-	{
-	CSdpConnectionField* obj = CSdpConnectionField::DecodeLC( aText );
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::DecodeLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::DecodeLC(
-    const TDesC8& aText )
-	{
-	CSdpConnectionField* obj = new ( ELeave ) CSdpConnectionField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL( aText );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::NewL(
-    const TInetAddr& aAddress,
-    TInt aTTL,
-    TUint aNumOfAddress )
-	{
-	CSdpConnectionField* obj = CSdpConnectionField::NewLC(
-        aAddress, aTTL, aNumOfAddress );
-	CleanupStack::Pop();
-	return obj;
-	}
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::NewLC(
-    const TInetAddr& aAddress,
-    TInt aTTL,
-    TUint aNumOfAddress )
-	{
-	CSdpConnectionField* obj = new ( ELeave ) CSdpConnectionField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL( aAddress, aTTL, aNumOfAddress );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::NewL(
-    RStringF aNetType,
-    RStringF aAddressType,
-    const TDesC8& aAddress )
-    {
-    CSdpConnectionField* obj = CSdpConnectionField::NewLC(
-        aNetType, aAddressType, aAddress );
-	CleanupStack::Pop();
-	return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::NewLC(
-    RStringF aNetType,
-    RStringF aAddressType,
-    const TDesC8& aAddress )
-    {
-    CSdpConnectionField* obj = new ( ELeave ) CSdpConnectionField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL( aNetType, aAddressType, aAddress );
-	return obj;
-    }
-
-// Destructor
-EXPORT_C CSdpConnectionField::~CSdpConnectionField()
-	{
-    delete iAddress;
-    iNetType.Close();
-    iAddressType.Close();
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpConnectionField::EncodeL(
-    RWriteStream& aStream ) const
-	{
-	__TEST_INVARIANT;
-    TBuf8<20> number;  // Is enough for addr as well
-
-    // c=<network type> <address type> <connection address>
-    RStringF header = iPool.StringF( SdpCodecStringConstants::EConnection,
-                                     SdpCodecStringConstants::Table );
-    aStream.WriteL( header.DesC() );
-
-    // Network type
-    aStream.WriteL( iNetType.DesC() );
-    aStream.WriteL( KSPStr );
-
-    // Address type
-    aStream.WriteL( iAddressType.DesC() );
-    aStream.WriteL( KSPStr );
-
-    // Connection address
-    aStream.WriteL( *iAddress );
-    if ( iTTL != KErrNotFound )
-        {
-        number.Zero();
-        number.Append( KSlashStr );
-        number.AppendFormat( _L8("%d"), iTTL );
-        aStream.WriteL( number );
-        }
-
-    if ( iNumOfAddress > 1 )
-        {
-        number.Zero();
-        number.Append( KSlashStr );
-        number.AppendFormat( _L8("%u"), iNumOfAddress );
-        aStream.WriteL( number );
-        }
-
-     // End-of-Line mark
-	aStream.WriteL( KCRLFStr );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::CloneL
-// Clones an exact copy of this object
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpConnectionField::CloneL() const
-	{
-	__TEST_INVARIANT;
-
-	CSdpConnectionField* obj = NULL;
-    const TInetAddr* addr = InetAddress();
-
-    if ( addr )
-        {
-        // Could be anything
-        obj = CSdpConnectionField::NewL( *addr, iTTL, iNumOfAddress );
-        }
-    else
-        {
-        // Unicast FQDN address
-        obj = CSdpConnectionField::NewL( iNetType, iAddressType, *iAddress );
-        }
-
-	__ASSERT_DEBUG( *this == *obj, User::Panic(
-                                   KSdpCodecPanicCat, KSdpCodecPanicInternal));
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::operator==
-// Checks if two origin fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpConnectionField::operator== (
-    const CSdpConnectionField& aObj ) const
-	{
-	__TEST_INVARIANT;
-
-    TBool equal( EFalse );
-
-    if ( (*iAddress).CompareF( aObj.Address() ) == 0 &&
-         NetType() == aObj.NetType() &&
-         AddressType() == aObj.AddressType() &&
-         TTLValue() == aObj.TTLValue() &&
-         NumOfAddress() == aObj.NumOfAddress() )
-        {
-        // All attributes match, two fields are equal
-        equal = ETrue;
-        }
-
-	return equal;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NetType
-// Returns network type
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpConnectionField::NetType() const
-	{
-	__TEST_INVARIANT;
-	return iNetType;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::AddressType
-// Returns address type
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpConnectionField::AddressType() const
-	{
-	__TEST_INVARIANT;
-	return iAddressType;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::InetAddress
-// Returns address in TInetAddr format if possible
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TInetAddr* CSdpConnectionField::InetAddress() const
-	{
-	__TEST_INVARIANT;
-
-    TInetAddr* addr = NULL;
-    TBuf<KMaxAddressLength> addr16;
-
-    addr16.Copy( iAddress->Des() );
-    TInt err = iInetAddress.Input( addr16 );
-
-    if ( err == KErrNone )
-        {
-        addr = &iInetAddress;
-        }
-
-	return addr;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::Address
-// Returns address in TDesC8 format
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpConnectionField::Address() const
-    {
-    return *iAddress;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::SetInetAddressL
-// Sets address from TInetAddr
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpConnectionField::SetInetAddressL(
-    const TInetAddr& aAddress,
-    TInt aTTL,
-    TUint aNumOfAddress )
-	{
-	__TEST_INVARIANT;
-
-    if ( IsValidAddress( aAddress, aTTL, aNumOfAddress ) == KErrNone )
-        {
-        TBuf<KMaxAddressLength> addr16;
-       	//If aAddress IPv4-Mapped IPv6, result of Output IPv4
-         aAddress.Output( addr16 );
-
-        HBufC8* tempBuf = HBufC8::NewL( addr16.Length() );
-        tempBuf->Des().Copy( addr16 );
-
-        SdpUtil::SetDefaultNetTypeAndAddrType(
-            iPool, aAddress, iNetType, iAddressType );
-        if(aAddress.Address() && aAddress.IsV4Mapped())
-			{
-			iAddressType.Close();
-			iAddressType = iPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                                      SdpCodecStringConstants::Table ).Copy();
-			}
-        // Set address
-        delete iAddress;
-        iAddress = tempBuf;
-        // Set attributes for address
-        iTTL = aTTL;
-        iNumOfAddress = aNumOfAddress;
-        }
-    else
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::SetAddressL
-// Sets new address and types, leaves on error
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpConnectionField::SetAddressL(
-    RStringF aNetType,
-    RStringF aAddressType,
-    const TDesC8& aAddress )
-    {
-    __TEST_INVARIANT;
-    TInt err( KErrNone );
-    RStringF netTypeBackup = iNetType.Copy();
-    RStringF addressTypeBackup = iAddressType.Copy();
-    CleanupClosePushL( netTypeBackup );
-    CleanupClosePushL( addressTypeBackup );
-
-    TRAP( err, CopyNetTypeL( aNetType.DesC() ) );
-    if ( !err )
-        {
-        // Netowrk type changed successfully
-        TRAP( err, CopyAddressTypeL( aAddressType.DesC() ) );
-        if ( !err )
-            {
-            // Address type & network type changed successfully
-            TRAP( err, CopyAddressL( aAddress, iAddressType.Pool() ) );
-
-            if ( err )
-                {
-                // Place back old netType & address
-                iNetType.Close();
-                iNetType = netTypeBackup.Copy();
-
-                iAddressType.Close();
-                iAddressType = addressTypeBackup.Copy();
-
-                User::LeaveIfError( err );
-                }
-            // Everything changed succesfully
-            }
-        else
-            {
-            // Place back old netType
-            iNetType.Close();
-            iNetType = netTypeBackup.Copy();
-
-            User::LeaveIfError( err );
-            }
-        }
-    else
-        {
-        User::LeaveIfError( err );
-        }
-
-    CleanupStack::PopAndDestroy( 2 );   // netTypeBackup, addressTypeBackup
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::TTLValue
-// Returns TTL attribute
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CSdpConnectionField::TTLValue() const
-    {
-    __TEST_INVARIANT;
-    return iTTL;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::SetTTLL
-// Sets new TTL attribute value, leaves on error
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpConnectionField::SetTTLL(
-    TInt aTTL )
-    {
-    __TEST_INVARIANT;
-
-    const TInetAddr* addr = InetAddress();
-
-    // FQDN; Unicast, can be only KErrNotFound
-    // IP4 Multicast: 0 <= TTL <= 255
-    // IP4 Unicast, can be only KErrNotFound
-    // IP6 can be only KErrNotFound
-
-    if ( ( !addr && aTTL != KErrNotFound ) ||
-         ( addr && addr->Address() && addr->IsMulticast() && 
-           ( aTTL < 0 || aTTL > 255 ) ) ||
-         ( addr && addr->Address() && !addr->IsMulticast() && 
-           aTTL != KErrNotFound ) ||
-         ( addr && !addr->Address() && aTTL != KErrNotFound ) )
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-    iTTL = aTTL;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::NumOfAddress
-// Returns number of continuous addresses for multicast
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt CSdpConnectionField::NumOfAddress() const
-    {
-    return iNumOfAddress;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::SetNumOfAddressL
-// Sets number of addresses
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpConnectionField::SetNumOfAddressL(
-    TUint aNumOfAddress )
-    {
-    const TInetAddr* addr = InetAddress();
-    if ( aNumOfAddress < 1 || ( !addr && aNumOfAddress != 1 )  ||
-         ( addr && !addr->IsMulticast() && aNumOfAddress != 1  ) )
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-    iNumOfAddress = aNumOfAddress;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::ExternalizeL(
-    RWriteStream& aStream ) const
-    {
-    __TEST_INVARIANT;
-
-    // Address
-    aStream.WriteUint32L( iAddress->Des().Length() );
-    aStream.WriteL( iAddress->Des(), iAddress->Des().Length() );
-    // TTL
-    aStream.WriteInt32L( iTTL );
-    // Number of addresses
-    aStream.WriteInt32L( iNumOfAddress );
-    // <network type>
-    aStream.WriteUint32L( iNetType.DesC().Length() );
-    aStream.WriteL( iNetType.DesC() );
-    // <address type>
-    aStream.WriteUint32L( iAddressType.DesC().Length() );
-    aStream.WriteL( iAddressType.DesC() );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpConnectionField* CSdpConnectionField::InternalizeL(
-    RReadStream& aStream )
-    {
-    TUint32 length;
-    CSdpConnectionField* obj = NULL;
-    RStringPool pool = SdpCodecStringPool::StringPoolL();
-
-    // address
-    length = aStream.ReadUint32L();
-	HBufC8* address = HBufC8::NewLC( length );
-    TPtr8 ptr( address->Des() );
-    aStream.ReadL( ptr, length );
-    // TTL
-    TInt ttl = aStream.ReadInt32L();
-    // Number of addresses
-    TInt numOfAddr = aStream.ReadInt32L();
-    // Network type
-    length = aStream.ReadUint32L();
-    HBufC8* netType = HBufC8::NewLC( length );
-    ptr.Set( netType->Des() );
-    aStream.ReadL( ptr, length );
-    // Address type
-    length = aStream.ReadUint32L();
-    HBufC8* addrType = HBufC8::NewLC( length );
-    ptr.Set( addrType->Des() );
-    aStream.ReadL( ptr, length );
-
-    TInetAddr addr;
-    HBufC* address16 = HBufC::NewLC( address->Length() ) ;
-    address16->Des().Copy( *address );
-    TInt err = addr.Input( *address16 );
-
-    if ( !err )
-        {
-        // Create connection field based on TInetAddr
-        obj = CSdpConnectionField::NewL( addr, ttl, numOfAddr );
-        }
-    else
-        {
-        // Create connection field from buffer, ttl & numOfAddr
-        // are in this case irrelevant
-        RStringF netTypeStr = pool.OpenFStringL( *netType );
-        CleanupClosePushL( netTypeStr );
-        RStringF addrTypeStr = pool.OpenFStringL( *addrType );
-        CleanupClosePushL( addrTypeStr );
-        obj = CSdpConnectionField::NewL( netTypeStr, addrTypeStr, *address );
-        CleanupStack::PopAndDestroy( 2 );   // netTypeStr, addrTypeStr
-        }
-
-    CleanupStack::PopAndDestroy( 4 );  // address, netType, addrType, address16
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::IsValidAddress
-// Checks if the given address is valid
-// -----------------------------------------------------------------------------
-//
-TInt CSdpConnectionField::IsValidAddress(
-    TBool aAddressTypeIP4,
-    const TDesC8& aAddress ) const
-    {
-    HBufC8* address = NULL;
-    TInt ttl( 0 );
-    TUint num( 0 );
-
-    TRAPD( err, address =
-                ParseAddressFieldL( aAddressTypeIP4, aAddress, ttl, num ) );
-    delete address;
-
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::IsValidAddress
-// Checks if the given address is valid
-// -----------------------------------------------------------------------------
-//
-TInt CSdpConnectionField::IsValidAddress(
-    const TInetAddr& aAddress,
-    TInt aTTL,
-    TUint aNumOfAddress ) const
-    {
-    TInt err( KErrSdpCodecConnectionField );
-    // 0 <= TTL <= 255 or KErrNotFound if not defined
-    // Number of addresses > 0
-    if ( ( aTTL == KErrNotFound || ( aTTL >= 0 && aTTL <= 255 ) ) &&
-           aNumOfAddress > 0 )
-        {
-        TBuf16 <KMaxAddressLength> output;
-        aAddress.Output(output);
-
-        // Address has to be either of type IP4 or IP6
-        // If IP4 and multicast then it must contain TTL attribute
-        // If IP4 and unicast then it must NOT contain TTL and must have 1 address
-        // If IP6 and multicast then it must NOT contain TTL
-        // If IP6 and unicast then it must NOT contain TTL and must have 1 address
-        if ( ( aAddress.Address() && 
-               ( ( aAddress.IsMulticast() && aTTL != KErrNotFound ) ||
-                 ( aAddress.IsUnicast() && aTTL == KErrNotFound &&
-                   aNumOfAddress == 1 ) ) ) ||
-             ( !aAddress.Address() &&
-               ( ( aAddress.IsMulticast() && aTTL == KErrNotFound ) ||
-                 ( aAddress.IsUnicast() && aTTL == KErrNotFound &&
-                   aNumOfAddress == 1 ) )   ||
-               ( aAddress.IsWildAddr() && 
-               ( output.Match(KWildAddr) == 0||
-               	 output.Match(KWildAddrIPv6) == 0 )) ) )
-           {
-           err = KErrNone;
-           }
-        }
-
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ParseAddressFieldL
-// Format the address field
-// -----------------------------------------------------------------------------
-//
-HBufC8* CSdpConnectionField::ParseAddressFieldL(
-    TBool aAddressTypeIP4,
-    const TDesC8& aAddress,
-    TInt& aTTL,
-    TUint& aNumberOfAddresses ) const
-    {
-    HBufC8* address = NULL;
-
-    if ( aAddress.Length() > 0 && aAddress.Length() <= KMaxAddressLength )
-        {
-        // IP4 address
-        TInetAddr addr;
-        TBuf<KMaxAddressLength> buf16;
-
-        // IP address lasts till first separator mark
-        TInt pos = aAddress.Locate( KSlashChar );
-        if ( pos == KErrNotFound )
-            {
-            pos = aAddress.Length();
-            }
-        buf16.Copy( aAddress.Left( pos ) );
-
-        // Try to convert the string to TInetAddr
-        TInt err = addr.Input( buf16 );
-
-   		//Type and address check
-        TBuf16 <KMaxAddressLength> output;
-        addr.Output(output);
-        if (err == KErrNone)
-	        {
-            if (addr.Address() )
-                {
-                if ( (addr.IsV4Mapped() && aAddressTypeIP4) ||
-                     (!addr.IsV4Mapped() && !aAddressTypeIP4) )
-                    {
-                    User::Leave( KErrSdpCodecConnectionField );
-                    }
-                else
-                    {
-                    // IP4 address
-                    address = ParseIP4AddressL( pos, addr, aAddress, aTTL,
-                                            aNumberOfAddresses );
-                    }
-                }
-            else
-                {
-                if ( !aAddressTypeIP4)
-                    {
-                    // IP6 address
-                    address = ParseIP6AddressL( pos, addr, aAddress, aTTL,
-                                        aNumberOfAddresses );
-                    }
-                else if ( addr.IsWildAddr() && output.Match(KWildAddr) == 0 )
-                    {
-                    // 0.0.0.0
-                    address = ParseIP4AddressL( pos, addr, aAddress, aTTL,
-                                            aNumberOfAddresses );
-                    }
-                else
-                    {
-                    User::Leave( KErrSdpCodecConnectionField );
-                    }
-		        }
-	        }
-        else
-	        {   
-            // FQDN
-	        // Clarify that the address contains only valid FQDN chars
-            // This is always unicast
-            for ( TInt i( 0 ); i < aAddress.Length(); i++ )
-		        {
-                if ( KValidFQDNChars().Locate( aAddress[i] ) ==
-			        KErrNotFound )
-                    {
-                    User::Leave( KErrSdpCodecConnectionField );
-                    }
-                }
-            address = aAddress.AllocL();
-            aTTL = KErrNotFound;
-            aNumberOfAddresses = 1;
-	        }
-
-        }
-    else
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-
-    return address;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ParseIP4AddressL
-// Parses IP4 address and checks that it is valid
-// -----------------------------------------------------------------------------
-//
-HBufC8* CSdpConnectionField::ParseIP4AddressL(
-    TInt aPos,
-    TInetAddr& aAddr,
-    const TDesC8& aAddress,
-    TInt& aTTL,
-    TUint& aNumberOfAddresses ) const
-    {
-    HBufC8* address = NULL;
-
-    if ( aAddr.IsMulticast() )
-        {
-        // Multicast address - MUST contain TTL and possibly
-        // number of addresses
-        if ( aPos != aAddress.Length() )
-            {
-            TInt pos2 = aAddress.Right( aAddress.Length() - aPos - 1 ).Locate(
-                KSlashChar );
-
-            if ( pos2 != KErrNotFound )
-                {
-                pos2 += aPos + 1;
-
-                // Validity check for number strings
-                TBool digit = SdpUtil::IsDigit(
-                    aAddress.Mid( aPos + 1, pos2 - aPos - 1 ) );
-                digit = digit && SdpUtil::IsDigit(
-                    aAddress.Mid( pos2 + 1, aAddress.Length() - pos2 - 1 ) );
-                if ( !digit )
-                    {
-                    User::Leave( KErrSdpCodecConnectionField );
-                    }
-
-                // TTL & number of addresses
-                User::LeaveIfError(
-                    TLex8( aAddress.Mid( aPos + 1, pos2 - aPos - 1 ) ).Val(
-                        aTTL ) );
-                User::LeaveIfError(
-                    TLex8( aAddress.Mid(
-                        pos2 + 1, aAddress.Length() - pos2 - 1 ) ).Val(
-                            aNumberOfAddresses, EDecimal ) );
-
-                __ASSERT_ALWAYS( aTTL >= 0
-                                && aTTL <= 255
-                                && aNumberOfAddresses > 0,
-                                User::Leave( KErrSdpCodecConnectionField ) );
-                }
-            else
-                {
-                // Validity check for number strings
-                TBool digit = SdpUtil::IsDigit(
-                   aAddress.Mid( aPos + 1, aAddress.Length() - aPos - 1 ) );
-                if ( !digit )
-                    {
-                    User::Leave( KErrSdpCodecConnectionField );
-                    }
-
-                // Plain TTL
-                User::LeaveIfError(
-                    TLex8( aAddress.Mid(
-                        aPos + 1, aAddress.Length() - aPos - 1 ) ).Val(
-                            aTTL ) );
-                aNumberOfAddresses = 1;
-
-                __ASSERT_ALWAYS( aTTL >= 0 && aTTL <= 255,
-                                 User::Leave( KErrSdpCodecConnectionField ) );
-                }
-
-            address = aAddress.Left( aPos ).AllocL();
-            }
-        else
-            {
-            User::Leave( KErrSdpCodecConnectionField );
-            }
-        }
-    else
-        {
-        // Unicast address - cannot contain any multicast TTLs etc.
-        if ( aPos == aAddress.Length() )
-            {
-            address = aAddress.AllocL();
-            aTTL = KErrNotFound;
-            aNumberOfAddresses = 1;
-            }
-        else
-            {
-            User::Leave( KErrSdpCodecConnectionField );
-            }
-        }
-
-    return address;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::ParseIP6AddressL
-// Parses IP6 address and checks that it is valid
-// -----------------------------------------------------------------------------
-//
-HBufC8* CSdpConnectionField::ParseIP6AddressL(
-    TInt aPos,
-    TInetAddr& aAddr,
-    const TDesC8& aAddress,
-    TInt& aTTL,
-    TUint& aNumberOfAddresses ) const
-    {
-    HBufC8* address = NULL;
-
-    if ( aAddr.IsMulticast() )
-        {
-        // Multicast address - CAN contain one extra attribute,
-        // number of addresses
-        if ( aPos != aAddress.Length() )
-            {
-            // Validity check for number strings
-
-            TBool digit = SdpUtil::IsDigit(
-                aAddress.Mid( aPos + 1, aAddress.Length() - aPos - 1 ) );
-            if ( !digit )
-                {
-                User::Leave( KErrSdpCodecConnectionField );
-                }
-
-            User::LeaveIfError( TLex8( aAddress.Mid(
-                aPos + 1, aAddress.Length() - aPos - 1 ) ).Val(
-                    aNumberOfAddresses, EDecimal ) );
-
-            __ASSERT_ALWAYS( aNumberOfAddresses > 0,
-                             User::Leave( KErrSdpCodecConnectionField ) );
-            }
-        else
-            {
-            aNumberOfAddresses = 1;
-            }
-
-        aTTL = KErrNotFound;    // IP6 does not use TTL
-        address = aAddress.Left( aPos ).AllocL();
-        }
-    else
-        {
-        // Unicast address - cannot contain any multicast TTLs etc.
-        if ( aPos == aAddress.Length() )
-            {
-            address = aAddress.AllocL();
-            aTTL = KErrNotFound;
-            aNumberOfAddresses = 1;
-            }
-        else
-            {
-            User::Leave( KErrSdpCodecConnectionField );
-            }
-        }
-
-    return address;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::CopyNetTypeL
-// Copies network type to object after checking that it is valid
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::CopyNetTypeL(
-    const TDesC8& aNetType )
-    {
-    if ( !SdpUtil::IsToken( aNetType ) )
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-    else
-        {
-        RStringF netType = iPool.OpenFStringL( aNetType );
-        iNetType.Close();
-        iNetType = netType;
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::CopyAddressTypeL
-// Copies address type after checking that it is valid
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::CopyAddressTypeL(
-    const TDesC8& aAddrType )
-    {
-    if ( !SdpUtil::IsToken( aAddrType ) )
-        {
-        User::Leave( KErrSdpCodecConnectionField );
-        }
-    else
-        {
-        RStringF addrType = iPool.OpenFStringL( aAddrType );
-        iAddressType.Close();
-        iAddressType = addrType;
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::CopyAddressL
-// Copies address after checking that it is valid
-// -----------------------------------------------------------------------------
-//
-void CSdpConnectionField::CopyAddressL(
-    const TDesC8& aAddress,
-    RStringPool aPool )
-    {
-    RStringF addrTypeIP4 = aPool.StringF(
-        SdpCodecStringConstants::EAddressTypeIP4,
-        SdpCodecStringConstants::Table );
-    RStringF addrTypeIP6 = aPool.StringF(
-        SdpCodecStringConstants::EAddressType,
-        SdpCodecStringConstants::Table );
-    HBufC8* addr = NULL;
-
-    if ( iAddressType == addrTypeIP4 || iAddressType == addrTypeIP6 )
-        {
-        User::LeaveIfError(
-            IsValidAddress( iAddressType == addrTypeIP4, aAddress ) );
-
-        addr = ParseAddressFieldL( iAddressType == addrTypeIP4, aAddress,
-                               iTTL, iNumOfAddress );
-  		//If address is IPv4-Mapped IPv6 , it is changed to IPv4
-		TInetAddr inetaddr;
-		TBuf<KMaxAddressLength> address;
-		address.Copy(*addr);
-		TInt err = inetaddr.Input(address);
-        TBuf16 <KMaxAddressLength> output;
-        inetaddr.Output(output);
-		if(!err && 
-            ( ( inetaddr.Address() && inetaddr.IsV4Mapped() ) || 
-              ( inetaddr.IsWildAddr() && output.Match(KWildAddr) != KErrNotFound ) 
-            ) )
-			{//IPv4-Mapped IPv6 is changed to IPv4 address
-			TBuf<KMaxIPDesLength> buf;
-			inetaddr.Output( buf );
-			// Copy new address to safe
-			delete addr;
-			addr = NULL;
-			addr = HBufC8::NewL(buf.Length());
-			addr->Des().Copy(buf);
-			iAddressType.Close();
-			iAddressType = 
-				iPool.StringF(SdpCodecStringConstants::EAddressTypeIP4,
-                               SdpCodecStringConstants::Table ).Copy();
-			}
-	
-        }
-    else
-        {
-        // Address not IP4 or IP6, must be then non-ws-string
-        if ( SdpUtil::IsNonWhitespace( aAddress ) )
-            {
-            addr = aAddress.AllocL();
-            }
-        else
-            {
-            User::Leave( KErrSdpCodecConnectionField );
-            }
-        }
-
-    delete iAddress;
-    iAddress = addr;
-    }
-
-// For DEBUG builds
-
-// -----------------------------------------------------------------------------
-// CSdpConnectionField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//
-
-void CSdpConnectionField::__DbgTestInvariant() const
-	{
-    TBool validAddr = EFalse;
-
-    RStringF addrTypeIP4 = iPool.StringF(
-        SdpCodecStringConstants::EAddressTypeIP4,
-        SdpCodecStringConstants::Table );
-    RStringF addrTypeIP6 = iPool.StringF(
-        SdpCodecStringConstants::EAddressType,
-        SdpCodecStringConstants::Table );
-
-    if ( iAddress &&
-        ( iAddressType == addrTypeIP4 || iAddressType == addrTypeIP6 ) )
-        {
-        TInetAddr addr;
-        TBuf<KMaxAddressLength> buf16;
-        buf16.Copy( *iAddress );
-        TInt err = addr.Input( buf16 );
-        if ( !err )
-            {
-            validAddr = IsValidAddress(addr, iTTL, iNumOfAddress) == KErrNone;
-            }
-        else
-            {
-            // FQDN unicast
-            if ( iTTL == KErrNotFound && iNumOfAddress == 1 )
-                {
-                validAddr = ETrue;
-                }
-            }
-        }
-
-    TBool invariant = ( SdpUtil::IsToken( iNetType.DesC() ) &&
-                        SdpUtil::IsToken( iAddressType.DesC() ) &&
-                        iAddress && SdpUtil::IsNonWhitespace( *iAddress ) &&
-                        validAddr );
-
-	if ( !invariant )
-        {
-		User::Invariant();
-        }
-	}
-
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpdocument.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,914 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpDocument.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include <e32std.h>
-#include "sdpdocument.h"
-#include "sdptimefield.h"
-#include "sdpbandwidthfield.h"
-#include "sdpattributefield.h"
-#include "sdpmediafield.h"
-#include "sdpconnectionfield.h"
-#include "sdpkeyfield.h"
-#include "sdporiginfield.h"
-#include "sdprepeatfield.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecconstants.h"
-#include "uri8.h"
-#include "uriutilscommon.h"
-#include "badesca.h"
-#include "_sdpdefs.h"
-#include "sdpcodecstringpool.h"
-#include "sdputil.h"
-#include "sdpcodectemplate.h"
-#include "sdpcodecparseutil.h"
-
-_LIT8(KCRLF, "\r\n");
-// ----------------------------------------------------------------------------
-// CSdpDocument::DecodeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* 
-CSdpDocument::DecodeL(const TDesC8& aText)
-	{
-	CSdpDocument* sdpDocument = CSdpDocument::DecodeLC(aText);
-	CleanupStack::Pop();
-	return sdpDocument;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::DecodeLC
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* 
-CSdpDocument::DecodeLC(const TDesC8& aText)
-	{
-	__ASSERT_ALWAYS (aText.Length() > 0, User::Leave(KErrArgument));
-	CSdpDocument* sdpDocument = new(ELeave)CSdpDocument;
-	CleanupStack::PushL(sdpDocument);
-	sdpDocument->ConstructL();
-	sdpDocument->ParseL(aText);
-	return sdpDocument;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::NewL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* CSdpDocument::NewL()
-	{
-	CSdpDocument* self = CSdpDocument::NewLC();
-	CleanupStack::Pop();
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::NewLC
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* CSdpDocument::NewLC()
-	{
-	CSdpDocument* self = new(ELeave)CSdpDocument;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::~CSdpDocument
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument::~CSdpDocument()
-	{
-	delete iInfo;
-	delete iSessionName;
-	delete iZoneAdjustments;
-	delete iSdpKeyField;
-	delete iSdpOriginField;
-	delete iSdpConnectionField;
-	if(iTimeFields)
-		{
-		iTimeFields->ResetAndDestroy();
-		delete iTimeFields;
-		}
-	if(iBandwidthFields)
-		{
-		iBandwidthFields->ResetAndDestroy();
-		delete iBandwidthFields;
-		}
-	if(iAttributeFields)
-		{
-		iAttributeFields->ResetAndDestroy();
-		delete iAttributeFields;
-		}
-	if(iMediaFields)
-		{
-		iMediaFields->ResetAndDestroy();
-		delete iMediaFields;
-		}
-	delete iUri;
-	if(iEmailFields)
-		{
-		iEmailFields->Reset();
-		delete iEmailFields;
-		}
-
-	if(iPhoneFields)
-		{
-		iPhoneFields->Reset();
-		delete iPhoneFields;
-		}
-	delete iToken;
-	delete iSdpCodecParseUtil;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::ExternalizeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::ExternalizeL(RWriteStream& aStream) const
-	{
-	aStream.WriteUint32L (iSdpVersion);	
-	SdpCodecTemplate<CSdpOriginField>::ExternalizeL(OriginField(), aStream);
-	aStream.WriteUint32L (iSessionName->Length());
-	if (iSessionName->Length() > 0)
-		{
-		aStream.WriteL (*iSessionName);
-		}
-	aStream.WriteUint32L (iInfo->Length());
-	if (iInfo->Length() > 0)
-		{
-		aStream.WriteL (*iInfo);
-		}
-	if(Uri())
-		{
-		aStream.WriteUint8L (1);
-		aStream.WriteUint32L ((iUri->Uri()).UriDes().Length());
-		aStream.WriteL((iUri->Uri()).UriDes());
-		}
-	else
-		{
-		aStream.WriteUint8L (0);
-		}
-	ExternalizeDesCArrayL(*iEmailFields, aStream);
-	ExternalizeDesCArrayL(*iPhoneFields, aStream);
-
-	SdpCodecTemplate<CSdpConnectionField>::ExternalizeL(iSdpConnectionField,
-														aStream);
-	SdpCodecTemplate<CSdpBandwidthField>::ExternalizeArrayL(*iBandwidthFields,
-															aStream);
-	SdpCodecTemplate<CSdpTimeField>::ExternalizeArrayL(*iTimeFields, aStream);
-	aStream.WriteUint32L (iZoneAdjustments->Length());
-	if (iZoneAdjustments->Length() > 0)
-		{
-		aStream.WriteL (*iZoneAdjustments);
-		}
-	SdpCodecTemplate<CSdpKeyField>::ExternalizeL(Key(), aStream);
-	SdpCodecTemplate<CSdpAttributeField>::ExternalizeArrayL(*iAttributeFields,
-															aStream);
-	SdpCodecTemplate<CSdpMediaField>::ExternalizeArrayL(*iMediaFields, 
-															aStream);
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::InternalizeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* 
-CSdpDocument::InternalizeL(RReadStream& aStream)
-	{
-	CSdpDocument* self = new(ELeave)CSdpDocument;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	self->DoInternalizeL (aStream);
-	CleanupStack::Pop();
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::DoInternalizeL
-// ----------------------------------------------------------------------------
-//
-void CSdpDocument::DoInternalizeL(RReadStream& aStream)
-	{
-	if(iTimeFields)
-		{
-		iTimeFields->ResetAndDestroy();
-		}
-	iSdpVersion = aStream.ReadUint32L();
-	if(aStream.ReadUint8L())
-		{
-		SetOriginField(CSdpOriginField::InternalizeL(aStream));
-		}
-	SetSessionNameL(GetTokenFromStreamL(aStream));
-	SetInfoL(GetTokenFromStreamL(aStream));
-	if(aStream.ReadUint8L())
-		{
-		TUriParser8 parser;
-		User::LeaveIfError(parser.Parse(GetTokenFromStreamL(aStream)));
-		SetUri(CUri8::NewL(parser));
-		}
-	TInt i = 0;
-	TInt count = aStream.ReadUint32L();
-	for (i = 0;i < count;i++)
-		{
-		TPtrC8 temp(GetTokenFromStreamL(aStream));
-		if(temp.Compare(KNullDesC8) != 0)
-			{
-			iEmailFields->AppendL(temp);
-			}
-		}
-	count = aStream.ReadUint32L();
-	for (i = 0;i < count;i++)
-		{
-		TPtrC8 temp(GetTokenFromStreamL(aStream));
-		if(temp.Compare(KNullDesC8) != 0)
-			{
-			iPhoneFields->AppendL(temp);
-			}
-		}
-	if(aStream.ReadUint8L())
-		{
-		SetConnectionField(CSdpConnectionField::InternalizeL(aStream));
-		}
-	SdpCodecTemplate<CSdpBandwidthField>::InternalizeArrayL(
-												*iBandwidthFields, aStream);
-	SdpCodecTemplate<CSdpTimeField>::InternalizeArrayL(*iTimeFields,
-														aStream);
-	SetZoneAdjustmentsL(GetTokenFromStreamL(aStream));
-	if(aStream.ReadUint8L())
-		{
-		SetKey(CSdpKeyField::InternalizeL(aStream));
-		}
-	SdpCodecTemplate<CSdpAttributeField>::InternalizeArrayL(
-												*iAttributeFields, aStream);
-	SdpCodecTemplate<CSdpMediaField>::InternalizeArrayL(*iMediaFields,
-															aStream);
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::EncodeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::EncodeL(RWriteStream& aStream) const
-	{
-	RStringF headername = iPool.StringF( SdpCodecStringConstants::EVersion, 
-                                              SdpCodecStringConstants::Table );
-    aStream.WriteL(headername.DesC());
-	TBuf8<80> text;
-	text.Format(_L8("%u"), iSdpVersion);
-	aStream.WriteL(text);
-	aStream.WriteL(KCRLF);	
-	SdpCodecTemplate<CSdpOriginField>::EncodeL(OriginField(), aStream);
-	SdpUtil::EncodeBufferL(*iSessionName, SdpCodecStringConstants::ESession,
-																	aStream);
-	SdpUtil::EncodeBufferL(*iInfo, SdpCodecStringConstants::EInfo, aStream);
-	if(Uri())
-		{
-		SdpUtil::EncodeBufferL(((iUri->Uri()).UriDes()), 
-					SdpCodecStringConstants::EUri, aStream);
-		}
-	EncodeDesCArrayL(*iEmailFields, SdpCodecStringConstants::EEmail, aStream);
-	EncodeDesCArrayL(*iPhoneFields, SdpCodecStringConstants::EPhone, aStream);
-	SdpCodecTemplate<CSdpConnectionField>::EncodeL(iSdpConnectionField,
-														aStream);
-	SdpCodecTemplate<CSdpBandwidthField>::EncodeArrayL(*iBandwidthFields,
-														aStream);
-	SdpCodecTemplate<CSdpTimeField>::EncodeArrayL(*iTimeFields, aStream);
-	SdpUtil::EncodeBufferL(*iZoneAdjustments,
-							SdpCodecStringConstants::EZone, aStream);
-	SdpCodecTemplate<CSdpKeyField>::EncodeL(Key(), aStream);
-	SdpCodecTemplate<CSdpAttributeField>::EncodeArrayL(*iAttributeFields, 
-														aStream);
-	SdpCodecTemplate<CSdpMediaField>::EncodeArrayL(*iMediaFields, aStream);
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::CloneL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpDocument* CSdpDocument::CloneL() const
-	{
-	CSdpDocument* sdpdocument = new(ELeave)CSdpDocument;
-	CleanupStack::PushL(sdpdocument);
-	sdpdocument->ConstructL(*this);
-	CleanupStack::Pop();//sdpdocument
-	return sdpdocument;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::IsValid
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpDocument::IsValid() const
-	{
-	if (iTimeFields->Count() == 0 || !OriginField() ||
-        !SessionName().Length()||
-		(!iMediaFields->Count() && !ConnectionField()))
-		{
-		return EFalse;
-		}
-    TInt j;
-	for (j=0; j < iMediaFields->Count(); j++)
-		{
-		if(!(*iMediaFields)[j]->IsValid() || 
-			(!ConnectionField() && (!(*iMediaFields)[j]->IsContactPresent())))
-			{
-			return EFalse;
-			}
-		}
-    
-    for (j=0; j < iTimeFields->Count(); j++)
-		{
-        if ( !(*iTimeFields)[j]->IsValid())
-            {
-		    return EFalse;
-            }
-		}
-	return ETrue;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SdpVersion
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TUint CSdpDocument::SdpVersion() const
-	{
-	return iSdpVersion;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::OriginField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpDocument::OriginField()
-	{
-	return iSdpOriginField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::OriginField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const CSdpOriginField* CSdpDocument::OriginField() const
-	{
-	return iSdpOriginField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetOriginField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetOriginField(CSdpOriginField* aObj)
-	{
-	delete iSdpOriginField;
-	iSdpOriginField = aObj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SessionName
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpDocument::SessionName() const
-	{
-	return *iSessionName;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetSessionNameL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetSessionNameL(const TDesC8& aValue)
-	{
-	__ASSERT_ALWAYS (aValue.Compare(KNullDesC8) == 0||
-					aValue.Compare(_L8(" ")) == 0||
-					SdpUtil::IsByteString(aValue),
-	                 User::Leave(KErrSdpCodecSessionField));
-	HBufC8* tmp = aValue.AllocL();
-	delete iSessionName;
-	iSessionName = tmp;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::Info
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpDocument::Info() const
-	{
-	return *iInfo;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetInfoL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetInfoL(const TDesC8& aValue)
-	{
-	__ASSERT_ALWAYS (aValue.Compare(KNullDesC8) == 0||
-					SdpUtil::IsByteString(aValue),
-	                 User::Leave(KErrSdpCodecInfoField));
-	HBufC8* tmp = aValue.AllocL();
-	tmp->Des().Trim();
-	delete iInfo;
-	iInfo = tmp;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::Uri
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CUri8* CSdpDocument::Uri() 
-	{
-	return iUri;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::Uri
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const CUri8* CSdpDocument::Uri() const
-	{
-	return iUri;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetUriL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetUri(CUri8* aValue)
-	{
-	delete iUri;
-	iUri = aValue;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::EmailFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CDesC8Array& CSdpDocument::EmailFields()
-	{
-	return *iEmailFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::PhoneFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CDesC8Array& CSdpDocument::PhoneFields()
-	{
-	return *iPhoneFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::ConnectionField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpConnectionField* CSdpDocument::ConnectionField()
-	{
-	return iSdpConnectionField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::ConnectionField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const CSdpConnectionField* CSdpDocument::ConnectionField() const
-	{
-	return iSdpConnectionField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetConnectionField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetConnectionField(CSdpConnectionField* aObj)
-	{
-	delete iSdpConnectionField;
-	iSdpConnectionField = aObj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::BandwidthFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpBandwidthField>& CSdpDocument::BandwidthFields()
-	{
-	return *iBandwidthFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::TimeFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpTimeField>& CSdpDocument::TimeFields()
-	{
-	return *iTimeFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::ZoneAdjustments
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpDocument::ZoneAdjustments() const
-	{
-	return *iZoneAdjustments;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetZoneAdjustmentsL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetZoneAdjustmentsL(const TDesC8& aValue)
-	{
-	HBufC8* tmp = aValue.AllocL();
-	tmp->Des().Trim();
-	delete iZoneAdjustments;
-	iZoneAdjustments = tmp;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::Key
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpDocument::Key()
-	{
-	return iSdpKeyField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::Key
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const CSdpKeyField* CSdpDocument::Key() const
-	{
-	return iSdpKeyField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::SetKey
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpDocument::SetKey(CSdpKeyField* aObj)
-	{
-	delete iSdpKeyField;
-	iSdpKeyField = aObj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::AttributeFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpAttributeField>& CSdpDocument::AttributeFields()
-	{
-	return *iAttributeFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::MediaFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpMediaField>& CSdpDocument::MediaFields()
-	{
-	return *iMediaFields;
-	}
-	
-// ----------------------------------------------------------------------------
-// CSdpDocument::CSdpDocument
-// ----------------------------------------------------------------------------
-//
-CSdpDocument::CSdpDocument()
-	{
-	}
-	
-// ----------------------------------------------------------------------------
-// CSdpDocument::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpDocument::ConstructL()
-	{
-	iPool = SdpCodecStringPool::StringPoolL();
-	iInfo = KNullDesC8().AllocL();
-	iSessionName = KNullDesC8().AllocL();
-	iZoneAdjustments = KNullDesC8().AllocL();
-	iSdpVersion = 0;
-	iEmailFields = new(ELeave)CDesC8ArraySeg(1);
-	iPhoneFields = new(ELeave)CDesC8ArraySeg(1);
-	iBandwidthFields = new(ELeave)RPointerArray<CSdpBandwidthField>;
-	iTimeFields = new(ELeave)RPointerArray<CSdpTimeField>;
-	iAttributeFields = new(ELeave)RPointerArray<CSdpAttributeField>;
-	iMediaFields = new(ELeave)RPointerArray<CSdpMediaField>;
-	CSdpTimeField* timefield = CSdpTimeField::NewLC(_L8("0"),_L8("0"));
-	User::LeaveIfError(iTimeFields->Append(timefield));
-	CleanupStack::Pop();
-	iToken = KNullDesC8().AllocL();
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpDocument::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpDocument::ConstructL(const CSdpDocument& aSdpDocument)
-	{
-	ConstructL();
-	iSdpVersion = aSdpDocument.SdpVersion();
-	if ( aSdpDocument.OriginField() )
-		{
-		iSdpOriginField = aSdpDocument.OriginField()->CloneL();
-		}
-	delete iSessionName;
-	iSessionName = 0;
-	iSessionName = aSdpDocument.SessionName().AllocL();
-	HBufC8* tmp = aSdpDocument.Info().AllocL();
-	delete iInfo;
-	iInfo = tmp;
-	if ( aSdpDocument.Uri() )
-		{
-		iUri = CUri8::NewL(aSdpDocument.Uri()->Uri());
-		}
-	TInt i = 0;
-	for ( i=0; i < (aSdpDocument.iEmailFields)->MdcaCount(); i++ )
-		{
-		iEmailFields->AppendL(aSdpDocument.iEmailFields->MdcaPoint(i));
-		}
-
-	for (i=0; i < (aSdpDocument.iPhoneFields)->MdcaCount(); i++)
-		{
-		iPhoneFields->AppendL(aSdpDocument.iPhoneFields->MdcaPoint(i));
-		}
-
-	if ( aSdpDocument.ConnectionField() )
-		{
-		iSdpConnectionField = aSdpDocument.ConnectionField()->CloneL();
-		}
-	SdpCodecTemplate<CSdpBandwidthField>::CloneArrayL(*iBandwidthFields, 
-											*aSdpDocument.iBandwidthFields);
-	if ( iTimeFields )
-		{
-		iTimeFields->ResetAndDestroy();
-		}
-	SdpCodecTemplate<CSdpTimeField>::CloneArrayL(*iTimeFields, 
-												*aSdpDocument.iTimeFields);
-	delete iZoneAdjustments;
-	iZoneAdjustments = 0;
-	iZoneAdjustments = aSdpDocument.ZoneAdjustments().AllocL();
-	if(aSdpDocument.Key())
-		{
-		iSdpKeyField = aSdpDocument.Key()->CloneL();
-		}
-	SdpCodecTemplate<CSdpAttributeField>::CloneArrayL(*iAttributeFields,
-											*aSdpDocument.iAttributeFields);
-	SdpCodecTemplate<CSdpMediaField>::CloneArrayL(*iMediaFields, 
-												*aSdpDocument.iMediaFields);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseL (const TDesC8& aText)
-	{
-	if(iTimeFields)
-		{
-		iTimeFields->ResetAndDestroy();
-		delete iTimeFields;
-		iTimeFields = 0;
-		}
-	iSdpCodecParseUtil = CSdpCodecParseUtil::NewL(iPool,aText,KErrSdpCodecDecode);
-	ParseSessionVersionL();
-	ParseSessionOwnerL();
-	ParseSessionNameL();
-	ParseSessionInformationL();
-	ParseUriL();
-	ParseEmailL();
-	ParsePhoneL();
-	ParseConnectionL();
-	ParseBandwidthL();
-	ParseTimeFieldL();
-	ParseZoneAdjustmentL();
-	ParseEncryptionKeyL();
-	ParseAttributeFieldL();
-	ParseMediaLevelL ();
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseSessionVersionL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseSessionVersionL()
-	{
-	iSdpVersion = 
-		iSdpCodecParseUtil->ParseSessionVersionL(KErrSdpCodecSessionField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseSessionOwnerL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseSessionOwnerL()
-	{
-	iSdpOriginField = iSdpCodecParseUtil->ParseSessionOwnerL(
-													KErrSdpCodecOriginField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseSessionNameL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseSessionNameL()
-	{
-	SetSessionNameL(iSdpCodecParseUtil->ParseSessionNameL(
-													KErrSdpCodecSessionField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseSessionInformationL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseSessionInformationL()
-	{
-	SetInfoL(iSdpCodecParseUtil->ParseInformationL(KErrSdpCodecInfoField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseUriL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseUriL()
-	{
-	SetUri(iSdpCodecParseUtil->ParseUriL(KErrSdpCodecUriField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseEmailL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseEmailL()
-	{
-	delete iEmailFields;
-	iEmailFields = NULL;
-	iEmailFields = iSdpCodecParseUtil->ParseEmailL(KErrSdpCodecEmailField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParsePhoneL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParsePhoneL()
-	{
-	delete iPhoneFields;
-	iPhoneFields = NULL;
-	iPhoneFields = iSdpCodecParseUtil->ParsePhoneL(KErrSdpCodecPhoneField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseConnectionL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseConnectionL()
-	{
-	iSdpConnectionField = 
-		iSdpCodecParseUtil->ParseConnectionL(KErrSdpCodecConnectionField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseBandwidthL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseBandwidthL()
-	{
-	delete iBandwidthFields;
-	iBandwidthFields = 0;
-	iBandwidthFields = 
-		iSdpCodecParseUtil->ParseBandwidthL(KErrSdpCodecBandwidthField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseTimeFieldL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseTimeFieldL()
-	{
-	delete iTimeFields;
-	iTimeFields = 0;
-	iTimeFields = iSdpCodecParseUtil->ParseTimeFieldL(KErrSdpCodecTimeField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseZoneAdjustmentL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseZoneAdjustmentL()
-	{
-	SetZoneAdjustmentsL(
-		iSdpCodecParseUtil->ParseZoneAdjustmentL(KErrSdpCodecZoneField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseEncryptionKeyL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseEncryptionKeyL()
-	{
-	SetKey(iSdpCodecParseUtil->ParseEncryptionKeyL(KErrSdpCodecKeyField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseAttributeFieldL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseAttributeFieldL()
-	{
-	delete iAttributeFields;
-	iAttributeFields = 0;
-	iAttributeFields = 
-		iSdpCodecParseUtil->ParseAttributeFieldL(KErrSdpCodecAttributeField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ParseMediaLevelL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ParseMediaLevelL()
-	{
-	delete iMediaFields;
-	iMediaFields = 0;
-	iMediaFields = iSdpCodecParseUtil->ParseMediaLevelL();
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::ExternalizeDesCArrayL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::ExternalizeDesCArrayL(CDesC8ArraySeg& aArray,
-						   RWriteStream& aStream) const
-	{
-	aStream.WriteUint32L (aArray.MdcaCount());
-	for (TInt i = 0;i < aArray.MdcaCount();i++)
-		{
-		aStream.WriteUint32L (aArray.MdcaPoint(i).Length());
-		aStream.WriteL(aArray.MdcaPoint(i));
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::EncodeDesCArrayL
-// ---------------------------------------------------------------------------
-//
-void CSdpDocument::EncodeDesCArrayL(CDesC8ArraySeg& aArray, TInt aIndex,
-										RWriteStream& aStream) const
-	{
-	RStringF headername = 
-					iPool.StringF(aIndex, SdpCodecStringConstants::Table);
-	for (TInt i = 0;i < aArray.MdcaCount();i++)
-		{
-		if(aArray.MdcaPoint(i).Compare(KNullDesC8) != 0)
-			{
-			aStream.WriteL(headername.DesC());
-			aStream.WriteL(aArray.MdcaPoint(i));
-			aStream.WriteL(KCRLF);
-			}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpDocument::GetTokenFromStreamL
-// ---------------------------------------------------------------------------
-//
-TDesC8& CSdpDocument::GetTokenFromStreamL(RReadStream& aStream)
-	{
-	TUint32 tokenLength = aStream.ReadUint32L();
-	HBufC8* tmp = 0;
-	if (tokenLength > 0)
-		{
-		tmp = HBufC8::NewLC(tokenLength);
-		TPtr8 tokenptr(tmp->Des());
-		aStream.ReadL (tokenptr, tokenLength);
-		CleanupStack::Pop();//tmp
-		}
-	else
-		{
-		tmp = KNullDesC8().AllocL();
-		}
-	delete iToken;
-	iToken = tmp;
-	return *iToken;
-	}
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpfmtattributefield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,393 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpFmtAttributeField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32mem.h>
-#include "sdpfmtattributefield.h"
-#include "sdpattributefield.h"
-#include "sdprtpmapvalue.h"
-#include "sdputil.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecstringpool.h"
-#include "sdpcodecerr.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::CSdpFmtAttributeField
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CSdpFmtAttributeField::CSdpFmtAttributeField()
-: iFormat ( KNullDesC8() ), iValuePart( KNullDesC8() )
-    {
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::ConstructL(   
-    const TDesC8& aText )
-    {
-    iPool = SdpCodecStringPool::StringPoolL();
-
-    iAttributeField = CSdpAttributeField::DecodeL( aText );
-    FormatValueParamsL( iAttributeField );   
-    __TEST_INVARIANT;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::ConstructL( RStringF aAttribute,
-                                        const TDesC8& aFormat,
-                                        const TDesC8& aValue )
-    {
-    iPool = SdpCodecStringPool::StringPoolL();
-
-    TInt length = aFormat.Length() + aValue.Length() + KSPStr().Length();        
-    HBufC8* text = HBufC8::NewLC( length );
-    text->Des().Copy( aFormat );
-    if ( aValue.Length() > 0 )
-        {
-        text->Des().Append( KSPStr );
-        text->Des().Append( aValue );
-        }
-
-    iAttributeField = CSdpAttributeField::NewL( aAttribute, *text );
-    CleanupStack::PopAndDestroy(); //text
-    
-    FormatValueParamsL( iAttributeField );
-    __TEST_INVARIANT;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::DecodeL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpFmtAttributeField* CSdpFmtAttributeField::DecodeL( 
-    const TDesC8& aText )
-    {
-    CSdpFmtAttributeField* field = 
-        CSdpFmtAttributeField::DecodeLC( aText );
-    CleanupStack::Pop();    // field
-    return field;    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::DecodeLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpFmtAttributeField* CSdpFmtAttributeField::DecodeLC(    
-    const TDesC8& aText )
-    {
-    CSdpFmtAttributeField* field = new ( ELeave ) CSdpFmtAttributeField;
-    CleanupStack::PushL( field );
-    field->ConstructL( aText );
-    return field;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpFmtAttributeField* CSdpFmtAttributeField::NewL(
-    RStringF aAttribute,
-    const TDesC8& aFormat,
-    const TDesC8& aValue )
-    {
-    CSdpFmtAttributeField* field =
-        CSdpFmtAttributeField::NewLC( aAttribute, aFormat, aValue );
-    CleanupStack::Pop();    // field
-    return field;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpFmtAttributeField* CSdpFmtAttributeField::NewLC(
-    RStringF aAttribute,
-    const TDesC8& aFormat,
-    const TDesC8& aValue )
-    {
-    CSdpFmtAttributeField* field = new ( ELeave ) CSdpFmtAttributeField;
-    CleanupStack::PushL( field );
-    field->ConstructL( aAttribute, aFormat, aValue );
-    return field;
-    }
-
-// Destructor
-EXPORT_C CSdpFmtAttributeField::~CSdpFmtAttributeField()
-    {
-    delete iAttributeField;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::EncodeL
-// Encodes the string to a proper message format
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpFmtAttributeField::EncodeL( RWriteStream& aStream ) const
-    {
-    __TEST_INVARIANT;
-    iAttributeField->EncodeL( aStream );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::CloneL
-// Creates an exact copy of the object
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpFmtAttributeField* CSdpFmtAttributeField::CloneL() const
-    {
-    __TEST_INVARIANT;
-    
-    CSdpFmtAttributeField* obj =
-        CSdpFmtAttributeField::NewL( iAttributeField->Attribute(), 
-                                     Format(), Value() );                               
-
-    __ASSERT_DEBUG( *obj == *this, 
-                    User::Panic( KSdpCodecPanicCat, KSdpCodecPanicInternal ) );
-
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::operator==
-// Creates an exact copy of the object
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpFmtAttributeField::operator==(
-    const CSdpFmtAttributeField& aObj ) const
-    {
-    __TEST_INVARIANT;
-    
-    return ( *iAttributeField == *(aObj.AttributeField()) 
-        && iFormat.Compare(aObj.Format()) == 0
-        && iValuePart.Compare(aObj.Value()) == 0);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::Attribute
-// Returns attribute field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpFmtAttributeField::Attribute() const
-    {
-    __TEST_INVARIANT;
-    return iAttributeField->Attribute();
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::Format
-// Returns Format
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpFmtAttributeField::Format() const
-    {   
-    __TEST_INVARIANT;
-
-    return iFormat;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::Value
-// Returns Format value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpFmtAttributeField::Value() const
-    {
-    __TEST_INVARIANT;
-    return iValuePart;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::SetL
-// Sets new format attribute
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpFmtAttributeField::SetL( RStringF aAttribute, 
-                                        const TDesC8& aFormat, 
-                                        const TDesC8& aValue )
-    {
-    __TEST_INVARIANT;
-
-    TInt length = aFormat.Length() + aValue.Length() + KSPStr().Length();        
-    HBufC8* txt = HBufC8::NewLC( length );
-    txt->Des().Copy( aFormat );
-    if ( aValue.Length() > 0 )
-        {
-        txt->Des().Append( KSPStr );
-        txt->Des().Append( aValue );
-        }
-
-    CSdpAttributeField* attrFld = CSdpAttributeField::NewL(aAttribute, *txt);
-    CleanupStack::PopAndDestroy(); //txt
-    
-    delete iAttributeField;
-    iAttributeField = attrFld;    
-
-    FormatValueParamsL( iAttributeField );
-
-    __TEST_INVARIANT;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::ExternalizeL
-// Externalizes object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::ExternalizeL( RWriteStream& aStream ) const
-    {
-    __TEST_INVARIANT;
-
-    iAttributeField->ExternalizeL( aStream );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::InternalizeL
-// Internalizes object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpFmtAttributeField* CSdpFmtAttributeField::InternalizeL( 
-    RReadStream& aStream )
-    {
-    CSdpFmtAttributeField* obj = new ( ELeave ) CSdpFmtAttributeField();
-    CleanupStack::PushL( obj );
-    obj->DoInternalizeL( aStream );
-    CleanupStack::Pop();
-
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::DoInternalizeL
-// Does the "2nd phase construction" of internalization
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::DoInternalizeL( RReadStream& aStream )
-    {
-    iPool = SdpCodecStringPool::StringPoolL();
-    iAttributeField = CSdpAttributeField::InternalizeL( aStream );
-    FormatValueParamsL( iAttributeField );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::AttributeField
-// Returns attribute field
-// -----------------------------------------------------------------------------
-//
-const CSdpAttributeField* CSdpFmtAttributeField::AttributeField() const
-    {
-    __TEST_INVARIANT;
-    return iAttributeField;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::FormatValueParamsL
-// Formats value parameters
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::FormatValueParamsL( CSdpAttributeField* aField )
-    {
-    __ASSERT_ALWAYS (aField->Attribute() == 
-                     iPool.StringF( SdpCodecStringConstants::EAttributeFmtp, 
-                                SdpCodecStringConstants::Table ) 
-                  || aField->Attribute() ==
-                     iPool.StringF( SdpCodecStringConstants::EAttributeRtpmap,
-                                SdpCodecStringConstants::Table ),
-                User::Leave( KErrSdpCodecMediaAttributeField ));
-    DecodeFormatL( aField->Value() );
-    if ( iValuePart.Length() == 0 &&
-         aField->Attribute() ==
-         iPool.StringF( SdpCodecStringConstants::EAttributeRtpmap,
-                        SdpCodecStringConstants::Table ))
-        {
-        User::Leave( KErrSdpCodecMediaAttributeField );
-        }
-    }
-
-
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::DecodeFormatL
-// Decodes format parameter from string
-// -----------------------------------------------------------------------------
-//
-void CSdpFmtAttributeField::DecodeFormatL( const TDesC8& aText )
-    {
-    __ASSERT_ALWAYS( aText.Length() > 0, 
-                     User::Leave( KErrSdpCodecAttributeField ) );
-
-    TInt pos = aText.Locate( KSPChar );
-
-    if ( pos == 0 )
-        {
-        User::Leave( KErrSdpCodecAttributeField );
-        }
-    
-    if ( pos > 0 )
-        {
-        iFormat.Set( aText.Left( pos ) );
-
-        TPtrC8 formatParameters( aText.Right( aText.Length() - pos - 1 ) );
-        
-        if ( formatParameters.Length() > 0 )
-            {
-            iValuePart.Set( formatParameters );
-            }
-        else
-            {
-            iValuePart.Set( KNullDesC8 );
-            }
-        }
-    else
-        {
-        // No format parameters
-        iFormat.Set( aText );
-        iValuePart.Set( KNullDesC8 );
-        }
-    }
-
-// For DEBUG builds
-// -----------------------------------------------------------------------------
-// CSdpFmtAttributeField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//	
-void CSdpFmtAttributeField::__DbgTestInvariant() const
-	{
-    TBool invariant = iAttributeField != NULL;
-
-    if ( !invariant )
-        {
-        User::Invariant();
-        }
-	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpkeyfield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,525 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpKeyField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <uri8.h>
-#include <s32strm.h>
-#include "sdpkeyfield.h"
-#include "sdputil.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecstringpool.h"
-
-// LOCAL CONSTANTS
-const TText8 KPlusChar = '+';
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::DecodeL
-// Decodes key field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpKeyField::DecodeL(const TDesC8& aFieldValue)
-	{
-	CSdpKeyField* obj = DecodeLC(aFieldValue);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::DecodeL
-// Decodes key field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpKeyField::DecodeLC(const TDesC8& aFieldValue)
-	{
-	CSdpKeyField* obj = new (ELeave) CSdpKeyField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aFieldValue);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpKeyField::NewL(RStringF aMethod,
-                                          const TDesC8& aEncryptionKey)
-	{
-	CSdpKeyField* obj = NewLC(aMethod, aEncryptionKey);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpKeyField::NewLC(RStringF aMethod,
-                                           const TDesC8& aEncryptionKey)
-	{
-	CSdpKeyField* obj = new (ELeave) CSdpKeyField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aMethod, aEncryptionKey);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::~CSdpKeyField
-// Destructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField::~CSdpKeyField()
-	{
-    iMethod.Close();
-	delete iEncryptionKey;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpKeyField::EncodeL(RWriteStream& aStream) const
-	{
-	__TEST_INVARIANT;
-    RStringF header = iStringPool.StringF(SdpCodecStringConstants::EKey,
-                                        SdpCodecStringConstants::Table);
-    aStream.WriteL( header.DesC() );
-
-    aStream.WriteL( iMethod.DesC() );
-    if (iMethod != iStringPool.StringF(SdpCodecStringConstants::EMethodPrompt,
-                                    SdpCodecStringConstants::Table))
-        {
-        aStream.WriteL( KColonStr );
-        if (iEncryptionKey->Length() > 0)
-            {
-            aStream.WriteL( *iEncryptionKey );
-            }
-        }
-
-    aStream.WriteL( KCRLFStr );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::CloneL
-// Creates an exact copy of the key field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField * CSdpKeyField::CloneL() const
-	{
-	__TEST_INVARIANT;
-	CSdpKeyField* obj = CSdpKeyField::NewL(iMethod, *iEncryptionKey);
-	__ASSERT_DEBUG(*this == *obj, User::Panic(  KSdpCodecPanicCat,
-                                                KSdpCodecPanicInternal));
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::operator ==
-// Checks if two key fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpKeyField::operator == (const CSdpKeyField& aObj) const
-	{
-	__TEST_INVARIANT;
-	return iMethod == aObj.iMethod
-			&& ((iEncryptionKey == 0 && aObj.iEncryptionKey == 0)
-				|| (iEncryptionKey != 0 && aObj.iEncryptionKey != 0
-                && aObj.iEncryptionKey->Compare(*iEncryptionKey) == 0));
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::Method
-// Returns method
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpKeyField::Method() const
-	{
-	__TEST_INVARIANT;
-	return iMethod;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::EncryptionKey
-// Returns encryption key
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpKeyField::EncryptionKey() const
-	{
-	__TEST_INVARIANT;
-	return *iEncryptionKey;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetL
-// Sets new values to key method and encryption key
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpKeyField::SetL(RStringF aMethod,
-                                 const TDesC8& aEncryptionKey)
-	{
-    RStringF methodClear = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodClear,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodBase64 = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodBase64,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodUri = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodUri,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodPrompt = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodPrompt,
-                                        SdpCodecStringConstants::Table );
-
-    if (aMethod == methodClear)
-        {
-        SetMethodClearAndKeyL(methodClear, aEncryptionKey);
-        }
-    else if (aMethod == methodBase64)
-        {
-        SetMethodBase64AndKeyL(methodBase64, aEncryptionKey);
-        }
-    else if (aMethod == methodUri)
-        {
-        SetMethodUriAndKeyL(methodUri, aEncryptionKey);
-        }
-    else if (aMethod == methodPrompt)
-        {
-        SetMethodPromptL(methodPrompt, aEncryptionKey);
-        }
-    else
-        {
-        User::Leave(KErrSdpCodecKeyField);
-        }
-
-    __TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::ExternalizeL(RWriteStream& aStream) const
-    {
-    aStream.WriteUint32L( iMethod.DesC().Length() );
-    aStream.WriteL( iMethod.DesC() );
-
-    aStream.WriteUint32L( iEncryptionKey->Des().Length() );
-	if (iEncryptionKey->Des().Length() > 0)
-        {
-        aStream.WriteL(iEncryptionKey->Des(), iEncryptionKey->Des().Length());
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpKeyField* CSdpKeyField::InternalizeL(RReadStream& aStream)
-    {
-    CSdpKeyField* self = new (ELeave) CSdpKeyField();
-    CleanupStack::PushL(self);
-    self->iStringPool = SdpCodecStringPool::StringPoolL();
-
-    self->DoInternalizeL(aStream);
-
-    CleanupStack::Pop(); // self
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::CSdpKeyField
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CSdpKeyField::CSdpKeyField()
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::ConstructL(const TDesC8& aText)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-    RArray <TPtrC8> lines;
-    lines = SdpUtil::DivideToLinesL(aText, KErrSdpCodecKeyField);
-    CleanupClosePushL(lines);
-
-    TLex8 lexer(lines[0]);
-    RArray<TPtrC8> keyArray = GetElementsFromLineL(lexer);
-    CleanupClosePushL(keyArray);
-    const TDesC8& keyName = iStringPool.StringF(SdpCodecStringConstants::EKey,
-        SdpCodecStringConstants::Table).DesC();
-
-    __ASSERT_ALWAYS(lines.Count() == 1
-                    && keyArray.Count() >= 2 && keyArray.Count() <= 3
-                    && keyArray[0].Find(keyName) != KErrNotFound,
-                    User::Leave(KErrSdpCodecKeyField));
-
-    RStringF method = iStringPool.OpenFStringL(keyArray[1]);
-    CleanupClosePushL(method);
-
-    if (keyArray.Count() == 3)
-        {
-        SetL(method, keyArray[2]);
-        }
-    else
-        {
-        SetL(method, KNullDesC8);
-        }
-    CleanupStack::PopAndDestroy(3);  // method, lines, keyArray
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::ConstructL(RStringF aMethod, const TDesC8& aEncryptionKey)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-    SetL(aMethod, aEncryptionKey);
-
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::DoInternalizeL
-// Internalizes the object members from stream
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::DoInternalizeL(RReadStream& aStream)
-    {
-     // <method>
-    TUint32 length = aStream.ReadUint32L();
-    HBufC8* method = HBufC8::NewLC(length);
-    TPtr8 ptr(method->Des());
-    aStream.ReadL(ptr, length);
-
-    RStringF methodStr = iStringPool.OpenFStringL(*method);
-    CleanupStack::PopAndDestroy(); // method
-    CleanupClosePushL(methodStr);
-
-    length = aStream.ReadUint32L();
-    if (length > 0)
-        {
-        HBufC8* key = HBufC8::NewLC(length);
-        ptr.Set(key->Des());
-        aStream.ReadL(ptr, length);
-
-        SetL(methodStr, *key);
-        CleanupStack::PopAndDestroy(); //key
-        }
-    else
-        {
-        SetL(methodStr, KNullDesC8);
-        }
-    CleanupStack::PopAndDestroy(); // methodStr
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetMethodAndKeyL
-// Sets new values to key method and encryption key
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::SetMethodAndKeyL(RStringF aMethod,
-                                    const TDesC8& aEncryptionKey,
-                                    TBool aAllowEmptyKeyValue)
-    {
-    HBufC8* tempKey = aEncryptionKey.AllocL();
-    tempKey->Des().Trim();
-    if (tempKey->Length() == 0 && !aAllowEmptyKeyValue)
-        {
-        delete tempKey;
-        User::Leave(KErrSdpCodecKeyField);
-        }
-    iMethod.Close();
-    iMethod = aMethod.Copy();
-    delete iEncryptionKey;
-    iEncryptionKey = tempKey;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetMethodClearAndKeyL
-// Sets key method to clear and new encryption key
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::SetMethodClearAndKeyL(RStringF aMethod,
-                                         const TDesC8& aEncryptionKey)
-    {
-    __ASSERT_ALWAYS(SdpUtil::IsByteString(aEncryptionKey),
-                    User::Leave(KErrSdpCodecKeyField));
-    SetMethodAndKeyL(aMethod, aEncryptionKey, EFalse);
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetMethodBase64AndKeyL
-// Sets key method to Base64 and new encryption key
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::SetMethodBase64AndKeyL(RStringF aMethod,
-                                          const TDesC8& aText)
-    {
-    __ASSERT_ALWAYS(aText.Length() > 0, User::Leave(KErrSdpCodecKeyField));
-
-    for (TInt i = 0; i < aText.Length(); i++)
-        {
-        if ( !( ( aText[i] >= 'a' && aText[i] <= 'z' ) ||
-                ( aText[i] >= 'A' && aText[i] <= 'Z' ) ||
-                ( aText[i] >= '0' && aText[i] <= '9' ) ||
-                ( aText[i] == KPlusChar ) ||
-                ( aText[i] == KSlashChar ) ||
-                ( aText[i] == KEqualChar ) ) )
-            {
-            User::Leave(KErrSdpCodecKeyField);
-            }
-        }
-    SetMethodAndKeyL(aMethod, aText, EFalse);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetMethodUriAndKeyL
-// Sets key method to uri and new encryption key
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::SetMethodUriAndKeyL(RStringF aMethod, const TDesC8& aText)
-    {
-    TUriParser8 parser;
-    User::LeaveIfError(parser.Parse(aText));
-    SetMethodAndKeyL(aMethod, aText, EFalse);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::SetMethodPromptL
-// Sets key method to Prompt and new encryption key
-// -----------------------------------------------------------------------------
-//
-void CSdpKeyField::SetMethodPromptL(RStringF aMethod, const TDesC8& aText)
-    {
-    __ASSERT_ALWAYS(aText.Length() == 0, User::Leave(KErrSdpCodecKeyField));
-    SetMethodAndKeyL(aMethod, aText, ETrue);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpKeyField::GetElementsFromLineL
-// Gets all the elements from a single line
-// -----------------------------------------------------------------------------
-//
-RArray<TPtrC8> CSdpKeyField::GetElementsFromLineL( TLex8& aLexer)
-    {
-    RArray<TPtrC8> lineArray;
-    CleanupClosePushL(lineArray);
-
-    aLexer.Mark();
-    for (TChar curChar(KColonChar); curChar != KEqualChar;)
-        {
-        curChar = aLexer.Peek();
-        if (curChar == KEofChar || curChar == KLFChar ||
-             curChar == KCRChar)
-            {
-            User::Leave(KErrSdpCodecKeyField);
-            }
-        aLexer.Inc();
-        }
-    User::LeaveIfError(lineArray.Append(aLexer.MarkedToken()));
-
-    TBool colonFound = EFalse;
-    TBool eofcFound = EFalse;
-    while (!eofcFound)
-        {
-        aLexer.Mark();
-        while ((aLexer.Peek() != KColonChar || colonFound) &&
-                aLexer.Peek() != KCRChar &&
-                aLexer.Peek() != KLFChar &&
-                aLexer.Peek() != KEofChar)
-            {
-            aLexer.Inc();
-            }
-
-        if (aLexer.MarkedToken().Length() > 0)
-            {
-            User::LeaveIfError(lineArray.Append(aLexer.MarkedToken()));
-            }
-        else
-            {
-            User::Leave(KErrSdpCodecKeyField);
-            }
-
-        if (aLexer.Peek() == KColonChar)
-            {
-            colonFound = ETrue;
-            }
-
-        if (aLexer.Peek() == KCRChar)
-            {
-            aLexer.Inc();
-            }
-        if (aLexer.Peek() == KLFChar)
-            {
-            aLexer.Inc();
-            if (aLexer.Peek() == KEofChar)
-                {
-                eofcFound = ETrue;
-                }
-            }
-        else
-            {
-            aLexer.Inc();
-            }
-        }
-
-    CleanupStack::Pop();
-    return lineArray;
-    }
-
-void CSdpKeyField::__DbgTestInvariant() const
-	{
-    RStringF methodClear = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodClear,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodBase64 = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodBase64,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodUri = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodUri,
-                                        SdpCodecStringConstants::Table );
-    RStringF methodPrompt = iStringPool.StringF(
-                                        SdpCodecStringConstants::EMethodPrompt,
-                                        SdpCodecStringConstants::Table );
-
-    TBool invariant =   (iMethod == methodPrompt
-	                        && (iEncryptionKey != 0 && (iEncryptionKey->Length() == 0)) )
-						||  ((iMethod == methodClear || iMethod == methodBase64
-	                            || iMethod == methodUri)
-                        && (iEncryptionKey != 0 && (iEncryptionKey->Length() != 0)) );
-
-	if (!invariant)
-		User::Invariant();
-	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdpmediafield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1044 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpMediaField.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32mem.h>
-#include <s32strm.h>
-#include "sdpmediafield.h"
-#include "sdpconnectionfield.h"
-#include "sdpbandwidthfield.h"
-#include "sdpattributefield.h"
-#include "sdpkeyfield.h"
-#include "sdpcodecstringconstants.h"
-#include "sdputil.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "sdpcodecstringpool.h"
-#include "sdpfmtattributefield.h"
-#include "sdpcodectemplate.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecparseutil.h"
-#include "sdpcodecconstants.h"
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::DecodeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField* 
-CSdpMediaField::DecodeL(const TDesC8& aText, TBool aRecurse)
-	{
-	CSdpMediaField* obj = DecodeLC(aText,aRecurse);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::DecodeLC
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField* 
-CSdpMediaField::DecodeLC(const TDesC8& aText, TBool aRecurse)
-	{
-	__ASSERT_ALWAYS (aText.Length() > 0, User::Leave(KErrSdpCodecMediaField));
-	CSdpMediaField* obj = new(ELeave)CSdpMediaField;
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aRecurse);
-	obj->ParseL(aText);
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::NewL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField* CSdpMediaField::NewL(RStringF aMedia,
-											TUint aPort,
-											RStringF aProtocol,
-											const TDesC8& aFormatList)
-	{
-	CSdpMediaField* obj = NewLC(aMedia, aPort, aProtocol, aFormatList);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::NewLC
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField* CSdpMediaField::NewLC(RStringF aMedia,
-											TUint aPort,
-											RStringF aProtocol,
-											const TDesC8& aFormatList)
-	{
-	CSdpMediaField* obj = new(ELeave)CSdpMediaField;
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aMedia, aPort, aProtocol, aFormatList);
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::~CSdpMediaField
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField::~CSdpMediaField()
-	{
-	delete iInfo;
-	delete iSdpKeyField;
-	iElementArray.Reset();
-	iMedia.Close();
-	iProtocol.Close();
-	delete iFormatList;
-	delete iToken;
-	if(iBandwidthFields)
-		{
-		iBandwidthFields->ResetAndDestroy();
-		delete iBandwidthFields;
-		}
-	if(iAttributeFields)
-		{
-		iAttributeFields->ResetAndDestroy();
-		delete iAttributeFields;
-		}
-	if(iConnectionFields)
-		{
-		iConnectionFields->ResetAndDestroy();
-		delete iConnectionFields;
-		}
-	if(iFmtAttrFields)
-		{
-		iFmtAttrFields->ResetAndDestroy();
-		delete iFmtAttrFields;
-		}
-	delete iSdpCodecParseUtil;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::CloneL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpMediaField * CSdpMediaField::CloneL(TBool aRecurse) const
-	{
-	CSdpMediaField* obj = new(ELeave)CSdpMediaField;
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aRecurse);
-	obj->ConstructL(*this);
-	CleanupStack::Pop();//obj
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::operator ==
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpMediaField::operator == (const CSdpMediaField& aObj) const
-	{
-	TBool result = ETrue;
-	if(	!(iMedia==aObj.Media()) ||
-		!(iPort == aObj.Port()) ||
-		!(iPortCount == aObj.iPortCount) ||
-		!(iProtocol == aObj.Protocol()) ||
-		!(*iFormatList==(*aObj.iFormatList)) ||
-		(!(*iInfo==(*aObj.iInfo)))||
-		(!iSdpKeyField && aObj.Key())||
-		(iSdpKeyField && !aObj.Key())||
-		((iSdpKeyField && aObj.Key()) && (!(*iSdpKeyField==(*aObj.Key()))))||
-		(iBandwidthFields->Count() != aObj.iBandwidthFields->Count())||
-		(iAttributeFields->Count() != aObj.iAttributeFields->Count())||
-		(iFmtAttrFields->Count() != aObj.iFmtAttrFields->Count())||
-		(iConnectionFields->Count() != aObj.iConnectionFields->Count()))
-		{
-		result = EFalse;
-		}
-
-	TInt i  = 0;
-	if(result)
-		{
-		for (i=0; i < (aObj.iConnectionFields)->Count(); i++)
-			{
-			if((!(*iConnectionFields)[i] && (*aObj.iConnectionFields)[i]) ||
-				((*iConnectionFields)[i] && !(*aObj.iConnectionFields)[i]))
-				{
-				return EFalse;
-				}
-
-			if(((*iConnectionFields)[i] && (*aObj.iConnectionFields)[i]) &&
-				(!(*(*iConnectionFields)[i]==(*(*aObj.iConnectionFields)[i]))))
-				{	
-				return EFalse;
-				}
-			}
-
-		for (i=0; i < (aObj.iBandwidthFields)->Count(); i++)
-			{
-			if((!(*iBandwidthFields)[i] && (*aObj.iBandwidthFields)[i]) ||
-				((*iBandwidthFields)[i] && !(*aObj.iBandwidthFields)[i]))
-				{
-				return EFalse;
-				}
-
-			if(((*iBandwidthFields)[i] && (*aObj.iBandwidthFields)[i]) &&
-				(!(*(*iBandwidthFields)[i]==(*(*aObj.iBandwidthFields)[i]))))
-				{	
-				return EFalse;
-				}
-			}
-
-		for (i=0; i < (aObj.iAttributeFields)->Count(); i++)
-			{
-			if((!((*iAttributeFields)[i]) && ((*aObj.iAttributeFields)[i]))||
-				((*iAttributeFields)[i] && !(*aObj.iAttributeFields)[i]))
-				{
-				return EFalse;
-				}
-	
-			if(((*iAttributeFields)[i] && (*aObj.iAttributeFields)[i]) &&
-				(!(*(*iAttributeFields)[i]==(*(*aObj.iAttributeFields)[i]))))
-				{
-				return EFalse;
-				}
-			}
-
-		for (i=0; i < (aObj.iFmtAttrFields)->Count(); i++)
-			{
-			if((!((*iFmtAttrFields)[i]) && ((*aObj.iFmtAttrFields)[i]))||
-				((*iFmtAttrFields)[i] && !(*aObj.iFmtAttrFields)[i]))
-				{
-				return EFalse;
-				}
-	
-			if(((*iFmtAttrFields)[i] && (*aObj.iFmtAttrFields)[i]) &&
-				(!(*(*iFmtAttrFields)[i]==(*(*aObj.iFmtAttrFields)[i]))))
-				{
-				return EFalse;
-				}
-			}
-		}
-	return result;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Media
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpMediaField::Media() const
-	{
-	return iMedia;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetMedia
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetMediaL(RStringF aMedia)
-	{
-	__ASSERT_ALWAYS(SdpUtil::IsTokenChar(aMedia.DesC()), 
-					User::Leave(KErrSdpCodecMediaField));
-	iMedia.Close();
-	iMedia = aMedia.Copy();
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Protocol
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpMediaField::Protocol() const
-	{
-	return iProtocol;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetProtocol
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetProtocolL(RStringF aProtocol)
-	{
-	__ASSERT_ALWAYS(SdpUtil::IsTokenCharWithOptionalSlash(aProtocol.DesC()),
-					User::Leave(KErrSdpCodecMediaField));
-    if (aProtocol == iPool.StringF( SdpCodecStringConstants::EProtocolUdp, 
-                            SdpCodecStringConstants::Table ))
-        {
-	    __ASSERT_ALWAYS((iPort == 0 || (iPort >= 1024 && iPort <= 65535)),
-					User::Leave(KErrSdpCodecMediaField));
-        }
-
-	iProtocol.Close();
-	iProtocol = aProtocol.Copy();    
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Port
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TUint CSdpMediaField::Port() const
-	{
-	return iPort;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetPortL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetPortL(TUint aPort)
-	{
-    if ( iProtocol == iPool.StringF( SdpCodecStringConstants::EProtocolUdp, 
-                            SdpCodecStringConstants::Table ))
-        {
-	    __ASSERT_ALWAYS((aPort == 0 || (aPort >= 1024 && aPort <= 65535)),
-					User::Leave(KErrSdpCodecMediaField));
-        }
-	iPort = aPort;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::PortCount
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TUint CSdpMediaField::PortCount() const
-	{
-	return iPortCount;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetPortCount
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetPortCountL(TUint aCount)
-	{
-	__ASSERT_ALWAYS(aCount > 0, User::Leave(KErrSdpCodecMediaField));
-	iPortCount = aCount;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::FormatList
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpMediaField::FormatList() const
-	{
-	return *iFormatList;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetFormatListL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetFormatListL(const TDesC8& aValue)
-	{
-	__ASSERT_ALWAYS(SdpUtil::IsTokenCharWithSpacesL(aValue), 
-										User::Leave(KErrSdpCodecMediaField));
-	HBufC8* tmp = aValue.AllocL();
-	delete iFormatList;
-	iFormatList = tmp;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::CSdpMediaField
-// ----------------------------------------------------------------------------
-//
-CSdpMediaField::CSdpMediaField()
-	{
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpMediaField::ConstructL()
-	{
-	iPool = SdpCodecStringPool::StringPoolL();
-	iInfo = KNullDesC8().AllocL();
-	iFormatList = KNullDesC8().AllocL();
-	iToken = KNullDesC8().AllocL();
-	iBandwidthFields = new(ELeave)RPointerArray<CSdpBandwidthField>;
-	iConnectionFields = new(ELeave)RPointerArray<CSdpConnectionField>;
-	iAttributeFields = new(ELeave)RPointerArray<CSdpAttributeField>;
-	iFmtAttrFields = new(ELeave)RPointerArray<CSdpFmtAttributeField>;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpMediaField::ConstructL(TBool aRecurse)
-	{
-	ConstructL();
-	iRecurse = aRecurse;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ConstructL
-// ----------------------------------------------------------------------------
-//
-void 
-CSdpMediaField::ConstructL(RStringF aMedia, TUint aPort, RStringF aProtocol,
-						const TDesC8& aFormatList)
-	{
-	__ASSERT_ALWAYS(SdpUtil::IsTokenChar(aMedia.DesC()) &&
-					(aPort== 0 || (aPort >= 1024 && aPort <= 65535)) &&
-					SdpUtil::IsTokenCharWithOptionalSlash(aProtocol.DesC()) &&
-					SdpUtil::IsTokenCharWithSpacesL(aFormatList), 
-					User::Leave(KErrArgument));
-	ConstructL();
-	iMedia = aMedia.Copy();
-	iProtocol = aProtocol.Copy(); 
-	SetPortL(aPort);
-	delete iFormatList;
-	iFormatList = 0;
-	iFormatList = aFormatList.AllocL();	
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpMediaField::ConstructL(const CSdpMediaField& aSdpMediaField)
-	{
-	iMedia = aSdpMediaField.Media().Copy();
-	iProtocol = aSdpMediaField.Protocol().Copy();
-    SetPortL(aSdpMediaField.Port());
-	iPortCount = aSdpMediaField.PortCount();
-	HBufC8* tmp = aSdpMediaField.FormatList().AllocL();
-	delete iFormatList;
-	iFormatList = 0;
-	iFormatList = tmp;
-	if(iRecurse)
-		{
-		tmp = aSdpMediaField.Info().AllocL();
-		delete iInfo;
-		iInfo = tmp;
-		SdpCodecTemplate<CSdpConnectionField>::CloneArrayL(*iConnectionFields,
-			*aSdpMediaField.iConnectionFields);
-		SdpCodecTemplate<CSdpBandwidthField>::CloneArrayL(*iBandwidthFields,
-			*aSdpMediaField.iBandwidthFields);
-		if(aSdpMediaField.Key())
-			{
-			iSdpKeyField = aSdpMediaField.Key()->CloneL();
-			}
-		SdpCodecTemplate<CSdpAttributeField>::CloneArrayL(*iAttributeFields,
-			*aSdpMediaField.iAttributeFields);
-		SdpCodecTemplate<CSdpFmtAttributeField>::CloneArrayL(*iFmtAttrFields,
-			*aSdpMediaField.iFmtAttrFields);		
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Info
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpMediaField::Info() const
-	{
-	return *iInfo;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetInfoL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetInfoL(const TDesC8& aValue)
-	{
-	__ASSERT_ALWAYS (aValue.Compare(KNullDesC8) == 0||
-					SdpUtil::IsByteString(aValue),
-					User::Leave(KErrSdpCodecMediaInfoField));
-	HBufC8* tmp = aValue.AllocL();
-	tmp->Des().Trim();
-	delete iInfo;
-	iInfo = tmp;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Key
-// ----------------------------------------------------------------------------
-//
-EXPORT_C CSdpKeyField* CSdpMediaField::Key()
-	{
-	return iSdpKeyField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::Key
-// ----------------------------------------------------------------------------
-//
-EXPORT_C const CSdpKeyField* CSdpMediaField::Key() const
-	{
-	return iSdpKeyField;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::SetKey
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::SetKey(CSdpKeyField* aObj)
-	{
-	delete iSdpKeyField;
-	iSdpKeyField = aObj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ConnectionFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpConnectionField>& CSdpMediaField::ConnectionFields()
-	{
-	return *iConnectionFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::BandwidthFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpBandwidthField>& CSdpMediaField::BandwidthFields()
-	{
-	return *iBandwidthFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::AttributeFields
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpAttributeField>& CSdpMediaField::AttributeFields()
-	{
-	return *iAttributeFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::FormatAttributeFields()
-// ----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpFmtAttributeField>& 
-CSdpMediaField::FormatAttributeFields()
-	{
-	return *iFmtAttrFields;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::EncodeL
-// ----------------------------------------------------------------------------
-//
-EXPORT_C void 
-CSdpMediaField::EncodeL(RWriteStream& aStream, TBool aRecurse) const
-	{
-	RStringF headername = iPool.StringF( SdpCodecStringConstants::EMedia, 
-                                               SdpCodecStringConstants::Table );
-    aStream.WriteL(headername.DesC());
-	aStream.WriteL(iMedia.DesC());
-	aStream.WriteL(KSPStr);
-	TBuf8<80> text;
-	text.Format(_L8("%u"), iPort);
-	aStream.WriteL(text);
-	if(iPortCount>0)
-		{
-		aStream.WriteL(_L8("/"));
-		text.Format(_L8("%u"), iPortCount);
-	    aStream.WriteL(text);
-		}
-	aStream.WriteL(KSPStr);
-	aStream.WriteL(iProtocol.DesC());
-	aStream.WriteL(KSPStr);
-	aStream.WriteL(*iFormatList);
-	aStream.WriteL(KCRLFStr);	
-	if(aRecurse)
-		{
-		SdpUtil::EncodeBufferL(*iInfo, 
-						SdpCodecStringConstants::EInfo, aStream);
-		SdpCodecTemplate<CSdpConnectionField>::EncodeArrayL(*iConnectionFields,
-															aStream);
-		SdpCodecTemplate<CSdpBandwidthField>::EncodeArrayL(*iBandwidthFields,
-															aStream);
-		SdpCodecTemplate<CSdpKeyField>::EncodeL(Key(), aStream);
-
-		for (TInt i = 0;i < iAttributeFields->Count();i++)
-			{
-			if (!(((*iAttributeFields)[i])->IsFmtAttribute()))
-				{
-				((*iAttributeFields)[i])->EncodeL(aStream);
-				}
-			}
-
-		for (TInt i = 0;i < iFmtAttrFields->Count();i++)
-			{
-			((*iFmtAttrFields)[i])->EncodeL(aStream);
-			
-			for (TInt j=0; j<iAttributeFields->Count(); j++)
-				{
-				if ((((*iAttributeFields)[j])->IsFmtAttribute()) &&
-					((*iAttributeFields)[j])->BelongsTo(*(*iFmtAttrFields)[i]))
-					{
-					((*iAttributeFields)[j])->EncodeL(aStream);
-					}
-				}
-			}
-		}
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::IsValid
-// ----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpMediaField::IsValid() const
-	{
-	TBool result = EFalse;
-	if(!(iMedia.DesC()==(KNullDesC8)) &&
-		!(iProtocol.DesC()==(KNullDesC8))&&
-		!(*iFormatList==(KNullDesC8)))
-		{
-		result = ETrue;
-		}
-	return result;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::IsContactPresent
-// ----------------------------------------------------------------------------
-//
-TBool CSdpMediaField::IsContactPresent() const
-	{
-	TBool result = EFalse;
-	if(iConnectionFields->Count() > 0)
-		{
-		result = ETrue;
-		}
-	return result;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::ExternalizeL
-// ----------------------------------------------------------------------------
-//
-void CSdpMediaField::ExternalizeL(RWriteStream& aStream) const
-	{
-	aStream.WriteUint32L (iMedia.DesC().Length());
-	if (iMedia.DesC().Length() > 0)
-		{
-		aStream.WriteL (iMedia.DesC());
-		}
-	aStream.WriteUint32L (iPort);
-	if(iPortCount)
-		{
-		aStream.WriteUint8L (1);
-		aStream.WriteUint32L (iPortCount);
-		}
-	else
-		{
-		aStream.WriteUint8L (0);
-		}
-	aStream.WriteUint32L (iProtocol.DesC().Length());
-	if (iProtocol.DesC().Length() > 0)
-		{
-		aStream.WriteL (iProtocol.DesC());
-		}
-	aStream.WriteUint32L (iFormatList->Length());
-	if (iFormatList->Length() > 0)
-		{
-		aStream.WriteL (*iFormatList);
-		}
-	aStream.WriteUint32L (iInfo->Length());
-	if (iInfo->Length() > 0)
-		{
-		aStream.WriteL (*iInfo);
-		}
-	SdpCodecTemplate<CSdpConnectionField>::ExternalizeArrayL(*iConnectionFields,
-															aStream);
-	SdpCodecTemplate<CSdpBandwidthField>::ExternalizeArrayL(*iBandwidthFields,
-															aStream);
-	SdpCodecTemplate<CSdpKeyField>::ExternalizeL(Key(), aStream);
-	SdpCodecTemplate<CSdpAttributeField>::ExternalizeArrayL(*iAttributeFields,
-															aStream);
-	SdpCodecTemplate<CSdpFmtAttributeField>::ExternalizeArrayL(*iFmtAttrFields,
-																aStream);
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::InternalizeL
-// ----------------------------------------------------------------------------
-//
-CSdpMediaField* CSdpMediaField::InternalizeL(RReadStream& aStream)
-	{
-	CSdpMediaField* obj = new(ELeave)CSdpMediaField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL();
-	obj->DoInternalizeL (aStream);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpMediaField::DoInternalizeL
-// ----------------------------------------------------------------------------
-//
-void CSdpMediaField::DoInternalizeL(RReadStream& aStream)
-	{
-	RStringF media = iPool.OpenFStringL(GetTokenFromStreamL(aStream));
-	CleanupClosePushL(media);
-	SetMediaL(media);
-	CleanupStack::Pop();//media
-	media.Close();
-    TUint32 port = aStream.ReadUint32L();
-	//SetPortL(aStream.ReadUint32L());
-	TUint flag = aStream.ReadUint8L();
-	if(flag)
-		{
-		SetPortCountL(aStream.ReadUint32L());
-		}
-	RStringF protocol =iPool.OpenFStringL(GetTokenFromStreamL(aStream));
-	CleanupClosePushL(protocol);
-	SetProtocolL(protocol);
-	CleanupStack::Pop();//protocol
-	protocol.Close();
-    SetPortL(port);
-	SetFormatListL(GetTokenFromStreamL(aStream));	
-	SetInfoL(GetTokenFromStreamL(aStream));
-	SdpCodecTemplate<CSdpConnectionField>::InternalizeArrayL(*iConnectionFields,
-															aStream);
-	SdpCodecTemplate<CSdpBandwidthField>::InternalizeArrayL(*iBandwidthFields,
-															aStream);
-	if(aStream.ReadUint8L())
-		{
-		SetKey(CSdpKeyField::InternalizeL(aStream));
-		}
-	SdpCodecTemplate<CSdpAttributeField>::InternalizeArrayL(*iAttributeFields,
-													aStream);
-	SdpCodecTemplate<CSdpFmtAttributeField>::InternalizeArrayL(*iFmtAttrFields,
-													aStream);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseL (const TDesC8& aText)
-	{
-	iElementArray.Reset();
-	iSdpCodecParseUtil = 
-			CSdpCodecParseUtil::NewL(iPool,aText, KErrSdpCodecMediaField);
-	ParseMediaL();
-	if(iRecurse)
-		{
-		ParseAttributeFieldsL();
-		ParseInformationL();
-		ParseConnectionL();
-		ParseBandwithL();
-		ParseEncryptionKeyL();
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseMediaL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseMediaL()
-	{
-	iElementArray = iSdpCodecParseUtil->FirstLineArrayElementL(iPool,
-												SdpCodecStringConstants::EMedia,
-												KErrSdpCodecMediaField);
-	__ASSERT_ALWAYS (iElementArray.Count() >= 4,
-					User::Leave(KErrSdpCodecMediaField));
-
-	RStringF media = iPool.OpenFStringL(iElementArray[1]);
-	CleanupClosePushL(media);
-	SetMediaL(media);
-	CleanupStack::Pop();//media
-	media.Close();
-
-	iProtocol = iPool.OpenFStringL(iElementArray[3]);
-
-    TInt lineEndPosition = iElementArray[2].Locate('/');
-	TUint port;
-	if(lineEndPosition == KErrNotFound)
-		{
-		User::LeaveIfError(
-		TLex8(iElementArray[2]).Val(port, EDecimal));
-		SetPortL(port);
-		}
-	else
-		{
-		User::LeaveIfError(TLex8(
-				(iElementArray[2]).Left(lineEndPosition)).Val(port, EDecimal));
-		SetPortL(port);
-		User::LeaveIfError(TLex8(
-			  (iElementArray[2]).Mid(lineEndPosition +1)).Val(port, EDecimal));
-		SetPortCountL(port);
-		}
-	__ASSERT_ALWAYS(SdpUtil::IsTokenCharWithOptionalSlash(iElementArray[3]),
-					User::Leave(KErrArgument));
-	
-    //iProtocol = iPool.OpenFStringL(iElementArray[3]);
-
-	TInt length = 0;
-	TInt i;
-	for(i=4;i<iElementArray.Count();i++)
-		{
-		length += iElementArray[i].Length();
-		if(i + 1 <iElementArray.Count())
-			{
-			length += KSPStr().Length();
-			}
-		}
-	HBufC8* value = HBufC8::NewLC(length);
-	TPtr8 ptr(value->Des());
-	for(i=4;i<iElementArray.Count();i++)
-		{
-		ptr.Append(iElementArray[i]);
-		if(i + 1 <iElementArray.Count())
-			{
-			ptr.Append(KSPStr);
-			}
-		}
-	SetFormatListL(*value);
-	CleanupStack::Pop();//value
-	delete value;
-	iElementArray.Reset();
-	if (iSdpCodecParseUtil->LineArray().Count() > 0)
-	    {
-	    iSdpCodecParseUtil->LineArray().Remove(0);
-	    }
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseInformationL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseInformationL()
-	{
-	SetInfoL(iSdpCodecParseUtil->ParseInformationL(KErrSdpCodecMediaInfoField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseConnectionL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseConnectionL()
-	{
-	delete iConnectionFields;
-	iConnectionFields = 0;
-	iConnectionFields = iSdpCodecParseUtil->ParseConnectionFieldsL(
-										KErrSdpCodecMediaConnectionField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseBandwithL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseBandwithL()
-	{
-	delete iBandwidthFields;
-	iBandwidthFields = 0;
-	iBandwidthFields = 
-		iSdpCodecParseUtil->ParseBandwidthL(KErrSdpCodecMediaBandwidthField);
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseEncryptionKeyL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseEncryptionKeyL()
-	{
-	SetKey(iSdpCodecParseUtil->ParseEncryptionKeyL(KErrSdpCodecMediaKeyField));
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::ParseAttributeFieldsL
-// ---------------------------------------------------------------------------
-//
-void CSdpMediaField::ParseAttributeFieldsL()
-	{
-	CSdpFmtAttributeField* fmtattributefield = 0;
-
-    RArray<TPtrC8>& lineArray = iSdpCodecParseUtil->LineArray();
-	for (TInt i=0; i<lineArray.Count(); i++)
-		{
-		iElementArray = CSdpCodecParseUtil::CheckOptionalFieldNameL(iPool,
-								SdpCodecStringConstants::EAttribute,
-								lineArray[i],
-								KErrSdpCodecMediaAttributeField);
-		if (iElementArray.Count())
-			{
-			CSdpAttributeField* attributefield = 
-	            CSdpAttributeField::DecodeLC(lineArray[i]);		
-		    
-            if ( attributefield->Attribute() == 
-                 iPool.StringF( SdpCodecStringConstants::EAttributeRtpmap,
-                                SdpCodecStringConstants::Table ) ||
-                 attributefield->Attribute() ==
-                 iPool.StringF( SdpCodecStringConstants::EAttributeFmtp,
-                                SdpCodecStringConstants::Table ) )
-                {
-                CleanupStack::PopAndDestroy(attributefield);
-                fmtattributefield = 
-                    CSdpFmtAttributeField::DecodeLC(lineArray[i]);
-				iFmtAttrFields->AppendL(fmtattributefield);
-				CleanupStack::Pop(fmtattributefield);
-                }
-            else
-                {
-                iAttributeFields->AppendL(attributefield);
-			    CleanupStack::Pop(attributefield);
-			    if (fmtattributefield)
-			    	{
-			    	attributefield->AssignTo(*fmtattributefield);
-			    	}
-                }
-                   
-			iElementArray.Reset();
-			lineArray.Remove(i);
-			if (i < lineArray.Count())
-			    {
-			    i--;
-			    }
-			}
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::GetTokenFromStreamL
-// ---------------------------------------------------------------------------
-//
-TDesC8& CSdpMediaField::GetTokenFromStreamL(RReadStream& aStream)
-	{
-	TUint32 tokenLength = aStream.ReadUint32L();
-	HBufC8* tmp = 0;
-	if (tokenLength > 0)
-		{
-		tmp = HBufC8::NewLC(tokenLength);
-		TPtr8 tokenptr(tmp->Des());
-		aStream.ReadL (tokenptr, tokenLength);
-		CleanupStack::Pop();//tmp
-		}
-	else
-		{
-		tmp = KNullDesC8().AllocL();
-		}
-	delete iToken;
-	iToken = tmp;
-	return *iToken;
-	}
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::RemoveFormatL
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::RemoveFormatL(const TDesC8& aFormat)
-    {
-    if ( !iFormatList || iFormatList->Des().Length() == 0 )
-        {
-        User::Leave( KErrSdpCodecMediaField );
-        }
-    TLex8 lexer( *iFormatList );
-    TBool tokenRemoved( EFalse );
-    while ( !tokenRemoved && !lexer.Eos() )
-        {
-        lexer.SkipSpaceAndMark();
-        lexer.SkipCharacters();
-        if ( lexer.TokenLength() > 0 )
-            {
-             if ( aFormat.CompareF(lexer.MarkedToken()) == 0)
-                {                    
-                RArray<TInt> removedObjs;           
-                CleanupClosePushL( removedObjs );
-                for ( TInt i( 0 ); i < iFmtAttrFields->Count(); i++ )
-                    {
-					if (aFormat.CompareF((*iFmtAttrFields)[i]->Format()) == 0)
-                        {
-                        User::LeaveIfError( removedObjs.Append(i) );                        
-                        }                        
-                    }
-                // Remove all format attributes of type format
-                TInt removedCount( 0 );
-                while ( removedObjs.Count() > 0 )
-                    {
-                    CSdpFmtAttributeField* obj = 
-                        (*iFmtAttrFields)[removedObjs[0] - removedCount];
-                    delete obj;
-					obj = 0;
-                    iFmtAttrFields->Remove( removedObjs[0] - removedCount);
-                    removedObjs.Remove(0);
-                    removedCount++;
-                    }
-                CleanupStack::PopAndDestroy();  // removedObjs
-
-                // Remove format from format list
-                iFormatList->Des().Delete( lexer.MarkedOffset(), 
-                                        lexer.Offset() - lexer.MarkedOffset());
-                iFormatList->Des().TrimAll();
-                tokenRemoved = ETrue;
-                }
-            }
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::KeepFormatL
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::KeepFormatL(const TDesC8& aFormat)
-    {
-    if ( !iFormatList )
-        {
-        User::Leave( KErrSdpCodecMediaField );
-        }
-    // Empty set will continue to be empty
-    if ( iFormatList->Des().Length() > 0 )
-        {                
-        HBufC8* formatList = aFormat.AllocLC();       
-        // Mark all format attributes not aFormat so that they will be deleted
-        RArray<TInt> removedObjs;  
-        CleanupClosePushL( removedObjs );         
-        for ( TInt i( 0 ); i < iFmtAttrFields->Count(); i++ )
-            {
-			if (aFormat.CompareF((*iFmtAttrFields)[i]->Format()) != 0)
-                {
-                User::LeaveIfError( removedObjs.Append( i ) );                        
-                }                                 
-            }
-        // Delete attribute fields
-        TInt removedCount( 0 );
-        while ( removedObjs.Count() > 0 )
-            {
-            CSdpFmtAttributeField* obj = 
-                (*iFmtAttrFields)[removedObjs[0] - removedCount];
-            delete obj;
-            iFmtAttrFields->Remove( removedObjs[0] - removedCount );
-            removedObjs.Remove( 0 );
-            removedCount++;
-            }
-        CleanupStack::PopAndDestroy();  // removedObjs
-        // Change format list
-        delete iFormatList;
-        iFormatList = formatList;
-        CleanupStack::Pop();    // formatList
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CSdpMediaField::RejectMedia
-// ---------------------------------------------------------------------------
-//
-EXPORT_C void CSdpMediaField::RejectMedia()
-    {
-    iPort = 0;
-    iPortCount = 0;
-
-    TLex8 lexer( *iFormatList );
-    lexer.SkipSpaceAndMark();
-    lexer.SkipCharacters();
-    if ( lexer.TokenLength() > 0 )
-        {
-        TRAPD(err, KeepFormatL( lexer.MarkedToken() ));
-        err++; // Nothing to do, if error happens. Silence compiler warning.
-        }
-    }
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdporiginfield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1038 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          :  SdpOriginField.cpp
-// Part of       :  Local SDP Codec
-// Version       :  1.0
-//
-
-
-
-#include <in_sock.h>
-#include <s32strm.h>
-#include "sdporiginfield.h"
-#include "sdporiginfieldptrs.h"
-#include "sdputil.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecstringpool.h"
-#include "sdpcodecerr.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-
-// LOCAL CONSTANTS AND MACROS
-const TUint KMaxIPDesLength = 39;
-const TUint KHeaderIndex = 0;
-const TUint KUserNameIndex = 1;
-const TUint KSessionIdIndex = 2;
-const TUint KSessionVersionIndex = 3;
-const TUint KNetworkTypeIndex = 4;
-const TUint KAddressTypeIndex = 5;
-const TUint KAddressIndex = 6;
-const TInt KTokenCount = 7;
-const TInt64 KDummyValue = 1;
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::CSdpOriginField
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-CSdpOriginField::CSdpOriginField()
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ConstructL(    
-    const TDesC8& aText )
-	{
-    // aText should be of format:
-    // o=<username> <session id> <version> <network type> 
-    // <address type> <address>     
-    iPool = SdpCodecStringPool::StringPoolL();
-
-    RArray<TPtrC8> array;
-    array = SdpUtil::GetElementsFromLineL( aText, KErrSdpCodecOriginField );
-    
-    CleanupClosePushL( array );
-
-    if ( array.Count() != KTokenCount )
-        {
-        User::Leave( KErrSdpCodecOriginField );
-        }
-
-    // Check that the line contains valid header
-    RStringF origHeader =  iPool.StringF( SdpCodecStringConstants::EOrigin, 
-                                          SdpCodecStringConstants::Table );
-    if ( origHeader.DesC().CompareF( array[KHeaderIndex] ) != 0 )
-        {
-        // Header didn't match
-        User::Leave( KErrSdpCodecOriginField );
-        }
-    
-    iUserName =
-    	reinterpret_cast< HBufC8* >( CSdpOriginFieldPtrs::NewL( 0, 0 ) );
-		
-    
-    // <username>   
-    ParseUserNameL( array );
-    
-    // <session id> & <version>
-    ParseSessionIDAndVersionL( array );
-    
-    // <network type> & <address type>
-    ParseNetTypeAndAddressTypeL( array );
-    
-    // <address>
-    ParseAddressL( array );
-    
-	//If address is IPv4-Mapped IPv6 , it is changed to IPv4
-	TInetAddr addr;
-	TBuf<KMaxAddressLength> address;
-	address.Copy(iAddress);
-
-	TInt err = addr.Input( address );
-	if ( err == KErrNone )
-		{
-        // Valid IP address
-		TBuf<KMaxIPDesLength> buf;
-		addr.Output( buf );
-		iAddress.Copy(buf); 
-
-        SetIPAddressType( addr );
-		}
-
-
-
-    CleanupStack::PopAndDestroy();  // array
-
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ConstructL(
-    const TDesC8& aUserName, 
-    TInt64 aSessionId, 
-    TInt64 aSessionVersion, 
-    TInetAddr& aUnicastAddress )
-	{
-    iPool = SdpCodecStringPool::StringPoolL();
-
-	__ASSERT_ALWAYS( 
-                   IsValidUserName( aUserName )
-				&& IsValidAddress( aUnicastAddress )
-                && aSessionId >= 0 && aSessionVersion >= 0,
-				User::Leave( KErrSdpCodecOriginField ) );
-
-	iUserName = reinterpret_cast< HBufC8* >
-		( CSdpOriginFieldPtrs::NewL( aSessionId, aSessionVersion ) );
-	OriginFieldPtrs().SetUserNameL( aUserName );
-	
-    TBuf<KMaxIPDesLength> des;
-    aUnicastAddress.Output( des );
-	//if aUnicastAddress was IPv4-Mapped IPv6 address,
-	// the result of Output is IPv4
-	// the address is stored in IPv4 format, so the iAddressType 
-	// must also be IPv4.    
-    iAddress.Copy( des );
-    SetIPAddressType( aUnicastAddress );
-
-    iNetType = iPool.StringF( SdpCodecStringConstants::ENetType, 
-                              SdpCodecStringConstants::Table ).Copy();
-       
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ConstructL( 
-    const TDesC8& aUserName, 
-    TInt64 aSessionId, 
-    TInt64 aSessionVersion, 
-    RStringF aNetType, 
-    RStringF aAddressType, 
-    const TDesC8& aAddress )
-    {        
-    iPool = SdpCodecStringPool::StringPoolL();
-     
-    __ASSERT_ALWAYS(
-               IsValidUserName( aUserName )
-            && IsValidAddress( aAddress ) &&
-            TypeMatchesWithFormat( aAddress, aAddressType.DesC(), iPool )
-            && ( SdpUtil::IsToken( aNetType.DesC() ) )
-            && ( SdpUtil::IsToken( aAddressType.DesC() ) )
-            && aSessionId >= 0 && aSessionVersion >= 0,
-            User::Leave( KErrSdpCodecOriginField ) );
-    
-    iUserName = reinterpret_cast< HBufC8* >
-		( CSdpOriginFieldPtrs::NewL( aSessionId, aSessionVersion ) );
-	OriginFieldPtrs().SetUserNameL( aUserName );	
-
-    iNetType = aNetType.Copy();
-    	TInetAddr addr;
-	TBuf<KMaxAddressLength> address;
-	address.Copy(aAddress);
-	TInt err = addr.Input(address);
-	if ( err  == KErrNone )
-		{
-		// Valid IP address
-		TBuf< KMaxIPDesLength > buf;
-		addr.Output( buf );
-		iAddress.Copy( buf );		
-		SetIPAddressType( addr );
-		}
-	else
-		{
-		iAddress = aAddress;
-    	iAddressType = aAddressType.Copy();	
-		}
-    __TEST_INVARIANT;    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::DecodeL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::DecodeL(    
-    const TDesC8& aText )
-	{
-	CSdpOriginField* obj = CSdpOriginField::DecodeLC( aText );
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::DecodeLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::DecodeLC(    
-    const TDesC8& aText )
-	{
-	CSdpOriginField* obj = new ( ELeave ) CSdpOriginField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL(aText );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::NewL(    
-    const TDesC8& aUserName, 
-	TInt64 aSessionId, 
-	TInt64 aSessionVersion, 
-	TInetAddr& aAddress )
-	{
-	CSdpOriginField* obj = CSdpOriginField::NewLC( 
-        aUserName, aSessionId, aSessionVersion, aAddress );
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::NewLC(    
-    const TDesC8& aUserName, 
-	TInt64 aSessionId, 
-	TInt64 aSessionVersion, 
-	TInetAddr& aAddress )
-	{
-	CSdpOriginField* obj = new ( ELeave ) CSdpOriginField;
-	CleanupStack::PushL(obj);
-	obj->ConstructL( aUserName, aSessionId, aSessionVersion, aAddress );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::NewL(
-    const TDesC8& aUserName, 
-	TInt64 aSessionId, 
-	TInt64 aSessionVersion, 
-    RStringF aNetType,
-    RStringF aAddressType, 
-	const TDesC8& aAddress )
-    {
-	CSdpOriginField* obj = CSdpOriginField::NewLC( 
-        aUserName, aSessionId, aSessionVersion, aNetType, 
-        aAddressType, aAddress );
-	CleanupStack::Pop();
-	return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::NewLC(
-    const TDesC8& aUserName, 
-	TInt64 aSessionId, 
-	TInt64 aSessionVersion, 
-	RStringF aNetType,
-    RStringF aAddressType, 
-	const TDesC8& aAddress )
-    {    
-    CSdpOriginField* obj = new ( ELeave ) CSdpOriginField;
-	CleanupStack::PushL( obj );
-	obj->ConstructL( aUserName, aSessionId, aSessionVersion, aNetType, 
-                     aAddressType, aAddress );
-    return obj;    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::~CSdpOriginField
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField::~CSdpOriginField()
-	{
-	CSdpOriginFieldPtrs* tmp =
-		reinterpret_cast< CSdpOriginFieldPtrs* >( iUserName );
-	delete tmp;
-
-    iNetType.Close();
-    iAddressType.Close();
-	}
-    
-// -----------------------------------------------------------------------------
-// CSdpOriginField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::EncodeL(
-    RWriteStream& aStream ) const
-	{
-    __TEST_INVARIANT;
-
-    // o=<username> <session id> <version> <network type> <address type> 
-    //   <address>    
-
-    // "o="
-    RStringF header = iPool.StringF( SdpCodecStringConstants::EOrigin, 
-                                     SdpCodecStringConstants::Table );
-    aStream.WriteL( header.DesC() );
-
-    // <username>
-    aStream.WriteL( OriginFieldPtrs().UserName() );
-	aStream.WriteL( KSPStr );
-
-    // <session id>    
-	aStream.WriteL( OriginFieldPtrs().SessionId() );
-	aStream.WriteL( KSPStr );
-
-    // <version>
-    aStream.WriteL( OriginFieldPtrs().SessionVersion() );
-	aStream.WriteL( KSPStr );
-
-    // <network type>
-    aStream.WriteL( iNetType.DesC() );
-    aStream.WriteL( KSPStr );    
-
-    // <address type>
-    aStream.WriteL( iAddressType.DesC() );
-    aStream.WriteL( KSPStr );
-
-    // <address>
-    aStream.WriteL( iAddress );
-
-    // End-of-Line mark
-	aStream.WriteL( KCRLFStr );
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::CloneL
-// Creates an exact copy of the origin field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpOriginField* CSdpOriginField::CloneL() const
-	{
-	__TEST_INVARIANT;
-
-    CSdpOriginField* obj = 0;
-
-    if ( InetAddress() )
-        {
-        // Clones instance with TInetAddr
-        TInetAddr addr( *InetAddress() );        
-        obj = CSdpOriginField::NewLC( UserName(), KDummyValue,
-        							  KDummyValue, addr );
-        }
-    else
-        {
-        // Clones instance with Internet address as a standard string               
-        obj = CSdpOriginField::NewLC( UserName(), KDummyValue, KDummyValue,
-                                      iNetType, iAddressType,  Address() );        
-        }
-
-	// Set the real values
-	obj->OriginFieldPtrs().SetSessionIdL( OriginFieldPtrs().SessionId() );
-	obj->OriginFieldPtrs().SetSessionVersionL(
-		OriginFieldPtrs().SessionVersion() );
-	CleanupStack::Pop( obj );
-		
-	__ASSERT_DEBUG( *this == *obj, User::Panic( KSdpCodecPanicCat, 
-                                                KSdpCodecPanicInternal ) );
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::operator ==
-// Checks if two origin fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpOriginField::operator == (
-    const CSdpOriginField& aObj) const
-	{
-	__TEST_INVARIANT;
-
-    TBool equalFields = EFalse;
-
-    // Check that username, session ID and address type match before
-    // going to internet address       
-    if ( ( UserName().CompareF( aObj.UserName() ) == 0 ) &&
-         ( SessionId() == aObj.SessionId() ) &&
-         ( AddressType() == aObj.AddressType() ) &&
-         ( Version() == aObj.Version() ) &&
-         ( NetType() == aObj.NetType() ) )
-        {
-        if ( InetAddress() && aObj.InetAddress() )
-            {            
-            if ( (*InetAddress()).Match( *aObj.InetAddress() ) )
-                {
-                equalFields = ETrue;
-                }
-            }
-        else if ( !InetAddress() && !aObj.InetAddress() )            
-            {
-            if ( iAddress.CompareF( aObj.Address() ) == 0 )
-                {
-                equalFields = ETrue;
-                }
-            }                
-        else
-            {
-            // These two are not the same
-            }
-        }   
-        
-    return equalFields;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::UserName
-// Returns username
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpOriginField::UserName() const
-    {
-    __TEST_INVARIANT;
-    return OriginFieldPtrs().UserName();
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetUserNameL
-// Sets a new username
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::SetUserNameL(
-    const TDesC8& aValue )
-    {
-    __TEST_INVARIANT;
-    if ( IsValidUserName( aValue ) )
-        {
-        OriginFieldPtrs().SetUserNameL( aValue );
-        }
-    else
-        {
-        User::Leave( KErrSdpCodecOriginField );
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SessionId
-// Returns current session id
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt64 CSdpOriginField::SessionId() const
-    {
-    __TEST_INVARIANT;
-
-    return Get63Msbs( OriginFieldPtrs().SessionId() );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetSessionId
-// Sets new session ID
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::SetSessionId(
-	TInt64 aValue )
-    {
-    __TEST_INVARIANT;
-    if ( aValue >= 0 )
-        {
-        TRAP_IGNORE( OriginFieldPtrs().SetSessionIdL( aValue ) )
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::Version
-// Returns version number of the announcement
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TInt64 CSdpOriginField::Version() const
-    {
-    __TEST_INVARIANT;
-
-    return Get63Msbs( OriginFieldPtrs().SessionVersion() );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetVersion
-// Sets new version for this session's announcement
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::SetVersion(
-	TInt64 aValue )
-    {
-    __TEST_INVARIANT;
-    if ( aValue >= 0 )
-        {
-        TRAP_IGNORE( OriginFieldPtrs().SetSessionVersionL( aValue ) )        
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::NetType
-// Returns net type (always Internet)
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpOriginField::NetType() const
-	{
-	__TEST_INVARIANT;
-	return iNetType;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::AddressType
-// Returns address type (IP4/IP6)
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RStringF CSdpOriginField::AddressType() const
-	{
-	__TEST_INVARIANT;    
-    return iAddressType;        
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::InetAddress
-// Returns the unicast address
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TInetAddr* CSdpOriginField::InetAddress() const
-	{
-	__TEST_INVARIANT;
-    
-    TBuf<KMaxAddressLength> address16;
-    address16.Copy( iAddress );
-    TInt err = iUnicastAddress.Input( address16 );
-    
-    if ( !err )
-        {
-        return &iUnicastAddress;
-        }
-    else
-        {
-        return NULL;
-        }
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::Address
-// Returns the address
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpOriginField::Address() const
-    {
-    __TEST_INVARIANT;
-    return iAddress;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetInetAddress
-// Sets Internet Address
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::SetInetAddress(
-    const TInetAddr& aValue )
-	{    
-	__TEST_INVARIANT;
-    
-	if ( IsValidAddress( aValue ) )
-        {                       
-        TBuf<KMaxIPDesLength> buf;
-        aValue.Output( buf );
-        // Copy new address to safe
-        iAddress.Copy( buf );
-    
-        // Copy network type and address type        
-        SdpUtil::SetDefaultNetTypeAndAddrType( 
-            iPool, aValue, iNetType, iAddressType );
-        SetIPAddressType( aValue );
-        }
-
-    __TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetAddressL
-// Sets address from the buffer
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpOriginField::SetAddressL(
-    const TDesC8& aAddress,
-    RStringF aNetType, 
-    RStringF aAddressType )
-    {
-    __TEST_INVARIANT;
-     
-    __ASSERT_ALWAYS( SdpUtil::IsToken( aNetType.DesC() )  &&
-                     SdpUtil::IsToken( aAddressType.DesC() ) &&
-                     IsValidAddress( aAddress ) &&
-                     TypeMatchesWithFormat( aAddress, 
-                                            aAddressType.DesC(), iPool ),
-                     User::Leave( KErrSdpCodecOriginField ) );
-
-    iAddress = aAddress;
-    iAddressType.Close();
-    iAddressType = aAddressType.Copy();
-
-    __TEST_INVARIANT;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ExternalizeL
-// Externalizes the field back to string
-// -----------------------------------------------------------------------------
-//	
-void CSdpOriginField::ExternalizeL(
-    RWriteStream& aStream ) const
-    {
-    __TEST_INVARIANT;
-
-    // <username>    
-    aStream.WriteUint32L( UserName().Length() );
-	aStream.WriteL( UserName(), UserName().Length() );
-    // <session id>
-    aStream.WriteUint32L( OriginFieldPtrs().SessionId().Length() );
-    aStream.WriteL( OriginFieldPtrs().SessionId(),
-    				OriginFieldPtrs().SessionId().Length() );
-    // <version>
-    aStream.WriteUint32L( OriginFieldPtrs().SessionVersion().Length() );
-    aStream.WriteL( OriginFieldPtrs().SessionVersion(),
-    				OriginFieldPtrs().SessionVersion().Length() );
-    // <network type>
-    aStream.WriteUint32L( iNetType.DesC().Length() );
-    aStream.WriteL( iNetType.DesC() );
-    // <address type>
-    aStream.WriteUint32L( iAddressType.DesC().Length() );
-    aStream.WriteL( iAddressType.DesC() );    
-    // <address>
-    aStream.WriteUint32L( iAddress.Length() );
-    aStream.WriteL( iAddress );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::InternalizeL
-// Internalizes from stream
-// -----------------------------------------------------------------------------
-//	
-CSdpOriginField* CSdpOriginField::InternalizeL(
-    RReadStream& aStream )
-    {    
-    RStringPool pool = SdpCodecStringPool::StringPoolL();
-
-    // <username>        
-    TUint32 length = aStream.ReadUint32L();
-	HBufC8* userName = HBufC8::NewLC( length );
-    TPtr8 ptr( userName->Des() );  
-    aStream.ReadL( ptr, length );    
-
-    // <session id>
-    length = aStream.ReadUint32L();
-	HBufC8* sessionId = HBufC8::NewLC( length );
-    ptr.Set( sessionId->Des() );
-    aStream.ReadL( ptr, length );
-
-    // <version>
-    length = aStream.ReadUint32L();
-	HBufC8* version = HBufC8::NewLC( length );
-    ptr.Set( version->Des() );
-    aStream.ReadL( ptr, length );
-
-    // <network type>
-    length = aStream.ReadUint32L();
-    HBufC8* netType = HBufC8::NewLC( length );
-    ptr.Set( netType->Des() );
-    aStream.ReadL( ptr, length );
-
-    // <address type>
-    length = aStream.ReadUint32L();
-    HBufC8* addrType = HBufC8::NewLC( length );
-    ptr.Set( addrType->Des() );
-    aStream.ReadL( ptr, length );
-
-    // <address>        
-    length = aStream.ReadUint32L();
-    HBufC8* address = HBufC8::NewLC( length );
-    TPtr8 ptr2( address->Des() );
-    aStream.ReadL( ptr2, length );
-            
-    RStringF netTypeStr = pool.OpenFStringL( *netType );
-    RStringF addrTypeStr = pool.OpenFStringL( *addrType );
-    CleanupClosePushL( netTypeStr );
-    CleanupClosePushL( addrTypeStr );
-
-	CSdpOriginField* obj = CSdpOriginField::NewLC( *userName, KDummyValue,
-												   KDummyValue, netTypeStr,
-												   addrTypeStr, *address );
-	// Set the real values
-	obj->OriginFieldPtrs().SetSessionIdL( *sessionId );
-	obj->OriginFieldPtrs().SetSessionVersionL( *version );
-	CleanupStack::Pop( obj );
-    CleanupStack::Pop( 2 ); // addrTypeStr, netTypeStr
-    CleanupStack::PopAndDestroy( address );
-    CleanupStack::PopAndDestroy( addrType );
-    CleanupStack::PopAndDestroy( netType );
-    CleanupStack::PopAndDestroy( version );
-    CleanupStack::PopAndDestroy( sessionId );
-    CleanupStack::PopAndDestroy( userName );    
-
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::IsValidAddress
-// Checks if the address is valid
-// -----------------------------------------------------------------------------
-//
-TBool CSdpOriginField::IsValidAddress( 
-    const TDesC8& aAddress ) const
-    {
-    TInetAddr addr;
-    TBool valid = ETrue;
-
-    if ( aAddress.Length() > 0 && aAddress.Length() <= KMaxAddressLength )
-        {
-        TBuf<KMaxAddressLength> address16;
-        address16.Copy( aAddress );
-        TInt err = addr.Input( address16 );
-
-        if ( !err )
-            {
-            valid = ( addr.IsUnicast() || addr.IsUnspecified() );
-            }
-        else
-            {
-            RStringF addrTypeIP4 = 
-                iPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                               SdpCodecStringConstants::Table );
-            RStringF addrTypeIP6 = 
-                iPool.StringF( SdpCodecStringConstants::EAddressType,
-                               SdpCodecStringConstants::Table );
-            
-            if ( iAddressType == addrTypeIP4 || iAddressType == addrTypeIP6 )
-                {
-                // FQDN address, check that it has only valid characters
-                // 0..9, a..z, A..Z, '.', '-'
-                        
-                for ( TInt i( 0 ); i < aAddress.Length() && valid; i++ )
-                    {
-                    if (KValidFQDNChars().Locate(aAddress[i]) == KErrNotFound)
-                        {
-                        valid = EFalse;     
-                        }
-                    }
-                }
-            else
-                {
-                valid = SdpUtil::IsNonWhitespace( aAddress );
-                }
-            }       
-        }
-    else
-    	{
-    	valid = EFalse;
-    	}
-
-    return valid;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::IsValidAddress
-// Checks if the address is valid
-// -----------------------------------------------------------------------------
-//
-TBool CSdpOriginField::IsValidAddress( 
-    const TInetAddr& addr ) const
-    {
-    TBuf<KMaxIPDesLength> buf16;
-    TBuf8<KMaxIPDesLength> buf;
-	//if addr is IPv4-Mapped IPv6, buf value will be IPv4 after Output
-    addr.Output( buf16 );
-    buf.Copy( buf16 );
-
-    return IsValidAddress( buf );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::TypeMatchesWithFormat
-// Checks if address type is aligned with the address format
-// -----------------------------------------------------------------------------
-//
-TBool CSdpOriginField::TypeMatchesWithFormat( 
-    const TDesC8& aAddress, 
-    const TDesC8& aType,
-    RStringPool aPool ) const
-    {
-    RStringF addrTypeIP4 = 
-        aPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                              SdpCodecStringConstants::Table );
-    RStringF addrTypeIP6 = 
-        aPool.StringF( SdpCodecStringConstants::EAddressType,
-                              SdpCodecStringConstants::Table );
-    
-    TBool valid( ETrue );
-    
-    // Check that address type and address matches together
-    TInetAddr addr;
-    TBuf<KMaxAddressLength> address16;
-    address16.Copy( aAddress );
-    TInt err = addr.Input( address16 );    
-    if ( err == KErrNone && !addr.IsUnspecified())
-        {
-        TBool ip4Type = ( addrTypeIP4.DesC().CompareF( aType ) == 0 );
-        TBool ip6Type = ( addrTypeIP6.DesC().CompareF( aType ) == 0 );
-             
-        if ( ip4Type || ip6Type )
-            {
-            if ( ( addr.Address() && !addr.IsV4Mapped() && !ip4Type ) ||
-				 (addr.Address() && addr.IsV4Mapped() && !ip6Type) ||
-                 ( !addr.Address() && !ip6Type ) )
-                {
-                valid = EFalse;
-                }
-            }
-        } 
-    
-    return valid;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::IsValidUserName
-// Checks if the given username is valid
-// -----------------------------------------------------------------------------
-//
-TBool CSdpOriginField::IsValidUserName( 
-    const TDesC8& aUserName ) const
-    {
-    TBool valid = EFalse;
-
-    if ( aUserName.Length() > 0 && SdpUtil::IsNonWhitespace( aUserName ) )
-        {
-        valid = ETrue;
-        }
-
-    return valid;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ParseUserNameL
-// Parses username. Can't use CSdpOriginField::SetUserNameL, as invariant would
-// fail.
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ParseUserNameL( 
-    RArray<TPtrC8>& aArray )
-    {
-    __ASSERT_ALWAYS( IsValidUserName( aArray[KUserNameIndex] ), 
-                     User::Leave( KErrSdpCodecOriginField ) );
-	OriginFieldPtrs().SetUserNameL( aArray[KUserNameIndex] );    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ParseSessionIDAndVersionL
-// Parses session ID and version
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ParseSessionIDAndVersionL( 
-    RArray<TPtrC8>& aArray )
-    {
-    __ASSERT_ALWAYS( SdpUtil::IsDigit( aArray[KSessionIdIndex] ) &&
-    				 SdpUtil::IsDigit( aArray[KSessionVersionIndex] ),
-    				 User::Leave( KErrSdpCodecOriginField ) );
-
-    OriginFieldPtrs().SetSessionIdL( aArray[KSessionIdIndex] );
-    OriginFieldPtrs().SetSessionVersionL( aArray[KSessionVersionIndex] );    
-    }
- 
- // -----------------------------------------------------------------------------
-// CSdpOriginField::ParseNetTypeAndAddressTypeL
-// Parses network type and address type
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ParseNetTypeAndAddressTypeL( 
-    RArray<TPtrC8>& aArray )
-    {
-    if ( !SdpUtil::IsToken( aArray[KNetworkTypeIndex] ) ||
-         !SdpUtil::IsToken( aArray[KAddressTypeIndex] ) )
-        {        
-        User::Leave( KErrSdpCodecOriginField );
-        }
-
-    iNetType = iPool.OpenFStringL( aArray[KNetworkTypeIndex] );  
-    iAddressType = iPool.OpenFStringL( aArray[KAddressTypeIndex] );    
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::ParseAddressL
-// Parses address
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::ParseAddressL( 
-    RArray<TPtrC8>& aArray )
-    {    
-    if ( !IsValidAddress( aArray[KAddressIndex] ) )
-        {
-        User::Leave( KErrSdpCodecOriginField );
-        }
-    else
-        {
-        iAddress = aArray[KAddressIndex];
-        }
-
-    // Check that address type and address matches together
-    if ( !TypeMatchesWithFormat( 
-                    aArray[KAddressIndex], aArray[KAddressTypeIndex], iPool ) )
-        {
-        User::Leave( KErrSdpCodecOriginField );            
-        } 
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::OriginFieldPtrs
-// -----------------------------------------------------------------------------
-//  
-inline CSdpOriginFieldPtrs& CSdpOriginField::OriginFieldPtrs()
-    {
-    return *( reinterpret_cast< CSdpOriginFieldPtrs* >( iUserName ) );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::OriginFieldPtrs
-// -----------------------------------------------------------------------------
-//  
-inline const CSdpOriginFieldPtrs& CSdpOriginField::OriginFieldPtrs() const
-    {
-    return *( reinterpret_cast< CSdpOriginFieldPtrs* >( iUserName ) );
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::Get63Msbs
-// Returns a maximum of 63 bits of information from the descriptor containing a
-// decimal number.
-// -----------------------------------------------------------------------------
-//
-TInt64 CSdpOriginField::Get63Msbs( const TDesC8& aDecimalValue ) const
-	{	
-	// The maximum amount of digits in a decimal number, that is guaranteed to
-  	// fit into 63 bits, is 18. Even if all the 18 digits are 9, the decimal
-  	// number is 999999999999999999.
-  	const TInt64 KMaxAmountOfDecimalDigits = 18;
-
-    TInt64 value( 0 );
-    TPtrC8 msbPart = aDecimalValue.Left( KMaxAmountOfDecimalDigits );
-	TLex8( msbPart ).Val( value );
-    return value;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::SetIPAddressType
-// -----------------------------------------------------------------------------
-//
-void CSdpOriginField::SetIPAddressType( const TInetAddr& aAddr )
-    {
-    iAddressType.Close();
-    if ( aAddr.Address() || aAddr.IsUnspecified() )
-        {
-        //IPv4, IPv4-Mapped IPv6 and 0.0.0.0
-	    iAddressType =
-            iPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                           SdpCodecStringConstants::Table ).Copy();
-        }
-    else
-        {
-        //IPv6
-        iAddressType =
-            iPool.StringF( SdpCodecStringConstants::EAddressType,
-                           SdpCodecStringConstants::Table ).Copy();
- 		}
-    }
-
-// For DEBUG builds
-
-// -----------------------------------------------------------------------------
-// CSdpOriginField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//	
-void CSdpOriginField::__DbgTestInvariant() const
-	{	    
-	TBool invariant = 
-				iUserName != NULL	
-                && SdpUtil::IsToken( iAddressType.DesC() )
-                && SdpUtil::IsToken( iNetType.DesC() )
-				&& IsValidAddress( iAddress )
-				&& IsValidUserName( OriginFieldPtrs().UserName() )
-                && TypeMatchesWithFormat(iAddress, iAddressType.DesC(), iPool)
-                && SdpUtil::IsNonWhitespace( OriginFieldPtrs().UserName() );
-	
-    if ( !invariant )
-        {
-		User::Invariant();
-        }
-	}
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdporiginfieldptrs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpOriginFieldPtrs.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include "sdporiginfieldptrs.h"
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::NewL
-// -----------------------------------------------------------------------------
-//
-CSdpOriginFieldPtrs* CSdpOriginFieldPtrs::NewL( TInt64 aSessionId,
-        								  		TInt64 aSessionVersion )
-	{
-	CSdpOriginFieldPtrs* self = new ( ELeave ) CSdpOriginFieldPtrs;
-	CleanupStack::PushL( self );
-	self->ConstructL( aSessionId, aSessionVersion );
-	CleanupStack::Pop( self );
-	return self;
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::CSdpOriginFieldPtrs
-// ----------------------------------------------------------------------------
-//
-CSdpOriginFieldPtrs::CSdpOriginFieldPtrs()
-	{
-	}	
-
-// ----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::ConstructL
-// ----------------------------------------------------------------------------
-//
-void CSdpOriginFieldPtrs::ConstructL( TInt64 aSessionId,
-        							  TInt64 aSessionVersion )
-	{
-	iUserName = KNullDesC8().AllocL();
-	SetSessionIdL( aSessionId );
-	SetSessionVersionL( aSessionVersion );	
-	}
-
-// ----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::~CSdpOriginFieldPtrs
-// ----------------------------------------------------------------------------
-//
-CSdpOriginFieldPtrs::~CSdpOriginFieldPtrs()
-	{
-	delete iUserName;
-	delete iSessionId;
-	delete iSessionVersion;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SetUserNameL
-// -----------------------------------------------------------------------------
-// 
-void CSdpOriginFieldPtrs::SetUserNameL( const TDesC8& aUserName )
-    {
-    HBufC8* tmp = aUserName.AllocL();
-    delete iUserName;
-    iUserName = tmp;
-    }
-        
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::UserName
-// -----------------------------------------------------------------------------
-//
-const TDesC8& CSdpOriginFieldPtrs::UserName() const
-    {
-    return *iUserName;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SetSessionIdL
-// -----------------------------------------------------------------------------
-// 
-void CSdpOriginFieldPtrs::SetSessionIdL( const TDesC8& aSessionId )
-    {
-    HBufC8* tmp = aSessionId.AllocL();
-    delete iSessionId;
-    iSessionId = tmp;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SetSessionIdL
-// -----------------------------------------------------------------------------
-// 
-void CSdpOriginFieldPtrs::SetSessionIdL( TInt64 aSessionId )
-	{
-	TBuf8< KMaxTInt64Digits > number;
-    number.AppendNum( aSessionId );
-    HBufC8* tmp = number.AllocL();
-	delete iSessionId;
-    iSessionId = tmp;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SessionId
-// -----------------------------------------------------------------------------
-//
-const TDesC8& CSdpOriginFieldPtrs::SessionId() const
-    {
-    return *iSessionId;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SetSessionVersionL
-// -----------------------------------------------------------------------------
-// 
-void CSdpOriginFieldPtrs::SetSessionVersionL( const TDesC8& aSessionVersion )
-    {
-    HBufC8* tmp = aSessionVersion.AllocL();
-    delete iSessionVersion;
-    iSessionVersion = tmp;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SetSessionVersionL
-// -----------------------------------------------------------------------------
-// 
-void CSdpOriginFieldPtrs::SetSessionVersionL( TInt64 aSessionVersion )
-	{
-	TBuf8< KMaxTInt64Digits > number;
-    number.AppendNum( aSessionVersion );
-    HBufC8* tmp = number.AllocL();
-	delete iSessionVersion;
-    iSessionVersion = tmp;
-	}
-   
-// -----------------------------------------------------------------------------
-// CSdpOriginFieldPtrs::SessionVersion
-// -----------------------------------------------------------------------------
-//
-const TDesC8& CSdpOriginFieldPtrs::SessionVersion() const
-    {
-    return *iSessionVersion;
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdprepeatfield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,385 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpRepeatField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include "sdprepeatfield.h"
-#include "sdputil.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpdocument.h"
-#include "sdpcodecConstants.h"
-#include "sdpcodecErr.h"
-#include "sdpcodecStringPool.h"
-
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::DecodeL
-// Decodes bandwidth field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField* CSdpRepeatField::DecodeL(const TDesC8& aText)
-	{
-	CSdpRepeatField* obj = DecodeLC(aText);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::DecodeLC
-// Decodes bandwidth field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField* CSdpRepeatField::DecodeLC(const TDesC8& aText)
-	{
-    CSdpRepeatField* obj = new (ELeave) CSdpRepeatField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aText);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField* CSdpRepeatField::NewL(
-                                        const TSdpTypedTime aRepeatInterval,
-										const TSdpTypedTime  aActiveDuration,
-										const RArray<TSdpTypedTime>& aOffsets)
-	{
-	CSdpRepeatField* obj = NewLC(aRepeatInterval, aActiveDuration, aOffsets);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField* CSdpRepeatField::NewLC(
-                                        const TSdpTypedTime aRepeatInterval,
-										const TSdpTypedTime aActiveDuration,
-										const RArray<TSdpTypedTime>& aOffsets)
-	{
-	CSdpRepeatField* obj = new (ELeave) CSdpRepeatField(aRepeatInterval,
-                                                    aActiveDuration);
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aOffsets);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::~CSdpRepeatField
-// Destructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField::~CSdpRepeatField()
-	{
-    iTimeOffsets.Close();
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpRepeatField::EncodeL(RWriteStream& aStream) const
-    {
-    const TDesC8& repeatName = iPool.StringF(SdpCodecStringConstants::ERepeat, 
-                                        SdpCodecStringConstants::Table).DesC();
-    aStream.WriteL(repeatName);
-    iRepeatInterval.EncodeL(aStream);
-    aStream.WriteL(KSPStr);
-    iActiveDuration.EncodeL(aStream);
-    for (TInt i = 0; i < iTimeOffsets.Count(); i++)
-        {
-        aStream.WriteL(KSPStr);
-        (iTimeOffsets)[i].EncodeL(aStream);
-        }
-    aStream.WriteL(KCRLFStr);
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::CloneL
-// Creates an exact copy of the repeat field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpRepeatField* CSdpRepeatField::CloneL() const
-	{
-	__TEST_INVARIANT;
-	CSdpRepeatField* obj = NewL(iRepeatInterval, iActiveDuration, 
-                                iTimeOffsets);
-	__ASSERT_DEBUG(*this == *obj, User::Panic(KSdpCodecPanicCat, 
-                                            KSdpCodecPanicInternal));
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::operator ==
-// Checks if two repeat fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpRepeatField::operator == (const CSdpRepeatField & aObj) 
-        const
-	{
-	__TEST_INVARIANT;
-	TBool result = iRepeatInterval == aObj.iRepeatInterval
-		&& iActiveDuration == aObj.iActiveDuration
-		&& iTimeOffsets.Count() == (aObj.iTimeOffsets).Count();
-	if (result)
-		{
-		int i = 0;
-		while (result && i < iTimeOffsets.Count())
-			{
-			result = (iTimeOffsets)[i] == (aObj.iTimeOffsets)[i];
-			i++;
-			}
-		}
-	return result;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::RepeatInterval
-// Return repeat interval value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TSdpTypedTime CSdpRepeatField::RepeatInterval() const
-	{
-	__TEST_INVARIANT;
-	return iRepeatInterval;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::SetRepeatIntervalL
-// Sets repeat interval to one of predefined values
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpRepeatField::SetRepeatIntervalL(const TSdpTypedTime aValue)
-	{
-	__TEST_INVARIANT;
-    __ASSERT_ALWAYS(aValue.iValue > 0, User::Leave(KErrSdpCodecRepeatField));
-    iRepeatInterval = aValue;
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::ActiveDuration
-// Returns active duration value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TSdpTypedTime CSdpRepeatField::ActiveDuration() const
-	{
-	__TEST_INVARIANT;
-	return iActiveDuration;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::SetActiveDuration
-// Sets new active duration value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpRepeatField::SetActiveDuration(const TSdpTypedTime aValue)
-	{
-	__TEST_INVARIANT;
-	iActiveDuration = aValue;
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::TimeOffsets
-// CReturns timeoffsets
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const RArray<TSdpTypedTime>& CSdpRepeatField::TimeOffsets() const
-	{
-	__TEST_INVARIANT;
-	return iTimeOffsets;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::SetTimeOffsetsL
-// Sets timeoffsets
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpRepeatField::SetTimeOffsetsL(
-                                        const RArray<TSdpTypedTime>& aValue)
-    {
-    RArray<TSdpTypedTime> tempOffsets;                 
-    if (aValue.Count() > 0)
-	    {
-        CleanupClosePushL( tempOffsets );         
-		for (TInt i = 0; i < aValue.Count(); i++)
-		    {
-            User::LeaveIfError(tempOffsets.Append(aValue[i]));
-			}
-        CleanupStack::Pop();    // tempOffsets
-        iTimeOffsets.Close();
-        iTimeOffsets = tempOffsets;
-        }
-    else
-        {
-   	    // remove old timeoffsets
-        iTimeOffsets.Reset();
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpRepeatField::ExternalizeL(RWriteStream& aStream) const
-    {
-    iRepeatInterval.ExternalizeL(aStream);
-    iActiveDuration.ExternalizeL(aStream);
-    aStream.WriteUint32L(iTimeOffsets.Count());
-    for (TInt i = 0; i < iTimeOffsets.Count(); i++)
-        {
-        (iTimeOffsets)[i].ExternalizeL(aStream);
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpRepeatField* CSdpRepeatField::InternalizeL(RReadStream& aStream)
-    {
-    const TSdpTypedTime repeatInterval = TSdpTypedTime::InternalizeL(aStream);
-    TSdpTypedTime activeDuration = TSdpTypedTime::InternalizeL(aStream);
-    TUint32 offsetsCount = aStream.ReadUint32L();
-    RArray<TSdpTypedTime> offsets;
-    CleanupClosePushL(offsets);
-
-    if (offsetsCount > 0)
-        {
-		for (TUint i = 0; i < offsetsCount; i++)
-			{
-            User::LeaveIfError(offsets.Append(
-                TSdpTypedTime::InternalizeL(aStream)));
-			}
-        
-        }
-
-    CSdpRepeatField* obj = CSdpRepeatField::NewL(repeatInterval,
-                                                activeDuration, offsets);
-    
-    CleanupStack::PopAndDestroy(); // offsets
-    return obj;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::CSdpRepeatField
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CSdpRepeatField::CSdpRepeatField(const TSdpTypedTime aRepeatInterval,
-								const TSdpTypedTime aActiveDuration)
-:	iRepeatInterval(aRepeatInterval), iActiveDuration(aActiveDuration)
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::CSdpRepeatField
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CSdpRepeatField::CSdpRepeatField()
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpRepeatField::ConstructL(const TDesC8& aText)
-	{
-    iPool = SdpCodecStringPool::StringPoolL();
-    RArray <TPtrC8> lines;
-    lines = SdpUtil::DivideToLinesL(aText, KErrSdpCodecRepeatField);
-    CleanupClosePushL(lines);
-    RArray<TPtrC8> repeatArray;
-    repeatArray = SdpUtil::GetElementsFromLineL(lines[0], 
-                                                KErrSdpCodecRepeatField);
-    CleanupClosePushL(repeatArray);
-    const TDesC8& repeatName = iPool.StringF(SdpCodecStringConstants::ERepeat,
-                                        SdpCodecStringConstants::Table).DesC();    
-    __ASSERT_ALWAYS(lines.Count() == 1
-        && repeatArray.Count() >= 3
-        && repeatName.CompareF(repeatArray[0]) == 0,
-        User::Leave(KErrSdpCodecRepeatField));
-
-    // repeat interval
-    __ASSERT_ALWAYS(TLex8(repeatArray[1]).Peek() != '0', 
-        User::Leave(KErrSdpCodecRepeatField));
-    iRepeatInterval = TSdpTypedTime::DecodeL(repeatArray[1]);
-    
-    // active duration
-    iActiveDuration = TSdpTypedTime::DecodeL(repeatArray[2]);
-
-	if (repeatArray.Count() > 3)
-		{
-		for (TInt i = 3; i < repeatArray.Count(); i++)
-			{
-            User::LeaveIfError(iTimeOffsets.Append(
-                TSdpTypedTime::DecodeL(repeatArray[i])));
-			}
-		}
-    CleanupStack::PopAndDestroy(2); // lines, repeatArray
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpRepeatField::ConstructL(const RArray<TSdpTypedTime>& aOffsets)
-	{
-    __ASSERT_ALWAYS(iRepeatInterval.iValue > 0, 
-                    User::Leave(KErrSdpCodecRepeatField));
-    iPool = SdpCodecStringPool::StringPoolL();
-    if (aOffsets.Count() > 0)
-		{
-        for (TInt i = 0; i < aOffsets.Count(); i++)
-			{
-            User::LeaveIfError(iTimeOffsets.Append(aOffsets[i]));
-			}
-		}
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpRepeatField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//
-void CSdpRepeatField::__DbgTestInvariant() const
-	{
-	TBool invariant = iRepeatInterval.iValue > 0;
-	if (!invariant)
-		User::Invariant();
-	}
-
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdprtpmapvalue.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpRtpmapValue.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include "sdprtpmapvalue.h"
-#include "sdputil.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecconstants.h"
-#include "_sdpdefs.h"
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// TSdpRtpmapValue::TSdpRtpmapValue
-// C++ default constructor can NOT contain any code, that
-// might leave.
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TSdpRtpmapValue::TSdpRtpmapValue( 
-    const TPtrC8& aEncodingName,
-    const TPtrC8& aClockrate,
-    const TPtrC8& aEncodingParameters ) :
-    iEncName( aEncodingName ),
-    iClockrate( aClockrate ),
-    iEncParams( aEncodingParameters )
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// TSdpRtpmapValue::DecodeL
-// Decodes string and puts it into parts
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TSdpRtpmapValue TSdpRtpmapValue::DecodeL( 
-    const TDesC8& aText )
-    {
-    __ASSERT_ALWAYS(aText.Length() > 0 && 
-                    aText.Locate( KSlashChar ) != KErrNotFound, 
-        User::Leave(KErrSdpCodecMediaAttributeField));
-
-    TInt length( aText.Length() );
-    if ( aText[length - 1] == KLFChar )
-        {
-        if ( length > 1 && aText[length - 2] == KCRChar )
-            {
-            length--;
-            }
-        length--;
-        }  
-    TPtrC8 restValue( aText.Left( length ) );
-
-    __ASSERT_ALWAYS(SdpUtil::IsByteString(restValue), 
-                    User::Leave(KErrSdpCodecMediaAttributeField)); 
-
-    TInt pos = restValue.Locate( KSlashChar );
-    
-    // <encoding name>
-    TPtrC8 encName( restValue.Left( pos ) );    
-    
-    restValue.Set( restValue.Right( restValue.Length() - pos - 1 ) );
-    pos = restValue.Locate( KSlashChar );
-
-    // <clock rate> <encoding parameters>
-    TPtrC8 encParam( KNullDesC8 );
-    TPtrC8 clockRate( KNullDesC8 );
-   
-    if ( pos == KErrNotFound )
-        {              
-        clockRate.Set( restValue );      
-        
-        __ASSERT_ALWAYS( clockRate.Length() > 0 && encParam.Length() == 0,
-                         User::Leave( KErrSdpCodecMediaAttributeField ) );          
-        }
-    else
-        {
-        clockRate.Set( restValue.Left( pos ) );      
-        encParam.Set( restValue.Right( restValue.Length() - pos - 1 ) );
-
-        __ASSERT_ALWAYS( clockRate.Length() > 0 && encParam.Length() > 0,
-                         User::Leave( KErrSdpCodecMediaAttributeField ) );
-        }
-   
-    return TSdpRtpmapValue( encName, clockRate, encParam );
-    }
-
-// -----------------------------------------------------------------------------
-// TSdpRtpmapValue::EncodeL
-// Encodes a string into valid output string format
-// -----------------------------------------------------------------------------
-//
-EXPORT_C HBufC8* TSdpRtpmapValue::EncodeL() const
-    {
-    TUint length = iEncName.Length() + iClockrate.Length() + 2;
-
-    if (iEncParams.Length() > 0)
-        {
-        length += iEncParams.Length() + 1;
-        }
-
-    HBufC8* returnValue = HBufC8::NewL(length);
-
-    TPtr8 retValPtr(returnValue->Des());
-    retValPtr.Append(iEncName);
-    retValPtr.Append(KSlashStr);
-    retValPtr.Append(iClockrate);
-
-    if (iEncParams.Length() > 0)
-        {
-        retValPtr.Append(KSlashStr);
-        retValPtr.Append(iEncParams);
-        }
-
-    return returnValue;
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdptimefield.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,415 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpTimeField.h
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include "sdptimefield.h"
-#include "sdputil.h"
-#include "sdpcodec.pan"
-#include "_sdpdefs.h"
-#include "sdprepeatfield.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpdocument.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecconstants.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecstringpool.h"
-
-// LOCAL CONSTANTS
-_LIT8(KZeroTime, "0");
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::DecodeL
-// Decodes time field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpTimeField * CSdpTimeField::DecodeL(const TDesC8& aText, 
-                                                TBool aRecurse)
-	{
-	CSdpTimeField* obj = DecodeLC(aText, aRecurse);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::DecodeLC
-// Decodes time field from TDesC
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpTimeField * CSdpTimeField::DecodeLC(const TDesC8& aText, 
-                                                TBool aRecurse)
-	{
-	CSdpTimeField* obj = new (ELeave) CSdpTimeField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aText, aRecurse);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::NewL
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-EXPORT_C CSdpTimeField * CSdpTimeField::NewL(const TDesC8& aStartTime, 
-                                             const TDesC8& aStopTime)
-	{
-	CSdpTimeField* obj = NewLC(aStartTime, aStopTime);
-	CleanupStack::Pop();
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::NewLC
-// Two-phased constructor
-// -----------------------------------------------------------------------------
-EXPORT_C CSdpTimeField * CSdpTimeField::NewLC(const TDesC8& aStartTime, 
-                                              const TDesC8& aStopTime)
-	{
-	CSdpTimeField* obj = new (ELeave) CSdpTimeField();
-	CleanupStack::PushL(obj);
-	obj->ConstructL(aStartTime, aStopTime);
-	return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::~CSdpTimeField
-// Destructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpTimeField::~CSdpTimeField ()
-	{
-	iRFields.ResetAndDestroy();
-	delete iStopTime;
-	delete iStartTime;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpTimeField::EncodeL(RWriteStream& aStream, 
-                                     TBool aRecurse) const
-	{
-	__ASSERT_ALWAYS(this->IsValid(), User::Leave(KErrNotReady));
-    const TDesC8& timeName = iStringPool.StringF(SdpCodecStringConstants::ETime, 
-                                        SdpCodecStringConstants::Table).DesC();
-    aStream.WriteL(timeName);
-    aStream.WriteL(*iStartTime);
-    aStream.WriteL(KSPStr);
-    aStream.WriteL(*iStopTime);
-    aStream.WriteL(KCRLFStr);
-    if (aRecurse)
-        {
-        for(TInt i=0; i<iRFields.Count(); i++)
-            {
-            iRFields[i]->EncodeL(aStream);
-            }
-        }
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::CloneL
-// Creates an exact copy of the time field
-// -----------------------------------------------------------------------------
-//
-EXPORT_C CSdpTimeField* CSdpTimeField::CloneL(TBool aRecurse) const
-	{
-    CSdpTimeField* obj = CSdpTimeField::NewLC(*this->iStartTime, 
-                                            *this->iStopTime);
-	__TEST_INVARIANT;
-    if (aRecurse)
-        {
-        for (TInt i = 0; i < iRFields.Count(); i++)
-            {
-            CSdpRepeatField* repObj = iRFields[i]->CloneL();
-            CleanupStack::PushL(repObj);
-            User::LeaveIfError(obj->RepeatFields().Append(repObj));
-            CleanupStack::Pop(); // repObj
-            }
-        }
-    CleanupStack::Pop(); //obj
-    return obj;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::operator ==
-// Checks if two time fields are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpTimeField::operator == (const CSdpTimeField & aObj) const
-	{
-	__TEST_INVARIANT;
-    return (aObj.StartTime().Compare(this->StartTime()) == 0
-            &&  aObj.StopTime().Compare(this->StopTime()) == 0
-            && RepeatFieldsCompare(aObj));
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::IsValid
-// Checks if start time and stop time are valid
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool CSdpTimeField::IsValid() const
-    {
-    return 	( (iStartTime->Match(KZeroTime) 
-                && iStopTime->Match(KZeroTime)) 
-            || (iStartTime->Length() != 0 
-                && iStopTime->Length() != 0
-				&& *iStartTime <= *iStopTime));
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::StartTime
-// Returns start time 
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpTimeField::StartTime() const
-	{
-	__TEST_INVARIANT;
-	return *iStartTime;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::StopTime
-// Returns stop time 
-// -----------------------------------------------------------------------------
-//
-EXPORT_C const TDesC8& CSdpTimeField::StopTime() const
-	{
-	__TEST_INVARIANT;
-	return *iStopTime;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::SetTimesL
-// Sets start time and stop time if they are valid ones 
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void CSdpTimeField::SetTimesL(const TDesC8& aStartTime, 
-                                       const TDesC8& aStopTime)
-	{
-	__ASSERT_ALWAYS(
-        (aStartTime.Length() == 1 && aStartTime[0] -'0' == 0
-            && ((aStopTime.Length() == 1 && aStopTime[0] -'0' == 0)
-                || (aStopTime.Length() > 1 
-                    && SdpUtil::IsValidNtpTime(aStopTime))))
-        || (aStartTime.Length() > 1 && SdpUtil::IsValidNtpTime(aStartTime)
-            && aStopTime.Length() > 1 && SdpUtil::IsValidNtpTime(aStopTime)
-            && aStartTime < aStopTime),
-        User::Leave(KErrSdpCodecTimeField));
-    
-    HBufC8* tmpStartTime = aStartTime.AllocL();
-    CleanupStack::PushL(tmpStartTime);
-    HBufC8* tmpStopTime = aStopTime.AllocL();
-	
-    tmpStartTime->Des().Trim();
-	delete iStartTime;
-	iStartTime = tmpStartTime;
-	tmpStopTime->Des().Trim();
-	delete iStopTime;
-	iStopTime = tmpStopTime;
-
-    CleanupStack::Pop(); // tmpStartTime
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::RepeatFields
-// Returns repeat fields
-// -----------------------------------------------------------------------------
-//
-EXPORT_C RPointerArray<CSdpRepeatField>& CSdpTimeField::RepeatFields()
-	{
-	__TEST_INVARIANT;
-	return iRFields;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::ExternalizeL
-// Externalizes the object to stream
-// -----------------------------------------------------------------------------
-//
-void CSdpTimeField::ExternalizeL(RWriteStream& aStream) const
-    {
-   	__TEST_INVARIANT;
-    aStream.WriteUint32L(iStartTime->Length());
-    aStream.WriteL(*iStartTime);
-    aStream.WriteUint32L(iStopTime->Length());
-    aStream.WriteL(*iStopTime);
-    aStream.WriteUint32L(iRFields.Count());
-    for(TInt i=0; i<iRFields.Count(); i++)
-       {
-       iRFields[i]->ExternalizeL(aStream);
-       }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::InternalizeL
-// Internalizes the object from stream
-// -----------------------------------------------------------------------------
-//
-CSdpTimeField* CSdpTimeField::InternalizeL(RReadStream& aStream)
-    {
-    CSdpTimeField* self = new (ELeave) CSdpTimeField();
-    CleanupStack::PushL(self);
-    self->iStringPool = SdpCodecStringPool::StringPoolL();
-
-    self->DoInternalizeL(aStream);
-
-    CleanupStack::Pop(); //self
-
-    return self; 
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::DoInternalizeL
-// Internalizes the object members from stream
-// -----------------------------------------------------------------------------
-//
-void CSdpTimeField::DoInternalizeL(RReadStream& aStream)
-    {
-    
-    TUint32 valueLength = aStream.ReadUint32L();
-	iStartTime = HBufC8::NewL (valueLength);
-	TPtr8 startTime(iStartTime->Des());
-	aStream.ReadL (startTime,valueLength);
-    valueLength = aStream.ReadUint32L();
-	iStopTime = HBufC8::NewL (valueLength);
-	TPtr8 stopTime(iStopTime->Des());
-	aStream.ReadL (stopTime,valueLength);
-    
-    TUint rFieldsCount = aStream.ReadUint32L();
-    for (TUint i = 0; i < rFieldsCount; i++)
-        {
-        CSdpRepeatField* rField = CSdpRepeatField::InternalizeL(aStream);
-        CleanupStack::PushL(rField);
-        User::LeaveIfError(iRFields.Append(rField));
-        CleanupStack::Pop(); //rField
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::CSdpTimeField
-// Constructor
-// -----------------------------------------------------------------------------
-//
-CSdpTimeField::CSdpTimeField()
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpTimeField::ConstructL(const TDesC8& aText, TBool aRecurse)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
-    RArray <TPtrC8> lines;
-    lines = SdpUtil::DivideToLinesL(aText, KErrSdpCodecTimeField);
-    CleanupClosePushL(lines);
-    RArray<TPtrC8> timeArray;
-    timeArray = SdpUtil::GetElementsFromLineL(lines[0], KErrSdpCodecTimeField);
-    CleanupClosePushL(timeArray);
-    const TDesC8& timeName = iStringPool.StringF(SdpCodecStringConstants::ETime, 
-        SdpCodecStringConstants::Table).DesC();        
-    __ASSERT_ALWAYS(lines.Count() > 0
-                    && timeArray.Count() == 3
-                    && timeArray[0].Find(timeName) != KErrNotFound,
-                    User::Leave(KErrSdpCodecTimeField));
-
-    SetTimesL(timeArray[1], timeArray[2]);
-
-    if (aRecurse && lines.Count() > 1)
-        {
-        const TDesC8& repeatName = 
-                    iStringPool.StringF(SdpCodecStringConstants::ERepeat,
-                               SdpCodecStringConstants::Table).DesC();   
-        for( TInt i = 1; i<lines.Count(); i++)
-            {
-            RArray<TPtrC8> lineArray;
-            lineArray = SdpUtil::GetElementsFromLineL(lines[i], KErrSdpCodecTimeField);
-            CleanupClosePushL(lineArray);
-            __ASSERT_ALWAYS(lineArray[0].Find(repeatName) != KErrNotFound,
-                User::Leave(KErrSdpCodecTimeField));
-            CSdpRepeatField* repeatField = CSdpRepeatField::DecodeL(lines[i]);
-            CleanupStack::PushL(repeatField);
-            User::LeaveIfError(iRFields.Append(repeatField));
-            CleanupStack::Pop(); // repeatField
-            CleanupStack::PopAndDestroy(); //lineArray
-            }
-        }
-    CleanupStack::PopAndDestroy(2); // timeArray, lines
-    __TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::ConstructL
-// Symbian 2nd phase constructor can leave.
-// -----------------------------------------------------------------------------
-//
-void CSdpTimeField::ConstructL(const TDesC8& aStartTime, 
-                               const TDesC8& aStopTime)
-	{
-    iStringPool = SdpCodecStringPool::StringPoolL();
- 	SetTimesL(aStartTime, aStopTime);
-	__TEST_INVARIANT;
-	}
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::RepeatFieldsCompare
-// Checks if two time field objects repeat fields are equal 
-// -----------------------------------------------------------------------------
-//
-TBool CSdpTimeField::RepeatFieldsCompare(const CSdpTimeField& aObj) const
-    {
-    TBool returnValue = ETrue;
-    if (iRFields.Count() == aObj.iRFields.Count())
-        {
-        for (TInt i = 0; i < iRFields.Count() && returnValue; i++)
-            {
-            if (!(*iRFields[i] == *aObj.iRFields[i]))
-                returnValue = EFalse;
-            }
-        }
-    
-    return returnValue;
-    }
-
-// -----------------------------------------------------------------------------
-// CSdpTimeField::__DbgTestInvariant
-// Test invariant
-// -----------------------------------------------------------------------------
-//
-void CSdpTimeField::__DbgTestInvariant() const
-	{
-    TBool invariant = 
-        ((iStartTime->Length() == 1 && (iStartTime->Des())[0] -'0' == 0)
-            && ((iStopTime->Length() == 1 && (iStopTime->Des())[0] -'0' == 0)
-                || (iStopTime->Length() > 1 
-                    && SdpUtil::IsValidNtpTime(*iStopTime))))
-        || (iStartTime->Length() > 1 && SdpUtil::IsValidNtpTime(*iStartTime)
-            && iStopTime->Length() > 1 && SdpUtil::IsValidNtpTime(*iStopTime)
-            && *iStartTime < *iStopTime);
-
-	if (!invariant)
-		User::Invariant();
-	}
-
-
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdptypedtime.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,206 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpTypedTime.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include "sdptypedtime.h"
-#include "_sdpdefs.h"
-#include "sdpcodecerr.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecstringpool.h"
-
-// LOCAL CONSTANTS
-const TUint KMaxTInt64Digits = 30;
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::TSdpTypedTime
-// Contructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TSdpTypedTime::TSdpTypedTime()
-:	iValue(0), iUnit(ETimeUnitNone)
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::TSdpTypedTime
-// Contructor
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TSdpTypedTime::TSdpTypedTime(TInt64 aValue, TUnit aUnit)
-:	iValue(aValue), iUnit(aUnit)
-	{
-	}
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::operator ==
-// Checks if two TSdpTypedTimes are equal
-// -----------------------------------------------------------------------------
-//
-EXPORT_C TBool TSdpTypedTime::operator == (const TSdpTypedTime& aObj) const
-	{
-	return iValue == aObj.iValue && iUnit == aObj.iUnit;
-	}
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::SetValue
-// Sets typed time value
-// -----------------------------------------------------------------------------
-//
-EXPORT_C void TSdpTypedTime::SetValue(TInt64 aValue, TUnit aUnit)
-	{
-	iValue = aValue;
-	iUnit = aUnit;
-	}
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::ExternalizeL
-// Externalizes the typed time to stream
-// -----------------------------------------------------------------------------
-//
-void TSdpTypedTime::ExternalizeL(RWriteStream& aStream) const
-    {
-	aStream.WriteUint32L( I64HIGH( iValue ) );
-    aStream.WriteUint32L( I64LOW( iValue ) );
-    aStream.WriteInt16L(iUnit);
-    }
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::InternalizeL
-// Internalizes typed time from stream
-// -----------------------------------------------------------------------------
-//
-TSdpTypedTime TSdpTypedTime::InternalizeL(RReadStream& aStream)
-    {
-    TUint32 high = aStream.ReadUint32L();
-    TUint32 low = aStream.ReadUint32L();
-    TInt64 value = MAKE_TINT64( high, low );
-    TUnit unit = static_cast<TUnit>(aStream.ReadInt16L());
-    TSdpTypedTime typedTime(value, unit);
-    return typedTime;
-    }
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::EncodeL
-// Writes attributes in proper format to the stream
-// -----------------------------------------------------------------------------
-//
-void TSdpTypedTime::EncodeL(RWriteStream& aStream) const
-    {
-    TBuf8<KMaxTInt64Digits> number;
-    number.AppendNum( iValue );
-	aStream.WriteL( number );
-
-    RStringPool pool = SdpCodecStringPool::StringPoolL();
-    const TDesC8& timeDays = pool.StringF(
-                                    SdpCodecStringConstants::ETimeUnitDays,
-                                    SdpCodecStringConstants::Table).DesC();
-    const TDesC8& timeHours = pool.StringF(
-                                    SdpCodecStringConstants::ETimeUnitHours,
-                                    SdpCodecStringConstants::Table).DesC();
-    const TDesC8& timeMinutes = pool.StringF(
-                                    SdpCodecStringConstants::ETimeUnitMinutes,
-                                    SdpCodecStringConstants::Table).DesC();
-    const TDesC8& timeSeconds = pool.StringF(
-                                    SdpCodecStringConstants::ETimeUnitSeconds,
-                                    SdpCodecStringConstants::Table).DesC();
-
-    if (iUnit != ETimeUnitNone)
-        {
-        TBuf8<1> unit;
-        if (iUnit == ETimeUnitDays)
-            {
-            unit.Append(timeDays);
-            }
-        else if (iUnit == ETimeUnitHours)
-            {
-            unit.Append(timeHours);
-            }
-        else if (iUnit == ETimeUnitMinutes)
-            {
-            unit.Append(timeMinutes);
-            }
-        else if (iUnit == ETimeUnitSeconds)
-            {
-            unit.Append(timeSeconds);
-            }
-        else
-            {}
-
-        aStream.WriteL(unit);
-        }
-    }
-
-// -----------------------------------------------------------------------------
-// TSdpTypedTime::DecodeL
-// Decodes typed time from TDesC
-// -----------------------------------------------------------------------------
-//
-TSdpTypedTime TSdpTypedTime::DecodeL(const TDesC8& aText)
-    {
-    TLex8 typedTimeLex(aText);
-    TSdpTypedTime typedTime;
-    User::LeaveIfError(typedTimeLex.Val(typedTime.iValue, EDecimal));
-
-    if (typedTimeLex.Peek() != 0)
-        {
-        TPtrC8 unitString = typedTimeLex.NextToken();
-
-        RStringPool pool = SdpCodecStringPool::StringPoolL();
-        const TDesC8& timeDays = pool.StringF(
-                            SdpCodecStringConstants::ETimeUnitDays,
-                            SdpCodecStringConstants::Table).DesC();
-        const TDesC8& timeHours = pool.StringF(
-                            SdpCodecStringConstants::ETimeUnitHours,
-                            SdpCodecStringConstants::Table).DesC();
-        const TDesC8& timeMinutes = pool.StringF(
-                            SdpCodecStringConstants::ETimeUnitMinutes,
-                            SdpCodecStringConstants::Table).DesC();
-        const TDesC8& timeSeconds = pool.StringF(
-                            SdpCodecStringConstants::ETimeUnitSeconds,
-                            SdpCodecStringConstants::Table).DesC();
-
-        if (unitString.Compare(timeDays) == 0)
-            {
-            typedTime.iUnit = ETimeUnitDays;
-            }
-        else if (unitString.Compare(timeHours) == 0)
-            {
-            typedTime.iUnit = ETimeUnitHours;
-            }
-        else if (unitString.Compare(timeMinutes) == 0)
-            {
-            typedTime.iUnit = ETimeUnitMinutes;
-            }
-        else if (unitString.Compare(timeSeconds) == 0)
-            {
-            typedTime.iUnit = ETimeUnitSeconds;
-            }
-        else
-            {
-            User::Leave(KErrSdpCodecTypedTime);
-            }
-        }
-    else
-        {
-        typedTime.iUnit = ETimeUnitNone;
-        }
-
-    return typedTime;
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/src/sdputil.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,635 +0,0 @@
-// Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// Name          : SdpUtil.cpp
-// Part of       : Local SDP Codec
-// Version       : 1.0
-//
-
-
-
-#include <s32strm.h>
-#include <in_sock.h>
-#include "sdputil.h"
-#include "sdpcodecstringconstants.h"
-#include "sdpcodecstringpool.h"
-#include "sdpcodecconstants.h"
-#include "_sdpdefs.h"
-
-// LOCAL CONSTANTS
-const TInt KMaxAddressLength = 256;
-_LIT8(KInvalidTokenCharacters, "\0\r\n\t ()<>@,;:");
-_LIT8(KInvalidByteStringCharacters, "\0\r\n");
-_LIT8(KWhitespaceCharacters, "\0\r\n \t");
-_LIT16(KWildAddr, "0.0.0.0");
-    
-// -----------------------------------------------------------------------------
-// SdpUtil::IsValidCharSet
-// Generic checker to validate that string has only valid characters
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsValidCharSet(
-    const TDesC8& aIllegalChars,
-    const TDesC8& aValue,
-    TInt aStart,
-    TInt aEnd)
-	{
-	TBool result = EFalse;
-	
-	if ( aIllegalChars.Length() > 0 && aStart >= 0 && 
-         aEnd <= aValue.Length() && aStart < aEnd )
-		{
-		TInt comp = KErrNotFound;
-		while (comp == KErrNotFound && aStart < aEnd)
-			{
-			comp = aIllegalChars.Locate( aValue[aStart] );
-			++aStart;
-			}
-		result = ( comp == KErrNotFound );
-		}
-	else 
-		{
-		result = ( ( aStart < aEnd ) && 
-                   ( aIllegalChars.Length() == 0 || aValue.Length() == 0 ) );
-		}
-
-	return result;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenList
-// Checks that token list is valid
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenList(
-    const TDesC8& aValue )
-	{	
-	TBool atError = ( aValue.Length() == 0 );
-    
-    // Check that we are starting with valid character, not e.g. with space
-    if ( !atError && 
-         KInvalidTokenCharacters().Locate( aValue[0] ) != KErrNotFound )
-        {
-        atError = ETrue;
-        }
-    
-    TLex8 lexer( aValue );
-    // Go through the tokens to see that they are valid
-    while ( !atError && !lexer.Eos() )
-        {
-        if ( !IsToken( lexer.NextToken() ) )
-            {
-            atError = ETrue;
-            }   
-        }
-
-	return !atError;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsToken
-// Checks if aValue is valid token
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsToken( 
-    const TDesC8& aValue, 
-    TInt aStart, 
-    TInt aEnd)
-	{
-	return IsValidCharSet( KInvalidTokenCharacters, aValue, aStart, aEnd );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsToken
-// Checks if aValue is valid token
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsToken(
-    const TDesC8& aValue )
-	{
-	return IsValidCharSet( KInvalidTokenCharacters, aValue, 0, aValue.Length() );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsByteString
-// Checks if aValue is valid byte string
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsByteString(
-    const TDesC8& aValue, 
-    TInt aStart, 
-    TInt aEnd )
-	{
-	return IsValidCharSet( KInvalidByteStringCharacters, aValue, aStart, aEnd );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsByteString
-// Checks if aValue is valid byte string
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsByteString(
-    const TDesC8& aValue )
-	{
-	return IsValidCharSet( KInvalidByteStringCharacters, aValue, 0, 
-                           aValue.Length() );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenTextPair
-// Checks if aValue is valid pair ("valid token":"valid byte-string")
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenTextPair(
-    const TDesC8& aValue, 
-    TInt aStart,
-    TInt aEnd )
-	{
-	// token ":" text
-	TBool result = EFalse;
-	if ( aStart >= 0 && aEnd <= aValue.Length() && aStart < aEnd )
-		{
-		TPtrC8 subVal = aValue.Mid( aStart, aEnd - aStart );
-		TInt colonPos = subVal.Locate( KColonChar );
-		result = colonPos != KErrNone &&
-                 IsToken( subVal, 0, colonPos ) &&
-                 IsByteString( subVal, colonPos + 1, subVal.Length() );
-		}
-	return result;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenTextPair
-// Checks if aValue is valid pair ("valid token":"valid byte-string")
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenTextPair(
-    const TDesC8& aValue )
-	{
-	return IsTokenTextPair( aValue, 0, aValue.Length() );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsNonWhitepce
-// Checks if aValue contains only non-whitespace characters
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsNonWhitespace(
-    const TDesC8& aValue )
-	{
-	return IsValidCharSet( KWhitespaceCharacters, aValue, 0, aValue.Length() );
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsValidNtpTime
-// Checks if aValue contains only non-whitespace characters
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsValidNtpTime(
-    const TDesC8& aValue )
-	{
-	// POS-DIGIT 9*DIGIT
-	TUint len = aValue.Length();
-	TBool result = len >= 10 && TChar( aValue[0] ) != TChar('0');
-	if ( result )
-		{
-		for ( TUint i( 0 ); result && i < len; i++)
-			{
-			TInt tmp = aValue[i] - '0';
-			result = ( tmp >= 0 && tmp <= 9 );
-			}
-		}
-	return result;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::DivideToLinesL
-// Divides descriptor into a number of lines that are separated by
-// CRLF or LF marks
-// -----------------------------------------------------------------------------
-//
-RArray<TPtrC8> SdpUtil::DivideToLinesL( 
-    const TDesC8& aLines,
-    TInt aErrCode )
-    {
-    RArray<TPtrC8> lineArray;
-    CleanupClosePushL( lineArray );
-    
-    TInt lineStartPos( 0 );
-    TInt lineEndPos( aLines.Length() );
-    TInt pos( 0 );
-    
-    TPtrC8 parsedPart( aLines.Right( lineEndPos - lineStartPos ) );
-    // Splits aLines to number of TPtrC8s, each ending to CRLF/LF
-    while ( lineStartPos < lineEndPos && 
-           ( pos = parsedPart.Find( KLFStr ) ) != KErrNotFound )
-        {  
-        if ( ! ( pos == 0 || 
-                ( pos == ( KCRLFStr().Length() - 1 ) && 
-                  parsedPart.Find( KCRLFStr ) == 0 ) ) )
-            {
-            // Lines that contain only CRLF or LF are ignored
-            // Put the valid lines to the array
-            User::LeaveIfError( 
-                lineArray.Append( 
-                    TPtrC8( parsedPart.Left( pos + KLFStr().Length() ) ) ) );
-            }
-        // Advance the start of the line after LF mark
-        lineStartPos += pos + KLFStr().Length();
-        parsedPart.Set( aLines.Right( lineEndPos - lineStartPos ) );
-        }    
-    
-    // This method expects that last line of aLines ends _always_ 
-    // to LF not to '\0'
-    if ( aLines.Length() == 0 ||
-        ( aLines.Length() > 0 && aLines[aLines.Length() - 1] != '\n' ) )
-        {
-        User::Leave( aErrCode );
-        }
-
-    CleanupStack::Pop();    // lineArray
-    return lineArray;    
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::GetElementsFromLineL
-// Gets all the elements from a single line
-// -----------------------------------------------------------------------------
-//
-RArray<TPtrC8> SdpUtil::GetElementsFromLineL(
-    const TDesC8& aLine, 
-    TInt aErrCode )
-    {
-    TLex8 lexer( aLine );
-    RArray<TPtrC8> lineArray = 
-        SdpUtil::GetElementsFromLineL( lexer, KSPChar, aErrCode );    
-    return lineArray;
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::GetElementsFromLineL
-// Gets all the elements from a single line
-// -----------------------------------------------------------------------------
-//
-RArray<TPtrC8> SdpUtil::GetElementsFromLineL( 
-    const TDesC8& aLine, 
-    TChar aDelimiter,
-    TInt aErrCode )
-    {
-    TLex8 lexer( aLine );
-    RArray<TPtrC8> lineArray = 
-        SdpUtil::GetElementsFromLineL( lexer, aDelimiter, aErrCode );
-    return lineArray;
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::GetElementsFromLineL
-// Gets all the elements from a single line
-// -----------------------------------------------------------------------------
-//
-RArray<TPtrC8> SdpUtil::GetElementsFromLineL( 
-    TLex8& aLexer, 
-    TChar aDelimiter,
-    TInt aErrCode )
-    {
-    RArray<TPtrC8> lineArray;    
-    CleanupClosePushL( lineArray );
-   
-    // Header is special case, because it is joined _without_
-    // space character with the first attribute, so it must be
-    // parsed separately        
-            
-    aLexer.Mark();
-    // curChar must be != KEqualChar at first comparison
-    for ( TChar curChar( KSPChar ); curChar != KEqualChar; )
-        {
-        curChar = aLexer.Peek();
-        // Syntax check      
-        if ( curChar == KEofChar || curChar == KLFChar ||
-             curChar == KCRChar )
-            {
-            User::Leave( aErrCode );
-            }        
-        aLexer.Inc();       
-        }
-    // Append header to array
-    User::LeaveIfError( lineArray.Append( aLexer.MarkedToken() ) );
-    
-    // Whitespace MUST NOT be used after the "=" sign
-    if (aLexer.Peek() == KSPChar) 
-	    {
-		User::Leave( aErrCode );	    	 
-	    }
-
-    // Get the other elements from the string to the array
-    ChopElementsFromLineL( lineArray, aLexer, aDelimiter, aErrCode );
-
-    CleanupStack::Pop();    // lineArray
-    return lineArray;
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsPosDigit
-// Checks if all the charcaters on the descriptor are POS-DIGITs
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsPosDigit( 
-    const TDesC8& aDes )
-    {
-    // POS-DIGIT = %x31-39 ; 1 - 9
-    _LIT8( KValidPosDigits, "123456789" );
-    return SdpUtil::IsValidChars( KValidPosDigits, aDes );
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsDigit
-// Checks if all the charcaters on the descriptor are DIGITs
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsDigit( 
-    const TDesC8& aDes )
-    {
-    // DIGIT = "0" / "1" / "2" / "3" / "4" / "5" / "6" /
-    //         "7" / "8" / "9"
-    _LIT8( KValidDigits, "0123456789" );
-
-    return SdpUtil::IsValidChars( KValidDigits, aDes );
-    }
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsValidChars
-// Checks if all the charcaters on the descriptor are from valid charset
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsValidChars( 
-    const TDesC8& aValidChars, 
-    const TDesC8& aDes )
-    {
-    TBool valid( aDes.Length() > 0 );
-    for ( TInt i( 0 ); i < aDes.Length() && valid; i++ )
-        {
-        if ( aValidChars.Locate( aDes[i] ) == KErrNotFound )
-            {
-            valid = EFalse;
-            }
-        }
-
-    return valid;
-    }
-        
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenCharWithSpacesL
-// Checks if all the elements on the string are valid tokens
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenCharWithSpacesL(
-    const TDesC8& aValue )
-	{
-	TLex8 lex( aValue );
-	lex.SkipSpace();
-
-	if( lex.Remainder().Length() == 0 )
-		{
-		User::Leave( KErrArgument );
-		}
-
-	while ( !lex.Eos() )
-		{
-		if ( !IsTokenChar( lex.NextToken() ) )
-			{
-			return EFalse;
-			}
-		lex.SkipSpace();
-		}
-	return ETrue;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenCharWithOptionalSlash
-// Checks if all the possible two elements divided by slash are valid tokens
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenCharWithOptionalSlash(const TDesC8& aValue)
-	{
-	TInt lineEndPosition = aValue.Locate('/');
-
-	if ( lineEndPosition != KErrNotFound )
-		{
-		TPtrC8 firstToken( aValue.Left( lineEndPosition ) );
-		if( !IsTokenChar( firstToken ) ||
-		    !IsTokenChar( aValue.Mid( lineEndPosition + 1 ) ) )
-			{
-			return EFalse;
-			}
-		}
-	else
-		{
-		return IsTokenChar( aValue );
-		}
-	return ETrue;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenChar
-// Checks if all the elements on the string are valid tokens
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenChar(
-    const TDesC8& aValue )
-	{	
-    TLex8 lex( aValue );
-	while( !lex.Eos() )
-		{
-		TChar ch = lex.Get();
-		lex.Inc();
-
-		if( ch == '\r' ||ch == '\n' || ch == '\0' || !IsTokenChar( ch ) )
-			{
-			return EFalse;
-			}
-		}
-	return ETrue;
-	}
-
-// -----------------------------------------------------------------------------
-// SdpUtil::IsTokenChar
-// Checks if the character is a valid token character
-// -----------------------------------------------------------------------------
-//
-TBool SdpUtil::IsTokenChar( 
-    TChar aChar )
-	{
-    return ( ( aChar == '!')||
-	         ( aChar >= '#' && aChar <= '\'' ) ||
-	         ( aChar == '*' || aChar == '+' ) ||
-	         ( aChar == '-' || aChar == '.' ) ||
-	         ( aChar.IsDigit() ) ||
-	         ( aChar >= 'a' && aChar <= 'z' ) ||
-	         ( aChar >= 'A' && aChar <= 'Z' ) ||
-	         ( aChar >= '^' && aChar <= '~' ) );	
-	}
-
-// ---------------------------------------------------------------------------
-// SdpUtil::EncodeBufferL
-// Encodes headername and a value to the stream
-// ---------------------------------------------------------------------------
-//
-void SdpUtil::EncodeBufferL(
-    const TDesC8& aValue, 
-    TInt aIndex,
-    RWriteStream& aStream )
-	{
-	if( aValue.Length() != 0 )
-		{
-        RStringPool pool = SdpCodecStringPool::StringPoolL();
-		RStringF headername = pool.StringF( aIndex, 
-                                        SdpCodecStringPool::StringTableL() );
-		aStream.WriteL( headername.DesC() );
-		aStream.WriteL( aValue );
-		aStream.WriteL( KCRLFStr );
-		}
-	}
-
-// ---------------------------------------------------------------------------
-// SdpUtil::SetDefaultNetTypeAndAddrType
-// Sets network type and address type to their "default" values
-// ---------------------------------------------------------------------------
-//
-void SdpUtil::SetDefaultNetTypeAndAddrType( 
-    RStringPool aPool, 
-    const TInetAddr& aAddress,
-    RStringF& aNetType, 
-    RStringF& aAddressType )
-    {
-     // Sets network type to IN
-    aNetType.Close();
-    aNetType = aPool.StringF( SdpCodecStringConstants::ENetType,
-                              SdpCodecStringConstants::Table ).Copy();
-    // Address type       
-    aAddressType.Close();
-
-    TBuf16 <KMaxAddressLength> output;
-    aAddress.Output(output);
-
-
-    //addresstype for IPv4    
-	if((aAddress.Address() &&  !aAddress.IsV4Mapped()) ||
-       (!aAddress.Address() && aAddress.IsWildAddr() && 
-        output.Match(KWildAddr) == 0))
-        {
-        aAddressType = aPool.StringF( SdpCodecStringConstants::EAddressTypeIP4,
-                                      SdpCodecStringConstants::Table ).Copy();
-        }
-    else
-        {
-		//addresstype for IPv4-Mapped IPv6 && IPv6
-        aAddressType = aPool.StringF( SdpCodecStringConstants::EAddressType,
-                                      SdpCodecStringConstants::Table ).Copy();
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// SdpUtil::SkipSpacesUntilNextLineBreak
-// Skips spaces until next line break, if the line break can be found.
-// Examples: "   \r\n" -> "\r\n", "abc def\r\n" -> "abc def\r\n"
-// ---------------------------------------------------------------------------
-//       
-TBool SdpUtil::SkipSpacesUntilNextLineBreak( TLex8& aLexer )
-    {
-    TBool found = EFalse;
-    if ( aLexer.Peek() == KSPChar )
-        {
-        TInt spaceCount = 0;
-        while ( aLexer.Peek() == KSPChar )
-            {
-            spaceCount++;
-            aLexer.Get();
-            }
-        if ( aLexer.Peek() != KCRChar && aLexer.Peek() != KLFChar )
-            {
-            for ( TInt i=0; i < spaceCount; i++ )
-                {
-                aLexer.UnGet();
-                }
-            }
-        else
-            {
-            found = ETrue;
-            }
-        }
-    return found;
-    }
-
-// ---------------------------------------------------------------------------
-// SdpUtil::ChopElementsFromLineL
-// Chops all the elements that are divided by delimiter from the string
-// ---------------------------------------------------------------------------
-//
-void SdpUtil::ChopElementsFromLineL( 
-    RArray<TPtrC8>& aArray, 
-    TLex8& aLexer,
-    TChar aDelimiter,
-    TInt aErrCode )
-    {
-    // Chop the elements to the array from lexer
-    TBool eofcFound = EFalse;
-    while (!eofcFound)
-        {
-        aLexer.Mark();        
-        // Parse single token, leave other special characters
-        // to token except aDelimiter | '\r' | '\n' | '\0'
-        while ( aLexer.Peek() != aDelimiter && 
-                aLexer.Peek() != KCRChar &&
-                aLexer.Peek() != KLFChar && 
-                aLexer.Peek() != KEofChar )
-            {
-            aLexer.Inc();
-            }
-		
-        if ( aLexer.MarkedToken().Length() > 0 )
-            {            
-            aArray.AppendL( aLexer.MarkedToken() );
-            }
-
-        if ( aDelimiter == KSPChar &&
-             aLexer.Peek() == aDelimiter )
-            {
-            SkipSpacesUntilNextLineBreak( aLexer );
-            }
-
-        // Check if its end-of-line
-        if ( aLexer.Peek() == KCRChar )
-            {
-            aLexer.Inc();
-            }
-
-        if ( aLexer.Peek() == KLFChar )
-            {
-            aLexer.Inc();
-            if ( aLexer.Peek() != KEofChar )
-                {
-                User::Leave( aErrCode );
-                }
-            eofcFound = ETrue;
-            }
-        else if ( aLexer.Peek() == KEofChar )
-            {
-            // EoF character not tolerated at the middle of the string
-            User::Leave( aErrCode );
-            }
-        else
-            {
-            aLexer.Inc();
-            }
-        }
-    }
--- a/contentmgmt/referencedrmagent/RefTestAgent/localsdp/strings/localsdpcodecstringconstants.st	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,148 +0,0 @@
-!/**
-! * @publishedAll
-! * @released
-!*/
-# SDPCodec String table
-fstringtable SdpCodecStringConstants
-# Strings are case-sensitive
-#
-#
-!// SDP field names:
-EVersion v=
-EOrigin o=
-ESession s=
-EInfo i=
-EUri u=
-EEmail e=
-EPhone p=
-EConnection c=
-EBandwidth b=
-EZone z=
-EKey k=
-EAttribute a=
-ETime t=
-ERepeat r=
-EMedia m=
-#
-#
-!// Predefined bandwidth modifiers:
-EModifierCT CT
-EModifierAS AS
-#
-#
-!// Typed time units:
-ETimeUnitDays d
-ETimeUnitHours h
-ETimeUnitMinutes m
-ETimeUnitSeconds s
-!// No typed time unit defined:
-ETimeUnitNone
-#
-#
-!// Predefined encryption methods:
-EMethodClear clear
-EMethodBase64 base64
-EMethodUri uri
-EMethodPrompt prompt
-#
-#
-!// Predefined attributes:
-# Defined in RFC2327 if no comment
-EAttributeCat cat
-EAttributeKeywds keywds
-EAttributeTool tool
-EAttributePtime ptime
-# draft-ietf-mmusic-sdp-new
-EAttributeMaxptime maxptime
-EAttributeRecvonly recvonly
-EAttributeSendrecv sendrecv
-EAttributeSendonly sendonly
-# draft-ietf-mmusic-sdp-new
-EAttributeInactive inactive
-EAttributeOrient orient
-!// Predefined Orient attribute values
-EAttributeOrientValuePortrait portrait
-EAttributeOrientValueLandscape landscape
-EAttributeOrientValueSeascape seascape
-EAttributeType type
-EAttributeCharset charset
-EAttributeSdplang sdplang
-EAttributeLang lang
-EAttributeFramerate framerate
-EAttributeQuality quality
-# RFC2326
-EAttributeControl control
-# RFC2326
-EAttributeRange range
-# RFC2326
-EAttributeEtag etag
-# RFC3312
-EAttributeDes des
-# RFC3312
-EAttributeCurr curr
-# RFC3312
-EAttributeConf conf
-# RFC3312
-!// Predefined Strength tag for Curr, Conf and Des attributes
-EAttributeStatusStrengthTagMandatory mandatory
-# RFC3312
-EAttributeStatusStrengthTagOptional optional
-# RFC3312
-EAttributeStatusStrengthTagNone none
-# RFC3312
-EAttributeStatusStrengthTagFailure failure
-# RFC3312
-EAttributeStatusStrengthTagUnknown unknown
-# RFC3312
-!// Predefined Status type for Curr, Conf and Des attributes
-EAttributeStatusTypeE2e e2e
-# RFC3312
-EAttributeStatusTypeLocal local
-# RFC3312
-EAttributeStatusTypeRemote remote
-# RFC3312
-!// Predefined Direction tag for Curr, Conf and Des attributes
-EAttributeStatusDirectionTagNone none
-# RFC3312
-EAttributeStatusDirectionTagSend send
-# RFC3312
-EAttributeStatusDirectionTagRecv recv
-# RFC3312
-EAttributeStatusDirectionTagSendrecv sendrecv
-# RFC3388
-EAttributeMid mid
-# RFC3388
-EAttributeGroup group
-# RFC3388
-!// Predefined semantics for Group attribute
-EAttributeGroupSemanticLS LS
-# RFC3388
-EAttributeGroupSemanticFID FID
-# RFC3524
-EAttributeGroupSemanticSRF SRF
-EAttributeRtpmap rtpmap
-EAttributeFmtp fmtp
-#
-#
-!// Predefined media types:
-EMediaAudio audio
-EMediaVideo video
-EMediaApplication application
-EMediaData data
-EMediaControl control
-EMediaImage image
-#
-#
-!// Predefined media transport protocols:
-EProtocolRtpAvp RTP/AVP
-EProtocolUdp udp
-EProtocolTcp TCP
-#
-#
-!// Network type:
-ENetType IN
-#
-#
-!// Address types:
-EAddressTypeIP4 IP4
-EAddressType IP6
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sracommon.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sracommon.h	Wed Sep 01 12:40:57 2010 +0100
@@ -34,12 +34,14 @@
 #include <s32mem.h>
 #include <stringpool.h>
 
-#include "sdpdocument.h"
-#include "sdpmediafield.h"
-#include "sdpattributefield.h"
-#include "sdpcodecstringpool.h"
-#include "sdpfmtattributefield.h"
-#include "sdpcodecstringconstants.h"
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpdocument.h>
+#include <sdpmediafield.h>
+#include <sdpattributefield.h>
+#include <sdpcodecstringpool.h>
+#include <sdpfmtattributefield.h>
+#include <sdpcodecstringconstants.h>
+#endif
 
 #include <caf/streaming/streamcaftypes.h>
 #include <caf/streaming/keyassociation.h>
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sraserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/sraserver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -97,8 +97,10 @@
 	CSraProcessor* iProcessor;
 	CKeyStreamSink* iKeyStreamSink;
 	CSraRightsObject* iRo;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	CSdpMediaField* iSdp;
 	CSdpDocument* iSdpDoc;
+#endif
 	/**
 	 A handle to a mutex which is used to signal the client that the key has been implemented. 
 	 Not necessary in real-life agents and is present here only for testing.
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/srautils.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/inc/srautils.h	Wed Sep 01 12:40:57 2010 +0100
@@ -27,7 +27,11 @@
 #define SRAUTILS_H
 
 #include "srarightsobject.h"
-#include "sdpmediafield.h"
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpmediafield.h>
+#else
+class CSdpMediaField;
+#endif
 #include <f32file.h>
 
 
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/client/sraclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/client/sraclient.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -185,10 +185,14 @@
  	@param aKey An SDP object data.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	HBufC8* sdpBuf(0);
 	TPtr8 ptr(EncodeLC(aSdp, sdpBuf));
 	User::LeaveIfError(RSessionBase::SendReceive(ESetSdpKeyStream, TIpcArgs(&ptr)));
 	CleanupStack::PopAndDestroy(sdpBuf);
+#else
+	(void) aSdp;
+#endif
 	}
 
 EXPORT_C void RSraClient::SendSdpDocumentL(const CSdpDocument& aSdpDoc) const
@@ -197,8 +201,13 @@
  	@param aKey An SDP object data.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	HBufC8* sdpDocBuf(0);
 	TPtr8 ptr(EncodeLC(aSdpDoc, sdpDocBuf));
 	User::LeaveIfError(RSessionBase::SendReceive(ESetSdpDocument, TIpcArgs(&ptr)));
 	CleanupStack::PopAndDestroy(sdpDocBuf);
+#else
+	(void) aSdpDoc;
+#endif
+
 	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/sraserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/sraserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -61,7 +61,9 @@
 	
 	delete iShutdownTimer;
 	iFs.Close();
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	SdpCodecStringPool::Close();
+#endif
 	}
 
 
@@ -79,7 +81,9 @@
 	User::LeaveIfError(iFs.Connect());
 	User::LeaveIfError(iFs.ShareProtected());
 	User::LeaveIfError(iFs.CreatePrivatePath(iFs.GetSystemDrive()));
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	SdpCodecStringPool::OpenL();
+#endif
 	StartL(KSraName);
 	iShutdownTimer = CShutdownTimer::NewL(KSraShutdownPeriod);
 	iShutdownTimer->Restart();
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/srasession.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/server/srasession.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -23,7 +23,9 @@
 #include "sraprocessor.h"
 #include "srautils.h"
 #include <s32file.h>
-#include "sdpconnectionfield.h"
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpconnectionfield.h>
+#endif
 
 CSraSession::CSraSession()
 //constructor
@@ -40,8 +42,10 @@
 		
 	delete iKeyStreamSink;
 	delete iRo;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	delete iSdp;
 	delete iSdpDoc;
+#endif
 	delete iProcessor;
 	iMutex.Close();
 	}
@@ -327,6 +331,7 @@
  	@param	aMessage	Standard server-side handle to message.
   */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TInt len = aMessage.GetDesMaxLengthL(0);
 	HBufC8* des = HBufC8::NewLC(len);
 	TPtr8 ptr(des->Des());
@@ -350,6 +355,10 @@
 		}
 	StartProcessorL();
 	aMessage.Complete(KErrNone);
+#else
+	(void) aMessage;
+	User::Leave(KErrCANoRights);
+#endif
 	}
 
 
@@ -360,6 +369,7 @@
  	@param	aMessage	Standard server-side handle to message.
   */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	TInt len = aMessage.GetDesMaxLengthL(0);
 	HBufC8* des = HBufC8::NewLC(len);
 	TPtr8 ptr(des->Des());
@@ -374,6 +384,9 @@
 	CleanupStack::PopAndDestroy(des);
 	
 	aMessage.Complete(KErrNone);
+#else
+	(void) aMessage;
+#endif
 	}
 
 
@@ -383,6 +396,7 @@
  	and then process that by using the key stream sink.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	// Mutex is used to synchronise the agent with the test harness.
 	// A real-life agent should not need to use a mutex object.
 	User::LeaveIfError(iMutex.CreateGlobal(KSraMutexName));
@@ -419,4 +433,5 @@
 	
 	// Launch the processor
 	iProcessor->StartProcessing();
+#endif
 	}
--- a/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/utils/srautils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/RefTestAgent/streamingrefagent/source/utils/srautils.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -19,9 +19,11 @@
 
 #include "srautils.h"
 #include <s32file.h>
-#include "sdpfmtattributefield.h"
-#include "sdpcodecstringpool.h"
-#include "sdpattributefield.h"
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
+#include <sdpfmtattributefield.h>
+#include <sdpcodecstringpool.h>
+#include <sdpattributefield.h>
+#endif
 
 HBufC8* ExtractKmsIdLC(const TDesC8& aValue)
 /**
@@ -73,6 +75,7 @@
  */
 	{
 	TBool supported = EFalse;
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	//FormatAttributeFields method is not constant. So create a new instance.
 	CSdpMediaField* sdp = aSdpKeyStream.CloneL();
 	CleanupStack::PushL(sdp);
@@ -100,6 +103,10 @@
 		CleanupStack::PopAndDestroy(kmsid);
 		}
 	CleanupStack::PopAndDestroy(sdp);
+#else 
+	(void) aSdpKeyStream;
+	(void) aSupportedKmsIds;
+#endif
 	return supported;
 	}
 
@@ -168,6 +175,7 @@
  	Finds and loads the Rights Object specified in the SDP given.
  */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	// Find the rights object if it is defined in the SDP
 	CSdpAttributeField* roAttrField = NULL;
 	TInt count = aSdp.AttributeFields().Count();
@@ -201,6 +209,12 @@
 		{//the rights object is defined in the SDP
 		FindAndLoadRightsObjectL(aFs, roAttrField->Value(), aPrivateFolder, aRo);
 		}
+#else
+	(void) aFs;
+	(void) aSdp;
+	(void) aRo;
+	(void) aPrivateFolder;
+#endif
 	}
 
 EXPORT_C void DoSetSdpMediaFieldL(RFs& aFs, CSdpMediaField*& aSdp, CSraRightsObject*& aRo, const TDesC8& aSdpData, const TDesC& aPrivateFolder)
@@ -214,9 +228,17 @@
  	@param aPrivateFolder The private folder of the agent.
   */
 	{
+#ifdef INTERNALLY_ENABLE_UPWARD_DEPENDENCY
 	ASSERT(!aSdp);
 	// Decode the received message into an SDP object
 	aSdp = CSdpMediaField::DecodeL(aSdpData,ETrue);
 	// Set the specified RO
 	DoSetRightsObjectL(aFs, *aSdp, aRo, aPrivateFolder);
+#else
+	(void) aFs;
+	(void) aSdp;
+	(void) aRo;
+	(void) aSdpData;
+	(void) aPrivateFolder;
+#endif
 	}
--- a/contentmgmt/referencedrmagent/refcafhelper/bwins/cafhelperu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS
-	?NewCafHelperImplL@CReferenceCafHelper@@QAEPAVMCAFHelperInterface@ContentAccess@@XZ @ 1 NONAME ; class ContentAccess::MCAFHelperInterface * CReferenceCafHelper::NewCafHelperImplL(void)
-	?HandleCAFErrorL@CReferenceCafHelper@@UAEHHABVTDesC16@@@Z @ 2 NONAME ; int CReferenceCafHelper::HandleCAFErrorL(int, class TDesC16 const &)
-	?HandleCAFErrorL@CReferenceCafHelper@@UAEHHAAVRFile@@@Z @ 3 NONAME ; int CReferenceCafHelper::HandleCAFErrorL(int, class RFile &)
-	?HandleCAFErrorL@CReferenceCafHelper@@UAEHHABVTDesC8@@@Z @ 4 NONAME ; int CReferenceCafHelper::HandleCAFErrorL(int, class TDesC8 const &)
-	?Release@CReferenceCafHelper@@UAEXXZ @ 5 NONAME ; void CReferenceCafHelper::Release(void)
-
--- a/contentmgmt/referencedrmagent/refcafhelper/eabi/cafhelperu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-EXPORTS
-	_ZN19CReferenceCafHelper17NewCafHelperImplLEv @ 1 NONAME
-	_ZN19CReferenceCafHelper15HandleCAFErrorLEiRK7TDesC16 @ 2 NONAME
-	_ZThn4_N19CReferenceCafHelper15HandleCAFErrorLEiRK7TDesC16 @ 3 NONAME
-	_ZN19CReferenceCafHelper15HandleCAFErrorLEiR5RFile @ 4 NONAME
-	_ZThn4_N19CReferenceCafHelper15HandleCAFErrorLEiR5RFile @ 5 NONAME
-	_ZN19CReferenceCafHelper15HandleCAFErrorLEiRK6TDesC8 @ 6 NONAME
-	_ZThn4_N19CReferenceCafHelper15HandleCAFErrorLEiRK6TDesC8 @ 7 NONAME
-	_ZN19CReferenceCafHelper7ReleaseEv @ 8 NONAME
-	_ZThn4_N19CReferenceCafHelper7ReleaseEv @ 9 NONAME
-
--- a/contentmgmt/referencedrmagent/refcafhelper/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Reference CafHelper implementation for Content Access Framework
-*
-*/
-
-
-/**
- @file
-*/
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_TESTMMPFILES
-
-#ifndef TOOLS
-#ifndef TOOLS2
-refcafhelper.mmp
-#endif // TOOLS2
-#endif // TOOLS
-
-PRJ_TESTEXPORTS
-
-
-// ROM test iby
-../inc/refcafhelper.iby /epoc32/rom/include/refcafhelper.iby
\ No newline at end of file
--- a/contentmgmt/referencedrmagent/refcafhelper/group/refcafhelper.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Reference implementation of polymorphic interface defined by KCAFHelperInterfaceUID.
-*
-*/
-
-
-/**
- @file
-*/
-
-TARGET		cafhelper.dll
-CAPABILITY	All -Tcb
-TARGETTYPE	DLL
-
-UID			0x20024480 0x2002551D
-VENDORID	0x70000001
-
-UNPAGED
-
-SOURCEPATH	../source
-SOURCE		refcafhelper.cpp
-
-USERINCLUDE	../inc
-
-OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE OS_LAYER_PLATFORM_EXPORT_PATH(caf)
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(caf)
-
-LIBRARY		euser.lib
-SMPSAFE
--- a/contentmgmt/referencedrmagent/refcafhelper/inc/refcafhelper.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/** 
-@file 
-
-@test
-@internalComponent
-*/
-
-#ifndef __REFCAFHELPER_H__
-#define __REFCAFHELPER_H__
-
-#include <e32base.h>
-#include <caf/cafhelperinterface.h>
-
-using namespace ContentAccess;
-/**
- This is a reference implementation of the polymorphic interface defined by 
- UID KCAFHelperInterfaceUID.
- 
- @file 
- @test
- @internalComponent
-*/
-	 	
-NONSHARABLE_CLASS(CReferenceCafHelper) : public CBase, public MCAFHelperInterface
-	{
-	public:
-		
-		IMPORT_C MCAFHelperInterface* NewCafHelperImplL();
-		
-		CReferenceCafHelper();
-		
-		/**  
-		 This method handles the CAF error received for a given file.
-		 @param aError		One of the CAF errors. 
-		 @param aFileName 	File name or file URI for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/
-		IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, const TDesC& aFileName);
-		
-		/**  
-		 This method handles the CAF error received for a given file .
-		 @param aError		One of the CAF errors. 
-		 @param aFileHandle File handle for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/	
-		IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, RFile& aFileHandle);
-		
-		/**  
-		 This method handles the CAF error received for WMDRM content .
-		 @param aError		One of the CAF errors. 
-		 @param aHeaderData The header data of the content for which the error is received
-		 @return 			KErrNone if the error is handled successfully.Otherwise one of the other system-wide
-							errors.
-		 @capability DRM 	Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted 
-		*/
-		IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, const TDesC8& aHeaderData);
-		
-		IMPORT_C virtual void Release();
-		
-		virtual ~CReferenceCafHelper();
-		};
-
-#endif
-
--- a/contentmgmt/referencedrmagent/refcafhelper/inc/refcafhelper.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __REFCAFHELPER_IBY__
-#define __REFCAFHELPER_IBY__
-
-#include <testexecute.iby>
-
-file=ABI_DIR\BUILD_DIR\cafhelper.dll		System\Libs\cafhelper.dll
-
-#endif // __REFCAFHELPER_IBY__
\ No newline at end of file
--- a/contentmgmt/referencedrmagent/refcafhelper/source/refcafhelper.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "refcafhelper.h"
-#include <caferr.h>
-
-
-EXPORT_C MCAFHelperInterface* CReferenceCafHelper::NewCafHelperImplL()
-    {
-    return new (ELeave) CReferenceCafHelper;
-    }
-
-CReferenceCafHelper::CReferenceCafHelper()
-	{
-	}
-
-EXPORT_C TInt CReferenceCafHelper::HandleCAFErrorL(TInt /*aError*/, const TDesC& /*aFileName*/)
-	{
-	return KErrNotSupported;
-	}
-
-EXPORT_C TInt CReferenceCafHelper::HandleCAFErrorL(TInt /*aError*/, RFile& /*aFileHandle*/)
-	{
-	return KErrNotSupported;
-	}
-
-EXPORT_C TInt CReferenceCafHelper::HandleCAFErrorL(TInt /*aError*/, const TDesC8& /*aHeaderData*/)
-	{
-	return KErrNotSupported;
-	}
-	
-EXPORT_C void CReferenceCafHelper::Release()
-	{
-	delete this;
-	}
-
-CReferenceCafHelper::~CReferenceCafHelper()
-	{
-	}
-	
--- a/contentmgmt/referencedrmagent/tcaf/scripts/consumerstep.ini	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/scripts/consumerstep.ini	Wed Sep 01 12:40:57 2010 +0100
@@ -44,18 +44,18 @@
 WITHOUTINTENT=true
 
 [DRMFileOpenPerformance]
-FileName = z:\tcaf\testdata\notes1.txt
+FileName = c:\tcaf\testdata\notes1.txt
 IterationCount = 5
 MaxTimeLimitInMS = 50	//Maximum time for the file open operation.Any time exceeding this leads to test failure.
 
 [DRMFileOpenPerformance_SingleRTAObject]
-FileName = z:\tcaf\testdata\audio.content
+FileName = c:\tcaf\testdata\audio.content
 IterationCount = 5
 MaxTimeLimitInMS = 140	//Maximum time for the file open operation.Any time exceeding this leads to test failure.
 
 
 [DRMFileOpenPerformance_MultipleRTAObject]
-FileName = z:\tcaf\testdata\audiomulti.content|\picture.jpg
+FileName = c:\tcaf\testdata\audiomulti.content|\picture.jpg
 IterationCount = 5
 MaxTimeLimitInMS = 140	//Maximum time for the file open operation.Any time exceeding this leads to test failure.
 UniqueId = \picture.jpg
\ No newline at end of file
--- a/contentmgmt/referencedrmagent/tcaf/scripts/drmfileperformance_armv5.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/scripts/drmfileperformance_armv5.script	Wed Sep 01 12:40:57 2010 +0100
@@ -29,7 +29,7 @@
 //! @SYMTestActions		Attempt to obtain the time taken to open a plaintext ile.
 //! @SYMTestExpectedResults	Test fails if the time to open the plaintext file exceeds the value specified in the INI file.
 
-RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep z:\tcaf\consumerstep.ini DRMFileOpenPerformance
+RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep c:\tcaf\consumerstep.ini DRMFileOpenPerformance
 END_TESTCASE 			SEC-CAF-DRMFP-0001
 
 START_TESTCASE 			SEC-CAF-DRMFP-0002
@@ -43,7 +43,7 @@
 //! @SYMTestActions		Attempt to obtain the time taken to open a file containing single content object.
 //! @SYMTestExpectedResults	Test fails if the time to open a file containing single content object exceeds the value specified in the INI file.
 
-RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep z:\tcaf\consumerstep.ini DRMFileOpenPerformance_SingleRTAObject
+RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep c:\tcaf\consumerstep.ini DRMFileOpenPerformance_SingleRTAObject
 END_TESTCASE 			SEC-CAF-DRMFP-0002
 
 START_TESTCASE 			SEC-CAF-DRMFP-0003
@@ -57,7 +57,7 @@
 //! @SYMTestActions		Attempt to obtain the time taken to open a file containing multiple content objects.
 //! @SYMTestExpectedResults	Test fails if the time to open a file containing multiple content objects exceeds the value specified in the INI file.
 
-RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep z:\tcaf\consumerstep.ini DRMFileOpenPerformance_MultipleRTAObject
+RUN_TEST_STEP 100 tcaf CAFDRMFileOpenPerformanceStep c:\tcaf\consumerstep.ini DRMFileOpenPerformance_MultipleRTAObject
 END_TESTCASE 			SEC-CAF-DRMFP-0003
 
 
--- a/contentmgmt/referencedrmagent/tcaf/scripts/managerstep.ini	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/scripts/managerstep.ini	Wed Sep 01 12:40:57 2010 +0100
@@ -158,7 +158,7 @@
 result 	    =-17450
 
 [ListAgents]
-count	    =5
+count	    =3
 result 	    =0
 
 [AgentSpecific]
--- a/contentmgmt/referencedrmagent/tcaf/scripts/nodrmcapsteps.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/scripts/nodrmcapsteps.script	Wed Sep 01 12:40:57 2010 +0100
@@ -16,7 +16,7 @@
 
 // Test cases for validating the methods newly enforced DRM capability.
 
-RUN_PROGRAM 100 SETCAP tcaf.exe 0 -SID 80002345 tcafnodrmcap.exe
+RUN_PROGRAM 100 SETCAP tcaf.exe 0 -SID 80001234 tcafnodrmcap.exe
 
 LOAD_SUITE tcafnodrmcap
 
--- a/contentmgmt/referencedrmagent/tcaf/scripts/tcafhelper.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-
-[CafHelperFilename]
-uri = c:\tcaf\testdata\test.drm
-error = -17452
-expected = -5
-flag = true
-
-[CafHelperFileHandle]
-uri = c:\tcaf\testdata\test.drm
-error = -17452
-expected = -5
-
-[CafHelperFileHeader]
-error = -17452
-expected = -5
-flag = false
-
-
--- a/contentmgmt/referencedrmagent/tcaf/scripts/tcafhelper.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-LOAD_SUITE tcaf
-
-RUN_UTILS MkDir c:\tcaf\
-RUN_UTILS MkDir c:\tcaf\testdata\
-RUN_UTILS MkDir c:\tcaf\testdata\TestAgentPrivateDir\
-
-RUN_UTILS CopyFile z:\rta\testdata\*.* c:\rta\testdata\*.*
-RUN_UTILS CopyFile z:\tcaf\testdata\*.* c:\tcaf\testdata\*.*
-RUN_UTILS CopyFile z:\tcaf\testdata\TestAgentPrivateDir\*.* c:\tcaf\testdata\TestAgentPrivateDir\*.*
-
-//! @file
-//! @SYMTestCaseID 		SEC-CAFHELPER-0001
-//! @SYMTestCaseDesc 		CafHelper API Test 1 
-//! @SYMPREQ			PREQ2086
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Medium
-//! @SYMTestActions		Constructs CCafHelper and tests if the reference cafhelper.dll gets loaded properly and 
-//!				calls the HandleCAFErrorL API overload which takes in the filename as input parameter.
-//! @SYMTestExpectedResults	Reference cafhelper.dll must be loaded successfully and the result of the HandleCAFErrorL
-//!				API must match the expected.
-//! @SYMTestType		CIT
-START_TESTCASE SEC-CAFHELPER-0001
-RUN_TEST_STEP 100 tcaf CAFHelperStep c:\tcaf\tcafhelper.ini CafHelperFilename
-END_TESTCASE SEC-CAFHELPER-0001
-
-//! @file
-//! @SYMTestCaseID 		SEC-CAFHELPER-0002
-//! @SYMTestCaseDesc 		CafHelper API Test 2 
-//! @SYMPREQ			PREQ2086
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Medium
-//! @SYMTestActions		Constructs CCafHelper and tests if the reference cafhelper.dll gets loaded properly and 
-//!				calls the HandleCAFErrorL API overload which takes in the filehandle as input parameter.
-//! @SYMTestExpectedResults	Reference cafhelper.dll must be loaded successfully and the result of the HandleCAFErrorL
-//!				API must match the expected.
-//! @SYMTestType		CIT
-START_TESTCASE SEC-CAF-UTILS-0002
-RUN_TEST_STEP 100 tcaf CAFHelperStep c:\tcaf\tcafhelper.ini CafHelperFileHandle
-END_TESTCASE SEC-CAF-UTILS-0002
-
-//! @file
-//! @SYMTestCaseID 		SEC-CAFHELPER-0003
-//! @SYMTestCaseDesc 		CafHelper API Test 3 
-//! @SYMPREQ			PREQ2086
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Medium
-//! @SYMTestActions		Constructs CCafHelper and tests if the reference cafhelper.dll gets loaded properly and 
-//!				calls the HandleCAFErrorL API overload which takes in the fileheader as input parameter.
-//! @SYMTestExpectedResults	Reference cafhelper.dll must be loaded successfully and the result of the HandleCAFErrorL
-//!				API must match the expected.
-//! @SYMTestType		CIT
-START_TESTCASE SEC-CAFHELPER-0003
-RUN_TEST_STEP 100 tcaf CAFHelperStep c:\tcaf\tcafhelper.ini CafHelperFileHeader
-END_TESTCASE SEC-CAFHELPER-0003
-
-
--- a/contentmgmt/referencedrmagent/tcaf/scripts/tcafwmdrmsupport.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,205 +0,0 @@
-[WMDRMDataReadSyncWithIntent]
-synchronous = true
-intent = false
-inputPacket = I\0N\0P\0U\0T\0D\0A\0T\0A\0
-outputPacket = I\0N\0P\0U\0T\0D\0A\0T\0A\0
-
-[WMDRMDataReadSyncWithoutIntent]
-synchronous = true
-intent = true
-inputPacket =  S\0O\0M\0E\0D\0A\0T\0A\0
-outputPacket = S\0O\0M\0E\0D\0A\0T\0A\0
-
-[WMDRMDataReadAsyncWithIntent]
-synchronous = false
-intent = false
-inputPacket = I\0N\0P\0U\0T\0D\0A\0T\0A\0
-outputPacket = I\0N\0P\0U\0T\0D\0A\0T\0A\0
-
-[WMDRMDataReadAsyncWithoutIntent]
-synchronous = false
-intent = true
-inputPacket =  S\0O\0M\0E\0D\0A\0T\0A\0
-outputPacket = S\0O\0M\0E\0D\0A\0T\0A\0
-
-[WMDRMManagerAttribute]
-attribute = 0
-value = 0
-wmdrmEnabled = true
-
-[WMDRMManagerAttributeSet]
-attribute1 = 0
-value1 = 0
-attribute2 = 1
-value2 = 1
-wmdrmEnabled = true
-
-[WMDRMManagerStringAttribute]
-attribute = 1
-value = 
-result = 0
-wmdrmEnabled = true
-result = 0
-
-[WMDRMManagerStringAttributeSet]
-attribute1 = 1
-value1 = 
-attribute2 = 7
-value2 = DEFAULT
-wmdrmEnabled = true
-
-[WMDRMManagerInvalidStringAttributeSet]
-attribute1 = 18
-value1 = 
-attribute2 = 20
-value2 = DEFAULT
-wmdrmEnabled = true
-
-[WMDRMContentNewAttribute]
-attribValue1= false
-attribValue2= true
-
-[WMDRMEmptyHeaderData]
-headerDataFlag = false
-
-[WMDRMDataReadAsyncEmptyInputPacket]
-synchronous = false
-intent = false
-inputPacket =
-
-[WMDRMDataReadSyncEmptyInputPacket]
-synchronous = true
-intent = true
-inputPacket =
-
-[WMDRMFileRecognizeTest]
-FileName = c:\tcaf\testdata\dummywm.asf
-Container = audio/x-ms-wma
-Content = audio/x-ms-wma
-Recognized = true
-
-[WMDRMStreamContentRecognizeTest]
-header = 75B22630668E11CFA6D900AA0062CE6C
-filemime = audio/x-ms-wma
-contentmime = audio/x-ms-wma
-recognized = true
-wmdrmEnabled = true
-
-[WMDRMRTADataAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 1
-value = 0
-wmdrmEnabled = true
-
-[WMDRMRTADataAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = 1
-attribute2 = 1
-value2 = 0
-wmdrmEnabled = true
-
-[WMDRMRTADataStringAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 0
-value = WMDRM
-result = 0
-wmdrmEnabled = true
-
-[WMDRMRTADataStringAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = WMDRM
-attribute2 = 1
-value2 = application/vnd.drm.asf
-wmdrmEnabled = true
-
-[WMDRMRTAContentAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 0
-value = 1
-wmdrmEnabled = true
-
-[WMDRMRTAContentAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = 1
-attribute2 = 1
-value2 = 0
-wmdrmEnabled = true
-
-[WMDRMRTAContentStringAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 0
-value = WMDRM
-wmdrmEnabled = true
-result = 0
-
-[WMDRMRTAContentStringAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = WMDRM
-attribute2 = 1
-value2 = application/vnd.drm.asf
-wmdrmEnabled = true
-
-[WMDRMRTAManagerAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 0
-value = 1
-wmdrmEnabled = true
-
-[WMDRMRTAManagerAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = 1
-attribute2 = 1
-value2 = 0
-wmdrmEnabled = true
-
-[WMDRMRTAManagerStringAttribute]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute = 0
-value = WMDRM
-wmdrmEnabled = true
-result = 0
-
-[WMDRMRTAManagerStringAttributeSet]
-header = 75B22630668E11CFA6D900AA0062CE6C
-attribute1 = 0
-value1 = WMDRM
-attribute2 = 1
-value2 = application/vnd.drm.asf
-wmdrmEnabled = true
-
-[WMDRMRTADataReadSyncWithIntent]
-header = 75B22630668E11CFA6D900AA0062CE6C
-synchronous = true
-intent = false
-inputPacket = R\0T\0A\0U\0T\0D\0A\0T\0A\0
-outputPacket = R\0T\0A\0U\0T\0D\0A\0T\0A\0
-wmdrmEnabled = true
-
-[WMDRMRTADataReadSyncWithoutIntent]
-header = 75B22630668E11CFA6D900AA0062CE6C
-synchronous = true
-intent = true
-inputPacket =  R\0O\0T\0A\0D\0A\0T\0A\0
-outputPacket = R\0O\0T\0A\0D\0A\0T\0A\0
-wmdrmEnabled = true
-
-[WMDRMRTADataReadAsyncWithIntent]
-header = 75B22630668E11CFA6D900AA0062CE6C
-synchronous = false
-intent = false
-inputPacket = R\0T\0A\0U\0T\0D\0A\0T\0A\0
-outputPacket = R\0T\0A\0U\0T\0D\0A\0T\0A\0
-wmdrmEnabled = true
-
-[WMDRMRTADataReadAsyncWithoutIntent]
-header = 75B22630668E11CFA6D900AA0062CE6C
-synchronous = false
-intent = true
-inputPacket =  R\0O\0T\0A\0D\0A\0T\0A\0
-outputPacket = R\0O\0T\0A\0D\0A\0T\0A\0
-wmdrmEnabled = true
--- a/contentmgmt/referencedrmagent/tcaf/scripts/tcafwmdrmsupport.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,422 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-LOAD_SUITE tcaf
-
-RUN_UTILS MkDir c:\tcaf\
-RUN_UTILS MkDir c:\tcaf\testdata\
-RUN_UTILS MkDir c:\tcaf\testdata\TestAgentPrivateDir\
-
-RUN_UTILS CopyFile z:\rta\testdata\*.* c:\rta\testdata\*.*
-RUN_UTILS CopyFile z:\tcaf\testdata\*.* c:\tcaf\testdata\*.*
-RUN_UTILS CopyFile z:\tcaf\testdata\TestAgentPrivateDir\*.* c:\tcaf\testdata\TestAgentPrivateDir\*.*
-
-START_TESTCASE 			SEC-CAF-WMDRM-0001
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0001
-//! @SYMTestCaseDesc 		Verifies the synchronous Read operation.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the synchronous Read API providing an input data packet.The header data must not be recognized by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadSyncWithIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0001
-
-START_TESTCASE 			SEC-CAF-WMDRM-0002
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0002
-//! @SYMTestCaseDesc 		Verifies the synchronous Read operation.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the synchronous Read API providing an input data packet.The header data must not be recognized by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadSyncWithoutIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0002
-
-START_TESTCASE 			SEC-CAF-WMDRM-0003
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0003
-//! @SYMTestCaseDesc 		Verifies the asynchronous Read operation.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the asynchronous Read API providing an input data packet.The header data must not be recognized by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadAsyncWithIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0003
-
-START_TESTCASE 			SEC-CAF-WMDRM-0004
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0004
-//! @SYMTestCaseDesc 		Verifies the asynchronous Read operation.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the asynchronous Read API providing an input data packet.The header data must not be recognized by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadAsyncWithoutIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0004
-
-START_TESTCASE 			SEC-CAF-WMDRM-0005
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0005
-//! @SYMTestCaseDesc 		Get a single attribute from WMDRM content.
-//!				(Manager_Attribute)
-//! @SYMREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CManager object and verify GetAttribute API overload taking WMDRM header data as input.The header data must not be supported by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CManager object should be constructed successully and the attribute value obtained must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFManagerAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMManagerAttribute
-END_TESTCASE 			SEC-CAF-WMDRM-0005
-
-START_TESTCASE 			SEC-CAF-WMDRM-0006
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0006
-//! @SYMTestCaseDesc 		Get a set of attributes from WMDRM content.
-//!				(Manager_AttributeSet)
-//! @SYMREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CManager object and verify GetAttributeSet API overload taking WMDRM header data as input.The header data must not be supported by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CManager object should be constructed successully and the attribute set obtained must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFManagerAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMManagerAttributeSet
-END_TESTCASE 			SEC-CAF-WMDRM-0006
-
-START_TESTCASE 			SEC-CAF-WMDRM-0007
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0007
-//! @SYMTestCaseDesc 		Get a string attribute from WMDRM content.
-//!				(Manager_Attribute)
-//! @SYMREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CManager object and verify GetStringAttribute API overload taking WMDRM header data as input.The header data must not be supported by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CManager object should be constructed successully and the string attribute value obtained must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFManagerStringAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMManagerStringAttribute
-END_TESTCASE 			SEC-CAF-WMDRM-0007
-
-START_TESTCASE 			SEC-CAF-WMDRM-0008
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0008
-//! @SYMTestCaseDesc 		Get a set of string attributes from WMDRM content.
-//!				(Manager_AttributeSet)
-//! @SYMREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CManager object and verify GetStringAttributeSet API overload taking WMDRM header data as input.The header data must not be supported by any agent and F32 agent must handle this content.
-//! @SYMTestExpectedResults	CManager object should be constructed successully and the string attribute set obtained must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFManagerStringAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMManagerStringAttributeSet
-END_TESTCASE 			SEC-CAF-WMDRM-0008
-
-START_TESTCASE 			SEC-CAF-WMDRM-0009
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0009
-//! @SYMTestCaseDesc 		Verify CContent's NewAttributeL() API for WMDRM content.The header data must not be supported by any agent and F32 agent must handle this content.
-//! @SYMREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CContent object and verify the behaviour of NewAttributeL for WMDRM content.
-//! @SYMTestExpectedResults	CContent object should be constructed successully and the attribute value obtained must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFContentStep c:\tcaf\tcafwmdrmsupport.ini WMDRMContentNewAttribute
-END_TESTCASE 			SEC-CAF-WMDRM-0009
-
-START_TESTCASE 			SEC-CAF-WMDRM-0010
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0010
-//! @SYMTestCaseDesc 		Verify that CContent object construction fails when an empty wmdrm header data is used.
-//! @SYMREQ			REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CContent object and verify CContent object construction fails with KErrMissingWmdrmHeaderData.
-//! @SYMTestExpectedResults	CContent object construction should fail with KErrMissingWmdrmHeaderData.
-//! @SYMTestType		CIT
-RUN_TEST_STEP_RESULT -17461 100 tcaf WmdrmCAFContentStep c:\tcaf\tcafwmdrmsupport.ini WMDRMEmptyHeaderData
-END_TESTCASE 			SEC-CAF-WMDRM-0010
-
-START_TESTCASE 			SEC-CAF-WMDRM-0011
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0011
-//! @SYMTestCaseDesc 		Verifies that the synchronous Read operation fails with KErrInsufficientDataPacketLength when empty input data packet is provided.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the synchronous Read API providing an empty input data packet.
-//! @SYMTestExpectedResults	Read operation must fail with KErrInsufficientDataPacketLength.
-//! @SYMTestType		CIT
-RUN_TEST_STEP_RESULT -17460 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadSyncEmptyInputPacket
-END_TESTCASE 			SEC-CAF-WMDRM-0011
-
-START_TESTCASE 			SEC-CAF-WMDRM-0012
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0012
-//! @SYMTestCaseDesc 		Verifies that the asynchronous Read operation fails with KErrInsufficientDataPacketLength when empty input data packet is provided.
-//! @SYMPREQ			REQ11881, REQ11882
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the asynchronous Read API providing an empty input data packet.
-//! @SYMTestExpectedResults	Read operation must fail with KErrInsufficientDataPacketLength.
-//! @SYMTestType		CIT
-RUN_TEST_STEP_RESULT -17460 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMDataReadAsyncEmptyInputPacket
-END_TESTCASE 			SEC-CAF-WMDRM-0012
-
-START_TESTCASE 			SEC-CAF-WMDRM-0013
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0013
-//! @SYMTestCaseDesc 		Verify resolver's DoRecognizeL API behaviour when WMDRM file is provided as input.The header data provided must match the one supported by RTA.
-//!				(DRM_Recognize)
-//! @SYMREQ			REQ12826,REQ
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Verify that RTA agent should recognize a given WMDRM file.
-//! @SYMTestExpectedResults	The WMDRM file should be recognized by RTA and the file mime type must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFRecognizeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMFileRecognizeTest
-END_TESTCASE 			SEC-CAF-WMDRM-0013
-
-START_TESTCASE 			SEC-CAF-WMDRM-0014
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0014
-//! @SYMTestCaseDesc 		Verify resolver's DoRecognizeL API behaviour when WMDRM header data is provided as input.The header data provided must match the one supported by RTA.
-//!				(DRM_Recognize)
-//! @SYMREQ			REQ12826
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Verify that RTA agent should recognize WMDRM stream content.
-//! @SYMTestExpectedResults	The WMDRM streamed content should be recognized by RTA and the content mime type must match the expected.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf CAFRecognizeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMStreamContentRecognizeTest
-END_TESTCASE 			SEC-CAF-WMDRM-0014
-
-START_TESTCASE 			SEC-CAF-WMDRM-0015
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0015
-//! @SYMTestCaseDesc 		Verifies RTA agent's synchronous Read API behaviour.
-//! @SYMPREQ			REQ12826, REQ12726
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the synchronous Read API providing an input data packet.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataReadSyncWithIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0015
-
-START_TESTCASE 			SEC-CAF-WMDRM-0016
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0016
-//! @SYMTestCaseDesc 		Verifies RTA agent's synchronous Read API behaviour when intent is not provided.
-//! @SYMPREQ			REQ12826, REQ12726
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the synchronous Read API providing an input data packet.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataReadSyncWithoutIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0016
-
-START_TESTCASE 			SEC-CAF-WMDRM-0017
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0017
-//! @SYMTestCaseDesc 		Verifies RTA agent's asynchronous Read behaviour.
-//! @SYMPREQ			REQ12826, REQ12726
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the asynchronous Read API providing an input data packet.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataReadAsyncWithIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0017
-
-START_TESTCASE 			SEC-CAF-WMDRM-0018
-//! @file
-//! @SYMTestCaseID 		SEC-CAF-WMDRM-0018
-//! @SYMTestCaseDesc 		Verifies RTA agent's asynchronous Read behaviour when intent is not provided.
-//! @SYMPREQ			REQ12826, REQ12726
-//! @SYMTestStatus		Implemented
-//! @SYMTestPriority		Normal
-//! @SYMTestActions		Construct CData object from WMDRM header data and call the asynchronous Read API providing an input data packet.
-//! @SYMTestExpectedResults	CData object should be constructed successfully and the decrypted output packet resulting from Read operation must match the expected output packet.
-//! @SYMTestType		CIT
-RUN_TEST_STEP 100 tcaf WmdrmCAFReadStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataReadAsyncWithoutIntent
-END_TESTCASE 			SEC-CAF-WMDRM-0018
-
-START_TESTCASE 			SEC-CAF-WMDRM-0019
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0019
-//!SYMTestCaseDesc 		Get an attribute from WMDRM content using CData.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttribute API
-//!SYMTestExpectedResults	Attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFDataAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0019
-
-START_TESTCASE 			SEC-CAF-WMDRM-0020
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0020
-//!SYMTestCaseDesc 		Get an attribute set from WMDRM content using CData.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttributeSet API.
-//!SYMTestExpectedResults	Attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFDataAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0020
-
-START_TESTCASE 			SEC-CAF-WMDRM-0021
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0021
-//!SYMTestCaseDesc 		Get a string attribute from WMDRM content using CData.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttribute API.
-//!SYMTestExpectedResults	String attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFDataStringAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataStringAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0021
-
-START_TESTCASE 			SEC-CAF-WMDRM-0022
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0022
-//!SYMTestCaseDesc 		Get string attribute set from WMDRM content using CData.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttributeSet API.
-//!SYMTestExpectedResults	String attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFDataStringAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTADataStringAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0022
-
-START_TESTCASE 			SEC-CAF-WMDRM-0023
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0023
-//!SYMTestCaseDesc 		Get an attribute from WMDRM content using CContent.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttribute API.
-//!SYMTestExpectedResults	Attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFContentAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAContentAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0023
-
-START_TESTCASE 			SEC-CAF-WMDRM-0024
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0024
-//!SYMTestCaseDesc 		Get an attribute set from WMDRM content using CContent.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttributeSet API.
-//!SYMTestExpectedResults	Attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFContentAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAContentAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0024
-
-START_TESTCASE 			SEC-CAF-WMDRM-0025
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0025
-//!SYMTestCaseDesc 		Get a string attribute from WMDRM content using CContent.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttribute API.
-//!SYMTestExpectedResults	String attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFContentStringAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAContentStringAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0025
-
-START_TESTCASE 			SEC-CAF-WMDRM-0026
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0026
-//!SYMTestCaseDesc 		Get string attribute set from WMDRM content using CContent.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttributeSet API.
-//!SYMTestExpectedResults	String attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFContentStringAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAContentStringAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0026
-
-START_TESTCASE 			SEC-CAF-WMDRM-0027
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0027
-//!SYMTestCaseDesc 		Get an attribute from WMDRM content using CManager.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttribute API.
-//!SYMTestExpectedResults	Attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFManagerAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAManagerAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0027
-
-START_TESTCASE 			SEC-CAF-WMDRM-0028
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0028
-//!SYMTestCaseDesc 		Get an attribute set from WMDRM content using CManager.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetAttributeSet API.
-//!SYMTestExpectedResults	Attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFManagerAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAManagerAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0028
-
-START_TESTCASE 			SEC-CAF-WMDRM-0029
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0029
-//!SYMTestCaseDesc 		Get a string attribute from WMDRM content using CManager.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttribute API.
-//!SYMTestExpectedResults	String attribute obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFManagerStringAttributeStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAManagerStringAttribute
-END_TESTCASE			SEC-CAF-WMDRM-0029
-
-START_TESTCASE 			SEC-CAF-WMDRM-0030
-//!@file
-//!SYMTestCaseID 		SEC-CAF-WMDRM-0030
-//!SYMTestCaseDesc 		Get string attribute set from WMDRM content using CManager.The header data provided must match the one supported by RTA.
-//!SYMPREQ			REQ12826
-//!SYMTestStatus		Implemented
-//!SYMTestPriority		Medium
-//!SYMTestActions		Verify RTA agent's GetStringAttributeSet API.
-//!SYMTestExpectedResults	String attributes obtained must match the expected.
-//!SYMTestType			CIT
-RUN_TEST_STEP 100 tcaf CAFManagerStringAttributeSetStep c:\tcaf\tcafwmdrmsupport.ini WMDRMRTAManagerStringAttributeSet
-END_TESTCASE			SEC-CAF-WMDRM-0030
--- a/contentmgmt/referencedrmagent/tcaf/source/CafUtilsStep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/CafUtilsStep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -34,10 +34,6 @@
 _LIT(KCAFRightsInfoStep,"CAFRightsInfoStep");
 _LIT(KCAFStreamablePtrArrayStep,"CAFStreamablePtrArrayStep");
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-_LIT(KCAFHelperStep,"CAFHelperStep");     
-#endif //#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 class CCAFServer;
 
 /* 
@@ -140,20 +136,5 @@
 	CCAFServer& iParent;
 	};	
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-class CCafHelperStep : public CCAFStep     
-    {     
-public:     
-    CCafHelperStep();     
-    ~CCafHelperStep();     
-    virtual TVerdict doTestStepL();     
-      
-private:     
-    TInt TestFileHandleCaseL(TInt aError, const TDesC& aFileName);     
-    TInt TestHeaderDataCaseL(TInt aError);     
-    };     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT        
-     
-	
 #endif
 
--- a/contentmgmt/referencedrmagent/tcaf/source/CafutilsStep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/CafutilsStep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -25,11 +25,6 @@
 #include "cafserver.h"
 #include "CafUtilsStep.h"
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "refcafhelper.h"
-#include <caf/cafhelper.h>     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 using namespace ContentAccess;
 
 
@@ -843,108 +838,3 @@
 	return TestStepResult();
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-
-CCafHelperStep::~CCafHelperStep()
-    {     
-    }     
-  
-CCafHelperStep::CCafHelperStep()
-    {     
-    SetTestStepName(KCAFHelperStep);     
-    }     
-      
-      
-TVerdict CCafHelperStep::doTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-__UHEAP_MARK;     
-         
-    TInt result;     
-         
-    TInt error;     
-    GetIntFromConfig(ConfigSection(),_L("error"),error);     
-         
-    TInt expectedValue;     
-    GetIntFromConfig(ConfigSection(),_L("expected"),expectedValue);     
-         
-    // fileheader case.     
-    TPtrC uri;     
-    if (!GetStringFromConfig(ConfigSection(), _L("uri"), uri))     
-        {     
-        INFO_PRINTF1(_L("CCafHelper test : HeaderData case."));     
-        result = TestHeaderDataCaseL(error);     
-        }     
-             
-    else     
-        {     
-        TBool isFileName = EFalse;     
-        GetBoolFromConfig(ConfigSection(),_L("flag"),isFileName);     
-             
-        // filehandle case     
-        if(isFileName == EFalse)     
-            {     
-            INFO_PRINTF1(_L("CCafHelper test : FileHandle case."));     
-            result = TestFileHandleCaseL(error, uri);     
-            }     
-             
-        // filename case.     
-        else     
-            {     
-            INFO_PRINTF1(_L("CCafHelper test : FileName case."));     
-         
-            CCAFHelper* helperObj = CCAFHelper::NewL();     
-            CleanupStack::PushL(helperObj);     
-             
-            result = (*helperObj)().HandleCAFErrorL(error, uri);     
-            CleanupStack::PopAndDestroy(helperObj);     
-            }        
-        }     
-         
-    if(result == expectedValue)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-             
-__UHEAP_MARKEND;     
-             
-    return TestStepResult();     
-    }     
-         
-TInt CCafHelperStep::TestFileHandleCaseL(TInt aError, const TDesC& aFileName)     
-    {     
-__UHEAP_MARK;     
-    RFs fs;     
-    RFile fileHandle;     
-    User::LeaveIfError(fs.Connect());     
-    CleanupClosePushL(fs);     
-    User::LeaveIfError(fileHandle.Open(fs, aFileName, EFileRead));     
-    CleanupClosePushL(fileHandle);     
-         
-    CCAFHelper* helperObj = CCAFHelper::NewL();     
-    CleanupStack::PushL(helperObj);     
-    TInt result = (*helperObj)().HandleCAFErrorL(aError, fileHandle);     
-    CleanupStack::PopAndDestroy(3, &fs);     
-__UHEAP_MARKEND;     
-      
-    return result;     
-    }     
-         
-TInt CCafHelperStep::TestHeaderDataCaseL(TInt aError)     
-    {     
-    _LIT8(KFileHeaderData,"W\0R\0M\0H\0E\0A\0D\0E\0R\0");     
-      
-__UHEAP_MARK;        
-    CCAFHelper* helperObj = CCAFHelper::NewL();     
-    CleanupStack::PushL(helperObj);     
-         
-    TInt result = (*helperObj)().HandleCAFErrorL(aError, KFileHeaderData);     
-    CleanupStack::PopAndDestroy(helperObj);     
-__UHEAP_MARKEND;     
-      
-    return result;     
-    }     
-         
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
-
--- a/contentmgmt/referencedrmagent/tcaf/source/Consumerstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/Consumerstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1818,18 +1818,7 @@
 	}
 
 TVerdict CCAFDataAttributeStep::doTestStepL()
-	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
+	{  
 	TInt attribute;
 	TInt value = KErrNone;
 	TInt expectedValue = KErrNone;
@@ -1875,17 +1864,6 @@
 
 TVerdict CCAFDataAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	TInt expectedValue1;
 	TInt expectedValue2;
 	TInt value1;
@@ -1951,17 +1929,6 @@
 
 TVerdict CCAFDataStringAttributeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	TInt expectedResult;
 	TInt attribute;
 	TPtrC expectedValue;
@@ -2016,17 +1983,6 @@
 
 TVerdict CCAFDataStringAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
 	TPtrC expectedValue1;
 	TPtrC expectedValue2;
 	TBuf <200> value1;
@@ -2242,508 +2198,4 @@
 	iIterationSum += tickCounterValAfterFileOpen - tickCounterValBeforeFileOpen;
 	}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-      
-CWmdrmCAFContentStep::~CWmdrmCAFContentStep()     
-    {     
-    }     
-      
-CWmdrmCAFContentStep::CWmdrmCAFContentStep()     
-    {     
-    SetTestStepName(KWmdrmCAFContentStep);     
-    }     
-      
-      
-TVerdict CWmdrmCAFContentStep::doTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-    
-    TBool protectedVal;
-    GetBoolFromConfig(ConfigSection(),_L("attribValue1"), protectedVal);     
-    TBool forwardable;     
-    GetBoolFromConfig(ConfigSection(),_L("attribValue2"), forwardable);     
-         
-    TBool headerDataPresent = ETrue;     
-    GetBoolFromConfig(ConfigSection(),_L("headerDataFlag"), headerDataPresent);     
-         
-    INFO_PRINTF1(_L("Verify CContent APIs for WMDRM content"));      
-         
-    __UHEAP_MARK;     
-         
-    CContent* content = NULL;     
-         
-    // this condition verifies that CContent construction leaves with KErrMissingWmdrmHeaderData,     
-    // when no header data is provided.     
-    if(!headerDataPresent)     
-        {     
-        content = CContent::NewL(KNullDesC8());     
-        return EPass;     
-        }     
-         
-    // create a dummy header data.     
-    HBufC8* headerData = CreateWmdrmHeaderLC();     
-         
-    // Open a file and retrieve the attributes.     
-    // If headerDataPresent is false, the code will never reach here.s     
-    content = CContent::NewL(*headerData);     
-    CleanupStack::PushL(content);     
-    CAttribute* attrs = content->NewAttributeL(ETrue);     
-    CleanupStack::PushL(attrs);     
-      
-    TBool value1 = attrs->ResponseSet().IsSet(EIsProtected);     
-    TBool value2 = attrs->ResponseSet().IsSet(EIsForwardable);     
-    if(value1 == protectedVal && value2 == forwardable)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-      
-    CleanupStack::PopAndDestroy(3, headerData);      
-      
-    __UHEAP_MARKEND;     
-    return TestStepResult();     
-    }     
-      
-      
-CWmdrmCAFDataStep::~CWmdrmCAFDataStep()     
-    {     
-    }     
-      
-CWmdrmCAFDataStep::CWmdrmCAFDataStep()     
-    {     
-    SetTestStepName(KWmdrmCAFDataStep);     
-    }     
-      
-TVerdict CWmdrmCAFDataStep::doTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribute;     
-    TInt expectedValue = KErrNone;     
-      
-    GetIntFromConfig(ConfigSection(),_L("attribute"), attribute);     
-    GetIntFromConfig(ConfigSection(),_L("value"), expectedValue);     
-         
-__UHEAP_MARK;     
-      
-    HBufC8* headerData = CreateWmdrmHeaderLC();     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-    CData *data = content->OpenContentL(EPeek);     
-    TInt value = KErrNone;     
-    User::LeaveIfError(data->GetAttribute(attribute, value));     
-    delete data;     
-         
-    if(expectedValue == value)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CData::GetAttribute() Expected value: %d, actual value: %d"), expectedValue, value);        
-        }     
-         
-    CleanupStack::PopAndDestroy(2, headerData);                      
-__UHEAP_MARKEND;     
-         
-    return TestStepResult();     
-    }     
-      
-      
-CWmdrmCAFReadStep::~CWmdrmCAFReadStep()     
-    {     
-    }     
-      
-CWmdrmCAFReadStep::CWmdrmCAFReadStep()     
-    {     
-    SetTestStepName(KWmdrmCAFReadStep);     
-    }     
-      
-      
-TVerdict CWmdrmCAFReadStep::doTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TBool synchronous = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("synchronous"), synchronous);     
-    TBool intent = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("intent"), intent);     
-    TPtrC inputPacket;     
-    GetStringFromConfig(ConfigSection(),_L("inputPacket"), inputPacket);     
-    TPtrC expectedOutput;     
-    GetStringFromConfig(ConfigSection(),_L("outputPacket"), expectedOutput);     
-         
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    TInt result = 0;     
-    if(!synchronous)     
-        {     
-        result = TestAsynchronousReadL(*headerData, intent, inputPacket, expectedOutput);     
-        }     
-    else     
-        {     
-        result = TestSynchronousReadL(*headerData, intent, inputPacket, expectedOutput);     
-        }     
-      
-    if(result == KErrNone)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-             
-    CleanupStack::PopAndDestroy(headerData);     
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-         
-TInt CWmdrmCAFReadStep::TestSynchronousReadL(const TDesC8& aHeaderData, TBool aIntent, TDesC& aInputPacket, TDesC& aExpectedOutput)     
-    {     
-__UHEAP_MARK;     
-    CData* data = NULL;     
-    TInt returnVal = KErrGeneral;     
-         
-    if(aIntent)     
-        {     
-        data = CData::NewL(aHeaderData, EPeek);     
-        }     
-    else     
-        {     
-        data = CData::NewL(aHeaderData);     
-        }     
-         
-    CleanupStack::PushL(data);     
-         
-    if(aInputPacket.Length() <= 0)     
-        {     
-        // dummy output buffer.This loop essentially tests the error condition KErrInsufficientDataPacketLength.     
-        TBuf8<2> outputBuffer;     
-        User::LeaveIfError(data->Read(KNullDesC8(), outputBuffer));     
-        }     
-             
-    else     
-        {     
-        HBufC8* inputPacket = ConvertDes16toHBufC8LC(aInputPacket);     
-        HBufC8* outputPacket = HBufC8::NewLC(aInputPacket.Length());     
-        TPtr8 outputPacketPtr = outputPacket->Des();     
-         
-        User::LeaveIfError(data->Read(*inputPacket, outputPacketPtr));     
-        HBufC8* expectedOutput = ConvertDes16toHBufC8LC(aExpectedOutput);     
-        if(expectedOutput->Compare(*outputPacket) == KErrNone)     
-            {     
-            returnVal = KErrNone;        
-            }     
-         
-        CleanupStack::PopAndDestroy(3, inputPacket);         
-        }     
-         
-    CleanupStack::PopAndDestroy(data);     
-__UHEAP_MARKEND;     
-         
-    return returnVal;     
-    }     
-         
-TInt CWmdrmCAFReadStep::TestAsynchronousReadL(const TDesC8& aHeaderData, TBool aIntent, TDesC& aInputPacket, TDesC& aExpectedOutput)     
-    {     
-__UHEAP_MARK;     
-    CData* data = NULL;     
-    TInt returnVal = KErrGeneral;     
-         
-    if(aIntent)     
-        {     
-        data = CData::NewL(aHeaderData, EPeek);     
-        }     
-    else     
-        {     
-        data = CData::NewL(aHeaderData);     
-        }     
-         
-    CleanupStack::PushL(data);     
-         
-    if(aInputPacket.Length() <= 0)     
-        {     
-        TBuf8<2> outputBuffer;     
-        User::LeaveIfError(data->Read(KNullDesC8(), outputBuffer));     
-        }     
-             
-    else     
-        {     
-        HBufC8* inputPacket = ConvertDes16toHBufC8LC(aInputPacket);     
-        HBufC8* outputPacket = HBufC8::NewLC(aInputPacket.Length());     
-        TPtr8 outputPacketPtr = outputPacket->Des();     
-         
-        TRequestStatus status;     
-        data->Read(*inputPacket, outputPacketPtr, status);     
-        User::WaitForRequest(status);     
-         
-        if(status.Int() != KErrNone)     
-            {     
-            CleanupStack::PopAndDestroy(3, data);     
-            return status.Int();     
-            }     
-             
-        HBufC8* expectedOutput = ConvertDes16toHBufC8LC(aExpectedOutput);     
-        if(expectedOutput->Compare(*outputPacket) == KErrNone)     
-            {     
-            returnVal = KErrNone;     
-            }     
-         
-        CleanupStack::PopAndDestroy(3, inputPacket);     
-        }     
-         
-    CleanupStack::PopAndDestroy(data);     
-__UHEAP_MARKEND;     
-         
-    return returnVal;     
-    }     
-         
-TVerdict CCAFDataAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"), attribVal);     
-         
-    TInt expectedValue;     
-    GetIntFromConfig(ConfigSection(),_L("value"), expectedValue);     
-      
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-             
-    CContent *content = CContent::NewLC(*headerData);     
-    CData *data = content->OpenContentL(EPeek);     
-    TInt value;     
-    User::LeaveIfError(data->GetAttribute(attribVal, value));     
-    delete data;     
-         
-    if(expectedValue == value)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CData::GetAttribute() Expected value: %d, actual value: %d"), expectedValue, value);        
-        }     
-         
-    CleanupStack::PopAndDestroy(2, headerData);                      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-         
-      
-TVerdict CCAFDataAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribute1;     
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TInt expectedValue1;     
-    GetIntFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TInt expectedValue2;     
-    GetIntFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-      
-__UHEAP_MARK;     
-      
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-    CData *data = content->OpenContentL(EPeek);     
-                     
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    TInt result = data->GetAttributeSet(attributeSet);     
-    delete data;     
-         
-    if(result == KErrNone)     
-        {     
-        TInt value1;         
-        User::LeaveIfError(attributeSet.GetValue(attribute1, value1));     
-             
-        TInt value2;     
-        User::LeaveIfError(attributeSet.GetValue(attribute2, value2));     
-             
-        if(expectedValue1 == value1 && expectedValue2 == value2 && attributeSet.Count() == 2)     
-            {     
-            SetTestStepResult(EPass);     
-            }     
-        else     
-            {     
-            INFO_PRINTF1(_L("CData::GetAttributeSet() values don't match expected values"));     
-            }     
-        }     
-         
-    else     
-        {     
-        INFO_PRINTF1(_L("CData::GetAttributeSet() failed"));     
-        }     
-             
-    CleanupStack::PopAndDestroy(3, headerData);          
-         
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFDataStringAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"),attribVal);     
-         
-    TPtrC expectedValue;     
-    GetStringFromConfig(ConfigSection(),_L("value"),expectedValue);     
-         
-    TInt expectedResult;     
-    GetIntFromConfig(ConfigSection(),_L("result"),expectedResult);     
-         
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-    CData *data = content->OpenContentL(EPeek);     
-                 
-    TBuf <200> value;     
-    TInt result = data->GetStringAttribute(attribVal, value);     
-    delete data;     
-         
-    if(result == expectedResult && value == expectedValue)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CData::GetStringAttribute() Expected result: %d, actual result: %d"), expectedResult, result);     
-        INFO_PRINTF3(_L("CData::GetStringAttribute() Expected value: %S, actual value: %S"), &expectedValue, &value);     
-        }     
-             
-    CleanupStack::PopAndDestroy(2, headerData);          
-             
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFDataStringAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-      
-    TInt attribute1;         
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TPtrC expectedValue1;     
-    GetStringFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TPtrC expectedValue2;     
-    GetStringFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-         
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-    CData *data = content->OpenContentL(EPeek);     
-         
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    TInt result = data->GetStringAttributeSet(attributeSet);     
-    delete data;     
-             
-    TBuf <200> value1;     
-    TBuf <200> value2;     
-    if(result == KErrNone)     
-        {     
-        TInt result3 = attributeSet.GetValue(attribute1, value1);     
-        TInt result4 = attributeSet.GetValue(attribute2, value2);     
-                 
-        if(value1 == expectedValue1 && value2 == expectedValue2 && attributeSet.Count() == 2     
-         && result3 == KErrNone && result4 == KErrNone)     
-            {     
-            SetTestStepResult(EPass);     
-            }     
-        else     
-            {     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1.Expected value: %S, actual value: %S"), &expectedValue1, &value1);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2.Expected value: %S, actual value: %S"), &expectedValue2, &value2);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1. Expected result: %d, actual result: %d"), 0, result3);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2. Expected result: %d, actual result: %d"), 0, result4);      
-            }     
-        }     
-    else     
-        {     
-        INFO_PRINTF1(_L("CData::GetStringAttributeSet() failed"));     
-        }        
-         
-    CleanupStack::PopAndDestroy(3, headerData);          
-      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
+
--- a/contentmgmt/referencedrmagent/tcaf/source/Consumerstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/Consumerstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -46,11 +46,6 @@
 _LIT(KCAFExecuteIntentStep,"CAFExecuteIntentStep");
 _LIT(KCAFDRMFileOpenPerformanceStep, "CAFDRMFileOpenPerformanceStep");
 
-//#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-_LIT(KWmdrmCAFContentStep,"WmdrmCAFContentStep");     
-_LIT(KWmdrmCAFDataStep,"WmdrmCAFDataStep");     
-_LIT(KWmdrmCAFReadStep, "WmdrmCAFReadStep");     
-//#endif //SYMBIAN_SDP-WMDRM 
 
 /* 
 * Used to open one file with RFile and the DRM packaged version of the same file with 
@@ -286,9 +281,6 @@
 	CCAFDataAttributeStep(CCAFServer& aParent);
 	~CCAFDataAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -309,9 +301,6 @@
 	CCAFDataAttributeSetStep(CCAFServer& aParent);
 	~CCAFDataAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -332,9 +321,6 @@
 	CCAFDataStringAttributeStep(CCAFServer& aParent);
 	~CCAFDataStringAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -355,9 +341,6 @@
 	CCAFDataStringAttributeSetStep(CCAFServer& aParent);
 	~CCAFDataStringAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -398,46 +381,5 @@
 	TUint32 iIterationSum;
 	};
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-/* Used to test behaviour of CContent object creation and attribute APIs for WMDRM content.  +-   
-* @internalComponent Exposure internally     
-*/     
-class CWmdrmCAFContentStep : public CCAFStep     
-    {     
-public:     
-    CWmdrmCAFContentStep();     
-    ~CWmdrmCAFContentStep();     
-    virtual TVerdict doTestStepL();     
-    };     
-      
-      
-/* Used to test the behaviour of CData object creation and attribute APIs for WMDRM content.     
-* @internalComponent Exposure internally     
-*/     
-class CWmdrmCAFDataStep : public CCAFStep     
-    {     
-public:     
-    CWmdrmCAFDataStep();     
-    ~CWmdrmCAFDataStep();     
-    virtual TVerdict doTestStepL();     
-    };     
-      
-         
-/* Used to test synchronous and asynchronous behaviour of ReadL() APIs of CData class for WMDRM content.     
-* @internalComponent Exposure internally     
-*/     
-class CWmdrmCAFReadStep : public CCAFStep     
-    {     
-public:     
-    CWmdrmCAFReadStep();     
-    ~CWmdrmCAFReadStep();     
-    virtual TVerdict doTestStepL();     
-      
-private:     
-    TInt TestSynchronousReadL(const TDesC8& aHeaderData, TBool aIntent, TDesC& aInputPacket, TDesC& aExpectedOuput);     
-    TInt TestAsynchronousReadL(const TDesC8& aHeaderData, TBool aIntent, TDesC& aInputPacket, TDesC& aExpectedOuput);     
-    };       
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 #endif
--- a/contentmgmt/referencedrmagent/tcaf/source/Contentstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/Contentstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -47,17 +47,6 @@
 
 TVerdict CCAFContentAttributeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	TInt attribute;
 	TInt value = KErrNone;
 	TInt expectedValue;
@@ -125,17 +114,6 @@
 
 TVerdict CCAFContentAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
 	TInt value1;
 	TInt value2;
 	TInt expectedValue1;
@@ -240,17 +218,6 @@
 
 TVerdict CCAFContentStringAttributeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	TInt expectedResult;
 	TInt attribute;
 	TInt unresolvedUri = EFalse;
@@ -339,17 +306,6 @@
 
 TVerdict CCAFContentStringAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	TPtrC expectedValue1;
 	TPtrC expectedValue2;
 	TBuf <200> value1;
@@ -1034,238 +990,4 @@
 	return TestStepResult();
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-// The following methods test the various content attribute APIs for WMDRM content.     
-      
-TVerdict CCAFContentAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"), attribVal);     
-         
-    TInt expectedValue;     
-    GetIntFromConfig(ConfigSection(),_L("value"), expectedValue);     
-      
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-             
-    CContent *content = CContent::NewLC(*headerData);     
-    TInt value;     
-    User::LeaveIfError(content->GetAttribute(attribVal, value));     
-         
-    if(expectedValue == value)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CContent::GetAttribute() Expected value: %d, actual value: %d"), expectedValue, value);     
-        }     
-         
-    CleanupStack::PopAndDestroy(2, headerData);                      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-         
-      
-TVerdict CCAFContentAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribute1;     
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TInt expectedValue1;     
-    GetIntFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TInt expectedValue2;     
-    GetIntFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-      
-__UHEAP_MARK;     
-      
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-                     
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    TInt result = content->GetAttributeSet(attributeSet);     
-    if(result == KErrNone)     
-        {     
-        TInt value1;         
-        User::LeaveIfError(attributeSet.GetValue(attribute1, value1));     
-             
-        TInt value2;     
-        User::LeaveIfError(attributeSet.GetValue(attribute2, value2));     
-             
-        if(expectedValue1 == value1 && expectedValue2 == value2 && attributeSet.Count() == 2)     
-            {     
-            SetTestStepResult(EPass);     
-            }     
-        else     
-            {     
-            INFO_PRINTF1(_L("CContent::GetAttributeSet() values don't match expected values"));     
-            }     
-        }     
-         
-    else     
-        {     
-        INFO_PRINTF1(_L("CContent::GetAttributeSet() failed"));     
-        }     
-             
-    CleanupStack::PopAndDestroy(3, headerData);          
-         
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFContentStringAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"),attribVal);     
-         
-    TPtrC expectedValue;     
-    GetStringFromConfig(ConfigSection(),_L("value"),expectedValue);     
-         
-    TInt expectedResult;     
-    GetIntFromConfig(ConfigSection(),_L("result"),expectedResult);     
-         
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-                 
-    TBuf <200> value;     
-    TInt result = content->GetStringAttribute(attribVal, value);     
-    if(result == expectedResult && value == expectedValue)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CContent::GetStringAttribute() Expected result: %d, actual result: %d"), expectedResult, result);     
-        INFO_PRINTF3(_L("CContent::GetStringAttribute() Expected value: %S, actual value: %S"), &expectedValue, &value);     
-        }     
-             
-    CleanupStack::PopAndDestroy(2, headerData);          
-             
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFContentStringAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-      
-    TInt attribute1;         
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TPtrC expectedValue1;     
-    GetStringFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TPtrC expectedValue2;     
-    GetStringFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-         
-__UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CContent *content = CContent::NewLC(*headerData);     
-         
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    TInt result = content->GetStringAttributeSet(attributeSet);     
-    TBuf <200> value1;     
-    TBuf <200> value2;     
-    if(result == KErrNone)     
-        {     
-        TInt result3 = attributeSet.GetValue(attribute1, value1);     
-        TInt result4 = attributeSet.GetValue(attribute2, value2);     
-                 
-        if(value1 == expectedValue1 && value2 == expectedValue2 && attributeSet.Count() == 2     
-         && result3 == KErrNone && result4 == KErrNone)     
-            {     
-            SetTestStepResult(EPass);     
-            }     
-        else     
-            {     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1.Expected value: %S, actual value: %S"), &expectedValue1, &value1);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2.Expected value: %S, actual value: %S"), &expectedValue2, &value2);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1. Expected result: %d, actual result: %d"), 0, result3);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2. Expected result: %d, actual result: %d"), 0, result4);      
-            }     
-        }     
-    else     
-        {     
-        INFO_PRINTF1(_L("CContent::GetStringAttributeSet() failed"));     
-        }        
-         
-    CleanupStack::PopAndDestroy(3, headerData);          
-      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
--- a/contentmgmt/referencedrmagent/tcaf/source/ManagerStep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/ManagerStep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -880,17 +880,6 @@
 
 TVerdict CCAFManagerAttributeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT    
-
 	TInt attribute;
 	TInt value = KErrNone;
 	TInt expectedValue;
@@ -946,17 +935,6 @@
 
 TVerdict CCAFManagerAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT    
-
 	TInt value1;
 	TInt value2;
 	TInt expectedValue1;
@@ -1031,17 +1009,6 @@
 
 TVerdict CCAFManagerStringAttributeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT        
-     
 	TInt expectedResult;
 	TInt attribute;
 	TPtrC expectedValue;
@@ -1106,17 +1073,6 @@
 
 TVerdict CCAFManagerStringAttributeSetStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)     
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif  //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-     
 	TPtrC expectedValue1;
 	TPtrC expectedValue2;
 	TBuf <200> value1;
@@ -1623,238 +1579,3 @@
 	return TestStepResult();
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-// The following methods test the various manager attribute APIs for WMDRM content.     
-      
-TVerdict CCAFManagerAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"), attribVal);     
-         
-    TInt expectedValue;     
-    GetIntFromConfig(ConfigSection(),_L("value"), expectedValue);     
-      
-    __UHEAP_MARK;     
-         
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    TInt value;     
-    CManager *manager = CManager::NewLC();     
-         
-    User::LeaveIfError(manager->GetAttribute(*headerData, attribVal, value));     
-    if(expectedValue == value)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CManager::GetAttribute() Expected value: %d, actual value: %d"), expectedValue, value);     
-        }     
-             
-    CleanupStack::PopAndDestroy(2, headerData);          
-                 
-    __UHEAP_MARKEND;     
-    return TestStepResult();     
-    }     
-         
-      
-TVerdict CCAFManagerAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribute1;     
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TInt expectedValue1;     
-    GetIntFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TInt expectedValue2;     
-    GetIntFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-      
-__UHEAP_MARK;     
-         
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-                 
-    RAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    CManager *manager = CManager::NewLC();       
-    TInt result = manager->GetAttributeSet(*headerData, attributeSet);     
-    if(result == KErrNone)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF1(_L("CManager::GetAttributeSet() failed"));     
-        }     
-             
-    TInt value1;         
-    User::LeaveIfError(attributeSet.GetValue(attribute1, value1));     
-             
-    TInt value2;     
-    User::LeaveIfError(attributeSet.GetValue(attribute2, value2));     
-             
-    if(expectedValue1 == value1 && expectedValue2 == value2 && attributeSet.Count() == 2)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF1(_L("CManager::GetAttributeSet() values don't match expected values"));     
-        }     
-             
-    CleanupStack::PopAndDestroy(3, headerData);          
-      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFManagerStringAttributeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TInt attribVal;     
-    GetIntFromConfig(ConfigSection(),_L("attribute"),attribVal);     
-         
-    TPtrC expectedValue;     
-    GetStringFromConfig(ConfigSection(),_L("value"),expectedValue);     
-         
-    TInt expectedResult;     
-    GetIntFromConfig(ConfigSection(),_L("result"),expectedResult);     
-      
-__UHEAP_MARK;     
-         
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-         
-    CManager* manager = CManager::NewLC();           
-    TBuf <200> value;     
-    TInt result = manager->GetStringAttribute(*headerData, attribVal, value);     
-    if(result == expectedResult && value == expectedValue)     
-        {     
-        SetTestStepResult(EPass);     
-        }     
-    else     
-        {     
-        INFO_PRINTF3(_L("CManager::GetStringAttribute() Expected result: %d, actual result: %d"), expectedResult, result);     
-        INFO_PRINTF3(_L("CManager::GetStringAttribute() Expected value: %S, actual value: %S"), &expectedValue, &value);     
-        }     
-             
-    CleanupStack::PopAndDestroy(2, headerData);          
-         
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-      
-TVerdict CCAFManagerStringAttributeSetStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-      
-    TInt attribute1;         
-    GetIntFromConfig(ConfigSection(),_L("attribute1"),attribute1);     
-         
-    TInt attribute2;     
-    GetIntFromConfig(ConfigSection(),_L("attribute2"),attribute2);     
-         
-    TPtrC expectedValue1;     
-    GetStringFromConfig(ConfigSection(),_L("value1"),expectedValue1);     
-         
-    TPtrC expectedValue2;     
-    GetStringFromConfig(ConfigSection(),_L("value2"),expectedValue2);     
-         
-__UHEAP_MARK;     
-         
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-      
-    RStringAttributeSet attributeSet;     
-    CleanupClosePushL(attributeSet);     
-    attributeSet.AddL(attribute1);     
-    attributeSet.AddL(attribute2);     
-             
-    CManager* manager = CManager::NewLC();       
-    TInt result = manager->GetStringAttributeSet(*headerData, attributeSet);     
-    TBuf <200> value1;     
-    TBuf <200> value2;     
-    if(result == KErrNone)     
-        {     
-        TInt result3 = attributeSet.GetValue(attribute1, value1);     
-        TInt result4 = attributeSet.GetValue(attribute2, value2);     
-                 
-        if(value1 == expectedValue1 && value2 == expectedValue2 && attributeSet.Count() == 2     
-         && result3 == KErrNone && result4 == KErrNone)     
-            {     
-            SetTestStepResult(EPass);     
-            }     
-        else     
-            {     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1.Expected value: %S, actual value: %S"), &expectedValue1, &value1);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2.Expected value: %S, actual value: %S"), &expectedValue2, &value2);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute1. Expected result: %d, actual result: %d"), 0, result3);     
-            INFO_PRINTF3(_L("RStringAttributeSet::GetValue() for attribute2. Expected result: %d, actual result: %d"), 0, result4);      
-            }     
-            }     
-    else     
-        {     
-        INFO_PRINTF1(_L("CManager::GetStringAttributeSet() failed"));     
-        }        
-         
-    CleanupStack::PopAndDestroy(3, headerData);          
-      
-__UHEAP_MARKEND;     
-      
-    return TestStepResult();     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
--- a/contentmgmt/referencedrmagent/tcaf/source/ManagerStep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/ManagerStep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -368,9 +368,6 @@
 	CCAFManagerAttributeStep(CCAFServer& aParent);
 	~CCAFManagerAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -393,9 +390,6 @@
 	CCAFManagerAttributeSetStep(CCAFServer& aParent);
 	~CCAFManagerAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
   
 private:
 	CCAFServer& iParent;
@@ -419,9 +413,6 @@
 	CCAFManagerStringAttributeStep(CCAFServer& aParent);
 	~CCAFManagerStringAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
   
 private:
 	CCAFServer& iParent;
@@ -445,10 +436,6 @@
 	CCAFManagerStringAttributeSetStep(CCAFServer& aParent);
 	~CCAFManagerStringAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
 private:
 	CCAFServer& iParent;
 	};
--- a/contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -52,17 +52,6 @@
  */
 TVerdict CCAFRecognizeStep::doTestStepL()
 	{
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    TBool wmdrmFlag = EFalse;     
-    GetBoolFromConfig(ConfigSection(),_L("wmdrmEnabled"), wmdrmFlag);     
-         
-    if(wmdrmFlag)
-        {     
-        TVerdict verdict = doWmdrmTestStepL();     
-        return verdict;     
-        }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT    
-
 	TBuf8 <KCAFTestApparcBufferSize> buf;
 
 	CAgentResolver *resolver;
@@ -505,51 +494,5 @@
 	return TestStepResult();
 	}
 	
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-  
-// Tests DoRecognizeL API for WMDRM content .
-      
-TVerdict CCAFRecognizeStep::doWmdrmTestStepL()     
-    {     
-    SetTestStepResult(EFail);     
-         
-    TPtrC expectedFileMimeType;     
-    GetStringFromConfig(ConfigSection(),_L("filemime"), expectedFileMimeType);     
-         
-    TPtrC expectedContentMimeType;     
-    GetStringFromConfig(ConfigSection(),_L("contentmime"), expectedContentMimeType);     
-         
-    TBool expectedResult;     
-    GetBoolFromConfig(ConfigSection(),_L("recognized"), expectedResult);     
-         
-    __UHEAP_MARK;     
-    TPtrC header;     
-    HBufC8* headerData = NULL;     
-         
-    if(GetStringFromConfig(ConfigSection(),_L("header"), header))     
-        {     
-        headerData = ConvertDes16toHBufC8LC(header);     
-        }     
-    else     
-        {     
-        headerData = CreateWmdrmHeaderLC();      
-        }     
-      
-    // Pass the WMDRM header data to CAF DoRecognize function     
-    CAgentResolver* resolver = CAgentResolver::NewLC(ETrue);     
-             
-    TBuf8 <KCafTestMaxDataTypeLength> fileMimeType;     
-    TBuf8 <KCafTestMaxDataTypeLength> contentMimeType;     
-             
-    TBool result = resolver->DoRecognizeL(*headerData, fileMimeType, contentMimeType);     
-         
-    CheckResultL(result, fileMimeType, contentMimeType, expectedResult, expectedFileMimeType, expectedContentMimeType);     
-      
-    CleanupStack::PopAndDestroy(2, headerData);      
-      
-    __UHEAP_MARKEND;     
-    return TestStepResult();     
-    }     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
+
--- a/contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/RecognizerStep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -60,9 +60,6 @@
 	CCAFRecognizeStep(CCAFServer& aParent);
 	~CCAFRecognizeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 
 private:
 	void CheckResultL(TBool aResult, TDes8& aContainerMimeType, TDes8& aContentMimeType, TBool aExpectedResult, TDesC16& aExpectedContainerMime, TDesC16& aExpectedContentMime);
--- a/contentmgmt/referencedrmagent/tcaf/source/cafserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/cafserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -280,17 +280,7 @@
 		testStep = new CCAFManagerStringAttributeByFileHandleStep(*this);
 	else if(aStepName == KCAFManagerStringAttributeSetByFileHandleStep)
 		testStep = new CCAFManagerStringAttributeSetByFileHandleStep(*this);
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    else if(aStepName == KCAFHelperStep)     
-        testStep = new CCafHelperStep();     
-    else if(aStepName == KWmdrmCAFContentStep)     
-        testStep = new CWmdrmCAFContentStep();     
-    else if(aStepName == KWmdrmCAFDataStep)     
-        testStep = new CWmdrmCAFDataStep();     
-    else if(aStepName == KWmdrmCAFReadStep)     
-        testStep = new CWmdrmCAFReadStep();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-	
+
 	return testStep;
 	}
 
--- a/contentmgmt/referencedrmagent/tcaf/source/cafstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/cafstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -105,21 +105,6 @@
 	return buf;
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-         
-HBufC8* CCAFStep::CreateWmdrmHeaderLC()     
-    {     
-    // create dummy header data.     
-    const TInt KMaxBufferLen = 64;     
-    _LIT8(KHeaderData, "W\0R\0M\0H\0E\0A\0D\0E\0R\0");     
-         
-    HBufC8* headerData = HBufC8::NewMaxLC(KMaxBufferLen);     
-    TPtr8 headerPtr = headerData->Des();     
-    headerPtr.Repeat(KHeaderData);     
-    return headerData;     
-    }     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-  
 
 void CCAFStep::LoadCafRecognizerL()
 	{
--- a/contentmgmt/referencedrmagent/tcaf/source/cafstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/cafstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -49,16 +49,6 @@
 	*/
 	HBufC16* ConvertDes8toHBufC16LC(TDesC8& source);
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-      
-    /*     
-    * Utility method which creates dummy header data for WMDRM operations.     
-    * @return   A new HBufC8 allocated which contains the header data.     
-    */     
-    HBufC8* CreateWmdrmHeaderLC();     
-      
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
-
 	/* 
 	* Load CAFRECOGNIZER.MDL and create an instance of CApaCafRecognizer that can be used
 	* by derived classes
--- a/contentmgmt/referencedrmagent/tcaf/source/contentstep.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/contentmgmt/referencedrmagent/tcaf/source/contentstep.h	Wed Sep 01 12:40:57 2010 +0100
@@ -55,9 +55,6 @@
 	CCAFContentAttributeStep(CCAFServer& aParent);
 	~CCAFContentAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -78,9 +75,6 @@
 	CCAFContentAttributeSetStep(CCAFServer& aParent);
 	~CCAFContentAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT 
 private:
 	CCAFServer& iParent;
 	};
@@ -101,9 +95,6 @@
 	CCAFContentStringAttributeStep(CCAFServer& aParent);
 	~CCAFContentStringAttributeStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
   
 private:
 	CCAFServer& iParent;
@@ -125,9 +116,6 @@
 	CCAFContentStringAttributeSetStep(CCAFServer& aParent);
 	~CCAFContentStringAttributeSetStep();
 	virtual TVerdict doTestStepL();
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
-    TVerdict doWmdrmTestStepL();     
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT     
   
 private:
 	CCAFServer& iParent;
--- a/contentmgmt/referencedrmagent/tcaf/testdata/dummywm.asf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-SAMPLE WMDRMFILE
\ No newline at end of file
--- a/crypto/weakcrypto/bwins/HASHu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-EXPORTS
-	??0CMessageDigest@@IAE@ABV0@@Z @ 1 NONAME ; protected: __thiscall CMessageDigest::CMessageDigest(class CMessageDigest const &)
-	??0CMessageDigest@@IAE@XZ @ 2 NONAME ; protected: __thiscall CMessageDigest::CMessageDigest(void)
-	??1CHMAC@@UAE@XZ @ 3 NONAME ; public: virtual __thiscall CHMAC::~CHMAC(void)
-	??1CMD2@@UAE@XZ @ 4 NONAME ; public: virtual __thiscall CMD2::~CMD2(void)
-	??1CMD5@@UAE@XZ @ 5 NONAME ; public: virtual __thiscall CMD5::~CMD5(void)
-	??1CMessageDigest@@UAE@XZ @ 6 NONAME ; public: virtual __thiscall CMessageDigest::~CMessageDigest(void)
-	??1CSHA1@@UAE@XZ @ 7 NONAME ; public: virtual __thiscall CSHA1::~CSHA1(void)
-	??1CSHA@@UAE@XZ @ 8 NONAME ; public: virtual __thiscall CSHA::~CSHA(void)
-	?BlockSize@CHMAC@@UAEHXZ @ 9 NONAME ; public: virtual int __thiscall CHMAC::BlockSize(void)
-	?BlockSize@CMD2@@UAEHXZ @ 10 NONAME ; public: virtual int __thiscall CMD2::BlockSize(void)
-	?BlockSize@CMD5@@UAEHXZ @ 11 NONAME ; public: virtual int __thiscall CMD5::BlockSize(void)
-	?BlockSize@CSHA1@@UAEHXZ @ 12 NONAME ; public: virtual int __thiscall CSHA1::BlockSize(void)
-	?BlockSize@CSHA@@UAEHXZ @ 13 NONAME ; public: virtual int __thiscall CSHA::BlockSize(void)
-	?CopyL@CHMAC@@UAEPAVCMessageDigest@@XZ @ 14 NONAME ; public: virtual class CMessageDigest * __thiscall CHMAC::CopyL(void)
-	?CopyL@CMD2@@UAEPAVCMessageDigest@@XZ @ 15 NONAME ; public: virtual class CMessageDigest * __thiscall CMD2::CopyL(void)
-	?CopyL@CMD5@@UAEPAVCMessageDigest@@XZ @ 16 NONAME ; public: virtual class CMessageDigest * __thiscall CMD5::CopyL(void)
-	?CopyL@CSHA1@@UAEPAVCMessageDigest@@XZ @ 17 NONAME ; public: virtual class CMessageDigest * __thiscall CSHA1::CopyL(void)
-	?CopyL@CSHA@@UAEPAVCMessageDigest@@XZ @ 18 NONAME ; public: virtual class CMessageDigest * __thiscall CSHA::CopyL(void)
-	?Hash@CHMAC@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 19 NONAME ; public: virtual class TPtrC8  __thiscall CHMAC::Hash(class TDesC8 const &)
-	?Hash@CMD2@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 20 NONAME ; public: virtual class TPtrC8  __thiscall CMD2::Hash(class TDesC8 const &)
-	?Hash@CMD5@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 21 NONAME ; public: virtual class TPtrC8  __thiscall CMD5::Hash(class TDesC8 const &)
-	?Hash@CSHA1@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 22 NONAME ; public: virtual class TPtrC8  __thiscall CSHA1::Hash(class TDesC8 const &)
-	?Hash@CSHA@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 23 NONAME ; public: virtual class TPtrC8  __thiscall CSHA::Hash(class TDesC8 const &)
-	?HashSize@CHMAC@@UAEHXZ @ 24 NONAME ; public: virtual int __thiscall CHMAC::HashSize(void)
-	?HashSize@CMD2@@UAEHXZ @ 25 NONAME ; public: virtual int __thiscall CMD2::HashSize(void)
-	?HashSize@CMD5@@UAEHXZ @ 26 NONAME ; public: virtual int __thiscall CMD5::HashSize(void)
-	?HashSize@CSHA1@@UAEHXZ @ 27 NONAME ; public: virtual int __thiscall CSHA1::HashSize(void)
-	?HashSize@CSHA@@UAEHXZ @ 28 NONAME ; public: virtual int __thiscall CSHA::HashSize(void)
-	?NewL@CHMAC@@SAPAV1@ABVTDesC8@@PAVCMessageDigest@@@Z @ 29 NONAME ; public: static class CHMAC * __cdecl CHMAC::NewL(class TDesC8 const &,class CMessageDigest *)
-	?NewL@CMD2@@SAPAV1@XZ @ 30 NONAME ; public: static class CMD2 * __cdecl CMD2::NewL(void)
-	?NewL@CMD5@@SAPAV1@XZ @ 31 NONAME ; public: static class CMD5 * __cdecl CMD5::NewL(void)
-	?NewL@CSHA1@@SAPAV1@XZ @ 32 NONAME ; public: static class CSHA1 * __cdecl CSHA1::NewL(void)
-	?NewL@CSHA@@SAPAV1@XZ @ 33 NONAME ; public: static class CSHA * __cdecl CSHA::NewL(void)
-	?ReplicateL@CHMAC@@UAEPAVCMessageDigest@@XZ @ 34 NONAME ; public: virtual class CMessageDigest * __thiscall CHMAC::ReplicateL(void)
-	?ReplicateL@CMD2@@UAEPAVCMessageDigest@@XZ @ 35 NONAME ; public: virtual class CMessageDigest * __thiscall CMD2::ReplicateL(void)
-	?ReplicateL@CMD5@@UAEPAVCMessageDigest@@XZ @ 36 NONAME ; public: virtual class CMessageDigest * __thiscall CMD5::ReplicateL(void)
-	?ReplicateL@CSHA1@@UAEPAVCMessageDigest@@XZ @ 37 NONAME ; public: virtual class CMessageDigest * __thiscall CSHA1::ReplicateL(void)
-	?ReplicateL@CSHA@@UAEPAVCMessageDigest@@XZ @ 38 NONAME ; public: virtual class CMessageDigest * __thiscall CSHA::ReplicateL(void)
-	?Reset@CHMAC@@UAEXXZ @ 39 NONAME ; public: virtual void __thiscall CHMAC::Reset(void)
-	?Reset@CMD2@@UAEXXZ @ 40 NONAME ; public: virtual void __thiscall CMD2::Reset(void)
-	?Reset@CMD5@@UAEXXZ @ 41 NONAME ; public: virtual void __thiscall CMD5::Reset(void)
-	?Reset@CSHA1@@UAEXXZ @ 42 NONAME ; public: virtual void __thiscall CSHA1::Reset(void)
-	?Reset@CSHA@@UAEXXZ @ 43 NONAME ; public: virtual void __thiscall CSHA::Reset(void)
-	?Final@CHMAC@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 44 NONAME ; public: virtual class TPtrC8  __thiscall CHMAC::Final(class TDesC8 const &)
-	?Final@CHMAC@@UAE?AVTPtrC8@@XZ @ 45 NONAME ; public: virtual class TPtrC8  __thiscall CHMAC::Final(void)
-	?Final@CMD2@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 46 NONAME ; public: virtual class TPtrC8  __thiscall CMD2::Final(class TDesC8 const &)
-	?Final@CMD2@@UAE?AVTPtrC8@@XZ @ 47 NONAME ; public: virtual class TPtrC8  __thiscall CMD2::Final(void)
-	?Final@CMD5@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 48 NONAME ; public: virtual class TPtrC8  __thiscall CMD5::Final(class TDesC8 const &)
-	?Final@CMD5@@UAE?AVTPtrC8@@XZ @ 49 NONAME ; public: virtual class TPtrC8  __thiscall CMD5::Final(void)
-	?Final@CSHA1@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 50 NONAME ; public: virtual class TPtrC8  __thiscall CSHA1::Final(class TDesC8 const &)
-	?Final@CSHA1@@UAE?AVTPtrC8@@XZ @ 51 NONAME ; public: virtual class TPtrC8  __thiscall CSHA1::Final(void)
-	?Final@CSHA@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 52 NONAME ; public: virtual class TPtrC8  __thiscall CSHA::Final(class TDesC8 const &)
-	?Final@CSHA@@UAE?AVTPtrC8@@XZ @ 53 NONAME ; public: virtual class TPtrC8  __thiscall CSHA::Final(void)
-	?Update@CHMAC@@UAEXABVTDesC8@@@Z @ 54 NONAME ; public: virtual void __thiscall CHMAC::Update(class TDesC8 const &)
-	?Update@CMD2@@UAEXABVTDesC8@@@Z @ 55 NONAME ; public: virtual void __thiscall CMD2::Update(class TDesC8 const &)
-	?Update@CMD5@@UAEXABVTDesC8@@@Z @ 56 NONAME ; public: virtual void __thiscall CMD5::Update(class TDesC8 const &)
-	?Update@CSHA1@@UAEXABVTDesC8@@@Z @ 57 NONAME ; public: virtual void __thiscall CSHA1::Update(class TDesC8 const &)
-	?Update@CSHA@@UAEXABVTDesC8@@@Z @ 58 NONAME ; public: virtual void __thiscall CSHA::Update(class TDesC8 const &)
-	?NewDigestL@CMessageDigestFactory@@SAPAVCMessageDigest@@W4THashId@2@@Z @ 59 NONAME ; public: static class CMessageDigest * __cdecl CMessageDigestFactory::NewDigestL(enum CMessageDigest::THashId)
-	?NewDigestLC@CMessageDigestFactory@@SAPAVCMessageDigest@@W4THashId@2@@Z @ 60 NONAME ; public: static class CMessageDigest * __cdecl CMessageDigestFactory::NewDigestLC(enum CMessageDigest::THashId)
-	?NewHMACL@CMessageDigestFactory@@SAPAVCMessageDigest@@W4THashId@2@ABVTDesC8@@@Z @ 61 NONAME ; public: static class CMessageDigest * __cdecl CMessageDigestFactory::NewHMACL(enum CMessageDigest::THashId,class TDesC8 const &)
-	?NewHMACLC@CMessageDigestFactory@@SAPAVCMessageDigest@@W4THashId@2@ABVTDesC8@@@Z @ 62 NONAME ; public: static class CMessageDigest * __cdecl CMessageDigestFactory::NewHMACLC(enum CMessageDigest::THashId,class TDesC8 const &)
-	??1CMD4@@UAE@XZ @ 63 NONAME ; CMD4::~CMD4(void)
-	?BlockSize@CMD4@@UAEHXZ @ 64 NONAME ; int CMD4::BlockSize(void)
-	?CopyL@CMD4@@UAEPAVCMessageDigest@@XZ @ 65 NONAME ; class CMessageDigest * CMD4::CopyL(void)
-	?Final@CMD4@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 66 NONAME ; class TPtrC8 CMD4::Final(class TDesC8 const &)
-	?Final@CMD4@@UAE?AVTPtrC8@@XZ @ 67 NONAME ; class TPtrC8 CMD4::Final(void)
-	?Hash@CMD4@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 68 NONAME ; class TPtrC8 CMD4::Hash(class TDesC8 const &)
-	?HashSize@CMD4@@UAEHXZ @ 69 NONAME ; int CMD4::HashSize(void)
-	?NewL@CMD4@@SAPAV1@XZ @ 70 NONAME ; class CMD4 * CMD4::NewL(void)
-	?ReplicateL@CMD4@@UAEPAVCMessageDigest@@XZ @ 71 NONAME ; class CMessageDigest * CMD4::ReplicateL(void)
-	?Reset@CMD4@@UAEXXZ @ 72 NONAME ; void CMD4::Reset(void)
-	?Update@CMD4@@UAEXABVTDesC8@@@Z @ 73 NONAME ; void CMD4::Update(class TDesC8 const &)
-	??1CSHA2@@UAE@XZ @ 74 NONAME ; CSHA2::~CSHA2(void)
-	?BlockSize@CSHA2@@UAEHXZ @ 75 NONAME ; int CSHA2::BlockSize(void)
-	?CopyL@CSHA2@@UAEPAVCMessageDigest@@XZ @ 76 NONAME ; class CMessageDigest * CSHA2::CopyL(void)
-	?Final@CSHA2@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 77 NONAME ; class TPtrC8 CSHA2::Final(class TDesC8 const &)
-	?Final@CSHA2@@UAE?AVTPtrC8@@XZ @ 78 NONAME ; class TPtrC8 CSHA2::Final(void)
-	?Hash@CSHA2@@UAE?AVTPtrC8@@ABVTDesC8@@@Z @ 79 NONAME ; class TPtrC8 CSHA2::Hash(class TDesC8 const &)
-	?HashSize@CSHA2@@UAEHXZ @ 80 NONAME ; int CSHA2::HashSize(void)
-	?NewL@CSHA2@@SAPAV1@W4TSH2Algo@@@Z @ 81 NONAME ; class CSHA2 * CSHA2::NewL(enum TSH2Algo)
-	?NewLC@CSHA2@@SAPAV1@W4TSH2Algo@@@Z @ 82 NONAME ; class CSHA2 * CSHA2::NewLC(enum TSH2Algo)
-	?ReplicateL@CSHA2@@UAEPAVCMessageDigest@@XZ @ 83 NONAME ; class CMessageDigest * CSHA2::ReplicateL(void)
-	?Reset@CSHA2@@UAEXXZ @ 84 NONAME ; void CSHA2::Reset(void)
-	?Update@CSHA2@@UAEXABVTDesC8@@@Z @ 85 NONAME ; void CSHA2::Update(class TDesC8 const &)
--- a/crypto/weakcrypto/bwins/PBE_v2U.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-EXPORTS
-	??0CPBAuthData@@IAE@XZ @ 1 NONAME ; CPBAuthData::CPBAuthData(void)
-	??0CPBEncryptParms@@IAE@XZ @ 2 NONAME ; CPBEncryptParms::CPBEncryptParms(void)
-	??0CPBEncryptionData@@IAE@XZ @ 3 NONAME ; CPBEncryptionData::CPBEncryptionData(void)
-	??0TPBPassword@@QAE@ABVTDesC16@@@Z @ 4 NONAME ; TPBPassword::TPBPassword(class TDesC16 const &)
-	??0TPBPassword@@QAE@ABVTDesC8@@@Z @ 5 NONAME ; TPBPassword::TPBPassword(class TDesC8 const &)
-	??8CPBAuthData@@QBEHABV0@@Z @ 6 NONAME ; int CPBAuthData::operator==(class CPBAuthData const &) const
-	?AuthData@CPBEncryptionData@@QBEABVCPBAuthData@@XZ @ 7 NONAME ; class CPBAuthData const & CPBEncryptionData::AuthData(void) const
-	?ChangePasswordL@CPBEncryptSet@@QAEXABVTPBPassword@@@Z @ 8 NONAME ; void CPBEncryptSet::ChangePasswordL(class TPBPassword const &)
-	?Cipher@CPBEncryptParms@@QBE?AW4TPBECipher@@XZ @ 9 NONAME ; enum TPBECipher CPBEncryptParms::Cipher(void) const
-	?DeriveKeyL@TPKCS5KDF@@SAXAAVTDes8@@ABVTDesC8@@1I@Z @ 10 NONAME ; void TPKCS5KDF::DeriveKeyL(class TDes8 &, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?EncryptParms@CPBEncryptionData@@QBEABVCPBEncryptParms@@XZ @ 11 NONAME ; class CPBEncryptParms const & CPBEncryptionData::EncryptParms(void) const
-	?EncryptedMasterKey@CPBEncryptSet@@QBEABVTDesC8@@XZ @ 12 NONAME ; class TDesC8 const & CPBEncryptSet::EncryptedMasterKey(void) const
-	?IV@CPBEncryptParms@@QBE?AVTPtrC8@@XZ @ 13 NONAME ; class TPtrC8 CPBEncryptParms::IV(void) const
-	?Iterations@CPBAuthData@@QBEHXZ @ 14 NONAME ; int CPBAuthData::Iterations(void) const
-	?Iterations@CPBEncryptParms@@QBEHXZ @ 15 NONAME ; int CPBEncryptParms::Iterations(void) const
-	?Key@CPBAuthData@@QBE?AVTPtrC8@@XZ @ 16 NONAME ; class TPtrC8 CPBAuthData::Key(void) const
-	?NewL@CPBAuthData@@SAPAV1@ABV1@@Z @ 17 NONAME ; class CPBAuthData * CPBAuthData::NewL(class CPBAuthData const &)
-	?NewL@CPBAuthData@@SAPAV1@ABVTDesC8@@0II@Z @ 18 NONAME ; class CPBAuthData * CPBAuthData::NewL(class TDesC8 const &, class TDesC8 const &, unsigned int, unsigned int)
-	?NewL@CPBDecryptorElement@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1@Z @ 19 NONAME ; class CPBDecryptorElement * CPBDecryptorElement::NewL(enum TPBECipher, class TDesC8 const &, class TDesC8 const &)
-	?NewL@CPBDecryptorSet@@SAPAV1@W4TPBECipher@@ABVTDesC8@@@Z @ 20 NONAME ; class CPBDecryptorSet * CPBDecryptorSet::NewL(enum TPBECipher, class TDesC8 const &)
-	?NewL@CPBEncryptElement@@SAPAV1@ABVCPBEncryptionData@@ABVTPBPassword@@@Z @ 21 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewL(class CPBEncryptionData const &, class TPBPassword const &)
-	?NewL@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@@Z @ 22 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewL(class TPBPassword const &)
-	?NewL@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@ABVCPBEncryptParms@@@Z @ 23 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewL(class TPBPassword const &, class CPBEncryptParms const &)
-	?NewL@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@W4TPBECipher@@@Z @ 24 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewL(class TPBPassword const &, enum TPBECipher)
-	?NewL@CPBEncryptParms@@SAPAV1@ABV1@@Z @ 25 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewL(class CPBEncryptParms const &)
-	?NewL@CPBEncryptParms@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1I@Z @ 26 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewL(enum TPBECipher, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?NewL@CPBEncryptSet@@SAPAV1@ABVCPBEncryptionData@@ABVTDesC8@@ABVTPBPassword@@@Z @ 27 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewL(class CPBEncryptionData const &, class TDesC8 const &, class TPBPassword const &)
-	?NewL@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@@Z @ 28 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewL(class TPBPassword const &)
-	?NewL@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@ABVCPBEncryptParms@@@Z @ 29 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewL(class TPBPassword const &, class CPBEncryptParms const &)
-	?NewL@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@W4TPBECipher@@@Z @ 30 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewL(class TPBPassword const &, enum TPBECipher)
-	?NewL@CPBEncryptionData@@SAPAV1@ABV1@@Z @ 31 NONAME ; class CPBEncryptionData * CPBEncryptionData::NewL(class CPBEncryptionData const &)
-	?NewL@CPBEncryptionData@@SAPAV1@ABVTDesC8@@W4TPBECipher@@000I@Z @ 32 NONAME ; class CPBEncryptionData * CPBEncryptionData::NewL(class TDesC8 const &, enum TPBECipher, class TDesC8 const &, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?NewL@CPBEncryptorElement@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1@Z @ 33 NONAME ; class CPBEncryptorElement * CPBEncryptorElement::NewL(enum TPBECipher, class TDesC8 const &, class TDesC8 const &)
-	?NewL@CPBEncryptorSet@@SAPAV1@W4TPBECipher@@ABVTDesC8@@@Z @ 34 NONAME ; class CPBEncryptorSet * CPBEncryptorSet::NewL(enum TPBECipher, class TDesC8 const &)
-	?NewLC@CPBAuthData@@SAPAV1@ABV1@@Z @ 35 NONAME ; class CPBAuthData * CPBAuthData::NewLC(class CPBAuthData const &)
-	?NewLC@CPBAuthData@@SAPAV1@ABVTDesC8@@0II@Z @ 36 NONAME ; class CPBAuthData * CPBAuthData::NewLC(class TDesC8 const &, class TDesC8 const &, unsigned int, unsigned int)
-	?NewLC@CPBDecryptorElement@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1@Z @ 37 NONAME ; class CPBDecryptorElement * CPBDecryptorElement::NewLC(enum TPBECipher, class TDesC8 const &, class TDesC8 const &)
-	?NewLC@CPBDecryptorSet@@SAPAV1@W4TPBECipher@@ABVTDesC8@@@Z @ 38 NONAME ; class CPBDecryptorSet * CPBDecryptorSet::NewLC(enum TPBECipher, class TDesC8 const &)
-	?NewLC@CPBEncryptElement@@SAPAV1@ABVCPBEncryptionData@@ABVTPBPassword@@@Z @ 39 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewLC(class CPBEncryptionData const &, class TPBPassword const &)
-	?NewLC@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@@Z @ 40 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewLC(class TPBPassword const &)
-	?NewLC@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@ABVCPBEncryptParms@@@Z @ 41 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewLC(class TPBPassword const &, class CPBEncryptParms const &)
-	?NewLC@CPBEncryptElement@@SAPAV1@ABVTPBPassword@@W4TPBECipher@@@Z @ 42 NONAME ; class CPBEncryptElement * CPBEncryptElement::NewLC(class TPBPassword const &, enum TPBECipher)
-	?NewLC@CPBEncryptParms@@SAPAV1@ABV1@@Z @ 43 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewLC(class CPBEncryptParms const &)
-	?NewLC@CPBEncryptParms@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1I@Z @ 44 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewLC(enum TPBECipher, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?NewLC@CPBEncryptSet@@SAPAV1@ABVCPBEncryptionData@@ABVTDesC8@@ABVTPBPassword@@@Z @ 45 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewLC(class CPBEncryptionData const &, class TDesC8 const &, class TPBPassword const &)
-	?NewLC@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@@Z @ 46 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewLC(class TPBPassword const &)
-	?NewLC@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@ABVCPBEncryptParms@@@Z @ 47 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewLC(class TPBPassword const &, class CPBEncryptParms const &)
-	?NewLC@CPBEncryptSet@@SAPAV1@ABVTPBPassword@@W4TPBECipher@@@Z @ 48 NONAME ; class CPBEncryptSet * CPBEncryptSet::NewLC(class TPBPassword const &, enum TPBECipher)
-	?NewLC@CPBEncryptionData@@SAPAV1@ABV1@@Z @ 49 NONAME ; class CPBEncryptionData * CPBEncryptionData::NewLC(class CPBEncryptionData const &)
-	?NewLC@CPBEncryptionData@@SAPAV1@ABVTDesC8@@W4TPBECipher@@000I@Z @ 50 NONAME ; class CPBEncryptionData * CPBEncryptionData::NewLC(class TDesC8 const &, enum TPBECipher, class TDesC8 const &, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?NewLC@CPBEncryptorElement@@SAPAV1@W4TPBECipher@@ABVTDesC8@@1@Z @ 51 NONAME ; class CPBEncryptorElement * CPBEncryptorElement::NewLC(enum TPBECipher, class TDesC8 const &, class TDesC8 const &)
-	?NewLC@CPBEncryptorSet@@SAPAV1@W4TPBECipher@@ABVTDesC8@@@Z @ 52 NONAME ; class CPBEncryptorSet * CPBEncryptorSet::NewLC(enum TPBECipher, class TDesC8 const &)
-	?Password@TPBPassword@@QBEABVTDesC8@@XZ @ 53 NONAME ; class TDesC8 const & TPBPassword::Password(void) const
-	?Salt@CPBAuthData@@QBE?AVTPtrC8@@XZ @ 54 NONAME ; class TPtrC8 CPBAuthData::Salt(void) const
-	?Salt@CPBEncryptParms@@QBE?AVTPtrC8@@XZ @ 55 NONAME ; class TPtrC8 CPBEncryptParms::Salt(void) const
-	?DeriveKeyL@PKCS12KDF@@SAXAAVTDes8@@W4TIDByteType@1@ABVTDesC8@@2I@Z @ 56 NONAME ; void PKCS12KDF::DeriveKeyL(class TDes8 &, enum PKCS12KDF::TIDByteType, class TDesC8 const &, class TDesC8 const &, unsigned int)
-	?GeneratePasswordLC@PKCS12KDF@@SAPAVHBufC8@@ABVTDesC16@@@Z @ 57 NONAME ; class HBufC8 * PKCS12KDF::GeneratePasswordLC(class TDesC16 const &)
-	?Kdf@CPBEncryptParms@@QBE?AW4TKdf@1@XZ @ 58 NONAME ; enum CPBEncryptParms::TKdf CPBEncryptParms::Kdf(void) const
-	?NewL@CPBEncryptParms@@SAPAV1@XZ @ 59 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewL(void)
-	?NewL@CPBEncryptionData@@SAPAV1@ABVTDesC8@@0ABVCPBEncryptParms@@@Z @ 60 NONAME ; class CPBEncryptionData * CPBEncryptionData::NewL(class TDesC8 const &, class TDesC8 const &, class CPBEncryptParms const &)
-	?NewLC@CPBEncryptParms@@SAPAV1@XZ @ 61 NONAME ; class CPBEncryptParms * CPBEncryptParms::NewLC(void)
-	?ResizeSaltL@CPBEncryptParms@@QAEXH@Z @ 62 NONAME ; void CPBEncryptParms::ResizeSaltL(int)
-	?SetCipher@CPBEncryptParms@@QAEXW4TPBECipher@@@Z @ 63 NONAME ; void CPBEncryptParms::SetCipher(enum TPBECipher)
-	?SetIV@CPBEncryptParms@@QAEXABVTDesC8@@@Z @ 64 NONAME ; void CPBEncryptParms::SetIV(class TDesC8 const &)
-	?SetIterations@CPBEncryptParms@@QAEXH@Z @ 65 NONAME ; void CPBEncryptParms::SetIterations(int)
-	?SetKdf@CPBEncryptParms@@QAEXW4TKdf@1@@Z @ 66 NONAME ; void CPBEncryptParms::SetKdf(enum CPBEncryptParms::TKdf)
-
--- a/crypto/weakcrypto/bwins/RANDOMU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-EXPORTS
-	?Random@TRandom@@SAXAAVTDes8@@@Z @ 1 NONAME ; public: static void __cdecl TRandom::Random(class TDes8 &)
-	RAND_bytes @ 2 NONAME
-	??0RRandomSession@@QAE@XZ @ 3 NONAME ; public: __thiscall RRandomSession::RRandomSession(void)
-	?ConnectL@RRandomSession@@QAEXXZ @ 4 NONAME ; public: void __thiscall RRandomSession::ConnectL(void)
-	?GetRandom@RRandomSession@@QAEHAAVTDes8@@@Z @ 5 NONAME ; public: int __thiscall RRandomSession::GetRandom(class TDes8 &)
-	??0CRandom@@IAE@XZ @ 6 NONAME ; protected: __thiscall CRandom::CRandom(void)
-	?DestroyThreadRandom@@YAXXZ @ 7 NONAME ; void __cdecl DestroyThreadRandom(void)
-	?GenerateRandomBytesL@@YAXAAVTDes8@@@Z @ 8 NONAME ; void __cdecl GenerateRandomBytesL(class TDes8 &)
-	?NewL@CSystemRandom@@SAPAV1@XZ @ 9 NONAME ; public: static class CSystemRandom * __cdecl CSystemRandom::NewL(void)
-	?NewLC@CSystemRandom@@SAPAV1@XZ @ 10 NONAME ; public: static class CSystemRandom * __cdecl CSystemRandom::NewLC(void)
-	?SetThreadRandomL@@YAXPAVCRandom@@@Z @ 11 NONAME ; void __cdecl SetThreadRandomL(class CRandom *)
-	?SetThreadRandomLC@@YAXPAVCRandom@@@Z @ 12 NONAME ; void __cdecl SetThreadRandomLC(class CRandom *)
-	?RandomL@TRandom@@SAXAAVTDes8@@@Z @ 13 NONAME ; void TRandom::RandomL(class TDes8 &)
-
--- a/crypto/weakcrypto/bwins/TPADDINGSERVERU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?NewServer@@YAHXZ @ 1 NONAME ; int __cdecl NewServer(void)
-
--- a/crypto/weakcrypto/bwins/cryptographyU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,262 +0,0 @@
-EXPORTS
-	??0CBlockChainingMode@@IAE@XZ @ 1 NONAME ; protected: __thiscall CBlockChainingMode::CBlockChainingMode(void)
-	??0CDH@@IAE@ABVCDHPrivateKey@@@Z @ 2 NONAME ; protected: __thiscall CDH::CDH(class CDHPrivateKey const &)
-	??0CDHKeyPair@@IAE@XZ @ 3 NONAME ; protected: __thiscall CDHKeyPair::CDHKeyPair(void)
-	??0CDHParameters@@IAE@AAVRInteger@@0@Z @ 4 NONAME ; protected: __thiscall CDHParameters::CDHParameters(class RInteger &,class RInteger &)
-	??0CDHParameters@@IAE@XZ @ 5 NONAME ; protected: __thiscall CDHParameters::CDHParameters(void)
-	??0CDHPrivateKey@@IAE@AAVRInteger@@00@Z @ 6 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(class RInteger &,class RInteger &,class RInteger &)
-	??0CDHPrivateKey@@IAE@XZ @ 7 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(void)
-	??0CDHPublicKey@@IAE@AAVRInteger@@00@Z @ 8 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(class RInteger &,class RInteger &,class RInteger &)
-	??0CDHPublicKey@@IAE@XZ @ 9 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(void)
-	??0CDSAKeyPair@@IAE@XZ @ 10 NONAME ; protected: __thiscall CDSAKeyPair::CDSAKeyPair(void)
-	??0CDSAParameters@@IAE@AAVRInteger@@00@Z @ 11 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAParameters@@IAE@XZ @ 12 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(void)
-	??0CDSAPrimeCertificate@@IAE@I@Z @ 13 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(unsigned int)
-	??0CDSAPrimeCertificate@@IAE@XZ @ 14 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(void)
-	??0CDSAPrivateKey@@IAE@AAVRInteger@@000@Z @ 15 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAPrivateKey@@IAE@XZ @ 16 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(void)
-	??0CDSAPublicKey@@IAE@AAVRInteger@@000@Z @ 17 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAPublicKey@@IAE@XZ @ 18 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(void)
-	??0CDSASignature@@IAE@AAVRInteger@@0@Z @ 19 NONAME ; protected: __thiscall CDSASignature::CDSASignature(class RInteger &,class RInteger &)
-	??0CDSASignature@@IAE@XZ @ 20 NONAME ; protected: __thiscall CDSASignature::CDSASignature(void)
-	??0CPadding@@IAE@H@Z @ 21 NONAME ; protected: __thiscall CPadding::CPadding(int)
-	??0CPaddingNone@@IAE@H@Z @ 22 NONAME ; protected: __thiscall CPaddingNone::CPaddingNone(int)
-	??0CPaddingPKCS1Encryption@@IAE@H@Z @ 23 NONAME ; protected: __thiscall CPaddingPKCS1Encryption::CPaddingPKCS1Encryption(int)
-	??0CPaddingPKCS1Signature@@IAE@H@Z @ 24 NONAME ; protected: __thiscall CPaddingPKCS1Signature::CPaddingPKCS1Signature(int)
-	??0CPaddingSSLv3@@IAE@H@Z @ 25 NONAME ; protected: __thiscall CPaddingSSLv3::CPaddingSSLv3(int)
-	??0CRSAKeyPair@@IAE@XZ @ 26 NONAME ; protected: __thiscall CRSAKeyPair::CRSAKeyPair(void)
-	??0CRSAParameters@@IAE@AAVRInteger@@@Z @ 27 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(class RInteger &)
-	??0CRSAParameters@@IAE@XZ @ 28 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(void)
-	??0CRSAPrivateKeyCRT@@IAE@AAVRInteger@@00000@Z @ 29 NONAME ; protected: __thiscall CRSAPrivateKeyCRT::CRSAPrivateKeyCRT(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CRSAPrivateKeyStandard@@IAE@AAVRInteger@@0@Z @ 30 NONAME ; protected: __thiscall CRSAPrivateKeyStandard::CRSAPrivateKeyStandard(class RInteger &,class RInteger &)
-	??0CRSAPublicKey@@IAE@AAVRInteger@@0@Z @ 31 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(class RInteger &,class RInteger &)
-	??0CRSAPublicKey@@IAE@XZ @ 32 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(void)
-	??0CRSASignature@@IAE@AAVRInteger@@@Z @ 33 NONAME ; protected: __thiscall CRSASignature::CRSASignature(class RInteger &)
-	??0CRijndael@@IAE@XZ @ 34 NONAME ; protected: __thiscall CRijndael::CRijndael(void)
-	??0MCryptoSystem@@IAE@XZ @ 35 NONAME ; protected: __thiscall MCryptoSystem::MCryptoSystem(void)
-	??0CDecryptor@@IAE@XZ @ 36 NONAME ; protected: __thiscall CDecryptor::CDecryptor(void)
-	??0CEncryptor@@IAE@XZ @ 37 NONAME ; protected: __thiscall CEncryptor::CEncryptor(void)
-	??0MSignatureSystem@@IAE@XZ @ 38 NONAME ; protected: __thiscall MSignatureSystem::MSignatureSystem(void)
-	??0RInteger@@QAE@XZ @ 39 NONAME ; public: __thiscall RInteger::RInteger(void)
-	??0TInteger@@IAE@XZ @ 40 NONAME ; protected: __thiscall TInteger::TInteger(void)
-	??1CBlockChainingMode@@MAE@XZ @ 41 NONAME ; protected: virtual __thiscall CBlockChainingMode::~CBlockChainingMode(void)
-	??1CBufferedTransformation@@UAE@XZ @ 42 NONAME ; public: virtual __thiscall CBufferedTransformation::~CBufferedTransformation(void)
-	??1CDHKeyPair@@UAE@XZ @ 43 NONAME ; public: virtual __thiscall CDHKeyPair::~CDHKeyPair(void)
-	??1CDHParameters@@UAE@XZ @ 44 NONAME ; public: virtual __thiscall CDHParameters::~CDHParameters(void)
-	??1CDHPrivateKey@@UAE@XZ @ 45 NONAME ; public: virtual __thiscall CDHPrivateKey::~CDHPrivateKey(void)
-	??1CDHPublicKey@@UAE@XZ @ 46 NONAME ; public: virtual __thiscall CDHPublicKey::~CDHPublicKey(void)
-	??1CDSAKeyPair@@UAE@XZ @ 47 NONAME ; public: virtual __thiscall CDSAKeyPair::~CDSAKeyPair(void)
-	??1CDSAParameters@@UAE@XZ @ 48 NONAME ; public: virtual __thiscall CDSAParameters::~CDSAParameters(void)
-	??1CDSAPrimeCertificate@@UAE@XZ @ 49 NONAME ; public: virtual __thiscall CDSAPrimeCertificate::~CDSAPrimeCertificate(void)
-	??1CDSAPrivateKey@@UAE@XZ @ 50 NONAME ; public: virtual __thiscall CDSAPrivateKey::~CDSAPrivateKey(void)
-	??1CDSAPublicKey@@UAE@XZ @ 51 NONAME ; public: virtual __thiscall CDSAPublicKey::~CDSAPublicKey(void)
-	??1CDSASignature@@UAE@XZ @ 52 NONAME ; public: virtual __thiscall CDSASignature::~CDSASignature(void)
-	??1CRSAKeyPair@@UAE@XZ @ 53 NONAME ; public: virtual __thiscall CRSAKeyPair::~CRSAKeyPair(void)
-	??1CRSAParameters@@UAE@XZ @ 54 NONAME ; public: virtual __thiscall CRSAParameters::~CRSAParameters(void)
-	??1CRSAPrivateKeyCRT@@UAE@XZ @ 55 NONAME ; public: virtual __thiscall CRSAPrivateKeyCRT::~CRSAPrivateKeyCRT(void)
-	??1CRSAPrivateKeyStandard@@UAE@XZ @ 56 NONAME ; public: virtual __thiscall CRSAPrivateKeyStandard::~CRSAPrivateKeyStandard(void)
-	??1CRSAPublicKey@@UAE@XZ @ 57 NONAME ; public: virtual __thiscall CRSAPublicKey::~CRSAPublicKey(void)
-	??1CRSASignature@@UAE@XZ @ 58 NONAME ; public: virtual __thiscall CRSASignature::~CRSASignature(void)
-	??1CRijndael@@UAE@XZ @ 59 NONAME ; public: virtual __thiscall CRijndael::~CRijndael(void)
-	??7TInteger@@QBEHXZ @ 60 NONAME ; public: int __thiscall TInteger::operator!(void)const 
-	??8CDSASignature@@QBEHABV0@@Z @ 61 NONAME ; public: int __thiscall CDSASignature::operator==(class CDSASignature const &)const 
-	??8CRSASignature@@QBEHABV0@@Z @ 62 NONAME ; public: int __thiscall CRSASignature::operator==(class CRSASignature const &)const 
-	??BRInteger@@QAE?AVTCleanupItem@@XZ @ 63 NONAME ; public: __thiscall RInteger::operator class TCleanupItem(void)
-	?AgreeL@CDH@@QBEPBVHBufC8@@ABVCDHPublicKey@@@Z @ 64 NONAME ; public: class HBufC8 const * __thiscall CDH::AgreeL(class CDHPublicKey const &)const 
-	?BitCount@TInteger@@QBEIXZ @ 65 NONAME ; public: unsigned int __thiscall TInteger::BitCount(void)const 
-	?BlockSize@CPadding@@QBEHXZ @ 66 NONAME ; public: int __thiscall CPadding::BlockSize(void)const 
-	?BlockSize@CStreamCipher@@UBEHXZ @ 67 NONAME ; public: virtual int __thiscall CStreamCipher::BlockSize(void)const 
-	?BlockTransformer@CBufferedTransformation@@QBEPAVCBlockTransformation@@XZ @ 68 NONAME ; public: class CBlockTransformation * __thiscall CBufferedTransformation::BlockTransformer(void)const 
-	?BufferLC@TInteger@@QBEPAVHBufC8@@XZ @ 69 NONAME ; public: class HBufC8 * __thiscall TInteger::BufferLC(void)const 
-	?ByteCount@TInteger@@QBEIXZ @ 70 NONAME ; public: unsigned int __thiscall TInteger::ByteCount(void)const 
-	?CallClose@RInteger@@SAXPAX@Z @ 71 NONAME ; public: static void __cdecl RInteger::CallClose(void *)
-	?Close@RInteger@@QAEXXZ @ 72 NONAME ; public: void __thiscall RInteger::Close(void)
-	?ConstructL@CBlockChainingMode@@IAEXPAVCBlockTransformation@@ABVTDesC8@@@Z @ 73 NONAME ; protected: void __thiscall CBlockChainingMode::ConstructL(class CBlockTransformation *,class TDesC8 const &)
-	?ConstructL@CDHKeyPair@@IAEXAAVRInteger@@00@Z @ 74 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &,class RInteger &)
-	?ConstructL@CDHKeyPair@@IAEXAAVRInteger@@0@Z @ 75 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &)
-	?Counter@CDSAPrimeCertificate@@QBEIXZ @ 76 NONAME ; public: unsigned int __thiscall CDSAPrimeCertificate::Counter(void)const 
-	?D@CRSAPrivateKeyStandard@@QBEABVTInteger@@XZ @ 77 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyStandard::D(void)const 
-	?DP@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 78 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DP(void)const 
-	?DQ@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 79 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DQ(void)const 
-	?E@CRSAPublicKey@@QBEABVTInteger@@XZ @ 80 NONAME ; public: class TInteger const & __thiscall CRSAPublicKey::E(void)const 
-	?G@CDHParameters@@QBEABVTInteger@@XZ @ 81 NONAME ; public: class TInteger const & __thiscall CDHParameters::G(void)const 
-	?G@CDSAParameters@@QBEABVTInteger@@XZ @ 82 NONAME ; public: class TInteger const & __thiscall CDSAParameters::G(void)const 
-	??0CRSASigner@@IAE@XZ @ 83 NONAME ; protected: __thiscall CRSASigner::CRSASigner(void)
-	?MaxFinalOutputLength@CStreamCipher@@UBEHH@Z @ 84 NONAME ; public: virtual int __thiscall CStreamCipher::MaxFinalOutputLength(int)const 
-	??0CRSAVerifier@@IAE@XZ @ 85 NONAME ; protected: __thiscall CRSAVerifier::CRSAVerifier(void)
-	?VerifyL@CRSAVerifier@@UBEHABVTDesC8@@ABVCRSASignature@@@Z @ 86 NONAME ; public virtual int CRSAVerifer::VerifyL(class TDesC8 const &,class CRSASignature const &)const
-	?MaxOutputLength@CStreamCipher@@UBEHH@Z @ 87 NONAME ; public: virtual int __thiscall CStreamCipher::MaxOutputLength(int)const 
-	?MaxPaddedLength@CPadding@@UBEHH@Z @ 88 NONAME ; public: virtual int __thiscall CPadding::MaxPaddedLength(int)const 
-	?MaxUnPaddedLength@CPadding@@UBEHH@Z @ 89 NONAME ; public: virtual int __thiscall CPadding::MaxUnPaddedLength(int)const 
-	?ModularExponentiateL@TInteger@@SA?AVRInteger@@ABV1@00@Z @ 90 NONAME ; public: static class RInteger  __cdecl TInteger::ModularExponentiateL(class TInteger const &,class TInteger const &,class TInteger const &)
-	?N@CDHParameters@@QBEABVTInteger@@XZ @ 91 NONAME ; public: class TInteger const & __thiscall CDHParameters::N(void)const 
-	?N@CRSAParameters@@QBEABVTInteger@@XZ @ 92 NONAME ; public: class TInteger const & __thiscall CRSAParameters::N(void)const 
-	?NewEmptyL@RInteger@@SA?AV1@I@Z @ 93 NONAME ; public: static class RInteger  __cdecl RInteger::NewEmptyL(unsigned int)
-	?NewL@C3DESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 94 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewL(class TDesC8 const &)
-	?NewL@C3DESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 95 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewL(class TDesC8 const &)
-	?NewL@CAESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 96 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewL(class TDesC8 const &)
-	?NewL@CAESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 97 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewL(class TDesC8 const &)
-	?NewL@CARC4@@SAPAV1@ABVTDesC8@@I@Z @ 98 NONAME ; public: static class CARC4 * __cdecl CARC4::NewL(class TDesC8 const &,unsigned int)
-	?NewL@CBufferedDecryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 99 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewL(class CBlockTransformation *,class CPadding *)
-	?NewL@CBufferedEncryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 100 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewL(class CBlockTransformation *,class CPadding *)
-	?NewL@CDESDecryptor@@SAPAV1@ABVTDesC8@@H@Z @ 101 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewL(class TDesC8 const &,int)
-	?NewL@CDESEncryptor@@SAPAV1@ABVTDesC8@@H@Z @ 102 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewL(class TDesC8 const &,int)
-	?NewL@CDH@@SAPAV1@ABVCDHPrivateKey@@@Z @ 103 NONAME ; public: static class CDH * __cdecl CDH::NewL(class CDHPrivateKey const &)
-	?NewL@CDHKeyPair@@SAPAV1@AAVRInteger@@00@Z @ 104 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDHKeyPair@@SAPAV1@AAVRInteger@@0@Z @ 105 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &)
-	?NewL@CDHPrivateKey@@SAPAV1@AAVRInteger@@00@Z @ 106 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDHPublicKey@@SAPAV1@AAVRInteger@@00@Z @ 107 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAKeyPair@@SAPAV1@I@Z @ 108 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewL(unsigned int)
-	?NewL@CDSAParameters@@SAPAV1@AAVRInteger@@00@Z @ 109 NONAME ; public: static class CDSAParameters * __cdecl CDSAParameters::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAPrimeCertificate@@SAPAV1@ABVTDesC8@@I@Z @ 110 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewL(class TDesC8 const &,unsigned int)
-	?NewL@CDSAPrivateKey@@SAPAV1@AAVRInteger@@000@Z @ 111 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAPublicKey@@SAPAV1@AAVRInteger@@000@Z @ 112 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSASignature@@SAPAV1@AAVRInteger@@0@Z @ 113 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewL(class RInteger &,class RInteger &)
-	?NewL@CDSASigner@@SAPAV1@ABVCDSAPrivateKey@@@Z @ 114 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewL(class CDSAPrivateKey const &)
-	?NewL@CDSAVerifier@@SAPAV1@ABVCDSAPublicKey@@@Z @ 115 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewL(class CDSAPublicKey const &)
-	?NewL@CModeCBCDecryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 116 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	?NewL@CModeCBCEncryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 117 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	?NewL@CNullCipher@@SAPAV1@XZ @ 118 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewL(void)
-	?NewL@CPaddingNone@@SAPAV1@H@Z @ 119 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewL(int)
-	?NewL@CPaddingPKCS1Encryption@@SAPAV1@H@Z @ 120 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewL(int)
-	?NewL@CPaddingPKCS1Signature@@SAPAV1@H@Z @ 121 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewL(int)
-	?NewL@CPaddingSSLv3@@SAPAV1@H@Z @ 122 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewL(int)
-	?NewL@CRC2Decryptor@@SAPAV1@ABVTDesC8@@H@Z @ 123 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewL(class TDesC8 const &,int)
-	?NewL@CRC2Encryptor@@SAPAV1@ABVTDesC8@@H@Z @ 124 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewL(class TDesC8 const &,int)
-	?NewL@CRSAKeyPair@@SAPAV1@IW4TRSAPrivateKeyType@@@Z @ 125 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewL(unsigned int,enum TRSAPrivateKeyType)
-	?NewL@CRSAPKCS1v15Decryptor@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 126 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewL(class CRSAPrivateKey const &)
-	?NewL@CRSAPKCS1v15Encryptor@@SAPAV1@ABVCRSAPublicKey@@@Z @ 127 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewL(class CRSAPublicKey const &)
-	?NewL@CRSAPKCS1v15Signer@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 128 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewL(class CRSAPrivateKey const &)
-	?NewL@CRSAPKCS1v15Verifier@@SAPAV1@ABVCRSAPublicKey@@@Z @ 129 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewL(class CRSAPublicKey const &)
-	?NewL@CRSAPrivateKeyCRT@@SAPAV1@AAVRInteger@@00000@Z @ 130 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CRSAPrivateKeyStandard@@SAPAV1@AAVRInteger@@0@Z @ 131 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewL(class RInteger &,class RInteger &)
-	?NewL@CRSAPublicKey@@SAPAV1@AAVRInteger@@0@Z @ 132 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewL(class RInteger &,class RInteger &)
-	?NewL@CRSASignature@@SAPAV1@AAVRInteger@@@Z @ 133 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewL(class RInteger &)
-	?NewL@RInteger@@SA?AV1@ABVTDesC8@@@Z @ 134 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TDesC8 const &)
-	?NewL@RInteger@@SA?AV1@ABVTInteger@@@Z @ 135 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TInteger const &)
-	?NewL@RInteger@@SA?AV1@H@Z @ 136 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(int)
-	?NewL@RInteger@@SA?AV1@I@Z @ 137 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(unsigned int)
-	?NewL@RInteger@@SA?AV1@XZ @ 138 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(void)
-	?NewLC@C3DESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 139 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewLC(class TDesC8 const &)
-	?NewLC@C3DESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 140 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewLC(class TDesC8 const &)
-	?NewLC@CAESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 141 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewLC(class TDesC8 const &)
-	?NewLC@CAESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 142 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewLC(class TDesC8 const &)
-	?NewLC@CARC4@@SAPAV1@ABVTDesC8@@I@Z @ 143 NONAME ; public: static class CARC4 * __cdecl CARC4::NewLC(class TDesC8 const &,unsigned int)
-	?NewLC@CBufferedDecryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 144 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	?NewLC@CBufferedEncryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 145 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	?NewLC@CDESDecryptor@@SAPAV1@ABVTDesC8@@H@Z @ 146 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CDESEncryptor@@SAPAV1@ABVTDesC8@@H@Z @ 147 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CDH@@SAPAV1@ABVCDHPrivateKey@@@Z @ 148 NONAME ; public: static class CDH * __cdecl CDH::NewLC(class CDHPrivateKey const &)
-	?NewLC@CDHKeyPair@@SAPAV1@AAVRInteger@@00@Z @ 149 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDHKeyPair@@SAPAV1@AAVRInteger@@0@Z @ 150 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CDHPrivateKey@@SAPAV1@AAVRInteger@@00@Z @ 151 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDHPublicKey@@SAPAV1@AAVRInteger@@00@Z @ 152 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSAKeyPair@@SAPAV1@I@Z @ 153 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewLC(unsigned int)
-	?NewLC@CDSAPrimeCertificate@@SAPAV1@ABVTDesC8@@I@Z @ 154 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewLC(class TDesC8 const &,unsigned int)
-	?NewLC@CDSAPrivateKey@@SAPAV1@AAVRInteger@@000@Z @ 155 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSAPublicKey@@SAPAV1@AAVRInteger@@000@Z @ 156 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSASignature@@SAPAV1@AAVRInteger@@0@Z @ 157 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CDSASigner@@SAPAV1@ABVCDSAPrivateKey@@@Z @ 158 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewLC(class CDSAPrivateKey const &)
-	?NewLC@CDSAVerifier@@SAPAV1@ABVCDSAPublicKey@@@Z @ 159 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewLC(class CDSAPublicKey const &)
-	?NewLC@CModeCBCDecryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 160 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	?NewLC@CModeCBCEncryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 161 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	?NewLC@CNullCipher@@SAPAV1@XZ @ 162 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewLC(void)
-	?NewLC@CPaddingNone@@SAPAV1@H@Z @ 163 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewLC(int)
-	?NewLC@CPaddingPKCS1Encryption@@SAPAV1@H@Z @ 164 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewLC(int)
-	?NewLC@CPaddingPKCS1Signature@@SAPAV1@H@Z @ 165 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewLC(int)
-	?NewLC@CPaddingSSLv3@@SAPAV1@H@Z @ 166 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewLC(int)
-	?NewLC@CRC2Decryptor@@SAPAV1@ABVTDesC8@@H@Z @ 167 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CRC2Encryptor@@SAPAV1@ABVTDesC8@@H@Z @ 168 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CRSAKeyPair@@SAPAV1@IW4TRSAPrivateKeyType@@@Z @ 169 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewLC(unsigned int,enum TRSAPrivateKeyType)
-	?NewLC@CRSAPKCS1v15Decryptor@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 170 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewLC(class CRSAPrivateKey const &)
-	?NewLC@CRSAPKCS1v15Encryptor@@SAPAV1@ABVCRSAPublicKey@@@Z @ 171 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewLC(class CRSAPublicKey const &)
-	?NewLC@CRSAPKCS1v15Signer@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 172 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewLC(class CRSAPrivateKey const &)
-	?NewLC@CRSAPKCS1v15Verifier@@SAPAV1@ABVCRSAPublicKey@@@Z @ 173 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewLC(class CRSAPublicKey const &)
-	?NewLC@CRSAPrivateKeyCRT@@SAPAV1@AAVRInteger@@00000@Z @ 174 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CRSAPrivateKeyStandard@@SAPAV1@AAVRInteger@@0@Z @ 175 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CRSAPublicKey@@SAPAV1@AAVRInteger@@0@Z @ 176 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CRSASignature@@SAPAV1@AAVRInteger@@@Z @ 177 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewLC(class RInteger &)
-	?NewPrimeL@RInteger@@SA?AV1@IW4TRandomAttribute@TInteger@@@Z @ 178 NONAME ; public: static class RInteger  __cdecl RInteger::NewPrimeL(unsigned int,int)
-	?NewRandomL@RInteger@@SA?AV1@ABVTInteger@@0@Z @ 179 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(class TInteger const &,class TInteger const &)
-	?NewRandomL@RInteger@@SA?AV1@IW4TRandomAttribute@TInteger@@@Z @ 180 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(unsigned int,int)
-	?P@CDSAParameters@@QBEABVTInteger@@XZ @ 181 NONAME ; public: class TInteger const & __thiscall CDSAParameters::P(void)const 
-	?P@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 182 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::P(void)const 
-	?PadL@CPadding@@QAEXABVTDesC8@@AAVTDes8@@@Z @ 183 NONAME ; public: void __thiscall CPadding::PadL(class TDesC8 const &,class TDes8 &)
-	?PrimeCertificate@CDSAKeyPair@@QBEABVCDSAPrimeCertificate@@XZ @ 184 NONAME ; public: class CDSAPrimeCertificate const & __thiscall CDSAKeyPair::PrimeCertificate(void)const 
-	?PrivateKey@CDHKeyPair@@QBEABVCDHPrivateKey@@XZ @ 185 NONAME ; public: class CDHPrivateKey const & __thiscall CDHKeyPair::PrivateKey(void)const 
-	?PrivateKey@CDSAKeyPair@@QBEABVCDSAPrivateKey@@XZ @ 186 NONAME ; public: class CDSAPrivateKey const & __thiscall CDSAKeyPair::PrivateKey(void)const 
-	?PrivateKey@CRSAKeyPair@@QBEABVCRSAPrivateKey@@XZ @ 187 NONAME ; public: class CRSAPrivateKey const & __thiscall CRSAKeyPair::PrivateKey(void)const 
-	?Process@CStreamCipher@@UAEXABVTDesC8@@AAVTDes8@@@Z @ 188 NONAME ; public: virtual void __thiscall CStreamCipher::Process(class TDesC8 const &,class TDes8 &)
-	?ProcessFinalL@CStreamCipher@@UAEXABVTDesC8@@AAVTDes8@@@Z @ 189 NONAME ; public: virtual void __thiscall CStreamCipher::ProcessFinalL(class TDesC8 const &,class TDes8 &)
-	?PublicKey@CDHKeyPair@@QBEABVCDHPublicKey@@XZ @ 190 NONAME ; public: class CDHPublicKey const & __thiscall CDHKeyPair::PublicKey(void)const 
-	?PublicKey@CDSAKeyPair@@QBEABVCDSAPublicKey@@XZ @ 191 NONAME ; public: class CDSAPublicKey const & __thiscall CDSAKeyPair::PublicKey(void)const 
-	?PublicKey@CRSAKeyPair@@QBEABVCRSAPublicKey@@XZ @ 192 NONAME ; public: class CRSAPublicKey const & __thiscall CRSAKeyPair::PublicKey(void)const 
-	?Q@CDSAParameters@@QBEABVTInteger@@XZ @ 193 NONAME ; public: class TInteger const & __thiscall CDSAParameters::Q(void)const 
-	?Q@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 194 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::Q(void)const 
-	?QInv@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 195 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::QInv(void)const 
-	?R@CDSASignature@@QBEABVTInteger@@XZ @ 196 NONAME ; public: class TInteger const & __thiscall CDSASignature::R(void)const 
-	?S@CDSASignature@@QBEABVTInteger@@XZ @ 197 NONAME ; public: class TInteger const & __thiscall CDSASignature::S(void)const 
-	?S@CRSASignature@@QBEABVTInteger@@XZ @ 198 NONAME ; public: class TInteger const & __thiscall CRSASignature::S(void)const 
-	?Seed@CDSAPrimeCertificate@@QBEABVTDesC8@@XZ @ 199 NONAME ; public: class TDesC8 const & __thiscall CDSAPrimeCertificate::Seed(void)const 
-	?SetBlockSize@CPadding@@QAEXH@Z @ 200 NONAME ; public: void __thiscall CPadding::SetBlockSize(int)
-	?Strength@TCrypto@@SA?AW4TStrength@1@XZ @ 201 NONAME ; public: static enum TCrypto::TStrength  __cdecl TCrypto::Strength(void)
-	?ValidPrimeLength@CDSAParameters@@SAHI@Z @ 202 NONAME ; public: static int __cdecl CDSAParameters::ValidPrimeLength(unsigned int)
-	?ValidatePrimesL@CDSAParameters@@QBEHABVCDSAPrimeCertificate@@@Z @ 203 NONAME ; public: int __thiscall CDSAParameters::ValidatePrimesL(class CDSAPrimeCertificate const &)const 
-	?WordCount@TInteger@@QBEIXZ @ 204 NONAME ; public: unsigned int __thiscall TInteger::WordCount(void)const 
-	?X@CDHPublicKey@@QBEABVTInteger@@XZ @ 205 NONAME ; public: class TInteger const & __thiscall CDHPublicKey::X(void)const 
-	?X@CDSAPrivateKey@@QBEABVTInteger@@XZ @ 206 NONAME ; public: class TInteger const & __thiscall CDSAPrivateKey::X(void)const 
-	?Y@CDSAPublicKey@@QBEABVTInteger@@XZ @ 207 NONAME ; public: class TInteger const & __thiscall CDSAPublicKey::Y(void)const 
-	?x@CDHPrivateKey@@QBEABVTInteger@@XZ @ 208 NONAME ; public: class TInteger const & __thiscall CDHPrivateKey::x(void)const 
-	?IsAsymmetricWeakEnoughL@TCrypto@@SAHH@Z @ 209 NONAME ; public: static int __cdecl TCrypto::IsAsymmetricWeakEnoughL(int)
-	?IsSymmetricWeakEnoughL@TCrypto@@SAHH@Z @ 210 NONAME ; public: static int __cdecl TCrypto::IsSymmetricWeakEnoughL(int)
-	??0CPaddingPKCS7@@IAE@H@Z @ 211 NONAME ; CPaddingPKCS7::CPaddingPKCS7(int)
-	?NewL@CPaddingPKCS7@@SAPAV1@H@Z @ 212 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewL(int)
-	?NewLC@CPaddingPKCS7@@SAPAV1@H@Z @ 213 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewLC(int)
-	?DHKeyIdentifierL@KeyIdentifierUtil@@SAXABVRInteger@@AAV?$TBuf8@$0BE@@@@Z @ 214 NONAME ; void KeyIdentifierUtil::DHKeyIdentifierL(class RInteger const &, class TBuf8<20> &)
-	?DSAKeyIdentifierL@KeyIdentifierUtil@@SAXABVCDSAPublicKey@@AAV?$TBuf8@$0BE@@@@Z @ 215 NONAME ; void KeyIdentifierUtil::DSAKeyIdentifierL(class CDSAPublicKey const &, class TBuf8<20> &)
-	?RSAKeyIdentifierL@KeyIdentifierUtil@@SAXABVCRSAPublicKey@@AAV?$TBuf8@$0BE@@@@Z @ 216 NONAME ; void KeyIdentifierUtil::RSAKeyIdentifierL(class CRSAPublicKey const &, class TBuf8<20> &)
-	??ETInteger@@QAEAAV0@XZ @ 217 NONAME ; class TInteger & TInteger::operator++(void)
-	??FTInteger@@QAEAAV0@XZ @ 218 NONAME ; class TInteger & TInteger::operator--(void)
-	?InverseModL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 219 NONAME ; class RInteger TInteger::InverseModL(class TInteger const &) const
-	?TimesL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 220 NONAME ; class RInteger TInteger::TimesL(class TInteger const &) const
-	?RInteger_placeholder1@@YAXXZ @ 221 NONAME ; void __cdecl RInteger_placeholder1(void)
-	?RInteger_placeholder2@@YAXXZ @ 222 NONAME ; void __cdecl RInteger_placeholder2(void)
-	??XTInteger@@QAEAAV0@ABV0@@Z @ 223 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(class TInteger const &)
-	??XTInteger@@QAEAAV0@H@Z @ 224 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(int)
-	??YTInteger@@QAEAAV0@ABV0@@Z @ 225 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(class TInteger const &)
-	??YTInteger@@QAEAAV0@H@Z @ 226 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(int)
-	??ZTInteger@@QAEAAV0@ABV0@@Z @ 227 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(class TInteger const &)
-	??ZTInteger@@QAEAAV0@H@Z @ 228 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(int)
-	??_0TInteger@@QAEAAV0@ABV0@@Z @ 229 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(class TInteger const &)
-	??_0TInteger@@QAEAAV0@H@Z @ 230 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(int)
-	??_1TInteger@@QAEAAV0@ABV0@@Z @ 231 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(class TInteger const &)
-	??_1TInteger@@QAEAAV0@H@Z @ 232 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(int)
-	??_2TInteger@@QAEAAV0@I@Z @ 233 NONAME ; public: class TInteger & __thiscall TInteger::operator>>=(unsigned int)
-	??_3TInteger@@QAEAAV0@I@Z @ 234 NONAME ; public: class TInteger & __thiscall TInteger::operator<<=(unsigned int)
-	?Bit@TInteger@@QBEHI@Z @ 235 NONAME ; public: int __thiscall TInteger::Bit(unsigned int)const 
-	?ConvertToLongL@TInteger@@QBEHXZ @ 236 NONAME ; public: int __thiscall TInteger::ConvertToLongL(void)const 
-	?DividedByL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 237 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(class TInteger const &)const 
-	?DividedByL@TInteger@@QBE?AVRInteger@@I@Z @ 238 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(unsigned int)const 
-	?ExponentiateL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 239 NONAME ; public: class RInteger  __thiscall TInteger::ExponentiateL(class TInteger const &)const 
-	?GCDL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 240 NONAME ; public: class RInteger  __thiscall TInteger::GCDL(class TInteger const &)const 
-	?IsPrimeL@TInteger@@QBEHXZ @ 241 NONAME ; public: int __thiscall TInteger::IsPrimeL(void)const 
-	?MinusL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 242 NONAME ; public: class RInteger  __thiscall TInteger::MinusL(class TInteger const &)const 
-	?ModularMultiplyL@TInteger@@SA?AVRInteger@@ABV1@00@Z @ 243 NONAME ; public: static class RInteger  __cdecl TInteger::ModularMultiplyL(class TInteger const &,class TInteger const &,class TInteger const &)
-	?ModuloL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 244 NONAME ; public: class RInteger  __thiscall TInteger::ModuloL(class TInteger const &)const 
-	?ModuloL@TInteger@@QBEII@Z @ 245 NONAME ; public: unsigned int __thiscall TInteger::ModuloL(unsigned int)const 
-	?Negate@TInteger@@QAEXXZ @ 246 NONAME ; public: void __thiscall TInteger::Negate(void)
-	?One@TInteger@@SAABV1@XZ @ 247 NONAME ; public: static class TInteger const & __cdecl TInteger::One(void)
-	?PlusL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 248 NONAME ; public: class RInteger  __thiscall TInteger::PlusL(class TInteger const &)const 
-	?SetBit@TInteger@@QAEXI@Z @ 249 NONAME ; public: void __thiscall TInteger::SetBit(unsigned int)
-	?SignedCompare@TInteger@@QBEHABV1@@Z @ 250 NONAME ; public: int __thiscall TInteger::SignedCompare(class TInteger const &)const 
-	?SignedCompare@TInteger@@QBEHH@Z @ 251 NONAME ; public: int __thiscall TInteger::SignedCompare(int)const 
-	?SquaredL@TInteger@@QBE?AVRInteger@@XZ @ 252 NONAME ; public: class RInteger  __thiscall TInteger::SquaredL(void)const 
-	?Two@TInteger@@SAABV1@XZ @ 253 NONAME ; public: static class TInteger const & __cdecl TInteger::Two(void)
-	?UnsignedCompare@TInteger@@QBEHABV1@@Z @ 254 NONAME ; public: int __thiscall TInteger::UnsignedCompare(class TInteger const &)const 
-	?Zero@TInteger@@SAABV1@XZ @ 255 NONAME ; public: static class TInteger const & __cdecl TInteger::Zero(void)
-	?CopyL@TInteger@@QAEXABV1@H@Z @ 256 NONAME ; public: void __thiscall TInteger::CopyL(class TInteger const &,int)
-	?CopyL@TInteger@@QAEXHH@Z @ 257 NONAME ; public: void __thiscall TInteger::CopyL(int,int)
-	?Set@TInteger@@QAEXABVRInteger@@@Z @ 258 NONAME ; public: void __thiscall TInteger::Set(class RInteger const &)
-	?IsWeakKey@CDES@@SAHABVTDesC8@@@Z @ 259 NONAME ; public: static int __cdecl CDES::IsWeakKey(class TDesC8 const &)
-        ?BufferWithNoTruncationLC@TInteger@@QBEPAVHBufC8@@XZ @ 260 NONAME ; class HBufC8 * TInteger::BufferWithNoTruncationLC(void) const
-
--- a/crypto/weakcrypto/bwins/cryptography_eka2U.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,262 +0,0 @@
-EXPORTS
-	??0CBlockChainingMode@@IAE@XZ @ 1 NONAME ; protected: __thiscall CBlockChainingMode::CBlockChainingMode(void)
-	??0CDH@@IAE@ABVCDHPrivateKey@@@Z @ 2 NONAME ; protected: __thiscall CDH::CDH(class CDHPrivateKey const &)
-	??0CDHKeyPair@@IAE@XZ @ 3 NONAME ; protected: __thiscall CDHKeyPair::CDHKeyPair(void)
-	??0CDHParameters@@IAE@AAVRInteger@@0@Z @ 4 NONAME ; protected: __thiscall CDHParameters::CDHParameters(class RInteger &,class RInteger &)
-	??0CDHParameters@@IAE@XZ @ 5 NONAME ; protected: __thiscall CDHParameters::CDHParameters(void)
-	??0CDHPrivateKey@@IAE@AAVRInteger@@00@Z @ 6 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(class RInteger &,class RInteger &,class RInteger &)
-	??0CDHPrivateKey@@IAE@XZ @ 7 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(void)
-	??0CDHPublicKey@@IAE@AAVRInteger@@00@Z @ 8 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(class RInteger &,class RInteger &,class RInteger &)
-	??0CDHPublicKey@@IAE@XZ @ 9 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(void)
-	??0CDSAKeyPair@@IAE@XZ @ 10 NONAME ; protected: __thiscall CDSAKeyPair::CDSAKeyPair(void)
-	??0CDSAParameters@@IAE@AAVRInteger@@00@Z @ 11 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAParameters@@IAE@XZ @ 12 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(void)
-	??0CDSAPrimeCertificate@@IAE@I@Z @ 13 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(unsigned int)
-	??0CDSAPrimeCertificate@@IAE@XZ @ 14 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(void)
-	??0CDSAPrivateKey@@IAE@AAVRInteger@@000@Z @ 15 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAPrivateKey@@IAE@XZ @ 16 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(void)
-	??0CDSAPublicKey@@IAE@AAVRInteger@@000@Z @ 17 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CDSAPublicKey@@IAE@XZ @ 18 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(void)
-	??0CDSASignature@@IAE@AAVRInteger@@0@Z @ 19 NONAME ; protected: __thiscall CDSASignature::CDSASignature(class RInteger &,class RInteger &)
-	??0CDSASignature@@IAE@XZ @ 20 NONAME ; protected: __thiscall CDSASignature::CDSASignature(void)
-	??0CPadding@@IAE@H@Z @ 21 NONAME ; protected: __thiscall CPadding::CPadding(int)
-	??0CPaddingNone@@IAE@H@Z @ 22 NONAME ; protected: __thiscall CPaddingNone::CPaddingNone(int)
-	??0CPaddingPKCS1Encryption@@IAE@H@Z @ 23 NONAME ; protected: __thiscall CPaddingPKCS1Encryption::CPaddingPKCS1Encryption(int)
-	??0CPaddingPKCS1Signature@@IAE@H@Z @ 24 NONAME ; protected: __thiscall CPaddingPKCS1Signature::CPaddingPKCS1Signature(int)
-	??0CPaddingSSLv3@@IAE@H@Z @ 25 NONAME ; protected: __thiscall CPaddingSSLv3::CPaddingSSLv3(int)
-	??0CRSAKeyPair@@IAE@XZ @ 26 NONAME ; protected: __thiscall CRSAKeyPair::CRSAKeyPair(void)
-	??0CRSAParameters@@IAE@AAVRInteger@@@Z @ 27 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(class RInteger &)
-	??0CRSAParameters@@IAE@XZ @ 28 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(void)
-	??0CRSAPrivateKeyCRT@@IAE@AAVRInteger@@00000@Z @ 29 NONAME ; protected: __thiscall CRSAPrivateKeyCRT::CRSAPrivateKeyCRT(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	??0CRSAPrivateKeyStandard@@IAE@AAVRInteger@@0@Z @ 30 NONAME ; protected: __thiscall CRSAPrivateKeyStandard::CRSAPrivateKeyStandard(class RInteger &,class RInteger &)
-	??0CRSAPublicKey@@IAE@AAVRInteger@@0@Z @ 31 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(class RInteger &,class RInteger &)
-	??0CRSAPublicKey@@IAE@XZ @ 32 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(void)
-	??0CRSASignature@@IAE@AAVRInteger@@@Z @ 33 NONAME ; protected: __thiscall CRSASignature::CRSASignature(class RInteger &)
-	??0CRijndael@@IAE@XZ @ 34 NONAME ; protected: __thiscall CRijndael::CRijndael(void)
-	??0MCryptoSystem@@IAE@XZ @ 35 NONAME ; protected: __thiscall MCryptoSystem::MCryptoSystem(void)
-	??0CDecryptor@@IAE@XZ @ 36 NONAME ; protected: __thiscall CDecryptor::CDecryptor(void)
-	??0CEncryptor@@IAE@XZ @ 37 NONAME ; protected: __thiscall CEncryptor::CEncryptor(void)
-	??0MSignatureSystem@@IAE@XZ @ 38 NONAME ; protected: __thiscall MSignatureSystem::MSignatureSystem(void)
-	??0RInteger@@QAE@XZ @ 39 NONAME ; public: __thiscall RInteger::RInteger(void)
-	??0TInteger@@IAE@XZ @ 40 NONAME ; protected: __thiscall TInteger::TInteger(void)
-	??1CBlockChainingMode@@MAE@XZ @ 41 NONAME ; protected: virtual __thiscall CBlockChainingMode::~CBlockChainingMode(void)
-	??1CBufferedTransformation@@UAE@XZ @ 42 NONAME ; public: virtual __thiscall CBufferedTransformation::~CBufferedTransformation(void)
-	??1CDHKeyPair@@UAE@XZ @ 43 NONAME ; public: virtual __thiscall CDHKeyPair::~CDHKeyPair(void)
-	??1CDHParameters@@UAE@XZ @ 44 NONAME ; public: virtual __thiscall CDHParameters::~CDHParameters(void)
-	??1CDHPrivateKey@@UAE@XZ @ 45 NONAME ; public: virtual __thiscall CDHPrivateKey::~CDHPrivateKey(void)
-	??1CDHPublicKey@@UAE@XZ @ 46 NONAME ; public: virtual __thiscall CDHPublicKey::~CDHPublicKey(void)
-	??1CDSAKeyPair@@UAE@XZ @ 47 NONAME ; public: virtual __thiscall CDSAKeyPair::~CDSAKeyPair(void)
-	??1CDSAParameters@@UAE@XZ @ 48 NONAME ; public: virtual __thiscall CDSAParameters::~CDSAParameters(void)
-	??1CDSAPrimeCertificate@@UAE@XZ @ 49 NONAME ; public: virtual __thiscall CDSAPrimeCertificate::~CDSAPrimeCertificate(void)
-	??1CDSAPrivateKey@@UAE@XZ @ 50 NONAME ; public: virtual __thiscall CDSAPrivateKey::~CDSAPrivateKey(void)
-	??1CDSAPublicKey@@UAE@XZ @ 51 NONAME ; public: virtual __thiscall CDSAPublicKey::~CDSAPublicKey(void)
-	??1CDSASignature@@UAE@XZ @ 52 NONAME ; public: virtual __thiscall CDSASignature::~CDSASignature(void)
-	??1CRSAKeyPair@@UAE@XZ @ 53 NONAME ; public: virtual __thiscall CRSAKeyPair::~CRSAKeyPair(void)
-	??1CRSAParameters@@UAE@XZ @ 54 NONAME ; public: virtual __thiscall CRSAParameters::~CRSAParameters(void)
-	??1CRSAPrivateKeyCRT@@UAE@XZ @ 55 NONAME ; public: virtual __thiscall CRSAPrivateKeyCRT::~CRSAPrivateKeyCRT(void)
-	??1CRSAPrivateKeyStandard@@UAE@XZ @ 56 NONAME ; public: virtual __thiscall CRSAPrivateKeyStandard::~CRSAPrivateKeyStandard(void)
-	??1CRSAPublicKey@@UAE@XZ @ 57 NONAME ; public: virtual __thiscall CRSAPublicKey::~CRSAPublicKey(void)
-	??1CRSASignature@@UAE@XZ @ 58 NONAME ; public: virtual __thiscall CRSASignature::~CRSASignature(void)
-	??1CRijndael@@UAE@XZ @ 59 NONAME ; public: virtual __thiscall CRijndael::~CRijndael(void)
-	??7TInteger@@QBEHXZ @ 60 NONAME ; public: int __thiscall TInteger::operator!(void)const 
-	??8CDSASignature@@QBEHABV0@@Z @ 61 NONAME ; public: int __thiscall CDSASignature::operator==(class CDSASignature const &)const 
-	??8CRSASignature@@QBEHABV0@@Z @ 62 NONAME ; public: int __thiscall CRSASignature::operator==(class CRSASignature const &)const 
-	??BRInteger@@QAE?AVTCleanupItem@@XZ @ 63 NONAME ; public: __thiscall RInteger::operator class TCleanupItem(void)
-	?AgreeL@CDH@@QBEPAVHBufC8@@ABVCDHPublicKey@@@Z @ 64 NONAME ; public: class HBufC8 * __thiscall CDH::AgreeL(class CDHPublicKey const &)const 
-	?BitCount@TInteger@@QBEIXZ @ 65 NONAME ; public: unsigned int __thiscall TInteger::BitCount(void)const 
-	?BlockSize@CPadding@@QBEHXZ @ 66 NONAME ; public: int __thiscall CPadding::BlockSize(void)const 
-	?BlockSize@CStreamCipher@@UBEHXZ @ 67 NONAME ; public: virtual int __thiscall CStreamCipher::BlockSize(void)const 
-	?BlockTransformer@CBufferedTransformation@@QBEPAVCBlockTransformation@@XZ @ 68 NONAME ; public: class CBlockTransformation * __thiscall CBufferedTransformation::BlockTransformer(void)const 
-	?BufferLC@TInteger@@QBEPAVHBufC8@@XZ @ 69 NONAME ; public: class HBufC8 * __thiscall TInteger::BufferLC(void)const 
-	?ByteCount@TInteger@@QBEIXZ @ 70 NONAME ; public: unsigned int __thiscall TInteger::ByteCount(void)const 
-	?CallClose@RInteger@@SAXPAX@Z @ 71 NONAME ; public: static void __cdecl RInteger::CallClose(void *)
-	?Close@RInteger@@QAEXXZ @ 72 NONAME ; public: void __thiscall RInteger::Close(void)
-	?ConstructL@CBlockChainingMode@@IAEXPAVCBlockTransformation@@ABVTDesC8@@@Z @ 73 NONAME ; protected: void __thiscall CBlockChainingMode::ConstructL(class CBlockTransformation *,class TDesC8 const &)
-	?ConstructL@CDHKeyPair@@IAEXAAVRInteger@@00@Z @ 74 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &,class RInteger &)
-	?ConstructL@CDHKeyPair@@IAEXAAVRInteger@@0@Z @ 75 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &)
-	?Counter@CDSAPrimeCertificate@@QBEIXZ @ 76 NONAME ; public: unsigned int __thiscall CDSAPrimeCertificate::Counter(void)const 
-	?D@CRSAPrivateKeyStandard@@QBEABVTInteger@@XZ @ 77 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyStandard::D(void)const 
-	?DP@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 78 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DP(void)const 
-	?DQ@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 79 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DQ(void)const 
-	?E@CRSAPublicKey@@QBEABVTInteger@@XZ @ 80 NONAME ; public: class TInteger const & __thiscall CRSAPublicKey::E(void)const 
-	?G@CDHParameters@@QBEABVTInteger@@XZ @ 81 NONAME ; public: class TInteger const & __thiscall CDHParameters::G(void)const 
-	?G@CDSAParameters@@QBEABVTInteger@@XZ @ 82 NONAME ; public: class TInteger const & __thiscall CDSAParameters::G(void)const 
-	??0CRSASigner@@IAE@XZ @ 83 NONAME ; protected: __thiscall CRSASigner::CRSASigner(void)
-	?MaxFinalOutputLength@CStreamCipher@@UBEHH@Z @ 84 NONAME ; public: virtual int __thiscall CStreamCipher::MaxFinalOutputLength(int)const 
-	??0CRSAVerifier@@IAE@XZ @ 85 NONAME ; protected: __thiscall CRSAVerifier::CRSAVerifier(void)
-	?VerifyL@CRSAVerifier@@UBEHABVTDesC8@@ABVCRSASignature@@@Z @ 86 NONAME ; public virtual int CRSAVerifer::VerifyL(class TDesC8 const &,class CRSASignature const &)const
-	?MaxOutputLength@CStreamCipher@@UBEHH@Z @ 87 NONAME ; public: virtual int __thiscall CStreamCipher::MaxOutputLength(int)const 
-	?MaxPaddedLength@CPadding@@UBEHH@Z @ 88 NONAME ; public: virtual int __thiscall CPadding::MaxPaddedLength(int)const 
-	?MaxUnPaddedLength@CPadding@@UBEHH@Z @ 89 NONAME ; public: virtual int __thiscall CPadding::MaxUnPaddedLength(int)const 
-	?ModularExponentiateL@TInteger@@SA?AVRInteger@@ABV1@00@Z @ 90 NONAME ; public: static class RInteger  __cdecl TInteger::ModularExponentiateL(class TInteger const &,class TInteger const &,class TInteger const &)
-	?N@CDHParameters@@QBEABVTInteger@@XZ @ 91 NONAME ; public: class TInteger const & __thiscall CDHParameters::N(void)const 
-	?N@CRSAParameters@@QBEABVTInteger@@XZ @ 92 NONAME ; public: class TInteger const & __thiscall CRSAParameters::N(void)const 
-	?NewEmptyL@RInteger@@SA?AV1@I@Z @ 93 NONAME ; public: static class RInteger  __cdecl RInteger::NewEmptyL(unsigned int)
-	?NewL@C3DESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 94 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewL(class TDesC8 const &)
-	?NewL@C3DESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 95 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewL(class TDesC8 const &)
-	?NewL@CAESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 96 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewL(class TDesC8 const &)
-	?NewL@CAESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 97 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewL(class TDesC8 const &)
-	?NewL@CARC4@@SAPAV1@ABVTDesC8@@I@Z @ 98 NONAME ; public: static class CARC4 * __cdecl CARC4::NewL(class TDesC8 const &,unsigned int)
-	?NewL@CBufferedDecryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 99 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewL(class CBlockTransformation *,class CPadding *)
-	?NewL@CBufferedEncryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 100 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewL(class CBlockTransformation *,class CPadding *)
-	?NewL@CDESDecryptor@@SAPAV1@ABVTDesC8@@H@Z @ 101 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewL(class TDesC8 const &,int)
-	?NewL@CDESEncryptor@@SAPAV1@ABVTDesC8@@H@Z @ 102 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewL(class TDesC8 const &,int)
-	?NewL@CDH@@SAPAV1@ABVCDHPrivateKey@@@Z @ 103 NONAME ; public: static class CDH * __cdecl CDH::NewL(class CDHPrivateKey const &)
-	?NewL@CDHKeyPair@@SAPAV1@AAVRInteger@@00@Z @ 104 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDHKeyPair@@SAPAV1@AAVRInteger@@0@Z @ 105 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &)
-	?NewL@CDHPrivateKey@@SAPAV1@AAVRInteger@@00@Z @ 106 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDHPublicKey@@SAPAV1@AAVRInteger@@00@Z @ 107 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAKeyPair@@SAPAV1@I@Z @ 108 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewL(unsigned int)
-	?NewL@CDSAParameters@@SAPAV1@AAVRInteger@@00@Z @ 109 NONAME ; public: static class CDSAParameters * __cdecl CDSAParameters::NewL(class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAPrimeCertificate@@SAPAV1@ABVTDesC8@@I@Z @ 110 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewL(class TDesC8 const &,unsigned int)
-	?NewL@CDSAPrivateKey@@SAPAV1@AAVRInteger@@000@Z @ 111 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSAPublicKey@@SAPAV1@AAVRInteger@@000@Z @ 112 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CDSASignature@@SAPAV1@AAVRInteger@@0@Z @ 113 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewL(class RInteger &,class RInteger &)
-	?NewL@CDSASigner@@SAPAV1@ABVCDSAPrivateKey@@@Z @ 114 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewL(class CDSAPrivateKey const &)
-	?NewL@CDSAVerifier@@SAPAV1@ABVCDSAPublicKey@@@Z @ 115 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewL(class CDSAPublicKey const &)
-	?NewL@CModeCBCDecryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 116 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	?NewL@CModeCBCEncryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 117 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	?NewL@CNullCipher@@SAPAV1@XZ @ 118 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewL(void)
-	?NewL@CPaddingNone@@SAPAV1@H@Z @ 119 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewL(int)
-	?NewL@CPaddingPKCS1Encryption@@SAPAV1@H@Z @ 120 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewL(int)
-	?NewL@CPaddingPKCS1Signature@@SAPAV1@H@Z @ 121 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewL(int)
-	?NewL@CPaddingSSLv3@@SAPAV1@H@Z @ 122 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewL(int)
-	?NewL@CRC2Decryptor@@SAPAV1@ABVTDesC8@@H@Z @ 123 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewL(class TDesC8 const &,int)
-	?NewL@CRC2Encryptor@@SAPAV1@ABVTDesC8@@H@Z @ 124 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewL(class TDesC8 const &,int)
-	?NewL@CRSAKeyPair@@SAPAV1@IW4TRSAPrivateKeyType@@@Z @ 125 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewL(unsigned int,enum TRSAPrivateKeyType)
-	?NewL@CRSAPKCS1v15Decryptor@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 126 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewL(class CRSAPrivateKey const &)
-	?NewL@CRSAPKCS1v15Encryptor@@SAPAV1@ABVCRSAPublicKey@@@Z @ 127 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewL(class CRSAPublicKey const &)
-	?NewL@CRSAPKCS1v15Signer@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 128 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewL(class CRSAPrivateKey const &)
-	?NewL@CRSAPKCS1v15Verifier@@SAPAV1@ABVCRSAPublicKey@@@Z @ 129 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewL(class CRSAPublicKey const &)
-	?NewL@CRSAPrivateKeyCRT@@SAPAV1@AAVRInteger@@00000@Z @ 130 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewL@CRSAPrivateKeyStandard@@SAPAV1@AAVRInteger@@0@Z @ 131 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewL(class RInteger &,class RInteger &)
-	?NewL@CRSAPublicKey@@SAPAV1@AAVRInteger@@0@Z @ 132 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewL(class RInteger &,class RInteger &)
-	?NewL@CRSASignature@@SAPAV1@AAVRInteger@@@Z @ 133 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewL(class RInteger &)
-	?NewL@RInteger@@SA?AV1@ABVTDesC8@@@Z @ 134 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TDesC8 const &)
-	?NewL@RInteger@@SA?AV1@ABVTInteger@@@Z @ 135 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TInteger const &)
-	?NewL@RInteger@@SA?AV1@H@Z @ 136 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(int)
-	?NewL@RInteger@@SA?AV1@I@Z @ 137 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(unsigned int)
-	?NewL@RInteger@@SA?AV1@XZ @ 138 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(void)
-	?NewLC@C3DESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 139 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewLC(class TDesC8 const &)
-	?NewLC@C3DESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 140 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewLC(class TDesC8 const &)
-	?NewLC@CAESDecryptor@@SAPAV1@ABVTDesC8@@@Z @ 141 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewLC(class TDesC8 const &)
-	?NewLC@CAESEncryptor@@SAPAV1@ABVTDesC8@@@Z @ 142 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewLC(class TDesC8 const &)
-	?NewLC@CARC4@@SAPAV1@ABVTDesC8@@I@Z @ 143 NONAME ; public: static class CARC4 * __cdecl CARC4::NewLC(class TDesC8 const &,unsigned int)
-	?NewLC@CBufferedDecryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 144 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	?NewLC@CBufferedEncryptor@@SAPAV1@PAVCBlockTransformation@@PAVCPadding@@@Z @ 145 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	?NewLC@CDESDecryptor@@SAPAV1@ABVTDesC8@@H@Z @ 146 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CDESEncryptor@@SAPAV1@ABVTDesC8@@H@Z @ 147 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CDH@@SAPAV1@ABVCDHPrivateKey@@@Z @ 148 NONAME ; public: static class CDH * __cdecl CDH::NewLC(class CDHPrivateKey const &)
-	?NewLC@CDHKeyPair@@SAPAV1@AAVRInteger@@00@Z @ 149 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDHKeyPair@@SAPAV1@AAVRInteger@@0@Z @ 150 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CDHPrivateKey@@SAPAV1@AAVRInteger@@00@Z @ 151 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDHPublicKey@@SAPAV1@AAVRInteger@@00@Z @ 152 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSAKeyPair@@SAPAV1@I@Z @ 153 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewLC(unsigned int)
-	?NewLC@CDSAPrimeCertificate@@SAPAV1@ABVTDesC8@@I@Z @ 154 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewLC(class TDesC8 const &,unsigned int)
-	?NewLC@CDSAPrivateKey@@SAPAV1@AAVRInteger@@000@Z @ 155 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSAPublicKey@@SAPAV1@AAVRInteger@@000@Z @ 156 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CDSASignature@@SAPAV1@AAVRInteger@@0@Z @ 157 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CDSASigner@@SAPAV1@ABVCDSAPrivateKey@@@Z @ 158 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewLC(class CDSAPrivateKey const &)
-	?NewLC@CDSAVerifier@@SAPAV1@ABVCDSAPublicKey@@@Z @ 159 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewLC(class CDSAPublicKey const &)
-	?NewLC@CModeCBCDecryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 160 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	?NewLC@CModeCBCEncryptor@@SAPAV1@PAVCBlockTransformation@@ABVTDesC8@@@Z @ 161 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	?NewLC@CNullCipher@@SAPAV1@XZ @ 162 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewLC(void)
-	?NewLC@CPaddingNone@@SAPAV1@H@Z @ 163 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewLC(int)
-	?NewLC@CPaddingPKCS1Encryption@@SAPAV1@H@Z @ 164 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewLC(int)
-	?NewLC@CPaddingPKCS1Signature@@SAPAV1@H@Z @ 165 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewLC(int)
-	?NewLC@CPaddingSSLv3@@SAPAV1@H@Z @ 166 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewLC(int)
-	?NewLC@CRC2Decryptor@@SAPAV1@ABVTDesC8@@H@Z @ 167 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CRC2Encryptor@@SAPAV1@ABVTDesC8@@H@Z @ 168 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewLC(class TDesC8 const &,int)
-	?NewLC@CRSAKeyPair@@SAPAV1@IW4TRSAPrivateKeyType@@@Z @ 169 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewLC(unsigned int,enum TRSAPrivateKeyType)
-	?NewLC@CRSAPKCS1v15Decryptor@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 170 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewLC(class CRSAPrivateKey const &)
-	?NewLC@CRSAPKCS1v15Encryptor@@SAPAV1@ABVCRSAPublicKey@@@Z @ 171 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewLC(class CRSAPublicKey const &)
-	?NewLC@CRSAPKCS1v15Signer@@SAPAV1@ABVCRSAPrivateKey@@@Z @ 172 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewLC(class CRSAPrivateKey const &)
-	?NewLC@CRSAPKCS1v15Verifier@@SAPAV1@ABVCRSAPublicKey@@@Z @ 173 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewLC(class CRSAPublicKey const &)
-	?NewLC@CRSAPrivateKeyCRT@@SAPAV1@AAVRInteger@@00000@Z @ 174 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	?NewLC@CRSAPrivateKeyStandard@@SAPAV1@AAVRInteger@@0@Z @ 175 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CRSAPublicKey@@SAPAV1@AAVRInteger@@0@Z @ 176 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewLC(class RInteger &,class RInteger &)
-	?NewLC@CRSASignature@@SAPAV1@AAVRInteger@@@Z @ 177 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewLC(class RInteger &)
-	?NewPrimeL@RInteger@@SA?AV1@IW4TRandomAttribute@TInteger@@@Z @ 178 NONAME ; public: static class RInteger  __cdecl RInteger::NewPrimeL(unsigned int,int)
-	?NewRandomL@RInteger@@SA?AV1@ABVTInteger@@0@Z @ 179 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(class TInteger const &,class TInteger const &)
-	?NewRandomL@RInteger@@SA?AV1@IW4TRandomAttribute@TInteger@@@Z @ 180 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(unsigned int,int)
-	?P@CDSAParameters@@QBEABVTInteger@@XZ @ 181 NONAME ; public: class TInteger const & __thiscall CDSAParameters::P(void)const 
-	?P@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 182 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::P(void)const 
-	?PadL@CPadding@@QAEXABVTDesC8@@AAVTDes8@@@Z @ 183 NONAME ; public: void __thiscall CPadding::PadL(class TDesC8 const &,class TDes8 &)
-	?PrimeCertificate@CDSAKeyPair@@QBEABVCDSAPrimeCertificate@@XZ @ 184 NONAME ; public: class CDSAPrimeCertificate const & __thiscall CDSAKeyPair::PrimeCertificate(void)const 
-	?PrivateKey@CDHKeyPair@@QBEABVCDHPrivateKey@@XZ @ 185 NONAME ; public: class CDHPrivateKey const & __thiscall CDHKeyPair::PrivateKey(void)const 
-	?PrivateKey@CDSAKeyPair@@QBEABVCDSAPrivateKey@@XZ @ 186 NONAME ; public: class CDSAPrivateKey const & __thiscall CDSAKeyPair::PrivateKey(void)const 
-	?PrivateKey@CRSAKeyPair@@QBEABVCRSAPrivateKey@@XZ @ 187 NONAME ; public: class CRSAPrivateKey const & __thiscall CRSAKeyPair::PrivateKey(void)const 
-	?Process@CStreamCipher@@UAEXABVTDesC8@@AAVTDes8@@@Z @ 188 NONAME ; public: virtual void __thiscall CStreamCipher::Process(class TDesC8 const &,class TDes8 &)
-	?ProcessFinalL@CStreamCipher@@UAEXABVTDesC8@@AAVTDes8@@@Z @ 189 NONAME ; public: virtual void __thiscall CStreamCipher::ProcessFinalL(class TDesC8 const &,class TDes8 &)
-	?PublicKey@CDHKeyPair@@QBEABVCDHPublicKey@@XZ @ 190 NONAME ; public: class CDHPublicKey const & __thiscall CDHKeyPair::PublicKey(void)const 
-	?PublicKey@CDSAKeyPair@@QBEABVCDSAPublicKey@@XZ @ 191 NONAME ; public: class CDSAPublicKey const & __thiscall CDSAKeyPair::PublicKey(void)const 
-	?PublicKey@CRSAKeyPair@@QBEABVCRSAPublicKey@@XZ @ 192 NONAME ; public: class CRSAPublicKey const & __thiscall CRSAKeyPair::PublicKey(void)const 
-	?Q@CDSAParameters@@QBEABVTInteger@@XZ @ 193 NONAME ; public: class TInteger const & __thiscall CDSAParameters::Q(void)const 
-	?Q@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 194 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::Q(void)const 
-	?QInv@CRSAPrivateKeyCRT@@QBEABVTInteger@@XZ @ 195 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::QInv(void)const 
-	?R@CDSASignature@@QBEABVTInteger@@XZ @ 196 NONAME ; public: class TInteger const & __thiscall CDSASignature::R(void)const 
-	?S@CDSASignature@@QBEABVTInteger@@XZ @ 197 NONAME ; public: class TInteger const & __thiscall CDSASignature::S(void)const 
-	?S@CRSASignature@@QBEABVTInteger@@XZ @ 198 NONAME ; public: class TInteger const & __thiscall CRSASignature::S(void)const 
-	?Seed@CDSAPrimeCertificate@@QBEABVTDesC8@@XZ @ 199 NONAME ; public: class TDesC8 const & __thiscall CDSAPrimeCertificate::Seed(void)const 
-	?SetBlockSize@CPadding@@QAEXH@Z @ 200 NONAME ; public: void __thiscall CPadding::SetBlockSize(int)
-	?Strength@TCrypto@@SA?AW4TStrength@1@XZ @ 201 NONAME ; public: static enum TCrypto::TStrength  __cdecl TCrypto::Strength(void)
-	?ValidPrimeLength@CDSAParameters@@SAHI@Z @ 202 NONAME ; public: static int __cdecl CDSAParameters::ValidPrimeLength(unsigned int)
-	?ValidatePrimesL@CDSAParameters@@QBEHABVCDSAPrimeCertificate@@@Z @ 203 NONAME ; public: int __thiscall CDSAParameters::ValidatePrimesL(class CDSAPrimeCertificate const &)const 
-	?WordCount@TInteger@@QBEIXZ @ 204 NONAME ; public: unsigned int __thiscall TInteger::WordCount(void)const 
-	?X@CDHPublicKey@@QBEABVTInteger@@XZ @ 205 NONAME ; public: class TInteger const & __thiscall CDHPublicKey::X(void)const 
-	?X@CDSAPrivateKey@@QBEABVTInteger@@XZ @ 206 NONAME ; public: class TInteger const & __thiscall CDSAPrivateKey::X(void)const 
-	?Y@CDSAPublicKey@@QBEABVTInteger@@XZ @ 207 NONAME ; public: class TInteger const & __thiscall CDSAPublicKey::Y(void)const 
-	?x@CDHPrivateKey@@QBEABVTInteger@@XZ @ 208 NONAME ; public: class TInteger const & __thiscall CDHPrivateKey::x(void)const 
-	?IsAsymmetricWeakEnoughL@TCrypto@@SAHH@Z @ 209 NONAME ; public: static int __cdecl TCrypto::IsAsymmetricWeakEnoughL(int)
-	?IsSymmetricWeakEnoughL@TCrypto@@SAHH@Z @ 210 NONAME ; public: static int __cdecl TCrypto::IsSymmetricWeakEnoughL(int)
-	??0CPaddingPKCS7@@IAE@H@Z @ 211 NONAME ; CPaddingPKCS7::CPaddingPKCS7(int)
-	?NewL@CPaddingPKCS7@@SAPAV1@H@Z @ 212 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewL(int)
-	?NewLC@CPaddingPKCS7@@SAPAV1@H@Z @ 213 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewLC(int)
-	?DHKeyIdentifierL@KeyIdentifierUtil@@SAXABVRInteger@@AAV?$TBuf8@$0BE@@@@Z @ 214 NONAME ; void KeyIdentifierUtil::DHKeyIdentifierL(class RInteger const &, class TBuf8<20> &)
-	?DSAKeyIdentifierL@KeyIdentifierUtil@@SAXABVCDSAPublicKey@@AAV?$TBuf8@$0BE@@@@Z @ 215 NONAME ; void KeyIdentifierUtil::DSAKeyIdentifierL(class CDSAPublicKey const &, class TBuf8<20> &)
-	?RSAKeyIdentifierL@KeyIdentifierUtil@@SAXABVCRSAPublicKey@@AAV?$TBuf8@$0BE@@@@Z @ 216 NONAME ; void KeyIdentifierUtil::RSAKeyIdentifierL(class CRSAPublicKey const &, class TBuf8<20> &)
-	??ETInteger@@QAEAAV0@XZ @ 217 NONAME ; class TInteger & TInteger::operator++(void)
-	??FTInteger@@QAEAAV0@XZ @ 218 NONAME ; class TInteger & TInteger::operator--(void)
-	?InverseModL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 219 NONAME ; class RInteger TInteger::InverseModL(class TInteger const &) const
-	?TimesL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 220 NONAME ; class RInteger TInteger::TimesL(class TInteger const &) const
-	??0RInteger@@QAE@ABV0@@Z @ 221 NONAME ; public: __thiscall RInteger::RInteger(class RInteger const &)
-	??4RInteger@@QAEAAV0@ABV0@@Z @ 222 NONAME ; public: class RInteger & __thiscall RInteger::operator=(class RInteger const &)
-	??XTInteger@@QAEAAV0@ABV0@@Z @ 223 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(class TInteger const &)
-	??XTInteger@@QAEAAV0@H@Z @ 224 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(int)
-	??YTInteger@@QAEAAV0@ABV0@@Z @ 225 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(class TInteger const &)
-	??YTInteger@@QAEAAV0@H@Z @ 226 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(int)
-	??ZTInteger@@QAEAAV0@ABV0@@Z @ 227 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(class TInteger const &)
-	??ZTInteger@@QAEAAV0@H@Z @ 228 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(int)
-	??_0TInteger@@QAEAAV0@ABV0@@Z @ 229 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(class TInteger const &)
-	??_0TInteger@@QAEAAV0@H@Z @ 230 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(int)
-	??_1TInteger@@QAEAAV0@ABV0@@Z @ 231 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(class TInteger const &)
-	??_1TInteger@@QAEAAV0@H@Z @ 232 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(int)
-	??_2TInteger@@QAEAAV0@I@Z @ 233 NONAME ; public: class TInteger & __thiscall TInteger::operator>>=(unsigned int)
-	??_3TInteger@@QAEAAV0@I@Z @ 234 NONAME ; public: class TInteger & __thiscall TInteger::operator<<=(unsigned int)
-	?Bit@TInteger@@QBEHI@Z @ 235 NONAME ; public: int __thiscall TInteger::Bit(unsigned int)const 
-	?ConvertToLongL@TInteger@@QBEHXZ @ 236 NONAME ; public: int __thiscall TInteger::ConvertToLongL(void)const 
-	?DividedByL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 237 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(class TInteger const &)const 
-	?DividedByL@TInteger@@QBE?AVRInteger@@I@Z @ 238 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(unsigned int)const 
-	?ExponentiateL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 239 NONAME ; public: class RInteger  __thiscall TInteger::ExponentiateL(class TInteger const &)const 
-	?GCDL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 240 NONAME ; public: class RInteger  __thiscall TInteger::GCDL(class TInteger const &)const 
-	?IsPrimeL@TInteger@@QBEHXZ @ 241 NONAME ; public: int __thiscall TInteger::IsPrimeL(void)const 
-	?MinusL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 242 NONAME ; public: class RInteger  __thiscall TInteger::MinusL(class TInteger const &)const 
-	?ModularMultiplyL@TInteger@@SA?AVRInteger@@ABV1@00@Z @ 243 NONAME ; public: static class RInteger  __cdecl TInteger::ModularMultiplyL(class TInteger const &,class TInteger const &,class TInteger const &)
-	?ModuloL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 244 NONAME ; public: class RInteger  __thiscall TInteger::ModuloL(class TInteger const &)const 
-	?ModuloL@TInteger@@QBEII@Z @ 245 NONAME ; public: unsigned int __thiscall TInteger::ModuloL(unsigned int)const 
-	?Negate@TInteger@@QAEXXZ @ 246 NONAME ; public: void __thiscall TInteger::Negate(void)
-	?One@TInteger@@SAABV1@XZ @ 247 NONAME ; public: static class TInteger const & __cdecl TInteger::One(void)
-	?PlusL@TInteger@@QBE?AVRInteger@@ABV1@@Z @ 248 NONAME ; public: class RInteger  __thiscall TInteger::PlusL(class TInteger const &)const 
-	?SetBit@TInteger@@QAEXI@Z @ 249 NONAME ; public: void __thiscall TInteger::SetBit(unsigned int)
-	?SignedCompare@TInteger@@QBEHABV1@@Z @ 250 NONAME ; public: int __thiscall TInteger::SignedCompare(class TInteger const &)const 
-	?SignedCompare@TInteger@@QBEHH@Z @ 251 NONAME ; public: int __thiscall TInteger::SignedCompare(int)const 
-	?SquaredL@TInteger@@QBE?AVRInteger@@XZ @ 252 NONAME ; public: class RInteger  __thiscall TInteger::SquaredL(void)const 
-	?Two@TInteger@@SAABV1@XZ @ 253 NONAME ; public: static class TInteger const & __cdecl TInteger::Two(void)
-	?UnsignedCompare@TInteger@@QBEHABV1@@Z @ 254 NONAME ; public: int __thiscall TInteger::UnsignedCompare(class TInteger const &)const 
-	?Zero@TInteger@@SAABV1@XZ @ 255 NONAME ; public: static class TInteger const & __cdecl TInteger::Zero(void)
-	?CopyL@TInteger@@QAEXABV1@H@Z @ 256 NONAME ; public: void __thiscall TInteger::CopyL(class TInteger const &,int)
-	?CopyL@TInteger@@QAEXHH@Z @ 257 NONAME ; public: void __thiscall TInteger::CopyL(int,int)
-	?Set@TInteger@@QAEXABVRInteger@@@Z @ 258 NONAME ; public: void __thiscall TInteger::Set(class RInteger const &)
-	?IsWeakKey@CDES@@SAHABVTDesC8@@@Z @ 259 NONAME ; public: static int __cdecl CDES::IsWeakKey(class TDesC8 const &)
-	?BufferWithNoTruncationLC@TInteger@@QBEPAVHBufC8@@XZ @ 260 NONAME ; class HBufC8 * TInteger::BufferWithNoTruncationLC(void) const
-
--- a/crypto/weakcrypto/bwins/cryptoswitchU.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,262 +0,0 @@
-EXPORTS
-	call_vector_1 @ 1 NONAME ; protected: __thiscall CBlockChainingMode::CBlockChainingMode(void)
-	call_vector_2 @ 2 NONAME ; protected: __thiscall CDH::CDH(class CDHPrivateKey const &)
-	call_vector_3 @ 3 NONAME ; protected: __thiscall CDHKeyPair::CDHKeyPair(void)
-	call_vector_4 @ 4 NONAME ; protected: __thiscall CDHParameters::CDHParameters(class RInteger &,class RInteger &)
-	call_vector_5 @ 5 NONAME ; protected: __thiscall CDHParameters::CDHParameters(void)
-	call_vector_6 @ 6 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_7 @ 7 NONAME ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(void)
-	call_vector_8 @ 8 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_9 @ 9 NONAME ; protected: __thiscall CDHPublicKey::CDHPublicKey(void)
-	call_vector_10 @ 10 NONAME ; protected: __thiscall CDSAKeyPair::CDSAKeyPair(void)
-	call_vector_11 @ 11 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_12 @ 12 NONAME ; protected: __thiscall CDSAParameters::CDSAParameters(void)
-	call_vector_13 @ 13 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(unsigned int)
-	call_vector_14 @ 14 NONAME ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(void)
-	call_vector_15 @ 15 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_16 @ 16 NONAME ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(void)
-	call_vector_17 @ 17 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_18 @ 18 NONAME ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(void)
-	call_vector_19 @ 19 NONAME ; protected: __thiscall CDSASignature::CDSASignature(class RInteger &,class RInteger &)
-	call_vector_20 @ 20 NONAME ; protected: __thiscall CDSASignature::CDSASignature(void)
-	call_vector_21 @ 21 NONAME ; protected: __thiscall CPadding::CPadding(int)
-	call_vector_22 @ 22 NONAME ; protected: __thiscall CPaddingNone::CPaddingNone(int)
-	call_vector_23 @ 23 NONAME ; protected: __thiscall CPaddingPKCS1Encryption::CPaddingPKCS1Encryption(int)
-	call_vector_24 @ 24 NONAME ; protected: __thiscall CPaddingPKCS1Signature::CPaddingPKCS1Signature(int)
-	call_vector_25 @ 25 NONAME ; protected: __thiscall CPaddingSSLv3::CPaddingSSLv3(int)
-	call_vector_26 @ 26 NONAME ; protected: __thiscall CRSAKeyPair::CRSAKeyPair(void)
-	call_vector_27 @ 27 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(class RInteger &)
-	call_vector_28 @ 28 NONAME ; protected: __thiscall CRSAParameters::CRSAParameters(void)
-	call_vector_29 @ 29 NONAME ; protected: __thiscall CRSAPrivateKeyCRT::CRSAPrivateKeyCRT(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_30 @ 30 NONAME ; protected: __thiscall CRSAPrivateKeyStandard::CRSAPrivateKeyStandard(class RInteger &,class RInteger &)
-	call_vector_31 @ 31 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(class RInteger &,class RInteger &)
-	call_vector_32 @ 32 NONAME ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(void)
-	call_vector_33 @ 33 NONAME ; protected: __thiscall CRSASignature::CRSASignature(class RInteger &)
-	call_vector_34 @ 34 NONAME ; protected: __thiscall CRijndael::CRijndael(void)
-	call_vector_35 @ 35 NONAME ; protected: __thiscall MCryptoSystem::MCryptoSystem(void)
-	call_vector_36 @ 36 NONAME ; protected: __thiscall CDecryptor::CDecryptor(void)
-	call_vector_37 @ 37 NONAME ; protected: __thiscall CEncryptor::CEncryptor(void)
-	call_vector_38 @ 38 NONAME ; protected: __thiscall MSignatureSystem::MSignatureSystem(void)
-	call_vector_39 @ 39 NONAME ; public: __thiscall RInteger::RInteger(void)
-	call_vector_40 @ 40 NONAME ; protected: __thiscall TInteger::TInteger(void)
-	call_vector_41 @ 41 NONAME ; protected: virtual __thiscall CBlockChainingMode::~CBlockChainingMode(void)
-	call_vector_42 @ 42 NONAME ; public: virtual __thiscall CBufferedTransformation::~CBufferedTransformation(void)
-	call_vector_43 @ 43 NONAME ; public: virtual __thiscall CDHKeyPair::~CDHKeyPair(void)
-	call_vector_44 @ 44 NONAME ; public: virtual __thiscall CDHParameters::~CDHParameters(void)
-	call_vector_45 @ 45 NONAME ; public: virtual __thiscall CDHPrivateKey::~CDHPrivateKey(void)
-	call_vector_46 @ 46 NONAME ; public: virtual __thiscall CDHPublicKey::~CDHPublicKey(void)
-	call_vector_47 @ 47 NONAME ; public: virtual __thiscall CDSAKeyPair::~CDSAKeyPair(void)
-	call_vector_48 @ 48 NONAME ; public: virtual __thiscall CDSAParameters::~CDSAParameters(void)
-	call_vector_49 @ 49 NONAME ; public: virtual __thiscall CDSAPrimeCertificate::~CDSAPrimeCertificate(void)
-	call_vector_50 @ 50 NONAME ; public: virtual __thiscall CDSAPrivateKey::~CDSAPrivateKey(void)
-	call_vector_51 @ 51 NONAME ; public: virtual __thiscall CDSAPublicKey::~CDSAPublicKey(void)
-	call_vector_52 @ 52 NONAME ; public: virtual __thiscall CDSASignature::~CDSASignature(void)
-	call_vector_53 @ 53 NONAME ; public: virtual __thiscall CRSAKeyPair::~CRSAKeyPair(void)
-	call_vector_54 @ 54 NONAME ; public: virtual __thiscall CRSAParameters::~CRSAParameters(void)
-	call_vector_55 @ 55 NONAME ; public: virtual __thiscall CRSAPrivateKeyCRT::~CRSAPrivateKeyCRT(void)
-	call_vector_56 @ 56 NONAME ; public: virtual __thiscall CRSAPrivateKeyStandard::~CRSAPrivateKeyStandard(void)
-	call_vector_57 @ 57 NONAME ; public: virtual __thiscall CRSAPublicKey::~CRSAPublicKey(void)
-	call_vector_58 @ 58 NONAME ; public: virtual __thiscall CRSASignature::~CRSASignature(void)
-	call_vector_59 @ 59 NONAME ; public: virtual __thiscall CRijndael::~CRijndael(void)
-	call_vector_60 @ 60 NONAME ; public: int __thiscall TInteger::operator!(void)const 
-	call_vector_61 @ 61 NONAME ; public: int __thiscall CDSASignature::operator==(class CDSASignature const &)const 
-	call_vector_62 @ 62 NONAME ; public: int __thiscall CRSASignature::operator==(class CRSASignature const &)const 
-	call_vector_63 @ 63 NONAME ; public: __thiscall RInteger::operator class TCleanupItem(void)
-	call_vector_64 @ 64 NONAME ; public: class HBufC8 const * __thiscall CDH::AgreeL(class CDHPublicKey const &)const 
-	call_vector_65 @ 65 NONAME ; public: unsigned int __thiscall TInteger::BitCount(void)const 
-	call_vector_66 @ 66 NONAME ; public: int __thiscall CPadding::BlockSize(void)const 
-	call_vector_67 @ 67 NONAME ; public: virtual int __thiscall CStreamCipher::BlockSize(void)const 
-	call_vector_68 @ 68 NONAME ; public: class CBlockTransformation * __thiscall CBufferedTransformation::BlockTransformer(void)const 
-	call_vector_69 @ 69 NONAME ; public: class HBufC8 * __thiscall TInteger::BufferLC(void)const 
-	call_vector_70 @ 70 NONAME ; public: unsigned int __thiscall TInteger::ByteCount(void)const 
-	call_vector_71 @ 71 NONAME ; public: static void __cdecl RInteger::CallClose(void *)
-	call_vector_72 @ 72 NONAME ; public: void __thiscall RInteger::Close(void)
-	call_vector_73 @ 73 NONAME ; protected: void __thiscall CBlockChainingMode::ConstructL(class CBlockTransformation *,class TDesC8 const &)
-	call_vector_74 @ 74 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_75 @ 75 NONAME ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &)
-	call_vector_76 @ 76 NONAME ; public: unsigned int __thiscall CDSAPrimeCertificate::Counter(void)const 
-	call_vector_77 @ 77 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyStandard::D(void)const 
-	call_vector_78 @ 78 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DP(void)const 
-	call_vector_79 @ 79 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DQ(void)const 
-	call_vector_80 @ 80 NONAME ; public: class TInteger const & __thiscall CRSAPublicKey::E(void)const 
-	call_vector_81 @ 81 NONAME ; public: class TInteger const & __thiscall CDHParameters::G(void)const 
-	call_vector_82 @ 82 NONAME ; public: class TInteger const & __thiscall CDSAParameters::G(void)const 
-	call_vector_83 @ 83 NONAME ; protected: __thiscall CRSASigner::CRSASigner(void)
-	call_vector_84 @ 84 NONAME ; public: virtual int __thiscall CStreamCipher::MaxFinalOutputLength(int)const 
-	call_vector_85 @ 85 NONAME ; protected: __thiscall CRSAVerifier::CRSAVerifier(void)
-	call_vector_86 @ 86 NONAME ; public virtual int CRSAVerifer::VerifyL(class TDesC8 const &,class CRSASignature const &)const
-	call_vector_87 @ 87 NONAME ; public: virtual int __thiscall CStreamCipher::MaxOutputLength(int)const 
-	call_vector_88 @ 88 NONAME ; public: virtual int __thiscall CPadding::MaxPaddedLength(int)const 
-	call_vector_89 @ 89 NONAME ; public: virtual int __thiscall CPadding::MaxUnPaddedLength(int)const 
-	call_vector_90 @ 90 NONAME ; public: static class RInteger  __cdecl TInteger::ModularExponentiateL(class TInteger const &,class TInteger const &,class TInteger const &)
-	call_vector_91 @ 91 NONAME ; public: class TInteger const & __thiscall CDHParameters::N(void)const 
-	call_vector_92 @ 92 NONAME ; public: class TInteger const & __thiscall CRSAParameters::N(void)const 
-	call_vector_93 @ 93 NONAME ; public: static class RInteger  __cdecl RInteger::NewEmptyL(unsigned int)
-	call_vector_94 @ 94 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewL(class TDesC8 const &)
-	call_vector_95 @ 95 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewL(class TDesC8 const &)
-	call_vector_96 @ 96 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewL(class TDesC8 const &)
-	call_vector_97 @ 97 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewL(class TDesC8 const &)
-	call_vector_98 @ 98 NONAME ; public: static class CARC4 * __cdecl CARC4::NewL(class TDesC8 const &,unsigned int)
-	call_vector_99 @ 99 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewL(class CBlockTransformation *,class CPadding *)
-	call_vector_100 @ 100 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewL(class CBlockTransformation *,class CPadding *)
-	call_vector_101 @ 101 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewL(class TDesC8 const &,int)
-	call_vector_102 @ 102 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewL(class TDesC8 const &,int)
-	call_vector_103 @ 103 NONAME ; public: static class CDH * __cdecl CDH::NewL(class CDHPrivateKey const &)
-	call_vector_104 @ 104 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_105 @ 105 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &)
-	call_vector_106 @ 106 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_107 @ 107 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_108 @ 108 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewL(unsigned int)
-	call_vector_109 @ 109 NONAME ; public: static class CDSAParameters * __cdecl CDSAParameters::NewL(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_110 @ 110 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewL(class TDesC8 const &,unsigned int)
-	call_vector_111 @ 111 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_112 @ 112 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_113 @ 113 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewL(class RInteger &,class RInteger &)
-	call_vector_114 @ 114 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewL(class CDSAPrivateKey const &)
-	call_vector_115 @ 115 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewL(class CDSAPublicKey const &)
-	call_vector_116 @ 116 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	call_vector_117 @ 117 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	call_vector_118 @ 118 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewL(void)
-	call_vector_119 @ 119 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewL(int)
-	call_vector_120 @ 120 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewL(int)
-	call_vector_121 @ 121 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewL(int)
-	call_vector_122 @ 122 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewL(int)
-	call_vector_123 @ 123 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewL(class TDesC8 const &,int)
-	call_vector_124 @ 124 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewL(class TDesC8 const &,int)
-	call_vector_125 @ 125 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewL(unsigned int,enum TRSAPrivateKeyType)
-	call_vector_126 @ 126 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewL(class CRSAPrivateKey const &)
-	call_vector_127 @ 127 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewL(class CRSAPublicKey const &)
-	call_vector_128 @ 128 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewL(class CRSAPrivateKey const &)
-	call_vector_129 @ 129 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewL(class CRSAPublicKey const &)
-	call_vector_130 @ 130 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_131 @ 131 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewL(class RInteger &,class RInteger &)
-	call_vector_132 @ 132 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewL(class RInteger &,class RInteger &)
-	call_vector_133 @ 133 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewL(class RInteger &)
-	call_vector_134 @ 134 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TDesC8 const &)
-	call_vector_135 @ 135 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(class TInteger const &)
-	call_vector_136 @ 136 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(int)
-	call_vector_137 @ 137 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(unsigned int)
-	call_vector_138 @ 138 NONAME ; public: static class RInteger  __cdecl RInteger::NewL(void)
-	call_vector_139 @ 139 NONAME ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewLC(class TDesC8 const &)
-	call_vector_140 @ 140 NONAME ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewLC(class TDesC8 const &)
-	call_vector_141 @ 141 NONAME ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewLC(class TDesC8 const &)
-	call_vector_142 @ 142 NONAME ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewLC(class TDesC8 const &)
-	call_vector_143 @ 143 NONAME ; public: static class CARC4 * __cdecl CARC4::NewLC(class TDesC8 const &,unsigned int)
-	call_vector_144 @ 144 NONAME ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	call_vector_145 @ 145 NONAME ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	call_vector_146 @ 146 NONAME ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewLC(class TDesC8 const &,int)
-	call_vector_147 @ 147 NONAME ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewLC(class TDesC8 const &,int)
-	call_vector_148 @ 148 NONAME ; public: static class CDH * __cdecl CDH::NewLC(class CDHPrivateKey const &)
-	call_vector_149 @ 149 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_150 @ 150 NONAME ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &)
-	call_vector_151 @ 151 NONAME ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_152 @ 152 NONAME ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	call_vector_153 @ 153 NONAME ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewLC(unsigned int)
-	call_vector_154 @ 154 NONAME ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewLC(class TDesC8 const &,unsigned int)
-	call_vector_155 @ 155 NONAME ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_156 @ 156 NONAME ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_157 @ 157 NONAME ; public: static class CDSASignature * __cdecl CDSASignature::NewLC(class RInteger &,class RInteger &)
-	call_vector_158 @ 158 NONAME ; public: static class CDSASigner * __cdecl CDSASigner::NewLC(class CDSAPrivateKey const &)
-	call_vector_159 @ 159 NONAME ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewLC(class CDSAPublicKey const &)
-	call_vector_160 @ 160 NONAME ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	call_vector_161 @ 161 NONAME ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	call_vector_162 @ 162 NONAME ; public: static class CNullCipher * __cdecl CNullCipher::NewLC(void)
-	call_vector_163 @ 163 NONAME ; public: static class CPaddingNone * __cdecl CPaddingNone::NewLC(int)
-	call_vector_164 @ 164 NONAME ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewLC(int)
-	call_vector_165 @ 165 NONAME ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewLC(int)
-	call_vector_166 @ 166 NONAME ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewLC(int)
-	call_vector_167 @ 167 NONAME ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewLC(class TDesC8 const &,int)
-	call_vector_168 @ 168 NONAME ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewLC(class TDesC8 const &,int)
-	call_vector_169 @ 169 NONAME ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewLC(unsigned int,enum TRSAPrivateKeyType)
-	call_vector_170 @ 170 NONAME ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewLC(class CRSAPrivateKey const &)
-	call_vector_171 @ 171 NONAME ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewLC(class CRSAPublicKey const &)
-	call_vector_172 @ 172 NONAME ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewLC(class CRSAPrivateKey const &)
-	call_vector_173 @ 173 NONAME ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewLC(class CRSAPublicKey const &)
-	call_vector_174 @ 174 NONAME ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	call_vector_175 @ 175 NONAME ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewLC(class RInteger &,class RInteger &)
-	call_vector_176 @ 176 NONAME ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewLC(class RInteger &,class RInteger &)
-	call_vector_177 @ 177 NONAME ; public: static class CRSASignature * __cdecl CRSASignature::NewLC(class RInteger &)
-	call_vector_178 @ 178 NONAME ; public: static class RInteger  __cdecl RInteger::NewPrimeL(unsigned int,int)
-	call_vector_179 @ 179 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(class TInteger const &,class TInteger const &)
-	call_vector_180 @ 180 NONAME ; public: static class RInteger  __cdecl RInteger::NewRandomL(unsigned int,int)
-	call_vector_181 @ 181 NONAME ; public: class TInteger const & __thiscall CDSAParameters::P(void)const 
-	call_vector_182 @ 182 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::P(void)const 
-	call_vector_183 @ 183 NONAME ; public: void __thiscall CPadding::PadL(class TDesC8 const &,class TDes8 &)
-	call_vector_184 @ 184 NONAME ; public: class CDSAPrimeCertificate const & __thiscall CDSAKeyPair::PrimeCertificate(void)const 
-	call_vector_185 @ 185 NONAME ; public: class CDHPrivateKey const & __thiscall CDHKeyPair::PrivateKey(void)const 
-	call_vector_186 @ 186 NONAME ; public: class CDSAPrivateKey const & __thiscall CDSAKeyPair::PrivateKey(void)const 
-	call_vector_187 @ 187 NONAME ; public: class CRSAPrivateKey const & __thiscall CRSAKeyPair::PrivateKey(void)const 
-	call_vector_188 @ 188 NONAME ; public: virtual void __thiscall CStreamCipher::Process(class TDesC8 const &,class TDes8 &)
-	call_vector_189 @ 189 NONAME ; public: virtual void __thiscall CStreamCipher::ProcessFinalL(class TDesC8 const &,class TDes8 &)
-	call_vector_190 @ 190 NONAME ; public: class CDHPublicKey const & __thiscall CDHKeyPair::PublicKey(void)const 
-	call_vector_191 @ 191 NONAME ; public: class CDSAPublicKey const & __thiscall CDSAKeyPair::PublicKey(void)const 
-	call_vector_192 @ 192 NONAME ; public: class CRSAPublicKey const & __thiscall CRSAKeyPair::PublicKey(void)const 
-	call_vector_193 @ 193 NONAME ; public: class TInteger const & __thiscall CDSAParameters::Q(void)const 
-	call_vector_194 @ 194 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::Q(void)const 
-	call_vector_195 @ 195 NONAME ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::QInv(void)const 
-	call_vector_196 @ 196 NONAME ; public: class TInteger const & __thiscall CDSASignature::R(void)const 
-	call_vector_197 @ 197 NONAME ; public: class TInteger const & __thiscall CDSASignature::S(void)const 
-	call_vector_198 @ 198 NONAME ; public: class TInteger const & __thiscall CRSASignature::S(void)const 
-	call_vector_199 @ 199 NONAME ; public: class TDesC8 const & __thiscall CDSAPrimeCertificate::Seed(void)const 
-	call_vector_200 @ 200 NONAME ; public: void __thiscall CPadding::SetBlockSize(int)
-	call_vector_201 @ 201 NONAME ; public: static enum TCrypto::TStrength  __cdecl TCrypto::Strength(void)
-	call_vector_202 @ 202 NONAME ; public: static int __cdecl CDSAParameters::ValidPrimeLength(unsigned int)
-	call_vector_203 @ 203 NONAME ; public: int __thiscall CDSAParameters::ValidatePrimesL(class CDSAPrimeCertificate const &)const 
-	call_vector_204 @ 204 NONAME ; public: unsigned int __thiscall TInteger::WordCount(void)const 
-	call_vector_205 @ 205 NONAME ; public: class TInteger const & __thiscall CDHPublicKey::X(void)const 
-	call_vector_206 @ 206 NONAME ; public: class TInteger const & __thiscall CDSAPrivateKey::X(void)const 
-	call_vector_207 @ 207 NONAME ; public: class TInteger const & __thiscall CDSAPublicKey::Y(void)const 
-	call_vector_208 @ 208 NONAME ; public: class TInteger const & __thiscall CDHPrivateKey::x(void)const 
-	call_vector_209 @ 209 NONAME ; public: static int __cdecl TCrypto::IsAsymmetricWeakEnoughL(int)
-	call_vector_210 @ 210 NONAME ; public: static int __cdecl TCrypto::IsSymmetricWeakEnoughL(int)
-	call_vector_211 @ 211 NONAME ; CPaddingPKCS7::CPaddingPKCS7(int)
-	call_vector_212 @ 212 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewL(int)
-	call_vector_213 @ 213 NONAME ; class CPaddingPKCS7 * CPaddingPKCS7::NewLC(int)
-	call_vector_214 @ 214 NONAME ; void KeyIdentifierUtil::DHKeyIdentifierL(class RInteger const &, class TBuf8<20> &)
-	call_vector_215 @ 215 NONAME ; void KeyIdentifierUtil::DSAKeyIdentifierL(class CDSAPublicKey const &, class TBuf8<20> &)
-	call_vector_216 @ 216 NONAME ; void KeyIdentifierUtil::RSAKeyIdentifierL(class CRSAPublicKey const &, class TBuf8<20> &)
-	call_vector_217 @ 217 NONAME ; class TInteger & TInteger::operator++(void)
-	call_vector_218 @ 218 NONAME ; class TInteger & TInteger::operator--(void)
-	call_vector_219 @ 219 NONAME ; class RInteger TInteger::InverseModL(class TInteger const &) const
-	call_vector_220 @ 220 NONAME ; class RInteger TInteger::TimesL(class TInteger const &) const
-	call_vector_221 @ 221 NONAME ; public: __thiscall RInteger::RInteger(class RInteger const &)
-	call_vector_222 @ 222 NONAME ; public: class RInteger & __thiscall RInteger::operator=(class RInteger const &)
-	call_vector_223 @ 223 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(class TInteger const &)
-	call_vector_224 @ 224 NONAME ; public: class TInteger & __thiscall TInteger::operator*=(int)
-	call_vector_225 @ 225 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(class TInteger const &)
-	call_vector_226 @ 226 NONAME ; public: class TInteger & __thiscall TInteger::operator+=(int)
-	call_vector_227 @ 227 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(class TInteger const &)
-	call_vector_228 @ 228 NONAME ; public: class TInteger & __thiscall TInteger::operator-=(int)
-	call_vector_229 @ 229 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(class TInteger const &)
-	call_vector_230 @ 230 NONAME ; public: class TInteger & __thiscall TInteger::operator/=(int)
-	call_vector_231 @ 231 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(class TInteger const &)
-	call_vector_232 @ 232 NONAME ; public: class TInteger & __thiscall TInteger::operator%=(int)
-	call_vector_233 @ 233 NONAME ; public: class TInteger & __thiscall TInteger::operator>>=(unsigned int)
-	call_vector_234 @ 234 NONAME ; public: class TInteger & __thiscall TInteger::operator<<=(unsigned int)
-	call_vector_235 @ 235 NONAME ; public: int __thiscall TInteger::Bit(unsigned int)const 
-	call_vector_236 @ 236 NONAME ; public: int __thiscall TInteger::ConvertToLongL(void)const 
-	call_vector_237 @ 237 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(class TInteger const &)const 
-	call_vector_238 @ 238 NONAME ; public: class RInteger  __thiscall TInteger::DividedByL(unsigned int)const 
-	call_vector_239 @ 239 NONAME ; public: class RInteger  __thiscall TInteger::ExponentiateL(class TInteger const &)const 
-	call_vector_240 @ 240 NONAME ; public: class RInteger  __thiscall TInteger::GCDL(class TInteger const &)const 
-	call_vector_241 @ 241 NONAME ; public: int __thiscall TInteger::IsPrimeL(void)const 
-	call_vector_242 @ 242 NONAME ; public: class RInteger  __thiscall TInteger::MinusL(class TInteger const &)const 
-	call_vector_243 @ 243 NONAME ; public: static class RInteger  __cdecl TInteger::ModularMultiplyL(class TInteger const &,class TInteger const &,class TInteger const &)
-	call_vector_244 @ 244 NONAME ; public: class RInteger  __thiscall TInteger::ModuloL(class TInteger const &)const 
-	call_vector_245 @ 245 NONAME ; public: unsigned int __thiscall TInteger::ModuloL(unsigned int)const 
-	call_vector_246 @ 246 NONAME ; public: void __thiscall TInteger::Negate(void)
-	call_vector_247 @ 247 NONAME ; public: static class TInteger const & __cdecl TInteger::One(void)
-	call_vector_248 @ 248 NONAME ; public: class RInteger  __thiscall TInteger::PlusL(class TInteger const &)const 
-	call_vector_249 @ 249 NONAME ; public: void __thiscall TInteger::SetBit(unsigned int)
-	call_vector_250 @ 250 NONAME ; public: int __thiscall TInteger::SignedCompare(class TInteger const &)const 
-	call_vector_251 @ 251 NONAME ; public: int __thiscall TInteger::SignedCompare(int)const 
-	call_vector_252 @ 252 NONAME ; public: class RInteger  __thiscall TInteger::SquaredL(void)const 
-	call_vector_253 @ 253 NONAME ; public: static class TInteger const & __cdecl TInteger::Two(void)
-	call_vector_254 @ 254 NONAME ; public: int __thiscall TInteger::UnsignedCompare(class TInteger const &)const 
-	call_vector_255 @ 255 NONAME ; public: static class TInteger const & __cdecl TInteger::Zero(void)
-	call_vector_256 @ 256 NONAME ; public: void __thiscall TInteger::CopyL(class TInteger const &,int)
-	call_vector_257 @ 257 NONAME ; public: void __thiscall TInteger::CopyL(int,int)
-	call_vector_258 @ 258 NONAME ; public: void __thiscall TInteger::Set(class RInteger const &)
-	call_vector_259 @ 259 NONAME ; public: static int __cdecl CDES::IsWeakKey(class TDesC8 const &)
-	call_vector_260 @ 260 NONAME ; public: class HBufC8 * __thiscall TInteger::BufferWithLeadingZerosLC(void)const 
-
--- a/crypto/weakcrypto/bwins/randsvru.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-EXPORTS
-	?RunRandomServer@@YAHPAX@Z @ 1 NONAME ; int RunRandomServer(void *)
-
--- a/crypto/weakcrypto/eabi/PBE_v2U.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,91 +0,0 @@
-EXPORTS
-	_ZN11CPBAuthData4NewLERK6TDesC8S2_jj @ 1 NONAME
-	_ZN11CPBAuthData4NewLERKS_ @ 2 NONAME
-	_ZN11CPBAuthData5NewLCERK6TDesC8S2_jj @ 3 NONAME
-	_ZN11CPBAuthData5NewLCERKS_ @ 4 NONAME
-	_ZN11CPBAuthDataC1Ev @ 5 NONAME
-	_ZN11CPBAuthDataC2Ev @ 6 NONAME
-	_ZN11TPBPasswordC1ERK6TDesC8 @ 7 NONAME
-	_ZN11TPBPasswordC1ERK7TDesC16 @ 8 NONAME
-	_ZN11TPBPasswordC2ERK6TDesC8 @ 9 NONAME
-	_ZN11TPBPasswordC2ERK7TDesC16 @ 10 NONAME
-	_ZN13CPBEncryptSet15ChangePasswordLERK11TPBPassword @ 11 NONAME
-	_ZN13CPBEncryptSet4NewLERK11TPBPassword @ 12 NONAME
-	_ZN13CPBEncryptSet4NewLERK11TPBPassword10TPBECipher @ 13 NONAME
-	_ZN13CPBEncryptSet4NewLERK11TPBPasswordRK15CPBEncryptParms @ 14 NONAME
-	_ZN13CPBEncryptSet4NewLERK17CPBEncryptionDataRK6TDesC8RK11TPBPassword @ 15 NONAME
-	_ZN13CPBEncryptSet5NewLCERK11TPBPassword @ 16 NONAME
-	_ZN13CPBEncryptSet5NewLCERK11TPBPassword10TPBECipher @ 17 NONAME
-	_ZN13CPBEncryptSet5NewLCERK11TPBPasswordRK15CPBEncryptParms @ 18 NONAME
-	_ZN13CPBEncryptSet5NewLCERK17CPBEncryptionDataRK6TDesC8RK11TPBPassword @ 19 NONAME
-	_ZN15CPBDecryptorSet4NewLE10TPBECipherRK6TDesC8 @ 20 NONAME
-	_ZN15CPBDecryptorSet5NewLCE10TPBECipherRK6TDesC8 @ 21 NONAME
-	_ZN15CPBEncryptParms4NewLE10TPBECipherRK6TDesC8S3_j @ 22 NONAME
-	_ZN15CPBEncryptParms4NewLERKS_ @ 23 NONAME
-	_ZN15CPBEncryptParms5NewLCE10TPBECipherRK6TDesC8S3_j @ 24 NONAME
-	_ZN15CPBEncryptParms5NewLCERKS_ @ 25 NONAME
-	_ZN15CPBEncryptParmsC1Ev @ 26 NONAME
-	_ZN15CPBEncryptParmsC2Ev @ 27 NONAME
-	_ZN15CPBEncryptorSet4NewLE10TPBECipherRK6TDesC8 @ 28 NONAME
-	_ZN15CPBEncryptorSet5NewLCE10TPBECipherRK6TDesC8 @ 29 NONAME
-	_ZN17CPBEncryptElement4NewLERK11TPBPassword @ 30 NONAME
-	_ZN17CPBEncryptElement4NewLERK11TPBPassword10TPBECipher @ 31 NONAME
-	_ZN17CPBEncryptElement4NewLERK11TPBPasswordRK15CPBEncryptParms @ 32 NONAME
-	_ZN17CPBEncryptElement4NewLERK17CPBEncryptionDataRK11TPBPassword @ 33 NONAME
-	_ZN17CPBEncryptElement5NewLCERK11TPBPassword @ 34 NONAME
-	_ZN17CPBEncryptElement5NewLCERK11TPBPassword10TPBECipher @ 35 NONAME
-	_ZN17CPBEncryptElement5NewLCERK11TPBPasswordRK15CPBEncryptParms @ 36 NONAME
-	_ZN17CPBEncryptElement5NewLCERK17CPBEncryptionDataRK11TPBPassword @ 37 NONAME
-	_ZN17CPBEncryptionData4NewLERK6TDesC810TPBECipherS2_S2_S2_j @ 38 NONAME
-	_ZN17CPBEncryptionData4NewLERKS_ @ 39 NONAME
-	_ZN17CPBEncryptionData5NewLCERK6TDesC810TPBECipherS2_S2_S2_j @ 40 NONAME
-	_ZN17CPBEncryptionData5NewLCERKS_ @ 41 NONAME
-	_ZN17CPBEncryptionDataC1Ev @ 42 NONAME
-	_ZN17CPBEncryptionDataC2Ev @ 43 NONAME
-	_ZN19CPBDecryptorElement4NewLE10TPBECipherRK6TDesC8S3_ @ 44 NONAME
-	_ZN19CPBDecryptorElement5NewLCE10TPBECipherRK6TDesC8S3_ @ 45 NONAME
-	_ZN19CPBEncryptorElement4NewLE10TPBECipherRK6TDesC8S3_ @ 46 NONAME
-	_ZN19CPBEncryptorElement5NewLCE10TPBECipherRK6TDesC8S3_ @ 47 NONAME
-	_ZN9TPKCS5KDF10DeriveKeyLER5TDes8RK6TDesC8S4_j @ 48 NONAME
-	_ZNK11CPBAuthData10IterationsEv @ 49 NONAME
-	_ZNK11CPBAuthData3KeyEv @ 50 NONAME
-	_ZNK11CPBAuthData4SaltEv @ 51 NONAME
-	_ZNK11CPBAuthDataeqERKS_ @ 52 NONAME
-	_ZNK11TPBPassword8PasswordEv @ 53 NONAME
-	_ZNK13CPBEncryptSet18EncryptedMasterKeyEv @ 54 NONAME
-	_ZNK15CPBEncryptParms10IterationsEv @ 55 NONAME
-	_ZNK15CPBEncryptParms2IVEv @ 56 NONAME
-	_ZNK15CPBEncryptParms4SaltEv @ 57 NONAME
-	_ZNK15CPBEncryptParms6CipherEv @ 58 NONAME
-	_ZNK17CPBEncryptionData12EncryptParmsEv @ 59 NONAME
-	_ZNK17CPBEncryptionData8AuthDataEv @ 60 NONAME
-	_ZTI11CPBAuthData @ 61 NONAME ; #<TI>#
-	_ZTI15CPBEncryptParms @ 62 NONAME ; #<TI>#
-	_ZTI17CPBEncryptionData @ 63 NONAME ; #<TI>#
-	_ZTV11CPBAuthData @ 64 NONAME ; #<VT>#
-	_ZTV15CPBEncryptParms @ 65 NONAME ; #<VT>#
-	_ZTV17CPBEncryptionData @ 66 NONAME ; #<VT>#
-	_ZTI13CPBEncryptSet @ 67 NONAME ; #<TI>#
-	_ZTI15CPBDecryptorSet @ 68 NONAME ; #<TI>#
-	_ZTI15CPBEncryptorSet @ 69 NONAME ; #<TI>#
-	_ZTI17CPBEncryptElement @ 70 NONAME ; #<TI>#
-	_ZTI19CPBDecryptorElement @ 71 NONAME ; #<TI>#
-	_ZTI19CPBEncryptorElement @ 72 NONAME ; #<TI>#
-	_ZTV13CPBEncryptSet @ 73 NONAME ; #<VT>#
-	_ZTV15CPBDecryptorSet @ 74 NONAME ; #<VT>#
-	_ZTV15CPBEncryptorSet @ 75 NONAME ; #<VT>#
-	_ZTV17CPBEncryptElement @ 76 NONAME ; #<VT>#
-	_ZTV19CPBDecryptorElement @ 77 NONAME ; #<VT>#
-	_ZTV19CPBEncryptorElement @ 78 NONAME ; #<VT>#
-	_ZN15CPBEncryptParms11ResizeSaltLEi @ 79 NONAME
-	_ZN15CPBEncryptParms13SetIterationsEi @ 80 NONAME
-	_ZN15CPBEncryptParms4NewLEv @ 81 NONAME
-	_ZN15CPBEncryptParms5NewLCEv @ 82 NONAME
-	_ZN15CPBEncryptParms5SetIVERK6TDesC8 @ 83 NONAME
-	_ZN15CPBEncryptParms6SetKdfENS_4TKdfE @ 84 NONAME
-	_ZN15CPBEncryptParms9SetCipherE10TPBECipher @ 85 NONAME
-	_ZN17CPBEncryptionData4NewLERK6TDesC8S2_RK15CPBEncryptParms @ 86 NONAME
-	_ZN9PKCS12KDF10DeriveKeyLER5TDes8NS_11TIDByteTypeERK6TDesC8S5_j @ 87 NONAME
-	_ZN9PKCS12KDF18GeneratePasswordLCERK7TDesC16 @ 88 NONAME
-	_ZNK15CPBEncryptParms3KdfEv @ 89 NONAME
-
--- a/crypto/weakcrypto/eabi/cryptographyU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,359 +0,0 @@
-EXPORTS
-	_ZN10CDHKeyPair10ConstructLER8RIntegerS1_ @ 1 NONAME
-	_ZN10CDHKeyPair10ConstructLER8RIntegerS1_S1_ @ 2 NONAME
-	_ZN10CDHKeyPair4NewLER8RIntegerS1_ @ 3 NONAME
-	_ZN10CDHKeyPair4NewLER8RIntegerS1_S1_ @ 4 NONAME
-	_ZN10CDHKeyPair5NewLCER8RIntegerS1_ @ 5 NONAME
-	_ZN10CDHKeyPair5NewLCER8RIntegerS1_S1_ @ 6 NONAME
-	_ZN10CDHKeyPairC1Ev @ 7 NONAME
-	_ZN10CDHKeyPairC2Ev @ 8 NONAME
-	_ZN10CDHKeyPairD0Ev @ 9 NONAME
-	_ZN10CDHKeyPairD1Ev @ 10 NONAME
-	_ZN10CDHKeyPairD2Ev @ 11 NONAME
-	_ZN10CDSASigner4NewLERK14CDSAPrivateKey @ 12 NONAME
-	_ZN10CDSASigner5NewLCERK14CDSAPrivateKey @ 13 NONAME
-	_ZN10CDecryptorC1Ev @ 14 NONAME
-	_ZN10CDecryptorC2Ev @ 15 NONAME
-	_ZN10CEncryptorC1Ev @ 16 NONAME
-	_ZN10CEncryptorC2Ev @ 17 NONAME
-	_ZN10CRSASignerC1Ev @ 18 NONAME
-	_ZN10CRSASignerC2Ev @ 19 NONAME
-	_ZN11CDSAKeyPair4NewLEj @ 20 NONAME
-	_ZN11CDSAKeyPair5NewLCEj @ 21 NONAME
-	_ZN11CDSAKeyPairC1Ev @ 22 NONAME
-	_ZN11CDSAKeyPairC2Ev @ 23 NONAME
-	_ZN11CDSAKeyPairD0Ev @ 24 NONAME
-	_ZN11CDSAKeyPairD1Ev @ 25 NONAME
-	_ZN11CDSAKeyPairD2Ev @ 26 NONAME
-	_ZN11CNullCipher4NewLEv @ 27 NONAME
-	_ZN11CNullCipher5NewLCEv @ 28 NONAME
-	_ZN11CRSAKeyPair4NewLEj18TRSAPrivateKeyType @ 29 NONAME
-	_ZN11CRSAKeyPair5NewLCEj18TRSAPrivateKeyType @ 30 NONAME
-	_ZN11CRSAKeyPairC1Ev @ 31 NONAME
-	_ZN11CRSAKeyPairC2Ev @ 32 NONAME
-	_ZN11CRSAKeyPairD0Ev @ 33 NONAME
-	_ZN11CRSAKeyPairD1Ev @ 34 NONAME
-	_ZN11CRSAKeyPairD2Ev @ 35 NONAME
-	_ZN12CDHPublicKey4NewLER8RIntegerS1_S1_ @ 36 NONAME
-	_ZN12CDHPublicKey5NewLCER8RIntegerS1_S1_ @ 37 NONAME
-	_ZN12CDHPublicKeyC1ER8RIntegerS1_S1_ @ 38 NONAME
-	_ZN12CDHPublicKeyC1Ev @ 39 NONAME
-	_ZN12CDHPublicKeyC2ER8RIntegerS1_S1_ @ 40 NONAME
-	_ZN12CDHPublicKeyC2Ev @ 41 NONAME
-	_ZN12CDHPublicKeyD0Ev @ 42 NONAME
-	_ZN12CDHPublicKeyD1Ev @ 43 NONAME
-	_ZN12CDHPublicKeyD2Ev @ 44 NONAME
-	_ZN12CDSAVerifier4NewLERK13CDSAPublicKey @ 45 NONAME
-	_ZN12CDSAVerifier5NewLCERK13CDSAPublicKey @ 46 NONAME
-	_ZN12CPaddingNone4NewLEi @ 47 NONAME
-	_ZN12CPaddingNone5NewLCEi @ 48 NONAME
-	_ZN12CPaddingNoneC1Ei @ 49 NONAME
-	_ZN12CPaddingNoneC2Ei @ 50 NONAME
-	_ZN12CRSAVerifierC1Ev @ 51 NONAME
-	_ZN12CRSAVerifierC2Ev @ 52 NONAME
-	_ZN13CAESDecryptor4NewLERK6TDesC8 @ 53 NONAME
-	_ZN13CAESDecryptor5NewLCERK6TDesC8 @ 54 NONAME
-	_ZN13CAESEncryptor4NewLERK6TDesC8 @ 55 NONAME
-	_ZN13CAESEncryptor5NewLCERK6TDesC8 @ 56 NONAME
-	_ZN13CDESDecryptor4NewLERK6TDesC8i @ 57 NONAME
-	_ZN13CDESDecryptor5NewLCERK6TDesC8i @ 58 NONAME
-	_ZN13CDESEncryptor4NewLERK6TDesC8i @ 59 NONAME
-	_ZN13CDESEncryptor5NewLCERK6TDesC8i @ 60 NONAME
-	_ZN13CDHParametersC1ER8RIntegerS1_ @ 61 NONAME
-	_ZN13CDHParametersC1Ev @ 62 NONAME
-	_ZN13CDHParametersC2ER8RIntegerS1_ @ 63 NONAME
-	_ZN13CDHParametersC2Ev @ 64 NONAME
-	_ZN13CDHParametersD0Ev @ 65 NONAME
-	_ZN13CDHParametersD1Ev @ 66 NONAME
-	_ZN13CDHParametersD2Ev @ 67 NONAME
-	_ZN13CDHPrivateKey4NewLER8RIntegerS1_S1_ @ 68 NONAME
-	_ZN13CDHPrivateKey5NewLCER8RIntegerS1_S1_ @ 69 NONAME
-	_ZN13CDHPrivateKeyC1ER8RIntegerS1_S1_ @ 70 NONAME
-	_ZN13CDHPrivateKeyC1Ev @ 71 NONAME
-	_ZN13CDHPrivateKeyC2ER8RIntegerS1_S1_ @ 72 NONAME
-	_ZN13CDHPrivateKeyC2Ev @ 73 NONAME
-	_ZN13CDHPrivateKeyD0Ev @ 74 NONAME
-	_ZN13CDHPrivateKeyD1Ev @ 75 NONAME
-	_ZN13CDHPrivateKeyD2Ev @ 76 NONAME
-	_ZN13CDSAPublicKey4NewLER8RIntegerS1_S1_S1_ @ 77 NONAME
-	_ZN13CDSAPublicKey5NewLCER8RIntegerS1_S1_S1_ @ 78 NONAME
-	_ZN13CDSAPublicKeyC1ER8RIntegerS1_S1_S1_ @ 79 NONAME
-	_ZN13CDSAPublicKeyC1Ev @ 80 NONAME
-	_ZN13CDSAPublicKeyC2ER8RIntegerS1_S1_S1_ @ 81 NONAME
-	_ZN13CDSAPublicKeyC2Ev @ 82 NONAME
-	_ZN13CDSAPublicKeyD0Ev @ 83 NONAME
-	_ZN13CDSAPublicKeyD1Ev @ 84 NONAME
-	_ZN13CDSAPublicKeyD2Ev @ 85 NONAME
-	_ZN13CDSASignature4NewLER8RIntegerS1_ @ 86 NONAME
-	_ZN13CDSASignature5NewLCER8RIntegerS1_ @ 87 NONAME
-	_ZN13CDSASignatureC1ER8RIntegerS1_ @ 88 NONAME
-	_ZN13CDSASignatureC1Ev @ 89 NONAME
-	_ZN13CDSASignatureC2ER8RIntegerS1_ @ 90 NONAME
-	_ZN13CDSASignatureC2Ev @ 91 NONAME
-	_ZN13CDSASignatureD0Ev @ 92 NONAME
-	_ZN13CDSASignatureD1Ev @ 93 NONAME
-	_ZN13CDSASignatureD2Ev @ 94 NONAME
-	_ZN13CPaddingPKCS74NewLEi @ 95 NONAME
-	_ZN13CPaddingPKCS75NewLCEi @ 96 NONAME
-	_ZN13CPaddingPKCS7C1Ei @ 97 NONAME
-	_ZN13CPaddingPKCS7C2Ei @ 98 NONAME
-	_ZN13CPaddingSSLv34NewLEi @ 99 NONAME
-	_ZN13CPaddingSSLv35NewLCEi @ 100 NONAME
-	_ZN13CPaddingSSLv3C1Ei @ 101 NONAME
-	_ZN13CPaddingSSLv3C2Ei @ 102 NONAME
-	_ZN13CRC2Decryptor4NewLERK6TDesC8i @ 103 NONAME
-	_ZN13CRC2Decryptor5NewLCERK6TDesC8i @ 104 NONAME
-	_ZN13CRC2Encryptor4NewLERK6TDesC8i @ 105 NONAME
-	_ZN13CRC2Encryptor5NewLCERK6TDesC8i @ 106 NONAME
-	_ZN13CRSAPublicKey4NewLER8RIntegerS1_ @ 107 NONAME
-	_ZN13CRSAPublicKey5NewLCER8RIntegerS1_ @ 108 NONAME
-	_ZN13CRSAPublicKeyC1ER8RIntegerS1_ @ 109 NONAME
-	_ZN13CRSAPublicKeyC1Ev @ 110 NONAME
-	_ZN13CRSAPublicKeyC2ER8RIntegerS1_ @ 111 NONAME
-	_ZN13CRSAPublicKeyC2Ev @ 112 NONAME
-	_ZN13CRSAPublicKeyD0Ev @ 113 NONAME
-	_ZN13CRSAPublicKeyD1Ev @ 114 NONAME
-	_ZN13CRSAPublicKeyD2Ev @ 115 NONAME
-	_ZN13CRSASignature4NewLER8RInteger @ 116 NONAME
-	_ZN13CRSASignature5NewLCER8RInteger @ 117 NONAME
-	_ZN13CRSASignatureC1ER8RInteger @ 118 NONAME
-	_ZN13CRSASignatureC2ER8RInteger @ 119 NONAME
-	_ZN13CRSASignatureD0Ev @ 120 NONAME
-	_ZN13CRSASignatureD1Ev @ 121 NONAME
-	_ZN13CRSASignatureD2Ev @ 122 NONAME
-	_ZN13CStreamCipher13ProcessFinalLERK6TDesC8R5TDes8 @ 123 NONAME
-	_ZN13CStreamCipher7ProcessERK6TDesC8R5TDes8 @ 124 NONAME
-	_ZN13MCryptoSystemC1Ev @ 125 NONAME
-	_ZN13MCryptoSystemC2Ev @ 126 NONAME
-	_ZN14C3DESDecryptor4NewLERK6TDesC8 @ 127 NONAME
-	_ZN14C3DESDecryptor5NewLCERK6TDesC8 @ 128 NONAME
-	_ZN14C3DESEncryptor4NewLERK6TDesC8 @ 129 NONAME
-	_ZN14C3DESEncryptor5NewLCERK6TDesC8 @ 130 NONAME
-	_ZN14CDSAParameters16ValidPrimeLengthEj @ 131 NONAME
-	_ZN14CDSAParameters4NewLER8RIntegerS1_S1_ @ 132 NONAME
-	_ZN14CDSAParametersC1ER8RIntegerS1_S1_ @ 133 NONAME
-	_ZN14CDSAParametersC1Ev @ 134 NONAME
-	_ZN14CDSAParametersC2ER8RIntegerS1_S1_ @ 135 NONAME
-	_ZN14CDSAParametersC2Ev @ 136 NONAME
-	_ZN14CDSAParametersD0Ev @ 137 NONAME
-	_ZN14CDSAParametersD1Ev @ 138 NONAME
-	_ZN14CDSAParametersD2Ev @ 139 NONAME
-	_ZN14CDSAPrivateKey4NewLER8RIntegerS1_S1_S1_ @ 140 NONAME
-	_ZN14CDSAPrivateKey5NewLCER8RIntegerS1_S1_S1_ @ 141 NONAME
-	_ZN14CDSAPrivateKeyC1Ev @ 142 NONAME
-	_ZN14CDSAPrivateKeyC2Ev @ 143 NONAME
-	_ZN14CDSAPrivateKeyD0Ev @ 144 NONAME
-	_ZN14CDSAPrivateKeyD1Ev @ 145 NONAME
-	_ZN14CDSAPrivateKeyD2Ev @ 146 NONAME
-	_ZN14CRSAParametersC1ER8RInteger @ 147 NONAME
-	_ZN14CRSAParametersC1Ev @ 148 NONAME
-	_ZN14CRSAParametersC2ER8RInteger @ 149 NONAME
-	_ZN14CRSAParametersC2Ev @ 150 NONAME
-	_ZN14CRSAParametersD0Ev @ 151 NONAME
-	_ZN14CRSAParametersD1Ev @ 152 NONAME
-	_ZN14CRSAParametersD2Ev @ 153 NONAME
-	_ZN16MSignatureSystemC1Ev @ 154 NONAME
-	_ZN16MSignatureSystemC2Ev @ 155 NONAME
-	_ZN17CModeCBCDecryptor4NewLEP20CBlockTransformationRK6TDesC8 @ 156 NONAME
-	_ZN17CModeCBCDecryptor5NewLCEP20CBlockTransformationRK6TDesC8 @ 157 NONAME
-	_ZN17CModeCBCEncryptor4NewLEP20CBlockTransformationRK6TDesC8 @ 158 NONAME
-	_ZN17CModeCBCEncryptor5NewLCEP20CBlockTransformationRK6TDesC8 @ 159 NONAME
-	_ZN17CRSAPrivateKeyCRT4NewLER8RIntegerS1_S1_S1_S1_S1_ @ 160 NONAME
-	_ZN17CRSAPrivateKeyCRT5NewLCER8RIntegerS1_S1_S1_S1_S1_ @ 161 NONAME
-	_ZN17CRSAPrivateKeyCRTC1ER8RIntegerS1_S1_S1_S1_S1_ @ 162 NONAME
-	_ZN17CRSAPrivateKeyCRTC2ER8RIntegerS1_S1_S1_S1_S1_ @ 163 NONAME
-	_ZN17CRSAPrivateKeyCRTD0Ev @ 164 NONAME
-	_ZN17CRSAPrivateKeyCRTD1Ev @ 165 NONAME
-	_ZN17CRSAPrivateKeyCRTD2Ev @ 166 NONAME
-	_ZN17KeyIdentifierUtil16DHKeyIdentifierLERK8RIntegerR5TBuf8ILi20EE @ 167 NONAME
-	_ZN17KeyIdentifierUtil17DSAKeyIdentifierLERK13CDSAPublicKeyR5TBuf8ILi20EE @ 168 NONAME
-	_ZN17KeyIdentifierUtil17RSAKeyIdentifierLERK13CRSAPublicKeyR5TBuf8ILi20EE @ 169 NONAME
-	_ZN18CBlockChainingMode10ConstructLEP20CBlockTransformationRK6TDesC8 @ 170 NONAME
-	_ZN18CBlockChainingModeC1Ev @ 171 NONAME
-	_ZN18CBlockChainingModeC2Ev @ 172 NONAME
-	_ZN18CBlockChainingModeD0Ev @ 173 NONAME
-	_ZN18CBlockChainingModeD1Ev @ 174 NONAME
-	_ZN18CBlockChainingModeD2Ev @ 175 NONAME
-	_ZN18CBufferedDecryptor4NewLEP20CBlockTransformationP8CPadding @ 176 NONAME
-	_ZN18CBufferedDecryptor5NewLCEP20CBlockTransformationP8CPadding @ 177 NONAME
-	_ZN18CBufferedEncryptor4NewLEP20CBlockTransformationP8CPadding @ 178 NONAME
-	_ZN18CBufferedEncryptor5NewLCEP20CBlockTransformationP8CPadding @ 179 NONAME
-	_ZN18CRSAPKCS1v15Signer4NewLERK14CRSAPrivateKey @ 180 NONAME
-	_ZN18CRSAPKCS1v15Signer5NewLCERK14CRSAPrivateKey @ 181 NONAME
-	_ZN20CDSAPrimeCertificate4NewLERK6TDesC8j @ 182 NONAME
-	_ZN20CDSAPrimeCertificate5NewLCERK6TDesC8j @ 183 NONAME
-	_ZN20CDSAPrimeCertificateC1Ej @ 184 NONAME
-	_ZN20CDSAPrimeCertificateC1Ev @ 185 NONAME
-	_ZN20CDSAPrimeCertificateC2Ej @ 186 NONAME
-	_ZN20CDSAPrimeCertificateC2Ev @ 187 NONAME
-	_ZN20CDSAPrimeCertificateD0Ev @ 188 NONAME
-	_ZN20CDSAPrimeCertificateD1Ev @ 189 NONAME
-	_ZN20CDSAPrimeCertificateD2Ev @ 190 NONAME
-	_ZN20CRSAPKCS1v15Verifier4NewLERK13CRSAPublicKey @ 191 NONAME
-	_ZN20CRSAPKCS1v15Verifier5NewLCERK13CRSAPublicKey @ 192 NONAME
-	_ZN21CRSAPKCS1v15Decryptor4NewLERK14CRSAPrivateKey @ 193 NONAME
-	_ZN21CRSAPKCS1v15Decryptor5NewLCERK14CRSAPrivateKey @ 194 NONAME
-	_ZN21CRSAPKCS1v15Encryptor4NewLERK13CRSAPublicKey @ 195 NONAME
-	_ZN21CRSAPKCS1v15Encryptor5NewLCERK13CRSAPublicKey @ 196 NONAME
-	_ZN22CPaddingPKCS1Signature4NewLEi @ 197 NONAME
-	_ZN22CPaddingPKCS1Signature5NewLCEi @ 198 NONAME
-	_ZN22CPaddingPKCS1SignatureC1Ei @ 199 NONAME
-	_ZN22CPaddingPKCS1SignatureC2Ei @ 200 NONAME
-	_ZN22CRSAPrivateKeyStandard4NewLER8RIntegerS1_ @ 201 NONAME
-	_ZN22CRSAPrivateKeyStandard5NewLCER8RIntegerS1_ @ 202 NONAME
-	_ZN22CRSAPrivateKeyStandardC1ER8RIntegerS1_ @ 203 NONAME
-	_ZN22CRSAPrivateKeyStandardC2ER8RIntegerS1_ @ 204 NONAME
-	_ZN22CRSAPrivateKeyStandardD0Ev @ 205 NONAME
-	_ZN22CRSAPrivateKeyStandardD1Ev @ 206 NONAME
-	_ZN22CRSAPrivateKeyStandardD2Ev @ 207 NONAME
-	_ZN23CBufferedTransformationD0Ev @ 208 NONAME
-	_ZN23CBufferedTransformationD1Ev @ 209 NONAME
-	_ZN23CBufferedTransformationD2Ev @ 210 NONAME
-	_ZN23CPaddingPKCS1Encryption4NewLEi @ 211 NONAME
-	_ZN23CPaddingPKCS1Encryption5NewLCEi @ 212 NONAME
-	_ZN23CPaddingPKCS1EncryptionC1Ei @ 213 NONAME
-	_ZN23CPaddingPKCS1EncryptionC2Ei @ 214 NONAME
-	_ZN3CDH4NewLERK13CDHPrivateKey @ 215 NONAME
-	_ZN3CDH5NewLCERK13CDHPrivateKey @ 216 NONAME
-	_ZN3CDHC1ERK13CDHPrivateKey @ 217 NONAME
-	_ZN3CDHC2ERK13CDHPrivateKey @ 218 NONAME
-	_ZN5CARC44NewLERK6TDesC8j @ 219 NONAME
-	_ZN5CARC45NewLCERK6TDesC8j @ 220 NONAME
-	_ZN7TCrypto22IsSymmetricWeakEnoughLEi @ 221 NONAME
-	_ZN7TCrypto23IsAsymmetricWeakEnoughLEi @ 222 NONAME
-	_ZN7TCrypto8StrengthEv @ 223 NONAME
-	_ZN8CPadding12SetBlockSizeEi @ 224 NONAME
-	_ZN8CPadding4PadLERK6TDesC8R5TDes8 @ 225 NONAME
-	_ZN8CPaddingC1Ei @ 226 NONAME
-	_ZN8CPaddingC2Ei @ 227 NONAME
-	_ZN9CRijndaelC1Ev @ 228 NONAME
-	_ZN9CRijndaelC2Ev @ 229 NONAME
-	_ZNK10CDHKeyPair10PrivateKeyEv @ 230 NONAME
-	_ZNK10CDHKeyPair9PublicKeyEv @ 231 NONAME
-	_ZNK11CDSAKeyPair10PrivateKeyEv @ 232 NONAME
-	_ZNK11CDSAKeyPair16PrimeCertificateEv @ 233 NONAME
-	_ZNK11CDSAKeyPair9PublicKeyEv @ 234 NONAME
-	_ZNK11CRSAKeyPair10PrivateKeyEv @ 235 NONAME
-	_ZNK11CRSAKeyPair9PublicKeyEv @ 236 NONAME
-	_ZNK12CDHPublicKey1XEv @ 237 NONAME
-	_ZNK12CRSAVerifier7VerifyLERK6TDesC8RK13CRSASignature @ 238 NONAME
-	_ZNK13CDHParameters1GEv @ 239 NONAME
-	_ZNK13CDHParameters1NEv @ 240 NONAME
-	_ZNK13CDHPrivateKey1xEv @ 241 NONAME
-	_ZNK13CDSAPublicKey1YEv @ 242 NONAME
-	_ZNK13CDSASignature1REv @ 243 NONAME
-	_ZNK13CDSASignature1SEv @ 244 NONAME
-	_ZNK13CDSASignatureeqERKS_ @ 245 NONAME
-	_ZNK13CRSAPublicKey1EEv @ 246 NONAME
-	_ZNK13CRSASignature1SEv @ 247 NONAME
-	_ZNK13CRSASignatureeqERKS_ @ 248 NONAME
-	_ZNK13CStreamCipher15MaxOutputLengthEi @ 249 NONAME
-	_ZNK13CStreamCipher20MaxFinalOutputLengthEi @ 250 NONAME
-	_ZNK13CStreamCipher9BlockSizeEv @ 251 NONAME
-	_ZNK14CDSAParameters15ValidatePrimesLERK20CDSAPrimeCertificate @ 252 NONAME
-	_ZNK14CDSAParameters1GEv @ 253 NONAME
-	_ZNK14CDSAParameters1PEv @ 254 NONAME
-	_ZNK14CDSAParameters1QEv @ 255 NONAME
-	_ZNK14CDSAPrivateKey1XEv @ 256 NONAME
-	_ZNK14CRSAParameters1NEv @ 257 NONAME
-	_ZNK17CRSAPrivateKeyCRT1PEv @ 258 NONAME
-	_ZNK17CRSAPrivateKeyCRT1QEv @ 259 NONAME
-	_ZNK17CRSAPrivateKeyCRT2DPEv @ 260 NONAME
-	_ZNK17CRSAPrivateKeyCRT2DQEv @ 261 NONAME
-	_ZNK17CRSAPrivateKeyCRT4QInvEv @ 262 NONAME
-	_ZNK20CDSAPrimeCertificate4SeedEv @ 263 NONAME
-	_ZNK20CDSAPrimeCertificate7CounterEv @ 264 NONAME
-	_ZNK22CRSAPrivateKeyStandard1DEv @ 265 NONAME
-	_ZNK23CBufferedTransformation16BlockTransformerEv @ 266 NONAME
-	_ZNK3CDH6AgreeLERK12CDHPublicKey @ 267 NONAME
-	_ZNK8CPadding15MaxPaddedLengthEi @ 268 NONAME
-	_ZNK8CPadding17MaxUnPaddedLengthEi @ 269 NONAME
-	_ZNK8CPadding9BlockSizeEv @ 270 NONAME
-	_ZTI10CDHKeyPair @ 271 NONAME ; #<TI>#
-	_ZTI10CDecryptor @ 272 NONAME ; #<TI>#
-	_ZTI10CEncryptor @ 273 NONAME ; #<TI>#
-	_ZTI10CRSASigner @ 274 NONAME ; #<TI>#
-	_ZTI11CDSAKeyPair @ 275 NONAME ; #<TI>#
-	_ZTI11CRSAKeyPair @ 276 NONAME ; #<TI>#
-	_ZTI12CDHPublicKey @ 277 NONAME ; #<TI>#
-	_ZTI12CPaddingNone @ 278 NONAME ; #<TI>#
-	_ZTI12CRSAVerifier @ 279 NONAME ; #<TI>#
-	_ZTI13CDHParameters @ 280 NONAME ; #<TI>#
-	_ZTI13CDHPrivateKey @ 281 NONAME ; #<TI>#
-	_ZTI13CDSAPublicKey @ 282 NONAME ; #<TI>#
-	_ZTI13CDSASignature @ 283 NONAME ; #<TI>#
-	_ZTI13CPaddingPKCS7 @ 284 NONAME ; #<TI>#
-	_ZTI13CPaddingSSLv3 @ 285 NONAME ; #<TI>#
-	_ZTI13CRSAPublicKey @ 286 NONAME ; #<TI>#
-	_ZTI13CRSASignature @ 287 NONAME ; #<TI>#
-	_ZTI13CStreamCipher @ 288 NONAME ; #<TI>#
-	_ZTI13MCryptoSystem @ 289 NONAME ; #<TI>#
-	_ZTI14CDSAParameters @ 290 NONAME ; #<TI>#
-	_ZTI14CDSAPrivateKey @ 291 NONAME ; #<TI>#
-	_ZTI14CRSAParameters @ 292 NONAME ; #<TI>#
-	_ZTI16MSignatureSystem @ 293 NONAME ; #<TI>#
-	_ZTI17CRSAPrivateKeyCRT @ 294 NONAME ; #<TI>#
-	_ZTI18CBlockChainingMode @ 295 NONAME ; #<TI>#
-	_ZTI20CDSAPrimeCertificate @ 296 NONAME ; #<TI>#
-	_ZTI22CPaddingPKCS1Signature @ 297 NONAME ; #<TI>#
-	_ZTI22CRSAPrivateKeyStandard @ 298 NONAME ; #<TI>#
-	_ZTI23CBufferedTransformation @ 299 NONAME ; #<TI>#
-	_ZTI23CPaddingPKCS1Encryption @ 300 NONAME ; #<TI>#
-	_ZTI3CDH @ 301 NONAME ; #<TI>#
-	_ZTI8CPadding @ 302 NONAME ; #<TI>#
-	_ZTI9CRijndael @ 303 NONAME ; #<TI>#
-	_ZTV10CDHKeyPair @ 304 NONAME ; #<VT>#
-	_ZTV11CDSAKeyPair @ 305 NONAME ; #<VT>#
-	_ZTV11CRSAKeyPair @ 306 NONAME ; #<VT>#
-	_ZTV12CDHPublicKey @ 307 NONAME ; #<VT>#
-	_ZTV12CPaddingNone @ 308 NONAME ; #<VT>#
-	_ZTV12CRSAVerifier @ 309 NONAME ; #<VT>#
-	_ZTV13CDHParameters @ 310 NONAME ; #<VT>#
-	_ZTV13CDHPrivateKey @ 311 NONAME ; #<VT>#
-	_ZTV13CDSAPublicKey @ 312 NONAME ; #<VT>#
-	_ZTV13CDSASignature @ 313 NONAME ; #<VT>#
-	_ZTV13CPaddingPKCS7 @ 314 NONAME ; #<VT>#
-	_ZTV13CPaddingSSLv3 @ 315 NONAME ; #<VT>#
-	_ZTV13CRSAPublicKey @ 316 NONAME ; #<VT>#
-	_ZTV13CRSASignature @ 317 NONAME ; #<VT>#
-	_ZTV13CStreamCipher @ 318 NONAME ; #<VT>#
-	_ZTV14CDSAParameters @ 319 NONAME ; #<VT>#
-	_ZTV14CDSAPrivateKey @ 320 NONAME ; #<VT>#
-	_ZTV14CRSAParameters @ 321 NONAME ; #<VT>#
-	_ZTV17CRSAPrivateKeyCRT @ 322 NONAME ; #<VT>#
-	_ZTV18CBlockChainingMode @ 323 NONAME ; #<VT>#
-	_ZTV20CDSAPrimeCertificate @ 324 NONAME ; #<VT>#
-	_ZTV22CPaddingPKCS1Signature @ 325 NONAME ; #<VT>#
-	_ZTV22CRSAPrivateKeyStandard @ 326 NONAME ; #<VT>#
-	_ZTV23CBufferedTransformation @ 327 NONAME ; #<VT>#
-	_ZTV23CPaddingPKCS1Encryption @ 328 NONAME ; #<VT>#
-	_ZTV8CPadding @ 329 NONAME ; #<VT>#
-	_ZTV9CRijndael @ 330 NONAME ; #<VT>#
-	_ZN8RInteger10NewRandomLERK8TIntegerS2_ @ 331 NONAME
-	_ZN8RInteger10NewRandomLEjN8TInteger16TRandomAttributeE @ 332 NONAME
-	_ZN8RInteger4NewLERK6TDesC8 @ 333 NONAME
-	_ZN8RInteger4NewLERK8TInteger @ 334 NONAME
-	_ZN8RInteger4NewLEi @ 335 NONAME
-	_ZN8RInteger4NewLEj @ 336 NONAME
-	_ZN8RInteger4NewLEv @ 337 NONAME
-	_ZN8RInteger5CloseEv @ 338 NONAME
-	_ZN8RInteger9CallCloseEPv @ 339 NONAME
-	_ZN8RInteger9NewEmptyLEj @ 340 NONAME
-	_ZN8RInteger9NewPrimeLEjN8TInteger16TRandomAttributeE @ 341 NONAME
-	_ZN8RIntegerC1ERKS_ @ 342 NONAME
-	_ZN8RIntegerC1Ev @ 343 NONAME
-	_ZN8RIntegerC2ERKS_ @ 344 NONAME
-	_ZN8RIntegerC2Ev @ 345 NONAME
-	_ZN8RIntegeraSERKS_ @ 346 NONAME
-	_ZN8RIntegercv12TCleanupItemEv @ 347 NONAME
-	_ZN8TInteger20ModularExponentiateLERKS_S1_S1_ @ 348 NONAME
-	_ZN8TIntegermmEv @ 349 NONAME
-	_ZN8TIntegerppEv @ 350 NONAME
-	_ZNK8TInteger11InverseModLERKS_ @ 351 NONAME
-	_ZNK8TInteger6TimesLERKS_ @ 352 NONAME
-	_ZNK8TInteger8BitCountEv @ 353 NONAME
-	_ZNK8TInteger8BufferLCEv @ 354 NONAME
-	_ZNK8TInteger9ByteCountEv @ 355 NONAME
-	_ZNK8TInteger9WordCountEv @ 356 NONAME
-	_ZNK8TIntegerntEv @ 357 NONAME
-
--- a/crypto/weakcrypto/eabi/cryptography_eka2U.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,387 +0,0 @@
-EXPORTS
-	_ZN10CDHKeyPair10ConstructLER8RIntegerS1_ @ 1 NONAME
-	_ZN10CDHKeyPair10ConstructLER8RIntegerS1_S1_ @ 2 NONAME
-	_ZN10CDHKeyPair4NewLER8RIntegerS1_ @ 3 NONAME
-	_ZN10CDHKeyPair4NewLER8RIntegerS1_S1_ @ 4 NONAME
-	_ZN10CDHKeyPair5NewLCER8RIntegerS1_ @ 5 NONAME
-	_ZN10CDHKeyPair5NewLCER8RIntegerS1_S1_ @ 6 NONAME
-	_ZN10CDHKeyPairC1Ev @ 7 NONAME
-	_ZN10CDHKeyPairC2Ev @ 8 NONAME
-	_ZN10CDHKeyPairD0Ev @ 9 NONAME
-	_ZN10CDHKeyPairD1Ev @ 10 NONAME
-	_ZN10CDHKeyPairD2Ev @ 11 NONAME
-	_ZN10CDSASigner4NewLERK14CDSAPrivateKey @ 12 NONAME
-	_ZN10CDSASigner5NewLCERK14CDSAPrivateKey @ 13 NONAME
-	_ZNK8TInteger8SquaredLEv @ 14 NONAME
-	_ZN10CDecryptorC2Ev @ 15 NONAME
-	_ZNK8TInteger7ModuloLEj @ 16 NONAME
-	_ZN10CEncryptorC2Ev @ 17 NONAME
-	_ZNK8TInteger7ModuloLERKS_ @ 18 NONAME
-	_ZN10CRSASignerC2Ev @ 19 NONAME
-	_ZN11CDSAKeyPair4NewLEj @ 20 NONAME
-	_ZN11CDSAKeyPair5NewLCEj @ 21 NONAME
-	_ZN11CDSAKeyPairC1Ev @ 22 NONAME
-	_ZN11CDSAKeyPairC2Ev @ 23 NONAME
-	_ZN11CDSAKeyPairD0Ev @ 24 NONAME
-	_ZN11CDSAKeyPairD1Ev @ 25 NONAME
-	_ZN11CDSAKeyPairD2Ev @ 26 NONAME
-	_ZN11CNullCipher4NewLEv @ 27 NONAME
-	_ZN11CNullCipher5NewLCEv @ 28 NONAME
-	_ZN11CRSAKeyPair4NewLEj18TRSAPrivateKeyType @ 29 NONAME
-	_ZN11CRSAKeyPair5NewLCEj18TRSAPrivateKeyType @ 30 NONAME
-	_ZN11CRSAKeyPairC1Ev @ 31 NONAME
-	_ZN11CRSAKeyPairC2Ev @ 32 NONAME
-	_ZN11CRSAKeyPairD0Ev @ 33 NONAME
-	_ZN11CRSAKeyPairD1Ev @ 34 NONAME
-	_ZN11CRSAKeyPairD2Ev @ 35 NONAME
-	_ZN12CDHPublicKey4NewLER8RIntegerS1_S1_ @ 36 NONAME
-	_ZN12CDHPublicKey5NewLCER8RIntegerS1_S1_ @ 37 NONAME
-	_ZN12CDHPublicKeyC1ER8RIntegerS1_S1_ @ 38 NONAME
-	_ZN12CDHPublicKeyC1Ev @ 39 NONAME
-	_ZN12CDHPublicKeyC2ER8RIntegerS1_S1_ @ 40 NONAME
-	_ZN12CDHPublicKeyC2Ev @ 41 NONAME
-	_ZN12CDHPublicKeyD0Ev @ 42 NONAME
-	_ZN12CDHPublicKeyD1Ev @ 43 NONAME
-	_ZN12CDHPublicKeyD2Ev @ 44 NONAME
-	_ZN12CDSAVerifier4NewLERK13CDSAPublicKey @ 45 NONAME
-	_ZN12CDSAVerifier5NewLCERK13CDSAPublicKey @ 46 NONAME
-	_ZN12CPaddingNone4NewLEi @ 47 NONAME
-	_ZN12CPaddingNone5NewLCEi @ 48 NONAME
-	_ZN12CPaddingNoneC1Ei @ 49 NONAME
-	_ZN12CPaddingNoneC2Ei @ 50 NONAME
-	_ZNK8TInteger6MinusLERKS_ @ 51 NONAME
-	_ZN12CRSAVerifierC2Ev @ 52 NONAME
-	_ZN13CAESDecryptor4NewLERK6TDesC8 @ 53 NONAME
-	_ZN13CAESDecryptor5NewLCERK6TDesC8 @ 54 NONAME
-	_ZN13CAESEncryptor4NewLERK6TDesC8 @ 55 NONAME
-	_ZN13CAESEncryptor5NewLCERK6TDesC8 @ 56 NONAME
-	_ZN13CDESDecryptor4NewLERK6TDesC8i @ 57 NONAME
-	_ZN13CDESDecryptor5NewLCERK6TDesC8i @ 58 NONAME
-	_ZN13CDESEncryptor4NewLERK6TDesC8i @ 59 NONAME
-	_ZN13CDESEncryptor5NewLCERK6TDesC8i @ 60 NONAME
-	_ZN13CDHParametersC1ER8RIntegerS1_ @ 61 NONAME
-	_ZN13CDHParametersC1Ev @ 62 NONAME
-	_ZN13CDHParametersC2ER8RIntegerS1_ @ 63 NONAME
-	_ZN13CDHParametersC2Ev @ 64 NONAME
-	_ZN13CDHParametersD0Ev @ 65 NONAME
-	_ZN13CDHParametersD1Ev @ 66 NONAME
-	_ZN13CDHParametersD2Ev @ 67 NONAME
-	_ZN13CDHPrivateKey4NewLER8RIntegerS1_S1_ @ 68 NONAME
-	_ZN13CDHPrivateKey5NewLCER8RIntegerS1_S1_ @ 69 NONAME
-	_ZN13CDHPrivateKeyC1ER8RIntegerS1_S1_ @ 70 NONAME
-	_ZN13CDHPrivateKeyC1Ev @ 71 NONAME
-	_ZN13CDHPrivateKeyC2ER8RIntegerS1_S1_ @ 72 NONAME
-	_ZN13CDHPrivateKeyC2Ev @ 73 NONAME
-	_ZN13CDHPrivateKeyD0Ev @ 74 NONAME
-	_ZN13CDHPrivateKeyD1Ev @ 75 NONAME
-	_ZN13CDHPrivateKeyD2Ev @ 76 NONAME
-	_ZN13CDSAPublicKey4NewLER8RIntegerS1_S1_S1_ @ 77 NONAME
-	_ZN13CDSAPublicKey5NewLCER8RIntegerS1_S1_S1_ @ 78 NONAME
-	_ZN13CDSAPublicKeyC1ER8RIntegerS1_S1_S1_ @ 79 NONAME
-	_ZN13CDSAPublicKeyC1Ev @ 80 NONAME
-	_ZN13CDSAPublicKeyC2ER8RIntegerS1_S1_S1_ @ 81 NONAME
-	_ZN13CDSAPublicKeyC2Ev @ 82 NONAME
-	_ZN13CDSAPublicKeyD0Ev @ 83 NONAME
-	_ZN13CDSAPublicKeyD1Ev @ 84 NONAME
-	_ZN13CDSAPublicKeyD2Ev @ 85 NONAME
-	_ZN13CDSASignature4NewLER8RIntegerS1_ @ 86 NONAME
-	_ZN13CDSASignature5NewLCER8RIntegerS1_ @ 87 NONAME
-	_ZN13CDSASignatureC1ER8RIntegerS1_ @ 88 NONAME
-	_ZN13CDSASignatureC1Ev @ 89 NONAME
-	_ZN13CDSASignatureC2ER8RIntegerS1_ @ 90 NONAME
-	_ZN13CDSASignatureC2Ev @ 91 NONAME
-	_ZN13CDSASignatureD0Ev @ 92 NONAME
-	_ZN13CDSASignatureD1Ev @ 93 NONAME
-	_ZN13CDSASignatureD2Ev @ 94 NONAME
-	_ZN13CPaddingPKCS74NewLEi @ 95 NONAME
-	_ZN13CPaddingPKCS75NewLCEi @ 96 NONAME
-	_ZN13CPaddingPKCS7C1Ei @ 97 NONAME
-	_ZN13CPaddingPKCS7C2Ei @ 98 NONAME
-	_ZN13CPaddingSSLv34NewLEi @ 99 NONAME
-	_ZN13CPaddingSSLv35NewLCEi @ 100 NONAME
-	_ZN13CPaddingSSLv3C1Ei @ 101 NONAME
-	_ZN13CPaddingSSLv3C2Ei @ 102 NONAME
-	_ZN13CRC2Decryptor4NewLERK6TDesC8i @ 103 NONAME
-	_ZN13CRC2Decryptor5NewLCERK6TDesC8i @ 104 NONAME
-	_ZN13CRC2Encryptor4NewLERK6TDesC8i @ 105 NONAME
-	_ZN13CRC2Encryptor5NewLCERK6TDesC8i @ 106 NONAME
-	_ZN13CRSAPublicKey4NewLER8RIntegerS1_ @ 107 NONAME
-	_ZN13CRSAPublicKey5NewLCER8RIntegerS1_ @ 108 NONAME
-	_ZN13CRSAPublicKeyC1ER8RIntegerS1_ @ 109 NONAME
-	_ZN13CRSAPublicKeyC1Ev @ 110 NONAME
-	_ZN13CRSAPublicKeyC2ER8RIntegerS1_ @ 111 NONAME
-	_ZN13CRSAPublicKeyC2Ev @ 112 NONAME
-	_ZN13CRSAPublicKeyD0Ev @ 113 NONAME
-	_ZN13CRSAPublicKeyD1Ev @ 114 NONAME
-	_ZN13CRSAPublicKeyD2Ev @ 115 NONAME
-	_ZN13CRSASignature4NewLER8RInteger @ 116 NONAME
-	_ZN13CRSASignature5NewLCER8RInteger @ 117 NONAME
-	_ZN13CRSASignatureC1ER8RInteger @ 118 NONAME
-	_ZN13CRSASignatureC2ER8RInteger @ 119 NONAME
-	_ZN13CRSASignatureD0Ev @ 120 NONAME
-	_ZN13CRSASignatureD1Ev @ 121 NONAME
-	_ZN13CRSASignatureD2Ev @ 122 NONAME
-	_ZN13CStreamCipher13ProcessFinalLERK6TDesC8R5TDes8 @ 123 NONAME
-	_ZN13CStreamCipher7ProcessERK6TDesC8R5TDes8 @ 124 NONAME
-	_ZNK8TInteger5PlusLERKS_ @ 125 NONAME
-	_ZN13MCryptoSystemC2Ev @ 126 NONAME
-	_ZN14C3DESDecryptor4NewLERK6TDesC8 @ 127 NONAME
-	_ZN14C3DESDecryptor5NewLCERK6TDesC8 @ 128 NONAME
-	_ZN14C3DESEncryptor4NewLERK6TDesC8 @ 129 NONAME
-	_ZN14C3DESEncryptor5NewLCERK6TDesC8 @ 130 NONAME
-	_ZN14CDSAParameters16ValidPrimeLengthEj @ 131 NONAME
-	_ZN14CDSAParameters4NewLER8RIntegerS1_S1_ @ 132 NONAME
-	_ZN14CDSAParametersC1ER8RIntegerS1_S1_ @ 133 NONAME
-	_ZN14CDSAParametersC1Ev @ 134 NONAME
-	_ZN14CDSAParametersC2ER8RIntegerS1_S1_ @ 135 NONAME
-	_ZN14CDSAParametersC2Ev @ 136 NONAME
-	_ZN14CDSAParametersD0Ev @ 137 NONAME
-	_ZN14CDSAParametersD1Ev @ 138 NONAME
-	_ZN14CDSAParametersD2Ev @ 139 NONAME
-	_ZN14CDSAPrivateKey4NewLER8RIntegerS1_S1_S1_ @ 140 NONAME
-	_ZN14CDSAPrivateKey5NewLCER8RIntegerS1_S1_S1_ @ 141 NONAME
-	_ZN14CDSAPrivateKeyC1Ev @ 142 NONAME
-	_ZN14CDSAPrivateKeyC2Ev @ 143 NONAME
-	_ZN14CDSAPrivateKeyD0Ev @ 144 NONAME
-	_ZN14CDSAPrivateKeyD1Ev @ 145 NONAME
-	_ZN14CDSAPrivateKeyD2Ev @ 146 NONAME
-	_ZN14CRSAParametersC1ER8RInteger @ 147 NONAME
-	_ZN14CRSAParametersC1Ev @ 148 NONAME
-	_ZN14CRSAParametersC2ER8RInteger @ 149 NONAME
-	_ZN14CRSAParametersC2Ev @ 150 NONAME
-	_ZN14CRSAParametersD0Ev @ 151 NONAME
-	_ZN14CRSAParametersD1Ev @ 152 NONAME
-	_ZN14CRSAParametersD2Ev @ 153 NONAME
-	_ZNK8TInteger4GCDLERKS_ @ 154 NONAME
-	_ZN16MSignatureSystemC2Ev @ 155 NONAME
-	_ZN17CModeCBCDecryptor4NewLEP20CBlockTransformationRK6TDesC8 @ 156 NONAME
-	_ZN17CModeCBCDecryptor5NewLCEP20CBlockTransformationRK6TDesC8 @ 157 NONAME
-	_ZN17CModeCBCEncryptor4NewLEP20CBlockTransformationRK6TDesC8 @ 158 NONAME
-	_ZN17CModeCBCEncryptor5NewLCEP20CBlockTransformationRK6TDesC8 @ 159 NONAME
-	_ZN17CRSAPrivateKeyCRT4NewLER8RIntegerS1_S1_S1_S1_S1_ @ 160 NONAME
-	_ZN17CRSAPrivateKeyCRT5NewLCER8RIntegerS1_S1_S1_S1_S1_ @ 161 NONAME
-	_ZN17CRSAPrivateKeyCRTC1ER8RIntegerS1_S1_S1_S1_S1_ @ 162 NONAME
-	_ZN17CRSAPrivateKeyCRTC2ER8RIntegerS1_S1_S1_S1_S1_ @ 163 NONAME
-	_ZN17CRSAPrivateKeyCRTD0Ev @ 164 NONAME
-	_ZN17CRSAPrivateKeyCRTD1Ev @ 165 NONAME
-	_ZN17CRSAPrivateKeyCRTD2Ev @ 166 NONAME
-	_ZN17KeyIdentifierUtil16DHKeyIdentifierLERK8RIntegerR5TBuf8ILi20EE @ 167 NONAME
-	_ZN17KeyIdentifierUtil17DSAKeyIdentifierLERK13CDSAPublicKeyR5TBuf8ILi20EE @ 168 NONAME
-	_ZN17KeyIdentifierUtil17RSAKeyIdentifierLERK13CRSAPublicKeyR5TBuf8ILi20EE @ 169 NONAME
-	_ZN18CBlockChainingMode10ConstructLEP20CBlockTransformationRK6TDesC8 @ 170 NONAME
-	_ZNK8TInteger3BitEj @ 171 NONAME
-	_ZN18CBlockChainingModeC2Ev @ 172 NONAME
-	_ZN18CBlockChainingModeD0Ev @ 173 NONAME
-	_ZN18CBlockChainingModeD1Ev @ 174 NONAME
-	_ZN18CBlockChainingModeD2Ev @ 175 NONAME
-	_ZN18CBufferedDecryptor4NewLEP20CBlockTransformationP8CPadding @ 176 NONAME
-	_ZN18CBufferedDecryptor5NewLCEP20CBlockTransformationP8CPadding @ 177 NONAME
-	_ZN18CBufferedEncryptor4NewLEP20CBlockTransformationP8CPadding @ 178 NONAME
-	_ZN18CBufferedEncryptor5NewLCEP20CBlockTransformationP8CPadding @ 179 NONAME
-	_ZN18CRSAPKCS1v15Signer4NewLERK14CRSAPrivateKey @ 180 NONAME
-	_ZN18CRSAPKCS1v15Signer5NewLCERK14CRSAPrivateKey @ 181 NONAME
-	_ZN20CDSAPrimeCertificate4NewLERK6TDesC8j @ 182 NONAME
-	_ZN20CDSAPrimeCertificate5NewLCERK6TDesC8j @ 183 NONAME
-	_ZN20CDSAPrimeCertificateC1Ej @ 184 NONAME
-	_ZN20CDSAPrimeCertificateC1Ev @ 185 NONAME
-	_ZN20CDSAPrimeCertificateC2Ej @ 186 NONAME
-	_ZN20CDSAPrimeCertificateC2Ev @ 187 NONAME
-	_ZN20CDSAPrimeCertificateD0Ev @ 188 NONAME
-	_ZN20CDSAPrimeCertificateD1Ev @ 189 NONAME
-	_ZN20CDSAPrimeCertificateD2Ev @ 190 NONAME
-	_ZN20CRSAPKCS1v15Verifier4NewLERK13CRSAPublicKey @ 191 NONAME
-	_ZN20CRSAPKCS1v15Verifier5NewLCERK13CRSAPublicKey @ 192 NONAME
-	_ZN21CRSAPKCS1v15Decryptor4NewLERK14CRSAPrivateKey @ 193 NONAME
-	_ZN21CRSAPKCS1v15Decryptor5NewLCERK14CRSAPrivateKey @ 194 NONAME
-	_ZN21CRSAPKCS1v15Encryptor4NewLERK13CRSAPublicKey @ 195 NONAME
-	_ZN21CRSAPKCS1v15Encryptor5NewLCERK13CRSAPublicKey @ 196 NONAME
-	_ZN22CPaddingPKCS1Signature4NewLEi @ 197 NONAME
-	_ZN22CPaddingPKCS1Signature5NewLCEi @ 198 NONAME
-	_ZN22CPaddingPKCS1SignatureC1Ei @ 199 NONAME
-	_ZN22CPaddingPKCS1SignatureC2Ei @ 200 NONAME
-	_ZN22CRSAPrivateKeyStandard4NewLER8RIntegerS1_ @ 201 NONAME
-	_ZN22CRSAPrivateKeyStandard5NewLCER8RIntegerS1_ @ 202 NONAME
-	_ZN22CRSAPrivateKeyStandardC1ER8RIntegerS1_ @ 203 NONAME
-	_ZN22CRSAPrivateKeyStandardC2ER8RIntegerS1_ @ 204 NONAME
-	_ZN22CRSAPrivateKeyStandardD0Ev @ 205 NONAME
-	_ZN22CRSAPrivateKeyStandardD1Ev @ 206 NONAME
-	_ZN22CRSAPrivateKeyStandardD2Ev @ 207 NONAME
-	_ZN23CBufferedTransformationD0Ev @ 208 NONAME
-	_ZN23CBufferedTransformationD1Ev @ 209 NONAME
-	_ZN23CBufferedTransformationD2Ev @ 210 NONAME
-	_ZN23CPaddingPKCS1Encryption4NewLEi @ 211 NONAME
-	_ZN23CPaddingPKCS1Encryption5NewLCEi @ 212 NONAME
-	_ZN23CPaddingPKCS1EncryptionC1Ei @ 213 NONAME
-	_ZN23CPaddingPKCS1EncryptionC2Ei @ 214 NONAME
-	_ZN3CDH4NewLERK13CDHPrivateKey @ 215 NONAME
-	_ZN3CDH5NewLCERK13CDHPrivateKey @ 216 NONAME
-	_ZN3CDHC1ERK13CDHPrivateKey @ 217 NONAME
-	_ZN3CDHC2ERK13CDHPrivateKey @ 218 NONAME
-	_ZN5CARC44NewLERK6TDesC8j @ 219 NONAME
-	_ZN5CARC45NewLCERK6TDesC8j @ 220 NONAME
-	_ZN7TCrypto22IsSymmetricWeakEnoughLEi @ 221 NONAME
-	_ZN7TCrypto23IsAsymmetricWeakEnoughLEi @ 222 NONAME
-	_ZN7TCrypto8StrengthEv @ 223 NONAME
-	_ZN8CPadding12SetBlockSizeEi @ 224 NONAME
-	_ZN8CPadding4PadLERK6TDesC8R5TDes8 @ 225 NONAME
-	_ZNK8TInteger15UnsignedCompareERKS_ @ 226 NONAME
-	_ZN8CPaddingC2Ei @ 227 NONAME
-	_ZN8RInteger10NewRandomLERK8TIntegerS2_ @ 228 NONAME
-	_ZN8RInteger10NewRandomLEjN8TInteger16TRandomAttributeE @ 229 NONAME
-	_ZN8RInteger4NewLERK6TDesC8 @ 230 NONAME
-	_ZN8RInteger4NewLERK8TInteger @ 231 NONAME
-	_ZN8RInteger4NewLEi @ 232 NONAME
-	_ZN8RInteger4NewLEj @ 233 NONAME
-	_ZN8RInteger4NewLEv @ 234 NONAME
-	_ZN8RInteger5CloseEv @ 235 NONAME
-	_ZN8RInteger9CallCloseEPv @ 236 NONAME
-	_ZN8RInteger9NewEmptyLEj @ 237 NONAME
-	_ZN8RInteger9NewPrimeLEjN8TInteger16TRandomAttributeE @ 238 NONAME
-	_ZN8RIntegerC1ERKS_ @ 239 NONAME
-	_ZN8RIntegerC1Ev @ 240 NONAME
-	_ZN8RIntegerC2ERKS_ @ 241 NONAME
-	_ZN8RIntegerC2Ev @ 242 NONAME
-	_ZN8RIntegeraSERKS_ @ 243 NONAME
-	_ZN8RIntegercv12TCleanupItemEv @ 244 NONAME
-	_ZN8TInteger20ModularExponentiateLERKS_S1_S1_ @ 245 NONAME
-	_ZN8TIntegermmEv @ 246 NONAME
-	_ZN8TIntegerppEv @ 247 NONAME
-	_ZNK8TInteger14ConvertToLongLEv @ 248 NONAME
-	_ZN9CRijndaelC2Ev @ 249 NONAME
-	_ZNK10CDHKeyPair10PrivateKeyEv @ 250 NONAME
-	_ZNK10CDHKeyPair9PublicKeyEv @ 251 NONAME
-	_ZNK11CDSAKeyPair10PrivateKeyEv @ 252 NONAME
-	_ZNK11CDSAKeyPair16PrimeCertificateEv @ 253 NONAME
-	_ZNK11CDSAKeyPair9PublicKeyEv @ 254 NONAME
-	_ZNK11CRSAKeyPair10PrivateKeyEv @ 255 NONAME
-	_ZNK11CRSAKeyPair9PublicKeyEv @ 256 NONAME
-	_ZNK12CDHPublicKey1XEv @ 257 NONAME
-	_ZNK12CRSAVerifier7VerifyLERK6TDesC8RK13CRSASignature @ 258 NONAME
-	_ZNK13CDHParameters1GEv @ 259 NONAME
-	_ZNK13CDHParameters1NEv @ 260 NONAME
-	_ZNK13CDHPrivateKey1xEv @ 261 NONAME
-	_ZNK13CDSAPublicKey1YEv @ 262 NONAME
-	_ZNK13CDSASignature1REv @ 263 NONAME
-	_ZNK13CDSASignature1SEv @ 264 NONAME
-	_ZNK13CDSASignatureeqERKS_ @ 265 NONAME
-	_ZNK13CRSAPublicKey1EEv @ 266 NONAME
-	_ZNK13CRSASignature1SEv @ 267 NONAME
-	_ZNK13CRSASignatureeqERKS_ @ 268 NONAME
-	_ZNK13CStreamCipher15MaxOutputLengthEi @ 269 NONAME
-	_ZNK13CStreamCipher20MaxFinalOutputLengthEi @ 270 NONAME
-	_ZNK13CStreamCipher9BlockSizeEv @ 271 NONAME
-	_ZNK14CDSAParameters15ValidatePrimesLERK20CDSAPrimeCertificate @ 272 NONAME
-	_ZNK14CDSAParameters1GEv @ 273 NONAME
-	_ZNK14CDSAParameters1PEv @ 274 NONAME
-	_ZNK14CDSAParameters1QEv @ 275 NONAME
-	_ZNK14CDSAPrivateKey1XEv @ 276 NONAME
-	_ZNK14CRSAParameters1NEv @ 277 NONAME
-	_ZNK17CRSAPrivateKeyCRT1PEv @ 278 NONAME
-	_ZNK17CRSAPrivateKeyCRT1QEv @ 279 NONAME
-	_ZNK17CRSAPrivateKeyCRT2DPEv @ 280 NONAME
-	_ZNK17CRSAPrivateKeyCRT2DQEv @ 281 NONAME
-	_ZNK17CRSAPrivateKeyCRT4QInvEv @ 282 NONAME
-	_ZNK20CDSAPrimeCertificate4SeedEv @ 283 NONAME
-	_ZNK20CDSAPrimeCertificate7CounterEv @ 284 NONAME
-	_ZNK22CRSAPrivateKeyStandard1DEv @ 285 NONAME
-	_ZNK23CBufferedTransformation16BlockTransformerEv @ 286 NONAME
-	_ZNK3CDH6AgreeLERK12CDHPublicKey @ 287 NONAME
-	_ZNK8CPadding15MaxPaddedLengthEi @ 288 NONAME
-	_ZNK8CPadding17MaxUnPaddedLengthEi @ 289 NONAME
-	_ZNK8CPadding9BlockSizeEv @ 290 NONAME
-	_ZNK8TInteger11InverseModLERKS_ @ 291 NONAME
-	_ZNK8TInteger6TimesLERKS_ @ 292 NONAME
-	_ZNK8TInteger8BitCountEv @ 293 NONAME
-	_ZNK8TInteger8BufferLCEv @ 294 NONAME
-	_ZNK8TInteger9ByteCountEv @ 295 NONAME
-	_ZNK8TInteger9WordCountEv @ 296 NONAME
-	_ZNK8TIntegerntEv @ 297 NONAME
-	_ZTI10CDHKeyPair @ 298 NONAME ; #<TI>#
-	_ZTI10CDecryptor @ 299 NONAME ABSENT ; #<TI>#
-	_ZTI10CEncryptor @ 300 NONAME ABSENT ; #<TI>#
-	_ZTI10CRSASigner @ 301 NONAME ABSENT ; #<TI>#
-	_ZTI11CDSAKeyPair @ 302 NONAME ; #<TI>#
-	_ZTI11CRSAKeyPair @ 303 NONAME ; #<TI>#
-	_ZTI12CDHPublicKey @ 304 NONAME ; #<TI>#
-	_ZTI12CPaddingNone @ 305 NONAME ; #<TI>#
-	_ZTI12CRSAVerifier @ 306 NONAME ; #<TI>#
-	_ZTI13CDHParameters @ 307 NONAME ; #<TI>#
-	_ZTI13CDHPrivateKey @ 308 NONAME ; #<TI>#
-	_ZTI13CDSAPublicKey @ 309 NONAME ; #<TI>#
-	_ZTI13CDSASignature @ 310 NONAME ; #<TI>#
-	_ZTI13CPaddingPKCS7 @ 311 NONAME ; #<TI>#
-	_ZTI13CPaddingSSLv3 @ 312 NONAME ; #<TI>#
-	_ZTI13CRSAPublicKey @ 313 NONAME ; #<TI>#
-	_ZTI13CRSASignature @ 314 NONAME ; #<TI>#
-	_ZTI13CStreamCipher @ 315 NONAME ; #<TI>#
-	_ZTI13MCryptoSystem @ 316 NONAME ABSENT ; #<TI>#
-	_ZTI14CDSAParameters @ 317 NONAME ; #<TI>#
-	_ZTI14CDSAPrivateKey @ 318 NONAME ; #<TI>#
-	_ZTI14CRSAParameters @ 319 NONAME ; #<TI>#
-	_ZTI16MSignatureSystem @ 320 NONAME ABSENT ; #<TI>#
-	_ZTI17CRSAPrivateKeyCRT @ 321 NONAME ; #<TI>#
-	_ZTI18CBlockChainingMode @ 322 NONAME ; #<TI>#
-	_ZTI20CDSAPrimeCertificate @ 323 NONAME ; #<TI>#
-	_ZTI22CPaddingPKCS1Signature @ 324 NONAME ; #<TI>#
-	_ZTI22CRSAPrivateKeyStandard @ 325 NONAME ; #<TI>#
-	_ZTI23CBufferedTransformation @ 326 NONAME ; #<TI>#
-	_ZTI23CPaddingPKCS1Encryption @ 327 NONAME ; #<TI>#
-	_ZTI3CDH @ 328 NONAME ABSENT ; #<TI>#
-	_ZTI8CPadding @ 329 NONAME ; #<TI>#
-	_ZTI9CRijndael @ 330 NONAME ; #<TI>#
-	_ZTV10CDHKeyPair @ 331 NONAME ; #<VT>#
-	_ZTV11CDSAKeyPair @ 332 NONAME ; #<VT>#
-	_ZTV11CRSAKeyPair @ 333 NONAME ; #<VT>#
-	_ZTV12CDHPublicKey @ 334 NONAME ; #<VT>#
-	_ZTV12CPaddingNone @ 335 NONAME ; #<VT>#
-	_ZTV12CRSAVerifier @ 336 NONAME ; #<VT>#
-	_ZTV13CDHParameters @ 337 NONAME ; #<VT>#
-	_ZTV13CDHPrivateKey @ 338 NONAME ; #<VT>#
-	_ZTV13CDSAPublicKey @ 339 NONAME ; #<VT>#
-	_ZTV13CDSASignature @ 340 NONAME ; #<VT>#
-	_ZTV13CPaddingPKCS7 @ 341 NONAME ; #<VT>#
-	_ZTV13CPaddingSSLv3 @ 342 NONAME ; #<VT>#
-	_ZTV13CRSAPublicKey @ 343 NONAME ; #<VT>#
-	_ZTV13CRSASignature @ 344 NONAME ; #<VT>#
-	_ZTV13CStreamCipher @ 345 NONAME ; #<VT>#
-	_ZTV14CDSAParameters @ 346 NONAME ; #<VT>#
-	_ZTV14CDSAPrivateKey @ 347 NONAME ; #<VT>#
-	_ZTV14CRSAParameters @ 348 NONAME ; #<VT>#
-	_ZTV17CRSAPrivateKeyCRT @ 349 NONAME ; #<VT>#
-	_ZTV18CBlockChainingMode @ 350 NONAME ; #<VT>#
-	_ZTV20CDSAPrimeCertificate @ 351 NONAME ; #<VT>#
-	_ZTV22CPaddingPKCS1Signature @ 352 NONAME ; #<VT>#
-	_ZTV22CRSAPrivateKeyStandard @ 353 NONAME ; #<VT>#
-	_ZTV23CBufferedTransformation @ 354 NONAME ; #<VT>#
-	_ZTV23CPaddingPKCS1Encryption @ 355 NONAME ; #<VT>#
-	_ZTV8CPadding @ 356 NONAME ; #<VT>#
-	_ZTV9CRijndael @ 357 NONAME ; #<VT>#
-	_ZN8TInteger16ModularMultiplyLERKS_S1_S1_ @ 358 NONAME
-	_ZN8TInteger3OneEv @ 359 NONAME
-	_ZN8TInteger3SetERK8RInteger @ 360 NONAME
-	_ZN8TInteger3TwoEv @ 361 NONAME
-	_ZN8TInteger4ZeroEv @ 362 NONAME
-	_ZN8TInteger5CopyLERKS_i @ 363 NONAME
-	_ZN8TInteger5CopyLEii @ 364 NONAME
-	_ZN8TInteger6NegateEv @ 365 NONAME
-	_ZN8TInteger6SetBitEj @ 366 NONAME
-	_ZN8TIntegerdVERKS_ @ 367 NONAME
-	_ZN8TIntegerdVEi @ 368 NONAME
-	_ZN8TIntegerlSEj @ 369 NONAME
-	_ZN8TIntegermIERKS_ @ 370 NONAME
-	_ZN8TIntegermIEi @ 371 NONAME
-	_ZN8TIntegermLERKS_ @ 372 NONAME
-	_ZN8TIntegermLEi @ 373 NONAME
-	_ZN8TIntegerpLERKS_ @ 374 NONAME
-	_ZN8TIntegerpLEi @ 375 NONAME
-	_ZN8TIntegerrMERKS_ @ 376 NONAME
-	_ZN8TIntegerrMEi @ 377 NONAME
-	_ZN8TIntegerrSEj @ 378 NONAME
-	_ZNK8TInteger10DividedByLERKS_ @ 379 NONAME
-	_ZNK8TInteger10DividedByLEj @ 380 NONAME
-	_ZNK8TInteger13ExponentiateLERKS_ @ 381 NONAME
-	_ZNK8TInteger13SignedCompareERKS_ @ 382 NONAME
-	_ZNK8TInteger13SignedCompareEi @ 383 NONAME
-	_ZN4CDES9IsWeakKeyERK6TDesC8 @ 384 NONAME
-	_ZNK8TInteger24BufferWithNoTruncationLCEv @ 385 NONAME
-
--- a/crypto/weakcrypto/eabi/hashU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,118 +0,0 @@
-EXPORTS
-	_ZTV14CMessageDigest @ 1 NONAME ; #<VT>#
-	_ZTI14CMessageDigest @ 2 NONAME ; #<TI>#
-	_ZN14CMessageDigestC2ERKS_ @ 3 NONAME
-	_ZN14CMessageDigestC2Ev @ 4 NONAME
-	_ZN14CMessageDigestD0Ev @ 5 NONAME
-	_ZN14CMessageDigestD1Ev @ 6 NONAME
-	_ZN14CMessageDigestD2Ev @ 7 NONAME
-	_ZN21CMessageDigestFactory10NewDigestLEN14CMessageDigest7THashIdE @ 8 NONAME
-	_ZN21CMessageDigestFactory11NewDigestLCEN14CMessageDigest7THashIdE @ 9 NONAME
-	_ZN21CMessageDigestFactory8NewHMACLEN14CMessageDigest7THashIdERK6TDesC8 @ 10 NONAME
-	_ZN21CMessageDigestFactory9NewHMACLCEN14CMessageDigest7THashIdERK6TDesC8 @ 11 NONAME
-	_ZN4CMD210ReplicateLEv @ 12 NONAME
-	_ZN4CMD24HashERK6TDesC8 @ 13 NONAME
-	_ZN4CMD24NewLEv @ 14 NONAME
-	_ZN4CMD25CopyLEv @ 15 NONAME
-	_ZN4CMD25FinalERK6TDesC8 @ 16 NONAME
-	_ZN4CMD25FinalEv @ 17 NONAME
-	_ZN4CMD25ResetEv @ 18 NONAME
-	_ZN4CMD26UpdateERK6TDesC8 @ 19 NONAME
-	_ZN4CMD28HashSizeEv @ 20 NONAME
-	_ZN4CMD29BlockSizeEv @ 21 NONAME
-	_ZN4CMD2D0Ev @ 22 NONAME
-	_ZN4CMD2D1Ev @ 23 NONAME
-	_ZN4CMD2D2Ev @ 24 NONAME
-	_ZN4CMD510ReplicateLEv @ 25 NONAME
-	_ZN4CMD54HashERK6TDesC8 @ 26 NONAME
-	_ZN4CMD54NewLEv @ 27 NONAME
-	_ZN4CMD55CopyLEv @ 28 NONAME
-	_ZN4CMD55FinalERK6TDesC8 @ 29 NONAME
-	_ZN4CMD55FinalEv @ 30 NONAME
-	_ZN4CMD55ResetEv @ 31 NONAME
-	_ZN4CMD56UpdateERK6TDesC8 @ 32 NONAME
-	_ZN4CMD58HashSizeEv @ 33 NONAME
-	_ZN4CMD59BlockSizeEv @ 34 NONAME
-	_ZN4CMD5D0Ev @ 35 NONAME
-	_ZN4CMD5D1Ev @ 36 NONAME
-	_ZN4CMD5D2Ev @ 37 NONAME
-	_ZN4CSHA10ReplicateLEv @ 38 NONAME
-	_ZN4CSHA4HashERK6TDesC8 @ 39 NONAME
-	_ZN4CSHA4NewLEv @ 40 NONAME
-	_ZN4CSHA5CopyLEv @ 41 NONAME
-	_ZN4CSHA5FinalERK6TDesC8 @ 42 NONAME
-	_ZN4CSHA5FinalEv @ 43 NONAME
-	_ZN4CSHA5ResetEv @ 44 NONAME
-	_ZN4CSHA6UpdateERK6TDesC8 @ 45 NONAME
-	_ZN4CSHA8HashSizeEv @ 46 NONAME
-	_ZN4CSHA9BlockSizeEv @ 47 NONAME
-	_ZN4CSHAD0Ev @ 48 NONAME
-	_ZN4CSHAD1Ev @ 49 NONAME
-	_ZN4CSHAD2Ev @ 50 NONAME
-	_ZN5CHMAC10ReplicateLEv @ 51 NONAME
-	_ZN5CHMAC4HashERK6TDesC8 @ 52 NONAME
-	_ZN5CHMAC4NewLERK6TDesC8P14CMessageDigest @ 53 NONAME
-	_ZN5CHMAC5CopyLEv @ 54 NONAME
-	_ZN5CHMAC5FinalERK6TDesC8 @ 55 NONAME
-	_ZN5CHMAC5FinalEv @ 56 NONAME
-	_ZN5CHMAC5ResetEv @ 57 NONAME
-	_ZN5CHMAC6UpdateERK6TDesC8 @ 58 NONAME
-	_ZN5CHMAC8HashSizeEv @ 59 NONAME
-	_ZN5CHMAC9BlockSizeEv @ 60 NONAME
-	_ZN5CHMACD0Ev @ 61 NONAME
-	_ZN5CHMACD1Ev @ 62 NONAME
-	_ZN5CHMACD2Ev @ 63 NONAME
-	_ZN5CSHA110ReplicateLEv @ 64 NONAME
-	_ZN5CSHA14HashERK6TDesC8 @ 65 NONAME
-	_ZN5CSHA14NewLEv @ 66 NONAME
-	_ZN5CSHA15CopyLEv @ 67 NONAME
-	_ZN5CSHA15FinalERK6TDesC8 @ 68 NONAME
-	_ZN5CSHA15FinalEv @ 69 NONAME
-	_ZN5CSHA15ResetEv @ 70 NONAME
-	_ZN5CSHA16UpdateERK6TDesC8 @ 71 NONAME
-	_ZN5CSHA18HashSizeEv @ 72 NONAME
-	_ZN5CSHA19BlockSizeEv @ 73 NONAME
-	_ZN5CSHA1D0Ev @ 74 NONAME
-	_ZN5CSHA1D1Ev @ 75 NONAME
-	_ZN5CSHA1D2Ev @ 76 NONAME
-	_ZTI4CMD2 @ 77 NONAME ; #<TI>#
-	_ZTI4CMD5 @ 78 NONAME ; #<TI>#
-	_ZTI4CSHA @ 79 NONAME ; #<TI>#
-	_ZTI5CHMAC @ 80 NONAME ; #<TI>#
-	_ZTI5CSHA1 @ 81 NONAME ; #<TI>#
-	_ZTV4CMD2 @ 82 NONAME ; #<VT>#
-	_ZTV4CMD5 @ 83 NONAME ; #<VT>#
-	_ZTV4CSHA @ 84 NONAME ; #<VT>#
-	_ZTV5CHMAC @ 85 NONAME ; #<VT>#
-	_ZTV5CSHA1 @ 86 NONAME ; #<VT>#
-	_ZN4CMD410ReplicateLEv @ 87 NONAME
-	_ZN4CMD44HashERK6TDesC8 @ 88 NONAME
-	_ZN4CMD44NewLEv @ 89 NONAME
-	_ZN4CMD45CopyLEv @ 90 NONAME
-	_ZN4CMD45FinalERK6TDesC8 @ 91 NONAME
-	_ZN4CMD45FinalEv @ 92 NONAME
-	_ZN4CMD45ResetEv @ 93 NONAME
-	_ZN4CMD46UpdateERK6TDesC8 @ 94 NONAME
-	_ZN4CMD48HashSizeEv @ 95 NONAME
-	_ZN4CMD49BlockSizeEv @ 96 NONAME
-	_ZN4CMD4D0Ev @ 97 NONAME
-	_ZN4CMD4D1Ev @ 98 NONAME
-	_ZN4CMD4D2Ev @ 99 NONAME
-	_ZTI4CMD4 @ 100 NONAME
-	_ZTV4CMD4 @ 101 NONAME
-	_ZN5CSHA210ReplicateLEv @ 102 NONAME
-	_ZN5CSHA24HashERK6TDesC8 @ 103 NONAME
-	_ZN5CSHA24NewLE8TSH2Algo @ 104 NONAME
-	_ZN5CSHA25CopyLEv @ 105 NONAME
-	_ZN5CSHA25FinalERK6TDesC8 @ 106 NONAME
-	_ZN5CSHA25FinalEv @ 107 NONAME
-	_ZN5CSHA25NewLCE8TSH2Algo @ 108 NONAME
-	_ZN5CSHA25ResetEv @ 109 NONAME
-	_ZN5CSHA26UpdateERK6TDesC8 @ 110 NONAME
-	_ZN5CSHA28HashSizeEv @ 111 NONAME
-	_ZN5CSHA29BlockSizeEv @ 112 NONAME
-	_ZN5CSHA2D0Ev @ 113 NONAME
-	_ZN5CSHA2D1Ev @ 114 NONAME
-	_ZN5CSHA2D2Ev @ 115 NONAME
-	_ZTI5CSHA2 @ 116 NONAME
-	_ZTV5CSHA2 @ 117 NONAME
--- a/crypto/weakcrypto/eabi/randomU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-EXPORTS
-	RAND_bytes @ 1 NONAME
-	_Z16SetThreadRandomLP7CRandom @ 2 NONAME
-	_Z17SetThreadRandomLCP7CRandom @ 3 NONAME
-	_Z19DestroyThreadRandomv @ 4 NONAME
-	_Z20GenerateRandomBytesLR5TDes8 @ 5 NONAME
-	_ZN13CSystemRandom4NewLEv @ 6 NONAME
-	_ZN13CSystemRandom5NewLCEv @ 7 NONAME
-	_ZN14RRandomSession8ConnectLEv @ 8 NONAME
-	_ZN14RRandomSession9GetRandomER5TDes8 @ 9 NONAME
-	_ZN14RRandomSessionC1Ev @ 10 NONAME
-	_ZN14RRandomSessionC2Ev @ 11 NONAME
-	_ZTV13CSystemRandom @ 12 NONAME ; #<VT>#
-	_ZN7CRandomC2Ev @ 13 NONAME
-	_ZN7TRandom6RandomER5TDes8 @ 14 NONAME
-	_ZTI13CSystemRandom @ 15 NONAME ; #<TI>#
-	_ZN7TRandom7RandomLER5TDes8 @ 16 NONAME
-
--- a/crypto/weakcrypto/eabi/randsvrU.DEF	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-EXPORTS
-	_Z15RunRandomServerPv @ 1 NONAME
-	_ZTI13CRandomServer @ 2 NONAME ; #<TI>#
-	_ZTI14CRandomSession @ 3 NONAME ; #<TI>#
-	_ZTI16CRandomScheduler @ 4 NONAME ; #<TI>#
-	_ZTV13CRandomServer @ 5 NONAME ; #<VT>#
-	_ZTV14CRandomSession @ 6 NONAME ; #<VT>#
-	_ZTV16CRandomScheduler @ 7 NONAME ; #<VT>#
-
--- a/crypto/weakcrypto/group/How_To_Build_Strong_Crypto.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-Previously it was not possible for teams other than Security to build the crypto
-library as the source code was licensed from RSA and access to it was
-restricted.  Now that the source for cryptography.dll is accessible in the
-master codeline all teams can build this library according to their needs.
-
-To build strong crypto, you must build the file crypto/strong/bld.inf in
-addition to crypto/group/bld.inf.  This will generate an addition dll,
-strong_cryptography.dll.
-
-This can be included in ROMs by specifying the flag USE_STRONG_CRYPTOGRAPHY.  On
-the emulator, the strong version is automatically picked up if it has been built.
--- a/crypto/weakcrypto/group/README.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-The cryptography libraries should not build thumb.  
-
-On EKA1 they cannot build on thumb because the long long support files (supplied by base) contain instructions that are not supported on that platform.  This has the knock-on effect that those components that include bigint code in their build (and thus require the long long support files too) also cannot build thumb.  The entire list of components affected is as follows:
-
-the cryptography library cryptography.dll
-tasn1 (use CopyL, operator ==, operator < and operator *=) 
-tx509, twtlscert (both use operator < and > which are not exported from TInteger) 
-
-
-On EKA2 it should not build thumb either, because it has been deemed to be too slow.  
-
-Thus the cryptography library must be built on the ARMi platform to substitute for the thumb binary where a thumb set of binaries is required (eg for Lubbock roms).  The ARMi build should occur first in the build order.  To speed up the build process, I've stopped our testcode building ARMi where it's not required to do so.
-
-Some information (from Chris Mokes) about how to prevent the cryptography library building on thumb, and how to manage ROM building follows:
-
-
-(a)	To stop thumb being built do this in the PRJ_MMPFILES section of   bld.inf
-
-#if !defined(MARM_THUMB)
-	mmpfilename
-#endif
-
-or I think you can specify -THUMB in bld.inf but that'll stop everything being build for thumb.
-
-
-(b)	You need to build the dll for ARMI, but still build a thumb lib file for thumb binaries which use the dll to be linked with.  Thumb and armi dlls are interchangable, armi code linked with the armi lib can call exports in a thumb dll and the other way around.
-
-As you've seen the rombuild downgrades to armi if the thumb binary isn't present., so if you have built the armi version and not the thumb one it will pick up the correct one.
-
-Euser has its own define EUSER_ABI in the rombuilding scripts.  EUSER_ABI is ARM4 in an ARM4 build and ARMI for thumb and armi builds. 
-
-The nicest solution is to add to epoc32\rom\include\header.iby to define a CRYPTO_ABI which will be basically the same as the euser one.
-
-Thus,
-
-header.iby 
-<snip>
-#ifdef _ARM4
-define DESIRED_ABI     ARM4
-define EUSER_ABI       ARM4
-define ELOCL_ABI       ARM4
-define CRYPTO_ABI      ARM4
-#endif
-
-#ifdef _ARMI
-define DESIRED_ABI     ARMI
-define EUSER_ABI       ARMI
-define ELOCL_ABI       ARM4
-define CRYPTO_ABI      ARMI
-#endif
-
-#ifdef _THUMB
-define DESIRED_ABI     THUMB
-define EUSER_ABI       ARMI
-define ELOCL_ABI       ARM4
-define CRYPTO_ABI      ARMI
-#endif
-<snip>
-
-
-Then use  CRYPTO_ABI rather than ABI_DIR  in cryptalg.iby.
-
-So, the simplest way is the just build armi and arm4 and the armi one will be downgraded to in a thumb rom.  This is the situation at present.  The most complex but best is to use the define CRYPTO_ABI as explained above.  This cannot be done until the cryptography libraries are submitted to the build and the Master Codeline accepts divergence from 7.0s release.
--- a/crypto/weakcrypto/group/README_POST_94_MCL_BRANCH.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-May 16th 2007
--------------
-
-PREQ57 (CryptoSPI) has now been delivered into the MCL. This
-replaces this component ('crypto') for 9.5 onwards. CryptoSPI
-is binary compatible with crypto, and provides header files in
-the following locations:
-
-   cryptospi/inc        -- old 'crypto' header files
-   cryptospi/inc/spi    -- new 'cryptospi' header files
-
-A number of other teams' MMP files continue to use hard-coded
-paths of 'common/generic/security/crypto/inc' within the MMP
-file. They do not use /epoc32/include for export-control
-reasons. When 9.4 has been branched from the MCL, these MMP
-files should be rewritten to use the location 'cryptospi/inc'
-instead. These MMP files are:
-
-   common/generic/j2me/utils/JavaMIDletInstaller/group/JavaHelper.mmp
-   common/generic/networking/ipsec/ipsec_itest/group/ts_ipsec.mmp
-   common/generic/networking/ipsec/pkiservice/group/pkiservicenew.mmp
-   common/generic/networking/ipsec/pkiservice/group/pkiservicesymb.mmp
-   common/generic/networking/ipsec/utlpkcs1/group/utlpkcs1new.mmp
-   common/generic/networking/ipsec/utlpkcs5/group/utlpkcs5new.mmp
-   common/generic/networking/ppp/group/PPP.MMP
-   common/generic/networking/ppp/te_ppp/group/t_ppp_lib.mmp
-   common/generic/syslibs/store/BMAKE/ESTOR.MMP
-   common/generic/syslibs/store/TCRYPT/T_CRYPT.MMP
-   common/generic/syslibs/store/TPAGE/T_SPAGE.MMP
-   common/generic/wap-stack/wapstack/group/wapstksrv.mmp
-
-Once these MMP files have been modified, the 'crypto' component tree
-can be deleted from Perforce and a TBAS build completed to confirm
-that there are no regressions. This will enable the old 'crypto' code
-to be removed once 9.4 has branched from the MCL.
-
--- a/crypto/weakcrypto/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Cryptographic algorithms - en/decryption, signing, verification, hashing
-*
-*/
-
-
-/**
- @file
-*/
-
-
-
-PRJ_PLATFORMS
-default winc
-
-PRJ_EXPORTS
-../inc/cryptopanic.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptopanic.h)
-../inc/hash.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(hash.h)
-../inc/random.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(random.h)
-../inc/randsvr.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(randsvr.h)
-../inc/randcliserv.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(randcliserv.h)
-../inc/pkcs5kdf.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pkcs5kdf.h)
-../inc/pkcs12kdf.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pkcs12kdf.h)
-
-../inc/crypto.iby /epoc32/rom/include/crypto.iby
-../inc/hash.iby /epoc32/rom/include/hash.iby
-../inc/random.iby /epoc32/rom/include/random.iby
-../inc/pbe.iby /epoc32/rom/include/pbe.iby
-
-
-
-#ifndef SYMBIAN_CRYPTOSPI
-#ifndef TOOLS // Don't build anything for tools
-#ifndef TOOLS2 // Don't build anything for tools2
-
-// For EKA1 arm builds, things that use long long support don't get built for thumb
-
-PRJ_MMPFILES
-cryptolib.mmp
-#ifndef MARM_THUMB
-crypto.mmp	BUILD_AS_ARM //	Don't build for thumb
-#endif
-hash.mmp
-randsvr.mmp
-random.mmp
-pbe.mmp
-
-#ifdef WINS
-cryptoswitch.mmp
-#endif
-
-PRJ_TESTMMPFILES
-tasymmetric.mmp
-#ifndef MARM_THUMB
-tbigint.mmp  BUILD_AS_ARM // Don't build for thumb
-#endif
-tpkcs5kdf.mmp 
-tpbe.mmp	
-tsymmetric.mmp
-thash.mmp
-trandom.mmp
-tpaddingServer.mmp
-
-#endif // TOOLS2
-#endif //TOOLS
-
-
-PRJ_TESTEXPORTS
-
-// bigint
-../test/tbigint/scripts/tbasicmathstests.txt /epoc32/winscw/c/tbigint/tbasicmathstests.txt
-../test/tbigint/scripts/tconstructiontests.txt /epoc32/winscw/c/tbigint/tconstructiontests.txt
-../test/tbigint/scripts/tprimegen.txt /epoc32/winscw/c/tbigint/tprimegen.txt
-../test/tbigint/scripts/tmontgomerytests.txt /epoc32/winscw/c/tbigint/tmontgomerytests.txt
-../test/tbigint/scripts/tprimetests.txt /epoc32/winscw/c/tbigint/tprimetests.txt
-../test/tbigint/scripts/tprimetests2.txt /epoc32/winscw/c/tbigint/tprimetests2.txt
-../test/tbigint/scripts/tprimefailuretests.txt /epoc32/winscw/c/tbigint/tprimefailuretests.txt
-../test/tbigint/scripts/tperformancetests.txt /epoc32/winscw/c/tbigint/tperformancetests.txt
-
-../test/tpkcs5kdf/scripts/tpkcs12kdftests.txt /epoc32/winscw/c/tpkcs5kdf/tpkcs12kdftests.txt
-
-// pbe
-../test/tpbe/scripts/tpbetests_v2.txt /epoc32/winscw/c/tpbe/tpbetests_v2.txt
-../test/tpbe/Data/strong.dat /epoc32/winscw/c/tpbe/strong.dat
-../test/tpbe/Data/weak.dat /epoc32/winscw/c/tpbe/weak.dat
-../test/tpbe/Data/pkcs5-orig.dat /epoc32/winscw/c/tpbe/pkcs5-orig.dat
-../test/tpbe/Data/pkcs12-first.dat /epoc32/winscw/c/tpbe/pkcs12-first.dat
-
-// Asymmetric
-../test/tasymmetric/scripts/tasymmetrictests.txt /epoc32/winscw/c/tasymmetric/tasymmetrictests.txt
-
-../test/tasymmetric/scripts/asymmetricPerformance.txt /epoc32/winscw/c/tasymmetric/asymmetricperformance.txt
-
-// Symmetric
-../test/tsymmetric/scripts/tsymmetrictests.txt /epoc32/winscw/c/tsymmetric/tsymmetrictests.txt
-
-../test/tsymmetric/scripts/tsymmetricperformancetests.txt /epoc32/winscw/c/tsymmetric/tsymmetricperformancetests.txt
-
-../test/tsymmetric/scripts/symmetricOOMtests.txt /epoc32/winscw/c/tsymmetric/symmetricoomtests.txt
-
-../test/tsymmetric/scripts/AESECBVectorsScript.txt /epoc32/winscw/c/tsymmetric/aesecbvectorsscript.txt
-../test/tsymmetric/scripts/AESECB_KAT_VT.txt /epoc32/winscw/c/tsymmetric/aesecb_kat_vt.txt
-../test/tsymmetric/scripts/AESECB_KAT_VK.txt /epoc32/winscw/c/tsymmetric/aesecb_kat_vk.txt
-
-../test/tsymmetric/scripts/AESMonteCarloEncryptECB128.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptecb128.txt
-../test/tsymmetric/scripts/AESMonteCarloEncryptECB192.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptecb192.txt
-../test/tsymmetric/scripts/AESMonteCarloEncryptECB256.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptecb256.txt
-
-../test/tsymmetric/scripts/AESMonteCarloDecryptECB128.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptecb128.txt
-../test/tsymmetric/scripts/AESMonteCarloDecryptECB192.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptecb192.txt
-../test/tsymmetric/scripts/AESMonteCarloDecryptECB256.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptecb256.txt
-
-../test/tsymmetric/scripts/AESMonteCarloEncryptCBC128.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptcbc128.txt
-../test/tsymmetric/scripts/AESMonteCarloEncryptCBC192.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptcbc192.txt
-../test/tsymmetric/scripts/AESMonteCarloEncryptCBC256.txt /epoc32/winscw/c/tsymmetric/aesmontecarloencryptcbc256.txt
-
-../test/tsymmetric/scripts/AESMonteCarloDecryptCBC128.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptcbc128.txt
-../test/tsymmetric/scripts/AESMonteCarloDecryptCBC192.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptcbc192.txt
-../test/tsymmetric/scripts/AESMonteCarloDecryptCBC256.txt /epoc32/winscw/c/tsymmetric/aesmontecarlodecryptcbc256.txt
-
-//	Hash
-../test/thash/testdata/hmacmd2.dat	/epoc32/winscw/c/thash/hmacmd2.dat
-../test/thash/testdata/hmacmd5.dat	/epoc32/winscw/c/thash/hmacmd5.dat
-../test/thash/testdata/hmacmd4.dat	/epoc32/winscw/c/thash/hmacmd4.dat 
-../test/thash/testdata/hmacsha1.dat	/epoc32/winscw/c/thash/hmacsha1.dat
-../test/thash/testdata/hmacsha224.dat	/epoc32/winscw/c/thash/hmacsha224.dat
-../test/thash/testdata/hmacsha256.dat	/epoc32/winscw/c/thash/hmacsha256.dat
-../test/thash/testdata/hmacsha384.dat	/epoc32/winscw/c/thash/hmacsha384.dat
-../test/thash/testdata/hmacsha512.dat	/epoc32/winscw/c/thash/hmacsha512.dat
-../test/thash/testdata/md2.dat		/epoc32/winscw/c/thash/md2.dat
-../test/thash/testdata/md5.dat		/epoc32/winscw/c/thash/md5.dat
-../test/thash/testdata/sha1.dat		/epoc32/winscw/c/thash/sha1.dat
-../test/thash/testdata/md4.dat		/epoc32/winscw/c/thash/md4.dat
-../test/thash/testdata/md4_largedata1.txt	/epoc32/winscw/c/thash/md4_largedata1.txt
-../test/thash/testdata/md4_largedata2.txt	/epoc32/winscw/c/thash/md4_largedata2.txt
-../test/thash/testdata/md4_largedata3.txt	/epoc32/winscw/c/thash/md4_largedata3.txt
-../test/thash/testdata/448bit_data.txt		/epoc32/winscw/c/thash/448bit_data.txt
-../test/thash/testdata/512bit_data.txt		/epoc32/winscw/c/thash/512bit_data.txt
-../test/thash/testdata/512bitdata_largerkey.txt	/epoc32/winscw/c/thash/512bitdata_largerkey.txt
-../test/thash/testdata/largerthanblocksizedata_key.txt	/epoc32/winscw/c/thash/largerthanblocksizedata_key.txt
-../test/thash/testdata/sha224.dat	/epoc32/winscw/c/thash/sha224.dat
-../test/thash/testdata/sha256.dat	/epoc32/winscw/c/thash/sha256.dat
-../test/thash/testdata/sha384.dat	/epoc32/winscw/c/thash/sha384.dat
-../test/thash/testdata/sha512.dat	/epoc32/winscw/c/thash/sha512.dat
-
-
-//	Padding
-../test/tpadding/scripts/tpadSSLv3.ini		/epoc32/winscw/c/tpadding/tpadsslv3.ini
-../test/tpadding/scripts/tpadpkcs7.ini		/epoc32/winscw/c/tpadding/tpadpkcs7.ini
-../test/tpadding/scripts/tpaddingnone.ini	/epoc32/winscw/c/tpadding/tpaddingnone.ini
-../test/tpadding/scripts/tpadding.script	/epoc32/winscw/c/tpadding/tpadding.script
-../test/tpadding/scripts/tpaddingudeb.script	/epoc32/winscw/c/tpadding/tpaddingudeb.script
-
-
-// ROMKIT includes
-../inc/cryptotests.iby /epoc32/rom/include/cryptotests.iby
-../inc/hashtests.iby /epoc32/rom/include/hashtests.iby
-../inc/pbetests.iby /epoc32/rom/include/pbetests.iby
-../inc/randomtests.iby /epoc32/rom/include/randomtests.iby
-../inc/pkcs5kdftests.iby /epoc32/rom/include/pkcs5kdftests.iby
-../inc/paddingtests.iby /epoc32/rom/include/paddingtests.iby
-
-#endif // SYMBIAN_CRYPTOSPI
--- a/crypto/weakcrypto/group/crypto.mmh	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Used by crypto.mmp and strong_crypto.mmp
-*
-*/
-
-
-CAPABILITY	All
-TARGETTYPE    dll
-UID			0x1000008d 0x101FD20B
-
-DEFFILE		cryptography_eka2.def
-
-NOEXPORTLIBRARY
-
-SOURCEPATH		../source/symmetric
-SOURCE			des.cpp 3des.cpp rijndael.cpp rc2.cpp arc4.cpp nullcipher.cpp
-SOURCE			cbcmode.cpp
-SOURCE			bufferedtransformation.cpp mstreamcipher.cpp
-
-SOURCEPATH		../source/common
-SOURCE			cryptostrength.cpp keyidentifierutil.cpp
-
-SOURCEPATH		../source/padding
-SOURCE			padding.cpp pkcs7.cpp
-
-SOURCEPATH 		../source/asymmetric
-SOURCE			rsakeys.cpp rsaencryptor.cpp rsadecryptor.cpp asymmetric.cpp
-SOURCE			rsafunction.cpp rsasigner.cpp rsaverifier.cpp
-SOURCE			dsasigner.cpp dsaverifier.cpp dsakeys.cpp
-SOURCE			dhkeys.cpp dh.cpp
-
-SOURCEPATH		../source/bigint
-SOURCE			windowslider.cpp algorithms.cpp bigint.cpp mont.cpp rinteger.cpp
-SOURCE			primes.cpp
-
-USERINCLUDE 	../inc
-OS_LAYER_SYSTEMINCLUDE
-
-LIBRARY			euser.lib random.lib hash.lib
-
--- a/crypto/weakcrypto/group/crypto.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose weak_cryptography.dll Weak version of cryptography.dll
-*/
-
-// Weak version of cryptography.dll, not subject to export restrictions
-
-TARGET        weak_cryptography.dll
-UNPAGED
-
-#include "crypto.mmh"
-
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/group/cryptolib.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* cryptography.lib Specifies cryptpgraphy def files
-*
-*/
-
-
-/**
- @file
-*/
-
-TARGET        cryptography.lib
-TARGETTYPE    implib
-
-DEFFILE		cryptography_eka2.def
-
-UID			0x1000008d 0x101FD20B
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/group/cryptoswitch.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* cryptography.dll Implements cryptography features
-*
-*/
-
-
-/**
- @file
-*/
-
-
-TARGET 		cryptography.dll
-CAPABILITY	All
-TARGETTYPE 	dll
-NOEXPORTLIBRARY
-
-UID		0x1000008d 0x101FD20B
-VENDORID 0x70000001
-
-DEFFILE		cryptoswitch.def
-
-SOURCEPATH	../source/cryptoswitch
-SOURCE		cryptoswitch.cpp
-
-USERINCLUDE		../source/cryptoswitch
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY		euser.lib
-LIBRARY     emulator.lib
-
-START WINS
-WIN32_LIBRARY	kernel32.lib
-END
-
-SMPSAFE
--- a/crypto/weakcrypto/group/doxyfile	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,852 +0,0 @@
-# Doxyfile 1.2.11.1
-
-# This file describes the settings to be used by the documentation system
-# doxygen (www.doxygen.org) for a project
-#
-# All text after a hash (#) is considered a comment and will be ignored
-# The format is:
-#       TAG = value [value, ...]
-# For lists items can also be appended using:
-#       TAG += value [value, ...]
-# Values that contain spaces should be placed between quotes (" ")
-
-#---------------------------------------------------------------------------
-# General configuration options
-#---------------------------------------------------------------------------
-
-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
-# by quotes) that should identify the project.
-
-PROJECT_NAME           = "Crypto"
-
-# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
-# This could be handy for archiving the generated documentation or 
-# if some version control system is used.
-
-PROJECT_NUMBER         = 
-
-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
-# base path where the generated documentation will be put. 
-# If a relative path is entered, it will be relative to the location 
-# where doxygen was started. If left blank the current directory will be used.
-
-OUTPUT_DIRECTORY       = ../docs
-
-# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
-# documentation generated by doxygen is written. Doxygen will use this 
-# information to generate all constant output in the proper language. 
-# The default language is English, other supported languages are: 
-# Brazilian, Chinese, Croatian, Czech, Danish, Dutch, Finnish, French, 
-# German, Hungarian, Italian, Japanese, Korean, Norwegian, Polish, 
-# Portuguese, Romanian, Russian, Slovak, Slovene, Spanish and Swedish.
-
-OUTPUT_LANGUAGE        = English
-
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
-# documentation are documented, even if no documentation was available. 
-# Private class members and static file members will be hidden unless 
-# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
-
-EXTRACT_ALL            = YES
-
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
-# will be included in the documentation.
-
-EXTRACT_PRIVATE        = NO
-
-# If the EXTRACT_STATIC tag is set to YES all static members of a file 
-# will be included in the documentation.
-
-EXTRACT_STATIC         = YES
-
-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
-# undocumented members of documented classes, files or namespaces. 
-# If set to NO (the default) these members will be included in the 
-# various overviews, but no documentation section is generated. 
-# This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_MEMBERS     = NO
-
-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
-# undocumented classes that are normally visible in the class hierarchy. 
-# If set to NO (the default) these class will be included in the various 
-# overviews. This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_CLASSES     = NO
-
-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
-# include brief member descriptions after the members that are listed in 
-# the file and class documentation (similar to JavaDoc). 
-# Set to NO to disable this.
-
-BRIEF_MEMBER_DESC      = YES
-
-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
-# the brief description of a member or function before the detailed description. 
-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
-# brief descriptions will be completely suppressed.
-
-REPEAT_BRIEF           = YES
-
-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
-# Doxygen will generate a detailed section even if there is only a brief 
-# description.
-
-ALWAYS_DETAILED_SEC    = YES
-
-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
-# path before files name in the file list and in the header files. If set 
-# to NO the shortest path that makes the file name unique will be used.
-
-FULL_PATH_NAMES        = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
-# can be used to strip a user defined part of the path. Stripping is 
-# only done if one of the specified strings matches the left-hand part of 
-# the path. It is allowed to use relative paths in the argument list.
-
-STRIP_FROM_PATH        = ../..
-
-# The INTERNAL_DOCS tag determines if documentation 
-# that is typed after a \internal command is included. If the tag is set 
-# to NO (the default) then the documentation will be excluded. 
-# Set it to YES to include the internal documentation.
-
-INTERNAL_DOCS          = NO
-
-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
-# generate a class diagram (in Html and LaTeX) for classes with base or 
-# super classes. Setting the tag to NO turns the diagrams off.
-
-CLASS_DIAGRAMS         = YES
-
-# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
-# be generated. Documented entities will be cross-referenced with these sources.
-
-SOURCE_BROWSER         = YES
-
-# Setting the INLINE_SOURCES tag to YES will include the body 
-# of functions and classes directly in the documentation.
-
-INLINE_SOURCES         = NO
-
-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
-# doxygen to hide any special comment blocks from generated source code 
-# fragments. Normal C and C++ comments will always remain visible.
-
-STRIP_CODE_COMMENTS    = YES
-
-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
-# file names in lower case letters. If set to YES upper case letters are also 
-# allowed. This is useful if you have classes or files whose names only differ 
-# in case and if your file system supports case sensitive file names. Windows 
-# users are adviced to set this option to NO.
-
-CASE_SENSE_NAMES       = YES
-
-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
-# (but less readable) file names. This can be useful is your file systems 
-# doesn't support long names like on DOS, Mac, or CD-ROM.
-
-SHORT_NAMES            = NO
-
-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
-# will show members with their full class and namespace scopes in the 
-# documentation. If set to YES the scope will be hidden.
-
-HIDE_SCOPE_NAMES       = NO
-
-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
-# will generate a verbatim copy of the header file for each class for 
-# which an include is specified. Set to NO to disable this.
-
-VERBATIM_HEADERS       = YES
-
-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
-# will put list of the files that are included by a file in the documentation 
-# of that file.
-
-SHOW_INCLUDE_FILES     = YES
-
-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
-# will interpret the first line (until the first dot) of a JavaDoc-style 
-# comment as the brief description. If set to NO, the JavaDoc 
-# comments  will behave just like the Qt-style comments (thus requiring an 
-# explict @brief command for a brief description.
-
-JAVADOC_AUTOBRIEF      = YES
-
-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
-# member inherits the documentation from any documented member that it 
-# reimplements.
-
-INHERIT_DOCS           = YES
-
-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
-# is inserted in the documentation for inline members.
-
-INLINE_INFO            = YES
-
-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
-# will sort the (detailed) documentation of file and class members 
-# alphabetically by member name. If set to NO the members will appear in 
-# declaration order.
-
-SORT_MEMBER_DOCS       = YES
-
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
-# tag is set to YES, then doxygen will reuse the documentation of the first 
-# member in the group (if any) for the other members of the group. By default 
-# all members of a group must be documented explicitly.
-
-DISTRIBUTE_GROUP_DOC   = NO
-
-# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
-# Doxygen uses this value to replace tabs by spaces in code fragments.
-
-TAB_SIZE               = 4
-
-# The GENERATE_TODOLIST tag can be used to enable (YES) or 
-# disable (NO) the list. This list is created by putting keyword 
-# commands in the documentation.
-
-GENERATE_TODOLIST      = YES
-
-# The GENERATE_TESTLIST tag can be used to enable (YES) or 
-# disable (NO) the test list. This list is created by putting \test 
-# commands in the documentation.
-
-GENERATE_TESTLIST      = YES
-
-# The GENERATE_BUGLIST tag can be used to enable (YES) or 
-# disable (NO) the list. This list is created by putting keyword 
-# commands in the documentation.
-
-GENERATE_BUGLIST       = YES
-
-# This tag can be used to specify a number of aliases that acts 
-# as commands in the documentation. An alias has the form "name=value". 
-# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
-# put the command \sideeffect (or @sideeffect) in the documentation, which 
-# will result in a user defined paragraph with heading "Side Effects:". 
-# You can put \n's in the value part of an alias to insert newlines.
-
-ALIASES                = 
-
-# The ENABLED_SECTIONS tag can be used to enable conditional 
-# documentation sections, marked by \if sectionname ... \endif.
-
-ENABLED_SECTIONS       = 
-
-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
-# the initial value of a variable or define consist of for it to appear in 
-# the documentation. If the initializer consists of more lines than specified 
-# here it will be hidden. Use a value of 0 to hide initializers completely. 
-# The appearance of the initializer of individual variables and defines in the 
-# documentation can be controlled using \showinitializer or \hideinitializer 
-# command in the documentation regardless of this setting.
-
-MAX_INITIALIZER_LINES  = 30
-
-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources 
-# only. Doxygen will then generate output that is more tailored for C. 
-# For instance some of the names that are used will be different. The list 
-# of all members will be omitted, etc.
-
-OPTIMIZE_OUTPUT_FOR_C  = NO
-
-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
-# at the bottom of the documentation of classes and structs. If set to YES the 
-# list will mention the files that were used to generate the documentation.
-
-SHOW_USED_FILES        = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-
-# The QUIET tag can be used to turn on/off the messages that are generated 
-# by doxygen. Possible values are YES and NO. If left blank NO is used.
-
-QUIET                  = NO
-
-# The WARNINGS tag can be used to turn on/off the warning messages that are 
-# generated by doxygen. Possible values are YES and NO. If left blank 
-# NO is used.
-
-WARNINGS               = YES
-
-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
-# automatically be disabled.
-
-WARN_IF_UNDOCUMENTED   = YES
-
-# The WARN_FORMAT tag determines the format of the warning messages that 
-# doxygen can produce. The string should contain the $file, $line, and $text 
-# tags, which will be replaced by the file and line number from which the 
-# warning originated and the warning text.
-
-WARN_FORMAT            = 
-
-# The WARN_LOGFILE tag can be used to specify a file to which warning 
-# and error messages should be written. If left blank the output is written 
-# to stderr.
-
-WARN_LOGFILE           = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-
-# The INPUT tag can be used to specify the files and/or directories that contain 
-# documented source files. You may enter file names like "myfile.cpp" or 
-# directories like "/usr/src/myproject". Separate the files or directories 
-# with spaces.
-
-INPUT                  = ../inc/ ../docs/ ../source
-
-# If the value of the INPUT tag contains directories, you can use the 
-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank all files are included.
-
-FILE_PATTERNS          = *.h *.dox *.inl *.cpp
-
-# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
-# should be searched for input files as well. Possible values are YES and NO. 
-# If left blank NO is used.
-
-RECURSIVE              = YES
-
-# The EXCLUDE tag can be used to specify files and/or directories that should 
-# excluded from the INPUT source files. This way you can easily exclude a 
-# subdirectory from a directory tree whose root is specified with the INPUT tag.
-
-EXCLUDE                = 
-
-# If the value of the INPUT tag contains directories, you can use the 
-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
-# certain files from those directories.
-
-EXCLUDE_PATTERNS       = 
-
-# The EXAMPLE_PATH tag can be used to specify one or more files or 
-# directories that contain example code fragments that are included (see 
-# the \include command).
-
-EXAMPLE_PATH           = 
-
-# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank all files are included.
-
-EXAMPLE_PATTERNS       = 
-
-# The IMAGE_PATH tag can be used to specify one or more files or 
-# directories that contain image that are included in the documentation (see 
-# the \image command).
-
-IMAGE_PATH             = ../docsrc
-
-# The INPUT_FILTER tag can be used to specify a program that doxygen should 
-# invoke to filter for each input file. Doxygen will invoke the filter program 
-# by executing (via popen()) the command <filter> <input-file>, where <filter> 
-# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
-# input file. Doxygen will then use the output that the filter program writes 
-# to standard output.
-
-INPUT_FILTER           = 
-
-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
-# INPUT_FILTER) will be used to filter the input files when producing source 
-# files to browse.
-
-FILTER_SOURCE_FILES    = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-
-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
-# of all compounds will be generated. Enable this if the project 
-# contains a lot of classes, structs, unions or interfaces.
-
-ALPHABETICAL_INDEX     = YES
-
-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
-# in which this list will be split (can be a number in the range [1..20])
-
-COLS_IN_ALPHA_INDEX    = 5
-
-# In case all classes in a project start with a common prefix, all 
-# classes will be put under the same header in the alphabetical index. 
-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
-# should be ignored while generating the index headers.
-
-IGNORE_PREFIX          = CCT TCT MCT
-
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
-# generate HTML output.
-
-GENERATE_HTML          = YES
-
-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `html' will be used as the default path.
-
-HTML_OUTPUT            = 
-
-# The HTML_HEADER tag can be used to specify a personal HTML header for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard header.
-
-HTML_HEADER            = 
-
-# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard footer.
-
-HTML_FOOTER            = 
-
-# The HTML_STYLESHEET tag can be used to specify a user defined cascading 
-# style sheet that is used by each HTML page. It can be used to 
-# fine-tune the look of the HTML output. If the tag is left blank doxygen 
-# will generate a default style sheet
-
-HTML_STYLESHEET        = 
-
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
-# files or namespaces will be aligned in HTML using tables. If set to 
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS     = YES
-
-# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
-# will be generated that can be used as input for tools like the 
-# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
-# of the generated HTML documentation.
-
-GENERATE_HTMLHELP      = YES
-
-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
-# controls if a separate .chi index file is generated (YES) or that 
-# it should be included in the master .chm file (NO).
-
-GENERATE_CHI           = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
-# controls whether a binary table of contents is generated (YES) or a 
-# normal table of contents (NO) in the .chm file.
-
-BINARY_TOC             = NO
-
-# The TOC_EXPAND flag can be set to YES to add extra items for group members 
-# to the contents of the Html help documentation and to the tree view.
-
-TOC_EXPAND             = NO
-
-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
-# top of each HTML page. The value NO (the default) enables the index and 
-# the value YES disables it.
-
-DISABLE_INDEX          = NO
-
-# This tag can be used to set the number of enum values (range [1..20]) 
-# that doxygen will group on one line in the generated HTML documentation.
-
-ENUM_VALUES_PER_LINE   = 4
-
-# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
-# generated containing a tree-like index structure (just like the one that 
-# is generated for HTML Help). For this to work a browser that supports 
-# JavaScript and frames is required (for instance Netscape 4.0+ 
-# or Internet explorer 4.0+).
-
-GENERATE_TREEVIEW      = YES
-
-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
-# used to set the initial width (in pixels) of the frame in which the tree 
-# is shown.
-
-TREEVIEW_WIDTH         = 250
-
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
-# generate Latex output.
-
-GENERATE_LATEX         = NO
-
-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `latex' will be used as the default path.
-
-LATEX_OUTPUT           = 
-
-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
-# LaTeX documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_LATEX          = NO
-
-# The PAPER_TYPE tag can be used to set the paper type that is used 
-# by the printer. Possible values are: a4, a4wide, letter, legal and 
-# executive. If left blank a4wide will be used.
-
-PAPER_TYPE             = a4wide
-
-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
-# packages that should be included in the LaTeX output.
-
-EXTRA_PACKAGES         = 
-
-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
-# the generated latex document. The header should contain everything until 
-# the first chapter. If it is left blank doxygen will generate a 
-# standard header. Notice: only use this tag if you know what you are doing!
-
-LATEX_HEADER           = 
-
-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
-# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
-# contain links (just like the HTML output) instead of page references 
-# This makes the output suitable for online browsing using a pdf viewer.
-
-PDF_HYPERLINKS         = NO
-
-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
-# plain latex in the generated Makefile. Set this option to YES to get a 
-# higher quality PDF documentation.
-
-USE_PDFLATEX           = NO
-
-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
-# command to the generated LaTeX files. This will instruct LaTeX to keep 
-# running if errors occur, instead of asking the user for help. 
-# This option is also used when generating formulas in HTML.
-
-LATEX_BATCHMODE        = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
-# The RTF output is optimised for Word 97 and may not look very pretty with 
-# other RTF readers or editors.
-
-GENERATE_RTF           = NO
-
-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `rtf' will be used as the default path.
-
-RTF_OUTPUT             = 
-
-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
-# RTF documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_RTF            = NO
-
-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
-# will contain hyperlink fields. The RTF file will 
-# contain links (just like the HTML output) instead of page references. 
-# This makes the output suitable for online browsing using WORD or other 
-# programs which support those fields. 
-# Note: wordpad (write) and others do not support links.
-
-RTF_HYPERLINKS         = YES
-
-# Load stylesheet definitions from file. Syntax is similar to that of doxygen's 
-# config file, i.e. a series of assigments. You only have to provide 
-# replacements, missing definitions are set to their default value.
-
-RTF_STYLESHEET_FILE    = 
-
-# Set optional variables used in the generation of an rtf document. 
-# Syntax is similar to that of doxygen's config file.
-
-RTF_EXTENSIONS_FILE    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
-# generate man pages
-
-GENERATE_MAN           = NO
-
-# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `man' will be used as the default path.
-
-MAN_OUTPUT             = 
-
-# The MAN_EXTENSION tag determines the extension that is added to 
-# the generated man pages (default is the subroutine's section .3)
-
-MAN_EXTENSION          = 
-
-# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
-# then it will generate one additional man file for each entity
-# documented in the real man page(s). These additional files
-# only source the real man page, but without them the man command
-# would be unable to find the correct page. The default is NO.
-
-MAN_LINKS              = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_XML tag is set to YES Doxygen will 
-# generate an XML file that captures the structure of 
-# the code including all documentation. Note that this 
-# feature is still experimental and not complete at the 
-# moment.
-
-GENERATE_XML           = NO
-
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-
-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
-# evaluate all C-preprocessor directives found in the sources and include 
-# files.
-
-ENABLE_PREPROCESSING   = YES
-
-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
-# names in the source code. If set to NO (the default) only conditional 
-# compilation will be performed. Macro expansion can be done in a controlled 
-# way by setting EXPAND_ONLY_PREDEF to YES.
-
-MACRO_EXPANSION        = NO
-
-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
-# then the macro expansion is limited to the macros specified with the 
-# PREDEFINED and EXPAND_AS_PREDEFINED tags.
-
-EXPAND_ONLY_PREDEF     = NO
-
-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
-# in the INCLUDE_PATH (see below) will be search if a #include is found.
-
-SEARCH_INCLUDES        = YES
-
-# The INCLUDE_PATH tag can be used to specify one or more directories that 
-# contain include files that are not input files but should be processed by 
-# the preprocessor.
-
-INCLUDE_PATH           = 
-
-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
-# patterns (like *.h and *.hpp) to filter out the header-files in the 
-# directories. If left blank, the patterns specified with FILE_PATTERNS will 
-# be used.
-
-INCLUDE_FILE_PATTERNS  = 
-
-# The PREDEFINED tag can be used to specify one or more macro names that 
-# are defined before the preprocessor is started (similar to the -D option of 
-# gcc). The argument of the tag is a list of macros of the form: name 
-# or name=definition (no spaces). If the definition and the = are 
-# omitted =1 is assumed.
-
-PREDEFINED             = SYMBIAN_CRYPTO
-
-# If the MACRO_EXPANSION and EXPAND_PREDEF_ONLY tags are set to YES then 
-# this tag can be used to specify a list of macro names that should be expanded. 
-# The macro definition that is found in the sources will be used. 
-# Use the PREDEFINED tag if you want to use a different macro definition.
-
-EXPAND_AS_DEFINED      = 
-
-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
-# doxygen's preprocessor will remove all function-like macros that are alone 
-# on a line and do not end with a semicolon. Such function macros are typically 
-# used for boiler-plate code, and will confuse the parser if not removed.
-
-SKIP_FUNCTION_MACROS   = YES
-
-#---------------------------------------------------------------------------
-# Configuration::addtions related to external references   
-#---------------------------------------------------------------------------
-
-# The TAGFILES tag can be used to specify one or more tagfiles.
-
-TAGFILES               = 
-
-# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
-# a tag file that is based on the input files it reads.
-
-GENERATE_TAGFILE       = DOXYTAGS
-
-# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
-# in the class index. If set to NO only the inherited external classes 
-# will be listed.
-
-ALLEXTERNALS           = NO
-
-# The PERL_PATH should be the absolute path and name of the perl script 
-# interpreter (i.e. the result of `which perl').
-
-PERL_PATH              = 
-
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-
-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
-# available from the path. This tool is part of Graphviz, a graph visualization 
-# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
-# have no effect if this option is set to NO (the default)
-
-HAVE_DOT               = YES
-
-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect inheritance relations. Setting this tag to YES will force the 
-# the CLASS_DIAGRAMS tag to NO.
-
-CLASS_GRAPH            = YES
-
-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect implementation dependencies (inheritance, containment, and 
-# class references variables) of the class with other documented classes.
-
-COLLABORATION_GRAPH    = YES
-
-# If set to YES, the inheritance and collaboration graphs will show the 
-# relations between templates and their instances.
-
-TEMPLATE_RELATIONS     = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
-# tags are set to YES then doxygen will generate a graph for each documented 
-# file showing the direct and indirect include dependencies of the file with 
-# other documented files.
-
-INCLUDE_GRAPH          = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
-# documented header file showing the documented files that directly or 
-# indirectly include this file.
-
-INCLUDED_BY_GRAPH      = YES
-
-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
-# will graphical hierarchy of all classes instead of a textual one.
-
-GRAPHICAL_HIERARCHY    = YES
-
-# The tag DOT_PATH can be used to specify the path where the dot tool can be 
-# found. If left blank, it is assumed the dot tool can be found on the path.
-
-DOT_PATH               = 
-
-# The DOTFILE_DIRS tag can be used to specify one or more directories that 
-# contain dot files that are included in the documentation (see the 
-# \dotfile command).
-
-DOTFILE_DIRS           = 
-
-# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width 
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
-# this value, doxygen will try to truncate the graph, so that it fits within 
-# the specified constraint. Beware that most browsers cannot cope with very 
-# large images.
-
-MAX_DOT_GRAPH_WIDTH    = 1024
-
-# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height 
-# (in pixels) of the graphs generated by dot. If a graph becomes larger than 
-# this value, doxygen will try to truncate the graph, so that it fits within 
-# the specified constraint. Beware that most browsers cannot cope with very 
-# large images.
-
-MAX_DOT_GRAPH_HEIGHT   = 1024
-
-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
-# generate a legend page explaining the meaning of the various boxes and 
-# arrows in the dot generated graphs.
-
-GENERATE_LEGEND        = YES
-
-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
-# remove the intermedate dot files that are used to generate 
-# the various graphs.
-
-DOT_CLEANUP            = YES
-
-#---------------------------------------------------------------------------
-# Configuration::addtions related to the search engine   
-#---------------------------------------------------------------------------
-
-# The SEARCHENGINE tag specifies whether or not a search engine should be 
-# used. If set to NO the values of all tags below this one will be ignored.
-
-SEARCHENGINE           = NO
-
-# The CGI_NAME tag should be the name of the CGI script that 
-# starts the search engine (doxysearch) with the correct parameters. 
-# A script with this name will be generated by doxygen.
-
-CGI_NAME               = 
-
-# The CGI_URL tag should be the absolute URL to the directory where the 
-# cgi binaries are located. See the documentation of your http daemon for 
-# details.
-
-CGI_URL                = 
-
-# The DOC_URL tag should be the absolute URL to the directory where the 
-# documentation is located. If left blank the absolute path to the 
-# documentation, with file:// prepended to it, will be used.
-
-DOC_URL                = 
-
-# The DOC_ABSPATH tag should be the absolute path to the directory where the 
-# documentation is located. If left blank the directory on the local machine 
-# will be used.
-
-DOC_ABSPATH            = 
-
-# The BIN_ABSPATH tag must point to the directory where the doxysearch binary 
-# is installed.
-
-BIN_ABSPATH            = 
-
-# The EXT_DOC_PATHS tag can be used to specify one or more paths to 
-# documentation generated for other projects. This allows doxysearch to search 
-# the documentation for these projects as well.
-
-EXT_DOC_PATHS          = 
-
-ALIASES =	panic=@exception \
-			leave=@exception \
-			"capability=@par Capabilities" \
-			"internalTechnology=@par Internal technology" \
-			"internalComponent=@par Internal component"\
-			"internalAll=@par Internal all" \
-			"prototype=@par Prototype" \
-			"interim=@par Interim" \
-			"released=@par Released" \
-			"removed=@par Removed" \
-			"publishedPartner=@par Published-partner" \
-			"publishedAll=@par Published-all" \
-			"test=@par test"
--- a/crypto/weakcrypto/group/hash.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
-@file
-
-@SYMPurpose hash.dll Hash functions such as MD5, SHA1 and HMAC
-*/
-
-TARGET			hash.dll
-CAPABILITY All
-TARGETTYPE		DLL
-UNPAGED
-
-UID      0x1000008d 0x10005E11 
-VENDORID 0x70000001
-
-SOURCEPATH	../source/hash
-SOURCE          hash.cpp md2.cpp md5.cpp sha1.cpp hmac.cpp md4.cpp sha2.cpp sha224and256.cpp sha384and512.cpp
-
-USERINCLUDE		../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY         euser.lib 
-
-START WINS
-BASEADDRESS     0x7b100000
-END
-
-SMPSAFE
--- a/crypto/weakcrypto/group/pbe.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* pbe.dll Implements Password based Encryption
-*
-*/
-
-
-/**
- @file
-*/
-
-TARGET        pbe.dll
-CAPABILITY All
-TARGETTYPE    DLL
-UNPAGED
-
-UID    0x1000008d 0x101F7F20
-VENDORID 0x70000001
-
-SOURCEPATH	../source/pbe
-SOURCE		pbe.cpp pbencryptor.cpp pbeset.cpp 
-SOURCE		pbedata.cpp pbencryptorset.cpp 
-SOURCE		pbesymmetricfactory.cpp
-
-SOURCEPATH	../source/pkcs5kdf
-SOURCE		pkcs5kdf.cpp
-
-SOURCEPATH		../source/pkcs12kdf
-SOURCE			pkcs12kdf.cpp
-
-USERINCLUDE   ../inc
-USERINCLUDE   ../source/symmetric
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY       euser.lib cryptography.lib hash.lib random.lib
-
-DEFFILE		PBE_v2.def
-
-SMPSAFE
--- a/crypto/weakcrypto/group/random.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
-@file
-
-@SYMPurpose random.dll Pseudo-random number generator server, client-side
-*/
-
-TARGET			random.dll
-CAPABILITY All
-TARGETTYPE		DLL
-UNPAGED
-
-UID      0x1000008d 0x10005E12
-VENDORID 0x70000001
-
-SOURCEPATH	../source/random
-SOURCE          random.cpp threadrandom.cpp
-
-USERINCLUDE 	../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-OS_LAYER_LIBC_SYSTEMINCLUDE
-
-LIBRARY         euser.lib 
-
-START WINS
-BASEADDRESS     0x7b120000
-END
-SMPSAFE
--- a/crypto/weakcrypto/group/randsvr.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
-@file
-
-@SYMPurpose randsvr.exe Pseudo-random number generator server
-*/
-
-TARGET			randsvr.exe
-CAPABILITY ProtServ
-TARGETTYPE		EXEXP
-
-UID      0x1000008d 0x100066dc
-VENDORID 0x70000001
-
-SOURCEPATH	../source/random
-SOURCE          randsvr.cpp
-
-USERINCLUDE 	../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-OS_LAYER_LIBC_SYSTEMINCLUDE
-LIBRARY         euser.lib 
-LIBRARY 	hash.lib
-
-START WINS
-BASEADDRESS     0x7b130000
-END
-SMPSAFE
--- a/crypto/weakcrypto/group/security_crypto_strong.history.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,80 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="Cryptography Library">
-  <purpose>
-    Non-RSA cryptographic algorithms including symmetric and asymmetric ciphers, hash functions and a cryptographic strong random number generator. Supercedes RSA-based Security/cryptalg, export restricted.
-  </purpose>
-
-  <deliverystep number="" name="PREQ2193 SMP-Safe Crypto Services Components" osproject="Diran" revision="016">
-	  <milestone project="GT0433" number="MS3.7"/>
-	  <preq number="2193" title="SMP-Safe Crypto Services Components">
-		  Add SMPSAFE keyword in SDP mmp files
-	  </preq>
-  </deliverystep>
- 
- <defect number="DEF124570" title="Annoying preprocessor warnings due to wrong keyword in symmetric.h" revision="015">
-    Fixed preprocessor warnings as a result of error within symmetric.h 
-  </defect>
-
-  <deliverystep number="921" name="PREQ1493: Crypto Services: Add SHA 224, 256, 384, 512 hash algorithms to the Cryptographic Library." osproject="Sphinx" revision="014">
-     <milestone project="GT0379" number="MS3.15"/>
-     <preq number="1493" title="Add SHA 224, 256, 384, 512 hash algorithms to the Cryptographic Library.">
-       Adds support for SHA 224, 256, 384, 512 algorithms to the old Crypto library in Naiad.
-     </preq>
-  </deliverystep>
-  
-  <defect number="PDEF114232" title="RandomServer crashes under IPC attack" revision="013">
-    Added parameter validation for Random Server.
-  </defect>
-
-  <defect number="DEF112296" title="HMAC(crypto) only works with hash functions having 64 byte block" revision="012">
-    HMAC(crypto) works with the block size as supplied by the hash algorithm.
-  </defect>
-  
-  <deliverystep number="496" name="EC073: Security: Crypto Services Header File Refactoring" osproject="Oghma" revision="011">
-	  <milestone project="GT0313" number="MS3.7"/>
-	  <ec number="73" title="Crypto Services Header File Refactoring (to simplify the SDK creation process)">
-		  Non-exported published functions made internal.
-		  Status added to published files if it was missing.
-	  </ec>
-  </deliverystep>
-
-  <defect number="DEF106230" title="Clean up build's tagscan errors" revision="010">
-    Removed tagscan errors
-  </defect>
-
-  <defect number="DEF107276" title="Lint errors in security code should be fixed (production and test)" revision="009">
-    Minor changes to remove lint errors
-  </defect>
-
-  <ec number="074" title="Include an implementation of the MD4 hash function (IETF RFC 1320) in those provided by the Symbian Hash library (part of Symbian Security subsystem)" revision="008">
-    Added the MD4 Message Digest Algorithm(RFC 1320) implementation.
-  </ec>
-
-  <preq number="1182" title="GNU Make-based build system" revision="007">
-    TOOLS2 macro is added with TOOLS.
-  </preq>
-
-  <preq number="1182" title="GNU Make-based build system" revision="006">
-    Changed according to filename policy to support the building of Symbian OS on both Windows and Linux for the test code.
-  </preq>
-
-  <defect number="DEF101551" title="tpkcs5kdftests.txt regression" revision="005">
-    Removed tpkcs5kdftests.txt and added the test cases present in tpkcs5kdftests.txt to tpkcs12kdftests.txt. Removed pbeU.def.
-  </defect>
-
-  <defect number="DEF102043" title="Makesis &amp; SWI assumes system drive is c:" revision="004">
-    Removed hardcoded references to C drive and replaced with system drive.
-  </defect>
-
-  <defect number="PDEF098589" title="The length of the RSA signature should be the length of the RSA modulus" revision="003">
-    Added a function which takes care leading zeros in the signature
-  </defect>
-
-  <defect number="DEF096191" title="57: t_testhandler2 OOM test framework can go into an infinite loop" revision="002">
-    Infinite loop exited when any unknown error comes other than KErrNone and KErrNoMemory for OOM Test Framework.
-  </defect>
-
-  <defect number="DEF099289" title="Remove SYMBIAN_PKCS12 #ifdefs from code" revision="001">
-    Removed SYMBIAN_PKCS12 #ifdefs from code.
-  </defect>
-</relnotes>
--- a/crypto/weakcrypto/group/security_crypto_strong.mrp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-component	security_crypto_strong
-source	\sf\os\security\crypto\weakcrypto
-binary  \sf\os\security\crypto\weakcrypto\strong all
-exports  \sf\os\security\crypto\weakcrypto\strong
-notes_source	\component_defs\release.src
-
-
-#  == IPR section auto-inserted from distribution.policy files  ==
-ipr export-restricted E 
-ipr export-restricted B \sf\os\security\crypto\weakcrypto\docs
-ipr export-restricted B \sf\os\security\crypto\weakcrypto\source
-ipr export-restricted B \sf\os\security\crypto\weakcrypto\strong
-ipr export-restricted T \sf\os\security\crypto\weakcrypto\test
-
-# == end auto-inserted section ==
--- a/crypto/weakcrypto/group/security_crypto_weak.history.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="Cryptography Library">
-  <purpose>
-    Non-RSA cryptographic algorithms including symmetric and asymmetric ciphers, hash functions and a cryptographic strong random number generator. Supercedes RSA-based Security/cryptalg, export restricted.
-  </purpose>
-
-  <deliverystep number="" name="PREQ2193 SMP-Safe Crypto Services Components" osproject="Diran" revision="015">
-	  <milestone project="GT0433" number="MS3.7"/>
-	  <preq number="2193" title="SMP-Safe Crypto Services Components">
-		  Add SMPSAFE keyword in SDP mmp files
-	  </preq>
-  </deliverystep>
- 
- <deliverystep number="921" name="PREQ1493: Crypto Services: Add SHA 224, 256, 384, 512 hash algorithms to the Cryptographic Library." osproject="Sphinx" revision="014">
-     <milestone project="GT0379" number="MS3.15"/>
-     <preq number="1493" title="Add SHA 224, 256, 384, 512 hash algorithms to the Cryptographic Library.">
-       Adds support for SHA 224, 256, 384, 512 algorithms to the old Crypto library in Naiad.
-     </preq>
-  </deliverystep>  
-  
-  <defect number=" PDEF114232" title="RandomServer crashes under IPC attack" revision="012">
-    Added parameter validation for Random Server.
-  </defect>
-  
-  <defect number="DEF112296" title="HMAC(crypto) only works with hash functions having 64 byte block" revision="011">
-    HMAC(crypto) works with the block size as supplied by the hash algorithm.
-  </defect>
-  
-  <deliverystep number="496" name="EC073: Security: Crypto Services Header File Refactoring" osproject="Oghma" revision="010">
-	  <milestone project="GT0313" number="MS3.7"/>
-	  <ec number="73" title="Crypto Services Header File Refactoring (to simplify the SDK creation process)">
-		  Non-exported published functions made internal.
-		  Status added to published files if it was missing.
-	  </ec>
-  </deliverystep>
-
-  <defect number="DEF106230" title="Clean up build's tagscan errors" revision="009">
-    Removed tagscan errors
-  </defect>
-
-  <defect number="DEF107276" title="Lint errors in security code should be fixed (production and test)" revision="008">
-    Minor changes to remove lint errors
-  </defect>
-
-  <ec number="074" title="Include an implementation of the MD4 hash function (IETF RFC 1320) in those provided by the Symbian Hash library (part of Symbian Security subsystem)" revision="007">
-    Added the MD4 Message Digest Algorithm(RFC 1320) implementation.
-  </ec>
-
-  <preq number="1182" title="GNU Make-based build system" revision="006">
-    TOOLS2 macro is added with TOOLS.
-  </preq>
-
-  <preq number="1182" title="GNU Make-based build system" revision="005">
-    Changed according to filename policy to support the building of Symbian OS on both Windows and Linux for the test code.
-  </preq>
-
-  <defect number="DEF101551" title="tpkcs5kdftests.txt regression" revision="004">
-    Removed tpkcs5kdftests.txt and added the test cases present in tpkcs5kdftests.txt to tpkcs12kdftests.txt. Removed pbeU.def.
-  </defect>
-
-  <defect number="DEF102043" title="Makesis &amp; SWI assumes system drive is c:" revision="003">
-    Removed hardcoded references to C drive and replaced with system drive.
-  </defect>
-
-  <defect number="PDEF098589" title="The length of the RSA signature should be the length of the RSA modulus" revision="002">
-    Added a function which takes care leading zeros in the signature
-  </defect>
-
-  <defect number="DEF096191" title="57: t_testhandler2 OOM test framework can go into an infinite loop" revision="001">
-    Infinite loop exited when any unknown error comes other than KErrNone and KErrNoMemory for OOM Test Framework.
-  </defect>
-</relnotes>
--- a/crypto/weakcrypto/group/security_crypto_weak.mrp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-component security_crypto_weak
-binary  \sf\os\security\crypto\weakcrypto\group all
-exports \sf\os\security\crypto\weakcrypto\group security_crypto_strong
-notes_source \component_defs\release.src 
-
-
-
--- a/crypto/weakcrypto/group/tasymmetric.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose tasymmetric.exe Test harness for asymmetric implementation
-*/
-
-TARGET	tasymmetric.exe
-TARGETTYPE	exe
-UID 0x10000079 0x101F7F1F
-VENDORID 0x70000001
-
-SOURCEPATH	../test/tasymmetric
-SOURCE tasymmetricmain.cpp
-SOURCE trsaencryptfb.cpp trsasignfb.cpp 
-SOURCE tdsasignfb.cpp tdsavector.cpp
-SOURCE tvectortest.cpp trsavector.cpp tvectorutils.cpp
-SOURCE tbrokenrandom.cpp tdsaprimegen.cpp
-SOURCE performancetest.cpp
-SOURCE tsignatureinput.cpp
-SOURCE tdhvector.cpp
-SOURCE trsaparams.cpp
-
-USERINCLUDE .
-USERINCLUDE ../inc 
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY	euser.lib efsrv.lib t_testhandler2.lib random.lib cryptography.lib hash.lib
-SMPSAFE
--- a/crypto/weakcrypto/group/tbigint.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose tbigint.exe Test harness for bigint implemetation
-*/
-
-TARGET	tbigint.exe
-TARGETTYPE	exe
-UID 0x10000079 0x10001011
-VENDORID 0x70000001
-
-SOURCEPATH	../test/tbigint
-SOURCE tbigintmain.cpp tconstructionvector.cpp tconstructionfb.cpp
-SOURCE tbasicmathsvector.cpp tbasicmathsfb.cpp
-SOURCE tmontgomeryvector.cpp tmontgomeryfb.cpp
-SOURCE tutils.cpp tprimevector.cpp tmontgomeryperformance.cpp
-SOURCE tprimegenperformance.cpp tprimevectorperformance.cpp
-SOURCE tprimegen.cpp tprimegenvector.cpp
-
-// Include bigint code, so we can test non-public functionality
-
-SOURCEPATH		../source/bigint
-SOURCE			windowslider.cpp algorithms.cpp bigint.cpp mont.cpp rinteger.cpp
-SOURCE			primes.cpp
-
-
-USERINCLUDE ../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY	euser.lib efsrv.lib t_testhandler2.lib random.lib
-SMPSAFE
--- a/crypto/weakcrypto/group/thash.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose thash.exe Test harness for hash implemetation
-*/
-
-TARGET        thash.exe
-TARGETTYPE    EXE
-
-SOURCEPATH	.              
-SOURCE        ../test/thash/thash.cpp
-SOURCE        ../test/thash/hashtestutils.cpp
-
-USERINCLUDE  ../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-LIBRARY       euser.lib efsrv.lib hash.lib charconv.lib
-
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/group/tpaddingServer.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-TARGET 		tpaddingserver.exe
-TARGETTYPE 	exe
-UID 		0x1000007a 0x101f777c
-CAPABILITY	ReadUserData WriteUserData
-
-VENDORID	0x70000001
-
-SOURCEPATH	../test/tpadding
-SOURCE 		tpaddingServer.cpp
-SOURCE 		tpaddingTestSteps.cpp
-SOURCE 		tpaddingNone.cpp
-SOURCE		tpaddingSSLv3.cpp
-SOURCE		tpaddingPKCS1.cpp
-SOURCE		tpaddingPKCS7.cpp
-
-USERINCLUDE	../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY		testexecuteutils.lib
-LIBRARY		testexecutelogclient.lib
-LIBRARY		euser.lib cryptography.lib random.lib
-SMPSAFE
--- a/crypto/weakcrypto/group/tpbe.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose tpbe.exe Test harness for password based encryption
-*/
-
-TARGET	tpbe.exe
-TARGETTYPE	exe
-UID 0x10000079 0x101F7F22
-VENDORID 0x70000001
-
-SOURCEPATH	../test/tpbe
-SOURCE tactionelement.cpp tpbemain.cpp tactionset.cpp tactionsetwritepfs.cpp tactionsetreadpfs.cpp
-SOURCE		texternpbeparams.cpp
-
-USERINCLUDE ../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-OS_LAYER_LIBC_SYSTEMINCLUDE
-
-LIBRARY	euser.lib efsrv.lib t_testhandler2.lib pbe.lib estor.lib cryptography.lib
-
-SMPSAFE
-
--- a/crypto/weakcrypto/group/tpkcs5kdf.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose tpkcs5kdf.exe Test harness for pkcs5 implementation
-*/
-
-TARGET	tpkcs5kdf.exe
-TARGETTYPE	exe
-UID 0x10000079 0x101F7F23
-VENDORID 0x70000001
-
-SOURCEPATH	../test/tpkcs5kdf
-SOURCE tactionderivekey.cpp tpkcs5kdfmain.cpp
-
-USERINCLUDE ../inc
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-OS_LAYER_LIBC_SYSTEMINCLUDE
-
-LIBRARY	euser.lib efsrv.lib t_testhandler2.lib pbe.lib estlib.lib
-
-SMPSAFE
-
-
--- a/crypto/weakcrypto/group/trandom.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose t_random.exe Test harness for random generation implementation
-*/
-
-TARGET        t_random.exe
-TARGETTYPE    EXE
-
-SOURCEPATH	../test/trandom
-SOURCE        t_random.cpp
-
-USERINCLUDE ../inc 
-USERINCLUDE ../source/random
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY       euser.lib 
-LIBRARY       efsrv.lib random.lib
-
-
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/group/tsymmetric.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose tsymmetric.exe Test harness for symmetric implementation
-*/
-
-TARGET	tsymmetric.exe
-TARGETTYPE	exe
-UID 0x10000079 0x101F7F1F
-VENDORID 0x70000001
-
-SOURCEPATH	../test/tsymmetric
-SOURCE			tperformancetest.cpp
-SOURCE			tactionvector.cpp
-SOURCE			tactionincremental.cpp
-SOURCE			tactionmontecarlo.cpp
-SOURCE			tsymmetricmain.cpp
-SOURCE			cryptotestaction.cpp
-
-USERINCLUDE .
-USERINCLUDE 	../inc
-USERINCLUDE 	../source/symmetric
-
-OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-
-LIBRARY			euser.lib efsrv.lib t_testhandler2.lib 
-LIBRARY			cryptography.lib random.lib
-SMPSAFE
--- a/crypto/weakcrypto/source/asymmetric/asymmetric.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <bigint.h>
-
-/* MCryptoSystem */
-
-EXPORT_C MCryptoSystem::MCryptoSystem(void)
-	{
-	}
-
-/* CEncryptor */
-
-EXPORT_C CEncryptor::CEncryptor(void)
-	{
-	}
-
-/* CDecryptor */
-
-EXPORT_C CDecryptor::CDecryptor(void)
-	{
-	}
-
-/* MSignatureSystem */
-
-EXPORT_C MSignatureSystem::MSignatureSystem(void)
-	{
-	}
-
-/* CRSASignature */ 
-
-EXPORT_C CRSASignature* CRSASignature::NewL(RInteger& aS)
-	{
-	CRSASignature* self = new(ELeave)CRSASignature(aS);
-	return self;
-	}
-
-EXPORT_C CRSASignature* CRSASignature::NewLC(RInteger& aS)
-	{
-	CRSASignature* self = NewL(aS);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CRSASignature::S(void) const
-	{
-	return iS;
-	}
-
-EXPORT_C TBool CRSASignature::operator==(const CRSASignature& aSig) const
-	{
-	return ( S() == aSig.S() );
-	}
-
-EXPORT_C CRSASignature::~CRSASignature(void)
-	{
-	iS.Close();
-	}
-
-EXPORT_C CRSASignature::CRSASignature(RInteger& aS) : iS(aS)
-	{
-	}
-
-/* CDSASignature */
-
-EXPORT_C CDSASignature* CDSASignature::NewL(RInteger& aR, RInteger& aS)
-	{
-	CDSASignature* self = new(ELeave)CDSASignature(aR, aS);
-	return self;
-	}
-
-EXPORT_C CDSASignature* CDSASignature::NewLC(RInteger& aR, RInteger& aS)
-	{
-	CDSASignature* self = NewL(aR, aS);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CDSASignature::R(void) const
-	{
-	return iR;
-	}
-
-EXPORT_C const TInteger& CDSASignature::S(void) const
-	{
-	return iS;
-	}
-
-EXPORT_C TBool CDSASignature::operator==(const CDSASignature& aSig) const
-	{
-	return ( R() == aSig.R() && S() == aSig.S() );
-	}
-
-EXPORT_C CDSASignature::~CDSASignature(void)
-	{
-	iR.Close();
-	iS.Close();
-	}
-
-EXPORT_C CDSASignature::CDSASignature()
-	{
-	}
-
-EXPORT_C CDSASignature::CDSASignature(RInteger& aR, RInteger& aS) 
-	: iR(aR), iS(aS)
-	{
-	}
-
--- a/crypto/weakcrypto/source/asymmetric/dh.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-
-EXPORT_C CDH* CDH::NewL(const CDHPrivateKey& aPrivateKey)
-	{
-	CDH* self = new(ELeave) CDH(aPrivateKey);
-	return self;
-	}
-
-EXPORT_C CDH* CDH::NewLC(const CDHPrivateKey& aPrivateKey)
-	{
-	CDH* self = NewL(aPrivateKey);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C HBufC8* CDH::AgreeL(const CDHPublicKey& aPublicKey) const
-	{
-	//Calculate X^x mod N
-	RInteger result = TInteger::ModularExponentiateL(aPublicKey.X(), 
-		iPrivateKey.x(), aPublicKey.N());
-	CleanupStack::PushL(result);
-	HBufC8* key = result.BufferLC();
-	CleanupStack::Pop(key);
-	CleanupStack::PopAndDestroy(&result);
-	return key;
-	}
-
-EXPORT_C CDH::CDH(const CDHPrivateKey& aPrivateKey) : iPrivateKey(aPrivateKey)
-	{
-	}
-
-
--- a/crypto/weakcrypto/source/asymmetric/dhkeys.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetrickeys.h>
-#include <bigint.h>
-
-/* CDHParameters */
-EXPORT_C const TInteger& CDHParameters::N(void) const
-	{
-	return iN;
-	}
-
-EXPORT_C const TInteger& CDHParameters::G(void) const
-	{
-	return iG;
-	}
-
-EXPORT_C CDHParameters::~CDHParameters(void)
-	{
-	iN.Close();
-	iG.Close();
-	}
-
-EXPORT_C CDHParameters::CDHParameters(RInteger& aN, RInteger& aG) : iN(aN), iG(aG)
-	{
-	}
-
-EXPORT_C CDHParameters::CDHParameters(void)
-	{
-	}
-
-/* CDHPublicKey */
-EXPORT_C CDHPublicKey* CDHPublicKey::NewL(RInteger& aN, RInteger& aG, 
-	RInteger& aX)
-	{
-	CDHPublicKey* self = new(ELeave) CDHPublicKey(aN, aG, aX);
-	return self;
-	}
-
-EXPORT_C CDHPublicKey* CDHPublicKey::NewLC(RInteger& aN, RInteger& aG, 
-	RInteger& aX)
-	{
-	CDHPublicKey* self = NewL(aN, aG, aX);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CDHPublicKey::X(void) const
-	{
-	return iX;
-	}
-
-EXPORT_C CDHPublicKey::CDHPublicKey(RInteger& aN, RInteger& aG, RInteger& aX)
-	: CDHParameters(aN, aG), iX(aX)
-	{
-	}
-
-EXPORT_C CDHPublicKey::CDHPublicKey(void)
-	{
-	}
-
-EXPORT_C CDHPublicKey::~CDHPublicKey(void)
-	{
-	iX.Close();
-	}
-
-/* CDHPrivateKey */
-EXPORT_C CDHPrivateKey* CDHPrivateKey::NewL(RInteger& aN, RInteger& aG, 
-	RInteger& ax)
-	{
-	CDHPrivateKey* self = new(ELeave) CDHPrivateKey(aN, aG, ax);
-	return self;
-	}
-
-EXPORT_C CDHPrivateKey* CDHPrivateKey::NewLC(RInteger& aN, RInteger& aG, 
-	RInteger& ax)
-	{
-	CDHPrivateKey* self = NewL(aN, aG, ax);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CDHPrivateKey::x(void) const
-	{
-	return ix;
-	}
-
-EXPORT_C CDHPrivateKey::CDHPrivateKey(RInteger& aN, RInteger& aG, RInteger& ax)
-	: CDHParameters(aN, aG), ix(ax)
-	{
-	}
-
-EXPORT_C CDHPrivateKey::CDHPrivateKey(void)
-	{
-	}
-
-EXPORT_C CDHPrivateKey::~CDHPrivateKey(void)
-	{
-	ix.Close();
-	}
-
-/* CDHKeyPair */
-
-EXPORT_C CDHKeyPair* CDHKeyPair::NewL(RInteger& aN, RInteger& aG)
-	{
-	CDHKeyPair* self = NewLC(aN, aG);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CDHKeyPair* CDHKeyPair::NewLC(RInteger& aN, RInteger& aG)
-	{
-	CDHKeyPair* self = new(ELeave) CDHKeyPair();
-	CleanupStack::PushL(self);
-	self->ConstructL(aN, aG);
-	return self;
-	}
-
-EXPORT_C CDHKeyPair* CDHKeyPair::NewL(RInteger& aN, RInteger& aG, RInteger& ax)
-	{
-	CDHKeyPair* self = NewLC(aN, aG, ax);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CDHKeyPair* CDHKeyPair::NewLC(RInteger& aN, RInteger& aG, RInteger& ax)
-	{
-	CDHKeyPair* self = new(ELeave) CDHKeyPair();
-	CleanupStack::PushL(self);
-	self->ConstructL(aN, aG, ax);
-	return self;
-	}
-
-EXPORT_C const CDHPublicKey& CDHKeyPair::PublicKey(void) const
-	{
-	return *iPublic;
-	}
-
-EXPORT_C const CDHPrivateKey& CDHKeyPair::PrivateKey(void) const
-	{
-	return *iPrivate;
-	}
-
-EXPORT_C CDHKeyPair::~CDHKeyPair(void)
-	{
-	delete iPublic;
-	delete iPrivate;
-	}
-
-EXPORT_C CDHKeyPair::CDHKeyPair(void)
-	{
-	}	
-
-EXPORT_C void CDHKeyPair::ConstructL(RInteger& aN, RInteger& aG)
-	{
-	//declaring a reference just for clarity in NewRandomL statement
-	RInteger& nminus2 = aN;
-	--nminus2;
-	--nminus2;
-
-	//find a random x | 1 <= x <= n-2
-	RInteger x = RInteger::NewRandomL(TInteger::One(), nminus2);
-	CleanupStack::PushL(x);
-	++nminus2;
-	++nminus2; // reincrement aN
-
-	ConstructL(aN, aG, x);
-
-	CleanupStack::Pop(&x);
-	}
-
-EXPORT_C void CDHKeyPair::ConstructL(RInteger& aN, RInteger& aG, RInteger& ax)
-	{
-	//declaring a reference just for clarity in if statements
-	RInteger& nminus2 = aN;
-	--nminus2;
-	--nminus2;
-	
-	if( aG < TInteger::Two() || aG > nminus2 )
-		{
-		User::Leave(KErrArgument);
-		}
-	//In the case of the other ConstructL calling this function this if
-	//statement is redundant.  However, we need to check as this is can be
-	//called without going through the other api.
-	if( ax < TInteger::One() || ax > nminus2 )
-		{
-		User::Leave(KErrArgument);
-		}
-
-	++nminus2;
-	++nminus2; // reincrement aN
-
-	// Calculate X = g^(x) mod n; (note the case sensitivity)
-	RInteger X = TInteger::ModularExponentiateL(aG, ax, aN);
-	CleanupStack::PushL(X);
-
-	RInteger n1 = RInteger::NewL(aN);
-	CleanupStack::PushL(n1);
-	RInteger g1 = RInteger::NewL(aG);
-	CleanupStack::PushL(g1);
-	iPublic = CDHPublicKey::NewL(n1, g1, X);
-	CleanupStack::Pop(3, &X); // g1, n1, X all owned by iPublic
-	
-	iPrivate = CDHPrivateKey::NewL(aN, aG, ax);
-	}
--- a/crypto/weakcrypto/source/asymmetric/dsakeys.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,468 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include <random.h>
-#include <hash.h>
-#include "../common/inlines.h"
-#include "../bigint/mont.h"
-
-const TUint SHASIZE = 20;
-const TUint KMinPrimeLength = 512;
-const TUint KMaxPrimeLength = 1024;
-const TUint KPrimeLengthMultiple = 64;
-
-/* CDSAParameters */
-
-EXPORT_C const TInteger& CDSAParameters::P(void) const
-	{
-	return iP;
-	}
-
-EXPORT_C const TInteger& CDSAParameters::Q(void) const
-	{
-	return iQ;
-	}
-
-EXPORT_C const TInteger& CDSAParameters::G(void) const
-	{
-	return iG;
-	}
-
-EXPORT_C CDSAParameters::~CDSAParameters(void)
-	{
-	iP.Close();
-	iQ.Close();
-	iG.Close();
-	}
-
-EXPORT_C CDSAParameters* CDSAParameters::NewL(RInteger& aP, RInteger& aQ, 
-	RInteger& aG)
-	{
-	CDSAParameters* me = new (ELeave) CDSAParameters(aP, aQ, aG);
-	return (me);
-	}
-
-EXPORT_C TBool CDSAParameters::ValidatePrimesL(const CDSAPrimeCertificate& aCert)
-	const
-	{
-	TBool result = EFalse;
-	RInteger p;
-	RInteger q;
-	//Regenerate primes using aCert's seed and counter
-	TUint counter = aCert.Counter();
-	if(!CDSAParameters::GeneratePrimesL(aCert.Seed(), counter, p, 
-		P().BitCount(), q, ETrue))
-		{
-		return result;
-		}
-	//this doesn't leave, no need to push p and q
-	if(p == P() && q == Q() && counter == aCert.Counter())
-		{
-		result = ETrue;
-		}
-	p.Close();
-	q.Close();
-	return result;
-	}
-
-EXPORT_C TBool CDSAParameters::ValidPrimeLength(TUint aPrimeBits)
-	{
-	return (aPrimeBits >= KMinPrimeLength &&
-		aPrimeBits <= KMaxPrimeLength &&
-		aPrimeBits % KPrimeLengthMultiple == 0);
-	}
-
-EXPORT_C CDSAParameters::CDSAParameters(RInteger& aP, RInteger& aQ, 	
-	RInteger& aG) : iP(aP), iQ(aQ), iG(aG)
-	{
-	}
-
-EXPORT_C CDSAParameters::CDSAParameters(void)
-	{
-	}
-
-TBool CDSAParameters::GeneratePrimesL(const TDesC8& aSeed, TUint& aCounter, 
-	RInteger& aP, TUint aL, RInteger& aQ, TBool aUseInputCounter)
-	{
-	//This follows the steps in FIPS 186-2 
-	//See DSS Appendix 2.2
-	//Note. Step 1 is performed prior to calling GeneratePrimesL, so that this
-	//routine can be used for both generation and validation.
-	//Step 1.  Choose an arbitrary sequence of at least 160 bits and call it
-	//SEED.  Let g be the length of SEED in bits.
-
-	if(!CDSAParameters::ValidPrimeLength(aL))
-		{
-		User::Leave(KErrNotSupported);
-		}
-	
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-
-	HBufC8* seedBuf = aSeed.AllocLC();
-	TPtr8 seed = seedBuf->Des();
-	TUint gBytes = aSeed.Size();
-	//Note that the DSS's g = BytesToBits(gBytes) ie. the number of random bits
-	//in the seed.  
-	//This function has made the assumption (for ease of computation) that g%8
-	//is 0.  Ie the seed is a whole number of random bytes.
-	TBuf8<SHASIZE> U; 
-	TBuf8<SHASIZE> temp; 
-	const TUint n = (aL-1)/160;
-	const TUint b = (aL-1)%160;
-	HBufC8* Wbuf = HBufC8::NewMaxLC((n+1) * SHASIZE);
-	TUint8* W = const_cast<TUint8*>(Wbuf->Ptr());
-
-	U.Copy(sha1->Final(seed));
-	
-	//Step 2. U = SHA-1[SEED] XOR SHA-1[(SEED+1) mod 2^g]
-	for(TInt i=gBytes - 1, carry=ETrue; i>=0 && carry; i--)
-		{
-		//!++(TUint) adds one to the current word which if it overflows to zero
-		//sets carry to 1 thus letting the loop continue.  It's a poor man's
-		//multi-word addition.  Swift eh?
-		carry = !++(seed[i]);
-		}
-
-	temp.Copy(sha1->Final(seed));
-	XorBuf(const_cast<TUint8*>(U.Ptr()), temp.Ptr(), SHASIZE);
-
-	//Step 3. Form q from U by setting the most significant bit (2^159)
-	//and the least significant bit to 1.
-	U[0] |= 0x80;
-	U[SHASIZE-1] |= 1;
-
-	aQ = RInteger::NewL(U);
-	CleanupStack::PushL(aQ);
-
-	//Step 4. Use a robust primality testing algo to test if q is prime
-	//The robust part is the calling codes problem.  This will use whatever
-	//random number generator you set for the thread.  To attempt FIPS 186-2
-	//compliance, set a FIPS 186-2 compliant RNG.
-	if( !aQ.IsPrimeL() )
-		{
-		//Step 5. If not exit and get a new seed
-		CleanupStack::PopAndDestroy(&aQ);
-		CleanupStack::PopAndDestroy(Wbuf);
-		CleanupStack::PopAndDestroy(seedBuf);
-		CleanupStack::PopAndDestroy(sha1);
-		return EFalse;
-		}
-	
-	TUint counterEnd = aUseInputCounter ? aCounter+1 : 4096;
-	
-	//Step 6. Let counter = 0 and offset = 2
-	//Note 1. that the DSS speaks of SEED + offset + k because they always
-	//refer to a constant SEED.  We update our seed as we go so the offset
-	//variable has already been added to seed in the previous iterations.
-	//Note 2. We've already added 1 to our seed, so the first time through this
-	//the offset in DSS speak will be 2.
-	for(TUint counter=0; counter < counterEnd; counter++)
-		{
-		//Step 7. For k=0, ..., n let
-		// Vk = SHA-1[(SEED + offset + k) mod 2^g]
-		//I'm storing the Vk's inside of a big W buffer.
-		for(TUint k=0; k<=n; k++)
-			{
-			for(TInt i=gBytes-1, carry=ETrue; i>=0 && carry; i--)
-				{
-				carry = !++(seed[i]);
-				}
-			if(!aUseInputCounter || counter == aCounter)
-				{
-				TPtr8 Wptr(W+(n-k)*SHASIZE, gBytes);
-				Wptr.Copy(sha1->Final(seed));
-				}
-			}
-		if(!aUseInputCounter || counter == aCounter)
-			{
-			//Step 8. Let W be the integer...  and let X = W + 2^(L-1)
-			const_cast<TUint8&>((*Wbuf)[SHASIZE - 1 - b/8]) |= 0x80;
-			TPtr8 Wptr(W + SHASIZE - 1 - b/8, aL/8, aL/8);
-			RInteger X = RInteger::NewL(Wptr);
-			CleanupStack::PushL(X);
-			//Step 9. Let c = X mod 2q and set p = X - (c-1)
-			RInteger twoQ = aQ.TimesL(TInteger::Two());
-			CleanupStack::PushL(twoQ);
-			RInteger c = X.ModuloL(twoQ);
-			CleanupStack::PushL(c);
-			--c;
-			aP = X.MinusL(c);
-			CleanupStack::PopAndDestroy(3, &X); //twoQ, c, X
-			CleanupStack::PushL(aP);
-			
-			//Step 10 and 11: if p >= 2^(L-1) and p is prime
-			if( aP.Bit(aL-1) && aP.IsPrimeL() )
-				{
-				aCounter = counter;
-				CleanupStack::Pop(&aP);
-				CleanupStack::Pop(&aQ);
-				CleanupStack::PopAndDestroy(Wbuf);
-				CleanupStack::PopAndDestroy(seedBuf);
-				CleanupStack::PopAndDestroy(sha1);
-				return ETrue;
-				}
-			CleanupStack::PopAndDestroy(&aP);
-			}
-		}
-	CleanupStack::PopAndDestroy(&aQ);
-	CleanupStack::PopAndDestroy(Wbuf);
-	CleanupStack::PopAndDestroy(seedBuf);
-	CleanupStack::PopAndDestroy(sha1);
-	return EFalse;
-	}
-
-/* CDSAPublicKey */
-
-EXPORT_C CDSAPublicKey* CDSAPublicKey::NewL(RInteger& aP, RInteger& aQ, 
-	RInteger& aG, RInteger& aY)
-	{
-	CDSAPublicKey* self = new(ELeave) CDSAPublicKey(aP, aQ, aG, aY);
-	return self;
-	}
-
-EXPORT_C CDSAPublicKey* CDSAPublicKey::NewLC(RInteger& aP, RInteger& aQ, 
-	RInteger& aG, RInteger& aY)
-	{
-	CDSAPublicKey* self = NewL(aP, aQ, aG, aY);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CDSAPublicKey::Y(void) const
-	{
-	return iY;
-	}
-
-EXPORT_C CDSAPublicKey::CDSAPublicKey(void)
-	{
-	} 
-
-EXPORT_C CDSAPublicKey::CDSAPublicKey(RInteger& aP, RInteger& aQ, RInteger& aG, 
-	RInteger& aY) : CDSAParameters(aP, aQ, aG), iY(aY)
-	{
-	}
-
-EXPORT_C CDSAPublicKey::~CDSAPublicKey(void)
-	{
-	iY.Close();
-	}
-
-/* CDSAPrivateKey */
-
-EXPORT_C CDSAPrivateKey* CDSAPrivateKey::NewL(RInteger& aP, RInteger& aQ, 
-	RInteger& aG, RInteger& aX)
-	{
-	CDSAPrivateKey* self = new(ELeave) CDSAPrivateKey(aP, aQ, aG, aX);
-	return self;
-	}
-
-EXPORT_C CDSAPrivateKey* CDSAPrivateKey::NewLC(RInteger& aP, RInteger& aQ, 
-	RInteger& aG, RInteger& aX)
-	{
-	CDSAPrivateKey* self = NewL(aP, aQ, aG, aX);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C const TInteger& CDSAPrivateKey::X(void) const
-	{
-	return iX;
-	}
-
-CDSAPrivateKey::CDSAPrivateKey(RInteger& aP, RInteger& aQ, RInteger& aG, 
-	RInteger& aX) : CDSAParameters(aP, aQ, aG), iX(aX)
-	{
-	}
-
-EXPORT_C CDSAPrivateKey::CDSAPrivateKey(void)
-	{
-	}
-
-EXPORT_C CDSAPrivateKey::~CDSAPrivateKey(void)
-	{
-	iX.Close();
-	}
-
-/* CDSAKeyPair */
-
-EXPORT_C CDSAKeyPair* CDSAKeyPair::NewL(TUint aKeyBits)
-	{
-	CDSAKeyPair* self = NewLC(aKeyBits);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CDSAKeyPair* CDSAKeyPair::NewLC(TUint aKeyBits)
-	{
-	CDSAKeyPair* self = new(ELeave) CDSAKeyPair();
-	CleanupStack::PushL(self);
-	self->ConstructL(aKeyBits);
-	return self;
-	}
-
-EXPORT_C const CDSAPublicKey& CDSAKeyPair::PublicKey(void) const
-	{
-	return *iPublic;
-	}
-	
-EXPORT_C const CDSAPrivateKey& CDSAKeyPair::PrivateKey(void) const
-	{
-	return *iPrivate;
-	}
-
-EXPORT_C CDSAKeyPair::~CDSAKeyPair(void) 
-	{
-	delete iPublic;
-	delete iPrivate;
-	delete iPrimeCertificate;
-	}
-
-EXPORT_C CDSAKeyPair::CDSAKeyPair(void) 
-	{
-	}
-
-EXPORT_C const CDSAPrimeCertificate& CDSAKeyPair::PrimeCertificate(void) const
-	{
-	return *iPrimeCertificate;
-	}
-
-void CDSAKeyPair::ConstructL(TUint aPBits)
-	{
-	//This is the first step of DSA prime generation.  The remaining steps are
-	//performed in CDSAParameters::GeneratePrimesL
-	//Step 1.  Choose an arbitrary sequence of at least 160 bits and call it
-	//SEED.  Let g be the length of SEED in bits.
-	TBuf8<SHASIZE> seed(SHASIZE); 
-	TUint c;
-	RInteger p;
-	RInteger q;
-	do 
-		{
-		GenerateRandomBytesL(seed);
-		}
-	while(!CDSAParameters::GeneratePrimesL(seed, c, p, aPBits, q));
-	//Double PushL will not fail as GeneratePrimesL uses the CleanupStack
-	//(at least one push and pop ;)
-	CleanupStack::PushL(p);
-	CleanupStack::PushL(q);
-	iPrimeCertificate = CDSAPrimeCertificate::NewL(seed, c);
-
-	CMontgomeryStructure* montP = CMontgomeryStructure::NewLC(p);
-
-	--p;
-
-	// e = (p-1)/q
-	RInteger e = p.DividedByL(q);
-	CleanupStack::PushL(e);
-
-	--p; //now it's p-2 :)
-
-	RInteger h;
-	const TInteger* g = 0;
-	do
-		{
-		// find a random h | 1 < h < p-1
-		h = RInteger::NewRandomL(TInteger::Two(), p);
-		CleanupStack::PushL(h);
-		// g = h^e mod p
-		g = &(montP->ExponentiateL(h, e));
-		CleanupStack::PopAndDestroy(&h); 
-		}
-	while( *g <= TInteger::One() );
-	CleanupStack::PopAndDestroy(&e);
-
-	++p; //reincrement p to original value
-	++p;
-
-	RInteger g1 = RInteger::NewL(*g); //take a copy of montP's g
-	CleanupStack::PushL(g1);
-	RInteger p1 = RInteger::NewL(p);
-	CleanupStack::PushL(p1);
-	RInteger q1 = RInteger::NewL(q);
-	CleanupStack::PushL(q1);
-	
-	--q;
-	// select random x | 0 < x < q
-	RInteger x = RInteger::NewRandomL(TInteger::One(), q);
-	CleanupStack::PushL(x);
-	++q;
-
-	iPrivate = CDSAPrivateKey::NewL(p1, q1, g1, x);
-	CleanupStack::Pop(4, &g1); //x,q1,p1,g1 -- all owned by iPrivate
-	
-	RInteger y = RInteger::NewL(montP->ExponentiateL(*g, iPrivate->X()));
-	CleanupStack::PushL(y);
-	RInteger g2 = RInteger::NewL(iPrivate->G());
-	CleanupStack::PushL(g2);
-	iPublic = CDSAPublicKey::NewL(p, q, g2, y);
-	CleanupStack::Pop(2, &y); //g2, y 
-	CleanupStack::PopAndDestroy(montP);
-	CleanupStack::Pop(2, &p); //q, p
-	}
-
-
-/* CDSAPrimeCertificate */
-
-EXPORT_C CDSAPrimeCertificate* CDSAPrimeCertificate::NewL(const TDesC8& aSeed,
-	TUint aCounter)
-	{
-	CDSAPrimeCertificate* self = NewLC(aSeed, aCounter);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CDSAPrimeCertificate* CDSAPrimeCertificate::NewLC(const TDesC8& aSeed,
-	TUint aCounter)
-	{
-	CDSAPrimeCertificate* self = new(ELeave) CDSAPrimeCertificate(aCounter);
-	CleanupStack::PushL(self);
-	self->ConstructL(aSeed);
-	return self;
-	}
-
-EXPORT_C const TDesC8& CDSAPrimeCertificate::Seed(void) const
-	{
-	return *iSeed;
-	}
-
-EXPORT_C TUint CDSAPrimeCertificate::Counter(void) const
-	{
-	return iCounter;
-	}
-
-EXPORT_C CDSAPrimeCertificate::~CDSAPrimeCertificate(void) 
-	{
-	delete const_cast<HBufC8*>(iSeed);
-	}
-
-void CDSAPrimeCertificate::ConstructL(const TDesC8& aSeed)
-	{
-	iSeed = aSeed.AllocL();
-	}
-
-EXPORT_C CDSAPrimeCertificate::CDSAPrimeCertificate(TUint aCounter) 
-	: iCounter(aCounter)
-	{
-	}
-
-EXPORT_C CDSAPrimeCertificate::CDSAPrimeCertificate(void) 
-	{
-	}
--- a/crypto/weakcrypto/source/asymmetric/dsasigner.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,92 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-
-EXPORT_C CDSASigner* CDSASigner::NewL(const CDSAPrivateKey& aKey)
-	{
-	CDSASigner* self = new(ELeave) CDSASigner(aKey);
-	return self;
-	}
-
-EXPORT_C CDSASigner* CDSASigner::NewLC(const CDSAPrivateKey& aKey) 
-	{
-	CDSASigner* self = NewL(aKey); 
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-TInt CDSASigner::MaxInputLength(void) const
-	{
-	return SHA1_HASH;  // from hash.h
-	}
-
-CDSASignature* CDSASigner::SignL(const TDesC8& aInput) const
-	{
-	//see HAC 11.56 or DSS section 5
-	//I'll follow HAC as I like its description better
-	//We don't check that r and s are non both non-null like the DSS
-	//states you _optionally_ can.  The chances of this are _incredibly_ small.
-	//You've got a much better chance of a bit failure ocurring in the hardware
-	//than this.
-
-	// a) Select a random secret integer (k | 0 < k < q)
-	RInteger qminus1 = RInteger::NewL(iPrivateKey.Q());
-	CleanupStack::PushL(qminus1);
-	--qminus1;
-	RInteger k = RInteger::NewRandomL(TInteger::One(), qminus1);
-	CleanupStack::PopAndDestroy(&qminus1);
-	CleanupStack::PushL(k);
-
-	// b) compute r = (g^k mod p) mod q
-	RInteger r = TInteger::ModularExponentiateL(iPrivateKey.G(), k, 	
-		iPrivateKey.P());
-	CleanupStack::PushL(r);
-	r %= iPrivateKey.Q();
-
-	// c) compute k^(-1) mod q 
-	RInteger kinv = k.InverseModL(iPrivateKey.Q());
-	CleanupStack::PushL(kinv);
-
-	// d) compute s = k^(-1) * {h(m) + xr} mod q
-	// Note that in order to be interoperable, compliant with the DSS, and
-	// secure, aInput must be the result of a SHA-1 hash
-	RInteger hm = RInteger::NewL(aInput);
-	CleanupStack::PushL(hm);
-	
-	RInteger s = iPrivateKey.X().TimesL(r);
-	CleanupStack::PushL(s);
-	s += hm;
-	s *= kinv;
-	s %= iPrivateKey.Q();
-
-	// e) signature for m is the pair (r,s)
-	CDSASignature* signature = CDSASignature::NewL(r, s);//transfers ownership
-	CleanupStack::Pop(&s);
-	CleanupStack::PopAndDestroy(&hm);
-	CleanupStack::PopAndDestroy(&kinv);
-	CleanupStack::Pop(&r);
-	CleanupStack::PopAndDestroy(&k);	
-	return signature;
-	}
-
-CDSASigner::CDSASigner(const CDSAPrivateKey& aKey) 
-	: iPrivateKey(aKey)
-	{
-	}
-
--- a/crypto/weakcrypto/source/asymmetric/dsaverifier.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-
-EXPORT_C CDSAVerifier* CDSAVerifier::NewL(const CDSAPublicKey& aKey)
-	{
-	CDSAVerifier* self = new(ELeave)CDSAVerifier(aKey);
-	return self;
-	}
-
-EXPORT_C CDSAVerifier* CDSAVerifier::NewLC(const CDSAPublicKey& aKey)
-	{
-	CDSAVerifier* self = NewL(aKey);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-TInt CDSAVerifier::MaxInputLength(void) const
-	{
-	// return CSHA1::DIGESTBYTES
-	return 160;
-	}
-
-TBool CDSAVerifier::VerifyL(const TDesC8& aInput, 
-	const CDSASignature& aSignature) const
-	{
-	//see HAC 11.56 or DSS section 6
-	//I'll follow HAC as I like the description better
-
-	// a) Obtain A's authenticate public key
-
-	// b) Verify that 0 < r < q and 0 < s < q; if not reject signature
-	if (aSignature.R() <= 0 || aSignature.R() >= iPublicKey.Q())
-		{
-		return EFalse;
-		}
-	if (aSignature.S() <= 0 || aSignature.S() >= iPublicKey.Q())
-		{
-		return EFalse;
-		}
-
-	TBool result = EFalse;
-
-	// c) Compute w = s^(-1) mod q and h(m)
-	RInteger w = aSignature.S().InverseModL(iPublicKey.Q());
-	CleanupStack::PushL(w);
-	// Note that in order to be interoperable, compliant with the DSS, and
-	// secure, aInput must be the result of a SHA-1 hash
-	RInteger hm = RInteger::NewL(aInput);
-	CleanupStack::PushL(hm);
-
-	// d) Compute u1 = w * hm mod q and u2 = r * w mod q
-	RInteger u1 = TInteger::ModularMultiplyL(w, hm, iPublicKey.Q());
-	CleanupStack::PushL(u1);
-
-	RInteger u2 = TInteger::ModularMultiplyL(aSignature.R(), w, iPublicKey.Q());
-	CleanupStack::PushL(u2);
-
-	// e) Compute v = ((g^u1 * y^u2) mod p) mod q
-	RInteger temp = TInteger::ModularExponentiateL(iPublicKey.G(), u1,
-		iPublicKey.P());
-	CleanupStack::PushL(temp);
-	RInteger temp1 = TInteger::ModularExponentiateL(iPublicKey.Y(), u2,
-		iPublicKey.P());
-	CleanupStack::PushL(temp1);
-	RInteger v = TInteger::ModularMultiplyL(temp, temp1, iPublicKey.P());
-	CleanupStack::PushL(v);
-	v %= iPublicKey.Q();
-
-	// f) Accept the signature iff v == r
-	if(v == aSignature.R())
-		{
-		result = ETrue;
-		}
-
-	CleanupStack::PopAndDestroy(&v);
-	CleanupStack::PopAndDestroy(&temp1);
-	CleanupStack::PopAndDestroy(&temp);
-	CleanupStack::PopAndDestroy(&u2);
-	CleanupStack::PopAndDestroy(&u1);
-	CleanupStack::PopAndDestroy(&hm);
-	CleanupStack::PopAndDestroy(&w); 
-
-	return result;	
-	}
-
-CDSAVerifier::CDSAVerifier(const CDSAPublicKey& aKey)  
-	: iPublicKey(aKey)
-	{
-	}
-
--- a/crypto/weakcrypto/source/asymmetric/rsadecryptor.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,98 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include <cryptostrength.h>
-#include <securityerr.h>
-#include <cryptopanic.h>
-#include "rsafunction.h"
-
-/* CRSAPKCS1v15Decryptor */
-
-EXPORT_C CRSAPKCS1v15Decryptor* CRSAPKCS1v15Decryptor::NewL(
-	const CRSAPrivateKey& aKey)
-	{
-	CRSAPKCS1v15Decryptor* self = NewLC(aKey);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CRSAPKCS1v15Decryptor* CRSAPKCS1v15Decryptor::NewLC(
-	const CRSAPrivateKey& aKey)
-	{
-	CRSAPKCS1v15Decryptor* self = new(ELeave) CRSAPKCS1v15Decryptor(aKey);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-TInt CRSAPKCS1v15Decryptor::MaxInputLength(void) const
-	{
-	return iPrivateKey.N().ByteCount();
-	}
-
-TInt CRSAPKCS1v15Decryptor::MaxOutputLength(void) const
-	{
-	return MaxInputLength() - iPadding->MinPaddingLength();
-	}
-
-void CRSAPKCS1v15Decryptor::DecryptL(const TDesC8& aInput, 
-	TDes8& aOutput)const
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxOutputLength(), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-	__ASSERT_DEBUG(aInput.Length() <= MaxInputLength(), User::Panic(KCryptoPanic, ECryptoPanicInputTooLarge));
-
-	RInteger input = RInteger::NewL(aInput);
-	CleanupStack::PushL(input);
-
-	RInteger output;
-
-	RSAFunction::DecryptL(iPrivateKey, input, output);
-	CleanupStack::PushL(output);
-
-    TPtrC8 ptr = *(output.BufferLC());
-    iPadding->UnPadL(ptr, aOutput);
-
-    CleanupStack::PopAndDestroy(3, &input); //BufferLC(), output, input
-	}
-
-CRSAPKCS1v15Decryptor::CRSAPKCS1v15Decryptor(const CRSAPrivateKey& aKey)  
-	: iPrivateKey(aKey)
-	{
-	}
-
-void CRSAPKCS1v15Decryptor::ConstructL(void)  
-	{
-	iPadding = CPaddingPKCS1Encryption::NewL(MaxInputLength());
-
-	// Check if MaxInputLength() makes sense, if not the key length must 
-	// be too small
-	if(MaxOutputLength() <= 0)
-		{
-		User::Leave(KErrKeySize);
-		}
-
-	TCrypto::IsAsymmetricWeakEnoughL(iPrivateKey.N().BitCount());
-	}
-
-CRSAPKCS1v15Decryptor::~CRSAPKCS1v15Decryptor(void)  
-	{
-	delete iPadding;
-	}
--- a/crypto/weakcrypto/source/asymmetric/rsaencryptor.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include <padding.h>
-#include <cryptostrength.h>
-#include <securityerr.h>
-#include <cryptopanic.h>
-#include "rsafunction.h"
-
-
-EXPORT_C CRSAPKCS1v15Encryptor* CRSAPKCS1v15Encryptor::NewL( 
-	const CRSAPublicKey& aKey)
-	{
-	CRSAPKCS1v15Encryptor* self = NewLC(aKey);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CRSAPKCS1v15Encryptor* CRSAPKCS1v15Encryptor::NewLC(
-	const CRSAPublicKey& aKey)
-	{
-	CRSAPKCS1v15Encryptor* self = new(ELeave) CRSAPKCS1v15Encryptor(aKey);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-TInt CRSAPKCS1v15Encryptor::MaxInputLength(void) const
-	{
-	return MaxOutputLength() - iPadding->MinPaddingLength();
-	}
-
-TInt CRSAPKCS1v15Encryptor::MaxOutputLength() const
-	{
-	return iPublicKey.N().ByteCount();	
-	}
-
-void CRSAPKCS1v15Encryptor::EncryptL(const TDesC8& aInput, TDes8& aOutput)const
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxOutputLength(), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-	__ASSERT_DEBUG(aInput.Length() <= MaxInputLength(), User::Panic(KCryptoPanic, ECryptoPanicInputTooLarge));
-
-	HBufC8* buf = HBufC8::NewLC(MaxOutputLength());
-	TPtr8 ptr = buf->Des();
-	
-	iPadding->DoPadL(aInput, ptr);
-	RInteger input = RInteger::NewL(ptr);
-	CleanupStack::PushL(input);
-	
-	RInteger output;
-	RSAFunction::EncryptL(iPublicKey, input, output);
-	CleanupStack::PushL(output);
-
-	aOutput.Append(*(output.BufferLC()));
-	CleanupStack::PopAndDestroy(4, buf); //BufferLC, output, input, buf
-	}
-
-CRSAPKCS1v15Encryptor::CRSAPKCS1v15Encryptor(const CRSAPublicKey& aKey) 
-	: iPublicKey(aKey)
-	{
-	}
-
-void CRSAPKCS1v15Encryptor::ConstructL(void)
-	{
-	iPadding = CPaddingPKCS1Encryption::NewL(MaxOutputLength());
-
-	// Check if MaxInputLength() makes sense, if not the key length must 
-	// be too small
-	if(MaxInputLength() <= 0)
-		{
-		User::Leave(KErrKeySize);
-		}
-	TCrypto::IsAsymmetricWeakEnoughL(iPublicKey.N().BitCount());
-	}
-
-CRSAPKCS1v15Encryptor::~CRSAPKCS1v15Encryptor(void)
-	{
-	delete iPadding;
-	}
--- a/crypto/weakcrypto/source/asymmetric/rsafunction.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include <asymmetrickeys.h>
-#include "rsafunction.h"
-#include "../bigint/mont.h"
-
-//Public Encrypt
-void RSAFunction::EncryptL(const CRSAPublicKey& aPublicKey, 
-	const TInteger& aInput, RInteger& aOutput)
-	{
-	FunctionL(aPublicKey.N(), aPublicKey.E(), aInput, aOutput);
-	}
-
-//Private Decrypt
-void RSAFunction::DecryptL(const CRSAPrivateKey& aPrivateKey, 
-							const TInteger& aInput, RInteger& aOutput)
-	{
-	if (aPrivateKey.PrivateKeyType()==EStandard)
-		{
-		const CRSAPrivateKeyStandard* stdKey = 
-			static_cast<const CRSAPrivateKeyStandard*>(&aPrivateKey);
-		FunctionL(aPrivateKey.N(), stdKey->D(), aInput, aOutput);
-		}
-	else if (aPrivateKey.PrivateKeyType()==EStandardCRT)
-		{
-		FunctionCRTL(static_cast<const CRSAPrivateKeyCRT&>(aPrivateKey), aInput, 
-			aOutput);
-		}
-	else
-		{
-		User::Leave(KErrNotSupported);
-		}
-	}
-
-//Private Encrypt
-void RSAFunction::SignL(const CRSAPrivateKey& aPrivateKey, 
-	const TInteger& aInput, RInteger& aOutput)
-	{
-	if (aPrivateKey.PrivateKeyType()==EStandard)
-		{
-		const CRSAPrivateKeyStandard* stdKey = 
-			static_cast<const CRSAPrivateKeyStandard*>(&aPrivateKey);
-		FunctionL(aPrivateKey.N(), stdKey->D(), aInput, aOutput);
-		}
-	else if (aPrivateKey.PrivateKeyType()==EStandardCRT)
-		{
-		FunctionCRTL(static_cast<const CRSAPrivateKeyCRT&>(aPrivateKey), aInput, 
-			aOutput);
-		}
-	else
-	{
-		User::Leave(KErrNotSupported);
-	}
-}
-
-//Public Decrypt
-void RSAFunction::VerifyL(const CRSAPublicKey& aPublicKey,
-	const TInteger& aInput, RInteger& aOutput)
-	{
-	FunctionL(aPublicKey.N(), aPublicKey.E(), aInput, aOutput);
-	}
-	
-//The RSA Trapdoor Function
-void RSAFunction::FunctionL(const TInteger& aModulus, const TInteger& aExponent, 
-							 const TInteger& aBase, RInteger& aOutput)
-	{
-	IsInputValidL(aBase, aModulus);
-
-	aOutput = TInteger::ModularExponentiateL(aBase, aExponent, aModulus);
-	}
-
-//The CRT version of the RSA Trapdoor Function
-void RSAFunction::FunctionCRTL(const CRSAPrivateKeyCRT& aPrivateKey,
-								const TInteger& aInput, RInteger& aOutput)
-	{
-	IsInputValidL(aInput, aPrivateKey.N());
-
-	CMontgomeryStructure* montP = CMontgomeryStructure::NewLC(aPrivateKey.P());
-	CMontgomeryStructure* montQ = CMontgomeryStructure::NewLC(aPrivateKey.Q());
-	
-	const TInteger& p = aPrivateKey.P();
-	const TInteger& q = aPrivateKey.Q();
-	const TInteger& u = aPrivateKey.QInv();
-
-	//m1 = c^(dP) mod(p)
-	RInteger inputReduced = aInput.ModuloL(aPrivateKey.P());
-	CleanupStack::PushL(inputReduced);
-	const TInteger& m1 = montP->ExponentiateL(inputReduced, aPrivateKey.DP());
-	CleanupStack::PopAndDestroy(&inputReduced);
-
-	//m2 = c^(dQ) mod(Q)
-	inputReduced = aInput.ModuloL(aPrivateKey.Q());
-	CleanupStack::PushL(inputReduced);
-	const TInteger& m2 = montQ->ExponentiateL(inputReduced, aPrivateKey.DQ());
-	CleanupStack::PopAndDestroy(&inputReduced);
-	
-	//Calculate CRT
-	//h = (m1-m2) qInv mod(p)
-	RInteger h = m1.MinusL(m2);
-	CleanupStack::PushL(h);
-	h *= u;
-	h %= p; 
-
-	//m = m2 + q * h	
-	h *= q;
-	h += m2;
-
-	aOutput = h;
-	CleanupStack::Pop(&h);
-
-	CleanupStack::PopAndDestroy(montQ);
-	CleanupStack::PopAndDestroy(montP);
-	}
-
--- a/crypto/weakcrypto/source/asymmetric/rsafunction.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* RSAFunction class implementation
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
- 
-#ifndef __RSAFUNCTION_H__
-#define __RSAFUNCTION_H__
-
-#include <e32base.h>
-
-class TInteger;
-
-class CRSAPublicKey;
-class CRSAPrivateKey;
-class CRSAPrivateKeyCRT;
-
-class RSAFunction
-	{
-public:
-	static inline TBool IsInputValid(const TInteger& aInput, 
-		const TInteger& aModulus);
-	static inline void IsInputValidL(const TInteger& aInput, 
-		const TInteger& aModulus);
-	static void EncryptL(const CRSAPublicKey& aPublicKey,
-		const TInteger& aInput, RInteger& aOutput);
-	static void DecryptL(const CRSAPrivateKey& aPrivateKey,
-		const TInteger& aInput, RInteger& aOutput);
-	static void SignL(const CRSAPrivateKey& aPrivateKey,
-		const TInteger& aInput, RInteger& aOutput);
-	static void VerifyL(const CRSAPublicKey& aPublicKey,
-		const TInteger& aInput, RInteger& aOutput);
-private:
-	static void FunctionL(const TInteger& aModulus, const TInteger& aExponent,
-		const TInteger& aBase, RInteger& aOutput);
-	static void FunctionCRTL(const CRSAPrivateKeyCRT& aPrivateKey,
-		const TInteger& aInput, RInteger& aOutput);
-private:
-	RSAFunction(void);
-	};
-
-/** Computes whether a given message representative is within the valid bounds
- * for a given modulus, i.e. whether the message is representative within [0,n-1].
- * @param aInput The message representative.
- * @param aModulus The modulus.
- * @return TBool representing whether or not the message representative is
- * valid.
- */
-TBool RSAFunction::IsInputValid(const TInteger& aInput, 
-	const TInteger& aModulus)
-	{
-	//See HAC 8.3 1.b
-	//Message (input) must be in the interval [0,n-1] (inclusive)
-	if( aInput.IsNegative() || aInput >= aModulus )
-		return EFalse;
-	else
-		return ETrue;
-	}
-
-void RSAFunction::IsInputValidL(const TInteger& aInput,
-	const TInteger& aModulus)
-	{
-	if(!IsInputValid(aInput, aModulus))
-		User::Leave(KErrArgument);
-	}
-
-#endif
-
--- a/crypto/weakcrypto/source/asymmetric/rsakeys.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,395 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include "../common/inlines.h"
-
-const TUint KFermat4 = 65537;
-
-/* CRSAParameters */
-
-EXPORT_C const TInteger& CRSAParameters::N(void) const
-	{
-	return iN;
-	}
-
-EXPORT_C CRSAParameters::~CRSAParameters(void)
-	{
-	iN.Close();
-	}
-
-EXPORT_C CRSAParameters::CRSAParameters(RInteger& aN) : iN(aN)
-	{
-	}
-
-EXPORT_C CRSAParameters::CRSAParameters(void)
-	{
-	}
-
-/* CRSAPublicKey */
-
-EXPORT_C CRSAPublicKey* CRSAPublicKey::NewL(RInteger& aN, RInteger& aE)
-	{
-	CRSAPublicKey* self = NewLC(aN, aE);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CRSAPublicKey* CRSAPublicKey::NewLC(RInteger& aN, RInteger& aE)
-	{
-	CRSAPublicKey* self = new(ELeave) CRSAPublicKey(aN, aE);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-
-void CRSAPublicKey::ConstructL()
-	{ 
-	// Check that the modulus and exponent are positive integers 
-	// as specified by RSA
-	if(!N().IsPositive() || !E().IsPositive() || (E() <= 1))
-		{
-		// If we need to leave during construction we must release ownership
-		// of the RInteger parameters that were passed in.
-		// These parameters should be on the cleanup stack so if we don't 
-		// release ownership they will be deleted twice, causing a panic
-		iN = RInteger();
-		iE = RInteger();
-		User::Leave(KErrArgument);
-		}
-	}
-
-
-EXPORT_C const TInteger& CRSAPublicKey::E(void) const
-	{
-	return iE;
-	}
-
-EXPORT_C CRSAPublicKey::CRSAPublicKey()
-	{
-	}
-
-EXPORT_C CRSAPublicKey::CRSAPublicKey(RInteger& aN, RInteger& aE)
-	: CRSAParameters(aN), iE(aE)
-	{
-	}
-
-EXPORT_C CRSAPublicKey::~CRSAPublicKey(void)
-	{
-	iE.Close();
-	}
-
-/* CRSAPrivateKeyType */
-
-CRSAPrivateKey::CRSAPrivateKey(const TRSAPrivateKeyType aKeyType, RInteger& aN)
-:	CRSAParameters(aN), iKeyType(aKeyType)
-{}
-
-
-/* CRSAPrivateKeyStandard */
-
-EXPORT_C CRSAPrivateKeyStandard* CRSAPrivateKeyStandard::NewL(RInteger& aN, 
-	RInteger& aD)
-	{
-	CRSAPrivateKeyStandard* self = NewLC(aN, aD);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CRSAPrivateKeyStandard* CRSAPrivateKeyStandard::NewLC(RInteger& aN,
-	RInteger& aD)
-	{
-	CRSAPrivateKeyStandard* self = new(ELeave) CRSAPrivateKeyStandard(aN, aD);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-void CRSAPrivateKeyStandard::ConstructL()
-	{
-	// Check that the modulus and exponent are positive integers
-	if(!N().IsPositive() || !D().IsPositive() || (D() <= 1))
-		{
-		// If we need to leave during construction we must release ownership
-		// of the RInteger parameters that were passed in.
-		// These parameters should be on the cleanup stack so if we don't 
-		// release ownership they will be deleted twice, causing a panic
-		iN = RInteger();
-		iD = RInteger();
-		User::Leave(KErrArgument);
-		}
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyStandard::D(void) const
-	{
-	return iD;
-	}
-
-EXPORT_C CRSAPrivateKeyStandard::CRSAPrivateKeyStandard(RInteger& aN, 
-	RInteger& aD) : CRSAPrivateKey(EStandard, aN), iD(aD)
-	{
-	}
-
-EXPORT_C CRSAPrivateKeyStandard::~CRSAPrivateKeyStandard()
-	{	
-	iD.Close();
-	}
-
-/* CRSAPrivateKeyCRT */
-
-EXPORT_C CRSAPrivateKeyCRT* CRSAPrivateKeyCRT::NewL(RInteger& aN, RInteger& aP,
-	RInteger& aQ, RInteger& aDP, RInteger& aDQ, RInteger& aQInv)
-	{
-	CRSAPrivateKeyCRT* self = NewLC(aN, aP, aQ, aDP, aDQ, aQInv);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CRSAPrivateKeyCRT* CRSAPrivateKeyCRT::NewLC(RInteger& aN, RInteger& aP, 
-	RInteger& aQ, RInteger& aDP, RInteger& aDQ, RInteger& aQInv)
-	{
-	CRSAPrivateKeyCRT* self = new(ELeave) CRSAPrivateKeyCRT(aN, aP, aQ, 
-		aDP, aDQ, aQInv);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-EXPORT_C CRSAPrivateKeyCRT::CRSAPrivateKeyCRT(RInteger& aN, RInteger& aP, 
-	RInteger& aQ, RInteger& aDP, RInteger& aDQ, RInteger& aQInv) 
-	: CRSAPrivateKey(EStandardCRT, aN), iP(aP), iQ(aQ), iDP(aDP), iDQ(aDQ), 
-		iQInv(aQInv)
-	{
-	}
-
-void CRSAPrivateKeyCRT::ConstructL()
-	{
-	// Check that all parameters are positive integers
-	if(!P().IsPositive() || !Q().IsPositive() || !DP().IsPositive() 
-		|| !DQ().IsPositive() || !QInv().IsPositive())
-		{
-		// If we need to leave during construction we must release ownership
-		// of the RInteger parameters that were passed in.
-		// These parameters should be on the cleanup stack so if we don't 
-		// release ownership they will be deleted twice, causing a panic
-		iN = RInteger();
-		iP = RInteger();
-		iQ = RInteger();
-		iDP = RInteger();
-		iDQ = RInteger();
-		iQInv = RInteger();
-		User::Leave(KErrArgument);
-		}
-	}
-
-
-EXPORT_C CRSAPrivateKeyCRT::~CRSAPrivateKeyCRT()
-	{	
-	iP.Close();
-	iQ.Close();
-	iDP.Close();
-	iDQ.Close();
-	iQInv.Close();
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyCRT::P(void) const
-	{
-	return iP;
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyCRT::Q(void) const
-	{
-	return iQ;
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyCRT::DP(void) const
-	{
-	return iDP;
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyCRT::DQ(void) const
-	{
-	return iDQ;
-	}
-
-EXPORT_C const TInteger& CRSAPrivateKeyCRT::QInv(void) const
-	{
-	return iQInv;
-	}
-
-/* CRSAKeyPair */
-
-EXPORT_C CRSAKeyPair* CRSAKeyPair::NewL(TUint aModulusBits, 
-	TRSAPrivateKeyType aKeyType /*= EStandardCRT*/)
-	{
-	CRSAKeyPair* self = NewLC(aModulusBits, aKeyType);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CRSAKeyPair* CRSAKeyPair::NewLC(TUint aModulusBits, 
-	TRSAPrivateKeyType aKeyType /*= EStandardCRT*/)
-	{
-	CRSAKeyPair* self = new(ELeave) CRSAKeyPair();
-	CleanupStack::PushL(self);
-	self->ConstructL(aModulusBits, aKeyType, KFermat4);
-	return self;
-	}
-
-EXPORT_C const CRSAPublicKey& CRSAKeyPair::PublicKey(void) const
-	{
-	return *iPublic;
-	}
-	
-EXPORT_C const CRSAPrivateKey& CRSAKeyPair::PrivateKey(void) const
-	{
-	return *iPrivate;
-	}
-
-EXPORT_C CRSAKeyPair::~CRSAKeyPair(void) 
-	{
-	delete iPublic;
-	delete iPrivate;
-	}
-
-EXPORT_C CRSAKeyPair::CRSAKeyPair(void)
-	{
-	}
-
-void CRSAKeyPair::ConstructL(TUint aModulusBits, 
-	TRSAPrivateKeyType aKeyType, TUint aPublicExponent)
-	{
-	RInteger e = RInteger::NewL(aPublicExponent);
-	CleanupStack::PushL(e);
-
-	RInteger p;
-	RInteger q;
-	
-	//these make sure n is a least aModulusBits long
-    TInt pbits=(aModulusBits+1)/2;
-    TInt qbits=aModulusBits-pbits;
-
-	//generate a prime p such that GCD(e,p-1) == 1
-	for (;;)
-		{
-		p = RInteger::NewPrimeL(pbits,TInteger::ETop2BitsSet);
-		CleanupStack::PushL(p);
-		--p;
-
-		RInteger gcd = e.GCDL(p);
-		if( gcd == 1 )
-			{
-			++p;
-			gcd.Close();
-			//p is still on cleanup stack
-			break;
-			}
-		CleanupStack::PopAndDestroy(&p);
-		gcd.Close();
-		}
-
-	//generate a prime q such that GCD(e,q-1) == 1 && (p != q)
-	for (;;)
-		{
-		q = RInteger::NewPrimeL(qbits,TInteger::ETop2BitsSet);
-		CleanupStack::PushL(q);
-		--q;
-
-		RInteger gcd = e.GCDL(q);
-		if( gcd == 1 )
-			{
-			++q;
-			if( p != q )
-				{
-				gcd.Close();
-				//q is still on cleanup stack
-				break;
-				}
-			}
-		CleanupStack::PopAndDestroy(&q);
-		gcd.Close();
-		}
-		
-	//make sure p > q
-    if ( p < q)
-        {
-		TClassSwap(p,q);
-        }
-
-	//calculate n = p * q 
-	RInteger n = p.TimesL(q);
-	CleanupStack::PushL(n);
-
-	--p;
-	--q;
-
-	//temp = (p-1)(q-1)
-	RInteger temp = p.TimesL(q);
-	CleanupStack::PushL(temp);
-
-	//e * d = 1 mod ((p-1)(q-1)) 
-	//d = e^(-1) mod ((p-1)(q-1))
-	RInteger d = e.InverseModL(temp);
-	CleanupStack::PopAndDestroy(&temp); //temp
-	CleanupStack::PushL(d);
-
-	if (aKeyType==EStandardCRT)
-	{
-		//calculate dP = d mod (p-1) 
-		RInteger dP = d.ModuloL(p); //p is still p-1
-		CleanupStack::PushL(dP);
-
-		//calculate dQ = d mod (q-1) 
-		RInteger dQ = d.ModuloL(q); //q is still q-1
-		CleanupStack::PushL(dQ);
-
-		++p;
-		++q;
-		//calculate inverse of qInv = q^(-1)mod(p)
-		RInteger qInv = q.InverseModL(p);
-		CleanupStack::PushL(qInv);
-
-		iPrivate = CRSAPrivateKeyCRT::NewL(n,p,q,dP,dQ,qInv);
-		
-		CleanupStack::Pop(3, &dP); //qInv, dQ, dP
-		CleanupStack::PopAndDestroy(&d); //d	
-		CleanupStack::Pop(3, &p); //n, q, p
-		//e is still on cleanup stack
-	}
-	else if (aKeyType==EStandard)
-	{
-		iPrivate = CRSAPrivateKeyStandard::NewL(n,d);
-
-		CleanupStack::Pop(2, &n); //d, n
-		CleanupStack::PopAndDestroy(2, &p); //q, p
-		//e is still on cleanup stack
-	}
-	else
-	{
-		User::Leave(KErrNotSupported);
-	}
-
-	//make a copy of n for the public parameters
-	RInteger n1 = RInteger::NewL(PrivateKey().N());
-	CleanupStack::PushL(n1);
-	iPublic = CRSAPublicKey::NewL(n1,e); 
-	CleanupStack::Pop(2, &e); //n1, e
-	}
-
--- a/crypto/weakcrypto/source/asymmetric/rsasigner.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,105 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include <securityerr.h>
-#include "rsafunction.h"
-
-/* CRSASigner */
-
-EXPORT_C CRSASigner::CRSASigner(void)
-	{
-	}
-
-/* CRSAPKCS1v15Signer */
-EXPORT_C CRSAPKCS1v15Signer* CRSAPKCS1v15Signer::NewL(
-	const CRSAPrivateKey& aKey)
-	{
-	CRSAPKCS1v15Signer* self = NewLC(aKey);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CRSAPKCS1v15Signer* CRSAPKCS1v15Signer::NewLC(
-	const CRSAPrivateKey& aKey)
-	{
-	CRSAPKCS1v15Signer* self = new(ELeave) CRSAPKCS1v15Signer(aKey);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-TInt CRSAPKCS1v15Signer::MaxInputLength(void) const
-	{
-	return MaxOutputLength() - iPadding->MinPaddingLength();	
-	}
-
-TInt CRSAPKCS1v15Signer::MaxOutputLength(void) const
-	{
-	return iPrivateKey.N().ByteCount();	
-	}
-
-CRSASignature* CRSAPKCS1v15Signer::SignL(const TDesC8& aInput) const
-	{
-	HBufC8* buf = HBufC8::NewMaxLC(MaxOutputLength());
-	TPtr8 ptr = buf->Des();
-
-	ptr.SetLength(aInput.Length());
-
-	//The following will panic if aInput is larger than MaxOutputLength() It is
-	//likely that the caller has passed in something that has not been hashed.
-	//This is a programming, and likely a security error, in client code, not a
-	//problem here.
-	iPadding->PadL(aInput, ptr);
-
-	RInteger input = RInteger::NewL(ptr);
-	CleanupStack::PushL(input);
-	RInteger output;
-
-	RSAFunction::SignL(iPrivateKey, input, output);
-	CleanupStack::PushL(output);
-
-	CRSASignature* signature = CRSASignature::NewL(output);
-	CleanupStack::Pop(&output); //output, now owned by CRSASignature
-	CleanupStack::PopAndDestroy(2, buf); //input, buf
-	return signature;
-	}
-
-CRSAPKCS1v15Signer::CRSAPKCS1v15Signer(const CRSAPrivateKey& aKey)  
-	: iPrivateKey(aKey)
-	{
-	}
-
-void CRSAPKCS1v15Signer::ConstructL(void)  
-	{
-	iPadding = CPaddingPKCS1Signature::NewL(MaxOutputLength());
-
-	// Check if MaxInputLength() makes sense, if not the key length must 
-	// be too small
-	if(MaxInputLength() <= 0)
-		{
-		User::Leave(KErrKeySize);
-		}
-	}
-
-CRSAPKCS1v15Signer::~CRSAPKCS1v15Signer(void)  
-	{
-	delete iPadding;
-	}
--- a/crypto/weakcrypto/source/asymmetric/rsaverifier.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <bigint.h>
-#include <securityerr.h>
-#include "rsafunction.h"
-
-/* CRSAVerifier */
-
-EXPORT_C CRSAVerifier::CRSAVerifier(void)
-	{
-	}
-
-EXPORT_C TBool CRSAVerifier::VerifyL(const TDesC8& aInput, 
-	const CRSASignature& aSignature) const
-	{
-	TBool retval = EFalse;
-	HBufC8* inverseSign = InverseSignLC(aSignature);
-	
-	if (inverseSign->Compare(aInput)==0)
-		{
-		retval = ETrue;
-		}
-	CleanupStack::PopAndDestroy(inverseSign);
-	return retval;	
-	}
-
-/* CRSAPKCS1v15Verifier */
-EXPORT_C CRSAPKCS1v15Verifier* CRSAPKCS1v15Verifier::NewL( 
-	const CRSAPublicKey& aKey)
-	{
-	CRSAPKCS1v15Verifier* self = NewLC(aKey);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CRSAPKCS1v15Verifier* CRSAPKCS1v15Verifier::NewLC(
-	const CRSAPublicKey& aKey)
-	{
-	CRSAPKCS1v15Verifier* self = new(ELeave) CRSAPKCS1v15Verifier(aKey);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-TInt CRSAPKCS1v15Verifier::MaxInputLength(void) const
-	{
-	return MaxOutputLength() - iPadding->MinPaddingLength();	
-	}
-
-TInt CRSAPKCS1v15Verifier::MaxOutputLength(void) const
-	{
-	return iPublicKey.N().ByteCount();
-	}
-
-HBufC8* CRSAPKCS1v15Verifier::InverseSignLC(
-	const CRSASignature& aSignature) const
-	{
-	HBufC8* unpaddedBuf = HBufC8::NewMaxLC(MaxOutputLength());
-	TPtr8 unpaddedHash = unpaddedBuf->Des();
-
-	RInteger input = RInteger::NewL(aSignature.S());
-	CleanupStack::PushL(input);
-	RInteger output;
-
-	RSAFunction::VerifyL(iPublicKey, input, output);
-	CleanupStack::PushL(output);
-
-	TPtrC8 paddedHashPtr = *(output.BufferLC());
-	
-	iPadding->UnPadL(paddedHashPtr, unpaddedHash);
-	CleanupStack::PopAndDestroy(3, &input); //BufferLC, output, input
-	return unpaddedBuf;
-	}
-
-CRSAPKCS1v15Verifier::CRSAPKCS1v15Verifier(const CRSAPublicKey& aKey)
-	: iPublicKey(aKey)
-	{
-	}
-
-void CRSAPKCS1v15Verifier::ConstructL(void)
-	{
-	iPadding = CPaddingPKCS1Signature::NewL(MaxOutputLength());
-
-	// Check if MaxInputLength() makes sense, if not the key length must 
-	// be too small
-	if(MaxInputLength() <= 0)
-		{
-		User::Leave(KErrKeySize);
-		}
-	}
-
-CRSAPKCS1v15Verifier::~CRSAPKCS1v15Verifier(void)
-	{
-	delete iPadding;
-	}
-
--- a/crypto/weakcrypto/source/bigint/algorithms.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1160 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "words.h"
-#include "algorithms.h"
-
-word Add(word *C, const word *A, const word *B, unsigned int N)
-{
-	assert (N%2 == 0);
-	word carry = 0;
-	for (unsigned int i = 0; i < N; i+=2)
-	{
-		dword u = (dword) carry + A[i] + B[i];
-		C[i] = LOW_WORD(u);
-		u = (dword) HIGH_WORD(u) + A[i+1] + B[i+1];
-		C[i+1] = LOW_WORD(u);
-		carry = HIGH_WORD(u);
-	}
-	return carry;
-}
-
-word Subtract(word *C, const word *A, const word *B, unsigned int N)
-{
-	assert (N%2 == 0);
-	word borrow=0;
-	for (unsigned i = 0; i < N; i+=2)
-	{
-		dword u = (dword) A[i] - B[i] - borrow;
-		C[i] = LOW_WORD(u);
-		u = (dword) A[i+1] - B[i+1] - (word)(0-HIGH_WORD(u));
-		C[i+1] = LOW_WORD(u);
-		borrow = 0-HIGH_WORD(u);
-	}
-	return borrow;
-}
-
-int Compare(const word *A, const word *B, unsigned int N)
-{
-	while (N--)
-		if (A[N] > B[N])
-			return 1;
-		else if (A[N] < B[N])
-			return -1;
-
-	return 0;
-}
-
-// It is the job of the calling code to ensure that this won't carry.
-// If you aren't sure, use the next version that will tell you if you need to
-// grow your integer.
-// Having two of these creates ever so slightly more code but avoids having
-// ifdefs all over the rest of the code checking the following type stuff which
-// causes warnings in certain compilers about unused parameters in release
-// builds.  We can't have that can we!
-/*
-Allows avoid this all over bigint.cpp and primes.cpp
-ifdef _DEBUG
-	TUint carry = Increment(Ptr(), Size());
-	assert(!carry);
-else
-	Increment(Ptr(), Size())
-endif
-*/
-void IncrementNoCarry(word *A, unsigned int N, word B)
-{
-	assert(N);
-	word t = A[0];
-	A[0] = t+B;
-	if (A[0] >= t)
-		return;
-	for (unsigned i=1; i<N; i++)
-		if (++A[i])
-			return;
-	assert(0);
-}
-
-word Increment(word *A, unsigned int N, word B)
-{
-	assert(N);
-	word t = A[0];
-	A[0] = t+B;
-	if (A[0] >= t)
-		return 0;
-	for (unsigned i=1; i<N; i++)
-		if (++A[i])
-			return 0;
-	return 1;
-}
-
-//See commments above about IncrementNoCarry
-void DecrementNoCarry(word *A, unsigned int N, word B)
-{
-	assert(N);
-	word t = A[0];
-	A[0] = t-B;
-	if (A[0] <= t)
-		return;
-	for (unsigned i=1; i<N; i++)
-		if (A[i]--)
-			return;
-	assert(0);
-}
-
-word Decrement(word *A, unsigned int N, word B)
-{
-	assert(N);
-	word t = A[0];
-	A[0] = t-B;
-	if (A[0] <= t)
-		return 0;
-	for (unsigned i=1; i<N; i++)
-		if (A[i]--)
-			return 0;
-	return 1;
-}
-
-void TwosComplement(word *A, unsigned int N)
-{
-	Decrement(A, N);
-	for (unsigned i=0; i<N; i++)
-		A[i] = ~A[i];
-}
-
-static word LinearMultiply(word *C, const word *A, word B, unsigned int N)
-{
-	word carry=0;
-	for(unsigned i=0; i<N; i++)
-	{
-		dword p = (dword)A[i] * B + carry;
-		C[i] = LOW_WORD(p);
-		carry = HIGH_WORD(p);
-	}
-	return carry;
-}
-
-static void AtomicMultiply(word *C, const word *A, const word *B)
-{
-/*
-	word s;
-	dword d;
-
-	if (A1 >= A0)
-		if (B0 >= B1)
-		{
-			s = 0;
-			d = (dword)(A1-A0)*(B0-B1);
-		}
-		else
-		{
-			s = (A1-A0);
-			d = (dword)s*(word)(B0-B1);
-		}
-	else
-		if (B0 > B1)
-		{
-			s = (B0-B1);
-			d = (word)(A1-A0)*(dword)s;
-		}
-		else
-		{
-			s = 0;
-			d = (dword)(A0-A1)*(B1-B0);
-		}
-*/
-	// this segment is the branchless equivalent of above
-	word D[4] = {A[1]-A[0], A[0]-A[1], B[0]-B[1], B[1]-B[0]};
-	unsigned int ai = A[1] < A[0];
-	unsigned int bi = B[0] < B[1];
-	unsigned int di = ai & bi;
-	dword d = (dword)D[di]*D[di+2];
-	D[1] = D[3] = 0;
-	unsigned int si = ai + !bi;
-	word s = D[si];
-
-	dword A0B0 = (dword)A[0]*B[0];
-	C[0] = LOW_WORD(A0B0);
-
-	dword A1B1 = (dword)A[1]*B[1];
-	dword t = (dword) HIGH_WORD(A0B0) + LOW_WORD(A0B0) + LOW_WORD(d) + LOW_WORD(A1B1);
-	C[1] = LOW_WORD(t);
-
-	t = A1B1 + HIGH_WORD(t) + HIGH_WORD(A0B0) + HIGH_WORD(d) + HIGH_WORD(A1B1) - s;
-	C[2] = LOW_WORD(t);
-	C[3] = HIGH_WORD(t);
-}
-
-static word AtomicMultiplyAdd(word *C, const word *A, const word *B)
-{
-	word D[4] = {A[1]-A[0], A[0]-A[1], B[0]-B[1], B[1]-B[0]};
-	unsigned int ai = A[1] < A[0];
-	unsigned int bi = B[0] < B[1];
-	unsigned int di = ai & bi;
-	dword d = (dword)D[di]*D[di+2];
-	D[1] = D[3] = 0;
-	unsigned int si = ai + !bi;
-	word s = D[si];
-
-	dword A0B0 = (dword)A[0]*B[0];
-	dword t = A0B0 + C[0];
-	C[0] = LOW_WORD(t);
-
-	dword A1B1 = (dword)A[1]*B[1];
-	t = (dword) HIGH_WORD(t) + LOW_WORD(A0B0) + LOW_WORD(d) + LOW_WORD(A1B1) + C[1];
-	C[1] = LOW_WORD(t);
-
-	t = (dword) HIGH_WORD(t) + LOW_WORD(A1B1) + HIGH_WORD(A0B0) + HIGH_WORD(d) + HIGH_WORD(A1B1) - s + C[2];
-	C[2] = LOW_WORD(t);
-
-	t = (dword) HIGH_WORD(t) + HIGH_WORD(A1B1) + C[3];
-	C[3] = LOW_WORD(t);
-	return HIGH_WORD(t);
-}
-
-static inline void AtomicMultiplyBottom(word *C, const word *A, const word *B)
-{
-	dword t = (dword)A[0]*B[0];
-	C[0] = LOW_WORD(t);
-	C[1] = HIGH_WORD(t) + A[0]*B[1] + A[1]*B[0];
-}
-
-#define MulAcc(x, y)								\
-	p = (dword)A[x] * B[y] + c; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)d + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e += HIGH_WORD(p);
-
-#define SaveMulAcc(s, x, y) 						\
-	R[s] = c;										\
-	p = (dword)A[x] * B[y] + d; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)e + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e = HIGH_WORD(p);
-
-#define MulAcc1(x, y)								\
-	p = (dword)A[x] * A[y] + c; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)d + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e += HIGH_WORD(p);
-
-#define SaveMulAcc1(s, x, y) 						\
-	R[s] = c;										\
-	p = (dword)A[x] * A[y] + d; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)e + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e = HIGH_WORD(p);
-
-#define SquAcc(x, y)								\
-	p = (dword)A[x] * A[y];	\
-	p = p + p + c; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)d + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e += HIGH_WORD(p);
-
-#define SaveSquAcc(s, x, y) 						\
-	R[s] = c;										\
-	p = (dword)A[x] * A[y];	\
-	p = p + p + d; 					\
-	c = LOW_WORD(p);								\
-	p = (dword)e + HIGH_WORD(p);					\
-	d = LOW_WORD(p);								\
-	e = HIGH_WORD(p);
-
-// VC60 workaround: MSVC 6.0 has an optimization problem that makes
-// (dword)A*B where either A or B has been cast to a dword before
-// very expensive. Revisit a CombaSquare4() function when this
-// problem is fixed.               
-
-// WARNING: KeithR.  05/08/03 This routine doesn't work with gcc on hardware
-// either.  I've completely removed it.  It may be worth looking into sometime
-// in the future.
-/*#ifndef __WINS__
-static void CombaSquare4(word *R, const word *A)
-{
-	dword p;
-	word c, d, e;
-
-	p = (dword)A[0] * A[0];
-	R[0] = LOW_WORD(p);
-	c = HIGH_WORD(p);
-	d = e = 0;
-
-	SquAcc(0, 1);
-
-	SaveSquAcc(1, 2, 0);
-	MulAcc1(1, 1);
-
-	SaveSquAcc(2, 0, 3);
-	SquAcc(1, 2);
-
-	SaveSquAcc(3, 3, 1);
-	MulAcc1(2, 2);
-
-	SaveSquAcc(4, 2, 3);
-
-	R[5] = c;
-	p = (dword)A[3] * A[3] + d;
-	R[6] = LOW_WORD(p);
-	R[7] = e + HIGH_WORD(p);
-}
-#endif */
-
-static void CombaMultiply4(word *R, const word *A, const word *B)
-{
-	dword p;
-	word c, d, e;
-
-	p = (dword)A[0] * B[0];
-	R[0] = LOW_WORD(p);
-	c = HIGH_WORD(p);
-	d = e = 0;
-
-	MulAcc(0, 1);
-	MulAcc(1, 0);
-
-	SaveMulAcc(1, 2, 0);
-	MulAcc(1, 1);
-	MulAcc(0, 2);
-
-	SaveMulAcc(2, 0, 3);
-	MulAcc(1, 2);
-	MulAcc(2, 1);
-	MulAcc(3, 0);
-
-	SaveMulAcc(3, 3, 1);
-	MulAcc(2, 2);
-	MulAcc(1, 3);
-
-	SaveMulAcc(4, 2, 3);
-	MulAcc(3, 2);
-
-	R[5] = c;
-	p = (dword)A[3] * B[3] + d;
-	R[6] = LOW_WORD(p);
-	R[7] = e + HIGH_WORD(p);
-}
-
-static void CombaMultiply8(word *R, const word *A, const word *B)
-{
-	dword p;
-	word c, d, e;
-
-	p = (dword)A[0] * B[0];
-	R[0] = LOW_WORD(p);
-	c = HIGH_WORD(p);
-	d = e = 0;
-
-	MulAcc(0, 1);
-	MulAcc(1, 0);
-
-	SaveMulAcc(1, 2, 0);
-	MulAcc(1, 1);
-	MulAcc(0, 2);
-
-	SaveMulAcc(2, 0, 3);
-	MulAcc(1, 2);
-	MulAcc(2, 1);
-	MulAcc(3, 0);
-
-	SaveMulAcc(3, 0, 4);
-	MulAcc(1, 3);
-	MulAcc(2, 2);
-	MulAcc(3, 1);
-	MulAcc(4, 0);
-
-	SaveMulAcc(4, 0, 5);
-	MulAcc(1, 4);
-	MulAcc(2, 3);
-	MulAcc(3, 2);
-	MulAcc(4, 1);
-	MulAcc(5, 0);
-
-	SaveMulAcc(5, 0, 6);
-	MulAcc(1, 5);
-	MulAcc(2, 4);
-	MulAcc(3, 3);
-	MulAcc(4, 2);
-	MulAcc(5, 1);
-	MulAcc(6, 0);
-
-	SaveMulAcc(6, 0, 7);
-	MulAcc(1, 6);
-	MulAcc(2, 5);
-	MulAcc(3, 4);
-	MulAcc(4, 3);
-	MulAcc(5, 2);
-	MulAcc(6, 1);
-	MulAcc(7, 0);
-
-	SaveMulAcc(7, 1, 7);
-	MulAcc(2, 6);
-	MulAcc(3, 5);
-	MulAcc(4, 4);
-	MulAcc(5, 3);
-	MulAcc(6, 2);
-	MulAcc(7, 1);
-
-	SaveMulAcc(8, 2, 7);
-	MulAcc(3, 6);
-	MulAcc(4, 5);
-	MulAcc(5, 4);
-	MulAcc(6, 3);
-	MulAcc(7, 2);
-
-	SaveMulAcc(9, 3, 7);
-	MulAcc(4, 6);
-	MulAcc(5, 5);
-	MulAcc(6, 4);
-	MulAcc(7, 3);
-
-	SaveMulAcc(10, 4, 7);
-	MulAcc(5, 6);
-	MulAcc(6, 5);
-	MulAcc(7, 4);
-
-	SaveMulAcc(11, 5, 7);
-	MulAcc(6, 6);
-	MulAcc(7, 5);
-
-	SaveMulAcc(12, 6, 7);
-	MulAcc(7, 6);
-
-	R[13] = c;
-	p = (dword)A[7] * B[7] + d;
-	R[14] = LOW_WORD(p);
-	R[15] = e + HIGH_WORD(p);
-}
-
-static void CombaMultiplyBottom4(word *R, const word *A, const word *B)
-{
-	dword p;
-	word c, d, e;
-
-	p = (dword)A[0] * B[0];
-	R[0] = LOW_WORD(p);
-	c = HIGH_WORD(p);
-	d = e = 0;
-
-	MulAcc(0, 1);
-	MulAcc(1, 0);
-
-	SaveMulAcc(1, 2, 0);
-	MulAcc(1, 1);
-	MulAcc(0, 2);
-
-	R[2] = c;
-	R[3] = d + A[0] * B[3] + A[1] * B[2] + A[2] * B[1] + A[3] * B[0];
-}
-
-static void CombaMultiplyBottom8(word *R, const word *A, const word *B)
-{
-	dword p;
-	word c, d, e;
-
-	p = (dword)A[0] * B[0];
-	R[0] = LOW_WORD(p);
-	c = HIGH_WORD(p);
-	d = e = 0;
-
-	MulAcc(0, 1);
-	MulAcc(1, 0);
-
-	SaveMulAcc(1, 2, 0);
-	MulAcc(1, 1);
-	MulAcc(0, 2);
-
-	SaveMulAcc(2, 0, 3);
-	MulAcc(1, 2);
-	MulAcc(2, 1);
-	MulAcc(3, 0);
-
-	SaveMulAcc(3, 0, 4);
-	MulAcc(1, 3);
-	MulAcc(2, 2);
-	MulAcc(3, 1);
-	MulAcc(4, 0);
-
-	SaveMulAcc(4, 0, 5);
-	MulAcc(1, 4);
-	MulAcc(2, 3);
-	MulAcc(3, 2);
-	MulAcc(4, 1);
-	MulAcc(5, 0);
-
-	SaveMulAcc(5, 0, 6);
-	MulAcc(1, 5);
-	MulAcc(2, 4);
-	MulAcc(3, 3);
-	MulAcc(4, 2);
-	MulAcc(5, 1);
-	MulAcc(6, 0);
-
-	R[6] = c;
-	R[7] = d + A[0] * B[7] + A[1] * B[6] + A[2] * B[5] + A[3] * B[4] +
-				A[4] * B[3] + A[5] * B[2] + A[6] * B[1] + A[7] * B[0];
-}
-
-#undef MulAcc
-#undef SaveMulAcc
-static void AtomicInverseModPower2(word *C, word A0, word A1)
-{
-	assert(A0%2==1);
-
-	dword A=MAKE_DWORD(A0, A1), R=A0%8;
-
-	for (unsigned i=3; i<2*WORD_BITS; i*=2)
-		R = R*(2-R*A);
-
-	assert(R*A==1);
-
-	C[0] = LOW_WORD(R);
-	C[1] = HIGH_WORD(R);
-}
-// ********************************************************
-
-#define A0		A
-#define A1		(A+N2)
-#define B0		B
-#define B1		(B+N2)
-
-#define T0		T
-#define T1		(T+N2)
-#define T2		(T+N)
-#define T3		(T+N+N2)
-
-#define R0		R
-#define R1		(R+N2)
-#define R2		(R+N)
-#define R3		(R+N+N2)
-
-// R[2*N] - result = A*B
-// T[2*N] - temporary work space
-// A[N] --- multiplier
-// B[N] --- multiplicant
-
-void RecursiveMultiply(word *R, word *T, const word *A, const word *B, unsigned int N)
-{
-	assert(N>=2 && N%2==0);
-
-	if (N==2)
-		AtomicMultiply(R, A, B);
-	else if (N==4)
-		CombaMultiply4(R, A, B);
-	else if (N==8)
-		CombaMultiply8(R, A, B);
-	else
-	{
-		const unsigned int N2 = N/2;
-		int carry;
-
-		int aComp = Compare(A0, A1, N2);
-		int bComp = Compare(B0, B1, N2);
-
-		switch (2*aComp + aComp + bComp)
-		{
-		case -4:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			Subtract(T1, T1, R0, N2);
-			carry = -1;
-			break;
-		case -2:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			carry = 0;
-			break;
-		case 2:
-			Subtract(R0, A0, A1, N2);
-			Subtract(R1, B1, B0, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			carry = 0;
-			break;
-		case 4:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			Subtract(T1, T1, R1, N2);
-			carry = -1;
-			break;
-		default:
-			SetWords(T0, 0, N);
-			carry = 0;
-		}
-
-		RecursiveMultiply(R0, T2, A0, B0, N2);
-		RecursiveMultiply(R2, T2, A1, B1, N2);
-
-		// now T[01] holds (A1-A0)*(B0-B1), R[01] holds A0*B0, R[23] holds A1*B1
-
-		carry += Add(T0, T0, R0, N);
-		carry += Add(T0, T0, R2, N);
-		carry += Add(R1, R1, T0, N);
-
-		assert (carry >= 0 && carry <= 2);
-		Increment(R3, N2, carry);
-	}
-}
-
-// R[2*N] - result = A*A
-// T[2*N] - temporary work space
-// A[N] --- number to be squared
-
-void RecursiveSquare(word *R, word *T, const word *A, unsigned int N)
-{
-	assert(N && N%2==0);
-
-	if (N==2)
-		AtomicMultiply(R, A, A);
-	else if (N==4)
-	{
-		// VC60 workaround: MSVC 6.0 has an optimization problem that makes
-		// (dword)A*B where either A or B has been cast to a dword before
-		// very expensive. Revisit a CombaSquare4() function when this
-		// problem is fixed.               
-
-// WARNING: KeithR. 05/08/03 This routine doesn't work with gcc on hardware
-// either.  I've completely removed it.  It may be worth looking into sometime
-// in the future.  Therefore, we use the CombaMultiply4 on all targets.
-//#ifdef __WINS__
-		CombaMultiply4(R, A, A);
-/*#else
-		CombaSquare4(R, A);
-#endif*/
-	}
-	else
-	{
-		const unsigned int N2 = N/2;
-
-		RecursiveSquare(R0, T2, A0, N2);
-		RecursiveSquare(R2, T2, A1, N2);
-		RecursiveMultiply(T0, T2, A0, A1, N2);
-
-		word carry = Add(R1, R1, T0, N);
-		carry += Add(R1, R1, T0, N);
-		Increment(R3, N2, carry);
-	}
-}
-// R[N] - bottom half of A*B
-// T[N] - temporary work space
-// A[N] - multiplier
-// B[N] - multiplicant
-
-void RecursiveMultiplyBottom(word *R, word *T, const word *A, const word *B, unsigned int N)
-{
-	assert(N>=2 && N%2==0);
-
-	if (N==2)
-		AtomicMultiplyBottom(R, A, B);
-	else if (N==4)
-		CombaMultiplyBottom4(R, A, B);
-	else if (N==8)
-		CombaMultiplyBottom8(R, A, B);
-	else
-	{
-		const unsigned int N2 = N/2;
-
-		RecursiveMultiply(R, T, A0, B0, N2);
-		RecursiveMultiplyBottom(T0, T1, A1, B0, N2);
-		Add(R1, R1, T0, N2);
-		RecursiveMultiplyBottom(T0, T1, A0, B1, N2);
-		Add(R1, R1, T0, N2);
-	}
-}
-
-// R[N] --- upper half of A*B
-// T[2*N] - temporary work space
-// L[N] --- lower half of A*B
-// A[N] --- multiplier
-// B[N] --- multiplicant
-
-void RecursiveMultiplyTop(word *R, word *T, const word *L, const word *A, const word *B, unsigned int N)
-{
-	assert(N>=2 && N%2==0);
-
-	if (N==2)
-	{
-		AtomicMultiply(T, A, B);
-		((dword *)R)[0] = ((dword *)T)[1];
-	}
-	else if (N==4)
-	{
-		CombaMultiply4(T, A, B);
-		((dword *)R)[0] = ((dword *)T)[2];
-		((dword *)R)[1] = ((dword *)T)[3];
-	}
-	else
-	{
-		const unsigned int N2 = N/2;
-		int carry;
-
-		int aComp = Compare(A0, A1, N2);
-		int bComp = Compare(B0, B1, N2);
-
-		switch (2*aComp + aComp + bComp)
-		{
-		case -4:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			Subtract(T1, T1, R0, N2);
-			carry = -1;
-			break;
-		case -2:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			carry = 0;
-			break;
-		case 2:
-			Subtract(R0, A0, A1, N2);
-			Subtract(R1, B1, B0, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			carry = 0;
-			break;
-		case 4:
-			Subtract(R0, A1, A0, N2);
-			Subtract(R1, B0, B1, N2);
-			RecursiveMultiply(T0, T2, R0, R1, N2);
-			Subtract(T1, T1, R1, N2);
-			carry = -1;
-			break;
-		default:
-			SetWords(T0, 0, N);
-			carry = 0;
-		}
-
-		RecursiveMultiply(T2, R0, A1, B1, N2);
-
-		// now T[01] holds (A1-A0)*(B0-B1), T[23] holds A1*B1
-
-		CopyWords(R0, L+N2, N2);
-		word c2 = Subtract(R0, R0, L, N2);
-		c2 += Subtract(R0, R0, T0, N2);
-		word t = (Compare(R0, T2, N2) == -1);
-
-		carry += t;
-		carry += Increment(R0, N2, c2+t);
-		carry += Add(R0, R0, T1, N2);
-		carry += Add(R0, R0, T3, N2);
-
-		CopyWords(R1, T3, N2);
-		assert (carry >= 0 && carry <= 2);
-		Increment(R1, N2, carry);
-	}
-}
-
-// R[NA+NB] - result = A*B
-// T[NA+NB] - temporary work space
-// A[NA] ---- multiplier
-// B[NB] ---- multiplicant
-
-void AsymmetricMultiply(word *R, word *T, const word *A, unsigned int NA, const word *B, unsigned int NB)
-{
-	if (NA == NB)
-	{
-		if (A == B)
-			RecursiveSquare(R, T, A, NA);
-		else
-			RecursiveMultiply(R, T, A, B, NA);
-
-		return;
-	}
-
-	if (NA > NB)
-	{
-		TClassSwap(A, B);
-		TClassSwap(NA, NB);
-		//std::swap(A, B);
-		//std::swap(NA, NB);
-	}
-
-	assert(NB % NA == 0);
-	assert((NB/NA)%2 == 0); 	// NB is an even multiple of NA
-
-	if (NA==2 && !A[1])
-	{
-		switch (A[0])
-		{
-		case 0:
-			SetWords(R, 0, NB+2);
-			return;
-		case 1:
-			CopyWords(R, B, NB);
-			R[NB] = R[NB+1] = 0;
-			return;
-		default:
-			R[NB] = LinearMultiply(R, B, A[0], NB);
-			R[NB+1] = 0;
-			return;
-		}
-	}
-
-	RecursiveMultiply(R, T, A, B, NA);
-	CopyWords(T+2*NA, R+NA, NA);
-
-	unsigned i;
-
-	for (i=2*NA; i<NB; i+=2*NA)
-		RecursiveMultiply(T+NA+i, T, A, B+i, NA);
-	for (i=NA; i<NB; i+=2*NA)
-		RecursiveMultiply(R+i, T, A, B+i, NA);
-
-	if (Add(R+NA, R+NA, T+2*NA, NB-NA))
-		Increment(R+NB, NA);
-}
-// R[N] ----- result = A inverse mod 2**(WORD_BITS*N)
-// T[3*N/2] - temporary work space
-// A[N] ----- an odd number as input
-
-void RecursiveInverseModPower2(word *R, word *T, const word *A, unsigned int N)
-{
-	if (N==2)
-		AtomicInverseModPower2(R, A[0], A[1]);
-	else
-	{
-		const unsigned int N2 = N/2;
-		RecursiveInverseModPower2(R0, T0, A0, N2);
-		T0[0] = 1;
-		SetWords(T0+1, 0, N2-1);
-		RecursiveMultiplyTop(R1, T1, T0, R0, A0, N2);
-		RecursiveMultiplyBottom(T0, T1, R0, A1, N2);
-		Add(T0, R1, T0, N2);
-		TwosComplement(T0, N2);
-		RecursiveMultiplyBottom(R1, T1, R0, T0, N2);
-	}
-}
-#undef A0
-#undef A1
-#undef B0
-#undef B1
-
-#undef T0
-#undef T1
-#undef T2
-#undef T3
-
-#undef R0
-#undef R1
-#undef R2
-#undef R3
-
-// R[N] --- result = X/(2**(WORD_BITS*N)) mod M
-// T[3*N] - temporary work space
-// X[2*N] - number to be reduced
-// M[N] --- modulus
-// U[N] --- multiplicative inverse of M mod 2**(WORD_BITS*N)
-
-void MontgomeryReduce(word *R, word *T, const word *X, const word *M, const word *U, unsigned int N)
-{
-	RecursiveMultiplyBottom(R, T, X, U, N);
-	RecursiveMultiplyTop(T, T+N, X, R, M, N);
-	if (Subtract(R, X+N, T, N))
-	{
-#ifdef _DEBUG
-		word carry = Add(R, R, M, N);
-		assert(carry);
-#else
-		Add(R, R, M, N);
-#endif
-	}
-}
-
-// do a 3 word by 2 word divide, returns quotient and leaves remainder in A
-static word SubatomicDivide(word *A, word B0, word B1)
-{
-	// assert {A[2],A[1]} < {B1,B0}, so quotient can fit in a word
-	assert(A[2] < B1 || (A[2]==B1 && A[1] < B0));
-
-	dword p, u;
-	word Q;
-
-	// estimate the quotient: do a 2 word by 1 word divide
-	if (B1+1 == 0)
-		Q = A[2];
-	else
-		Q = word(MAKE_DWORD(A[1], A[2]) / (B1+1));
-
-	// now subtract Q*B from A
-	p = (dword) B0*Q;
-	u = (dword) A[0] - LOW_WORD(p);
-	A[0] = LOW_WORD(u);
-	u = (dword) A[1] - HIGH_WORD(p) - (word)(0-HIGH_WORD(u)) - (dword)B1*Q;
-	A[1] = LOW_WORD(u);
-	A[2] += HIGH_WORD(u);
-
-	// Q <= actual quotient, so fix it
-	while (A[2] || A[1] > B1 || (A[1]==B1 && A[0]>=B0))
-	{
-		u = (dword) A[0] - B0;
-		A[0] = LOW_WORD(u);
-		u = (dword) A[1] - B1 - (word)(0-HIGH_WORD(u));
-		A[1] = LOW_WORD(u);
-		A[2] += HIGH_WORD(u);
-		Q++;
-		assert(Q);	// shouldn't overflow
-	}
-
-	return Q;
-}
-
-// do a 4 word by 2 word divide, returns 2 word quotient in Q0 and Q1
-static inline void AtomicDivide(word *Q, const word *A, const word *B)
-{
-	if (!B[0] && !B[1]) // if divisor is 0, we assume divisor==2**(2*WORD_BITS)
-	{
-		Q[0] = A[2];
-		Q[1] = A[3];
-	}
-	else
-	{
-		word T[4];
-		T[0] = A[0]; T[1] = A[1]; T[2] = A[2]; T[3] = A[3];
-		Q[1] = SubatomicDivide(T+1, B[0], B[1]);
-		Q[0] = SubatomicDivide(T, B[0], B[1]);
-
-#ifdef _DEBUG
-		// multiply quotient and divisor and add remainder, make sure it equals dividend
-		assert(!T[2] && !T[3] && (T[1] < B[1] || (T[1]==B[1] && T[0]<B[0])));
-		word P[4];
-		AtomicMultiply(P, Q, B);
-		Add(P, P, T, 4);
-		assert(Mem::Compare((TUint8*)P, 4*WORD_SIZE, (TUint8*)A, 4*WORD_SIZE)==0);
-#endif
-	}
-}
-
-// for use by Divide(), corrects the underestimated quotient {Q1,Q0}
-static void CorrectQuotientEstimate(word *R, word *T, word *Q, const word *B, unsigned int N)
-{
-	assert(N && N%2==0);
-
-	if (Q[1])
-	{
-		T[N] = T[N+1] = 0;
-		unsigned i;
-		for (i=0; i<N; i+=4)
-			AtomicMultiply(T+i, Q, B+i);
-		for (i=2; i<N; i+=4)
-			if (AtomicMultiplyAdd(T+i, Q, B+i))
-				T[i+5] += (++T[i+4]==0);
-	}
-	else
-	{
-		T[N] = LinearMultiply(T, B, Q[0], N);
-		T[N+1] = 0;
-	}
-
-#ifdef _DEBUG
-	word borrow = Subtract(R, R, T, N+2);
-	assert(!borrow && !R[N+1]);
-#else
-	Subtract(R, R, T, N+2);
-#endif
-
-	while (R[N] || Compare(R, B, N) >= 0)
-	{
-		R[N] -= Subtract(R, R, B, N);
-		Q[1] += (++Q[0]==0);
-		assert(Q[0] || Q[1]); // no overflow
-	}
-}
-
-// R[NB] -------- remainder = A%B
-// Q[NA-NB+2] --- quotient	= A/B
-// T[NA+2*NB+4] - temp work space
-// A[NA] -------- dividend
-// B[NB] -------- divisor
-
-void Divide(word *R, word *Q, word *T, const word *A, unsigned int NA, const word *B, unsigned int NB)
-{
-	assert(NA && NB && NA%2==0 && NB%2==0);
-	assert(B[NB-1] || B[NB-2]);
-	assert(NB <= NA);
-
-	// set up temporary work space
-	word *const TA=T;
-	word *const TB=T+NA+2;
-	word *const TP=T+NA+2+NB;
-
-	// copy B into TB and normalize it so that TB has highest bit set to 1
-	unsigned shiftWords = (B[NB-1]==0);
-	TB[0] = TB[NB-1] = 0;
-	CopyWords(TB+shiftWords, B, NB-shiftWords);
-	unsigned shiftBits = WORD_BITS - BitPrecision(TB[NB-1]);
-	assert(shiftBits < WORD_BITS);
-	ShiftWordsLeftByBits(TB, NB, shiftBits);
-
-	// copy A into TA and normalize it
-	TA[0] = TA[NA] = TA[NA+1] = 0;
-	CopyWords(TA+shiftWords, A, NA);
-	ShiftWordsLeftByBits(TA, NA+2, shiftBits);
-
-	if (TA[NA+1]==0 && TA[NA] <= 1)
-	{
-		Q[NA-NB+1] = Q[NA-NB] = 0;
-		while (TA[NA] || Compare(TA+NA-NB, TB, NB) >= 0)
-		{
-			TA[NA] -= Subtract(TA+NA-NB, TA+NA-NB, TB, NB);
-			++Q[NA-NB];
-		}
-	}
-	else
-	{
-		NA+=2;
-		assert(Compare(TA+NA-NB, TB, NB) < 0);
-	}
-
-	word BT[2];
-	BT[0] = TB[NB-2] + 1;
-	BT[1] = TB[NB-1] + (BT[0]==0);
-
-	// start reducing TA mod TB, 2 words at a time
-	for (unsigned i=NA-2; i>=NB; i-=2)
-	{
-		AtomicDivide(Q+i-NB, TA+i-2, BT);
-		CorrectQuotientEstimate(TA+i-NB, TP, Q+i-NB, TB, NB);
-	}
-
-	// copy TA into R, and denormalize it
-	CopyWords(R, TA+shiftWords, NB);
-	ShiftWordsRightByBits(R, NB, shiftBits);
-}
-
-static inline unsigned int EvenWordCount(const word *X, unsigned int N)
-{
-	while (N && X[N-2]==0 && X[N-1]==0)
-		N-=2;
-	return N;
-}
-
-// return k
-// R[N] --- result = A^(-1) * 2^k mod M
-// T[4*N] - temporary work space
-// A[NA] -- number to take inverse of
-// M[N] --- modulus
-
-unsigned int AlmostInverse(word *R, word *T, const word *A, unsigned int NA, const word *M, unsigned int N)
-{
-	assert(NA<=N && N && N%2==0);
-
-	word *b = T;
-	word *c = T+N;
-	word *f = T+2*N;
-	word *g = T+3*N;
-	unsigned int bcLen=2, fgLen=EvenWordCount(M, N);
-	unsigned int k=0, s=0;
-
-	SetWords(T, 0, 3*N);
-	b[0]=1;
-	CopyWords(f, A, NA);
-	CopyWords(g, M, N);
-
-	FOREVER
-	{
-		word t=f[0];
-		while (!t)
-		{
-			if (EvenWordCount(f, fgLen)==0)
-			{
-				SetWords(R, 0, N);
-				return 0;
-			}
-
-			ShiftWordsRightByWords(f, fgLen, 1);
-			if (c[bcLen-1]) bcLen+=2;
-			assert(bcLen <= N);
-			ShiftWordsLeftByWords(c, bcLen, 1);
-			k+=WORD_BITS;
-			t=f[0];
-		}
-
-		unsigned int i=0;
-		while (t%2 == 0)
-		{
-			t>>=1;
-			i++;
-		}
-		k+=i;
-
-		if (t==1 && f[1]==0 && EvenWordCount(f, fgLen)==2)
-		{
-			if (s%2==0)
-				CopyWords(R, b, N);
-			else
-				Subtract(R, M, b, N);
-			return k;
-		}
-
-		ShiftWordsRightByBits(f, fgLen, i);
-		t=ShiftWordsLeftByBits(c, bcLen, i);
-		if (t)
-		{
-			c[bcLen] = t;
-			bcLen+=2;
-			assert(bcLen <= N);
-		}
-
-		if (f[fgLen-2]==0 && g[fgLen-2]==0 && f[fgLen-1]==0 && g[fgLen-1]==0)
-			fgLen-=2;
-
-		if (Compare(f, g, fgLen)==-1)
-		{
-			TClassSwap<word*>(f,g);
-			TClassSwap<word*>(b,c);
-			s++;
-		}
-
-		Subtract(f, f, g, fgLen);
-
-		if (Add(b, b, c, bcLen))
-		{
-			b[bcLen] = 1;
-			bcLen+=2;
-			assert(bcLen <= N);
-		}
-	}
-}
-
-// R[N] - result = A/(2^k) mod M
-// A[N] - input
-// M[N] - modulus
-
-void DivideByPower2Mod(word *R, const word *A, unsigned int k, const word *M, unsigned int N)
-{
-	CopyWords(R, A, N);
-
-	while (k--)
-	{
-		if (R[0]%2==0)
-			ShiftWordsRightByBits(R, N, 1);
-		else
-		{
-			word carry = Add(R, R, M, N);
-			ShiftWordsRightByBits(R, N, 1);
-			R[N-1] += carry<<(WORD_BITS-1);
-		}
-	}
-}
-
--- a/crypto/weakcrypto/source/bigint/algorithms.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Bigint algorithms header file
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
- 
-#ifndef __ALGORITHMS_H__
-#define __ALGORITHMS_H__
-
-#include "../common/inlines.h"
-
-word Add(word* C, const word* A, const word* B, unsigned int N);
-word Subtract(word* C, const word* A, const word* B, unsigned int N);
-int Compare(const word *A, const word *B, unsigned int N);
-void IncrementNoCarry(word *A, unsigned int N, word B=1);
-word Increment(word *A, unsigned int N, word B=1);
-void DecrementNoCarry(word *A, unsigned int N, word B=1);
-word Decrement(word *A, unsigned int N, word B=1);
-void TwosComplement(word *A, unsigned int N);
-void Divide(word* R, word* Q, word* T, const word* A, unsigned int NA,
-	const word* B, unsigned int NB);
-unsigned int AlmostInverse(word *R, word *T, const word *A, unsigned int NA, 
-	const word *M, unsigned int N);
-void DivideByPower2Mod(word *R, const word *A, unsigned int k, const word *M, 
-	unsigned int N);
-void RecursiveInverseModPower2(word *R, word *T, const word *A, unsigned int N);
-void AsymmetricMultiply(word *R, word *T, const word *A, unsigned int NA, 
-	const word *B, unsigned int NB);
-void MontgomeryReduce(word *R, word *T, const word *X, const word *M, 
-	const word *U, unsigned int N);
-void RecursiveSquare(word *R, word *T, const word *A, unsigned int N);
-
-#endif
--- a/crypto/weakcrypto/source/bigint/bigint.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1166 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include <e32std.h>
-#include <euserext.h>
-#include <securityerr.h>
-#include "words.h"
-#include "algorithms.h"
-#include "windowslider.h"
-#include "stackinteger.h"
-#include "mont.h"
-
-
-/**
-* Creates a new buffer containing the big-endian binary representation of this
-* integer.
-*
-* Note that it does not support the exporting of negative integers.
-*
-* @return	The new buffer.
-* 
-* @leave KErrNegativeExportNotSupported	If this instance is a negative integer.
-*
-*/
-EXPORT_C HBufC8* TInteger::BufferLC() const
-	{
-	if(IsNegative())
-		{
-		User::Leave(KErrNegativeExportNotSupported);
-		}
-	TUint bytes = ByteCount();
-	HBufC8* buf = HBufC8::NewMaxLC(bytes);
-	TUint8* bufPtr = (TUint8*)(buf->Ptr());
-	TUint8* regPtr = (TUint8*)Ptr();
-
-	// we internally store the number little endian, as a string we want it big
-	// endian
-	for(TUint i=0,j=bytes-1; i<bytes; )
-		{
-		bufPtr[i++] = regPtr[j--];
-		}
-	return buf;
-	}
-
-EXPORT_C HBufC8* TInteger::BufferWithNoTruncationLC() const
- 	{
- 	if(IsNegative())
- 		{
- 		User::Leave(KErrNegativeExportNotSupported);
- 		}
- 	
- 	TUint wordCount = Size();
- 	TUint bytes = (wordCount)*WORD_SIZE;
-     
-  	HBufC8* buf = HBufC8::NewMaxLC(bytes);
- 	TUint8* bufPtr = (TUint8*)(buf->Ptr());
-	TUint8* regPtr = (TUint8*)Ptr();
-	for(TUint i=0,j=bytes-1; i<bytes; )
- 		{
- 		bufPtr[i++] = regPtr[j--];
- 		}
-  
-	return buf;
-	}
-
-/** 
-* Gets the number of words required to represent this RInteger.
-* 
-* @return	The size of the integer in words.
-*
-*/
-EXPORT_C TUint TInteger::WordCount() const
-	{
-	return CountWords(Ptr(), Size());
-	}
-
-/**
-* Gets the number of bytes required to represent this RInteger.
-* 
-* @return	The size of the integer in bytes.
-* 
-*/
-EXPORT_C TUint TInteger::ByteCount() const
-	{
-	TUint wordCount = WordCount();
-	if(wordCount)
-		{
-		return (wordCount-1)*WORD_SIZE + BytePrecision((Ptr())[wordCount-1]);
-		}
-	else 
-		{
-		return 0;
-		}
-	}
-
-/** 
-* Get the number of bits required to represent this RInteger.
-* 
-* @return	The size of the integer in bits.
-* 
-*/
-EXPORT_C TUint TInteger::BitCount() const
-	{
-	TUint wordCount = WordCount();
-	if(wordCount)
-		{
-		return (wordCount-1)*WORD_BITS + BitPrecision(Ptr()[wordCount-1]);
-		}
-	else 
-		{
-		return 0;
-		}
-	}
-
-
-//These 3 declarations instantiate a constant 0, 1, 2 for ease of use and
-//quick construction elsewhere in the code.  Note that the functions
-//returning references to this static data return const references as you can't
-//modify the ROM ;)
-//word 0: Size of storage in words
-//word 1: Pointer to storage
-//word 2: LSW of storage
-//word 3: MSW of storage
-//Note that the flag bits in word 1 (Ptr()) are zero in the case of a positive
-//stack based integer (SignBit == 0, IsHeapBasedBit == 0)
-const TUint KBigintZero[4] = {2, (TUint)(KBigintZero+2), 0, 0};
-const TUint KBigintOne[4] = {2, (TUint)(KBigintOne+2), 1, 0};
-const TUint KBigintTwo[4] = {2, (TUint)(KBigintTwo+2), 2, 0};
-
-/** 
- * Gets the TInteger that represents zero
- *
- * @return	The TInteger representing zero
- */
-EXPORT_C const TInteger& TInteger::Zero(void)
-	{
-	return *reinterpret_cast<const TStackInteger64*>(KBigintZero);
-	}
-
-/** 
- * Gets the TInteger that represents one
- *
- * @return	The TInteger representing one
- */
-EXPORT_C const TInteger& TInteger::One(void)
-	{
-	return *reinterpret_cast<const TStackInteger64*>(KBigintOne);
-	}
-	
-/** 
- * Gets the TInteger that represents two
- *
- * @return	The TInteger representing two
- */
-EXPORT_C const TInteger& TInteger::Two(void)
-	{
-	return *reinterpret_cast<const TStackInteger64*>(KBigintTwo);
-	}
-
-EXPORT_C RInteger TInteger::PlusL(const TInteger& aOperand) const
-	{
-	RInteger sum;
-    if (NotNegative())
-		{
-        if (aOperand.NotNegative())
-            sum = PositiveAddL(*this, aOperand);
-        else
-            sum = PositiveSubtractL(*this, aOperand);
-		}
-    else
-		{
-        if (aOperand.NotNegative())
-            sum = PositiveSubtractL(aOperand, *this);
-        else
-			{
-            sum = PositiveAddL(*this, aOperand);
-			sum.SetSign(TInteger::ENegative);
-			}
-		}
-	return sum;
-	}
-
-EXPORT_C RInteger TInteger::MinusL(const TInteger& aOperand) const
-	{
-	RInteger diff;
-    if (NotNegative())
-		{
-        if (aOperand.NotNegative())
-            diff = PositiveSubtractL(*this, aOperand);
-        else
-            diff = PositiveAddL(*this, aOperand);
-		}
-    else
-		{
-        if (aOperand.NotNegative())
-			{
-            diff = PositiveAddL(*this, aOperand);
-			diff.SetSign(TInteger::ENegative);
-			}
-        else
-            diff = PositiveSubtractL(aOperand, *this);
-		}
-	return diff;
-	}
-
-EXPORT_C RInteger TInteger::TimesL(const TInteger& aOperand) const
-	{
-	RInteger product = PositiveMultiplyL(*this, aOperand);
-
-	if (NotNegative() != aOperand.NotNegative())
-		{
-		product.Negate();
-		}
-	return product;
-	}
-
-EXPORT_C RInteger TInteger::DividedByL(const TInteger& aOperand) const
-	{
-	RInteger quotient;
-	RInteger remainder;
-	DivideL(remainder, quotient, *this, aOperand);
-	remainder.Close();
-	return quotient;
-	}
-
-EXPORT_C RInteger TInteger::DividedByL(TUint aOperand) const
-	{
-	TUint remainder;
-	RInteger quotient;
-	DivideL(remainder, quotient, *this, aOperand);
-	return quotient;
-	}
-
-EXPORT_C RInteger TInteger::ModuloL(const TInteger& aOperand) const
-	{
-	RInteger remainder;
-	RInteger quotient;
-	DivideL(remainder, quotient, *this, aOperand);
-	quotient.Close();
-	return remainder;
-	}
-
-EXPORT_C TUint TInteger::ModuloL(TUint aOperand) const
-	{
-	if(!aOperand)
-		{
-		User::Leave(KErrDivideByZero);
-		}
-	return Modulo(*this, aOperand);
-	}
-
-EXPORT_C RInteger TInteger::SquaredL() const
-	{
-	//PositiveMultiplyL optimises for the squaring case already
-	//Any number squared is positive, no need for negative handling in TimesL
-	return PositiveMultiplyL(*this, *this);
-	}
-
-EXPORT_C RInteger TInteger::ExponentiateL(const TInteger& aExponent) const
-	{
-	//See HAC 14.85
-
-	// 1.1 Precomputation
-	// g1 <- g
-	// g2 <- g^2
-	RInteger g2 = SquaredL();
-	CleanupStack::PushL(g2);
-	RInteger g1 = RInteger::NewL(*this);
-	CleanupStack::PushL(g1);
-	TWindowSlider slider(aExponent);
-
-	// 1.2 
-	// For i from 1 to (2^(k-1) -1) do g2i+1 <- g2i-1 * g2
-	TUint count = (1 << (slider.WindowSize()-1)) - 1; //2^(k-1) -1
-	RRArray<RInteger> powerArray(count+1); //+1 because we append g1
-	User::LeaveIfError(powerArray.Append(g1));
-	CleanupStack::Pop(); //g1
-	CleanupClosePushL(powerArray);
-	for(TUint k=1; k <= count; k++)
-		{
-		RInteger g2iplus1 = g2.TimesL(powerArray[k-1]);
-		//This append can't fail as the granularity is set high enough
-		//plus we've already called Append once which will alloc to the 
-		//set granularity
-		powerArray.Append(g2iplus1);
-		}
-
-	// 2 A <- 1, i <- t
-	RInteger A = RInteger::NewL(One());
-	CleanupStack::PushL(A);
-	TInt i = aExponent.BitCount() - 1;
-
-	// 3 While i>=0 do:
-	while( i>=0 )
-		{
-		// 3.1 If ei == 0 then A <- A^2
-		if(!aExponent.Bit(i))
-			{
-			A *= A;
-			i--;
-			}
-		// 3.2 Find longest bitstring ei,ei-1,...,el s.t. i-l+1<=k and el==1
-		// and do:
-		// A <- (A^2^(i-l+1)) * g[the index indicated by the bitstring value]
-		else
-			{
-			slider.FindNextWindow(i);
-			assert(slider.Length() >= 1);
-			for(TUint j=0; j<slider.Length(); j++)
-				{
-				A *= A;
-				}
-			A *= powerArray[slider.Value()>>1];
-			i -= slider.Length();
-			}
-		}
-	CleanupStack::Pop(&A);
-	CleanupStack::PopAndDestroy(2, &g2); //powerArray, g2
-	return A;
-	}
-
-EXPORT_C RInteger TInteger::ModularMultiplyL(const TInteger& aA, const TInteger& aB,
-	const TInteger& aMod) 
-	{
-	RInteger product = aA.TimesL(aB);
-	CleanupStack::PushL(product);
-	RInteger reduced = product.ModuloL(aMod);
-	CleanupStack::PopAndDestroy(&product); 
-	return reduced;
-	}
-
-EXPORT_C RInteger TInteger::ModularExponentiateL(const TInteger& aBase, 
-	const TInteger& aExp, const TInteger& aMod) 
-	{
-	CMontgomeryStructure* mont = CMontgomeryStructure::NewLC(aMod);
-	RInteger result = RInteger::NewL(mont->ExponentiateL(aBase, aExp));
-	CleanupStack::PopAndDestroy(mont);
-	return result;
-	}
-
-EXPORT_C RInteger TInteger::GCDL(const TInteger& aOperand) const
-	{
-	//Binary GCD algorithm -- see HAC 14.4.1
-	//with a slight variation -- our g counts shifts rather than actually
-	//shifting.  We then do one shift at the end.
-	assert(NotNegative());
-	assert(aOperand.NotNegative());
-
-	RInteger x = RInteger::NewL(*this);
-	CleanupStack::PushL(x);
-	RInteger y = RInteger::NewL(aOperand);
-	CleanupStack::PushL(y);
-
-	// 1 Ensure x >= y
-	if( x < y )
-		{
-		TClassSwap(x, y);
-		}
-
-	TUint g = 0;
-	// 2 while x and y even x <- x/2, y <- y/2
-	while( x.IsEven() && y.IsEven() )
-		{
-		x >>= 1;
-		y >>= 1;
-		++g;
-		}
-	// 3 while x != 0
-	while( x.NotZero() )
-		{
-		// 3.1 while x even x <- x/2
-		while( x.IsEven() )
-			{
-			x >>= 1;
-			}
-		// 3.2 while y even y <- y/2
-		while( y.IsEven() )
-			{
-			y >>= 1;
-			}
-		// 3.3 t <- abs(x-y)/2
-		RInteger t = x.MinusL(y);
-		t >>= 1;
-		t.SetSign(TInteger::EPositive);
-
-		// 3.4 If x>=y then x <- t else y <- t
-		if( x >= y )
-			{
-			x.Set(t);
-			}
-		else 
-			{
-			y.Set(t);
-			}
-		}
-	
-	// 4 Return (g*y) (equiv to y<<=g as our g was counting shifts not actually
-	//shifting)
-	y <<= g;
-	CleanupStack::Pop(&y);
-	CleanupStack::PopAndDestroy(&x); 
-	return y;
-	}
-
-EXPORT_C RInteger TInteger::InverseModL(const TInteger& aMod) const
-	{
-	assert(aMod.NotNegative());
-
-	RInteger result;
-	if(IsNegative() || *this>=aMod)
-		{
-		RInteger temp = ModuloL(aMod);
-		CleanupClosePushL(temp);
-		result = temp.InverseModL(aMod);
-		CleanupStack::PopAndDestroy(&temp);
-		return result;
-		}
-
-	if(aMod.IsEven())
-		{
-		if( !aMod || IsEven() )
-			{
-			return RInteger::NewL(Zero());
-			}
-		if( *this == One() )
-			{
-			return RInteger::NewL(One());
-			}
-		RInteger u = aMod.InverseModL(*this); 
-		CleanupClosePushL(u);
-		if(!u)
-			{
-			result = RInteger::NewL(Zero());
-			}
-		else 
-			{
-			//calculates (aMod*(*this-u)+1)/(*this) 
-			result = MinusL(u);
-			CleanupClosePushL(result);
-			result *= aMod;
-			++result;
-			result /= *this;
-			CleanupStack::Pop(&result); 
-			}
-		CleanupStack::PopAndDestroy(&u);
-		return result;
-		}
-
-	result = RInteger::NewEmptyL(aMod.Size());
-	CleanupClosePushL(result);
-	RInteger workspace = RInteger::NewEmptyL(aMod.Size() * 4);
-	TUint k = AlmostInverse(result.Ptr(), workspace.Ptr(), Ptr(), Size(),
-		aMod.Ptr(), aMod.Size());
-	DivideByPower2Mod(result.Ptr(), result.Ptr(), k, aMod.Ptr(), aMod.Size());
-	workspace.Close();
-	CleanupStack::Pop(&result);
-
-	return result;
-	}
-
-EXPORT_C TInteger& TInteger::operator+=(const TInteger& aOperand)
-	{
-	this->Set(PlusL(aOperand));
-    return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator-=(const TInteger& aOperand)
-	{
-	this->Set(MinusL(aOperand));
-    return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator*=(const TInteger& aOperand)
-	{
-	this->Set(TimesL(aOperand));
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator/=(const TInteger& aOperand)
-	{
-	this->Set(DividedByL(aOperand));
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator%=(const TInteger& aOperand)
-	{
-	this->Set(ModuloL(aOperand));
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator+=(TInt aOperand)
-	{
-	TStackInteger64 operand(aOperand);
-	*this += operand;
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator-=(TInt aOperand)
-	{
-	TStackInteger64 operand(aOperand);
-	*this -= operand;
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator*=(TInt aOperand)
-	{
-	TStackInteger64 operand(aOperand);
-	*this *= operand;
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator/=(TInt aOperand)
-	{
-	TStackInteger64 operand(aOperand);
-	*this /= operand;
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator%=(TInt aOperand)
-	{
-	TStackInteger64 operand(aOperand);
-	assert(operand.NotNegative());
-	*this %= operand;
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator--()
-	{
-    if (IsNegative())
-		{
-        if (Increment(Ptr(), Size()))
-			{
-            CleanGrowL(2*Size());
-            (Ptr())[Size()/2]=1;
-			}
-		}
-    else
-		{
-        if (Decrement(Ptr(), Size()))
-			{
-			this->CopyL(-1);
-			}
-		}
-    return *this;	
-	}
-
-EXPORT_C TInteger& TInteger::operator++()
-	{
-	if(NotNegative())
-		{
-		if(Increment(Ptr(), Size()))
-			{
-			CleanGrowL(2*Size());
-			(Ptr())[Size()/2]=1;
-			}
-		}
-	else
-		{
-		DecrementNoCarry(Ptr(), Size());
-		if(WordCount()==0)
-			{
-			this->CopyL(Zero());
-			}
-		}
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator <<=(TUint aBits)
-	{
-	const TUint wordCount = WordCount();
-	const TUint shiftWords = aBits / WORD_BITS;
-	const TUint shiftBits = aBits % WORD_BITS;
-
-	CleanGrowL(wordCount+BitsToWords(aBits));
-	ShiftWordsLeftByWords(Ptr(), wordCount + shiftWords, shiftWords);
-	ShiftWordsLeftByBits(Ptr()+shiftWords, wordCount + BitsToWords(shiftBits), 
-		shiftBits);
-	return *this;
-	}
-
-EXPORT_C TInteger& TInteger::operator >>=(TUint aBits)
-	{
-	const TUint wordCount = WordCount();
-	const TUint shiftWords = aBits / WORD_BITS;
-	const TUint shiftBits = aBits % WORD_BITS;
-
-	ShiftWordsRightByWords(Ptr(), wordCount, shiftWords);
-	if(wordCount > shiftWords)
-		{
-		ShiftWordsRightByBits(Ptr(), wordCount - shiftWords, shiftBits);
-		}
-	if(IsNegative() && WordCount()==0) // avoid negative 0
-		{
-		SetSign(EPositive);
-		}
-	return *this;
-	}
-
-EXPORT_C TInt TInteger::UnsignedCompare(const TInteger& aThat) const
-	{
-	TUint size = WordCount();
-	TUint thatSize = aThat.WordCount();
-
-	if( size == thatSize )
-		return Compare(Ptr(), aThat.Ptr(), size);
-	else
-		return size > thatSize ? 1 : -1;
-	}
-
-EXPORT_C TInt TInteger::SignedCompare(const TInteger& aThat) const
-	{
-    if (NotNegative())
-		{
-        if (aThat.NotNegative())
-            return UnsignedCompare(aThat);
-        else
-            return 1;
-		}
-    else
-		{
-        if (aThat.NotNegative())
-            return -1;
-        else
-            return -UnsignedCompare(aThat);
-		}
-	}
-
-EXPORT_C TBool TInteger::operator!() const
-	{
-	//Ptr()[0] is just a quick way of weeding out non-zero numbers without
-	//doing a full WordCount() == 0.  Very good odds that a non-zero number
-	//will have a bit set in the least significant word
-	return IsNegative() ? EFalse : (Ptr()[0]==0 && WordCount()==0);
-	}
-
-EXPORT_C TInt TInteger::SignedCompare(TInt aInteger) const
-	{
-	TStackInteger64 temp(aInteger);
-	return SignedCompare(temp);
-	}
-
-/* TBool IsPrimeL(void) const 
- * and all primality related functions are implemented in primes.cpp */
-
-EXPORT_C TBool TInteger::Bit(TUint aBitPos) const
-	{
-	if( aBitPos/WORD_BITS >= Size() )
-		{
-		return 0;
-		}
-	else 
-		{
-		return (((Ptr())[aBitPos/WORD_BITS] >> (aBitPos % WORD_BITS)) & 1);
-		}
-	}
-
-EXPORT_C void TInteger::SetBit(TUint aBitPos) 
-	{
-	if( aBitPos/WORD_BITS < Size() )
-		{
-		ArraySetBit(Ptr(), aBitPos);
-		}
-	}
-
-EXPORT_C void TInteger::Negate() 
-	{
-	if(!!(*this)) //don't flip sign if *this==0
-		{
-		SetSign(TSign((~Sign())&KSignMask));
-		}
-	}
-
-EXPORT_C TInt TInteger::ConvertToLongL(void) const
-	{
-	if(!IsConvertableToLong())
-		{
-		User::Leave(KErrTotalLossOfPrecision);
-		}
-	return ConvertToLong();
-	}
-
-EXPORT_C void TInteger::CopyL(const TInteger& aInteger, TBool aAllowShrink)
-	{
-	if(aAllowShrink)
-		{
-		CleanResizeL(aInteger.Size());
-		}
-	else
-		{
-		CleanGrowL(aInteger.Size());
-		}
-	Construct(aInteger);
-	}
-
-EXPORT_C void TInteger::CopyL(TInt aInteger, TBool aAllowShrink)
-	{
-	if(aAllowShrink)
-		{
-		CleanResizeL(2);
-		}
-	else
-		{
-		CleanGrowL(2);
-		}
-	Construct(aInteger);
-	}
-
-EXPORT_C void TInteger::Set(const RInteger& aInteger)
-	{
-	assert(IsHeapBased());
-	Mem::FillZ(Ptr(), WordsToBytes(Size()));
-	User::Free(Ptr());
-	iPtr = aInteger.iPtr;
-	iSize = aInteger.iSize;
-	}
-
-RInteger TInteger::PositiveAddL(const TInteger &aA, const TInteger& aB) const
-	{
-	RInteger sum = RInteger::NewEmptyL(CryptoMax(aA.Size(), aB.Size()));
-	const word aSize = aA.Size();
-	const word bSize = aB.Size();
-	const word* const aReg = aA.Ptr();
-	const word* const bReg = aB.Ptr();
-	word* const sumReg = sum.Ptr();
-
-	word carry;
-	if (aSize == bSize)
-		carry = Add(sumReg, aReg, bReg, aSize);
-	else if (aSize > bSize)
-		{
-		carry = Add(sumReg, aReg, bReg, bSize);
-		CopyWords(sumReg+bSize, aReg+bSize, aSize-bSize);
-		carry = Increment(sumReg+bSize, aSize-bSize, carry);
-		}
-	else
-		{
-		carry = Add(sumReg, aReg, bReg, aSize);
-		CopyWords(sumReg+aSize, bReg+aSize, bSize-aSize);
-		carry = Increment(sumReg+aSize, bSize-aSize, carry);
-		}
-
-	if (carry)
-		{
-		CleanupStack::PushL(sum);
-		sum.CleanGrowL(2*sum.Size());
-		CleanupStack::Pop(&sum);
-		sum.Ptr()[sum.Size()/2] = 1;
-		}
-	sum.SetSign(TInteger::EPositive);
-	return sum;
-	}
-
-RInteger TInteger::PositiveSubtractL(const TInteger &aA, const TInteger& aB) const
-	{
-	RInteger diff = RInteger::NewEmptyL(CryptoMax(aA.Size(), aB.Size()));
-	unsigned aSize = aA.WordCount();
-	aSize += aSize%2;
-	unsigned bSize = aB.WordCount();
-	bSize += bSize%2;
-	const word* const aReg = aA.Ptr();
-	const word* const bReg = aB.Ptr();
-	word* const diffReg = diff.Ptr();
-
-	if (aSize == bSize)
-		{
-		if (Compare(aReg, bReg, aSize) >= 0)
-			{
-			Subtract(diffReg, aReg, bReg, aSize);
-			diff.SetSign(TInteger::EPositive);
-			}
-		else
-			{
-			Subtract(diffReg, bReg, aReg, aSize);
-			diff.SetSign(TInteger::ENegative);
-			}
-		}
-	else if (aSize > bSize)
-		{
-		word borrow = Subtract(diffReg, aReg, bReg, bSize);
-		CopyWords(diffReg+bSize, aReg+bSize, aSize-bSize);
-		borrow = Decrement(diffReg+bSize, aSize-bSize, borrow);
-		assert(!borrow);
-		diff.SetSign(TInteger::EPositive);
-		}
-	else
-		{
-		word borrow = Subtract(diffReg, bReg, aReg, aSize);
-		CopyWords(diffReg+aSize, bReg+aSize, bSize-aSize);
-		borrow = Decrement(diffReg+aSize, bSize-aSize, borrow);
-		assert(!borrow);
-		diff.SetSign(TInteger::ENegative);
-		}
-	return diff;
-	}
-
-RInteger TInteger::PositiveMultiplyL(const TInteger &aA, const TInteger &aB) const
-	{
-	unsigned aSize = RoundupSize(aA.WordCount());
-	unsigned bSize = RoundupSize(aB.WordCount());
-
-	RInteger product = RInteger::NewEmptyL(aSize+bSize);
-	CleanupClosePushL(product);
-
-	RInteger workspace = RInteger::NewEmptyL(aSize + bSize);
-	AsymmetricMultiply(product.Ptr(), workspace.Ptr(), aA.Ptr(), aSize, aB.Ptr(), 
-		bSize);
-	workspace.Close();
-	CleanupStack::Pop(&product);
-	return product;
-	}
-
-TUint TInteger::Modulo(const TInteger& aDividend, TUint aDivisor) const
-	{
-	assert(aDivisor);
-	TUint i = aDividend.WordCount();
-	TUint remainder = 0;
-	while(i--)
-		{
-		remainder = TUint(MAKE_DWORD(aDividend.Ptr()[i], remainder) % aDivisor);
-		}
-	return remainder;
-	}
-
-void TInteger::PositiveDivide(TUint& aRemainder, TInteger& aQuotient, 
-	const TInteger& aDividend, TUint aDivisor) const
-	{
-	assert(aDivisor);
-
-	TUint i = aDividend.WordCount();
-	assert(aQuotient.Size() >= RoundupSize(i));
-	assert(aQuotient.Sign() == TInteger::EPositive);
-	aRemainder = 0;
-	while(i--)
-		{
-		aQuotient.Ptr()[i] = 
-			TUint(MAKE_DWORD(aDividend.Ptr()[i], aRemainder) / aDivisor);
-		aRemainder = 
-			TUint(MAKE_DWORD(aDividend.Ptr()[i], aRemainder) % aDivisor);
-		}
-	}
-
-void TInteger::DivideL(TUint& aRemainder, RInteger& aQuotient,
-	const TInteger& aDividend, TUint aDivisor) const
-	{
-	if(!aDivisor)
-		{
-		User::Leave(KErrDivideByZero);
-		}
-	
-	TUint i = aDividend.WordCount();
-	aQuotient.CleanNewL(RoundupSize(i));
-	PositiveDivide(aRemainder, aQuotient, aDividend, aDivisor);
-
-	if(aDividend.NotNegative())
-		{
-		aQuotient.SetSign(TInteger::EPositive);
-		}
-	else
-		{
-		aQuotient.SetSign(TInteger::ENegative);
-		if(aRemainder)
-			{
-			--aQuotient;
-			aRemainder = aDivisor = aRemainder;
-			}
-		}
-	}
-
-void TInteger::PositiveDivideL(RInteger &aRemainder, RInteger &aQuotient,
-	const TInteger &aDividend, const TInteger &aDivisor) const
-	{
-	unsigned dividendSize = aDividend.WordCount();
-	unsigned divisorSize = aDivisor.WordCount();
-
-	if (!divisorSize)
-		{
-		User::Leave(KErrDivideByZero);
-		}
-
-	if (aDividend.UnsignedCompare(aDivisor) == -1)
-		{
-		aRemainder.CreateNewL(aDividend.Size());
-		CleanupStack::PushL(aRemainder);
-		aRemainder.CopyL(aDividend); //set remainder to a
-		aRemainder.SetSign(TInteger::EPositive);
-		aQuotient.CleanNewL(2); //Set quotient to zero
-		CleanupStack::Pop(&aRemainder);
-		return;
-		}
-
-	dividendSize += dividendSize%2;	// round up to next even number
-	divisorSize += divisorSize%2;
-
-	aRemainder.CleanNewL(divisorSize);
-	CleanupStack::PushL(aRemainder);
-	aQuotient.CleanNewL(dividendSize-divisorSize+2);
-	CleanupStack::PushL(aQuotient);
-
-	RInteger T = RInteger::NewEmptyL(dividendSize+2*divisorSize+4);
-	Divide(aRemainder.Ptr(), aQuotient.Ptr(), T.Ptr(), aDividend.Ptr(), 
-		dividendSize, aDivisor.Ptr(), divisorSize);
-	T.Close();
-	CleanupStack::Pop(2, &aRemainder); //aQuotient, aRemainder
-	}
-
-void TInteger::DivideL(RInteger& aRemainder, RInteger& aQuotient, 
-	const TInteger& aDividend, const TInteger& aDivisor) const
-    {
-    PositiveDivideL(aRemainder, aQuotient, aDividend, aDivisor);
-
-    if (aDividend.IsNegative())
-        {
-        aQuotient.Negate();
-        if (aRemainder.NotZero())
-            {
-            --aQuotient;
-			assert(aRemainder.Size() <= aDivisor.Size());
-			Subtract(aRemainder.Ptr(), aDivisor.Ptr(), aRemainder.Ptr(), 
-				aRemainder.Size());
-            }
-        }
-
-    if (aDivisor.IsNegative())
-        aQuotient.Negate();
-    }
-
-TInt TInteger::ConvertToLong(void) const
-	{
-	TUint value = ConvertToUnsignedLong();
-	return Sign() == EPositive ? value : -(static_cast<TInt>(value));
-	}
-
-TBool TInteger::IsConvertableToLong(void) const
-	{
-	if(WordCount() > 1)
-		{
-		return EFalse;
-		}
-	TUint value = (Ptr())[0];
-	if(Sign() == EPositive)
-		{
-		return static_cast<TInt>(value) >= 0;
-		}
-	else
-		{
-		return -(static_cast<TInt>(value)) < 0;
-		}
-	}
-
-void TInteger::RandomizeL(TUint aBits, TRandomAttribute aAttr)
-	{
-	if(!aBits)
-		{
-		return;
-		}
-	const TUint bytes = BitsToBytes(aBits);
-	const TUint words = BitsToWords(aBits);
-	CleanGrowL(words);
-	TPtr8 buf((TUint8*)(Ptr()), bytes, WordsToBytes(Size()));
-	TUint bitpos = aBits % BYTE_BITS;
-	GenerateRandomBytesL(buf);
-	//mask with 0 all bits above the num requested in the most significant byte
-	if(bitpos)
-		{
-		buf[bytes-1] = TUint8( buf[bytes-1] & ((1L << bitpos) - 1) );
-		}
-	//set most significant (top) bit 
-	if(aAttr == ETopBitSet || aAttr == ETop2BitsSet)
-		{
-		SetBit(aBits-1); //Set bit counts from 0
-		assert(BitCount() == aBits);
-		assert(Bit(aBits-1));
-		}
-	//set 2nd bit from top
-	if(aAttr == ETop2BitsSet)
-		{
-		SetBit(aBits-2); //Set bit counts from 0
-		assert(BitCount() == aBits);
-		assert(Bit(aBits-1));
-		assert(Bit(aBits-2));
-		}
-	}
-
-void TInteger::RandomizeL(const TInteger& aMin, const TInteger& aMax)
-	{
-	assert(aMax > aMin);
-	assert(aMin.NotNegative());
-	RInteger range = RInteger::NewL(aMax);
-	CleanupStack::PushL(range);
-	range -= aMin;
-	const TUint bits = range.BitCount();
-
-	//if we find a number < range then aMin+range < aMax 
-	do
-		{
-		RandomizeL(bits, EAllBitsRandom);
-		} 
-	while(*this > range);
-
-	*this += aMin;
-	CleanupStack::PopAndDestroy(&range);
-	}
-
-/* void PrimeRandomizeL(TUint aBits, TRandomAttribute aAttr)
- * and all primality related functions are implemented in primes.cpp */
-
-void TInteger::CreateNewL(TUint aNewSize)
-	{
-	//should only be called on construction
-	assert(!iPtr);
-	
-	TUint newSize = RoundupSize(aNewSize);
-	SetPtr((TUint*)User::AllocL(WordsToBytes(newSize)));
-	SetSize(newSize);
-	SetHeapBased();
-	}
-
-void TInteger::CleanNewL(TUint aNewSize)
-	{
-	CreateNewL(aNewSize);
-	Mem::FillZ(Ptr(), WordsToBytes(Size())); //clear integer storage
-	}
-
-void TInteger::CleanGrowL(TUint aNewSize)
-	{
-	assert(IsHeapBased());
-	TUint newSize = RoundupSize(aNewSize);
-	TUint oldSize = Size();
-	if(newSize > oldSize)
-		{
-		TUint* oldPtr = Ptr();
-		//1) allocate new memory and set ptr and size
-		SetPtr((TUint*)User::AllocL(WordsToBytes(newSize)));
-		SetSize(newSize);
-		//2) copy old mem to new mem
-		Mem::Copy(Ptr(), oldPtr, WordsToBytes(oldSize));
-		//3) zero all old memory
-		Mem::FillZ(oldPtr, WordsToBytes(oldSize));
-		//4) give back old memory
-		User::Free(oldPtr);
-		//5) zero new memory from end of copy to end of growth
-		Mem::FillZ(Ptr() + oldSize, WordsToBytes(newSize-oldSize));
-		}
-	}
-
-void TInteger::CleanResizeL(TUint aNewSize)
-	{
-	assert(IsHeapBased());
-	TUint newSize = RoundupSize(aNewSize);
-	TUint oldSize = Size();
-	if(newSize > oldSize)
-		{
-		CleanGrowL(aNewSize);
-		}
-	else if(newSize < oldSize)
-		{
-		TUint* oldPtr = Ptr();
-		//1) zero memory above newsize
-		Mem::FillZ(oldPtr+WordsToBytes(aNewSize),WordsToBytes(oldSize-newSize));
-		//2) ReAlloc cell.  Since our newsize is less than oldsize, it is
-		//guarenteed not to move.  Thus this is just freeing part of our old
-		//cell to the heap for other uses.
-		SetPtr((TUint*)User::ReAllocL(Ptr(), WordsToBytes(newSize)));
-		SetSize(newSize);
-		}
-	}
-
-TInteger::TInteger() : iSize(0), iPtr(0)
-	{
-	}
-
-void TInteger::Construct(const TDesC8& aValue)
-	{
-	assert(Size() >= BytesToWords(aValue.Size()));
-	if(aValue.Size() > 0)
-		{
-		//People write numbers with the most significant digits first (big
-		//endian) but we store our numbers in little endian.  Hence we need to
-		//reverse the string by bytes.
-
-		TUint bytes = aValue.Size();
-		TUint8* i = (TUint8*)Ptr();
-		TUint8* j = (TUint8*)aValue.Ptr() + bytes;
-
-		//Swap the endianess of the number itself
-		// (msb) 01 02 03 04 05 06 (lsb) becomes ->
-		// (lsb) 06 05 04 03 02 01 (msb)
-		while( j != (TUint8*)aValue.Ptr() )
-			{
-			*i++ = *--j;
-			}
-		Mem::FillZ((TUint8*)Ptr() + bytes, WordsToBytes(Size()) - bytes);
-		}
-	else
-		{
-		//if size is zero, we zero the whole register
-		Mem::FillZ((TUint8*)Ptr(), WordsToBytes(Size()));
-		}
-	SetSign(EPositive);
-	}
-
-void TInteger::Construct(const TInteger& aInteger)
-	{
-	assert(Size() >= aInteger.Size());
-	CopyWords(Ptr(), aInteger.Ptr(), aInteger.Size());
-	if(Size() > aInteger.Size())
-		{
-		Mem::FillZ(Ptr()+aInteger.Size(), WordsToBytes(Size()-aInteger.Size()));
-		}
-	SetSign(aInteger.Sign());
-	}
-
-void TInteger::Construct(TInt aInteger)
-	{
-	Construct((TUint)aInteger);
-	if(aInteger < 0)
-		{
-		SetSign(ENegative);
-		Ptr()[0] = -aInteger;
-		}
-	}
-
-void TInteger::Construct(TUint aInteger)
-	{
-	assert(Size() >= 2);
-	SetSign(EPositive);
-	Ptr()[0] = aInteger;
-	Mem::FillZ(Ptr()+1, WordsToBytes(Size()-1));
-	}
-
-void TInteger::ConstructStack(TUint aWords, TUint aInteger)
-	{
-	SetPtr((TUint*)(this)+2);
-	//SetStackBased(); //Not strictly needed as stackbased is a 0 at bit 1
-	SetSize(aWords);
-	assert(Size() >= 2);
-	Ptr()[0] = aInteger;
-	Mem::FillZ(&(Ptr()[1]), WordsToBytes(Size()-1));
-	}
-
-void TInteger::ConstructStack(TUint aWords, const TInteger& aInteger)
-	{
-	SetPtr((TUint*)(this)+2);
-	//SetStackBased(); //Not strictly needed as stackbased is a 0 at bit 1
-	SetSize(aWords);
-	assert( Size() >= RoundupSize(aInteger.WordCount()) );
-	CopyWords(Ptr(), aInteger.Ptr(), aInteger.Size());
-	Mem::FillZ(Ptr()+aInteger.Size(), WordsToBytes(Size()-aInteger.Size()));
-	}
-
--- a/crypto/weakcrypto/source/bigint/gcchelp.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,395 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-
-#include <kernel\u32std.h>	// need this for __NAKED__, __JUMP and __POPRET
-
-extern "C" {
-#ifdef __GCC32__
-__NAKED__ long long __divdi3(long long /*dividend*/, long long /*divisor*/)
-//
-// Dividend in r1:r0, divisor in r3:r2, Return quotient in r1:r0
-//
-	{
-	asm("stmfd sp!, {r4-r8,lr} ");
-	asm("eor r8, r1, r3 ");				// sign of result into r8
-	asm("movs r1, r1 ");
-	asm("bpl 1f ");
-	asm("rsbs r0, r0, #0 ");			// ABS(dividend)
-	asm("rsc r1, r1, #0 ");
-	asm("1: ");
-	asm("movs r3, r3 ");
-	asm("bpl 2f ");
-	asm("rsbs r2, r2, #0 ");			// ABS(divisor)
-	asm("rsc r3, r3, #0 ");
-	asm("2: ");
-	asm("bl UDiv01 ");					// do the division, result in r4,r5
-	asm("eors r0, r4, r8, asr #32 ");	// quotient into r1:r0, inverted if quotient -ve
-	asm("eors r1, r5, r8, asr #32 ");
-	asm("adcs r0, r0, #0 ");		// if quotient -ve, add 1
-	asm("adcs r1, r1, #0 ");
-	__POPRET("r4-r8,");
-	}
-
-__NAKED__ long long __moddi3(long long /*dividend*/, long long /*divisor*/)	/* signed */
-	{
-	asm("stmfd sp!, {r4-r8,lr} ");
-	asm("movs r8, r1 ");				// sign of remainder (=sign of dividend) into r8
-	asm("bpl 1f ");
-	asm("rsbs r0, r0, #0 ");			// ABS(dividend)
-	asm("rsc r1, r1, #0 ");
-	asm("1: ");
-	asm("movs r3, r3 ");
-	asm("bpl 2f ");
-	asm("rsbs r2, r2, #0 ");			// ABS(divisor)
-	asm("rsc r3, r3, #0 ");
-	asm("2: ");
-	asm("bl UDiv01 ");					// do the division, remainder in r3,r6
-	asm("eors r0, r3, r8, asr #32 ");	// remainder into r1:r0, inverted if dividend -ve
-	asm("eors r1, r6, r8, asr #32 ");
-	asm("adcs r0, r0, #0 ");			// if dividend -ve, add 1
-	asm("adcs r1, r1, #0 ");
-	__POPRET("r4-r8,");
-	}
-
-__NAKED__ long long __umoddi3(unsigned long long /*dividend*/, unsigned long long /*divisor*/)	/* unsigned */
-	{
-	asm("stmfd sp!, {r4-r7,lr} ");
-	asm("bl UDiv01 ");					// do the division, remainder in r6:r3
-	asm("mov r0, r3 ");
-	asm("mov r1, r6 ");
-	__POPRET("r4-r7,");
-	}
-
-__NAKED__ long long __ashrdi3(long long /*value*/, unsigned int /*count*/)
-	{
-	asm("cmp r2, #63 ");
-	asm("movhi r2, #63 ");			// count>63 same as count=63
-	asm("cmp r2, #32 ");
-	asm("bcs Asr01 ");				// jump if shift count >=32
-	asm("rsb r12, r2, #32 ");		// r12=32-shift count
-	asm("mov r0, r0, lsr r2 ");		// shift ls word right
-	asm("orr r0, r0, r1, lsl r12 ");	// or in bits shifted out of ms word
-	asm("mov r1, r1, asr r2 ");		// shift ms word right
-	__JUMP(,lr);
-	asm("Asr01: ");
-	asm("sub r2, r2, #32 ");		// r2=shift count-32
-	asm("mov r0, r1, asr r2 ");		// ls word = ms word >> (count-32)
-	asm("mov r1, r1, asr #32 ");	// ms word of result=sign extension of r1
-	__JUMP(,lr);
-	}
-
-__NAKED__ long long __ashldi3(long long /*value*/, unsigned int /*count*/)
-	{
-	asm("cmp r2, #63 ");
-	asm("movhi r2, #64 ");			// count>63 same as count=64
-	asm("cmp r2, #32 ");
-	asm("bcs Asl01 ");				// jump if shift count >=32
-	asm("rsb r12, r2, #32 ");		// r12=32-shift count
-	asm("mov r1, r1, asl r2 ");		// shift ms word left
-	asm("orr r1, r1, r0, lsr r12 ");	// or in bits shifted out of ls word
-	asm("mov r0, r0, asl r2 ");		// shift ls word left
-	__JUMP(,lr);
-	asm("Asl01: ");
-	asm("sub r2, r2, #32 ");		// r2=shift count-32
-	asm("mov r1, r0, asl r2 ");		// result ms word = ls word << (count-32)
-	asm("mov r0, #0 ");				// ls word of result is zero
-	__JUMP(,lr);
-	}
-
-__NAKED__ unsigned long long __lshrdi3(unsigned long long /*value*/, unsigned int /*count*/)
-	{
-	asm("cmp r2, #63 ");
-	asm("movhi r2, #64 ");			// count>63 same as count=64
-	asm("cmp r2, #32 ");
-	asm("bcs Lsr01 ");				// jump if shift count >=32
-	asm("rsb r12, r2, #32 ");		// r12=32-shift count
-	asm("mov r0, r0, lsr r2 ");		// shift ls word right
-	asm("orr r0, r0, r1, lsl r12 ");	// or in bits shifted out of ms word
-	asm("mov r1, r1, lsr r2 ");		// shift ms word right
-	__JUMP(,lr);
-	asm("Lsr01: ");
-	asm("sub r2, r2, #32 ");		// r2=shift count-32
-	asm("mov r0, r1, lsr r2 ");		// ls word = ms word >> (count-32)
-	asm("mov r1, #0 ");				// ms word of result = 0
-	__JUMP(,lr);
-	}
-
-__NAKED__ long long __muldi3(long long /*multiplicand*/, long long /*multiplier*/)
-	{
-	asm("mul r1, r2, r1 ");				// r1=low2*high1
-	asm("mov ip, r0 ");					// ip=low1
-	asm("mla r1, r0, r3, r1 ");			// r1+=low1*high2
-	asm("mov r0, #0 ");
-	asm("umlal r0, r1, r2, ip ");		// r1:r0 += high1*low1
-	__JUMP(,lr);
-	}
-
-__NAKED__ long long __negdi2(long long /*argument*/)
-	{
-	asm("rsbs r0, r0, #0 ");		// r0=0-r0, set carry
-	asm("rscs r1, r1, #0 ");		// r1=0-r1-(1-C)
-	__JUMP(,lr);
-	}
-
-__NAKED__ unsigned long long __udivmoddi4 (unsigned long long /*dividend*/,
-													unsigned long long /*divisor*/,
-													unsigned long long* /*p_remainder*/)
-	{
-	asm("stmfd sp!, {r4-r7,lr} ");
-	asm("bl UDiv01 ");					// do the division, quotient in r5:r4 remainder in r6:r3
-	asm("ldr r7, [sp, #20] ");			// r7=p_remainder
-	asm("mov r0, r4 ");					// r0=quotient low
-	asm("stmia r7, {r3,r6} ");			// store remainder
-	asm("mov r1, r5 ");					// r0=quotient high
-	__POPRET("r4-r7,");
-	}
-
-__NAKED__ int __cmpdi2(long long /*a*/, long long /*b*/)
-	{
-	// return 0 if a<b, 1 if a=b, 2 if a>b
-	asm("subs r0, r2, r0 ");
-	asm("sbcs r1, r3, r1 ");			// r1:r0 = b-a, set flags
-	asm("movlt r0, #2 ");				// if b<a r0=2
-	__JUMP(lt,lr);						// if b<a return
-	asm("cmpeq r0, #0 ");				// if top word of difference=0, look at bottom
-	asm("moveq r0, #1 ");				// if a=b, r0=1
-	asm("movne r0, #0 ");				// else r=0
-	__JUMP(,lr);
-	}
-
-__NAKED__ int __ucmpdi2(unsigned long long /*a*/, unsigned long long /*b*/)
-	{
-	// return 0 if a<b, 1 if a=b, 2 if a>b
-	asm("cmp r1, r3 ");
-	asm("cmpeq r0, r2 ");				// compare r1:r0 - r3:r2
-	asm("movhi r0, #2 ");				// r0=2 if a>b
-	asm("moveq r0, #1 ");				// r0=1 if a=b
-	asm("movlo r0, #0 ");				// r0=0 if a<b
-	__JUMP(,lr);
-	}
-#endif
-
-#if defined(__GCC32__)
-void __division_by_zero();
-#define DIV_BY_ZERO " __division_by_zero "
-#elif defined(__ARMCC__)
-void __rt_div0 (void);
-#define DIV_BY_ZERO " __cpp(__rt_div0) "
-#endif
-
-void __division_by_zero()
-	{
-	RThread().RaiseException(EExcIntegerDivideByZero);
-    }
-
-__NAKED__ unsigned long long __udivdi3(unsigned long long /*dividend*/, unsigned long long /*divisor*/)
-//
-// Dividend in r1:r0, divisor in r3:r2, Return quotient in r1:r0
-//
-	{
-	asm("stmfd sp!, {r4-r7,lr} ");
-	asm("bl UDiv01 ");					// do the division, result in r4,r5
-	asm("mov r0, r4 ");
-	asm("mov r1, r5 ");
-	__POPRET("r4-r7,");
-
-	// Unsigned 64-bit division. Dividend in r0,r1, divisor in r2,r3
-	// Quotient returned in r4,r5, Remainder in r3,r6
-	// Registers r0-r7,r12 used, r8-r11 unmodified
-	asm(".global UDiv01 ");
-	asm("UDiv01: ");
-	asm("movs r3, r3 ");				// check if divisor fits in 32 bits
-	asm("bne udiv64a ");				// branch if not
-	asm("movs r2, r2 ");				// check if divisor fits in 31 bits
-	asm("bmi udiv64e ");				// branch if not
-	asm("beq udiv64_divby0 ");			// if divisor=0, branch to error routine
-
-	// Divisor is <0x80000000
-	// This means that a 32-bit accumulator is sufficient
-	asm("mov r4, #0 ");					// use r3 as acc, result in r4, r5
-	asm("mov r5, #0 ");
-	asm("mov r6, #8 ");					// do 2 set of 32 iterations
-	asm("udiv64b: ");
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("subs r6, r6, #1 ");			// loop
-	asm("bne udiv64b ");
-	asm("mov r6, #8 ");					// 2nd set of 32 iterations
-	asm("udiv64c: ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("subs r6, r6, #1 ");			// loop
-	asm("bne udiv64c ");
-	__JUMP(,lr);
-
-	// 2^31 <= Divisor < 2^32
-	// Need 33-bit accumulator - use carry flag as 33rd bit
-	asm("udiv64e: ");
-	asm("mov r4, #0 ");					// use r3 as acc, result in r4, r5
-	asm("mov r5, #0 ");
-	asm("mov r6, #8 ");					// do 2 set of 32 iterations
-	asm("udiv64f: ");
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r1, r1, r1 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r5, r5, r5 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("subs r6, r6, #1 ");			// loop
-	asm("bne udiv64f ");
-	asm("mov r6, #8 ");					// 2nd set of 32 iterations
-	asm("udiv64g: ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r3, r3, r3 ");
-	asm("subcs r3, r3, r2 ");
-	asm("subccs r3, r3, r2 ");			// subtract divisor from acc
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("addcc r3, r3, r2 ");			// if borrow, add back
-	asm("subs r6, r6, #1 ");			// loop
-	asm("bne udiv64g ");
-	__JUMP(,lr);
-	
-	// Divisor >= 2^32, so quotient < 2^32
-	// Use 64 bit accumulator, 32 bit quotient
-	asm("udiv64a: ");
-	asm("mov r4, #0 ");					// quotient in r4, use r1, r6 as accumulator
-	asm("mov r6, #0 ");
-	asm("mov r5, #8 ");					// do 32 iterations
-	asm("udiv64d: ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r1, r1, r1 ");
-	asm("adcs r6, r6, r6 ");
-	asm("subs r7, r1, r2 ");			// subtract divisor from acc, result into r7,r12
-	asm("sbcs r12, r6, r3 ");
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("movcs r1, r7 ");				// if no borrow, update acc
-	asm("movcs r6, r12 ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r1, r1, r1 ");
-	asm("adcs r6, r6, r6 ");
-	asm("subs r7, r1, r2 ");			// subtract divisor from acc, result into r7,r12
-	asm("sbcs r12, r6, r3 ");
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("movcs r1, r7 ");				// if no borrow, update acc
-	asm("movcs r6, r12 ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r1, r1, r1 ");
-	asm("adcs r6, r6, r6 ");
-	asm("subs r7, r1, r2 ");			// subtract divisor from acc, result into r7,r12
-	asm("sbcs r12, r6, r3 ");
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("movcs r1, r7 ");				// if no borrow, update acc
-	asm("movcs r6, r12 ");
-	asm("adds r0, r0, r0 ");			// shift dividend left into acc
-	asm("adcs r1, r1, r1 ");
-	asm("adcs r6, r6, r6 ");
-	asm("subs r7, r1, r2 ");			// subtract divisor from acc, result into r7,r12
-	asm("sbcs r12, r6, r3 ");
-	asm("adc r4, r4, r4 ");				// shift result bit left into quotient
-	asm("movcs r1, r7 ");				// if no borrow, update acc
-	asm("movcs r6, r12 ");
-	asm("subs r5, r5, #1 ");			// loop
-	asm("bne udiv64d ");
-	asm("mov r3, r1 ");					// remainder in r3,r6
-	__JUMP(,lr);
-
-	asm("udiv64_divby0: ");
-	asm("str lr, [sp, #-4]! ");
-	asm("bl " DIV_BY_ZERO);
-	__POPRET("");
-	}
-
-}
-
--- a/crypto/weakcrypto/source/bigint/mont.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,235 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include <euserext.h>
-#include "algorithms.h"
-#include "words.h"
-#include "windowslider.h"
-#include "mont.h"
-
-CMontgomeryStructure* CMontgomeryStructure::NewL(
-	const TInteger& aModulus)
-	{
-	CMontgomeryStructure* self = CMontgomeryStructure::NewLC(aModulus);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CMontgomeryStructure* CMontgomeryStructure::NewLC(
-	const TInteger& aModulus)
-	{
-	CMontgomeryStructure* self = new(ELeave) CMontgomeryStructure;
-	CleanupStack::PushL(self);
-	self->ConstructL(aModulus);
-	return self;
-	}
-
-CMontgomeryStructure::~CMontgomeryStructure()
-	{
-	iModulus.Close();
-	iModulusInv.Close();
-	iWorkspace.Close();
-	iResult.Close();
-	}
-
-void CMontgomeryStructure::ConstructL(const TInteger& aModulus)
-	{
-	User::LeaveIfError(aModulus.IsOdd() ? KErrNone : KErrArgument);
-	
-	iModulusInv = RInteger::NewEmptyL(aModulus.Size());
-	iWorkspace = RInteger::NewEmptyL(5*aModulus.Size());
-	iModulus = RInteger::NewL(aModulus);
-	iResult = RInteger::NewEmptyL(aModulus.Size());
-	RecursiveInverseModPower2(iModulusInv.Ptr(), iWorkspace.Ptr(), 
-		iModulus.Ptr(), iModulus.Size());
-	}
-
-CMontgomeryStructure::CMontgomeryStructure()
-	{
-	}
-
-TInteger& CMontgomeryStructure::ConvertInL(TInteger& aInteger) const
-	{
-	aInteger <<= WordsToBits(iModulus.Size());
-	aInteger %= iModulus;
-	return aInteger;
-	}
-
-TInteger& CMontgomeryStructure::ConvertOutL(TInteger& aInteger) const
-	{
-	TUint* const T = iWorkspace.Ptr();
-	TUint* const R = aInteger.Ptr();
-	const TUint N = iModulus.Size();
-	User::LeaveIfError((aInteger.Size() <= N) ? KErrNone : KErrArgument);
-
-	CopyWords(T, aInteger.Ptr(), aInteger.Size());
-	SetWords(T + aInteger.Size(), 0, 2*N - aInteger.Size());
-	MontgomeryReduce(R, T+2*N, T, iModulus.Ptr(), iModulusInv.Ptr(), N);
-	return aInteger;
-	}
-
-const TInteger& CMontgomeryStructure::ReduceL(
-	const TInteger& aInteger) const
-	{
-	RInteger temp = RInteger::NewL(aInteger);
-	CleanupStack::PushL(temp);
-	ConvertInL(temp);
-	iResult.CopyL(ConvertOutL(temp), EFalse);
-	CleanupStack::PopAndDestroy(&temp);
-	return iResult;
-	}
-
-const TInteger& CMontgomeryStructure::MultiplyL(const TInteger& aA, 
-	const TInteger& aB) const
-	{
-	RInteger a = RInteger::NewL(aA);
-	CleanupStack::PushL(a);
-	RInteger b = RInteger::NewL(aB);
-	CleanupStack::PushL(b);
-	DoMultiplyL(iResult, ConvertInL(a), ConvertInL(b));
-	ConvertOutL(iResult);
-	CleanupStack::PopAndDestroy(&b); 
-	CleanupStack::PopAndDestroy(&a); 
-	return iResult;
-	}
-
-void CMontgomeryStructure::DoMultiplyL(TInteger& aResult, const TInteger& aA,
-	const TInteger& aB) const
-	{
-	User::LeaveIfError((aResult.Size() == iModulus.Size()) ? KErrNone : KErrArgument);
-					   
-	TUint* const T = iWorkspace.Ptr();
-	TUint* const R = aResult.Ptr();
-	const TUint N = iModulus.Size();
-	const TUint* const aReg = aA.Ptr();
-	const TUint* const bReg = aB.Ptr();
-	const TUint aSize = aA.Size();
-	const TUint bSize = aB.Size();
-	User::LeaveIfError((aSize <= N && bSize <= N) ? KErrNone : KErrArgument);
-
-	AsymmetricMultiply(T, T+2*N, aReg, aSize, bReg, bSize);
-	SetWords(T+aSize+bSize, 0, 2*N - aSize - bSize);
-	MontgomeryReduce(R, T+2*N, T, iModulus.Ptr(), iModulusInv.Ptr(), N);
-	}
-
-const TInteger& CMontgomeryStructure::SquareL(const TInteger& aA) const
-	{
-	RInteger a = RInteger::NewL(aA);
-	CleanupStack::PushL(a);
-	DoSquareL(iResult, ConvertInL(a));
-	ConvertOutL(iResult);
-	CleanupStack::PopAndDestroy(&a);
-	return iResult;
-	}
-
-void CMontgomeryStructure::DoSquareL(TInteger& aResult, const TInteger& aA) const
-	{
-	User::LeaveIfError((aResult.Size() == iModulus.Size()) ? KErrNone : KErrArgument);
-	TUint* const T = iWorkspace.Ptr();
-	TUint* const R = aResult.Ptr();
-	const TUint N = iModulus.Size();
-	const TUint* const aReg = aA.Ptr();
-	const TUint aSize = aA.Size();
-
-	User::LeaveIfError((aSize <= N) ? KErrNone : KErrArgument);
-
-	RecursiveSquare(T, T+2*N, aReg, aSize);
-	SetWords(T+2*aSize, 0, 2*N-2*aSize);
-	MontgomeryReduce(R, T+2*N, T, iModulus.Ptr(), iModulusInv.Ptr(), N);
-	}
-
-const TInteger& CMontgomeryStructure::ExponentiateL(
-	const TInteger& aBase, const TInteger& aExponent) const
-	{
-	//See HAC 14.85
-	if ((iResult.Size() != iModulus.Size()) ||
-		(aBase >= iModulus) ||
-		(!aBase.IsPositive()) ||
-		(!aExponent.IsPositive()))
-		{
-		User::Leave(KErrArgument);
-		}
-
-	// 1.1 Precomputation
-	// g1 <- g
-	// g2 <- g^2
-	RInteger g2 = RInteger::NewL(aBase);
-	CleanupStack::PushL(g2);
-	ConvertInL(g2);
-	//ConvertIn can shrink g2, because we call DoSquare on g2, g2 must be the same size as the modulus
-	g2.CleanGrowL(iModulus.Size());
-	RInteger g1 = RInteger::NewL(g2);
-	CleanupStack::PushL(g1);
-	DoSquareL(g2, g2);
-
-	TWindowSlider slider(aExponent);
-
-	// 1.2 
-	// For i from 1 to (2^(k-1) -1) do g2i+1 <- g2i-1 * g2
-	TUint count = (1 << (slider.WindowSize()-1)) - 1; //2^(k-1) -1
-	RRArray<RInteger> powerArray(count+1); //+1 because we append g1
-	User::LeaveIfError(powerArray.Append(g1));
-	CleanupStack::Pop(&g1); 
-	CleanupClosePushL(powerArray);
-	for(TUint k=1; k <= count; k++)
-		{
-		RInteger gi = RInteger::NewEmptyL(iModulus.Size());
-		DoMultiplyL(gi, g2, powerArray[k-1]);
-		User::LeaveIfError(powerArray.Append(gi));
-		}
-	
-	// 2 A <- 1, i <- t
-	RInteger temp = RInteger::NewL(TInteger::One());
-	CleanupStack::PushL(temp);
-	ConvertInL(temp);
-
-	RInteger& A = iResult;
-	//Set A to one converted in for this modulus without changing the memory size of A (iResult)
-	A.CopyL(temp, EFalse); 
-	CleanupStack::PopAndDestroy(&temp);
-
-	TInt i = aExponent.BitCount() - 1;
-
-	// 3 While i>=0 do:
-	while( i>=0 )
-		{
-		// 3.1 If ei == 0 then A <- A^2
-		if(!aExponent.Bit(i))
-			{
-			DoSquareL(A, A);
-			i--;
-			}
-		// 3.2 Find longest bitstring ei,ei-1,...,el s.t. i-l+1<=k and el==1
-		// and do:
-		// A <- (A^2^(i-l+1)) * g[the index indicated by the bitstring value]
-		else
-			{
-			slider.FindNextWindow(i);
-			assert(slider.Length() >= 1);
-			for(TUint j=0; j<slider.Length(); j++)
-				{
-				DoSquareL(A, A);
-				}
-			DoMultiplyL(A, A, powerArray[slider.Value()>>1]);
-			i -= slider.Length();
-			}
-		}
-	CleanupStack::PopAndDestroy(2, &g2); //powerArray, g2
-	return ConvertOutL(A); // A == iResult
-	}
--- a/crypto/weakcrypto/source/bigint/mont.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* CMontgomeryStructure class implementation
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
- 
-#ifndef __MONT_H__
-#define __MONT_H__
-
-class TInteger;
-class RInteger;
-
-/** A special representation of integers allowing efficient multiplication
- * and exponentiation under special conditions.
- * @internalComponent
- */
-class CMontgomeryStructure : public CBase
-	{
-public:
-	static CMontgomeryStructure* NewL(const TInteger& aModulus);
-	static CMontgomeryStructure* NewLC(const TInteger& aModulus);
-	~CMontgomeryStructure();
-	const TInteger& ReduceL(const TInteger& aInteger) const;
-	const TInteger& MultiplyL(const TInteger& aA, const TInteger& aB) const;
-	const TInteger& ExponentiateL(const TInteger& aBase, const TInteger& aExponent) const;
-	const TInteger& SquareL(const TInteger& aA) const;
-protected:
-	void DoMultiplyL(TInteger& aResult, const TInteger& aA, const TInteger& aB) const;
-	void DoSquareL(TInteger& aResult, const TInteger& aA) const;
-	TInteger& ConvertInL(TInteger& aInteger) const;
-	TInteger& ConvertOutL(TInteger& aInteger) const;
-	CMontgomeryStructure();
-private:
-	void ConstructL(const TInteger& aModulus);
-	RInteger iModulus;
-	RInteger iModulusInv;
-	RInteger iWorkspace;
-	mutable RInteger iResult;
-	};
-
-#endif // __MONT_H__
--- a/crypto/weakcrypto/source/bigint/primes.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,449 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include <e32std.h>
-#include <securityerr.h>
-#include "words.h"
-#include "primes.h"
-#include "algorithms.h"
-#include "mont.h"
-#include "stackinteger.h"
-
-static inline void EliminateComposites(TUint* aS, TUint aPrime, TUint aJ, 
-	TUint aMaxIndex)
-	{
-	for(; aJ<aMaxIndex; aJ+=aPrime)
-		ArraySetBit(aS, aJ);
-	}
-
-static inline TInt FindLeastSignificantZero(TUint aX)
-	{
-	aX = ~aX;
-	int i = 0;
-	if( aX << 16 == 0 ) aX>>=16, i+=16;
-	if( aX << 24 == 0 ) aX>>=8, i+=8;
-	if( aX << 28 == 0 ) aX>>=4, i+=4;
-	if( aX << 30 == 0 ) aX>>=2, i+=2;
-	if( aX << 31 == 0 ) ++i;
-	return i;
-	}
-
-static inline TInt FindFirstPrimeCandidate(TUint* aS, TUint aBitLength)
-	{
-	assert(aBitLength % WORD_BITS == 0);
-	TUint i=0;
-	//The empty statement at the end of this is stop warnings in all compilers
-	for(; aS[i] == KMaxTUint && i<BitsToWords(aBitLength); i++) {;}
-
-	if(i == BitsToWords(aBitLength))
-		return -1;
-	else
-		{
-		assert( FindLeastSignificantZero((TUint)(aS[i])) >= 0 );
-		assert( FindLeastSignificantZero((TUint)(aS[i])) <= 31 );
-		return i*WORD_BITS + FindLeastSignificantZero((TUint32)(aS[i]));
-		}
-	}
-
-static inline TUint FindSmallestIndex(TUint aPrime, TUint aRemainder)
-	{
-	TUint& j = aRemainder;
-	if(j)
-		{
-		j = aPrime - aRemainder;
-		if( j & 0x1L )
-			{
-			//if j is odd then this + j is even so we actually want 
-			//the next number for which (this + j % p == 0) st this + j is odd
-			//that is: this + j + p == 0 mod p
-			j += aPrime;
-			}
-		//Turn j into an index for a bit array representing odd numbers only
-		j>>=1;
-		}
-	return j;
-	}
-
-static TBool IsSmallPrime(TUint aK) 
-	{
-	//This is just a binary search of our small prime table.
-	TUint l = 0;
-	TUint u = KPrimeTableSize;
-	while( u > l )
-		{
-		TUint m = (l+u)>>1;
-		TUint p = KPrimeTable[m];
-		if(aK < p)
-			u = m;
-		else if (aK > p)
-			l = m + 1;
-		else
-			return ETrue;
-		}
-	return EFalse;
-	}
-
-static inline TUint RabinMillerRounds(TUint aBits) 
-	{
-	//See HAC Table 4.4
-	if(aBits > 1300)
-		return 2;
-	if (aBits > 850)
-		return 3;
-	if (aBits > 650)
-		return 4;
-	if (aBits > 550)
-		return 5;
-	if (aBits > 450)
-		return 6;
-	if (aBits > 400)
-		return 7;
-	if (aBits > 350)
-		return 8;
-	if (aBits > 300)
-		return 9;
-	if (aBits > 250)
-		return 12;
-	if (aBits > 200)
-		return 15;
-	if (aBits > 150)
-		return 18;
-	if (aBits > 100)
-		return 27;
-	//All of the above are optimisations on the worst case.  The worst case
-	//chance of odd composite integers being declared prime by Rabin-Miller is
-	//(1/4)^t where t is the number of rounds.  Thus, t = 40 means that the
-	//chance of declaring a composite integer prime is less than 2^(-80).  See
-	//HAC Fact 4.25 and most of chapter 4 for more details.
-	return 40;
-	}
-
-static TBool HasSmallDivisorL(const TInteger& aPossiblePrime)
-	{
-	assert(aPossiblePrime.IsOdd());
-	//Start checking at the first odd prime, whether it is even should have
-	//already been checked
-	for( TUint i=1; i < KPrimeTableSize; i++ )
-		{
-		if( aPossiblePrime.ModuloL(KPrimeTable[i]) == 0 )
-			{
-			return ETrue;
-			}
-		}
-	return EFalse;
-	}
-
-static TBool RabinMillerIterationL(const CMontgomeryStructure& aMont, 
-	const TInteger& aProbablePrime, const TInteger& aBase)
-	{
-	//see HAC 4.24
-	const TInteger& n = aProbablePrime;
-	assert(n > KLastSmallPrimeSquared);
-	assert(n.IsOdd());
-	assert(aBase > TInteger::One());
-
-	RInteger nminus1 = n.MinusL(TInteger::One());
-	CleanupStack::PushL(nminus1);
-	assert(aBase < nminus1);
-
-	// 1) find (s | 2^s*r == n-1) where r is odd
-	// we want the largest power of 2 that divides n-1
-	TUint s=0;
-	for(;;s++)
-		{
-		if(nminus1.Bit(s))
-			{
-			break;
-			}
-		}
-	// (r = (n-1) / 2^s) which is equiv to (n-1 >>= s)
-	RInteger r = RInteger::NewL(nminus1);
-	CleanupStack::PushL(r);
-	r >>= s;
-
-	//At no point do we own y, aMont owns it
-	const TInteger* y = &(aMont.ExponentiateL(aBase, r));
-
-	TBool probablePrime = EFalse;
-	
-	TUint j=1;
-	if( *y == TInteger::One() || *y == nminus1 )
-		{
-		probablePrime = ETrue;
-		}
-	else
-		{
-		for(j=1; j<s; j++)
-			{
-			y = &(aMont.SquareL(*y));
-			if(*y == nminus1)
-				{
-				probablePrime = ETrue;
-				break;
-				}
-			if(*y == TInteger::One())
-				{
-				assert(probablePrime == EFalse);
-				break;
-				}
-			}
-		}
-	CleanupStack::PopAndDestroy(&r);
-	CleanupStack::PopAndDestroy(&nminus1);//y,r,nminus1
-	return probablePrime;
-	}
-
-static TBool RabinMillerTestL(const CMontgomeryStructure& aMont, 
-	const TInteger& aProbablePrime, TUint aRounds) 
-	{
-	const TInteger& n = aProbablePrime;
-	assert(n > KLastSmallPrimeSquared);
-	
-	RInteger nminus2 = n.MinusL(TInteger::Two());
-	CleanupStack::PushL(nminus2);
-
-	for(TUint i=0; i<aRounds; i++)
-		{
-		RInteger base = RInteger::NewRandomL(TInteger::Two(), nminus2);
-		CleanupStack::PushL(base);
-		if(!RabinMillerIterationL(aMont, n, base))
-			{
-			CleanupStack::PopAndDestroy(2, &nminus2);//base, nminus2
-			return EFalse;
-			}
-		CleanupStack::PopAndDestroy(&base);
-		}
-	CleanupStack::PopAndDestroy(&nminus2);
-	return ETrue;
-	}
-
-static TBool IsStrongProbablePrimeL(const TInteger& aPrime) 
-	{
-	CMontgomeryStructure* mont = CMontgomeryStructure::NewLC(aPrime);
-	//This should be using short circuit evaluation
-	TBool probablePrime = RabinMillerIterationL(*mont, aPrime, TInteger::Two())
-		&& RabinMillerTestL(*mont, aPrime,RabinMillerRounds(aPrime.BitCount()));
-	CleanupStack::PopAndDestroy(mont);
-	return probablePrime;
-	}
-
-/* In the _vast_ majority of cases this simply checks that your chosen random
- * number is >= KLastSmallPrimeSquared and return EFalse and lets the normal
- * prime generation routines handle the situation.  In the case where it is
- * smaller, it generates a provable prime and returns ETrue.  The algorithm for
- * finding a provable prime < KLastPrimeSquared is not the most efficient in the
- * world, but two points come to mind
- * 1) The two if statements hardly _ever_ evaluate to ETrue in real life.
- * 2) Even when it is, the distribution of primes < KLastPrimeSquared is pretty
- * dense, so you aren't going to have check many.
- * This function is essentially here for two reasons:
- * 1) Ensures that it is possible to generate primes < KLastPrimeSquared (the
- * test code does this)
- * 2) Ensures that if you request a prime of a large bit size that there is an
- * even probability distribution across all integers < 2^aBits
- */
-TBool TInteger::SmallPrimeRandomizeL(void)
-	{
-	TBool foundPrime = EFalse;
-	//If the random number we've chosen is less than KLastSmallPrime,
-	//testing for primality is easy.
-	if(*this <= KLastSmallPrime)
-		{
-		//If Zero or One, or two, next prime number is two
-		if(IsZero() || *this == One() || *this == Two())
-			{
-			CopyL(TInteger::Two());
-			foundPrime = ETrue;
-			}
-		else
-			{
-			//Make sure any number we bother testing is at least odd
-			SetBit(0);
-			//Binary search the small primes.
-			while(!IsSmallPrime(ConvertToUnsignedLong()))
-				{
-				//If not prime, add two and try the next odd number.
-
-				//will never carry as the minimum size of an RInteger is 2
-				//words.  Much bigger than KLastSmallPrime on 32bit
-				//architectures.
-				IncrementNoCarry(Ptr(), Size(), 2);
-				}
-			assert(IsSmallPrime(ConvertToUnsignedLong()));
-			foundPrime = ETrue;
-			}
-		}
-	else if(*this <= KLastSmallPrimeSquared)
-		{
-		//Make sure any number we bother testing is at least odd
-		SetBit(0);
-
-		while(HasSmallDivisorL(*this) && *this <= KLastSmallPrimeSquared)
-			{
-			//If not prime, add two and try the next odd number.
-
-			//will never carry as the minimum size of an RInteger is 2
-			//words.  Much bigger than KLastSmallPrime on 32bit
-			//architectures.
-			IncrementNoCarry(Ptr(), Size(), 2);
-			}
-		//If we exited while loop because it had no small divisor then it is
-		//prime.  Otherwise, we've exceeded the limit of what we can provably
-		//generate.  Therefore the normal prime gen routines will be run on it
-		//now.
-		if(*this < KLastSmallPrimeSquared)
-			{
-			foundPrime = ETrue;
-			}
-		else
-			{
-			assert(foundPrime == EFalse);
-			}
-		}
-	//This doesn't mean there is no such prime, simply means that the number
-	//wasn't less than KSmallPrimeSquared and needs to be handled by the normal
-	//prime generation routines.
-	return foundPrime;
-	}
-
-void TInteger::PrimeRandomizeL(TUint aBits, TRandomAttribute aAttr)
-	{
-	assert(aBits > 1); 
-	
-	//"this" is "empty" currently.  Consists of Size() words of 0's.  This is just
-	//checking that sign flag is positive as we don't set it later.
-	assert(NotNegative());
-
-	//Flag for the whole function saying if we've found a prime
-	TBool foundProbablePrime = EFalse;
-
-	//Find 2^aBits + 1 -- any prime we find must be less than this.
-	RInteger max = RInteger::NewEmptyL(BitsToWords(aBits)+1);
-	CleanupStack::PushL(max);
-	max.SetBit(aBits);
-	assert(max.BitCount()-1 == aBits);
-
-	// aBits 	| approx number of odd numbers you must try to have a 50% 
-	//			chance of finding a prime
-	//---------------------------------------------------------
-	// 512		| 122		
-	// 1024		| 245
-	// 2048		| 1023
-	//Therefore if we are generating larger than 1024 bit numbers we'll use a
-	//bigger bit array to have a better chance of avoiding re-generating it.
-	TUint sLength = aBits > 1024 ? 1024 : 512;
-	RInteger S = RInteger::NewEmptyL(BitsToWords(sLength));
-	CleanupStack::PushL(S);
-
-	while(!foundProbablePrime)
-		{
-		//Randomly choose aBits
-		RandomizeL(aBits, aAttr);
-
-		//If the random number chosen is less than KSmallPrimeSquared, we have a
-		//special set of routines.
-		if(SmallPrimeRandomizeL())
-			{
-			foundProbablePrime = ETrue;
-			}
-		else
-			{
-			//if it was <= KLastSmallPrimeSquared then it would have been
-			//handled by SmallPrimeRandomizeL()
-			assert(*this > KLastSmallPrimeSquared);
-
-			//Make sure any number we bother testing is at least odd
-			SetBit(0);
-
-			//Ensure that this + 2*sLength < max
-			RInteger temp = max.MinusL(*this);
-			CleanupStack::PushL(temp);
-			++temp;
-			temp >>=1;
-			if(temp < sLength)
-				{
-				//if this + 2*sLength >= max then we use a smaller sLength to
-				//ensure we don't find a number that is outside of our bounds
-				//(and bigger than our allocated memory for this)
-
-				//temp must be less than KMaxTUint as sLength is a TUint 
-				sLength = temp.ConvertToUnsignedLong();	
-				}
-			CleanupStack::PopAndDestroy(&temp);
-
-			//Start at 1 as no point in checking against 2 (all odd numbers)
-			for(TUint i=1; i<KPrimeTableSize; i++)
-				{
-				//no need to call ModuloL as we know KPrimeTable[i] is not 0
-				TUint remainder = Modulo(*this, KPrimeTable[i]);
-				TUint index = FindSmallestIndex(KPrimeTable[i], remainder);
-				EliminateComposites(S.Ptr(), KPrimeTable[i], index, sLength);
-				}
-			TInt j = FindFirstPrimeCandidate(S.Ptr(), sLength);
-			TInt prev = 0;
-			for(; j>=0; j=FindFirstPrimeCandidate(S.Ptr(), sLength))
-				{
-				ArraySetBit(S.Ptr(), j);
-
-				//should never carry as we earlier made sure that 2*j + this < max
-				//where max is 1 bit more than we asked for.
-				IncrementNoCarry(Ptr(), Size(), 2*(j-prev));
-
-				assert(*this < max);
-				assert(!HasSmallDivisorL(*this));
-
-				prev = j;
-
-				if( IsStrongProbablePrimeL(*this) )
-					{
-					foundProbablePrime = ETrue;
-					break;
-					}
-				}
-			//This clears the memory
-			S.CopyL(0, EFalse);
-			}
-		}
-	CleanupStack::PopAndDestroy(2, &max);
-	}
-
-TBool TInteger::IsPrimeL(void) const
-	{
-	if( NotPositive() )
-		{
-		return EFalse;
-		}
-	else if( IsEven() )
-		{
-		return *this == Two();
-		}
-	else if( *this <= KLastSmallPrime )
-		{
-		assert(KLastSmallPrime < KMaxTUint);
-		return IsSmallPrime(this->ConvertToUnsignedLong());
-		}
-	else if( *this <= KLastSmallPrimeSquared )
-		{
-		return !HasSmallDivisorL(*this);
-		}
-	else 
-		{
-		return !HasSmallDivisorL(*this) && IsStrongProbablePrimeL(*this);
-		}
-	}
--- a/crypto/weakcrypto/source/bigint/primes.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,297 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Table of prime numbers.
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
- 
-#ifndef __BIGINT_PRIMES_H__
-#define __BIGINT_PRIMES_H__
-
-#include <e32std.h>
-
-const TUint16 KPrimeTable[] = 
-	{
-	2, 3, 5, 7, 11, 13, 17, 19,
-	23, 29, 31, 37, 41, 43, 47, 53,
-	59, 61, 67, 71, 73, 79, 83, 89,
-	97, 101, 103, 107, 109, 113, 127, 131,
-	137, 139, 149, 151, 157, 163, 167, 173,
-	179, 181, 191, 193, 197, 199, 211, 223,
-	227, 229, 233, 239, 241, 251, 257, 263,
-	269, 271, 277, 281, 283, 293, 307, 311,
-	313, 317, 331, 337, 347, 349, 353, 359,
-	367, 373, 379, 383, 389, 397, 401, 409,
-	419, 421, 431, 433, 439, 443, 449, 457,
-	461, 463, 467, 479, 487, 491, 499, 503,
-	509, 521, 523, 541, 547, 557, 563, 569,
-	571, 577, 587, 593, 599, 601, 607, 613,
-	617, 619, 631, 641, 643, 647, 653, 659,
-	661, 673, 677, 683, 691, 701, 709, 719,
-	727, 733, 739, 743, 751, 757, 761, 769,
-	773, 787, 797, 809, 811, 821, 823, 827,
-	829, 839, 853, 857, 859, 863, 877, 881,
-	883, 887, 907, 911, 919, 929, 937, 941,
-	947, 953, 967, 971, 977, 983, 991, 997,
-	1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049,
-	1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097,
-	1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163,
-	1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223,
-	1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283,
-	1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321,
-	1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423,
-	1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459,
-	1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511,
-	1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571,
-	1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619,
-	1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693,
-	1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747,
-	1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811,
-	1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877,
-	1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949,
-	1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003,
-	2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069,
-	2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129,
-	2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203,
-	2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267,
-	2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311,
-	2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377,
-	2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423,
-	2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503,
-	2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579,
-	2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657,
-	2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693,
-	2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741,
-	2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801,
-	2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861,
-	2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939,
-	2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011,
-	3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079,
-	3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167,
-	3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221,
-	3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301,
-	3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347,
-	3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413,
-	3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491,
-	3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541,
-	3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607,
-	3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671,
-	3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727,
-	3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797,
-	3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863,
-	3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923,
-	3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003,
-	4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, 
-	4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, 
-	4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, 
-	4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, 
-	4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, 
-	4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, 
-	4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, 
-	4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, 
-	4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, 
-	4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, 
-	4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, 
-	4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, 
-	4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, 
-	4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, 
-	4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, 
-	5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, 
-	5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, 
-	5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, 
-	5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, 
-	5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, 
-	5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, 
-	5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, 
-	5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, 
-	5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, 
-	5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, 
-	5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, 
-	5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, 
-	5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, 
-	5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, 
-	6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, 
-	6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, 
-	6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, 
-	6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, 
-	6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, 
-	6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, 
-	6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, 
-	6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, 
-	6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, 
-	6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, 
-	6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, 
-	6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, 
-	6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, 
-	6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, 
-	6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, 
-	7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, 
-	7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, 
-	7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, 
-	7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, 
-	7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, 
-	7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, 
-	7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, 
-	7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, 
-	7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, 
-	7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, 
-	7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, 
-	7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, 
-	7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, 
-	8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, 
-	8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, 
-	8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, 
-	8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, 
-	8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, 
-	8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, 
-	8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, 
-	8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, 
-	8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, 
-	8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, 
-	8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, 
-	8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, 
-	8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, 
-	8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, 
-	9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, 
-	9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, 
-	9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, 
-	9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, 
-	9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, 
-	9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, 
-	9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, 
-	9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, 
-	9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, 
-	9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, 
-	9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, 
-	9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, 
-	9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, 
-	9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, 
-	10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, 
-	10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, 
-	10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, 
-	10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, 
-	10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, 
-	10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, 
-	10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, 
-	10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, 
-	10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, 
-	10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, 
-	10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, 
-	10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, 
-	10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, 
-	11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, 
-	11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, 
-	11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, 
-	11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, 
-	11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, 
-	11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, 
-	11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, 
-	11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, 
-	11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, 
-	11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, 
-	11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, 
-	11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, 
-	11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, 
-	12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, 
-	12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, 
-	12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, 
-	12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, 
-	12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, 
-	12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, 
-	12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, 
-	12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, 
-	12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, 
-	12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, 
-	12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, 
-	12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, 
-	12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, 
-	12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, 
-	13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, 
-	13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, 
-	13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, 
-	13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, 
-	13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, 
-	13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, 
-	13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, 
-	13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, 
-	13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, 
-	13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, 
-	13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, 
-	13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, 
-	13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, 
-	14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, 
-	14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, 
-	14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, 
-	14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, 
-	14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, 
-	14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, 
-	14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, 
-	14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, 
-	14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, 
-	14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, 
-	14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, 
-	14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, 
-	14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, 
-	15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, 
-	15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, 
-	15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, 
-	15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, 
-	15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, 
-	15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, 
-	15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, 
-	15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, 
-	15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, 
-	15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, 
-	15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, 
-	15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, 
-	15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, 
-	16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, 
-	16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, 
-	16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, 
-	16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, 
-	16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, 
-	16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, 
-	16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, 
-	16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, 
-	16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, 
-	16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, 
-	16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, 
-	16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, 
-	17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, 
-	17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, 
-	17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, 
-	17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, 
-	17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, 
-	17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, 
-	17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, 
-	17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, 
-	17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, 
-	17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, 
-	17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863 
-};
-
-const TUint KPrimeTableSize = sizeof(KPrimeTable)/sizeof(TUint16);
-const TUint KLastSmallPrime = 17863; 
-//Next line doesn't work on arm4 as it doesn't make this calculation at compile
-//time but leaves it for runtime. Therefore we would have uninitialised const
-//data.
-//const TUint KLastSmallPrime = KPrimeTable[KPrimeTableSize-1];
-const TUint KLastSmallPrimeSquared = KLastSmallPrime*KLastSmallPrime;
-
-#endif
--- a/crypto/weakcrypto/source/bigint/rinteger.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,254 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include <e32std.h>
-#include <random.h>
-#include "../common/inlines.h"
-
-
-/** 
- * Copy constructor
- *
- * This function performs a shallow copy, 
- * i.e. the memory holding the integer is not copied.
- */
-EXPORT_C RInteger::RInteger(const RInteger& aInteger)
-	{
-	*this = aInteger;
-	}
-
-/** 
- * Assignment operator
- * 
- * This function performs a shallow copy, 
- * i.e. the memory holding the integer is not copied.
- */
-EXPORT_C RInteger& RInteger::operator=(const RInteger& aInteger)
-	{
-	iSize = aInteger.iSize;
-	iPtr = aInteger.iPtr;
-	return *this;
-	}
-
-
-/** 
- * Creates a new integer representing 0.
- * 
- * @return	An RInteger by value.
- */
-EXPORT_C RInteger RInteger::NewL(void)
-	{
-	return NewL(TInteger::Zero());
-	}
-
-/** 
- * Creates a new integer object representing a specified value.
- * 
- * @param aValue	A descriptor containing the big-endian binary
- * 					representation of the value.
- * @return			An RInteger object representing the value.
- */
-EXPORT_C RInteger RInteger::NewL(const TDesC8& aValue)
-	{
-	RInteger self;
-	//Construct zero's memory beyond the size of aValue after construction
-	self.CreateNewL(BytesToWords(aValue.Size()));
-	self.Construct(aValue);
-	return self;
-	}
-
-/** 
- * Creates an exact copy of an \c aInteger object.
- * 
- * @param aInteger	The integer you wish to copy
- * @return			An RInteger object representing an exact copy of 
- *					aInteger by value.
- */
-EXPORT_C RInteger RInteger::NewL(const TInteger& aInteger)
-	{
-	RInteger self;
-	//don't need to CleanNewL as we'll copy straight from aInteger
-	self.CreateNewL(aInteger.Size());
-	self.Construct(aInteger);
-	return self;
-	}
-
-/** 
- * Creates a random integer uniformly distributed over [0, 2^aBits].
- * 
- * @param aBits	The number of bits you wish to randomly select.
- * @param aAttr	Enum specifying whether specific bits in the random number should
- *				be set.  See TRandomAttribute for more information.
- * @return		A random RInteger object in the range specified.
- */
-EXPORT_C RInteger RInteger::NewRandomL(TUint aBits, TRandomAttribute aAttr)
-	{
-	RInteger self;
-	self.CleanNewL(BitsToWords(aBits));
-	CleanupStack::PushL(self);
-	self.RandomizeL(aBits, aAttr);
-	CleanupStack::Pop(&self); 
-	return self;
-	}
-
-/** 
- * Creates a random integer uniformly distributed over [x | min <= x <= max].
- * 
- * @param aMin	The smallest possible value for the random integer (inclusive).
- * @param aMax	The largest possible value for the random integer (inclusive).
- * @return		A random RInteger object in the range specified.
- */
-EXPORT_C RInteger RInteger::NewRandomL(const TInteger& aMin,
-	const TInteger& aMax)
-	{
-	RInteger self;
-	self.CleanNewL(aMax.Size());
-	CleanupStack::PushL(self);
-	self.RandomizeL(aMin, aMax);
-	CleanupStack::Pop(&self);
-	return self;
-	}
-
-/** 
- * Finds a random prime integer in the range of [2, 2^aBits].
- *
- * This is done by picking a random integer and using that as a starting point
- * for a sequential search for a prime.  To verify the primality of number, 
- * this algorithm uses a probablistic primality test.  This means that it is
- * possible, although extremely improbable, that the number returned is a pseudoprime.
- *
- * @param aBits	The number of bits you wish to randomly select your prime from.
- * @param aAttr	Enum specifying whether specific bits in the random number should
- *				be set.  See TRandomAttribute for more information.
- * @return		A random RInteger representing a probable prime (with very high
- *				probablity) in the range specified.
- */
-EXPORT_C RInteger RInteger::NewPrimeL(TUint aBits, TRandomAttribute aAttr)
-	{
-	RInteger self;
-	self.CleanNewL(BitsToWords(aBits));
-	CleanupStack::PushL(self);
-	self.PrimeRandomizeL(aBits, aAttr);
-	CleanupStack::Pop(&self);
-	return self;
-	}
-
-/** 
- * Creates a new integer from the value represented by \c aInteger.
- * 
- * @param aInteger	A signed word sized integer.
- * @return			An RInteger representation of aInteger by value.
- */
-EXPORT_C RInteger RInteger::NewL(TInt aInteger)
-	{
-	RInteger self;
-	self.CreateNewL(2);
-	self.Construct(aInteger);
-	return self;
-	}
-
-/** 
- * Creates a new integer from the value represented by \c aInteger.
- *
- * @param aInteger	An unsigned word sized integer.
- * @return			An RInteger representation of aInteger by value.
- */
-EXPORT_C RInteger RInteger::NewL(TUint aInteger)
-	{
-	RInteger self;
-	self.CreateNewL(2);
-	self.Construct(aInteger);
-	return self;
-	}
-
-/** 
- * Creates a new integer with a preallocated internal storage of \c aNumWords all
- * initialised to zero.
- *
- * The resulting RInteger object is logically equivalent to RInteger::NewL(0).
- * The only difference is that the internal storage requirements have been 
- * specified to be larger than the default. This is useful if you are about 
- * to perform an operation on this integer, that you know the resulting size
- * requirements of, and wish to avoid a heap resize.
- *
- * @param aNumWords	The number of words for to preallocated and zero fill.
- * @return			An RInteger object representing 0 with a preallocated 
- *					zero-filled internal storage of aNumWords.
- */
-EXPORT_C RInteger RInteger::NewEmptyL(TUint aNumWords)
-	{
-	RInteger self;
-	self.CleanNewL(aNumWords);
-	//There's no construct as there isn't anything to do
-	return self;
-	}
-
-/**
- * Creates an RInteger object with no associated internal (heap) storage.
- * 
- * All data members are initialised to zero.  It is safe (although not strictly necessary)
- * to push such an RInteger object onto the CleanupStack.  This is useful, for example, if
- * you want to pass an RInteger object by reference into a function and have it create
- * the representation of the actual integer for you.  
- *
- * Note that performing any operation on such an RInteger object other than the default
- * assignment operator or copy constructor will panic your code.
- * 
- * @return	A stack based class that has no associated internal storage and thus
- *			does not represent any number.
- */
-EXPORT_C RInteger::RInteger(void)  
-	{
-	}
-
-/** 
- * An overloaded TCleanupItem() allowing the RIntegers to be pushed,
- * popped, and destroyed via the CleanupStack like any other CBase derived object.
- */
-EXPORT_C RInteger::operator TCleanupItem(void)
-	{
-	return TCleanupItem(&RInteger::CallClose, this);
-	}
-
-/** 
- * Helper function registered with the cleanup stack that just calls Close() for
- * this RInteger object.
- * 
- * @param aPtr	A pointer to the object for which clean-up is to be performed. 
- */
-EXPORT_C void RInteger::CallClose(TAny* aPtr)
-	{
-	((RInteger*)aPtr)->Close();	
-	}
-
-/** 
- * Zeros and then frees any memory owned by this RInteger object.
- *  
- * An RInteger object that has been closed can safely fall off the stack.
- */
-EXPORT_C void RInteger::Close(void)
-	{
-	if (iPtr)
-		{
-		Mem::FillZ(Ptr(), Size()*4);
-		User::Free(Ptr());
-		iSize = 0;
-		iPtr = NULL;
-		}
-	}
--- a/crypto/weakcrypto/source/bigint/stackinteger.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TStackInteger class implementation
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
- 
-#ifndef __STACK_INTEGER_H__
-#define __STACK_INTEGER_H__
-
-#include "bigint.h"
-
-/** An integer that can be created on the stack.\n\n
- * The resulting integers are
- * fixed in size and any code that tries to modify their memory allocation
- * will panic.  Stack based integers may be modified as long as you can
- * guarantee that the resulting integer will fit in the current amount of
- * allocated memory.  For integers that can dynamically grow see RInteger.
- * If you are not sure which integer you want, you want an RInteger.
- * @internalComponent
- * @released
- * @see RInteger
- */
-template <TUint W=2> 
-class TStackInteger : public TInteger
-	{
-public:
-	inline TStackInteger<W>(TUint aInteger) {ConstructStack(W, aInteger);}
-	inline TStackInteger<W>(const TInteger& aInteger) {ConstructStack(W, aInteger);}
-protected:
-	TUint32 iBuf[W];
-	};
-
-typedef TStackInteger<2> TStackInteger64;
-typedef TStackInteger<4> TStackInteger128;
-typedef TStackInteger<8> TStackInteger256;
-typedef TStackInteger<16> TStackInteger512;
-typedef TStackInteger<32> TStackInteger1024;
-typedef TStackInteger<64> TStackInteger2048;
-//Don't make them any bigger than this :).  The last one is 66 words (264 bytes)
-
-#endif // __STACK_INTEGER_H__
--- a/crypto/weakcrypto/source/bigint/vchelp.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,351 +0,0 @@
-/*
-* Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* e32\nklib\x86\vchelp.cpp
-*
-*/
-
-
-#ifndef __NAKED__
-#define __NAKED__	__declspec(naked)
-#endif
-
-#include <e32def.h>
-
-#pragma warning ( disable : 4414 )  // short jump to function converted to near
-
-extern "C" {
-__NAKED__ void _allmul()
-//
-// Multiply two 64 bit integers returning a 64 bit result
-// On entry:
-//		[esp+4], [esp+8] = arg 1
-//		[esp+12], [esp+16] = arg 1
-// Return result in edx:eax
-// Remove arguments from stack
-//
-	{
-	_asm mov eax, [esp+4]			// eax = low1
-	_asm mul dword ptr [esp+16]		// edx:eax = low1*high2
-	_asm mov ecx, eax				// keep low 32 bits of product
-	_asm mov eax, [esp+8]			// eax = high1
-	_asm mul dword ptr [esp+12]		// edx:eax = high1*low2
-	_asm add ecx, eax				// accumulate low 32 bits of product
-	_asm mov eax, [esp+4]			// eax = low1
-	_asm mul dword ptr [esp+12]		// edx:eax = low1*low2
-	_asm add edx, ecx				// add cross terms to high 32 bits
-	_asm ret 16
-	}
-
-void udiv64_divby0()
-	{
-	_asm int 0						// division by zero exception
-	_asm ret
-	}
-
-__NAKED__ void UDiv64()
-	{
-	// unsigned divide edx:eax by edi:esi
-	// quotient in ebx:eax, remainder in edi:edx
-	// ecx, ebp, esi also modified
-	_asm test edi, edi
-	_asm jnz short UDiv64a				// branch if divisor >= 2^32
-	_asm test esi, esi
-//	_ASM_j(z,DivisionByZero)			// if divisor=0, branch to error routine
-	_asm jz udiv64_divby0
-	_asm mov ebx, eax					// ebx=dividend low
-	_asm mov eax, edx					// eax=dividend high
-	_asm xor edx, edx					// edx=0
-	_asm div esi						// quotient high now in eax
-	_asm xchg eax, ebx					// quotient high in ebx, dividend low in eax
-	_asm div esi						// quotient now in ebx:eax, remainder in edi:edx
-	_asm ret
-	UDiv64e:
-	_asm xor eax, eax					// set result to 0xFFFFFFFF
-	_asm dec eax
-	_asm jmp short UDiv64f
-	UDiv64a:
-	_asm js short UDiv64b				// skip if divisor msb set
-	_asm bsr ecx, edi					// ecx=bit number of divisor msb - 32
-	_asm inc cl
-	_asm push edi						// save divisor high
-	_asm push esi						// save divisor low
-	_asm shrd esi, edi, cl				// shift divisor right so that msb is bit 31
-	_asm mov ebx, edx					// dividend into ebx:ebp
-	_asm mov ebp, eax
-	_asm shrd eax, edx, cl				// shift dividend right same number of bits
-	_asm shr edx, cl
-	_asm cmp edx, esi					// check if approx quotient will be 2^32
-	_asm jae short UDiv64e				// if so, true result must be 0xFFFFFFFF
-	_asm div esi						// approximate quotient now in eax
-	UDiv64f:
-	_asm mov ecx, eax					// into ecx
-	_asm mul edi						// multiply approx. quotient by divisor high
-	_asm mov esi, eax					// ls dword into esi, ms into edi
-	_asm mov edi, edx
-	_asm mov eax, ecx					// approx. quotient into eax
-	_asm mul dword ptr [esp]			// multiply approx. quotient by divisor low
-	_asm add edx, esi					// edi:edx:eax now equals approx. quotient * divisor
-	_asm adc edi, 0
-	_asm xor esi, esi
-	_asm sub ebp, eax					// subtract dividend - approx. quotient *divisor
-	_asm sbb ebx, edx
-	_asm sbb esi, edi
-	_asm jnc short UDiv64c				// if no borrow, result OK
-	_asm dec ecx						// else result is one too big
-	_asm add ebp, [esp]					// and add divisor to get correct remainder
-	_asm adc ebx, [esp+4]
-	UDiv64c:
-	_asm mov eax, ecx					// result into ebx:eax, remainder into edi:edx
-	_asm mov edi, ebx
-	_asm mov edx, ebp
-	_asm xor ebx, ebx
-	_asm add esp, 8						// remove temporary values from stack
-	_asm ret
-	UDiv64b:
-	_asm mov ebx, 1
-	_asm sub eax, esi					// subtract divisor from dividend
-	_asm sbb edx, edi
-	_asm jnc short UDiv64d				// if no borrow, result=1, remainder in edx:eax
-	_asm add eax, esi					// else add back
-	_asm adc edx, edi
-	_asm dec ebx						// and decrement quotient
-	UDiv64d:
-	_asm mov edi, edx					// remainder into edi:edx
-	_asm mov edx, eax
-	_asm mov eax, ebx					// result in ebx:eax
-	_asm xor ebx, ebx
-	_asm ret
-	}
-
-__NAKED__ void _aulldiv()
-//
-// Divide two 64 bit unsigned integers returning a 64 bit result
-// On entry:
-//		[esp+4], [esp+8] = dividend
-//		[esp+12], [esp+16] = divisor
-// Return result in edx:eax
-// Remove arguments from stack
-//
-	{
-	_asm push ebp
-	_asm push edi
-	_asm push esi
-	_asm push ebx
-	_asm mov eax, [esp+20]
-	_asm mov edx, [esp+24]
-	_asm mov esi, [esp+28]
-	_asm mov edi, [esp+32]
-	_asm call UDiv64
-	_asm mov edx, ebx
-	_asm pop ebx
-	_asm pop esi
-	_asm pop edi
-	_asm pop ebp
-	_asm ret 16
-	}
-
-__NAKED__ void _alldiv()
-//
-// Divide two 64 bit signed integers returning a 64 bit result
-// On entry:
-//		[esp+4], [esp+8] = dividend
-//		[esp+12], [esp+16] = divisor
-// Return result in edx:eax
-// Remove arguments from stack
-//
-	{
-	_asm push ebp
-	_asm push edi
-	_asm push esi
-	_asm push ebx
-	_asm mov eax, [esp+20]
-	_asm mov edx, [esp+24]
-	_asm mov esi, [esp+28]
-	_asm mov edi, [esp+32]
-	_asm test edx, edx
-	_asm jns dividend_nonnegative
-	_asm neg edx
-	_asm neg eax
-	_asm sbb edx, 0
-	dividend_nonnegative:
-	_asm test edi, edi
-	_asm jns divisor_nonnegative
-	_asm neg edi
-	_asm neg esi
-	_asm sbb edi, 0
-	divisor_nonnegative:
-	_asm call UDiv64
-	_asm mov ecx, [esp+24]
-	_asm mov edx, ebx
-	_asm xor ecx, [esp+32]
-	_asm jns quotient_nonnegative
-	_asm neg edx
-	_asm neg eax
-	_asm sbb edx, 0
-	quotient_nonnegative:
-	_asm pop ebx
-	_asm pop esi
-	_asm pop edi
-	_asm pop ebp
-	_asm ret 16
-	}
-
-__NAKED__ void _aullrem()
-//
-// Divide two 64 bit unsigned integers and return 64 bit remainder
-// On entry:
-//		[esp+4], [esp+8] = dividend
-//		[esp+12], [esp+16] = divisor
-// Return result in edx:eax
-// Remove arguments from stack
-//
-	{
-	_asm push ebp
-	_asm push edi
-	_asm push esi
-	_asm push ebx
-	_asm mov eax, [esp+20]
-	_asm mov edx, [esp+24]
-	_asm mov esi, [esp+28]
-	_asm mov edi, [esp+32]
-	_asm call UDiv64
-	_asm mov eax, edx
-	_asm mov edx, edi
-	_asm pop ebx
-	_asm pop esi
-	_asm pop edi
-	_asm pop ebp
-	_asm ret 16
-	}
-
-__NAKED__ void _allrem()
-//
-// Divide two 64 bit signed integers and return 64 bit remainder
-// On entry:
-//		[esp+4], [esp+8] = dividend
-//		[esp+12], [esp+16] = divisor
-// Return result in edx:eax
-// Remove arguments from stack
-//
-	{
-	_asm push ebp
-	_asm push edi
-	_asm push esi
-	_asm push ebx
-	_asm mov eax, [esp+20]
-	_asm mov edx, [esp+24]
-	_asm mov esi, [esp+28]
-	_asm mov edi, [esp+32]
-	_asm test edx, edx
-	_asm jns dividend_nonnegative
-	_asm neg edx
-	_asm neg eax
-	_asm sbb edx, 0
-	dividend_nonnegative:
-	_asm test edi, edi
-	_asm jns divisor_nonnegative
-	_asm neg edi
-	_asm neg esi
-	_asm sbb edi, 0
-	divisor_nonnegative:
-	_asm call UDiv64
-	_asm mov eax, edx
-	_asm mov edx, edi
-	_asm cmp dword ptr [esp+24], 0
-	_asm jns rem_nonnegative
-	_asm neg edx
-	_asm neg eax
-	_asm sbb edx, 0
-	rem_nonnegative:
-	_asm pop ebx
-	_asm pop esi
-	_asm pop edi
-	_asm pop ebp
-	_asm ret 16
-	}
-
-__NAKED__ void _allshr()
-//
-// Arithmetic shift right EDX:EAX by ECX
-//
-	{
-	_asm cmp ecx, 64
-	_asm jae asr_count_ge_64
-	_asm cmp cl, 32
-	_asm jae asr_count_ge_32
-	_asm shrd eax, edx, cl
-	_asm sar edx, cl
-	_asm ret
-	asr_count_ge_32:
-	_asm sub cl, 32
-	_asm mov eax, edx
-	_asm cdq
-	_asm sar eax, cl
-	_asm ret
-	asr_count_ge_64:
-	_asm sar edx, 32
-	_asm mov eax, edx
-	_asm ret
-	}
-
-__NAKED__ void _allshl()
-//
-// shift left EDX:EAX by ECX
-//
-	{
-	_asm cmp ecx, 64
-	_asm jae lsl_count_ge_64
-	_asm cmp cl, 32
-	_asm jae lsl_count_ge_32
-	_asm shld edx, eax, cl
-	_asm shl eax, cl
-	_asm ret
-	lsl_count_ge_32:
-	_asm sub cl, 32
-	_asm mov edx, eax
-	_asm xor eax, eax
-	_asm shl edx, cl
-	_asm ret
-	lsl_count_ge_64:
-	_asm xor edx, edx
-	_asm xor eax, eax
-	_asm ret
-	}
-
-__NAKED__ void _aullshr()
-//
-// Logical shift right EDX:EAX by ECX
-//
-	{
-	_asm cmp ecx, 64
-	_asm jae lsr_count_ge_64
-	_asm cmp cl, 32
-	_asm jae lsr_count_ge_32
-	_asm shrd eax, edx, cl
-	_asm shr edx, cl
-	_asm ret
-	lsr_count_ge_32:
-	_asm sub cl, 32
-	_asm mov eax, edx
-	_asm xor edx, edx
-	_asm shr eax, cl
-	_asm ret
-	lsr_count_ge_64:
-	_asm xor edx, edx
-	_asm xor eax, eax
-	_asm ret
-	}
-}
-
--- a/crypto/weakcrypto/source/bigint/windowslider.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <bigint.h>
-#include "windowslider.h"
-#include "../common/inlines.h"
-
-TWindowSlider::TWindowSlider(const TInteger& aExp, TUint aWindowSize)
-	: iExp(aExp), iSize(aWindowSize)
-	{
-	if(iSize == 0)
-		{
-		TUint expLen = iExp.BitCount();
-		//These numbers are more or less arbitrary and can be tuned for empirical
-		//performance results if desired.  It's a trade off between amount of
-		//precomputation (more if larger iSize) and number of iterations
-		//(more if smaller iSize).  The current defaults were obtained
-		//from crypto++
-		if( expLen <= 17 )
-			iSize = 1;
-		else if( expLen <= 24 )
-			iSize = 2;
-		else if( expLen <= 70 )
-			iSize = 3;
-		else if( expLen <= 197 )
-			iSize = 4;
-		else if( expLen <= 539 )
-			iSize = 5;
-		else if( expLen <= 1434 )
-			iSize = 6;
-		else 
-			iSize = 7;
-		}
-	assert(iSize>=1 && iSize<=7);
-	}
-
-void TWindowSlider::FindNextWindow(TUint aBegin)
-	{
-	assert(iExp.Bit(aBegin)); //initial bit must be 1
-	TInt end = aBegin;
-	TUint temp = 0;
-	iValue = 0;
-	TUint j = 0;
-	for(TInt i=aBegin; i>=0 && j<iSize; i--, j++)
-		{
-		TUint saveMask = WORD_BITS - j - 1;
-		temp |= iExp.Bit(i) << saveMask;
-		if( temp & (1 << saveMask) )
-			{
-			end = i;
-			iValue |= temp; //last valid substring
-			}
-		}
-
-	iLength = aBegin - end + 1;
-	iValue >>= (WORD_BITS - iLength);
-	}
-
--- a/crypto/weakcrypto/source/bigint/windowslider.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* TWindowSlider class implementation
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
- 
-#ifndef __WINDOWSLIDER_H__
-#define __WINDOWSLIDER_H__
-
-#include <e32std.h>
-
-class TInteger; 
-/** Utility class used by our fast exponentiation routines.\n\n
- * See HAC 14.85 for an explanation of how window sliding helps speed things up.
- * @internalComponent
- */
-class TWindowSlider
-{
-public:
-	/** 
-	 * @param aExp The exponent you are using.
-	 * @param aWindowSize The window size.  Leave as default value for the
-	 * constructor to pick a window size appropriate for the given aExp
-	 * @internalComponent
-	 */
-	TWindowSlider(const TInteger& aExp, TUint aWindowSize=0);
-	/**
-	 * Finds the next "window" as defined by HAC 14.85.  The actual bitstring
-	 * value is in iValue and it's length in iLength.  These remain valid until
-	 * the next call to FindNextWindow()
-	 */
-	void FindNextWindow(TUint aBegin);
-	inline TUint WindowSize(void) {return iSize;}
-	inline TUint Value(void) {return iValue;}
-	inline TUint Length(void) {return iLength;}
-
-private:
-	const TInteger& iExp; ///the exponent all this is being calculated on
-	TUint iSize;  ///The size of the sliding window
-	TUint iValue; ///the value found by the most recent FindNextWindow() call
-	TUint iLength;///the bit length of the iValue
-};
-
-#endif
--- a/crypto/weakcrypto/source/bigint/words.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file 
- @internalComponent
-*/
- 
-#ifndef __BIGINT_WORDS_H__
-#define __BIGINT_WORDS_H__
-
-#include "../common/inlines.h"
-
-inline void ArraySetBit(TUint* aS, TUint aJ)
-	{
-	aS[aJ/WORD_BITS] |= (1L << (aJ%WORD_BITS));
-	}
-
-inline TUint CountWords(const TUint *X, TUint N)
-	{
-	while (N && X[N-1]==0)
-		N--;
-	return N;
-	}
-
-inline void SetWords(TUint *r, TUint a, TUint n)
-	{
-	Mem::Fill(r, WordsToBytes(n), a);
-	}
-
-inline void CopyWords(TUint *r, const TUint *a, TUint n)
-	{
-	Mem::Copy(r, a, WordsToBytes(n));
-	}
-
-inline TUint ShiftWordsLeftByBits(TUint *r, TUint n, TUint shiftBits)
-	{
-	assert (shiftBits<WORD_BITS);
-	TUint u, carry=0;
-	if (shiftBits)
-		for (TUint i=0; i<n; i++)
-			{
-			u = r[i];
-			r[i] = (u << shiftBits) | carry;
-			carry = u >> (WORD_BITS-shiftBits);
-			}
-	return carry;
-	}
-
-inline TUint ShiftWordsRightByBits(TUint *r, TUint n, TUint shiftBits)
-{
-	assert (shiftBits<WORD_BITS);
-	TUint u, carry=0;
-	if (shiftBits)
-		for (int i=n-1; i>=0; i--)
-			{
-			u = r[i];
-			r[i] = (u >> shiftBits) | carry;
-			carry = u << (WORD_BITS-shiftBits);
-			}
-	return carry;
-	}
-
-inline TUint CryptoMin(TUint aLeft, TUint aRight) 
-	{
-	return(aLeft<aRight ? aLeft : aRight);
-	}
-
-inline TUint CryptoMax(TUint aLeft, TUint aRight)
-	{
-	return(aLeft<aRight ? aRight : aLeft);
-	}
-
-inline void ShiftWordsLeftByWords(TUint *r, TUint n, TUint shiftWords)
-	{
-	shiftWords = CryptoMin(shiftWords, n);
-	if (shiftWords)
-		{
-		for (TUint i=n-1; i>=shiftWords; i--)
-			r[i] = r[i-shiftWords];
-		SetWords(r, 0, shiftWords);
-		}
-	}
-
-inline void ShiftWordsRightByWords(TUint *r, TUint n, TUint shiftWords)
-	{
-	shiftWords = CryptoMin(shiftWords, n);
-	if (shiftWords)
-		{
-		for (TUint i=0; i+shiftWords<n; i++)
-			r[i] = r[i+shiftWords];
-		SetWords(r+n-shiftWords, 0, shiftWords);
-		}
-	}
-
-inline TUint BytePrecision(TUint aValue)
-	{
-	TUint x=4;
-	if(aValue < 0x10000) aValue <<=16, x-=2;
-	if(aValue < 0x1000000) x--;
-	if(!aValue) x=0;
-	return x;
-	}
-
-inline TUint BitPrecision(TUint aValue)
-	{
-	if(!aValue) return 0;
-	TUint x=32;
-	if(aValue < 0x10000)    aValue<<=16, x-=16;
-	if(aValue < 0x1000000)  aValue<<=8, x-=8;
-	if(aValue < 0x10000000) aValue<<=4, x-=4;
-	if(aValue < 0x40000000) aValue<<=2, x-=2;
-	if(aValue < 0x80000000) --x;
-	return x;
-	}
-
-static const TUint RoundupSizeTable[] = {2, 2, 2, 4, 4, 8, 8, 8, 8};
-    
-static inline TUint RoundupSize(TUint n)
-	{
-    if (n<=8)
-        return RoundupSizeTable[n];
-    else if (n<=16)
-        return 16;
-    else if (n<=32)
-        return 32;
-    else if (n<=64)
-        return 64;
-    else return 1U << BitPrecision(n-1);
-	}
-
-#endif
--- a/crypto/weakcrypto/source/common/cryptostrength.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "cryptostrength.h"
-#include <securityerr.h>
-
-#ifdef CRYPTO_STRONG_BUILD
-const TInt KDTIMaxSymmetricKeyBits = KMaxTInt;
-const TInt KDTIMaxAsymmetricKeyBits = KMaxTInt;
-const TCrypto::TStrength KCryptoStrength=TCrypto::EStrong;
-#else //CRYPTO_WEAK_BUILD
-const TInt KDTIMaxSymmetricKeyBits = 56;
-const TInt KDTIMaxAsymmetricKeyBits = 512;
-const TCrypto::TStrength KCryptoStrength=TCrypto::EWeak;
-#endif //CRYPTO_STRONG_BUILD
-
-EXPORT_C TCrypto::TStrength TCrypto::Strength(void)
-	{
-	return (KCryptoStrength);
-	}
-
-EXPORT_C TBool TCrypto::IsSymmetricWeakEnoughL(TInt aSymmetricKeyBits)
-	{
-	if(aSymmetricKeyBits > KDTIMaxSymmetricKeyBits)
-		{
-		User::Leave(KErrKeyNotWeakEnough);
-		}
-	return ETrue;
-	}
-
-EXPORT_C TBool TCrypto::IsAsymmetricWeakEnoughL(TInt aAsymmetricKeyBits)
-	{
-	if(aAsymmetricKeyBits > KDTIMaxAsymmetricKeyBits)
-		{
-		User::Leave(KErrKeyNotWeakEnough);
-		}
-	return ETrue;
-	}
- 
--- a/crypto/weakcrypto/source/common/inlines.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,244 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
- 
-#ifndef __INLINES_H__
-#define __INLINES_H__
-
-#include <e32base.h>
-
-#define assert(x) __ASSERT_DEBUG((x), User::Panic(_L("crypto.dll"), 1))
-
-#if defined(__GCC32__)
-typedef long long Int64;
-typedef unsigned long long Uint64;
-#elif defined(__VC32__)
-typedef __int64 Int64;
-typedef unsigned __int64 Uint64;
-#elif defined(__CW32__)
-#pragma longlong on
-typedef long long Int64;
-typedef unsigned long long Uint64;
-#endif
-
-typedef Uint64 dword;
-typedef TUint word;
-typedef TUint32 word32;
-
-const TUint WORD_SIZE = sizeof(TUint); 
-const TUint WORD_BYTES = WORD_SIZE;
-const TUint BYTE_BITS = 8;
-const TUint WORD_BITS = WORD_SIZE*BYTE_BITS;
-
-//These next two versions of GETBYTE compile to LDR's of words and then shifts
-//and ands to get it down to a byte.
-//#define GETBYTE(x, y) (TUint)(((x)>>(8*(y)))&255)
-//#define GETBYTE(x, y) (TUint)TUint8((x)>>(8*(y)))
-
-//This next version gets the best assembler on gcc and armv4 (it uses LDRB
-//rather than shifts and ands
-#define GETBYTE(x, y) (((TUint8 *)&(x))[y])
-
-#define MAKE_DWORD(lowWord, highWord) ((dword(highWord)<<WORD_BITS) | (lowWord))
-#define LOW_WORD(x) (TUint32)(x)
-#define HIGH_WORD(x) (TUint32)((x)>>WORD_BITS)
-
-template <class T> inline void TClassSwap(T& a, T& b)
-	{
-	T temp(a);
-	a = b;
-	b = temp;
-	}
-	
-inline TUint BitsToBytes(TUint bitCount)
-	{
-	return ((bitCount+7)/(BYTE_BITS));
-	}
-
-inline TUint BytesToWords(TUint byteCount)
-	{
-	return ((byteCount+WORD_SIZE-1)/WORD_SIZE);
-	}
-
-inline TUint BitsToWords(TUint bitCount)
-	{
-	return ((bitCount+WORD_BITS-1)/(WORD_BITS));
-	}
-
-inline TUint WordsToBits(TUint wordCount)
-	{
-	return wordCount * WORD_BITS;
-	}
-
-inline TUint BytesToBits(TUint byteCount)
-	{
-	return byteCount * BYTE_BITS;
-	}
-
-inline TUint WordsToBytes(TUint wordCount)
-	{
-	return wordCount * WORD_BYTES;
-	}
-
-inline void XorWords(TUint* r, const TUint* a, TUint n)
-	{
-	assert(((TUint32)r & 3) == 0); // Catch alignment problems
-	
-	for (TUint i=0; i<n; i++)
-		r[i] ^= a[i];
-	}
-
-inline void XorBuf(TUint8* buf, const TUint8* mask, TUint count)
-	{
-	if (((TUint)buf | (TUint)mask | count) % WORD_SIZE == 0) 
-		{
-		XorWords((TUint*)buf, (const TUint*)mask, count/WORD_SIZE); 
-		}
-	else
-		{
-		for (TUint i=0; i<count; i++)
-			buf[i] ^= mask[i];
-		}
-	}
-
-// ************** rotate functions ***************
-template <class T> inline T rotlFixed(T x, TUint y)
-	{
-	assert(y < sizeof(T)*8);
-	return ( (T)((x<<y) | (x>>(sizeof(T)*8-y))) );
-	}
-
-template <class T> inline T rotrFixed(T x, TUint y)
-	{
-	assert(y < sizeof(T)*8);
-	return ((T)((x>>y) | (x<<(sizeof(T)*8-y))));
-	}
-
-inline TUint32 byteReverse(TUint32 value)
-	{
-	value = ((value & 0xFF00FF00) >> 8) | ((value & 0x00FF00FF) << 8);
-	return rotlFixed(value, 16U);
-	}
-
-template <class T>
-void byteReverse(T* out, const T* in, TUint32 byteCount)
-	{
-	TUint count = (byteCount+sizeof(T)-1)/sizeof(T);
-	for (TUint i=0; i<count; i++)
-		out[i] = byteReverse(in[i]);
-	}
-
-template <class T>
-inline void GetUserKeyLittleEndian(T *out, TUint32 outlen, const TUint8* in, TUint32 inlen)
-	{
-	const TUint U = sizeof(T);
-	assert(inlen <= outlen*U);
-	Mem::Copy(out, in, inlen);
-	Mem::FillZ((TUint8*)out+inlen, outlen*U-inlen);
-	}
-
-template <class T>
-inline void GetUserKeyBigEndian(T *out, TUint32 outlen, const TUint8* in, TUint32 inlen)
-	{
-	const TUint U = sizeof(T);
-	assert(inlen <= outlen*U);
-	Mem::Copy(out, in, inlen);
-	Mem::FillZ((TUint8*)out+inlen, outlen*U-inlen);
-	byteReverse(out, out, inlen);
-	}
-
-// The following methods have be changed to use byte rather than word accesses,
-// as if the input pointer is not be word aligned a fault occurs on arm
-// hardware.  This isn't optimal from a performance point of view, but it is
-// neccessary because the crypto interfaces (CSymmetricCipher,
-// CBlockTransformation) allow clients to pass non-aligned data.
-
-// Fetch 4 words from user's buffer into "a", "b", "c", "d" in LITTLE-endian order
-inline void GetBlockLittleEndian(const TUint8* block, TUint16 &a, TUint16 &b, TUint16 &c, TUint16 &d)
-	{
-	a = (TUint16)(block[0] | block[1] << 8);
-	b = (TUint16)(block[2] | block[3] << 8);
-	c = (TUint16)(block[4] | block[5] << 8);
-	d = (TUint16)(block[6] | block[7] << 8);
-	}
-
-// Put 4 words back into user's buffer in LITTLE-endian order
-inline void PutBlockLittleEndian(TUint8* block, TUint16 a, TUint16 b, TUint16 c, TUint16 d)
-	{
-	block[0] = (TUint8)(a & 0xff);
-	block[1] = (TUint8)(a >> 8);
-	block[2] = (TUint8)(b & 0xff);
-	block[3] = (TUint8)(b >> 8);
-	block[4] = (TUint8)(c & 0xff);
-	block[5] = (TUint8)(c >> 8);
-	block[6] = (TUint8)(d & 0xff);
-	block[7] = (TUint8)(d >> 8);
-	}
-
-// Fetch 1 word from user's buffer in BIG-endian order
-inline void GetWordBigEndian(const TUint8* block, TUint32 &a)
-	{
-	a = block[0] << 24 | block[1] << 16 | block[2] << 8 | block[3];
-	}
-
-// Put 1 word back into user's buffer in BIG-endian order
-inline void PutWordBigEndian(TUint8* block, TUint32 a)
-	{
-	block[0] = (TUint8)(a >> 24);
-	block[1] = (TUint8)((a >> 16) & 0xff);
-	block[2] = (TUint8)((a >> 8) & 0xff);
-	block[3] = (TUint8)(a & 0xff);
-	}
-
-// Fetch 2 words from user's buffer into "a", "b" in BIG-endian order
-inline void GetBlockBigEndian(const TUint8* block, TUint32 &a, TUint32& b)
-	{
-	GetWordBigEndian(block, a);
-	GetWordBigEndian(block + 4, b);
-	}
-
-// Put 2 words back into user's buffer in BIG-endian order
-inline void PutBlockBigEndian(TUint8* block, TUint32 a, TUint32 b)
-	{
-	PutWordBigEndian(block, a);
-	PutWordBigEndian(block + 4, b);
-	}
-
-// Fetch 4 words from user's buffer into "a", "b", "c", "d" in BIG-endian order
-inline void GetBlockBigEndian(const TUint8* block, TUint32& a, TUint32& b, TUint32& c, TUint32& d)
-	{
-	GetWordBigEndian(block, a);
-	GetWordBigEndian(block + 4, b);
-	GetWordBigEndian(block + 8, c);
-	GetWordBigEndian(block + 12, d);
-	}
-
-// Put 4 words back into user's buffer in BIG-endian order
-inline void PutBlockBigEndian(TUint8* block, TUint32 a, TUint32 b, TUint32 c, TUint32 d)
-	{
-	PutWordBigEndian(block, a);
-	PutWordBigEndian(block + 4, b);
-	PutWordBigEndian(block + 8, c);
-	PutWordBigEndian(block + 12, d);
-	}
-
-#endif // __INLINES_H__
--- a/crypto/weakcrypto/source/common/keyidentifierutil.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "keyidentifierutil.h"
-#include "hash.h"
-#include "asymmetrickeys.h"
-
-EXPORT_C void KeyIdentifierUtil::RSAKeyIdentifierL(
-		const CRSAPublicKey& aKey, TKeyIdentifier& aIdentifier)
-	{
-	aIdentifier.FillZ();
-
-	// Generate a hash of the appropriate data (for TKeyIdentifier)	
-	const TInteger& keyModulus = aKey.N();
-	HBufC8* modulusData = keyModulus.BufferLC();
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	TPtrC8 hash = sha1->Final(*modulusData);
-	aIdentifier.Copy(hash);
-	CleanupStack::PopAndDestroy(2);	//	sha1, modulusData
-	}
-
-EXPORT_C void KeyIdentifierUtil::DSAKeyIdentifierL(
-		const CDSAPublicKey& aKey, TKeyIdentifier& aIdentifier)
-	{
-	aIdentifier.FillZ();
-
-	// Generate a hash of the appropriate data (for TKeyIdentifier)	
-	const TInteger& Y = aKey.Y();
-	HBufC8* YData = Y.BufferLC();					
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	TPtrC8 hash = sha1->Final(*YData);
-	aIdentifier.Copy(hash);
-	CleanupStack::PopAndDestroy(2);	//	sha1, YData				
-	}
-
-EXPORT_C void KeyIdentifierUtil::DHKeyIdentifierL(
-		const RInteger& aKey, TKeyIdentifier& aIdentifier)
-	{
-	if (aKey.IsZero())
-		User::Leave(KErrArgument);
-
-	aIdentifier.FillZ();
-
-	// Generate a hash of the appropriate data (for TKeyIdentifier)	
-	HBufC8* XData = aKey.BufferLC();								
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	TPtrC8 hash = sha1->Final(*XData);
-	aIdentifier.Copy(hash);
-	CleanupStack::PopAndDestroy(2);	//	sha1, XData
-	}
--- a/crypto/weakcrypto/source/cryptoswitch/cryptography_stubs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2594 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generated from cryptographyU.def
-*
-*/
-
-
-
-
-/**
- @file
- @internalComponent 
-*/
-
-extern "C" {
-
-void common_dispatch();
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_1 ()
-	{
-	// ; protected: __thiscall CBlockChainingMode::CBlockChainingMode(void)
-	_asm mov eax, 1
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_2 ()
-	{
-	// ; protected: __thiscall CDH::CDH(class CDHPrivateKey const &)
-	_asm mov eax, 2
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_3 ()
-	{
-	// ; protected: __thiscall CDHKeyPair::CDHKeyPair(void)
-	_asm mov eax, 3
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_4 ()
-	{
-	// ; protected: __thiscall CDHParameters::CDHParameters(class RInteger &,class RInteger &)
-	_asm mov eax, 4
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_5 ()
-	{
-	// ; protected: __thiscall CDHParameters::CDHParameters(void)
-	_asm mov eax, 5
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_6 ()
-	{
-	// ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 6
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_7 ()
-	{
-	// ; protected: __thiscall CDHPrivateKey::CDHPrivateKey(void)
-	_asm mov eax, 7
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_8 ()
-	{
-	// ; protected: __thiscall CDHPublicKey::CDHPublicKey(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 8
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_9 ()
-	{
-	// ; protected: __thiscall CDHPublicKey::CDHPublicKey(void)
-	_asm mov eax, 9
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_10 ()
-	{
-	// ; protected: __thiscall CDSAKeyPair::CDSAKeyPair(void)
-	_asm mov eax, 10
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_11 ()
-	{
-	// ; protected: __thiscall CDSAParameters::CDSAParameters(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 11
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_12 ()
-	{
-	// ; protected: __thiscall CDSAParameters::CDSAParameters(void)
-	_asm mov eax, 12
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_13 ()
-	{
-	// ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(unsigned int)
-	_asm mov eax, 13
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_14 ()
-	{
-	// ; protected: __thiscall CDSAPrimeCertificate::CDSAPrimeCertificate(void)
-	_asm mov eax, 14
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_15 ()
-	{
-	// ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 15
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_16 ()
-	{
-	// ; protected: __thiscall CDSAPrivateKey::CDSAPrivateKey(void)
-	_asm mov eax, 16
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_17 ()
-	{
-	// ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 17
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_18 ()
-	{
-	// ; protected: __thiscall CDSAPublicKey::CDSAPublicKey(void)
-	_asm mov eax, 18
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_19 ()
-	{
-	// ; protected: __thiscall CDSASignature::CDSASignature(class RInteger &,class RInteger &)
-	_asm mov eax, 19
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_20 ()
-	{
-	// ; protected: __thiscall CDSASignature::CDSASignature(void)
-	_asm mov eax, 20
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_21 ()
-	{
-	// ; protected: __thiscall CPadding::CPadding(int)
-	_asm mov eax, 21
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_22 ()
-	{
-	// ; protected: __thiscall CPaddingNone::CPaddingNone(int)
-	_asm mov eax, 22
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_23 ()
-	{
-	// ; protected: __thiscall CPaddingPKCS1Encryption::CPaddingPKCS1Encryption(int)
-	_asm mov eax, 23
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_24 ()
-	{
-	// ; protected: __thiscall CPaddingPKCS1Signature::CPaddingPKCS1Signature(int)
-	_asm mov eax, 24
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_25 ()
-	{
-	// ; protected: __thiscall CPaddingSSLv3::CPaddingSSLv3(int)
-	_asm mov eax, 25
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_26 ()
-	{
-	// ; protected: __thiscall CRSAKeyPair::CRSAKeyPair(void)
-	_asm mov eax, 26
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_27 ()
-	{
-	// ; protected: __thiscall CRSAParameters::CRSAParameters(class RInteger &)
-	_asm mov eax, 27
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_28 ()
-	{
-	// ; protected: __thiscall CRSAParameters::CRSAParameters(void)
-	_asm mov eax, 28
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_29 ()
-	{
-	// ; protected: __thiscall CRSAPrivateKeyCRT::CRSAPrivateKeyCRT(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 29
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_30 ()
-	{
-	// ; protected: __thiscall CRSAPrivateKeyStandard::CRSAPrivateKeyStandard(class RInteger &,class RInteger &)
-	_asm mov eax, 30
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_31 ()
-	{
-	// ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(class RInteger &,class RInteger &)
-	_asm mov eax, 31
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_32 ()
-	{
-	// ; protected: __thiscall CRSAPublicKey::CRSAPublicKey(void)
-	_asm mov eax, 32
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_33 ()
-	{
-	// ; protected: __thiscall CRSASignature::CRSASignature(class RInteger &)
-	_asm mov eax, 33
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_34 ()
-	{
-	// ; protected: __thiscall CRijndael::CRijndael(void)
-	_asm mov eax, 34
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_35 ()
-	{
-	// ; protected: __thiscall MCryptoSystem::MCryptoSystem(void)
-	_asm mov eax, 35
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_36 ()
-	{
-	// ; protected: __thiscall CDecryptor::CDecryptor(void)
-	_asm mov eax, 36
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_37 ()
-	{
-	// ; protected: __thiscall CEncryptor::CEncryptor(void)
-	_asm mov eax, 37
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_38 ()
-	{
-	// ; protected: __thiscall MSignatureSystem::MSignatureSystem(void)
-	_asm mov eax, 38
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_39 ()
-	{
-	// ; public: __thiscall RInteger::RInteger(void)
-	_asm mov eax, 39
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_40 ()
-	{
-	// ; protected: __thiscall TInteger::TInteger(void)
-	_asm mov eax, 40
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_41 ()
-	{
-	// ; protected: virtual __thiscall CBlockChainingMode::~CBlockChainingMode(void)
-	_asm mov eax, 41
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_42 ()
-	{
-	// ; public: virtual __thiscall CBufferedTransformation::~CBufferedTransformation(void)
-	_asm mov eax, 42
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_43 ()
-	{
-	// ; public: virtual __thiscall CDHKeyPair::~CDHKeyPair(void)
-	_asm mov eax, 43
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_44 ()
-	{
-	// ; public: virtual __thiscall CDHParameters::~CDHParameters(void)
-	_asm mov eax, 44
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_45 ()
-	{
-	// ; public: virtual __thiscall CDHPrivateKey::~CDHPrivateKey(void)
-	_asm mov eax, 45
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_46 ()
-	{
-	// ; public: virtual __thiscall CDHPublicKey::~CDHPublicKey(void)
-	_asm mov eax, 46
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_47 ()
-	{
-	// ; public: virtual __thiscall CDSAKeyPair::~CDSAKeyPair(void)
-	_asm mov eax, 47
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_48 ()
-	{
-	// ; public: virtual __thiscall CDSAParameters::~CDSAParameters(void)
-	_asm mov eax, 48
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_49 ()
-	{
-	// ; public: virtual __thiscall CDSAPrimeCertificate::~CDSAPrimeCertificate(void)
-	_asm mov eax, 49
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_50 ()
-	{
-	// ; public: virtual __thiscall CDSAPrivateKey::~CDSAPrivateKey(void)
-	_asm mov eax, 50
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_51 ()
-	{
-	// ; public: virtual __thiscall CDSAPublicKey::~CDSAPublicKey(void)
-	_asm mov eax, 51
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_52 ()
-	{
-	// ; public: virtual __thiscall CDSASignature::~CDSASignature(void)
-	_asm mov eax, 52
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_53 ()
-	{
-	// ; public: virtual __thiscall CRSAKeyPair::~CRSAKeyPair(void)
-	_asm mov eax, 53
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_54 ()
-	{
-	// ; public: virtual __thiscall CRSAParameters::~CRSAParameters(void)
-	_asm mov eax, 54
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_55 ()
-	{
-	// ; public: virtual __thiscall CRSAPrivateKeyCRT::~CRSAPrivateKeyCRT(void)
-	_asm mov eax, 55
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_56 ()
-	{
-	// ; public: virtual __thiscall CRSAPrivateKeyStandard::~CRSAPrivateKeyStandard(void)
-	_asm mov eax, 56
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_57 ()
-	{
-	// ; public: virtual __thiscall CRSAPublicKey::~CRSAPublicKey(void)
-	_asm mov eax, 57
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_58 ()
-	{
-	// ; public: virtual __thiscall CRSASignature::~CRSASignature(void)
-	_asm mov eax, 58
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_59 ()
-	{
-	// ; public: virtual __thiscall CRijndael::~CRijndael(void)
-	_asm mov eax, 59
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_60 ()
-	{
-	// ; public: int __thiscall TInteger::operator!(void)const 
-	_asm mov eax, 60
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_61 ()
-	{
-	// ; public: int __thiscall CDSASignature::operator==(class CDSASignature const &)const 
-	_asm mov eax, 61
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_62 ()
-	{
-	// ; public: int __thiscall CRSASignature::operator==(class CRSASignature const &)const 
-	_asm mov eax, 62
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_63 ()
-	{
-	// ; public: __thiscall RInteger::operator class TCleanupItem(void)
-	_asm mov eax, 63
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_64 ()
-	{
-	// ; public: class HBufC8 const * __thiscall CDH::AgreeL(class CDHPublicKey const &)const 
-	_asm mov eax, 64
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_65 ()
-	{
-	// ; public: unsigned int __thiscall TInteger::BitCount(void)const 
-	_asm mov eax, 65
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_66 ()
-	{
-	// ; public: int __thiscall CPadding::BlockSize(void)const 
-	_asm mov eax, 66
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_67 ()
-	{
-	// ; public: virtual int __thiscall CStreamCipher::BlockSize(void)const 
-	_asm mov eax, 67
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_68 ()
-	{
-	// ; public: class CBlockTransformation * __thiscall CBufferedTransformation::BlockTransformer(void)const 
-	_asm mov eax, 68
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_69 ()
-	{
-	// ; public: class HBufC8 * __thiscall TInteger::BufferLC(void)const 
-	_asm mov eax, 69
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_70 ()
-	{
-	// ; public: unsigned int __thiscall TInteger::ByteCount(void)const 
-	_asm mov eax, 70
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_71 ()
-	{
-	// ; public: static void __cdecl RInteger::CallClose(void *)
-	_asm mov eax, 71
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_72 ()
-	{
-	// ; public: void __thiscall RInteger::Close(void)
-	_asm mov eax, 72
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_73 ()
-	{
-	// ; protected: void __thiscall CBlockChainingMode::ConstructL(class CBlockTransformation *,class TDesC8 const &)
-	_asm mov eax, 73
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_74 ()
-	{
-	// ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 74
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_75 ()
-	{
-	// ; protected: void __thiscall CDHKeyPair::ConstructL(class RInteger &,class RInteger &)
-	_asm mov eax, 75
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_76 ()
-	{
-	// ; public: unsigned int __thiscall CDSAPrimeCertificate::Counter(void)const 
-	_asm mov eax, 76
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_77 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyStandard::D(void)const 
-	_asm mov eax, 77
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_78 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DP(void)const 
-	_asm mov eax, 78
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_79 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::DQ(void)const 
-	_asm mov eax, 79
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_80 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPublicKey::E(void)const 
-	_asm mov eax, 80
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_81 ()
-	{
-	// ; public: class TInteger const & __thiscall CDHParameters::G(void)const 
-	_asm mov eax, 81
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_82 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSAParameters::G(void)const 
-	_asm mov eax, 82
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_83 ()
-	{
-	// ; protected: __thiscall CRSASigner::CRSASigner(void)
-	_asm mov eax, 83
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_84 ()
-	{
-	// ; public: virtual int __thiscall CStreamCipher::MaxFinalOutputLength(int)const 
-	_asm mov eax, 84
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_85 ()
-	{
-	// ; protected: __thiscall CRSAVerifier::CRSAVerifier(void)
-	_asm mov eax, 85
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_86 ()
-	{
-	// ; public virtual int CRSAVerifer::VerifyL(class TDesC8 const &,class CRSASignature const &)const
-	_asm mov eax, 86
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_87 ()
-	{
-	// ; public: virtual int __thiscall CStreamCipher::MaxOutputLength(int)const 
-	_asm mov eax, 87
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_88 ()
-	{
-	// ; public: virtual int __thiscall CPadding::MaxPaddedLength(int)const 
-	_asm mov eax, 88
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_89 ()
-	{
-	// ; public: virtual int __thiscall CPadding::MaxUnPaddedLength(int)const 
-	_asm mov eax, 89
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_90 ()
-	{
-	// ; public: static class RInteger  __cdecl TInteger::ModularExponentiateL(class TInteger const &,class TInteger const &,class TInteger const &)
-	_asm mov eax, 90
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_91 ()
-	{
-	// ; public: class TInteger const & __thiscall CDHParameters::N(void)const 
-	_asm mov eax, 91
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_92 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAParameters::N(void)const 
-	_asm mov eax, 92
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_93 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewEmptyL(unsigned int)
-	_asm mov eax, 93
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_94 ()
-	{
-	// ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewL(class TDesC8 const &)
-	_asm mov eax, 94
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_95 ()
-	{
-	// ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewL(class TDesC8 const &)
-	_asm mov eax, 95
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_96 ()
-	{
-	// ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewL(class TDesC8 const &)
-	_asm mov eax, 96
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_97 ()
-	{
-	// ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewL(class TDesC8 const &)
-	_asm mov eax, 97
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_98 ()
-	{
-	// ; public: static class CARC4 * __cdecl CARC4::NewL(class TDesC8 const &,unsigned int)
-	_asm mov eax, 98
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_99 ()
-	{
-	// ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewL(class CBlockTransformation *,class CPadding *)
-	_asm mov eax, 99
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_100 ()
-	{
-	// ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewL(class CBlockTransformation *,class CPadding *)
-	_asm mov eax, 100
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_101 ()
-	{
-	// ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewL(class TDesC8 const &,int)
-	_asm mov eax, 101
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_102 ()
-	{
-	// ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewL(class TDesC8 const &,int)
-	_asm mov eax, 102
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_103 ()
-	{
-	// ; public: static class CDH * __cdecl CDH::NewL(class CDHPrivateKey const &)
-	_asm mov eax, 103
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_104 ()
-	{
-	// ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 104
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_105 ()
-	{
-	// ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewL(class RInteger &,class RInteger &)
-	_asm mov eax, 105
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_106 ()
-	{
-	// ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 106
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_107 ()
-	{
-	// ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 107
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_108 ()
-	{
-	// ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewL(unsigned int)
-	_asm mov eax, 108
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_109 ()
-	{
-	// ; public: static class CDSAParameters * __cdecl CDSAParameters::NewL(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 109
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_110 ()
-	{
-	// ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewL(class TDesC8 const &,unsigned int)
-	_asm mov eax, 110
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_111 ()
-	{
-	// ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 111
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_112 ()
-	{
-	// ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 112
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_113 ()
-	{
-	// ; public: static class CDSASignature * __cdecl CDSASignature::NewL(class RInteger &,class RInteger &)
-	_asm mov eax, 113
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_114 ()
-	{
-	// ; public: static class CDSASigner * __cdecl CDSASigner::NewL(class CDSAPrivateKey const &)
-	_asm mov eax, 114
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_115 ()
-	{
-	// ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewL(class CDSAPublicKey const &)
-	_asm mov eax, 115
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_116 ()
-	{
-	// ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	_asm mov eax, 116
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_117 ()
-	{
-	// ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewL(class CBlockTransformation *,class TDesC8 const &)
-	_asm mov eax, 117
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_118 ()
-	{
-	// ; public: static class CNullCipher * __cdecl CNullCipher::NewL(void)
-	_asm mov eax, 118
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_119 ()
-	{
-	// ; public: static class CPaddingNone * __cdecl CPaddingNone::NewL(int)
-	_asm mov eax, 119
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_120 ()
-	{
-	// ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewL(int)
-	_asm mov eax, 120
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_121 ()
-	{
-	// ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewL(int)
-	_asm mov eax, 121
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_122 ()
-	{
-	// ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewL(int)
-	_asm mov eax, 122
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_123 ()
-	{
-	// ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewL(class TDesC8 const &,int)
-	_asm mov eax, 123
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_124 ()
-	{
-	// ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewL(class TDesC8 const &,int)
-	_asm mov eax, 124
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_125 ()
-	{
-	// ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewL(unsigned int,enum TRSAPrivateKeyType)
-	_asm mov eax, 125
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_126 ()
-	{
-	// ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewL(class CRSAPrivateKey const &)
-	_asm mov eax, 126
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_127 ()
-	{
-	// ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewL(class CRSAPublicKey const &)
-	_asm mov eax, 127
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_128 ()
-	{
-	// ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewL(class CRSAPrivateKey const &)
-	_asm mov eax, 128
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_129 ()
-	{
-	// ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewL(class CRSAPublicKey const &)
-	_asm mov eax, 129
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_130 ()
-	{
-	// ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewL(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 130
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_131 ()
-	{
-	// ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewL(class RInteger &,class RInteger &)
-	_asm mov eax, 131
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_132 ()
-	{
-	// ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewL(class RInteger &,class RInteger &)
-	_asm mov eax, 132
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_133 ()
-	{
-	// ; public: static class CRSASignature * __cdecl CRSASignature::NewL(class RInteger &)
-	_asm mov eax, 133
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_134 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewL(class TDesC8 const &)
-	_asm mov eax, 134
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_135 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewL(class TInteger const &)
-	_asm mov eax, 135
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_136 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewL(int)
-	_asm mov eax, 136
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_137 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewL(unsigned int)
-	_asm mov eax, 137
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_138 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewL(void)
-	_asm mov eax, 138
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_139 ()
-	{
-	// ; public: static class C3DESDecryptor * __cdecl C3DESDecryptor::NewLC(class TDesC8 const &)
-	_asm mov eax, 139
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_140 ()
-	{
-	// ; public: static class C3DESEncryptor * __cdecl C3DESEncryptor::NewLC(class TDesC8 const &)
-	_asm mov eax, 140
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_141 ()
-	{
-	// ; public: static class CAESDecryptor * __cdecl CAESDecryptor::NewLC(class TDesC8 const &)
-	_asm mov eax, 141
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_142 ()
-	{
-	// ; public: static class CAESEncryptor * __cdecl CAESEncryptor::NewLC(class TDesC8 const &)
-	_asm mov eax, 142
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_143 ()
-	{
-	// ; public: static class CARC4 * __cdecl CARC4::NewLC(class TDesC8 const &,unsigned int)
-	_asm mov eax, 143
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_144 ()
-	{
-	// ; public: static class CBufferedDecryptor * __cdecl CBufferedDecryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	_asm mov eax, 144
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_145 ()
-	{
-	// ; public: static class CBufferedEncryptor * __cdecl CBufferedEncryptor::NewLC(class CBlockTransformation *,class CPadding *)
-	_asm mov eax, 145
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_146 ()
-	{
-	// ; public: static class CDESDecryptor * __cdecl CDESDecryptor::NewLC(class TDesC8 const &,int)
-	_asm mov eax, 146
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_147 ()
-	{
-	// ; public: static class CDESEncryptor * __cdecl CDESEncryptor::NewLC(class TDesC8 const &,int)
-	_asm mov eax, 147
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_148 ()
-	{
-	// ; public: static class CDH * __cdecl CDH::NewLC(class CDHPrivateKey const &)
-	_asm mov eax, 148
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_149 ()
-	{
-	// ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 149
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_150 ()
-	{
-	// ; public: static class CDHKeyPair * __cdecl CDHKeyPair::NewLC(class RInteger &,class RInteger &)
-	_asm mov eax, 150
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_151 ()
-	{
-	// ; public: static class CDHPrivateKey * __cdecl CDHPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 151
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_152 ()
-	{
-	// ; public: static class CDHPublicKey * __cdecl CDHPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 152
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_153 ()
-	{
-	// ; public: static class CDSAKeyPair * __cdecl CDSAKeyPair::NewLC(unsigned int)
-	_asm mov eax, 153
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_154 ()
-	{
-	// ; public: static class CDSAPrimeCertificate * __cdecl CDSAPrimeCertificate::NewLC(class TDesC8 const &,unsigned int)
-	_asm mov eax, 154
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_155 ()
-	{
-	// ; public: static class CDSAPrivateKey * __cdecl CDSAPrivateKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 155
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_156 ()
-	{
-	// ; public: static class CDSAPublicKey * __cdecl CDSAPublicKey::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 156
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_157 ()
-	{
-	// ; public: static class CDSASignature * __cdecl CDSASignature::NewLC(class RInteger &,class RInteger &)
-	_asm mov eax, 157
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_158 ()
-	{
-	// ; public: static class CDSASigner * __cdecl CDSASigner::NewLC(class CDSAPrivateKey const &)
-	_asm mov eax, 158
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_159 ()
-	{
-	// ; public: static class CDSAVerifier * __cdecl CDSAVerifier::NewLC(class CDSAPublicKey const &)
-	_asm mov eax, 159
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_160 ()
-	{
-	// ; public: static class CModeCBCDecryptor * __cdecl CModeCBCDecryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	_asm mov eax, 160
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_161 ()
-	{
-	// ; public: static class CModeCBCEncryptor * __cdecl CModeCBCEncryptor::NewLC(class CBlockTransformation *,class TDesC8 const &)
-	_asm mov eax, 161
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_162 ()
-	{
-	// ; public: static class CNullCipher * __cdecl CNullCipher::NewLC(void)
-	_asm mov eax, 162
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_163 ()
-	{
-	// ; public: static class CPaddingNone * __cdecl CPaddingNone::NewLC(int)
-	_asm mov eax, 163
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_164 ()
-	{
-	// ; public: static class CPaddingPKCS1Encryption * __cdecl CPaddingPKCS1Encryption::NewLC(int)
-	_asm mov eax, 164
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_165 ()
-	{
-	// ; public: static class CPaddingPKCS1Signature * __cdecl CPaddingPKCS1Signature::NewLC(int)
-	_asm mov eax, 165
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_166 ()
-	{
-	// ; public: static class CPaddingSSLv3 * __cdecl CPaddingSSLv3::NewLC(int)
-	_asm mov eax, 166
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_167 ()
-	{
-	// ; public: static class CRC2Decryptor * __cdecl CRC2Decryptor::NewLC(class TDesC8 const &,int)
-	_asm mov eax, 167
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_168 ()
-	{
-	// ; public: static class CRC2Encryptor * __cdecl CRC2Encryptor::NewLC(class TDesC8 const &,int)
-	_asm mov eax, 168
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_169 ()
-	{
-	// ; public: static class CRSAKeyPair * __cdecl CRSAKeyPair::NewLC(unsigned int,enum TRSAPrivateKeyType)
-	_asm mov eax, 169
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_170 ()
-	{
-	// ; public: static class CRSAPKCS1v15Decryptor * __cdecl CRSAPKCS1v15Decryptor::NewLC(class CRSAPrivateKey const &)
-	_asm mov eax, 170
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_171 ()
-	{
-	// ; public: static class CRSAPKCS1v15Encryptor * __cdecl CRSAPKCS1v15Encryptor::NewLC(class CRSAPublicKey const &)
-	_asm mov eax, 171
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_172 ()
-	{
-	// ; public: static class CRSAPKCS1v15Signer * __cdecl CRSAPKCS1v15Signer::NewLC(class CRSAPrivateKey const &)
-	_asm mov eax, 172
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_173 ()
-	{
-	// ; public: static class CRSAPKCS1v15Verifier * __cdecl CRSAPKCS1v15Verifier::NewLC(class CRSAPublicKey const &)
-	_asm mov eax, 173
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_174 ()
-	{
-	// ; public: static class CRSAPrivateKeyCRT * __cdecl CRSAPrivateKeyCRT::NewLC(class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &,class RInteger &)
-	_asm mov eax, 174
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_175 ()
-	{
-	// ; public: static class CRSAPrivateKeyStandard * __cdecl CRSAPrivateKeyStandard::NewLC(class RInteger &,class RInteger &)
-	_asm mov eax, 175
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_176 ()
-	{
-	// ; public: static class CRSAPublicKey * __cdecl CRSAPublicKey::NewLC(class RInteger &,class RInteger &)
-	_asm mov eax, 176
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_177 ()
-	{
-	// ; public: static class CRSASignature * __cdecl CRSASignature::NewLC(class RInteger &)
-	_asm mov eax, 177
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_178 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewPrimeL(unsigned int,int)
-	_asm mov eax, 178
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_179 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewRandomL(class TInteger const &,class TInteger const &)
-	_asm mov eax, 179
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_180 ()
-	{
-	// ; public: static class RInteger  __cdecl RInteger::NewRandomL(unsigned int,int)
-	_asm mov eax, 180
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_181 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSAParameters::P(void)const 
-	_asm mov eax, 181
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_182 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::P(void)const 
-	_asm mov eax, 182
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_183 ()
-	{
-	// ; public: void __thiscall CPadding::PadL(class TDesC8 const &,class TDes8 &)
-	_asm mov eax, 183
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_184 ()
-	{
-	// ; public: class CDSAPrimeCertificate const & __thiscall CDSAKeyPair::PrimeCertificate(void)const 
-	_asm mov eax, 184
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_185 ()
-	{
-	// ; public: class CDHPrivateKey const & __thiscall CDHKeyPair::PrivateKey(void)const 
-	_asm mov eax, 185
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_186 ()
-	{
-	// ; public: class CDSAPrivateKey const & __thiscall CDSAKeyPair::PrivateKey(void)const 
-	_asm mov eax, 186
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_187 ()
-	{
-	// ; public: class CRSAPrivateKey const & __thiscall CRSAKeyPair::PrivateKey(void)const 
-	_asm mov eax, 187
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_188 ()
-	{
-	// ; public: virtual void __thiscall CStreamCipher::Process(class TDesC8 const &,class TDes8 &)
-	_asm mov eax, 188
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_189 ()
-	{
-	// ; public: virtual void __thiscall CStreamCipher::ProcessFinalL(class TDesC8 const &,class TDes8 &)
-	_asm mov eax, 189
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_190 ()
-	{
-	// ; public: class CDHPublicKey const & __thiscall CDHKeyPair::PublicKey(void)const 
-	_asm mov eax, 190
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_191 ()
-	{
-	// ; public: class CDSAPublicKey const & __thiscall CDSAKeyPair::PublicKey(void)const 
-	_asm mov eax, 191
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_192 ()
-	{
-	// ; public: class CRSAPublicKey const & __thiscall CRSAKeyPair::PublicKey(void)const 
-	_asm mov eax, 192
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_193 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSAParameters::Q(void)const 
-	_asm mov eax, 193
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_194 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::Q(void)const 
-	_asm mov eax, 194
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_195 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSAPrivateKeyCRT::QInv(void)const 
-	_asm mov eax, 195
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_196 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSASignature::R(void)const 
-	_asm mov eax, 196
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_197 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSASignature::S(void)const 
-	_asm mov eax, 197
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_198 ()
-	{
-	// ; public: class TInteger const & __thiscall CRSASignature::S(void)const 
-	_asm mov eax, 198
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_199 ()
-	{
-	// ; public: class TDesC8 const & __thiscall CDSAPrimeCertificate::Seed(void)const 
-	_asm mov eax, 199
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_200 ()
-	{
-	// ; public: void __thiscall CPadding::SetBlockSize(int)
-	_asm mov eax, 200
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_201 ()
-	{
-	// ; public: static enum TCrypto::TStrength  __cdecl TCrypto::Strength(void)
-	_asm mov eax, 201
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_202 ()
-	{
-	// ; public: static int __cdecl CDSAParameters::ValidPrimeLength(unsigned int)
-	_asm mov eax, 202
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_203 ()
-	{
-	// ; public: int __thiscall CDSAParameters::ValidatePrimesL(class CDSAPrimeCertificate const &)const 
-	_asm mov eax, 203
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_204 ()
-	{
-	// ; public: unsigned int __thiscall TInteger::WordCount(void)const 
-	_asm mov eax, 204
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_205 ()
-	{
-	// ; public: class TInteger const & __thiscall CDHPublicKey::X(void)const 
-	_asm mov eax, 205
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_206 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSAPrivateKey::X(void)const 
-	_asm mov eax, 206
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_207 ()
-	{
-	// ; public: class TInteger const & __thiscall CDSAPublicKey::Y(void)const 
-	_asm mov eax, 207
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_208 ()
-	{
-	// ; public: class TInteger const & __thiscall CDHPrivateKey::x(void)const 
-	_asm mov eax, 208
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_209 ()
-	{
-	// ; public: static int __cdecl TCrypto::IsAsymmetricWeakEnoughL(int)
-	_asm mov eax, 209
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_210 ()
-	{
-	// ; public: static int __cdecl TCrypto::IsSymmetricWeakEnoughL(int)
-	_asm mov eax, 210
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_211 ()
-	{
-	// ; CPaddingPKCS7::CPaddingPKCS7(int)
-	_asm mov eax, 211
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_212 ()
-	{
-	// ; class CPaddingPKCS7 * CPaddingPKCS7::NewL(int)
-	_asm mov eax, 212
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_213 ()
-	{
-	// ; class CPaddingPKCS7 * CPaddingPKCS7::NewLC(int)
-	_asm mov eax, 213
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_214 ()
-	{
-	// ; void KeyIdentifierUtil::DHKeyIdentifierL(class RInteger const &, class TBuf8<20> &)
-	_asm mov eax, 214
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_215 ()
-	{
-	// ; void KeyIdentifierUtil::DSAKeyIdentifierL(class CDSAPublicKey const &, class TBuf8<20> &)
-	_asm mov eax, 215
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_216 ()
-	{
-	// ; void KeyIdentifierUtil::RSAKeyIdentifierL(class CRSAPublicKey const &, class TBuf8<20> &)
-	_asm mov eax, 216
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_217 ()
-	{
-	// ; class TInteger & TInteger::operator++(void)
-	_asm mov eax, 217
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_218 ()
-	{
-	// ; class TInteger & TInteger::operator--(void)
-	_asm mov eax, 218
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_219 ()
-	{
-	// ; class RInteger TInteger::InverseModL(class TInteger const &) const
-	_asm mov eax, 219
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_220 ()
-	{
-	// ; class RInteger TInteger::TimesL(class TInteger const &) const
-	_asm mov eax, 220
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_221 ()
-	{
-	// ; public: __thiscall RInteger::RInteger(class RInteger const &)
-	_asm mov eax, 221
-	_asm jmp common_dispatch
-	}
-
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_222 ()
-	{
-	// ; public: class RInteger & __thiscall RInteger::operator=(class RInteger const &)
-	_asm mov eax, 222
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_223 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator*=(class TInteger const &)
-	_asm mov eax, 223
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_224 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator*=(int)
-	_asm mov eax, 224
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_225 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator+=(class TInteger const &)
-	_asm mov eax, 225
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_226 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator+=(int)
-	_asm mov eax, 226
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_227 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator-=(class TInteger const &)
-	_asm mov eax, 227
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_228 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator-=(int)
-	_asm mov eax, 228
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_229 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator/=(class TInteger const &)
-	_asm mov eax, 229
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_230 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator/=(int)
-	_asm mov eax, 230
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_231 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator%=(class TInteger const &)
-	_asm mov eax, 231
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_232 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator%=(int)
-	_asm mov eax, 232
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_233 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator>>=(unsigned int)
-	_asm mov eax, 233
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_234 ()
-	{
-	// ; public: class TInteger & __thiscall TInteger::operator<<=(unsigned int)
-	_asm mov eax, 234
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_235 ()
-	{
-	// ; public: int __thiscall TInteger::Bit(unsigned int)const 
-	_asm mov eax, 235
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_236 ()
-	{
-	// ; public: int __thiscall TInteger::ConvertToLongL(void)const 
-	_asm mov eax, 236
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_237 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::DividedByL(class TInteger const &)const 
-	_asm mov eax, 237
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_238 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::DividedByL(unsigned int)const 
-	_asm mov eax, 238
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_239 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::ExponentiateL(class TInteger const &)const 
-	_asm mov eax, 239
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_240 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::GCDL(class TInteger const &)const 
-	_asm mov eax, 240
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_241 ()
-	{
-	// ; public: int __thiscall TInteger::IsPrimeL(void)const 
-	_asm mov eax, 241
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_242 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::MinusL(class TInteger const &)const 
-	_asm mov eax, 242
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_243 ()
-	{
-	// ; public: static class RInteger  __cdecl TInteger::ModularMultiplyL(class TInteger const &,class TInteger const &,class TInteger const &)
-	_asm mov eax, 243
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_244 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::ModuloL(class TInteger const &)const 
-	_asm mov eax, 244
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_245 ()
-	{
-	// ; public: unsigned int __thiscall TInteger::ModuloL(unsigned int)const 
-	_asm mov eax, 245
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_246 ()
-	{
-	// ; public: void __thiscall TInteger::Negate(void)
-	_asm mov eax, 246
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_247 ()
-	{
-	// ; public: static class TInteger const & __cdecl TInteger::One(void)
-	_asm mov eax, 247
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_248 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::PlusL(class TInteger const &)const 
-	_asm mov eax, 248
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_249 ()
-	{
-	// ; public: void __thiscall TInteger::SetBit(unsigned int)
-	_asm mov eax, 249
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_250 ()
-	{
-	// ; public: int __thiscall TInteger::SignedCompare(class TInteger const &)const 
-	_asm mov eax, 250
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_251 ()
-	{
-	// ; public: int __thiscall TInteger::SignedCompare(int)const 
-	_asm mov eax, 251
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_252 ()
-	{
-	// ; public: class RInteger  __thiscall TInteger::SquaredL(void)const 
-	_asm mov eax, 252
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_253 ()
-	{
-	// ; public: static class TInteger const & __cdecl TInteger::Two(void)
-	_asm mov eax, 253
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_254 ()
-	{
-	// ; public: int __thiscall TInteger::UnsignedCompare(class TInteger const &)const 
-	_asm mov eax, 254
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_255 ()
-	{
-	// ; public: static class TInteger const & __cdecl TInteger::Zero(void)
-	_asm mov eax, 255
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_256 ()
-	{
-	// ; public: void __thiscall TInteger::CopyL(class TInteger const &,int)
-	_asm mov eax, 256
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_257 ()
-	{
-	// ; public: void __thiscall TInteger::CopyL(int,int)
-	_asm mov eax, 257
-	_asm jmp common_dispatch
-	}
-
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_258 ()
-	{
-	// ; public: void __thiscall TInteger::Set(class RInteger const &)
-	_asm mov eax, 258
-	_asm jmp common_dispatch
-	}
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_259 ()
-	{
-	// ; public: void __thiscall TInteger::Set(class RInteger const &)
-	_asm mov eax, 259
-	_asm jmp common_dispatch
-	}	
-	
-__declspec(dllexport)
-__declspec(naked)
-void call_vector_260 ()
-	{
-	// ; public: class HBufC8 * __thiscall TInteger::BufferWithNoTruncationLC(void)const 
-	_asm mov eax, 260
-	_asm jmp common_dispatch
-	}
-			
-}
-#define MAX_ORDINAL 260
\ No newline at end of file
--- a/crypto/weakcrypto/source/cryptoswitch/cryptoswitch.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <emulator.h>
-
-
-extern "C" {
-
-#include "cryptography_stubs.h"
-
-FARPROC vector[MAX_ORDINAL+1];
-
-void fill_vector(HINSTANCE aDll)
-	{
-	int i;
-	for (i=1;i<=MAX_ORDINAL;i++)
-		{
-		vector[i] = GetProcAddress(aDll, (LPCSTR)i);
-		}
-	vector[0] = (FARPROC)1;		// initialised
-	}
-
-void init_vector()
-	{
-	__LOCK_HOST;		// prevent deadlock with EKA2 scheduler
-
-	HINSTANCE instance;
-	
-	// Try for strong cryptography
-	//
-	instance = LoadLibraryA("strong_cryptography.dll"); 
-	if (instance != NULL)
-		{
-		fill_vector(instance);
-		return;
-		}
-		
-	// Try for weak cryptography
-	//
-	instance = LoadLibraryA("weak_cryptography.dll"); 
-	if (instance != NULL)
-		{
-		fill_vector(instance);
-		return;
-		}
-	
-	// die
-	//
-	OutputDebugStringA("Unable to load cryptography implementation");
-	_asm int 3;
-	}
-	
-__declspec(naked) void common_dispatch()
-	{
-	_asm cmp	dword ptr vector,0		// initialised?
-	_asm jne  	call_though_vector
-	_asm push	eax
-	_asm push	ecx
-	_asm push	edx
-	_asm call	init_vector
-	_asm pop	edx
-	_asm pop 	ecx
-	_asm pop 	eax
-call_though_vector:
-	_asm jmp	[vector+eax*4]
-	}
-
-}
--- a/crypto/weakcrypto/source/hash/hash.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <hash.h>
-#include "hashinc.h"
-#define EXPANDLOOP
-
-EXPORT_C CMessageDigest::CMessageDigest(void):CBase()
-{}
-
-EXPORT_C CMessageDigest::CMessageDigest(const CMessageDigest& /*aMD*/):CBase()
-{}
-
-EXPORT_C CMessageDigest::~CMessageDigest(void)
-{}
-
-/* Note that the shifts here are NOT guaranteed to work if s == 0, and it is
- * assumed in R() (and hence in all inline) that a is unsigned. */
-// CMD_R - rotate a left by n bits; the main bottleneck of the algorithm 
-// implementation
-/*
-C++ version compiles to:
-
-CMD_R__FUiUi:
-	add	r3, r0, #0
-	lsl	r3, r3, r1
-	mov	r2, #32
-	sub	r2, r2, r1
-	lsr	r0, r0, r2
-	add	r3, r3, r0
-	add	r0, r3, #0
-	bx	lr
-
-*/
-
-//////////////////////////////////////////////////////////////////
-//	Factory class to create CMessageDigest derived objects
-//////////////////////////////////////////////////////////////////
-EXPORT_C CMessageDigest* CMessageDigestFactory::NewDigestL(CMessageDigest::THashId aHashId)
-{
-	CMessageDigest* hash = NULL;
-	switch (aHashId)
-	{
-	case (CMessageDigest::EMD2):
-		{
-			hash = CMD2::NewL();
-			break;
-		}
-	case (CMessageDigest::EMD5):
-		{
-			hash = CMD5::NewL();
-			break;
-		}
-	case (CMessageDigest::ESHA1):
-		{
-			hash = CSHA1::NewL();
-			break;
-		}
-        case (CMessageDigest::EMD4):
-		{
-			hash = CMD4::NewL();
-			break;
-		}
-	case (CMessageDigest::ESHA224):
-		{
-			hash = CSHA2::NewL(E224Bit);
-			break;
-		}
-	case (CMessageDigest::ESHA256):
-		{
-			hash = CSHA2::NewL(E256Bit);
-			break;
-		}
-	case (CMessageDigest::ESHA384):
-		{
-			hash = CSHA2::NewL(E384Bit);
-			break;
-		}
-	case (CMessageDigest::ESHA512):
-		{
-			hash = CSHA2::NewL(E512Bit);
-			break;
-		}
-	case (CMessageDigest::HMAC):
-	default:	
-		User::Leave(KErrNotSupported);
-	}
-
-	return (hash);
-}
-
-EXPORT_C CMessageDigest* CMessageDigestFactory::NewDigestLC(CMessageDigest::THashId aHashId)
-{
-	CMessageDigest* hash = CMessageDigestFactory::NewDigestL(aHashId);
-	CleanupStack::PushL(hash);
-	return (hash);
-}
-
-EXPORT_C CMessageDigest* CMessageDigestFactory::NewHMACL(CMessageDigest::THashId aHashId, const TDesC8& aKey)
-{
-	CMessageDigest* hash = CMessageDigestFactory::NewDigestLC(aHashId);
-	CMessageDigest* hmac = CHMAC::NewL(aKey, hash);
-	CleanupStack::Pop(hash);	//	Now owned by hmac
-	return (hmac);
-}
-
-EXPORT_C CMessageDigest* CMessageDigestFactory::NewHMACLC(CMessageDigest::THashId aHashId, const TDesC8& aKey)
-{
-	CMessageDigest* hmac = CMessageDigestFactory::NewHMACL(aHashId, aKey);
-	CleanupStack::PushL(hmac);
-	return (hmac);
-}
--- a/crypto/weakcrypto/source/hash/hashinc.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
- @internalComponent 
-*/
-
-#ifndef __HASHINC_H__
-#define __HASHINC_H__
-
-#include <e32base.h>
-
-GLDEF_C inline TUint CMD_R(TUint a,TUint s)
-	{
-	return (a<<s) | (a>>(32-s));
-	}
-
-#endif	//	__HASHINC_H__
--- a/crypto/weakcrypto/source/hash/hmac.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-
-#include <e32std.h>
-#include <hash.h>
-
-#define EXPANDLOOP
-
-//
-// HMAC implementation
-//
-
-CHMAC::CHMAC()
-:CMessageDigest(){}
-
-CHMAC::CHMAC(CMessageDigest* aDigest)
-	:CMessageDigest(),
-	iDigest(aDigest),
-	iInnerPad(KMaxBlockSize),
-	iOuterPad(KMaxBlockSize)
-{}
-
-CHMAC::CHMAC(const CHMAC& aMD)
-	:CMessageDigest(aMD), 
-	iDigest(NULL),
-	iInnerPad(aMD.iInnerPad), 
-	iOuterPad(aMD.iOuterPad),
-	iBlockSize(aMD.iBlockSize)
-	{}
-
-EXPORT_C CHMAC::~CHMAC(void)
-	{
-	delete iDigest;
-	}
-
-EXPORT_C CHMAC* CHMAC::NewL(const TDesC8& aKey,CMessageDigest* aDigest)
-	{
-	CHMAC* self=new(ELeave) CHMAC(aDigest);
-	CleanupStack::PushL(self);
-	self->InitialiseL(aKey);
-	CleanupStack::Pop(self);
-	return self;
-	}
-void CHMAC::InitialiseL(const TDesC8& aKey)
-	{
-	InitBlockSizeL();
-	// initialisation
-	if (iDigest)
-		{
-		iDigest->Reset();
-		if( (TUint32)aKey.Size() > iBlockSize)
-			{
-			iInnerPad = iDigest->Final(aKey);
-			}
-		else 
-			{
-			iInnerPad = aKey;
-			}
-			
-		TUint i;
-		for (i=iInnerPad.Size();i<iBlockSize;i++)
-			iInnerPad.Append(0);
-
-		iOuterPad=iInnerPad;
-
-		const TUint8 Magic1=0x36, Magic2=0x5c;
-		for (i=0;i<iBlockSize;i++)
-		{
-			iInnerPad[i]^=Magic1;
-			iOuterPad[i]^=Magic2;
-		}
-		//start inner hash
-		iDigest->Hash(iInnerPad);
-		}
-	}
-
-void CHMAC::InitBlockSizeL()
- 	{
-	
- 	 iBlockSize = iDigest->BlockSize();
-	 if(iBlockSize > KMaxBlockSize)
-		 {
-		 User::Leave(KErrNotSupported);
-		 }
- 	 
- 	 iInnerPad.SetLength(iBlockSize);
- 	 iOuterPad.SetLength(iBlockSize);
- 	 iInnerPadCopy.SetLength(iBlockSize);
- 	 iOuterPadCopy.SetLength(iBlockSize);
-   	}
-
-EXPORT_C CMessageDigest* CHMAC::CopyL(void)
-	{
-	CHMAC* that=new(ELeave) CHMAC(*this);
-	CleanupStack::PushL(that);
-	that->iDigest=iDigest ? iDigest->CopyL() : NULL;
-	CleanupStack::Pop();
-	return that;
-	}
-EXPORT_C CMessageDigest*  CHMAC::ReplicateL(void)
-	{
-	CHMAC* that=new(ELeave) CHMAC(*this);
-	CleanupStack::PushL(that);
-	that->iDigest=iDigest ? iDigest->ReplicateL() : NULL;
-	that->Reset();
-	CleanupStack::Pop();
-	return that;
-	}
-EXPORT_C TInt CHMAC::BlockSize(void)
-	{
-	return iBlockSize;
-	}
-
-EXPORT_C TInt CHMAC::HashSize(void)
-	{
-	return iDigest ? iDigest->HashSize() : 0;
-	}
-EXPORT_C void CHMAC::Reset(void)
-	{
-	if (iDigest)
-		{
-		iDigest->Reset();
-		iDigest->Update(iInnerPad);
-		}
-	}
-
-//	JCS, There may be a more efficient method but I can't find it
-//	because using the DoFinal/DoUpdate functions directly calls
-//	Store/Restore at inappropriate times and scribbles over stored
-//	data
-//	This is the only way I've found to both generate a hash value
-//	and get this in the correctly updated state
-EXPORT_C TPtrC8 CHMAC::Hash(const TDesC8& aMessage)
-{
-	TPtrC8 ptr(KNullDesC8());
-	TPtrC8 finalPtr(KNullDesC8());
-	StoreState();
-	if (iDigest)
-	{
-		ptr.Set(iDigest->Final(aMessage));
-		iDigest->Update(iOuterPad);
-		finalPtr.Set(iDigest->Final(ptr));
-	}
-
-	RestoreState();
-	iDigest->Update(aMessage);
-
-	return (finalPtr);
-}
-
-EXPORT_C void CHMAC::Update(const TDesC8& aMessage)
-	{
-	if(iDigest)
-		{
-		iDigest->Update(aMessage);
-		}
-	}
-
-EXPORT_C TPtrC8 CHMAC::Final(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	if(iDigest)
-		{
-		ptr.Set(iDigest->Final(aMessage));
-		iDigest->Update(iOuterPad);
-		iDigest->Final(ptr);
-		Reset();
-		}
-	return (ptr);
-	}
-
-EXPORT_C TPtrC8 CHMAC::Final()
-	{
-	TPtrC8 ptr(KNullDesC8());
-	if(iDigest)
-		{
-		ptr.Set(iDigest->Final());
-		iDigest->Update(iOuterPad);
-		iDigest->Final(ptr);
-		Reset();
-		}
-	return (ptr);
-	}
-
-void CHMAC::RestoreState()
-{
-	iOuterPad.Copy(iOuterPadCopy);
-	iInnerPad.Copy(iInnerPadCopy);
-	if (iDigest)
-		iDigest->RestoreState();
-}
-
-void CHMAC::StoreState()
-{
-	iOuterPadCopy.Copy(iOuterPad);
-	iInnerPadCopy.Copy(iInnerPad);
-	if (iDigest)
-		iDigest->StoreState();
-}
-
-
--- a/crypto/weakcrypto/source/hash/md2.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,256 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* (c) 2003 Symbian Ltd.  All rights reserved.
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <hash.h>
-
-#define EXPANDLOOP
-
-//
-// 32bit endianness independent MD2 implementation
-//
-CMD2::CMD2(void)
-: CMessageDigest(),iHash(MD2_HASH)
-	{
-	}
-CMD2::CMD2(const CMD2& aMD)
-: CMessageDigest(aMD),iHash(aMD.iHash),iNum(aMD.iNum)
-	{
-	(void)Mem::Copy(iData,aMD.iData,sizeof(iData));
-	(void)Mem::Copy(iChecksum,aMD.iChecksum,sizeof(iChecksum));
-	(void)Mem::Copy(iState,aMD.iState,sizeof(iState));
-	}
-EXPORT_C CMD2* CMD2::NewL(void)
-	{
-	return (new(ELeave) CMD2);
-	}
-EXPORT_C CMessageDigest* CMD2::ReplicateL(void)
-	{
-	return NewL();
-	}
-EXPORT_C CMD2::~CMD2(void)
-	{
-	}
-
-EXPORT_C TPtrC8 CMD2::Hash(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	StoreState();	
-	DoFinal();
-	ptr.Set(iHash);
-	RestoreState();	
-	return ptr;
-	}
-
-EXPORT_C CMessageDigest* CMD2::CopyL(void)
-	{
-	return new(ELeave) CMD2(*this);
-	}
-EXPORT_C TInt CMD2::BlockSize(void)
-	{
-	return sizeof(iData);
-	}
-EXPORT_C TInt CMD2::HashSize(void)
-	{
-	return MD2_HASH;
-	}
-EXPORT_C void CMD2::Reset(void)
-	{
-	Mem::FillZ(iData,sizeof(iData));
-	Mem::FillZ(iChecksum,sizeof(iChecksum));
-	Mem::FillZ(iState,sizeof(iState));
-	iNum=0;
-	}
-
-EXPORT_C void CMD2::Update(const TDesC8& aMessage)
-	{
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	}
-
-EXPORT_C TPtrC8 CMD2::Final(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-EXPORT_C TPtrC8 CMD2::Final()
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-void CMD2::DoUpdate(const TUint8* aData,TUint aLength)
-	{
-	TBool carryOn=ETrue;
-	if (iNum)
-		{
-		if (iNum+aLength>=(TUint)MD2_BLOCK)
-			{
-			const TUint temp=MD2_BLOCK-iNum;
-			(void)Mem::Copy(iData+iNum,aData,temp);
-			Block(iData);
-			aData+=temp;
-			aLength-=temp;
-			iNum=0;
-			}
-		else
-			{
-			(void)Mem::Copy(iData+iNum,aData,aLength);
-			iNum+=aLength;
-			carryOn=EFalse;
-			}
-		}
-	// processing by block of MD2_BLOCK
-	if (carryOn)
-		{
-		while (aLength>=(TUint)MD2_BLOCK)
-			{
-			Block(aData);
-			aData+=MD2_BLOCK;
-			aLength-=MD2_BLOCK;
-			}
-		(void)Mem::Copy(iData,aData,aLength);
-		iNum=aLength;
-		}
-	}
-static inline TUint CMD2_S(TUint& elt,TUint8 val)
-	{
-	return elt^=val;
-	}
-// 
-// data must be MD2_BLOCK bytes long
-//
-void CMD2::Block(const TUint8* data)
-	{
-	static const TUint8 S[256]={
-		0x29, 0x2E, 0x43, 0xC9, 0xA2, 0xD8, 0x7C, 0x01,
-		0x3D, 0x36, 0x54, 0xA1, 0xEC, 0xF0, 0x06, 0x13,
-		0x62, 0xA7, 0x05, 0xF3, 0xC0, 0xC7, 0x73, 0x8C,
-		0x98, 0x93, 0x2B, 0xD9, 0xBC, 0x4C, 0x82, 0xCA,
-		0x1E, 0x9B, 0x57, 0x3C, 0xFD, 0xD4, 0xE0, 0x16,
-		0x67, 0x42, 0x6F, 0x18, 0x8A, 0x17, 0xE5, 0x12,
-		0xBE, 0x4E, 0xC4, 0xD6, 0xDA, 0x9E, 0xDE, 0x49,
-		0xA0, 0xFB, 0xF5, 0x8E, 0xBB, 0x2F, 0xEE, 0x7A,
-		0xA9, 0x68, 0x79, 0x91, 0x15, 0xB2, 0x07, 0x3F,
-		0x94, 0xC2, 0x10, 0x89, 0x0B, 0x22, 0x5F, 0x21,
-		0x80, 0x7F, 0x5D, 0x9A, 0x5A, 0x90, 0x32, 0x27,
-		0x35, 0x3E, 0xCC, 0xE7, 0xBF, 0xF7, 0x97, 0x03,
-		0xFF, 0x19, 0x30, 0xB3, 0x48, 0xA5, 0xB5, 0xD1,
-		0xD7, 0x5E, 0x92, 0x2A, 0xAC, 0x56, 0xAA, 0xC6,
-		0x4F, 0xB8, 0x38, 0xD2, 0x96, 0xA4, 0x7D, 0xB6,
-		0x76, 0xFC, 0x6B, 0xE2, 0x9C, 0x74, 0x04, 0xF1,
-		0x45, 0x9D, 0x70, 0x59, 0x64, 0x71, 0x87, 0x20,
-		0x86, 0x5B, 0xCF, 0x65, 0xE6, 0x2D, 0xA8, 0x02,
-		0x1B, 0x60, 0x25, 0xAD, 0xAE, 0xB0, 0xB9, 0xF6,
-		0x1C, 0x46, 0x61, 0x69, 0x34, 0x40, 0x7E, 0x0F,
-		0x55, 0x47, 0xA3, 0x23, 0xDD, 0x51, 0xAF, 0x3A,
-		0xC3, 0x5C, 0xF9, 0xCE, 0xBA, 0xC5, 0xEA, 0x26,
-		0x2C, 0x53, 0x0D, 0x6E, 0x85, 0x28, 0x84, 0x09,
-		0xD3, 0xDF, 0xCD, 0xF4, 0x41, 0x81, 0x4D, 0x52,
-		0x6A, 0xDC, 0x37, 0xC8, 0x6C, 0xC1, 0xAB, 0xFA,
-		0x24, 0xE1, 0x7B, 0x08, 0x0C, 0xBD, 0xB1, 0x4A,
-		0x78, 0x88, 0x95, 0x8B, 0xE3, 0x63, 0xE8, 0x6D,
-		0xE9, 0xCB, 0xD5, 0xFE, 0x3B, 0x00, 0x1D, 0x39,
-		0xF2, 0xEF, 0xB7, 0x0E, 0x66, 0x58, 0xD0, 0xE4,
-		0xA6, 0x77, 0x72, 0xF8, 0xEB, 0x75, 0x4B, 0x0A,
-		0x31, 0x44, 0x50, 0xB4, 0x8F, 0xED, 0x1F, 0x1A,
-		0xDB, 0x99, 0x8D, 0x33, 0x9F, 0x11, 0x83, 0x14,
-		};
-	TUint state[MD2_BLOCK*3];
-	TUint j=iChecksum[MD2_BLOCK-1];
-	TUint i=0,temp=0;
-	while (i<(TUint)MD2_BLOCK)
-		{
-		const TUint tempState=iState[i];
-		temp=data[i];
-		state[i]=tempState;
-		state[i+16]=temp;
-		state[i+32]=temp^tempState;
-		j=CMD2_S(iChecksum[i++],S[temp^j]);
-		}
-	temp=0;
-	TUint* pstate=state;
-	const TUint *pend=state+(MD2_BLOCK*3);
-	for (i=0; i<18; i++)
-		{
-		while (pstate<pend)
-			{
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			temp=CMD2_S(*pstate,S[temp]);pstate++;
-			}
-		pstate=state;
-		temp=(temp+i)&0xff;
-		}
-	(void)Mem::Copy(iState,state,MD2_BLOCK*sizeof(TUint));
-	}
-void CMD2::DoFinal()
-	{
-	const TUint pad=MD2_BLOCK-iNum;
-	if (pad>0)
-		Mem::Fill(iData+iNum,(TUint8)pad,pad);
-	Block(iData);
-
-	TUint8* pData=iData;
-	const TUint8* pEnd=iData+MD2_BLOCK;
-	const TUint* pChecksum=iChecksum;
-	while (pData<pEnd)
-		{
-		*pData=(TUint8)*pChecksum;//checksum is always less than 255 
-		pData++;
-		pChecksum++;
-		}
-	Block(iData);
-
-	TUint* pState=iState;
-	for (TUint i=0;i<(TUint)MD2_BLOCK;i++,pState++) //safe: iState and iHash have got same size
-		iHash[i]=(TUint8)(*pState&0xff);
-	}
-
-void CMD2::RestoreState()
-{
-	Mem::Copy(&iData[0], &iDataTemp[0], MD2_BLOCK);
-	Mem::Copy(&iChecksum[0], &iChecksumTemp[0], MD2_BLOCK*sizeof(TUint));
-	Mem::Copy(&iState[0], &iStateTemp[0], MD2_BLOCK*sizeof(TUint));
-}
-
-void CMD2::StoreState()
-{
-	Mem::Copy(&iDataTemp[0], &iData[0], MD2_BLOCK);
-	Mem::Copy(&iChecksumTemp[0], &iChecksum[0], MD2_BLOCK*sizeof(TUint));
-	Mem::Copy(&iStateTemp[0], &iState[0], MD2_BLOCK*sizeof(TUint));
-}
-
--- a/crypto/weakcrypto/source/hash/md4.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,495 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <hash.h>
-#include "hashinc.h"
-#define EXPANDLOOP
-
-
-CMD4::CMD4(void)
-: CMessageDigest(),iHash(MD4_HASH)
-	{
-	}
-
-CMD4::CMD4(const CMD4& aMD)
-: CMessageDigest(aMD),
-  iHash(aMD.iHash),iA(aMD.iA),iB(aMD.iB),iC(aMD.iC),iD(aMD.iD),
-  iNl(aMD.iNl),iNh(aMD.iNh)
-	{
-	(void)Mem::Copy(iData,aMD.iData,sizeof(iData));
-	}
-	
-EXPORT_C CMD4* CMD4::NewL(void)
-	{
-	CMD4* self = new (ELeave) CMD4();
-	self->Reset();
-	return (self);
-	}
-	
-EXPORT_C CMessageDigest* CMD4::ReplicateL(void)
-	{
-	 return CMD4::NewL();
-	}
-	
-EXPORT_C CMD4::~CMD4(void)
-	{
-	}
-
-EXPORT_C TPtrC8 CMD4::Hash(const TDesC8& aMessage)
-	{
-	//Adds the aMessage to the internal representation of data to be hashed i.e iData
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	StoreState();
-	//Does the padding and does the block operation on the final 512 bit block.
-	DoFinal();
-	RestoreState();
-	return iHash;
-	}
-
-EXPORT_C CMessageDigest* CMD4::CopyL(void)
-	{
-	return new(ELeave) CMD4(*this);
-	}
-	
-EXPORT_C TInt CMD4::BlockSize(void)
-	{
-	return sizeof(iData);
-	}
-	
-EXPORT_C TInt CMD4::HashSize(void)
-	{
-	return MD4_HASH;
-	}
-	
-EXPORT_C void CMD4::Reset(void)
-	{
-	iA=0x67452301;
-	iB=0xefcdab89;
-	iC=0x98badcfe;
-	iD=0x10325476;
-	iNh=0;
-	iNl=0;
-	}
-
-EXPORT_C void CMD4::Update(const TDesC8& aMessage)
-	{
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	}
-	
-EXPORT_C TPtrC8 CMD4::Final(const TDesC8& aMessage)
-	{
-	//Adds the aMessage to the internal representation of data to be hashed i.e iData
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	//Does the padding and does the block operation on the final 512 bit block.
-	DoFinal();
-	//Resets the values of iA, iB, iC and iD, iNh, iNl
-	Reset();
-	return iHash;
-	}
-
-EXPORT_C TPtrC8 CMD4::Final()
-	{
-	//Does the padding and does the block operation on the final 512 bit block.
-	DoFinal();
-	//Resets the values of iA, iB, iC and iD, iNh, iNl
-	Reset();
-	return iHash;
-	}
-
-void CMD4::DoUpdate(const TUint8* aData,TUint aLength)
-	{
-	const TUint8* pend=aData+aLength;	
-	for (const TUint8* paData=aData;paData<pend;paData++) 
-		{
-		const TUint8 byte=*paData;
-		switch (iNl&3) 
-			{
-			case 0:
-				iData[iNl>>2]=byte;
-				break;
-			case 1:
-				iData[iNl>>2]|=byte<<8;
-				break;
-			case 2:
-				iData[iNl>>2]|=byte<<16;
-				break;
-			case 3:
-				iData[iNl>>2]|=byte<<24;
-				break;
-			default:
-				break;
-			};
-		if(++iNl==64) 
-			{
-			Block();
-			iNh+=64;
-			iNl=0;
-			}
-		}
-	}
-
-static inline TUint CMD4_F(TUint x,TUint y,TUint z)
-	{
-	return ((x)&(y)) | ((~x)&(z));
-	}
-	
-static inline TUint CMD4_G(TUint x,TUint y,TUint z)
-	{
-	return ((x)&(y)) | ((x)&(z)) | ((y)&(z));
-	}
-	
-static inline TUint CMD4_H(TUint x,TUint y,TUint z)
-	{
-	return (x)^(y)^(z);
-	}
-
-	
-#ifdef NOREFS
-static inline TUint CMD4_FF(TUint a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_F(b,c,d) + x; 
-	a=CMD_R(a,s);
-	return a;
-	}
-	
-static inline TUint CMD4_GG(TUint a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_G(b,c,d) + x + (TUint32)0x5a827999; 
-	a=CMD_R(a,s);
-	return a;
-	}
-	
-static inline TUint CMD4_HH(TUint a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_H(b,c,d) + x + (TUint32)0x6ed9eba1; 
-	a=CMD_R(a,s);
-	return a;
-	}
-	
-void CMD4::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 1],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[ 2],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[ 3],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 4],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 5],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[ 6],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[ 7],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 8],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 9],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[10],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[11],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[12],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[13],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[14],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[15],19);
-
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 4],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[ 8],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[12],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 1],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 5],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[ 9],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[13],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 2],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 6],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[10],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[14],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 3],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 7],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[11],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[15],13);
-
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[ 8],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 4],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[12],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 2],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[10],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 6],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[14],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 1],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[ 9],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 5],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[13],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 3],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[11],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 7],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[15],15);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-
-#else
-#ifdef MACRO
-#define CMD4_FF(a, b, c, d, x, s) (CMD_R(a += CMD4_F(b,c,d) + x, s))
-#define CMD4_GG(a, b, c, d, x, s) (CMD_R(a += CMD4_G(b,c,d) + x + (TUint32)0x5a827999, s))
-#define CMD4_HH(a, b, c, d, x, s) (CMD_R(a += CMD4_H(b,c,d) + x + (TUint32)0x6ed9eba1, s))
-void CMD4::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-	
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 1],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[ 2],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[ 3],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 4],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 5],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[ 6],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[ 7],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[ 8],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[ 9],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[10],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[11],19);
-	tempA = CMD4_FF(tempA,tempB,tempC,tempD,iData[12],3);
-	tempD = CMD4_FF(tempD,tempA,tempB,tempC,iData[13],7);
-	tempC = CMD4_FF(tempC,tempD,tempA,tempB,iData[14],11);
-	tempB = CMD4_FF(tempB,tempC,tempD,tempA,iData[15],19);
-
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 4],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[ 8],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[12],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 1],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 5],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[ 9],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[13],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 2],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 6],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[10],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[14],13);
-	tempA = CMD4_GG(tempA,tempB,tempC,tempD,iData[ 3],3);
-	tempD = CMD4_GG(tempD,tempA,tempB,tempC,iData[ 7],5);
-	tempC = CMD4_GG(tempC,tempD,tempA,tempB,iData[11],9);
-	tempB = CMD4_GG(tempB,tempC,tempD,tempA,iData[15],13);
-
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 0],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[ 8],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 4],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[12],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 2],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[10],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 6],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[14],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 1],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[ 9],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 5],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[13],15);
-	tempA = CMD4_HH(tempA,tempB,tempC,tempD,iData[ 3],3);
-	tempD = CMD4_HH(tempD,tempA,tempB,tempC,iData[11],9);
-	tempC = CMD4_HH(tempC,tempD,tempA,tempB,iData[ 7],11);
-	tempB = CMD4_HH(tempB,tempC,tempD,tempA,iData[15],15);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-	
-#else
-static inline void CMD4_FF(TUint& a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_F(b,c,d) + x; 
-	a=CMD_R(a,s);
-	}
-	
-static inline void CMD4_GG(TUint& a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_G(b,c,d) + x + (TUint32)0x5a827999; 
-	a=CMD_R(a,s);
-	}
-	
-static inline void CMD4_HH(TUint& a,const TUint b,const TUint c,const TUint d,const TUint x,const TUint s)
-	{
-	a+=CMD4_H(b,c,d) + x + (TUint32)0x6ed9eba1; 
-	a=CMD_R(a,s);
-	}
-
-void CMD4::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-
-	CMD4_FF(tempA,tempB,tempC,tempD,iData[ 0],3);
-	CMD4_FF(tempD,tempA,tempB,tempC,iData[ 1],7);
-	CMD4_FF(tempC,tempD,tempA,tempB,iData[ 2],11);
-	CMD4_FF(tempB,tempC,tempD,tempA,iData[ 3],19);
-	CMD4_FF(tempA,tempB,tempC,tempD,iData[ 4],3);
-	CMD4_FF(tempD,tempA,tempB,tempC,iData[ 5],7);
-	CMD4_FF(tempC,tempD,tempA,tempB,iData[ 6],11);
-	CMD4_FF(tempB,tempC,tempD,tempA,iData[ 7],19);
-	CMD4_FF(tempA,tempB,tempC,tempD,iData[ 8],3);
-	CMD4_FF(tempD,tempA,tempB,tempC,iData[ 9],7);
-	CMD4_FF(tempC,tempD,tempA,tempB,iData[10],11);
-	CMD4_FF(tempB,tempC,tempD,tempA,iData[11],19);
-	CMD4_FF(tempA,tempB,tempC,tempD,iData[12],3);
-	CMD4_FF(tempD,tempA,tempB,tempC,iData[13],7);
-	CMD4_FF(tempC,tempD,tempA,tempB,iData[14],11);
-	CMD4_FF(tempB,tempC,tempD,tempA,iData[15],19);
-
-	CMD4_GG(tempA,tempB,tempC,tempD,iData[ 0],3);
-	CMD4_GG(tempD,tempA,tempB,tempC,iData[ 4],5);
-	CMD4_GG(tempC,tempD,tempA,tempB,iData[ 8],9);
-	CMD4_GG(tempB,tempC,tempD,tempA,iData[12],13);
-	CMD4_GG(tempA,tempB,tempC,tempD,iData[ 1],3);
-	CMD4_GG(tempD,tempA,tempB,tempC,iData[ 5],5);
-	CMD4_GG(tempC,tempD,tempA,tempB,iData[ 9],9);
-	CMD4_GG(tempB,tempC,tempD,tempA,iData[13],13);
-	CMD4_GG(tempA,tempB,tempC,tempD,iData[ 2],3);
-	CMD4_GG(tempD,tempA,tempB,tempC,iData[ 6],5);
-	CMD4_GG(tempC,tempD,tempA,tempB,iData[10],9);
-	CMD4_GG(tempB,tempC,tempD,tempA,iData[14],13);
-	CMD4_GG(tempA,tempB,tempC,tempD,iData[ 3],3);
-	CMD4_GG(tempD,tempA,tempB,tempC,iData[ 7],5);
-	CMD4_GG(tempC,tempD,tempA,tempB,iData[11],9);
-	CMD4_GG(tempB,tempC,tempD,tempA,iData[15],13);
-
-	CMD4_HH(tempA,tempB,tempC,tempD,iData[ 0],3);
-	CMD4_HH(tempD,tempA,tempB,tempC,iData[ 8],9);
-	CMD4_HH(tempC,tempD,tempA,tempB,iData[ 4],11);
-	CMD4_HH(tempB,tempC,tempD,tempA,iData[12],15);
-	CMD4_HH(tempA,tempB,tempC,tempD,iData[ 2],3);
-	CMD4_HH(tempD,tempA,tempB,tempC,iData[10],9);
-	CMD4_HH(tempC,tempD,tempA,tempB,iData[ 6],11);
-	CMD4_HH(tempB,tempC,tempD,tempA,iData[14],15);
-	CMD4_HH(tempA,tempB,tempC,tempD,iData[ 1],3);
-	CMD4_HH(tempD,tempA,tempB,tempC,iData[ 9],9);
-	CMD4_HH(tempC,tempD,tempA,tempB,iData[ 5],11);
-	CMD4_HH(tempB,tempC,tempD,tempA,iData[13],15);
-	CMD4_HH(tempA,tempB,tempC,tempD,iData[ 3],3);
-	CMD4_HH(tempD,tempA,tempB,tempC,iData[11],9);
-	CMD4_HH(tempC,tempD,tempA,tempB,iData[ 7],11);
-	CMD4_HH(tempB,tempC,tempD,tempA,iData[15],15);
-	
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-#endif
-#endif
-
-void CMD4::DoFinal(void)
-	{
-	iNh += iNl;
-	const TUint ul128=128;
-	switch (iNl&3) 
-		{
-		case 0:
-			iData[iNl>>2] = ul128;
-			break;
-		case 1:
-			iData[iNl>>2] += ul128<<8;
-			break;
-		case 2:
-			iData[iNl>>2] += ul128<<16;
-			break;
-		case 3:
-			iData[iNl>>2] += ul128<<24;
-			break;
-		default:
-			break;
-		};
-	if (iNl>=56) 
-		{
-		if (iNl<60)
-			iData[15]=0;		
-		Block();
-		Mem::FillZ(iData,14*sizeof(TUint));
-		} 
-	else
-		{
-		const TUint offset=(iNl+4)>>2;
-		Mem::FillZ(iData+offset,(14-offset)*sizeof(TUint));
-		}
-	
-	iData[14]=iNh<<3;//number in bits
-	// this will fail if the total input length is longer than 2^32 in bits
-	//(2^31 in bytes) which is roughly half a gig.
-	iData[15]=0;
-
-	Block();
-	//
-	// Generate hash value into iHash
-	//
-	TUint tmp=iA;
-	iHash[0]=(TUint8)(tmp & 255);
-	iHash[1]=(TUint8)((tmp >>= 8) & 255);
-	iHash[2]=(TUint8)((tmp >>= 8) & 255);
-	iHash[3]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iB;
-	iHash[4]=(TUint8)(tmp & 255);
-	iHash[5]=(TUint8)((tmp >>= 8) & 255);
-	iHash[6]=(TUint8)((tmp >>= 8) & 255);
-	iHash[7]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iC;
-	iHash[8]=(TUint8)(tmp & 255);
-	iHash[9]=(TUint8)((tmp >>= 8) & 255);
-	iHash[10]=(TUint8)((tmp >>= 8) & 255);
-	iHash[11]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iD;
-	iHash[12]=(TUint8)(tmp & 255);
-	iHash[13]=(TUint8)((tmp >>= 8) & 255);
-	iHash[14]=(TUint8)((tmp >>= 8) & 255);
-	iHash[15]=(TUint8)((tmp >>= 8) & 255);
-	}
-
-void CMD4::RestoreState()
-{
-	iA = iACopy;
-	iB = iBCopy;
-	iC = iCCopy;
-	iD = iDCopy;
-	iNl = iNlCopy;
-	iNh = iNhCopy;	
-	Mem::Copy(&iData[0], &iDataCopy[0], MD4_LBLOCK*sizeof(TUint)); 
-}
-
-void CMD4::StoreState()
-{
-	iACopy = iA;
-	iBCopy = iB;
-	iCCopy = iC;
-	iDCopy = iD;
-	iNlCopy = iNl;
-	iNhCopy = iNh;	
-	Mem::Copy(&iDataCopy[0], &iData[0], MD4_LBLOCK*sizeof(TUint));
-}
--- a/crypto/weakcrypto/source/hash/md5.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,546 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* (c) 2003 Symbian Ltd.  All rights reserved.
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <hash.h>
-#include "hashinc.h"
-#define EXPANDLOOP
-
-//
-// 32bit endianness independent MD5 implementation
-//
-CMD5::CMD5(void)
-: CMessageDigest(),iHash(MD5_HASH)
-	{
-	}
-CMD5::CMD5(const CMD5& aMD)
-: CMessageDigest(aMD),
-  iHash(aMD.iHash),iA(aMD.iA),iB(aMD.iB),iC(aMD.iC),iD(aMD.iD),
-  iNl(aMD.iNl),iNh(aMD.iNh)
-	{
-	(void)Mem::Copy(iData,aMD.iData,sizeof(iData));
-	}
-EXPORT_C CMD5* CMD5::NewL(void)
-	{
-	CMD5* self = new (ELeave) CMD5();
-	self->Reset();
-	return (self);
-	}
-EXPORT_C CMessageDigest* CMD5::ReplicateL(void)
-	{
-	CMD5* newMD5 = CMD5::NewL();
-	return (newMD5);
-	}
-EXPORT_C CMD5::~CMD5(void)
-	{
-	}
-
-EXPORT_C TPtrC8 CMD5::Hash(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	StoreState();
-	DoFinal();
-	ptr.Set(iHash);
-	RestoreState();
-	return ptr;
-	}
-
-EXPORT_C CMessageDigest* CMD5::CopyL(void)
-	{
-	return new(ELeave) CMD5(*this);
-	}
-EXPORT_C TInt CMD5::BlockSize(void)
-	{
-	return sizeof(iData);
-	}
-EXPORT_C TInt CMD5::HashSize(void)
-	{
-	return MD5_HASH;
-	}
-EXPORT_C void CMD5::Reset(void)
-	{
-	iA=0x67452301;
-	iB=0xefcdab89;
-	iC=0x98badcfe;
-	iD=0x10325476;
-	iNh=0;
-	iNl=0;
-	}
-
-EXPORT_C void CMD5::Update(const TDesC8& aMessage)
-	{
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	}
-EXPORT_C TPtrC8 CMD5::Final(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-EXPORT_C TPtrC8 CMD5::Final()
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-void CMD5::DoUpdate(const TUint8* aData,TUint aLength)
-	{
-	const TUint8* pend=aData+aLength;	
-	for (const TUint8* paData=aData;paData<pend;paData++) 
-		{
-		const TUint8 byte=*paData;
-		switch (iNl&3) 
-			{
-			case 0:
-				iData[iNl>>2]=byte;
-				break;
-			case 1:
-				iData[iNl>>2]|=byte<<8;
-				break;
-			case 2:
-				iData[iNl>>2]|=byte<<16;
-				break;
-			case 3:
-				iData[iNl>>2]|=byte<<24;
-				break;
-			default:
-				break;
-			};
-		if(++iNl==64) 
-			{
-			Block();
-			iNh+=64;
-			iNl=0;
-			}
-		}
-	}
-
-static inline TUint CMD5_F(TUint x,TUint y,TUint z)
-	{
-	return (x&y) | (~x&z);
-	}
-static inline TUint CMD5_G(TUint x,TUint y,TUint z)
-	{
-	return (x&z) | (y&~z);
-	}
-static inline TUint CMD5_H(TUint x,TUint y,TUint z)
-	{
-	return x^y^z;
-	}
-static inline TUint CMD5_I(TUint x,TUint y,TUint z)
-	{
-	return y^(x|~z);
-	}
-
-	
-#ifdef NOREFS
-static inline TUint CMD5_FF(TUint a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_F(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	return a;
-	}
-static inline TUint CMD5_GG(TUint a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_G(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	return a;
-	}
-static inline TUint CMD5_HH(TUint a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_H(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	return a;
-	}
-static inline TUint CMD5_II(TUint a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_I(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	return a;
-	}
-void CMD5::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 0], 7, 0xd76aa478);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 1],12, 0xe8c7b756);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[ 2],17, 0x242070db);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[ 3],22, 0xc1bdceee);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 4], 7, 0xf57c0faf);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 5],12, 0x4787c62a);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[ 6],17, 0xa8304613);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[ 7],22, 0xfd469501);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 8], 7, 0x698098d8);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 9],12, 0x8b44f7af);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[10],17, 0xffff5bb1);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[11],22, 0x895cd7be);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[12], 7, 0x6b901122);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[13],12, 0xfd987193);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[14],17, 0xa679438e);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[15],22, 0x49b40821);
-
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 1], 5, 0xf61e2562);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[ 6], 9, 0xc040b340);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[11],14, 0x265e5a51);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 0],20, 0xe9b6c7aa);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 5], 5, 0xd62f105d);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[10], 9, 0x02441453);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[15],14, 0xd8a1e681);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 4],20, 0xe7d3fbc8);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 9], 5, 0x21e1cde6);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[14], 9, 0xc33707d6);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[ 3],14, 0xf4d50d87);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 8],20, 0x455a14ed);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[13], 5, 0xa9e3e905);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[ 2], 9, 0xfcefa3f8);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[ 7],14, 0x676f02d9);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[12],20, 0x8d2a4c8a);
-
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 5], 4, 0xfffa3942);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 8],11, 0x8771f681);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[11],16, 0x6d9d6122);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[14],23, 0xfde5380c);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 1], 4, 0xa4beea44);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 4],11, 0x4bdecfa9);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[ 7],16, 0xf6bb4b60);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[10],23, 0xbebfbc70);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[13], 4, 0x289b7ec6);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 0],11, 0xeaa127fa);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[ 3],16, 0xd4ef3085);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[ 6],23, 0x04881d05);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 9], 4, 0xd9d4d039);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[12],11, 0xe6db99e5);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[15],16, 0x1fa27cf8);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[ 2],23, 0xc4ac5665);
-
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 0], 6, 0xf4292244);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[ 7],10, 0x432aff97);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[14],15, 0xab9423a7);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 5],21, 0xfc93a039);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[12], 6, 0x655b59c3);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[ 3],10, 0x8f0ccc92);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[10],15, 0xffeff47d);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 1],21, 0x85845dd1);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 8], 6, 0x6fa87e4f);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[15],10, 0xfe2ce6e0);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[ 6],15, 0xa3014314);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[13],21, 0x4e0811a1);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 4], 6, 0xf7537e82);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[11],10, 0xbd3af235);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[ 2],15, 0x2ad7d2bb);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 9],21, 0xeb86d391);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-#else
-#ifdef MACRO
-#define CMD5_FF(a, b, c, d, m, s, t) (b + CMD_R(a += CMD5_F(b,c,d) + m + t, s))
-#define CMD5_GG(a, b, c, d, m, s, t) (b + CMD_R(a += CMD5_G(b,c,d) + m + t, s))
-#define CMD5_HH(a, b, c, d, m, s, t) (b + CMD_R(a += CMD5_H(b,c,d) + m + t, s))
-#define CMD5_II(a, b, c, d, m, s, t) (b + CMD_R(a += CMD5_I(b,c,d) + m + t, s))
-void CMD5::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 0], 7, 0xd76aa478);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 1],12, 0xe8c7b756);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[ 2],17, 0x242070db);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[ 3],22, 0xc1bdceee);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 4], 7, 0xf57c0faf);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 5],12, 0x4787c62a);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[ 6],17, 0xa8304613);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[ 7],22, 0xfd469501);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[ 8], 7, 0x698098d8);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[ 9],12, 0x8b44f7af);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[10],17, 0xffff5bb1);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[11],22, 0x895cd7be);
-	tempA = CMD5_FF(tempA,tempB,tempC,tempD,iData[12], 7, 0x6b901122);
-	tempD = CMD5_FF(tempD,tempA,tempB,tempC,iData[13],12, 0xfd987193);
-	tempC = CMD5_FF(tempC,tempD,tempA,tempB,iData[14],17, 0xa679438e);
-	tempB = CMD5_FF(tempB,tempC,tempD,tempA,iData[15],22, 0x49b40821);
-
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 1], 5, 0xf61e2562);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[ 6], 9, 0xc040b340);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[11],14, 0x265e5a51);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 0],20, 0xe9b6c7aa);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 5], 5, 0xd62f105d);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[10], 9, 0x02441453);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[15],14, 0xd8a1e681);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 4],20, 0xe7d3fbc8);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[ 9], 5, 0x21e1cde6);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[14], 9, 0xc33707d6);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[ 3],14, 0xf4d50d87);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[ 8],20, 0x455a14ed);
-	tempA = CMD5_GG(tempA,tempB,tempC,tempD,iData[13], 5, 0xa9e3e905);
-	tempD = CMD5_GG(tempD,tempA,tempB,tempC,iData[ 2], 9, 0xfcefa3f8);
-	tempC = CMD5_GG(tempC,tempD,tempA,tempB,iData[ 7],14, 0x676f02d9);
-	tempB = CMD5_GG(tempB,tempC,tempD,tempA,iData[12],20, 0x8d2a4c8a);
-
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 5], 4, 0xfffa3942);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 8],11, 0x8771f681);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[11],16, 0x6d9d6122);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[14],23, 0xfde5380c);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 1], 4, 0xa4beea44);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 4],11, 0x4bdecfa9);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[ 7],16, 0xf6bb4b60);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[10],23, 0xbebfbc70);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[13], 4, 0x289b7ec6);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[ 0],11, 0xeaa127fa);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[ 3],16, 0xd4ef3085);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[ 6],23, 0x04881d05);
-	tempA = CMD5_HH(tempA,tempB,tempC,tempD,iData[ 9], 4, 0xd9d4d039);
-	tempD = CMD5_HH(tempD,tempA,tempB,tempC,iData[12],11, 0xe6db99e5);
-	tempC = CMD5_HH(tempC,tempD,tempA,tempB,iData[15],16, 0x1fa27cf8);
-	tempB = CMD5_HH(tempB,tempC,tempD,tempA,iData[ 2],23, 0xc4ac5665);
-
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 0], 6, 0xf4292244);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[ 7],10, 0x432aff97);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[14],15, 0xab9423a7);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 5],21, 0xfc93a039);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[12], 6, 0x655b59c3);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[ 3],10, 0x8f0ccc92);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[10],15, 0xffeff47d);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 1],21, 0x85845dd1);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 8], 6, 0x6fa87e4f);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[15],10, 0xfe2ce6e0);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[ 6],15, 0xa3014314);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[13],21, 0x4e0811a1);
-	tempA = CMD5_II(tempA,tempB,tempC,tempD,iData[ 4], 6, 0xf7537e82);
-	tempD = CMD5_II(tempD,tempA,tempB,tempC,iData[11],10, 0xbd3af235);
-	tempC = CMD5_II(tempC,tempD,tempA,tempB,iData[ 2],15, 0x2ad7d2bb);
-	tempB = CMD5_II(tempB,tempC,tempD,tempA,iData[ 9],21, 0xeb86d391);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-#else
-static inline void CMD5_FF(TUint& a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_F(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	}
-static inline void CMD5_GG(TUint& a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_G(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	}
-static inline void CMD5_HH(TUint& a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_H(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	}
-static inline void CMD5_II(TUint& a,const TUint b,const TUint c,const TUint d,const TUint m,const TUint s,const TUint t)
-	{
-	a+=CMD5_I(b,c,d) + m + t; 
-	a=b + CMD_R(a,s);
-	}
-void CMD5::Block()
-	{
-	register TUint tempA=iA;
-	register TUint tempB=iB;
-	register TUint tempC=iC;
-	register TUint tempD=iD;
-
-	CMD5_FF(tempA,tempB,tempC,tempD,iData[ 0], 7, 0xd76aa478);
-	CMD5_FF(tempD,tempA,tempB,tempC,iData[ 1],12, 0xe8c7b756);
-	CMD5_FF(tempC,tempD,tempA,tempB,iData[ 2],17, 0x242070db);
-	CMD5_FF(tempB,tempC,tempD,tempA,iData[ 3],22, 0xc1bdceee);
-	CMD5_FF(tempA,tempB,tempC,tempD,iData[ 4], 7, 0xf57c0faf);
-	CMD5_FF(tempD,tempA,tempB,tempC,iData[ 5],12, 0x4787c62a);
-	CMD5_FF(tempC,tempD,tempA,tempB,iData[ 6],17, 0xa8304613);
-	CMD5_FF(tempB,tempC,tempD,tempA,iData[ 7],22, 0xfd469501);
-	CMD5_FF(tempA,tempB,tempC,tempD,iData[ 8], 7, 0x698098d8);
-	CMD5_FF(tempD,tempA,tempB,tempC,iData[ 9],12, 0x8b44f7af);
-	CMD5_FF(tempC,tempD,tempA,tempB,iData[10],17, 0xffff5bb1);
-	CMD5_FF(tempB,tempC,tempD,tempA,iData[11],22, 0x895cd7be);
-	CMD5_FF(tempA,tempB,tempC,tempD,iData[12], 7, 0x6b901122);
-	CMD5_FF(tempD,tempA,tempB,tempC,iData[13],12, 0xfd987193);
-	CMD5_FF(tempC,tempD,tempA,tempB,iData[14],17, 0xa679438e);
-	CMD5_FF(tempB,tempC,tempD,tempA,iData[15],22, 0x49b40821);
-
-	CMD5_GG(tempA,tempB,tempC,tempD,iData[ 1], 5, 0xf61e2562);
-	CMD5_GG(tempD,tempA,tempB,tempC,iData[ 6], 9, 0xc040b340);
-	CMD5_GG(tempC,tempD,tempA,tempB,iData[11],14, 0x265e5a51);
-	CMD5_GG(tempB,tempC,tempD,tempA,iData[ 0],20, 0xe9b6c7aa);
-	CMD5_GG(tempA,tempB,tempC,tempD,iData[ 5], 5, 0xd62f105d);
-	CMD5_GG(tempD,tempA,tempB,tempC,iData[10], 9, 0x02441453);
-	CMD5_GG(tempC,tempD,tempA,tempB,iData[15],14, 0xd8a1e681);
-	CMD5_GG(tempB,tempC,tempD,tempA,iData[ 4],20, 0xe7d3fbc8);
-	CMD5_GG(tempA,tempB,tempC,tempD,iData[ 9], 5, 0x21e1cde6);
-	CMD5_GG(tempD,tempA,tempB,tempC,iData[14], 9, 0xc33707d6);
-	CMD5_GG(tempC,tempD,tempA,tempB,iData[ 3],14, 0xf4d50d87);
-	CMD5_GG(tempB,tempC,tempD,tempA,iData[ 8],20, 0x455a14ed);
-	CMD5_GG(tempA,tempB,tempC,tempD,iData[13], 5, 0xa9e3e905);
-	CMD5_GG(tempD,tempA,tempB,tempC,iData[ 2], 9, 0xfcefa3f8);
-	CMD5_GG(tempC,tempD,tempA,tempB,iData[ 7],14, 0x676f02d9);
-	CMD5_GG(tempB,tempC,tempD,tempA,iData[12],20, 0x8d2a4c8a);
-
-	CMD5_HH(tempA,tempB,tempC,tempD,iData[ 5], 4, 0xfffa3942);
-	CMD5_HH(tempD,tempA,tempB,tempC,iData[ 8],11, 0x8771f681);
-	CMD5_HH(tempC,tempD,tempA,tempB,iData[11],16, 0x6d9d6122);
-	CMD5_HH(tempB,tempC,tempD,tempA,iData[14],23, 0xfde5380c);
-	CMD5_HH(tempA,tempB,tempC,tempD,iData[ 1], 4, 0xa4beea44);
-	CMD5_HH(tempD,tempA,tempB,tempC,iData[ 4],11, 0x4bdecfa9);
-	CMD5_HH(tempC,tempD,tempA,tempB,iData[ 7],16, 0xf6bb4b60);
-	CMD5_HH(tempB,tempC,tempD,tempA,iData[10],23, 0xbebfbc70);
-	CMD5_HH(tempA,tempB,tempC,tempD,iData[13], 4, 0x289b7ec6);
-	CMD5_HH(tempD,tempA,tempB,tempC,iData[ 0],11, 0xeaa127fa);
-	CMD5_HH(tempC,tempD,tempA,tempB,iData[ 3],16, 0xd4ef3085);
-	CMD5_HH(tempB,tempC,tempD,tempA,iData[ 6],23, 0x04881d05);
-	CMD5_HH(tempA,tempB,tempC,tempD,iData[ 9], 4, 0xd9d4d039);
-	CMD5_HH(tempD,tempA,tempB,tempC,iData[12],11, 0xe6db99e5);
-	CMD5_HH(tempC,tempD,tempA,tempB,iData[15],16, 0x1fa27cf8);
-	CMD5_HH(tempB,tempC,tempD,tempA,iData[ 2],23, 0xc4ac5665);
-
-	CMD5_II(tempA,tempB,tempC,tempD,iData[ 0], 6, 0xf4292244);
-	CMD5_II(tempD,tempA,tempB,tempC,iData[ 7],10, 0x432aff97);
-	CMD5_II(tempC,tempD,tempA,tempB,iData[14],15, 0xab9423a7);
-	CMD5_II(tempB,tempC,tempD,tempA,iData[ 5],21, 0xfc93a039);
-	CMD5_II(tempA,tempB,tempC,tempD,iData[12], 6, 0x655b59c3);
-	CMD5_II(tempD,tempA,tempB,tempC,iData[ 3],10, 0x8f0ccc92);
-	CMD5_II(tempC,tempD,tempA,tempB,iData[10],15, 0xffeff47d);
-	CMD5_II(tempB,tempC,tempD,tempA,iData[ 1],21, 0x85845dd1);
-	CMD5_II(tempA,tempB,tempC,tempD,iData[ 8], 6, 0x6fa87e4f);
-	CMD5_II(tempD,tempA,tempB,tempC,iData[15],10, 0xfe2ce6e0);
-	CMD5_II(tempC,tempD,tempA,tempB,iData[ 6],15, 0xa3014314);
-	CMD5_II(tempB,tempC,tempD,tempA,iData[13],21, 0x4e0811a1);
-	CMD5_II(tempA,tempB,tempC,tempD,iData[ 4], 6, 0xf7537e82);
-	CMD5_II(tempD,tempA,tempB,tempC,iData[11],10, 0xbd3af235);
-	CMD5_II(tempC,tempD,tempA,tempB,iData[ 2],15, 0x2ad7d2bb);
-	CMD5_II(tempB,tempC,tempD,tempA,iData[ 9],21, 0xeb86d391);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	}
-#endif
-#endif
-
-void CMD5::DoFinal(void)
-	{
-	iNh += iNl;
-	const TUint ul128=128;
-	switch (iNl&3) 
-		{
-		case 0:
-			iData[iNl>>2] = ul128;
-			break;
-		case 1:
-			iData[iNl>>2] += ul128<<8;
-			break;
-		case 2:
-			iData[iNl>>2] += ul128<<16;
-			break;
-		case 3:
-			iData[iNl>>2] += ul128<<24;
-			break;
-		default:
-			break;
-		};
-	if (iNl>=56) 
-		{
-		if (iNl<60)
-			iData[15]=0;		
-		Block();
-		Mem::FillZ(iData,14*sizeof(TUint));
-		} 
-	else
-		{
-		const TUint offset=(iNl+4)>>2;
-		Mem::FillZ(iData+offset,(14-offset)*sizeof(TUint));
-		}
-
-	iData[14]=iNh<<3;//number in bits
-	// this will fail if the total input length is longer than 2^32 in bits
-	//(2^31 in bytes) which is roughly half a gig.
-	iData[15]=0;
-	Block();
-	//
-	// Generate hash value into iHash
-	//
-	TUint tmp=iA;
-	iHash[0]=(TUint8)(tmp & 255);
-	iHash[1]=(TUint8)((tmp >>= 8) & 255);
-	iHash[2]=(TUint8)((tmp >>= 8) & 255);
-	iHash[3]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iB;
-	iHash[4]=(TUint8)(tmp & 255);
-	iHash[5]=(TUint8)((tmp >>= 8) & 255);
-	iHash[6]=(TUint8)((tmp >>= 8) & 255);
-	iHash[7]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iC;
-	iHash[8]=(TUint8)(tmp & 255);
-	iHash[9]=(TUint8)((tmp >>= 8) & 255);
-	iHash[10]=(TUint8)((tmp >>= 8) & 255);
-	iHash[11]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iD;
-	iHash[12]=(TUint8)(tmp & 255);
-	iHash[13]=(TUint8)((tmp >>= 8) & 255);
-	iHash[14]=(TUint8)((tmp >>= 8) & 255);
-	iHash[15]=(TUint8)((tmp >>= 8) & 255);
-	}
-
-void CMD5::RestoreState()
-{
-	iA = iACopy;
-	iB = iBCopy;
-	iC = iCCopy;
-	iD = iDCopy;
-	iNl = iNlCopy;
-	iNh = iNhCopy;	
-	Mem::Copy(&iData[0], &iDataCopy[0], MD5_LBLOCK*sizeof(TUint)); 
-}
-
-void CMD5::StoreState()
-{
-	iACopy = iA;
-	iBCopy = iB;
-	iCCopy = iC;
-	iDCopy = iD;
-	iNlCopy = iNl;
-	iNhCopy = iNh;	
-	Mem::Copy(&iDataCopy[0], &iData[0], MD5_LBLOCK*sizeof(TUint));
-}
--- a/crypto/weakcrypto/source/hash/sha1.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,761 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* (c) 2003 Symbian Ltd.  All rights reserved.
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <hash.h>
-#include "hashinc.h"
-#define EXPANDLOOP
-
-//
-// 32bit endian-independent SHA-1 implementation
-//
-CSHA1::CSHA1(void)
-: CMessageDigest(),iHash(SHA1_HASH)
-	{
-	}
-CSHA1::CSHA1(const CSHA1& aMD)
-: CMessageDigest(aMD),
-  iHash(aMD.iHash),iA(aMD.iA),iB(aMD.iB),iC(aMD.iC),iD(aMD.iD),iE(aMD.iE),
-  iNl(aMD.iNl),iNh(aMD.iNh)
-	{
-	(void)Mem::Copy(iData,aMD.iData,SHA1_LBLOCK*5);
-	}
-EXPORT_C CSHA1* CSHA1::NewL(void)
-	{
-	CSHA1* self=new(ELeave) CSHA1;
-	self->Reset();
-	return self;
-	}
-EXPORT_C CMessageDigest* CSHA1::ReplicateL(void)
-	{
-	return NewL();
-	}
-
-EXPORT_C TPtrC8 CSHA1::Hash(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	StoreState();
-	DoFinal();
-	ptr.Set(iHash);
-	RestoreState();
-	return ptr;
-	}
-
-EXPORT_C CSHA1::~CSHA1(void)
-	{
-	}
-EXPORT_C CMessageDigest* CSHA1::CopyL(void)
-	{
-	return new(ELeave) CSHA1(*this);
-	}
-EXPORT_C TInt CSHA1::BlockSize(void)
-	{
-	return SHA1_LBLOCK*sizeof(TUint);
-	}
-EXPORT_C TInt CSHA1::HashSize(void)
-	{
-	return SHA1_HASH;
-	}
-
-EXPORT_C void CSHA1::Reset(void)
-	{
-	iA=0x67452301;
-	iB=0xefcdab89;
-	iC=0x98badcfe;
-	iD=0x10325476;
-	iE=0xc3d2e1f0;
-	iNh=0;
-	iNl=0;
-	}
-
-EXPORT_C void CSHA1::Update(const TDesC8& aMessage)
-	{
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	}
-
-EXPORT_C TPtrC8 CSHA1::Final(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoUpdate(aMessage.Ptr(),aMessage.Size());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-EXPORT_C TPtrC8 CSHA1::Final()
-	{
-	TPtrC8 ptr(KNullDesC8());
-	DoFinal();
-	ptr.Set(iHash);
-	Reset();
-	return ptr;
-	}
-
-// This assumes a big-endian architecture
-void CSHA1::DoUpdate(const TUint8* aData,TUint aLength)
-	{
-	while((aLength / 4) > 0 && (iNl % 4 == 0))
-		{
-		iData[iNl>>2] = aData[0] << 24 | aData[1] << 16 | aData[2] << 8 | aData[3];
-		iNl+=4;
-		aData+=4;
-		aLength-=4;
-		if(iNl==64) 
-			{
-			Block();
-			iNh+=64;
-			iNl=0;
-			}
-		}
-
-	while(aLength--)
-		{
-		switch (iNl&3) 
-			{
-			case 0:
-				iData[iNl>>2]=((TUint)(*aData))<<24;
-				break;
-			case 1:
-				iData[iNl>>2]|=((TUint)(*aData))<<16;
-				break;
-			case 2:
-				iData[iNl>>2]|=((TUint)(*aData))<<8;
-				break;
-			case 3:
-				iData[iNl>>2]|=((TUint)(*aData));
-				break;
-			default:
-				break;
-			};
-			aData++;
-			iNl++;
-			if(iNl==64) 
-				{
-				Block();
-				iNh+=64;
-				iNl=0;
-				}
-		}
-	}
-
-static inline TUint CSHA1_F(const TUint x,const TUint y,const TUint z)
-	{
-	return (x&y) | (~x&z);
-	}
-
-static inline TUint CSHA1_G(const TUint x,const TUint y,const TUint z)
-	{
-	return x^y^z;
-	}
-
-static inline TUint CSHA1_H(const TUint x,const TUint y,const TUint z)
-	{
-	return (x&y) | (x&z) | (y&z);
-	}
-
-/*static inline TUint CSHA1_I(const TUint x,const TUint y,const TUint z)
-	{
-	return x^y^z;
-	}*/
-
-#ifdef EXPANDLOOP
-
-#ifdef MACRO
-
-#define CSHA1_16(x,y,z,u,t,v,w)					v=CMD_R(x,5)+CSHA1_F(y,z,u)+t+w+0x5a827999;\
-												y=CMD_R(y,30);t=v;
-#define CSHA1_20(x,y,z,u,t,v,w0,w3,w8,w14,w16)  v=w3^w8^w14^w16;w0=CMD_R(v,1);\
-												CSHA1_16(x,y,z,u,t,v,w0);
-#define CSHA1_40(x,y,z,u,t,v,w0,w3,w8,w14,w16)	v=w3^w8^w14^w16;w0=CMD_R(v,1);\
-												v=CMD_R(x,5)+CSHA1_G(y,z,u)+t+w0+0x6ed9eba1;\
-												y=CMD_R(y,30);t=v;
-#define CSHA1_60(x,y,z,u,t,v,w0,w3,w8,w14,w16)	v=w3^w8^w14^w16;w0=CMD_R(v,1);\
-												v=CMD_R(x,5)+CSHA1_H(y,z,u)+t+w0+0x8f1bbcdc;\
-												y=CMD_R(y,30);t=v;
-#define CSHA1_80(x,y,z,u,t,v,w0,w3,w8,w14,w16)	v=w3^w8^w14^w16;w0=CMD_R(v,1);\
-												v=CMD_R(x,5)+CSHA1_G(y,z,u)+t+w0+0xca62c1d6;\
-												y=CMD_R(y,30);t=v;
-#else
-
-static inline void CSHA1_16(const TUint x, TUint& y, const TUint z,
-							const TUint u, TUint& t, TUint& v, const TUint w)
-	{
-	v = CMD_R(x,5) + CSHA1_F(y,z,u) + t + w + 0x5a827999;
-	y = CMD_R(y,30);
-	t = v;
-	}
-
-static inline void CSHA1_20(const TUint x,TUint& y,const TUint z,
-							const TUint u,TUint& t,TUint& v,
-							TUint& w0,const TUint w3,const TUint w8,
-							const TUint w14,const TUint w16)
-	{
-	v = w3 ^ w8 ^ w14 ^ w16;
-	w0 = CMD_R(v,1);
-	CSHA1_16(x,y,z,u,t,v,w0);
-	}
-
-static inline void CSHA1_40(const TUint x,TUint& y,const TUint z,
-							const TUint u,TUint& t,TUint& v,
-							TUint& w0,const TUint w3,const TUint w8,
-							const TUint w14,const TUint w16)
-	{
-	v = w3 ^ w8 ^ w14 ^ w16;
-	w0 = CMD_R(v,1);
-	v = CMD_R(x,5) + CSHA1_G(y,z,u) + t + w0 + 0x6ed9eba1;
-	y = CMD_R(y,30);
-	t = v;
-	}
-
-static inline void CSHA1_60(const TUint x,TUint& y,const TUint z,
-							const TUint u,TUint& t,TUint& v,
-							TUint& w0,const TUint w3,const TUint w8,
-							const TUint w14,const TUint w16)
-	{
-	v = w3 ^ w8 ^ w14 ^ w16;
-	w0 = CMD_R(v,1);
-	v = CMD_R(x,5) + CSHA1_H(y,z,u) + t + w0 + 0x8f1bbcdc;
-	y = CMD_R(y,30);
-	t = v;
-	}
-
-static inline void CSHA1_80(const TUint x,TUint& y,const TUint z,
-							const TUint u,TUint& t,TUint& v,
-							TUint& w0,const TUint w3,const TUint w8,
-							const TUint w14,const TUint w16)
-	{
-	v = w3 ^ w8 ^ w14 ^ w16;
-	w0 = CMD_R(v,1);
-	v = CMD_R(x,5) + CSHA1_G(y,z,u) + t + w0 + 0xca62c1d6;
-	y = CMD_R(y,30);
-	t = v;
-	}
-
-#endif // MACRO
-#endif // EXPANDLOOP
-
-#ifdef WEIDAI
-
-template <class T> inline T rotlFixed(T x, unsigned int y)
-{
-	ASSERT(y < sizeof(T)*8);
-	return (x<<y) | (x>>(sizeof(T)*8-y));
-}
-
-template<> inline TUint32 rotlFixed<TUint32>(TUint32 x, unsigned int y)
-{
-	ASSERT(y < 32);
-	return y ? CMD_R(x, y) : x;
-}
-
-#define blk0(i) (W[i] = iData[i])
-#define blk1(i) (W[i&15] = rotlFixed(W[(i+13)&15]^W[(i+8)&15]^W[(i+2)&15]^W[i&15],1))
-
-#define f1(x,y,z) (z^(x&(y^z)))
-#define f2(x,y,z) (x^y^z)
-#define f3(x,y,z) ((x&y)|(z&(x|y)))
-#define f4(x,y,z) (x^y^z)
-
-/* (R0+R1), R2, R3, R4 are the different operations used in SHA1 */
-#define R0(v,w,x,y,z,i) z+=f1(w,x,y)+blk0(i)+0x5A827999+rotlFixed(v,5);w=rotlFixed(w,30);
-#define R1(v,w,x,y,z,i) z+=f1(w,x,y)+blk1(i)+0x5A827999+rotlFixed(v,5);w=rotlFixed(w,30);
-#define R2(v,w,x,y,z,i) z+=f2(w,x,y)+blk1(i)+0x6ED9EBA1+rotlFixed(v,5);w=rotlFixed(w,30);
-#define R3(v,w,x,y,z,i) z+=f3(w,x,y)+blk1(i)+0x8F1BBCDC+rotlFixed(v,5);w=rotlFixed(w,30);
-#define R4(v,w,x,y,z,i) z+=f4(w,x,y)+blk1(i)+0xCA62C1D6+rotlFixed(v,5);w=rotlFixed(w,30);
-
-#endif // WEIDAI
-
-void CSHA1::Block()
-	{
-#ifdef WEIDAI
-	TUint32 W[16];
-    /* Copy context->state[] to working vars */
-    TUint32 a = iA;
-    TUint32 b = iB;
-    TUint32 c = iC;
-    TUint32 d = iD;
-    TUint32 e = iE;
-    
-	/* 4 rounds of 20 operations each. Loop unrolled. */
-    
-	R0(a,b,c,d,e, 0); 
-	R0(e,a,b,c,d, 1); 
-	R0(d,e,a,b,c, 2); 
-	R0(c,d,e,a,b, 3);
-    R0(b,c,d,e,a, 4); 
-	R0(a,b,c,d,e, 5); 
-	R0(e,a,b,c,d, 6); 
-	R0(d,e,a,b,c, 7);
-    R0(c,d,e,a,b, 8); 
-	R0(b,c,d,e,a, 9); 
-	R0(a,b,c,d,e,10); 
-	R0(e,a,b,c,d,11);
-    R0(d,e,a,b,c,12); 
-	R0(c,d,e,a,b,13); 
-	R0(b,c,d,e,a,14); 
-	R0(a,b,c,d,e,15);
-
-    R1(e,a,b,c,d,16); 
-	R1(d,e,a,b,c,17); 
-	R1(c,d,e,a,b,18); 
-	R1(b,c,d,e,a,19);
-
-    R2(a,b,c,d,e,20); 
-	R2(e,a,b,c,d,21); 
-	R2(d,e,a,b,c,22); 
-	R2(c,d,e,a,b,23);
-    R2(b,c,d,e,a,24); 
-	R2(a,b,c,d,e,25); 
-	R2(e,a,b,c,d,26); 
-	R2(d,e,a,b,c,27);
-    R2(c,d,e,a,b,28); 
-	R2(b,c,d,e,a,29); 
-	R2(a,b,c,d,e,30); 
-	R2(e,a,b,c,d,31);
-    R2(d,e,a,b,c,32); 
-	R2(c,d,e,a,b,33); 
-	R2(b,c,d,e,a,34); 
-	R2(a,b,c,d,e,35);
-    R2(e,a,b,c,d,36); 
-	R2(d,e,a,b,c,37); 
-	R2(c,d,e,a,b,38); 
-	R2(b,c,d,e,a,39);
-
-    R3(a,b,c,d,e,40); 
-	R3(e,a,b,c,d,41); 
-	R3(d,e,a,b,c,42); 
-	R3(c,d,e,a,b,43);
-    R3(b,c,d,e,a,44); 
-	R3(a,b,c,d,e,45); 
-	R3(e,a,b,c,d,46); 
-	R3(d,e,a,b,c,47);
-    R3(c,d,e,a,b,48); 
-	R3(b,c,d,e,a,49); 
-	R3(a,b,c,d,e,50); 
-	R3(e,a,b,c,d,51);
-    R3(d,e,a,b,c,52); 
-	R3(c,d,e,a,b,53); 
-	R3(b,c,d,e,a,54); 
-	R3(a,b,c,d,e,55);
-    R3(e,a,b,c,d,56); 
-	R3(d,e,a,b,c,57); 
-	R3(c,d,e,a,b,58); 
-	R3(b,c,d,e,a,59);
-
-    R4(a,b,c,d,e,60); 
-	R4(e,a,b,c,d,61); 
-	R4(d,e,a,b,c,62); 
-	R4(c,d,e,a,b,63);
-    R4(b,c,d,e,a,64); 
-	R4(a,b,c,d,e,65); 
-	R4(e,a,b,c,d,66); 
-	R4(d,e,a,b,c,67);
-    R4(c,d,e,a,b,68); 
-	R4(b,c,d,e,a,69); 
-	R4(a,b,c,d,e,70); 
-	R4(e,a,b,c,d,71);
-    R4(d,e,a,b,c,72); 
-	R4(c,d,e,a,b,73); 
-	R4(b,c,d,e,a,74); 
-	R4(a,b,c,d,e,75);
-    R4(e,a,b,c,d,76); 
-	R4(d,e,a,b,c,77); 
-	R4(c,d,e,a,b,78); 
-	R4(b,c,d,e,a,79);
-    
-	/* Add the working vars back into context.state[] */
-    iA += a;
-    iB += b;
-    iC += c;
-    iD += d;
-    iE += e;
-    /* Wipe variables */
-    a = b = c = d = e = 0;
-	Mem::FillZ(W, sizeof(W));
-#else
-	TUint tempA=iA;
-	TUint tempB=iB;
-	TUint tempC=iC;
-	TUint tempD=iD;
-	TUint tempE=iE;
-	TUint temp=0;
-
-#ifdef EXPANDLOOP
-	CSHA1_16(tempA,tempB,tempC,tempD,tempE,temp,iData[0]);
-	CSHA1_16(temp,tempA,tempB,tempC,tempD,tempE,iData[1]);
-	CSHA1_16(tempE,temp,tempA,tempB,tempC,tempD,iData[2]);
-	CSHA1_16(tempD,tempE,temp,tempA,tempB,tempC,iData[3]);
-	CSHA1_16(tempC,tempD,tempE,temp,tempA,tempB,iData[4]);
-	CSHA1_16(tempB,tempC,tempD,tempE,temp,tempA,iData[5]);
-	CSHA1_16(tempA,tempB,tempC,tempD,tempE,temp,iData[6]);
-	CSHA1_16(temp,tempA,tempB,tempC,tempD,tempE,iData[7]);
-	CSHA1_16(tempE,temp,tempA,tempB,tempC,tempD,iData[8]);
-	CSHA1_16(tempD,tempE,temp,tempA,tempB,tempC,iData[9]);
-	CSHA1_16(tempC,tempD,tempE,temp,tempA,tempB,iData[10]);
-	CSHA1_16(tempB,tempC,tempD,tempE,temp,tempA,iData[11]);
-	CSHA1_16(tempA,tempB,tempC,tempD,tempE,temp,iData[12]);
-	CSHA1_16(temp,tempA,tempB,tempC,tempD,tempE,iData[13]);
-	CSHA1_16(tempE,temp,tempA,tempB,tempC,tempD,iData[14]);
-	CSHA1_16(tempD,tempE,temp,tempA,tempB,tempC,iData[15]);
-	/*
-	i = 16;
-	TUint temp1 = tempA;
-	tempA = 
-	*/
-#else
-    TUint i=0;
-	while (i<16) 
-		{
-		temp = CMD_R(tempA,5) + CSHA1_F(tempB,tempC,tempD) + tempE + iData[i++] + 0x5a827999;
-		tempE = tempD;
-		tempD = tempC;
-		tempC = CMD_R(tempB,30);
-		tempB = tempA;
-		tempA = temp;
-		}
-#endif
-
-#ifdef EXPANDLOOP
-	CSHA1_20(tempC,tempD,tempE,temp,tempA,tempB,iData[16],iData[13],iData[8],iData[2],iData[0]);
-	CSHA1_20(tempB,tempC,tempD,tempE,temp,tempA,iData[17],iData[14],iData[9],iData[3],iData[1]);
-	CSHA1_20(tempA,tempB,tempC,tempD,tempE,temp,iData[18],iData[15],iData[10],iData[4],iData[2]);
-	CSHA1_20(temp,tempA,tempB,tempC,tempD,tempE,iData[19],iData[16],iData[11],iData[5],iData[3]);
-	//i = 20;
-#else
-	while (i<20) 
-		{
-		temp=iData[i-3] ^ iData[i-8] ^ iData[i-14] ^ iData[i-16];
-		iData[i]=CMD_R(temp,1);
-		temp = CMD_R(tempA,5) + CSHA1_F(tempB,tempC,tempD) + tempE + iData[i++] + 0x5a827999; 
-		tempE = tempD;
-		tempD = tempC; 
-		tempC = CMD_R(tempB,30); 
-		tempB = tempA; 
-		tempA = temp;
-		}
-#endif
-
-#ifdef EXPANDLOOP
-	CSHA1_40(tempE,temp,tempA,tempB,tempC,tempD,iData[20],iData[17],iData[12],iData[6],iData[4]);
-	CSHA1_40(tempD,tempE,temp,tempA,tempB,tempC,iData[21],iData[18],iData[13],iData[7],iData[5]);
-	CSHA1_40(tempC,tempD,tempE,temp,tempA,tempB,iData[22],iData[19],iData[14],iData[8],iData[6]);
-	CSHA1_40(tempB,tempC,tempD,tempE,temp,tempA,iData[23],iData[20],iData[15],iData[9],iData[7]);
-	CSHA1_40(tempA,tempB,tempC,tempD,tempE,temp,iData[24],iData[21],iData[16],iData[10],iData[8]);
-	CSHA1_40(temp,tempA,tempB,tempC,tempD,tempE,iData[25],iData[22],iData[17],iData[11],iData[9]);
-	CSHA1_40(tempE,temp,tempA,tempB,tempC,tempD,iData[26],iData[23],iData[18],iData[12],iData[10]);
-	CSHA1_40(tempD,tempE,temp,tempA,tempB,tempC,iData[27],iData[24],iData[19],iData[13],iData[11]);
-	CSHA1_40(tempC,tempD,tempE,temp,tempA,tempB,iData[28],iData[25],iData[20],iData[14],iData[12]);
-	CSHA1_40(tempB,tempC,tempD,tempE,temp,tempA,iData[29],iData[26],iData[21],iData[15],iData[13]);
-	CSHA1_40(tempA,tempB,tempC,tempD,tempE,temp,iData[30],iData[27],iData[22],iData[16],iData[14]);
-	CSHA1_40(temp,tempA,tempB,tempC,tempD,tempE,iData[31],iData[28],iData[23],iData[17],iData[15]);
-	CSHA1_40(tempE,temp,tempA,tempB,tempC,tempD,iData[32],iData[29],iData[24],iData[18],iData[16]);
-	CSHA1_40(tempD,tempE,temp,tempA,tempB,tempC,iData[33],iData[30],iData[25],iData[19],iData[17]);
-	CSHA1_40(tempC,tempD,tempE,temp,tempA,tempB,iData[34],iData[31],iData[26],iData[20],iData[18]);
-	CSHA1_40(tempB,tempC,tempD,tempE,temp,tempA,iData[35],iData[32],iData[27],iData[21],iData[19]);
-	CSHA1_40(tempA,tempB,tempC,tempD,tempE,temp,iData[36],iData[33],iData[28],iData[22],iData[20]);
-	CSHA1_40(temp,tempA,tempB,tempC,tempD,tempE,iData[37],iData[34],iData[29],iData[23],iData[21]);
-	CSHA1_40(tempE,temp,tempA,tempB,tempC,tempD,iData[38],iData[35],iData[30],iData[24],iData[22]);
-	CSHA1_40(tempD,tempE,temp,tempA,tempB,tempC,iData[39],iData[36],iData[31],iData[25],iData[23]);
-	//i = 40;
-#else
-	while (i<40) 
-		{
-		temp = iData[i-3] ^ iData[i-8] ^ iData[i-14] ^ iData[i-16];
-		iData[i] = CMD_R(temp,1);
-
-		temp = CMD_R(tempA,5) + CSHA1_G(tempB,tempC,tempD) + tempE + iData[i++] + 0x6ed9eba1; 
-		tempE = tempD; 
-		tempD = tempC; 
-		tempC = CMD_R(tempB,30); 
-		tempB = tempA; 
-		tempA = temp;
-		}
-#endif
-
-#ifdef EXPANDLOOP
-	CSHA1_60(tempC,tempD,tempE,temp,tempA,tempB,iData[40],iData[37],iData[32],iData[26],iData[24]);
-	CSHA1_60(tempB,tempC,tempD,tempE,temp,tempA,iData[41],iData[38],iData[33],iData[27],iData[25]);
-	CSHA1_60(tempA,tempB,tempC,tempD,tempE,temp,iData[42],iData[39],iData[34],iData[28],iData[26]);
-	CSHA1_60(temp,tempA,tempB,tempC,tempD,tempE,iData[43],iData[40],iData[35],iData[29],iData[27]);
-	CSHA1_60(tempE,temp,tempA,tempB,tempC,tempD,iData[44],iData[41],iData[36],iData[30],iData[28]);
-	CSHA1_60(tempD,tempE,temp,tempA,tempB,tempC,iData[45],iData[42],iData[37],iData[31],iData[29]);
-	CSHA1_60(tempC,tempD,tempE,temp,tempA,tempB,iData[46],iData[43],iData[38],iData[32],iData[30]);
-	CSHA1_60(tempB,tempC,tempD,tempE,temp,tempA,iData[47],iData[44],iData[39],iData[33],iData[31]);
-	CSHA1_60(tempA,tempB,tempC,tempD,tempE,temp,iData[48],iData[45],iData[40],iData[34],iData[32]);
-	CSHA1_60(temp,tempA,tempB,tempC,tempD,tempE,iData[49],iData[46],iData[41],iData[35],iData[33]);
-	CSHA1_60(tempE,temp,tempA,tempB,tempC,tempD,iData[50],iData[47],iData[42],iData[36],iData[34]);
-	CSHA1_60(tempD,tempE,temp,tempA,tempB,tempC,iData[51],iData[48],iData[43],iData[37],iData[35]);
-	CSHA1_60(tempC,tempD,tempE,temp,tempA,tempB,iData[52],iData[49],iData[44],iData[38],iData[36]);
-	CSHA1_60(tempB,tempC,tempD,tempE,temp,tempA,iData[53],iData[50],iData[45],iData[39],iData[37]);
-	CSHA1_60(tempA,tempB,tempC,tempD,tempE,temp,iData[54],iData[51],iData[46],iData[40],iData[38]);
-	CSHA1_60(temp,tempA,tempB,tempC,tempD,tempE,iData[55],iData[52],iData[47],iData[41],iData[39]);
-	CSHA1_60(tempE,temp,tempA,tempB,tempC,tempD,iData[56],iData[53],iData[48],iData[42],iData[40]);
-	CSHA1_60(tempD,tempE,temp,tempA,tempB,tempC,iData[57],iData[54],iData[49],iData[43],iData[41]);
-	CSHA1_60(tempC,tempD,tempE,temp,tempA,tempB,iData[58],iData[55],iData[50],iData[44],iData[42]);
-	CSHA1_60(tempB,tempC,tempD,tempE,temp,tempA,iData[59],iData[56],iData[51],iData[45],iData[43]);
-	//i = 60;
-#else
-	while (i<60) 
-		{
-		temp = iData[i-3] ^ iData[i-8] ^ iData[i-14] ^ iData[i-16];
-		iData[i] = CMD_R(temp,1);
-
-		temp = CMD_R(tempA,5) + CSHA1_H(tempB,tempC,tempD) + tempE + iData[i++] + 0x8f1bbcdc; 
-		tempE = tempD; 
-		tempD = tempC; 
-		tempC = CMD_R(tempB,30); 
-		tempB = tempA; 
-		tempA = temp;
-		}
-#endif
-
-#ifdef EXPANDLOOP
-	CSHA1_80(tempA,tempB,tempC,tempD,tempE,temp,iData[60],iData[57],iData[52],iData[46],iData[44]);
-	CSHA1_80(temp,tempA,tempB,tempC,tempD,tempE,iData[61],iData[58],iData[53],iData[47],iData[45]);
-	CSHA1_80(tempE,temp,tempA,tempB,tempC,tempD,iData[62],iData[59],iData[54],iData[48],iData[46]);
-	CSHA1_80(tempD,tempE,temp,tempA,tempB,tempC,iData[63],iData[60],iData[55],iData[49],iData[47]);
-	CSHA1_80(tempC,tempD,tempE,temp,tempA,tempB,iData[64],iData[61],iData[56],iData[50],iData[48]);
-	CSHA1_80(tempB,tempC,tempD,tempE,temp,tempA,iData[65],iData[62],iData[57],iData[51],iData[49]);
-	CSHA1_80(tempA,tempB,tempC,tempD,tempE,temp,iData[66],iData[63],iData[58],iData[52],iData[50]);
-	CSHA1_80(temp,tempA,tempB,tempC,tempD,tempE,iData[67],iData[64],iData[59],iData[53],iData[51]);
-	CSHA1_80(tempE,temp,tempA,tempB,tempC,tempD,iData[68],iData[65],iData[60],iData[54],iData[52]);
-	CSHA1_80(tempD,tempE,temp,tempA,tempB,tempC,iData[69],iData[66],iData[61],iData[55],iData[53]);
-	CSHA1_80(tempC,tempD,tempE,temp,tempA,tempB,iData[70],iData[67],iData[62],iData[56],iData[54]);
-	CSHA1_80(tempB,tempC,tempD,tempE,temp,tempA,iData[71],iData[68],iData[63],iData[57],iData[55]);
-	CSHA1_80(tempA,tempB,tempC,tempD,tempE,temp,iData[72],iData[69],iData[64],iData[58],iData[56]);
-	CSHA1_80(temp,tempA,tempB,tempC,tempD,tempE,iData[73],iData[70],iData[65],iData[59],iData[57]);
-	CSHA1_80(tempE,temp,tempA,tempB,tempC,tempD,iData[74],iData[71],iData[66],iData[60],iData[58]);
-	CSHA1_80(tempD,tempE,temp,tempA,tempB,tempC,iData[75],iData[72],iData[67],iData[61],iData[59]);
-	CSHA1_80(tempC,tempD,tempE,temp,tempA,tempB,iData[76],iData[73],iData[68],iData[62],iData[60]);
-	CSHA1_80(tempB,tempC,tempD,tempE,temp,tempA,iData[77],iData[74],iData[69],iData[63],iData[61]);
-	CSHA1_80(tempA,tempB,tempC,tempD,tempE,temp,iData[78],iData[75],iData[70],iData[64],iData[62]);
-	CSHA1_80(temp,tempA,tempB,tempC,tempD,tempE,iData[79],iData[76],iData[71],iData[65],iData[63]);
-#else
-	const TUint total=SHA1_LBLOCK*5; // 16 * 5 = 80
-	while (i<total) 
-		{
-		temp = iData[i-3] ^ iData[i-8] ^ iData[i-14] ^ iData[i-16];
-		iData[i] = CMD_R(temp,1);
-
-		temp = CMD_R(tempA,5) + CSHA1_I(tempB,tempC,tempD) + tempE + iData[i++] + 0xca62c1d6; 
-		tempE = tempD; 
-		tempD = tempC; 
-		tempC = CMD_R(tempB,30); 
-		tempB = tempA; 
-		tempA = temp;
-		}
-#endif
-
-#ifdef EXPANDLOOP
-	iA+=tempE;
-	iB+=temp;
-	iC+=tempA;
-	iD+=tempB;
-	iE+=tempC;
-#else
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	iE+=tempE;
-#endif // EXPANDLOOP
-#endif // WEIDAI
-	}
-
-void CSHA1::DoFinal()
-	{
-	iNh += iNl;
-	const TUint ul128=128;
-	switch (iNl&3) 
-		{
-		case 0:
-			iData[iNl>>2] = ul128<<24;
-			break;
-		case 1:
-			iData[iNl>>2] += ul128<<16;
-			break;
-		case 2:
-			iData[iNl>>2] += ul128<<8;
-			break;
-		case 3:
-			iData[iNl>>2] += ul128;
-			break;
-		default:
-			break;
-		};
-	if (iNl>=56) 
-		{
-		if (iNl<60)
-			iData[15]=0;		
-		Block();
-		Mem::FillZ(iData,14*sizeof(TUint));
-		} 
-	else
-		{
-		const TUint offset=(iNl+4)>>2; //+4 to account for the word added in the
-		//switch statement above
-		Mem::FillZ(iData+offset,(14-offset)*sizeof(TUint));
-		}
-
-	// this will fail if the total input length is longer than 2^32 in bits
-	//(2^31 in bytes) which is roughly half a gig.
-	iData[14]=0;
-	iData[15]=iNh<<3;//number in bits
-	Block();
-	//
-	// Generate hash value into iHash
-	//
-	TUint tmp=iA;
-	iHash[3]=(TUint8)(tmp & 255);
-	iHash[2]=(TUint8)((tmp >>= 8) & 255);
-	iHash[1]=(TUint8)((tmp >>= 8) & 255);
-	iHash[0]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iB;
-	iHash[7]=(TUint8)(tmp & 255);
-	iHash[6]=(TUint8)((tmp >>= 8) & 255);
-	iHash[5]=(TUint8)((tmp >>= 8) & 255);
-	iHash[4]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iC;
-	iHash[11]=(TUint8)(tmp & 255);
-	iHash[10]=(TUint8)((tmp >>= 8) & 255);
-	iHash[9]=(TUint8)((tmp >>= 8) & 255);
-	iHash[8]=(TUint8)((tmp >>= 8) & 255);
-
-	tmp=iD;
-	iHash[15]=(TUint8)(tmp & 255);
-	iHash[14]=(TUint8)((tmp >>= 8) & 255);
-	iHash[13]=(TUint8)((tmp >>= 8) & 255);
-	iHash[12]=(TUint8)((tmp >>= 8) & 255);
-	
-	tmp=iE;
-	iHash[19]=(TUint8)(tmp & 255);
-	iHash[18]=(TUint8)((tmp >>= 8) & 255);
-	iHash[17]=(TUint8)((tmp >>= 8) & 255);
-	iHash[16]=(TUint8)((tmp >>= 8) & 255);
-	}
-
-void CSHA1::RestoreState()
-{
-	iA = iACopy;
-	iB = iBCopy;
-	iC = iCCopy;
-	iD = iDCopy;
-	iE = iECopy;
-	iNl = iNlCopy;
-	iNh = iNhCopy;	
-	Mem::Copy(&iData[0], &iDataCopy[0], SHA1_LBLOCK*5*sizeof(TUint)); 
-}
-
-void CSHA1::StoreState()
-{
-	iACopy = iA;
-	iBCopy = iB;
-	iCCopy = iC;
-	iDCopy = iD;
-	iECopy = iE;
-	iNlCopy = iNl;
-	iNhCopy = iNh;	
-	Mem::Copy(&iDataCopy[0], &iData[0], SHA1_LBLOCK*5*sizeof(TUint));
-}
-
-///////////////////////////////////////////////////////////////////////////////////////
-//	CSHA code is deprecated
-///////////////////////////////////////////////////////////////////////////////////////
-
-_LIT(KSHA, "HASH::CSHA");
-
-EXPORT_C CSHA* CSHA::NewL(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (NULL);	//	Shut compiler up
-}
-
-EXPORT_C CSHA::~CSHA(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-}
-
-EXPORT_C TPtrC8 CSHA::Hash(const TDesC8& /*aMessage*/)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (KNullDesC8());	//	Shut compiler up
-}
-
-EXPORT_C TInt CSHA::HashSize(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (-1);	//	Shut compiler up
-}
-
-EXPORT_C TInt CSHA::BlockSize(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (-1);	//	Shut compiler up
-}
-
-EXPORT_C CMessageDigest* CSHA::CopyL(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (NULL);	//	Shut compiler up
-}
-
-EXPORT_C CMessageDigest* CSHA::ReplicateL(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (NULL);	//	Shut compiler up
-}
-
-EXPORT_C void CSHA::Reset(void)
-{
-	User::Panic(KSHA, KErrNotSupported);
-}
-
-EXPORT_C void CSHA::Update(const TDesC8& /*aMessage*/)
-{
-	User::Panic(KSHA, KErrNotSupported);
-}
-
-EXPORT_C TPtrC8 CSHA::Final(const TDesC8& /*aMessage*/)
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (KNullDesC8());	//	Shut compiler up
-}
-
-EXPORT_C TPtrC8 CSHA::Final()
-{
-	User::Panic(KSHA, KErrNotSupported);
-	return (KNullDesC8());	//	Shut compiler up
-}
-
-void CSHA::RestoreState()
-{
-	User::Panic(KSHA, KErrNotSupported);
-}
-void CSHA::StoreState()
-{
-	User::Panic(KSHA, KErrNotSupported);
-}
--- a/crypto/weakcrypto/source/hash/sha2.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,293 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* software SHA2 implementation
-* RFC 4634 (US Secure Hash Algorithms (SHA and HMAC-SHA))
-* FIPS 180-2 (With change notice)
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <hash.h>
-#include "sha224and256.h"
-#include "sha384and512.h"
-
-// Initial Hash Values of SHA2 algorithms
-/**
- * Initial Hash Value for SHA-224
- * 
- * These words were obtained by taking the first thirty-two bits 
- * of the fractional parts of the square roots of the first eight
- * prime numbers.
- * 
- * FIPS 180-2 Appendix
- * FIPS 180-3 Section 5.3.2
- */
-const TUint SHA224InitVals[] = 
-    			{
-    			0xc1059ed8, // A
-    			0x367cd507, // B
-    			0x3070dd17, // C
-    			0xf70e5939, // D
-    			0xffc00b31, // E
-    			0x68581511, // F
-    			0x64f98fa7, // G
-    			0xbefa4fa4  // H
-    			};
-
-/**
- * Initial Hash Value for SHA-256
- * 
- * These words were obtained by taking the first thirty-two bits 
- * of the fractional parts of the square roots of the first eight
- * prime numbers.
- * 
- * FIPS 180-2 Section 5.3.2
- */
-const TUint SHA256InitVals[] = 
-    			{
-    			0x6a09e667, // A
-    			0xbb67ae85, // B
-    			0x3c6ef372, // C
-    			0xa54ff53a, // D
-    			0x510e527f, // E
-    			0x9b05688c, // F
-    			0x1f83d9ab, // G
-    			0x5be0cd19  // H
-    			};
-
-/**
- * Initial Hash Value for SHA-384
- * 
- *  These words were obtained by taking the first sixty-four bits 
- * of the fractional parts of the square roots of the first eight
- * prime numbers.
- * 
- * FIPS 180-2 Section 5.3.3
- */
-const TUint64 SHA384InitVals[] = 
-    			{
-    			UI64LIT(0xcbbb9d5dc1059ed8), // A
-    			UI64LIT(0x629a292a367cd507), // B
-    			UI64LIT(0x9159015a3070dd17), // C
-    			UI64LIT(0x152fecd8f70e5939), // D
-    			UI64LIT(0x67332667ffc00b31), // E
-    			UI64LIT(0x8eb44a8768581511), // F
-    			UI64LIT(0xdb0c2e0d64f98fa7), // G
-    			UI64LIT(0x47b5481dbefa4fa4)  // H
-    			};
-
-/**
- * Initial Hash Value for SHA-512
- * 
- * These words were obtained by taking the first sixty-four bits 
- * of the fractional parts of the square roots of the first eight
- * prime numbers.
- * 
- * FIPS 180-2 Section 5.3.4
- */
-const TUint64 SHA512InitVals[] = 
-    			{
-    			UI64LIT(0x6a09e667f3bcc908), // A
-    			UI64LIT(0xbb67ae8584caa73b), // B
-    			UI64LIT(0x3c6ef372fe94f82b), // C
-    			UI64LIT(0xa54ff53a5f1d36f1), // D
-    			UI64LIT(0x510e527fade682d1), // E
-    			UI64LIT(0x9b05688c2b3e6c1f), // F
-    			UI64LIT(0x1f83d9abfb41bd6b), // G
-    			UI64LIT(0x5be0cd19137e2179)  // H
-    			};
-
-	
-EXPORT_C CSHA2* CSHA2::NewL(TSH2Algo aAlgorithmId)
-	{
-	CSHA2* self = CSHA2::NewLC(aAlgorithmId);
-	CleanupStack::Pop(self);
-	return self;						
-	}
-														
-EXPORT_C CSHA2* CSHA2::NewLC(TSH2Algo aAlgorithmId)
-	{
-	CSHA2* self = new (ELeave) CSHA2();
-	CleanupStack::PushL(self);
-	self->ConstructL(aAlgorithmId);
-	return self;						
-	}
-														
-void CSHA2::ConstructL(const CSHA2& aSHA2)
-	{
-	iAlgorithmType = aSHA2.iAlgorithmType;
-	iInitValues = aSHA2.iInitValues;
-	iHashSize = aSHA2.iHashSize;
-    switch(iAlgorithmType)
-		{
-		case E224Bit:
-		case E256Bit:
-			{
-			const CSHA224And256* const impl = static_cast<CSHA224And256*>(aSHA2.iImplementation);
-			iImplementation = new (ELeave) CSHA224And256(*impl);
-			break;
-			}
-		case E384Bit:
-		case E512Bit:
-			{
-			const CSHA384And512* const impl = static_cast<CSHA384And512*>(aSHA2.iImplementation);
-			iImplementation = new (ELeave) CSHA384And512(*impl);
-			break;
-			}
-		default:
-			{
-			User::Leave(KErrNotSupported);
-			}
-		}
-	}
-
-void CSHA2::ConstructL(TSH2Algo aAlgorithmId)
-    {
-    switch(aAlgorithmId)
-    	{
-    	case E224Bit:
-    		{
-    		iImplementation = CSHA224And256::NewL();
-    		iInitValues = SHA224InitVals;
-    		iAlgorithmType = E224Bit;
-    		iHashSize = KSHA224HashSize;
-    		break;
-    		}
-    	case E256Bit:
-    		{
-    		iImplementation = CSHA224And256::NewL();
-    		iInitValues = SHA256InitVals;
-    		iAlgorithmType = E256Bit;
-    		iHashSize = KSHA256HashSize;
-    		break;
-    		}
-    	case E384Bit:
-    		{
-    		iImplementation = CSHA384And512::NewL();
-    		iInitValues = SHA384InitVals;
-    		iAlgorithmType = E384Bit;
-    		iHashSize = KSHA384HashSize;
-    		break;
-    		}
-    	case E512Bit:
-    		{
-    		iImplementation = CSHA384And512::NewL();
-    		iInitValues = SHA512InitVals;
-    		iAlgorithmType = E512Bit;
-    		iHashSize = KSHA512HashSize;
-    		break;
-    		}
-    	default:
-    		{
-    		User::Leave(KErrNotSupported);
-    		}
-    	}
-    
-    Reset();
-    }
-
-EXPORT_C CSHA2::~CSHA2()
-	{
-	delete iImplementation;
-	}
-
-EXPORT_C CMessageDigest* CSHA2::ReplicateL()
-	{	 
-	return CSHA2::NewL(iAlgorithmType);
-	}
-	
-EXPORT_C TPtrC8 CSHA2::Hash(const TDesC8& aMessage)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	iImplementation->Update(aMessage.Ptr(),aMessage.Size());
-	iImplementation->StoreState();
-	ptr.Set(iImplementation->Final().Ptr(), iHashSize);
-	iImplementation->RestoreState();
-	return ptr;
-	}
-	
-EXPORT_C CMessageDigest* CSHA2::CopyL()
-	{
-	CSHA2* hash = new(ELeave) CSHA2();
-	CleanupStack::PushL(hash);
-	hash->ConstructL(*this);
-	CleanupStack::Pop(hash);
-	return hash;
-	}
-
-EXPORT_C TInt CSHA2::BlockSize(void)
-	{
-	TInt blockSize = KSHA256BlockSize;
-	if(E384Bit == iAlgorithmType || E512Bit == iAlgorithmType)
-		{
-		blockSize = KSHA512BlockSize;
-		}
-	return blockSize;
-	}
-
-EXPORT_C TInt CSHA2::HashSize(void)
-	{
-	return iHashSize;
-	}
-
-EXPORT_C void CSHA2::Reset()
-	{
-	iImplementation->Reset(iInitValues);
-	}
-
-EXPORT_C void CSHA2::Update(const TDesC8& aMessage)
-	{
-	iImplementation->Update(aMessage.Ptr(),aMessage.Size());	
-	}
-
-EXPORT_C TPtrC8 CSHA2::Final(void)
-	{
-	TPtrC8 ptr(KNullDesC8());
-	ptr.Set(iImplementation->Final().Ptr(), iHashSize);
-	Reset();
-	return ptr;
-	}
-	
-EXPORT_C TPtrC8 CSHA2::Final(const TDesC8& aMessage)
-	{
-	iImplementation->Update(aMessage.Ptr(),aMessage.Size());			
-	TPtrC8 ptr(KNullDesC8());
-	ptr.Set(iImplementation->Final().Ptr(), iHashSize);
-	Reset();
-	return ptr;
-	}
-
-void CSHA2::RestoreState()
-	{
-	iImplementation->RestoreState();
-	}
-
-void CSHA2::StoreState()
-	{
-	iImplementation->StoreState();
-	}
-
-// Implemented in hmacimpl.cpp or softwarehashbase.cpp
-// but required as derived from MHash. No coverage here.
-#ifdef _BullseyeCoverage
-#pragma suppress_warnings on
-#pragma BullseyeCoverage off
-#pragma suppress_warnings off
-#endif
-
--- a/crypto/weakcrypto/source/hash/sha224and256.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,486 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Common implementation of SHA224 and SHA256
-* RFC 4634 (US Secure Hash Algorithms (SHA and HMAC-SHA))
-*
-*/
-
-
-/**
- @file
-*/
-
-
-#include "sha224and256.h"
-
-/**
- * SHA256 Constants
- * 
- * SHA-256 uses a sequence of sixty-four constant 32-bit words. 
- * These words represent the first thirty-two bits of the fractional 
- * parts of the cube roots of the first sixtyfour prime numbers.
- * 
- * FIPS 180-2 Section 4.2.2
- */
-const TUint K[64] = 
-	{
-	0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,	
-	0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
-	0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
-	0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
-	0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,
-	0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
-	0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,
-	0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
-	0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,
-	0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
-	0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 
-	0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
-	0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 
-	0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
-	0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,
-	0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
-	};
-
-/**
- * Define the SHA SIGMA and sigma macros 
- * 
- * FIPS 180-2 section 4.1.2
- */
-// Equation 4.4
-inline TUint SHA256_SIGMA0(TUint aWord)
-	{
-	return (SHA_ROTR<TUint>( 2,aWord) ^ SHA_ROTR<TUint>(13,aWord) ^ SHA_ROTR<TUint>(22,aWord));
-	}
-// Equation 4.5
-inline TUint SHA256_SIGMA1(TUint aWord)
-	{
-	return (SHA_ROTR<TUint>( 6,aWord) ^ SHA_ROTR<TUint>(11,aWord) ^ SHA_ROTR<TUint>(25,aWord));
-	}
-// Equation 4.6
-inline TUint SHA256_sigma0(TUint aWord)
-	{
-	return (SHA_ROTR<TUint>( 7,aWord) ^ SHA_ROTR<TUint>(18,aWord) ^ SHA_SHR<TUint>( 3,aWord));
-	}
-// Equation 4.7
-inline TUint SHA256_sigma1(TUint aWord)
-	{
-	return (SHA_ROTR<TUint>(17,aWord) ^ SHA_ROTR<TUint>(19,aWord) ^ SHA_SHR<TUint>(10,aWord));
-	}
-
-
-// Macros
-inline TUint MakeWord(const TUint8* aData)
-	{
-	return (aData[0] << 24 | aData[1] << 16 | aData[2] << 8 | aData[3]);
-	}
-
-	
-CSHA224And256* CSHA224And256::NewL()
-	{
-	CSHA224And256* self=new (ELeave) CSHA224And256();
-	return self;						
-	}
-														
-CSHA224And256::CSHA224And256() : iHash(KSHA256HashSize)
-	{		
-	}
-	
-CSHA224And256::CSHA224And256(const CSHA224And256& aSHAImpl)
-				: 	iHash(aSHAImpl.iHash),
-					iA(aSHAImpl.iA),
-					iB(aSHAImpl.iB),
-					iC(aSHAImpl.iC),
-					iD(aSHAImpl.iD),
-					iE(aSHAImpl.iE),
-					iF(aSHAImpl.iF),
-					iG(aSHAImpl.iG),
-					iH(aSHAImpl.iH),
-					iNl(aSHAImpl.iNl),
-					iNh(aSHAImpl.iNh)
-	{
-	Mem::Copy(iData, aSHAImpl.iData, KSHA256BlockSize*sizeof(TUint));
-	}
-	
-void CSHA224And256::Reset(const TAny* aValArray)
-	{
-	const TUint* values = static_cast<const TUint*>(aValArray);
-	iA=values[0];
-	iB=values[1];
-	iC=values[2];
-	iD=values[3];
-	iE=values[4];
-	iF=values[5];
-	iG=values[6];
-	iH=values[7];
-	iNh=0;
-	iNl=0;
-	}
-
-// This assumes a big-endian architecture
-void CSHA224And256::Update(const TUint8* aData,TUint aLength)
-	{
-	while((aLength / 4) > 0 && (iNl % 4 == 0))
-		{
-		iData[iNl>>2] = MakeWord(aData);
-		iNl+=4;
-		aData+=4;
-		aLength-=4;
-		if(iNl==KSHA256BlockSize) 
-			{
-			Block();
-			AddLength(KSHA256BlockSize);
-			}
-		}
-
-	while(aLength--)
-		{
-		if(!(iNl&0x03))
-			{
-			iData[iNl >> 2] = 0;
-			}
-		iData[iNl >> 2] |= *aData << ((3 - iNl&0x03) << 3) ;
-		++aData;
-		++iNl;
-		if(iNl==KSHA256BlockSize) 
-			{
-			Block();
-			AddLength(KSHA256BlockSize);
-			}
-		}
-	}
-
-//This function will panic if the total input length is longer than 2^64 in bits
-_LIT(KPanicString, "Message length exceeds supported length");
-inline void CSHA224And256::AddLength(const TUint aLength)
-	{
-	TUint64 temp = iNh;
-	iNh += aLength << 3;
-	__ASSERT_ALWAYS((temp <= iNh), User::Panic(KPanicString, KErrOverflow));
-	}
-
-
-static inline void CSHA256_16(	const TUint aA, 
-								const TUint aB, 
-								const TUint aC,
-								TUint& aD, 
-								const TUint aE, 
-								const TUint aF,
-								const TUint aG, 
-								TUint& aH,
-								TUint aTemp1,
-								TUint aTemp2,
-								const TUint aK,
-								const TUint aWord)
-	{
-	aTemp1 = aH + SHA256_SIGMA1(aE) + SHA_Ch(aE,aF,aG) + aK + aWord;
-	aTemp2 = SHA256_SIGMA0(aA) + SHA_Maj(aA,aB,aC);
-	aD = aD + aTemp1;
-	aH = aTemp1 + aTemp2;
-	}
-
-static inline void CSHA256_48(	const TUint aA, 
-								const TUint aB, 
-								const TUint aC,
-								TUint& aD, 
-								const TUint aE, 
-								const TUint aF,
-								const TUint aG, 
-								TUint& aH,
-								TUint aTemp1,
-								TUint aTemp2,
-								const TUint aK,
-								TUint& aWord0,
-								const TUint aWord2,
-								const TUint aWord7,
-								const TUint aWord15,
-								const TUint aWord16)
-	{
-	aWord0 = SHA256_sigma1(aWord2) + aWord7 + SHA256_sigma0(aWord15) + aWord16;
-	CSHA256_16(aA, aB, aC, aD, aE, aF, aG, aH, aTemp1, aTemp2, aK, aWord0);
-	}
-
-/**
- * This function actually calculates the hash.
- * Function is defined in FIPS 180-2 section 6.2.2
- * 
- * This function is the expanded version of the following loop.
- *	for(TUint i = 0; i < 64; ++i)
- *		{
- *		if(i >= 16)
- *			{
- * 			iData[i] = SHA256_sigma1(iData[i-2]) + iData[i-7] + SHA256_sigma0(iData[i-15]) + iData[i-16];
- *			}
- *
- *		temp1 = tempH + SHA256_SIGMA1(tempE) + SHA_Ch(tempE,tempF,tempG) + K[i] + iData[i];
- *		temp2 = SHA256_SIGMA0(tempA) + SHA_Maj(tempA,tempB,tempC);
- *	    tempH = tempG;
- *	    tempG = tempF;
- *	    tempF = tempE;
- *	    tempE = tempD + temp1;
- *	    tempD = tempC;
- *	    tempC = tempB;
- *	    tempB = tempA;
- *	    tempA = temp1 + temp2;		
- *		}
- */
-void CSHA224And256::Block()
-	{
-	TUint tempA=iA;
-	TUint tempB=iB;
-	TUint tempC=iC;
-	TUint tempD=iD;
-	TUint tempE=iE;
-	TUint tempF=iF;
-	TUint tempG=iG;
-	TUint tempH=iH;
-	TUint temp1=0;
-	TUint temp2=0;
-	
-	CSHA256_16(tempA,tempB,tempC,tempD,tempE,tempF,tempG,tempH,temp1,temp2,K[0],iData[0]);
-	CSHA256_16(tempH,tempA,tempB,tempC,tempD,tempE,tempF,tempG,temp1,temp2,K[1],iData[1]);
-	CSHA256_16(tempG,tempH,tempA,tempB,tempC,tempD,tempE,tempF,temp1,temp2,K[2],iData[2]);
-	CSHA256_16(tempF,tempG,tempH,tempA,tempB,tempC,tempD,tempE,temp1,temp2,K[3],iData[3]);
-	CSHA256_16(tempE,tempF,tempG,tempH,tempA,tempB,tempC,tempD,temp1,temp2,K[4],iData[4]);
-	CSHA256_16(tempD,tempE,tempF,tempG,tempH,tempA,tempB,tempC,temp1,temp2,K[5],iData[5]);
-	CSHA256_16(tempC,tempD,tempE,tempF,tempG,tempH,tempA,tempB,temp1,temp2,K[6],iData[6]);
-	CSHA256_16(tempB,tempC,tempD,tempE,tempF,tempG,tempH,tempA,temp1,temp2,K[7],iData[7]);
-
-	CSHA256_16(tempA,tempB,tempC,tempD,tempE,tempF,tempG,tempH,temp1,temp2,K[8],iData[8]);
-	CSHA256_16(tempH,tempA,tempB,tempC,tempD,tempE,tempF,tempG,temp1,temp2,K[9],iData[9]);
-	CSHA256_16(tempG,tempH,tempA,tempB,tempC,tempD,tempE,tempF,temp1,temp2,K[10],iData[10]);
-	CSHA256_16(tempF,tempG,tempH,tempA,tempB,tempC,tempD,tempE,temp1,temp2,K[11],iData[11]);
-	CSHA256_16(tempE,tempF,tempG,tempH,tempA,tempB,tempC,tempD,temp1,temp2,K[12],iData[12]);
-	CSHA256_16(tempD,tempE,tempF,tempG,tempH,tempA,tempB,tempC,temp1,temp2,K[13],iData[13]);
-	CSHA256_16(tempC,tempD,tempE,tempF,tempG,tempH,tempA,tempB,temp1,temp2,K[14],iData[14]);
-	CSHA256_16(tempB,tempC,tempD,tempE,tempF,tempG,tempH,tempA,temp1,temp2,K[15],iData[15]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[16], iData[16], iData[14], iData[9], iData[1], iData[0]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[17], iData[17], iData[15], iData[10], iData[2], iData[1]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[18], iData[18], iData[16], iData[11], iData[3], iData[2]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[19], iData[19], iData[17], iData[12], iData[4], iData[3]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[20], iData[20], iData[18], iData[13], iData[5], iData[4]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[21], iData[21], iData[19], iData[14], iData[6], iData[5]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[22], iData[22], iData[20], iData[15], iData[7], iData[6]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[23], iData[23], iData[21], iData[16], iData[8], iData[7]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[24], iData[24], iData[22], iData[17], iData[9], iData[8]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[25], iData[25], iData[23], iData[18], iData[10], iData[9]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[26], iData[26], iData[24], iData[19], iData[11], iData[10]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[27], iData[27], iData[25], iData[20], iData[12], iData[11]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[28], iData[28], iData[26], iData[21], iData[13], iData[12]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[29], iData[29], iData[27], iData[22], iData[14], iData[13]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[30], iData[30], iData[28], iData[23], iData[15], iData[14]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[31], iData[31], iData[29], iData[24], iData[16], iData[15]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[32], iData[32], iData[30], iData[25], iData[17], iData[16]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[33], iData[33], iData[31], iData[26], iData[18], iData[17]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[34], iData[34], iData[32], iData[27], iData[19], iData[18]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[35], iData[35], iData[33], iData[28], iData[20], iData[19]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[36], iData[36], iData[34], iData[29], iData[21], iData[20]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[37], iData[37], iData[35], iData[30], iData[22], iData[21]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[38], iData[38], iData[36], iData[31], iData[23], iData[22]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[39], iData[39], iData[37], iData[32], iData[24], iData[23]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[40], iData[40], iData[38], iData[33], iData[25], iData[24]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[41], iData[41], iData[39], iData[34], iData[26], iData[25]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[42], iData[42], iData[40], iData[35], iData[27], iData[26]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[43], iData[43], iData[41], iData[36], iData[28], iData[27]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[44], iData[44], iData[42], iData[37], iData[29], iData[28]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[45], iData[45], iData[43], iData[38], iData[30], iData[29]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[46], iData[46], iData[44], iData[39], iData[31], iData[30]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[47], iData[47], iData[45], iData[40], iData[32], iData[31]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[48], iData[48], iData[46], iData[41], iData[33], iData[32]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[49], iData[49], iData[47], iData[42], iData[34], iData[33]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[50], iData[50], iData[48], iData[43], iData[35], iData[34]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[51], iData[51], iData[49], iData[44], iData[36], iData[35]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[52], iData[52], iData[50], iData[45], iData[37], iData[36]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[53], iData[53], iData[51], iData[46], iData[38], iData[37]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[54], iData[54], iData[52], iData[47], iData[39], iData[38]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[55], iData[55], iData[53], iData[48], iData[40], iData[39]);
-
-	CSHA256_48(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[56], iData[56], iData[54], iData[49], iData[41], iData[40]);
-	CSHA256_48(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[57], iData[57], iData[55], iData[50], iData[42], iData[41]);
-	CSHA256_48(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[58], iData[58], iData[56], iData[51], iData[43], iData[42]);
-	CSHA256_48(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[59], iData[59], iData[57], iData[52], iData[44], iData[43]);
-	CSHA256_48(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[60], iData[60], iData[58], iData[53], iData[45], iData[44]);
-	CSHA256_48(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[61], iData[61], iData[59], iData[54], iData[46], iData[45]);
-	CSHA256_48(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[62], iData[62], iData[60], iData[55], iData[47], iData[46]);
-	CSHA256_48(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[63], iData[63], iData[61], iData[56], iData[48], iData[47]);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	iE+=tempE;
-	iF+=tempF;
-	iG+=tempG;
-	iH+=tempH;
-
-	iNl=0;
-	}
-
-/**
- * According to the standard, the message must be padded to an
- * even 512 bits. The first padding bit must be a '1'. The last
- * 64 bits represent the length of the original message. All bits 
- * in between should be 0. This helper function will pad the 
- * message according to those rules by filling the iData array 
- * accordingly. 
- */ 
-void CSHA224And256::PadMessage()
-	{
-	const TUint padByte = 0x80;
-	
-	if(!(iNl&0x03))
-		{
-		iData[iNl >> 2] = 0;
-		}
-	iData[iNl >> 2] |= padByte << ((3 - iNl&0x03) << 3) ;
-
-	if (iNl >= (KSHA256BlockSize - 2*sizeof(TUint))) 
-		{
-		if (iNl < (KSHA256BlockSize - sizeof(TUint)))
-			iData[(KSHA256BlockSize >> 2) - 1]=0;		
-		Block();
-		Mem::FillZ(iData, KSHA256BlockSize);
-		} 
-	else
-		{
-		const TUint offset=(iNl+4)>>2; //+4 to account for the word added in the
-		//switch statement above
-		Mem::FillZ(iData+offset,(KSHA256BlockSize - offset*sizeof(TUint)));
-		}
-
-	//Length in bits
-	TUint64 msgLength = iNh;
-
-	iData[(KSHA256BlockSize >> 2) - 2] = (msgLength) >> 32;
-	iData[(KSHA256BlockSize >> 2) - 1] = (msgLength & 0xFFFFFFFF);	
-	}
-
-inline void CSHA224And256::CopyWordToHash(TUint aVal, TUint aIndex)
-	{
-	TUint value = MakeWord(reinterpret_cast<TUint8*>(&aVal));
-	Mem::Copy(const_cast<TUint8*>(iHash.Ptr())+ (4*aIndex), &value, sizeof(aVal));
-	}
-
-const TDes8& CSHA224And256::Final()
-	{
-	AddLength(iNl);
-	PadMessage();
-	Block();
-	//
-	// Generate hash value into iHash
-	//
-	CopyWordToHash(iA, 0);
-	CopyWordToHash(iB, 1);
-	CopyWordToHash(iC, 2);
-	CopyWordToHash(iD, 3);
-	CopyWordToHash(iE, 4);
-	CopyWordToHash(iF, 5);
-	CopyWordToHash(iG, 6);
-	CopyWordToHash(iH, 7);
-	
-	return iHash;
-	}
-
-void CSHA224And256::RestoreState()
-	{
-	iA = iACopy;
-	iB = iBCopy;
-	iC = iCCopy;
-	iD = iDCopy;
-	iE = iECopy;
-	iF = iFCopy;
-	iG = iGCopy;
-	iH = iHCopy;
-	iNl = iNlCopy;
-	iNh = iNhCopy;	
-	Mem::Copy(iData, iDataCopy, KSHA256BlockSize*sizeof(TUint)); 
-	}
-
-void CSHA224And256::StoreState()
-	{
-	iACopy = iA;
-	iBCopy = iB;
-	iCCopy = iC;
-	iDCopy = iD;
-	iECopy = iE;
-	iFCopy = iF;
-	iGCopy = iG;
-	iHCopy = iH;
-	iNlCopy = iNl;
-	iNhCopy = iNh;	
-	Mem::Copy(iDataCopy, iData, KSHA256BlockSize*sizeof(TUint));
-	}
-
-// Implemented in hmacimpl.cpp or softwarehashbase.cpp
-// but required as derived from MHash. No coverage here.
-#ifdef _BullseyeCoverage
-#pragma suppress_warnings on
-#pragma BullseyeCoverage off
-#pragma suppress_warnings off
-#endif
-
--- a/crypto/weakcrypto/source/hash/sha224and256.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-
-
-#ifndef __CRYPTO_SHA224AND256_H_
-#define __CRYPTO_SHA224AND256_H_
-
-
-#include "shacommon.h"
-
-const TInt KSHA256BlockSize	= 64;
-const TInt KSHA224HashSize	= 28;
-const TInt KSHA256HashSize	= 32;
-		
-NONSHARABLE_CLASS(CSHA224And256) : public CBase, public MSHA2Impl
-	{	
-public:
-	//NewL	
-	static CSHA224And256* NewL();
-	CSHA224And256(const CSHA224And256& aSHAImpl);
-	
-	// Functions from MSHA2Impl
-	virtual void RestoreState();
-	virtual void StoreState();
-	virtual void Reset(const TAny*);
-	virtual void Update(const TUint8* aData,TUint aLength);
-	virtual const TDes8& Final(void);
-
-private:
-	//Constructors
-	CSHA224And256();
-	inline void AddLength(const TUint aLength);
-	inline void CopyWordToHash(TUint aVal, TUint aIndex);
-	void Block();
-	void PadMessage();
-
-private:
-	TBuf8<KSHA256HashSize> iHash;
-	TUint iA;
-	TUint iB;
-	TUint iC;
-	TUint iD;
-	TUint iE;
-	TUint iF;
-	TUint iG;
-	TUint iH;
-	TUint iData[KSHA256BlockSize];
-
-	TUint iACopy;
-	TUint iBCopy;
-	TUint iCCopy;
-	TUint iDCopy;
-	TUint iECopy;
-	TUint iFCopy;
-	TUint iGCopy;
-	TUint iHCopy;
-	TUint iNlCopy;
-	TUint iNhCopy;	
-	TUint iDataCopy[KSHA256BlockSize];
-	
-	TUint iNl;
-	TUint64 iNh;
-	};
-
-#endif // __CRYPTO_SHA224AND256_H_
--- a/crypto/weakcrypto/source/hash/sha384and512.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,527 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Common implementation of SHA384 and SHA512
-* RFC 4634 (US Secure Hash Algorithms (SHA and HMAC-SHA))
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "sha384and512.h"
-
-/**
- * SHA512 Constants
- * 
- * SHA-512 uses a sequence of eighty constant 64-bit words. 
- * These words represent the first sixty-four bits of the fractional 
- * parts of the cube roots of the first eighty prime numbers.
- * 
- * FIPS 180-2 Section 4.2.3
- */
-const TUint64 K[80] = 
-	{
-	UI64LIT(0x428a2f98d728ae22), UI64LIT(0x7137449123ef65cd), UI64LIT(0xb5c0fbcfec4d3b2f), UI64LIT(0xe9b5dba58189dbbc),
-	UI64LIT(0x3956c25bf348b538), UI64LIT(0x59f111f1b605d019), UI64LIT(0x923f82a4af194f9b), UI64LIT(0xab1c5ed5da6d8118),
-	UI64LIT(0xd807aa98a3030242), UI64LIT(0x12835b0145706fbe), UI64LIT(0x243185be4ee4b28c), UI64LIT(0x550c7dc3d5ffb4e2),
-	UI64LIT(0x72be5d74f27b896f), UI64LIT(0x80deb1fe3b1696b1), UI64LIT(0x9bdc06a725c71235), UI64LIT(0xc19bf174cf692694),
-	UI64LIT(0xe49b69c19ef14ad2), UI64LIT(0xefbe4786384f25e3), UI64LIT(0x0fc19dc68b8cd5b5), UI64LIT(0x240ca1cc77ac9c65),
-	UI64LIT(0x2de92c6f592b0275), UI64LIT(0x4a7484aa6ea6e483), UI64LIT(0x5cb0a9dcbd41fbd4), UI64LIT(0x76f988da831153b5),
-	UI64LIT(0x983e5152ee66dfab), UI64LIT(0xa831c66d2db43210), UI64LIT(0xb00327c898fb213f), UI64LIT(0xbf597fc7beef0ee4),
-	UI64LIT(0xc6e00bf33da88fc2), UI64LIT(0xd5a79147930aa725), UI64LIT(0x06ca6351e003826f), UI64LIT(0x142929670a0e6e70),
-	UI64LIT(0x27b70a8546d22ffc), UI64LIT(0x2e1b21385c26c926), UI64LIT(0x4d2c6dfc5ac42aed), UI64LIT(0x53380d139d95b3df),
-	UI64LIT(0x650a73548baf63de), UI64LIT(0x766a0abb3c77b2a8), UI64LIT(0x81c2c92e47edaee6), UI64LIT(0x92722c851482353b),
-	UI64LIT(0xa2bfe8a14cf10364), UI64LIT(0xa81a664bbc423001), UI64LIT(0xc24b8b70d0f89791), UI64LIT(0xc76c51a30654be30),
-	UI64LIT(0xd192e819d6ef5218), UI64LIT(0xd69906245565a910), UI64LIT(0xf40e35855771202a), UI64LIT(0x106aa07032bbd1b8),
-	UI64LIT(0x19a4c116b8d2d0c8), UI64LIT(0x1e376c085141ab53), UI64LIT(0x2748774cdf8eeb99), UI64LIT(0x34b0bcb5e19b48a8),
-	UI64LIT(0x391c0cb3c5c95a63), UI64LIT(0x4ed8aa4ae3418acb), UI64LIT(0x5b9cca4f7763e373), UI64LIT(0x682e6ff3d6b2b8a3),
-	UI64LIT(0x748f82ee5defb2fc), UI64LIT(0x78a5636f43172f60), UI64LIT(0x84c87814a1f0ab72), UI64LIT(0x8cc702081a6439ec),
-	UI64LIT(0x90befffa23631e28), UI64LIT(0xa4506cebde82bde9), UI64LIT(0xbef9a3f7b2c67915), UI64LIT(0xc67178f2e372532b),
-	UI64LIT(0xca273eceea26619c), UI64LIT(0xd186b8c721c0c207), UI64LIT(0xeada7dd6cde0eb1e), UI64LIT(0xf57d4f7fee6ed178),
-	UI64LIT(0x06f067aa72176fba), UI64LIT(0x0a637dc5a2c898a6), UI64LIT(0x113f9804bef90dae), UI64LIT(0x1b710b35131c471b),
-	UI64LIT(0x28db77f523047d84), UI64LIT(0x32caab7b40c72493), UI64LIT(0x3c9ebe0a15c9bebc), UI64LIT(0x431d67c49c100d4c),
-	UI64LIT(0x4cc5d4becb3e42b6), UI64LIT(0x597f299cfc657e2a), UI64LIT(0x5fcb6fab3ad6faec), UI64LIT(0x6c44198c4a475817)
-	};
-
-/**
- * Define the SHA SIGMA and sigma macros 
- * 
- * FIPS 180-2 section 4.1.3
- */
-// Equation 4.10
-inline TUint64 SHA512_SIGMA0(TUint64 aWord)
-	{
-	return (SHA_ROTR<TUint64>(28,aWord) ^ SHA_ROTR<TUint64>(34,aWord) ^ SHA_ROTR<TUint64>(39,aWord));
-	}
-// Equation 4.11
-inline TUint64 SHA512_SIGMA1(TUint64 aWord)
-	{
-	return (SHA_ROTR<TUint64>(14,aWord) ^ SHA_ROTR<TUint64>(18,aWord) ^ SHA_ROTR<TUint64>(41,aWord));
-	}
-// Equation 4.12
-inline TUint64 SHA512_sigma0(TUint64 aWord)
-	{
-	return (SHA_ROTR<TUint64>(1, aWord) ^ SHA_ROTR<TUint64>(8, aWord) ^ SHA_SHR<TUint64>(7, aWord));
-	}
-// Equation 4.13
-inline TUint64 SHA512_sigma1(TUint64 aWord)
-	{
-	return (SHA_ROTR<TUint64>(19,aWord) ^ SHA_ROTR<TUint64>(61,aWord) ^ SHA_SHR<TUint64>(6,aWord));
-	}
-
-// Macros
-inline TUint64 Make64BitWord(const TUint8* aData)
-	{
-	TUint64 result = (TUint64)aData[0] << 56 | (TUint64)aData[1] << 48 | (TUint64)aData[2] << 40 | 
-					 (TUint64)aData[3] << 32 | (TUint64)aData[4] << 24 | (TUint64)aData[5] << 16 |
-					 (TUint64)aData[6] << 8 | (TUint64)aData[7];
-	return result;
-	}
-
-
-CSHA384And512* CSHA384And512::NewL()
-	{
-	CSHA384And512* self=new (ELeave) CSHA384And512();
-	return self;						
-	}
-														
-CSHA384And512::CSHA384And512() : iHash(KSHA512HashSize)
-	{		
-	}
-	
-CSHA384And512::CSHA384And512(const CSHA384And512& aSHAImpl)
-				: 	iHash(aSHAImpl.iHash),
-					iA(aSHAImpl.iA),
-					iB(aSHAImpl.iB),
-					iC(aSHAImpl.iC),
-					iD(aSHAImpl.iD),
-					iE(aSHAImpl.iE),
-					iF(aSHAImpl.iF),
-					iG(aSHAImpl.iG),
-					iH(aSHAImpl.iH),
-					iNl(aSHAImpl.iNl),
-					iNh(aSHAImpl.iNh),
-					iBlockIndex(aSHAImpl.iBlockIndex)
-	{
-	Mem::Copy(iData, aSHAImpl.iData, KSHA512BlockSize*sizeof(TUint64));
-	}
-	
-void CSHA384And512::Reset(const TAny* aValueArr)
-	{
-	const TUint64* values = static_cast<const TUint64*>(aValueArr);
-
-	iA = values[0];
-	iB = values[1];
-	iC = values[2];
-	iD = values[3];
-	iE = values[4];
-	iF = values[5];
-	iG = values[6];
-	iH = values[7];
-	iNh = 0;
-	iNl = 0;
-	iBlockIndex = 0;
-	}
-
-//This function will panic if the total input length is longer than 2^128 in bits
-_LIT(KPanicString, "Message length exceeds supported length");
-inline void CSHA384And512::AddLength(const TUint64 aLength)
-	{
-	TUint64 temp = iNl;
-	iNl += aLength << 3;
-	__ASSERT_ALWAYS(((iNh != KMaxTUint64) || (temp <= iNl)), User::Panic(KPanicString, KErrOverflow));
-	iNh += (temp > iNl);
-	}
-
-// This assumes a big-endian architecture
-void CSHA384And512::Update(const TUint8* aData,TUint aLength)
-	{
-	while((aLength / 8) > 0 && (iBlockIndex % 8 == 0))
-		{
-		iData[iBlockIndex>>3] = Make64BitWord(aData);
-		iBlockIndex+=8;
-		aData+=8;
-		aLength-=8;
-		if(iBlockIndex==KSHA512BlockSize) 
-			{
-			Block();
-			AddLength(KSHA512BlockSize);
-			}
-		}
-
-	while(aLength--)
-		{
-		if(!(iBlockIndex&0x07))
-			{
-			iData[iBlockIndex >> 3] = 0;
-			}
-		iData[iBlockIndex >> 3] |= static_cast<TUint64>(*aData) << ((7 - iBlockIndex&0x07) << 3) ;
-		++aData;
-		++iBlockIndex;
-		if(iBlockIndex==KSHA512BlockSize) 
-			{
-			Block();
-			AddLength(KSHA512BlockSize);
-			}
-		}
-	}
-
-static inline void CSHA512_16(	const TUint64 aA, 
-								const TUint64 aB, 
-								const TUint64 aC,
-								TUint64& aD, 
-								const TUint64 aE, 
-								const TUint64 aF,
-								const TUint64 aG, 
-								TUint64& aH,
-								TUint64 aTemp1,
-								TUint64 aTemp2,
-								const TUint64 aK,
-								const TUint64 aWord)
-	{
-	aTemp1 = aH + SHA512_SIGMA1(aE) + SHA_Ch(aE,aF,aG) + aK + aWord;
-	aTemp2 = SHA512_SIGMA0(aA) + SHA_Maj(aA,aB,aC);
-	aD = aD + aTemp1;
-	aH = aTemp1 + aTemp2;
-	}
-
-static inline void CSHA512_64(	const TUint64 aA, 
-								const TUint64 aB, 
-								const TUint64 aC,
-								TUint64& aD, 
-								const TUint64 aE, 
-								const TUint64 aF,
-								const TUint64 aG, 
-								TUint64& aH,
-								TUint64 aTemp1,
-								TUint64 aTemp2,
-								const TUint64 aK,
-								TUint64& aWord0,
-								const TUint64 aWord2,
-								const TUint64 aWord7,
-								const TUint64 aWord15,
-								const TUint64 aWord16)
-	{
-	aWord0 = SHA512_sigma1(aWord2) + aWord7 + SHA512_sigma0(aWord15) + aWord16;
-	CSHA512_16(aA, aB, aC, aD, aE, aF, aG, aH, aTemp1, aTemp2, aK, aWord0);
-	}
-
-/**
- * This function actually calculates the hash.
- * Function is defined in FIPS 180-2 section 6.3.2
- * 
- * This function is the expanded version of the following loop.
- *	for(TUint i = 0; i < 80; ++i)
- *		{
- *		if(i >= 16)
- *			{
- *			iData[i] = SHA512_sigma1(iData[i-2]) + iData[i-7] + SHA512_sigma0(iData[i-15]) + iData[i-16];
- *			}
- *
- *		temp1 = tempH + SHA512_SIGMA1(tempE) + SHA_Ch(tempE,tempF,tempG) + K[i] + iData[i];
- *	    temp2 = SHA512_SIGMA0(tempA) + SHA_Maj(tempA,tempB,tempC);
- *	    tempH = tempG;
- *	    tempG = tempF;
- *	    tempF = tempE;
- *	    tempE = tempD + temp1;
- *	    tempD = tempC;
- *	    tempC = tempB;
- *	    tempB = tempA;
- *	    tempA = temp1 + temp2;		
- *		}
- */
-void CSHA384And512::Block()
-	{
-	TUint64 tempA=iA;
-	TUint64 tempB=iB;
-	TUint64 tempC=iC;
-	TUint64 tempD=iD;
-	TUint64 tempE=iE;
-	TUint64 tempF=iF;
-	TUint64 tempG=iG;
-	TUint64 tempH=iH;
-	TUint64 temp1=0;
-	TUint64 temp2=0;
-	
-	CSHA512_16(tempA,tempB,tempC,tempD,tempE,tempF,tempG,tempH,temp1,temp2,K[0],iData[0]);
-	CSHA512_16(tempH,tempA,tempB,tempC,tempD,tempE,tempF,tempG,temp1,temp2,K[1],iData[1]);
-	CSHA512_16(tempG,tempH,tempA,tempB,tempC,tempD,tempE,tempF,temp1,temp2,K[2],iData[2]);
-	CSHA512_16(tempF,tempG,tempH,tempA,tempB,tempC,tempD,tempE,temp1,temp2,K[3],iData[3]);
-	CSHA512_16(tempE,tempF,tempG,tempH,tempA,tempB,tempC,tempD,temp1,temp2,K[4],iData[4]);
-	CSHA512_16(tempD,tempE,tempF,tempG,tempH,tempA,tempB,tempC,temp1,temp2,K[5],iData[5]);
-	CSHA512_16(tempC,tempD,tempE,tempF,tempG,tempH,tempA,tempB,temp1,temp2,K[6],iData[6]);
-	CSHA512_16(tempB,tempC,tempD,tempE,tempF,tempG,tempH,tempA,temp1,temp2,K[7],iData[7]);
-
-	CSHA512_16(tempA,tempB,tempC,tempD,tempE,tempF,tempG,tempH,temp1,temp2,K[8],iData[8]);
-	CSHA512_16(tempH,tempA,tempB,tempC,tempD,tempE,tempF,tempG,temp1,temp2,K[9],iData[9]);
-	CSHA512_16(tempG,tempH,tempA,tempB,tempC,tempD,tempE,tempF,temp1,temp2,K[10],iData[10]);
-	CSHA512_16(tempF,tempG,tempH,tempA,tempB,tempC,tempD,tempE,temp1,temp2,K[11],iData[11]);
-	CSHA512_16(tempE,tempF,tempG,tempH,tempA,tempB,tempC,tempD,temp1,temp2,K[12],iData[12]);
-	CSHA512_16(tempD,tempE,tempF,tempG,tempH,tempA,tempB,tempC,temp1,temp2,K[13],iData[13]);
-	CSHA512_16(tempC,tempD,tempE,tempF,tempG,tempH,tempA,tempB,temp1,temp2,K[14],iData[14]);
-	CSHA512_16(tempB,tempC,tempD,tempE,tempF,tempG,tempH,tempA,temp1,temp2,K[15],iData[15]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[16], iData[16], iData[14], iData[9], iData[1], iData[0]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[17], iData[17], iData[15], iData[10], iData[2], iData[1]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[18], iData[18], iData[16], iData[11], iData[3], iData[2]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[19], iData[19], iData[17], iData[12], iData[4], iData[3]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[20], iData[20], iData[18], iData[13], iData[5], iData[4]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[21], iData[21], iData[19], iData[14], iData[6], iData[5]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[22], iData[22], iData[20], iData[15], iData[7], iData[6]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[23], iData[23], iData[21], iData[16], iData[8], iData[7]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[24], iData[24], iData[22], iData[17], iData[9], iData[8]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[25], iData[25], iData[23], iData[18], iData[10], iData[9]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[26], iData[26], iData[24], iData[19], iData[11], iData[10]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[27], iData[27], iData[25], iData[20], iData[12], iData[11]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[28], iData[28], iData[26], iData[21], iData[13], iData[12]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[29], iData[29], iData[27], iData[22], iData[14], iData[13]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[30], iData[30], iData[28], iData[23], iData[15], iData[14]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[31], iData[31], iData[29], iData[24], iData[16], iData[15]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[32], iData[32], iData[30], iData[25], iData[17], iData[16]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[33], iData[33], iData[31], iData[26], iData[18], iData[17]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[34], iData[34], iData[32], iData[27], iData[19], iData[18]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[35], iData[35], iData[33], iData[28], iData[20], iData[19]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[36], iData[36], iData[34], iData[29], iData[21], iData[20]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[37], iData[37], iData[35], iData[30], iData[22], iData[21]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[38], iData[38], iData[36], iData[31], iData[23], iData[22]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[39], iData[39], iData[37], iData[32], iData[24], iData[23]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[40], iData[40], iData[38], iData[33], iData[25], iData[24]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[41], iData[41], iData[39], iData[34], iData[26], iData[25]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[42], iData[42], iData[40], iData[35], iData[27], iData[26]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[43], iData[43], iData[41], iData[36], iData[28], iData[27]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[44], iData[44], iData[42], iData[37], iData[29], iData[28]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[45], iData[45], iData[43], iData[38], iData[30], iData[29]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[46], iData[46], iData[44], iData[39], iData[31], iData[30]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[47], iData[47], iData[45], iData[40], iData[32], iData[31]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[48], iData[48], iData[46], iData[41], iData[33], iData[32]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[49], iData[49], iData[47], iData[42], iData[34], iData[33]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[50], iData[50], iData[48], iData[43], iData[35], iData[34]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[51], iData[51], iData[49], iData[44], iData[36], iData[35]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[52], iData[52], iData[50], iData[45], iData[37], iData[36]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[53], iData[53], iData[51], iData[46], iData[38], iData[37]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[54], iData[54], iData[52], iData[47], iData[39], iData[38]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[55], iData[55], iData[53], iData[48], iData[40], iData[39]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[56], iData[56], iData[54], iData[49], iData[41], iData[40]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[57], iData[57], iData[55], iData[50], iData[42], iData[41]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[58], iData[58], iData[56], iData[51], iData[43], iData[42]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[59], iData[59], iData[57], iData[52], iData[44], iData[43]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[60], iData[60], iData[58], iData[53], iData[45], iData[44]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[61], iData[61], iData[59], iData[54], iData[46], iData[45]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[62], iData[62], iData[60], iData[55], iData[47], iData[46]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[63], iData[63], iData[61], iData[56], iData[48], iData[47]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[64], iData[64], iData[62], iData[57], iData[49], iData[48]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[65], iData[65], iData[63], iData[58], iData[50], iData[49]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[66], iData[66], iData[64], iData[59], iData[51], iData[50]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[67], iData[67], iData[65], iData[60], iData[52], iData[51]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[68], iData[68], iData[66], iData[61], iData[53], iData[52]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[69], iData[69], iData[67], iData[62], iData[54], iData[53]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[70], iData[70], iData[68], iData[63], iData[55], iData[54]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[71], iData[71], iData[69], iData[64], iData[56], iData[55]);
-
-	CSHA512_64(	tempA, tempB, tempC, tempD, tempE, tempF, tempG, tempH, temp1, temp2,
-				K[72], iData[72], iData[70], iData[65], iData[57], iData[56]);
-	CSHA512_64(	tempH, tempA, tempB, tempC, tempD, tempE, tempF, tempG, temp1, temp2,
-				K[73], iData[73], iData[71], iData[66], iData[58], iData[57]);
-	CSHA512_64(	tempG, tempH, tempA, tempB, tempC, tempD, tempE, tempF, temp1, temp2,
-				K[74], iData[74], iData[72], iData[67], iData[59], iData[58]);
-	CSHA512_64(	tempF, tempG, tempH, tempA, tempB, tempC, tempD, tempE, temp1, temp2,
-				K[75], iData[75], iData[73], iData[68], iData[60], iData[59]);
-	CSHA512_64(	tempE, tempF, tempG, tempH, tempA, tempB, tempC, tempD, temp1, temp2,
-				K[76], iData[76], iData[74], iData[69], iData[61], iData[60]);
-	CSHA512_64(	tempD, tempE, tempF, tempG, tempH, tempA, tempB, tempC, temp1, temp2,
-				K[77], iData[77], iData[75], iData[70], iData[62], iData[61]);
-	CSHA512_64(	tempC, tempD, tempE, tempF, tempG, tempH, tempA, tempB, temp1, temp2,
-				K[78], iData[78], iData[76], iData[71], iData[63], iData[62]);
-	CSHA512_64(	tempB, tempC, tempD, tempE, tempF, tempG, tempH, tempA, temp1, temp2,
-				K[79], iData[79], iData[77], iData[72], iData[64], iData[63]);
-
-	iA+=tempA;
-	iB+=tempB;
-	iC+=tempC;
-	iD+=tempD;
-	iE+=tempE;
-	iF+=tempF;
-	iG+=tempG;
-	iH+=tempH;
-
-	iBlockIndex=0;
-	}
-
-/**
- * According to the standard, the message must be padded to an
- * even 512 bits. The first padding bit must be a '1'. The last
- * 64 bits represent the length of the original message. All bits 
- * in between should be 0. This helper function will pad the 
- * message according to those rules by filling the iData array 
- * accordingly. 
- */ 
-void CSHA384And512::PadMessage()
-	{
-	const TUint64 padByte = 0x80;
-	
-	if(!(iBlockIndex&0x07))
-		{
-		iData[iBlockIndex >> 3] = 0;
-		}
-	iData[iBlockIndex >> 3] |= padByte << ((7 - iBlockIndex&0x07) << 3) ;
-	
-	if (iBlockIndex >= (KSHA512BlockSize - 2*sizeof(TUint64))) 
-		{
-		if (iBlockIndex < (KSHA512BlockSize - sizeof(TUint64)))
-			iData[(KSHA512BlockSize>>3)-1]=0;		
-		Block();
-		Mem::FillZ(iData,KSHA512BlockSize);
-		} 
-	else
-		{
-		const TUint offset=(iBlockIndex+8)>>3; //+8 to account for the word added in the
-		//switch statement above
-		Mem::FillZ(iData+offset, (KSHA512BlockSize - offset*sizeof(TUint64)));
-		}
-
-	iData[(KSHA512BlockSize >> 3) - 2] = iNh;
-	iData[(KSHA512BlockSize >> 3) - 1] = iNl;	
-	}
-
-inline void CSHA384And512::CopyWordToHash(TUint64 aVal, TUint aIndex)
-	{
-	TUint64 value = Make64BitWord(reinterpret_cast<TUint8*>(&aVal));
-	Mem::Copy(const_cast<TUint8*>(iHash.Ptr())+ (8*aIndex), &value, sizeof(aVal));
-	}
-
-const TDesC8& CSHA384And512::Final()
-	{
-	AddLength(iBlockIndex);
-	PadMessage();
-	Block();
-	//
-	// Generate hash value into iHash
-	//
-	CopyWordToHash(iA, 0);
-	CopyWordToHash(iB, 1);
-	CopyWordToHash(iC, 2);
-	CopyWordToHash(iD, 3);
-	CopyWordToHash(iE, 4);
-	CopyWordToHash(iF, 5);
-	CopyWordToHash(iG, 6);
-	CopyWordToHash(iH, 7);
-	
-	return iHash;
-	}
-
-void CSHA384And512::RestoreState()
-	{
-	iA = iACopy;
-	iB = iBCopy;
-	iC = iCCopy;
-	iD = iDCopy;
-	iE = iECopy;
-	iF = iFCopy;
-	iG = iGCopy;
-	iH = iHCopy;
-	iNl = iNlCopy;
-	iNh = iNhCopy;	
-	iBlockIndex = iBlockIndexCopy;
-	Mem::Copy((TAny*)iData, (TAny*)iDataCopy, KSHA512BlockSize*sizeof(TUint64)); 
-	}
-
-void CSHA384And512::StoreState()
-	{
-	iACopy = iA;
-	iBCopy = iB;
-	iCCopy = iC;
-	iDCopy = iD;
-	iECopy = iE;
-	iFCopy = iF;
-	iGCopy = iG;
-	iHCopy = iH;
-	iNlCopy = iNl;
-	iNhCopy = iNh;	
-	iBlockIndexCopy = iBlockIndex;
-	Mem::Copy((TAny*)iDataCopy, (TAny*)iData, KSHA512BlockSize*sizeof(TUint64));
-	}
-
-// Implemented in hmacimpl.cpp or softwarehashbase.cpp
-// but required as derived from MHash. No coverage here.
-#ifdef _BullseyeCoverage
-#pragma suppress_warnings on
-#pragma BullseyeCoverage off
-#pragma suppress_warnings off
-#endif
-
--- a/crypto/weakcrypto/source/hash/sha384and512.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-
-
-#ifndef __CRYPTO_SHA384AND512_H_
-#define __CRYPTO_SHA384AND512_H_
-
-
-#include "shacommon.h"
-
-const TInt KSHA512BlockSize	= 128;
-const TInt KSHA384HashSize	= 48;
-const TInt KSHA512HashSize	= 64;
-		
-NONSHARABLE_CLASS(CSHA384And512) : public CBase, public MSHA2Impl
-	{	
-public:
-	//NewL	
-	static CSHA384And512* NewL();
-	CSHA384And512(const CSHA384And512& aSHAImpl);
-	
-	//From MSHAImpl
-	virtual void Reset(const TAny* aValueArr);
-	virtual const TDesC8& Final(void);
-	virtual void Update(const TUint8* aData,TUint aLength);
-	virtual void StoreState();
-	virtual void RestoreState();
-
-private:
-	//Constructors
-	CSHA384And512();
-
-private:
-	// Private member functions
-	/**
-	 * @param aLength - Length of message added in bytes.
-	 */ 
-	inline void AddLength(const TUint64 aLength);
-	inline void CopyWordToHash(TUint64 aVal, TUint aIndex);
-	void Block();
-	void PadMessage();
-
-private:
-	TBuf8<KSHA512HashSize> iHash;
-	TUint64 iA;
-	TUint64 iB;
-	TUint64 iC;
-	TUint64 iD;
-	TUint64 iE;
-	TUint64 iF;
-	TUint64 iG;
-	TUint64 iH;
-	TUint64 iData[KSHA512BlockSize];
-
-	TUint64 iACopy;
-	TUint64 iBCopy;
-	TUint64 iCCopy;
-	TUint64 iDCopy;
-	TUint64 iECopy;
-	TUint64 iFCopy;
-	TUint64 iGCopy;
-	TUint64 iHCopy;
-	TUint64 iNlCopy;
-	TUint64 iNhCopy;
-	TUint	iBlockIndexCopy;
-	TUint64 iDataCopy[KSHA512BlockSize];
-	
-	TUint64 iNl; // Lower word of Message Length
-	TUint64 iNh; // Higher word of Message Length
-	TUint iBlockIndex; // Message Length in the current block
-	};
-
-#endif // __CRYPTO_SHA384AND512_H_
--- a/crypto/weakcrypto/source/hash/shacommon.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,119 +0,0 @@
-#ifndef __CRYPTO_SHACOMMON_H_
-#define __CRYPTO_SHACOMMON_H_
-
-#include <e32base.h>/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Same as used in SHA1
-* SHA_CH		> CSHA1_F
-* SHA_Maj		> CSHA1_H
-* SHA_Parity	> CSHA1_G
-* The following definitions are equivalent and potentially faster.
-* #define SHA_Ch(x, y, z)      (((x) & ((y) ^ (z))) ^ (z))
-* #define SHA_Maj(x, y, z)     (((x) & ((y) | (z))) | ((y) & (z)))
-* These functions are defined in FIPS 180-2 Section 4.1
-* Equation 4.1, 4.2, 4.3, 4.8, 4.9
-*
-*/
-
-
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-template<typename T>
-inline T SHA_Ch(T aX, T aY, T aZ)
-	{
-	return ((aX & aY) ^ ((~aX) & aZ));
-	}
-
-template<typename T>
-inline T SHA_Maj(T aX, T aY, T aZ)
-	{
-	return ((aX & aY) ^ (aX & aZ) ^ (aY & aZ));
-	}
-
-template<typename T>
-inline T SHA_Parity(T aX, T aY, T aZ)
-	{
-	return (aX ^ aY ^ aZ);
-	}
-
-/**
- * Define the SHA shift, and rotate right macro 
- * Defined in FIPS 180-2 Section 3.2
- */
-/** 
- * SHA Right Shift operation: The right shift operation SHR^n(x), 
- * where x is a w-bit word and n is an integer with 0 <= n < w, 
- * is defined by  SHR^n(x) = x >> n.
- */
-template<typename T>
-inline T SHA_SHR(T aBits, T aWord)
-	{
-	return (aWord >> aBits);
-	}
-
-/**
- * SHA Rotate Right Operation: The rotate right (circular right shift) operation
- * ROTR^n(x), where x is a w-bit word and n is an integer with 0 <= n < w, 
- * is defined by ROTR n(x)=(x >> n) || (x << w - n).
- */
-template<typename T>
-inline T SHA_ROTR(T aBits, T aWord)
-	{
-	TInt totalBits = sizeof(T) << 3;
-	return ((aWord >> aBits) | (aWord << (totalBits-aBits)));
-	}
-
-NONSHARABLE_CLASS(MSHA2Impl)
-	{
-public:
-	/**
-	 * This function will reset the state of hash.
-	 */
-	virtual void Reset(const TAny*) = 0;
-	/**
-	 * This function will finalize the hash and return
-	 * the calculated hash.
-	 * @return Final hash
-	 */ 
-	virtual const TDesC8& Final() = 0;
-	/**
-	 * This function will add the message to the internal
-	 * buffer and if the block size is reached then calcualte
-	 * the hash till that point.
-	 * @param aMessage Message to be updated.
-	 * @param aLength Length of the message to be updated.
-	 */ 
-	virtual void Update(const TUint8* aMessage, TUint aLength) = 0;
-	/**
-	 * This function will save the internal state of the hash.
-	 */ 
-	virtual void StoreState() = 0;
-	/**
-	 * This function will retrieve the saved the internal state 
-	 * of the hash.
-	 */ 
-	virtual void RestoreState() = 0;
-	/**
-	 * virtual distructor.
-	 */
-	virtual ~MSHA2Impl(){}
-	};
-
-#endif //__CRYPTO_SHACOMMON_H_
--- a/crypto/weakcrypto/source/padding/padding.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,362 +0,0 @@
-/*
-* Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include <random.h>
-#include <padding.h>
-#include <securityerr.h>
-#include <cryptopanic.h>
-
-/* CPadding */
-CPadding::CPadding(void) : iBlockBytes(-1)
-	{
-	}
-
-EXPORT_C CPadding::CPadding(TInt aBlockBytes) : iBlockBytes(aBlockBytes)
-	{
-	__ASSERT_ALWAYS(aBlockBytes > 0, User::Invariant());
-	}
-
-EXPORT_C void CPadding::SetBlockSize(TInt aBlockBytes)
-	{
-	__ASSERT_ALWAYS(aBlockBytes > 0, User::Invariant());
-	iBlockBytes = aBlockBytes;
-	}
-
-EXPORT_C TInt CPadding::BlockSize(void) const
-	{
-	return iBlockBytes;
-	}
-
-EXPORT_C TInt CPadding::MaxPaddedLength(TInt /*aInputBytes*/) const
-	{
-	return BlockSize();
-	}
-
-EXPORT_C TInt CPadding::MaxUnPaddedLength(TInt aInputBytes) const
-	{
-	return aInputBytes - MinPaddingLength();
-	}
-
-EXPORT_C void CPadding::PadL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	// Check that the input is small enough to fit inside one padded block
-	__ASSERT_DEBUG(aInput.Length() <= BlockSize() - MinPaddingLength(), 	
-		User::Panic(KCryptoPanic, ECryptoPanicPadInputTooLarge));
-	
-	// Check that the output descriptor supplied is large enough to store the result
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxPaddedLength(aInput.Length()), 	
-		User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	// Call the virtual function, implemented by derived classes
-	DoPadL(aInput, aOutput);
-	}
-
-/* CPaddingNone */
-EXPORT_C CPaddingNone* CPaddingNone::NewL(TInt aBlockBytes)
-	{
-	__ASSERT_ALWAYS(aBlockBytes > 0, User::Leave(KErrArgument));
-	return new(ELeave)CPaddingNone(aBlockBytes);
-	}
-
-EXPORT_C CPaddingNone* CPaddingNone::NewLC(TInt aBlockBytes)
-	{
-	CPaddingNone* self = CPaddingNone::NewL(aBlockBytes);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C CPaddingNone::CPaddingNone(TInt aBlockBytes):CPadding(aBlockBytes)
-	{
-	}
-
-void CPaddingNone::DoPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	aOutput.Append(aInput);
-	}
-
-void CPaddingNone::UnPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxPaddedLength(aInput.Length()), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-	aOutput.Append(aInput);
-	}
-
-TInt CPaddingNone::MinPaddingLength(void) const
-	{
-	return 0;
-	}
-
-TInt CPaddingNone::MaxPaddedLength(TInt aInputSize) const
-	{
-	return aInputSize;
-	}
-
-/* CPaddingSSLv3 */
-EXPORT_C CPaddingSSLv3* CPaddingSSLv3::NewL(TInt aBlockBytes)
-	{
-	__ASSERT_ALWAYS(aBlockBytes > 0, User::Leave(KErrArgument));
-	return new(ELeave)CPaddingSSLv3(aBlockBytes);	
-	}
-
-EXPORT_C CPaddingSSLv3* CPaddingSSLv3::NewLC(TInt aBlockBytes)
-	{
-	CPaddingSSLv3* self = CPaddingSSLv3::NewL(aBlockBytes);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C CPaddingSSLv3::CPaddingSSLv3(TInt aBlockBytes):CPadding(aBlockBytes)
-	{
-	}
-
-void CPaddingSSLv3::DoPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	TInt paddingBytes=BlockSize()-(aInput.Length()%BlockSize());
-	aOutput.Append(aInput);
-	aOutput.SetLength(aOutput.Length()+paddingBytes);
-	for (TInt i=1;i<=paddingBytes;i++)
-		{
-		aOutput[aOutput.Length()-i]=(TUint8)(paddingBytes-1);
-		}
-	}
-
-void CPaddingSSLv3::UnPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	TInt paddingLen = aInput[aInput.Length()-1] + 1;
-
-	if (paddingLen > aInput.Length())
-		{
-		User::Leave(KErrInvalidPadding);
-		}
-
-	TInt outlen = aInput.Length() - paddingLen;
-
-	__ASSERT_DEBUG(aOutput.MaxLength() >= outlen, User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	aOutput.Append(aInput.Left(outlen));
-	}
-
-TInt CPaddingSSLv3::MinPaddingLength(void) const
-	{
-	//if aInputBytes is 1 less than the blocksize then we get 1 byte of padding
-	return 1;
-	}
-
-TInt CPaddingSSLv3::MaxPaddedLength(TInt aInputBytes) const
-	{
-	TUint padBytes = BlockSize() - (aInputBytes % BlockSize());
-	return padBytes + aInputBytes;
-	}
-
-/* CPaddingPKCS1Signature */
-EXPORT_C CPaddingPKCS1Signature* CPaddingPKCS1Signature::NewL(TInt aBlockBytes)
-	{
-	return new(ELeave)CPaddingPKCS1Signature(aBlockBytes);
-	}
-
-EXPORT_C CPaddingPKCS1Signature* CPaddingPKCS1Signature::NewLC(TInt aBlockBytes)
-	{
-	CPaddingPKCS1Signature* self = CPaddingPKCS1Signature::NewL(aBlockBytes);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C CPaddingPKCS1Signature::CPaddingPKCS1Signature(TInt aBlockBytes)
-	: CPadding(aBlockBytes)
-	{
-	}
-
-void CPaddingPKCS1Signature::DoPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	aOutput.SetLength(BlockSize());
-	TInt i;
-	TInt j;
-	aOutput[0]=0;
-	TInt startOfData=BlockSize()-aInput.Length();
-	// PKCS1 also specifies a block type 0 for private key operations but
-	// does not recommend its use. This block type (0) is compatible with 
-	// unpadded data though so you can create PKCS1 type 0 blocks using 
-	// CPaddingNone.
-	aOutput[1]=1;				// Block type 1 (private key operation)
-	for (i=2;i<(startOfData-1);i++)
-		{
-		aOutput[i]=0xff;
-		}
-	j=0;
-	aOutput[startOfData-1]=0;				// separator
-	for (i=startOfData;i<BlockSize();i++,j++)
-		{
-		aOutput[i]=aInput[j];
-		}
-	}
-	
-void CPaddingPKCS1Signature::UnPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	// erm, oops, this is not quite as simplistic as it first looks...
-	// our integer class will strip any leading zeros so we might actually
-	// get some real data that starts out looking like padding but isn't 
-	// really
-	
-	TInt inputLen = aInput.Length();
-	if (inputLen <=0 )				
-		User::Leave(KErrInvalidPadding);	//	Invalid padding data
-
-	// Leading zero may have been stripped off by integer class
-	TInt dataStart=0;
-	if (aInput[dataStart] == 0)
-		{
-		++dataStart;
-		}
-
-	if (dataStart < inputLen && aInput[dataStart])		//	might be mode one or mode zero,
-		{
-		++dataStart;
-		while (dataStart < inputLen && aInput[dataStart] == 0xff)
-			{
-			++dataStart;
-			}
-		
-		if (dataStart == inputLen || aInput[dataStart])	//	this would mean theres no zero between 0x01ff and data...so its not mode one
-			dataStart=0;			//	mode zero, start from begining of data
-		else
-			++dataStart;
-		}
-	else							//	We've definitely got a mode zero 
-		{							//	or broken data, assume mode zero
-		dataStart=0;		
-		}
-
-	TInt len=inputLen-dataStart;
-
-	__ASSERT_DEBUG(aOutput.MaxLength() >= len, User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	aOutput.SetLength(len);
-	TInt i=0;
-	while (dataStart<inputLen)
-		{
-		aOutput[i++]=aInput[dataStart++];
-		}
-	}
-
-TInt CPaddingPKCS1Signature::MinPaddingLength(void) const
-	{
-	return 11; //0x00, 0x01, <MIN of 8 0xFF octets> , 0x00
-	}
-
-/* CPaddingPKCS1Encryption */
-EXPORT_C CPaddingPKCS1Encryption* CPaddingPKCS1Encryption::NewL(
-	TInt aBlockBytes)
-	{
-	return new(ELeave)CPaddingPKCS1Encryption(aBlockBytes);
-	}
-
-EXPORT_C CPaddingPKCS1Encryption* CPaddingPKCS1Encryption::NewLC(
-	TInt aBlockBytes)
-	{
-	CPaddingPKCS1Encryption* self = CPaddingPKCS1Encryption::NewL(aBlockBytes);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C CPaddingPKCS1Encryption::CPaddingPKCS1Encryption(TInt aBlockBytes)
-	: CPadding(aBlockBytes)
-	{
-	}
-
-void CPaddingPKCS1Encryption::DoPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	aOutput.SetLength(BlockSize());
-	
-	aOutput[0]=0;
-	TInt startOfData=BlockSize()-aInput.Length();
-	aOutput[1]=2;				// Block type 2 (public key operation)
-	TBuf8<256> rnd(256);
-	GenerateRandomBytesL(rnd);
-
-	TInt i = 2;
-	TInt j = 0;
-	for (; i<(startOfData-1);)
-		{
-		if (rnd[j])
-			{
-			aOutput[i++]=rnd[j];
-			}
-		if (++j==256)
-			{
-			GenerateRandomBytesL(rnd);
-			j=0;
-			}
-		}
-
-	j=0;
-	aOutput[startOfData-1]=0;				// separator
-	for (i=startOfData;i<BlockSize();i++,j++)
-		{
-		aOutput[i]=aInput[j];
-		}
-	}
-	
-void CPaddingPKCS1Encryption::UnPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	TInt inputLen = aInput.Length();
-	if (inputLen <= 0)				
-		User::Leave(KErrInvalidPadding);	//	Invalid padding data
-
-	// Leading zero may have been stripped off by integer class
-	TInt dataStart=0;
-	if (aInput[dataStart] == 0)
-		{
-		++dataStart;
-		}
-	
-	// expecting mode 2 padding, otherwise broken
-	if (dataStart == inputLen || aInput[dataStart] != 2)	
-		{
-		User::Leave(KErrInvalidPadding);
-		}
-	++dataStart;
-
-	// skip random non zero bytes
-	while (dataStart < inputLen && aInput[dataStart])
-		{
-		++dataStart;
-		}
-
-	// expecting zero separator
-	if (dataStart == inputLen || aInput[dataStart] != 0)
-		{
-		User::Leave(KErrInvalidPadding);		
-		}
-	++dataStart;
-
-	TInt len = inputLen - dataStart;
-	__ASSERT_DEBUG(aOutput.MaxLength() >= len, User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	aOutput.SetLength(len);
-	TInt i=0;
-	while (dataStart<inputLen)
-		{
-		aOutput[i++]=aInput[dataStart++];
-		}
-	}
-
-TInt CPaddingPKCS1Encryption::MinPaddingLength(void) const
-	{
-	return 11; //0x00, 0x02, <min of 8 random octets>, 0x00
-	}
-
--- a/crypto/weakcrypto/source/padding/pkcs7.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include <padding.h>
-#include <securityerr.h>
-#include <cryptopanic.h>
-
-/* CPaddingPKCS7 */
-EXPORT_C CPaddingPKCS7* CPaddingPKCS7::NewL(TInt aBlockBytes)
-	{
-	__ASSERT_ALWAYS(aBlockBytes > 0, User::Leave(KErrArgument));
-	return new(ELeave)CPaddingPKCS7(aBlockBytes);
-	}
-
-EXPORT_C CPaddingPKCS7* CPaddingPKCS7::NewLC(TInt aBlockBytes)
-	{
-	CPaddingPKCS7* self = CPaddingPKCS7::NewL(aBlockBytes);
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-EXPORT_C CPaddingPKCS7::CPaddingPKCS7(TInt aBlockBytes):CPadding(aBlockBytes)
-	{
-	}
-
-void CPaddingPKCS7::DoPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	TInt paddingBytes = BlockSize()-(aInput.Length()%BlockSize());		
-	aOutput.Append(aInput);
-	aOutput.SetLength(aOutput.Length()+paddingBytes);
-	for (TInt i=1;i<=paddingBytes;i++)
-		{
-		aOutput[aOutput.Length()-i]=(TUint8)(paddingBytes);
-		}
-	}
-
-void CPaddingPKCS7::UnPadL(const TDesC8& aInput,TDes8& aOutput)
-	{
-	TUint inputLen = aInput.Length();
- 	TUint paddingLen = (TUint)(aInput[inputLen - 1]);
-
-	if (paddingLen > inputLen)
- 		{
- 		User::Leave(KErrInvalidPadding);
- 		}
-   
-	TInt outlen = aInput.Length() - paddingLen;
-
-	__ASSERT_DEBUG(aOutput.MaxLength() >= outlen, User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	aOutput.Append(aInput.Left(outlen));
-	for (TInt i=outlen;i<inputLen;i++)
-		{
-		//All padding bytes must equal the length of padding expected
-		if (aInput[i]!=paddingLen)
-			{
-			User::Leave(KErrInvalidPadding);
-			}
-		}
-	}
-
-TInt CPaddingPKCS7::MinPaddingLength(void) const
-	{
-	//if aInputBytes is 1 less than the blocksize then we get 1 byte of padding
-	return 1;
-	}
-
-TInt CPaddingPKCS7::MaxPaddedLength(TInt aInputBytes) const
-	{
-	TUint padBytes = BlockSize() - (aInputBytes % BlockSize());
-	return padBytes + aInputBytes;
-	}
-
--- a/crypto/weakcrypto/source/pbe/pbe.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,266 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32std.h>
-#include <random.h>
-#include <cryptostrength.h>
-#include <securityerr.h>
-#include <pbedata.h>
-#include "pkcs5kdf.h"
-#include "pbe.h"
-#include "pbencryptor.h"
-#include "pbesymmetricfactory.h"
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewL(const TPBPassword& aPassword)
-	{
-	CPBEncryptElement* self = NewLC(aPassword);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewLC(const TPBPassword& aPassword)
-	{
-	CPBEncryptElement* self = new(ELeave) CPBEncryptElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password());
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewL(const TPBPassword& aPassword, 
-	const TPBECipher aCipher)
-	{
-	CPBEncryptElement* self = NewLC(aPassword, aCipher);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewLC(const TPBPassword& aPassword, 
-	const TPBECipher aCipher)
-	{
-	CPBEncryptElement* self = new(ELeave) CPBEncryptElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password(), aCipher);
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewL(const TPBPassword& aPassword, 
-	const CPBEncryptParms& aParms)
-	{
-	CPBEncryptElement* self = NewLC(aPassword, aParms);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewLC(const TPBPassword& aPassword, 
-	const CPBEncryptParms& aParms)
-	{
-	CPBEncryptElement* self = new(ELeave) CPBEncryptElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password(), aParms);
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewL(
-	const CPBEncryptionData& aData, const TPBPassword& aPassword)
-	{
-	CPBEncryptElement* self = CPBEncryptElement::NewLC(aData, aPassword);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptElement* CPBEncryptElement::NewLC(
-	const CPBEncryptionData& aData, const TPBPassword& aPassword)
-	{
-	CPBEncryptElement* self = new(ELeave) CPBEncryptElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aData, aPassword);
-	return self;
-	}
-
-CPBEncryptElement::CPBEncryptElement(void) 
-	{
-	}
-
-CPBEncryptElement::~CPBEncryptElement(void)
-	{
-	delete iData;
-	delete iEncryptKey;
-	}
-
-void CPBEncryptElement::ConstructL(const TDesC8& aPassword)
-	{
-	// Construct based on cryptography strength
-	if (TCrypto::Strength() == TCrypto::EStrong)
-		{
-		ConstructL(aPassword, KPBEDefaultStrongCipher);
-		}
-	else
-		{
-		ConstructL(aPassword, KPBEDefaultWeakCipher);
-		}
-	}
-
-void CPBEncryptElement::ConstructL(const TDesC8& aPassword, TPBECipher aCipher)
-	{
-	TBuf8<KPBEMaxCipherIVBytes> iv(KPBEMaxCipherIVBytes);
-	iv.SetLength(PBE::GetBlockBytes(aCipher));
-	TRandom::RandomL(iv);
-
-	TBuf8<KPBEDefaultSaltBytes> encryptSalt(KPBEDefaultSaltBytes);
-	TRandom::RandomL(encryptSalt);
-
-	TBuf8<KPBEDefaultSaltBytes> authSalt(KPBEDefaultSaltBytes);
-	TRandom::RandomL(authSalt);
-
-	iData = CPBEncryptionData::NewL(aPassword, aCipher, authSalt, encryptSalt,
-		iv, KDefaultIterations);
-
-	MakeEncryptKeyL(PBE::GetKeyBytes(aCipher), aPassword);
-	}
-
-void CPBEncryptElement::ConstructL(const CPBEncryptionData& aData, 
-	const TPBPassword& aPassword)
-	{
-	iData = CPBEncryptionData::NewL(aData);
-	if(!AuthenticateL(aPassword))
-		{
-		User::Leave(KErrBadPassphrase);
-		}
-	}
-
-void CPBEncryptElement::ConstructL(const TDesC8& aPassword,
-	const CPBEncryptParms& aParms)
-	{
-	TUint keySize = PBE::GetKeyBytes(aParms.Cipher());
-
-	TBuf8<KPBEDefaultSaltBytes> authSalt(KPBEDefaultSaltBytes);
-	TRandom::RandomL(authSalt);
-
-	//Recreate parms with given data and create a totally new auth
-	iData = CPBEncryptionData::NewL(aPassword, authSalt, aParms);
-	MakeEncryptKeyL(keySize, aPassword);
-	}
-
-const CPBEncryptionData& CPBEncryptElement::EncryptionData(void) const
-	{
-	return *iData;
-	}
-
-CPBEncryptor* CPBEncryptElement::NewEncryptL() const 
-	{
-	CPBEncryptor* encryptor = NewEncryptLC();
-	CleanupStack::Pop();
-	return encryptor;
-	}
-
-CPBEncryptor* CPBEncryptElement::NewEncryptLC() const
-	{
-	CPBEncryptor* encryptor = CPBEncryptorElement::NewLC( 
-		iData->EncryptParms().Cipher(), *iEncryptKey, 
-		iData->EncryptParms().IV());
-	return encryptor;
-	}
-
-TBool CPBEncryptElement::AuthenticateL(const TPBPassword& aPassword)
-	{
-	TBool retval = EFalse;
-
-	//create a new auth to test against the existing one
-	//therefore we use the same key size, and salt as the current one
-	CPBAuthData* auth = CPBAuthData::NewLC(aPassword.Password(),
-		iData->AuthData().Salt(), iData->AuthData().Key().Size(),
-		iData->AuthData().Iterations());
-	if(*auth==iData->AuthData())
-		{
-		//We've got a valid password, regenerate the key so they can decrypt
-		//stuff.  We don't the change the length of iEncryptKey as we assume the
-		//previous key size is appropriate for the new one
-		MakeEncryptKeyL(PBE::GetKeyBytes(iData->EncryptParms().Cipher()),
-			aPassword.Password());
-		retval = ETrue;
-		}
-	CleanupStack::PopAndDestroy(auth);
-	return retval;
-	}
-
-CPBDecryptor* CPBEncryptElement::NewDecryptL() const
-	{
-	CPBDecryptor* decryptor = NewDecryptLC();
-	CleanupStack::Pop();
-	return decryptor;
-	}
-
-CPBDecryptor* CPBEncryptElement::NewDecryptLC() const
-	{
-	CPBDecryptor* decryptor = CPBDecryptorElement::NewLC(
-		iData->EncryptParms().Cipher(), *iEncryptKey,
-		iData->EncryptParms().IV());
-	return decryptor;
-	}
-
-// Warning: This function is only valid BEFORE you call NewEncryptL
-// After creating the cipher, ask it about itself, not me!
-// This is _very_ dodgy as I assume all sorts of things about the encryptor.
-// 1) That it uses SSLv3 or similar style padding
-// 2) That it stores the IV for that stream at the front.
-// This is here for specific application that requires this and aren't able to
-// actually construct the cipher and ask it.  In almost all other cases you
-// should construct the cipher and ask it.
-TInt CPBEncryptElement::MaxCiphertextLength(TInt aPlaintextLength) const
-	{
-	TUint blocksize = PBE::GetBlockBytes(iData->EncryptParms().Cipher());
-	TUint padding = blocksize - aPlaintextLength % blocksize;
-	//len = inputLength + padding
-	return aPlaintextLength + padding;
-	}
-
-// Warning: This function is only valid BEFORE you call NewDecryptL
-// After creating the cipher, ask it about itself, not me!
-TInt CPBEncryptElement::MaxPlaintextLength(TInt aCiphertextLength) const
-	{
-	/*It's impossible to determine anything about how much padding will be
-	 * removed.  So we'll return a max length that is longer than will
-	 * ever happen by at most a blocksize - 1.
-	 */
-	//totallength = inputlength - 1 byte of padding min
-	return aCiphertextLength - 1;
-	}
-
-void CPBEncryptElement::MakeEncryptKeyL(TUint aKeySize, const TDesC8& aPassword)
-	{
-	iEncryptKey = HBufC8::NewMaxL(aKeySize);
-	TPtr8 encryptKeyBuf = iEncryptKey->Des();
-	iData->EncryptParms().DeriveKeyL(aPassword, encryptKeyBuf);
-	}
-
-EXPORT_C TPBPassword::TPBPassword(const TDesC8& aPassword)
-	{
-	iPassword.Set(aPassword);
-	}
-
-EXPORT_C TPBPassword::TPBPassword(const TDesC16& aPassword)
-	{
-	iPassword.Set(reinterpret_cast<const TUint8*>(aPassword.Ptr()), aPassword.Size());
-	}
-
-EXPORT_C const TDesC8& TPBPassword::Password(void) const
-	{
-	return iPassword;
-	}
-
-
--- a/crypto/weakcrypto/source/pbe/pbedata.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,479 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-#include "pkcs5kdf.h"
-#include "pkcs12kdf.h"
-#include "pbedata.h"
-#include "pbesymmetricfactory.h"
-#include "cryptostrength.h"
-
-EXPORT_C CPBEncryptionData* CPBEncryptionData::NewL(const TDesC8& aPassword,
-	TPBECipher aCipher, const TDesC8& aAuthSalt, 
-	const TDesC8& aEncryptSalt, const TDesC8& aIV, TUint aIterations)
-	{
-	CPBEncryptionData* self = NewLC(aPassword, aCipher, aAuthSalt, aEncryptSalt,
-		aIV, aIterations);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBEncryptionData* CPBEncryptionData::NewLC(const TDesC8& aPassword,
-	TPBECipher aCipher, const TDesC8& aAuthSalt, 
-	const TDesC8& aEncryptSalt, const TDesC8& aIV, TUint aIterations)
-	{
-	CPBEncryptionData* self = new(ELeave)CPBEncryptionData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword, aCipher, aAuthSalt, aEncryptSalt, aIV,
-		aIterations);
-	return self;
-	}
-
-EXPORT_C CPBEncryptionData* CPBEncryptionData::NewL(
-	const CPBEncryptionData& aData)
-	{
-	CPBEncryptionData* self = NewLC(aData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBEncryptionData* CPBEncryptionData::NewLC(
-	const CPBEncryptionData& aData)
-	{
-	CPBEncryptionData* self = new(ELeave)CPBEncryptionData(); 
-	CleanupStack::PushL(self);
-	self->ConstructL(aData);
-	return self;
-	}
-
-EXPORT_C CPBEncryptionData* CPBEncryptionData::NewL(
-	const TDesC8& aPassword, const TDesC8& aAuthSalt,
-	const CPBEncryptParms& aParms)
-/**
-	This factory function takes the user-supplied password
-	and the randomly-generated authentication salt, along
-	with the encryption paramaters.  It is provided so the
-	encryption parameters can be extended without having to
-	provide multiple factory functions.
-
-	@param	aPassword		User-supplied password.  This
-							password is not transformed so
-							if it needs to be in a particular
-							format, e.g. for PKCS#12, the
-							transformation must be applied before
-							this function is called.
-	@param	aAuthSalt		The salt is used to derive the
-							authentication key; not the encryption
-							key.
-	@param	aParms			Encryption parameters describe how the
-							data is encrypted.
-	@return					New instance of CPBEncryptionData.
- */
-	{
-	CPBEncryptionData* self = new(ELeave) CPBEncryptionData;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword, aAuthSalt, aParms);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-void CPBEncryptionData::ConstructL(
-	const TDesC8& aPassword, const TDesC8& aAuthSalt,
-	const CPBEncryptParms& aParms)
-/**
-	Second-phase constructor for factory function with
-	same signature.
- */
-	{
-	iParms = CPBEncryptParms::NewL(aParms);
-	iAuth = CPBAuthData::NewL(
-		aPassword,
-		aAuthSalt,
-		PBE::GetKeyBytes(aParms.Cipher()),
-		aParms.Iterations());
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-EXPORT_C CPBEncryptionData::CPBEncryptionData(void)
-	{
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-CPBEncryptionData::~CPBEncryptionData(void)
-	{
-	delete iParms;
-	delete iAuth;
-	}
-
-void CPBEncryptionData::ConstructL(const TDesC8& aPassword,
-	TPBECipher aCipher, const TDesC8& aAuthSalt, 
-	const TDesC8& aEncryptSalt, const TDesC8& aIV, TUint aIterations)
-	{
-	iParms = CPBEncryptParms::NewL(aCipher, aEncryptSalt, aIV, aIterations);
-	iAuth = CPBAuthData::NewL(aPassword, aAuthSalt,
-		PBE::GetKeyBytes(aCipher), aIterations);
-	}
-
-void CPBEncryptionData::ConstructL(const CPBEncryptionData& aData)
-	{
-	iParms = CPBEncryptParms::NewL(aData.EncryptParms());
-	iAuth = CPBAuthData::NewL(aData.AuthData());
-	}
-
-EXPORT_C const CPBEncryptParms& CPBEncryptionData::EncryptParms(void) const
-	{
-	return *iParms;
-	} 
-EXPORT_C const CPBAuthData& CPBEncryptionData::AuthData(void) const
-	{
-	return *iAuth;
-	}
-
-/* CPBEncryptParms */
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewL()
-/**
-	This factory function allocates an encryption
-	parameters object with default settings.  The
-	individual settings can be retrieved and modified
-	with the accessor and mutator functions after
-	this object has been created.
-
-	This factory function is provided so that individual
-	parameters can be modified without providing many
-	factory functions.
-
-	@return					New instance of CPBEncryptParms.
- */
-	{
-	CPBEncryptParms* self = NewLC();
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewLC()
-/**
-	Similar to the NewL overload which takes no
-	arguments, this function additionally puts the
-	allocated instance of CPBEncryptParms on the
-	cleanup stack.
-
-	@return					New instance of CPBEncryptParms.
- */
-	{
-	CPBEncryptParms* self = new(ELeave) CPBEncryptParms;
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-	}
-
-void CPBEncryptParms::ConstructL()
-/**
-	Initialize this object with default cipher, kdf (PKCS#5,)
-	salt length, iteration count, and IV.
- */
-	{
-	iData = new(ELeave) TParamsData;
-	iData->iKdf = EKdfPkcs5;
-	
-	iSalt = HBufC8::NewMaxL(KPBEDefaultSaltBytes);
-	TPtr8 saltDes = iSalt->Des();
-	TRandom::RandomL(saltDes);
-	
-	iIterations = KDefaultIterations;
-	
-	iIV = HBufC8::NewMaxL(KPBEMaxCipherIVBytes);
-	
-	SetCipher(
-			(TCrypto::Strength() == TCrypto::EStrong)
-		?	KPBEDefaultStrongCipher : KPBEDefaultWeakCipher );
-	}
-
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewL(TPBECipher aCipher,
-	const TDesC8& aSalt, const TDesC8& aIV, TUint aIterations)
-	{
-	CPBEncryptParms* self = NewLC(aCipher, aSalt, aIV, aIterations);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewLC(TPBECipher aCipher,
-	const TDesC8& aSalt, const TDesC8& aIV, TUint aIterations) 
-	{
-	CPBEncryptParms* self = new(ELeave)CPBEncryptParms();
-	CleanupStack::PushL(self);
-	self->ConstructL(aCipher, aSalt, aIV, aIterations);
-	return self;
-	}
-
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewL(const CPBEncryptParms& aParms)
-	{
-	CPBEncryptParms* self = NewLC(aParms);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBEncryptParms* CPBEncryptParms::NewLC(const CPBEncryptParms& aParms)
-	{
-	CPBEncryptParms* self = new(ELeave)CPBEncryptParms();
-	CleanupStack::PushL(self);
-	self->ConstructL(aParms);
-	return self;
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-EXPORT_C CPBEncryptParms::CPBEncryptParms()
-	{
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-CPBEncryptParms::~CPBEncryptParms()
-	{
-	delete iData;
-	delete iSalt;
-	delete iIV;	
-	}
-
-void CPBEncryptParms::ConstructL(TPBECipher aCipher, const TDesC8& aSalt,
-	const TDesC8& aIV, TUint aIterations)
-	{
-	iData = new(ELeave) TParamsData;
-	iData->iCipher = aCipher;
-	iData->iKdf = EKdfPkcs5;
-	iSalt = aSalt.AllocL();
-	iIV = aIV.AllocL();
-	iIterations = aIterations;
-	}
-
-void CPBEncryptParms::ConstructL(const CPBEncryptParms& aParms)
-	{
-	iData = new(ELeave) TParamsData;
-	iData->iCipher = aParms.Cipher();
-	iData->iKdf = aParms.iData->iKdf;
-	iSalt = aParms.Salt().AllocL();
-	iIterations = aParms.Iterations();
-	iIV = aParms.IV().AllocL();
-	}
-
-EXPORT_C TPBECipher CPBEncryptParms::Cipher() const
-	{
-	return iData->iCipher;
-	}
-
-EXPORT_C void CPBEncryptParms::SetCipher(TPBECipher aCipher)
-/**
-	Replace the current cipher.  This function resizes the
-	IV and replaces its existing contents.
-	
-	@param	aCipher			New cipher.
- */
-	{
-	TPtr8 ivDes = iIV->Des();
-	ivDes.SetLength(PBE::GetBlockBytes(aCipher));
-	TRandom::RandomL(ivDes);
-	
-	iData->iCipher = aCipher;
-	}
-
-EXPORT_C CPBEncryptParms::TKdf CPBEncryptParms::Kdf() const
-/**
-	Accessor function returns the key derivation function
-	(KDF) specified by this object.
-
-	@return					KDF specified by this object.
- */
-	{
-	return iData->iKdf;
-	}
-
-EXPORT_C void CPBEncryptParms::SetKdf(CPBEncryptParms::TKdf aKdf)
-/**
-	Replace the current key derivation function.
-
-	@param	aKdf			Key derivation function.
- */
-	{
-	iData->iKdf = aKdf;
-	}
-
-EXPORT_C TPtrC8 CPBEncryptParms::Salt() const
-	{
-	return TPtrC8(*iSalt);
-	}
-
-EXPORT_C void CPBEncryptParms::ResizeSaltL(TInt aNewLen)
-/**
-	Resize the current salt and replace its contents.
-
-	@param	aNewLen			New salt length.
- */
-	{
-	iSalt = iSalt->ReAllocL(aNewLen);
-	TPtr8 saltDes = iSalt->Des();
-	TRandom::RandomL(saltDes);
-	}
-
-EXPORT_C TInt CPBEncryptParms::Iterations() const
-	{
-	return iIterations;
-	}
-
-EXPORT_C void CPBEncryptParms::SetIterations(TInt aIterCount)
-/**
-	Replace the current iteration count with the supplied value.
-	
-	@param	aIterCount		Number of iterations to apply in
-							the KDF.
- */
-	{
-	ASSERT(aIterCount >= 0);
-	iIterations = aIterCount;
-	}
-
-EXPORT_C TPtrC8 CPBEncryptParms::IV() const
-	{
-	return TPtrC8(*iIV);
-	}
-
-EXPORT_C void CPBEncryptParms::SetIV(const TDesC8& aNewIv)
-/**
-	Replace the initialization vector.
-	
-	@param	aNewIv			New initialization vector length.
-							This must have no more than
-							KPBEMaxCipherIVBytes bytes.
- */
-	{
-	iIV->Des().Copy(aNewIv);
-	}
-
-void CPBEncryptParms::DeriveKeyL(const TDesC8& aPassword, TDes8& aKeyBuf) const
-/**
-	Derive a key from this object's kdf, salt, amd iteration count.
-	
-	@param	aPassword		User-supplied password used to generate key.
-	@param	aKeyBuf			Buffer to populate with new key.
-							On entry it must be set to the required
-							key length.
- */
-	{
-	switch (iData->iKdf)
-		{
-	case CPBEncryptParms::EKdfPkcs5:
-		TPKCS5KDF::DeriveKeyL(aKeyBuf, aPassword, *iSalt, iIterations);
-		break;
-	
-	case CPBEncryptParms::EKdfPkcs12:
-		PKCS12KDF::DeriveKeyL(aKeyBuf, PKCS12KDF::EIDByteEncryptKey, aPassword, *iSalt, iIterations);
-		break;
-	
-	default:
-		ASSERT(EFalse);
-		break;
-		}
-	}
-
-/* CPBAuthData */
-
-EXPORT_C CPBAuthData* CPBAuthData::NewL(const TDesC8& aPassword,
-	const TDesC8& aSalt, TUint aKeySize, TUint aIterations)
-	{
-	CPBAuthData* self = NewLC(aPassword, aSalt, aKeySize, aIterations);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBAuthData* CPBAuthData::NewLC(const TDesC8& aPassword,
-	const TDesC8& aSalt, TUint aKeySize, TUint aIterations) 
-	{
-	CPBAuthData* self = new(ELeave)CPBAuthData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword, aSalt, aKeySize, aIterations);
-	return self;
-	}
-
-EXPORT_C CPBAuthData* CPBAuthData::NewL(const CPBAuthData& aData)
-	{
-	CPBAuthData* self = NewLC(aData);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CPBAuthData* CPBAuthData::NewLC(const CPBAuthData& aData)
-	{
-	CPBAuthData* self = new(ELeave)CPBAuthData();
-	CleanupStack::PushL(self);
-	self->ConstructL(aData);
-	return self;
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-EXPORT_C CPBAuthData::CPBAuthData()
-	{
-	}
-
-// HPRE-5TDFK2: Remove Store/estor.dll dependency on Cryptography/pbe.dll
-// This method is DUPLICATED in common/generic/syslibs/store/ucrypt/ue_strm.cpp
-CPBAuthData::~CPBAuthData()
-	{
-	delete iAuthKey;
-	delete iSalt;
-	}
-
-void CPBAuthData::ConstructL(const TDesC8& aPassword, const TDesC8& aSalt, 
-	TUint aKeySize, TUint aIterations)
-	{
-	iSalt = aSalt.AllocL();
-	iIterations = aIterations;
-	iAuthKey = HBufC8::NewMaxL(aKeySize);
-	TPtr8 authKeyPtr = iAuthKey->Des();
-	TPKCS5KDF::DeriveKeyL(authKeyPtr, aPassword, *iSalt, iIterations);
-	}
-
-void CPBAuthData::ConstructL(const CPBAuthData& aData)
-	{
-	iAuthKey = aData.Key().AllocL();
-	iSalt = aData.Salt().AllocL();
-	iIterations = aData.Iterations();
-	}
-
-EXPORT_C TPtrC8 CPBAuthData::Key() const
-	{
-	return TPtrC8(*iAuthKey);
-	}
-
-EXPORT_C TPtrC8 CPBAuthData::Salt() const
-	{
-	return TPtrC8(*iSalt);
-	}
-
-EXPORT_C TInt CPBAuthData::Iterations() const
-	{
-	return iIterations;
-	}
-
-EXPORT_C TBool CPBAuthData::operator==(const CPBAuthData& aAuth) const
-	{
-	//if the key's are equal, the its true, as the other members are used in key derivation
-	return (*iAuthKey == aAuth.Key());
-	}
-
--- a/crypto/weakcrypto/source/pbe/pbefactory.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,115 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <pbebase.h>
-#include <pbe.h>
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementL(
-	const TDesC& aPassword)
-	{
-	CPBEncryptElementBase* encrypt = NewPBEncryptElementLC(aPassword);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementLC(
-	const TDesC& aPassword)
-	{
-	CPBEncryptElement* encrypt = CPBEncryptElement::NewLC(aPassword);
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementL(
-	const TDesC& aPassword, const TPBEncryptParms& aEncryptParms)
-	{
-	CPBEncryptElementBase* encrypt = NewPBEncryptElementLC(aPassword,aEncryptParms);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementLC(
-	const TDesC& aPassword, const TPBEncryptParms& aEncryptParms)
-	{
-	CPBEncryptElement* encrypt = CPBEncryptElement::NewLC(aPassword,
-		aEncryptParms);
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementL(
-	const TPBEncryptionData& aData)
-	{
-	CPBEncryptElementBase* encrypt = NewPBEncryptElementLC(aData);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptElementBase* TPBEncryptionFactory::NewPBEncryptElementLC(
-	const TPBEncryptionData& aData)
-	{
-	CPBEncryptElement* encrypt = CPBEncryptElement::NewLC(aData);
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetL(
-	const TDesC& aPassword)
-	{
-	CPBEncryptSetBase* encrypt = NewPBEncryptSetLC(aPassword);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetLC(
-	const TDesC& aPassword)
-	{
-	CPBEncryptSet* encrypt = CPBEncryptSet::NewLC(aPassword);
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetL(
-	const TDesC& aPassword, const TPBEncryptParms& aEncryptParms)
-	{
-	CPBEncryptSetBase* encrypt = NewPBEncryptSetLC(aPassword, aEncryptParms);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetLC(
-	const TDesC& aPassword, const TPBEncryptParms& aEncryptParms)
-	{
-	CPBEncryptSet* encrypt = CPBEncryptSet::NewLC(aPassword, aEncryptParms);
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetL(
-	const TPBEncryptionData& aData, const TDesC8& aEncryptedMasterKey)
-	{
-	CPBEncryptSetBase* encrypt = NewPBEncryptSetLC(aData, aEncryptedMasterKey);
-	CleanupStack::Pop();
-	return encrypt;
-	}
-
-EXPORT_C CPBEncryptSetBase* TPBEncryptionFactory::NewPBEncryptSetLC(
-	const TPBEncryptionData& aData, const TDesC8& aEncryptedMasterKey)
-	{
-	CPBEncryptSet* encrypt = CPBEncryptSet::NewLC(aData, aEncryptedMasterKey);
-	return encrypt;
-	}
--- a/crypto/weakcrypto/source/pbe/pbencryptor.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32std.h>
-#include <random.h>
-#include "pbencryptor.h"
-#include "pbesymmetricfactory.h"
-
-EXPORT_C CPBEncryptorElement* CPBEncryptorElement::NewL(
-	const TPBECipher aCipher, const TDesC8& aKey, const TDesC8& aIV)
-	{
-	CPBEncryptorElement* self = NewLC(aCipher, aKey, aIV);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptorElement* CPBEncryptorElement::NewLC(
-	const TPBECipher aCipher, const TDesC8& aKey, const TDesC8& aIV)
-	{
-	CPBEncryptorElement* self = new(ELeave) CPBEncryptorElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aCipher, aKey, aIV);
-	return self;
-	}
-
-void CPBEncryptorElement::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	iCipher->Process(aInput, aOutput);
-	}
-
-void CPBEncryptorElement::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	iCipher->ProcessFinalL(aInput, aOutput);
-	}
-
-void CPBEncryptorElement::ConstructL(const TPBECipher aCipher,
-	const TDesC8& aKey, const TDesC8& aIV)
-	{
-	iCipher = PBE::MakeEncryptorL(aCipher, aKey, aIV);
-	}
-
-CPBEncryptorElement::CPBEncryptorElement()
-	{
-	}
-
-CPBEncryptorElement::~CPBEncryptorElement()
-	{
-	delete iCipher;
-	}
-
-TInt CPBEncryptorElement::MaxOutputLength(TUint aMaxInputLength) const
-	{
-	return iCipher->MaxOutputLength(aMaxInputLength);
-	}
-
-TInt CPBEncryptorElement::MaxFinalOutputLength(TUint aMaxInputLength) const
-	{
-	return iCipher->MaxFinalOutputLength(aMaxInputLength);
-	}
-
-EXPORT_C CPBDecryptorElement* CPBDecryptorElement::NewL(
-	const TPBECipher aCipher, const TDesC8& aKey, const TDesC8& aIV)
-	{
-	CPBDecryptorElement* self = NewLC(aCipher, aKey, aIV);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBDecryptorElement* CPBDecryptorElement::NewLC(
-	const TPBECipher aCipher, const TDesC8& aKey, const TDesC8& aIV)
-	{
-	CPBDecryptorElement* self = new(ELeave) CPBDecryptorElement;
-	CleanupStack::PushL(self);
-	self->ConstructL(aCipher, aKey, aIV);
-	return self;
-	}
-
-void CPBDecryptorElement::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	iCipher->Process(aInput, aOutput);
-	}
-
-void CPBDecryptorElement::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	iCipher->ProcessFinalL(aInput, aOutput);
-	}
-
-void CPBDecryptorElement::ConstructL(const TPBECipher aCipher, 
-	const TDesC8& aKey, const TDesC8& aIV)
-	{
-	iCipher = PBE::MakeDecryptorL(aCipher, aKey, aIV);
-	}
-
-CPBDecryptorElement::CPBDecryptorElement()
-	{
-	}
-
-CPBDecryptorElement::~CPBDecryptorElement()
-	{
-	delete iCipher;
-	}
-
-TInt CPBDecryptorElement::MaxOutputLength(TUint aMaxInputLength) const
-	{
-	return iCipher->MaxOutputLength(aMaxInputLength);
-	}
-
-TInt CPBDecryptorElement::MaxFinalOutputLength(TUint aMaxInputLength) const
-	{
-	return iCipher->MaxFinalOutputLength(aMaxInputLength);
-	}
--- a/crypto/weakcrypto/source/pbe/pbencryptorset.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,217 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32std.h>
-#include <random.h>
-
-#include "pbencryptor.h"
-#include "pbesymmetricfactory.h"
-
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-/** The maximum block size supported (in bytes) */
-const TUint KMaxBlockSizeSupported = 32;
-#endif
-
-EXPORT_C CPBEncryptorSet* CPBEncryptorSet::NewL(
-	const TPBECipher aCipher, const TDesC8& aKey) 
-	{
-	CPBEncryptorSet* self = NewLC(aCipher, aKey);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptorSet* CPBEncryptorSet::NewLC(
-	const TPBECipher aCipher, const TDesC8& aKey)
-	{
-	CPBEncryptorSet* self = new(ELeave) CPBEncryptorSet;
-	CleanupStack::PushL(self);
-
-	self->ConstructL(aCipher, aKey);
-	
-	return self;
-	}
-
-void CPBEncryptorSet::ConstructL(const TPBECipher aCipher,const TDesC8& aKey)
-	{
-	TInt blocksize = PBE::GetBlockBytes(aCipher);
-	iIV = HBufC8::NewMaxL(blocksize); 
-	TPtr8 iv = iIV->Des();
-	TRandom::RandomL(iv);
-
-	iCipher = PBE::MakeEncryptorL(aCipher, aKey, iv);
-	}
-
-void CPBEncryptorSet::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	if(!iIVSent)
-		{
-		aOutput.Append(*iIV);
-		iIVSent = ETrue;
-		}
-	iCipher->Process(aInput, aOutput);
-	}
-
-void CPBEncryptorSet::ProcessFinalL(const TDesC8& aInput, 
-	TDes8& aOutput)
-	{
-	if(!iIVSent)
-		{
-		aOutput.Append(*iIV);
-		iIVSent = ETrue;
-		}
-	
-	iCipher->ProcessFinalL(aInput, aOutput);
-	}
-
-
-CPBEncryptorSet::CPBEncryptorSet() : iIVSent(EFalse)
-	{
-	}
-
-CPBEncryptorSet::~CPBEncryptorSet()
-	{
-	delete iIV;
-	delete iCipher;	//	Don't delete iCBCDecryptor, this belongs to iCipher
-	}
-
-TInt CPBEncryptorSet::MaxOutputLength(TUint aMaxInputLength) const
-    {
-	if(iIVSent)
-		{
-		return (iCipher->MaxOutputLength(aMaxInputLength));
-		}
-	else 
-		{//	If we've not sent the iv yet then its the length 
-		//	from the cipher plus a blocksize for the iv
-		return (iCipher->MaxOutputLength(aMaxInputLength + iCipher->BlockSize()));
-		}
-    }
-
-TInt CPBEncryptorSet::MaxFinalOutputLength(TUint aMaxInputLength) const
-    {
-	if(iIVSent)
-		{
-		return (iCipher->MaxFinalOutputLength(aMaxInputLength));
-		}
-	else 
-		{//	If we've not sent the iv yet then its the length 
-		//	from the cipher plus a blocksize for the iv
-		return (iCipher->MaxFinalOutputLength(aMaxInputLength + iCipher->BlockSize()));
-		}
-    }
-
-EXPORT_C CPBDecryptorSet* CPBDecryptorSet::NewL(const TPBECipher aCipher, 
-	const TDesC8& aKey)
-	{
-	CPBDecryptorSet* self = NewLC(aCipher, aKey);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBDecryptorSet* CPBDecryptorSet::NewLC(const TPBECipher aCipher,
-	const TDesC8& aKey)
-	{
-	CPBDecryptorSet* self = new(ELeave) CPBDecryptorSet;
-	CleanupStack::PushL(self);
-	TBuf8<KMaxBlockSizeSupported> fakeIV;
-	fakeIV.SetLength(PBE::GetBlockBytes(aCipher));
-	self->ConstructL(aCipher, aKey, fakeIV);
-	return self;
-	}
-
-void CPBDecryptorSet::ConstructL(const TPBECipher aCipher, 
-	const TDesC8& aKey, const TDesC8& aIV)
-	{
-	iCipher = PBE::MakeDecryptorL(aCipher, aKey, aIV);
-	iIVBuf = HBufC8::NewL(PBE::GetBlockBytes(aCipher));
-	}
-
-void CPBDecryptorSet::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	TPtrC8 input = ProcessIV(aInput);
-	iCipher->Process(input, aOutput);
-	}
-
-void CPBDecryptorSet::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	TPtrC8 input = ProcessIV(aInput);
-	iCipher->ProcessFinalL(input, aOutput);
-	}
-
-TPtrC8 CPBDecryptorSet::ProcessIV(const TDesC8& aInput)
-	{
-	if(!iIVSent)
-		{
-		TPtr8 iIVBufPtr(iIVBuf->Des());
-		if(aInput.Length() + iIVBufPtr.Length() < iCipher->BlockSize())
-			{
-			iIVBufPtr.Append(aInput);
-			return TPtrC8();
-			}
-		else 
-			{
-			TInt rem = iCipher->BlockSize() - iIVBufPtr.Length();
-			iIVBufPtr.Append(aInput.Mid(0, rem));
-			CBufferedDecryptor* blockDecryptor = static_cast<CBufferedDecryptor*>(iCipher);
-			static_cast<CModeCBCDecryptor*>(blockDecryptor->BlockTransformer())->SetIV(iIVBufPtr);
-			iIVSent = ETrue;
-			return aInput.Mid(rem);
-			}
-		}
-	else 
-		{
-		return aInput;
-		}
-	}
-
-CPBDecryptorSet::CPBDecryptorSet() : iIVSent(EFalse)
-	{
-	}
-
-CPBDecryptorSet::~CPBDecryptorSet()
-	{
-	delete iCipher;
-	//iCipher owns iCBCDecryptor we _don't_ need to delete it
-	delete iIVBuf;
-	}
-
-TInt CPBDecryptorSet::MaxOutputLength(TUint aMaxInputLength) const
-    {
-	if(iIVSent)
-		{
-		return (iCipher->MaxOutputLength(aMaxInputLength));
-		}
-	else	//	if we haven't sent the iv yet, then the length the max length of the
-		{	//	cipher minus a BlockSize where the IV was sitting (as the iv would be part
-			//	of the length they've sent us)
-		return (iCipher->MaxOutputLength(aMaxInputLength - iCipher->BlockSize()));
-		}
-    }
-
-TInt CPBDecryptorSet::MaxFinalOutputLength(TUint aMaxInputLength) const
-    {
-	if(iIVSent)
-		{
-		return (iCipher->MaxFinalOutputLength(aMaxInputLength));
-		}
-	else	//	if we haven't sent the iv yet, then the length the max length of the
-		{	//	cipher minus a BlockSize where the IV was sitting (as the iv would be part
-			//	of the length they've sent us)
-		return (iCipher->MaxFinalOutputLength(aMaxInputLength - iCipher->BlockSize()));
-		}
-    }
--- a/crypto/weakcrypto/source/pbe/pbeset.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,261 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32std.h>
-#include <random.h>
-#include <pbedata.h>
-#include "pkcs5kdf.h"
-#include "pbencryptor.h"
-#include "pbe.h"
-#include <securityerr.h>
-#include "pbesymmetricfactory.h"
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewL(const TPBPassword& aPassword)
-	{
-	CPBEncryptSet* self = NewLC(aPassword);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewLC(const TPBPassword& aPassword)
-	{
-	CPBEncryptSet* self = new(ELeave) CPBEncryptSet;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password());
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewL(const TPBPassword& aPassword, 
-	const TPBECipher aCipher)
-	{
-	CPBEncryptSet* self = NewLC(aPassword, aCipher);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewLC(const TPBPassword& aPassword, 
-	const TPBECipher aCipher)
-	{
-	CPBEncryptSet* self = new(ELeave) CPBEncryptSet;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password(), aCipher);
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewL(const TPBPassword& aPassword,
-	const CPBEncryptParms& aParms)
-	{
-	CPBEncryptSet* self = NewLC(aPassword, aParms);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewLC(const TPBPassword& aPassword, 
-	const CPBEncryptParms& aParms)
-	{
-	CPBEncryptSet* self = new(ELeave) CPBEncryptSet;
-	CleanupStack::PushL(self);
-	self->ConstructL(aPassword.Password(), aParms);
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewL(const CPBEncryptionData& aData, 
-	const TDesC8& aEncryptedKey, const TPBPassword& aPassword)
-	{
-	CPBEncryptSet* self = NewLC(aData, aEncryptedKey, aPassword);
-	CleanupStack::Pop();
-	return self;
-	}
-
-EXPORT_C CPBEncryptSet* CPBEncryptSet::NewLC(const CPBEncryptionData& aData,
-	const TDesC8& aEncryptedKey, const TPBPassword& aPassword)
-	{
-	CPBEncryptSet* self = new(ELeave) CPBEncryptSet;
-	CleanupStack::PushL(self);
-	self->ConstructL(aData, aEncryptedKey, aPassword);
-	return self;
-	}
-
-void CPBEncryptSet::ConstructL(const TDesC8& aPassword)
-	{
-	CPBEncryptElement::ConstructL(aPassword);
-	ConstructMasterKeyL();
-	}
-
-void CPBEncryptSet::ConstructL(const TDesC8& aPassword,
-	const TPBECipher aCipher)
-	{
-	CPBEncryptElement::ConstructL(aPassword, aCipher);
-	ConstructMasterKeyL();
-	}
-
-void CPBEncryptSet::ConstructL(const TDesC8& aPassword, 
-	const CPBEncryptParms& aParms)
-	{
-	CPBEncryptElement::ConstructL(aPassword, aParms);
-	ConstructMasterKeyL();
-	}
-
-void CPBEncryptSet::ConstructMasterKeyL(void)
-	{
-	TBuf8<KAESKeyBytes256> masterKey(KAESKeyBytes256);
-	TRandom::RandomL(masterKey);
-	iEncryptedMasterKey = HBufC8::NewL(KAESKeyBytes256);
-	EncryptMasterKeyL(masterKey);
-	}
-
-void CPBEncryptSet::ConstructL(const CPBEncryptionData& aData,
-	const TDesC8& aEncryptedMasterKey, const TPBPassword& aPassword)
-	{
-	CPBEncryptElement::ConstructL(aData, aPassword);
-	iEncryptedMasterKey = aEncryptedMasterKey.AllocL();
-	}
-
-EXPORT_C void CPBEncryptSet::ChangePasswordL(const TPBPassword& aNewPassword)
-	{
-	//1) Decrypt master key with old encrypt key 
-	TBuf8<KPBEMaxCipherKeyBytes> masterKey;
-	DecryptMasterKeyL(masterKey);
-
-	//2) create new encrypt parms
-
-	TBuf8<KPBEMaxSaltBytes> authSalt(KPBEMaxSaltBytes);
-	TRandom::RandomL(authSalt);
-
-	//3) create a totally new CPBEncryptionData representing the new password
-	CPBEncryptionData* newData = CPBEncryptionData::NewL(
-		aNewPassword.Password(), authSalt, iData->EncryptParms());
-
-	delete iData;
-	iData = newData;
-
-	// regenerate the password using a maximum length salt.
-	CPBEncryptParms& epNonConst =
-		const_cast<CPBEncryptParms&>(iData->EncryptParms());
-	epNonConst.ResizeSaltL(KPBEMaxSaltBytes);
-
-	TPtr8 iEncryptKeyBuf(iEncryptKey->Des());
-	iEncryptKeyBuf.SetLength(PBE::GetKeyBytes(iData->EncryptParms().Cipher()));
-	
-	iData->EncryptParms().DeriveKeyL(aNewPassword.Password(), iEncryptKeyBuf);
-
-	//4) Encrypt master key with new encrypt key
-	EncryptMasterKeyL(masterKey);
-	}
-
-EXPORT_C const TDesC8& CPBEncryptSet::EncryptedMasterKey(void) const
-	{
-	return *iEncryptedMasterKey;
-	}
-
-CPBEncryptor* CPBEncryptSet::NewEncryptLC(void) const
-	{
-	CPBEncryptor* encryptor = NewEncryptL();
-	CleanupStack::PushL(encryptor);
-	return encryptor;
-	}
-
-CPBEncryptor* CPBEncryptSet::NewEncryptL(void) const
-	{
-	TBuf8<KPBEMaxCipherKeyBytes> masterKey;
-	DecryptMasterKeyL(masterKey);
-
-	CPBEncryptor* encryptor = 0;
-	//make sure the masterkey we pass is exactly the right length for the cipher
-	encryptor = CPBEncryptorSet::NewL(iData->EncryptParms().Cipher(),
-		masterKey.Left(PBE::GetKeyBytes(iData->EncryptParms().Cipher())));		
-	return encryptor;
-	}
-
-CPBDecryptor* CPBEncryptSet::NewDecryptLC(void) const
-	{
-	CPBDecryptor* decryptor = NewDecryptL();
-	CleanupStack::PushL(decryptor);
-	return decryptor;
-	}
-
-CPBDecryptor* CPBEncryptSet::NewDecryptL(void) const
-	{
-	TBuf8<KPBEMaxCipherKeyBytes> masterKey;
-	DecryptMasterKeyL(masterKey);
-
-	CPBDecryptor* decryptor = 0;
-	//make sure the masterkey we pass is exactly the right length for the cipher
-	decryptor = CPBDecryptorSet::NewL(iData->EncryptParms().Cipher(),
-		masterKey.Left(PBE::GetKeyBytes(iData->EncryptParms().Cipher())));		
-	return decryptor;
-	}
-
-void CPBEncryptSet::DecryptMasterKeyL(TDes8& aMasterKey) const
-	{
-	CPBDecryptorElement* decryptor = CPBDecryptorElement::NewLC(
-		iData->EncryptParms().Cipher(), *iEncryptKey, iData->EncryptParms().IV());
-	aMasterKey.SetLength(0);
-	decryptor->Process(*iEncryptedMasterKey, aMasterKey);
-	CleanupStack::PopAndDestroy(decryptor);
-	}
-
-void CPBEncryptSet::EncryptMasterKeyL(const TDesC8& aMasterKey)
-	{
-	CPBEncryptorElement* encryptor = CPBEncryptorElement::NewLC(
-		iData->EncryptParms().Cipher(), *iEncryptKey, iData->EncryptParms().IV());
-	TPtr8 encryptedMasterKeyBuf(iEncryptedMasterKey->Des());
-	encryptedMasterKeyBuf.SetLength(0);
-	encryptor->Process(aMasterKey, encryptedMasterKeyBuf);
-	CleanupStack::PopAndDestroy(encryptor);
-	}
-
-CPBEncryptSet::CPBEncryptSet()
-	{
-	}
-
-CPBEncryptSet::~CPBEncryptSet()
-	{
-	delete iEncryptedMasterKey;
-	}
-
-// Warning: This function is only valid BEFORE you call NewEncryptL
-// After creating the cipher, ask it about itself, not me!
-// This is _very_ dodgy as I assume all sorts of things about the encryptor.
-// 1) That it uses SSLv3 or similar style padding
-// 2) That it stores the IV for that stream at the front.
-// This is here for specific application that requires this and aren't able to
-// actually construct the cipher and ask it.  In almost all other cases you
-// should construct the cipher and ask it.
-TInt CPBEncryptSet::MaxCiphertextLength(TInt aPlaintextLength) const
-    {
-	TUint blocksize = PBE::GetBlockBytes(iData->EncryptParms().Cipher());
-	TUint padding = blocksize - aPlaintextLength % blocksize;
-	//totallength = blocksize of iv hidden at beginning + inputLength + padding
-	return blocksize + aPlaintextLength + padding;
-    }
-
-// Warning: This function is only valid BEFORE you call NewDecryptL
-// After creating the cipher, ask it about itself, not me!
-TInt CPBEncryptSet::MaxPlaintextLength(TInt aCiphertextLength) const
-    {
-	/*It's impossible to determine anything about how much padding will be
-	 * removed.  So we'll return a max length that is longer than will ever
-	 * happen by at most a blocksize - 1.
-	 */
-	//In all cases SSLv3 padding has at least one byte of padding.
-	TUint blocksize = PBE::GetBlockBytes(iData->EncryptParms().Cipher());
-	//totallength = inputlength - iv hidden at beginning - 1 byte of padding
-    return aCiphertextLength - blocksize - 1;
-    }
-
--- a/crypto/weakcrypto/source/pbe/pbesymmetricfactory.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,245 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <symmetric.h>
-#include "pbesymmetricfactory.h"
-
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-
-/** OpenSSL PKCS8 Effective Key Length Compatibility.*/
-const TUint KPkcs8CompatibilityBits = 128;
-
-/** PKCS12 PBE Effective Key Length Compatibility.*/
-const TUint KPkcs12CompatibilityBits = 40;
-
-#endif
-
-TUint PBE::GetBlockBytes(TPBECipher aCipher)
-	{
-	switch(aCipher)
-		{
-		case ECipherAES_CBC_128:
-		case ECipherAES_CBC_192:
-		case ECipherAES_CBC_256:
-			return KAESBlockBytes;
-		case ECipherDES_CBC:
-		case ECipher3DES_CBC:
-
-		case ECipher2Key3DES_CBC: 
-
-			return KDESBlockBytes;
-		case ECipherRC2_CBC_128_16:
-		case ECipherRC2_CBC_40_16:
-		case ECipherRC2_CBC_128:
-		case ECipherRC2_CBC_40:
-
-		case ECipherRC2_CBC_40_5:
-
-			return KRC2BlockBytes;
-
-		case ECipherARC4_128:
-		case ECipherARC4_40:
-			return 1; // 1 byte block for stream cipher
-
-		default:
-			User::Panic(_L("Invalid PBE cipher"), 1);
-		}
-	return (KErrNone); //	For the compiler
-	}
-
-TUint PBE::GetKeyBytes(TPBECipher aCipher)
-	{
-	switch(aCipher)
-		{
-		case ECipherAES_CBC_128:
-			return KAESKeyBytes128;
-		case ECipherAES_CBC_192:
-			return KAESKeyBytes192;
-		case ECipherAES_CBC_256:
-			return KAESKeyBytes256;
-		case ECipherDES_CBC:
-			return KDESKeyBytes;
-		case ECipher3DES_CBC:
-			return K3DESKeyBytes;
-
-		case ECipher2Key3DES_CBC:
-			return K2Key3DESKeyBytes;
-
- 		case ECipherRC2_CBC_128:
- 		case ECipherRC2_CBC_128_16:
-			return KRC2KeyBytes128;
-		case ECipherRC2_CBC_40:
-		case ECipherRC2_CBC_40_16:
-
-		case ECipherRC2_CBC_40_5:
-
-			return KRC2KeyBytes40;
-
-		case ECipherARC4_128:
-			return KRC4KeyBytes128;
-		case ECipherARC4_40:	
-			return KRC4KeyBytes40;
-
-		default:
-			User::Panic(_L("Invalid PBE cipher"), 1);
-		}
-	return (KErrNone);	//	For the compiler
-	}
-
-CSymmetricCipher* PBE::MakeEncryptorL(TPBECipher aCipher, const TDesC8& aKey, 
-	const TDesC8& aIV)
-	{
-	CSymmetricCipher* cipher = 0;	
-	CBlockTransformation* block = 0;
-	switch(aCipher)
-		{
-
-		// stream cipher
-		case ECipherARC4_40:
-		case ECipherARC4_128:
-			cipher = CARC4::NewL(aKey, 0);
-			break;	
-
-		// block cipher	
-		case ECipherAES_CBC_128:
-		case ECipherAES_CBC_192:
-		case ECipherAES_CBC_256:
-			block = CAESEncryptor::NewLC(aKey);
-			break;
-
-		case ECipherDES_CBC:
-			block = CDESEncryptor::NewLC(aKey);
-			break;
-			
-		case ECipher3DES_CBC:		
-			block = C3DESEncryptor::NewLC(aKey);
-			break;
-	
-		case ECipher2Key3DES_CBC:
-			{
-			// Construct 3key from 2 key ( copy first key to 3rd key ) each key 8 bytes
-			TBuf8<K3DESKeyBytes>  encryptKey(aKey);			
-			encryptKey.Append(aKey.Ptr(),KDESKeyBytes);
-			block = C3DESEncryptor::NewLC(encryptKey);			
-			break;
-			}
-
-		case ECipherRC2_CBC_40:
-		case ECipherRC2_CBC_128:		
-			block = CRC2Encryptor::NewLC(aKey);
-			break;
-
-		case ECipherRC2_CBC_40_16:
-		case ECipherRC2_CBC_128_16:
-			block = CRC2Encryptor::NewLC(aKey, KPkcs8CompatibilityBits);
-			break;
-
-		case ECipherRC2_CBC_40_5:
-			block = CRC2Encryptor::NewLC(aKey, KPkcs12CompatibilityBits);
-			break;	
-
-		default:
-			User::Panic(_L("Invalid PBE encryptor"), 1);
-		}
-
-	// if aCipher is not stream cipher, create block cipher object
-	if(aCipher != ECipherARC4_40 && aCipher != ECipherARC4_128)
-		{			
-		block = CModeCBCEncryptor::NewL(block, aIV);
-		CleanupStack::Pop(); //1st block owned by 2nd
-		CleanupStack::PushL(block);//2nd block
-		CPadding* padding = CPaddingSSLv3::NewLC(GetBlockBytes(aCipher));
-		cipher = CBufferedEncryptor::NewL(block, padding);
-		CleanupStack::Pop(padding); //owned by cipher
-		CleanupStack::Pop(block); //owned by cipher
-		}
-
-	return cipher;
-	}
-
-
-CSymmetricCipher* PBE::MakeDecryptorL(TPBECipher aCipher, const TDesC8& aKey, 
-	const TDesC8& aIV)
-	{
-	CSymmetricCipher* cipher = 0;
-	CBlockTransformation* block = 0;
-	switch(aCipher)
-		{
-		// stream cipher
-		case ECipherARC4_40:
-		case ECipherARC4_128:
-			cipher = CARC4::NewL(aKey, 0);
-			break;	
-
-		// block cipher	
-		case ECipherAES_CBC_128:
-		case ECipherAES_CBC_192:
-		case ECipherAES_CBC_256:
-			block = CAESDecryptor::NewLC(aKey);
-			break;
-
-		case ECipherDES_CBC:
-			block = CDESDecryptor::NewLC(aKey);
-			break;
-			
-		case ECipher3DES_CBC:		
-			block = C3DESDecryptor::NewLC(aKey);
-			break;
-
-		case ECipher2Key3DES_CBC:
-			{
-			// Construct 3key from 2 key ( copy first key to 3rd key ) each key 8 bytes
-			TBuf8<K3DESKeyBytes>  encryptKey(aKey);			
-			encryptKey.Append(aKey.Ptr(),KDESKeyBytes);
-			block = C3DESDecryptor::NewLC(encryptKey);			
-			break;
-			}
-
-		case ECipherRC2_CBC_40:
-		case ECipherRC2_CBC_128:
-		  	block = CRC2Decryptor::NewLC(aKey);
-			break;
-			
-		case ECipherRC2_CBC_40_16:
-		case ECipherRC2_CBC_128_16:
-		  	block = CRC2Decryptor::NewLC(aKey, KPkcs8CompatibilityBits);
-			break;
-
-		case ECipherRC2_CBC_40_5:
-			block = CRC2Decryptor::NewLC(aKey, KPkcs12CompatibilityBits);
-			break;	
-
-		default:
-			User::Panic(_L("Invalid PBE decryptor"), 1);
-		}
-
-	// if aCipher is not stream cipher, create block cipher object
-	if(aCipher != ECipherARC4_40 && aCipher != ECipherARC4_128)
-		{	
-		block = CModeCBCDecryptor::NewL(block, aIV);
-		CleanupStack::Pop(); //1st block owned by 2nd
-		CleanupStack::PushL(block);//2nd block
-
-		CPadding* padding = CPaddingSSLv3::NewLC(GetBlockBytes(aCipher));
-		cipher = CBufferedDecryptor::NewL(block, padding);
-		CleanupStack::Pop(padding); //owned by cipher
-		CleanupStack::Pop(block); //owned by cipher
-		}
-
-	return cipher;
-	}
--- a/crypto/weakcrypto/source/pbe/pbesymmetricfactory.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* PBE symmetric factory
-*
-*/
-
-
-/**
- @file 
- @internalComponent 
-*/
- 
-#ifndef __PBESYMMETRICFACTORY_H__
-#define __PBESYMMETRICFACTORY_H__
-
-#include <symmetric.h>
-#include <pbe.h>
-
-const TUint KAESBlockBytes = 16;
-const TUint KAESKeyBytes128 = 16;
-const TUint KAESKeyBytes192 = 24;
-const TUint KAESKeyBytes256 = 32;
-
-const TUint KDESBlockBytes = 8;
-const TUint KDESKeyBytes = 8;
-const TUint K3DESKeyBytes = 24;
-
-const TUint K2Key3DESKeyBytes = 16;
-const TUint  KRC4KeyBytes128 = 16;
-const TUint  KRC4KeyBytes40 = 5;
-
-const TUint KRC2BlockBytes = 8;
-const TUint KRC2KeyBytes40 = 5;
-const TUint KRC2KeyBytes128 = 16;
-
-const TPBECipher KPBEDefaultStrongCipher = ECipherAES_CBC_128;
-const TPBECipher KPBEDefaultWeakCipher = ECipherDES_CBC;
-const TUint KPBEDefaultSaltBytes = 16; //pkcs5 recommends min 64 bits (8 bytes);
-
-const TUint KPBEMaxCipherIVBytes = KAESBlockBytes;
-const TUint KPBEMaxCipherKeyBytes = KAESKeyBytes256;
-const TUint KPBEMaxSaltBytes = 16; //pkcs5 recommends min 64 bits (8 bytes);
-
-class PBE
-	{
-public:
-	static TUint GetKeyBytes(TPBECipher aCipher);
-	static TUint GetBlockBytes(TPBECipher aCipher);
-
-	static CSymmetricCipher* MakeEncryptorL(TPBECipher aCipher, 
-		const TDesC8& aKey, const TDesC8& aIV);
-	static CSymmetricCipher* MakeDecryptorL(TPBECipher aCipher, 
-		const TDesC8& aKey, const TDesC8& aIV);
-private:
-	PBE(void);
-	PBE(const PBE&);
-	PBE& operator=(const PBE&);	
-	};
-
-#endif
--- a/crypto/weakcrypto/source/pkcs12kdf/GenTestDKs.java	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,150 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This program generates keys with Bouncy Castle for compatibility testing.
-*
-*/
-
-
-import java.security.SecureRandom; 
-import org.bouncycastle.crypto.PBEParametersGenerator;
-import org.bouncycastle.crypto.digests.SHA1Digest;
-import org.bouncycastle.crypto.generators.PKCS12ParametersGenerator;
-import org.bouncycastle.crypto.params.KeyParameter;
-
-public class GenTestDKs
-{
-	public static void main(String[] args)
-	{
-		PKCS12ParametersGenerator pgen = new PKCS12ParametersGenerator(new SHA1Digest());
-
-		// SB.4: key lengths for defined OIDs
-		// (168 for triple DES will first exercise chaining.)
-		final int[] keyLens = {40, 128, 168, 368};
-		
-		// SB.4 iteration count is recommended to be 1024 or more
-		final int[] iterCounts = {1, 2, 4, 8, 128, 1024, 1536, 2048};
-		
-		// SB.4 salt should be same length as hash function output
-		// (=160 bits for SHA1.)
-		byte[][] salts = new byte[3][];
-		salts[0] = new byte[] {'S', 'A', 'L', 'T'};
-		System.out.println("4 byte salt");
-		printByteArray(salts[0]);
-		
-		// calls to nextBytes() are only executed once
-/*		SecureRandom sr;
-		try { sr = SecureRandom.getInstance("SHA1PRNG", "SUN"); }
-		catch (Exception e)
-		{
-			System.err.println("UNABLE TO GET RANDOM SOURCE");
-			return;
-		}
-*/		
-//		salts[1] = new byte[160 / 8];
-//		sr.nextBytes(salts[1]);
-		salts[1] = new byte[]
-		{
-			(byte) 0x1d, (byte) 0x56, (byte) 0x50, (byte) 0x78,
-			(byte) 0xc3, (byte) 0x50, (byte) 0x6f, (byte) 0x89,
-			(byte) 0xbd, (byte) 0xa7, (byte) 0x3b, (byte) 0xb6,
-			(byte) 0xe3, (byte) 0xe5, (byte) 0xb8, (byte) 0xa3,
-			(byte) 0x68, (byte) 0x3d, (byte) 0xd3, (byte) 0x62
-		};
-		System.out.println("20 byte salt (same size as SHA1 output)");
-		printByteArray(salts[1]);
-		
-//		salts[2] = new byte[200 / 8];
-//		sr.nextBytes(salts[2]);
-		salts[2] = new byte[]
-        {
-			(byte) 0xe2, (byte) 0x2c, (byte) 0x7b, (byte) 0x03,
-			(byte) 0x16, (byte) 0x3a, (byte) 0xe5, (byte) 0x47,
-			(byte) 0xf8, (byte) 0x23, (byte) 0x9d, (byte) 0xa4,
-			(byte) 0x0d, (byte) 0x6f, (byte) 0x46, (byte) 0xd7,
-			(byte) 0x9e, (byte) 0xa3, (byte) 0xc6, (byte) 0xff,
-			(byte) 0xb3, (byte) 0xf0, (byte) 0x4e, (byte) 0xbe,
-			(byte) 0x61
-        };
-		System.out.println("25 byte salt");
-		printByteArray(salts[2]);
-		
-		final String passwds[] = {"0000", "0001", "PSWD", "password", "abcdefghijklmnopqrstuvwxyz"}; 
-		
-		for (int keyLenIdx = 0; keyLenIdx < keyLens.length; ++keyLenIdx)
-		{
-			for (int iterIdx = 0; iterIdx < iterCounts.length; ++iterIdx)
-			{
-				for (int saltIdx = 0; saltIdx < salts.length; ++saltIdx)
-				{
-					for (int pwdIdx = 0; pwdIdx < passwds.length; ++pwdIdx)
-					{
-						testKey(pgen, keyLens[keyLenIdx], iterCounts[iterIdx], passwds[pwdIdx], salts[saltIdx]);
-					}	// for (int pwdIdx = 0; pwdIdx < passwds.length; ++pwdIdx)
-				}	// for (int saltIdx = 0; saltIdx < salts.length; ++saltIdx)
-			}	// for (int iterIdx = 0; iterIdx < iterCounts.length; ++iterIdx)
-		}	// for (int keyLenIdx = 0; keyLenIdx < keyLens.length; ++keyLenIdx)
-	}
-	
-	private static void testKey(
-		PKCS12ParametersGenerator pgen,
-		int keyLen, int iterCount, String password, byte[] salt)
-	{
-		System.out.println(
-				"key len = " + keyLen + ", iter count = " + iterCount
-			+	", password = \"" + password + "\", salt len = " + salt.length);
-
-		char[] pwChars = password.toCharArray();
-		byte[] pwBytes = PBEParametersGenerator.PKCS12PasswordToBytes(pwChars);
-		
-		pgen.init(pwBytes, salt, iterCount);
-		KeyParameter kp = (KeyParameter) pgen.generateDerivedParameters(keyLen);
-		printByteArray(kp.getKey());
-	}
-	
-	private static void printByteArray(byte[] a)
-	{
-		final int BLOCK_SIZE = 16;
-		int keyLen = a.length;
-		int rowCount = keyLen / BLOCK_SIZE;
-		if ((keyLen % BLOCK_SIZE) != 0)
-			++rowCount;
-		
-		for (int row = 0; row < rowCount; ++row)
-			{
-			int start = row * BLOCK_SIZE;
-			int end = Math.min(start + BLOCK_SIZE, keyLen);
-			
-			StringBuffer line = new StringBuffer("[" + hexStr(start, 4) + "]");
-			
-			for (int i = start; i < end; ++i)
-				line.append(" " + hexStr(a[i], 2));
-			System.out.println(line);
-			}
-		System.out.println();
-	}
-	
-	private static String hexStr(int val, int width)
-	{
-		StringBuffer result = new StringBuffer();
-		while (--width >= 0)
-		{
-			int bitPos = 4 * width;
-			int nybble = (val & (0xf << bitPos)) >> bitPos;
-			result.append(Integer.toHexString(nybble));
-		}
-		
-		return result.toString();
-	}
-}
--- a/crypto/weakcrypto/source/pkcs12kdf/Pkcs12Pbe.java	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,130 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This program uses the Bouncy Castle APIs PKCS#12 KDF to generate encryption keys + ivs 
-* and mac keys for use with compatibility testing.
-*
-*/
-
-
-package com.symbian.security;
-
-import java.math.BigInteger;
-import java.security.SecureRandom;
-import org.bouncycastle.crypto.PBEParametersGenerator;
-import org.bouncycastle.crypto.digests.SHA1Digest;
-import org.bouncycastle.crypto.generators.PKCS12ParametersGenerator;
-import org.bouncycastle.crypto.CipherParameters;
-import org.bouncycastle.crypto.params.KeyParameter;
-import org.bouncycastle.crypto.params.ParametersWithIV;
-
-public class Pkcs12Pbe {
-	private PKCS12ParametersGenerator pgen;
-
-	public Pkcs12Pbe() {
-		pgen = new PKCS12ParametersGenerator(new SHA1Digest());
-	}
-
-	public static void main(String args[]) {
-		try {
-			if (args.length < 5) {
-				usage();
-				System.exit(-1);
-				
-			}
-			int keyLength = Integer.parseInt(args[0]);
-			int blockSize = Integer.parseInt(args[1]);
-			int iterations = Integer.parseInt(args[2]);
-			String salt = args[3];
-			String password = args[4];		
-			byte[] saltBytes = hexToByteArray(salt);
-	
-			Pkcs12Pbe pbe = new Pkcs12Pbe();
-			pbe.getKey(keyLength, blockSize, iterations, password, saltBytes);			
-		}
-		catch (Exception e) {
-			System.exit(-1);
-		}
-	}
-	
-	private static byte[] hexToByteArray(String hex) throws Exception {
-		if (hex.length() % 2 != 0) {
-			throw new Exception("hexToByteArray: odd number of nibbles");
-		}
-		StringBuffer hexBuffer = new StringBuffer(hex);
-		
-		byte[] byteBuffer = new byte[hexBuffer.length() / 2];
-		for (int i = 0; i < hexBuffer.length(); i+=2) {
-			try {
-				byteBuffer[i / 2] = (byte) Integer.parseInt(hexBuffer.substring(i, i+2), 16);
-			}
-			catch (NumberFormatException e) {
-				System.err.println("hexToByteArray: invalid hex string: " + hex);
-				throw e;
-			}
-		}
-		return byteBuffer;
-	}
-
-	private static void usage() {
-		System.err
-				.println("Usage: pkcs12pbe <key length> <block_size> <iterations> <salt> <password>\n");
-	}
-	
-	private void getKey(int keyLen, int ivLen, int iterCount, String password,
-			byte[] salt) {
-		System.out.print("key len = " + keyLen + ", iter count = "
-				+ iterCount + ", password = \"" + password + "\", salt = ");		
-		printUnformattedByteArray(salt);
-
-		char[] pwChars = password.toCharArray();
-		byte[] pwBytes = PBEParametersGenerator.PKCS12PasswordToBytes(pwChars);
-
-		pgen.init(pwBytes, salt, iterCount);
-		CipherParameters cp = pgen.generateDerivedParameters(keyLen, ivLen);
-
-		ParametersWithIV ivp = (ParametersWithIV) cp;
-		KeyParameter kp = (KeyParameter) ivp.getParameters();
-
-		System.out.print("key ");
-		printUnformattedByteArray((kp.getKey()));
-		System.out.print("iv ");
-		printUnformattedByteArray(ivp.getIV());
-
-		kp = (KeyParameter) pgen.generateDerivedMacParameters(160);
-		System.out.print("160bit hmac key ");
-		printUnformattedByteArray((kp.getKey()));
-
-	}
-
-	// unformatted hex strings that can be passed as arguments to openssl
-	private void printUnformattedByteArray(byte[] a) {
-		StringBuffer line = new StringBuffer();
-		
-		for (int i = 0; i < a.length; i++) {
-			line.append(hexStr(a[i], 2));
-		}
-		System.out.println(line);
-	}	
-
-	private String hexStr(int val, int width) {
-		StringBuffer result = new StringBuffer();
-		while (--width >= 0) {
-			int bitPos = 4 * width;
-			int nybble = (val & (0xf << bitPos)) >> bitPos;
-			result.append(Integer.toHexString(nybble));
-		}
-		return result.toString();
-	}
-}
--- a/crypto/weakcrypto/source/pkcs12kdf/pkcs12kdf.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,274 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <hash.h>
-#include <bigint.h>
-#include "pkcs12kdf.h"
-
-
-EXPORT_C HBufC8* PKCS12KDF::GeneratePasswordLC(const TDesC& aDes)
-/**
-	Convert the supplied string to a byte string, as described
-	in SB.1 of the PKCS 12 v1.0.
-	
-	Each character is converted to a big endian two-byte value,
-	and a terminating NULL character is appended to the end.
-	
-	@param	aDes			String to use as password.
- */
-	{
-	const TInt len = aDes.Length();
-	HBufC8* pwdBytes = HBufC8::NewMaxLC((len + 1) * 2);
-	TPtr8 pbDes = pwdBytes->Des();
-	
-	TInt i = 0;
-	while (i < len)
-		{
-		TUint16 ch = aDes[i];
-		pbDes[i * 2] = ch >> 8;
-		pbDes[(i * 2) + 1] = ch;
-		++i;
-		}
-	pbDes[i * 2] = pbDes[(i * 2) + 1] = 0;
-	
-	return pwdBytes;
-	}
-
-static TInt CeilDiv(TInt aNumerator, TInt aDenominator)
-/**
-	Utility function returns ceil(aNumerator / aDenominator).
-
-	@param	aNumerator		The numerator.
-	@param	aDenominator	Denominator, which cannot be zero.
-	@return					ceil(aNumerator / aDenominator)
- */
-	{
-	TInt result = aNumerator / aDenominator;
-	if ((aNumerator % aDenominator) > 0)
-		++result;
-	return result;
-	}
-
-EXPORT_C void PKCS12KDF::DeriveKeyL(
-	TDes8& aKey, TIDByteType aIDType,
-	const TDesC8& aPasswd, const TDesC8& aSalt, const TUint aIterations)
-/**
-	Generate a key for the supplied password and salt.
-	This implementation uses SHA1 as the hashing algorithm.
-	
-	@param	aKey			Descriptor which will hold key.  On entry
-							its length must be set to the expected key length.
-	@param	aIDType			Whether this function is being called to generate
-							an (en|de)cryption key, an initialization vector,
-							or a key for MAC-ing.  See SB.3 of spec.
-	@param	aPasswd			Password string.  To comply with PKCS#12 spec,
-							this must have 2-byte big-endian characters with
-							a terminating null character.
-	@param	aSalt			Used with aPasswd to generate key.
-	@param	aIterations		Number of times to call the hash function for
-							each block in the key.
-	
-	@panic	PKCS#12 16		Password is empty (debug only.)
-	@panic	PKCS#12 17		Password does not contain an even number of bytes,
-							and so can't use double-byte characters (debug only.)
-	@panic	PKCS#12 18		The final two-byte character is not a null terminator,
-							or a null terminator occurs before the end (debug only.)
- */
-	{
-	__ASSERT_DEBUG(aPasswd.Length() >= 2, Panic(EDKEmptyPswd));
-	__ASSERT_DEBUG((aPasswd.Length() % 2) == 0, Panic(EDKOddPswdByteCount));
-	TInt useCharCount = aPasswd.Length() / 2;
-	TPtrC16 pswd16(reinterpret_cast<const TUint16*>(aPasswd.Ptr()), useCharCount);
-	TInt nullPos = pswd16.Locate(L'\0');
-	__ASSERT_DEBUG(nullPos == (useCharCount - 1), Panic(EDKBadNullTerminator));
-
-	// use the same notation as the standard
-	const TUint8 ID = static_cast<TUint8>(aIDType);
-	const TInt u = 160;					// chaining variable length for SHA-1
-	const TInt v = 512;					// message input length for SHA-1
-	const TInt n = aKey.Length() * 8;	// number of bits required in key
-	const TInt p = aPasswd.Length();
-	const TInt s = aSalt.Length();
-	const TInt r = aIterations;
-	
-	// (numbered steps are from the standard)
-	// 1. Construct a string, D (the "diversifier"), by concatenating
-	// v/8 copies of ID.
-	const TInt D_LEN = v / 8;
-	HBufC8* D_ = HBufC8::NewMaxLC(D_LEN);
-	TPtr8 D = D_->Des();
-	D.Fill(ID);
-	
-	// 2. Concatenate copies of the salt together to create a string S
-	// of length v * ceil(s/v) bits (the final copy of the salt may be
-	// truncated to create S).  Note that if the salt is the empty string,
-	// then so is S.
-	const TInt S_OVER_V_CEIL = CeilDiv(s, v);
-	const TInt S_LEN = (v * S_OVER_V_CEIL) / 8;
-	HBufC8* S_ = HBufC8::NewMaxLC(S_LEN);
-	TPtr8 S = S_->Des();
-	S.Repeat(aSalt);
-	
-	// 3. Concatenate copies of the password together to create a string P
-	// of length v * ceil(p/v) bits (the final copy of the password may be
-	// truncated to create P).  Note that if the password is the empty string
-	// then so is P.
-	const TInt P_OVER_V_CEIL = CeilDiv(p, v);
-	const TInt P_LEN = (v * P_OVER_V_CEIL) / 8;
-	HBufC8* P_ = HBufC8::NewMaxLC(P_LEN);
-	TPtr8 P = P_->Des();
-	P.Repeat(aPasswd);
-	
-	// 4. Set I=S||P to be the concatenation of S and P.
-	const TInt I_LEN = S_LEN + P_LEN;
-	HBufC8* I_ = HBufC8::NewLC(I_LEN);
-	TPtr8 I = I_->Des();
-	I.Copy(S);
-	I.Append(P);
-	
-	// 5. Set c=ceil(n/u).
-	const TInt c = CeilDiv(n, u);
-	
-	// ahead 7: allocate result buffer A
-	// (Each Ai has SHA1_HASH bytes.)
-	HBufC8* A_ = HBufC8::NewLC(c * SHA1_HASH);
-	TPtr8 A = A_->Des();
-	
-	// 6. For i=1, 2, ..., c, do the following
-	
-	// pre-allocate SHA1 object, DI, and B buffers
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	
-	const TInt DI_LEN = D_LEN + I_LEN;
-	HBufC8* DI_ = HBufC8::NewLC(DI_LEN);
-	TPtr8 DI = DI_->Des();
-	
-	const TInt B_LEN = v / 8;
-	HBufC8* B_ = HBufC8::NewMaxLC(B_LEN);
-	TPtr8 B = B_->Des();
-	
-	for (TInt i = 1; i <= c; ++i)
-		{
-		// 6a) Set Ai = H^r(D||I).  (i.e. the rth hash of D||I,
-		// H(H(H(...H(D||I))))
-		DI.Copy(D);
-		DI.Append(I);
-		
-		sha1->Reset();
-		TBuf8<SHA1_HASH> Ai(sha1->Final(DI));
-		
-		for (TInt iterCount = 2; iterCount <= r; ++iterCount)
-			{
-			Ai.Copy(sha1->Final(Ai));
-			}
-		
-		// 6b) Concatenate copies of Ai to create a string B of length
-		// v bits (the final copy of Ai may be truncated to create B).
-		B.Repeat(Ai);
-		
-		// 6c) Treating I as a concatenation I0, I1, ..., Ik-1 of
-		// v-bit blocks, where k=ceil(s/v)+ceil(p/v), modify I by
-		// setting Ij=(Ij+B+1) mod 2^v for each j.
-
-		const TInt k = S_OVER_V_CEIL + P_OVER_V_CEIL;
-		for (TInt j = 0; j < k; ++j)
-			{
-			TPtr8 section = I.MidTPtr((v/8) * j, v/8);
-			Process6cL(section, B, v);
-			}
-		
-		// 7. Concatenate A1, A2, ..., Ac together to form a pseudo-random
-		// bit string, A.
-		A.Append(Ai);
-		
-		// stop building A if already have enough bits for key
-		if (A.Length() >= n / 8)
-			break;
-		}
-
-	// Use the first n bits of A as the output of this entire process.
-	aKey.Copy(A.Left(n / 8));
-	
-	CleanupStack::PopAndDestroy(8, D_);	// B_, DI_, sha1, A_, I_, P_, S_, D_
-	}
-
-void PKCS12KDF::Process6cL(TDes8& Ij, const TDesC8& B, TInt v)
-/**
-	Helper function for DeriveKeyL modifies part of I,
-	as described in step 6c of SB.2.
-	
-	@param	Ij		Section of I (S || P).
-	@param	B		rth hash of D || I.
-	@param	v		Number of bits to preserve in result.
- */
-	{
-	// 6c) Treating I as a concatenation I0, I1, ..., Ik-1 of
-	// v-bit blocks, where k=ceil(s/v)+ceil(p/v), modify I by
-	// setting Ij=(Ij+B+1) mod 2^v for each j.
-	
-	RInteger RI_Ij = RInteger::NewL(Ij);
-	TCleanupItem ciIj = RI_Ij;
-	CleanupStack::PushL(ciIj);
-	
-	RInteger RI_B = RInteger::NewL(B);
-	TCleanupItem ciB = RI_B;
-	CleanupStack::PushL(ciB);
-	
-	// these additions can leave
-	RI_Ij += RI_B;
-	RI_Ij += 1;
-	
-	HBufC8* result = RI_Ij.BufferLC();
-	
-	Ij.Zero();
-	TInt resultLen = result->Length();
-	
-	TInt bytesToPreserve = v / 8;
-	TInt leadingZeroes = bytesToPreserve - resultLen;
-	if (leadingZeroes <= 0)
-		Ij.Copy(result->Right(bytesToPreserve));
-	else
-		{
-		Ij.FillZ(leadingZeroes);
-		Ij.Append(*result);
-		}
-	
-	CleanupStack::PopAndDestroy(3, &RI_Ij);	// result, ciB, ciIj
-	}
-
-#ifdef _DEBUG
-
-void PKCS12KDF::Panic(PKCS12KDF::TPanic aPanic)
-/**
-	This function is used in debug builds to halt
-	the current thread when a logic error is detected.
-	
-	The current thread is panicked with category "PKCS12KDF"
-	and the supplied reason.
-	
-	@param	aPanic			Converted to numeric value and
-							used for the panic reason.
- */
-	{
-	_LIT(KPanicCat, "PKCS12KDF");
-	User::Panic(KPanicCat, aPanic);
-	}
-
-#endif
-
--- a/crypto/weakcrypto/source/pkcs5kdf/pkcs5kdf.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,115 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "pkcs5kdf.h"
-
-/* Before complaining about the variable names in this file, 
- * read the pkcs5 spec and all will become clear.
- */
-
-EXPORT_C void TPKCS5KDF::DeriveKeyL(TDes8& aKey, const TDesC8& aPasswd, const TDesC8& aSalt, 
-	const TUint aIterations)
-{
-	CSHA1* sha1 = CSHA1::NewL();
-	CleanupStack::PushL(sha1);
-	CHMAC* hmac = CHMAC::NewL(aPasswd, sha1);
-	CleanupStack::Pop(sha1); //hmac now owns it
-	CleanupStack::PushL(hmac);
-
-	TUint hashBytes = hmac->HashSize();
-	TUint c = aIterations;
-	TUint l = aKey.Length() / hashBytes; 
-	if(aKey.Length() % hashBytes != 0) //round up if mod !=0
-		{
-		l+=1;
-		}
-	TUint r = aKey.Length() - (l-1) * hashBytes; //r == length of last block
-	
-	HBufC8* TiTemp = HBufC8::NewLC(hashBytes);
-	TUint32* Ti = (TUint32*)(TiTemp->Ptr());
-	aKey.SetLength(0); //we've already saved the length we want
-
-	HBufC8* STemp = HBufC8::NewLC(aSalt.Length() + sizeof(TUint32));
-	TUint32* S = (TUint32*)(STemp->Ptr());
-
-	HBufC8* UiTemp = HBufC8::NewLC(hashBytes);
-	TUint32* Ui = (TUint32*)(UiTemp->Ptr());
-
-	const TUint32* salt = (TUint32*)(aSalt.Ptr());
-	TUint saltBytes = aSalt.Length();
-
-	for(TUint i = 1; i<=l; i++)
-		{
-		F(*hmac, Ti, S, Ui, hashBytes, salt, saltBytes, c, i);
-		if(i == l)
-			aKey.Append((TUint8*)Ti, r);
-		else 
-			aKey.Append((TUint8*)Ti, hashBytes);
-		}
-
-	CleanupStack::PopAndDestroy(UiTemp);
-	CleanupStack::PopAndDestroy(STemp);
-	CleanupStack::PopAndDestroy(TiTemp);
-	CleanupStack::PopAndDestroy(hmac);
-	}
-
-void TPKCS5KDF::F(CMessageDigest& aDigest, TUint32* aAccumulator, 
-	TUint32* S, TUint32* Ui, TUint aHashBytes, const TUint32* aSalt, 
-	TUint aSaltBytes, TUint c, TUint i)
-	{
-	TUint8 itmp[4];
-	itmp[0] = (TUint8)((i >> 24) & 0xff);
-	itmp[1] = (TUint8)((i >> 16) & 0xff);
-	itmp[2] = (TUint8)((i >> 8) & 0xff);
-	itmp[3] = (TUint8)(i & 0xff);
-	TUint8* endOfS = Mem::Copy(S, aSalt, aSaltBytes);
-	Mem::Copy((TUint32*)endOfS, (TUint32*)&itmp, 4);
-
-	TPtr8 sptr((TUint8*)S, aSaltBytes+4);
-	sptr.SetLength(aSaltBytes+4);
-	Mem::Copy(aAccumulator, (TUint32*)((aDigest.Final(sptr)).Ptr()),aHashBytes);
-	Mem::Copy(Ui, aAccumulator, aHashBytes);
-
-	for(TUint j=1; j<c; j++)
-		{
-		TPtr8 uiptr((TUint8*)Ui, aHashBytes);
-		uiptr.SetLength(aHashBytes);
-		Mem::Copy(Ui, (TUint32*)((aDigest.Final(uiptr)).Ptr()), aHashBytes);
-		XORString(Ui, aAccumulator, aHashBytes);
-		}
-	}
-
-inline void TPKCS5KDF::XORString(const TUint32* aOp1, TUint32* aOp2,
-	TUint aLength)
-	{
-	const TUint32* i = aOp1;
-
-	//this will overflow the whole final word if aLength % 4 != 0 
-	//but I can't see this mattering cuz all memory allocation is on a word by word basis
-	//i don't want to do this byte by byte as it'll be way slower
-	//also, every sane digest is going to be a multiple of 4 -- so this isn't a problem
-	for( ; aOp1 != (TUint32*)((TUint8*)i + aLength); )
-		{
-			*aOp2++ ^= *aOp1++;	
-		}
-	}
-
--- a/crypto/weakcrypto/source/random/random.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,183 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* (c) 1999-2003 Symbian Ltd
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32std.h>
-#include <random.h>
-#include <hash.h>
-#include <e32math.h>
-#include "randsvr.h"
-#include "randcliserv.h"
-
-_LIT(KRandomServerImg,"z:\\system\\libs\\randsvr.exe");		// DLL/EXE name
-_LIT(KRandomServerConnect, "Randsvr connect");
-_LIT(KRandomServerGet, "Randsvr get");
-
-const TUid KServerUid3={0x100066dc};
-
-extern "C" {
-EXPORT_C void RAND_bytes(unsigned char* buf,int bytes)
-	{
-	TPtr8 ptr(buf,bytes,bytes);
-	buf[0]++;
-	TRandom::Random(ptr);
-	}
-}
-
-EXPORT_C CRandom::CRandom(void)
-	{
-	}
-
-EXPORT_C CSystemRandom* CSystemRandom::NewL(void)
-	{
-	CSystemRandom* self = new(ELeave)CSystemRandom();
-	return self;
-	}
-
-EXPORT_C CSystemRandom* CSystemRandom::NewLC(void)
-	{
-	CSystemRandom* self = NewL();
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-void CSystemRandom::GenerateBytesL(TDes8& aDest)
-	{
-	TRandom::RandomL(aDest);
-	}
-
-CSystemRandom::CSystemRandom(void)
-	{
-	}
-
-EXPORT_C void TRandom::Random(TDes8& aDestination)
-	{
-	RRandomSession rs;
-	TRAPD(ret,rs.ConnectL());
-	if (ret)
-		{
-		User::Panic(KRandomServerConnect, ret);
-		}
-	TInt err=rs.GetRandom(aDestination);
-	if (err)
-		{
-		User::Panic(KRandomServerGet, err);
-		}
-	rs.Close();
-	}
-
-EXPORT_C void TRandom::RandomL(TDes8& aDestination)
-	{
-	RRandomSession rs;
-	TRAPD(ret,rs.ConnectL());
-	User::LeaveIfError(ret);
-	CleanupClosePushL(rs);
-
-	TInt err=rs.GetRandom(aDestination);
-	User::LeaveIfError(err);
-
-	CleanupStack::PopAndDestroy(); // rs
-	}
-
-EXPORT_C RRandomSession::RRandomSession(void)
-	{
-	}
-
-static TInt StartServer()
-// Borrowed from AndrewT's server startup code.
-// Start the server process/thread which lives in an EPOCEXE object
-//
-	{
-	
-	const TUidType serverUid(KNullUid,KNullUid,KServerUid3);
-
-	//
-	// EPOC and EKA2 is easy, we just create a new server process. Simultaneous
-	// launching of two such processes should be detected when the second one
-	// attempts to create the server object, failing with KErrAlreadyExists.
-	//
-	RProcess server;
-	TInt r=server.Create(KRandomServerImg, KNullDesC, serverUid);
-
-	if (r!=KErrNone)
-		return r;
-	TRequestStatus stat;
-	server.Rendezvous(stat);
-	if (stat!=KRequestPending)
-		server.Kill(0);		// abort startup
-	else
-		server.Resume();	// logon OK - start the server
-	User::WaitForRequest(stat);		// wait for start or death
-	// we can't use the 'exit reason' if the server panicked as this
-	// is the panic 'reason' and may be '0' which cannot be distinguished
-	// from KErrNone
-	r=(server.ExitType()==EExitPanic) ? KErrGeneral : stat.Int();
-	server.Close();
-	return r;
-
-	}
-
-EXPORT_C void RRandomSession::ConnectL(void)
-	{
-	TInt retry=2;
-	for (;;)
-		{
-		TInt r=CreateSession(KRandomServerName,TVersion(0,0,0),1);
-		if (r!=KErrNotFound && r!=KErrServerTerminated)
-			   User::Leave(r);
-		if (--retry==0)
-			User::Leave(r);
-		r=StartServer();
-		if (r!=KErrNone && r!=KErrAlreadyExists)
-			User::Leave(r);
-		}
-	}
-
-EXPORT_C TInt RRandomSession::GetRandom(TDes8& aDestination)
-	{
-	if (aDestination.Length()<KRandomBlockSize)
-		{
-		return SendReceive(CRandomSession::KRandomRequest,
-		                   TIpcArgs(&aDestination, aDestination.Length()));
-		}
-	else
-		{
-		TInt i;
-		TInt err=KErrNone;
-		TInt length=aDestination.Length();
-		for (i=0;(i+KRandomBlockSize)<length;i+=KRandomBlockSize)
-			{
-			TPtr8 buffer(&aDestination[i],KRandomBlockSize,KRandomBlockSize);
-			err=SendReceive(CRandomSession::KRandomRequest,
-			 				TIpcArgs(&buffer, KRandomBlockSize));
-			if (err)
-				{
-				return err;
-				}
-			}
-		TPtr8 buffer(&aDestination[i],length%KRandomBlockSize,KRandomBlockSize);
-		err=SendReceive(CRandomSession::KRandomRequest,
-						TIpcArgs(&buffer, length-i));
-		return err;
-		}
-	}
-
--- a/crypto/weakcrypto/source/random/randsvr.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,256 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "randsvr.h"
-#include "randcliserv.h"
-#include <e32math.h>
-#include "randsvrimpl.h"
-
-
-//const TInt KFastTickTimer=1000000;			// These are testing numbers!
-//const TInt KSlowTickTimer=30000000;
-const TInt KThreshold=1024;
-
-const TInt KFastTickTimer=30000000;			// These are the real numbers!
-const TInt KSlowTickTimer=0x7fffffff;
-
-
-void SignalClient()
-//
-// Signal the owning thread that the server has started successfully
-// This may itself fail
-//
-	{
-	RProcess::Rendezvous(KErrNone);
-	}
-
-
-EXPORT_C TInt RunRandomServer(TAny* /*aUnused*/)
-	{
-	CTrapCleanup* cleanup=CTrapCleanup::New();
-	if (!cleanup)
-		{
-		return KErrNoMemory;
-		}
-
-	TInt ret = User::RenameThread(KRandomServerName);
-
-	__ASSERT_ALWAYS(ret==KErrNone,User::Panic(KRandomServerName,KErrServerTerminated));
-
-	if (CRandomScheduler::New())
-		return KErrNoMemory;
-	ret = CRandomServer::New();
-	if (ret != KErrNone )
-		return ret;
-	// Initialisation complete, now signal the client
-	SignalClient();
-	
-	CRandomScheduler::Start();
-	delete cleanup;
-	return KErrNone;
-	}
-
-TBool CRandomScheduler::New(void)
-	{
-	CRandomScheduler* rs;
-	rs=new CRandomScheduler;
-	CRandomScheduler::Install(rs);
-	return (rs == NULL);
-	}
-
-void CRandomScheduler::Error(TInt /*aError*/) const 
-	{
-	User::Panic(KRandomServerName, 3);
-	}
-
-CRandomServer::CRandomServer(void) : CServer2(EPriorityLow)
-	{
-	}
-
-CRandomServer::~CRandomServer(void)
-	{
-	// This should never happen....but in case it does:
-	delete iHash;
-	delete iTicker;
-	delete iPool;
-	}
-
-TInt CRandomServer::New(void)
-	{
-	CRandomServer* self;
-	self=new CRandomServer;
-	if (!self)
-		{
-		return KErrNoMemory;
-		}
-	TRAPD(ret,self->ConstructL());
-	if (ret)
-		{
-		return ret;
-		}
-	
-	return self->Start(KRandomServerName);
-	}
-
-void CRandomServer::ConstructL(void)
-	{
-	iPool=new (ELeave) TUint8[KRandomPoolSize];
-	iHash=CSHA1::NewL();
-	iPoolIn=0;
-	iPoolOut=0;
-	iTicker=CPeriodic::NewL(EPriorityLow);
-	TCallBack callback(Tick,this);
-	iTicker->Start(KFastTickTimer,KFastTickTimer,callback);		// **** these figures might need tweaking!
-	iQuality=0;
-	iFast=ETrue;
-	}
-
-TInt CRandomServer::Tick(TAny* aServer)
-	{
-	CRandomServer* svr=(CRandomServer*)aServer;
-	svr->Stir();
-	svr->iQuality+=30;
-	if (svr->iFast)
-		{
-		if (svr->iQuality>KThreshold)
-			{
-			TCallBack callback(Tick,svr);
-			svr->iTicker->Cancel();
-			svr->iTicker->Start(KSlowTickTimer,KSlowTickTimer,callback);		// **** these figures might need tweaking!
-			svr->iFast=EFalse;
-			}
-		}
-	if (svr->iQuality>(KRandomPoolSize<<3))
-		{
-		svr->iQuality=(KRandomPoolSize<<3);
-		}
-	return ETrue;
-	}
-
-CSession2* CRandomServer::NewSessionL(const TVersion& /*aVersion*/, const RMessage2& /*aMessage*/) const
-	{
-	return CRandomSession::NewL(const_cast<CRandomServer*>(this));
-	//CRandomSession::NewL(CONST_CAST(CRandomServer*,this),Message().Client());
-	}
-
-TPtrC8 CRandomServer::GetRandom(void)
-	{
-	TPtr8 res(&iPool[iPoolOut],iHash->HashSize(),iHash->HashSize());
-	iPoolOut+=iHash->HashSize();
-	if ((iPoolOut+iHash->HashSize())>KRandomPoolSize)
-		{
-		iPoolOut=0;
-		}
-	return iHash->Hash(res);
-	}
-
-CMessageDigest* CRandomServer::Hash(void) const
-	{
-	return iHash;
-	}
-
-void CRandomServer::Stir(void) 
-	{
-	TInt rnd;
-	rnd=Math::Random();
-	TPtrC8 r((TUint8*)&rnd,sizeof(TInt));
-	iHash->Hash(r);
-	TPtr8 dest(&iPool[iPoolIn],iHash->HashSize());
-	dest.Copy(iHash->Hash(dest));
-	iPoolIn+=iHash->HashSize();
-	if ((iPoolIn+iHash->HashSize())>KRandomPoolSize)
-		{
-		iPoolIn=0;
-		}
-	}
-
-CRandomSession* CRandomSession::NewL(CRandomServer* aServer)
-	{
-	CRandomSession* self;
-	self=new (ELeave) CRandomSession(aServer);
-	return self;
-	}
-
-CRandomSession::CRandomSession(CRandomServer* aServer) : CSession2(), iServer(aServer)
-	{
-	}
-
-CRandomSession::~CRandomSession(void)
-	{
-	}
-
-void CRandomSession::ServiceL(const RMessage2& aMessage)
-	{
-	switch (aMessage.Function())
-		{
-	case KRandomRequest:
-		{
-		TInt ret = FillBuffer(aMessage);
-		aMessage.Complete(ret);
-		break;
-		}
-	default:
-		aMessage.Complete(KErrNotSupported);
-		break;
-		};
-	}
-
-TInt CRandomSession::FillBuffer(const RMessage2& aMessage)
-	{
-	TInt length = aMessage.Int1();
-	if (length < 0 || length > KRandomBlockSize)
-		return KErrArgument;
-	iServer->iQuality -= length;
-	if (iServer->iQuality<0)
-		{
-		iServer->iQuality=0;
-		}
-	if (!iServer->iFast)
-		{
-		if (iServer->iQuality<KThreshold)
-			{
-			TCallBack callback(CRandomServer::Tick,iServer);
-			iServer->iTicker->Cancel();
-			iServer->iTicker->Start(KFastTickTimer,KFastTickTimer,callback);		// **** these figures might need tweaking!
-			iServer->iFast=ETrue;
-			}
-		}
-	TBuf8<KRandomBlockSize> buf(0);
-	iServer->Stir();
-	TInt i;
-	TInt hashsize=iServer->Hash()->HashSize();
-	for (i=0; i+hashsize < length; i+=hashsize)
-		{
-		buf.Append(iServer->GetRandom());
-		iServer->Stir();
-		}
-	TPtrC8 ptr(iServer->GetRandom().Ptr(), length-i);
-	buf.Append(ptr);
-	
-	TRAPD(ret, aMessage.WriteL(0, buf));
-	return ret;
-	}
-
-GLDEF_C TInt E32Main(void)
-	{
-	return RunRandomServer(NULL);
-	}
--- a/crypto/weakcrypto/source/random/threadrandom.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <random.h>
-
-_LIT(KThreadRandom, "threadrandom.cpp");
-
-EXPORT_C void SetThreadRandomL(CRandom* aRNG)
-	{
-	User::LeaveIfError(Dll::SetTls(aRNG));	
-	}
-
-EXPORT_C void SetThreadRandomLC(CRandom* aRNG)
-	{
-	CleanupStack::PushL(aRNG);
-	SetThreadRandomL(aRNG);
-	//This pop before the push isn't a problem as the PushL can't fail. 
-	//We just did a push before this and thus there is enough room on the
-	//cleanupstack such that OOM is not possible.
-	CleanupStack::Pop(aRNG);
-	CleanupStack::PushL(TCleanupItem(&DeleteThreadRandom, Dll::Tls()));
-	}
-
-void DeleteThreadRandom(TAny* aPtr)
-	{
-	CRandom* random = reinterpret_cast<CRandom*>(aPtr);
-	delete random;
-	TInt result = Dll::SetTls(0);
-	__ASSERT_ALWAYS(result == 0, User::Panic(KThreadRandom, 1));
-	}
-
-EXPORT_C void DestroyThreadRandom(void)
-	{
-	delete (CRandom*)(Dll::Tls());
-	TInt result = Dll::SetTls(0);
-	__ASSERT_ALWAYS(result == 0, User::Panic(KThreadRandom, 1));
-	}
-
-EXPORT_C void GenerateRandomBytesL(TDes8& aDest)
-	{
-	TAny* tls = Dll::Tls();
-	if(tls)
-		{
-		((CRandom*)tls)->GenerateBytesL(aDest);
-		}
-	else
-		{
-		TRandom::RandomL(aDest);
-		}
-	}
--- a/crypto/weakcrypto/source/symmetric/3des.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,138 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "3des.h"
-#include "../common/inlines.h"
-#include "des.inl"
-#include <cryptostrength.h>
-
-const TInt K3DESBlockBytes = 8;
-const TInt K3DESKeyBytes = 24;
-const TInt KDESKeyBytes = 8;
-
-void C3DES::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == K3DESBlockBytes);
-		
-	TUint32 l, r;
-//	Split the block into 2 word-sized big endian portions
-	GetBlockBigEndian((TUint8*)&aBlock[0], l, r);
-
-	IPerm(l,r);
-
-	DoTransform(l, r, iK1);
-	DoTransform(r, l, iK2);
-	DoTransform(l, r, iK3);
-		
-	FPerm(l,r);
-
-//	Put the portions back into the block as little endian
-	PutBlockBigEndian((TUint8*)&aBlock[0], r, l);
-	}
-
-TInt C3DES::BlockSize() const
-	{
-	return K3DESBlockBytes;
-	}
-
-TInt C3DES::KeySize() const
-	{
-	return K3DESKeyBytes;
-	}
-
-C3DES::C3DES()
-	{
-	}
-
-void C3DES::ConstructL(const TDesC8& aKey)
-	{
-	assert(aKey.Size() == K3DESKeyBytes);
-
-	iKey = aKey.AllocL();
-	DoSetKey(*iKey);
-	}
-
-void C3DES::Reset()
-	{
-	DoSetKey(*iKey);
-	}
-
-/* C3DESEncryptor */
-
-EXPORT_C C3DESEncryptor* C3DESEncryptor::NewL(const TDesC8& aKey)
-	{
-	C3DESEncryptor* me = C3DESEncryptor::NewLC(aKey);
-	CleanupStack::Pop(me);
-	return (me);	
-	}
-
-EXPORT_C C3DESEncryptor* C3DESEncryptor::NewLC(const TDesC8& aKey)
-	{
-	C3DESEncryptor* me = new (ELeave) C3DESEncryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey);
-	// DES only used 7 bits out of every key byte
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()) - aKey.Size());
-	return (me);	
-	}
-
-void C3DESEncryptor::DoSetKey(const TDesC8& aKey)
-	{
-	// Encryptor key	
-	SetKey(aKey.Mid(0, KDESKeyBytes), iK1);
-	// Decryptor key
-	SetKey(aKey.Mid(KDESKeyBytes, 2*KDESKeyBytes), iK2);
-	ReverseKeySchedule(iK2); // Reverse key schedule order
-	// Encryptor key
-	SetKey(aKey.Mid(2*KDESKeyBytes), iK3);
-	}
- 
-/* C3DESDecryptor */
-
-EXPORT_C C3DESDecryptor* C3DESDecryptor::NewL(const TDesC8& aKey)
-	{
-	C3DESDecryptor* me = C3DESDecryptor::NewLC(aKey);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C C3DESDecryptor* C3DESDecryptor::NewLC(const TDesC8& aKey)
-	{
-	C3DESDecryptor* me = new (ELeave) C3DESDecryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey);
-	// DES only used 7 bits out of every key byte
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()) - aKey.Size());
-	return (me);
-	}
-
-void C3DESDecryptor::DoSetKey(const TDesC8& aKey)
-	{
-	// 3DES decryption, reverse through key
-	// Decryptor key
-	CDES::SetKey(aKey.Mid(2*KDESKeyBytes), iK1);
-	ReverseKeySchedule(iK1);	//	Reverse key schedule order	
-
-	// Encryptor key
-	CDES::SetKey(aKey.Mid(KDESKeyBytes, 2*KDESKeyBytes), iK2);
-	
-	// Decryptor key
-	CDES::SetKey(aKey.Mid(0, KDESKeyBytes), iK3);
-	ReverseKeySchedule(iK3);	//	Reverse key schedule order
-	}
-
--- a/crypto/weakcrypto/source/symmetric/arc4.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "arc4.h"
-#include "../common/inlines.h"
-#include <e32base.h>
-#include <cryptostrength.h>
-
-#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
-/** The size of the substitution box (i.e. lookup table) in bytes. */
-const TInt KSBoxSize = 256;
-#endif
-
-inline TUint8 CARC4::GenerateByte()
-	{
-	TUint8 a = iState[ix];
-	iy = (TUint8)((iy + a) & 0xff);
-	TUint8 b = iState[iy];
-
-	iState[ix] = b;
-	iState[iy] = a;
-	ix = (TUint8)((ix + 1) & 0xff);
-	return (iState[(a + b) & 0xff]);
-	}
-
-CARC4::CARC4(const TDesC8& aKey, TUint aDiscardBytes)
-	: ix(1), iy(0), iDiscardBytes(aDiscardBytes)
-	{
-	iKey.Copy(aKey);
-	GenerateSBox();
-	}
-
-EXPORT_C CARC4* CARC4::NewL(const TDesC8& aKey, TUint aDiscardBytes)
-	{
-	CARC4* self = NewLC(aKey, aDiscardBytes);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CARC4* CARC4::NewLC(const TDesC8& aKey, TUint aDiscardBytes)
-	{
-	CARC4* self = new(ELeave)CARC4(aKey, aDiscardBytes);
-	CleanupStack::PushL(self);
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()));
-	return self;
-	}
-
-void CARC4::DoProcess(TDes8& aData)
-	{
-	TInt blockLen = aData.Size();
-
-	if (blockLen > 0)
-		{
-		TUint8* blockPtr = (TUint8*)&aData[0];	
-		do
-			{
-			*blockPtr++ ^= GenerateByte();
-			} 
-		while (--blockLen);
-		}
-	}
-
-void CARC4::Reset()
-	{
-	ix = 1;
-	iy = 0;
-	GenerateSBox();
-	}
-
-TInt CARC4::KeySize() const
-	{
-	return (iKey.Size());
-	}
-
-void CARC4::DiscardBytes(TInt aDiscardBytes)
-	{	
-	if (aDiscardBytes > 0)
-		{
-		do
-			{
-			GenerateByte();
-			}
-		while(--aDiscardBytes);
-		}
-	}
-
-void CARC4::GenerateSBox(void)
-	{
-	TUint keyBytes = iKey.Size();
-		
-	TInt i = 0;
-	for (; i < KSBoxSize; i++)
-		iState[i] = (TUint8)i;
-	
-	TUint keyIndex = 0, stateIndex = 0;
-	i = 0;
-	for (; i < KSBoxSize; i++)
-		{
-		TUint a = iState[i];
-		stateIndex += iKey[keyIndex] + a;
-		stateIndex &= 0xff;
-		iState[i] = iState[stateIndex];
-		iState[stateIndex] = (TUint8)a;
-		if (++keyIndex >= (TUint)keyBytes)
-			keyIndex = 0;
-		}
-
-	DiscardBytes(iDiscardBytes);
-	}
--- a/crypto/weakcrypto/source/symmetric/bufferedtransformation.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,232 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "bufferedtransformation.h"
-#include "blocktransformation.h"
-#include "padding.h"
-#include "../common/inlines.h"
-#include <cryptopanic.h>
-
-EXPORT_C CBufferedTransformation::~CBufferedTransformation()
-	{
-	delete iBT;
-	delete iPadding;
-	delete iInputStoreBuf;
-	}
-
-void CBufferedTransformation::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxOutputLength(aInput.Length()), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	TInt blockSize = iBT->BlockSize();
-
-	if ( (aInput.Size() + iInputStore.Size()) < blockSize )
-		{
-		iInputStore.Append(aInput);
-		}
-	else
-		{
-		TInt outputIndex = aOutput.Size();
-		aOutput.Append(iInputStore);
-
-		TInt inputIndex = blockSize - iInputStore.Size();
-		aOutput.Append(aInput.Mid(0, inputIndex));
-
-		TPtr8 transformBuf((TUint8*)(aOutput.Ptr()) + outputIndex, blockSize,
-			blockSize);
-		//This should read: 
-		//TPtr8 transformBuf(aOutput.Mid(outputIndex, blockSize));
-		//but in the wonderful world of descriptors, Mid returns a TPtrC8 even
-		//when called on a TPtr8.  Fantastic eh?
-		iBT->Transform(transformBuf);
-
-		outputIndex += blockSize;
-
-		TInt len = aInput.Size() - blockSize;
-
-		for (; inputIndex<=len; inputIndex+=blockSize)
-			{
-			aOutput.Append(aInput.Mid(inputIndex, blockSize));			
-			transformBuf.Set((TUint8*)(aOutput.Ptr()) + outputIndex, blockSize,
-				blockSize);
-			iBT->Transform(transformBuf);
-			outputIndex += blockSize;
-			}
-
-		iInputStore.Zero();
-		if (inputIndex < aInput.Size())
-			iInputStore.Append(aInput.Mid(inputIndex));
-		}
-	}
-
-TInt CBufferedTransformation::MaxOutputLength(TInt aInputLength) const
-	{
-	TInt rem = (aInputLength + iInputStore.Size()) % (iBT->BlockSize());
-	return ((aInputLength + iInputStore.Size()) - rem);
-	}
-
-void CBufferedTransformation::Reset()
-	{
-	iBT->Reset();
-	iInputStore.Zero();
-	}
-
-TInt CBufferedTransformation::BlockSize() const
-	{
-	return (iBT->BlockSize());
-	}
-
-TInt CBufferedTransformation::KeySize() const
-	{
-	return (iBT->KeySize());
-	}
-
-EXPORT_C CBlockTransformation* CBufferedTransformation::BlockTransformer() const
-{
-	return (iBT);
-}
-
-CBufferedTransformation::CBufferedTransformation()
-	: iInputStore(0,0,0)
-	{
-	}
-
-void CBufferedTransformation::ConstructL(CBlockTransformation* aBT, CPadding* aPadding)
-	{
-	iInputStoreBuf = HBufC8::NewL(aBT->BlockSize());
-	iInputStore.Set(iInputStoreBuf->Des());
-
-	// Take ownership last - doesn't take ownership if we leave
-	iBT = aBT;
-	iPadding = aPadding;
-	}
-
-
-// CBufferedEncryptor
-
-EXPORT_C CBufferedEncryptor* CBufferedEncryptor::NewL(
-	CBlockTransformation* aBT, CPadding* aPadding)
-	{
-	CBufferedEncryptor* self = NewLC(aBT,aPadding);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CBufferedEncryptor* CBufferedEncryptor::NewLC(
-	CBlockTransformation* aBT, CPadding* aPadding)
-	{
-	CBufferedEncryptor* self = new (ELeave) CBufferedEncryptor();
-	CleanupStack::PushL(self);
-	self->ConstructL(aBT, aPadding);
-	return self;
-	}
-
-CBufferedEncryptor::CBufferedEncryptor()
-	{
-	}
-
-void CBufferedEncryptor::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxFinalOutputLength(aInput.Length()), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-	Process(aInput, aOutput);
-	
-	TInt outputIndex = aOutput.Size();
-	iPadding->PadL(iInputStore, aOutput);
-	assert(aOutput.Size() % iBT->BlockSize() == 0);
-
-	TUint blockSize = iBT->BlockSize();
-	TInt len = aOutput.Size() - outputIndex;
-	
-	for(TInt i=len; i>0; i-=blockSize)
-		{
-		TPtr8 transformBuf((TUint8*)(aOutput.Ptr()) + outputIndex, blockSize,
-			blockSize);
-		iBT->Transform(transformBuf);
-		outputIndex+=blockSize;
-		}
-
-	iInputStore.Zero();
-	}
-
-TInt CBufferedEncryptor::MaxFinalOutputLength(TInt aInputLength) const
-	{
-    return iPadding->MaxPaddedLength(iInputStore.Size() + aInputLength);
-	}
-
-// CBufferedDecryptor
-
-EXPORT_C CBufferedDecryptor* CBufferedDecryptor::NewL(
-	CBlockTransformation* aBT, CPadding* aPadding)
-	{
-	CBufferedDecryptor* self = NewLC(aBT,aPadding);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CBufferedDecryptor* CBufferedDecryptor::NewLC(
-	CBlockTransformation* aBT, CPadding* aPadding)
-	{
-	CBufferedDecryptor* self = new (ELeave) CBufferedDecryptor();
-	CleanupStack::PushL(self);
-	self->ConstructL(aBT, aPadding);
-	return self;
-	}
-
-CBufferedDecryptor::CBufferedDecryptor()
-	{
-	}
-
-void CBufferedDecryptor::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	__ASSERT_DEBUG(aOutput.MaxLength() >= MaxFinalOutputLength(aInput.Length()), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	assert((aInput.Size() + iInputStore.Size()) % iPadding->BlockSize()==0);
-	assert(aInput.Size() + iInputStore.Size() !=0 );
-	assert(iPadding->BlockSize() % BlockSize() == 0);
-	//1) Decrypt into aOutput up till the last full _padding_ blocksize
-	//If this panics with descriptor problems, you've probably called
-	//ProcessFinalL with a non-_padding_ blocksized aligned amount of data.
-	TInt lenToDecrypt = aInput.Size() - iPadding->BlockSize();
-	if(lenToDecrypt > 0)
-		{
-		Process(aInput.Left(lenToDecrypt), aOutput);
-		assert(iInputStore.Size()==0);
-		}
-	else
-		{
-		lenToDecrypt = 0;
-		}
-	
-	//2) Decrypt the last _padding_ blocksize into a new buffer
-	HBufC8* padBuf = HBufC8::NewLC(iPadding->BlockSize());
-	TPtr8 padPtr = padBuf->Des(); 
-	Process(aInput.Mid(lenToDecrypt), padPtr);
-	assert(iInputStore.Size()==0);
-		
-	//3) Unpad that last _padding_ blocksize into aOutput
-	// Note that padding systems must always, like everything else in crypto,
-	// _append_ data.
-	iPadding->UnPadL(padPtr, aOutput);
-
-	CleanupStack::PopAndDestroy(padBuf);
-	}
-
-TInt CBufferedDecryptor::MaxFinalOutputLength(TInt aInputLength) const
-	{
-	return iPadding->MaxUnPaddedLength(aInputLength + iInputStore.Size());
-	}
--- a/crypto/weakcrypto/source/symmetric/cbcmode.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,156 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "cbcmode.h"
-#include "../common/inlines.h"
-
-void CBlockChainingMode::Reset()
-	{
-	iRegister.Copy(iIV);
-	iBT->Reset();
-	}
-
-TInt CBlockChainingMode::BlockSize() const
-	{
-	return (iBT->BlockSize());
-	}
-
-TInt CBlockChainingMode::KeySize() const
-	{
-	return (iBT->KeySize());
-	}
-
-void CBlockChainingMode::SetIV(const TDesC8& aIV)
-	{
-	//We are making the stipulation that anybody calling SetIV is not setting it
-	//to a longer IV than they originally did.  Otherwise SetIV needs to leave.
-	assert(aIV.Size() <= iIV.Size());
-	iIV.Copy(aIV);
-	Reset();
-	}
-
-EXPORT_C CBlockChainingMode::CBlockChainingMode() 
-	: iBT(NULL), iRegister(0,0,0), iIV(0,0,0)
-	{
-	}
-
-EXPORT_C CBlockChainingMode::~CBlockChainingMode()
-	{
-	delete iBT;
-	delete iRegisterBuf;
-	delete iIVBuf;
-	}
-
-EXPORT_C void CBlockChainingMode::ConstructL(CBlockTransformation* aBT, const TDesC8& aIV)
-	{
-	iRegisterBuf = aIV.AllocL();
-	iRegister.Set(iRegisterBuf->Des());
-	iIVBuf = aIV.AllocL();
-	iIV.Set(iIVBuf->Des());
-
-	// Take ownership last - doesn't take ownership if we leave
-	iBT = aBT;
-	}
-
-/* CModeCBCEncryptor */
-EXPORT_C CModeCBCEncryptor* CModeCBCEncryptor::NewL(CBlockTransformation* aBT, 
-	const TDesC8& aIV)
-	{
-	CModeCBCEncryptor* self = NewLC(aBT, aIV);	
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CModeCBCEncryptor* CModeCBCEncryptor::NewLC(CBlockTransformation* aBT,
-	const TDesC8& aIV)
-	{
-	CModeCBCEncryptor* self = new (ELeave)CModeCBCEncryptor();	
-	CleanupStack::PushL(self);
-	self->ConstructL(aBT, aIV);
-	return self;
-	}
-
-CModeCBCEncryptor::CModeCBCEncryptor()
-	{
-	}
-
-void CModeCBCEncryptor::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == iBT->BlockSize());
-	assert(iRegister.Size() == aBlock.Size());
-
-	XorBuf(const_cast<TUint8*>(iRegister.Ptr()), aBlock.Ptr(), aBlock.Size());
-	iBT->Transform(iRegister);
-	aBlock.Copy(iRegister);
-	}
-
-/* CModeCBCDecryptor */
-EXPORT_C CModeCBCDecryptor* CModeCBCDecryptor::NewL(CBlockTransformation* aBT, 
-	const TDesC8& aIV)
-	{
-	CModeCBCDecryptor* self = NewLC(aBT, aIV);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-EXPORT_C CModeCBCDecryptor* CModeCBCDecryptor::NewLC(CBlockTransformation* aBT, 
-	const TDesC8& aIV)
-	{
-	CModeCBCDecryptor* self = new (ELeave)CModeCBCDecryptor();	
-	CleanupStack::PushL(self);
-	self->ConstructL(aBT, aIV);
-	return self;	
-	}
-
-void CModeCBCDecryptor::ConstructL(CBlockTransformation* aBT, const TDesC8& aIV)
-	{
-	iIVBakBuf = aIV.AllocL();
-	iIVBak.Set(iIVBakBuf->Des());
-	CBlockChainingMode::ConstructL(aBT, aIV);
-	}
-
-CModeCBCDecryptor::~CModeCBCDecryptor(void)
-	{
-	delete iIVBakBuf;
-	}
-
-CModeCBCDecryptor::CModeCBCDecryptor()
-	: iIVBak(0,0,0)
-	{
-	}
-
-void CModeCBCDecryptor::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == iBT->BlockSize());
-	assert(iRegister.Size() == aBlock.Size());
-	assert(iIVBak.Size() == aBlock.Size());
-	
-	// Take a copy of incoming block
-	iIVBak.Copy(aBlock);
-
-	// transform the block
-	iBT->Transform(aBlock);
-
-	// xor the output with the register
-	XorBuf(const_cast<TUint8*>(aBlock.Ptr()), iRegister.Ptr(), 
-		aBlock.Size());
-
-	// Update the register to be the original block
-	iRegister.Copy(iIVBak);
-}
-
--- a/crypto/weakcrypto/source/symmetric/des.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,269 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "des.h"
-#include "destables.h"
-#include "../common/inlines.h"
-#include "des.inl"
-#include <cryptostrength.h>
-
-const TInt KDESBlockBytes = 8;
-const TInt KDESKeyBytes = 8;
-
-//	bit 0 is left-most in byte
-static const TInt bytebit[] = {0200,0100,040,020,010,04,02,01};
-
-void CDES::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == KDESBlockBytes);
-
-	TUint32 l, r;
-	// Split the block into 2 word-sized big endian portions
-	GetBlockBigEndian((TUint8*)&aBlock[0], l, r);
-
-	IPerm(l,r);
-
-	CDES::DoTransform(l, r, iK1);
-		
-	FPerm(l,r);
-
-	// Put the portions back into the block as little endian
-	PutBlockBigEndian((TUint8*)&aBlock[0], r, l);
-	}
-
-void CDES::DoTransform(TUint32& l, TUint32& r, const TUint32* aKey)
-	{
-	TInt i = 0;
-	for (; i<8; i++)
-		{
-		TUint32 work = rotrFixed(r, 4U) ^ aKey[4*i+0];
-		l ^= DES_TABLE::sbox[6][(work) & 0x3f]
-		  ^  DES_TABLE::sbox[4][(work >> 8) & 0x3f]
-		  ^  DES_TABLE::sbox[2][(work >> 16) & 0x3f]
-		  ^  DES_TABLE::sbox[0][(work >> 24) & 0x3f];
-		work = r ^ aKey[4*i+1];
-		l ^= DES_TABLE::sbox[7][(work) & 0x3f]
-		  ^  DES_TABLE::sbox[5][(work >> 8) & 0x3f]
-		  ^  DES_TABLE::sbox[3][(work >> 16) & 0x3f]
-		  ^  DES_TABLE::sbox[1][(work >> 24) & 0x3f];
-
-		work = rotrFixed(l, 4U) ^ aKey[4*i+2];
-		r ^= DES_TABLE::sbox[6][(work) & 0x3f]
-		  ^  DES_TABLE::sbox[4][(work >> 8) & 0x3f]
-		  ^  DES_TABLE::sbox[2][(work >> 16) & 0x3f]
-		  ^  DES_TABLE::sbox[0][(work >> 24) & 0x3f];
-		work = l ^ aKey[4*i+3];
-		r ^= DES_TABLE::sbox[7][(work) & 0x3f]
-		  ^  DES_TABLE::sbox[5][(work >> 8) & 0x3f]
-		  ^  DES_TABLE::sbox[3][(work >> 16) & 0x3f]
-		  ^  DES_TABLE::sbox[1][(work >> 24) & 0x3f];
-		}
-	}
-
-
-TInt CDES::BlockSize() const
-	{
-	return KDESBlockBytes;
-	}
-
-TInt CDES::KeySize() const
-	{
-	return KDESKeyBytes;
-	}
-
-CDES::~CDES()
-	{
-	delete iKey;
-	}
-
-void CDES::ConstructL(const TDesC8& aKey, TBool /*aCheckWeakKey*/)
-	{
-	assert(aKey.Size() == KDESKeyBytes);
-
-	iKey = aKey.AllocL();
-	SetKey(aKey, iK1);
-	}
-
-CDES::CDES()
-	{
-	}
-
-typedef TUint8 TKeyDES[KDESKeyBytes];
-const TInt KKnownWeakKeysCount = 16;
-const TKeyDES weak_keys[KKnownWeakKeysCount] =
-	{
-	/* weak keys */
-	{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
-	{0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE},
-	{0x1E,0x1E,0x1E,0x1E,0x0E,0x0E,0x0E,0x0E},
-	{0xE0,0xE0,0xE0,0xE0,0xF0,0xF0,0xF0,0xF0},
-	{0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFE},
-	{0xFE,0x00,0xFE,0x00,0xFE,0x00,0xFE,0x00},
-	{0x1E,0xE0,0x1E,0xE0,0x0E,0xF0,0x0E,0xF0},
-	{0xE0,0x1E,0xE0,0x1E,0xF0,0x0E,0xF0,0x0E},
-	{0x00,0xE0,0x00,0xE0,0x00,0xF0,0x00,0xF0},
-	{0xE0,0x00,0xE0,0x00,0xF0,0x00,0xF0,0x00},
-	{0x1E,0xFE,0x1E,0xFE,0x0E,0xFE,0x0E,0xFE},
-	{0xFE,0x1E,0xFE,0x1E,0xFE,0x0E,0xFE,0x0E},
-	{0x00,0x1E,0x00,0x1E,0x00,0x0E,0x00,0x0E},
-	{0x1E,0x00,0x1E,0x00,0x0E,0x00,0x0E,0x00},
-	{0xE0,0xFE,0xE0,0xFE,0xF0,0xFE,0xF0,0xFE},
-	{0xFE,0xE0,0xFE,0xE0,0xFE,0xF0,0xFE,0xF0}
-	};
-
-void CDES::SetKey(const TDesC8& aKey, TUint32* aKeyBuffer)
-	{
-	TInt i=0, j=0, l=0, m=0;
-
-//	Form a byte array from aKey, taking endianess into account (little->big)	
-	TUint8 key[8];								//	For big endian byte array	
-	Mem::Copy(&key, &aKey[0], 8);
-
-	TUint8 buffer[56+56+8];
-	TUint8* const pc1m = &buffer[0];			/* place to modify pc1 into */
-	TUint8* const pcr = pc1m + 56;				/* place to rotate pc1 into */
-	TUint8* const ks = pcr + 56;
-
-	for (j=0; j<56; j++) 
-		{/* convert pc1 to bits of key */
-		l = DES_TABLE::pc1[j]-1;				/* integer bit location  */
-		m = l & 07;								/* find bit              */
-		pc1m[j]=(key[l>>3] &					/* find which key byte l is in */
-			bytebit[m])							/* and which bit of that byte */
-			? (TUint8)1 : (TUint8)0;			/* and store 1-bit result */
-		}
-
-	for (i=0; i<16; i++) 
-		{/* key chunk for each iteration */
-		Mem::FillZ(ks,8);							/* Clear key schedule */
-		for (j=0; j<56; j++)
-		/*	rotate pc1 the right amount */
-			pcr[j] = pc1m[(l=j+DES_TABLE::totrot[i])<(j<28? 28 : 56) ? l: l-28];
-		
-		/* rotate left and right halves independently */
-		
-		for (j=0; j<48; j++)
-			{/* select bits individually */
-			/* check bit that goes to ks[j] */
-			if (pcr[DES_TABLE::pc2[j]-1])
-				{/* mask it in if it's there */
-				l= j % 6;
-				ks[j/6] |= bytebit[l] >> 2;
-				}
-			}
-
-		/* Now convert to odd/even interleaved form for use in F */
-		(*(aKeyBuffer+(2*i))) = ((TUint32)ks[0] << 24)
-			| ((TUint32)ks[2] << 16)
-			| ((TUint32)ks[4] << 8)
-			| ((TUint32)ks[6]);
-		
-		(*(aKeyBuffer+(2*i+1))) = ((TUint32)ks[1] << 24)
-			| ((TUint32)ks[3] << 16)
-			| ((TUint32)ks[5] << 8)
-			| ((TUint32)ks[7]);
-		}
-	}
-
-void CDES::Reset()
-	{
-	SetKey(*iKey, iK1);
-	}
-
-
-/* CDESEncryptor */
-
-EXPORT_C CDESEncryptor* CDESEncryptor::NewL(const TDesC8& aKey, 
-	TBool aCheckWeakKey)
-	{
-	CDESEncryptor* me = CDESEncryptor::NewLC(aKey, aCheckWeakKey);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C CDESEncryptor* CDESEncryptor::NewLC(const TDesC8& aKey, 
-	TBool aCheckWeakKey)
-	{
-	CDESEncryptor* me = new (ELeave) CDESEncryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey, aCheckWeakKey);
-	// DES only used 7 bits out of every key byte
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()) - aKey.Size());
-	return (me);
-	}
-
-CDESEncryptor::CDESEncryptor()
-	{
-	}
-
-/* CDESDecryptor */
-
-EXPORT_C CDESDecryptor* CDESDecryptor::NewL(const TDesC8& aKey, 
-	TBool aCheckWeakKey)
-	{
-	CDESDecryptor* me = CDESDecryptor::NewLC(aKey, aCheckWeakKey);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C CDESDecryptor* CDESDecryptor::NewLC(const TDesC8& aKey, 
-	TBool aCheckWeakKey)
-	{
-	CDESDecryptor* me = new (ELeave) CDESDecryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey, aCheckWeakKey);
-	// DES only used 7 bits out of every key byte
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()) - aKey.Size());
-	return (me);
-	}
-
-
-CDESDecryptor::CDESDecryptor()
-	{
-	}
-
-void CDESDecryptor::SetKey(const TDesC8& aKey, TUint32* aKeyBuffer)
-	{
-	CDES::SetKey(aKey, aKeyBuffer);
-
-	ReverseKeySchedule(iK1);
-	}
-
-EXPORT_C TBool CDES::IsWeakKey(const TDesC8& aKey)
-	{
-	TKeyDES key;
-	TInt index = 0;
-	//Reset parity bits
-	for(; index < KDESKeyBytes; index++)
-		{
-		key[index] = aKey[index] & 0xFE;
-		}
-		
-	TBool weak = EFalse;	
-	//Compare key with potential weak keys without parity	
-	for (index=0; index < KKnownWeakKeysCount; index++)
-		{
-		if (Mem::Compare(weak_keys[index], KDESKeyBytes, &key[0], KDESKeyBytes)==0)
-			{
-			weak = ETrue;
-			break;
-			}
-		}
-	return weak;
-	}
-
--- a/crypto/weakcrypto/source/symmetric/des.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __DES_INL__
-#define __DES_INL__
-
-inline void IPerm(TUint32& left, TUint32& right)
-	{
-	TUint32 work;
-
-	right = rotlFixed(right, 4U);
-	work = (left ^ right) & 0xf0f0f0f0;
-	left ^= work;
-	right = rotrFixed(right^work, 20U);
-	work = (left ^ right) & 0xffff0000;
-	left ^= work;
-	right = rotrFixed(right^work, 18U);
-	work = (left ^ right) & 0x33333333;
-	left ^= work;
-	right = rotrFixed(right^work, 6U);
-	work = (left ^ right) & 0x00ff00ff;
-	left ^= work;
-	right = rotlFixed(right^work, 9U);
-	work = (left ^ right) & 0xaaaaaaaa;
-	left = rotlFixed(left^work, 1U);
-	right ^= work;
-	}
-
-inline void FPerm(TUint32& left, TUint32& right)
-	{
-	TUint32 work;
-
-	right = rotrFixed(right, 1U);
-	work = (left ^ right) & 0xaaaaaaaa;
-	right ^= work;
-	left = rotrFixed(left^work, 9U);
-	work = (left ^ right) & 0x00ff00ff;
-	right ^= work;
-	left = rotlFixed(left^work, 6U);
-	work = (left ^ right) & 0x33333333;
-	right ^= work;
-	left = rotlFixed(left^work, 18U);
-	work = (left ^ right) & 0xffff0000;
-	right ^= work;
-	left = rotlFixed(left^work, 20U);
-	work = (left ^ right) & 0xf0f0f0f0;
-	right ^= work;
-	left = rotrFixed(left^work, 4U);
-	}
-
-inline void ReverseKeySchedule(TUint32* aKey)
-	{
-	TInt i = 0;
-	for (; i<16; i+=2)
-		{
-		TClassSwap((*(aKey+i)), (*(aKey+(32-2-i))));
-		TClassSwap((*(aKey+i+1)), (*(aKey+(32-1-i))));
-		}
-	}
-
-#endif //__DES_INL__
--- a/crypto/weakcrypto/source/symmetric/destables.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,184 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* DES Tables
-*
-*/
-
-
-/**
- @file 
- @internalComponent 
-*/
- 
-#ifndef __DESTABLES_H__
-#define __DESTABLES_H__
-
-#include <e32std.h>
-
-namespace DES_TABLE
-{
-/* initial permutation IP */
-const TUint8 ip[] = {
-	   58, 50, 42, 34, 26, 18, 10,  2,
-	   60, 52, 44, 36, 28, 20, 12,  4,
-	   62, 54, 46, 38, 30, 22, 14,  6,
-	   64, 56, 48, 40, 32, 24, 16,  8,
-	   57, 49, 41, 33, 25, 17,  9,  1,
-	   59, 51, 43, 35, 27, 19, 11,  3,
-	   61, 53, 45, 37, 29, 21, 13,  5,
-	   63, 55, 47, 39, 31, 23, 15,  7
-};
-
-/* final permutation IP^-1 */
-const TUint8 fp[] = {
-	   40,  8, 48, 16, 56, 24, 64, 32,
-	   39,  7, 47, 15, 55, 23, 63, 31,
-	   38,  6, 46, 14, 54, 22, 62, 30,
-	   37,  5, 45, 13, 53, 21, 61, 29,
-	   36,  4, 44, 12, 52, 20, 60, 28,
-	   35,  3, 43, 11, 51, 19, 59, 27,
-	   34,  2, 42, 10, 50, 18, 58, 26,
-	   33,  1, 41,  9, 49, 17, 57, 25
-};
-
-/* expansion operation matrix */
-const TUint8 ei[] = {
-	   32,  1,  2,  3,  4,  5,
-		4,  5,  6,  7,  8,  9,
-		8,  9, 10, 11, 12, 13,
-	   12, 13, 14, 15, 16, 17,
-	   16, 17, 18, 19, 20, 21,
-	   20, 21, 22, 23, 24, 25,
-	   24, 25, 26, 27, 28, 29,
-	   28, 29, 30, 31, 32,  1
-};
-
-const TUint32 sbox[8][64] = {
-{
-0x01010400,0x00000000,0x00010000,0x01010404, 0x01010004,0x00010404,0x00000004,0x00010000,
-0x00000400,0x01010400,0x01010404,0x00000400, 0x01000404,0x01010004,0x01000000,0x00000004,
-0x00000404,0x01000400,0x01000400,0x00010400, 0x00010400,0x01010000,0x01010000,0x01000404,
-0x00010004,0x01000004,0x01000004,0x00010004, 0x00000000,0x00000404,0x00010404,0x01000000,
-0x00010000,0x01010404,0x00000004,0x01010000, 0x01010400,0x01000000,0x01000000,0x00000400,
-0x01010004,0x00010000,0x00010400,0x01000004, 0x00000400,0x00000004,0x01000404,0x00010404,
-0x01010404,0x00010004,0x01010000,0x01000404, 0x01000004,0x00000404,0x00010404,0x01010400,
-0x00000404,0x01000400,0x01000400,0x00000000, 0x00010004,0x00010400,0x00000000,0x01010004},
-{
-0x80108020,0x80008000,0x00008000,0x00108020, 0x00100000,0x00000020,0x80100020,0x80008020,
-0x80000020,0x80108020,0x80108000,0x80000000, 0x80008000,0x00100000,0x00000020,0x80100020,
-0x00108000,0x00100020,0x80008020,0x00000000, 0x80000000,0x00008000,0x00108020,0x80100000,
-0x00100020,0x80000020,0x00000000,0x00108000, 0x00008020,0x80108000,0x80100000,0x00008020,
-0x00000000,0x00108020,0x80100020,0x00100000, 0x80008020,0x80100000,0x80108000,0x00008000,
-0x80100000,0x80008000,0x00000020,0x80108020, 0x00108020,0x00000020,0x00008000,0x80000000,
-0x00008020,0x80108000,0x00100000,0x80000020, 0x00100020,0x80008020,0x80000020,0x00100020,
-0x00108000,0x00000000,0x80008000,0x00008020, 0x80000000,0x80100020,0x80108020,0x00108000},
-{
-0x00000208,0x08020200,0x00000000,0x08020008, 0x08000200,0x00000000,0x00020208,0x08000200,
-0x00020008,0x08000008,0x08000008,0x00020000, 0x08020208,0x00020008,0x08020000,0x00000208,
-0x08000000,0x00000008,0x08020200,0x00000200, 0x00020200,0x08020000,0x08020008,0x00020208,
-0x08000208,0x00020200,0x00020000,0x08000208, 0x00000008,0x08020208,0x00000200,0x08000000,
-0x08020200,0x08000000,0x00020008,0x00000208, 0x00020000,0x08020200,0x08000200,0x00000000,
-0x00000200,0x00020008,0x08020208,0x08000200, 0x08000008,0x00000200,0x00000000,0x08020008,
-0x08000208,0x00020000,0x08000000,0x08020208, 0x00000008,0x00020208,0x00020200,0x08000008,
-0x08020000,0x08000208,0x00000208,0x08020000, 0x00020208,0x00000008,0x08020008,0x00020200},
-{
-0x00802001,0x00002081,0x00002081,0x00000080, 0x00802080,0x00800081,0x00800001,0x00002001,
-0x00000000,0x00802000,0x00802000,0x00802081, 0x00000081,0x00000000,0x00800080,0x00800001,
-0x00000001,0x00002000,0x00800000,0x00802001, 0x00000080,0x00800000,0x00002001,0x00002080,
-0x00800081,0x00000001,0x00002080,0x00800080, 0x00002000,0x00802080,0x00802081,0x00000081,
-0x00800080,0x00800001,0x00802000,0x00802081, 0x00000081,0x00000000,0x00000000,0x00802000,
-0x00002080,0x00800080,0x00800081,0x00000001, 0x00802001,0x00002081,0x00002081,0x00000080,
-0x00802081,0x00000081,0x00000001,0x00002000, 0x00800001,0x00002001,0x00802080,0x00800081,
-0x00002001,0x00002080,0x00800000,0x00802001, 0x00000080,0x00800000,0x00002000,0x00802080},
-{
-0x00000100,0x02080100,0x02080000,0x42000100, 0x00080000,0x00000100,0x40000000,0x02080000,
-0x40080100,0x00080000,0x02000100,0x40080100, 0x42000100,0x42080000,0x00080100,0x40000000,
-0x02000000,0x40080000,0x40080000,0x00000000, 0x40000100,0x42080100,0x42080100,0x02000100,
-0x42080000,0x40000100,0x00000000,0x42000000, 0x02080100,0x02000000,0x42000000,0x00080100,
-0x00080000,0x42000100,0x00000100,0x02000000, 0x40000000,0x02080000,0x42000100,0x40080100,
-0x02000100,0x40000000,0x42080000,0x02080100, 0x40080100,0x00000100,0x02000000,0x42080000,
-0x42080100,0x00080100,0x42000000,0x42080100, 0x02080000,0x00000000,0x40080000,0x42000000,
-0x00080100,0x02000100,0x40000100,0x00080000, 0x00000000,0x40080000,0x02080100,0x40000100},
-{
-0x20000010,0x20400000,0x00004000,0x20404010, 0x20400000,0x00000010,0x20404010,0x00400000,
-0x20004000,0x00404010,0x00400000,0x20000010, 0x00400010,0x20004000,0x20000000,0x00004010,
-0x00000000,0x00400010,0x20004010,0x00004000, 0x00404000,0x20004010,0x00000010,0x20400010,
-0x20400010,0x00000000,0x00404010,0x20404000, 0x00004010,0x00404000,0x20404000,0x20000000,
-0x20004000,0x00000010,0x20400010,0x00404000, 0x20404010,0x00400000,0x00004010,0x20000010,
-0x00400000,0x20004000,0x20000000,0x00004010, 0x20000010,0x20404010,0x00404000,0x20400000,
-0x00404010,0x20404000,0x00000000,0x20400010, 0x00000010,0x00004000,0x20400000,0x00404010,
-0x00004000,0x00400010,0x20004010,0x00000000, 0x20404000,0x20000000,0x00400010,0x20004010},
-{
-0x00200000,0x04200002,0x04000802,0x00000000, 0x00000800,0x04000802,0x00200802,0x04200800,
-0x04200802,0x00200000,0x00000000,0x04000002, 0x00000002,0x04000000,0x04200002,0x00000802,
-0x04000800,0x00200802,0x00200002,0x04000800, 0x04000002,0x04200000,0x04200800,0x00200002,
-0x04200000,0x00000800,0x00000802,0x04200802, 0x00200800,0x00000002,0x04000000,0x00200800,
-0x04000000,0x00200800,0x00200000,0x04000802, 0x04000802,0x04200002,0x04200002,0x00000002,
-0x00200002,0x04000000,0x04000800,0x00200000, 0x04200800,0x00000802,0x00200802,0x04200800,
-0x00000802,0x04000002,0x04200802,0x04200000, 0x00200800,0x00000000,0x00000002,0x04200802,
-0x00000000,0x00200802,0x04200000,0x00000800, 0x04000002,0x04000800,0x00000800,0x00200002},
-{
-0x10001040,0x00001000,0x00040000,0x10041040, 0x10000000,0x10001040,0x00000040,0x10000000,
-0x00040040,0x10040000,0x10041040,0x00041000, 0x10041000,0x00041040,0x00001000,0x00000040,
-0x10040000,0x10000040,0x10001000,0x00001040, 0x00041000,0x00040040,0x10040040,0x10041000,
-0x00001040,0x00000000,0x00000000,0x10040040, 0x10000040,0x10001000,0x00041040,0x00040000,
-0x00041040,0x00040000,0x10041000,0x00001000, 0x00000040,0x10040040,0x00001000,0x00041040,
-0x10001000,0x00000040,0x10000040,0x10040000, 0x10040040,0x10000000,0x00040000,0x10001040,
-0x00000000,0x10041040,0x00040040,0x10000040, 0x10040000,0x10001000,0x10001040,0x00000000,
-0x10041040,0x00041000,0x00041000,0x00001040, 0x00001040,0x00040040,0x10000000,0x10041000}
-};
-
-
-/* 32-bit permutation function P used on the output of the S-boxes */
-const TUint8 p32i[] = {
-	   16,  7, 20, 21,
-	   29, 12, 28, 17,
-		1, 15, 23, 26,
-		5, 18, 31, 10,
-		2,  8, 24, 14,
-	   32, 27,  3,  9,
-	   19, 13, 30,  6,
-	   22, 11,  4, 25
-};
-
-/* permuted choice table (key) */
-const TUint8 pc1[] = {
-	   57, 49, 41, 33, 25, 17,  9,
-		1, 58, 50, 42, 34, 26, 18,
-	   10,  2, 59, 51, 43, 35, 27,
-	   19, 11,  3, 60, 52, 44, 36,
-
-	   63, 55, 47, 39, 31, 23, 15,
-		7, 62, 54, 46, 38, 30, 22,
-	   14,  6, 61, 53, 45, 37, 29,
-	   21, 13,  5, 28, 20, 12,  4
-};
-
-/* number left rotations of pc1 */
-const TUint8 totrot[] = {1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28};
-
-/* permuted choice key (table) */
-const TUint8 pc2[] = {
-	   14, 17, 11, 24,  1,  5,
-		3, 28, 15,  6, 21, 10,
-	   23, 19, 12,  4, 26,  8,
-	   16,  7, 27, 20, 13,  2,
-	   41, 52, 31, 37, 47, 55,
-	   30, 40, 51, 45, 33, 48,
-	   44, 49, 39, 56, 34, 53,
-	   46, 42, 50, 36, 29, 32
-};
-}	//	namespace DES_TABLE
-#endif	//	__DESTABLES_H__
--- a/crypto/weakcrypto/source/symmetric/mstreamcipher.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* streamcipher.cpp
-*
-*/
-
-
-#include "streamcipher.h"
-#include <cryptopanic.h>
-
-EXPORT_C void CStreamCipher::ProcessFinalL(const TDesC8& aInput, TDes8& aOutput)
-	{
-	Process(aInput, aOutput);
-	}
-
-EXPORT_C void CStreamCipher::Process(const TDesC8& aInput, TDes8& aOutput)
-	{
-	TInt outputIndex = aOutput.Size();
-
-	// aOutput may already have outputIndex bytes of data in it
-	// check there will still be enough space to process the result
-	__ASSERT_DEBUG(aOutput.MaxLength() - outputIndex >= MaxOutputLength(aInput.Length()), User::Panic(KCryptoPanic, ECryptoPanicOutputDescriptorOverflow));
-
-	aOutput.Append(aInput);
-
-	TPtr8 transformBuf((TUint8*)(aOutput.Ptr()) + outputIndex, aInput.Size(),
-		aInput.Size());
-	DoProcess(transformBuf);
-	}
-
-EXPORT_C TInt CStreamCipher::BlockSize() const
-	{
-	return (1);
-	}
-
-EXPORT_C TInt CStreamCipher::MaxOutputLength(TInt aInputLength) const
-	{
-	return aInputLength;
-	}
-
-EXPORT_C TInt CStreamCipher::MaxFinalOutputLength(TInt aInputLength) const
-	{
-	return aInputLength;
-	}
-
--- a/crypto/weakcrypto/source/symmetric/nullcipher.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "nullcipher.h"
-
-const TUint KNullKeyBytes = 0;
-
-EXPORT_C CNullCipher* CNullCipher::NewL(void)
-	{
-	CNullCipher* self = new(ELeave)CNullCipher;
-	return self;
-	}
-
-EXPORT_C CNullCipher* CNullCipher::NewLC(void)
-	{
-	CNullCipher *self = NewL();
-	CleanupStack::PushL(self);
-	return self;
-	}
-
-void CNullCipher::Reset(void)
-	{
-	}
-
-TInt CNullCipher::KeySize(void) const
-	{
-	return KNullKeyBytes;
-	}
-
-void CNullCipher::DoProcess(TDes8& /*aData*/)
-	{
-	}
-
-CNullCipher::CNullCipher(void)
-	{
-	}
--- a/crypto/weakcrypto/source/symmetric/rc2.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,199 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "rc2.h"
-#include "rc2table.h"
-#include "../common/inlines.h"
-#include <cryptostrength.h>
-
-const TInt KRC2BlockBytes = 8;
-
-/* CRC2Encryptor */
-
-void CRC2::SetKey(const TDesC8& aKey, TInt aEffectiveKeyLenBits)
-	{
-	TUint keyLen = (TUint)aKey.Size();
-
-	iKey.Copy(aKey);
-	iEffectiveKeyLenBits = aEffectiveKeyLenBits;
-
-	TUint8 L[KRC2MaxKeySizeBytes];	
-	Mem::Copy((TUint8*)&L[0], (TUint8*)&aKey[0], keyLen);
-
-	TInt maxKeySizeBytes = (TInt)KRC2MaxKeySizeBytes;
-	TInt expandedKeyLen = (TInt)KRC2ExpandedKeyLen;
-	TInt i = keyLen;
-	for (; i < maxKeySizeBytes; i++)
-		{
-		L[i] = RC2_TABLE::PITABLE[(L[i-1] + L[i-keyLen]) & 255];
-		}
-
-	TUint T8 = (aEffectiveKeyLenBits+7) / 8;
-	TUint8 TM = (TUint8)(255 >> ((8-(iEffectiveKeyLenBits%8))%8));
-	L[128-T8] = RC2_TABLE::PITABLE[L[128-T8] & TM];
-
-	for (i=127-T8; i>=0; i--)
-		L[i] = RC2_TABLE::PITABLE[L[i+1] ^ L[i+T8]];
-
-	for (i=0; i < expandedKeyLen; i++)
-		iK[i] = (TUint16)(L[2*i] + (L[2*i+1] << 8));
-	}
-
-void CRC2::Reset()
-	{
-	SetKey(iKey, iEffectiveKeyLenBits);
-	}
-
-TInt CRC2::BlockSize() const
-	{
-	return KRC2BlockBytes;
-	}
-
-TInt CRC2::KeySize() const
-	{
-	return iKey.Size();
-	}
-
-CRC2::CRC2(void)
-	{
-	}
-
-/* CRC2Encryptor */
-
-EXPORT_C CRC2Encryptor* CRC2Encryptor::NewL(const TDesC8& aKey, 
-	TInt aEffectiveKeyLenBits)
-	{
-	CRC2Encryptor* me = CRC2Encryptor::NewLC(aKey, aEffectiveKeyLenBits);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C CRC2Encryptor* CRC2Encryptor::NewLC(const TDesC8& aKey, 
-	TInt aEffectiveKeyLenBits)
-	{
-	CRC2Encryptor* me = new (ELeave) CRC2Encryptor;
-	CleanupStack::PushL(me);	//	Does not leave but function requires it be Push-ed
-	me->SetKey(aKey, aEffectiveKeyLenBits);	
-	// weak enough if either aKey or aEffectiveKeyLenBits is weak
-	TInt minKeySize = Min(aEffectiveKeyLenBits, BytesToBits(aKey.Size()));
-	TCrypto::IsSymmetricWeakEnoughL(minKeySize);
-	return (me);
-	}
-
-#pragma warning (disable : 4244)	//	conversion from 'int' to 'unsigned short', possible loss of data
-void CRC2Encryptor::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == KRC2BlockBytes);
-	
-	TUint16 R0, R1, R2, R3;
-	GetBlockLittleEndian((TUint8*)&aBlock[0], R0, R1, R2, R3);
-	
-	TInt i = 0;
-	for (; i < 16; i++)
-		{
-		R0 += (R1 & ~R3) + (R2 & R3) + iK[4*i+0];
-		R0 = rotlFixed(R0, 1);
-
-		R1 += (R2 & ~R0) + (R3 & R0) + iK[4*i+1];
-		R1 = rotlFixed(R1, 2);
-
-		R2 += (R3 & ~R1) + (R0 & R1) + iK[4*i+2];
-		R2 = rotlFixed(R2, 3);
-
-		R3 += (R0 & ~R2) + (R1 & R2) + iK[4*i+3];
-		R3 = rotlFixed(R3, 5);
-
-		if (i == 4 || i == 10)
-			{
-			R0 += iK[R3 & 63];
-			R1 += iK[R0 & 63];
-			R2 += iK[R1 & 63];
-			R3 += iK[R2 & 63];
-			}
-		}
-
-	PutBlockLittleEndian((TUint8*)&aBlock[0], R0, R1, R2, R3);	
-	}
-#pragma warning (default : 4244)	//	conversion from 'int' to 'unsigned short', possible loss of data
-
-CRC2Encryptor::CRC2Encryptor(void)
-	{
-	}
-
-/* CRC2Decryptor */
-
-EXPORT_C CRC2Decryptor* CRC2Decryptor::NewL(const TDesC8& aKey, 
-	TInt aEffectiveKeyLenBits)
-	{
-	CRC2Decryptor* me = CRC2Decryptor::NewLC(aKey, aEffectiveKeyLenBits);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C CRC2Decryptor* CRC2Decryptor::NewLC(const TDesC8& aKey, 
-	TInt aEffectiveKeyLenBits)
-	{
-	CRC2Decryptor* me = new (ELeave) CRC2Decryptor;
-	CleanupStack::PushL(me);	//	Does not leave but function requires it be Push-ed
-	me->SetKey(aKey, aEffectiveKeyLenBits);
-	// weak enough if either aKey or aEffectiveKeyLenBits is weak
-	TInt minKeySize = Min(aEffectiveKeyLenBits, BytesToBits(aKey.Size()));
-	TCrypto::IsSymmetricWeakEnoughL(minKeySize);
-	return (me);
-	}
-
-#pragma warning (disable : 4244)	//	conversion from 'int' to 'unsigned short', possible loss of data
-void CRC2Decryptor::Transform(TDes8& aBlock)
-	{
-	assert(aBlock.Size() == KRC2BlockBytes);
-
-	TUint16 R0, R1, R2, R3;
-	GetBlockLittleEndian((TUint8*)&aBlock[0], R0, R1, R2, R3);
-
-	TInt i = 15;
-	for (; i >= 0; i--)
-		{
-		if (i == 4 || i == 10)
-			{
-			R3 -= iK[R2 & 63];
-			R2 -= iK[R1 & 63];
-			R1 -= iK[R0 & 63];
-			R0 -= iK[R3 & 63];
-			}
-
-		R3 = rotrFixed(R3, 5);
-		R3 -= (R0 & ~R2) + (R1 & R2) + iK[4*i+3];
-
-		R2 = rotrFixed(R2, 3);
-		R2 -= (R3 & ~R1) + (R0 & R1) + iK[4*i+2];
-
-		R1 = rotrFixed(R1, 2);
-		R1 -= (R2 & ~R0) + (R3 & R0) + iK[4*i+1];
-
-		R0 = rotrFixed(R0, 1);
-		R0 -= (R1 & ~R3) + (R2 & R3) + iK[4*i+0];
-		}
-
-	PutBlockLittleEndian((TUint8*)&aBlock[0], R0, R1, R2, R3);
-	}
-
-#pragma warning (default : 4244)	//	conversion from 'int' to 'unsigned short', possible loss of data
-
-CRC2Decryptor::CRC2Decryptor(void)
-	{
-	}
--- a/crypto/weakcrypto/source/symmetric/rc2table.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* RC2 Table
-*
-*/
-
-
-/**
- @file 
- @internalComponent 
-*/
- 
-#ifndef __RC2TABLES_H__
-#define __RC2TABLES_H__
-
-#include <e32std.h>
-
-namespace RC2_TABLE
-{
-	const TUint8 PITABLE[256] = 
-	{
-		217,120,249,196, 25,221,181,237, 40,233,253,121, 74,160,216,157,
-		198,126, 55,131, 43,118, 83,142, 98, 76,100,136, 68,139,251,162,
-		 23,154, 89,245,135,179, 79, 19, 97, 69,109,141,  9,129,125, 50,
-		189,143, 64,235,134,183,123, 11,240,149, 33, 34, 92,107, 78,130,
-		 84,214,101,147,206, 96,178, 28,115, 86,192, 20,167,140,241,220,
-		 18,117,202, 31, 59,190,228,209, 66, 61,212, 48,163, 60,182, 38,
-		111,191, 14,218, 70,105,  7, 87, 39,242, 29,155,188,148, 67,  3,
-		248, 17,199,246,144,239, 62,231,  6,195,213, 47,200,102, 30,215,
-		  8,232,234,222,128, 82,238,247,132,170,114,172, 53, 77,106, 42,
-		150, 26,210,113, 90, 21, 73,116, 75,159,208, 94,  4, 24,164,236,
-		194,224, 65,110, 15, 81,203,204, 36,145,175, 80,161,244,112, 57,
-		153,124, 58,133, 35,184,180,122,252,  2, 54, 91, 37, 85,151, 49,
-		 45, 93,250,152,227,138,146,174,  5,223, 41, 16,103,108,186,201,
-		211,  0,230,207,225,158,168, 44, 99, 22,  1, 63, 88,226,137,169,
-		 13, 56, 52, 27,171, 51,255,176,187, 72, 12, 95,185,177,205, 46,
-		197,243,219, 71,229,165,156,119, 10,166, 32,104,254,127,193,173
-	};
-}
-	//	namespace RC2_TABLE
-#endif	//	__RC2TABLES_H__
--- a/crypto/weakcrypto/source/symmetric/rijndael.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,464 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "rijndael.h"
-#include "rijndaeltables.h"
-#include "../common/inlines.h"
-#include <cryptostrength.h>
-
-const TUint KAESKeyBytes128 = 16;
-const TUint KAESKeyBytes192 = 24;
-const TUint KAESKeyBytes256 = 32;
-const TUint KAESBlockBytes = 16;
-
-/* CRijndael */
-EXPORT_C CRijndael::CRijndael(void)
-	{
-	}
-
-void CRijndael::Reset()
-	{
-	SetKey(*iKey);
-	}
-
-TInt CRijndael::KeySize() const
-	{
-	return (4*(iRounds+1));
-	}
-
-CRijndael::~CRijndael()
-	{
-	delete iKey;
-	}
-
-void CRijndael::ConstructL(const TDesC8& aKey)
-	{
-	TUint keySize = aKey.Size();
-	assert((keySize==KAESKeyBytes128)||(keySize==KAESKeyBytes192)||(keySize==KAESKeyBytes256));
-	iKey = aKey.AllocL();
-	iRounds = keySize/4 + 6;
-	SetKey(aKey);
-	}
-
-void CRijndael::SetKey(const TDesC8& aKey)
-	{
-	TUint keySize = aKey.Size();
-	TUint32 temp; 
-	TUint32* rk = &iK[0];
-
-	TUint i = 0;
-
-	GetUserKeyBigEndian(rk, keySize/4, &aKey[0], keySize);
-
-	switch(keySize)
-		{
-		case (KAESKeyBytes128):
-			{
-			FOREVER
-				{
-				temp  = rk[3];
-				rk[4] = rk[0] ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 2)] & 0xff000000) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 1)] & 0x00ff0000) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 0)] & 0x0000ff00) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 3)] & 0x000000ff) ^
-					RIJNDAEL_TABLE::rcon[i];
-				rk[5] = rk[1] ^ rk[4];
-				rk[6] = rk[2] ^ rk[5];
-				rk[7] = rk[3] ^ rk[6];
-				if (++i == 10)
-					break;
-				rk += 4;
-				}
-			}
-		break;
-
-		case (KAESKeyBytes192):
-			{
-			FOREVER
-				{
-				temp = rk[ 5];
-				rk[ 6] = rk[ 0] ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 2)] & 0xff000000) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 1)] & 0x00ff0000) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 0)] & 0x0000ff00) ^
-					(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 3)] & 0x000000ff) ^
-					RIJNDAEL_TABLE::rcon[i];
-				rk[ 7] = rk[ 1] ^ rk[ 6];
-				rk[ 8] = rk[ 2] ^ rk[ 7];
-				rk[ 9] = rk[ 3] ^ rk[ 8];
-				if (++i == 8)
-					break;
-				rk[10] = rk[ 4] ^ rk[ 9];
-				rk[11] = rk[ 5] ^ rk[10];
-				rk += 6;
-				}
-			}
-		break;
-
-		case (KAESKeyBytes256):
-			{
-			FOREVER
-				{
-        		temp = rk[ 7];
-        		rk[ 8] = rk[ 0] ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 2)] & 0xff000000) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 1)] & 0x00ff0000) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 0)] & 0x0000ff00) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 3)] & 0x000000ff) ^
-        			RIJNDAEL_TABLE::rcon[i];
-        		rk[ 9] = rk[ 1] ^ rk[ 8];
-        		rk[10] = rk[ 2] ^ rk[ 9];
-        		rk[11] = rk[ 3] ^ rk[10];
-				if (++i == 7)
-					break;
-        		temp = rk[11];
-        		rk[12] = rk[ 4] ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 3)] & 0xff000000) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 2)] & 0x00ff0000) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 1)] & 0x0000ff00) ^
-        			(RIJNDAEL_TABLE::Te4[GETBYTE(temp, 0)] & 0x000000ff);
-        		rk[13] = rk[ 5] ^ rk[12];
-        		rk[14] = rk[ 6] ^ rk[13];
-        		rk[15] = rk[ 7] ^ rk[14];
-
-				rk += 8;
-				}
-			}
-		break;
-
-		default:
-			assert(0);	//	Shouldn't get here, keeps compiler happy
-		}
-	}
-
-
-/* CAESEncryptor */
-EXPORT_C CAESEncryptor* CAESEncryptor::NewL(const TDesC8& aKey)
-	{
-	CAESEncryptor* me = CAESEncryptor::NewLC(aKey);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-EXPORT_C CAESEncryptor* CAESEncryptor::NewLC(const TDesC8& aKey)
-	{
-	CAESEncryptor* me = new (ELeave) CAESEncryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey);
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()));
-	return (me);
-	}
-
-TInt CAESEncryptor::BlockSize() const
-	{
-	return KAESBlockBytes;
-	}
-
-void CAESEncryptor::Transform(TDes8& aBlock)
-	{
-	assert((TUint)aBlock.Size()==KAESBlockBytes);
-	
-	TUint32 s0, s1, s2, s3, t0, t1, t2, t3;
-	const TUint32* rk = &iK[0];
-
-/*
- *	map byte array block to cipher state
- *	and add initial round key:
-*/
-	GetBlockBigEndian((TUint8*)&aBlock[0], s0, s1, s2, s3);
-	s0 ^= rk[0];
-	s1 ^= rk[1];
-	s2 ^= rk[2];
-	s3 ^= rk[3];
-/*
- *	Nr - 1 full rounds:
-*/
-    TUint r = iRounds >> 1;
-	FOREVER
-		{
-        t0 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(s0, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(s1, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(s2, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(s3, 0)] ^
-            rk[4];
-        t1 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(s1, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(s2, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(s3, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(s0, 0)] ^
-            rk[5];
-        t2 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(s2, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(s3, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(s0, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(s1, 0)] ^
-            rk[6];
-        t3 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(s3, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(s0, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(s1, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(s2, 0)] ^
-            rk[7];
-
-        rk += 8;
-        if (--r == 0) 
-			break;
-        
-        s0 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(t0, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(t1, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(t2, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(t3, 0)] ^
-            rk[0];
-        s1 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(t1, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(t2, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(t3, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(t0, 0)] ^
-            rk[1];
-        s2 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(t2, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(t3, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(t0, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(t1, 0)] ^
-            rk[2];
-        s3 =
-            RIJNDAEL_TABLE::Te0[GETBYTE(t3, 3)] ^
-            RIJNDAEL_TABLE::Te1[GETBYTE(t0, 2)] ^
-            RIJNDAEL_TABLE::Te2[GETBYTE(t1, 1)] ^
-            RIJNDAEL_TABLE::Te3[GETBYTE(t2, 0)] ^
-            rk[3];
-		}
-/*
- *	apply last round and
- *	map cipher state to byte array block:
-*/
-
-	s0 =
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t0, 3)] & 0xff000000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t1, 2)] & 0x00ff0000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t2, 1)] & 0x0000ff00) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t3, 0)] & 0x000000ff) ^
-		rk[0];
-	s1 =
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t1, 3)] & 0xff000000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t2, 2)] & 0x00ff0000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t3, 1)] & 0x0000ff00) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t0, 0)] & 0x000000ff) ^
-		rk[1];
-	s2 =
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t2, 3)] & 0xff000000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t3, 2)] & 0x00ff0000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t0, 1)] & 0x0000ff00) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t1, 0)] & 0x000000ff) ^
-		rk[2];
-	s3 =
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t3, 3)] & 0xff000000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t0, 2)] & 0x00ff0000) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t1, 1)] & 0x0000ff00) ^
-		(RIJNDAEL_TABLE::Te4[GETBYTE(t2, 0)] & 0x000000ff) ^
-		rk[3];
-
-	PutBlockBigEndian((TUint8*)&aBlock[0], s0, s1, s2, s3);
-	}
-
-CAESEncryptor::CAESEncryptor(void)
-	{
-	}
-
-/* CAESDecryptor */
-EXPORT_C CAESDecryptor* CAESDecryptor::NewL(const TDesC8& aKey)
-	{
-	CAESDecryptor* me = CAESDecryptor::NewLC(aKey);
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-
-EXPORT_C CAESDecryptor* CAESDecryptor::NewLC(const TDesC8& aKey)
-	{
-	CAESDecryptor* me = new (ELeave) CAESDecryptor();
-	CleanupStack::PushL(me);
-	me->ConstructL(aKey);
-	TCrypto::IsSymmetricWeakEnoughL(BytesToBits(aKey.Size()));
-	return (me);
-	}
-
-TInt CAESDecryptor::BlockSize() const
-	{
-	return KAESBlockBytes;
-	}
-
-void CAESDecryptor::Transform(TDes8& aBlock)
-	{
-	TUint32 s0, s1, s2, s3, t0, t1, t2, t3;
-    const TUint32* rk = &iK[0];
-
-/*
- *	map byte array block to cipher state
- *	and add initial round key:
-*/
-	GetBlockBigEndian((TUint8*)&aBlock[0], s0, s1, s2, s3);
-
-	s0 ^= rk[0];
-	s1 ^= rk[1];
-	s2 ^= rk[2];
-	s3 ^= rk[3];
-/*
- *	Nr - 1 full rounds:
-*/
-    TUint r = iRounds >> 1;
-    FOREVER
-		{
-        t0 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(s0, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(s3, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(s2, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(s1, 0)] ^
-            rk[4];
-        t1 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(s1, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(s0, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(s3, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(s2, 0)] ^
-            rk[5];
-        t2 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(s2, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(s1, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(s0, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(s3, 0)] ^
-            rk[6];
-        t3 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(s3, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(s2, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(s1, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(s0, 0)] ^
-            rk[7];
-
-        rk += 8;
-        if (--r == 0)
-            break;
-        
-        s0 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(t0, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(t3, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(t2, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(t1, 0)] ^
-            rk[0];
-        s1 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(t1, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(t0, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(t3, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(t2, 0)] ^
-            rk[1];
-        s2 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(t2, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(t1, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(t0, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(t3, 0)] ^
-            rk[2];
-        s3 =
-            RIJNDAEL_TABLE::Td0[GETBYTE(t3, 3)] ^
-            RIJNDAEL_TABLE::Td1[GETBYTE(t2, 2)] ^
-            RIJNDAEL_TABLE::Td2[GETBYTE(t1, 1)] ^
-            RIJNDAEL_TABLE::Td3[GETBYTE(t0, 0)] ^
-            rk[3];
-		}
-/*
- *	apply last round and
- *	map cipher state to byte array block:
-*/
-   	s0 =
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t0, 3)] & 0xff000000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t3, 2)] & 0x00ff0000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t2, 1)] & 0x0000ff00) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t1, 0)] & 0x000000ff) ^
-   		rk[0];
-   	s1 =
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t1, 3)] & 0xff000000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t0, 2)] & 0x00ff0000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t3, 1)] & 0x0000ff00) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t2, 0)] & 0x000000ff) ^
-   		rk[1];
-   	s2 =
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t2, 3)] & 0xff000000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t1, 2)] & 0x00ff0000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t0, 1)] & 0x0000ff00) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t3, 0)] & 0x000000ff) ^
-   		rk[2];
-   	s3 =
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t3, 3)] & 0xff000000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t2, 2)] & 0x00ff0000) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t1, 1)] & 0x0000ff00) ^
-   		(RIJNDAEL_TABLE::Td4[GETBYTE(t0, 0)] & 0x000000ff) ^
-   		rk[3];
-
-	
-	PutBlockBigEndian((TUint8*)&aBlock[0], s0, s1, s2, s3);
-	}
-
-
-void CAESDecryptor::SetKey(const TDesC8& aKey)
-	{
-	CRijndael::SetKey(aKey);
-
-	TUint i, j;
-	TUint32* rk = &iK[0];
-	TUint32 temp;
-
-//	invert the order of the round keys 
-	for (i = 0, j = 4*iRounds; i < j; i += 4, j -= 4)
-		{
-		temp = rk[i    ]; rk[i    ] = rk[j    ]; rk[j    ] = temp;
-		temp = rk[i + 1]; rk[i + 1] = rk[j + 1]; rk[j + 1] = temp;
-		temp = rk[i + 2]; rk[i + 2] = rk[j + 2]; rk[j + 2] = temp;
-		temp = rk[i + 3]; rk[i + 3] = rk[j + 3]; rk[j + 3] = temp;
-		}
-
-//	apply the inverse MixColumn transform to all round keys but the first and the last
-	for (i = 1; i < iRounds; i++)
-		{
-		rk += 4;
-		rk[0] =
-			RIJNDAEL_TABLE::Td0[RIJNDAEL_TABLE::Te4[GETBYTE(rk[0], 3)] & 0xff] ^
-			RIJNDAEL_TABLE::Td1[RIJNDAEL_TABLE::Te4[GETBYTE(rk[0], 2)] & 0xff] ^
-			RIJNDAEL_TABLE::Td2[RIJNDAEL_TABLE::Te4[GETBYTE(rk[0], 1)] & 0xff] ^
-			RIJNDAEL_TABLE::Td3[RIJNDAEL_TABLE::Te4[GETBYTE(rk[0], 0)] & 0xff];
-		rk[1] =
-			RIJNDAEL_TABLE::Td0[RIJNDAEL_TABLE::Te4[GETBYTE(rk[1], 3)] & 0xff] ^
-			RIJNDAEL_TABLE::Td1[RIJNDAEL_TABLE::Te4[GETBYTE(rk[1], 2)] & 0xff] ^
-			RIJNDAEL_TABLE::Td2[RIJNDAEL_TABLE::Te4[GETBYTE(rk[1], 1)] & 0xff] ^
-			RIJNDAEL_TABLE::Td3[RIJNDAEL_TABLE::Te4[GETBYTE(rk[1], 0)] & 0xff];
-		rk[2] =
-			RIJNDAEL_TABLE::Td0[RIJNDAEL_TABLE::Te4[GETBYTE(rk[2], 3)] & 0xff] ^
-			RIJNDAEL_TABLE::Td1[RIJNDAEL_TABLE::Te4[GETBYTE(rk[2], 2)] & 0xff] ^
-			RIJNDAEL_TABLE::Td2[RIJNDAEL_TABLE::Te4[GETBYTE(rk[2], 1)] & 0xff] ^
-			RIJNDAEL_TABLE::Td3[RIJNDAEL_TABLE::Te4[GETBYTE(rk[2], 0)] & 0xff];
-		rk[3] =
-			RIJNDAEL_TABLE::Td0[RIJNDAEL_TABLE::Te4[GETBYTE(rk[3], 3)] & 0xff] ^
-			RIJNDAEL_TABLE::Td1[RIJNDAEL_TABLE::Te4[GETBYTE(rk[3], 2)] & 0xff] ^
-			RIJNDAEL_TABLE::Td2[RIJNDAEL_TABLE::Te4[GETBYTE(rk[3], 1)] & 0xff] ^
-			RIJNDAEL_TABLE::Td3[RIJNDAEL_TABLE::Te4[GETBYTE(rk[3], 0)] & 0xff];
-		}
-	}
-
-CAESDecryptor::CAESDecryptor()
-	{	
-	}
--- a/crypto/weakcrypto/source/symmetric/rijndaeltables.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,723 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Rijndael Tables
-*
-*/
-
-
-/**
- @file 
- @internalComponent 
-*/
- 
-#ifndef __RIJNDAELTABLES_H__
-#define __RIJNDAELTABLES_H__
-
-#include <e32std.h>
-
-namespace RIJNDAEL_TABLE
-{
-
-/*
-Te0[x] = S [x].[02, 01, 01, 03];
-Te1[x] = S [x].[03, 02, 01, 01];
-Te2[x] = S [x].[01, 03, 02, 01];
-Te3[x] = S [x].[01, 01, 03, 02];
-Te4[x] = S [x].[01, 01, 01, 01];
-
-Td0[x] = Si[x].[0e, 09, 0d, 0b];
-Td1[x] = Si[x].[0b, 0e, 09, 0d];
-Td2[x] = Si[x].[0d, 0b, 0e, 09];
-Td3[x] = Si[x].[09, 0d, 0b, 0e];
-Td4[x] = Si[x].[01, 01, 01, 01];
-*/
-
-const TUint32 Te0[256] = {
-    0xc66363a5U, 0xf87c7c84U, 0xee777799U, 0xf67b7b8dU,
-    0xfff2f20dU, 0xd66b6bbdU, 0xde6f6fb1U, 0x91c5c554U,
-    0x60303050U, 0x02010103U, 0xce6767a9U, 0x562b2b7dU,
-    0xe7fefe19U, 0xb5d7d762U, 0x4dababe6U, 0xec76769aU,
-    0x8fcaca45U, 0x1f82829dU, 0x89c9c940U, 0xfa7d7d87U,
-    0xeffafa15U, 0xb25959ebU, 0x8e4747c9U, 0xfbf0f00bU,
-    0x41adadecU, 0xb3d4d467U, 0x5fa2a2fdU, 0x45afafeaU,
-    0x239c9cbfU, 0x53a4a4f7U, 0xe4727296U, 0x9bc0c05bU,
-    0x75b7b7c2U, 0xe1fdfd1cU, 0x3d9393aeU, 0x4c26266aU,
-    0x6c36365aU, 0x7e3f3f41U, 0xf5f7f702U, 0x83cccc4fU,
-    0x6834345cU, 0x51a5a5f4U, 0xd1e5e534U, 0xf9f1f108U,
-    0xe2717193U, 0xabd8d873U, 0x62313153U, 0x2a15153fU,
-    0x0804040cU, 0x95c7c752U, 0x46232365U, 0x9dc3c35eU,
-    0x30181828U, 0x379696a1U, 0x0a05050fU, 0x2f9a9ab5U,
-    0x0e070709U, 0x24121236U, 0x1b80809bU, 0xdfe2e23dU,
-    0xcdebeb26U, 0x4e272769U, 0x7fb2b2cdU, 0xea75759fU,
-    0x1209091bU, 0x1d83839eU, 0x582c2c74U, 0x341a1a2eU,
-    0x361b1b2dU, 0xdc6e6eb2U, 0xb45a5aeeU, 0x5ba0a0fbU,
-    0xa45252f6U, 0x763b3b4dU, 0xb7d6d661U, 0x7db3b3ceU,
-    0x5229297bU, 0xdde3e33eU, 0x5e2f2f71U, 0x13848497U,
-    0xa65353f5U, 0xb9d1d168U, 0x00000000U, 0xc1eded2cU,
-    0x40202060U, 0xe3fcfc1fU, 0x79b1b1c8U, 0xb65b5bedU,
-    0xd46a6abeU, 0x8dcbcb46U, 0x67bebed9U, 0x7239394bU,
-    0x944a4adeU, 0x984c4cd4U, 0xb05858e8U, 0x85cfcf4aU,
-    0xbbd0d06bU, 0xc5efef2aU, 0x4faaaae5U, 0xedfbfb16U,
-    0x864343c5U, 0x9a4d4dd7U, 0x66333355U, 0x11858594U,
-    0x8a4545cfU, 0xe9f9f910U, 0x04020206U, 0xfe7f7f81U,
-    0xa05050f0U, 0x783c3c44U, 0x259f9fbaU, 0x4ba8a8e3U,
-    0xa25151f3U, 0x5da3a3feU, 0x804040c0U, 0x058f8f8aU,
-    0x3f9292adU, 0x219d9dbcU, 0x70383848U, 0xf1f5f504U,
-    0x63bcbcdfU, 0x77b6b6c1U, 0xafdada75U, 0x42212163U,
-    0x20101030U, 0xe5ffff1aU, 0xfdf3f30eU, 0xbfd2d26dU,
-    0x81cdcd4cU, 0x180c0c14U, 0x26131335U, 0xc3ecec2fU,
-    0xbe5f5fe1U, 0x359797a2U, 0x884444ccU, 0x2e171739U,
-    0x93c4c457U, 0x55a7a7f2U, 0xfc7e7e82U, 0x7a3d3d47U,
-    0xc86464acU, 0xba5d5de7U, 0x3219192bU, 0xe6737395U,
-    0xc06060a0U, 0x19818198U, 0x9e4f4fd1U, 0xa3dcdc7fU,
-    0x44222266U, 0x542a2a7eU, 0x3b9090abU, 0x0b888883U,
-    0x8c4646caU, 0xc7eeee29U, 0x6bb8b8d3U, 0x2814143cU,
-    0xa7dede79U, 0xbc5e5ee2U, 0x160b0b1dU, 0xaddbdb76U,
-    0xdbe0e03bU, 0x64323256U, 0x743a3a4eU, 0x140a0a1eU,
-    0x924949dbU, 0x0c06060aU, 0x4824246cU, 0xb85c5ce4U,
-    0x9fc2c25dU, 0xbdd3d36eU, 0x43acacefU, 0xc46262a6U,
-    0x399191a8U, 0x319595a4U, 0xd3e4e437U, 0xf279798bU,
-    0xd5e7e732U, 0x8bc8c843U, 0x6e373759U, 0xda6d6db7U,
-    0x018d8d8cU, 0xb1d5d564U, 0x9c4e4ed2U, 0x49a9a9e0U,
-    0xd86c6cb4U, 0xac5656faU, 0xf3f4f407U, 0xcfeaea25U,
-    0xca6565afU, 0xf47a7a8eU, 0x47aeaee9U, 0x10080818U,
-    0x6fbabad5U, 0xf0787888U, 0x4a25256fU, 0x5c2e2e72U,
-    0x381c1c24U, 0x57a6a6f1U, 0x73b4b4c7U, 0x97c6c651U,
-    0xcbe8e823U, 0xa1dddd7cU, 0xe874749cU, 0x3e1f1f21U,
-    0x964b4bddU, 0x61bdbddcU, 0x0d8b8b86U, 0x0f8a8a85U,
-    0xe0707090U, 0x7c3e3e42U, 0x71b5b5c4U, 0xcc6666aaU,
-    0x904848d8U, 0x06030305U, 0xf7f6f601U, 0x1c0e0e12U,
-    0xc26161a3U, 0x6a35355fU, 0xae5757f9U, 0x69b9b9d0U,
-    0x17868691U, 0x99c1c158U, 0x3a1d1d27U, 0x279e9eb9U,
-    0xd9e1e138U, 0xebf8f813U, 0x2b9898b3U, 0x22111133U,
-    0xd26969bbU, 0xa9d9d970U, 0x078e8e89U, 0x339494a7U,
-    0x2d9b9bb6U, 0x3c1e1e22U, 0x15878792U, 0xc9e9e920U,
-    0x87cece49U, 0xaa5555ffU, 0x50282878U, 0xa5dfdf7aU,
-    0x038c8c8fU, 0x59a1a1f8U, 0x09898980U, 0x1a0d0d17U,
-    0x65bfbfdaU, 0xd7e6e631U, 0x844242c6U, 0xd06868b8U,
-    0x824141c3U, 0x299999b0U, 0x5a2d2d77U, 0x1e0f0f11U,
-    0x7bb0b0cbU, 0xa85454fcU, 0x6dbbbbd6U, 0x2c16163aU,
-};
-const TUint32 Te1[256] = {
-    0xa5c66363U, 0x84f87c7cU, 0x99ee7777U, 0x8df67b7bU,
-    0x0dfff2f2U, 0xbdd66b6bU, 0xb1de6f6fU, 0x5491c5c5U,
-    0x50603030U, 0x03020101U, 0xa9ce6767U, 0x7d562b2bU,
-    0x19e7fefeU, 0x62b5d7d7U, 0xe64dababU, 0x9aec7676U,
-    0x458fcacaU, 0x9d1f8282U, 0x4089c9c9U, 0x87fa7d7dU,
-    0x15effafaU, 0xebb25959U, 0xc98e4747U, 0x0bfbf0f0U,
-    0xec41adadU, 0x67b3d4d4U, 0xfd5fa2a2U, 0xea45afafU,
-    0xbf239c9cU, 0xf753a4a4U, 0x96e47272U, 0x5b9bc0c0U,
-    0xc275b7b7U, 0x1ce1fdfdU, 0xae3d9393U, 0x6a4c2626U,
-    0x5a6c3636U, 0x417e3f3fU, 0x02f5f7f7U, 0x4f83ccccU,
-    0x5c683434U, 0xf451a5a5U, 0x34d1e5e5U, 0x08f9f1f1U,
-    0x93e27171U, 0x73abd8d8U, 0x53623131U, 0x3f2a1515U,
-    0x0c080404U, 0x5295c7c7U, 0x65462323U, 0x5e9dc3c3U,
-    0x28301818U, 0xa1379696U, 0x0f0a0505U, 0xb52f9a9aU,
-    0x090e0707U, 0x36241212U, 0x9b1b8080U, 0x3ddfe2e2U,
-    0x26cdebebU, 0x694e2727U, 0xcd7fb2b2U, 0x9fea7575U,
-    0x1b120909U, 0x9e1d8383U, 0x74582c2cU, 0x2e341a1aU,
-    0x2d361b1bU, 0xb2dc6e6eU, 0xeeb45a5aU, 0xfb5ba0a0U,
-    0xf6a45252U, 0x4d763b3bU, 0x61b7d6d6U, 0xce7db3b3U,
-    0x7b522929U, 0x3edde3e3U, 0x715e2f2fU, 0x97138484U,
-    0xf5a65353U, 0x68b9d1d1U, 0x00000000U, 0x2cc1ededU,
-    0x60402020U, 0x1fe3fcfcU, 0xc879b1b1U, 0xedb65b5bU,
-    0xbed46a6aU, 0x468dcbcbU, 0xd967bebeU, 0x4b723939U,
-    0xde944a4aU, 0xd4984c4cU, 0xe8b05858U, 0x4a85cfcfU,
-    0x6bbbd0d0U, 0x2ac5efefU, 0xe54faaaaU, 0x16edfbfbU,
-    0xc5864343U, 0xd79a4d4dU, 0x55663333U, 0x94118585U,
-    0xcf8a4545U, 0x10e9f9f9U, 0x06040202U, 0x81fe7f7fU,
-    0xf0a05050U, 0x44783c3cU, 0xba259f9fU, 0xe34ba8a8U,
-    0xf3a25151U, 0xfe5da3a3U, 0xc0804040U, 0x8a058f8fU,
-    0xad3f9292U, 0xbc219d9dU, 0x48703838U, 0x04f1f5f5U,
-    0xdf63bcbcU, 0xc177b6b6U, 0x75afdadaU, 0x63422121U,
-    0x30201010U, 0x1ae5ffffU, 0x0efdf3f3U, 0x6dbfd2d2U,
-    0x4c81cdcdU, 0x14180c0cU, 0x35261313U, 0x2fc3ececU,
-    0xe1be5f5fU, 0xa2359797U, 0xcc884444U, 0x392e1717U,
-    0x5793c4c4U, 0xf255a7a7U, 0x82fc7e7eU, 0x477a3d3dU,
-    0xacc86464U, 0xe7ba5d5dU, 0x2b321919U, 0x95e67373U,
-    0xa0c06060U, 0x98198181U, 0xd19e4f4fU, 0x7fa3dcdcU,
-    0x66442222U, 0x7e542a2aU, 0xab3b9090U, 0x830b8888U,
-    0xca8c4646U, 0x29c7eeeeU, 0xd36bb8b8U, 0x3c281414U,
-    0x79a7dedeU, 0xe2bc5e5eU, 0x1d160b0bU, 0x76addbdbU,
-    0x3bdbe0e0U, 0x56643232U, 0x4e743a3aU, 0x1e140a0aU,
-    0xdb924949U, 0x0a0c0606U, 0x6c482424U, 0xe4b85c5cU,
-    0x5d9fc2c2U, 0x6ebdd3d3U, 0xef43acacU, 0xa6c46262U,
-    0xa8399191U, 0xa4319595U, 0x37d3e4e4U, 0x8bf27979U,
-    0x32d5e7e7U, 0x438bc8c8U, 0x596e3737U, 0xb7da6d6dU,
-    0x8c018d8dU, 0x64b1d5d5U, 0xd29c4e4eU, 0xe049a9a9U,
-    0xb4d86c6cU, 0xfaac5656U, 0x07f3f4f4U, 0x25cfeaeaU,
-    0xafca6565U, 0x8ef47a7aU, 0xe947aeaeU, 0x18100808U,
-    0xd56fbabaU, 0x88f07878U, 0x6f4a2525U, 0x725c2e2eU,
-    0x24381c1cU, 0xf157a6a6U, 0xc773b4b4U, 0x5197c6c6U,
-    0x23cbe8e8U, 0x7ca1ddddU, 0x9ce87474U, 0x213e1f1fU,
-    0xdd964b4bU, 0xdc61bdbdU, 0x860d8b8bU, 0x850f8a8aU,
-    0x90e07070U, 0x427c3e3eU, 0xc471b5b5U, 0xaacc6666U,
-    0xd8904848U, 0x05060303U, 0x01f7f6f6U, 0x121c0e0eU,
-    0xa3c26161U, 0x5f6a3535U, 0xf9ae5757U, 0xd069b9b9U,
-    0x91178686U, 0x5899c1c1U, 0x273a1d1dU, 0xb9279e9eU,
-    0x38d9e1e1U, 0x13ebf8f8U, 0xb32b9898U, 0x33221111U,
-    0xbbd26969U, 0x70a9d9d9U, 0x89078e8eU, 0xa7339494U,
-    0xb62d9b9bU, 0x223c1e1eU, 0x92158787U, 0x20c9e9e9U,
-    0x4987ceceU, 0xffaa5555U, 0x78502828U, 0x7aa5dfdfU,
-    0x8f038c8cU, 0xf859a1a1U, 0x80098989U, 0x171a0d0dU,
-    0xda65bfbfU, 0x31d7e6e6U, 0xc6844242U, 0xb8d06868U,
-    0xc3824141U, 0xb0299999U, 0x775a2d2dU, 0x111e0f0fU,
-    0xcb7bb0b0U, 0xfca85454U, 0xd66dbbbbU, 0x3a2c1616U,
-};
-const TUint32 Te2[256] = {
-    0x63a5c663U, 0x7c84f87cU, 0x7799ee77U, 0x7b8df67bU,
-    0xf20dfff2U, 0x6bbdd66bU, 0x6fb1de6fU, 0xc55491c5U,
-    0x30506030U, 0x01030201U, 0x67a9ce67U, 0x2b7d562bU,
-    0xfe19e7feU, 0xd762b5d7U, 0xabe64dabU, 0x769aec76U,
-    0xca458fcaU, 0x829d1f82U, 0xc94089c9U, 0x7d87fa7dU,
-    0xfa15effaU, 0x59ebb259U, 0x47c98e47U, 0xf00bfbf0U,
-    0xadec41adU, 0xd467b3d4U, 0xa2fd5fa2U, 0xafea45afU,
-    0x9cbf239cU, 0xa4f753a4U, 0x7296e472U, 0xc05b9bc0U,
-    0xb7c275b7U, 0xfd1ce1fdU, 0x93ae3d93U, 0x266a4c26U,
-    0x365a6c36U, 0x3f417e3fU, 0xf702f5f7U, 0xcc4f83ccU,
-    0x345c6834U, 0xa5f451a5U, 0xe534d1e5U, 0xf108f9f1U,
-    0x7193e271U, 0xd873abd8U, 0x31536231U, 0x153f2a15U,
-    0x040c0804U, 0xc75295c7U, 0x23654623U, 0xc35e9dc3U,
-    0x18283018U, 0x96a13796U, 0x050f0a05U, 0x9ab52f9aU,
-    0x07090e07U, 0x12362412U, 0x809b1b80U, 0xe23ddfe2U,
-    0xeb26cdebU, 0x27694e27U, 0xb2cd7fb2U, 0x759fea75U,
-    0x091b1209U, 0x839e1d83U, 0x2c74582cU, 0x1a2e341aU,
-    0x1b2d361bU, 0x6eb2dc6eU, 0x5aeeb45aU, 0xa0fb5ba0U,
-    0x52f6a452U, 0x3b4d763bU, 0xd661b7d6U, 0xb3ce7db3U,
-    0x297b5229U, 0xe33edde3U, 0x2f715e2fU, 0x84971384U,
-    0x53f5a653U, 0xd168b9d1U, 0x00000000U, 0xed2cc1edU,
-    0x20604020U, 0xfc1fe3fcU, 0xb1c879b1U, 0x5bedb65bU,
-    0x6abed46aU, 0xcb468dcbU, 0xbed967beU, 0x394b7239U,
-    0x4ade944aU, 0x4cd4984cU, 0x58e8b058U, 0xcf4a85cfU,
-    0xd06bbbd0U, 0xef2ac5efU, 0xaae54faaU, 0xfb16edfbU,
-    0x43c58643U, 0x4dd79a4dU, 0x33556633U, 0x85941185U,
-    0x45cf8a45U, 0xf910e9f9U, 0x02060402U, 0x7f81fe7fU,
-    0x50f0a050U, 0x3c44783cU, 0x9fba259fU, 0xa8e34ba8U,
-    0x51f3a251U, 0xa3fe5da3U, 0x40c08040U, 0x8f8a058fU,
-    0x92ad3f92U, 0x9dbc219dU, 0x38487038U, 0xf504f1f5U,
-    0xbcdf63bcU, 0xb6c177b6U, 0xda75afdaU, 0x21634221U,
-    0x10302010U, 0xff1ae5ffU, 0xf30efdf3U, 0xd26dbfd2U,
-    0xcd4c81cdU, 0x0c14180cU, 0x13352613U, 0xec2fc3ecU,
-    0x5fe1be5fU, 0x97a23597U, 0x44cc8844U, 0x17392e17U,
-    0xc45793c4U, 0xa7f255a7U, 0x7e82fc7eU, 0x3d477a3dU,
-    0x64acc864U, 0x5de7ba5dU, 0x192b3219U, 0x7395e673U,
-    0x60a0c060U, 0x81981981U, 0x4fd19e4fU, 0xdc7fa3dcU,
-    0x22664422U, 0x2a7e542aU, 0x90ab3b90U, 0x88830b88U,
-    0x46ca8c46U, 0xee29c7eeU, 0xb8d36bb8U, 0x143c2814U,
-    0xde79a7deU, 0x5ee2bc5eU, 0x0b1d160bU, 0xdb76addbU,
-    0xe03bdbe0U, 0x32566432U, 0x3a4e743aU, 0x0a1e140aU,
-    0x49db9249U, 0x060a0c06U, 0x246c4824U, 0x5ce4b85cU,
-    0xc25d9fc2U, 0xd36ebdd3U, 0xacef43acU, 0x62a6c462U,
-    0x91a83991U, 0x95a43195U, 0xe437d3e4U, 0x798bf279U,
-    0xe732d5e7U, 0xc8438bc8U, 0x37596e37U, 0x6db7da6dU,
-    0x8d8c018dU, 0xd564b1d5U, 0x4ed29c4eU, 0xa9e049a9U,
-    0x6cb4d86cU, 0x56faac56U, 0xf407f3f4U, 0xea25cfeaU,
-    0x65afca65U, 0x7a8ef47aU, 0xaee947aeU, 0x08181008U,
-    0xbad56fbaU, 0x7888f078U, 0x256f4a25U, 0x2e725c2eU,
-    0x1c24381cU, 0xa6f157a6U, 0xb4c773b4U, 0xc65197c6U,
-    0xe823cbe8U, 0xdd7ca1ddU, 0x749ce874U, 0x1f213e1fU,
-    0x4bdd964bU, 0xbddc61bdU, 0x8b860d8bU, 0x8a850f8aU,
-    0x7090e070U, 0x3e427c3eU, 0xb5c471b5U, 0x66aacc66U,
-    0x48d89048U, 0x03050603U, 0xf601f7f6U, 0x0e121c0eU,
-    0x61a3c261U, 0x355f6a35U, 0x57f9ae57U, 0xb9d069b9U,
-    0x86911786U, 0xc15899c1U, 0x1d273a1dU, 0x9eb9279eU,
-    0xe138d9e1U, 0xf813ebf8U, 0x98b32b98U, 0x11332211U,
-    0x69bbd269U, 0xd970a9d9U, 0x8e89078eU, 0x94a73394U,
-    0x9bb62d9bU, 0x1e223c1eU, 0x87921587U, 0xe920c9e9U,
-    0xce4987ceU, 0x55ffaa55U, 0x28785028U, 0xdf7aa5dfU,
-    0x8c8f038cU, 0xa1f859a1U, 0x89800989U, 0x0d171a0dU,
-    0xbfda65bfU, 0xe631d7e6U, 0x42c68442U, 0x68b8d068U,
-    0x41c38241U, 0x99b02999U, 0x2d775a2dU, 0x0f111e0fU,
-    0xb0cb7bb0U, 0x54fca854U, 0xbbd66dbbU, 0x163a2c16U,
-};
-
-const TUint32 Te3[256] = {
-    0x6363a5c6U, 0x7c7c84f8U, 0x777799eeU, 0x7b7b8df6U,
-    0xf2f20dffU, 0x6b6bbdd6U, 0x6f6fb1deU, 0xc5c55491U,
-    0x30305060U, 0x01010302U, 0x6767a9ceU, 0x2b2b7d56U,
-    0xfefe19e7U, 0xd7d762b5U, 0xababe64dU, 0x76769aecU,
-    0xcaca458fU, 0x82829d1fU, 0xc9c94089U, 0x7d7d87faU,
-    0xfafa15efU, 0x5959ebb2U, 0x4747c98eU, 0xf0f00bfbU,
-    0xadadec41U, 0xd4d467b3U, 0xa2a2fd5fU, 0xafafea45U,
-    0x9c9cbf23U, 0xa4a4f753U, 0x727296e4U, 0xc0c05b9bU,
-    0xb7b7c275U, 0xfdfd1ce1U, 0x9393ae3dU, 0x26266a4cU,
-    0x36365a6cU, 0x3f3f417eU, 0xf7f702f5U, 0xcccc4f83U,
-    0x34345c68U, 0xa5a5f451U, 0xe5e534d1U, 0xf1f108f9U,
-    0x717193e2U, 0xd8d873abU, 0x31315362U, 0x15153f2aU,
-    0x04040c08U, 0xc7c75295U, 0x23236546U, 0xc3c35e9dU,
-    0x18182830U, 0x9696a137U, 0x05050f0aU, 0x9a9ab52fU,
-    0x0707090eU, 0x12123624U, 0x80809b1bU, 0xe2e23ddfU,
-    0xebeb26cdU, 0x2727694eU, 0xb2b2cd7fU, 0x75759feaU,
-    0x09091b12U, 0x83839e1dU, 0x2c2c7458U, 0x1a1a2e34U,
-    0x1b1b2d36U, 0x6e6eb2dcU, 0x5a5aeeb4U, 0xa0a0fb5bU,
-    0x5252f6a4U, 0x3b3b4d76U, 0xd6d661b7U, 0xb3b3ce7dU,
-    0x29297b52U, 0xe3e33eddU, 0x2f2f715eU, 0x84849713U,
-    0x5353f5a6U, 0xd1d168b9U, 0x00000000U, 0xeded2cc1U,
-    0x20206040U, 0xfcfc1fe3U, 0xb1b1c879U, 0x5b5bedb6U,
-    0x6a6abed4U, 0xcbcb468dU, 0xbebed967U, 0x39394b72U,
-    0x4a4ade94U, 0x4c4cd498U, 0x5858e8b0U, 0xcfcf4a85U,
-    0xd0d06bbbU, 0xefef2ac5U, 0xaaaae54fU, 0xfbfb16edU,
-    0x4343c586U, 0x4d4dd79aU, 0x33335566U, 0x85859411U,
-    0x4545cf8aU, 0xf9f910e9U, 0x02020604U, 0x7f7f81feU,
-    0x5050f0a0U, 0x3c3c4478U, 0x9f9fba25U, 0xa8a8e34bU,
-    0x5151f3a2U, 0xa3a3fe5dU, 0x4040c080U, 0x8f8f8a05U,
-    0x9292ad3fU, 0x9d9dbc21U, 0x38384870U, 0xf5f504f1U,
-    0xbcbcdf63U, 0xb6b6c177U, 0xdada75afU, 0x21216342U,
-    0x10103020U, 0xffff1ae5U, 0xf3f30efdU, 0xd2d26dbfU,
-    0xcdcd4c81U, 0x0c0c1418U, 0x13133526U, 0xecec2fc3U,
-    0x5f5fe1beU, 0x9797a235U, 0x4444cc88U, 0x1717392eU,
-    0xc4c45793U, 0xa7a7f255U, 0x7e7e82fcU, 0x3d3d477aU,
-    0x6464acc8U, 0x5d5de7baU, 0x19192b32U, 0x737395e6U,
-    0x6060a0c0U, 0x81819819U, 0x4f4fd19eU, 0xdcdc7fa3U,
-    0x22226644U, 0x2a2a7e54U, 0x9090ab3bU, 0x8888830bU,
-    0x4646ca8cU, 0xeeee29c7U, 0xb8b8d36bU, 0x14143c28U,
-    0xdede79a7U, 0x5e5ee2bcU, 0x0b0b1d16U, 0xdbdb76adU,
-    0xe0e03bdbU, 0x32325664U, 0x3a3a4e74U, 0x0a0a1e14U,
-    0x4949db92U, 0x06060a0cU, 0x24246c48U, 0x5c5ce4b8U,
-    0xc2c25d9fU, 0xd3d36ebdU, 0xacacef43U, 0x6262a6c4U,
-    0x9191a839U, 0x9595a431U, 0xe4e437d3U, 0x79798bf2U,
-    0xe7e732d5U, 0xc8c8438bU, 0x3737596eU, 0x6d6db7daU,
-    0x8d8d8c01U, 0xd5d564b1U, 0x4e4ed29cU, 0xa9a9e049U,
-    0x6c6cb4d8U, 0x5656faacU, 0xf4f407f3U, 0xeaea25cfU,
-    0x6565afcaU, 0x7a7a8ef4U, 0xaeaee947U, 0x08081810U,
-    0xbabad56fU, 0x787888f0U, 0x25256f4aU, 0x2e2e725cU,
-    0x1c1c2438U, 0xa6a6f157U, 0xb4b4c773U, 0xc6c65197U,
-    0xe8e823cbU, 0xdddd7ca1U, 0x74749ce8U, 0x1f1f213eU,
-    0x4b4bdd96U, 0xbdbddc61U, 0x8b8b860dU, 0x8a8a850fU,
-    0x707090e0U, 0x3e3e427cU, 0xb5b5c471U, 0x6666aaccU,
-    0x4848d890U, 0x03030506U, 0xf6f601f7U, 0x0e0e121cU,
-    0x6161a3c2U, 0x35355f6aU, 0x5757f9aeU, 0xb9b9d069U,
-    0x86869117U, 0xc1c15899U, 0x1d1d273aU, 0x9e9eb927U,
-    0xe1e138d9U, 0xf8f813ebU, 0x9898b32bU, 0x11113322U,
-    0x6969bbd2U, 0xd9d970a9U, 0x8e8e8907U, 0x9494a733U,
-    0x9b9bb62dU, 0x1e1e223cU, 0x87879215U, 0xe9e920c9U,
-    0xcece4987U, 0x5555ffaaU, 0x28287850U, 0xdfdf7aa5U,
-    0x8c8c8f03U, 0xa1a1f859U, 0x89898009U, 0x0d0d171aU,
-    0xbfbfda65U, 0xe6e631d7U, 0x4242c684U, 0x6868b8d0U,
-    0x4141c382U, 0x9999b029U, 0x2d2d775aU, 0x0f0f111eU,
-    0xb0b0cb7bU, 0x5454fca8U, 0xbbbbd66dU, 0x16163a2cU,
-};
-
-const TUint32 Te4[256] = {
-    0x63636363U, 0x7c7c7c7cU, 0x77777777U, 0x7b7b7b7bU,
-    0xf2f2f2f2U, 0x6b6b6b6bU, 0x6f6f6f6fU, 0xc5c5c5c5U,
-    0x30303030U, 0x01010101U, 0x67676767U, 0x2b2b2b2bU,
-    0xfefefefeU, 0xd7d7d7d7U, 0xababababU, 0x76767676U,
-    0xcacacacaU, 0x82828282U, 0xc9c9c9c9U, 0x7d7d7d7dU,
-    0xfafafafaU, 0x59595959U, 0x47474747U, 0xf0f0f0f0U,
-    0xadadadadU, 0xd4d4d4d4U, 0xa2a2a2a2U, 0xafafafafU,
-    0x9c9c9c9cU, 0xa4a4a4a4U, 0x72727272U, 0xc0c0c0c0U,
-    0xb7b7b7b7U, 0xfdfdfdfdU, 0x93939393U, 0x26262626U,
-    0x36363636U, 0x3f3f3f3fU, 0xf7f7f7f7U, 0xccccccccU,
-    0x34343434U, 0xa5a5a5a5U, 0xe5e5e5e5U, 0xf1f1f1f1U,
-    0x71717171U, 0xd8d8d8d8U, 0x31313131U, 0x15151515U,
-    0x04040404U, 0xc7c7c7c7U, 0x23232323U, 0xc3c3c3c3U,
-    0x18181818U, 0x96969696U, 0x05050505U, 0x9a9a9a9aU,
-    0x07070707U, 0x12121212U, 0x80808080U, 0xe2e2e2e2U,
-    0xebebebebU, 0x27272727U, 0xb2b2b2b2U, 0x75757575U,
-    0x09090909U, 0x83838383U, 0x2c2c2c2cU, 0x1a1a1a1aU,
-    0x1b1b1b1bU, 0x6e6e6e6eU, 0x5a5a5a5aU, 0xa0a0a0a0U,
-    0x52525252U, 0x3b3b3b3bU, 0xd6d6d6d6U, 0xb3b3b3b3U,
-    0x29292929U, 0xe3e3e3e3U, 0x2f2f2f2fU, 0x84848484U,
-    0x53535353U, 0xd1d1d1d1U, 0x00000000U, 0xededededU,
-    0x20202020U, 0xfcfcfcfcU, 0xb1b1b1b1U, 0x5b5b5b5bU,
-    0x6a6a6a6aU, 0xcbcbcbcbU, 0xbebebebeU, 0x39393939U,
-    0x4a4a4a4aU, 0x4c4c4c4cU, 0x58585858U, 0xcfcfcfcfU,
-    0xd0d0d0d0U, 0xefefefefU, 0xaaaaaaaaU, 0xfbfbfbfbU,
-    0x43434343U, 0x4d4d4d4dU, 0x33333333U, 0x85858585U,
-    0x45454545U, 0xf9f9f9f9U, 0x02020202U, 0x7f7f7f7fU,
-    0x50505050U, 0x3c3c3c3cU, 0x9f9f9f9fU, 0xa8a8a8a8U,
-    0x51515151U, 0xa3a3a3a3U, 0x40404040U, 0x8f8f8f8fU,
-    0x92929292U, 0x9d9d9d9dU, 0x38383838U, 0xf5f5f5f5U,
-    0xbcbcbcbcU, 0xb6b6b6b6U, 0xdadadadaU, 0x21212121U,
-    0x10101010U, 0xffffffffU, 0xf3f3f3f3U, 0xd2d2d2d2U,
-    0xcdcdcdcdU, 0x0c0c0c0cU, 0x13131313U, 0xececececU,
-    0x5f5f5f5fU, 0x97979797U, 0x44444444U, 0x17171717U,
-    0xc4c4c4c4U, 0xa7a7a7a7U, 0x7e7e7e7eU, 0x3d3d3d3dU,
-    0x64646464U, 0x5d5d5d5dU, 0x19191919U, 0x73737373U,
-    0x60606060U, 0x81818181U, 0x4f4f4f4fU, 0xdcdcdcdcU,
-    0x22222222U, 0x2a2a2a2aU, 0x90909090U, 0x88888888U,
-    0x46464646U, 0xeeeeeeeeU, 0xb8b8b8b8U, 0x14141414U,
-    0xdedededeU, 0x5e5e5e5eU, 0x0b0b0b0bU, 0xdbdbdbdbU,
-    0xe0e0e0e0U, 0x32323232U, 0x3a3a3a3aU, 0x0a0a0a0aU,
-    0x49494949U, 0x06060606U, 0x24242424U, 0x5c5c5c5cU,
-    0xc2c2c2c2U, 0xd3d3d3d3U, 0xacacacacU, 0x62626262U,
-    0x91919191U, 0x95959595U, 0xe4e4e4e4U, 0x79797979U,
-    0xe7e7e7e7U, 0xc8c8c8c8U, 0x37373737U, 0x6d6d6d6dU,
-    0x8d8d8d8dU, 0xd5d5d5d5U, 0x4e4e4e4eU, 0xa9a9a9a9U,
-    0x6c6c6c6cU, 0x56565656U, 0xf4f4f4f4U, 0xeaeaeaeaU,
-    0x65656565U, 0x7a7a7a7aU, 0xaeaeaeaeU, 0x08080808U,
-    0xbabababaU, 0x78787878U, 0x25252525U, 0x2e2e2e2eU,
-    0x1c1c1c1cU, 0xa6a6a6a6U, 0xb4b4b4b4U, 0xc6c6c6c6U,
-    0xe8e8e8e8U, 0xddddddddU, 0x74747474U, 0x1f1f1f1fU,
-    0x4b4b4b4bU, 0xbdbdbdbdU, 0x8b8b8b8bU, 0x8a8a8a8aU,
-    0x70707070U, 0x3e3e3e3eU, 0xb5b5b5b5U, 0x66666666U,
-    0x48484848U, 0x03030303U, 0xf6f6f6f6U, 0x0e0e0e0eU,
-    0x61616161U, 0x35353535U, 0x57575757U, 0xb9b9b9b9U,
-    0x86868686U, 0xc1c1c1c1U, 0x1d1d1d1dU, 0x9e9e9e9eU,
-    0xe1e1e1e1U, 0xf8f8f8f8U, 0x98989898U, 0x11111111U,
-    0x69696969U, 0xd9d9d9d9U, 0x8e8e8e8eU, 0x94949494U,
-    0x9b9b9b9bU, 0x1e1e1e1eU, 0x87878787U, 0xe9e9e9e9U,
-    0xcecececeU, 0x55555555U, 0x28282828U, 0xdfdfdfdfU,
-    0x8c8c8c8cU, 0xa1a1a1a1U, 0x89898989U, 0x0d0d0d0dU,
-    0xbfbfbfbfU, 0xe6e6e6e6U, 0x42424242U, 0x68686868U,
-    0x41414141U, 0x99999999U, 0x2d2d2d2dU, 0x0f0f0f0fU,
-    0xb0b0b0b0U, 0x54545454U, 0xbbbbbbbbU, 0x16161616U,
-};
-
-const TUint32 Td0[256] = {
-    0x51f4a750U, 0x7e416553U, 0x1a17a4c3U, 0x3a275e96U,
-    0x3bab6bcbU, 0x1f9d45f1U, 0xacfa58abU, 0x4be30393U,
-    0x2030fa55U, 0xad766df6U, 0x88cc7691U, 0xf5024c25U,
-    0x4fe5d7fcU, 0xc52acbd7U, 0x26354480U, 0xb562a38fU,
-    0xdeb15a49U, 0x25ba1b67U, 0x45ea0e98U, 0x5dfec0e1U,
-    0xc32f7502U, 0x814cf012U, 0x8d4697a3U, 0x6bd3f9c6U,
-    0x038f5fe7U, 0x15929c95U, 0xbf6d7aebU, 0x955259daU,
-    0xd4be832dU, 0x587421d3U, 0x49e06929U, 0x8ec9c844U,
-    0x75c2896aU, 0xf48e7978U, 0x99583e6bU, 0x27b971ddU,
-    0xbee14fb6U, 0xf088ad17U, 0xc920ac66U, 0x7dce3ab4U,
-    0x63df4a18U, 0xe51a3182U, 0x97513360U, 0x62537f45U,
-    0xb16477e0U, 0xbb6bae84U, 0xfe81a01cU, 0xf9082b94U,
-    0x70486858U, 0x8f45fd19U, 0x94de6c87U, 0x527bf8b7U,
-    0xab73d323U, 0x724b02e2U, 0xe31f8f57U, 0x6655ab2aU,
-    0xb2eb2807U, 0x2fb5c203U, 0x86c57b9aU, 0xd33708a5U,
-    0x302887f2U, 0x23bfa5b2U, 0x02036abaU, 0xed16825cU,
-    0x8acf1c2bU, 0xa779b492U, 0xf307f2f0U, 0x4e69e2a1U,
-    0x65daf4cdU, 0x0605bed5U, 0xd134621fU, 0xc4a6fe8aU,
-    0x342e539dU, 0xa2f355a0U, 0x058ae132U, 0xa4f6eb75U,
-    0x0b83ec39U, 0x4060efaaU, 0x5e719f06U, 0xbd6e1051U,
-    0x3e218af9U, 0x96dd063dU, 0xdd3e05aeU, 0x4de6bd46U,
-    0x91548db5U, 0x71c45d05U, 0x0406d46fU, 0x605015ffU,
-    0x1998fb24U, 0xd6bde997U, 0x894043ccU, 0x67d99e77U,
-    0xb0e842bdU, 0x07898b88U, 0xe7195b38U, 0x79c8eedbU,
-    0xa17c0a47U, 0x7c420fe9U, 0xf8841ec9U, 0x00000000U,
-    0x09808683U, 0x322bed48U, 0x1e1170acU, 0x6c5a724eU,
-    0xfd0efffbU, 0x0f853856U, 0x3daed51eU, 0x362d3927U,
-    0x0a0fd964U, 0x685ca621U, 0x9b5b54d1U, 0x24362e3aU,
-    0x0c0a67b1U, 0x9357e70fU, 0xb4ee96d2U, 0x1b9b919eU,
-    0x80c0c54fU, 0x61dc20a2U, 0x5a774b69U, 0x1c121a16U,
-    0xe293ba0aU, 0xc0a02ae5U, 0x3c22e043U, 0x121b171dU,
-    0x0e090d0bU, 0xf28bc7adU, 0x2db6a8b9U, 0x141ea9c8U,
-    0x57f11985U, 0xaf75074cU, 0xee99ddbbU, 0xa37f60fdU,
-    0xf701269fU, 0x5c72f5bcU, 0x44663bc5U, 0x5bfb7e34U,
-    0x8b432976U, 0xcb23c6dcU, 0xb6edfc68U, 0xb8e4f163U,
-    0xd731dccaU, 0x42638510U, 0x13972240U, 0x84c61120U,
-    0x854a247dU, 0xd2bb3df8U, 0xaef93211U, 0xc729a16dU,
-    0x1d9e2f4bU, 0xdcb230f3U, 0x0d8652ecU, 0x77c1e3d0U,
-    0x2bb3166cU, 0xa970b999U, 0x119448faU, 0x47e96422U,
-    0xa8fc8cc4U, 0xa0f03f1aU, 0x567d2cd8U, 0x223390efU,
-    0x87494ec7U, 0xd938d1c1U, 0x8ccaa2feU, 0x98d40b36U,
-    0xa6f581cfU, 0xa57ade28U, 0xdab78e26U, 0x3fadbfa4U,
-    0x2c3a9de4U, 0x5078920dU, 0x6a5fcc9bU, 0x547e4662U,
-    0xf68d13c2U, 0x90d8b8e8U, 0x2e39f75eU, 0x82c3aff5U,
-    0x9f5d80beU, 0x69d0937cU, 0x6fd52da9U, 0xcf2512b3U,
-    0xc8ac993bU, 0x10187da7U, 0xe89c636eU, 0xdb3bbb7bU,
-    0xcd267809U, 0x6e5918f4U, 0xec9ab701U, 0x834f9aa8U,
-    0xe6956e65U, 0xaaffe67eU, 0x21bccf08U, 0xef15e8e6U,
-    0xbae79bd9U, 0x4a6f36ceU, 0xea9f09d4U, 0x29b07cd6U,
-    0x31a4b2afU, 0x2a3f2331U, 0xc6a59430U, 0x35a266c0U,
-    0x744ebc37U, 0xfc82caa6U, 0xe090d0b0U, 0x33a7d815U,
-    0xf104984aU, 0x41ecdaf7U, 0x7fcd500eU, 0x1791f62fU,
-    0x764dd68dU, 0x43efb04dU, 0xccaa4d54U, 0xe49604dfU,
-    0x9ed1b5e3U, 0x4c6a881bU, 0xc12c1fb8U, 0x4665517fU,
-    0x9d5eea04U, 0x018c355dU, 0xfa877473U, 0xfb0b412eU,
-    0xb3671d5aU, 0x92dbd252U, 0xe9105633U, 0x6dd64713U,
-    0x9ad7618cU, 0x37a10c7aU, 0x59f8148eU, 0xeb133c89U,
-    0xcea927eeU, 0xb761c935U, 0xe11ce5edU, 0x7a47b13cU,
-    0x9cd2df59U, 0x55f2733fU, 0x1814ce79U, 0x73c737bfU,
-    0x53f7cdeaU, 0x5ffdaa5bU, 0xdf3d6f14U, 0x7844db86U,
-    0xcaaff381U, 0xb968c43eU, 0x3824342cU, 0xc2a3405fU,
-    0x161dc372U, 0xbce2250cU, 0x283c498bU, 0xff0d9541U,
-    0x39a80171U, 0x080cb3deU, 0xd8b4e49cU, 0x6456c190U,
-    0x7bcb8461U, 0xd532b670U, 0x486c5c74U, 0xd0b85742U,
-};
-
-const TUint32 Td1[256] = {
-    0x5051f4a7U, 0x537e4165U, 0xc31a17a4U, 0x963a275eU,
-    0xcb3bab6bU, 0xf11f9d45U, 0xabacfa58U, 0x934be303U,
-    0x552030faU, 0xf6ad766dU, 0x9188cc76U, 0x25f5024cU,
-    0xfc4fe5d7U, 0xd7c52acbU, 0x80263544U, 0x8fb562a3U,
-    0x49deb15aU, 0x6725ba1bU, 0x9845ea0eU, 0xe15dfec0U,
-    0x02c32f75U, 0x12814cf0U, 0xa38d4697U, 0xc66bd3f9U,
-    0xe7038f5fU, 0x9515929cU, 0xebbf6d7aU, 0xda955259U,
-    0x2dd4be83U, 0xd3587421U, 0x2949e069U, 0x448ec9c8U,
-    0x6a75c289U, 0x78f48e79U, 0x6b99583eU, 0xdd27b971U,
-    0xb6bee14fU, 0x17f088adU, 0x66c920acU, 0xb47dce3aU,
-    0x1863df4aU, 0x82e51a31U, 0x60975133U, 0x4562537fU,
-    0xe0b16477U, 0x84bb6baeU, 0x1cfe81a0U, 0x94f9082bU,
-    0x58704868U, 0x198f45fdU, 0x8794de6cU, 0xb7527bf8U,
-    0x23ab73d3U, 0xe2724b02U, 0x57e31f8fU, 0x2a6655abU,
-    0x07b2eb28U, 0x032fb5c2U, 0x9a86c57bU, 0xa5d33708U,
-    0xf2302887U, 0xb223bfa5U, 0xba02036aU, 0x5ced1682U,
-    0x2b8acf1cU, 0x92a779b4U, 0xf0f307f2U, 0xa14e69e2U,
-    0xcd65daf4U, 0xd50605beU, 0x1fd13462U, 0x8ac4a6feU,
-    0x9d342e53U, 0xa0a2f355U, 0x32058ae1U, 0x75a4f6ebU,
-    0x390b83ecU, 0xaa4060efU, 0x065e719fU, 0x51bd6e10U,
-    0xf93e218aU, 0x3d96dd06U, 0xaedd3e05U, 0x464de6bdU,
-    0xb591548dU, 0x0571c45dU, 0x6f0406d4U, 0xff605015U,
-    0x241998fbU, 0x97d6bde9U, 0xcc894043U, 0x7767d99eU,
-    0xbdb0e842U, 0x8807898bU, 0x38e7195bU, 0xdb79c8eeU,
-    0x47a17c0aU, 0xe97c420fU, 0xc9f8841eU, 0x00000000U,
-    0x83098086U, 0x48322bedU, 0xac1e1170U, 0x4e6c5a72U,
-    0xfbfd0effU, 0x560f8538U, 0x1e3daed5U, 0x27362d39U,
-    0x640a0fd9U, 0x21685ca6U, 0xd19b5b54U, 0x3a24362eU,
-    0xb10c0a67U, 0x0f9357e7U, 0xd2b4ee96U, 0x9e1b9b91U,
-    0x4f80c0c5U, 0xa261dc20U, 0x695a774bU, 0x161c121aU,
-    0x0ae293baU, 0xe5c0a02aU, 0x433c22e0U, 0x1d121b17U,
-    0x0b0e090dU, 0xadf28bc7U, 0xb92db6a8U, 0xc8141ea9U,
-    0x8557f119U, 0x4caf7507U, 0xbbee99ddU, 0xfda37f60U,
-    0x9ff70126U, 0xbc5c72f5U, 0xc544663bU, 0x345bfb7eU,
-    0x768b4329U, 0xdccb23c6U, 0x68b6edfcU, 0x63b8e4f1U,
-    0xcad731dcU, 0x10426385U, 0x40139722U, 0x2084c611U,
-    0x7d854a24U, 0xf8d2bb3dU, 0x11aef932U, 0x6dc729a1U,
-    0x4b1d9e2fU, 0xf3dcb230U, 0xec0d8652U, 0xd077c1e3U,
-    0x6c2bb316U, 0x99a970b9U, 0xfa119448U, 0x2247e964U,
-    0xc4a8fc8cU, 0x1aa0f03fU, 0xd8567d2cU, 0xef223390U,
-    0xc787494eU, 0xc1d938d1U, 0xfe8ccaa2U, 0x3698d40bU,
-    0xcfa6f581U, 0x28a57adeU, 0x26dab78eU, 0xa43fadbfU,
-    0xe42c3a9dU, 0x0d507892U, 0x9b6a5fccU, 0x62547e46U,
-    0xc2f68d13U, 0xe890d8b8U, 0x5e2e39f7U, 0xf582c3afU,
-    0xbe9f5d80U, 0x7c69d093U, 0xa96fd52dU, 0xb3cf2512U,
-    0x3bc8ac99U, 0xa710187dU, 0x6ee89c63U, 0x7bdb3bbbU,
-    0x09cd2678U, 0xf46e5918U, 0x01ec9ab7U, 0xa8834f9aU,
-    0x65e6956eU, 0x7eaaffe6U, 0x0821bccfU, 0xe6ef15e8U,
-    0xd9bae79bU, 0xce4a6f36U, 0xd4ea9f09U, 0xd629b07cU,
-    0xaf31a4b2U, 0x312a3f23U, 0x30c6a594U, 0xc035a266U,
-    0x37744ebcU, 0xa6fc82caU, 0xb0e090d0U, 0x1533a7d8U,
-    0x4af10498U, 0xf741ecdaU, 0x0e7fcd50U, 0x2f1791f6U,
-    0x8d764dd6U, 0x4d43efb0U, 0x54ccaa4dU, 0xdfe49604U,
-    0xe39ed1b5U, 0x1b4c6a88U, 0xb8c12c1fU, 0x7f466551U,
-    0x049d5eeaU, 0x5d018c35U, 0x73fa8774U, 0x2efb0b41U,
-    0x5ab3671dU, 0x5292dbd2U, 0x33e91056U, 0x136dd647U,
-    0x8c9ad761U, 0x7a37a10cU, 0x8e59f814U, 0x89eb133cU,
-    0xeecea927U, 0x35b761c9U, 0xede11ce5U, 0x3c7a47b1U,
-    0x599cd2dfU, 0x3f55f273U, 0x791814ceU, 0xbf73c737U,
-    0xea53f7cdU, 0x5b5ffdaaU, 0x14df3d6fU, 0x867844dbU,
-    0x81caaff3U, 0x3eb968c4U, 0x2c382434U, 0x5fc2a340U,
-    0x72161dc3U, 0x0cbce225U, 0x8b283c49U, 0x41ff0d95U,
-    0x7139a801U, 0xde080cb3U, 0x9cd8b4e4U, 0x906456c1U,
-    0x617bcb84U, 0x70d532b6U, 0x74486c5cU, 0x42d0b857U,
-};
-
-const TUint32 Td2[256] = {
-    0xa75051f4U, 0x65537e41U, 0xa4c31a17U, 0x5e963a27U,
-    0x6bcb3babU, 0x45f11f9dU, 0x58abacfaU, 0x03934be3U,
-    0xfa552030U, 0x6df6ad76U, 0x769188ccU, 0x4c25f502U,
-    0xd7fc4fe5U, 0xcbd7c52aU, 0x44802635U, 0xa38fb562U,
-    0x5a49deb1U, 0x1b6725baU, 0x0e9845eaU, 0xc0e15dfeU,
-    0x7502c32fU, 0xf012814cU, 0x97a38d46U, 0xf9c66bd3U,
-    0x5fe7038fU, 0x9c951592U, 0x7aebbf6dU, 0x59da9552U,
-    0x832dd4beU, 0x21d35874U, 0x692949e0U, 0xc8448ec9U,
-    0x896a75c2U, 0x7978f48eU, 0x3e6b9958U, 0x71dd27b9U,
-    0x4fb6bee1U, 0xad17f088U, 0xac66c920U, 0x3ab47dceU,
-    0x4a1863dfU, 0x3182e51aU, 0x33609751U, 0x7f456253U,
-    0x77e0b164U, 0xae84bb6bU, 0xa01cfe81U, 0x2b94f908U,
-    0x68587048U, 0xfd198f45U, 0x6c8794deU, 0xf8b7527bU,
-    0xd323ab73U, 0x02e2724bU, 0x8f57e31fU, 0xab2a6655U,
-    0x2807b2ebU, 0xc2032fb5U, 0x7b9a86c5U, 0x08a5d337U,
-    0x87f23028U, 0xa5b223bfU, 0x6aba0203U, 0x825ced16U,
-    0x1c2b8acfU, 0xb492a779U, 0xf2f0f307U, 0xe2a14e69U,
-    0xf4cd65daU, 0xbed50605U, 0x621fd134U, 0xfe8ac4a6U,
-    0x539d342eU, 0x55a0a2f3U, 0xe132058aU, 0xeb75a4f6U,
-    0xec390b83U, 0xefaa4060U, 0x9f065e71U, 0x1051bd6eU,
-
-    0x8af93e21U, 0x063d96ddU, 0x05aedd3eU, 0xbd464de6U,
-    0x8db59154U, 0x5d0571c4U, 0xd46f0406U, 0x15ff6050U,
-    0xfb241998U, 0xe997d6bdU, 0x43cc8940U, 0x9e7767d9U,
-    0x42bdb0e8U, 0x8b880789U, 0x5b38e719U, 0xeedb79c8U,
-    0x0a47a17cU, 0x0fe97c42U, 0x1ec9f884U, 0x00000000U,
-    0x86830980U, 0xed48322bU, 0x70ac1e11U, 0x724e6c5aU,
-    0xfffbfd0eU, 0x38560f85U, 0xd51e3daeU, 0x3927362dU,
-    0xd9640a0fU, 0xa621685cU, 0x54d19b5bU, 0x2e3a2436U,
-    0x67b10c0aU, 0xe70f9357U, 0x96d2b4eeU, 0x919e1b9bU,
-    0xc54f80c0U, 0x20a261dcU, 0x4b695a77U, 0x1a161c12U,
-    0xba0ae293U, 0x2ae5c0a0U, 0xe0433c22U, 0x171d121bU,
-    0x0d0b0e09U, 0xc7adf28bU, 0xa8b92db6U, 0xa9c8141eU,
-    0x198557f1U, 0x074caf75U, 0xddbbee99U, 0x60fda37fU,
-    0x269ff701U, 0xf5bc5c72U, 0x3bc54466U, 0x7e345bfbU,
-    0x29768b43U, 0xc6dccb23U, 0xfc68b6edU, 0xf163b8e4U,
-    0xdccad731U, 0x85104263U, 0x22401397U, 0x112084c6U,
-    0x247d854aU, 0x3df8d2bbU, 0x3211aef9U, 0xa16dc729U,
-    0x2f4b1d9eU, 0x30f3dcb2U, 0x52ec0d86U, 0xe3d077c1U,
-    0x166c2bb3U, 0xb999a970U, 0x48fa1194U, 0x642247e9U,
-    0x8cc4a8fcU, 0x3f1aa0f0U, 0x2cd8567dU, 0x90ef2233U,
-    0x4ec78749U, 0xd1c1d938U, 0xa2fe8ccaU, 0x0b3698d4U,
-    0x81cfa6f5U, 0xde28a57aU, 0x8e26dab7U, 0xbfa43fadU,
-    0x9de42c3aU, 0x920d5078U, 0xcc9b6a5fU, 0x4662547eU,
-    0x13c2f68dU, 0xb8e890d8U, 0xf75e2e39U, 0xaff582c3U,
-    0x80be9f5dU, 0x937c69d0U, 0x2da96fd5U, 0x12b3cf25U,
-    0x993bc8acU, 0x7da71018U, 0x636ee89cU, 0xbb7bdb3bU,
-    0x7809cd26U, 0x18f46e59U, 0xb701ec9aU, 0x9aa8834fU,
-    0x6e65e695U, 0xe67eaaffU, 0xcf0821bcU, 0xe8e6ef15U,
-    0x9bd9bae7U, 0x36ce4a6fU, 0x09d4ea9fU, 0x7cd629b0U,
-    0xb2af31a4U, 0x23312a3fU, 0x9430c6a5U, 0x66c035a2U,
-    0xbc37744eU, 0xcaa6fc82U, 0xd0b0e090U, 0xd81533a7U,
-    0x984af104U, 0xdaf741ecU, 0x500e7fcdU, 0xf62f1791U,
-    0xd68d764dU, 0xb04d43efU, 0x4d54ccaaU, 0x04dfe496U,
-    0xb5e39ed1U, 0x881b4c6aU, 0x1fb8c12cU, 0x517f4665U,
-    0xea049d5eU, 0x355d018cU, 0x7473fa87U, 0x412efb0bU,
-    0x1d5ab367U, 0xd25292dbU, 0x5633e910U, 0x47136dd6U,
-    0x618c9ad7U, 0x0c7a37a1U, 0x148e59f8U, 0x3c89eb13U,
-    0x27eecea9U, 0xc935b761U, 0xe5ede11cU, 0xb13c7a47U,
-    0xdf599cd2U, 0x733f55f2U, 0xce791814U, 0x37bf73c7U,
-    0xcdea53f7U, 0xaa5b5ffdU, 0x6f14df3dU, 0xdb867844U,
-    0xf381caafU, 0xc43eb968U, 0x342c3824U, 0x405fc2a3U,
-    0xc372161dU, 0x250cbce2U, 0x498b283cU, 0x9541ff0dU,
-    0x017139a8U, 0xb3de080cU, 0xe49cd8b4U, 0xc1906456U,
-    0x84617bcbU, 0xb670d532U, 0x5c74486cU, 0x5742d0b8U,
-};
-
-const TUint32 Td3[256] = {
-    0xf4a75051U, 0x4165537eU, 0x17a4c31aU, 0x275e963aU,
-    0xab6bcb3bU, 0x9d45f11fU, 0xfa58abacU, 0xe303934bU,
-    0x30fa5520U, 0x766df6adU, 0xcc769188U, 0x024c25f5U,
-    0xe5d7fc4fU, 0x2acbd7c5U, 0x35448026U, 0x62a38fb5U,
-    0xb15a49deU, 0xba1b6725U, 0xea0e9845U, 0xfec0e15dU,
-    0x2f7502c3U, 0x4cf01281U, 0x4697a38dU, 0xd3f9c66bU,
-    0x8f5fe703U, 0x929c9515U, 0x6d7aebbfU, 0x5259da95U,
-    0xbe832dd4U, 0x7421d358U, 0xe0692949U, 0xc9c8448eU,
-    0xc2896a75U, 0x8e7978f4U, 0x583e6b99U, 0xb971dd27U,
-    0xe14fb6beU, 0x88ad17f0U, 0x20ac66c9U, 0xce3ab47dU,
-    0xdf4a1863U, 0x1a3182e5U, 0x51336097U, 0x537f4562U,
-    0x6477e0b1U, 0x6bae84bbU, 0x81a01cfeU, 0x082b94f9U,
-    0x48685870U, 0x45fd198fU, 0xde6c8794U, 0x7bf8b752U,
-    0x73d323abU, 0x4b02e272U, 0x1f8f57e3U, 0x55ab2a66U,
-    0xeb2807b2U, 0xb5c2032fU, 0xc57b9a86U, 0x3708a5d3U,
-    0x2887f230U, 0xbfa5b223U, 0x036aba02U, 0x16825cedU,
-    0xcf1c2b8aU, 0x79b492a7U, 0x07f2f0f3U, 0x69e2a14eU,
-    0xdaf4cd65U, 0x05bed506U, 0x34621fd1U, 0xa6fe8ac4U,
-    0x2e539d34U, 0xf355a0a2U, 0x8ae13205U, 0xf6eb75a4U,
-    0x83ec390bU, 0x60efaa40U, 0x719f065eU, 0x6e1051bdU,
-    0x218af93eU, 0xdd063d96U, 0x3e05aeddU, 0xe6bd464dU,
-    0x548db591U, 0xc45d0571U, 0x06d46f04U, 0x5015ff60U,
-    0x98fb2419U, 0xbde997d6U, 0x4043cc89U, 0xd99e7767U,
-    0xe842bdb0U, 0x898b8807U, 0x195b38e7U, 0xc8eedb79U,
-    0x7c0a47a1U, 0x420fe97cU, 0x841ec9f8U, 0x00000000U,
-    0x80868309U, 0x2bed4832U, 0x1170ac1eU, 0x5a724e6cU,
-    0x0efffbfdU, 0x8538560fU, 0xaed51e3dU, 0x2d392736U,
-    0x0fd9640aU, 0x5ca62168U, 0x5b54d19bU, 0x362e3a24U,
-    0x0a67b10cU, 0x57e70f93U, 0xee96d2b4U, 0x9b919e1bU,
-    0xc0c54f80U, 0xdc20a261U, 0x774b695aU, 0x121a161cU,
-    0x93ba0ae2U, 0xa02ae5c0U, 0x22e0433cU, 0x1b171d12U,
-    0x090d0b0eU, 0x8bc7adf2U, 0xb6a8b92dU, 0x1ea9c814U,
-    0xf1198557U, 0x75074cafU, 0x99ddbbeeU, 0x7f60fda3U,
-    0x01269ff7U, 0x72f5bc5cU, 0x663bc544U, 0xfb7e345bU,
-    0x4329768bU, 0x23c6dccbU, 0xedfc68b6U, 0xe4f163b8U,
-    0x31dccad7U, 0x63851042U, 0x97224013U, 0xc6112084U,
-    0x4a247d85U, 0xbb3df8d2U, 0xf93211aeU, 0x29a16dc7U,
-    0x9e2f4b1dU, 0xb230f3dcU, 0x8652ec0dU, 0xc1e3d077U,
-    0xb3166c2bU, 0x70b999a9U, 0x9448fa11U, 0xe9642247U,
-    0xfc8cc4a8U, 0xf03f1aa0U, 0x7d2cd856U, 0x3390ef22U,
-    0x494ec787U, 0x38d1c1d9U, 0xcaa2fe8cU, 0xd40b3698U,
-    0xf581cfa6U, 0x7ade28a5U, 0xb78e26daU, 0xadbfa43fU,
-    0x3a9de42cU, 0x78920d50U, 0x5fcc9b6aU, 0x7e466254U,
-    0x8d13c2f6U, 0xd8b8e890U, 0x39f75e2eU, 0xc3aff582U,
-    0x5d80be9fU, 0xd0937c69U, 0xd52da96fU, 0x2512b3cfU,
-    0xac993bc8U, 0x187da710U, 0x9c636ee8U, 0x3bbb7bdbU,
-    0x267809cdU, 0x5918f46eU, 0x9ab701ecU, 0x4f9aa883U,
-    0x956e65e6U, 0xffe67eaaU, 0xbccf0821U, 0x15e8e6efU,
-    0xe79bd9baU, 0x6f36ce4aU, 0x9f09d4eaU, 0xb07cd629U,
-    0xa4b2af31U, 0x3f23312aU, 0xa59430c6U, 0xa266c035U,
-    0x4ebc3774U, 0x82caa6fcU, 0x90d0b0e0U, 0xa7d81533U,
-    0x04984af1U, 0xecdaf741U, 0xcd500e7fU, 0x91f62f17U,
-    0x4dd68d76U, 0xefb04d43U, 0xaa4d54ccU, 0x9604dfe4U,
-    0xd1b5e39eU, 0x6a881b4cU, 0x2c1fb8c1U, 0x65517f46U,
-    0x5eea049dU, 0x8c355d01U, 0x877473faU, 0x0b412efbU,
-    0x671d5ab3U, 0xdbd25292U, 0x105633e9U, 0xd647136dU,
-    0xd7618c9aU, 0xa10c7a37U, 0xf8148e59U, 0x133c89ebU,
-    0xa927eeceU, 0x61c935b7U, 0x1ce5ede1U, 0x47b13c7aU,
-    0xd2df599cU, 0xf2733f55U, 0x14ce7918U, 0xc737bf73U,
-    0xf7cdea53U, 0xfdaa5b5fU, 0x3d6f14dfU, 0x44db8678U,
-    0xaff381caU, 0x68c43eb9U, 0x24342c38U, 0xa3405fc2U,
-    0x1dc37216U, 0xe2250cbcU, 0x3c498b28U, 0x0d9541ffU,
-    0xa8017139U, 0x0cb3de08U, 0xb4e49cd8U, 0x56c19064U,
-    0xcb84617bU, 0x32b670d5U, 0x6c5c7448U, 0xb85742d0U,
-};
-
-const TUint32 Td4[256] = {
-    0x52525252U, 0x09090909U, 0x6a6a6a6aU, 0xd5d5d5d5U,
-    0x30303030U, 0x36363636U, 0xa5a5a5a5U, 0x38383838U,
-    0xbfbfbfbfU, 0x40404040U, 0xa3a3a3a3U, 0x9e9e9e9eU,
-    0x81818181U, 0xf3f3f3f3U, 0xd7d7d7d7U, 0xfbfbfbfbU,
-    0x7c7c7c7cU, 0xe3e3e3e3U, 0x39393939U, 0x82828282U,
-    0x9b9b9b9bU, 0x2f2f2f2fU, 0xffffffffU, 0x87878787U,
-    0x34343434U, 0x8e8e8e8eU, 0x43434343U, 0x44444444U,
-    0xc4c4c4c4U, 0xdedededeU, 0xe9e9e9e9U, 0xcbcbcbcbU,
-    0x54545454U, 0x7b7b7b7bU, 0x94949494U, 0x32323232U,
-    0xa6a6a6a6U, 0xc2c2c2c2U, 0x23232323U, 0x3d3d3d3dU,
-    0xeeeeeeeeU, 0x4c4c4c4cU, 0x95959595U, 0x0b0b0b0bU,
-    0x42424242U, 0xfafafafaU, 0xc3c3c3c3U, 0x4e4e4e4eU,
-    0x08080808U, 0x2e2e2e2eU, 0xa1a1a1a1U, 0x66666666U,
-    0x28282828U, 0xd9d9d9d9U, 0x24242424U, 0xb2b2b2b2U,
-    0x76767676U, 0x5b5b5b5bU, 0xa2a2a2a2U, 0x49494949U,
-    0x6d6d6d6dU, 0x8b8b8b8bU, 0xd1d1d1d1U, 0x25252525U,
-    0x72727272U, 0xf8f8f8f8U, 0xf6f6f6f6U, 0x64646464U,
-    0x86868686U, 0x68686868U, 0x98989898U, 0x16161616U,
-    0xd4d4d4d4U, 0xa4a4a4a4U, 0x5c5c5c5cU, 0xccccccccU,
-    0x5d5d5d5dU, 0x65656565U, 0xb6b6b6b6U, 0x92929292U,
-    0x6c6c6c6cU, 0x70707070U, 0x48484848U, 0x50505050U,
-    0xfdfdfdfdU, 0xededededU, 0xb9b9b9b9U, 0xdadadadaU,
-    0x5e5e5e5eU, 0x15151515U, 0x46464646U, 0x57575757U,
-    0xa7a7a7a7U, 0x8d8d8d8dU, 0x9d9d9d9dU, 0x84848484U,
-    0x90909090U, 0xd8d8d8d8U, 0xababababU, 0x00000000U,
-    0x8c8c8c8cU, 0xbcbcbcbcU, 0xd3d3d3d3U, 0x0a0a0a0aU,
-    0xf7f7f7f7U, 0xe4e4e4e4U, 0x58585858U, 0x05050505U,
-    0xb8b8b8b8U, 0xb3b3b3b3U, 0x45454545U, 0x06060606U,
-    0xd0d0d0d0U, 0x2c2c2c2cU, 0x1e1e1e1eU, 0x8f8f8f8fU,
-    0xcacacacaU, 0x3f3f3f3fU, 0x0f0f0f0fU, 0x02020202U,
-    0xc1c1c1c1U, 0xafafafafU, 0xbdbdbdbdU, 0x03030303U,
-    0x01010101U, 0x13131313U, 0x8a8a8a8aU, 0x6b6b6b6bU,
-    0x3a3a3a3aU, 0x91919191U, 0x11111111U, 0x41414141U,
-    0x4f4f4f4fU, 0x67676767U, 0xdcdcdcdcU, 0xeaeaeaeaU,
-    0x97979797U, 0xf2f2f2f2U, 0xcfcfcfcfU, 0xcecececeU,
-    0xf0f0f0f0U, 0xb4b4b4b4U, 0xe6e6e6e6U, 0x73737373U,
-    0x96969696U, 0xacacacacU, 0x74747474U, 0x22222222U,
-    0xe7e7e7e7U, 0xadadadadU, 0x35353535U, 0x85858585U,
-    0xe2e2e2e2U, 0xf9f9f9f9U, 0x37373737U, 0xe8e8e8e8U,
-    0x1c1c1c1cU, 0x75757575U, 0xdfdfdfdfU, 0x6e6e6e6eU,
-    0x47474747U, 0xf1f1f1f1U, 0x1a1a1a1aU, 0x71717171U,
-    0x1d1d1d1dU, 0x29292929U, 0xc5c5c5c5U, 0x89898989U,
-    0x6f6f6f6fU, 0xb7b7b7b7U, 0x62626262U, 0x0e0e0e0eU,
-    0xaaaaaaaaU, 0x18181818U, 0xbebebebeU, 0x1b1b1b1bU,
-    0xfcfcfcfcU, 0x56565656U, 0x3e3e3e3eU, 0x4b4b4b4bU,
-    0xc6c6c6c6U, 0xd2d2d2d2U, 0x79797979U, 0x20202020U,
-    0x9a9a9a9aU, 0xdbdbdbdbU, 0xc0c0c0c0U, 0xfefefefeU,
-    0x78787878U, 0xcdcdcdcdU, 0x5a5a5a5aU, 0xf4f4f4f4U,
-    0x1f1f1f1fU, 0xddddddddU, 0xa8a8a8a8U, 0x33333333U,
-    0x88888888U, 0x07070707U, 0xc7c7c7c7U, 0x31313131U,
-    0xb1b1b1b1U, 0x12121212U, 0x10101010U, 0x59595959U,
-    0x27272727U, 0x80808080U, 0xececececU, 0x5f5f5f5fU,
-    0x60606060U, 0x51515151U, 0x7f7f7f7fU, 0xa9a9a9a9U,
-    0x19191919U, 0xb5b5b5b5U, 0x4a4a4a4aU, 0x0d0d0d0dU,
-    0x2d2d2d2dU, 0xe5e5e5e5U, 0x7a7a7a7aU, 0x9f9f9f9fU,
-    0x93939393U, 0xc9c9c9c9U, 0x9c9c9c9cU, 0xefefefefU,
-    0xa0a0a0a0U, 0xe0e0e0e0U, 0x3b3b3b3bU, 0x4d4d4d4dU,
-    0xaeaeaeaeU, 0x2a2a2a2aU, 0xf5f5f5f5U, 0xb0b0b0b0U,
-    0xc8c8c8c8U, 0xebebebebU, 0xbbbbbbbbU, 0x3c3c3c3cU,
-    0x83838383U, 0x53535353U, 0x99999999U, 0x61616161U,
-    0x17171717U, 0x2b2b2b2bU, 0x04040404U, 0x7e7e7e7eU,
-    0xbabababaU, 0x77777777U, 0xd6d6d6d6U, 0x26262626U,
-    0xe1e1e1e1U, 0x69696969U, 0x14141414U, 0x63636363U,
-    0x55555555U, 0x21212121U, 0x0c0c0c0cU, 0x7d7d7d7dU,
-};
-
-const TUint32 rcon[] = {
-	0x01000000, 0x02000000, 0x04000000, 0x08000000,
-	0x10000000, 0x20000000, 0x40000000, 0x80000000,
-	0x1B000000, 0x36000000, /* for 128-bit blocks, Rijndael never uses more than 10 rcon values */
-};
-
-}		//	namespace RIJNDAEL_TABLE
-#endif	//	__RIJNDAELTABLES_H__
--- a/crypto/weakcrypto/strong/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Builds strong cryptography
-*
-*/
-
-
-/**
- @file
-*/
-
-PRJ_PLATFORMS
-default
-
-PRJ_EXPORTS
-../inc/bigint.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(bigint.h)
-../inc/asymmetric.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(asymmetric.h)
-../inc/asymmetric.inl SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(asymmetric.inl)
-../inc/asymmetrickeys.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(asymmetrickeys.h)
-../inc/padding.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(padding.h)
-../inc/pbebase.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pbebase.h)
-../inc/pbe.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pbe.h)
-../inc/pbedata.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pbedata.h)
-../inc/3des.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(3des.h)
-../inc/arc4.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(arc4.h)
-../inc/blocktransformation.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(blocktransformation.h)
-../inc/bufferedtransformation.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(bufferedtransformation.h)
-../inc/cbcmode.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cbcmode.h)
-../inc/des.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(des.h)
-../inc/nullcipher.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(nullcipher.h)
-../inc/rc2.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(rc2.h)
-../inc/rijndael.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(rijndael.h)
-../inc/streamcipher.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(streamcipher.h)
-../inc/msymmetriccipher.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(msymmetriccipher.h)
-../inc/mode.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(mode.h)
-../inc/cryptostrength.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptostrength.h)
-
-#ifndef TOOLS // Don't build anything for tools
-#ifndef TOOLS2 // Don't build anything for tools2
-
-PRJ_MMPFILES
-#ifndef MARM_THUMB
-strong_crypto.mmp	BUILD_AS_ARM //	Don't build for thumb
-#endif
-
-#endif // TOOLS2
-#endif // TOOLS
--- a/crypto/weakcrypto/strong/strong_crypto.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose strong_cryptography.dll Implements strong cryptography.
-*/
-
-// Export-restricted version of cryptography.dll
-
-TARGET      strong_cryptography.dll
-MACRO       CRYPTO_STRONG_BUILD
-UNPAGED
-
-#include "../group/crypto.mmh"
-
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/test/performancetests.mdl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,602 +0,0 @@
-
-(object Petal
-    version    	43
-    _written   	"Rose 6.1.9113.5"
-    charSet    	0)
-
-(object Design "Logical View"
-    is_unit    	TRUE
-    is_loaded  	TRUE
-    quid       	"40B71472007C"
-    defaults   	(object defaults
-	rightMargin 	0.250000
-	leftMargin 	0.250000
-	topMargin  	0.250000
-	bottomMargin 	0.500000
-	pageOverlap 	0.250000
-	clipIconLabels 	TRUE
-	autoResize 	TRUE
-	snapToGrid 	TRUE
-	gridX      	16
-	gridY      	16
-	defaultFont 	(object Font
-	    size       	10
-	    face       	"Arial"
-	    bold       	FALSE
-	    italics    	FALSE
-	    underline  	FALSE
-	    strike     	FALSE
-	    color      	0
-	    default_color 	TRUE)
-	showMessageNum 	1
-	showClassOfObject 	TRUE
-	notation   	"Unified")
-    root_usecase_package 	(object Class_Category "Use Case View"
-	quid       	"40B71472007E"
-	exportControl 	"Public"
-	global     	TRUE
-	logical_models 	(list unit_reference_list)
-	logical_presentations 	(list unit_reference_list
-	    (object UseCaseDiagram "Main"
-		quid       	"40B714740196"
-		title      	"Main"
-		zoom       	100
-		max_height 	28350
-		max_width  	21600
-		origin_x   	0
-		origin_y   	0
-		items      	(list diagram_item_list))))
-    root_category 	(object Class_Category "Logical View"
-	quid       	"40B71472007D"
-	exportControl 	"Public"
-	global     	TRUE
-	subsystem  	"Component View"
-	quidu      	"40B71472007F"
-	logical_models 	(list unit_reference_list
-	    (object Class_Category "Performance tests"
-		quid       	"40B71592028F"
-		documentation 	"All classes that perform crypto performance tests."
-		stereotype 	"subsystem"
-		exportControl 	"Public"
-		logical_models 	(list unit_reference_list
-		    (object Class "CTestActions"
-			quid       	"40B716540157")
-		    (object Class "CRSASignFB"
-			quid       	"40B716D10389"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B716EA02DD"
-				supplier   	"Logical View::Performance tests::CTestActions"
-				quidu      	"40B716540157")))
-		    (object Class "CVectorTest"
-			quid       	"40B7174901C4"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B717810260"
-				supplier   	"Logical View::Performance tests::CTestActions"
-				quidu      	"40B716540157")))
-		    (object Class "CDHVector"
-			quid       	"40B71760033B"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B7176A0176"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSAEncryptFB"
-			quid       	"40B7199701B4"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B719AB02CE"
-				supplier   	"Logical View::Performance tests::CTestActions"
-				quidu      	"40B716540157")))
-		    (object Class "CRSAEncryptVector"
-			quid       	"40B71BE10118"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71C8E036A"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSADecryptVector"
-			quid       	"40B71BEE000F"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71C9900F9"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSADecryptVectorCRT"
-			quid       	"40B71BFC03B8"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71CA6002E"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSASignVector"
-			quid       	"40B71C0D002E"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71CA2002E"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSASignVectorCRT"
-			quid       	"40B71C280399"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71C9D0186"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4")))
-		    (object Class "CRSAVerifyVector"
-			quid       	"40B71C34002E"
-			superclasses 	(list inheritance_relationship_list
-			    (object Inheritance_Relationship
-				quid       	"40B71C7002BE"
-				supplier   	"Logical View::Performance tests::CVectorTest"
-				quidu      	"40B7174901C4"))))
-		logical_presentations 	(list unit_reference_list
-		    (object ClassDiagram "Performance tests"
-			quid       	"40B7162D03D7"
-			title      	"Performance tests"
-			zoom       	80
-			max_height 	28350
-			max_width  	21600
-			origin_x   	0
-			origin_y   	0
-			items      	(list diagram_item_list
-			    (object ClassView "Class" "Logical View::Performance tests::CTestActions" @1
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1232, 112)
-				label      	(object ItemLabel
-				    Parent_View 	@1
-				    location   	(1056, 57)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	352
-				    justify    	0
-				    label      	"CTestActions")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B716540157"
-				width      	370
-				height     	135
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSASignFB" @2
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(832, 480)
-				label      	(object ItemLabel
-				    Parent_View 	@2
-				    location   	(685, 429)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	294
-				    justify    	0
-				    label      	"CRSASignFB")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B716D10389"
-				width      	312
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object InheritView "" @3
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B716EA02DD"
-				client     	@2
-				supplier   	@1
-				line_style 	0)
-			    (object ClassView "Class" "Logical View::Performance tests::CVectorTest" @4
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1232, 480)
-				label      	(object ItemLabel
-				    Parent_View 	@4
-				    location   	(1102, 429)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	260
-				    justify    	0
-				    label      	"CVectorTest")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B7174901C4"
-				width      	278
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CDHVector" @5
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1936, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@5
-				    location   	(1815, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	242
-				    justify    	0
-				    label      	"CDHVector")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71760033B"
-				width      	260
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object InheritView "" @6
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B7176A0176"
-				client     	@5
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @7
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B717810260"
-				client     	@4
-				supplier   	@1
-				line_style 	0)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSAEncryptFB" @8
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1696, 480)
-				label      	(object ItemLabel
-				    Parent_View 	@8
-				    location   	(1524, 429)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	344
-				    justify    	0
-				    label      	"CRSAEncryptFB")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B7199701B4"
-				width      	362
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object InheritView "" @9
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B719AB02CE"
-				client     	@8
-				supplier   	@1
-				line_style 	0)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSAEncryptVector" @10
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(624, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@10
-				    location   	(431, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	386
-				    justify    	0
-				    label      	"CRSAEncryptVector")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71BE10118"
-				width      	404
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSADecryptVector" @11
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1056, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@11
-				    location   	(853, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	406
-				    justify    	0
-				    label      	"CRSADecryptVector")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71BEE000F"
-				width      	424
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSADecryptVectorCRT" @12
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(1536, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@12
-				    location   	(1293, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	486
-				    justify    	0
-				    label      	"CRSADecryptVectorCRT")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71BFC03B8"
-				width      	504
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSASignVector" @13
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(2272, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@13
-				    location   	(2097, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	350
-				    justify    	0
-				    label      	"CRSASignVector")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71C0D002E"
-				width      	368
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSASignVectorCRT" @14
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(2688, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@14
-				    location   	(2477, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	422
-				    justify    	0
-				    label      	"CRSASignVectorCRT")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71C280399"
-				width      	440
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object ClassView "Class" "Logical View::Performance tests::CRSAVerifyVector" @15
-				ShowCompartmentStereotypes 	TRUE
-				IncludeAttribute 	TRUE
-				IncludeOperation 	TRUE
-				location   	(208, 896)
-				label      	(object ItemLabel
-				    Parent_View 	@15
-				    location   	(30, 845)
-				    fill_color 	13434879
-				    nlines     	1
-				    max_width  	356
-				    justify    	0
-				    label      	"CRSAVerifyVector")
-				icon_style 	"Icon"
-				line_color 	3342489
-				fill_color 	13434879
-				quidu      	"40B71C34002E"
-				width      	374
-				height     	126
-				annotation 	8
-				autoResize 	TRUE)
-			    (object InheritView "" @16
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71C7002BE"
-				client     	@15
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @17
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71C8E036A"
-				client     	@10
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @18
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71C9900F9"
-				client     	@11
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @19
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71C9D0186"
-				client     	@14
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @20
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71CA2002E"
-				client     	@13
-				supplier   	@4
-				line_style 	0)
-			    (object InheritView "" @21
-				stereotype 	TRUE
-				line_color 	3342489
-				quidu      	"40B71CA6002E"
-				client     	@12
-				supplier   	@4
-				line_style 	0))))))
-	logical_presentations 	(list unit_reference_list
-	    (object ClassDiagram "Main"
-		quid       	"40B7147401A5"
-		title      	"Main"
-		zoom       	100
-		max_height 	28350
-		max_width  	21600
-		origin_x   	0
-		origin_y   	0
-		items      	(list diagram_item_list))))
-    root_subsystem 	(object SubSystem "Component View"
-	quid       	"40B71472007F"
-	physical_models 	(list unit_reference_list)
-	physical_presentations 	(list unit_reference_list
-	    (object Module_Diagram "Main"
-		quid       	"40B714740195"
-		title      	"Main"
-		zoom       	100
-		max_height 	28350
-		max_width  	21600
-		origin_x   	0
-		origin_y   	0
-		items      	(list diagram_item_list))))
-    process_structure 	(object Processes
-	quid       	"40B714720080"
-	ProcsNDevs 	(list
-	    (object Process_Diagram "Deployment View"
-		quid       	"40B7147200DA"
-		title      	"Deployment View"
-		zoom       	100
-		max_height 	28350
-		max_width  	21600
-		origin_x   	0
-		origin_y   	0
-		items      	(list diagram_item_list))))
-    properties 	(object Properties
-	attributes 	(list Attribute_Set
-	    (object Attribute
-		tool       	"DDL"
-		name       	"propertyId"
-		value      	"809135966")
-	    (object Attribute
-		tool       	"DDL"
-		name       	"default__Project"
-		value      	(list Attribute_Set
-		    (object Attribute
-			tool       	"DDL"
-			name       	"Directory"
-			value      	"AUTO GENERATE")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"DataBase"
-			value      	("DataBaseSet" 800))
-		    (object Attribute
-			tool       	"DDL"
-			name       	"DataBaseSet"
-			value      	(list Attribute_Set
-			    (object Attribute
-				tool       	"DDL"
-				name       	"ANSI"
-				value      	800)
-			    (object Attribute
-				tool       	"DDL"
-				name       	"Oracle"
-				value      	801)
-			    (object Attribute
-				tool       	"DDL"
-				name       	"SQLServer"
-				value      	802)
-			    (object Attribute
-				tool       	"DDL"
-				name       	"Sybase"
-				value      	803)
-			    (object Attribute
-				tool       	"DDL"
-				name       	"Watcom"
-				value      	804)))
-		    (object Attribute
-			tool       	"DDL"
-			name       	"PrimaryKeyColumnName"
-			value      	"Id")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"PrimaryKeyColumnType"
-			value      	"NUMBER(5)")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"ViewName"
-			value      	"V_")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"TableName"
-			value      	"T_")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"InheritSuffix"
-			value      	"_V")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"DropClause"
-			value      	FALSE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"BaseViews"
-			value      	FALSE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"DDLScriptFilename"
-			value      	"DDL1.SQL")))
-	    (object Attribute
-		tool       	"DDL"
-		name       	"default__Attribute"
-		value      	(list Attribute_Set
-		    (object Attribute
-			tool       	"DDL"
-			name       	"ColumnType"
-			value      	"VARCHAR")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"Length"
-			value      	"")
-		    (object Attribute
-			tool       	"DDL"
-			name       	"NullsOK"
-			value      	TRUE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"PrimaryKey"
-			value      	FALSE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"Unique"
-			value      	FALSE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"CompositeUnique"
-			value      	FALSE)
-		    (object Attribute
-			tool       	"DDL"
-			name       	"CheckConstraint"
-			value      	"")))
-	    (object Attribute
-		tool       	"DDL"
-		name       	"HiddenTool"
-		value      	FALSE)
-	    (object Attribute
-		tool       	"RequisitePro"
-		name       	"HiddenTool"
-		value      	FALSE)
-	    (object Attribute
-		tool       	"Rose Model Integrator"
-		name       	"HiddenTool"
-		value      	FALSE)
-	    (object Attribute
-		tool       	"Version Control"
-		name       	"HiddenTool"
-		value      	FALSE))
-	quid       	"40B714720081"))
--- a/crypto/weakcrypto/test/run_tests.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-@ECHO OFF
-rem Runs this component's tests for udeb and cleans up afterwards, results stored in \logs\winscw\.  
-rem This script requires ExecTimeOut.exe to be downloaded through Perforce from //PR/share/DABSRelease/buildscripts/ and the environment variable SECURITYSOURCEDIR to be set (though this should have been set prior to a build) to the root of the security source tree.
-rem See test_launcher.pl -help for more information.
-IF (%SECURITYSOURCEDIR%)==() (
-ECHO ERROR: Environment variable SECURITYSOURCEDIR has not been set.  This should point to the root of your Security source tree.
-) ELSE (
-%SECURITYSOURCEDIR%\os\security\cryptomgmtlibs\securitytestfw\test\autotesting\test_launcher.pl -components crypto -testreleases udeb -exectimeout \ExecTimeOut.exe -resultsoutput \logs\winscw
-)
\ No newline at end of file
--- a/crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,200 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "modarith.h"
-#include "nbtheory.h"
-#include <iostream.h>
-
-USING_NAMESPACE(CryptoPP)
-
-void CheckEPOCDecrypt(Integer& e, Integer& p, Integer& q, Integer& cipher, Integer& expectedPlaintext);
-
-void TestRSASigning()
-{
-	const Integer m("AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5h");
-	const Integer d("0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51h");
-	const Integer e(17);
-
-//	Take EPOC padded plain text, sign and verify
-	const Integer plain("01FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0054859B342C49EA2Ah");
-	const Integer expectedSig("786C08484F59280886A19919BECA53711819B2D2DD82D702E2F6DE991DC89CB968C01B1315A742B5BE783A781B5B1286F46DAFE29DE675C64A3BA4781DEF8F19h");
-	
-//	Private Encrypt (Sign) signedText = (digest ^ d) mod m
-	Integer cipher_privateEncrypt = a_exp_b_mod_c(plain, d, m);
-	assert(cipher_privateEncrypt==expectedSig);
-		
-//	Public Decrypt (Decrypt) = (signedText ^ e) mod m
-	Integer verified = a_exp_b_mod_c(cipher_privateEncrypt, e, m);
-	assert(verified==plain);
-		
-//	Now reverse operations (as in previous bugged asymmetric) and check results...
-//	Do a private decrypt for bad signing
-	Integer badSign = a_exp_b_mod_c(plain, d, m);
-	assert(badSign==expectedSig);
-
-//	And verify (public encryption)
-	Integer badVerify = a_exp_b_mod_c(badSign, e, m);
-	assert(badVerify==plain);
-
-}
-
-void TestRSADecryptValues()
-{
-//	First test a good set
-/*	<modulus>BBF82F090682CE9C2338AC2B9DA871F7368D07EED41043A440D6B6F07454F51FB8DFBAAF035C02AB61EA48CEEB6FCD4876ED520D60E1EC4619719D8A5B8B807FAFB8E0A3DFC737723EE6B4B7D93A2584EE6A649D060953748834B2454598394EE0AAB12D7B61A51F527A9A41F6C1687FE2537298CA2A8F5946F8E5FD091DBDCB</modulus>
-	<P>EECFAE81B1B9B3C908810B10A1B5600199EB9F44AEF4FDA493B81A9E3D84F632124EF0236E5D1E3B7E28FAE7AA040A2D5B252176459D1F397541BA2A58FB6599</P>
-	<Q>C97FB1F027F453F6341233EAAAD1D9353F6C42D08866B1D05A0F2035028B9D869840B41666B42E92EA0DA3B43204B5CFCE3352524D0416A5A441E700AF461503</Q>
-	<dP>54494CA63EBA0337E4E24023FCD69A5AEB07DDDC0183A4D0AC9B54B051F2B13ED9490975EAB77414FF59C1F7692E9A2E202B38FC910A474174ADC93C1F67C981</dP>
-	<dQ>471E0290FF0AF0750351B7F878864CA961ADBD3A8A7E991C5C0556A94C3146A7F9803F8F6F8AE342E931FD8AE47A220D1B99A495849807FE39F9245A9836DA3D</dQ>
-	<qInv>B06C4FDABB6301198D265BDBAE9423B380F271F73453885093077FCD39E2119FC98632154F5883B167A967BF402B4E9E2E0F9656E698EA3666EDFB25798039F7</qInv>
-	<plaintext>D436E99569FD32A7C8A05BBC90D32C49</plaintext>
-	<ciphertext>4B9C35BC3CA99B3908EF91C91F4D661544B5462CB3079D7B7A610B90039602F080417B049B7F31BAF16A87B59986620EC1BBD791AD30774309C05F0AFA24B0BF1EA1FEAA3A8EFA2C24F5626B8A9C9A157C1018DA54D314E728E2DB75E84FB5E99082561D904139B95C4DA70A5AB6412527B97CEDA04C6FB00BE1E44537706FF2</ciphertext>
-*/
-	Integer e1 = Integer(17);
-	Integer p1 = Integer("EECFAE81B1B9B3C908810B10A1B5600199EB9F44AEF4FDA493B81A9E3D84F632124EF0236E5D1E3B7E28FAE7AA040A2D5B252176459D1F397541BA2A58FB6599h");
-	Integer q1 = Integer("C97FB1F027F453F6341233EAAAD1D9353F6C42D08866B1D05A0F2035028B9D869840B41666B42E92EA0DA3B43204B5CFCE3352524D0416A5A441E700AF461503h");
-	Integer cipher1 = Integer("4B9C35BC3CA99B3908EF91C91F4D661544B5462CB3079D7B7A610B90039602F080417B049B7F31BAF16A87B59986620EC1BBD791AD30774309C05F0AFA24B0BF1EA1FEAA3A8EFA2C24F5626B8A9C9A157C1018DA54D314E728E2DB75E84FB5E99082561D904139B95C4DA70A5AB6412527B97CEDA04C6FB00BE1E44537706FF2h");
-	Integer ePlaintext1 = Integer("D436E99569FD32A7C8A05BBC90D32C49h"); 
-
-	CheckEPOCDecrypt(e1, p1, q1, cipher1, ePlaintext1); 
-
-//	Now test a bad set
-/*
-	<input>123456789ABCDEF123456789ABCDEF</input>
-	<P>ED49CE92ABF0509006E412AC7F28EEA7626107C3F2456FA18E6513153D6F6003</P>
-	<Q>ED12B5B118CBA1154DC24AE05AAB1E3A33B5E47A3715861697498824E5BCA331</Q>
-	----------- e -----------
-01 00 01 
-	 ----------- P -----------
-ed 49 ce 92 ab f0 50 90 06 e4 12 ac 7f 28 ee a7 62 61 07 c3 f2 45 6f a1 8e 65 13 15 3d 6f 60 03 
-	 ----------- Q -----------
-ed 12 b5 b1 18 cb a1 15 4d c2 4a e0 5a ab 1e 3a 33 b5 e4 7a 37 15 86 16 97 49 88 24 e5 bc a3 31 
-	 ----------- DP -----------
-dc e0 33 15 7c 4e f9 ee d7 3b 3d d6 ab 97 22 6f 54 b8 15 4e 64 1a 16 4b 40 0c fd b2 6b b9 5c 99 
-	 ----------- DQ -----------
-27 65 a3 92 11 a7 cd 56 27 fc f0 ca 85 e6 c7 f8 2e 1d bd 21 5e 44 12 6b 70 aa c4 98 35 21 7b 11 
-	 ----------- QInv -----------
-76 2f 0a 8c fa 16 d8 a6 df 53 0b 1c fa 5f ff 4c 55 a4 4f 52 e1 b6 28 89 1f c9 c9 10 1c d9 73 2d 
-	 ----------- N -----------
-db be ab d7 a5 8e c2 a8 83 17 83 86 9a 2e 07 12 03 1a 5c 0f 87 a8 4b d3 fe 3c 21 91 df 49 4e 2b e4 fa 8d a8 65 e5 c8 c7 49 4d fa c5 5c 6a d2 fc e6 96 2e 3b de 1b 38 28 94 93 04 47 dd a7 49 93 
-	 ----------- ciphertext -----------
-69 3a 72 26 39 cc 70 9c 89 ac dc 24 8c 52 ef 01 dd f7 5a c3 8e bf f9 8d eb ed 25 5e 11 f0 d9 b1 43 de 14 97 d2 34 65 a6 2c 11 13 6e f8 c4 37 81 01 d5 8e 8d ea 0b 33 f2 9f e2 df 68 c4 c7 34 2c 
-
-*/
-//	Two primes: p, q
-	Integer e2 = Integer(65537);
-	Integer p2 = Integer("ED49CE92ABF0509006E412AC7F28EEA7626107C3F2456FA18E6513153D6F6003h");
-	Integer q2 = Integer("ED12B5B118CBA1154DC24AE05AAB1E3A33B5E47A3715861697498824E5BCA331h");
-	Integer cipher2 = Integer("693A722639CC709C89ACDC248C52EF01DDF75AC38EBFF98DEBED255E11F0D9B143DE1497D23465A62C11136EF8C4378101D58E8DEA0B33F29FE2DF68C4C7342Ch");
-	Integer ePlaintext2 = Integer("123456789ABCDEF123456789ABCDEFh"); 
-	
-	CheckEPOCDecrypt(e2, p2, q2, cipher2, ePlaintext2);
-
-/*
-<modulus>EF6419DC54EC49B7D0524BA675727F6D895A66A9940F3C76B6220A5B9073357D70702C9FC2D6ECA41448356CE562F7FFAF1DA64BA947274BA0D372F5866B69CB</modulus>
-<P>FB4F79F4E8C816B816A817120901AED45D0FD72F3DC4BA6946F790776E8A5845</P>
-<Q>F3DBAF51B232E334964581AE27DE17BFF90A66AE84C2BE95574082880BFF82CF</Q>
-<dP>63D8A1C5B22EBD080AC861D2228DEE9E251344155ADF2C88E34F3CB096D49459</dP>
-<dQ>F145A87EC23B0B059AB08690132DF07DA61F9E5C894A4D5A610B989A9694658D</dQ>
-<qInv>4B8869676360EDC92F0B02F0B93580A570686E7EA3C7D39A5E572AB79314CCBD</qInv>
-<ciphertext>2EAEAE1F07AAD1D3A14C2178397DFECD91C92E963511BE5CDDE8BCA79B47ECEF68F8DD2F8240DE2E05E90E2A75FAA6495CE903DE413D332CFDD2DD83BC8244C5</ciphertext>
-<plaintext>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</plaintext>
-*/
-	Integer e3 = Integer(65537);
-	Integer p3 = Integer("FB4F79F4E8C816B816A817120901AED45D0FD72F3DC4BA6946F790776E8A5845h");
-	Integer q3 = Integer("F3DBAF51B232E334964581AE27DE17BFF90A66AE84C2BE95574082880BFF82CFh");
-	Integer cipher3 = Integer("2EAEAE1F07AAD1D3A14C2178397DFECD91C92E963511BE5CDDE8BCA79B47ECEF68F8DD2F8240DE2E05E90E2A75FAA6495CE903DE413D332CFDD2DD83BC8244C5h");
-	Integer ePlaintext3 = Integer("123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEFh");
-
-	CheckEPOCDecrypt(e3, p3, q3, cipher3, ePlaintext3);
-}
-
-void CheckEPOCDecrypt(Integer& e, Integer& p, Integer& q, Integer& cipher, Integer& expectedPlaintext)
-{
-//////////////////////////////////
-//	Key generation
-//////////////////////////////////
-
-//	calculate n = p * q 
-	Integer n=p*q;
-
-	Integer r1 = p;
-    r1-=1;		//	r1 = p-1
-    
-	Integer r2=q;
-    r2-=1;		//	r2 = q-1
-    
-	Integer r0=r1;
-    r0*=r2;	//	r0 = (p-1)(q-1)
-
-//	e * d = 1 mod ((p-1)(q-1)) 
-//	d = e^(-1) mod ((p-1)(q-1))
-//! calculate multiplicative inverse of *this mod n
-//	Integer InverseMod(const Integer &n) const;
-	Integer d = e;
-	d = d.InverseMod(r0);
-
-//	calculate dP = d mod (p-1) 
-	Integer dP=d;
-	dP%=r1;
-
-//	calculate dQ = d mod (q-1) 
-	Integer dQ=d;
-	dQ%=r2;
-
-//	calculate inverse of qInv = q^(-1)mod(p)
-    Integer qInv=q;
-	qInv = qInv.InverseMod(p);
-
-
-//////////////////////////////////
-//	Decryption
-//////////////////////////////////
-
-//	m1 = c^(dP) mod(p)
-	Integer m1 = ModularExponentiation((cipher % p), dP, p);
-	
-//	m2 = c^(dQ) mod(Q)
-	Integer m2 = ModularExponentiation((cipher % q), dQ, q);
-
-//	Calculate CRT
-//	h = (m1-m2) qInv mod(p)	
-	Integer plainRes = m1 - m2;
-	plainRes *= qInv;
-	plainRes %= p;
-
-//	output = m2 + q * plainRes	
-	plainRes *= q;
-	plainRes += m2;
-
-//	assert(expectedPlaintext==plainRes);	//	Not true because ciphertext includes
-}											//	padding and plaintext doesn't. Though
-											//	it's possible to compare the first chunk
-											//	of plainRes with expectedPlaintext
-
-int main(int argc, char** argv)
-{
-//	TestRSASigning();
-	TestRSADecryptValues();
-	return 0;
-}
-
--- a/crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate32.dsp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-# Microsoft Developer Studio Project File - Name="exponentiate32" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=exponentiate32 - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "exponentiate32.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "exponentiate32.mak" CFG="exponentiate32 - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "exponentiate32 - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "exponentiate32 - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName "exponentiate32"
-# PROP Scc_LocalPath "."
-CPP=cl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "exponentiate32 - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "z:\cryptopp\\" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x809 /d "NDEBUG"
-# ADD RSC /l 0x809 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF  "$(CFG)" == "exponentiate32 - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "d:\cryptopp\\" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c
-# ADD BASE RSC /l 0x809 /d "_DEBUG"
-# ADD RSC /l 0x809 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib cryptlib.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"d:\cryptopp\debug"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "exponentiate32 - Win32 Release"
-# Name "exponentiate32 - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\exponentiate.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
--- a/crypto/weakcrypto/test/tasymmetric/cryptopp/exponentiate32.dsw	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "cryptlib"=..\..\..\..\..\..\cryptopp\cryptlib.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "exponentiate32"=.\exponentiate32.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
--- a/crypto/weakcrypto/test/tasymmetric/performancetest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "performancetest.h"
-#include "t_input.h"
-#include "tvectorutils.h"
-
-_LIT8(KPerformanceTestStart, "<KPerformanceTesting>");
-_LIT8(KPerformanceTestEnd, "</KPerformanceTesting>");
-
-/*static*/ CPerformance* CPerformance::iPerformanceTester = NULL;
-
-/*static*/ CPerformance* CPerformance::NewL()
-{
-	if (!iPerformanceTester)
-	{
-		iPerformanceTester = new (ELeave) CPerformance();
-	}
-
-	return (iPerformanceTester);
-}
-
-/*static*/ CPerformance* CPerformance::PerformanceTester()
-{
-	ASSERT(iPerformanceTester);
-	return (iPerformanceTester);
-}
-
-/*static*/ void CPerformance::ClosePerformanceTester()
-{
-	delete iPerformanceTester;
-	iPerformanceTester = NULL;
-}
-
-
-CPerformance::CPerformance()
-:	iTestingPerformance(EFalse)	//	Default to no performance testing
-{}
-
-CPerformance::~CPerformance()
-{}
-
-////////////////////////////////////////////////////////////////////////
-//	Use this class as a place holder to turn performance testing on/off
-////////////////////////////////////////////////////////////////////////
-	
-CTestAction* CPerformanceTest::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction* me = CPerformanceTest::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop(me);
-	return (me);
-}
-
-CTestAction* CPerformanceTest::NewLC(RFs& /*aFs*/, CConsoleBase& aConsole, Output& aOut, const TTestActionSpec& aTestActionSpec)
-{
-	CPerformanceTest* me = new (ELeave) CPerformanceTest(aConsole, aOut);
-	CleanupStack::PushL(me);
-	me->ConstructL(aTestActionSpec);
-	return (static_cast<CTestAction*>(me));
-}
-
-
-CPerformanceTest::CPerformanceTest(CConsoleBase& aConsole, Output& aOut)
-    : CTestAction(aConsole, aOut)
-    {
-    }
-
-CPerformanceTest::~CPerformanceTest()
-    {
-    }
-
-void CPerformanceTest::ConstructL(const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction::ConstructL(aTestActionSpec);
-
-//	Switch on performance testing?    
-	TPtrC8 enablePtr = Input::ParseElement(aTestActionSpec.iActionBody, KPerformanceTestStart, KPerformanceTestEnd);
-    TBool enablePerformance = VectorUtils::ParseBoolL(enablePtr);
-	CPerformance::PerformanceTester()->SetTestingPerformance(enablePerformance);
-	
-	iExpectedResult = KErrNone;
-}
-
-void CPerformanceTest::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPerformanceTest::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPerformanceTest::PerformAction(TRequestStatus& aStatus)
-{
-	iResult = ETrue;
-	iFinished = ETrue;
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);	
-}
-
--- a/crypto/weakcrypto/test/tasymmetric/performancetest.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __PERFORMANCETEST_H__
-#define __PERFORMANCETEST_H__
-#include <f32file.h>
-#include "t_testaction.h"
-#include "t_testsetup.h"
-#include <e32std.h>
-
-const TInt KMaxIterations = 500;
-
-_LIT8(KIterationsStart, "<iterations>");
-_LIT8(KIterationsEnd, "</iterations>");
-_LIT8(KTypeOfCryptoStart, "<cryptotype>");
-_LIT8(KTypeOfCryptoEnd, "</cryptotype>");
-_LIT8(KRSAStandard, "EStandard");
-_LIT8(KRSAStandardCRT, "EStandardCRT");
-
-//	This class can be used to switch on/off performance testing
-//	It inherits from CTestAction so it can be used in the script
-//	but otherwise doesn't carry out any test.
-//	When in a script and enabled, the performance tester singleton
-//	is initialised and can then be used by all following tests in
-//	various performance operations
-
-class CPerformanceTest : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-public:
-	virtual ~CPerformanceTest();
-	virtual void PerformAction(TRequestStatus& aStatus);
-protected:
-    CPerformanceTest(CConsoleBase& aConsole, Output& aOut);  
-	virtual void ConstructL(const TTestActionSpec& aTestActionSpec);
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void DoReportAction(void){};
-	virtual void DoCheckResult(TInt){};
-};
-
-//	static singleton tracks performance testing and provides
-//	standard operations for all performance tests
-
-class CPerformance : public CBase
-{
-public:
-	static CPerformance* NewL();
-public:
-	static CPerformance* PerformanceTester();
-	static void ClosePerformanceTester();
-public:
-	inline void SetTestingPerformance(TBool aTestPerformance) {iTestingPerformance=aTestPerformance;};
-	inline TBool IsTestingPerformance() const {return (iTestingPerformance);};
-private:
-	CPerformance();
-	~CPerformance();
-private:
-	static CPerformance* iPerformanceTester;
-private:
-	TBool iTestingPerformance;
-};
-
-#endif	//	__PERFORMANCETEST_H__
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/Makefile	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-## Makefile for vector generation code.
-
-all:		rsa_test dsa_test gen_random gen_rsakey gen_dsakey
-
-rsa_test:	rsa_test.c keys.c keys.h utils.c utils.h
-			gcc rsa_test.c keys.c utils.c -o rsa_test -lcrypto
-
-dsa_test:	dsa_test.c utils.c utils.h
-			gcc dsa_test.c utils.c -o dsa_test -lcrypto
-
-gen_random:	gen_random.c
-			gcc gen_random.c -o gen_random -lcrypto
-
-gen_rsakey: gen_rsakey.c utils.c utils.h
-			gcc gen_rsakey.c utils.c -o gen_rsakey -lcrypto
-
-gen_dsakey: gen_dsakey.c utils.c utils.h
-			gcc gen_dsakey.c utils.c -o gen_dsakey -lcrypto
-
-clean:
-			rm -f rsa_test dsa_test gen_random gen_dsakey
\ No newline at end of file
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/dsa_test.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,305 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generates DSA test vectors.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include <stdio.h>
-#include <openssl/crypto.h>
-#include <openssl/rand.h>
-#include <openssl/dsa.h>
-#include "utils.h"
-
-/*
- * The DSA keys have been choosen from randomly generated ones so that either
- * the 2nd or 3rd most significant bit of q is set - this is so that a
- * particular path is followed when the signing procedure generates k, for which
- * our function that generates a random number in a certain range is equivalent
- * to the openssl one.
- *
- * This is nasty, but it means we don't have to change the openssl code.
- */
-
-static DSA* createDSAKey1()
-	{
-	unsigned char p_data[] =
-		"\x8d\xf2\xa4\x94\x49\x22\x76\xaa\x3d\x25\x75\x9b\xb0\x68\x69\xcb"
-		"\xea\xc0\xd8\x3a\xfb\x8d\x0c\xf7\xcb\xb8\x32\x4f\x0d\x78\x82\xe5"
-		"\xd0\x76\x2f\xc5\xb7\x21\x0e\xaf\xc2\xe9\xad\xac\x32\xab\x7a\xac"
-		"\x49\x69\x3d\xfb\xf8\x37\x24\xc2\xec\x07\x36\xee\x31\xc8\x02\x91";
-
-	int p_data_len = 64;
-
-	unsigned char q_data[] =
-		"\xc7\x73\x21\x8c\x73\x7e\xc8\xee\x99\x3b\x4f\x2d\xed\x30\xf4\x8e"
-		"\xda\xce\x91\x5f";
-
-	int q_data_len = 20;
-
-	unsigned char g_data[] =
-		"\x62\x6d\x02\x78\x39\xea\x0a\x13\x41\x31\x63\xa5\x5b\x4c\xb5\x00"
-		"\x29\x9d\x55\x22\x95\x6c\xef\xcb\x3b\xff\x10\xf3\x99\xce\x2c\x2e"
-		"\x71\xcb\x9d\xe5\xfa\x24\xba\xbf\x58\xe5\xb7\x95\x21\x92\x5c\x9c"
-		"\xc4\x2e\x9f\x6f\x46\x4b\x08\x8c\xc5\x72\xaf\x53\xe6\xd7\x88\x02";
-
-	int g_data_len = 64;
-
-	unsigned char priv_key_data[] =
-		"\xc2\x5f\xb4\x81\xd7\x9c\x07\x30\x97\xc2\x1d\x0c\xb1\xd7\x07\x2f"
-		"\x04\x1d\xbb\x89";
-
-	int priv_key_data_len = 20;
-
-	unsigned char pub_key_data[] =
-		"\x2d\x52\x1e\x27\x37\xe7\xdb\xdb\xd1\xe4\x7a\xb6\x79\xc5\xae\x69"
-		"\xe1\x25\x37\xe9\x96\xb1\x81\xba\xf0\xb8\x85\x0f\x84\xc8\x2b\x9e"
-		"\xf5\xb8\xb6\xc2\xb2\x22\x1b\xb5\xa9\xd0\x58\x66\x32\x5a\xb1\x62"
-		"\xae\xb7\x13\x68\xbd\xe4\xca\xa0\xf6\x68\x96\x3c\x7d\x1a\x43\x52";
-
-	int pub_key_data_len = 64;
-
-	DSA* key = DSA_new();
-	key->p = BN_new();
-	key->q = BN_new();
-	key->g = BN_new();
-	key->priv_key = BN_new();
-	key->pub_key = BN_new();
-
-	BN_bin2bn(p_data, p_data_len, key->p);
-	BN_bin2bn(q_data, q_data_len, key->q);
-	BN_bin2bn(g_data, g_data_len, key->g);
-	BN_bin2bn(pub_key_data, pub_key_data_len, key->pub_key);
-	BN_bin2bn(priv_key_data, priv_key_data_len, key->priv_key);
-
-	return key;
-	}
-
-static DSA* createDSAKey2()
-	{
-	unsigned char p_data[] =
-		"\x8d\xf2\xa4\x94\x49\x22\x76\xaa\x3d\x25\x75\x9b\xb0\x68\x69\xcb"
-		"\xea\xc0\xd8\x3a\xfb\x8d\x0c\xf7\xcb\xb8\x32\x4f\x0d\x78\x82\xe5"
-		"\xd0\x76\x2f\xc5\xb7\x21\x0e\xaf\xc2\xe9\xad\xac\x32\xab\x7a\xac"
-		"\x49\x69\x3d\xfb\xf8\x37\x24\xc2\xec\x07\x36\xee\x31\xc8\x02\x91";
-
-	int p_data_len = 64;
-
-	unsigned char q_data[] =
-		"\xc7\x73\x21\x8c\x73\x7e\xc8\xee\x99\x3b\x4f\x2d\xed\x30\xf4\x8e"
-		"\xda\xce\x91\x5f";
-
-	int q_data_len = 20;
-
-	unsigned char g_data[] =
-		"\x62\x6d\x02\x78\x39\xea\x0a\x13\x41\x31\x63\xa5\x5b\x4c\xb5\x00"
-		"\x29\x9d\x55\x22\x95\x6c\xef\xcb\x3b\xff\x10\xf3\x99\xce\x2c\x2e"
-		"\x71\xcb\x9d\xe5\xfa\x24\xba\xbf\x58\xe5\xb7\x95\x21\x92\x5c\x9c"
-		"\xc4\x2e\x9f\x6f\x46\x4b\x08\x8c\xc5\x72\xaf\x53\xe6\xd7\x88\x02";
-
-	int g_data_len = 64;
-
-	unsigned char priv_key_data[] =
-		"\x0f\x36\x53\xf7\x51\xa7\x04\x6e\x0b\x52\x30\xfe\x15\x7c\xa3\x3e"
-		"\x03\xf0\x84\x73";
-
-	int priv_key_data_len = 20;
-
-	unsigned char pub_key_data[] =
-		"\x7f\x9a\xd6\x6d\x4d\xa9\xb0\x0e\x71\x76\x04\xc4\xdb\x3b\x96\x93"
-		"\x6b\x6c\xa6\x16\xa5\x6b\xb6\xe6\x23\x26\xc7\xf5\xd4\xd6\x5b\x06"
-		"\x6c\x10\x47\x0a\xc2\xf2\x1d\xc1\x7b\x39\x54\x6d\x84\x99\x40\xd1"
-		"\x7e\xb0\xb5\x17\xc1\x17\xcd\xa0\x78\x0c\xc1\x67\xf1\x57\x83\x2c";
-
-	int pub_key_data_len = 64;
-
-	DSA* key = DSA_new();
-	key->p = BN_new();
-	key->q = BN_new();
-	key->g = BN_new();
-	key->priv_key = BN_new();
-	key->pub_key = BN_new();
-
-	BN_bin2bn(p_data, p_data_len, key->p);
-	BN_bin2bn(q_data, q_data_len, key->q);
-	BN_bin2bn(g_data, g_data_len, key->g);
-	BN_bin2bn(pub_key_data, pub_key_data_len, key->pub_key);
-	BN_bin2bn(priv_key_data, priv_key_data_len, key->priv_key);
-
-	return key;
-	}
-
-static DSA* createDSAKey3()
-	{
-	unsigned char p_data[] =
-		"\xcf\x62\x62\xfb\x7e\x7d\xc9\xc3\x7b\x4b\xa3\x62\x02\x1c\xfd\xb0"
-		"\xcc\xd7\xbe\x39\xba\x89\xfc\x86\xf4\x9b\x29\xee\xe8\xee\x47\x23"
-		"\xa8\x36\xd5\xbc\x3f\x31\xfe\x75\xc9\xcc\xc2\xa4\x49\x1d\x44\xc2"
-		"\xb2\x7a\x71\x45\xd8\xcd\x84\x41\xe5\x8a\x94\xaa\x02\x0f\xd9\x03";
-
-	int p_data_len = 64;
-
-	unsigned char q_data[] =
-		"\xfe\xf0\xae\xe8\x2a\x1c\x4b\xdb\xbb\xd7\xdf\x3b\xfa\xc9\x63\xfb"
-		"\x6d\xfc\x1e\xe7";
-
-	int q_data_len = 20;
-
-	unsigned char g_data[] =
-		"\x3b\x48\xa9\x2d\x82\xde\x8c\x21\x81\x09\xf8\x78\xae\xfc\x6a\xf5"
-		"\x0e\x2a\x90\x3d\xfb\x64\x90\x6f\x0d\xbc\xfd\x67\x4e\x2c\x56\x00"
-		"\xa3\x80\x25\x8a\x00\x26\x62\x10\xdc\xb6\xaa\x11\xa6\x36\x8c\x19"
-		"\xb9\x2a\xcc\x00\xca\x84\xd5\xeb\x8f\x9b\x50\x08\x2d\x56\x4b\x37";
-
-	int g_data_len = 64;
-
-	unsigned char priv_key_data[] =
-		"\x8f\xf4\xb0\xe8\x16\x94\xcb\x45\xaf\x26\xfa\x3b\x52\x96\xb3\xe9"
-		"\xc9\x41\xce\x18";
-
-	int priv_key_data_len = 20;
-
-	unsigned char pub_key_data[] =
-		"\x4e\x31\xab\x0e\x9b\xd5\x16\xaf\xf5\xc7\xf8\xe3\x1d\x01\x20\x90"
-		"\x3e\x11\x11\x5f\xf2\x22\x46\x5f\x08\xbb\x9e\x36\x82\xdc\xfb\x33"
-		"\xf9\xaa\xa5\xe9\xa0\x12\x16\x65\xc4\xbc\x7c\x6a\xf8\xb3\xc8\x8c"
-		"\x2e\x45\xcc\x00\xaa\x7b\x4d\xae\xae\x9a\x1d\x37\x75\xb2\xe6\x86";
-
-	int pub_key_data_len = 64;
-
-	DSA* key = DSA_new();
-	key->p = BN_new();
-	key->q = BN_new();
-	key->g = BN_new();
-	key->priv_key = BN_new();
-	key->pub_key = BN_new();
-
-	BN_bin2bn(p_data, p_data_len, key->p);
-	BN_bin2bn(q_data, q_data_len, key->q);
-	BN_bin2bn(g_data, g_data_len, key->g);
-	BN_bin2bn(pub_key_data, pub_key_data_len, key->pub_key);
-	BN_bin2bn(priv_key_data, priv_key_data_len, key->priv_key);
-
-	return key;
-	}
-
-static int digest_len = 20;
-
-static unsigned char digest1[]="12345678901234567890";
-
-static unsigned char digest2[] =
-        "\xb1\xcd\x52\x66\x6d\x22\x60\x16\xd3\x75\x8e\x96\xa1\xff\xfa\xbc"
-        "\x1b\x9a\xe2\xd7";
-
-static unsigned char digest3[] =
-        "\x39\x86\x53\xec\xae\xf6\xd7\x7a\x8a\x67\x8a\x74\x20\x30\x3b\xc9"
-        "\xda\xc9\xf3\xa7";
-/**
- * Print DSA public key.
- */
-
-void printDSAPublicKey(DSA* key)
-    {    
-    printBNElement("keyP", key->p);
-    printBNElement("keyQ", key->q);
-    printBNElement("keyG", key->g);
-    printBNElement("keyY", key->pub_key);
-    }
-
-/**
- * Print DSA private key.
- */
-
-void printDSAPrivateKey(DSA* key)
-    {    
-    printBNElement("keyP", key->p);
-    printBNElement("keyQ", key->q);
-    printBNElement("keyG", key->g);
-    printBNElement("keyX", key->priv_key);
-    }
-
-/**
- * Sign a message - DSA deals with generating a digest for us.
- */
-
-static void generateSignatureVector(DSA* key, unsigned char* mess, int len, BOOL passes)
-    {
-    unsigned char buf[len];
-	unsigned int siglen;
-    int err;
-    DSA_SIG* sig;
- 
-	Mem::Copy(buf, mess, len);
-
-    setOurRandom();
-    sig = DSA_do_sign(buf, len, key);
-    if (sig == NULL)
-        processError();
-
-    if (!passes)
-        scramble(buf, len);
-
-    printActionHeader("DSA test vector", "DSASignVector");
-    printDSAPrivateKey(key);
-    printHexElement("digest", buf, len);
-    printBNElement("sigR", sig->r);
-    printBNElement("sigS", sig->s);
-    printActionFooter(passes);
-
-    printActionHeader("DSA test vector", "DSAVerifyVector");
-    printDSAPublicKey(key);
-    printHexElement("digest", buf, len);
-    printBNElement("sigR", sig->r);
-    printBNElement("sigS", sig->s);
-    printActionFooter(passes);
-
-    DSA_SIG_free(sig);
-    }
-
-
-int main(int argc, char **argv)
-	{
-	DSA* key1 = createDSAKey1();
-	DSA* key2 = createDSAKey2();
-	DSA* key3 = createDSAKey3();
-
-    setOurRandom();
-    testOurRandom();
-
-    generateSignatureVector(key1, digest1, digest_len, TRUE);
-    generateSignatureVector(key2, digest1, digest_len, TRUE);
-    generateSignatureVector(key3, digest1, digest_len, TRUE);
-
-    generateSignatureVector(key1, digest2, digest_len, TRUE);
-    generateSignatureVector(key2, digest2, digest_len, TRUE);
-    generateSignatureVector(key3, digest2, digest_len, TRUE);
-
-    generateSignatureVector(key1, digest3, digest_len, TRUE);
-    generateSignatureVector(key2, digest3, digest_len, TRUE);
-    generateSignatureVector(key3, digest3, digest_len, TRUE);
-
-    generateSignatureVector(key1, digest1, digest_len, FALSE);
-    generateSignatureVector(key2, digest1, digest_len, FALSE);
-    generateSignatureVector(key3, digest1, digest_len, FALSE);
-
-	return 0;
-	}
- 
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/gen_dsakey.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generate a DSA key.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include <stdio.h>
-#include <openssl/crypto.h>
-#include <openssl/rand.h>
-#include <openssl/dsa.h>
-#include <openssl/bn.h>
-#include "utils.h"
-
-#ifndef BOOL
-#define BOOL int
-#define TRUE 1
-#define FALSE 0
-#endif
-
-static void printDSAKey(DSA* key)
-    {
-    printf("static DSA* createDSAKey()\n");
-    printf("\t{\n");
-
-    printCBN("p_data", key->p);
-    printCBN("q_data", key->q);
-    printCBN("g_data", key->g);
-    printCBN("priv_key_data", key->priv_key);
-    printCBN("pub_key_data", key->pub_key);
-
-    printf("\tDSA* key = DSA_new();\n");
-    printf("\tkey->p = BN_new();\n");
-    printf("\tkey->q = BN_new();\n");
-    printf("\tkey->g = BN_new();\n");
-    printf("\tkey->priv_key = BN_new();\n");
-    printf("\tkey->pub_key = BN_new();\n\n");
-
-    printf("\tBN_bin2bn(p_data, p_data_len, key->p);\n");
-    printf("\tBN_bin2bn(q_data, q_data_len, key->q);\n");
-    printf("\tBN_bin2bn(g_data, g_data_len, key->g);\n");
-    printf("\tBN_bin2bn(pub_key_data, pub_key_data_len, key->pub_key);\n");
-    printf("\tBN_bin2bn(priv_key_data, priv_key_data_len, key->priv_key);\n\n");
-     
-    printf("\treturn key;\n");
-
-    printf("\t}\n");
-    }
-
-/*
- * This is the seed used in the openssl test code.  Using it (by
- * specifying the -use_seed option) makes this program generate the
- * same key used in the openssl test code
- *
- * It comes from the updated Appendix 5 to FIPS PUB 186.
- */
-
-static unsigned char seed[20]={
-	0xd5,0x01,0x4e,0x4b,0x60,0xef,0x2b,0xa8,0xb6,0x21,0x1b,0x40,
-	0x62,0xba,0x32,0x24,0xe0,0x42,0x7d,0xd3,
-	};
-
-static const char rnd_seed[] = "string to make the random number generator think it has entropy";
-
-static void badUsage()
-    {
-    printf("usage: gen_dsakey [ -use_seed ]\n");
-    exit(1);
-    }
-
-int main(int argc, char **argv)
-	{
-	DSA *dsa=NULL;
-	int counter,ret=0,i,j;
-	unsigned char buf[256];
-	unsigned long h;
-	unsigned char sig[256];
-	unsigned int siglen;
-    BOOL useSeed = FALSE;
-
-    if (argc > 2)
-        badUsage();
-    else if (argc == 2)
-        {
-        if (strcmp(argv[1], "-use_seed") != 0)
-            badUsage();
-        useSeed = TRUE;
-        }
-    
-	RAND_seed(rnd_seed, sizeof rnd_seed);
-
-	dsa=DSA_generate_parameters(512,useSeed ? seed : NULL,20,&counter,&h,NULL,NULL);
-
-	DSA_generate_key(dsa);
-
-    printDSAKey(dsa);
-
-	return 0;
-	}
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/gen_random.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,70 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generates C code that initialises a variable to hold some random data.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include <openssl/rand.h>
-
-static void gen_random(int len)
-    {
-    unsigned char data[len];
-    int i, j;
-
-    RAND_bytes(data, len);
-
-    printf("unsigned char random[] =");
-    for (i = 0 ; i < sizeof(data) ; i += 16)
-        {
-        printf("\n\t\"");
-        for (j = i ; j < sizeof(data) && j < (i + 16) ; ++j)
-            {
-            printf("\\x%02x", data[j]);
-            }
-        printf("\"");
-        }
-
-    printf(";\n");
-    }
-
-static void badUsage()
-    {
-    printf("gen_random [BYTES]\n");
-    exit(1);
-    }
-
-int main(int argc, char* argv[])
-    {
-    int bytes = 256;
-
-    if (argc > 2)
-        badUsage();
-    else if (argc == 2)
-        {
-        bytes = atoi(argv[1]);
-        if (bytes < 1)
-            badUsage();
-        }
-
-    gen_random(bytes);
-    return 0;
-    }
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/gen_rsakey.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generate an RSA key.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include <stdio.h>
-#include <openssl/crypto.h>
-#include <openssl/rand.h>
-#include <openssl/rsa.h>
-#include <openssl/bn.h>
-#include "utils.h"
-
-#ifndef BOOL
-#define BOOL int
-#define TRUE 1
-#define FALSE 0
-#endif
-
-static void printRSAKey(RSA* key)
-    {
-    printf("static RSA* createRSAKey()\n");
-    printf("\t{\n");
-
-    printCBN("n_data", key->n);
-    printCBN("e_data", key->e);
-    printCBN("d_data", key->d);
-
-    printf("\tRSA* key = RSA_new();\n");
-    printf("\tkey->n = BN_new();\n");
-    printf("\tkey->e = BN_new();\n");
-    printf("\tkey->d = BN_new();\n");
-
-    printf("\tBN_bin2bn(n_data, n_data_len, key->n);\n");
-    printf("\tBN_bin2bn(e_data, e_data_len, key->e);\n");
-    printf("\tBN_bin2bn(d_data, d_data_len, key->d);\n");
-     
-    printf("\treturn key;\n");
-
-    printf("\t}\n");
-    }
-
-static const char rnd_seed[] = "string to make the random number generator think it has entropy";
-
-static void badUsage()
-    {
-    printf("usage: gen_rsakey\n");
-    exit(1);
-    }
-
-int main(int argc, char **argv)
-	{
-	RSA *rsa;
-	int modulus_size = 1024;
-	int exponent = 65537;	
-
-    if (argc > 1)
-        badUsage();
-    
-	RAND_seed(rnd_seed, sizeof rnd_seed);
-
-	rsa = RSA_generate_key(modulus_size, exponent, NULL, NULL);
-
-    printRSAKey(rsa);
-
-	return 0;
-	}
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/keys.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,174 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Some RSA key pairs.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include "keys.h"
-
-RSA* key1;    /* modulus is 64 bytes */
-RSA* key2;    /* modulus is 50 bytes */
-RSA* key3;    /* modulus is 128 bytes */
-
-#define SetKey \
-  key->n = BN_bin2bn(n, sizeof(n)-1, key->n); \
-  key->e = BN_bin2bn(e, sizeof(e)-1, key->e); \
-  key->d = BN_bin2bn(d, sizeof(d)-1, key->d); \
-  key->p = BN_bin2bn(p, sizeof(p)-1, key->p); \
-  key->q = BN_bin2bn(q, sizeof(q)-1, key->q); \
-  key->dmp1 = BN_bin2bn(dmp1, sizeof(dmp1)-1, key->dmp1); \
-  key->dmq1 = BN_bin2bn(dmq1, sizeof(dmq1)-1, key->dmq1); \
-  key->iqmp = BN_bin2bn(iqmp, sizeof(iqmp)-1, key->iqmp);
-
-static void setKey1(RSA *key)
-    {
-    static unsigned char n[] =
-"\x00\xAA\x36\xAB\xCE\x88\xAC\xFD\xFF\x55\x52\x3C\x7F\xC4\x52\x3F"
-"\x90\xEF\xA0\x0D\xF3\x77\x4A\x25\x9F\x2E\x62\xB4\xC5\xD9\x9C\xB5"
-"\xAD\xB3\x00\xA0\x28\x5E\x53\x01\x93\x0E\x0C\x70\xFB\x68\x76\x93"
-"\x9C\xE6\x16\xCE\x62\x4A\x11\xE0\x08\x6D\x34\x1E\xBC\xAC\xA0\xA1"
-"\xF5";
-
-    static unsigned char e[] = "\x11";
-
-    static unsigned char d[] =
-"\x0A\x03\x37\x48\x62\x64\x87\x69\x5F\x5F\x30\xBC\x38\xB9\x8B\x44"
-"\xC2\xCD\x2D\xFF\x43\x40\x98\xCD\x20\xD8\xA1\x38\xD0\x90\xBF\x64"
-"\x79\x7C\x3F\xA7\xA2\xCD\xCB\x3C\xD1\xE0\xBD\xBA\x26\x54\xB4\xF9"
-"\xDF\x8E\x8A\xE5\x9D\x73\x3D\x9F\x33\xB3\x01\x62\x4A\xFD\x1D\x51";
-
-    static unsigned char p[] =
-"\x00\xD8\x40\xB4\x16\x66\xB4\x2E\x92\xEA\x0D\xA3\xB4\x32\x04\xB5"
-"\xCF\xCE\x33\x52\x52\x4D\x04\x16\xA5\xA4\x41\xE7\x00\xAF\x46\x12"
-"\x0D";
-    
-    static unsigned char q[] =
-"\x00\xC9\x7F\xB1\xF0\x27\xF4\x53\xF6\x34\x12\x33\xEA\xAA\xD1\xD9"
-"\x35\x3F\x6C\x42\xD0\x88\x66\xB1\xD0\x5A\x0F\x20\x35\x02\x8B\x9D"
-"\x89";
-
-    static unsigned char dmp1[] =
-"\x59\x0B\x95\x72\xA2\xC2\xA9\xC4\x06\x05\x9D\xC2\xAB\x2F\x1D\xAF"
-"\xEB\x7E\x8B\x4F\x10\xA7\x54\x9E\x8E\xED\xF5\xB4\xFC\xE0\x9E\x05";
-
-    static unsigned char dmq1[] =
-"\x00\x8E\x3C\x05\x21\xFE\x15\xE0\xEA\x06\xA3\x6F\xF0\xF1\x0C\x99"
-"\x52\xC3\x5B\x7A\x75\x14\xFD\x32\x38\xB8\x0A\xAD\x52\x98\x62\x8D"
-"\x51";
-
-    static unsigned char iqmp[] =
-"\x36\x3F\xF7\x18\x9D\xA8\xE9\x0B\x1D\x34\x1F\x71\xD0\x9B\x76\xA8"
-"\xA9\x43\xE1\x1D\x10\xB2\x4D\x24\x9F\x2D\xEA\xFE\xF8\x0C\x18\x26";
-
-    SetKey;
-    }
-
-static void setKey2(RSA *key)
-    {
-    static unsigned char n[] =
-"\x00\xA3\x07\x9A\x90\xDF\x0D\xFD\x72\xAC\x09\x0C\xCC\x2A\x78\xB8"
-"\x74\x13\x13\x3E\x40\x75\x9C\x98\xFA\xF8\x20\x4F\x35\x8A\x0B\x26"
-"\x3C\x67\x70\xE7\x83\xA9\x3B\x69\x71\xB7\x37\x79\xD2\x71\x7B\xE8"
-"\x34\x77\xCF";
-
-    static unsigned char e[] = "\x3";
-
-    static unsigned char d[] =
-"\x6C\xAF\xBC\x60\x94\xB3\xFE\x4C\x72\xB0\xB3\x32\xC6\xFB\x25\xA2"
-"\xB7\x62\x29\x80\x4E\x68\x65\xFC\xA4\x5A\x74\xDF\x0F\x8F\xB8\x41"
-"\x3B\x52\xC0\xD0\xE5\x3D\x9B\x59\x0F\xF1\x9B\xE7\x9F\x49\xDD\x21"
-"\xE5\xEB";
-
-    static unsigned char p[] =
-"\x00\xCF\x20\x35\x02\x8B\x9D\x86\x98\x40\xB4\x16\x66\xB4\x2E\x92"
-"\xEA\x0D\xA3\xB4\x32\x04\xB5\xCF\xCE\x91";
-
-    static unsigned char q[] =
-"\x00\xC9\x7F\xB1\xF0\x27\xF4\x53\xF6\x34\x12\x33\xEA\xAA\xD1\xD9"
-"\x35\x3F\x6C\x42\xD0\x88\x66\xB1\xD0\x5F";
-    
-    static unsigned char dmp1[] =
-"\x00\x8A\x15\x78\xAC\x5D\x13\xAF\x10\x2B\x22\xB9\x99\xCD\x74\x61"
-"\xF1\x5E\x6D\x22\xCC\x03\x23\xDF\xDF\x0B";
-
-    static unsigned char dmq1[] =
-"\x00\x86\x55\x21\x4A\xC5\x4D\x8D\x4E\xCD\x61\x77\xF1\xC7\x36\x90"
-"\xCE\x2A\x48\x2C\x8B\x05\x99\xCB\xE0\x3F";
-
-    static unsigned char iqmp[] =
-"\x00\x83\xEF\xEF\xB8\xA9\xA4\x0D\x1D\xB6\xED\x98\xAD\x84\xED\x13"
-"\x35\xDC\xC1\x08\xF3\x22\xD0\x57\xCF\x8D";
-
-    SetKey;
-    }
-
-static RSA* createRSAKey3()
-	{
-	unsigned char n_data[] =
-		"\xa3\x50\x45\x34\xc2\x9c\x59\xca\x9a\x34\xcb\xb9\x5a\x18\xd4\x35"
-		"\xfe\x66\xfb\xc7\xde\xcd\x57\x2b\x91\xc8\x0f\x72\xee\x07\x86\xd4"
-		"\xdd\x92\xf8\xb8\x41\x6d\x54\xbd\xe1\x2d\xf2\xe8\x3f\x8d\xc9\xb1"
-		"\x64\x29\x80\xbd\x31\x85\x26\x50\xa5\xa8\xf6\xd6\xd8\xc6\xa9\xbe"
-		"\x96\x5b\x34\xfe\x76\x59\xac\x5d\xd3\x72\xab\x91\x27\x7b\x2c\x9c"
-		"\xeb\x79\x7c\x4b\x4b\x58\x88\xe3\x3c\x0d\x2c\xfb\xe9\xaa\xd5\x3e"
-		"\x15\x84\x75\xed\x88\x88\x4d\x5d\xcc\x66\x3a\xf5\xaa\xa6\x20\x30"
-		"\xe3\x79\x9f\xaa\x1f\xa4\x7a\xb2\x66\x52\x08\x59\x7f\x35\x84\x97";
-
-	int n_data_len = 128;
-
-	unsigned char e_data[] =
-		"\x01\x00\x01";
-
-	int e_data_len = 3;
-
-	unsigned char d_data[] =
-		"\x85\xb3\xb3\xd4\xeb\xf6\xc0\xf4\x43\xa7\x31\x9a\x7f\x8e\x90\x3d"
-		"\xdc\x17\x47\xce\x6c\x33\xc4\x47\xe1\x43\xde\x92\x03\x19\x9a\x63"
-		"\x2f\x3b\xa1\xf0\x87\x70\x10\xce\x9b\x49\xd8\xf2\x17\x05\xe7\xb8"
-		"\x18\xfe\x79\x6d\x6a\xdb\x4d\x70\xfd\x0f\x05\x77\x03\x66\x31\x94"
-		"\x8d\xd2\x1f\xfe\x77\x15\x7a\xaf\x97\x88\x57\xe4\x35\x8d\xed\x82"
-		"\xb5\x8c\xc8\x5f\x5e\xf7\x04\x80\xff\xd7\xbe\x08\x48\xda\xfb\x98"
-		"\x35\x43\xb2\xe8\x67\xf8\x31\x55\x08\x4d\x85\x41\xa1\x4b\x5e\xa6"
-		"\xcf\x5f\xcb\x65\x11\x27\xb2\xc6\x43\x83\x11\x4f\x02\xa1\x4c\xb1";
-
-	int d_data_len = 128;
-
-	RSA* key = RSA_new();
-	key->n = BN_new();
-	key->e = BN_new();
-	key->d = BN_new();
-	BN_bin2bn(n_data, n_data_len, key->n);
-	BN_bin2bn(e_data, e_data_len, key->e);
-	BN_bin2bn(d_data, d_data_len, key->d);
-	return key;
-	}
-
-void initKeys()
-    {
-	key1 = RSA_new();
-	key2 = RSA_new();
-
-    setKey1(key1);
-    setKey2(key2);
-
-	key3 = createRSAKey3();
-    }
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/keys.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Some RSA key pairs.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __keys_h
-#define __keys_h
-
-#include <openssl/rsa.h>
-
-extern RSA* key1;
-extern RSA* key2;
-extern RSA* key3;
-
-extern void initKeys();
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/rsa_test.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,236 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Generates RSA test vectors.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include <stdio.h>
-#include <string.h>
-
-#include "openssl/e_os.h"
-
-#include <openssl/crypto.h>
-#include <openssl/rsa.h>
-
-#include "utils.h"
-#include "keys.h"
-
-void printPublicKey(RSA* key)
-    {    
-    printf("\t\t<modulus>");
-    printBN(key->n);
-    printf("</modulus>\n");
-    printf("\t\t<publicExponent>");
-    printBN(key->e);
-    printf("</publicExponent>\n");
-    }
-
-void printPrivateKey(RSA* key)
-    {    
-    printf("\t\t<modulus>");
-    printBN(key->n);
-    printf("</modulus>\n");
-    printf("\t\t<privateExponent>");
-    printBN(key->d);
-    printf("</privateExponent>\n");
-    }
-
-/**
- * Generate encrypt and decrypt vectors for a plaintext.
- */
-
-static void generateEncryptionVector(RSA* key, unsigned char* ptext_ex, int plen, BOOL passes)
-    {
-    unsigned char ctext[RSA_size(key)];
-    int num;
-
-    setOurRandom();
-	num = RSA_public_encrypt(plen, ptext_ex, ctext, key, RSA_PKCS1_PADDING);
-    if (num == -1)
-        processError();
-
-    if (!passes)
-        scramble(ctext, num);
-
-    printActionHeader("RSA test vector", "RSAEncryptVector");
-    printPublicKey(key);
-    printHexElement("plaintext", ptext_ex, plen);
-    printHexElement("ciphertext", ctext, num);
-    printActionFooter(passes);
-
-    printActionHeader("RSA test vector", "RSADecryptVector");
-    printPrivateKey(key);
-    printHexElement("ciphertext", ctext, num);
-    printHexElement("plaintext", ptext_ex, plen);
-    printActionFooter(passes);
-    }
-
-/**
- * Sign a digest - the digest is unformatted, ie we're not dealing with
- * algotrithm identifiers here.
- */
-
-static void generateSignatureVector(RSA* key, unsigned char* ptext_ex, int plen, BOOL passes)
-    {
-    unsigned char ctext[RSA_size(key)];
-    int num;
-
-	num = RSA_private_encrypt(plen, ptext_ex, ctext, key, RSA_PKCS1_PADDING);
-    if (num == -1)
-        processError();
-
-    if (!passes)
-        scramble(ctext, num);
-
-    printActionHeader("RSA test vector", "RSASignVector");
-    printPrivateKey(key);
-    printHexElement("digestInfo", ptext_ex, plen);
-    printHexElement("signature", ctext, num);
-    printActionFooter(passes);
-
-    printActionHeader("RSA test vector", "RSAVerifyVector");
-    printPublicKey(key);
-    printHexElement("digestInfo", ptext_ex, plen);
-    printHexElement("signature", ctext, num);
-    printActionFooter(passes);
-    }
-
-/* Plaintext from openssl test code. */
-static unsigned char ptext1[] = "\x54\x85\x9b\x34\x2c\x49\xea\x2a";
-static int plen1 = sizeof(ptext1) - 1;
-
-/* 16 byte random plaintext. */
-static unsigned char ptext2[] =
-        "\x47\xab\x92\x76\x09\xfd\x75\xa7\xe2\x08\x85\xeb\x7e\x4c\xff\x0a";
-static int plen2 = sizeof(ptext2) - 1;
-
-/* 32 byte random plaintext. */
-static unsigned char ptext3[] =
-        "\x0b\x0a\x7c\xeb\x6c\x17\x45\x53\x1d\xa7\x24\xad\x43\x8b\xf7\x46"
-        "\x89\xc3\x9f\x09\x5e\x88\x3e\xd8\x8e\x04\x36\x38\x49\xc0\x0f\x41";
-static int plen3 = sizeof(ptext3) - 1;
-
-/* One byte plaintext. */
-static unsigned char short_ptext[] = "\x23";
-static int short_plen = sizeof(short_ptext) - 1;
-
-/* Longest possible plaintexts, one for each key. */
-static unsigned char long_ptext1[] =
-        "\x66\x79\xf3\x84\x82\x06\x99\x06\xcd\xf1\xdf\x3f\xdd\xb5\x37\x74"
-        "\x46\x76\xba\x0d\xb8\xd6\x82\xb6\x82\x6f\x31\xb1\xd8\x23\x0c\xca"
-        "\x4e\x39\x28\x77\x05\x3f\xac\x5a\x13\xff\x3a\x39\x35\x2e\xaf\xb1"
-        "\x85\xe4\xd0\x60\xf4";
-
-static int long_plen1 = sizeof(long_ptext1) - 1;
-
-static unsigned char long_ptext2[] =
-        "\xcd\xa2\x2c\x4b\x6a\x20\x00\x0e\xad\xad\x74\xbd\xb3\x04\xbd\xc5"
-        "\x72\x73\x02\x11\x9d\x6d\x37\x75\x66\x5a\xf2\xe6\x47\x65\x79\x80"
-        "\x7c\x92\xec\x09\xf5\x33\xea";
-
-static int long_plen2 = sizeof(long_ptext2) - 1;
-
-static unsigned char long_ptext3[] =
-        "\x0e\x25\x61\xaf\x55\xeb\x9c\x10\x90\x4f\xd4\x27\xfd\x0d\x1d\xf4"
-        "\x38\xbd\x9e\xd0\xc7\x1c\x48\x0b\x50\xa1\xd3\xf1\xb4\xdb\xba\x2d"
-        "\x00\x81\x59\x6e\x61\x43\x35\x50\xf9\x5f\x70\x20\xb2\x47\x48\x7f"
-        "\x32\xf7\xe8\x2e\x50\xc1\x80\x45\x4b\x5c\xf8\x45\x6a\xa0\x0f\x33"
-        "\xf1\xec\x9a\xb1\x79\xf5\xcc\x92\x1c\x30\x12\xb0\x55\x7b\x49\x06"
-        "\x93\xa8\x30\x5a\x68\x79\x8a\x21\x9a\xd7\x68\x70\xf8\xa1\xf1\x0a"
-        "\x52\x85\x75\xf9\x2d\x26\xd3\x1b\x37\xdc\xdc\x60\x87\x77\xcb\x97"
-        "\x57\x00\x4f\xf1\x81";
-
-static int long_plen3 = sizeof(long_ptext3) - 1;
-
-int main(int argc, char *argv[])
-    {
-    initKeys();
-
-    setOurRandom();
-    testOurRandom();
-
-    /** Public encryption: */
-
-    /** Encrypt openssl test plaintext with each key. */
-    generateEncryptionVector(key1, ptext1, plen1, TRUE);
-    generateEncryptionVector(key2, ptext1, plen1, TRUE);
-    generateEncryptionVector(key3, ptext1, plen1, TRUE);
-
-    /** Encrypt 16 byte test plaintext with each key. */
-    generateEncryptionVector(key1, ptext2, plen2, TRUE);
-    generateEncryptionVector(key2, ptext2, plen2, TRUE);
-    generateEncryptionVector(key3, ptext2, plen2, TRUE);
-
-    /** Encrypt 32 byte test plaintext with each key. */
-    generateEncryptionVector(key1, ptext3, plen3, TRUE);
-    generateEncryptionVector(key2, ptext3, plen3, TRUE);
-    generateEncryptionVector(key3, ptext3, plen3, TRUE);
-
-    /** Encypt one byte plaintext with each key. */
-    generateEncryptionVector(key1, short_ptext, short_plen, TRUE);
-    generateEncryptionVector(key2, short_ptext, short_plen, TRUE);
-    generateEncryptionVector(key3, short_ptext, short_plen, TRUE);
-
-    /** Encrypt longest possible plaintext for each key. */
-    generateEncryptionVector(key1, long_ptext1, long_plen1, TRUE);
-    generateEncryptionVector(key2, long_ptext2, long_plen2, TRUE);
-    generateEncryptionVector(key3, long_ptext3, long_plen3, TRUE);
-
-    /** Negative encryption vectors. */
-    generateEncryptionVector(key1, ptext1, plen1, FALSE);
-    generateEncryptionVector(key2, ptext1, plen1, FALSE);
-    generateEncryptionVector(key3, ptext1, plen1, FALSE);
-
-    /** Signing: */
-
-    /** Sign openssl test plaintext with each key. */
-    generateSignatureVector(key1, ptext1, plen1, TRUE);
-    generateSignatureVector(key2, ptext1, plen1, TRUE);
-    generateSignatureVector(key3, ptext1, plen1, TRUE);
-
-    /** Sign 16 byte digest with each key. */
-    generateSignatureVector(key1, ptext2, plen2, TRUE);
-    generateSignatureVector(key2, ptext2, plen2, TRUE);
-    generateSignatureVector(key3, ptext2, plen2, TRUE);
-
-    /** Sign 32 byte digest with each key. */
-    generateSignatureVector(key1, ptext3, plen3, TRUE);
-    generateSignatureVector(key2, ptext3, plen3, TRUE);
-    generateSignatureVector(key3, ptext3, plen3, TRUE);
-
-    /** Sign one byte digest with each key. */
-    generateSignatureVector(key1, short_ptext, short_plen, TRUE);
-    generateSignatureVector(key2, short_ptext, short_plen, TRUE);
-    generateSignatureVector(key3, short_ptext, short_plen, TRUE);
-
-    /** Sign longest possible digests for each key. */
-    generateSignatureVector(key1, long_ptext1, long_plen1, TRUE);
-    generateSignatureVector(key2, long_ptext2, long_plen2, TRUE);
-    generateSignatureVector(key3, long_ptext3, long_plen3, TRUE);
-
-    /** Negative signature vectors. */
-    generateSignatureVector(key1, ptext1, plen1, FALSE);
-    generateSignatureVector(key2, ptext1, plen1, FALSE);
-    generateSignatureVector(key3, ptext1, plen1, FALSE);
-
-    return 0;
-    }
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/utils.c	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,208 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#include "utils.h"
-#include <openssl/crypto.h>
-#include <openssl/err.h>
-#include <openssl/rand.h>
-
-void printBN(BIGNUM* bn)
-    {
-    char* text = BN_bn2hex(bn);
-    printf("%s", text);
-    OPENSSL_free(text);
-    }
-
-void printBin(char* data, int len)
-    {
-    BIGNUM* bn = BN_new();
-    bn = BN_bin2bn(data, len, bn);
-    printBN(bn);
-    BN_free(bn);
-    }
-
-static int vectorNumber = 1;
-
-/**
- * Print the first few lines of the action block.
- */
-
-void printActionHeader(char* name, char* type)
-    {
-    printf("<action>\n");
-    printf("\t<actionname>%s %i (%s)</actionname>\n", name, vectorNumber++, type);
-    printf("\t<actiontype>%s</actiontype>\n", type);
-    printf("\t<actionbody>\n");
-    } 
-
-/**
- * Print the last few lines of the action block.
- */
-
-void printActionFooter(BOOL passes)
-    {
-    printf("\t</actionbody>\n");
-    printf("\t<actionresult>\n");
-    printf("\t\t<result>%s</result>\n", passes ? "ETrue" : "EFalse");
-    printf("\t</actionresult>\n");
-    printf("</action>\n");
-    }
-
-/**
- * Print an element containg hex data.
- */
-
-void printHexElement(char* name, unsigned char* data, int len)
-    {
-    printf("\t\t<%s>", name);
-    printBin(data, len);
-    printf("</%s>\n", name);
-    }
-
-/**
- * Print an element containg hex data.
- */
-
-void printBNElement(char* name, BIGNUM* num)
-    {
-    printf("\t\t<%s>", name);
-    printBN(num);
-    printf("</%s>\n", name);
-    }
-
-/**
- * Scramble some data - used for generating tests that we expect to fail.
- */
-
-void scramble(unsigned char* data, int len)
-    {
-    int i;
-    for (i = 0 ; i < len ; ++ i)
-        data[i] ^= i;
-    }
-
-/**
- * Print an openssl error and exit.
- */
-
-void processError()
-    {
-    unsigned long err = ERR_get_error();
-    ERR_load_crypto_strings();
-    printf("Openssl error: %s\n", ERR_error_string(err, NULL));
-    exit(1);
-    }
-
-////////////////////////////////////////////////////////////////////////////////
-// Random stuff
-////////////////////////////////////////////////////////////////////////////////
-
-int random_value = 1;
-
-void random_seed(const void* buf, int num)
-    {
-    }
-
-int random_bytes(unsigned char *buf, int num)
-    {
-    int i;
-    for (i=0; i<num; i++)
-			buf[i]=random_value++;
-
-    return(1);
-    }
-
-void random_cleanup(void)
-    {
-    }
-
-void random_add(const void *buf, int num, double entropy)
-    {
-    }
-
-int random_pseudorand(unsigned char *buf, int num)
-    {
-    return 1;
-    }
-
-int random_status(void)
-    {
-    return 1;
-    }
-
-RAND_METHOD ourRNG = {random_seed, random_bytes, random_cleanup, random_add, random_pseudorand, random_status};
-
-void testOurRandom()
-    {
-    char data[16];
-    int i;
-
-    RAND_bytes(data, 16);
-
-    for (i = 0 ; i < 16 ; ++i)
-        {
-        if (data[i] != i + 1)
-            {
-            printf("Random number generator not crippled\n");
-            exit(1);
-            }
-        }
-    }
-
-void setOurRandom()
-    {
-    random_value = 1;
-    RAND_set_rand_method(&ourRNG);
-    }
-
-/** Print C source for assinging binary data to a variable. */
-void printCBin(char* varname, unsigned char* data, int len)
-    {
-    int i, j;
-
-    printf("\tunsigned char %s[] =", varname);
-    for (i = 0 ; i < len ; i += 16)
-        {
-        printf("\n\t\t\"");
-        for (j = i ; j < len && j < (i + 16) ; ++j)
-            {
-            printf("\\x%02x", data[j]);
-            }
-        printf("\"");
-        }
-
-    printf(";\n\n");
-
-    printf("\tint %s_len = %i;\n\n", varname, len);
-    }
-
-/** Print C source for assigning the binary form of a BIGNUM to a variable. */
-void printCBN(char* varname, BIGNUM* bignum)
-    {
-    int len = BN_num_bytes(bignum);
-    unsigned char buffer[len];
-
-    BN_bn2bin(bignum, buffer);
-    printCBin(varname, buffer, len);
-    }
--- a/crypto/weakcrypto/test/tasymmetric/script_gen/utils.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __utils_h
-#define __utils_h
-
-#include <openssl/bn.h>
-
-#ifndef BOOL
-#define BOOL int
-#define TRUE 1
-#define FALSE 0
-#endif
-
-void printBN(BIGNUM* bn);
-void printBin(char* data, int len);
-void printActionHeader(char* name, char* type);
-void printActionFooter(BOOL passes);
-void printHexElement(char* name, unsigned char* data, int len);
-void printBNElement(char* name, BIGNUM* num);
-void scramble(unsigned char* data, int len);
-void processError();
-void setOurRandom();
-void testOurRandom();
-void printCBin(char* varname, unsigned char* data, int len);
-void printCBN(char* varname, BIGNUM* bignum);
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/scripts/asymmetricPerformance.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1228 +0,0 @@
-/////////////////////////////////////////////////////////////////////////
-//	Switch on performance testing
-//////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Switch on performance testing</actionname>
-	<actiontype>PerformanceTestSettings</actiontype>
-	<actionbody>
-		<KPerformanceTesting>ETrue</KPerformanceTesting>
-		<iterations>5</iterations>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-
-/////////////////////////////////////////////////////////////////////////
-// It should be noted that the time period specified denotes one of
-// the three steps key creation, signing and verification of keys.
-// So total execution time can be three times as long.
-// <iterations> is actually the amount of time the test will run
-// and should perhaps be changed to something like <iterationtime>.
-/////////////////////////////////////////////////////////////////////////
-
-//////////////////////////////////////////////////////////////////////////
-//	Forward-backward self tests (standard and CRT)
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>DH key agreement</actionname>
-	<actiontype>DHVector</actiontype>
-	<actionbody>
-		<iterations>10</iterations>
-		<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-		<g>02</g>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 512 bit key, standard, 15 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>15</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>512</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCB</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 1024 bit key, standard, 30 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>30</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>1024</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 2048 bit key, standard, 60 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>60</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>2048</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 512 bit key, CRT, 10 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>10</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>512</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCB</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 1024 bit key, CRT, 30 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>30</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>1024</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA encrypt&decrypt: 2048 bit key, CRT, 60 sec</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>60</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>2048</keybits>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321</input>			
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA sign&verify: 512 bit key, standard, 10 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>10</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>512</keybits>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA sign&verify: 1024 bit key, standard, 15 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>15</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>1024</keybits>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA sign&verify: 2048 bit key, standard, 30 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>30</iterations>
-			<cryptotype>EStandard</cryptotype>
-			<keybits>2048</keybits>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Forward-backward self test RSA sign&verify : 512 bit key, CRT, 10 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>10</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>512</keybits>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA sign&verify : 1024 bit key, CRT, 15 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>15</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>1024</keybits>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Forward-backward self test RSA sign&verify : 2048 bit key, CRT, 30 seconds</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<iterations>30</iterations>
-			<cryptotype>EStandardCRT</cryptotype>
-			<keybits>2048</keybits>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: encrypt
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test RSA: Encrypt e = 0x3, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>6A572306B13C00C2D442E1B45A1719F21DC6A3B9810CD6BBA8B945A031054BC2E47BAB0DBB9BFBD3540D5745BF8EDE7B88A9</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>1C1AF0EF61C813383F7204D64A56E4BDF903D25D2A2B3A393DD8447E6CB81B6F0AC0E670DEE1505AC2E526D2429C2355A27E9BE18E9A5A54CF4BE8D89756A039</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>31A8C19C6BF5FBB637B4523016DB47C2FB596D60F0465A49C8854F461DE2ACE0A84598E6B3792612DE30032C0A7BAB75D0F3C6A0F83CBA5B36BDFCDD3B6BDDDEA8BCCB7ADBBB0FE332B4E897B5EEC85514A654709653A956410F13C86CB2E7F27EA09EB8D169844D1C1909A34DA43F752B24338157C64216F98535B58334CD7A</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: standard decrypt
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>2D3CD1EAE8BC3AF7D85B57937CBBBEC362486FA1FD7161F7085597D0670AFF84DE33ADEE71AEC4AA3717876E12FBF76286E0AB0428729169977EE6FEDF108CC37BB991AC059B8E80323199CDA22FB29CA7FD93CFD1416B94D6491FCF63C39B715B129101251E295E0A089450163D8470A8573EF459492C135C2BE9B0C5D48D96</ciphertext>
-		<plaintext>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: CRT decrypt
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test RSA: Decrypt, 512 bit key, CRT, 1 sec</actionname>
-	<actiontype>RSADecryptVectorCRT</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>BBF82F090682CE9C2338AC2B9DA871F7368D07EED41043A440D6B6F07454F51FB8DFBAAF035C02AB61EA48CEEB6FCD4876ED520D60E1EC4619719D8A5B8B807FAFB8E0A3DFC737723EE6B4B7D93A2584EE6A649D060953748834B2454598394EE0AAB12D7B61A51F527A9A41F6C1687FE2537298CA2A8F5946F8E5FD091DBDCB</modulus>
-		<P>EECFAE81B1B9B3C908810B10A1B5600199EB9F44AEF4FDA493B81A9E3D84F632124EF0236E5D1E3B7E28FAE7AA040A2D5B252176459D1F397541BA2A58FB6599</P>
-		<Q>C97FB1F027F453F6341233EAAAD1D9353F6C42D08866B1D05A0F2035028B9D869840B41666B42E92EA0DA3B43204B5CFCE3352524D0416A5A441E700AF461503</Q>
-		<dP>54494CA63EBA0337E4E24023FCD69A5AEB07DDDC0183A4D0AC9B54B051F2B13ED9490975EAB77414FF59C1F7692E9A2E202B38FC910A474174ADC93C1F67C981</dP>
-		<dQ>471E0290FF0AF0750351B7F878864CA961ADBD3A8A7E991C5C0556A94C3146A7F9803F8F6F8AE342E931FD8AE47A220D1B99A495849807FE39F9245A9836DA3D</dQ>
-		<qInv>B06C4FDABB6301198D265BDBAE9423B380F271F73453885093077FCD39E2119FC98632154F5883B167A967BF402B4E9E2E0F9656E698EA3666EDFB25798039F7</qInv>
-		<ciphertext>4B9C35BC3CA99B3908EF91C91F4D661544B5462CB3079D7B7A610B90039602F080417B049B7F31BAF16A87B59986620EC1BBD791AD30774309C05F0AFA24B0BF1EA1FEAA3A8EFA2C24F5626B8A9C9A157C1018DA54D314E728E2DB75E84FB5E99082561D904139B95C4DA70A5AB6412527B97CEDA04C6FB00BE1E44537706FF2</ciphertext>
-		<plaintext>D436E99569FD32A7C8A05BBC90D32C49</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	More Vector Tests RSA: standard encrypt & decrypt
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test 2 RSA: Encrypt e = 0x3, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>41DDDCD534E5716F20C21FED7F93B64802A55180E8896D2B770721A48FC4C2C3E67E5CDCD552C8F5782D8CA318A338170648</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 3 RSA: Encrypt e = 0x3, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</plaintext>
-		<ciphertext>0C2EF71B3106368FEB8CA6B0542480372423058C40BDE47C7DD5E828A8E16DE588324DE8C4035AF6CAE44F24B89097324FBF</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 4 RSA: Encrypt e = 0x3, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>9BFEE36BFB6A5B5A06D8F75F4C36F88BB53A30192968EEB8F0CA9A083766A218DF68A719C1D142990522545B6154C3F3E206</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 5 RSA: Encrypt e = 0x3, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>811E3047119584FE1810535AD29127F8469EE8249EAB8ED422CAE21816CF1C2B430F800016BAC3A82E25FA730616243787CD</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 6 RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>1C1AF0EF61C813383F7204D64A56E4BDF903D25D2A2B3A393DD8447E6CB81B6F0AC0E670DEE1505AC2E526D2429C2355A27E9BE18E9A5A54CF4BE8D89756A039</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 7 RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>3E479CDAE2775909FF36C72BB0E49C9368DE432DD4819789633FA3117AEDE13AAFEC7D0AC49FF5269C4E9581D951DC07CFDCA0A29D3FAB61EF7B3B71A24FE0CD</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 8 RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>939AF059CF096A38F696ABF7E903FEE9931059018839AF59F12FD404A56A4A3417339C87BC8EB1A3C9911969948A4C50EF2CE29118AA98DDC0C57F5DD7452E22</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 9 RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>72BA7B987C4DBF1611B781F321498FDBA3962E0B62F502A726B17CE511984B771F474C23F9F6532A1FDC30C160596D83A13198CCCE6EC4E22A204977682FDD2D</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 10 RSA: Encrypt e = 0x11, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</plaintext>
-		<ciphertext>403325E9263F5CDBD03FAE2E5D6CDF884E8B2F5AE8D0AEBD27C950E4D69C9499B0A5435B0024CE35B92383F1E864C6426A97AC6DAC42EA70AEE000C7B9ECA83F</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 11 RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</plaintext>
-		<ciphertext>2D3CD1EAE8BC3AF7D85B57937CBBBEC362486FA1FD7161F7085597D0670AFF84DE33ADEE71AEC4AA3717876E12FBF76286E0AB0428729169977EE6FEDF108CC37BB991AC059B8E80323199CDA22FB29CA7FD93CFD1416B94D6491FCF63C39B715B129101251E295E0A089450163D8470A8573EF459492C135C2BE9B0C5D48D96</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 12 RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>31A8C19C6BF5FBB637B4523016DB47C2FB596D60F0465A49C8854F461DE2ACE0A84598E6B3792612DE30032C0A7BAB75D0F3C6A0F83CBA5B36BDFCDD3B6BDDDEA8BCCB7ADBBB0FE332B4E897B5EEC85514A654709653A956410F13C86CB2E7F27EA09EB8D169844D1C1909A34DA43F752B24338157C64216F98535B58334CD7A</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 13 RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>397C86C824FDC6F1D0B966BD21A829D6F62C40F23A9B345486B8EF6C0BCC5EC9A21ECC12BDF477617B0E3E6EE1988B0918092DE46B78B74FD8EF8B1B42C1E32744DAF0D94FBC46D4523271BEE029B1BEF43136EDE8D86A8D1F65CBBCA80538E968F32C1B0F6D1888F3A83514969994CBA8128251D31BBC2C506F9DDEE6B53FD3</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 14 RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>59B7E7F8DB3D1E9BD58E1AB534F5D2CB9D28CF03BF8FC468F488940380CDF853DA52B10BAB8D0046A296E5EC98830EC350605185EF6A4C290A087DEEB4BD990996733B7161685C2A8971B6214B8F84A521B0AB5709A21C8C9D7A847C73E34865AFC3CA8B5EF85D720AE370E6147FC22206ACA77CFCE5A0FC46ACD9F446DE537A</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 15 RSA: Encrypt e = 0x010001, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>9B20439E8572CFFC1218B6CCFBEEB46BEAE8F53C49BA2CE09E9023F3C5E3B73ECC9B5B388972BA018FE4D34F12B7674239A4EAF76A7D712B2B67EFDA0A0C992438B0A25CE7C9ED56F5E8AF6AABC7B94C55D0F4524750B9194E7C2210239448A90C59AC4AECBEE1660D02F24B2AA46B6C8C3D61344049327C964A137D4FBA91DF</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 2 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>1C1AF0EF61C813383F7204D64A56E4BDF903D25D2A2B3A393DD8447E6CB81B6F0AC0E670DEE1505AC2E526D2429C2355A27E9BE18E9A5A54CF4BE8D89756A039</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 3 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>6A572306B13C00C2D442E1B45A1719F21DC6A3B9810CD6BBA8B945A031054BC2E47BAB0DBB9BFBD3540D5745BF8EDE7B88A9</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 4 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>31A8C19C6BF5FBB637B4523016DB47C2FB596D60F0465A49C8854F461DE2ACE0A84598E6B3792612DE30032C0A7BAB75D0F3C6A0F83CBA5B36BDFCDD3B6BDDDEA8BCCB7ADBBB0FE332B4E897B5EEC85514A654709653A956410F13C86CB2E7F27EA09EB8D169844D1C1909A34DA43F752B24338157C64216F98535B58334CD7A</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 5 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>3E479CDAE2775909FF36C72BB0E49C9368DE432DD4819789633FA3117AEDE13AAFEC7D0AC49FF5269C4E9581D951DC07CFDCA0A29D3FAB61EF7B3B71A24FE0CD</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 6 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>811E3047119584FE1810535AD29127F8469EE8249EAB8ED422CAE21816CF1C2B430F800016BAC3A82E25FA730616243787CD</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 7 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>397C86C824FDC6F1D0B966BD21A829D6F62C40F23A9B345486B8EF6C0BCC5EC9A21ECC12BDF477617B0E3E6EE1988B0918092DE46B78B74FD8EF8B1B42C1E32744DAF0D94FBC46D4523271BEE029B1BEF43136EDE8D86A8D1F65CBBCA80538E968F32C1B0F6D1888F3A83514969994CBA8128251D31BBC2C506F9DDEE6B53FD3</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 8 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>939AF059CF096A38F696ABF7E903FEE9931059018839AF59F12FD404A56A4A3417339C87BC8EB1A3C9911969948A4C50EF2CE29118AA98DDC0C57F5DD7452E22</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 9 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>9BFEE36BFB6A5B5A06D8F75F4C36F88BB53A30192968EEB8F0CA9A083766A218DF68A719C1D142990522545B6154C3F3E206</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 10 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>9B20439E8572CFFC1218B6CCFBEEB46BEAE8F53C49BA2CE09E9023F3C5E3B73ECC9B5B388972BA018FE4D34F12B7674239A4EAF76A7D712B2B67EFDA0A0C992438B0A25CE7C9ED56F5E8AF6AABC7B94C55D0F4524750B9194E7C2210239448A90C59AC4AECBEE1660D02F24B2AA46B6C8C3D61344049327C964A137D4FBA91DF</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 11 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>72BA7B987C4DBF1611B781F321498FDBA3962E0B62F502A726B17CE511984B771F474C23F9F6532A1FDC30C160596D83A13198CCCE6EC4E22A204977682FDD2D</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 12 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>41DDDCD534E5716F20C21FED7F93B64802A55180E8896D2B770721A48FC4C2C3E67E5CDCD552C8F5782D8CA318A338170648</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 13 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>59B7E7F8DB3D1E9BD58E1AB534F5D2CB9D28CF03BF8FC468F488940380CDF853DA52B10BAB8D0046A296E5EC98830EC350605185EF6A4C290A087DEEB4BD990996733B7161685C2A8971B6214B8F84A521B0AB5709A21C8C9D7A847C73E34865AFC3CA8B5EF85D720AE370E6147FC22206ACA77CFCE5A0FC46ACD9F446DE537A</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 14 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>403325E9263F5CDBD03FAE2E5D6CDF884E8B2F5AE8D0AEBD27C950E4D69C9499B0A5435B0024CE35B92383F1E864C6426A97AC6DAC42EA70AEE000C7B9ECA83F</ciphertext>
-		<plaintext>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 15 RSA: Decrypt, 512 bit key, standard, 1 sec</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>0C2EF71B3106368FEB8CA6B0542480372423058C40BDE47C7DD5E828A8E16DE588324DE8C4035AF6CAE44F24B89097324FBF</ciphertext>
-		<plaintext>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: Standard Sign
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786C08484F59280886A19919BECA53711819B2D2DD82D702E2F6DE991DC89CB968C01B1315A742B5BE783A781B5B1286F46DAFE29DE675C64A3BA4781DEF8F19</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: CRT Sign
-//////////////////////////////////////////////////////////////////////////
-//	Test vector from cryptopp "Everybody gets Friday off"
-<action>
-	<actionname>Vector Test RSA: Sign, 512 bit key, CRT, 1 sec</actionname>
-	<actiontype>RSASignVectorCRT</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<P>33D48445C859E52340DE704BCDDA065FBB4058D740BD1D67D29E9C146C11CF61</P>
-		<Q>335E8408866B0FD38DC7002D3F972C67389A65D5D8306566D5C4F2A5AA52628B</Q>
-		<dP>045EC90071525325D3D46DB79695E9AFACC4523964360E02B119BAA366316241</dP>
-		<dQ>15EB327360C7B60D12E5E2D16BDCD97981D17FBA6B70DB13B20B436E24EADA59</dQ>
-		<qInv>2CA6366D72781DFA24D34A9A24CBC2AE927A9958AF426563FF63FB11658A461D</qInv>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	Vector Test RSA: Verify
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test RSA: Verify, e = 0x3 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>6268EE3023E0CCC02FDF5896C4E1C87EEEE82EFE5C87EFC3C41D3E976FD286F35A0678ED0157DC06F3F889B15CAF91C783EF</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test RSA: Verify, e = 0x11 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>32BCB348294467EA925B0B8E0420E3B6482A9F12C42081B4A0EB76A807D4A35CBB8E49C5BB958300D5713A15748660AF8EDD1EDDF674AFECD270813BB2420550</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-//////////////////////////////////////////////////////////////////////////
-//	More Vector Tests RSA: standard sign & verify
-//////////////////////////////////////////////////////////////////////////
-<action>
-	<actionname>Vector Test 2 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<privateExponent>0123C5B61BA36EDB1D3679904199A89EA80C09B9122E1400C09ADCF7784676D01D23356A7D44D6BD8BD50E94BFC723FA87D8862B75177691C11D757692DF8881</privateExponent>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 3 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B1465F0B5271A8C700D60A0717C38A48ECB67CE2592ADAFC5C672F6AA21319477CFB3A407587F7A2BF004BB709273051F1D81DC3B5E7409DFEB0E2B8DEE9780FBD0045E999A2D9C8313887BF16E380533E8E505DB231C22DCC72A5AF4B92E5D7EB1F3F37E6763C2C650A9F641992ABD858AB40AAADDAB598F9A81C4C99E68D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 4 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>32BCB348294467EA925B0B8E0420E3B6482A9F12C42081B4A0EB76A807D4A35CBB8E49C5BB958300D5713A15748660AF8EDD1EDDF674AFECD270813BB2420550</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 5 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>301786087160F4EEB99B005A56457792FC9264E28549F2AC4C65982BC1AF797C09E3ACFABE703F5C72754BD58D0403D4433C</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 6 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>6B68F9744C7F6535B4AE3A09133FB573C73DECB13ABACB0D3E31CDECC206F5023A91F7634F46350EF06D840420CAEB8029DAC5DCFF1C1A0C7EB33D60E348FC079A4CF478DAB02BEFCA8242FE5CBF52BE39CAB47B16D61C77A1B36B52D371C846BA330A4B21B73C0E1D7D6732EFBA08B06AB4B4FB07E19D89A5B9398A8D093A40</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 7 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>069D76426B5096CDFB1F37F4ABABFBD9C2786174D35F32A83250EB22600A493C742135F811122899A9D1060CBB4DE0DA41C8073B6DC1DC401DD2536A514EE966</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 8 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>56CB9D7521600FAC739A7BA2F64C8833EFA9B631970F8C80AC56F5D06B48C9DE98BEBBAEAA71908BF4ECB3BD9CA074EFE491</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 9 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>4F2A49D3F53D380CF3812A21F4CA61CA39920C4F5E7D16757C8BBC9C3EB9FCF3146EF9FCCF3E674B9792B764CC7486342760D42DC08C94BC9126B7601C7287BE98CAE6D1FFB9B2CBA28536C87D84B12B6F8913F6A373399CA7BA3AE507DCA8054575030D192DBC52CC28F54AFCCE7A0370C577548088709634B2B332EF429C10</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 10 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>242272B19E612D4E1B1702CBE2EE64945A4DC1F8EE3C84D1FDA317517DB723D84712A0FD13E898E578E979DFAEC3FCB7B3F0CEDC3B859E287AA2F3C22768B18D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 11 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>9D12DA842EE999C9EDE51E1C7130C2B61AAD5CEBD85C38F20345D0ABAEAAC651FB34B35C8D983CABC985CD0F29EAB1EEFD46</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 12 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>1938080C595F1C2278818BB3B6D9D400FBF6DD7FD6B1E5A1E568DAF69A1A538158F74866916C1A19386D09284F2478BAB8D6C932F2F5756596449FB55E72B103AB68D17592A3928AE46D2350673C8E9BD69F36E96090D30A02AB72E7F4C35D815D2DEE660B2C4098367815B5E10B9008FA701AFF9E1D2B756564064455FCE4A1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 13 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</digestInfo>
-		<signature>07AE66D658801E68EF06A8F448DE504F5492457B2891F491AAB3C1DAFBE61F5ADB478E77A06F42F7985E2854A83980A70FA394AA955AF279D00215D778482997</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 14 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</digestInfo>
-		<signature>7AA56CFBA701353E0402AAC8B71DF6E33DB3F7E2D1B96385D566FCAEF7243AB7170778FE4E6544C306003B393AB82F3AA4C3</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 15 RSA: Sign, 512 bit key, Standard, 1 sec</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</digestInfo>
-		<signature>363E0A0A5672F9BAB4B4A8EE3F236C12B439D63B6B1893BC025E225AA1DF42C9A09951CFAC8B6AA8098502A347A2C5D8B9FE0D47F34E0848539D24D0B32B79669276597FE082AC24BE8DA961FA184739EF04915ACFDAA172197EED5EB7EB2999FA8B327AF4A9419E64D9D314D67770A006C99C97E90715540880661F9187860A</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 2 RSA: Verify, e = 0x3 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>9D12DA842EE999C9EDE51E1C7130C2B61AAD5CEBD85C38F20345D0ABAEAAC651FB34B35C8D983CABC985CD0F29EAB1EEFD46</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 3 RSA: Verify, e = 0x3 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</digestInfo>
-		<signature>7AA56CFBA701353E0402AAC8B71DF6E33DB3F7E2D1B96385D566FCAEF7243AB7170778FE4E6544C306003B393AB82F3AA4C3</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 4 RSA: Verify, e = 0x3 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>56CB9D7521600FAC739A7BA2F64C8833EFA9B631970F8C80AC56F5D06B48C9DE98BEBBAEAA71908BF4ECB3BD9CA074EFE491</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 5 RSA: Verify, e = 0x3 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>301786087160F4EEB99B005A56457792FC9264E28549F2AC4C65982BC1AF797C09E3ACFABE703F5C72754BD58D0403D4433C</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 6 RSA: Verify, e = 0x11 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>069D76426B5096CDFB1F37F4ABABFBD9C2786174D35F32A83250EB22600A493C742135F811122899A9D1060CBB4DE0DA41C8073B6DC1DC401DD2536A514EE966</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 7 RSA: Verify, e = 0x11 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786C08484F59280886A19919BECA53711819B2D2DD82D702E2F6DE991DC89CB968C01B1315A742B5BE783A781B5B1286F46DAFE29DE675C64A3BA4781DEF8F19</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 8 RSA: Verify, e = 0x11 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>242272B19E612D4E1B1702CBE2EE64945A4DC1F8EE3C84D1FDA317517DB723D84712A0FD13E898E578E979DFAEC3FCB7B3F0CEDC3B859E287AA2F3C22768B18D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 9 RSA: Verify, e = 0x11 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</digestInfo>
-		<signature>07AE66D658801E68EF06A8F448DE504F5492457B2891F491AAB3C1DAFBE61F5ADB478E77A06F42F7985E2854A83980A70FA394AA955AF279D00215D778482997</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 10 RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>1938080C595F1C2278818BB3B6D9D400FBF6DD7FD6B1E5A1E568DAF69A1A538158F74866916C1A19386D09284F2478BAB8D6C932F2F5756596449FB55E72B103AB68D17592A3928AE46D2350673C8E9BD69F36E96090D30A02AB72E7F4C35D815D2DEE660B2C4098367815B5E10B9008FA701AFF9E1D2B756564064455FCE4A1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 11 RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</digestInfo>
-		<signature>363E0A0A5672F9BAB4B4A8EE3F236C12B439D63B6B1893BC025E225AA1DF42C9A09951CFAC8B6AA8098502A347A2C5D8B9FE0D47F34E0848539D24D0B32B79669276597FE082AC24BE8DA961FA184739EF04915ACFDAA172197EED5EB7EB2999FA8B327AF4A9419E64D9D314D67770A006C99C97E90715540880661F9187860A</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 12 RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>4F2A49D3F53D380CF3812A21F4CA61CA39920C4F5E7D16757C8BBC9C3EB9FCF3146EF9FCCF3E674B9792B764CC7486342760D42DC08C94BC9126B7601C7287BE98CAE6D1FFB9B2CBA28536C87D84B12B6F8913F6A373399CA7BA3AE507DCA8054575030D192DBC52CC28F54AFCCE7A0370C577548088709634B2B332EF429C10</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 13 RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>6B68F9744C7F6535B4AE3A09133FB573C73DECB13ABACB0D3E31CDECC206F5023A91F7634F46350EF06D840420CAEB8029DAC5DCFF1C1A0C7EB33D60E348FC079A4CF478DAB02BEFCA8242FE5CBF52BE39CAB47B16D61C77A1B36B52D371C846BA330A4B21B73C0E1D7D6732EFBA08B06AB4B4FB07E19D89A5B9398A8D093A40</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>Vector Test 14 RSA: Verify, e = 0x10001 512 bit key, 1 sec</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<iterations>1</iterations>
-		<keybits>512</keybits>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B1465F0B5271A8C700D60A0717C38A48ECB67CE2592ADAFC5C672F6AA21319477CFB3A407587F7A2BF004BB709273051F1D81DC3B5E7409DFEB0E2B8DEE9780FBD0045E999A2D9C8313887BF16E380533E8E505DB231C22DCC72A5AF4B92E5D7EB1F3F37E6763C2C650A9F641992ABD858AB40AAADDAB598F9A81C4C99E68D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tasymmetric/scripts/tasymmetrictests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1418 +0,0 @@
-<action>
-	<actionname>RSA CRT test vector 1 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>BBF82F090682CE9C2338AC2B9DA871F7368D07EED41043A440D6B6F07454F51FB8DFBAAF035C02AB61EA48CEEB6FCD4876ED520D60E1EC4619719D8A5B8B807FAFB8E0A3DFC737723EE6B4B7D93A2584EE6A649D060953748834B2454598394EE0AAB12D7B61A51F527A9A41F6C1687FE2537298CA2A8F5946F8E5FD091DBDCB</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>D436E99569FD32A7C8A05BBC90D32C49</plaintext>
-		<ciphertext>4B9C35BC3CA99B3908EF91C91F4D661544B5462CB3079D7B7A610B90039602F080417B049B7F31BAF16A87B59986620EC1BBD791AD30774309C05F0AFA24B0BF1EA1FEAA3A8EFA2C24F5626B8A9C9A157C1018DA54D314E728E2DB75E84FB5E99082561D904139B95C4DA70A5AB6412527B97CEDA04C6FB00BE1E44537706FF2</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA CRT test vector 2 (RSADecryptVectorCRT)</actionname>
-	<actiontype>RSADecryptVectorCRT</actiontype>
-	<actionbody>
-		<modulus>BBF82F090682CE9C2338AC2B9DA871F7368D07EED41043A440D6B6F07454F51FB8DFBAAF035C02AB61EA48CEEB6FCD4876ED520D60E1EC4619719D8A5B8B807FAFB8E0A3DFC737723EE6B4B7D93A2584EE6A649D060953748834B2454598394EE0AAB12D7B61A51F527A9A41F6C1687FE2537298CA2A8F5946F8E5FD091DBDCB</modulus>
-		<P>EECFAE81B1B9B3C908810B10A1B5600199EB9F44AEF4FDA493B81A9E3D84F632124EF0236E5D1E3B7E28FAE7AA040A2D5B252176459D1F397541BA2A58FB6599</P>
-		<Q>C97FB1F027F453F6341233EAAAD1D9353F6C42D08866B1D05A0F2035028B9D869840B41666B42E92EA0DA3B43204B5CFCE3352524D0416A5A441E700AF461503</Q>
-		<dP>54494CA63EBA0337E4E24023FCD69A5AEB07DDDC0183A4D0AC9B54B051F2B13ED9490975EAB77414FF59C1F7692E9A2E202B38FC910A474174ADC93C1F67C981</dP>
-		<dQ>471E0290FF0AF0750351B7F878864CA961ADBD3A8A7E991C5C0556A94C3146A7F9803F8F6F8AE342E931FD8AE47A220D1B99A495849807FE39F9245A9836DA3D</dQ>
-		<qInv>B06C4FDABB6301198D265BDBAE9423B380F271F73453885093077FCD39E2119FC98632154F5883B167A967BF402B4E9E2E0F9656E698EA3666EDFB25798039F7</qInv>
-		<ciphertext>4B9C35BC3CA99B3908EF91C91F4D661544B5462CB3079D7B7A610B90039602F080417B049B7F31BAF16A87B59986620EC1BBD791AD30774309C05F0AFA24B0BF1EA1FEAA3A8EFA2C24F5626B8A9C9A157C1018DA54D314E728E2DB75E84FB5E99082561D904139B95C4DA70A5AB6412527B97CEDA04C6FB00BE1E44537706FF2</ciphertext>
-		<plaintext>D436E99569FD32A7C8A05BBC90D32C49</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-///	Not a valid test now CRT is correct. Checked this with cryptopp test case (see exponentiate project for details).
-//<!action>
-//	<!actionname>RSA CRT test vector 2 (RSADecryptVectorCRT) (test a failure)</actionname>
-//	<!actiontype>RSADecryptVectorCRT</actiontype>
-//	<!actionbody>
-//		<!modulus>EF6419DC54EC49B7D0524BA675727F6D895A66A9940F3C76B6220A5B9073357D70702C9FC2D6ECA41448356CE562F7FFAF1DA64BA947274BA0D372F5866B69CB</modulus>
-//		<!P>FB4F79F4E8C816B816A817120901AED45D0FD72F3DC4BA6946F790776E8A5845</P>
-//		<!Q>F3DBAF51B232E334964581AE27DE17BFF90A66AE84C2BE95574082880BFF82CF</Q>
-//		<!dP>63D8A1C5B22EBD080AC861D2228DEE9E251344155ADF2C88E34F3CB096D49459</dP>
-//		<!dQ>F145A87EC23B0B059AB08690132DF07DA61F9E5C894A4D5A610B989A9694658D</dQ>
-//		<!qInv>4B8869676360EDC92F0B02F0B93580A570686E7EA3C7D39A5E572AB79314CCBD</qInv>
-//		<!ciphertext>2EAEAE1F07AAD1D3A14C2178397DFECD91C92E963511BE5CDDE8BCA79B47ECEF68F8DD2F8240DE2E05E90E2A75FAA6495CE903DE413D332CFDD2DD83BC8244C5</ciphertext>
-//		<!plaintext>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</plaintext>
-//	<!/actionbody>
-//	<!actionresult>
-//		<!return>KErrCorrupt</return>
-//		<!result>EFalse</result>
-//	<!/actionresult>
-//<!/action>
-
-<action>
-	<actionname>512 bit rsa key, self encrypt test 1</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandard</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self encrypt test 2</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandard</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self encrypt test 3</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandard</cryptotype>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCB</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA CRT test vector 3 (RSADecryptVectorCRT) m2 larger than m1 which tests negative division/modulus handling</actionname>
-	<actiontype>RSASignVectorCRT</actiontype>
-	<actionbody>
-		<modulus>AC4D079775B5503FDDE7DF189335DB52A11E0C9981A2C4892BA3BE8D3B5A813F30BAC136C942252E66C68098D6600192A83A78FBFC7BD55DA22F6427359CA279</modulus>
-		<P>E3413E7967388F84C054552833603BAF82339DC5B7B5DDF632183E8B6FAA9307</P>
-		<Q>C21851414A173FF6A37B4097A1FE3D6B5C9ADA3A9C249E2F11B851FD5A0E3E7F</Q>
-		<dP>719D83DB74549DC413D7D5BF44783F3ECECC797B890E3ECB405E489EB39446EF</dP>
-		<dQ>A96CBEA8E63ACB4BC8C292CC89CC3AE2D7B0186466DE13F2745E57BB767BCE93</dQ>
-		<qInv>D868F46433CB12A6EE2C71B3614FE0C9BC99A9FA6EF9196E871115D95DB26E8F</qInv>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>062ED0C392531F86DF4612353CEF902477CBDC30F61D859626EAB8B61F613D5C793C10FB9552CC20EBB34BE1E6C7AA440E5631536203E4111E215A625F2801F5</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self encrypt test 1 (CRT)</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self encrypt test 2 (CRT)</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self encrypt test 3 (CRT)</actionname>
-	<actiontype>RSAEncryptStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCB</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit rsa key, self sign test 1</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandard</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** CRT self sign 512 bit rsa key, test 1</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** CRT self sign 512 bit rsa key, test 2</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEFFEDCBA987654321</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** CRT self sign 512 bit rsa key, test 3</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEF123456789ABCDEF123456789ABCDEF123456789ABCDEF</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** CRT self sign 512 bit rsa key, test 4</actionname>
-	<actiontype>RSASignStandardAndCRTFB</actiontype>
-	<actionbody>
-			<cryptotype>EStandardCRT</cryptotype>
-			<input>123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321123456789ABCDEFEDCBA987654321</input>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 1 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>1C1AF0EF61C813383F7204D64A56E4BDF903D25D2A2B3A393DD8447E6CB81B6F0AC0E670DEE1505AC2E526D2429C2355A27E9BE18E9A5A54CF4BE8D89756A039</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 2 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>1C1AF0EF61C813383F7204D64A56E4BDF903D25D2A2B3A393DD8447E6CB81B6F0AC0E670DEE1505AC2E526D2429C2355A27E9BE18E9A5A54CF4BE8D89756A039</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 3 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>6A572306B13C00C2D442E1B45A1719F21DC6A3B9810CD6BBA8B945A031054BC2E47BAB0DBB9BFBD3540D5745BF8EDE7B88A9</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 4 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>6A572306B13C00C2D442E1B45A1719F21DC6A3B9810CD6BBA8B945A031054BC2E47BAB0DBB9BFBD3540D5745BF8EDE7B88A9</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 5 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>31A8C19C6BF5FBB637B4523016DB47C2FB596D60F0465A49C8854F461DE2ACE0A84598E6B3792612DE30032C0A7BAB75D0F3C6A0F83CBA5B36BDFCDD3B6BDDDEA8BCCB7ADBBB0FE332B4E897B5EEC85514A654709653A956410F13C86CB2E7F27EA09EB8D169844D1C1909A34DA43F752B24338157C64216F98535B58334CD7A</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 6 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>31A8C19C6BF5FBB637B4523016DB47C2FB596D60F0465A49C8854F461DE2ACE0A84598E6B3792612DE30032C0A7BAB75D0F3C6A0F83CBA5B36BDFCDD3B6BDDDEA8BCCB7ADBBB0FE332B4E897B5EEC85514A654709653A956410F13C86CB2E7F27EA09EB8D169844D1C1909A34DA43F752B24338157C64216F98535B58334CD7A</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 7 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>3E479CDAE2775909FF36C72BB0E49C9368DE432DD4819789633FA3117AEDE13AAFEC7D0AC49FF5269C4E9581D951DC07CFDCA0A29D3FAB61EF7B3B71A24FE0CD</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 8 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>3E479CDAE2775909FF36C72BB0E49C9368DE432DD4819789633FA3117AEDE13AAFEC7D0AC49FF5269C4E9581D951DC07CFDCA0A29D3FAB61EF7B3B71A24FE0CD</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 9 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>811E3047119584FE1810535AD29127F8469EE8249EAB8ED422CAE21816CF1C2B430F800016BAC3A82E25FA730616243787CD</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 10 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>811E3047119584FE1810535AD29127F8469EE8249EAB8ED422CAE21816CF1C2B430F800016BAC3A82E25FA730616243787CD</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 11 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-		<ciphertext>397C86C824FDC6F1D0B966BD21A829D6F62C40F23A9B345486B8EF6C0BCC5EC9A21ECC12BDF477617B0E3E6EE1988B0918092DE46B78B74FD8EF8B1B42C1E32744DAF0D94FBC46D4523271BEE029B1BEF43136EDE8D86A8D1F65CBBCA80538E968F32C1B0F6D1888F3A83514969994CBA8128251D31BBC2C506F9DDEE6B53FD3</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 12 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>397C86C824FDC6F1D0B966BD21A829D6F62C40F23A9B345486B8EF6C0BCC5EC9A21ECC12BDF477617B0E3E6EE1988B0918092DE46B78B74FD8EF8B1B42C1E32744DAF0D94FBC46D4523271BEE029B1BEF43136EDE8D86A8D1F65CBBCA80538E968F32C1B0F6D1888F3A83514969994CBA8128251D31BBC2C506F9DDEE6B53FD3</ciphertext>
-		<plaintext>47AB927609FD75A7E20885EB7E4CFF0A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 13 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>939AF059CF096A38F696ABF7E903FEE9931059018839AF59F12FD404A56A4A3417339C87BC8EB1A3C9911969948A4C50EF2CE29118AA98DDC0C57F5DD7452E22</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 14 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>939AF059CF096A38F696ABF7E903FEE9931059018839AF59F12FD404A56A4A3417339C87BC8EB1A3C9911969948A4C50EF2CE29118AA98DDC0C57F5DD7452E22</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 15 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>9BFEE36BFB6A5B5A06D8F75F4C36F88BB53A30192968EEB8F0CA9A083766A218DF68A719C1D142990522545B6154C3F3E206</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 16 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>9BFEE36BFB6A5B5A06D8F75F4C36F88BB53A30192968EEB8F0CA9A083766A218DF68A719C1D142990522545B6154C3F3E206</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 17 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-		<ciphertext>9B20439E8572CFFC1218B6CCFBEEB46BEAE8F53C49BA2CE09E9023F3C5E3B73ECC9B5B388972BA018FE4D34F12B7674239A4EAF76A7D712B2B67EFDA0A0C992438B0A25CE7C9ED56F5E8AF6AABC7B94C55D0F4524750B9194E7C2210239448A90C59AC4AECBEE1660D02F24B2AA46B6C8C3D61344049327C964A137D4FBA91DF</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 18 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>9B20439E8572CFFC1218B6CCFBEEB46BEAE8F53C49BA2CE09E9023F3C5E3B73ECC9B5B388972BA018FE4D34F12B7674239A4EAF76A7D712B2B67EFDA0A0C992438B0A25CE7C9ED56F5E8AF6AABC7B94C55D0F4524750B9194E7C2210239448A90C59AC4AECBEE1660D02F24B2AA46B6C8C3D61344049327C964A137D4FBA91DF</ciphertext>
-		<plaintext>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 19 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>72BA7B987C4DBF1611B781F321498FDBA3962E0B62F502A726B17CE511984B771F474C23F9F6532A1FDC30C160596D83A13198CCCE6EC4E22A204977682FDD2D</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 20 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>72BA7B987C4DBF1611B781F321498FDBA3962E0B62F502A726B17CE511984B771F474C23F9F6532A1FDC30C160596D83A13198CCCE6EC4E22A204977682FDD2D</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 21 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>41DDDCD534E5716F20C21FED7F93B64802A55180E8896D2B770721A48FC4C2C3E67E5CDCD552C8F5782D8CA318A338170648</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 22 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>41DDDCD534E5716F20C21FED7F93B64802A55180E8896D2B770721A48FC4C2C3E67E5CDCD552C8F5782D8CA318A338170648</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 23 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>23</plaintext>
-		<ciphertext>59B7E7F8DB3D1E9BD58E1AB534F5D2CB9D28CF03BF8FC468F488940380CDF853DA52B10BAB8D0046A296E5EC98830EC350605185EF6A4C290A087DEEB4BD990996733B7161685C2A8971B6214B8F84A521B0AB5709A21C8C9D7A847C73E34865AFC3CA8B5EF85D720AE370E6147FC22206ACA77CFCE5A0FC46ACD9F446DE537A</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 24 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>59B7E7F8DB3D1E9BD58E1AB534F5D2CB9D28CF03BF8FC468F488940380CDF853DA52B10BAB8D0046A296E5EC98830EC350605185EF6A4C290A087DEEB4BD990996733B7161685C2A8971B6214B8F84A521B0AB5709A21C8C9D7A847C73E34865AFC3CA8B5EF85D720AE370E6147FC22206ACA77CFCE5A0FC46ACD9F446DE537A</ciphertext>
-		<plaintext>23</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 25 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</plaintext>
-		<ciphertext>403325E9263F5CDBD03FAE2E5D6CDF884E8B2F5AE8D0AEBD27C950E4D69C9499B0A5435B0024CE35B92383F1E864C6426A97AC6DAC42EA70AEE000C7B9ECA83F</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 26 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>403325E9263F5CDBD03FAE2E5D6CDF884E8B2F5AE8D0AEBD27C950E4D69C9499B0A5435B0024CE35B92383F1E864C6426A97AC6DAC42EA70AEE000C7B9ECA83F</ciphertext>
-		<plaintext>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 27 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</plaintext>
-		<ciphertext>0C2EF71B3106368FEB8CA6B0542480372423058C40BDE47C7DD5E828A8E16DE588324DE8C4035AF6CAE44F24B89097324FBF</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 28 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>0C2EF71B3106368FEB8CA6B0542480372423058C40BDE47C7DD5E828A8E16DE588324DE8C4035AF6CAE44F24B89097324FBF</ciphertext>
-		<plaintext>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 29 (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</plaintext>
-		<ciphertext>2D3CD1EAE8BC3AF7D85B57937CBBBEC362486FA1FD7161F7085597D0670AFF84DE33ADEE71AEC4AA3717876E12FBF76286E0AB0428729169977EE6FEDF108CC37BB991AC059B8E80323199CDA22FB29CA7FD93CFD1416B94D6491FCF63C39B715B129101251E295E0A089450163D8470A8573EF459492C135C2BE9B0C5D48D96</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 30 (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>2D3CD1EAE8BC3AF7D85B57937CBBBEC362486FA1FD7161F7085597D0670AFF84DE33ADEE71AEC4AA3717876E12FBF76286E0AB0428729169977EE6FEDF108CC37BB991AC059B8E80323199CDA22FB29CA7FD93CFD1416B94D6491FCF63C39B715B129101251E295E0A089450163D8470A8573EF459492C135C2BE9B0C5D48D96</ciphertext>
-		<plaintext>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 31 (test a failure) (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>1C1BF2EC65CD153F377B0EDD465BEAB2E912C04E3E3E2C2E25C15E6570A505702AE1C453FAC4767DEACC0CF96EB10D7A924FA9D2BAAF6C63F772D2E3AB6B9E06</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 32 (test a failure) (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<ciphertext>1C1BF2EC65CD153F377B0EDD465BEAB2E912C04E3E3E2C2E25C15E6570A505702AE1C453FAC4767DEACC0CF96EB10D7A924FA9D2BAAF6C63F772D2E3AB6B9E06</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 33 (test a failure) (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>6A562105B53906C5DC4BEBBF561A17FD0DD7B1AA9519C0ACB0A05FBB2D1855DDC45A892E9FBEDDF47C247D6E93A3F054B898</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 34 (test a failure) (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<ciphertext>6A562105B53906C5DC4BEBBF561A17FD0DD7B1AA9519C0ACB0A05FBB2D1855DDC45A892E9FBEDDF47C247D6E93A3F054B898</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 35 (test a failure) (RSAEncryptVector)</actionname>
-	<actiontype>RSAEncryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<plaintext>54859B342C49EA2A</plaintext>
-		<ciphertext>31A9C39F6FF0FDB13FBD583B1AD649CDEB487F73E4534C5ED09C555D01FFB2FF8864BAC5975C0035F61929072656855AE0C2F493CC098C6C0E84C6E60756E3E1E8FD89399FFE49A47AFDA2DCF9A3861A44F70623C206FF011956499330EFB9AD1EC1FCDBB50CE22A747063C821C9511A5B5541F223B3346181FC4FCEFF49B305</ciphertext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 36 (test a failure) (RSADecryptVector)</actionname>
-	<actiontype>RSADecryptVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<ciphertext>31A9C39F6FF0FDB13FBD583B1AD649CDEB487F73E4534C5ED09C555D01FFB2FF8864BAC5975C0035F61929072656855AE0C2F493CC098C6C0E84C6E60756E3E1E8FD89399FFE49A47AFDA2DCF9A3861A44F70623C206FF011956499330EFB9AD1EC1FCDBB50CE22A747063C821C9511A5B5541F223B3346181FC4FCEFF49B305</ciphertext>
-		<plaintext>54859B342C49EA2A</plaintext>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 37 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786C08484F59280886A19919BECA53711819B2D2DD82D702E2F6DE991DC89CB968C01B1315A742B5BE783A781B5B1286F46DAFE29DE675C64A3BA4781DEF8F19</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 38 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786C08484F59280886A19919BECA53711819B2D2DD82D702E2F6DE991DC89CB968C01B1315A742B5BE783A781B5B1286F46DAFE29DE675C64A3BA4781DEF8F19</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-//	Test vector from cryptopp "Everybody gets Friday off"
-<action>
-	<actionname>***NEW*** CRT sign test RSA test vector 37A (RSASignVector)</actionname>
-	<actiontype>RSASignVectorCRT</actiontype>
-	<actionbody>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<P>33D48445C859E52340DE704BCDDA065FBB4058D740BD1D67D29E9C146C11CF61</P>
-		<Q>335E8408866B0FD38DC7002D3F972C67389A65D5D8306566D5C4F2A5AA52628B</Q>
-		<dP>045EC90071525325D3D46DB79695E9AFACC4523964360E02B119BAA366316241</dP>
-		<dQ>15EB327360C7B60D12E5E2D16BDCD97981D17FBA6B70DB13B20B436E24EADA59</dQ>
-		<qInv>2CA6366D72781DFA24D34A9A24CBC2AE927A9958AF426563FF63FB11658A461D</qInv>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** verify CRT sign RSA test vector 37B (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** RSA test vector 38A (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<privateExponent>0123C5B61BA36EDB1D3679904199A89EA80C09B9122E1400C09ADCF7784676D01D23356A7D44D6BD8BD50E94BFC723FA87D8862B75177691C11D757692DF8881</privateExponent>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>***NEW*** RSA test vector 38B (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>0A66791DC6988168DE7AB77419BB7FB0C001C62710270075142942E19A8D8C51D053B3E3782A1DE5DC5AF4EBE99468170114A1DFE67CDC9A9AF55D655620BBAB</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>3020300C06082A864886F70D0202050004101D32DE009F9C56EA4636D39AAFFDAEA1</digestInfo>
-		<signature>05FA6A812FC7DF8BF4F2542509E03E846E11B9C620BE2009EFB440EFBCC669216994AC04F341B57D05202D428FB2A27B5C77DFD9B15BFC3D559353503410C1E1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 40 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>6268EE3023E0CCC02FDF5896C4E1C87EEEE82EFE5C87EFC3C41D3E976FD286F35A0678ED0157DC06F3F889B15CAF91C783EF</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 41 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B1465F0B5271A8C700D60A0717C38A48ECB67CE2592ADAFC5C672F6AA21319477CFB3A407587F7A2BF004BB709273051F1D81DC3B5E7409DFEB0E2B8DEE9780FBD0045E999A2D9C8313887BF16E380533E8E505DB231C22DCC72A5AF4B92E5D7EB1F3F37E6763C2C650A9F641992ABD858AB40AAADDAB598F9A81C4C99E68D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 42 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B1465F0B5271A8C700D60A0717C38A48ECB67CE2592ADAFC5C672F6AA21319477CFB3A407587F7A2BF004BB709273051F1D81DC3B5E7409DFEB0E2B8DEE9780FBD0045E999A2D9C8313887BF16E380533E8E505DB231C22DCC72A5AF4B92E5D7EB1F3F37E6763C2C650A9F641992ABD858AB40AAADDAB598F9A81C4C99E68D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 43 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>32BCB348294467EA925B0B8E0420E3B6482A9F12C42081B4A0EB76A807D4A35CBB8E49C5BB958300D5713A15748660AF8EDD1EDDF674AFECD270813BB2420550</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 44 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>32BCB348294467EA925B0B8E0420E3B6482A9F12C42081B4A0EB76A807D4A35CBB8E49C5BB958300D5713A15748660AF8EDD1EDDF674AFECD270813BB2420550</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 45 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>301786087160F4EEB99B005A56457792FC9264E28549F2AC4C65982BC1AF797C09E3ACFABE703F5C72754BD58D0403D4433C</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 46 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>301786087160F4EEB99B005A56457792FC9264E28549F2AC4C65982BC1AF797C09E3ACFABE703F5C72754BD58D0403D4433C</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 47 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>6B68F9744C7F6535B4AE3A09133FB573C73DECB13ABACB0D3E31CDECC206F5023A91F7634F46350EF06D840420CAEB8029DAC5DCFF1C1A0C7EB33D60E348FC079A4CF478DAB02BEFCA8242FE5CBF52BE39CAB47B16D61C77A1B36B52D371C846BA330A4B21B73C0E1D7D6732EFBA08B06AB4B4FB07E19D89A5B9398A8D093A40</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 48 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>47AB927609FD75A7E20885EB7E4CFF0A</digestInfo>
-		<signature>6B68F9744C7F6535B4AE3A09133FB573C73DECB13ABACB0D3E31CDECC206F5023A91F7634F46350EF06D840420CAEB8029DAC5DCFF1C1A0C7EB33D60E348FC079A4CF478DAB02BEFCA8242FE5CBF52BE39CAB47B16D61C77A1B36B52D371C846BA330A4B21B73C0E1D7D6732EFBA08B06AB4B4FB07E19D89A5B9398A8D093A40</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 49 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>069D76426B5096CDFB1F37F4ABABFBD9C2786174D35F32A83250EB22600A493C742135F811122899A9D1060CBB4DE0DA41C8073B6DC1DC401DD2536A514EE966</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 50 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>069D76426B5096CDFB1F37F4ABABFBD9C2786174D35F32A83250EB22600A493C742135F811122899A9D1060CBB4DE0DA41C8073B6DC1DC401DD2536A514EE966</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 51 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>56CB9D7521600FAC739A7BA2F64C8833EFA9B631970F8C80AC56F5D06B48C9DE98BEBBAEAA71908BF4ECB3BD9CA074EFE491</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 52 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>56CB9D7521600FAC739A7BA2F64C8833EFA9B631970F8C80AC56F5D06B48C9DE98BEBBAEAA71908BF4ECB3BD9CA074EFE491</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 53 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>4F2A49D3F53D380CF3812A21F4CA61CA39920C4F5E7D16757C8BBC9C3EB9FCF3146EF9FCCF3E674B9792B764CC7486342760D42DC08C94BC9126B7601C7287BE98CAE6D1FFB9B2CBA28536C87D84B12B6F8913F6A373399CA7BA3AE507DCA8054575030D192DBC52CC28F54AFCCE7A0370C577548088709634B2B332EF429C10</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 54 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>0B0A7CEB6C1745531DA724AD438BF74689C39F095E883ED88E04363849C00F41</digestInfo>
-		<signature>4F2A49D3F53D380CF3812A21F4CA61CA39920C4F5E7D16757C8BBC9C3EB9FCF3146EF9FCCF3E674B9792B764CC7486342760D42DC08C94BC9126B7601C7287BE98CAE6D1FFB9B2CBA28536C87D84B12B6F8913F6A373399CA7BA3AE507DCA8054575030D192DBC52CC28F54AFCCE7A0370C577548088709634B2B332EF429C10</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 55 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>242272B19E612D4E1B1702CBE2EE64945A4DC1F8EE3C84D1FDA317517DB723D84712A0FD13E898E578E979DFAEC3FCB7B3F0CEDC3B859E287AA2F3C22768B18D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 56 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>242272B19E612D4E1B1702CBE2EE64945A4DC1F8EE3C84D1FDA317517DB723D84712A0FD13E898E578E979DFAEC3FCB7B3F0CEDC3B859E287AA2F3C22768B18D</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 57 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>9D12DA842EE999C9EDE51E1C7130C2B61AAD5CEBD85C38F20345D0ABAEAAC651FB34B35C8D983CABC985CD0F29EAB1EEFD46</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 58 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>9D12DA842EE999C9EDE51E1C7130C2B61AAD5CEBD85C38F20345D0ABAEAAC651FB34B35C8D983CABC985CD0F29EAB1EEFD46</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 59 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>23</digestInfo>
-		<signature>1938080C595F1C2278818BB3B6D9D400FBF6DD7FD6B1E5A1E568DAF69A1A538158F74866916C1A19386D09284F2478BAB8D6C932F2F5756596449FB55E72B103AB68D17592A3928AE46D2350673C8E9BD69F36E96090D30A02AB72E7F4C35D815D2DEE660B2C4098367815B5E10B9008FA701AFF9E1D2B756564064455FCE4A1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 60 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>23</digestInfo>
-		<signature>1938080C595F1C2278818BB3B6D9D400FBF6DD7FD6B1E5A1E568DAF69A1A538158F74866916C1A19386D09284F2478BAB8D6C932F2F5756596449FB55E72B103AB68D17592A3928AE46D2350673C8E9BD69F36E96090D30A02AB72E7F4C35D815D2DEE660B2C4098367815B5E10B9008FA701AFF9E1D2B756564064455FCE4A1</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 61 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</digestInfo>
-		<signature>07AE66D658801E68EF06A8F448DE504F5492457B2891F491AAB3C1DAFBE61F5ADB478E77A06F42F7985E2854A83980A70FA394AA955AF279D00215D778482997</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 62 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>6679F38482069906CDF1DF3FDDB537744676BA0DB8D682B6826F31B1D8230CCA4E392877053FAC5A13FF3A39352EAFB185E4D060F4</digestInfo>
-		<signature>07AE66D658801E68EF06A8F448DE504F5492457B2891F491AAB3C1DAFBE61F5ADB478E77A06F42F7985E2854A83980A70FA394AA955AF279D00215D778482997</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 63 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</digestInfo>
-		<signature>7AA56CFBA701353E0402AAC8B71DF6E33DB3F7E2D1B96385D566FCAEF7243AB7170778FE4E6544C306003B393AB82F3AA4C3</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 64 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>CDA22C4B6A20000EADAD74BDB304BDC5727302119D6D3775665AF2E6476579807C92EC09F533EA</digestInfo>
-		<signature>7AA56CFBA701353E0402AAC8B71DF6E33DB3F7E2D1B96385D566FCAEF7243AB7170778FE4E6544C306003B393AB82F3AA4C3</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 65 (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</digestInfo>
-		<signature>363E0A0A5672F9BAB4B4A8EE3F236C12B439D63B6B1893BC025E225AA1DF42C9A09951CFAC8B6AA8098502A347A2C5D8B9FE0D47F34E0848539D24D0B32B79669276597FE082AC24BE8DA961FA184739EF04915ACFDAA172197EED5EB7EB2999FA8B327AF4A9419E64D9D314D67770A006C99C97E90715540880661F9187860A</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 66 (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>0E2561AF55EB9C10904FD427FD0D1DF438BD9ED0C71C480B50A1D3F1B4DBBA2D0081596E61433550F95F7020B247487F32F7E82E50C180454B5CF8456AA00F33F1EC9AB179F5CC921C3012B0557B490693A8305A68798A219AD76870F8A1F10A528575F92D26D31B37DCDC608777CB9757004FF181</digestInfo>
-		<signature>363E0A0A5672F9BAB4B4A8EE3F236C12B439D63B6B1893BC025E225AA1DF42C9A09951CFAC8B6AA8098502A347A2C5D8B9FE0D47F34E0848539D24D0B32B79669276597FE082AC24BE8DA961FA184739EF04915ACFDAA172197EED5EB7EB2999FA8B327AF4A9419E64D9D314D67770A006C99C97E90715540880661F9187860A</signature>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 67 (test a failure) (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<privateExponent>0A033748626487695F5F30BC38B98B44C2CD2DFF434098CD20D8A138D090BF64797C3FA7A2CDCB3CD1E0BDBA2654B4F9DF8E8AE59D733D9F33B301624AFD1D51</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786D0A4B4B5C2E0F8EA89312B2C75D7E0808A0C1C997C115FAEFC48201D582A648E13930318264929651105337763CA9C45C9DD1A9D343F172029E4321D2B126</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 68 (test a failure) (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>AA36ABCE88ACFDFF55523C7FC4523F90EFA00DF3774A259F2E62B4C5D99CB5ADB300A0285E5301930E0C70FB6876939CE616CE624A11E0086D341EBCACA0A1F5</modulus>
-		<publicExponent>11</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>786D0A4B4B5C2E0F8EA89312B2C75D7E0808A0C1C997C115FAEFC48201D582A648E13930318264929651105337763CA9C45C9DD1A9D343F172029E4321D2B126</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 69 (test a failure) (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<privateExponent>6CAFBC6094B3FE4C72B0B332C6FB25A2B76229804E6865FCA45A74DF0F8FB8413B52C0D0E53D9B590FF19BE79F49DD21E5EB</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>6269EC3327E5CAC727D6529DC8ECC671FEF93CED4892F9D4DC04248C73CF98EC7A275ACE2572FA21DBD1A39A7082BFE8B3DE</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 70 (test a failure) (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3079A90DF0DFD72AC090CCC2A78B87413133E40759C98FAF8204F358A0B263C6770E783A93B6971B73779D2717BE83477CF</modulus>
-		<publicExponent>03</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>6269EC3327E5CAC727D6529DC8ECC671FEF93CED4892F9D4DC04248C73CF98EC7A275ACE2572FA21DBD1A39A7082BFE8B3DE</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 71 (test a failure) (RSASignVector)</actionname>
-	<actiontype>RSASignVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>85B3B3D4EBF6C0F443A7319A7F8E903DDC1747CE6C33C447E143DE9203199A632F3BA1F0877010CE9B49D8F21705E7B818FE796D6ADB4D70FD0F0577036631948DD21FFE77157AAF978857E4358DED82B58CC85F5EF70480FFD7BE0848DAFB983543B2E867F83155084D8541A14B5EA6CF5FCB651127B2C64383114F02A14CB1</privateExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B0445C0F5777AFCF09DC010B1ACD8558FDA46FF64C3CCDE4457D3476BF0D06675DD9196450A1D08A962A609B24091F61C0EA2EF780D177A5C78AD984E3D7474FFC4206ADDCE49E807872CCF35BADCF036FDC0309E76795759528FEF316CCBAB78A7D5C5383105B440C60F40874FCC4A829D933DED8ACC2E080D26730E498F2</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>RSA test vector 72 (test a failure) (RSAVerifyVector)</actionname>
-	<actiontype>RSAVerifyVector</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>010001</publicExponent>
-		<digestInfo>54859B342C49EA2A</digestInfo>
-		<signature>A2B0445C0F5777AFCF09DC010B1ACD8558FDA46FF64C3CCDE4457D3476BF0D06675DD9196450A1D08A962A609B24091F61C0EA2EF780D177A5C78AD984E3D7474FFC4206ADDCE49E807872CCF35BADCF036FDC0309E76795759528FEF316CCBAB78A7D5C5383105B440C60F40874FCC4A829D933DED8ACC2E080D26730E498F2</signature>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>1024 bit dsa key, self sign test 1</actionname>
-	<actiontype>DSASignFB</actiontype>
-	<actionbody>
-			<seed>AFCA9DCEC8E645FB67E26C94A786E607A903A919</seed>
-			<keybits>1024</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>512 bit dsa key, self sign test 2</actionname>
-	<actiontype>DSASignFB</actiontype>
-	<actionbody>
-			<seed>942662DBB3B05841A1CA25866B1F24E6647730A0</seed>
-			<keybits>512</keybits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA Prime Generation test (from DSS appendix 5)</actionname>
-	<actiontype>DSAPrimeGen</actiontype>
-	<actionbody>
-		<keybits>512</keybits>
-		<seed>D5014E4B60EF2BA8B6211B4062BA3224E0427DD3</seed>
-		<p>8DF2A494492276AA3D25759BB06869CBEAC0D83AFB8D0CF7CBB8324F0D7882E5D0762FC5B7210EAFC2E9ADAC32AB7AAC49693DFBF83724C2EC0736EE31C80291</p>
-		<q>C773218C737EC8EE993B4F2DED30F48EDACE915F</q>
-		<c>105</c>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA test vector 1 (DSASignVector)</actionname>
-	<actiontype>DSASignVector</actiontype>
-	<actionbody>
-		<p>8DF2A494492276AA3D25759BB06869CBEAC0D83AFB8D0CF7CBB8324F0D7882E5D0762FC5B7210EAFC2E9ADAC32AB7AAC49693DFBF83724C2EC0736EE31C80291</p>
-		<q>C773218C737EC8EE993B4F2DED30F48EDACE915F</q>
-		<g>626D027839EA0A13413163A55B4CB500299D5522956CEFCB3BFF10F399CE2C2E71CB9DE5FA24BABF58E5B79521925C9CC42E9F6F464B088CC572AF53E6D78802</g>
-		<x>2070B3223DBA372FDE1C0FFC7B2E3B498B260614</x>
-		//Note that the actual k isn't used, its here in case you want to test
-		//it in another crypto library.  Our DSASign NewRandomL adds 1 to the
-		//value given for algorithmic reasons (see TInteger::RandomizeL if you
-		//care)
-		<actualk>BFDFAADE2B6B371ACF54E2500F71621457AD8D35</actualk>
-		<k>BEDFAADE2B6B371ACF54E2500F71621457AD8D35</k>
-		<m>abc</m>
-		<r>8BAC1AB66410435CB7181F95B16AB97C92B341C0</r>
-		<s>41E2345F1F56DF2458F426D155B4BA2DB6DCD8C8</s>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA test vector 2 (DSAVerifyVector)</actionname>
-	<actiontype>DSAVerifyVector</actiontype>
-	<actionbody>
-		<p>8DF2A494492276AA3D25759BB06869CBEAC0D83AFB8D0CF7CBB8324F0D7882E5D0762FC5B7210EAFC2E9ADAC32AB7AAC49693DFBF83724C2EC0736EE31C80291</p>
-		<q>C773218C737EC8EE993B4F2DED30F48EDACE915F</q>
-		<g>626D027839EA0A13413163A55B4CB500299D5522956CEFCB3BFF10F399CE2C2E71CB9DE5FA24BABF58E5B79521925C9CC42E9F6F464B088CC572AF53E6D78802</g>
-		<y>19131871D75B1612A819F29D78D1B0D7346F7AA77BB62A859BFD6C5675DA9D212D3A36EF1672EF660B8C7C255CC0EC74858FBA33F44C06699630A76B030EE333</y>
-		<m>abc</m>
-		<r>8BAC1AB66410435CB7181F95B16AB97C92B341C0</r>
-		<s>41E2345F1F56DF2458F426D155B4BA2DB6DCD8C8</s>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA test vector 3 (test a failure) (DSASignVector) first byte in r changed from 8B to 9B</actionname>
-	<actiontype>DSASignVector</actiontype>
-	<actionbody>
-		<p>8DF2A494492276AA3D25759BB06869CBEAC0D83AFB8D0CF7CBB8324F0D7882E5D0762FC5B7210EAFC2E9ADAC32AB7AAC49693DFBF83724C2EC0736EE31C80291</p>
-		<q>C773218C737EC8EE993B4F2DED30F48EDACE915F</q>
-		<g>626D027839EA0A13413163A55B4CB500299D5522956CEFCB3BFF10F399CE2C2E71CB9DE5FA24BABF58E5B79521925C9CC42E9F6F464B088CC572AF53E6D78802</g>
-		<x>2070B3223DBA372FDE1C0FFC7B2E3B498B260614</x>
-		//Note that the actual k isn't used, its here in case you want to test
-		//it in another crypto library.  Our DSASign NewRandomL adds 1 to the
-		//value given for algorithmic reasons (see TInteger::RandomizeL if you
-		//care)
-		<actualk>BFDFAADE2B6B371ACF54E2500F71621457AD8D35</actualk>
-		<k>BEDFAADE2B6B371ACF54E2500F71621457AD8D35</k>
-		<m>abc</m>
-		<r>9BAC1AB66410435CB7181F95B16AB97C92B341C0</r>
-		<s>41E2345F1F56DF2458F426D155B4BA2DB6DCD8C8</s>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA test vector 4 (test a failure) (DSAVerifyVector) message changed from "abc" to "abcd"</actionname>
-	<actiontype>DSAVerifyVector</actiontype>
-	<actionbody>
-		<p>8DF2A494492276AA3D25759BB06869CBEAC0D83AFB8D0CF7CBB8324F0D7882E5D0762FC5B7210EAFC2E9ADAC32AB7AAC49693DFBF83724C2EC0736EE31C80291</p>
-		<q>C773218C737EC8EE993B4F2DED30F48EDACE915F</q>
-		<g>626D027839EA0A13413163A55B4CB500299D5522956CEFCB3BFF10F399CE2C2E71CB9DE5FA24BABF58E5B79521925C9CC42E9F6F464B088CC572AF53E6D78802</g>
-		<y>19131871D75B1612A819F29D78D1B0D7346F7AA77BB62A859BFD6C5675DA9D212D3A36EF1672EF660B8C7C255CC0EC74858FBA33F44C06699630A76B030EE333</y>
-		<m>abcd</m>
-		<r>8BAC1AB66410435CB7181F95B16AB97C92B341C0</r>
-		<s>41E2345F1F56DF2458F426D155B4BA2DB6DCD8C8</s>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA Verify - test a failure</actionname>
-	<actiontype>DSAVerifyVector</actiontype>
-	<actionbody>
-		<p>8BEB66ADFBA28FC4B18E05F48343F2D8F924CF9E8745F5D3611B034A0186EC00C548944D505A0CD7503F3B58243D31677B91572326D05CE5F905F4AE523F1A7F</p>
-		<q>DCC1021CA278CBAA31B0ED3B7256AF4B98A40E69</q>
-		<g>727D17D06E18163485DF93E2734D5B9A686C41F91C599CE47FD0020598EDC5F95E746FFA91B13B862165915CF85EC9D6A9BEFC404B706F83487BA759BD03BDE4</g>
-		<y>3A651CAD007155C6881209DBCB453BB573DFF0EEA12D068EE84D413F1A8B617ADE65348B0AA1A1E75D49FD943E031FBB9539C5E8F2BC04CCEF486AEB691C7729</y>
-		<hexm>3DB3CC73D10A3473AE6BC86AA58C1502E2CD2F0D</hexm>
-		<r>BD074766C30C37FCD2DA51D0D89C80086A5D511A</r>
-		<s>5EEA2C7C85A43079AAFC58689353DCBF2E0B19F3</s>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DSA Verify - test a failure</actionname>
-	<actiontype>DSAVerifyVector</actiontype>
-	<actionbody>
-		<p>F030274963050EA96BF84D38B64F244C63F97101923F9D7571F03E473A9BF81F4AD9E529DA2189CABD4CCD034E1318B68E1595E5C555DDF93E229C531FCE62A46A3AEA5F9A3474116E4E11561F5B2FEAD359F7E9402F36636B41B2EBE6121C6471812C82DCB3D22BAF762E5BE5F50A2FFD92105F5EDD7B4BE1BC482B6E2CC0D3</p>
-		<q>C3A8B0FCF311B908EBE3FB25DEB50D4536CF5077</q>
-		<g>A33FF02A636AC114FB8463C30FB91B4F90304048C90973C8AF00424F76952D07805EBD7FCFD77D5F8D481692FFAAF7A17A02F5221FFAACCF77882C92E25A32315B68769FD444771A297110ADB9F9B1D0A0FB7ED7BB250E7CCE9CA5CF89A603061BA1A659BF789912E5F21D630F601C9A04C9D69FAD6735C04498C1214E0D5F9D</g>
-		<y>4CA88EB9E2E75BB4398250AFA9DD4B98FE1835FDB3B8D97F145448A9F4E2C4E0D4627450729D5177FDC549EBDC3A27CC14FEC48F13F00E9D0CDF4A2CABD44CBB573613059CC64FDAFF73E8EECD1BF62FF2920C42A3F925BF8164E3243F8FD8F9048B64D6526CF0E5D29FB3EE6BC77872FE241F1FA9CCD5FE87340DB7D4C3048B</y>
-		<hexm>91FEAD81D9BBBC9C8C74D4593476B15F446BA1EF</hexm>
-		<r>5787B406021EF3AF003D55E138FE3586997A22AC</r>
-		<s>20D3CC4DEDEDD08DC64615498F778D23C43D46D2</s>
-	</actionbody>
-	<actionresult>
-		<result>EFalse</result>
-	</actionresult>
-</action>
-<action>
-	<actionname>DH key agreement</actionname>
-	<actiontype>DHVector</actiontype>
-	<actionbody>
-		<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-		<g>02</g>
-	</actionbody>
-	<actionresult>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA Parameter Test 1 (RSAPublicKeyParams)</actionname>
-	<actiontype>RSAPublicKeyParams</actiontype>
-	<actionbody>
-		<modulus>00</modulus>
-		<publicExponent>00</publicExponent>
-	</actionbody>
-	<actionresult>
-		<return>KErrArgument</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA Parameter Test 2 (RSAPrivateKeyParams)</actionname>
-	<actiontype>RSAPrivateKeyParams</actiontype>
-	<actionbody>
-		<modulus>00</modulus>
-		<privateExponent>00</privateExponent>
-	</actionbody>
-	<actionresult>
-		<return>KErrArgument</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA Parameter Test 3 (RSAPrivateKeyCRTParams)</actionname>
-	<actiontype>RSAPrivateKeyCRTParams</actiontype>
-	<actionbody>
-		<modulus>00</modulus>
-		<P>00</P>
-		<Q>00</Q>
-		<dP>00</dP>
-		<dQ>00</dQ>
-		<qInv>00</qInv>
-	</actionbody>
-	<actionresult>
-		<return>KErrArgument</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA Exponent Test 1 (RSAPublicKeyParams)</actionname>
-	<actiontype>RSAPublicKeyParams</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<publicExponent>01</publicExponent>
-	</actionbody>
-	<actionresult>
-		<return>KErrArgument</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>RSA Exponent Test 2 (RSAPrivateKeyParams)</actionname>
-	<actiontype>RSAPrivateKeyParams</actiontype>
-	<actionbody>
-		<modulus>A3504534C29C59CA9A34CBB95A18D435FE66FBC7DECD572B91C80F72EE0786D4DD92F8B8416D54BDE12DF2E83F8DC9B1642980BD31852650A5A8F6D6D8C6A9BE965B34FE7659AC5DD372AB91277B2C9CEB797C4B4B5888E33C0D2CFBE9AAD53E158475ED88884D5DCC663AF5AAA62030E3799FAA1FA47AB2665208597F358497</modulus>
-		<privateExponent>01</privateExponent>
-	</actionbody>
-	<actionresult>
-		<return>KErrArgument</return>
-		<result>ETrue</result>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tasymmetric/tasymmetricmain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "t_testhandler.h"
-#include "tscripttests.h"
-#include "trsaencryptfb.h"
-#include "trsasignfb.h"
-#include "tdsasignfb.h"
-#include "trsavector.h"
-#include "tdsavector.h"
-#include "tdsasignfb.h"
-#include "tdsaprimegen.h"
-#include "performancetest.h"
-#include "tdhvector.h"
-#include "trsaparams.h"
-
-LOCAL_D void callExampleL() // initialize and call example code under cleanup stack
-    {
-	START_SCRIPT_LIST
-	SCRIPT_ITEM(CRSAEncryptFB,_L8("RSAEncryptStandardAndCRTFB")),
-	SCRIPT_ITEM(CRSASignFB,_L8("RSASignStandardAndCRTFB")),
-	SCRIPT_ITEM(CDSASignFB,_L8("DSASignFB")),
-	SCRIPT_ITEM(CRSAEncryptVector,_L8("RSAEncryptVector")),
-	SCRIPT_ITEM(CRSADecryptVector,_L8("RSADecryptVector")),
-	SCRIPT_ITEM(CRSADecryptVectorCRT,_L8("RSADecryptVectorCRT")),
-	SCRIPT_ITEM(CRSASignVector,_L8("RSASignVector")),
-	SCRIPT_ITEM(CRSASignVectorCRT,_L8("RSASignVectorCRT")),
-	SCRIPT_ITEM(CRSAVerifyVector,_L8("RSAVerifyVector")),
-	SCRIPT_ITEM(CDSASignVector,_L8("DSASignVector")),
-	SCRIPT_ITEM(CDSAVerifyVector,_L8("DSAVerifyVector")),
-	SCRIPT_ITEM(CDSASignFB,_L8("DSASignFB")),
-	SCRIPT_ITEM(CDSAPrimeGen,_L8("DSAPrimeGen")),
-	SCRIPT_ITEM(CPerformanceTest, _L8("PerformanceTestSettings")),
-	SCRIPT_ITEM(CDHVector,_L8("DHVector")),
-	SCRIPT_ITEM(CRSATestPublicKey,_L8("RSAPublicKeyParams")),
-	SCRIPT_ITEM(CRSATestPrivateKey,_L8("RSAPrivateKeyParams")),
-	SCRIPT_ITEM(CRSATestPrivateKeyCRT,_L8("RSAPrivateKeyCRTParams"))
-	END_SCRIPT_LIST
-
-//	Either run the top level build and test script or, if running this test specifically, 
-//	uncomment the following and it'll run them all one after the other
-
-	//get the system drive.	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TBuf<64> scriptFile = sysDrive.Name();
-	scriptFile.Append(_L("\\tasymmetric\\tasymmetrictests.txt"));
-	TBuf<64> logFile = sysDrive.Name();
-	logFile.Append(_L("\\tasymmetric\\tasymmetrictests.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile);
-	
-/* The test framework can't handle more than one script
- * at a time.  If you want to run all of the asymmetric tests from the command
- * line, uncomment this next section.
-#ifndef _DEBUG
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tasymmetric\\asymmetricPerformance.txt"),
-		_L("c:\\tasymmetric\\asymmetricPerformance.log"));	
-#endif
-*/
-    }
-
-GLDEF_C TInt E32Main() // main function called by E32
-    {
-	__UHEAP_MARK;
-	CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack
-	CPerformance::NewL();
-	TRAPD(error, callExampleL());
-	CPerformance::ClosePerformanceTester();
-	__ASSERT_ALWAYS(!error,User::Panic(_L("tasymmetricmain"),error));
-	delete cleanup; // destroy clean-up stack
-	__UHEAP_MARKEND;
-	return 0;
-    }
--- a/crypto/weakcrypto/test/tasymmetric/tbrokenrandom.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "tbrokenrandom.h"
-
-/* CRandomSetSeed */
-CRandomSetSource::CRandomSetSource(const TDesC8& aSource)
-    {
-	SetSource(aSource);
-    }
-
-void CRandomSetSource::GenerateBytesL(TDes8& aDest) 
-    {
-	if(aDest.Size() <= iValue.Size() - (TInt)iCounter)
-		{
-		for (int i = 0 ; i < aDest.Length() ; ++i)
-			{
-			aDest[i] = iValue[iCounter];
-			iCounter++;
-			} 
-		}
-	else
-		{
-		TRandom::RandomL(aDest);
-		}
-    }
-
-void CRandomSetSource::SetSource(const TDesC8& aSource)
-	{
-	iValue.Set(aSource);
-	iCounter = 0;
-	}
-
-/* CRandomIncrementing */
-CRandomIncrementing::CRandomIncrementing(TUint aInitialValue)
-    {
-	iValue = aInitialValue;
-    }
-
-void CRandomIncrementing::GenerateBytesL(TDes8& aDest) 
-    {
-    for (int i = 0 ; i < aDest.Length() ; ++i)
-        {
-        aDest[i] = (char)(iValue)++;
-        }
-    }
-
-
--- a/crypto/weakcrypto/test/tasymmetric/tbrokenrandom.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __CBROKENRANDOM_H__
-#define __CBROKENRANDOM_H__
-
-#include <e32base.h>
-#include <random.h>
-
-class CRandomSetSource : public CRandom
-	{
-public:
-	CRandomSetSource(const TDesC8& aSource);
-	virtual void GenerateBytesL(TDes8& aDest);
-	void SetSource(const TDesC8& aSource);
-
-private:
-	TPtrC8 iValue;
-	mutable TUint iCounter;
-	};
-
-class CRandomIncrementing : public CRandom
-	{
-public:
-	CRandomIncrementing(TUint aInitialValue);
-	virtual void GenerateBytesL(TDes8& aDest);
-
-private:
-	mutable TUint iValue;
-	};
-
-#endif	//	__CBROKENRANDOM_H__
--- a/crypto/weakcrypto/test/tasymmetric/tdhvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tdhvector.h"
-#include <t_input.h>
-#include "performancetest.h"
-
-CTestAction* CDHVector::NewL(RFs& aFs,
-                               CConsoleBase& aConsole,
-                               Output& aOut, 
-                               const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CDHVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CDHVector::NewLC(RFs& aFs,
-                                CConsoleBase& aConsole,
-                                Output& aOut, 
-                                const TTestActionSpec& aTestActionSpec)
-	{
-	CDHVector* self = new(ELeave) CDHVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CDHVector::~CDHVector()
-	{
-	delete iN;
-	delete iG;
-	}
-
-CDHVector::CDHVector(RFs& /*aFs*/, 
-                                     CConsoleBase& aConsole,
-                                     Output& aOut)					 
-: CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CDHVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iN = Input::ParseElementHexL(aTestActionSpec.iActionBody, _L8("<n>"));
-    iG = Input::ParseElementHexL(aTestActionSpec.iActionBody, _L8("<g>"));
-
-	}
-
-
-void CDHVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	iN1 = RInteger::NewL(*iN);
-	iN2 = RInteger::NewL(*iN);
-	iG1 = RInteger::NewL(*iG);
-	iG2 = RInteger::NewL(*iG);
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CDHVector::DoPerformanceTestActionL()
-	{
-	iResult = ETrue;
-	__UHEAP_MARK;
-
-	CDHKeyPair* keyPair1 = CDHKeyPair::NewLC(iN1, iG1);
-	CDHKeyPair* keyPair2 = CDHKeyPair::NewLC(iN2, iG2);
-	CDH* dh1 = CDH::NewLC(keyPair1->PrivateKey());
-	
-	TTimeIntervalMicroSeconds agreeTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	TInt index = 0;
-
-	start.UniversalTime();
-
-	while (diff < KIterationTime)
-		{
-		delete const_cast<HBufC8*>(dh1->AgreeL(keyPair2->PublicKey()));
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		index++;
-		}
-	end.UniversalTime();
-	
-	agreeTime = end.MicroSecondsFrom(start);
-	
-    CleanupStack::PopAndDestroy(dh1);
-    CleanupStack::PopAndDestroy(keyPair2);
-    CleanupStack::PopAndDestroy(keyPair1);
-
-	__UHEAP_MARKEND;
-
-	if (iResult)
-		{
-		TReal rate = I64REAL(agreeTime.Int64()) / index;
-		TReal agreetime = I64REAL(agreeTime.Int64());
-		TBuf<256> buf;
-		_LIT(KEncryptTime, "\tKey Agreements: %f us/agreement (%i in %f us)\r\n");
-		buf.Format(KEncryptTime, rate, index, agreetime);
-		iOut.writeString(buf);
-		}
-	else
-		{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-		}
-}
-
-void CDHVector::DoPerformActionL()
-	{
-	iResult = ETrue;
-	__UHEAP_MARK;
-
-	CDHKeyPair* keyPair1 = CDHKeyPair::NewLC(iN1, iG1);
-	CDHKeyPair* keyPair2 = CDHKeyPair::NewLC(iN2, iG2);
-	CDH* dh1 = CDH::NewLC(keyPair1->PrivateKey());
-	CDH* dh2 = CDH::NewLC(keyPair2->PrivateKey());
-	const HBufC8* key1 = dh1->AgreeL(keyPair2->PublicKey());
-	CleanupStack::PushL(const_cast<HBufC8*>(key1));
-	const HBufC8* key2 = dh2->AgreeL(keyPair1->PublicKey());
-
-	if(*key1 != *key2)
-		{
-		iResult = EFalse;
-		}
-
-	delete const_cast<HBufC8*>(key2);
-	CleanupStack::PopAndDestroy(const_cast<HBufC8*>(key1));
-	CleanupStack::PopAndDestroy(dh2);
-	CleanupStack::PopAndDestroy(dh1);
-	CleanupStack::PopAndDestroy(keyPair2);
-	CleanupStack::PopAndDestroy(keyPair1);
-
-	__UHEAP_MARKEND;
-	}
-
-
--- a/crypto/weakcrypto/test/tasymmetric/tdhvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TDHVECTOR_H__
-#define __TDHVECTOR_H__
-
-#include "tvectortest.h"
-
-/**
- * Runs DH vectors.
- */
-class CDHVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CDHVector();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformanceTestActionL();
-private:
-	CDHVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	HBufC8* iN;
-	HBufC8* iG;
-	RInteger iN1;
-	RInteger iN2;
-	RInteger iG1;
-	RInteger iG2;
-    };
-
-#endif
-
--- a/crypto/weakcrypto/test/tasymmetric/tdsaprimegen.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tdsaprimegen.h"
-#include "t_input.h"
-#include <asymmetric.h>
-#include <random.h>
-#include <padding.h>
-#include <bigint.h>
-#include "tbrokenrandom.h"
-
-CTestAction* CDSAPrimeGen::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CDSAPrimeGen::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CDSAPrimeGen::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CDSAPrimeGen* self = new(ELeave) CDSAPrimeGen(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CDSAPrimeGen::~CDSAPrimeGen()
-	{
-	delete iBody;
-	iP.Close();
-	iQ.Close();
-	delete const_cast<CDSAPrimeCertificate*>(iPrimeCert);
-	}
-
-CDSAPrimeGen::CDSAPrimeGen(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CDSAPrimeGen::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-
-	iKeyBits = Input::ParseIntElement(*iBody, _L8("<keybits>"), _L8("</keybits>"));
-
-	HBufC8* p = Input::ParseElementHexL(*iBody, _L8("<p>"));
-	CleanupStack::PushL(p);
-	iP = RInteger::NewL(*p);
-	CleanupStack::PopAndDestroy(p);
-
-	HBufC8* q = Input::ParseElementHexL(*iBody, _L8("<q>"));
-	CleanupStack::PushL(q);
-	iQ = RInteger::NewL(*q);
-	CleanupStack::PopAndDestroy(q);
-
-	TUint counter = Input::ParseIntElement(*iBody, _L8("<c>"), _L8("</c>"));
-	HBufC8* seed = Input::ParseElementHexL(*iBody, _L8("<seed>"));
-	CleanupStack::PushL(seed);
-	iPrimeCert = CDSAPrimeCertificate::NewL(*seed, counter);
-	CleanupStack::PopAndDestroy(seed);
-	}
-
-void CDSAPrimeGen::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CDSAPrimeGen::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CDSAPrimeGen::DoReportAction(void)
-	{
-	}
-
-void CDSAPrimeGen::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CDSAPrimeGen::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	CRandomSetSource* rng = new(ELeave)CRandomSetSource(iPrimeCert->Seed());
-	SetThreadRandomLC(rng);
-	CDSAKeyPair* dsaPair = CDSAKeyPair::NewLC(iKeyBits);
-	
-	//this is more or less just calling the prime generation routine over again
-	//but it does test if ValidatePrimesL and the NewLC generate the same primes
-	iResult = dsaPair->PublicKey().ValidatePrimesL(*iPrimeCert);
-
-	//we've already checked that the ValidatePrime + NewLC give same results
-	//this now checks against the vectors in the test scripts
-	if(iP != dsaPair->PublicKey().P() ||
-		iQ != dsaPair->PublicKey().Q() || 
-		iP != dsaPair->PrivateKey().P() ||
-		iQ != dsaPair->PrivateKey().Q() )
-		{
-		iResult = EFalse;
-		}
-
-	CleanupStack::PopAndDestroy(dsaPair); 
-	CleanupStack::PopAndDestroy(); //SetThreadRandomLC
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tasymmetric/tdsaprimegen.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TDSAPRIMEGEN_H__
-#define __TDSAPRIMEGEN_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <random.h>
-
-
-class CDSAPrimeGen : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CDSAPrimeGen();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CDSAPrimeGen(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	RInteger iP;
-	RInteger iQ;
-	TUint iCounter;
-	TUint iKeyBits;
-	const CDSAPrimeCertificate* iPrimeCert;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/tdsasignfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tdsasignfb.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <asymmetric.h>
-#include <random.h>
-#include <padding.h>
-#include <bigint.h>
-#include "tbrokenrandom.h"
-
-CTestAction* CDSASignFB::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CDSASignFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CDSASignFB::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CDSASignFB* self = new(ELeave) CDSASignFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CDSASignFB::~CDSASignFB()
-	{
-	delete iBody;
-	delete iSeed;
-	}
-
-CDSASignFB::CDSASignFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CDSASignFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-
-	iSeed = Input::ParseElementHexL(*iBody, _L8("<seed>"));
-	iKeyBits = Input::ParseIntElement(*iBody, _L8("<keybits>"), _L8("</keybits>"));
-	}
-
-void CDSASignFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CDSASignFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CDSASignFB::DoReportAction(void)
-	{
-	}
-
-void CDSASignFB::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CDSASignFB::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	CRandomSetSource* rng = new(ELeave)CRandomSetSource(*iSeed);
-	SetThreadRandomLC(rng);
-	CDSAKeyPair* dsaPair = CDSAKeyPair::NewLC(iKeyBits);
-	CDSASigner* signer = CDSASigner::NewLC(dsaPair->PrivateKey());
-	CDSAVerifier* verifier = CDSAVerifier::NewLC(dsaPair->PublicKey());
-
-	TBuf8<128> message(128);
-	TRandom::RandomL(message);
-
-	const CDSASignature* signature = signer->SignL(message);
-	CleanupStack::PushL(const_cast<CDSASignature*>(signature));
-
-	if(verifier->VerifyL(message, *signature))
-		{
-		iResult = ETrue;
-		}
-	else
-		{
-		iOut.writeString(_L("Failure in dsasignfb with following data:\n"));
-		iOut.writeString(_L("input data: "));
-		iOut.writeOctetStringL(message);
-		iOut.writeString(_L("\n"));
-		iOut.writeString(_L("seed: "));
-		iOut.writeOctetStringL(*iSeed);
-		iOut.writeString(_L("\n"));
-		}
-	
-	CleanupStack::PopAndDestroy(const_cast<CDSASignature*>(signature));
-	CleanupStack::PopAndDestroy(verifier);
-	CleanupStack::PopAndDestroy(signer);
-	CleanupStack::PopAndDestroy(dsaPair);
-	CleanupStack::PopAndDestroy(); //SetThreadRandomLC
-	
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-void CDSASignFB::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
-
--- a/crypto/weakcrypto/test/tasymmetric/tdsasignfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tdsasign.h
-*
-*/
-
-
-#ifndef __TDSASIGN_H__
-#define __TDSASIGN_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <random.h>
-
-class CDSASignFB : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CDSASignFB();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CDSASignFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iSeed;
-	TUint iKeyBits;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/tdsavector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,213 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tdsavector.h"
-#include "tvectorutils.h"
-#include "t_input.h"
-#include <bigint.h>
-#include "tbrokenrandom.h"
-
-////////////////////////////////////////////////////////////////////////////////
-// CDSASignVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CDSASignVector::NewL(RFs& aFs,
-                                  CConsoleBase& aConsole,
-                                  Output& aOut, 
-                                  const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CDSASignVector::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CDSASignVector::NewLC(RFs& aFs,
-                                   CConsoleBase& aConsole,
-                                   Output& aOut, 
-                                   const TTestActionSpec& aTestActionSpec)
-	{
-	CDSASignVector* self = new(ELeave) CDSASignVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CDSASignVector::~CDSASignVector()
-	{
-    delete iPrivKey;
-	delete iSignature;
-	delete iK;
-	delete iSigInput;
-	}
-
-CDSASignVector::CDSASignVector(RFs& /*aFs*/, 
-                               CConsoleBase& aConsole,
-                               Output& aOut)					 
-    : CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CDSASignVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPrivKey = VectorUtils::ReadDSAPrivateKeyL(aTestActionSpec.iActionBody);
-
-	iMessage.Set(Input::ParseElement(aTestActionSpec.iActionBody, _L8("<m>")));
-	iK = Input::ParseElementHexL(aTestActionSpec.iActionBody, _L8("<k>"));
-
-	iSignature = VectorUtils::ReadDSASignatureL(aTestActionSpec.iActionBody);
-	iSigInput = CHashingSignatureInput::NewL(CMessageDigest::ESHA1);
-	iSigInput->Update(iMessage);
-	}
-
-void CDSASignVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-	CRandomSetSource* random = new(ELeave)CRandomSetSource(*iK);
-	SetThreadRandomLC(random);
-
-    CDSASigner* signer = CDSASigner::NewLC(*iPrivKey);
-	const CDSASignature* testSig = signer->SignL(iSigInput->Final());
-    iResult = (*testSig == *iSignature);
-
-	delete testSig;
-    CleanupStack::PopAndDestroy(signer);
-	CleanupStack::PopAndDestroy(); //SetThreadRandomLC
-
-	__UHEAP_MARKEND;
-	}
-
-void CDSASignVector::DoPerformanceTestActionL()
-	{
-	iResult = ETrue;
-	}
-
-void CDSASignVector::DoCheckResult(TInt /*aError*/)
-	{
-//	If using Keith's fixed up testframework for testing failures, iResult will 
-//	have already been corrected for a deliberate fail result.
-//	If not using Keith's testframework iResult is still a fail result at this
-//	point, so now's the time to adjust for deliberate failure.
-
-	if (!iResult)
-		iResult = (iResult && iExpectedResult) || (!iResult && !iExpectedResult);
-	
-	if( iResult == EFalse )
-		{
-		iConsole.Printf(_L("X"));
-		}
-	else 
-		{
-		iConsole.Printf(_L("."));
-		}
-	}
-
-////////////////////////////////////////////////////////////////////////////////
-// CDSAVerifyVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CDSAVerifyVector::NewL(RFs& aFs,
-                                  CConsoleBase& aConsole,
-                                  Output& aOut, 
-                                  const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CDSAVerifyVector::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CDSAVerifyVector::NewLC(RFs& aFs,
-                                   CConsoleBase& aConsole,
-                                   Output& aOut, 
-                                   const TTestActionSpec& aTestActionSpec)
-	{
-	CDSAVerifyVector* self = new(ELeave) CDSAVerifyVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CDSAVerifyVector::~CDSAVerifyVector()
-	{
-    delete iPubKey;
-	delete iSignature;
-	delete iMessage;
-	delete iSigInput;
-	}
-
-CDSAVerifyVector::CDSAVerifyVector(RFs& /*aFs*/, 
-                                   CConsoleBase& aConsole,
-                                   Output& aOut)					 
-    : CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CDSAVerifyVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPubKey = VectorUtils::ReadDSAPublicKeyL(aTestActionSpec.iActionBody);
-
-	TPtrC8 message(Input::ParseElement(aTestActionSpec.iActionBody, _L8("<m>")));
-	if (message.Length()==0)	
-		iMessage = Input::ParseElementHexL(aTestActionSpec.iActionBody, _L8("<hexm>"));
-	else
-		iMessage = message.AllocL();
-		
-	iSignature = VectorUtils::ReadDSASignatureL(aTestActionSpec.iActionBody);
-	iSigInput = CHashingSignatureInput::NewL(CMessageDigest::ESHA1);
-	iSigInput->Update(*iMessage);
-	}	
-
-void CDSAVerifyVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-    CDSAVerifier* verifier = CDSAVerifier::NewLC(*iPubKey);
-    iResult = verifier->VerifyL(iSigInput->Final(), *iSignature);
-
-    CleanupStack::PopAndDestroy(verifier);
-	__UHEAP_MARKEND;
-	}
-
-void CDSAVerifyVector::DoPerformanceTestActionL()
-	{
-	iResult = ETrue;
-	}
-
-void CDSAVerifyVector::DoCheckResult(TInt /*aError*/)
-	{
-//	If using Keith's fixed up testframework for testing failures, iResult will 
-//	have already been corrected for a deliberate fail result.
-//	If not using Keith's testframework iResult is still a fail result at this
-//	point, so now's the time to adjust for deliberate failure.
-
-	if (!iResult)
-		iResult = (iResult && iExpectedResult) || (!iResult && !iExpectedResult);
-	
-	if( iResult == EFalse )
-		{
-		iConsole.Printf(_L("X"));
-		}
-	else 
-		{
-		iConsole.Printf(_L("."));
-		}
-	}
--- a/crypto/weakcrypto/test/tasymmetric/tdsavector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* trdavector.h
-* Vector tests for RSA ciphers
-*
-*/
-
-
-#ifndef __TDSAVECTOR_H__
-#define __TDSAVECTOR_H__
-
-#include "tvectortest.h"
-#include "asymmetrickeys.h"
-#include "tsignatureinput.h"
-
-/**
- * Runs DSA signing vectors.
- */
-
-class CDSASignVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CDSASignVector();
-	virtual void DoCheckResult(TInt aError);
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CDSASignVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CDSAPrivateKey* iPrivKey;
-	TPtrC8 iMessage;
-	HBufC8* iK;
-	CDSASignature* iSignature;
-	CSignatureInput* iSigInput;
-    };
-
-/**
- * Runs DSA verification vectors.
- */
-
-class CDSAVerifyVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CDSAVerifyVector();
-	//virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoCheckResult(TInt aError);
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-
-private:
-	CDSAVerifyVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CDSAPublicKey* iPubKey;    
-	HBufC8* iMessage;
-	CDSASignature* iSignature;
-	CSignatureInput* iSigInput;
-    };
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/trsaencryptfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,391 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "trsaencryptfb.h"
-#include "t_input.h"
-#include <asymmetric.h>
-#include <padding.h>
-#include <bigint.h>
-#include "performancetest.h"
-#include <securityerr.h>
-
-_LIT8(KInputStart, "<input>");
-_LIT8(KInputEnd, "</input>");
-_LIT8(KKeyBitsStart, "<keybits>");
-_LIT8(KKeyBitsEnd, "</keybits>");
-
-CRSAEncryptFB::~CRSAEncryptFB()
-	{
-	delete iBody;
-	}
-
-CRSAEncryptFB::CRSAEncryptFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs), iKeyBits(512)	//	Default key size = 512
-	{
-	}
-
-CTestAction* CRSAEncryptFB::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSAEncryptFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSAEncryptFB::NewLC(RFs& aFs, CConsoleBase& aConsole,Output& aOut,
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CRSAEncryptFB* self = new(ELeave) CRSAEncryptFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-void CRSAEncryptFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);	
-
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{//	Number of test iterations
-		TPtrC8 itsPtr = Input::ParseElement(aTestActionSpec.iActionBody, KIterationsStart, KIterationsEnd);
-		if (itsPtr!=KNullDesC8)
-		{
-			TLex8 lex;
-			lex.Assign(itsPtr);
-			User::LeaveIfError(lex.Val(iPerfTestIterations));
-			if (iPerfTestIterations > KMaxIterations)
-				User::Panic(_L("AsymmetricPerformance.exe"), KErrArgument);
-		}
-		TPtrC8 cryptoPtr = Input::ParseElement(aTestActionSpec.iActionBody, KTypeOfCryptoStart, KTypeOfCryptoEnd);
-		if (cryptoPtr.CompareF(KRSAStandard) == 0)
-			{
-			iCryptoType = EStandard;
-			}
-		else if (cryptoPtr.CompareF(KRSAStandardCRT) == 0)
-			{
-			iCryptoType = EStandardCRT;
-			}
-		else
-			{
-			User::Panic(_L("AsymmetricPerformance.exe"), KErrArgument);
-			}
-	}
-
-	TPtrC8 keyBitsPtr = Input::ParseElement(*iBody, KKeyBitsStart, KKeyBitsEnd); 
-	if (keyBitsPtr!=KNullDesC8)
-	{
-		TLex8 lex;
-		lex.Assign(keyBitsPtr);
-		User::LeaveIfError(lex.Val(iKeyBits));
-	}
-}
-
-void CRSAEncryptFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	TPtrC8 inputTemp = Input::ParseElement(*iBody, KInputStart, KInputEnd);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-	Hex(*iInput);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CRSAEncryptFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iInput;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, iActionResult);
-	}
-
-void CRSAEncryptFB::DoReportAction(void)
-	{
-	}
-
-void CRSAEncryptFB::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CRSAEncryptFB::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
-
-
-void CRSAEncryptFB::PerformAction(TRequestStatus& aStatus)
-{
-	TRequestStatus* status = &aStatus;
-	
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{
-		iConsole.Printf(_L(">"));	//	Indicates start of test
-		TRAP(iActionResult, DoPerformanceTestActionL());
-	}
-	else
-	{
-		TRAP(iActionResult, DoPerformActionL());
-	}
-	
-	if (iActionResult==KErrNoMemory)
-		{
-		User::Leave(iActionResult);	//	For OOM testing
-		}
-	if (iActionResult==KErrKeyNotWeakEnough)
-		{
-		iResult = ETrue;
-		iConsole.Printf(_L("Crypto libraries returned KErrKeyNotWeakEnough! Passing test automatically.\n\r"));
-		iOut.writeString(_L("Crypto libraries returned KErrKeyNotWeakEnough!  Passing test automatically.\r\n"));
-		}
-
-	User::RequestComplete(status, iActionResult);
-
-	iActionState = CTestAction::EPostrequisite;
-}
-
-void CRSAEncryptFB::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-	iResult = EFalse;
-
-	TTimeIntervalMicroSeconds keyCreateTime(0);
-	TTimeIntervalMicroSeconds encryptTime(0);
-	TTimeIntervalMicroSeconds decryptTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-//	Time key pair creation
-	CRSAKeyPair *rsaPair = NULL;
-	TInt noKeyPairCreations = 0;
-	
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		rsaPair = CRSAKeyPair::NewLC(iKeyBits, TypeOfCrypto());
-		CleanupStack::PopAndDestroy();
-		noKeyPairCreations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	keyCreateTime = end.MicroSecondsFrom(start);
-	TReal keycreatetime = I64REAL(keyCreateTime.Int64());
-	
-	rsaPair = CRSAKeyPair::NewLC(iKeyBits, TypeOfCrypto()); // Create one keypair for operations
-	
-	CRSAPKCS1v15Encryptor* encryptor = CRSAPKCS1v15Encryptor::NewL(rsaPair->PublicKey());
-	CleanupStack::PushL(encryptor);
-
-	CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(rsaPair->PrivateKey());
-	CleanupStack::PushL(decryptor);
-	
-	HBufC8 *eResult = HBufC8::NewLC(encryptor->MaxOutputLength());
-	TPtr8 ePtr = eResult->Des();
-	TPtr8* eResultPtr = &ePtr;
-
-	
-//	Time encryption	
-	diff = 0;
-	TInt noEncryptions = 0;
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		eResultPtr->Zero();
-		encryptor->EncryptL(*iInput, *eResultPtr);
-		noEncryptions++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	encryptTime = end.MicroSecondsFrom(start);
-	TReal encrypttime = I64REAL(encryptTime.Int64());
-		
-//	Time decryption
-	diff = 0;
-	HBufC8 *dResult = HBufC8::NewLC(decryptor->MaxOutputLength());
-	ePtr = eResult->Des();
-	eResultPtr = &ePtr;
-	TPtr8 dPtr = dResult->Des();
-	TPtr8* dResultPtr = &dPtr;
-	TInt noDecryptions = 0;
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		decryptor->DecryptL(*eResultPtr, *dResultPtr);
-		noDecryptions++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	decryptTime = end.MicroSecondsFrom(start);
-    TReal decrypttime = I64REAL(decryptTime.Int64());
-	
-	iResult = ETrue;
-	if (*iInput != *dResult)
-	{
-		iResult = EFalse;		
-	}
-	
-	CleanupStack::PopAndDestroy(5);	//	dResult,eResult,decryptor,encryptor,rsaPair
-	__UHEAP_MARKEND;
-
-	if (iResult)
-	{
-		TReal rate = I64REAL(keyCreateTime.Int64()) / noKeyPairCreations;
-		TBuf<256> buf;
-		_LIT(KKeyCreateTime, "\n\tKeyCreate: %f us/key pair (%i key pairs in %f us)\r\n");
-  		buf.Format(KKeyCreateTime, rate, noKeyPairCreations, keycreatetime);
-		iOut.writeString(buf);
-		
-		rate = I64REAL(encryptTime.Int64()) / noEncryptions;
-		_LIT(KEncryptTime, "\tEncrypt: %f us/encryption (%i encryptions in %f us)\r\n");
-  		buf.Format(KEncryptTime, rate, noEncryptions, encrypttime);
-		iOut.writeString(buf);
-
-		rate = I64REAL(decryptTime.Int64()) / noDecryptions;
-		_LIT(KDecryptTime, "\tDecrypt: %f us/decryption (%i decryptions in %f us)\r\n");
-  		buf.Format(KDecryptTime, rate, noDecryptions, decrypttime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSAEncryptFB::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-	
-	iResult = EFalse;
-
-	CRSAKeyPair* rsaPair = CRSAKeyPair::NewLC(iKeyBits, TypeOfCrypto());
-	//LogKeyData(static_cast<const CRSAPublicKey*>(&rsaPair->PublicKey()), static_cast<const CRSAPrivateKeyCRT*>(&rsaPair->PrivateKey()), KNullDesC8);
-	
-	CRSAPKCS1v15Encryptor* encryptor = CRSAPKCS1v15Encryptor::NewL(rsaPair->PublicKey());
-	CleanupStack::PushL(encryptor);
-
-	CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(rsaPair->PrivateKey());
-	CleanupStack::PushL(decryptor);
-
-	HBufC8* eResult = HBufC8::NewLC(encryptor->MaxOutputLength());
-	HBufC8* dResult = HBufC8::NewLC(decryptor->MaxOutputLength());
-
-	TPtr8 eResultPtr = eResult->Des();
-	encryptor->EncryptL(*iInput, eResultPtr);
-
-	TPtr8 dResultPtr = dResult->Des();
-	if (TypeOfCrypto() == EStandardCRT)
-		{
-		TRAPD(res, decryptor->DecryptL(eResultPtr, dResultPtr));
-		if (res==KErrCorrupt)	//	Log all the key data for this failure
-			LogKeyData(static_cast<const CRSAPublicKey*>(&rsaPair->PublicKey()), static_cast<const CRSAPrivateKeyCRT*>(&rsaPair->PrivateKey()), *eResult);
-
-		User::LeaveIfError(res);
-		}
-	else
-		{
-		decryptor->DecryptL(eResultPtr, dResultPtr);
-		}
-		
-	if(*iInput == *dResult)
-		{
-		iResult = ETrue;
-		}
-	
-	CleanupStack::PopAndDestroy(dResult);
-	CleanupStack::PopAndDestroy(eResult);
-	CleanupStack::PopAndDestroy(decryptor);
-	CleanupStack::PopAndDestroy(encryptor);
-	CleanupStack::PopAndDestroy(rsaPair);
-
-	__UHEAP_MARKEND;
-	}
-
-void CRSAEncryptFB::LogKeyData(const CRSAPublicKey* aPublicKey, const CRSAPrivateKeyCRT* aPrivateKeyCRT, const TDesC8& aCipherText)
-{
-	iOut.writeString(_L("\n\t ----------- e -----------\n\r"));
-	const TInteger& keyE = aPublicKey->E();
-	HBufC8* theE = keyE.BufferLC();	
-	iOut.writeOctetString(*theE);
-
-	iOut.writeString(_L("\n\t ----------- P -----------\n\r"));
-	const TInteger& keyP = aPrivateKeyCRT->P();
-	HBufC8* theP = keyP.BufferLC();	
-	iOut.writeOctetString(*theP);
-
-	iOut.writeString(_L("\n\t ----------- Q -----------\n\r"));
-	const TInteger& keyQ = aPrivateKeyCRT->Q();
-	HBufC8* theQ = keyQ.BufferLC();	
-	iOut.writeOctetString(*theQ);
-
-	iOut.writeString(_L("\n\t ----------- DP -----------\n\r"));
-	const TInteger& keyDP = aPrivateKeyCRT->DP();
-	HBufC8* theDP = keyDP.BufferLC();	
-	iOut.writeOctetString(*theDP);
-
-	iOut.writeString(_L("\n\t ----------- DQ -----------\n\r"));
-	const TInteger& keyDQ = aPrivateKeyCRT->DQ();
-	HBufC8* theDQ = keyDQ.BufferLC();	
-	iOut.writeOctetString(*theDQ);
-
-	iOut.writeString(_L("\n\t ----------- QInv -----------\n\r"));
-	const TInteger& keyQInv = aPrivateKeyCRT->QInv();
-	HBufC8* theQInv = keyQInv.BufferLC();	
-	iOut.writeOctetString(*theQInv);
-
-	iOut.writeString(_L("\n\t ----------- N -----------\n\r"));
-	const TInteger& keyN = aPrivateKeyCRT->N();
-	HBufC8* theN = keyN.BufferLC();	
-	iOut.writeOctetString(*theN);
-
-	iOut.writeString(_L("\n\t ----------- ciphertext -----------\n\r"));	
-	iOut.writeOctetString(aCipherText);
-	
-	iOut.writeString(_L("\n\t -------------------------\n\r"));
-	
-	CleanupStack::PopAndDestroy(6);	
-
-}
--- a/crypto/weakcrypto/test/tasymmetric/trsaencryptfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,62 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TRSAENCRYPTFB_H__
-#define __TRSAENCRYPTFB_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <random.h>
-
-class CRSAEncryptFB : public CTestAction
-{
-public:
-	~CRSAEncryptFB();
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	void DoPerformPrerequisite(TRequestStatus& aStatus);
-	void DoPerformPostrequisite(TRequestStatus& aStatus);
-	void DoReportAction(void);
-	void DoCheckResult(TInt);
-	void PerformAction(TRequestStatus& aStatus);
-
-private:
-	CRSAEncryptFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	inline TRSAPrivateKeyType TypeOfCrypto() {return iCryptoType;}
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-	void DoPerformActionL();
-	void DoPerformanceTestActionL();
-	void LogKeyData(const CRSAPublicKey* aPublicKey,
-							const CRSAPrivateKeyCRT* aPrivateKeyCRT, const TDesC8& aCipherText);
-
-private:
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iInput;
-	TInt iActionResult;
-	TInt iKeyBits;
-	TInt iPerfTestIterations;
-	TRSAPrivateKeyType iCryptoType;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/trsaparams.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,392 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tdsasignfb.cpp
-*
-*/
-
-
-#include "t_input.h"
-#include "t_output.h"
-#include <asymmetric.h>
-#include "tvectorutils.h"
-#include "trsaparams.h"
-
-_LIT8(KModStart, "<modulus>");
-_LIT8(KModEnd, "</modulus>");
-_LIT8(KPubExpStart, "<publicExponent>");
-_LIT8(KPubExpEnd, "</publicExponent>");
-_LIT8(KPrivExpStart, "<privateExponent>");
-_LIT8(KPrivExpEnd, "</privateExponent>");
-_LIT8(KPStart, "<P>");
-_LIT8(KPEnd, "</P>");
-_LIT8(KQStart, "<Q>");
-_LIT8(KQEnd, "</Q>");
-_LIT8(KdPStart, "<dP>");
-_LIT8(KdPEnd, "</dP>");
-_LIT8(KdQStart, "<dQ>");
-_LIT8(KdQEnd, "</dQ>");
-_LIT8(KqInvStart, "<qInv>");
-_LIT8(KqInvEnd, "</qInv>");
-_LIT8(KReturnCodeStart, "<return>");
-_LIT8(KReturnCodeEnd, "</return>");
-_LIT8(KErrArgumentString, "KErrArgument");
-
-CTestAction* CRSATestPublicKey::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSATestPublicKey::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSATestPublicKey::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CRSATestPublicKey* self = new(ELeave) CRSATestPublicKey(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSATestPublicKey::~CRSATestPublicKey()
-	{
-	delete iBody;
-	}
-
-CRSATestPublicKey::CRSATestPublicKey(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CRSATestPublicKey::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iExpectedReturnValue = KErrNone;
-	TPtrC8 returnValue = Input::ParseElement(aTestActionSpec.iActionResult, KReturnCodeStart, KReturnCodeEnd);
-	if(returnValue.Compare(KErrArgumentString) == 0)
-		{
-		iExpectedReturnValue = KErrArgument;
-		}
-
-	}
-
-void CRSATestPublicKey::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CRSATestPublicKey::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CRSATestPublicKey::DoReportAction(void)
-	{
-	}
-
-void CRSATestPublicKey::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CRSATestPublicKey::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	TPtrC8 modIn = Input::ParseElement(*iBody, KModStart, KModEnd);
-    RInteger mod = VectorUtils::ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 expIn = Input::ParseElement(*iBody, KPubExpStart, KPubExpEnd);
-    RInteger exp = VectorUtils::ParseIntegerL(expIn);
-	CleanupStack::PushL(exp);
-
-
-	CRSAPublicKey* key = NULL;
-	TRAPD(err, key = CRSAPublicKey::NewL(mod, exp));
-	if(err == iExpectedReturnValue)
-		{
-		iResult=ETrue;
-		}
-	else
-		{
-		iOut.writeString(_L("CRSAPublicKey construction did not return expected result\n"));
-		}
-	if(err != KErrNone)
-		{
-		CleanupStack::PopAndDestroy(2);
-		}
-	else
-		{
-		CleanupStack::PushL(key);
-		CleanupStack::PopAndDestroy(3);	
-		}
-		
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-
-CTestAction* CRSATestPrivateKey::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSATestPrivateKey::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSATestPrivateKey::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CRSATestPrivateKey* self = new(ELeave) CRSATestPrivateKey(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSATestPrivateKey::~CRSATestPrivateKey()
-	{
-	delete iBody;
-	}
-
-CRSATestPrivateKey::CRSATestPrivateKey(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CRSATestPrivateKey::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iExpectedReturnValue = KErrNone;
-	TPtrC8 returnValue = Input::ParseElement(aTestActionSpec.iActionResult, KReturnCodeStart, KReturnCodeEnd);
-	if(returnValue.Compare(KErrArgumentString) == 0)
-		{
-		iExpectedReturnValue = KErrArgument;
-		}
-
-	}
-
-void CRSATestPrivateKey::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CRSATestPrivateKey::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CRSATestPrivateKey::DoReportAction(void)
-	{
-	}
-
-void CRSATestPrivateKey::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CRSATestPrivateKey::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	TPtrC8 modIn = Input::ParseElement(*iBody, KModStart, KModEnd);
-    RInteger mod = VectorUtils::ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 expIn = Input::ParseElement(*iBody, KPrivExpStart, KPrivExpEnd);
-    RInteger exp = VectorUtils::ParseIntegerL(expIn);
-	CleanupStack::PushL(exp);
-
-
-	CRSAPrivateKeyStandard* key = NULL;
-	TRAPD(err, key = CRSAPrivateKeyStandard::NewL(mod, exp));
-	if(err == iExpectedReturnValue)
-		{
-		iResult=ETrue;
-		}
-	else
-		{
-		iOut.writeString(_L("CRSAPrivateKey construction did not return expected result\n"));
-		}
-	if(err != KErrNone)
-		{
-		CleanupStack::PopAndDestroy(2);
-		}
-	else
-		{
-		CleanupStack::PushL(key);
-		CleanupStack::PopAndDestroy(3);	
-		}
-		
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-CTestAction* CRSATestPrivateKeyCRT::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSATestPrivateKeyCRT::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSATestPrivateKeyCRT::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CRSATestPrivateKeyCRT* self = new(ELeave) CRSATestPrivateKeyCRT(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSATestPrivateKeyCRT::~CRSATestPrivateKeyCRT()
-	{
-	delete iBody;
-	}
-
-CRSATestPrivateKeyCRT::CRSATestPrivateKeyCRT(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CRSATestPrivateKeyCRT::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iExpectedReturnValue = KErrNone;
-	TPtrC8 returnValue = Input::ParseElement(aTestActionSpec.iActionResult, KReturnCodeStart, KReturnCodeEnd);
-	if(returnValue.Compare(KErrArgumentString) == 0)
-		{
-		iExpectedReturnValue = KErrArgument;
-		}
-
-	}
-
-void CRSATestPrivateKeyCRT::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CRSATestPrivateKeyCRT::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CRSATestPrivateKeyCRT::DoReportAction(void)
-	{
-	}
-
-void CRSATestPrivateKeyCRT::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CRSATestPrivateKeyCRT::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	TPtrC8 modIn = Input::ParseElement(*iBody, KModStart, KModEnd);
-    RInteger mod = VectorUtils::ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 PIn = Input::ParseElement(*iBody, KPStart, KPEnd);
-    RInteger P = VectorUtils::ParseIntegerL(PIn);
-	CleanupStack::PushL(P);
-
-	TPtrC8 QIn = Input::ParseElement(*iBody, KQStart, KQEnd);
-    RInteger Q = VectorUtils::ParseIntegerL(QIn);
-	CleanupStack::PushL(Q);
-
-	TPtrC8 dPIn = Input::ParseElement(*iBody, KdPStart, KdPEnd);
-    RInteger dP = VectorUtils::ParseIntegerL(dPIn);
-	CleanupStack::PushL(dP);
-
-	TPtrC8 dQIn = Input::ParseElement(*iBody, KdQStart, KdQEnd);
-    RInteger dQ = VectorUtils::ParseIntegerL(dQIn);
-	CleanupStack::PushL(dQ);
-
-	TPtrC8 QInvIn = Input::ParseElement(*iBody, KqInvStart, KqInvEnd);
-    RInteger QInv = VectorUtils::ParseIntegerL(QInvIn);
-	CleanupStack::PushL(QInv);
-
-
-	CRSAPrivateKeyCRT* key = NULL;
-	TRAPD(err, key = CRSAPrivateKeyCRT::NewL(mod, P, Q, dP, dQ, QInv));
-	if(err == iExpectedReturnValue)
-		{
-		iResult=ETrue;
-		}
-	else
-		{
-		iOut.writeString(_L("CRSAPrivateKeyCRT construction did not return expected result\n"));
-		}
-	if(err != KErrNone)
-		{
-		CleanupStack::PopAndDestroy(6);
-		}
-	else
-		{
-		CleanupStack::PushL(key);
-		CleanupStack::PopAndDestroy(7);	
-		}
-		
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tasymmetric/trsaparams.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,104 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __RSAPARAMSTEST_H__
-#define __RSAPARAMSTEST_H__
-
-#include "t_testaction.h"
-
-class CRSATestPublicKey : public CTestAction
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSATestPublicKey();
-protected:
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-//	virtual void DoPerformActionL();
-//	virtual void DoPerformanceTestActionL();
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-	virtual void PerformAction(TRequestStatus& aStatus);
-private:
-	CRSATestPublicKey(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8 *iBody;
-	TInt iExpectedReturnValue;
-    };
-
-class CRSATestPrivateKey : public CTestAction
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSATestPrivateKey();
-protected:
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-//	virtual void DoPerformActionL();
-//	virtual void DoPerformanceTestActionL();
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-	virtual void PerformAction(TRequestStatus& aStatus);
-private:
-	CRSATestPrivateKey(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8 *iBody;
-	TInt iExpectedReturnValue;
-    };
-
-class CRSATestPrivateKeyCRT : public CTestAction
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSATestPrivateKeyCRT();
-protected:
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-//	virtual void DoPerformActionL();
-//	virtual void DoPerformanceTestActionL();
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-	virtual void PerformAction(TRequestStatus& aStatus);
-private:
-	CRSATestPrivateKeyCRT(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8 *iBody;
-	TInt iExpectedReturnValue;
-    };
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/trsasignfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,314 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "trsasignfb.h"
-#include "t_input.h"
-#include <asymmetric.h>
-#include <padding.h>
-#include <bigint.h>
-#include "performancetest.h"
-
-_LIT8(KInputStart, "<input>");
-_LIT8(KKeyBitsStart, "<keybits>");
-_LIT8(KKeyBitsEnd, "</keybits>");
-
-CRSASignFB::~CRSASignFB()
-	{
-	delete iBody;
-	}
-
-CRSASignFB::CRSASignFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs), iPerfTestIterations(100)
-	{
-	}
-
-CTestAction* CRSASignFB::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSASignFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSASignFB::NewLC(RFs& aFs, CConsoleBase& aConsole, Output& aOut, 
-	const TTestActionSpec& aTestActionSpec)
-	{
-	CRSASignFB* self = new(ELeave) CRSASignFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-
-TRSAPrivateKeyType CRSASignFB::TypeOfCrypto()
-	{
-	return iCryptoType;
-	}
-	
-void CRSASignFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{//	Number of test iterations
-		TPtrC8 itsPtr = Input::ParseElement(aTestActionSpec.iActionBody, KIterationsStart, KIterationsEnd);
-		if (itsPtr!=KNullDesC8)
-		{
-			TLex8 lex;
-			lex.Assign(itsPtr);
-			User::LeaveIfError(lex.Val(iPerfTestIterations));
-			if (iPerfTestIterations > KMaxIterations)
-				User::Panic(_L("AsymmetricPerformance.exe"), KErrArgument);
-			
-		}
-		TPtrC8 cryptoPtr = Input::ParseElement(aTestActionSpec.iActionBody, KTypeOfCryptoStart, KTypeOfCryptoEnd);
-		if (cryptoPtr.CompareF(KRSAStandard) == 0)
-			{
-			iCryptoType = EStandard;
-			}
-		else if (cryptoPtr.CompareF(KRSAStandardCRT) == 0)
-			{
-			iCryptoType = EStandardCRT;
-			}
-		else
-			{
-			User::Panic(_L("AsymmetricPerformance.exe"), KErrArgument);
-			}
-	}
-
-	TPtrC8 keyBitsPtr = Input::ParseElement(*iBody, KKeyBitsStart, KKeyBitsEnd); 
-	if (keyBitsPtr!=KNullDesC8)
-	{
-		TLex8 lex;
-		lex.Assign(keyBitsPtr);
-		User::LeaveIfError(lex.Val(iKeyBits));
-	}
-}
-
-void CRSASignFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	HBufC8* input = Input::ParseElementHexL(*iBody, KInputStart);
-	CleanupStack::PushL(input);
-	iSigInput = CHashingSignatureInput::NewL(CMessageDigest::ESHA1);
-	iSigInput->Update(*input);
-	iInput = iSigInput->Final().AllocL();
-	CleanupStack::PopAndDestroy(input);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CRSASignFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iInput;
-	delete iSigInput;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, iActionResult);
-	}
-
-void CRSASignFB::DoReportAction(void)
-	{
-	}
-
-void CRSASignFB::DoCheckResult(TInt)
-	{
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CRSASignFB::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
-
-void CRSASignFB::PerformAction(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{
-		iConsole.Printf(_L(">"));	//	Indicates start of test
-		TRAP(iActionResult, DoPerformanceTestActionL());
-	}
-	else
-	{
-		TRAP(iActionResult, DoPerformActionL());
-	}
-
-	if (iActionResult==KErrNoMemory)
-		User::Leave(iActionResult);	//	For OOM testing
-	
-	User::RequestComplete(status, iActionResult);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
-
-void CRSASignFB::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-	iResult = EFalse;
-
-	TTimeIntervalMicroSeconds keyCreateTime(0);
-	TTimeIntervalMicroSeconds signTime(0);
-	TTimeIntervalMicroSeconds verifyTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	//	Time key pair creation
-	CRSAKeyPair *rsaPair = NULL;
-	TUint noRSAPairs = 0;
-	start.UniversalTime();
-	while (diff < KIterationTime)
-	{
-       rsaPair = CRSAKeyPair::NewLC(iKeyBits, TypeOfCrypto());
-       CleanupStack::PopAndDestroy();
-       noRSAPairs++;
-	   end.UniversalTime();
-	   end.SecondsFrom(start, diff);
-	}
-	end.UniversalTime();
-	keyCreateTime = end.MicroSecondsFrom(start);
-	TReal keycreatetime = I64REAL(keyCreateTime.Int64());
-	
-	rsaPair=CRSAKeyPair::NewLC(iKeyBits, TypeOfCrypto()); // Create one keypair for operations
-
-	CRSAPKCS1v15Signer* signer = CRSAPKCS1v15Signer::NewL(rsaPair->PrivateKey());
-	CleanupStack::PushL(signer);
-	CRSAPKCS1v15Verifier* verifier = CRSAPKCS1v15Verifier::NewL(rsaPair->PublicKey());
-	CleanupStack::PushL(verifier);
-
-	const CRSASignature  *testSig;
-
-	//	Time signing
-	diff = 0;
-	TInt noSignings = 0;
-	start.UniversalTime();
-	while (diff < KIterationTime)
-	{
-		testSig = signer->SignL(*iInput);
-		delete testSig;
-		noSignings++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-	}
-	end.UniversalTime();
-	signTime = end.MicroSecondsFrom(start);
-	TReal signtime = I64REAL(signTime.Int64());	
-	//	Time verification
-	TInt noVerifies = 0;
-	diff = 0;
-	testSig = signer->SignL(*iInput);
-	CleanupStack::PushL(const_cast<CRSASignature*>(testSig));
-	start.UniversalTime();
-	while (diff < KIterationTime)
-	{
-		iResult = verifier->VerifyL(*iInput, *testSig);
-
-		// do as many verfies as possible 
-		if (!iResult)
-		{
-		   break;
-		}
-		noVerifies++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-	}	
-	end.UniversalTime();
-	verifyTime = end.MicroSecondsFrom(start);
-    TReal verifytime = I64REAL(verifyTime.Int64());
-	CleanupStack::PopAndDestroy(4);	//	verifier,signer,testSig,rsaPairs
-	__UHEAP_MARKEND;
-		 
-	if (iResult)
-	{
-		TBuf<256> buf;
-		TReal rate = I64REAL(keyCreateTime.Int64()) / noRSAPairs;
-		
-		_LIT(KKeyCreateTime, "\n\tKeyCreate: %f us/key creation (no creations: %i in %f us)\r\n");
- 		buf.Format(KKeyCreateTime, rate, noRSAPairs, keycreatetime);
-		iOut.writeString(buf);
-
-		rate = I64REAL(signTime.Int64()) / noSignings;
-		_LIT(KSignTime, "\tSigning: %f us/signing (no signings: %i in %f us)\r\n");
-  		buf.Format(KSignTime, rate, noSignings, signtime);
-		iOut.writeString(buf);
-		
-		rate = I64REAL(verifyTime.Int64()) / noVerifies;
-		_LIT(KVerifyTime, "\tVerifying: %f us/verify (no verfies: %i in %f us)\r\n");
- 		buf.Format(KVerifyTime, rate, noVerifies, verifytime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSASignFB::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-	
-	iResult = EFalse;
-
-	CRSAKeyPair* rsaPair = CRSAKeyPair::NewLC(512, TypeOfCrypto());
-
-	CRSAPKCS1v15Signer* signer = CRSAPKCS1v15Signer::NewL(rsaPair->PrivateKey());
-	CleanupStack::PushL(signer);
-
-	CRSAPKCS1v15Verifier* verifier = CRSAPKCS1v15Verifier::NewL(rsaPair->PublicKey());
-	CleanupStack::PushL(verifier);
-
-	const CRSASignature* signature = signer->SignL(*iInput);
-	CleanupStack::PushL(const_cast<CRSASignature*>(signature));
-
-	if(verifier->VerifyL(*iInput, *signature))
-		{
-		iResult = ETrue;
-		}
-	
-	CleanupStack::PopAndDestroy(4, rsaPair); //signature, verifier, signer, rsaPair
-	
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tasymmetric/trsasignfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* trsasign.h
-*
-*/
-
-
-#ifndef __TRSASIGN_H__
-#define __TRSASIGN_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <random.h>
-#include "tsignatureinput.h"
-
-class CRSASignFB : public CTestAction
-{
-public:
-	~CRSASignFB();
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	void DoPerformPrerequisite(TRequestStatus& aStatus);
-	void DoPerformPostrequisite(TRequestStatus& aStatus);
-	void DoReportAction(void);
-	void DoCheckResult(TInt);
-	void PerformAction(TRequestStatus& aStatus);
-
-private:
-	CRSASignFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-	inline TRSAPrivateKeyType TypeOfCrypto();
-	void DoPerformActionL();
-	void DoPerformanceTestActionL();
-
-private:
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iInput;
-	CSignatureInput* iSigInput;
-	TInt iActionResult;
-	TInt iKeyBits;
-	TInt iPerfTestIterations;
-	TRSAPrivateKeyType iCryptoType;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/trsavector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,806 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "trsavector.h"
-#include "tvectorutils.h"
-#include "t_input.h"
-#include <bigint.h>
-#include "performancetest.h"
-#include "tbrokenrandom.h"
-_LIT8(KPlaintextStart, "<plaintext>");
-_LIT8(KPlaintextEnd, "</plaintext>");
-_LIT8(KCiphertextStart, "<ciphertext>");
-_LIT8(KCiphertextEnd, "</ciphertext>");
-_LIT8(KSignatureStart, "<signature>");
-_LIT8(KSignatureEnd, "</signature>");
-_LIT8(KDigestInfoStart, "<digestInfo>");
-_LIT8(KDigestInfoEnd, "</digestInfo>");
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSAEncryptVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CRSAEncryptVector::NewL(RFs& aFs,
-                               CConsoleBase& aConsole,
-                               Output& aOut, 
-                               const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSAEncryptVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSAEncryptVector::NewLC(RFs& aFs,
-                                CConsoleBase& aConsole,
-                                Output& aOut, 
-                                const TTestActionSpec& aTestActionSpec)
-	{
-	CRSAEncryptVector* self = new(ELeave) CRSAEncryptVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSAEncryptVector::~CRSAEncryptVector()
-	{
-	delete iPubKey;
-	delete iPlaintext;
-	delete iCiphertext;
-	}
-
-CRSAEncryptVector::CRSAEncryptVector(RFs& /*aFs*/, 
-                                     CConsoleBase& aConsole,
-                                     Output& aOut)					 
-: CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSAEncryptVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPubKey = VectorUtils::ReadRSAPublicKeyL(aTestActionSpec.iActionBody);
-
-	TPtrC8 ptextIn = Input::ParseElement(aTestActionSpec.iActionBody, KPlaintextStart, KPlaintextEnd);
-	iPlaintext = VectorUtils::ParseBinaryL(ptextIn);
-
-	TPtrC8 ctextIn = Input::ParseElement(aTestActionSpec.iActionBody, KCiphertextStart, KCiphertextEnd);
-	iCiphertext = VectorUtils::ParseBinaryL(ctextIn);
-	}
-
-void CRSAEncryptVector::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-	CRSAPKCS1v15Encryptor* encryptor = CRSAPKCS1v15Encryptor::NewL(*iPubKey);
-	CleanupStack::PushL(encryptor);
- 
-	TTimeIntervalMicroSeconds encryptTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	TInt noEncryptions = 0;
-	HBufC8 *eResult = HBufC8::NewLC(encryptor->MaxOutputLength());
-	TPtr8 ePtr = eResult->Des();
-	TPtr8* eResultPtr = &ePtr;
-	
-//	Time encryption	
-	CRandomIncrementing* brokenRandom = new(ELeave)CRandomIncrementing(1);
-	SetThreadRandomLC(brokenRandom);
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		eResultPtr->Zero();
-		encryptor->EncryptL(*iPlaintext, *eResultPtr);
-		noEncryptions++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	encryptTime = end.MicroSecondsFrom(start);
-	TReal encrypttime = I64REAL(encryptTime.Int64());
-	CleanupStack::PopAndDestroy(1); //SetThreadRandomLC
-	
-	iResult = ETrue;
-	if (*iCiphertext!=*eResult)
-	{
-		iResult = EFalse;		
-	}
-
-    CleanupStack::PopAndDestroy(2);		// encryptor, eResult
-
-	__UHEAP_MARKEND;
-
-	if (iResult)
-	{
-		TReal rate = I64REAL(encryptTime.Int64()) / noEncryptions;
-		TBuf<256> buf;
-		_LIT(KEncryptTime, "\tEncrypt Time: %f us/encryption (%i encryptions in %f us)\r\n");
- 		buf.Format(KEncryptTime, rate, noEncryptions, encrypttime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSAEncryptVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-	CRSAPKCS1v15Encryptor* encryptor = CRSAPKCS1v15Encryptor::NewL(*iPubKey);
-	CleanupStack::PushL(encryptor);
-    HBufC8* encryptBuf = HBufC8::NewLC(encryptor->MaxOutputLength());
-	TPtr8 encryptPtr = encryptBuf->Des();
-	CRandomIncrementing* brokenRandom = new(ELeave)CRandomIncrementing(1);
-	SetThreadRandomLC(brokenRandom);
-	encryptor->EncryptL(*iPlaintext, encryptPtr);
-	CleanupStack::PopAndDestroy(1); //threadrandom;
-    iResult = (*iCiphertext == *encryptBuf);
-
-	CleanupStack::PopAndDestroy(encryptBuf);
-    CleanupStack::PopAndDestroy(encryptor);
-
-	__UHEAP_MARKEND;
-	}
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSADecryptVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CRSADecryptVector::NewL(RFs& aFs,
-                               CConsoleBase& aConsole,
-                               Output& aOut, 
-                               const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSADecryptVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSADecryptVector::NewLC(RFs& aFs,
-                                CConsoleBase& aConsole,
-                                Output& aOut, 
-                                const TTestActionSpec& aTestActionSpec)
-	{
-	CRSADecryptVector* self = new(ELeave) CRSADecryptVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSADecryptVector::~CRSADecryptVector()
-	{
-	delete iPrivKey;
-	delete iPlaintext;
-	delete iCiphertext;
-	}
-
-CRSADecryptVector::CRSADecryptVector(RFs& /*aFs*/, 
-                                     CConsoleBase& aConsole,
-                                     Output& aOut)					 
-: CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSADecryptVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPrivKey = VectorUtils::ReadRSAPrivateKeyL(aTestActionSpec.iActionBody);
-
-	TPtrC8 ctextIn = Input::ParseElement(aTestActionSpec.iActionBody, KCiphertextStart, KCiphertextEnd);
-	iCiphertext = VectorUtils::ParseBinaryL(ctextIn);
-
-	TPtrC8 ptextIn = Input::ParseElement(aTestActionSpec.iActionBody, KPlaintextStart, KPlaintextEnd);
-	iPlaintext = VectorUtils::ParseBinaryL(ptextIn);
-	}
-
-void CRSADecryptVector::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(*iPrivKey);
-	CleanupStack::PushL(decryptor);
-
-	TTimeIntervalMicroSeconds decryptTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	HBufC8 *dResult = HBufC8::NewLC(decryptor->MaxOutputLength());
-	TPtr8 dPtr = dResult->Des();
-	TPtr8* dResultPtr = &dPtr;
-	TInt noDecryptions = 0;
-
-//	Time decryption	
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		decryptor->DecryptL(*iCiphertext, *dResultPtr);
-		noDecryptions++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	decryptTime = end.MicroSecondsFrom(start);
-	TReal decrypttime = I64REAL(decryptTime.Int64());
-	iResult = ETrue;
-	if (*iPlaintext!=*dResult)
-	{
-		iResult = EFalse;		
-	}
-
-    CleanupStack::PopAndDestroy(2);		// decryptor, dResult
-
-	__UHEAP_MARKEND;
-	
-	if (iResult)
-	{
-		TReal rate = I64REAL(decryptTime.Int64()) / noDecryptions;
-		TBuf<256> buf;
-		_LIT(KDecryptTime, "\tDecrypt Time: %f us/decryption (%i decryptions in %f us)\r\n");
-  		buf.Format(KDecryptTime, rate, noDecryptions, decrypttime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSADecryptVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(*iPrivKey);
-	CleanupStack::PushL(decryptor);
-
-	HBufC8* decryptBuf = HBufC8::NewLC(decryptor->MaxOutputLength());
-	TPtr8 decryptPtr = decryptBuf->Des();
-	TRAPD(err, decryptor->DecryptL(*iCiphertext, decryptPtr));
-    iResult = (err == KErrNone) && (*iPlaintext == *decryptBuf);
-
- 	CleanupStack::PopAndDestroy(decryptBuf);
- 	CleanupStack::PopAndDestroy(decryptor);
-
-	__UHEAP_MARKEND;
-	}
-
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSADecryptVectorCRT
-////////////////////////////////////////////////////////////////////////////////
-CTestAction* CRSADecryptVectorCRT::NewL(RFs& aFs,
-                               CConsoleBase& aConsole,
-                               Output& aOut, 
-                               const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSADecryptVectorCRT::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSADecryptVectorCRT::NewLC(RFs& aFs,
-                                CConsoleBase& aConsole,
-                                Output& aOut, 
-                                const TTestActionSpec& aTestActionSpec)
-	{
-	CRSADecryptVectorCRT* self = new(ELeave) CRSADecryptVectorCRT(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSADecryptVectorCRT::~CRSADecryptVectorCRT()
-	{
-	delete iPrivKey;
-	delete iPlaintext;
-	delete iCiphertext;
-	}
-
-CRSADecryptVectorCRT::CRSADecryptVectorCRT(RFs& /*aFs*/, 
-                                     CConsoleBase& aConsole,
-                                     Output& aOut)					 
-: CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSADecryptVectorCRT::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPrivKey = VectorUtils::ReadRSAPrivateKeyCRTL(aTestActionSpec.iActionBody);
-
-	TPtrC8 ctextIn = Input::ParseElement(aTestActionSpec.iActionBody, KCiphertextStart, KCiphertextEnd);
-	iCiphertext = VectorUtils::ParseBinaryL(ctextIn);
-
-	TPtrC8 ptextIn = Input::ParseElement(aTestActionSpec.iActionBody, KPlaintextStart, KPlaintextEnd);
-	iPlaintext = VectorUtils::ParseBinaryL(ptextIn);
-	}
-
-void CRSADecryptVectorCRT::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(*iPrivKey);
-	CleanupStack::PushL(decryptor);
-
-	TTimeIntervalMicroSeconds decryptTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-	
-	TInt noDecryptions = 0;
-	HBufC8 *dResult = HBufC8::NewLC(decryptor->MaxOutputLength());
-	TPtr8 dPtr = dResult->Des();
-	TPtr8* dResultPtr = &dPtr;
-	
-//	Time decryption	
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		decryptor->DecryptL(*iCiphertext, *dResultPtr);
-		noDecryptions++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	decryptTime = end.MicroSecondsFrom(start);
-	TReal decrypttime = I64REAL(decryptTime.Int64());
-		
-	iResult = ETrue;
-	if (*iPlaintext!=*dResult)
-	{
-		iResult = EFalse;		
-	}
-
-
-    CleanupStack::PopAndDestroy(2);		// decryptor, dResult
-
-	__UHEAP_MARKEND;
-	
-	if (iResult)
-	{
-		TReal rate = I64REAL(decryptTime.Int64()) / noDecryptions;
-		TBuf<256> buf;
-		_LIT(KDecryptTime, "\tDecrypt Time: %f us/decryption (%i decryptions in %f us)\r\n");
-  		buf.Format(KDecryptTime, rate, noDecryptions, decrypttime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSADecryptVectorCRT::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Decryptor* decryptor = CRSAPKCS1v15Decryptor::NewL(*iPrivKey);
-	CleanupStack::PushL(decryptor);
-
-	HBufC8* decryptBuf = HBufC8::NewLC(decryptor->MaxOutputLength());
-	TPtr8 decryptPtr = decryptBuf->Des();
-	TRAPD(err, decryptor->DecryptL(*iCiphertext, decryptPtr));
-    iResult = (err == KErrNone) && (*iPlaintext == *decryptBuf);
-
- 	CleanupStack::PopAndDestroy(decryptBuf);
- 	CleanupStack::PopAndDestroy(decryptor);
-
-	__UHEAP_MARKEND;
-	}
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSASignVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CRSASignVector::NewL(RFs& aFs,
-                                  CConsoleBase& aConsole,
-                                  Output& aOut, 
-                                  const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSASignVector::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSASignVector::NewLC(RFs& aFs,
-                                   CConsoleBase& aConsole,
-                                   Output& aOut, 
-                                   const TTestActionSpec& aTestActionSpec)
-	{
-	CRSASignVector* self = new(ELeave) CRSASignVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSASignVector::~CRSASignVector()
-	{
-    delete iPrivKey;
-	delete iDigestInfo;
-	delete iSignature;
-	}
-
-CRSASignVector::CRSASignVector(RFs& /*aFs*/, 
-                               CConsoleBase& aConsole,
-                               Output& aOut)					 
-    : CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSASignVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPrivKey = VectorUtils::ReadRSAPrivateKeyL(aTestActionSpec.iActionBody);
-
-	TPtrC8 digestInfoIn = Input::ParseElement(aTestActionSpec.iActionBody, KDigestInfoStart, KDigestInfoEnd);
-	iDigestInfo = VectorUtils::ParseBinaryL(digestInfoIn);
-
-	TPtrC8 signatureIn = Input::ParseElement(aTestActionSpec.iActionBody, KSignatureStart, KSignatureEnd);
-	RInteger integer = VectorUtils::ParseIntegerL(signatureIn);
-	CleanupStack::PushL(integer);
-	iSignature = CRSASignature::NewL(integer);
-	CleanupStack::Pop(&integer);
-	}
-
-void CRSASignVector::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Signer* signer = CRSAPKCS1v15Signer::NewL(*iPrivKey);
-	CleanupStack::PushL(signer);
-
-	TPtrC8 digestPtr = iDigestInfo->Des();
-
-	TTimeIntervalMicroSeconds signTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	TInt noSignings = 0;
-
-	const CRSASignature *testSig = 0;
-	
-//	Time signing
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		testSig = signer->SignL(digestPtr);
-		delete testSig;
-		noSignings++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	signTime = end.MicroSecondsFrom(start);
-	TReal signtime = I64REAL(signTime.Int64());
-	
-	iResult = ETrue;
-	testSig = signer->SignL(digestPtr);
-	if (!(*testSig==*iSignature))
-	{
-		iResult = EFalse;		
-	}
-	delete testSig;
-
-	CleanupStack::PopAndDestroy();		//	signer
-
-	__UHEAP_MARKEND;
-	
-	if (iResult)
-	{
-		TReal rate = I64REAL(signTime.Int64()) / noSignings;
-		TBuf<256> buf;
-		_LIT(KSignTime, "\tSign Time: %f us/signing (%i signings in %f us)\r\n");
-		buf.Format(KSignTime, rate, noSignings, signtime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSASignVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-	CRSAPKCS1v15Signer* digestSigner = CRSAPKCS1v15Signer::NewL(*iPrivKey);
-	CleanupStack::PushL(digestSigner);
-	
-	TPtrC8 digestPtr2 = iDigestInfo->Des();
-	const CRSASignature* testSig2 = digestSigner->SignL(digestPtr2);
-    CleanupStack::PushL(const_cast<CRSASignature*>(testSig2));
-    iResult = (*testSig2 == *iSignature);
-
-	CleanupStack::PopAndDestroy(const_cast<CRSASignature*>(testSig2));
-	CleanupStack::PopAndDestroy(digestSigner);
-
-	__UHEAP_MARKEND;
-	}
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSASignVectorCRT
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CRSASignVectorCRT::NewL(RFs& aFs,
-                                  CConsoleBase& aConsole,
-                                  Output& aOut, 
-                                  const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSASignVectorCRT::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSASignVectorCRT::NewLC(RFs& aFs,
-                                   CConsoleBase& aConsole,
-                                   Output& aOut, 
-                                   const TTestActionSpec& aTestActionSpec)
-	{
-	CRSASignVectorCRT* self = new(ELeave) CRSASignVectorCRT(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSASignVectorCRT::~CRSASignVectorCRT()
-	{
-    delete iPrivKey;
-	delete iDigestInfo;
-	delete iSignature;
-	}
-
-CRSASignVectorCRT::CRSASignVectorCRT(RFs& /*aFs*/, 
-                               CConsoleBase& aConsole,
-                               Output& aOut)					 
-    : CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSASignVectorCRT::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPrivKey = VectorUtils::ReadRSAPrivateKeyCRTL(aTestActionSpec.iActionBody);
-
-	TPtrC8 digestInfoIn = Input::ParseElement(aTestActionSpec.iActionBody, KDigestInfoStart, KDigestInfoEnd);
-	iDigestInfo = VectorUtils::ParseBinaryL(digestInfoIn);
-
-	TPtrC8 signatureIn = Input::ParseElement(aTestActionSpec.iActionBody, KSignatureStart, KSignatureEnd);
-	RInteger integer = VectorUtils::ParseIntegerL(signatureIn);
-	CleanupStack::PushL(integer);
-	iSignature = CRSASignature::NewL(integer);
-	CleanupStack::Pop(&integer);
-	}
-
-void CRSASignVectorCRT::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-    CRSAPKCS1v15Signer* signer = CRSAPKCS1v15Signer::NewL(*iPrivKey);
-	CleanupStack::PushL(signer);
-
-	TPtrC8 digestPtr = iDigestInfo->Des();
-
-	TTimeIntervalMicroSeconds signTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-	TInt noSignings = 0;
-
-	const CRSASignature *testSig = NULL;
-	
-//	Time signing
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		testSig = signer->SignL(digestPtr);
-		delete testSig;
-		noSignings++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	signTime = end.MicroSecondsFrom(start);
-	TReal signtime = I64REAL(signTime.Int64());
-	
-	testSig = signer->SignL(digestPtr);
-	iResult = ETrue;
-	if (!(*testSig==*iSignature))
-	{
-		iResult = EFalse;		
-	}
-	delete testSig;
-
-	CleanupStack::PopAndDestroy(); // signer
-
-	__UHEAP_MARKEND;
-	
-	if (iResult)
-	{
-		TReal rate = I64REAL(signTime.Int64()) / noSignings;
-		TBuf<256> buf;
-		_LIT(KSignTime, "\tSign Time: %f us/signing (%i signings in %f us)\r\n");
-		buf.Format(KSignTime, rate, noSignings, signtime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSASignVectorCRT::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-	CRSAPKCS1v15Signer* signer = CRSAPKCS1v15Signer::NewL(*iPrivKey);
-	CleanupStack::PushL(signer);
-
-	TPtrC8 digestPtr = iDigestInfo->Des();
-	const CRSASignature* testSig = signer->SignL(digestPtr);
-    CleanupStack::PushL(const_cast<CRSASignature*>(testSig));	
-
-#ifdef _DEBUG 
-	HBufC8* theResultSig = testSig->S().BufferLC();
-	HBufC8* theExpectedSig = iSignature->S().BufferLC();
-	iResult = (theResultSig->Compare(*theExpectedSig)) ==0 ? ETrue : EFalse;
-	CleanupStack::PopAndDestroy(2);	
-#endif	
-	
-	iResult = (*testSig == *iSignature);
-
-	CleanupStack::PopAndDestroy(const_cast<CRSASignature*>(testSig));
-    CleanupStack::PopAndDestroy(signer);
-
-	__UHEAP_MARKEND;
-	}
-
-
-////////////////////////////////////////////////////////////////////////////////
-// CRSAVerifyVector
-////////////////////////////////////////////////////////////////////////////////
-
-CTestAction* CRSAVerifyVector::NewL(RFs& aFs,
-                                  CConsoleBase& aConsole,
-                                  Output& aOut, 
-                                  const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CRSAVerifyVector::NewLC(aFs, aConsole, aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CRSAVerifyVector::NewLC(RFs& aFs,
-                                   CConsoleBase& aConsole,
-                                   Output& aOut, 
-                                   const TTestActionSpec& aTestActionSpec)
-	{
-	CRSAVerifyVector* self = new(ELeave) CRSAVerifyVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CRSAVerifyVector::~CRSAVerifyVector()
-	{
-    delete iPubKey;
-	delete iDigestInfo;
-	delete iSignature;
-	}
-
-CRSAVerifyVector::CRSAVerifyVector(RFs& /*aFs*/, 
-                                   CConsoleBase& aConsole,
-                                   Output& aOut)					 
-    : CVectorTest(aConsole, aOut)
-	{
-	}
-
-void CRSAVerifyVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CVectorTest::ConstructL(aTestActionSpec);
-
-    iPubKey = VectorUtils::ReadRSAPublicKeyL(aTestActionSpec.iActionBody);
-
-	TPtrC8 digestInfoIn = Input::ParseElement(aTestActionSpec.iActionBody, KDigestInfoStart, KDigestInfoEnd);
-	iDigestInfo = VectorUtils::ParseBinaryL(digestInfoIn);
-
-	TPtrC8 signatureIn = Input::ParseElement(aTestActionSpec.iActionBody, KSignatureStart, KSignatureEnd);
-	RInteger integer = VectorUtils::ParseIntegerL(signatureIn);
-	CleanupStack::PushL(integer);
-	iSignature = CRSASignature::NewL(integer);
-	CleanupStack::Pop(&integer);
-	}
-
-void CRSAVerifyVector::DoPerformanceTestActionL()
-{
-	__UHEAP_MARK;
-
-
-	TTimeIntervalMicroSeconds verifyTime(0);
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds KIterationTime(iPerfTestIterations);
-
-	TInt noVerifies = 0;
-    
-	CRSAPKCS1v15Verifier *verifier = CRSAPKCS1v15Verifier::NewLC(*iPubKey);	
-	    	
-//	Time verification
-	start.UniversalTime();
-	while (diff < KIterationTime)
-		{
-		iResult = verifier->VerifyL(*iDigestInfo, *iSignature);
-		if (!iResult)
-			{
-			break;
-			}
-		noVerifies++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-	verifyTime = end.MicroSecondsFrom(start);
-	TReal verifytime = I64REAL(verifyTime.Int64());
-
-	CleanupStack::PopAndDestroy(verifier);
-
-	__UHEAP_MARKEND;
-	
-	if (iResult)
-	{
-		TReal rate = I64REAL(verifyTime.Int64()) / noVerifies;
-		TBuf<256> buf;
-		_LIT(KVerifyTime, "\tVerify Time: %f us/verify (%i verifies in %f us)\r\n");
-		buf.Format(KVerifyTime, rate, noVerifies, verifytime);
-		iOut.writeString(buf);
-	}
-	else
-	{
-		_LIT(KNoTimingInfo, "\tTest Failed! No benchmark data\n");
-		iOut.writeString(KNoTimingInfo);
-	}
-}
-
-void CRSAVerifyVector::DoPerformActionL()
-	{
-	__UHEAP_MARK;
-
-	CRSAPKCS1v15Verifier* verifier = CRSAPKCS1v15Verifier::NewL(*iPubKey);
-	CleanupStack::PushL(verifier);
-    iResult = verifier->VerifyL(*iDigestInfo, *iSignature);
-
-	CleanupStack::PopAndDestroy(verifier);
-    
-	__UHEAP_MARKEND;
-	}
--- a/crypto/weakcrypto/test/tasymmetric/trsavector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,166 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Vector tests for RSA ciphers
-*
-*/
-
-
-#ifndef __TRSAVECTOR_H__
-#define __TRSAVECTOR_H__
-
-#include "tvectortest.h"
-
-/**
- * Runs RSA encryption vectors.
- */
-
-class CRSAEncryptVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSAEncryptVector();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSAEncryptVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CRSAPublicKey* iPubKey;
-	HBufC8* iPlaintext;
-	HBufC8* iCiphertext;
-    };
-
-/**
- * Runs RSA decryption vectors.
- */
-
-class CRSADecryptVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSADecryptVector();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSADecryptVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CRSAPrivateKey* iPrivKey;    
-	HBufC8* iCiphertext;
-	HBufC8* iPlaintext;
-    };
-
-
-
-/**
- * Runs RSA decryption vectors.
- */
-
-class CRSADecryptVectorCRT : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSADecryptVectorCRT();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSADecryptVectorCRT(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-private:
-	CRSAPrivateKey* iPrivKey;    
-	HBufC8* iCiphertext;
-	HBufC8* iPlaintext;
-    };
-
-/**
- * Runs RSA signing vectors.
- */
-
-class CRSASignVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSASignVector();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSASignVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CRSAPrivateKey* iPrivKey;
-	HBufC8* iDigestInfo;
-	CRSASignature* iSignature;
-    };
-
-class CRSASignVectorCRT : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSASignVectorCRT();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSASignVectorCRT(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CRSAPrivateKey* iPrivKey;
-	HBufC8* iDigestInfo;
-	CRSASignature* iSignature;
-    };
-/**
- * Runs RSA verification vectors.
- */
-
-class CRSAVerifyVector : public CVectorTest
-    {
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CRSAVerifyVector();
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformanceTestActionL();
-private:
-	CRSAVerifyVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	CRSAPublicKey* iPubKey;    
-	HBufC8* iDigestInfo;
-	CRSASignature* iSignature;
-    };
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/tsignatureinput.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "tsignatureinput.h"
-
-/* CHashingSignatureInput */
-
-CHashingSignatureInput* CHashingSignatureInput::NewL(
-    CMessageDigest::THashId aHashId)
-    {
-    CHashingSignatureInput* self = NewLC(aHashId);
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-CHashingSignatureInput* CHashingSignatureInput::NewLC(
-    CMessageDigest::THashId aHashId)
-    {
-    CHashingSignatureInput* self = new(ELeave)CHashingSignatureInput;
-    CleanupStack::PushL(self);
-    self->ConstructL(aHashId);
-    return self;
-    }
-
-void CHashingSignatureInput::Update(const TDesC8& aInput)
-    {
-    iHash->Update(aInput);
-    }
-
-TPtrC8 CHashingSignatureInput::Final(void)
-    {
-    return iHash->Final();
-    }
-
-CHashingSignatureInput::CHashingSignatureInput(void)
-    {
-    }
-
-CHashingSignatureInput::~CHashingSignatureInput(void)
-    {
-    delete iHash;
-    }
-
-void CHashingSignatureInput::ConstructL(CMessageDigest::THashId aHashId)
-    {
-    iHash = CMessageDigestFactory::NewDigestL(aHashId);
-    }
-
--- a/crypto/weakcrypto/test/tasymmetric/tsignatureinput.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef __TSIGNATUREINPUT_H__
-#define __TSIGNATUREINPUT_H__
-
-#include <e32base.h>
-#include <hash.h>
-/** An abstract class capable of representing a message to be signed or
-* verified.
-* @publishedPartner
-* @released
-*/
-class CSignatureInput : public CBase
-    {
-public:
-    virtual void Update(const TDesC8& aInput) = 0;
-    virtual TPtrC8 Final(void) = 0;
-protected:
-	CSignatureInput(void) {}
-private:
-    CSignatureInput(const CSignatureInput&);
-    CSignatureInput& operator=(const CSignatureInput&);
-    };
-
-/**
-* @publishedPartner
-* @released
-*/
-class CHashingSignatureInput : public CSignatureInput
-    {
-public:
-    static CHashingSignatureInput* NewL(CMessageDigest::THashId aHashId);
-    static CHashingSignatureInput* NewLC(CMessageDigest::THashId aHashId);
-    virtual void Update(const TDesC8& aInput);
-    virtual TPtrC8 Final(void);
-    ~CHashingSignatureInput(void);
-protected:
-    CHashingSignatureInput(void);
-    void ConstructL(CMessageDigest::THashId aHashId);
-private:
-    CMessageDigest* iHash;
-private:
-    CHashingSignatureInput(const CHashingSignatureInput&);
-    CHashingSignatureInput& operator=(const CHashingSignatureInput&);
-    };
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/tvectortest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,139 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tvectortest.h"
-#include <e32twin.h>
-#include "t_input.h"
-#include <asymmetric.h>
-#include <random.h>
-#include <padding.h>
-#include "tvectorutils.h"
-#include "performancetest.h"
-#include <securityerr.h>
-
-_LIT8(KKeyBitsStart, "<keybits>");
-_LIT8(KKeyBitsEnd, "</keybits>");
-_LIT8(KResultStart, "<result>");
-_LIT8(KResultEnd, "</result>");
-
-////////////////////////////////////////////////////////////////////////////////
-// CVectorTest 
-////////////////////////////////////////////////////////////////////////////////
-
-CVectorTest::CVectorTest(CConsoleBase& aConsole, Output& aOut)
-    : CTestAction(aConsole, aOut), iPerfTestIterations(100)
-    {
-    }
-
-CVectorTest::~CVectorTest()
-    {
-    }
-
-void CVectorTest::ConstructL(const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction::ConstructL(aTestActionSpec);
-
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{//	Number of test iterations
-		TPtrC8 itsPtr = Input::ParseElement(aTestActionSpec.iActionBody, KIterationsStart, KIterationsEnd);
-		if (itsPtr!=KNullDesC8)
-		{
-			TLex8 lex;
-			lex.Assign(itsPtr);
-			User::LeaveIfError(lex.Val(iPerfTestIterations));
-			if (iPerfTestIterations > KMaxIterations)
-				User::Panic(_L("AsymmetricPerformance.exe"), KErrArgument);
-		}
-	}
-
-	TPtrC8 keyBitsPtr = Input::ParseElement(aTestActionSpec.iActionBody, KKeyBitsStart, KKeyBitsEnd); 
-	if (keyBitsPtr!=KNullDesC8)
-	{
-		TLex8 lex;
-		lex.Assign(keyBitsPtr);
-		User::LeaveIfError(lex.Val(iKeyBits));
-	}
-
-    TPtrC8 resultIn = Input::ParseElement(aTestActionSpec.iActionResult, KResultStart, KResultEnd);
-    iExpectedResult = VectorUtils::ParseBoolL(resultIn);
-}
-
-void CVectorTest::PerformAction(TRequestStatus& aStatus)
-{
-	TRequestStatus* status = &aStatus;
-	
-	if (CPerformance::PerformanceTester()->IsTestingPerformance())
-	{
-		iConsole.Printf(_L(">"));	//	Indicates start of test
-		TRAP(iActionResult, DoPerformanceTestActionL());
-	}
-	else
-	{
-		TRAP(iActionResult, DoPerformActionL());
-	}
-	
-	if (iActionResult==KErrNoMemory)
-		{
-		User::Leave(iActionResult);	//	For OOM testing
-		}
-	if (iActionResult==KErrKeyNotWeakEnough)
-		{
-		iResult = ETrue;
-		iConsole.Printf(_L("Crypto libraries returned KErrKeyNotWeakEnough!  Passing test automatically.\n\r"));
-		iOut.writeString(_L("Crypto libraries returned KErrKeyNotWeakEnough!  Passing test automatically.\n\r"));
-		}
-
-	User::RequestComplete(status, iActionResult);
-
-	iActionState = CTestAction::EPostrequisite;
-
-}
-
-void CVectorTest::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CVectorTest::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CVectorTest::DoReportAction(void)
-	{
-	}
-
-void CVectorTest::DoCheckResult(TInt /*aError*/)
-	{
-//	If using Keith's fixed up testframework for testing failures, iResult will 
-//	have already been corrected for a deliberate fail result.
-//	If not using Keith's testframework iResult is still a fail result at this
-//	point, so now's the time to adjust for deliberate failure.
-
-	if (!iResult)
-		iResult = (iResult && iExpectedResult) || (!iResult && !iExpectedResult);
-
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
--- a/crypto/weakcrypto/test/tasymmetric/tvectortest.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Vector tests for asymmetric ciphers
-*
-*/
-
-
-#ifndef __TVECTOR_H__
-#define __TVECTOR_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <asymmetric.h>
-#include <asymmetrickeys.h>
-#include <random.h>
-
-/**
- * Base class for vector tests that implements the virtual methods they all have
- * in common.
- */
-
-class CVectorTest : public CTestAction
-{
-public:
-	virtual void PerformAction(TRequestStatus& aStatus);
-protected:
-    /** Constructor for derived classes. */
-    CVectorTest(CConsoleBase& aConsole, Output& aOut);
-
-//	xxx should this be protected?
-    virtual ~CVectorTest();
-	virtual void ConstructL(const TTestActionSpec& aTestActionSpec);
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-protected:
-	virtual void DoPerformActionL() = 0;
-	virtual void DoPerformanceTestActionL() = 0;
-protected:
-	TInt iPerfTestIterations;
-private:
-	TInt iActionResult;
-	TInt iKeyBits;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tasymmetric/tvectorutils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,258 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tvectorutils.h"
-#include "t_input.h"
-
-//	RSA
-_LIT8(KModStart, "<modulus>");
-_LIT8(KModEnd, "</modulus>");
-_LIT8(KPubExpStart, "<publicExponent>");
-_LIT8(KPubExpEnd, "</publicExponent>");
-_LIT8(KPrivExpStart, "<privateExponent>");
-_LIT8(KPrivExpEnd, "</privateExponent>");
-_LIT8(KPStart, "<P>");
-_LIT8(KPEnd, "</P>");
-_LIT8(KQStart, "<Q>");
-_LIT8(KQEnd, "</Q>");
-_LIT8(KdPStart, "<dP>");
-_LIT8(KdPEnd, "</dP>");
-_LIT8(KdQStart, "<dQ>");
-_LIT8(KdQEnd, "</dQ>");
-_LIT8(KqInvStart, "<qInv>");
-_LIT8(KqInvEnd, "</qInv>");
-
-_LIT8(KTrueVal, "ETrue");
-_LIT8(KFalseVal, "EFalse");
-
-RInteger VectorUtils::ParseIntegerL(const TDesC8& aDes)
-    {
-	HBufC8* buf = ParseBinaryL(aDes);
-	CleanupStack::PushL(buf);
-    RInteger result = RInteger::NewL(*buf);
-    CleanupStack::PopAndDestroy(buf);
-
-    return result;
-    }
-
-HBufC8* VectorUtils::ParseBinaryL(const TDesC8& aDes)
-{
-    __ASSERT_ALWAYS(aDes.Length() % 2 == 0, User::Panic(_L("ParseBinaryL"), KErrArgument));
-	int length = aDes.Length() / 2;
-	HBufC8* buf = HBufC8::NewL(length);
-    TPtr8 ptr = buf->Des();
-	ptr.SetLength(length);
-
-    for (TInt i = 0 ; i < aDes.Length() ; i += 2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aDes[i]-(aDes[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aDes[i+1]-(aDes[i+1]>'9'?('A'-10):'0'));
-		ptr[i / 2] = tmp;
-        }
-
-	return buf;
-}
-
-// Print an Integer into hex, only works for positive integers
-TDesC* VectorUtils::PrintIntegerL(const TInteger& aInt)
-{
-	HBufC8* binary = aInt.BufferLC();
-	TDesC* result = PrintBinaryL(*binary);
-	CleanupStack::PopAndDestroy(binary);
-
-	return result;
-}
-
-// Print a binary string into hex
-TDesC* VectorUtils::PrintBinaryL(const TDesC8& aData)
-{
-	int length = aData.Length() * 2;
-	HBufC* buf = HBufC::NewL(length);
-	TPtr ptr = buf->Des();
-	ptr.SetLength(length);
-
-	for (int i = 0 ; i < aData.Length() ; ++i)
-		{
-		TUint8 val = aData[i];
-		TUint8 n = (TUint8) ((val & 0xf0) >> 4);
-		ptr[i * 2] = (TUint8) (n < 10 ? ('0' + n) : ('A' + n - 10));
-		n = (TUint8) (val & 0x0f);
-		ptr[i * 2 + 1] = (TUint8) (n < 10 ? ('0' + n) : ('A' + n - 10));
-		}
-
-	return buf;
-}
-
-TBool VectorUtils::ParseBoolL(const TDesC8& aDes)
-    {
-    TBool result = EFalse;
-
-    if (aDes == KTrueVal)
-        result = ETrue;
-    else if (aDes != KFalseVal)
-        User::Leave(KErrArgument);
-
-    return result;
-    }
-
-CRSAPublicKey* VectorUtils::ReadRSAPublicKeyL(const TDesC8& aData)
-    {
-	TPtrC8 modIn = Input::ParseElement(aData, KModStart, KModEnd);
-    RInteger mod = ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 pubExpIn = Input::ParseElement(aData, KPubExpStart, KPubExpEnd);
-	RInteger pubExp = ParseIntegerL(pubExpIn);
-	CleanupStack::PushL(pubExp);
-
-	CRSAPublicKey* result = CRSAPublicKey::NewL(mod, pubExp);
-
-	CleanupStack::Pop(&pubExp);
-	CleanupStack::Pop(&mod);
-    return result;
-    }
-
-CRSAPrivateKeyStandard* VectorUtils::ReadRSAPrivateKeyL(const TDesC8& aData)
-    {
-	TPtrC8 modIn = Input::ParseElement(aData, KModStart, KModEnd);
-    RInteger mod = ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 privExpIn = Input::ParseElement(aData, KPrivExpStart, KPrivExpEnd);
-	RInteger privExp = ParseIntegerL(privExpIn);
-	CleanupStack::PushL(privExp);
-
-	CRSAPrivateKeyStandard* result  = CRSAPrivateKeyStandard::NewL(mod, privExp);
-
-	CleanupStack::Pop(&privExp);
-	CleanupStack::Pop(&mod);
-    return result;
-    }
-
-CRSAPrivateKeyCRT* VectorUtils::ReadRSAPrivateKeyCRTL(const TDesC8& aData)
-    {
-	TPtrC8 modIn = Input::ParseElement(aData, KModStart, KModEnd);
-    RInteger mod = ParseIntegerL(modIn);
-	CleanupStack::PushL(mod);
-
-	TPtrC8 pIn = Input::ParseElement(aData, KPStart, KPEnd);
-	RInteger P = ParseIntegerL(pIn);
-	CleanupStack::PushL(P);
-
-	TPtrC8 qIn = Input::ParseElement(aData, KQStart, KQEnd);
-	RInteger Q = ParseIntegerL(qIn);
-	CleanupStack::PushL(Q);
-	
-	TPtrC8 dpIn = Input::ParseElement(aData, KdPStart, KdPEnd);
-	RInteger dP = ParseIntegerL(dpIn);
-	CleanupStack::PushL(dP);
-	
-	TPtrC8 dqIn = Input::ParseElement(aData, KdQStart, KdQEnd);
-	RInteger dQ = ParseIntegerL(dqIn);
-	CleanupStack::PushL(dQ);
-
-	TPtrC8 qInvIn = Input::ParseElement(aData, KqInvStart, KqInvEnd);
-	RInteger qInv = ParseIntegerL(qInvIn);
-	CleanupStack::PushL(qInv);
-	
-	CRSAPrivateKeyCRT* privKey  = CRSAPrivateKeyCRT::NewL(mod, P, Q, dP, dQ, qInv);
-
-	CleanupStack::Pop(&qInv);
-	CleanupStack::Pop(&dQ);
-	CleanupStack::Pop(&dP);
-	CleanupStack::Pop(&Q);
-	CleanupStack::Pop(&P);
-	CleanupStack::Pop(&mod);
-    return (privKey);
-    }
-
-CDSAPublicKey* VectorUtils::ReadDSAPublicKeyL(const TDesC8& aData)
-    {
-	TPtrC8 pIn = Input::ParseElement(aData, _L8("<p>"));
-    RInteger p = ParseIntegerL(pIn);
-	CleanupStack::PushL(p);
-
-	TPtrC8 qIn = Input::ParseElement(aData, _L8("<q>"));
-    RInteger q = ParseIntegerL(qIn);
-	CleanupStack::PushL(q);
-
-	TPtrC8 gIn = Input::ParseElement(aData, _L8("<g>"));
-    RInteger g = ParseIntegerL(gIn);
-	CleanupStack::PushL(g);
-
-	TPtrC8 yIn = Input::ParseElement(aData, _L8("<y>"));
-    RInteger y = ParseIntegerL(yIn);
-	CleanupStack::PushL(y);
-
-	CDSAPublicKey* result = CDSAPublicKey::NewL(p, q, g, y);
-
-	CleanupStack::Pop(&y);
-	CleanupStack::Pop(&g);
-	CleanupStack::Pop(&q);
-	CleanupStack::Pop(&p);
-
-    return result;
-    }
-
-CDSAPrivateKey* VectorUtils::ReadDSAPrivateKeyL(const TDesC8& aData)
-    {
-	TPtrC8 pIn = Input::ParseElement(aData, _L8("<p>"));
-    RInteger p = ParseIntegerL(pIn);
-	CleanupStack::PushL(p);
-
-	TPtrC8 qIn = Input::ParseElement(aData, _L8("<q>"));
-    RInteger q = ParseIntegerL(qIn);
-	CleanupStack::PushL(q);
-
-	TPtrC8 gIn = Input::ParseElement(aData, _L8("<g>"));
-    RInteger g = ParseIntegerL(gIn);
-	CleanupStack::PushL(g);
-
-	TPtrC8 xIn = Input::ParseElement(aData, _L8("<x>"));
-    RInteger x = ParseIntegerL(xIn);
-	CleanupStack::PushL(x);
-
-	CDSAPrivateKey* result = CDSAPrivateKey::NewL(p, q, g, x);
-
-	CleanupStack::Pop(&x);
-	CleanupStack::Pop(&g);
-	CleanupStack::Pop(&q);
-	CleanupStack::Pop(&p);
-
-    return result;
-    }
-
-CDSASignature* VectorUtils::ReadDSASignatureL(const TDesC8& aData)
-    {
-	TPtrC8 rIn = Input::ParseElement(aData, _L8("<r>"));
-    RInteger r = ParseIntegerL(rIn);
-	CleanupStack::PushL(r);
-
-	TPtrC8 sIn = Input::ParseElement(aData, _L8("<s>"));
-    RInteger s = ParseIntegerL(sIn);
-	CleanupStack::PushL(s);
-
-	CDSASignature* result = CDSASignature::NewL(r, s);
-
-	CleanupStack::Pop(&s);
-	CleanupStack::Pop(&r);
-
-    return result;
-    }
--- a/crypto/weakcrypto/test/tasymmetric/tvectorutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,69 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TVECTORUTILS_H__
-#define __TVECTORUTILS_H__
-
-#include <e32std.h>
-#include "asymmetrickeys.h"
-#include "asymmetric.h"
-#include "bigint.h"
-
-/**
- * Defines static utility methods used by the vector tests.
- */
-
-class VectorUtils
-    {
-public:
-
-    /** Parse a hex string and return a new RInteger. */
-    static RInteger ParseIntegerL(const TDesC8& aDes);
-
-    /** Parse a hex string and return a new descriptor containing the binary data. */
-	static HBufC8* ParseBinaryL(const TDesC8& aDes);
-
-    /** Return a new descriptor containing the hex representation of an Integer. */
-	static TDesC* PrintIntegerL(const TInteger& aInt);
-
-    /** Return a new descriptor containing the hex representation of a binary string. */
-	static TDesC* PrintBinaryL(const TDesC8& aData);
-
-    /** Parse a string containg either "ETrue" or "EFalse" and return a TBool. */
-    static TBool ParseBoolL(const TDesC8& aDes);
-
-    /** Create an RSA public key from from action data. */
-    static CRSAPublicKey* ReadRSAPublicKeyL(const TDesC8& aData);
-
-    /** Create an RSA private key from from action data. */
-    static CRSAPrivateKeyStandard* ReadRSAPrivateKeyL(const TDesC8& aData);
-
-	/** Create an RSA private key from by CRT */
-	static CRSAPrivateKeyCRT* ReadRSAPrivateKeyCRTL(const TDesC8& aData);
-
-    /** Create a DSA public key from from action data. */
-    static CDSAPublicKey* ReadDSAPublicKeyL(const TDesC8& aData);
-
-    /** Create a DSA private key from from action data. */
-    static CDSAPrivateKey* ReadDSAPrivateKeyL(const TDesC8& aData);    
-
-    /** Create a DSA signature from from action data. */
-	static CDSASignature* ReadDSASignatureL(const TDesC8& aData);
-    };
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/scripts/tbasicmathstests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,713 +0,0 @@
-<action>
-	<actionname>BasicMaths Forward Backward Test</actionname>
-	<actiontype>BasicMathsFB</actiontype>
-	<actionbody>
-		<bits>2048</bits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAA</a>
-		<b>55555555</b>
-		<ans>FFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes overflow</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAA</a>
-		<b>55555556</b>
-		<ans>0100000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAA</a>
-		<b>5555555555555555</b>
-		<ans>FFFFFFFFFFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes overflow</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAB</a>
-		<b>5555555555555555</b>
-		<ans>010000000000000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAA</b>
-		<a>55555555</a>
-		<ans>FFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes overflow, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAA</b>
-		<a>55555556</a>
-		<ans>0100000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAAAAAAAAAA</b>
-		<a>5555555555555555</a>
-		<ans>FFFFFFFFFFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes overflow, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAAAAAAAAAB</b>
-		<a>5555555555555555</a>
-		<ans>010000000000000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD two large numbers</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</b>
-		<a>2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE</a>
-		<ans>369D0369B20369CD369D0369B20369CD369D0369B20369CD369D0369B20369CD369D0369B20369CD</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD two large numbers</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</b>
-		<a>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</a>
-		<ans>1234567890ABCDEF1234567890ABCDEF2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD two large numbers with overflow</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>1234567890ABCDEF1234567890ABCDEF2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE</b>
-		<a>FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</a>
-		<ans>0100000000000000000000000000000000000000001234567890ABCDEF1234567890ABCDEF2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDD</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>CCCCCCCC</a>
-		<b>33333333</b>
-		<ans>99999999</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>FFFFFFFF</a>
-		<b>98765432</b>
-		<ans>6789ABCD</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 8 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAA</a>
-		<b>5555555555555555</b>
-		<ans>5555555555555555</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 2 large numbers</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>0100000000000000000000000000000000000000001234567890ABCDEF1234567890ABCDEF2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDD</a>
-		<b>0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</b>
-		<ans>0100000000000000000000000000000000000000000234567890ABCDEF1234567890ABCDEF2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE2468ACF121579BDE</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- multiply small</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>10</a>
-		<b>10</b>
-		<ans>0100</ans>
-		<op>multiply</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- multiply large</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</a>
-		<b>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</b>
-		<ans>014B66DC328828BCA8DE2CC20802F69A5070F2A7DD7DC477F803B88DB2F892559F967E7388736033472944595DEE2E10EEBC0A3F3368FBEE93B8026CA3D37852EC253C86CE58AA75449276A0F8DDDC979CFFB0BB23630EB9F56CEAD54DE840DC4DDA24EF786D72FEA6475F09A2F2A521</ans>
-		<op>multiply</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- multiply large different size operands</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</a>
-		<b>014B66DC328828BCA8DE2CC20802F69A5070F2A7DD7DC477F803B88DB2F892559F967E7388736033472944595DEE2E10EEBC0A3F3368FBEE93B8026CA3D37852EC253C86CE58AA75449276A0F8DDDC979CFFB0BB23630EB9F56CEAD54DE840DC4DDA24EF786D72FEA6475F09A2F2A521</b>
-		<ans>1790FC50E94EFB2011AA5462D02F816CAD8FF281833861E5EB41D6AD02699C8BCAC000E54DC3315E4C0A712A6545205D6F21277C48EF6988ED512EE83CD51B8165B4691E042E86209A7F173A33373C668BB1393CC9EF3E53394ACF25C8568BE6A34BD8F52E6D2520C9B456AAFC330A01F3373D39ED952BE980BAAAF23F5B3AFDB00A5EB75D49A43E81265889476067ABF40E9867FD9F854608C31E538006FD0CBF43EA4BCE96CF</ans>
-		<op>multiply</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- divide basic</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>1230981F</a>
-		<b>0238973B</b>
-		<ans>08</ans>
-		<op>divide</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- modulo basic</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>1230981F</a>
-		<b>0238973B</b>
-		<ans>6BDE47</ans>
-		<op>modulus</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- divide basic no remainder</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>11C4B9D8</a>
-		<b>0238973B</b>
-		<ans>08</ans>
-		<op>divide</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- modulus basic no remainder</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>11C4B9D8</a>
-		<b>0238973B</b>
-		<ans>00</ans>
-		<op>modulus</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- divide large</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</a>
-		<b>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</b>
-		<ans>E10000</ans>
-		<remainder>8D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000F0FFFF</remainder>
-		<op>divide</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- modulus large</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>0FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF</a>
-		<b>1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF1234567890ABCDEF</b>
-		<ans>08D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000E100000008D90000F0FFFF</ans>
-		<op>modulus</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 1</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>01</a>
-		<b>08</b>
-		<ans>01</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 2</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>02</a>
-		<b>08</b>
-		<ans>00</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 3</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>03</a>
-		<b>08</b>
-		<ans>03</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 4</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>05</a>
-		<b>08</b>
-		<ans>05</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 5</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>05</a>
-		<b>07</b>
-		<ans>03</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 1</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>18</a>
-		<b>20</b>
-		<ans>08</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 2</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>06E4</a>
-		<b>0364</b>
-		<ans>1C</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 3</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>0364</a>
-		<b>06E4</b>
-		<ans>1C</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 4 (two really big prime numbers)</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>96FC57652F5221A76EB6CC1E6EA830CA44819734C9146590D6269935D9FE0A550B664BA486C237EBC592A1A5083A55C1F67F4820BC5C485C622D2E539EB348B6ADFCA98C74C5ECBC707785E86528F2127FF51B48CDF9D7F0182D52E0EB87440F43F170CB1070A2EB53BE7C5F9400729ED5C180A3C589C3E7FADA19E7AA94730C3896744A976BDB344AAF51235AD0868E4F336BCFA732F4E5CC67ED204EFC70373C8397007909690154EA7064C5DF1A6511C8D731AC307E4623B265DFD71C14CCE20EA277E2156CF4191DEC3247C2A2BB893A07C4D1574D1C3C69400A14952B23AA53A445627A9D6F112751BDFEAC9743BFCB2585CC6747D42549</a>
-		<b>AB33704201D2EF00EA25B8DC1FE2A80B33677B6E9272E8FEFE43F72844E17EF624C257B0C731CCB53DF2879BD0E7128D7E42588869AEF5076CDDB63410999FBC1E197A933D07AA49DFFE96490F8C1F8F0097F34EBD090FCCB4435C1E551327C9F0BC570F1C2FDF4D6A0728E06F7E80DE2FF1CB35B6839BA2D2B746CBC40C300D0D2B06A812719F157713F506DDB7C18EECBF8EA32D68D0258D188664AD349CFB0AED250FC6A963C173E1A1A7A7416148ABB35D5FA85ABBF9E53CE060AD31AF15A71955ED654ED76CDCBEC2ACF44F53CF41F44F289C531036F7FA040EEC7D0F0AE02EA91CBE737CC8FF24475E44B55FF6DE6BD0E75D32C35BCF5D</b>
-		<ans>01</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM start</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAA</a>
-		<b>55555555</b>
-		<ans>FFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes overflow</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAA</a>
-		<b>55555556</b>
-		<ans>0100000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAA</a>
-		<b>5555555555555555</b>
-		<ans>FFFFFFFFFFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes overflow</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAB</a>
-		<b>5555555555555555</b>
-		<ans>010000000000000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAA</b>
-		<a>55555555</a>
-		<ans>FFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 4 bytes overflow, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAA</b>
-		<a>55555556</a>
-		<ans>0100000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAAAAAAAAAA</b>
-		<a>5555555555555555</a>
-		<ans>FFFFFFFFFFFFFFFF</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- ADD 8 bytes overflow, b > a</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<b>AAAAAAAAAAAAAAAB</b>
-		<a>5555555555555555</a>
-		<ans>010000000000000000</ans>
-		<op>add</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>CCCCCCCC</a>
-		<b>33333333</b>
-		<ans>99999999</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 4 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>FFFFFFFF</a>
-		<b>98765432</b>
-		<ans>6789ABCD</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- SUB 8 bytes</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>AAAAAAAAAAAAAAAA</a>
-		<b>5555555555555555</b>
-		<ans>5555555555555555</ans>
-		<op>subtract</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 1</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>01</a>
-		<b>08</b>
-		<ans>01</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 2</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>02</a>
-		<b>08</b>
-		<ans>00</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 3</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>03</a>
-		<b>08</b>
-		<ans>03</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 4</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>05</a>
-		<b>08</b>
-		<ans>05</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- InverseMod 5</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>05</a>
-		<b>07</b>
-		<ans>03</ans>
-		<op>inversemod</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 1</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>18</a>
-		<b>20</b>
-		<ans>08</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 2</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>06E4</a>
-		<b>0364</b>
-		<ans>1C</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Vector Test -- GCD 3</actionname>
-	<actiontype>BasicMathsVector</actiontype>
-	<actionbody>
-		<a>0364</a>
-		<b>06E4</b>
-		<ans>1C</ans>
-		<op>gcd</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>BasicMaths Forward Backward Test</actionname>
-	<actiontype>BasicMathsFB</actiontype>
-	<actionbody>
-		<bits>512</bits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tconstructiontests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-<action>
-	<actionname>Construction Vector Test #1 -- even number of bytes</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E6F</input>
-		<memorylayout>6F5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Construction Vector Test #2 -- odd number of bytes</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E</input>
-		<memorylayout>5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Construction Vector Test #3 -- long unsigned string</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F</input>
-		<memorylayout>0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM start</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Construction Vector Test #1 -- even number of bytes</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E6F</input>
-		<memorylayout>6F5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Construction Vector Test #2 -- odd number of bytes</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E</input>
-		<memorylayout>5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Construction Vector Test #3 -- long unsigned string</actionname>
-	<actiontype>ConstructionVector</actiontype>
-	<actionbody>
-		<input>1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F1A2B3C4D5E6F7A8B9C0D1E2F3A4B5C6D7E8F9A0B1C2D3E4F5A6B7C8D9E0F</input>
-		<memorylayout>0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A0F9E8D7C6B5A4F3E2D1C0B9A8F7E6D5C4B3A2F1E0D9C8B7A6F5E4D3C2B1A</memorylayout>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tmontgomerytests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,148 +0,0 @@
-<action>
-	<actionname>Montgomery Multiplication Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>16A0</a>
-		<b>04CD</b>
-		<modulus>011BBF</modulus>
-		<ans>011AC1</ans>
-		<op>multiply</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Reduce Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>6C9E20</a>
-		<modulus>011BBF</modulus>
-		<ans>011AC1</ans>
-		<op>reduce</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Square Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>6C9E20</a>
-		<modulus>011BBF</modulus>
-		<ans>FC04</ans>
-		<op>square</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Exponentiation Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>16A0</a>
-		<b>04CD</b>
-		<modulus>011BBF</modulus>
-		<ans>70A6</ans>
-		<op>exponentiate</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Exponentiation Vector Test #2</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>125C881E</a>
-		<b>B009377B</b>
-		<modulus>0160126EF7</modulus>
-		<ans>0160126EF6</ans>
-		<op>exponentiate</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Exponentiation Forward Backward test</actionname>
-	<actiontype>MontgomeryFB</actiontype>
-	<actionbody>
-		<bits>0200</bits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM start</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Multiplication Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>16A0</a>
-		<b>04CD</b>
-		<modulus>011BBF</modulus>
-		<ans>011AC1</ans>
-		<op>multiply</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Reduce Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>6C9E20</a>
-		<modulus>011BBF</modulus>
-		<ans>011AC1</ans>
-		<op>reduce</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Square Vector Test #1</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>6C9E20</a>
-		<modulus>011BBF</modulus>
-		<ans>FC04</ans>
-		<op>square</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Exponentiation Vector Test #2</actionname>
-	<actiontype>MontgomeryVector</actiontype>
-	<actionbody>
-		<a>125C881E</a>
-		<b>B009377B</b>
-		<modulus>0160126EF7</modulus>
-		<ans>0160126EF6</ans>
-		<op>exponentiate</op>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tperformancetests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,230 +0,0 @@
-// <iterations> is for how long time the test will be run measured in seconds.
-
-<action>
-	<actionname>Montgomery Performance Tests 1 512 bit random exponentiation</actionname>
-	<actiontype>MontgomeryPerformance</actiontype>
-	<actionbody>
-		<bits>512</bits>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Performance Tests 2 1024 bit random exponentiation</actionname>
-	<actiontype>MontgomeryPerformance</actiontype>
-	<actionbody>
-		<bits>1024</bits>
-		<iterations>20</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Montgomery Performance Tests 3 2048 bit random exponentiation</actionname>
-	<actiontype>MontgomeryPerformance</actiontype>
-	<actionbody>
-		<bits>2048</bits>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#356 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>039F9BCF09A995</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#357 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>0341D0E82B3E81</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#358 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>02D94A8735D113</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#694 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>C172218B482F5E66982A0A4283F6A26795AEFB32C1A0659733</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#695 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>DC9F6AE82E1957F7126743AA9940F6CA8CE25C1C4180000ED3</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#696 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>A222E4A8E9BED3EF5F16096AC7C2508BC4CFE43EE771F1C8A5</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#798 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>0F62D50FDE3EF31518A6FEE0E560D9799D58F38B667D3D8F316CFEE90DADD93ECD29B19DA468798FEA2A28EB3C31F21BC26E33B8D428AD151D4F1C57B0A745</prime>
-		<iterations>20</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#799 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>09BE697DAC5815D1D09026750D168A690A88812239BEC1133213220E875D01489B1B837317705B9656CAF1C3A14037058746057E033117FA275718DB2558DD</prime>
-		<iterations>20</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#800 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>08BC68DD8CDDE87509160E05EFEEF2BD27CE45D7774AA41AAC61950AED0597DD0BED7AE305904536197DAC0AAE62BC484E4927354495760222B38B096A7BDD</prime>
-		<iterations>20</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#807 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>A720FEC20FB6518AABED0EDBCD0221E2A5AEF3B5B729D879EEBD0BD35F577B42D15B0BD6AC39F355BE1FD55242E0DD9173CFEA1ACD36A733FE368F79B87EBAC7090F5977DC4B6772FF96B0771D85297175D4157E0D1B9EDA3225DCDE8D730DAB3B83DDE26B97B7352554A57FAAA9BD03304550C833D61210B99BE53D89</prime>
-		<iterations>30</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#808 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>9A4E1EA85C063BA17DC02CCB82F17C537291C79DB60F5C79D5A24616D415773F5D3BE3D40B754D17ADCF0A432C17447C6722C1D61863D348100AC9A493F63B3971F98544CD5798CB0859607EEF3B98023C4AF20DFA093E85090CCA683D61549D498597B3E8BE1BA02561864A89AD9AE9BA15CC9798A56CAAC29F4CE1D7</prime>
-		<iterations>30</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#809 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>A139CBCAA6C325842507755069043ED17818BA3694568385505D03E448D72F363DE0C36BA9B717E213975E3FC94872253C51B66A0AF18D59B736D024DF9B2ABF4D400E7177CF21295F433B7DE074391B14FAFDB9241FC773B8F42390EE37455FC81490D033AAD4646C67CFD303F57CB5D983807E41C0B081C050CDAAB3</prime>
-		<iterations>30</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#904 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>0A91B01C98D4F99C6D86C4F2C159224940371B1E1B59EB377EA0537BA737B0DF543C53D231E20C34A5E17107FFE68ABEF9BFB1836D66F6C6DC28E2A8A13E1AB2657DB7D8F21E988EC5A332B3637D423CCF94081B0AD5C019269D6A043DAAC57C5BC25BE8B581C1FFA42FB45B229127CC42C76DDAEE59E24A5E51B4502CB2FFD0FB9952ADB5B1B981494D9432B15918915B3C4B4FF5D0DF3E05FA71AE1D8990F27C109A8F49DB254B149E9F53503B55FA774B68D946BA757F204F747B</prime>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#905 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>0E02BBF4CF2BFE980FDAABB51C092521747883DD9DFC35958039DB60CB2C244C93E9AC70C011D0C95A8FA70769D0450F0133FDCE0C207083796B6C149244FD3475EB5D6AD6EAA3C341525707C095C1DEEEDE88F0FD6AEF378B9077E653C40C8EB617F257D5C607CCAC0FABB6E331BAAB3C7E4EBFDC42D7311D1A9D38AE222BB0AE62DA76B8259D09F43917250455CF625F8DBA3380B39C2E95BD16D03A00A4A3E414EB9098BC4F203FBF646553A560BB06DBF720B5DDCCE8367DBB0B</prime>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#906 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>0D2D2F7D8D824F224A2B12A96C813188F90B60FABB5F39A8FEC326FBC3683D94B34CE5C2D396A39FB850C90DC817C6933B0A935B74030CF9112D3BB19D07519A05C37A08B44AC6F47140F2FC6ED2F4D5D4D0D569578ABDC79639AC4C152B85B2BCD680858C327F0D1B0116F97BFEF8130A20FF9AB2959EEB3EE31A49D715E4357A15E78EA799B020F8A9F7A59B92F0014F002B4F50FCE5EEB9BAEC52663A8A0B171B44EF982449337FDCC75CA5150266D06351B3B637A9DA91367A2B</prime>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#1101 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>9E3994BA839691BC3C5F1FEA48D712E64F99DA22974D358C5E6CF5DD9ED3C89B598868D9D6096C7B1C80F1B7DFA8F5FB4E1F5C445FF8A58848B8F11FF35FCBA40985A98FA9F25335B6C0FF725439887B5F6A8F43D3B66F31EE7A18F21B9FDC81D19377559ACE30DA3BB236028BA8E197FE8E3B753467DA5A82CA989CE6763BD42B81ECBB326F9DFE9ACF28DCF234A45CF5A3282384A82E16A06F8B8AC75964BD84DD62F2A2DB03114B1A346F684480BF315DCDD65049A350AA07B696AD41A5410460D5406A9117B2012A7BA0130897B81AF98CA281056B9E09F2AE58318B176047C8539741ED154B20F14B713B3189453CD4A2C101C6C918BEC5</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#1102 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>AB33704201D2EF00EA25B8DC1FE2A80B33677B6E9272E8FEFE43F72844E17EF624C257B0C731CCB53DF2879BD0E7128D7E42588869AEF5076CDDB63410999FBC1E197A933D07AA49DFFE96490F8C1F8F0097F34EBD090FCCB4435C1E551327C9F0BC570F1C2FDF4D6A0728E06F7E80DE2FF1CB35B6839BA2D2B746CBC40C300D0D2B06A812719F157713F506DDB7C18EECBF8EA32D68D0258D188664AD349CFB0AED250FC6A963C173E1A1A7A7416148ABB35D5FA85ABBF9E53CE060AD31AF15A71955ED654ED76CDCBEC2ACF44F53CF41F44F289C531036F7FA040EEC7D0F0AE02EA91CBE737CC8FF24475E44B55FF6DE6BD0E75D32C35BCF5D</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Performance Test (#1103 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes)</actionname>
-	<actiontype>PrimeVectorPerformance</actiontype>
-	<actionbody>
-		<prime>96FC57652F5221A76EB6CC1E6EA830CA44819734C9146590D6269935D9FE0A550B664BA486C237EBC592A1A5083A55C1F67F4820BC5C485C622D2E539EB348B6ADFCA98C74C5ECBC707785E86528F2127FF51B48CDF9D7F0182D52E0EB87440F43F170CB1070A2EB53BE7C5F9400729ED5C180A3C589C3E7FADA19E7AA94730C3896744A976BDB344AAF51235AD0868E4F336BCFA732F4E5CC67ED204EFC70373C8397007909690154EA7064C5DF1A6511C8D731AC307E4623B265DFD71C14CCE20EA277E2156CF4191DEC3247C2A2BB893A07C4D1574D1C3C69400A14952B23AA53A445627A9D6F112751BDFEAC9743BFCB2585CC6747D42549</prime>
-		<iterations>10</iterations>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Performance Tests (512 bit)</actionname>
-	<actiontype>PrimeGenPerformance</actiontype>
-	<actionbody>
-		<bits>512</bits>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Performance Tests (1024 bit)</actionname>
-	<actiontype>PrimeGenPerformance</actiontype>
-	<actionbody>
-		<bits>1024</bits>
-		<iterations>30</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Performance Tests (2048 bit)</actionname>
-	<actiontype>PrimeGenPerformance</actiontype>
-	<actionbody>
-		<bits>2048</bits>
-		<iterations>60</iterations>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tprimefailuretests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5968 +0,0 @@
-<action>
-	<actionname>Prime Vector Failure Test #1</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D0E21AC160D03F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #2</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04FC17B11D7BF311</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #3</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0593158FAF6AE131</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #4</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0304012FA6A762CD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #5</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>34B31B02187811</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #6</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>023BA52E5AA8AD81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #7</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06323B635AD11EC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #8</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07C1D97C872745</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #9</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0201010E29A40EA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #10</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B8E257B38F59E9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #11</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>018DBC97F897EB89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #12</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9492E28BDB0251</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #13</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01C75387377B77C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #14</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08F93D3740153479</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #15</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>13AA7DFB39C6C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #16</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>064631480F958EE9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #17</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08011A546D16AED5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #18</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02442D83A5E3A96D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #19</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0426986D22BF8041</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #20</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D7D8A03B92E1A41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #21</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027D8D3B500D7381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #22</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01E775BCC73A1A45</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #23</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>240A4A1B7D02E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #24</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B57BF0F50D6909</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #25</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0490C4A6308D3211</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #26</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>072E23D1CAAA1051</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #27</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACDBE223536091</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #28</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01940B2AC2D95661</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #29</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A86DFE657662AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #30</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D54D6F79FE9069</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #31</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0845CC53CBBDA201</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #32</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FD2BC2372F9BA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #33</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09B47B8C439E8201</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #34</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0648097C3F33B0C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #35</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>053AC25AA0311D01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #36</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0615A0FD468A528D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #37</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0103D5390A291C35</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #38</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06A07E9D0A0547C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #39</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D00A9C327031781</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #40</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D1A5C9AC60E381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #41</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A275C1B43FB73E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #42</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>072E50CE194889C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #43</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03C3E62A04F74461</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #44</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D6F7F11563F991</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #45</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D3FF7721685E01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #46</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D9CDE3697ECBC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #47</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2C6505526F0E81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #48</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05AF60A3A3997301</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #49</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5784E2E53D3CF1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #50</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>190DF94D5526F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #51</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0936DD820D6B5DE5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #52</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>022C42F39C19B5A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #53</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>081E2E78A4F46C01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #54</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>079A0093CFF45F4D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #55</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0557A1213F902A81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #56</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0111D98332018CD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #57</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0129F3FA72CEA105</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #58</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>620E0EDC303A3B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #59</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C69659838CD1671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #60</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011D5EC462E79E79</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #61</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6AAB109E02CA81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #62</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0117F8C8B7903DA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #63</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B77822CA2D46C01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #64</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>069CD67C361517C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #65</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>013AD412F593E461</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #66</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FE2051D77788C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #67</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>067CD03CCEC5D219</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #68</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0309ACE3EB41B281</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #69</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7D94042A0EA931</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #70</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BB571646E039CB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #71</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0694E7C8E5C9E63D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #72</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08809D479E7F4D91</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #73</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CCE29A2872BA601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #74</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>032ED334E50E9D81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #75</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB034B2A631DA41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #76</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BCC6D6ABC6BB19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #77</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AFAFDDCF0647FF1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #78</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>273975E9C57A01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #79</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>059CA41D3BA3C0C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #80</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07C1D5DDDB86F5D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #81</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0749D33DAB459429</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #82</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0764266E1A60BE31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #83</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>66EA88D366CF29</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #84</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B169095987C1829</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #85</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C275D94C7C92651</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #86</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>047889C256619941</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #87</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>18AB03C60BE951</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #88</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0412D36899ECF541</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #89</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>094E0BC4BD22AD61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #90</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B0D4BE75ADCA94D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #91</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01B76D029C922359</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #92</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F415DC84315671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #93</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026530498D98E091</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #94</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0425C0084F470C3F</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #95</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1998FA34746A41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #96</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C44A6BDC3C250CF</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #97</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026A760C39B60001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #98</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021C99545F64CA75</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #99</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A82D82458FF0C61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #100</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>099E83F31481C0A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #101</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DC3E08A253637D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #102</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CEBDAEE74CC67E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #103</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086EDC029C097EFF</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #104</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04552557F59E8445</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #105</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0541B65F9FDCC841</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #106</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05025682D5B08A01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #107</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B0C7B86AB98371</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #108</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05FA03F7B0277F9F</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #109</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0816BCB7C437BE95</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #110</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0850DB2C17E7D661</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #111</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>046AB2591CD17901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #112</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05A6B7C0972CBF09</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #113</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0275893165CCA849</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #114</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06BE359EADF54381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #115</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0505AD702A0E8395</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #116</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0556427CC23C7E03</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #117</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CE9B58E7BD728B1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #118</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04AC4B6C83F10311</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #119</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01289A75AF9DABA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #120</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B727DB5F974519</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #121</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C2E2D2857F2A3DD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #122</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ACC067C8FCD2921</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #123</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03599272DAC0C5A7</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #124</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5A881666D8BB69</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #125</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>166508D3A71A51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #126</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05F714B57BC16C81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #127</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0476C35AE57A59F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #128</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0223F38B6B3A6D31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #129</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0780483B48D5E369</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #130</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>033DB8DF970526A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #131</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>050024A2DD7C8D89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #132</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D0078020748901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #133</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>028EC3191125FE13</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #134</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0488C915F74FA251</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #135</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FD3E44F1B37AC3</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #136</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035E746EBCCCBA51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #137</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03106507F8A546F3</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #138</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>015B2DC2F6AF03A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #139</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05A0CFD2E3C42761</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #140</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09A731BB7C8FEB11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #141</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>010D474A07B7A4FD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #142</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04E20EA0EA854579</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #143</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02582B334FBB60F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #144</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>048EEFC93E4E6631</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #145</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035AB511DDE0D845</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #146</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01AAABA7184A7F53</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #147</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>023DDD6379D64089</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #148</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06CD24DA5DE47819</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #149</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BD5A8E19AF9659B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #150</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C09B51DD63E9001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #151</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>075F55F1A2B5ECD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #152</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026B54BE962AAE11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #153</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>010CAEF3EFE51A61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #154</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>019DBD933D9B1C49</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #155</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027D32EE780B514F</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #156</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D540625057BDC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #157</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DC7BB63A7F6369</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #158</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01360C7921ED2489</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #159</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0700A6F262AB1781</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #160</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01121383C829DB89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #161</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EDBDE5D821FCE1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #162</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F9972E261CB675</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #163</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>064A1A44BCF752A5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #164</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>068438426EC5E9A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #165</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>063B4A39A9CEEE89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #166</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0240216D0F0BC445</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #167</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04BF099DC8052C21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #168</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>056B6A8FD24E06C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #169</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0104EED0957C2901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #170</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D08BFC7A14F2B39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #171</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D35D814CF1B4709</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #172</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04668E984403FCC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #173</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01A04DDA61FDBA1D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #174</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05BF67CE08B30FA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #175</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05C05F911CC5A6E5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #176</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0594940070D0ED19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #177</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A8B9423A217BC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #178</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A88192985A7A89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #179</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0995A640BC300FC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #180</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D74856B55FB32A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #181</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AAB4BCF5EFA0301</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #182</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BFD06062728E19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #183</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B4BE4456A942061</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #184</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0196ABEDBF844681</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #185</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07A5E946BBD85141</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #186</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BFCF927DFDE61B7</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #187</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>045B7015EED0F2E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #188</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>047DFEC3FA021019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #189</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04A2705E4127AF19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #190</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07A1DB9D323EF983</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #191</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021ADC9D6E727019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #192</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03BBCBE9BBDC1689</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #193</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9FCAD0B0361059</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #194</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>092F20C453DAB401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #195</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D23D210ED8F6F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #196</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08103DB7EB827B79</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #197</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>70A19C06C96301</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #198</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A26EADE33B7FFC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #199</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D0C381330E39B89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #200</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0342312CD67C0029</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #201</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>096CA50A88733CA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #202</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F52916447FB5F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #203</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B87B32BF2BFDEC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #204</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C72ED217B38B2FD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #205</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07F6417D4E962D41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #206</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0994CF8360C6BE39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #207</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086667E994CC6331</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #208</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05FFDCB36C3207C5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #209</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011A9C174E88F871</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #210</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>012476280DC698C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #211</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0972AC37C4777289</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #212</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07DF3F8CA8362C61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #213</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B2BAA4F091FE08B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #214</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A74C3E3D5BCE841</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #215</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011B61A7F537DFA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #216</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06CBDF00C94A25D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #217</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0110FCE5F89E7401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #218</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C08A2775D4C4FD9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #219</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>062691BB4314FBCD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #220</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B461F882BFD5E71</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #221</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D6AE827178EE011</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #222</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB2FB0949D98711</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #223</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04CA4EEB01403671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #224</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09010ACE9342239D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #225</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9FF4ABF096BCC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #226</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02168616E778AA41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #227</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FDEAA6F93F0401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #228</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>065CC22C146EDF11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #229</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08F2E4F5E25CEEB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #230</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A345B4C1F074573</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #231</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>063E96A098A53AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #232</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02C8F59FEF11C999</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #233</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0965EF6D8C361551</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #234</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>042BF68C63D00D0D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #235</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0543650BEA8A63F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #236</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D52682084EA9019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #237</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C331B550876105</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #238</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>057016A6DC9EFE81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #239</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C57F55BB0D93B95</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #240</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07C5D747A61BD3D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #241</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01D7B5E87371A031</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #242</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AFB0A1D98C66CAD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #243</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C458EF9E3E13031</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #244</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AC72CFBD8995599</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #245</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0983181ED34C278D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #246</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>076A08065635D2B9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #247</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DB12F22C3230A69</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #248</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>091C4B9D9266CA11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #249</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B8A0E9B4123C2A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #250</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D239068E0F80C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #251</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>15E52BBAB1C5D5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #252</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D05CE0DA69141</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #253</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CEE3A92C0CA71</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #254</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0304012FA6A762CD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #255</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E453A1ABD5A41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #256</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>19DD10CE313E55</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #257</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06323B635AD11EC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #258</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07C1D97C872745</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #259</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0201010E29A40EA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #260</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1A697A92443719</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #261</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>018DBC97F897EB89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #262</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AFE75B410AD01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #263</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>16EF8D894F23A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #264</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08F93D3740153479</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #265</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>13AA7DFB39C6C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #266</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1FB4FBE29E19E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #267</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08011A546D16AED5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #268</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1EA3A3031C6571</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #269</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09324821E7E741</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #270</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1D171FC0405B51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #271</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027D8D3B500D7381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #272</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01CF0CB0881281</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #273</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>240A4A1B7D02E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #274</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B57BF0F50D6909</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #275</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0490C4A6308D3211</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #276</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>105C038EBDE6A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #277</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACDBE223536091</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #278</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01940B2AC2D95661</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #279</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A86DFE657662AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #280</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D54D6F79FE9069</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #281</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0845CC53CBBDA201</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #282</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1FC7F28AF9D0C5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #283</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>20661FF8FE0801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #284</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A3E06330648F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #285</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>013CEFD999C441</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #286</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01E5E63645E3D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #287</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0103D5390A291C35</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #288</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>15E59162D28901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #289</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>020813C1FC94F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #290</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D1A5C9AC60E381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #291</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BC61D868034D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #292</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>072E50CE194889C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #293</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03C3E62A04F74461</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #294</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D6F7F11563F991</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #295</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D3FF7721685E01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #296</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D9CDE3697ECBC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #297</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2C6505526F0E81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #298</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>17DBDAF5B0D601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #299</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2301F55CCC2FC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #300</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>190DF94D5526F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #301</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F61D11494789D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #302</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>21FE042F520E11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #303</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>081E2E78A4F46C01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #304</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>21B5D5DB76E9ED</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #305</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0557A1213F902A81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #306</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0111D98332018CD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #307</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0129F3FA72CEA105</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #308</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>620E0EDC303A3B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #309</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C69659838CD1671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #310</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011D5EC462E79E79</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #311</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6AAB109E02CA81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #312</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0117F8C8B7903DA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #313</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B77822CA2D46C01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #314</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>069CD67C361517C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #315</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>013AD412F593E461</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #316</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EF44EFD911D21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #317</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>067CD03CCEC5D219</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #318</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0309ACE3EB41B281</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #319</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7D94042A0EA931</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #320</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BB571646E039CB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #321</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>032390A0B1D969</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #322</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08809D479E7F4D91</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #323</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CCE29A2872BA601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #324</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>032ED334E50E9D81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #325</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB034B2A631DA41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #326</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BCC6D6ABC6BB19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #327</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F31D2A68F3951</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #328</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>273975E9C57A01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #329</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>18599216377981</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #330</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03F23E50F1A341</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #331</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0749D33DAB459429</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #332</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0764266E1A60BE31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #333</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>66EA88D366CF29</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #334</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B169095987C1829</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #335</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C275D94C7C92651</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #336</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>047889C256619941</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #337</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>18AB03C60BE951</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #338</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0412D36899ECF541</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #339</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>094E0BC4BD22AD61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #340</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B0D4BE75ADCA94D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #341</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01B76D029C922359</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #342</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F415DC84315671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #343</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026530498D98E091</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #344</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0425C0084F470C3F</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #345</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1998FA34746A41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #346</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C44A6BDC3C250CF</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #347</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026A760C39B60001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #348</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021C99545F64CA75</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #349</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A82D82458FF0C61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #350</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>099E83F31481C0A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #351</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DC3E08A253637D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #352</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>16E7FAB2C76A41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #353</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086EDC029C097EFF</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #354</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04552557F59E8445</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #355</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0541B65F9FDCC841</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #356</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05025682D5B08A01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #357</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B0C7B86AB98371</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #358</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05FA03F7B0277F9F</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #359</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0816BCB7C437BE95</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #360</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0850DB2C17E7D661</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #361</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>046AB2591CD17901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #362</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05A6B7C0972CBF09</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #363</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0275893165CCA849</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #364</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06BE359EADF54381</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #365</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0505AD702A0E8395</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #366</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0556427CC23C7E03</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #367</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CE9B58E7BD728B1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #368</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04AC4B6C83F10311</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #369</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01289A75AF9DABA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #370</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B727DB5F974519</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #371</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C2E2D2857F2A3DD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #372</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ACC067C8FCD2921</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #373</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1B5F24A8081551</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #374</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5A881666D8BB69</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #375</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>166508D3A71A51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #376</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05F714B57BC16C81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #377</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0476C35AE57A59F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #378</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0223F38B6B3A6D31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #379</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0780483B48D5E369</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #380</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>033DB8DF970526A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #381</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>050024A2DD7C8D89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #382</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D0078020748901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #383</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>028EC3191125FE13</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #384</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0488C915F74FA251</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #385</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FD3E44F1B37AC3</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #386</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035E746EBCCCBA51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #387</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03106507F8A546F3</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #388</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>015B2DC2F6AF03A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #389</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>228A4504BAC689</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #390</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09A731BB7C8FEB11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #391</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>010D474A07B7A4FD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #392</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04E20EA0EA854579</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #393</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02582B334FBB60F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #394</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>048EEFC93E4E6631</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #395</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035AB511DDE0D845</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #396</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01AAABA7184A7F53</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #397</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>023DDD6379D64089</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #398</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06CD24DA5DE47819</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #399</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BD5A8E19AF9659B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #400</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C09B51DD63E9001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #401</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>075F55F1A2B5ECD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #402</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026B54BE962AAE11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #403</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>010CAEF3EFE51A61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #404</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>019DBD933D9B1C49</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #405</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>22AD7F03D67B11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #406</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D540625057BDC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #407</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DC7BB63A7F6369</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #408</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01360C7921ED2489</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #409</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0700A6F262AB1781</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #410</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01121383C829DB89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #411</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EDBDE5D821FCE1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #412</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F9972E261CB675</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #413</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>064A1A44BCF752A5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #414</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>068438426EC5E9A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #415</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>063B4A39A9CEEE89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #416</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0240216D0F0BC445</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #417</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04BF099DC8052C21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #418</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>056B6A8FD24E06C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #419</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0104EED0957C2901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #420</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D08BFC7A14F2B39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #421</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D35D814CF1B4709</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #422</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04668E984403FCC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #423</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01A04DDA61FDBA1D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #424</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05BF67CE08B30FA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #425</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05C05F911CC5A6E5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #426</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0594940070D0ED19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #427</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A8B9423A217BC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #428</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A88192985A7A89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #429</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0995A640BC300FC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #430</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D74856B55FB32A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #431</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AAB4BCF5EFA0301</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #432</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BFD06062728E19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #433</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B4BE4456A942061</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #434</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0196ABEDBF844681</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #435</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07A5E946BBD85141</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #436</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BFCF927DFDE61B7</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #437</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>045B7015EED0F2E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #438</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>047DFEC3FA021019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #439</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04A2705E4127AF19</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #440</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07A1DB9D323EF983</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #441</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021ADC9D6E727019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #442</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03BBCBE9BBDC1689</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #443</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9FCAD0B0361059</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #444</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>092F20C453DAB401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #445</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D23D210ED8F6F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #446</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08103DB7EB827B79</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #447</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>70A19C06C96301</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #448</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A26EADE33B7FFC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #449</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D0C381330E39B89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #450</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0342312CD67C0029</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #451</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>096CA50A88733CA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #452</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06F52916447FB5F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #453</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B87B32BF2BFDEC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #454</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C72ED217B38B2FD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #455</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07F6417D4E962D41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #456</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0994CF8360C6BE39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #457</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086667E994CC6331</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #458</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05FFDCB36C3207C5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #459</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011A9C174E88F871</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #460</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>012476280DC698C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #461</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0972AC37C4777289</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #462</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07DF3F8CA8362C61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #463</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B2BAA4F091FE08B</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #464</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A74C3E3D5BCE841</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #465</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011B61A7F537DFA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #466</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06CBDF00C94A25D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #467</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0110FCE5F89E7401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #468</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C08A2775D4C4FD9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #469</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>062691BB4314FBCD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #470</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B461F882BFD5E71</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #471</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D6AE827178EE011</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #472</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB2FB0949D98711</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #473</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04CA4EEB01403671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #474</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09010ACE9342239D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #475</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9FF4ABF096BCC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #476</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02168616E778AA41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #477</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FDEAA6F93F0401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #478</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>065CC22C146EDF11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #479</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08F2E4F5E25CEEB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #480</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A345B4C1F074573</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #481</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>063E96A098A53AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #482</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02C8F59FEF11C999</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #483</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0965EF6D8C361551</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #484</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>042BF68C63D00D0D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #485</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0543650BEA8A63F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #486</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D52682084EA9019</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #487</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C331B550876105</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #488</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>057016A6DC9EFE81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #489</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C57F55BB0D93B95</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #490</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07C5D747A61BD3D9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #491</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01D7B5E87371A031</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #492</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AFB0A1D98C66CAD</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #493</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C458EF9E3E13031</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #494</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AC72CFBD8995599</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #495</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0983181ED34C278D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #496</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>076A08065635D2B9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #497</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DB12F22C3230A69</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #498</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>091C4B9D9266CA11</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #499</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B8A0E9B4123C2A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #500</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D239068E0F80C9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #501</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8CBD8C5D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #502</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>042CC22FB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #503</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CE8A4CB41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #504</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1C80FE9881</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #505</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>369CBE3D7D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #506</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5B8A105E01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #507</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8E753E4501</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #508</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CFC99E7CA9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #509</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0121016A18C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #510</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01851D3BA711</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #511</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01F4682F5551</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #512</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027BC5CF8C61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #513</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03144DBD7D61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #514</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03BB7C341801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #515</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0484393C5751</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #516</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>056AC55A8E01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #517</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06650A170371</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #518</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>076D3DFA10E9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #519</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08A0C369ED91</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #520</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09F6CCBD9B41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #521</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B765E255AA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #522</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D020B343901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #523</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EAAD9B72681</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #524</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>10881ABA3375</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #525</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>126D3FD1EBB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #526</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1481DC08BC51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #527</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>16AA79C41349</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #528</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>19029D8CEE81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #529</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1B74C1200E81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #530</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1E260E0050A9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #531</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>20FF3FA626A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #532</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>23E67F4F6E41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #533</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>27024BF1ED61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #534</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A6EF999F4C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #535</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2E0F509DA8E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #536</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>319C519C0BC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #537</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3572736467A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #538</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>398AEF17FFF9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #539</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3DED07E606E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #540</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>42548A3EDC01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #541</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>47087BA72005</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #542</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4BF4E8D57121</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #543</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>50EAAFFC1081</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #544</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>567CEB57A0D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #545</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5C1467475DB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #546</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>61C7879C25C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #547</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>67B2376B2939</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #548</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6DC7A83ED4F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #549</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7447727D1BC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #550</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7AE720195B91</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #551</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>818C8C26A8F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #552</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>88588FD06041</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #553</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8F94D253BCF9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #554</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>96FF63D55761</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #555</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9E770073CD31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #556</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A66196C02801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #557</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AEB1BC5B2EE1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #558</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B6D8BA0FCC71</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #559</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BF2101CB5DB9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #560</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C88CA9245E61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #561</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D175D4F10101</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #562</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DB3DE1931161</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #563</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E4AC0F660081</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #564</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EEDAB65F041D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #565</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F8B569238B49</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #566</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0103416ABDBC31</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #567</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>010E1BC4227D81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #568</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>011903ABD8322D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #569</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01249ED686E671</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #570</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>012FE890519FB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #571</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>013B6BEFF18141</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #572</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>014721FA144CE1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #573</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0153EEDEE9E5E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #574</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>015FF780553801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #575</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>016D803724CBF9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #576</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>017A95CCFE52D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #577</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01889F567D9181</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #578</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0196FC44A3CE01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #579</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01A5BA52B4D8A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #580</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01B49775ACB761</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #581</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01C25F1343D089</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #582</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01D27E4488F771</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #583</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01E1CDC9FC7451</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #584</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01F1D60458D901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #585</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02010756010801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #586</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0210F7DF551921</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #587</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0221B46D6C7621</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #588</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>023214F1FF27F9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #589</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0243697080E539</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #590</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0255C82ED5FDB1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #591</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02676D8570B281</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #592</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027A24619586F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #593</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>028C77D1639AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #594</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>029FB041CE3041</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #595</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02B3E971BEF6C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #596</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02C68427E8A981</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #597</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DA0B7EC15781</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #598</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02EEE8F4B19D01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #599</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0304F6FD55F979</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #600</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0319C156E3C709</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #601</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>032E78801CC8F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #602</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0343D5CE198E41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #603</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0358BE8B83DD81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #604</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036F4889C1D0B1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #605</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0386D47E364AC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #606</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>039E175FAFA011</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #607</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03B5C62CB92201</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #608</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03CDF0B34348E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #609</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03E78F7E984881</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #610</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04013889CF2149</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #611</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>041A8E2C381DE1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #612</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0434DEEE208249</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #613</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>044DFB5E25B601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #614</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04687305ED1141</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #615</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04829E6532B291</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #616</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>049FC279FB53D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #617</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04BD813FC247A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #618</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04DA89FDC0BA01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #619</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>04F6A3F90F4EA1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #620</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>051416C6BAB621</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #621</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0530C7CBF57E69</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #622</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>054F24723286B7</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #623</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>056C365585A461</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #624</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>058A3885011EC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #625</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05A9EBB9462541</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #626</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05CA14340A0C21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #627</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>05EC1582146A71</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #628</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>060E1A7FF160F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #629</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>062F22FCB3A00D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #630</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0650C9B28BA881</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #631</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>067198D30CCF41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #632</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0693D9F27A8171</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #633</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06B562652CD791</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #634</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06D8FD31324701</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #635</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>06FC3FC883C831</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #636</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>071E6FC0055881</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #637</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0742041874ECC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #638</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0767C5A47AED65</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #639</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>078AB2F4B81581</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #640</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07B242AF418921</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #641</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>07D8E2B5D31B21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #642</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08004811E6EB81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #643</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0825868CB4ABC9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #644</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>084CB8991D0181</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #645</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08757F9949EE41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #646</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>089BED67B07041</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #647</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08C417A94F1359</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #648</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08EC0D748DB2D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #649</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09177FE8FAD511</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #650</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0942A3EAA01A39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #651</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>096D2FBB4C19C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #652</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09985FD23448A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #653</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C3BB90370731</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #654</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09F313C9FCD491</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #655</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A1F4228CC56D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #656</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A4C83C94BEE7D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #657</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A7792E6A5DB39</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #658</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AA7164C2B57F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #659</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AD6E92B03FE09</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #660</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B070731D8DC01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #661</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B37AC05AC1E51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #662</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B6A95A6882691</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #663</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B9D0792C8FB81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #664</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BCE569704CAF1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #665</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BFFE3288D8AD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #666</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C343282D44B41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #667</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C66AA5075AF41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #668</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9A94FFC769C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #669</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CCF4CBD52E9B1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #670</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D022EFC4C4535</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #671</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D3663463AF7E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #672</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D6AB484E10D61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #673</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DA171AB44C4D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #674</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DDABE877E8961</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #675</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E139C043F3EC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #676</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E4B94DEDE9871</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #677</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E8393934F1421</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #678</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EBB12969A9801</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #679</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EF3200072AE81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #680</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F2E835D4A1AC9</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #681</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F67CEF1A0AA51</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #682</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FA4E7789E9441</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #683</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FDD9ABEB454B1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #684</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>10173951F5E0E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #685</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>104E92D03EA939</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #686</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>108FAB71B23061</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #687</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>10CBA542242161</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #688</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>110C02BED9FED1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #689</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>114E9A38020351</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #690</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1191A4EB41E4A7</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #691</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>11D45DF7E0F2F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #692</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1215BF95B583A5</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #693</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1255CACFABBB01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #694</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>129827E5D49B81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #695</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>12DB43269B1B89</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #696</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1320999C194E21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #697</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1366D0AA203241</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #698</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>13AC1B52502969</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #699</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>13EDCBDBDDB759</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #700</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>14339DED4E68D1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #701</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>14752AED30F179</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #702</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>14C1BF1D9A3941</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #703</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1506745F497139</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #704</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1549C223459749</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #705</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1590C8447D96C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #706</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>15DAF242A760F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #707</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>16233B77152421</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #708</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>166CCAAB989EC1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #709</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>16B92CB3F579E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #710</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>170281EEF96D01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #711</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>175133DCFE02E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #712</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>179F9B78121401</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #713</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>17ECBFC16BDDD1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #714</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>183D3FBFA51F8D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #715</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>188B97EAEDA001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #716</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>18D93A53BF0A21</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #717</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>19288B6B7373E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #718</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1975E6DE22C6E1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #719</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>19C4AB0A423901</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #720</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1A176F7EB9AE01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #721</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1A6A90D1AF3601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #722</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1ABEB4257055F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #723</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1B0E7A6A493001</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #724</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1B61B99CF2C101</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #725</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1BBB704BFA3601</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #726</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1C13161CDED821</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #727</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1C66D37B199571</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #728</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1CBDCC84B6F781</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #729</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1D13282EB73C41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #730</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1D6CF8E86D6E41</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #731</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1DC7687AB6C0C1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #732</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1E2167EAA0436D</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #733</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1E7BBF10D14C01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #734</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1ED51E3E22D225</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #735</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1F2D5E91CA7839</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #736</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1F85079905C4F1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #737</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>1FE2BDA369D261</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #738</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>203B8F18BE9261</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #739</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>209A58FF6DA661</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #740</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>20FFF41794F031</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #741</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>215AEB4CD17281</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #742</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>21BAD22500C7A1</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #743</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2217CB70CFBA01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #744</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>22738E92F71385</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #745</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>22D7C77929AB81</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Failure Test #746</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2339BF2A07BB61</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tprimegen.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,192 +0,0 @@
-<action>
-	<actionname>Prime Generation Vector -- 0 (tests the overflow from something less than KLastPrimeSquared to the probablistic prime generation routines</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>32</bits>
-		<random>1304E0B1</random>
-		<prime>1304E0B5</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 0 (tests the overflow from something less than KLastPrimeSquared to the probablistic prime generation routines</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>32</bits>
-		<random>1304E0AE</random>
-		<prime>1304E0B5</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 1</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>8</bits>
-		<random>01</random>
-		<prime>02</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 2</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>32</bits>
-		<random>02</random>
-		<prime>02</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 3</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>129</bits>
-		<random>3CA8</random>
-		<prime>3CB5</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 4</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>32</bits>
-		<random>45C7</random>
-		<prime>45C7</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 5</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>32</bits>
-		<random>45C8</random>
-		<prime>45D9</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 6</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>112</bits>
-		<random>0271966D879E61</random>
-		<prime>0271966D879E61</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 7</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>112</bits>
-		<random>0271966D879E60</random>
-		<prime>0271966D879E61</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 8</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>112</bits>
-		<random>0271966D879E62</random>
-		<prime>0271966D879E6F</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 9</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>112</bits>
-		<random>098463BD095353EAA69FFBDB50</random>
-		<prime>098463BD095353EAA69FFBDB6F</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 10</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>1024</bits>
-		<random>0B495A29516BC41670BC9FABF98CD75FF119E70DED5C2895D4E035EDC350D9E665F1A112437C6DC0DB0BD6972E818E088C087A0B3295AB5D7EF0388FE44800</random>
-		<prime>0B495A29516BC41670BC9FABF98CD75FF119E70DED5C2895D4E035EDC350D9E665F1A112437C6DC0DB0BD6972E818E088C087A0B3295AB5D7EF0388FE4486D</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation Vector -- 11</actionname>
-	<actiontype>PrimeGenVector</actiontype>
-	<actionbody>
-		<bits>2048</bits>
-		<random>96FC57652F5221A76EB6CC1E6EA830CA44819734C9146590D6269935D9FE0A550B664BA486C237EBC592A1A5083A55C1F67F4820BC5C485C622D2E539EB348B6ADFCA98C74C5ECBC707785E86528F2127FF51B48CDF9D7F0182D52E0EB87440F43F170CB1070A2EB53BE7C5F9400729ED5C180A3C589C3E7FADA19E7AA94730C3896744A976BDB344AAF51235AD0868E4F336BCFA732F4E5CC67ED204EFC70373C8397007909690154EA7064C5DF1A6511C8D731AC307E4623B265DFD71C14CCE20EA277E2156CF4191DEC3247C2A2BB893A07C4D1574D1C3C69400A14952B23AA53A445627A9D6F112751BDFEAC9743BFCB2585CC6747D41F49</random>
-		<prime>96FC57652F5221A76EB6CC1E6EA830CA44819734C9146590D6269935D9FE0A550B664BA486C237EBC592A1A5083A55C1F67F4820BC5C485C622D2E539EB348B6ADFCA98C74C5ECBC707785E86528F2127FF51B48CDF9D7F0182D52E0EB87440F43F170CB1070A2EB53BE7C5F9400729ED5C180A3C589C3E7FADA19E7AA94730C3896744A976BDB344AAF51235AD0868E4F336BCFA732F4E5CC67ED204EFC70373C8397007909690154EA7064C5DF1A6511C8D731AC307E4623B265DFD71C14CCE20EA277E2156CF4191DEC3247C2A2BB893A07C4D1574D1C3C69400A14952B23AA53A445627A9D6F112751BDFEAC9743BFCB2585CC6747D423CF</prime>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation</actionname>
-	<actiontype>PrimeGen</actiontype>
-	<actionbody>
-		<bits>512</bits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>OOM start</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Generation</actionname>
-	<actiontype>PrimeGen</actiontype>
-	<actionbody>
-		<bits>512</bits>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tprimetests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,7257 +0,0 @@
-<action>
-	<actionname>OOM start</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #901 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FEFE1E5FCAE89D94E4DA1043CF1E608B2BEF1CA7C3344293BDA917B1FB9663D9B236FA04D775894150D63E8D51B453EC99A5A1DFF3F8CC54342F76C275DF6E7779D8A3C2DF79F662537CCAC64B5FC83C2F87A948B09E5040A5458C307DADF2A3A24BBF68252CCB05B5561AC8C5C11E0298CF3A37D51192AE84C2B1F601</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #9 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Prime Vector Test #1 (Failure test)</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>01</prime>
-	</actionbody>
-	<actionresult><result>EFalse</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #2</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #3</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #4 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #5 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0287</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #6 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #7 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #8 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0373</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #9 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #10 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0347</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #11 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #12 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #13 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #14 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #15 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0335</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #16 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #17 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #18 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #19 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>024B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #20 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #21 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #22 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>038F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #23 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #24 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0223</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #25 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0259</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #26 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0305</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #27 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #28 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0335</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #29 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03DF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #30 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0337</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #31 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #32 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #33 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #34 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02AB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #35 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>022D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #36 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0269</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #37 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #38 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #39 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0335</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #40 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0295</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #41 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #42 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #43 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0377</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #44 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #45 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #46 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0251</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #47 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0335</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #48 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>033D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #49 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0241</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #50 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #51 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>038B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #52 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #53 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0239</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #54 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #55 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #56 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>038B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #57 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0397</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #58 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #59 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0251</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #60 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #61 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>021D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #62 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0209</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #63 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0313</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #64 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0295</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #65 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0295</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #66 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0295</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #67 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>022D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #68 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #69 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #70 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0293</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #71 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>038F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #72 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02F9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #73 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #74 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #75 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #76 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0265</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #77 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0397</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #78 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>038F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #79 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>033D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #80 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0209</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #81 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0355</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #82 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #83 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0313</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #84 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0305</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #85 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #86 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0269</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #87 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0233</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #88 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0257</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #89 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>024B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #90 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>020B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #91 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #92 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #93 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #94 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0283</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #95 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02CF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #96 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #97 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03C7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #98 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>024B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #99 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0329</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #100 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #101 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>022D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #102 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0281</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #103 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>035F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #104 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4EC1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #105 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>66B5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #106 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7EF1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #107 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>53FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #108 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>58BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #109 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>79A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #110 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6FD3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #111 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4067</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #112 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>48A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #113 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6FA3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #114 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>71AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #115 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6803</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #116 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5DB9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #117 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5C2F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #118 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>60D9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #119 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>606B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #120 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>56AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #121 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>68BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #122 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6EFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #123 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>71C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #124 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7D4D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #125 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7E47</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #126 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>700F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #127 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7DFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #128 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6943</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #129 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>526D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #130 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5705</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #131 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>78AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #132 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>676F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #133 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7BB3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #134 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4561</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #135 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6B2D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #136 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5315</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #137 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7E2F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #138 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4831</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #139 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>568F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #140 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>588D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #141 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7633</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #142 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4BE9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #143 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7721</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #144 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>77E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #145 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6713</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #146 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5803</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #147 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5D19</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #148 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6EBF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #149 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5FE3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #150 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>53F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #151 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4B43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #152 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>41E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #153 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5567</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #154 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4C15</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #155 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5FBD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #156 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6BFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #157 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>51F7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #158 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7DB7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #159 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>51DF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #160 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>62E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #161 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7E91</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #162 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>73C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #163 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>42B5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #164 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6DCD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #165 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7B8B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #166 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>61F1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #167 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6265</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #168 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7EBB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #169 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>54F7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #170 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>43E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #171 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>51D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #172 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4E95</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #173 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>694F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #174 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4783</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #175 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5227</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #176 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>664D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #177 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>74B7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #178 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>560B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #179 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4D29</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #180 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>738D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #181 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>75B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #182 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5E49</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #183 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5435</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #184 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6BFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #185 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5FCF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #186 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5117</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #187 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4DCF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #188 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7A1B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #189 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>58BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #190 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4799</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #191 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>5AA9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #192 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4ECD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #193 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>51A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #194 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6C8F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #195 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6857</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #196 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6FF1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #197 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7D1D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #198 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7039</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #199 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>4EC1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #200 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7AA1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #201 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>6C55</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #202 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>650B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #203 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>7B77</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #204 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DB0CD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #205 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F675D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #206 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E4097</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #207 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F2029</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #208 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D517</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #209 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B997B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #210 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E0273</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #211 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B8E3B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #212 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E9065</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #213 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>090BE9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #214 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E8F5B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #215 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D529</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #216 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CD53B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #217 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FFBF3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #218 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BECC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #219 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>082DFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #220 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>097945</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #221 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AC5F7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #222 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7AFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #223 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08EAED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #224 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D3D27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #225 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B76CB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #226 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A90F3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #227 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1469</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #228 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EE37B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #229 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D1E5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #230 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EAC4D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #231 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EF58B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #232 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AD681</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #233 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E9B4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #234 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C7C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #235 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F52C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #236 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DF669</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #237 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FD621</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #238 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0959E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #239 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>081D73</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #240 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C4C1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #241 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0909E5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #242 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B60EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #243 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D9D6B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #244 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08261B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #245 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D7D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #246 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F87C7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #247 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B26F3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #248 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AE66D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #249 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A0C9D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #250 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09FC07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #251 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09E53D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #252 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2A3D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #253 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D343B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #254 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B53ED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #255 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B9741</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #256 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F270D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #257 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E89D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #258 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086F35</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #259 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AD3A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #260 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DFFFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #261 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>090E6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #262 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E551D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #263 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F462B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #264 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B36B1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #265 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>080189</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #266 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C76DB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #267 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D41BF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #268 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FFAE7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #269 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E2FFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #270 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D5F2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #271 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DEFAF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #272 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0968FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #273 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09252D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #274 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F53EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #275 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D01D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #276 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A55BF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #277 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D217F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #278 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D84D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #279 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>091EA9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #280 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08DBD1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #281 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09C643</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #282 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CC2C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #283 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D869D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #284 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A98EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #285 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A44AF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #286 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AFC1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #287 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CBEC7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #288 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D3CEB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #289 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09D711</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #290 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08CACB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #291 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A849D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #292 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B9EF7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #293 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D742B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #294 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DF5FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #295 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ED4D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #296 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D5B35</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #297 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A8353</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #298 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B1221</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #299 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F71F9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #300 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C2273</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #301 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C54D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #302 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D71FB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #303 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F69D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #304 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03646DF29CF1E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #305 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0276973F5018AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #306 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03F5C3C201FBCD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #307 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0388F2BC30F785</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #308 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027415EDA35DC5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #309 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>023971A0E99571</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #310 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0225513C151C3F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #311 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02CDDC9F5E77A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #312 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02AECF1300C44F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #313 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A56567191FE1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #314 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0380B1CE5D2499</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #315 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0300D50CAEAC45</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #316 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>034EA07E708363</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #317 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E98A6991BE1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #318 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>034E0A4E593C53</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #319 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0393D7BA61238D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #320 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>028654C6A77B49</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #321 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0301E4D9749A95</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #322 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>025FC2B322A6C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #323 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02169B63A5A80F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #324 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03F7C993FEBA01</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #325 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>031E6AB554FEE5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #326 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03DAC59ACC1839</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #327 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0244AB74986611</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #328 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02B4D3FADB7035</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #329 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0325AE78C82305</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #330 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03397D5008B4DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #331 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E916754BAA07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #332 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0343E584079181</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #333 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0283558A5CE137</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #334 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03808D2166E385</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #335 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03E59D68FFC8EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #336 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02806121D0DE6B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #337 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03A7C7C67F93C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #338 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>028C95E6C6737F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #339 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0300EDB00E51B1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #340 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03AB67CC80B7C5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #341 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D3A371CC009D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #342 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03358FFBA18F4B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #343 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>022DFD98E01EF3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #344 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03555C8628A6B5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #345 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03207330B0CC47</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #346 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>024BB53D49C3E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #347 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02BB62436F52D9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #348 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02B54CDADFA93B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #349 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03BC1A4A657EB9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #350 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>034F50B8989BB3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #351 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0213A60AB0F86B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #352 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02725D18672995</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #353 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02EAF046DD0D59</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #354 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03E5DE75610EFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #355 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0374E9BFB645A7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #356 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>039F9BCF09A995</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #357 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0341D0E82B3E81</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #358 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D94A8735D113</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #359 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>026A7D0CA6CF73</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #360 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03A48D22FB8CBD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #361 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D06470620033</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #362 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02D7914D9BB75B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #363 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036F05828FEF67</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #364 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036EB799952C55</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #365 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A07070828EC1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #366 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03764B8674AB2D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #367 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03000EF23101CB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #368 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03701E7058F5B7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #369 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>033B605B4DBF63</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #370 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02A7FCC1C830A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #371 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03D1D948162D4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #372 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>029AD1295B603F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #373 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03E8F5170FA325</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #374 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0266CEC7033F4D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #375 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>024DFDE0E8951B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #376 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027FE9A8EA016D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #377 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>039A58024FEAF9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #378 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02808A1EC1786F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #379 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02FB1B8F8AEB15</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #380 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0317CB83C5B2E5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #381 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02837670F060A9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #382 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>025390CAC1B55B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #383 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02CD6748792B43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #384 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>031956B99A2881</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #385 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02BDA12DF3981D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #386 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02854A6D678D51</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #387 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>036CDA79A7CEBD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #388 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02497B93BB8F2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #389 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>020A343FFF6AF9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #390 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02306BFB40A7B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #391 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>029BE1DAC620C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #392 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03520901DAF385</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #393 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0259AC269B13E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #394 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>031BDC7200E05B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #395 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0219DE16C61431</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #396 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03E9B724FFB87D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #397 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>027EAC6AFD01A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #398 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03A0AAE9CEFBBF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #399 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>02E73857B054D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #400 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>030664A092CD5D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #401 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03115451F218AB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #402 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>03EF2805E223C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #403 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0271966D879E61</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #404 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>098463BD095353EAA69FFBDB6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #405 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EC70BE31B91B2C5AB95C23CD1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #406 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>082D7C59155BC1979A6A18C883</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #407 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5BAED12D1CA7096434FA01C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #408 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B67915B29AB47C8A1E6E2A315</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #409 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D52C934F6F9A95DCC91C9ED0F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #410 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C45FA08698031D5E9CF40BCC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #411 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>081907BF9A45359E5A30E3B89F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #412 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ABA1A746AC2BA3BCADFFF52DB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #413 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0985D1752994D15A67F9ECD847</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #414 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B8BE43707FA031040B3FE3857</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #415 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E232C7D65E72CCA4AF9F0699B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #416 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FD891C98C4B1ABA730A2DD5B5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #417 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B77FD567E17965496D2AE8A0D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #418 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E9EADB7110808F2713BFDAEA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #419 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D8C10698A4ABE7CB913A62F9B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #420 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09E964FE48D43B685C00936015</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #421 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09DDA4601505A906DAF945E5A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #422 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E10D4CD6EC18CC5A0B2B6DC4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #423 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D9BA811F20C8E4B581FEF15B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #424 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E57B4773F289E58B96F81D4FB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #425 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BD14CE14A8C3536A3B5406C1D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #426 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>090455686C849DDA3C998545EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #427 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7C025AA5CAD888223DFC0989</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #428 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0964EE3045F7DA0C8C61CEAF95</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #429 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DFD10E07C02F5C593266D79CD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #430 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09714F2F498805B48205A7646B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #431 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C7FF375D55201458FFA14F65D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #432 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F159879B1504A111DCD726BD1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #433 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086D75CB23E9B08C89B3C2BEC5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #434 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1630510666E1C734079DE9D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #435 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FFA0E23F5B75D61915238C6C1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #436 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B1C2D24EA0B64322F09B90479</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #437 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D2003C1DD49A4F7136CD98063</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #438 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A047097BEB342AEF29248A00B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #439 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0913F5ACEB40F5747A56345605</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #440 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FF48A98FA9ACFDF37F9289323</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #441 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E87560010D682861603302B83</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #442 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B1054A689664D524CEF80BF63</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #443 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E5671034D75267EB7FD49EEC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #444 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5D944B10C050DB2F5B0F9C77</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #445 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EE3DE00BC51657109E0EF8F3F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #446 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>094E6DB14577CE3665A879EF27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #447 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5A8ED7C4358F7783B6CFB79B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #448 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E2CEA568F3D7A2A527CC09BDF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #449 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A6056D6BD145DF2333D934D3F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #450 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CAEBA01AC17F0FA651933CE61</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #451 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BB527286B34EE39A4135E0C59</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #452 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DA70FEBCED37391F3B8E7E6A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #453 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BDCAC120199402DAE303F0A37</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #454 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EE0FC51A2E839BC4AC7DDBA71</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #455 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F4113259AF639F3288320C1CF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #456 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086CFAD9ADFF8BD18DE060594F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #457 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ECC390EB54F77EA60CE0062B5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #458 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C352E5700380060EAEFE8B18D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #459 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0913167F718F4011AA4F14E507</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #460 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5324D1C7D3607D497EE63E1D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #461 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09A2D70AE986339CCE8304EDDD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #462 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F7ACFD0B09EEBE98F883CC345</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #463 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E27B86D07B1606C58807883A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #464 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B96C52013736D03E5F0E051BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #465 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A8BF3D18B8AD60E832411544F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #466 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A78EA3ED59A5AC641E46558A9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #467 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D036707440FD72C5472258385</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #468 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>091D3EE140E685894AA33C6BFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #469 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C29FAB63F6F9FD50DAD0332A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #470 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A8C92D88A0107A6AE7BD75EFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #471 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CA04E1EAFC5C680B1FBF184CD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #472 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08095BDCDE9C56C6E8784C2FDB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #473 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E22B1A50FE3414F91222E8CA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #474 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A527EEF4880EABAF573CF464B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #475 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7D9B06B2978D07C04207821B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #476 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0925ED2CA485DF93F833A27513</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #477 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BBE715FECFFB56394C01B2C51</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #478 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D5E904FF2E048A5D3F35E1CDB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #479 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A916D474A336EE6000B42C1D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #480 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B60B6C2A6B3AD90E959DFC411</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #481 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AEA7F071EBBCEB4326AD64F1D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #482 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A8ED1C422B573DC7CB3297A63</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #483 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AAAD19A527913E7AF8BE8562D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #484 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C5AA90A3C549D572A67E4B6FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #485 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D263E3256FFA21167489F7019</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #486 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9F28307CF4345ADCA7455937</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #487 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E0A39C536C2F7310D05A0A89F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #488 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D2879B9CD6174C7B8647C6B07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #489 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BCC463F68D0EAA348B9D4E097</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #490 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A4D665C50176B0DA5C6476B61</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #491 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E56F158B879CF4331668CE123</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #492 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08C4F7E703E5CD9A4A8F9F09EF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #493 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0863D2DD9896716C7942F234F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #494 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D1796052410B16D88B5B564F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #495 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D597479FC9C4135A6263BC29F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #496 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09780B9C5361389EC9CB6F7997</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #497 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FDA1A971A215B4CC77D6DAB9D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #498 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09CB6D6F532A7EA37A43556297</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #499 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09FC212E19C9ECF56CDA960941</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #500 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ECF3E3B6E741F1D464247D36F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #501 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08AEA6EF213D35CF8BAD154617</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #502 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C9E44738D624C43C5119C6E13</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #503 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09B8C69EB7BA952EEB9FDFC6B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #504 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>30E324FD79BCDA5ED5F1F97A3F406D7DE26FC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #505 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A37841A46AE52CAB5C357A6D0D5183EBE14AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #506 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2EE1621074F095DEA50134C86E0A8329948C27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #507 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3D02A5E8384299CC7E47604FD026A986C69527</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #508 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2BF987B7A3390951E11204DFFFD1893396941F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #509 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3C5BAA4FA4E4E37AAD27EFCE4B5A122CB4B159</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #510 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>30254B396FAA123CCBEEF72598135803B51251</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #511 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2555F037741478E5058169BCF82E686216D0FD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #512 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3A264C808EDC25AFD5CC6C08D223244633064F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #513 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2FA4A5EB8D5783FE15C27DC7D29D3FEBBF7E43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #514 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>26435E733FBFFBCD6776AEC4720D7DFFEC1607</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #515 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>284AE3F972E4A174F620C9460BC76B8FC32F97</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #516 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>31377A769E555BA9FD1A50C2B04D08DC048D79</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #517 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3CB8394BB475F800487852A62772D2795AECE1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #518 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>37EF7C62DC290BC8351AAAA3DAEA41D3FEF8AB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #519 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3075B359EF508491A69C17E68C090A80ED3001</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #520 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>265E3754B77CC74E2578718C99F5285299AF0F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #521 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2055545D8D83403968A5789A7B04BCD7A91A81</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #522 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>38319EDFFC09516450242D2337E9B5A8C4720F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #523 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>32BA55A7CD8B91C9A993654375F2561D4D1F9D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #524 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>37CB1C08A0D44BAC0F6AE14506CC5F0BA8A8BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #525 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2E59AE35F52DF246F267FFB9FDC2764C9664E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #526 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>330B48C0456DC2A8C50C805A42E27709E637AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #527 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2E60D74D4858190A9B1016F66813EA43730D07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #528 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>26741FECBF6D82DF8CA168E65604D2A7D56F7B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #529 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>292CE64946649D17A37CE0300D2DCB5B28FC53</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #530 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A8F5CE695ECF20ACFB10184BC7867ACA28E33</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #531 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>267CCCFECDF7A68EE05585EF5A15AB002C4CEF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #532 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>26F9A0EBEDCD30A5D1E9A6FB833233EC14084B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #533 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3C2CCE5358FEB1BD0FD437A38F9F28433E182D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #534 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>27DCF74CC573C66EBA236768B89A57DCD6B2BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #535 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2AAE41F11F296F847A3529C3247CE27457978D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #536 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3FC2504E651D816DC1F7AF7F919A456EC66375</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #537 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2432E5AB55F7D1DDF490E054A7DF51DD6FC851</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #538 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>272BEAB9B2EDC84BB6C7E9F8443D7C98C9E31F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #539 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>21FACFBA0D763304B8BEED29F3DAE1D9B12753</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #540 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2E9A81BAE7EEF72D601396475A26677BC20881</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #541 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A609F084900EF430E26F51BEC2EA9468C6CD9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #542 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>238E48F81CC86715013AA57AF09177E4DD3F11</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #543 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>31EC89CF30434527F23735FD39CCD341FE3C4D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #544 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3B6B9340EB024B1A4B343CF50BD60FE125A81B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #545 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3DDB71AB22B74D6FD327AB29B653CD61D98547</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #546 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2B95228A6D41216E2740A551B958E7D7308053</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #547 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>35CDA4E36B0C2D06E0F3083CCB366A296E2F81</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #548 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3D18065927BEB5DAC99A2A90335F7FA570B3D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #549 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>222C0EF0C4AE0523363639ABED60CF6A3C3E57</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #550 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>26F85D58DA8C51E2586C852FA1CBF18102D697</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #551 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3020019F1C3A141982AE86E571C9B30AEC911D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #552 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>33DB8CF712FFC22686476538DC4881B9768DCF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #553 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2BAE5ABD36910B724BD2FA8069AEF5F355CEA1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #554 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3803417512C600B5A853B9C984219D77CE09D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #555 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>37EB7D4BCF6A8C73F4B40B2E840B2D7E2F921F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #556 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>25AFCBE3BE10E253EAB53F59E2BC4BFC40C81D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #557 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>24C59418D2677116AD809801A5A8F60D57007D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #558 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2C705426B5316C133F1C7595BB288EE9195417</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #559 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3CB89087530369F35131636F55A3FD87EF401B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #560 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>382AC0A11ECD508803098209C04F4D8E2BACFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #561 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3DB807FED5C3D9F532160882743C1BF88832DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #562 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3673F6F82BAE81C0672843E10A9D2A9140CA23</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #563 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3CE84D4B9CF3820E9F181368B2D1A33A61937F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #564 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>32829DD1CFF3886C8E849DAB46762AD65198ED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #565 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>25D427AE7288CDBC024380651B3E1DBDB02BDF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #566 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>24E81618C65DC9608E59EB28CAF47D43BD111D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #567 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>35EA8B27C4A1371F7F04072B121467FF9BDF4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #568 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2FF39E39CCA2FF9EDCAB29F80A63DC4D8EDBAB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #569 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>360C0B35014CD2FCF1675B6A4A17820591EF83</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #570 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3D83123606F53EDDD95F235966AE266E595BFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #571 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>241E6449FDE3AC8D9EF2A8E8475AB792FC877F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #572 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2756713DD5733D76BB50F49EDD50A227488E19</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #573 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2D74785207993843213616ADF44EA48E482481</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #574 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>375D61950DC22DF1BAB677EBFEACE3ADEFAFBD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #575 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2CEDFA47AC50C2442DEAA2E6101338008D8B0F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #576 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2B13D2BDC0BA36923490CDE369650DDCB1834B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #577 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3C642BC66A8C8B8FB3ADDA450F4B24B079E35D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #578 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3260C8C866F566A96C6B967F7666D9DAC3C801</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #579 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>387B14D6B0F95D8A1B7BEAE833A7B5A7868D73</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #580 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2EDFD552F42F0A814B2DAAE2C13A57328EBD55</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #581 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3B16ED7AAE9D9D0852850090C7BF5EC13D5979</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #582 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2131D943FE1D15752CEB6631F5584DA2B8F7B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #583 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2B60638DF6F0F1E85DF39670D70AE5A177AF8B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #584 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>36937B5754C1253D48B8AE6C26575690480BDB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #585 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2ECC6F06FCB53D55B738CC9BB20BF37DCB2A47</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #586 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>38956FF2E436922E372D40283B01E9C2AA40E7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #587 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3B0931F4AE292291F6BB88302DEBC437B0462B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #588 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>23BCEBE502C843755B09E6C226A697CC23684F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #589 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>352F9CDD1729EBD22A7B9B3ACB9FDC793527AD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #590 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>36B648FB300E0DCCF3AB56509BC550C8D2A39B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #591 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A3CDC9B4C3DBA780322172C60EFA4F0F0C06B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #592 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>36528CA5F4AB08669293F0BD17AC9DB69FBC4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #593 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3F860C15F6A0EACB7585213A246453B2220551</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #594 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>276724168B780ABBD397EA64CCC7E9513E1FF5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #595 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2A3F78E4786548A7B8B176619EB93E056E2CE5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #596 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>342A5E8E01DB9240FE852DF7D1940B72E6B6BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #597 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3F5E6DEF823C15E60B7DDFD35A13B648812499</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #598 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2C0FBB56F1C887A8EC9F6287EFD887EBC8A1D3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #599 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3B15F5763DAF66E70C7006005F95B21E6F3AA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #600 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3B001E3664C1090E916F4C0E4C06F48F762B9F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #601 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>3BC519947463B656316AE1A241B10FE260B7BF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #602 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>2DECCFF5B1B449737B1838F6505A6D9799B9D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #603 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>37B82F5F82A1D3AE848C14DD28C6973F808915</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #604 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C62E97073AB85321C83266A604DC76099800046CCAC41E1133</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #605 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9DA517CF1D57B445B05E2C7640D63193ACFD52A1D39FCFB34B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #606 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9B3FB213A7FD232FE6651B4A5D2AACA4331E38B156CE9F57B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #607 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A90649AE4E940EB897E79F657C16B2E5F4B34B5278A4173D3F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #608 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F708F0A95E41937957B9A0AF8C39C2690B97DDD1E1E387C78D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #609 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BCDBFB789A791AE9D2144B557484789A2303687244915FDD2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #610 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F4EC109B198A86F30F0AC914C41F9AEB625008C97E4B2A36AF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #611 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9597FC36E6A76C5145C4BABD8BF3074DF2267AD9432EC75239</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #612 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B5B8E9F2E6E79F8F93A048AFFEBC6AD817E5B7B7524351FEC7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #613 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F5212EAE3816E69D174CF6B1A5CF7DFCBD8A4924B3510E2C8B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #614 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D5F56CF0D075BDAEDB9EAADCBD28F6F25A92AD6DE5867FDAEB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #615 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>84C7F91F22D918BDE6A91282F1D0307471BEC19381BBE9D411</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #616 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CD9CF62A00B99DBFAD81357549CAC466E9B68701DA79F92A71</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #617 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8694F0F385598538368FA6D0FC4AECBAAA71E0FE734982456D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #618 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D2EB4CD91EDFA1CE74467023BAF7B20BB9EA05B17F687B8283</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #619 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FBA30853FD2AC2B812E55573E928D67A0C758B8CBA7A775AEF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #620 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9835DC4DAB33F2B1FBA2C60A9F2809C162A7EB93F8715D272F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #621 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CFA02B080990FB41CF410A221CC0C139A4D7C3607B0D093219</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #622 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B49D511BD833B86D3177E3E857D76A2495C6EAC2C99C6697BF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #623 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E341698011AF88594F82A6DDD7800C363B2DECD0F5C97228E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #624 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BF5D3A958C96CC5C6AE332A39B896F4AC28C9D335E1DD89A6D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #625 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A091507DF02CD829D18C335B9F90651B7C0CA5AD5AB5416DEB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #626 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DE7A827A20262B89292E628B3F646B97384F4426D6DEC8AE69</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #627 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CA2C02F518E7AB588AC08DF955019D7198851EF4F8C49BE035</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #628 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BC4957DABC785D0DB2F248356C811947CEB133CA214009251F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #629 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>807FA3AD9D369F55BD8E9AF8840B622F02AC4303BF6914406B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #630 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A81DE1BA0AECFE159E35D7BD4FFE69DC4CF9E279A1BEAA086D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #631 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EC8B02E9FE76B306A2B9B9C1C8C62A6C2667FD571D3CEFF52F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #632 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E74EE3CFCC55947C6BA0940640648EAFF10AC3A6F99E9EE8BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #633 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9E00BFDCDD24B08B02C37F37F590CB3D6F0195725A042F112F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #634 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>821E6CEE8D8F96EDCD9162308D333FDAF8FA551AA068D741DB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #635 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C6FBCC15105D16B38F2D9511120822325C1CB645E6BF33B9FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #636 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>878C4C90229C4CE6B50E873D4774AAA58AB140E42AF456B86F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #637 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E2244AA199EF5134257D60EFB4CEA5C08D75B672143C45CE43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #638 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ADC65920145041DAC0579D8CE7F8E322DBC5682DF49E4875E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #639 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CF5716A81CA2A6D1BB4D10CE830F3AF1527724D3F286611D11</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #640 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A60F1DF1C4CBB7C792CC077942CDD99ACAFAF1C57914AD8D1B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #641 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FE32832A8BE42B51CBE62BB2151F91C544DF49D8FF3AB4CADD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #642 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>932EAA17117FEDEFF84475A34E539991A59E4476323869B249</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #643 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AF3B57102BE165AAA5A2813231C24EA53A6ADB902606976477</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #644 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8EADAAC19F5DDB945A8798399D75BEA48C323AB10084C56117</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #645 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F80CEC6F7D6F2776B5A5A5AE04CA2528C1B479B183D8439827</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #646 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AABD2865D0354CB12816199B6B4D92ED185CAE0FEFCB8A56D9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #647 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C2BEA2FCD29244FB7E2E804AEEA270B0D2238B4E12A993EB33</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #648 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BB5329B2A5CDEA6E58C0EEDD2446519E8B1C6FD54C2FEE16C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #649 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C8E874B59406BB37B17935B676E14EE31CC1E8E2FD2E5DDEA7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #650 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F78F2E99C04A207E75073AF6A07434604BF6EC89A08407072B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #651 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A153702FCFF8192439FC67FFCE6F634BEA4E2AFDC1431308A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #652 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F0BE1881C0F2EDF657DF626D5189A7C6FD02ADD038D122E18B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #653 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>81985A49FB342EB39FF804EA9DB476BBC13AB28703F10F8809</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #654 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C1F0C10D736C6FEB1B6B033B1ED8988DFB60C4BC0CA9968745</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #655 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DA656F7361F741879B68E7452174B80EA1D496535B276ACF89</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #656 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BB021F3B9075F4802B07489B5EF733A67402745A0EE13DE44F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #657 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8A92A41BD4213D8F1DC1AEDEB15F9023F2D192779857781611</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #658 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A0B9082077C8F4C2A66D6976320EA9C1BAB9F652A3EAF31085</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #659 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CF398221182DC0EF9E20C32443F5C61E769D5F051311AE91A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #660 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>96A63914D170799637992F19B01A1569334D5B31BF19FBBE99</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #661 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9CF63B3D40CE8D002F019BA25FB0F521E28920FF5FB0F6AD5B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #662 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9B26765E71D74C03C0659D942B1C471701D9AD5983DCBA08FB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #663 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A2EA88348C9EC711E1B6340885E3D1A3CC3B479637317F2809</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #664 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E24D2F217F4CB41DBA4AEF0410A46DB4B7277910876DC0DF27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #665 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EE59213C914DDDC4726ABB63812EC24233F6A0E4B82BE295FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #666 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DCC2FB4F1D44B819DB0A8AECF692CA4D1B818BC8DB3F414963</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #667 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C09E3F3939EACF4C262767997357456C40E8171B0CB7893D2F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #668 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DE4E971F5B36F8C96E3706C808084D0CCDDE42F3960350E151</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #669 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8F55FE860072A7E6C7D80BEABC0CDADBDFDA40BC77E154846B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #670 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9AF8F61E480FEA36C81446DF8E168B9FB8E379DFA13106AC43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #671 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C13FE68033B7BC57BA7C249BC8288D3219CE96964D941A748B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #672 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9C193C108CEED26C5D945C4EB5F778EBE7F9E4F31D01BC3139</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #673 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9CEA7F5947171DDF471BFC3D99664B91A9B703D076ED4DFF55</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #674 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AE4A7A15D35F0B8B7CF2C60CAFD4DE265163D32910ECF1D8C3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #675 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EEA693DF43FF8AFCF828AF0811AB1775C63B2EA42926BCC39D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #676 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FD574E1F31D95D4B70873FAD88AC765CF2BBFE8BE78567A919</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #677 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A48FA2212C0EED8EACA9595985D7DC808296EC229BD46178D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #678 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ADD683B6C558B4022A298225AD79A80F534D78AB18C4907FF7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #679 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CB532585ADE4385F5BC408269A126DD48B4ED9682FDF9D7841</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #680 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9D2F9A3FF34CA7CE7FCE43397324B489CB440E78E8EF476EB3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #681 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8F8CE6B75E70AD5792FA908FFE51C7926A2EA58BBB946EBE39</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #682 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C6B93A89CCF3A3290BB38078FEC3439948855A404AF3B2715B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #683 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C4190FE766D3E48A6593D32CE7C171E7EF55DDAD52C780E041</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #684 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9BB6ADBEE3A9C94DB76168C2381A924106BCFF512AC0BA6CCD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #685 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8CFF1479DDA884A24E0506CCF07B3772BFE30256441DE42A09</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #686 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D28252BF261FD06FC25B780D6FCF6FCD271F719660F281DC99</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #687 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CDEFAE9B81A96E31DE7A508E8C6F2FA97059D8CF5D078B50D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #688 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>93AFA5EB8A73D97BE5D22F0AC2687D068A29789ED8CE66FED9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #689 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BD95D4A6F97DE81FFFEEAE5FA3BF0CF6B904D1F30B282C8BFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #690 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B90F7CD5E8FE39223F02E04F536B1E14781B2563AB235C45B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #691 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A608F0618E289EC858E38165F98234F4CADB0C95D15BC9F1C7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #692 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F2CBBD3545829D016DEF40CC50A0486F391766D69962B6CB67</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #693 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C42E7DFE1B90169A4A131DAB4DEAEA94464F3D748EA9E46251</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #694 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C172218B482F5E66982A0A4283F6A26795AEFB32C1A0659733</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #695 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DC9F6AE82E1957F7126743AA9940F6CA8CE25C1C4180000ED3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #696 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A222E4A8E9BED3EF5F16096AC7C2508BC4CFE43EE771F1C8A5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #697 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AEB3A64B4422718D54A6D5C3F166928577BF8CA44F43AF0565</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #698 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CFCB9E301B34D3564A40AF3CAA8B28502F0FE685B12E39C737</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #699 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C36496F6EE3CBA64011C2CBA1A232DFC50472AAE5B43898F31</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #700 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E258C6567683154C4D02DFD5A240694A7AC724060DF2F70AEB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #701 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A96653DF3C7BD8397D3FFAD327E07625BCAF316C2153FE7BD5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #702 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C870FD81FEB1BEE957EC4D95C0E925067934F1C715881E7A87</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #703 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CEF80E3CE8C13C43107386713661ABE5D68BC0C22E871D9947</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #704 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B58B2F26651D06549028BA5F306F68B04A889D51403A8CDE0606FC275D1FD48148516DF34C7E8A8B09B1C4D4367AFA3BEDAFE74B7CCAC612DB45DE054B263</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #705 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2FF423EA647F1DDFC14294B16793EF16224F3B1A533BA23DACA9E588E5036700B996054BD05BD7514CF932B804C43E36921EDFBF0D4DFD5C82299AA2DFD1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #706 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FB036AAE991B0FF184CB0487A2CB6544E5208741409F6E5A28FAD89D961B1A66CB50D0851FBB844EBE0B81B9D285F3FD5BC4AE87E77CCC4BAE8A8901A7847</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #707 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0864BFD4389FADD5FD4B817D5560F503DB2D84B2187ADEA694AFE8180DFB9B32FFC6ABCC6A5776F5A6EBC00FE9181EAF531B24895A2967181F3EFE426B6485</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #708 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>096185D0626A781129E00AD030954C221B5C61C9424AFD70586DF0837EA9D8E42E96C5F77234B91F5387F8E9740419BBEF8F6AA823765BB6F1E6E2DDE24C5F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #709 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D95C8D6E3445629A5D0E305F5DBD4C29F46C78D56F82611FA6E8CC40F729224658E9B16FF02258E1EC0104B90366762F8D64987E11BEBEA55EE9D717A763F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #710 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B1300B1BE5DCD0532EA5AD91E262B24EC668A1AA05D762B9F9EAF39DC1A52B1470064A895492DBCE5E2A5C18B6E7A6A7C55D1F75509F9140E1FAC2AE2E5E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #711 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C15610E2BC189215CF47284F6D68752F03B017E7EA0EFF4C120CDACA029AB144B4A250B90D44CD96A13FC647A384FBDFE88B44D68CC9F3FE18FF0A282A17F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #712 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F9C3932860C74FDA92E39701F879D05A1A92F4BCC4AA1CB38DAA3841B102C16B408CD19D8E02949D932E6937FB6BA1BC309B667A206AA3F6683616C9BA837</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #713 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C236401A7B9D017701BA78B2E2716161652C0C121FD0D8E887CA3FD69DBC407D6908E09AA64C0F83C0B68E9CC14F18E1C6876A7548615B69AE1F46BAFCB27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #714 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FCB27FCBF2773D67A986BEC310D2EDC1E7E19B9AF916F6C81716E850C703E54C290CA43FC7E9ECFAE7CC8E44376D433BDA0247106101B2A8015ABD50FE055</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #715 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09468F089909785E87F053313DD9B190E097B4ED0C702C849352DB26F2847B5AF6859EC0C275A99C4C6E813103B8D115291B620D78282F0F4B13888B3AB90D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #716 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F5CFAF6640B63C839935FB7C04C7908849C1F7029E49BA725815303EF6A41FA4A4B1A81BBB8418011A84B5A12BF8D0514711A907D154324367B887C1ED0B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #717 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0878217F5A09972A76B7F587BF003B658024914676A548F43A55B849E74DAB86A5CBF23106D8B2E1A63018F37857113CB25F2589281E6755DCF0DE1B44E839</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #718 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EC8D97856E2EC3164CAA4C5105B566DE86C7C22AC1CC96A056A031E1B9BF85E4C83BA9DFC3C286A9B0FC2F0728CE805B3FBC43DC5F036B8767B55D2AFF1C1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #719 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FDFDBA29E6103E1602F46683B0E9847D7818323678902590D74C6796FD0D18D2FE6177D950A8AC6DB72A6378A5253C366A1D8C581BCE38006194537254C43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #720 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B2C2C3CC5136A65CDC59DA512E7A7EDE6A9E4D735FF2A5D064934F74602CC89C354CE980644471B0DE7250C51FF16615718ED39D504A4BD547E64ED77185F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #721 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EA43D1761F38430F921D0E06CF4A4394A86ED13740A69F1E76C9D09A59D31D22EE5FD4E733D5CCC622BFA2F584A7E737EA5E254770AF7A1DF393DC1B4750F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #722 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BBBA136508CB594744F388BED4ED6AD45F1FF53ED08A2ED2F1AF77A080A3D558DE0C7B5998E95D799943947F219C4EFA5D7F10BC06E446AF996987E61CD91</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #723 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09AEC0647F4639DE268AC0466DC0B7B3E10350A97DDD7580BA80B811C559AF51A148C2595231D3D4FA69EB42294D9754D451648F50EED0AAF52077EE55654F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #724 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F314AD625F66D9E269DEF5C39CE17024B1437391C3B1FE8EC42C937CFEB3945A4F73458606C820970026E69291185FE4DAE0C394101664C49A0A2A5779805</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #725 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08DBFC4F9F03BE1897C1A49E3A2D8E488E4922B8D2FE1EC03E4EA0C5661C166AE08C6D25C85E1C788575D8B7841DD18C867F2CCA463F1DF76FC1C474664A5D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #726 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F69A7DCC07E8B4477D1F1F399E3CAFF62AEFE4252C1D25BBE3A490857BE4641A3554A58D4AE4CDF2947487218E3D60D820EACF141AB1FFEFDCB5F98FE62D5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #727 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CC70C836FA1B778DEF54720DA4766D9E6E26524B3CE9FA05A6CEA64537F213A83FB9CA9C8D5CB82ED1661D10CF13D44D98BE3678B5DB37FFA986355516695</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #728 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086A4876413A6E689D81BA446FD7FA394B35993E5F263DE45B0363AB211C485E907F6B4DC9B4E6FB6999C48C99337A1A6D0F150F5222195BA4A3C4E7B2B217</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #729 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0868610A67D762D5D5ED82A02E94D61862FDE59C7956B3B6A679BFCA4D20CE7A5A64647F6F2B11A21F0AAC9CBB85BCE3572F13EF9A1DE2E33AB705BBA2CAA7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #730 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DEC3938DA8D69ECAEEDDEAF1C9B310FF477CC0DACEEDB1D2E39C5570FAD602F15D781DD99EDE0BB34022E379CCC7D472B67E8412669BDB835F881CD4EF6ED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #731 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DDB6FCA1FC64B2FF0E5EA0BA2FC63DD4DCB3D4690A1E4FDCA6ECCA7472523E519389B25353A552459F84979B3F16A21450AD2D2D3395962053C724DDFEF59</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #732 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08E620D3113DFCBAACB4432162B2445493B60BCA59BA4770D108DA68F34A489B1A9D34C0E81B149F9D64761C828EAD84869409F1ED7D47B7A0C6ABCE86A177</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #733 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A306CD6E8F0C89E8A4CD9D87FEA3646F4FFB85BD9C54AD1B2A6411B95864AB130EA0D337BDF25431B5BD8F859D4AD4A40BE6FDE2730FA775DE5F261FC504F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #734 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DD32D351C945ED46ED11159170B2681E9DFEE0752FAA5307A9CE7E0C44FC61E0C2AB00C51F544D5BE01F5F90B465DA3D3179B51A3749CB34BEAD3C69A18F3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #735 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08B3E56F816846037E21C02D54D0A4A5311A5D83610A2F176F4904B85632C7D06850CA4C383E7C7119B1F83B3C5A9ABE8863BCBC4F42889C273BCDC778A139</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #736 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09497162B0962596229FA701D982F20337379DAEFB84EAB915957EA659404ADEBA68A8DF94FDE27A7DD76B49A915E5D4BB25DCC38F02500BDE86786EF99AB3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #737 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08BCCE17413C26F84CE7431A796AD94B27866B7F87E8DDD8EFA96175783112B0246B1368C6F58A0F33114D40CB6295837E2CC7A867F3F05CE2E869AF938D69</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #738 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>092D130E2464F342D96FD42AC55D2B80B58136EBD31747A69C4BC1A3D376FE1570B2001999237BF955A479467EB74324C389DD0E4157230287559283B493A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #739 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09752024EBBD82EACABE563770FA17C217C83DB63186427B10BB1AB25448677C47E302D035477B936EE448F263B27FD66BEBA37729A1C56DA2C22E4C9F7725</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #740 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1D6663A36A5176934B22E72D3FD9FC14B353B8F8939366DE14792DCEEA02F7992E44CB16F0E0D389F6E541C2A9967780AC1CD2C53F1806EAC5C1EBF897F3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #741 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09AFBFE1A7761F41109DCCAFCD289713E7C23FBC103B39CB42B94D566BB2D3CE0E383420AE631C53D77BB1B6614AEF79DAD7575E533CF5CB0E5984F5008BFD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #742 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1037E63C41A8A4FFB5209B420A0E0341D879CEE3B8E52C9BD7CA4668BA5075C8ACFC023975C1F7765BE0B0916EA1F7C6897B5CE70F603EBDF7940DE6C35F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #743 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FE746B3D9667E47FD761CB4A8E57897438C953E10C7AFC1D2EE63A664F3BF08A8B554DED0BF990EB1C83B4F1FD75EB1982E8EC4CE26EEC849C75D6D7FF1E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #744 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0922A014F0CC682F311EEBA32FF58C0E52620150A7CF05D76BE6F793E348B93E77B0724993C928744A3157F1C7DF67775D9C761ED190C4B4B48EEC2C04131F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #745 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08A564A8837076BFC23E5818D7FEBAC8F7BAE5A0CF1AABEC6CA8D3627D84606DC3057D8240B434FE27E40E720ACE184EDEA3394D5EF39021FFEDA8DA50011D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #746 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0979E494F0B273B03639D52E220E980EC606D6E682DF22E662D3B48EE9762445FFA7109133EEF6B2684C9B46780B8E4094DCFB47378AA1731B91D3156835ED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #747 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A58E51B43BB134F99CDDBD6D3A84D8AC0949FB6C05D323E3A3FA314DC0FA753D021F38B115EDC14094A1A379EAA57BB9AB25CEF39338CB0EBCAF947296F45</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #748 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E163FC36CB8A65435E723FDD79A279E55A6D4EC1A7F7DCAF57303B3F904371733B9A38401F5AB8494AEE95A53C1AD0E59DE395E91C4C755B39FB733E82753</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #749 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086D1062621D3C8A3C067985E43F1CF94615527B1CA5868D404F2FD9C4C0CAF53C3905AC3B91A02A271E8E6BA7281E5378286CCA95942FF8EB454B6254156B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #750 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08D2773675F853A6D2859A615FC34299CF4877E090E731F3E543737D4AD4166A8BDBBFEA5A8B3481B2461F9B30AD97D5FEEF6E9193A6F788DD087923858719</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #751 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EBDEAFB6990DA4A93FA4184619A6B9AD7ADE79BF754B67E2AC2EBE01B18DE7A3E3CC3F2D7CC88E89D208E4D745911DA48795A31423B82B2F1F5EC18D5A949</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #752 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B80398E32059EC94B8045CB1E54F59256431BC4517169F91E1C6E089A20210C31A8BAD8AA893D9F05EEDEE6CDD889C7FDFF8D629512BCC3A2DB875185AD91</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #753 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A70618889D62E938EE0468445C08AEF675D63F0945025E8EC2A2658365E6553A23A149FA701D1BC041E251E4C86F8A27119039F56671F6EC9D7012BE02F69</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #754 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CD9E48764C591B50E62BC0F94F10B1CC84A062A7697C86D1C257296671E6A80B72929E2C8722974EAE4CA4327E439D3C5890CCB822628050C4EDE54B1435F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #755 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ECD7941599E16DBA3C8AD7D0F982A25E97AB357E23C090413B911C453618C32E11E8D3AB999FED50C7329C621F426C83DC270435C16A34AEDB7B226D515B3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #756 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F367C76ABFFAF03007DDA7C4AAE6D2194FC5DFBB4C22BED1E30582E4A4846703CC777B1D1142C61AF973D7FFE25D5DB1997ABB65A55D9A30CAA23BF8F0BD3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #757 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B495A29516BC41670BC9FABF98CD75FF119E70DED5C2895D4E035EDC350D9E665F1A112437C6DC0DB0BD6972E818E088C087A0B3295AB5D7EF0388FE449C1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #758 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E05AF1BD3850C740C205EE51CE8E643DEFD0EC02F17F5333AB6CC08212E61D855D61BC83DFFDBE8FE59FC651BF2A892859BB7505206182DB7FD6AE967A425</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #759 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A9FFF6F3A812B051F32198BD16E42B998025455C36A93BF4D859E23B32F10F69C69ED2864873EFCACFA2BF55086BEFC516B78A9241EAF5E62BADB08F8D197</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #760 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D7D463511987FCFCA17FE315377991312361A7B220B6B07D941CDD59B3AE6FA868736B3E688D7123B65F1BCB50EF4143165DE33B0B632784294AB8BCD8871</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #761 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F93E1957824C0962AE505780F3C515C824EBB0244B8A6BCB78F2B99F51A66B14C9C655B54C56C1C3397FE0C32BAEA35477E66A4DABD69EF5E9FE4917C9C7F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #762 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D537D2D08D6DE0E7285F9C1134A8D95F0E1BA312BD74755052D7EFF435ABAB18CEE9BF2E10D7BA108DCE248B7763313FAA43B2275FF655BD73BF974028291</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #763 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C15E58A55400BC3F9006F1DA4C44C51295E020610A62D2C7CCC2BD9E4D38EA6B514998801BF534A2C5A055554C3FA1495E72195BEA5ED06FD8457667666F1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #764 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>082C8AD8B88298A2F0CE013B257D080BE5CA0C9F57FAF074572B0AB7D3A1B31FF4FB3D164CD0C0BFE58BD9A7812CE21C4576256C386FBB24FCFA0A202BB7EB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #765 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09BCE0B4B5D3313BCE60CC16048F3436B7DCFC80F610213B7D0BFFB21E50BE61EDDEFA7F0BD59E4F7C52A64F8C6C748D42ED6E51B188167E6D53C16F887753</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #766 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FA9D93C10733CCFEBB398A4E286202517678C89AE64E48EAB208A243F74F2B58B199FAAC8D87FB946EEFEAD7C0E79B733A775D4DB79FA327A0F6FD467C7DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #767 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E5BDEF5C361DCDD45ABC26104E2C59F32B57832945998BF079E4D16E711F5C943FEC5EA62E457203453889C3C83AA1CCC8609ADD3999DAB5B3F18216A7165</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #768 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D76A80F2CF72E073035F31151FA38184D5CC8112BD4A417B9D23ED2F54873E311754407151B29B08ADF54C55FA19B853F28FA6FA4C325EC546B0756D1D5D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #769 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08A9354FBD3F5B9BC7C6201E0A5AC523350235DC100EDD8C91A9382DC63BCF41E65401A218ABF2DE76F48E3EB6754D86BA94B8C1DD520436240943952B6FD3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #770 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F8DC8FC8C3343F9304187348C8F8EEE72BC2C1DAEFD393C72946538B6C2DD605D65EE695A9C51145CCBFAFE472D92210577EAECF0AE92152BF0EDFBBFED1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #771 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D21427FD1AB3C27823C7DC521F1E346219F1DD22082035AE9182AD8A3CDF0F1B1CDF42BA0D240D68C998FC82C25A52445A34DBFA9476BA926783C3CFAEE77</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #772 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A1C4CFB607E14134F46E1E691BAECBFE0F991020AEB75CBF2D457DA9DB7F8D73851C28F4A378F477502BBAC09481D3E2DA4792B18B44158ECA1DD1D31C065</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #773 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D7B54CA2E97EABF988C0F6B58A44E8BDE1DF2558D1F8961217CA7AA7D3C44AD730ADB182ED2894AAD59B494D2D6B035818D93EF77EC18099F4F01BF3A1983</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #774 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B27A7BD305B3EE16D78466B1BC21134B6595C166437517C9D573126B23DED533E1B5D64FCA8DC5A3D4BB239A93B6756381F03EA0FA505FC9D71D1C4824293</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #775 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D83FD3E970E596C2DE34FA5B307EE8B4A10B98AA5F98CD6D2E522136DD9A856D7A4A426DAC1FAD7A1CFF16D4A5C237B65CEA7D35108F4F9CAFA0517ECD6F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #776 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B8FC0A047B2B86B7DB78AF0F3CF163D2DD7469BBB0E911C233E898D8F313237DF8DC7477A0269E48B32ADA3F9D2698E61C15F96CF41651274581FAD5C7FAD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #777 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A1FCD526FCE34FEC68BA0C7F3D9525C28D6617DCEAFE391FB332B1B40761618174A67B0D102D57963F117070B9529A8FF13B4AA5EAFEF2EF262D911A40323</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #778 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09EE15A54C902A88CC1CCB060C87BC59465DC07482E604917D2A0D1CBE0426783C7C8BF688D10EBE7DB070B6CFDC757A3BBF416FAFEA4D3212504BA8FBC255</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #779 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09392BC6EF87AB0BFB585508D24D35F30D00CB032C671B3051E311F67F393B6EA50C3A1C7446EE123FB7DF5B0041582967E80D4969D1C9F5BFFE129AD5E697</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #780 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0878613D8C6537233E715B4AD9CB1BB55129FBB57894DF4880B615018A511DEE64CEEE126B824CD2F8B2E026D4F1C60B11E3855081325CDE6B9635EC486C71</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #781 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09344800EB2CAD1678B6400FEBB57356B2F4F85125DEDCC81EE85F310349B51C53A93253A55077907AF3A9B5123BBDD32FDCA188E115B4CF32DB52182D3EAD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #782 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FE30A115D0DD1ADD71868496F372DE2272B20B5999D4CD7EB83FDFDFACADF8F1AC946BAA16ECF62B259DBB9288E6100AE77F7F581670F71428AC1117B7003</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #783 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B3C1C8B437FC28198AC220035D35F01EA6DF5AC17A9201072ABA52856D98C803FA843E98EFA8E4623456E3280D8D2E6494E32C277B317134A436B437911D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #784 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09D55AD7B6C49F93F1A599CDAF93CF1FE338A84A81B9C3BDCFEC83A2D65774020E2E2D5AFF2E41D4411CC36C02DE3BDCB4422DC2647D40ED310407B5FDA7CD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #785 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AF5A03D9EEAD188E2E53E266C50BE721473AF79F49D95672F6A3E815CF76FB50F0297F0F11E8E6918F8465945AE818655BCEAE852832D7425275B01246ED9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #786 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CD0C801CDC9F9D2666CFC2D43AA2B951DAE86C70848910A61ECCFD9E62A2A4CC6E2CBDFDB8F2D8A39905E431DD39DE0A305B9465927968F59D0A1AD4F953F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #787 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C6FC8A7042CC5072CAA51E582BD0C9AF29CCEF3A3C90777983A5A442717712A8F428D0ABD65CCDF30ABA2960BA783B01759D672C45944BDECD54A5889A361</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #788 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FA71A675632EC4092DEB3F2821F3A38378E9CC93C7997D638373DE1285400D5A2D25606A24EFBCECD14D41DF671222B2B1C9603C100823F32797F56A23587</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #789 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FCDBDD51DC862207410B78236B41ABAF4E9401BFB17FC2CB0CF2BCE1FB02D7C3CA1E74B199A86142AED7BD283093625F0B6F7F2606177CCFDCD849AF2E401</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #790 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A81A86864A10538A8F5F160495C6A73B331CAB2F942EFA3B22C94BD6B2BB9404D0F098EF88B1DEE4B076C32F0680301B3BF19C64397FF3E4EABE47A0DCAC1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #791 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CF217FFDA46F00D5F293AD0CB08A8D3423995219184235CA160F931B1F943AA1499E4861802D6815A8474E1646E57BF5CD502ABE1D7F1CDF531C57289D989</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #792 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FE336EB3E3019AFD4BCA6BA29D980566C030ADE00F9A2C422C66196A2BB5831F248A2824185B2BFDC2CA2861C07A6EB67AB619438E9278DFA2BBE618EFA3B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #793 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09379FF57210A7CAE1B74E23AF00BD7ADC098FDD9F2B1723EC7AB2A7EE6E85F148DD538DDAFEC645666858FF93D4C9DF87A0B1355DA0AF4907181F6AC628E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #794 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C8FCA8A528DB89353FD6C63EB787621555236F543F6DE9D37C18941DBDF33EEF93A9F3B5A753A3BC7CF405F0EDAD5B85D495E650A47FF42EBB81717349827</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #795 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>093696DC98FFAD502F7E8CF02032F3D9760AAD6BA424D4F35246C89F174B7C26564F71BF97EBCD4AFAB11425D6AE9A7478FAC53048ECAC3813B676EA572701</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #796 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0915537A783768899074D2A8C05C448CE0B9AE341BFD2ADC9C637C62E2037554487815B3352978C2DF0933D4D3116CE013E5C3931CE99DEE04725D5C6EB3FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #797 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CA5F3C722C7B006951C9CD589C99BD37EFD9CDEBC5D9AC3477F39C2A4182B00AAC43A0D79AD406D1520510F54E88970A17BB90DFFDB9B60B527AB70CB1CA7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #798 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F62D50FDE3EF31518A6FEE0E560D9799D58F38B667D3D8F316CFEE90DADD93ECD29B19DA468798FEA2A28EB3C31F21BC26E33B8D428AD151D4F1C57B0A745</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #799 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09BE697DAC5815D1D09026750D168A690A88812239BEC1133213220E875D01489B1B837317705B9656CAF1C3A14037058746057E033117FA275718DB2558DD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #800 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08BC68DD8CDDE87509160E05EFEEF2BD27CE45D7774AA41AAC61950AED0597DD0BED7AE305904536197DAC0AAE62BC484E4927354495760222B38B096A7BDD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #801 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08BAF8A885D29D33C2A1C9810EC2A5C999669542397A4F2ADA4941D11C4BE4BA58496D5152FA67B5DF625457873F60F407BE9D1406CE7C76B9E2A0C90A2823</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #802 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F44939CF54CF8020776DA95A9C18E181E9BBD14168E68116FC2A23475B838191E6A720391CED503CCF972169F05E838B7981D132438535E809DCC5AA28589</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #803 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F98292A44844D2D658E9667E184C334D0249AF2E36C1A1EDF371C264CE7E19F3B8B5FDC44FF56489D1B115A97ACBEF62E6F19F1ACF9E622C0B62AFF3CCEAF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #804 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8FA0FE5C9A7BD8351056BC75DF86DE617DEA02E1840CAAC87084ADE22A9B65BCC0048CAD014D6C13188ADE1895D2A6781C4AF22D9D8724B27F87E1BFD8F27D49315E00895F5F063D8F063625132DBDE7415B3369B6AE5ED08D9DF6FBBF820A8D8919A530064B1A7C9CD0F7FECE4144797305E4A31B5ED1C02D78A70E3F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #805 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D706AA88BBFAB7916790B48A88F5494176903C2FB0033E56A8E62DBEE4AE7395A22B360B0185B679D5168B7695BE7F06ED50D1ABC77C0F4A32A693E34251C16C25E03028CA2FABC95B505767A3524ED8282627C0DE897346E38461C4E3AC7BDC81B4BD2A23339CA16AE6E2E024FCC58242E07390B4C829513A83A3620B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #806 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FC16441FC352D0FC2D41BC80780C5A49847B3C8B517E8FEF26CD81BBD76158FE76179EE92E423421B419BFD9D50D208E3A44FDB72441F321D64BCE7DA4E323A6BFF799A7B783D44C1ED85EE9E09A578ACC638D3954309A62BE87CAE7677CC6682C4DFA33891D53E463E41490623E883F260BE066F58279EAAFC34E3AB7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #807 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A720FEC20FB6518AABED0EDBCD0221E2A5AEF3B5B729D879EEBD0BD35F577B42D15B0BD6AC39F355BE1FD55242E0DD9173CFEA1ACD36A733FE368F79B87EBAC7090F5977DC4B6772FF96B0771D85297175D4157E0D1B9EDA3225DCDE8D730DAB3B83DDE26B97B7352554A57FAAA9BD03304550C833D61210B99BE53D89</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #808 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9A4E1EA85C063BA17DC02CCB82F17C537291C79DB60F5C79D5A24616D415773F5D3BE3D40B754D17ADCF0A432C17447C6722C1D61863D348100AC9A493F63B3971F98544CD5798CB0859607EEF3B98023C4AF20DFA093E85090CCA683D61549D498597B3E8BE1BA02561864A89AD9AE9BA15CC9798A56CAAC29F4CE1D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #809 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A139CBCAA6C325842507755069043ED17818BA3694568385505D03E448D72F363DE0C36BA9B717E213975E3FC94872253C51B66A0AF18D59B736D024DF9B2ABF4D400E7177CF21295F433B7DE074391B14FAFDB9241FC773B8F42390EE37455FC81490D033AAD4646C67CFD303F57CB5D983807E41C0B081C050CDAAB3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #810 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BE372C8BCCA41348622D1A8C1A8A5F65F82F4FE4B2086F802CBB72774946D6D362EB466163AC856D4CB6A11BD31986257934A673812159DABFC5AC3C5A6D64B3EF0DE581825013B5CB9F3F5F91FB6A36FA7758BC9CF63D49468AA6E9AE76A810D9C4AEF4180A41FDD656BCB8DB480F6F6C193F784D2C23AA4F45D2F2EB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #811 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8C55000A044FF5DCB0CE15A3ECE412E14034F6F1FBAEEA4D4BA25C354BDB27E46AFA41AD04EE7C076DB3DEF058E76C121279057F6170A67B6A47F08275BC645B5F5C581708406243A27907B2337A0E1BF17E95B4AA83B96F3444C58EBB6234983D3318BF7E22D43844A489527565E433565E6A32A3E056C623AB1FAC07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #812 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E153615BFAE5698C0BAD1002C909477F6BDCEB485291753757A1D06ED445F4E9D03B841175C779AD0DBD73B792233C27ED20721282C6C44E4EBF81C17C581CCAE04FB46C98AD83E377A6CFAC8CC6D747B8114B0E13770D9934D3EF3B6DFDE171FE99471C6A2DDC2CDDEC1DA1C120CE48F5FF5132E01CA507B36786DBF1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #813 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AEFCC40468D380C5C1AA3AC8C193831DCB95451EAA921BCD525B46A0061FE2CA8681E934C7605ACED78FC38739A2D50E4B5E85950FBBE5DE3C50766E2DC3A58F216E2806D67D4555F77CCAF653BCDC16C9E1AA4995DCAE76D842BCBB9DA1F77D3686168F18ADB05EC89822A4A842060A23AE76A95E937D6E833DD0D27F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #814 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9613F0A2B3F12385194BCCEC937BD43B5584FDC1B1A3BC0BF943479C265182F358F88F5AC048763EE18BABAD9FB04A295DF985780E5BFBC918A670F96EDFC9F4D1F761F63E3234FD239B829B57A2A46AAEB09F0A45F0B66BAB3979EB2F957A8B7A3C48BC0C357A96F3952DF832FE81F79E16D6E848B8EA08758CAA7D4F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #815 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C7316B6767A7EE062CBCC405FF5338E1E5E10892FC8889BCDF75704F93D3013D594A6C82D1CE92EED458F4784C0F5FE94A91003908530C4761CF7E26E5F5848E62752617D37BC51FD697F31E8B6B0781E6AB4F28827457C98BEF1C620F760DFE9E41304F1E579781AD0DDA683C1EDE43B18C965946E48E58936779D6F7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #816 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FA295C7B5FC84E183122D19CF3D870F1640CEC3D6EBD65DEAD6BFF1726D9F4F3038317B337FDD314DA56F8EE682A045182275FC619EB79B2538D4D9CB88AF2E87D15006BCA162C21E37FEFDEBCEEA9DC110946BBAE6A9460A6769DEC9D65BC02A958EADDD788553E4990EB5F73D169C0E3703F0FA38740F2291F92DA15</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #817 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9901D8D2730C96871725D5FAB25165F176F1287E941D1BAA28B4EE2018BD7E15B1EEC958B5BDEF9CEF5531E256A3CBD9E0BB0328D51345C996EE37A23000AE1E1BCC577ABE99201A75F0B50808B44E01DECB10B4CC192AD22CD0FD8A0FB575EAFC87EAFB31BDD375431B66CDDA7E300AA180F5B298F634774AA2D9213F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #818 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C773C161E2BBFD43CADBE13AF78A984C534868692411AD8C40DBDA7C159871958AABFDC1EEEEEC512FDC74C1AEE24E2F2BD69F7FFE545C602C765DB5706D2C0019B631804FC973854F5889EB1C8B33E23A5D8AEEC770AE67FC467BE65CD8355E9F59B4ECED382A73AFA3E7E04F4AABC4DEDEC8718424BB9C1C13EF4555</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #819 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C8A8A8F6743F91D301F10C5E15C36F4B4311E4677AEC00BC1F66BCF415D4D4A9E68BE26B3D3C0F158E6EA879F3E0D4F00FCB3C181DC95CA341C84A2B22BF304CBA1F49C412FC6EB42ECAAB72A388CE20B790490C236B87075730D6B40EED989BE59BF4E297D39795D483BBDFC7E3F4D1C19D7B2F5771BE63C9800A1223</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #820 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D1780EEDEE83ACEC9DF37A0614F131C1A886DA926157A0CF15F2304DC09570DB60AF7A58461D5A9B981691FD9EC5194868EC14228FF66569B8DFA5BDCAA4FD56E2386FFE6BAFA7C788D9AEB9838090ED797083E454872822BDCD8E89032569386F5F8AFE0CB204A765B9E217FDB8C9014549A5B62AB8CB832BD93CC585</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #821 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>82C0ACD15E14E4AFF91625CF1BC979E6BCB04BE3DAE7FC36DEEE3F7FF30C4CF805CBBC882D843C07AB17D986F13D725DF34E1F621190FBD3C423084C892E037823B8BD2C0E6B17DF742F9C683434253B9EB9BF10FFE0AAA885F70609899D49C5668A43BA9B32DA2B754987028C8E735A544A73B868DFD5AEAA8D022B2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #822 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>850EA4C1BF8A3527E6B579754D9771887C6A291A56B2FB59248057B9B76E8C411F4E13A5DBF96AEA9CF5DA597B27B9DC413650F36E8CA644A97CD5FF2E484340D7810401E1EAFF4592520AD4E12194ABA1925C40F9C079EE71FE3D8E1CDBDBEAE5FA8873FF80828CE5B4E3A957C7CAD5F2961ECD68E33D323C75030F1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #823 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ECE3D89E2E4D0CE5CAD9C832F211143C66C91C5C15579DD571677F529BA7F3F8003BC3B109768498EC961234E307B17D4E69621ECF5BA33E2B153517C823DE65421CB1F54504FDEAE66F4DF31B679C61B9BB48AF6ACE837DBB995B8184774A9CF8DFE4D4A2C055F17A7D37D978718466DD87CB6A5DFACE602FD95A1CBF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #824 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AEE9BC4AAD649ECBFBA5E8CC9C6145D8D6D20ED593992871BD30FC5A1349C397D194E55B730EE0ED4712036A28629F4866E0165960B97CB90DAD53819E7FACC82933F6A31F5C4C8FFE6DBA0C0300112667B2567D5731AC2B6BD22F497498EBB407E8F68102A7657D2A12D5244F3C9E1DD3593FD64B03BADCA0EE22101D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #825 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EABDF9C59971BA14126D3A1D7273C52EBC6D22741E6949754767EFD8F89AE28E79B1676D94B028F2D0D34E7EBBD0C415BD3F5FA8425EE2479A3154E317FDA0A8BD707D06818E42EC6A1A5844E90D4C9C74DC9D99A0A0C9A1EC1F3AE77F88C470B0E9B728DF1D43B7B5D4B5F804AE121B07EBBD5445931582B0247134A9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #826 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C8BB62C45B178BB6E0A25375134E4FB6A3B925AA410162459508FD9546175BBFBC50AD37C44E565ED08EE66D04E5DEEF9287D03268024683FFD15DCBB07D274797918CC0041AD96C8B408A2D6FBC88F2457397422F793E0627156FD2C41661F4156415C58C8BDC9630E14D7260DE2E4C8AFD4191FFF24B054A14DA3EFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #827 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F3AF703EB341CC9E793F35907742754B26E495BE50BEF46ADAC39E31815F64B299F551B6DF5E7FC85708DA569F3FB0662532422DEC5E890C99FA8EE7A3C9723FFEF497C45BC4BDD56841BFC094A2FA376C11B72D4C8C93833EC02E307684DCDE06EBF80A453C461DFDD3FD74B633F011CA891865E1348FE74CE945B659</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #828 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A5EFF8CC843EE00AF67300B31A338C999A9ABD3DF600A0CC26644B2D40E07AA4CA3AAB2E83A10B751A0107E48C9635E662B8E67586E780110C60B32FAFC762C1BF4670131FF25E5E5760263E8A120DCCC1D5EFDCFCF8198AAEF4D60218DB08D4F11E579432594949D877DFA3AC056E9DF9ACE7C62823655B728A1D7895</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #829 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C2C647CB2B04F98482EB4F74276F9EACCD67CE7380872F3E59576A3BD336F12BBE5C88B88E238BB059896B5175FFC0B179E1C2573D20A3C8FCD55223779D257BEF624B1E230DECAE6CC8681249CE99CB84472AB497A8DD2CA06D833B908BA503261B9B2732E59C5A6ABAF9653AAFB3F5F0604A3B6D618703E9E7694FDD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #830 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D1C354F0DC209F77C67898FFA70CD6AEE5A0D8047002BBDA99FABE9D1AD86B684B5CAAD67D1E8F74C62885C94B50DD024CC851137ADA52EBAE35C2B910F5459BB2B4EA94F8F79748F3C27F795E37C173CBB8CFB8B3BE37A6A62E3999CDF547D714A8EBD2E047ADE94E5A902643481E345BD105BA27FD04D677B89737AF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #831 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DCB0BCFB380972503CA94A038910F2A436440237EE406BE93A0C0EB8B3C2A91EFC7DE9297BD8AC94A2302C88682306EAAFD8A144D55F32F5142719F02B7ECCC7F6DA66FC71E21C5DD8EC276F84DEBBA5B1E82554C81BFB8ADF3E74C4D38828185E8623909C93EAEA55626A824EBA0A12857B62708BA2B27A058561CF35</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #832 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F0C1293D56DFE86378CB5558B9DBD5F18325B37AA598192082226C531BB967A471C87ED6396943C199A8E5F7697069FC8DEE68BE51683315A9E46131F93E7F632A97986F900A2083494389925222BB79B5849EA11DE9CBD8E401B02B900C5A8794EFF7A77C75D38C7FC008E0BE10DC0AEAEE92A0199EF4723CCFF95145</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #833 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACEEBABF4C406B8AC9DB5BD78645BB5AD7D04ED263B7F4FB6D056EEF04F12F611681873D960601B8BEF05EA9A8FD2BB3D23BA06C1A5627BB2FC691403CE00FAE34EE992D5CE61E9C5DAC345FC967E0765F3B28E6F7247C7F2AC762A4A6B9D8B1DBD5E630406B7EB2F9D4CA6EE99394E94B719411D3D48001D7F3D65325</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #834 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EE1587F31E2D8A1671E426DC9994BABB0976E00FEE2272EAB34909D45B733A3D97ECBF5B57E8DA68ED71C961841455F052B211227CF9F694233EBF71A54A4991C1A174C75250A5F2BE005FDE10F167A9AAD1C990EBCE2FFA136B12F93CDD7D88A0D0F6B4D53BDFFBDC0A971E10A15E276BA42C4F365CC2289B9C0222FB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #835 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B3EDC2FEC1E4D3A8746724D017A2B6246768A072DA213D07B1A43EF4E20E7AE7E1C38234B5701EC57304DCDED34A37B312A0718D1833E75C120E512BE062697930B47E08772CA48A3D38BD2A63578E8270F731514F6FB7F16FABA0DBA0E0A11A74B89C2255E90C0531426BB747ACF934335387E3D291C60B92F9458FC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #836 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EC8358F435CD83F8AA469984BB31CE5FBA07D72F31C0180341E1B1066C04D9D8C37AC2C9E8E67E4D2F3DF3C00478DBB3C7B2E8562D2539432ED19182C281142F40C0B2C29ED3DF23D9BEA2E898100D6ABC8C618FD2EC5BED60E857514A88E439DFAAE62B83478ACCE1174C26BDC12B499B7598F4F29731217BB11C4D8D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #837 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DECDC2188D614398F6141C9C868510D191B0A5C26DB5AB2B98E053291E2F963B4BBEB6808A6A0CFAA0B72209AE63D26206A6779EAEB859A9F0425D563B3C04359D19925827495E3160DC3E0CB5AEE80E2CF4F0C39B52A94E61899C295D7706DDB894D29DD85ACD317BBBDE49C902851E22D36C6AC4FC9BC1EED5360CA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #838 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AA72ECDD827D100713FFB9AA323C99C0FB09949753259FE8C68A1E06B0BCC224FCFBD54218047F2B0F2A0E6F6FA29E0CFA07EBE51925B0C650F587FF7BC40F5D47CA2244FB556C6B783679AFA0692C7C4ADF9079D3830DE638B4A0DE5A1DBC18E32701D67AF13D70E31E405C608E33374969E14CDE51D6FC07A290CDF3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #839 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9167195ABE13B145C29344E58A37997F1FB52C68A0338123E6C57297349DB704087B71135719913C6F19171D04BF4FB13077911439F80D686DD1EE6B7CBB1DCF44A4A30D5FA128F95EB1C18095AAC6305A14097E2885AB059EBA6C6DC807C23E36497A60112201E1A4A666AF53D09FE845B72C127B00E8EA3F69C8E44F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #840 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9708BC6B797553E6ED3954CAC4F0FB50B941DD86925B3AC3BF409C817E8CF8B34599A21AFA7A702ABD90026848AE33808FBEF4CA8C93C1EA9AED5C6BE3D1C82CD48548FC3750280CD27DC37D2AEDCD33A22C3C980B09EFABBE3F07D8D019476532804D134499ABBCF8186F36649340F25AF354C8B909A5F8D3C9DF838B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #841 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8DBDA7E4E732DA28A9B84F901E637C1C45D71DCB116C4E4B01117C9C2C893394D4C5EACF18BAEE89A0DA2C669610C868126516C2E23002729B3A9FC0DBB1D6B55478475900A5FD6F3711C3FE36C899A0E780334A174CD0B2523FA128C4E0F44CE4C2B2D329C8B1389611B454B3099EEAC94231C7FC2B795F259CB382F9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #842 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F8394A0140ECFE43242C8A03D19EFC031351AD3D19C7897663C769E88E0A3D4DF00603B1F83AB4F14CCF81B90EB3808686C557464F0B9E933DE402EDD3D1D115BD5B167B95F4AB6AF7638637B65E9A9FCC7463CD519C7550598DF8AEA1D4E1F1CD1E2580563B0EEE05EFAC05B17F0C1F7D308E3F5E81F56DD5C66476C7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #843 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E2F72A1A94738F6591A5471D6D72D9E004A2B974E46DA59B5E4419DA8B686E77BB45320A380F524230728EDBD04D5B5C3A7AD2CDCF69C5139DFF084E194369029C2BAA2DD9C5CBBC95D5B959B837BA6C64500203BC0750178E73D05395B8D295E96AA36C27194B6A4E14E85452FAADF7F50497F5B5AEF8E5FC74C25A13</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #844 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D31AA871FDFC84961E243433C810318AC5595AC88A8D51424EB71D86542BF0D69E57B1D1C91D65A83BEEEE925E5659A167AEB884A4ABCD0A7989C3514AAFAC5170A30D9618855254D005906A20145B557801746DB413E8ECCC80B1443B7B890D38D491D67B32005F8FCA5DE83722598FD891E230255F38837377C90F33</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #845 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EAE300F4F56AE315B18079912C38B52EDD63B5B831BFE720B3B1F18696C41214EE982FB287153CB3B10CACD3E51F55E370C18F9495D4EA3DE3B5CEA3B9D5FCB89D04CF2CB2D10F69D19C696AAC673F947FA30219FF9ABC12EB53F195FC6F3442F63C7E43623AE0A84E807D52102025A9866083B02CDD24BF832E261189</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #846 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EA245720632C59024F1F6B19E68194E215A04D3009CC5339E85A7A3649CDB87D8C92730DF4814A64A24F098BDD1A252DAF6A79C0FDC4CD6D56F3DF0D86C82FF12002EC59D348C2E0CAEAADF9D45E66C8DE78CC0B4F0F81BA64A45B96AC4E8C909201A33F4DE96C3EA423D8E51F94E1AB96D975630E4D7B4FF78FE7A539</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #847 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DED3E0BFC45D94B46398632E86E345F11B5658BF7079B925FBB3F319F5E632D472EE54B749B0945DB2AECF2CF71E379327E5FE9CF37DDC5F5E485F5C1629F6E489F6EE68EF6487DDDAEC1CF4413055D7E1940E9EBD0C6F86CA0264861DE13A63F98EDFB5EFF03523AE750C7367A733075B30BBA82CB0406C3DEA516CF5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #848 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DEF2BD6CD30C258F41A7EBA22A12B43B49A4996FB715114CA2E204D1BBE876235C25857153DB2CF6006E1C7FEA21750205ED738087748DF83E7A1241AF507A78EBDF706A6F8DDEA442FFCA6B4FFDA4B2B294E392F5FC6BB375AC6707AC6102169110795358C793DC667C029423CAFA397B6F6B41AACBBDB051CAA46A95</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #849 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ED97C0B4799AF0534132AE2CE5DBC0AC74936BB98FA1C2928A884D82079B0C605866914E6A6ABD0D6191740001411366B4FECC3ADED5D0296238E42309AA97C4148EC37C43339F3FFE6E295CCFD0211A6F65A9969BFE025AD25040101F50B31C380F68F77C7F0B6F67B214809F943EE02B8445D0E06F8E7E4F5B78D39B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #850 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B3B25664993E7B3FCAE8CDA1C25B2CE0E79EE104A10EF3E31BE77534642B4DEA746813DF5374863FFD1837B1D09521AB5A228AAA491A4B10AD2265761E1077959E4931983B4FD6CDBBDD9366E28057A02111FFD0D514E298438AAB962F02279F322D05083A2487532932AB29B707DC1AF072B9EB78A06800D9078FA18F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #851 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>901A987FD1679AA888815ACD8F606DF35671E7EE2D56BBB710A8731E74E67B71EED701BAECAC9F4BB88EFAC019DB14D347CE86A58670DD40366F7C5257E81E76E3D64520C7FFF3AFB773AED7086FAC7F8A342B7A38B7302E6625004FF1CAFF872EB43175FB95A2DAF2ED1647C015C76268F9E06EE7AFB6E3F48A2A6F8D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #852 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D69FBA333250DE008DE3331675078CEF336383FA7F83575EFE716B046A1EFE650B4FE468D8CBF264FD0BB6C37E004916F476BED855ED58652E2962C815A21C6AF2ECC12AF5752F30B0A53A98993D44302FA0ABC6A96B6BA5CA51F0DAC20D69F4740EAAF1862CEC7D739680ED139912996A4460ECDA9D8D104EC47FC7B7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #853 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A0AF80C4D29958C6ACF479D1D1CBBCE6C157D0F28EC8395FF5C72FABDD53CB8E284204C8EA7FF712D285FE62FA0AC813BEA5D79C2487A0527DDB4E1AE366855E659EF0419452AECD12EEA0AA73313E712A6D7591ECA9EE706F3837C6474F21DD8DCF4E1E01DC99DC1806F68228BDD1DABD0663C2E36C600876FBEE1205</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #854 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A3AE2DE79ABC7FAB25CF7BF560E9ECC67831540DEB876C83751466D7CF7DE9FE2E97D3746C5A8F9AD92E14EB8F5698B5C2AA68D6651472721BA7AEFE55121144BDBEBE09447DA9B290D8C904F67209E6184B7A7E1840C4A22F28B3C1FBD80FE11DA0576A534D4C51DA22F6BDCEB307CBDDFA363E9D515A5699CAD7818F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #855 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9779AB5D68B883E2B657C0D560B0F7A73DE5F8FE188C957D71888ED6A9DB921B85BDF82BEE7093F83F5901BD846E929818517F1F016902902EC3B568DD01C3781B339229878CD97838F20BF6B55453D630739D4ECA9ED4127D17A5842C3AE81B1D824D98B727FFBC4F3A4A44DFE0EBFE9BD89C56D1FC2B33458654DE2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #856 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A46E27E0E6A49DE95FDD284DEA06321D9E5F46475520A0727C458E0D09054243CF71C4FF8F1A4E5031F15BD582BA8773ADC1D9207131B9B0F0B7B3BCE725A44B4EB3DBB33DD2433CC3E1EAD957A1F3E3BF784F73E8CA1773BD69D79103122973598E7B3663AB5728517B2235E5D06560C7A4EA35406D6283208120AF5F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #857 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B43E44FE30497E95C3F9B8713B3B1502B188F85CE77AB64324E996F40DA4FE257CBE53FF2270A28272E80EAD92E3CE3C2BBDCF63515F5E2289FB955AC70308716B3452C2B773842E377CDD6C6D30C35C85527CD0CDC9F58E0288EB7461D3C405F935F2987903739073935877B25A2F226AEA15131A05C69BC0D7C07FA3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #858 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CF38186F27D94F334E211356883FBDEA0CF7A1ECCB7356EAECC41CDF8FB0B823164E8E74DE6B1FBA06BD52AE4632F6F7575E7CB067F7AC52C5AB7B0A112E7FBF6171C570F7A813B399E785D9DD184A90917FCF2AE7206EE225BC844796A3DC07714D6179E5A4C951D693047F5B8E6FFBE8D210AF36304C3CBACA0567E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #859 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DA3AD36377CAE45760057C683F78E2E779A718707BD04A5A561B5FB3F455CE625E28BE507E5F2E2EFAAD4A5F45D7CB05F52EB310D2C7CEF8A82BD98AA2CF13109A70DFD69796B8B842E5BE7FF991F65AB601A148F8BC9408A7182D8C858E7BC0024B7BD701B578B28729A07EF2FB52FFF9D53531A1E1EDCF0D66CDA291</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #860 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>94C593E062CF3F4245374BC952A9237DB81079B903F5C7387A1B25CE2048F504DB806DF5C6E2111487F2C35D015D9A495B84F7B47BDFF3094255F1E131F44466060B8F81F038C4CF76171B109E59A1B51D12F99CA0149B0D217C397FFA564E759AE19C89B42BDA156D4C4F4AABEED46C8E57D0E0C44A8433B21F9C92A1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #861 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FD3BC13EB26181832D00333AAF29E45DB8DBD9B1217BFD2CE0FAA88E98C9CF43AF139B3119FD012913BAF0CB58506329DAE701C91F49BBC09E82D080A6B8BF409EDB36B00CF4910A400F5DC1F8B53A06BB54A4F78605B29910092980DB5A25F979CC303C33EB42572C4E01E7569F20792E84E4AFE69573CFF3ED1F9DF5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #862 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>88806A19549528F2135E1D48BA7E5FCF548D5BE8DFF6D4B3350A65493D3DA74DF0BA1BE499C11AF0CCBE0524DBB7EC06AEB888C7358C73B4F32E24E67A0DF4EF65B75B816413D25552EAA7D402E6997612B25A95502DCBCE7636EDE8BBDFAD03D06122BF5C2B9AF7AA2D17893A7AF623A152A140B1A058342C9016D34D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #863 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DF93B79C19E47D806428E0D04F407D0BC61A379C7074598F0FB91F8753F1305C80122BE09E44179166F48935E5DF1514114B4E7EC48C2404CC164C3EA6DC4F8EAEA58099CCA6A4B3031BBAA7DBD7E2F6AB3B249FF52B28824E6247478B329D80821317B09C5D26333020A70CADFDEA55494A97035AED6099FE57DA2E43</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #864 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C21C72BD4F2035E22E67E020DE18ACDC4FACCAD4304BA3A497C29E8AD726B96EAC8B484CEEB25D157CB93F051CB708BF9A203754B57BDD0E828049A5135270AC65975569863E9875DF8FC061C05540231221FE0C29B8C152BD7A1FB469DA91EACA42C09616ABD77D3EA8EFB8A661D11E64EEE3BDD30AC50A4586EBB8E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #865 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F58B2948BBAC7A9A6F703FDBFB3A9DDAA2A2B143207467164D7BFCF87968CCE6F1AEE53F8794E882F0B4AE77AD4EEF16B463C3DFB0607DF4E99528BB625766584FD804E73E91315FAEAE6999CDBEA40F90719E405BD87EF4B853B58C484F52741B1BC5AB17657EE2851F0A808E2AED3EB6BEA136872D1AD0DB3C1378A7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #866 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EF4840D388BCF393DBDDFEA97C20C74084DEC3CB614C407FC229AF589A6402F4EF7C58A495854A3448177C62682D67113999403C6F439115EC9D61B7447C80586FC876273699931AB1E272BF4D1B95D774B0981AC60535F6EE4CF8CE16B779D76798936CCBFEC0E52F4BF60825F4CBC2705138E5B96D841347BADF9BCD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #867 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D3E9D24ED6F651EBDA757A5C2488F893D4798FE9549A1D803E3D15C925107B8C9D3B25131DEFA042D1CF846DD28819F739CB2E9256E4D470BF7FB0683BE8160F06AABD513EE7E29D13A5C1474C6E590A5A01688DCE540F1F99811EA0DAD8E178A19F48C8D5C62EB43F05573B1CC7E3F00140AA5C85FCE8CF31C85FA40D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #868 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BD66CDE09C766C5D96137DD33649353DBEC9A0C0182F42744A5DA219F5CA1A9B51518870371B41FEE8CD35457C6F1073C7408DD9B9A1E0D6930DD9BDC8238C6D76EB7634D92CB2B9AAA20D938098DB746B61D26DA92D0C5B4A31F3B5C03D1DBB03D5CF9689E7CC8717BAA13728870B739BF6786AFB12B394243CC98D29</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #869 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B80DF4B3020BDE46DB31F71662CCA1C97694C04D1D8BD8450DE338B66F0443A8DD6A1C4061661DB8DE1A3D25886A617840F7AD74C4EC148E36EF046EA53C2F208A2D6A7525FCF6C4C5E63CE1A6EB5DEBA0A1CEC13D12425D7278D0AF968BCB0C07F8BABF2A844B334553078E9556CF3672EDBD7D20D72E5751B4116335</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #870 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B995371057620A54DD41A83257E43C3219C365E10B6E0C296D9DCF7843296E1BB733153E7DE03F90983746CCB40833E6051C3152D464A6977944369C1B8BB4576AB90AD5BA95FC6877EBF518B27D6161A96E6BCD86714CAE085764BD3AC75720A2D4227587EE09B2976224227E93F5DCE0C39B0B22FE11C8963BAE9C2D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #871 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8E18BAA99FD4BAF3E477C37D5502DA5FE588F847CA533BBDF502749898A517F54B85833FE79EAD16FE28A665F335CEBE55D57B177D5C584F6B864EAC742BA07BB4A9A283EC83355CE6FA1672156A187818A026DC0580344D55ADD16587F6BD46EC8B63C4A4A5B64BA3D40D555E43032E539F74C50E11F68B763F8775E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #872 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DE6FBDD2D782FDB1705CE225ADB949D105E312E2F1A71D36AFE209BE902E71630BECA11428CA93885731B431403A4415E2CF8D73591D9D8F5387E7D3FC9BD80E7223055755637A7336E6445462F624B03CEAB5D6B6B0289D38C11CF542C7687158F2CD79434D768020767A52E32B430B119AEE31705E8C5284914DC67B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #873 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F17C17DAA11C6D10317F07354491CF3A0FC6A4A5519868A3BD462C8ED1532785EF8A4C796B07890C659EACBD974A9E6516102039ECFE9851B43D77A9E3A334F3AB24D535328AB292C3B12DEE7726A9BA4498D72C0627A34162510014E39950CC5BD3F48256FB49130F9E4C3B8D34E48329F27FD2E0D2CC42018AD4ACFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #874 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8FD649BA178C4EF1A7EE259C2E2A3455E0076CE86B876BCB9BF0F1E44EB68FE6EA5D579704470EA38F0FF3970D9989301C40B1FAAB1E3BA5E3FBF66B6C9FD5949F08B0C3450C536D74739B9CB08DA29CECEAC65FCEB2413A7F07CB11F073FC66654B648EDB31044C135531DBEFCB63F2FEB2D7AA7754E3FBACEE71B3E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #875 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>913BD35BCAB9B1B364A8C2824B5733A841126A4F40981A150A8D99C5A1FBBF02D31FDB9B0FF35E65A1D723EAF9524D043F046B76E855AA16969D4D715972AE457318EE4BFD953AD54F655904460EA6297A3FCE83E7D5D2451676BE30CFDAD114EDBA06DE5C7B0FDFC5865AA941738B9ADCEE6C2F232147DE1A5CF532EB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #876 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACE697D82D6BF2928CEF594729803F2C75A8ED86FF8E8CC5DF1426C6996EB98F6B421E1C114CC058749852CDCFC8076EC85DF5FA276D9D464132C8F3CBCCCF8A401563968C3D2ADA9E90CA5F435BEB0970138D90DCF0721144AAE48C3BBC7DE2BE6FF5CFF0A9F120314DD92A433C188930B0E3AC4F9279FFA2A4781821</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #877 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F5C23C1BAD52FD37D39D2190D10DB1A0A8D2F453B22E3D4DBE22409ED917B5A20577C0856E8DA1367322FFCCCE60AA7C3CD526C1C5AC479D7FD8A804390FEBE3DED56D3AFCDE0EA709C95C53D0414CB3E57344CF2A5109FA502C12D05196130BD32CE752282324E8EF4DF44FC2A849CA07DE448995DAD09C5BDD82A98B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #878 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>80C96281F17C267BECEA10F46714AF42250494A3B21C5E1542E6A97CC88C4D02996EBB5E7003C7BC6F9CB84AF0BC6C78453B66C7CDE1A45DAC4961E88A36BB84632CF483C6E1353BE2B980F2FE3641D92712DC2EBD4BE1286F055EDA0A08E00C66281B75C9704DFBE874CE41CC5898EDBC272BCEC6E5709E6E82736C99</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #879 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A829C20D90517F3CCA41F2C7A827810F6693EDF9EFBA87518738AEAD710613C290C08930649E4F1A1EEF587F148F8EC4A6A70CFDDB905EF6DF269268C6807FD30F11DC4683D98E4F4E9D90076113ACD759930C01AB7755CDAE3EC84636B0E1BC8E08A2C110B8FD64DE53FE21A1904F5FB46A16A912C66EB966FC042D73</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #880 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>923DDFA0D926B2998A7AE5AEE55E97E87D56AA83A6246565AA5F5874B04AACE4E5AFABF2349A2D701AF8E3549A695D24E4F1B766CB823293EA045892A4AFD2DDBB4CC58E874F53D113E413F13465720F120AFAEA910157B1D1478923384CAB87D8D0232800545B1655E2CCD898CD621D616F2392AC5455BDB187278F65</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #881 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9899D5E2237A03CFCD94FA98F24247191A4B0E175AAD0B0559AAC4CC915975347FD38BE7B580FD683149E3748116C5ACC1CD6BCDFE2B3B727802B684A55B09382869E8E9CD6A272DCE8D1CB475B7E983F971A5A79FEDA1564186151354E6EC5A46CC02146F0D92DD62B7A7675C8B8E6BE67C11A6973F85917B480E4317</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #882 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FB4562A3F3A82C08B951F67892F8E22D32CC91CADF7F6CAE345FB9F2B4CEE4960C17B7C8FC10A9EBD204BAB9625959B4FA6A9BE1FAD8591DA9DBAB64F0571D352B522B6F22166EAD09D4F84C9ED43EA30579A8DCEA1D0F06604C237DFC3061B9492D90A17090A64DE326DAC5B453C2A63C778799C1472081B476E3A16B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #883 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9E722F672A7B3000007D162A53BD62031D190808A2C6ED90B6145F68CAEA0E1BB072F154A866FC7A32F4D1947E2403F336EBA5F6CE0EE57DBAAB276EB650EB58144923B4BBDE0368D3EE4BC65FFD0568EFB6A80ED926B75C48AD9435480B443E9CDFDCF99738D5DD7CDCE2367C5A5E6F26FC1377F19319880C8A7DFFC1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #884 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>92C12823795309BC3B31343C8477850CAF5FA6FA3B52DD5ED5DC1011D3761EF5D64C56D5B64ABB6A542B70E8F462CA9C149D3BE26066B9459914F9764FE9FCC02AAA0806A0562EF1AE81BA71E73E3EAF585394150BD3DBC6A423251EFF6A01FA89F91A6AEBA0017782FDBA7F34E30908DD01D60849BBC20722B5655C09</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #885 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8904A9A6F95315860A257200E4C75C80961B1ED556AB3AB6EDD663C672C90CF4C28F60776D03F33D7069BC7959CDAD988EC92072F99EE39D3B322E4F88230C21D44DFE96241472DCB5A1126C3A6045CBBE6EEAB931E0727BC36F658FEC81B61DF6F6BA382E78413D7A0823E2E9B6DCEBE2A544EEB150BC47A175E44DFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #886 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D54DDA9CE3EB0DC1AEE0B79D04438645812776BBD1E5BA7A572D59712680EA7BED14FA6949604DF9F0C9CA65A455E66FBF7F4C45856036FA35920CDEC8EC9E097FD9D3BA09E28154096BCCF1BF7310E61B3F9063B8CB30ED5CF731800D2905E5546F0350050E72179D9D32B523CC74189D2D071E9A15A7642799030553</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #887 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>EF5AB3128038E444FED2D6C4191C9DBB8D2B6D7A9C666E1239E1C8855B99C1E62283529FD87A654CE6F0399BB6D05D51682BE7FCCF0B91CCFEF4B8BBFC6CBE68E368F5A01451AE3A7DE1E4E96C18DAF640AB3BE1FA7DDBF862BF168361996099456847C934BDF884153237B2A3AFAC34F076174CF434BEE8778EAB95DF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #888 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C2F0566F04585C47D5096C98EFDF3268F2D1641E1D13EF616D125DDD85480F44647ECDAAD8D3840B0300DDFE5C98ABB5021D4C60967B8539C47B6A73987E2F891B0398DB7A826F09EADF50F57C5C892D1331826193CD4E05D353715E39CEE5ECEF63FEF64E095EA3A12CEDDDEB7AD47628DA58C4253DA3E320F0CAC7DF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #889 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D06A8973D8123E3E4896D0C63B45D8DFB57ACB0AF853FFBF29E7D678687D9ED91B9DECAA1FEE8BB2418E8B1A4346A8E88602F38C06763687D7CA4F277A0A9EC3BDCED783AAB9E9DF0D21AAAF11D7D9B547AF74B5F67E8323DD9BBCFE83E4FF3E04A4DFAD6192DEBFAB9992A62F82AD3A664D1664BECE1529139FE80259</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #890 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BBF94E76C95804128644EDE939A18AE2B4665B899884286746BF119C1A21BC2F921934DC8F3BCAAFC1C48738B026E4C74FB13A4AF397CBB17863A5D88F1CDB5598EBED0758013ADA5604B6C251A6ABDE925F0718941657D00C6B6471BAFD83EEA1B7F4F78BFBD6EBE5EAF686942415046A81245921AB3870313C76C9CF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #891 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F114B37EC02859AD17577CEE30E7A770E2E7C7149544321CE3B3D555C7B1B18C0D4D3873EB4AF3A39A697022CB5DBAA50B90365F81E432F91F235A005882FEF72B8E4C81B140D3EFD36307B8CB4C6F7666E1F5DDB4655BCB2D65918D9DA866EA98F538BF4B5D8D857FAB77053C5F39DAF2F620AC8CE06D658D65F4764F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #892 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E19C12554CAB111EA61CA6ECDF3198092B2C3564297EFB1775F974CED82E5FCC6B5D866A5CA260B79B92DD2CCCE96B0687EE97ECE9CAE468554211B6BB5196276284ABEF95729B62E46F7E3C26BF7C76025A6057848BBBF190A2BA26C5AE8FD87FB034F1A3672C42F72199F89DE1D2F2A07E6DF32E0F74530F83619A0F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #893 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C3DF7F42BE649AF9B54AF8055631A5F23FE7E0578A67088B0482D89BC4F8CD601676834AF7828F243183B2C34AA1CBEEAC44F894E19CB0E8715F75E7A230BAF10AB533B310A860A1FCF3D178D9C1DE576F34385F50980DBE327AB2EEC15EB67C260B9193E9FBC514DE6D73F3E373C2D0B6F22DE0035EF53E65712CA12D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #894 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A7DDBEF6215B458C6E2A456E5C4CD3B11D56153581ACC1A905D97FFA0DA983C6F2EE274AC0DF2F27E5C37D0B47D30A6E17A573B7524F811FD6EAD6BB4ECF152C11C01A5B2BC32CF4488851C5487E0438AE1F86EA77C30CEEF2A546FF74BA1C4F6B0003D17EBE22E87384DB166FA6EC981157E173F41537B094919B44D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #895 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C6147D1B11F40CB017F303FD8891F71819E8CBE9D4586A02D4241F15C59BA0F86BD1A330652E1B178853F7F013AABC2BC7BFA1A0EDE7709B84FCB3E5A6EE6ECFF26DDA3A22DF8A8F3E42729AECF081BC660CCA3BF6ACD02F0D9FF202337F918CF64A5B54B1B3C7482EB0343B090F574AFB6A71080776330B04A292EB8F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #896 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CDE7D9B5FC2684B0EB8833D54F0EAD60B6C95F0B2EF99C62EE21C167CC7C6CF752B66464427EF6AFABECBF325C35DC512A2F5D7A202D6B0D2DA15FE5B00017B79294CA5C232E727C898619F0AB66C027C6C92A7491828BFB28C5A61774B37211B8DB8F3D982A3D3F3B3B401EC207E485259E0A7AB216FAD02BCF833F85</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #897 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACFBCD44199100BA0F1E74D37DCD7D0C46B28B31C28FC4D23C973156BC84A1651359ADA2FDAE44022633F6D885BF1113B21BA5B48CBFE00EE02A8728B9CAD9F1DE200ACEFFD9E02D416C32BB584145BB5BBFD5EB060E0D588A7AD3A679E2028E582A85668D13A71FD40B1145291A0C4A6D0F8ED5A25734D4024C2C8111</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #898 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B83462BD1283EF33CAB62021B6373D347F4E5EC5D3E178181394E4A2EA1916851AD27A47B95BE2495B5F09CC0F0A8650CF767EC8819D37C26A205AB59F5BE93146A58C9C822CA024F805BFBA0AF31D636E93E3ACAC6D7B795BFDC291422381AEFFBFA52A6E66134CF70676AD458E3C621556F74AB33284CB94EC9B31E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #899 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C25C95405E8C1F55436914541DCDEE111F7C1C3E5DC3C1C903580C33B897FADBFB500349D83A98FA477F7D7117CB63543F8C92E63047B5FB5D283443CC4D1B0210D64E02BDF44BA5313C4B626A2ACE63AA9A76E26D85CB47CFD39452E611E2B10B4129293735FA9EAF43FE713D58706D23E5C3A9E12C0245311BD9031F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #900 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>934B5C0F69698817D2F5C7DBE3DE65A1BF07DD64A50E09DB99F3B78F25905B11756680D1101DF17392851FCCEC4267D12A02FD92D51A137219A22375D935F8EB60AFE7077D5B6FAC2B73FBF0717DB29AADBAEA8657ED0768C640A7626506A0DE9FABDABDD92254FFF3F5641E20198B682D07B048D504AF32568D666029</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #901 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FEFE1E5FCAE89D94E4DA1043CF1E608B2BEF1CA7C3344293BDA917B1FB9663D9B236FA04D775894150D63E8D51B453EC99A5A1DFF3F8CC54342F76C275DF6E7779D8A3C2DF79F662537CCAC64B5FC83C2F87A948B09E5040A5458C307DADF2A3A24BBF68252CCB05B5561AC8C5C11E0298CF3A37D51192AE84C2B1F601</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #902 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FCB1404C77F867DE957989746A5AE95933F23D3498E96D22FECE06397D49B636EAA97CFB87F6950CB3682045147747CA72DE943F1EA5CD3EF20F15F208783281D9C6291203A94467C40D84E61E88CCEF0D3FD44AD6C3B177110286CC94037753C3582A259E3C96C13C970FC3161B469B64FF0FAA969737398A736BD7CF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #903 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B8D0E3B52BDD44FE463A28A2709F86805B1D386F706D9BB2034315F18D1EFD721EB3ECA3B963917005E23A9E396F0A5FF561C152931D5A696D24CA1445E4F0748FF672E9AFB9CA495493282B0C51BE09CA1CBFFD6F97DC39FB656D30FF2D628636E5359686C042BBFDC578312D924B8EB20E6024F8940DA69E621DE603</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/scripts/tprimetests2.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1600 +0,0 @@
-<action>
-	<actionname>Prime Vector Test #904 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A91B01C98D4F99C6D86C4F2C159224940371B1E1B59EB377EA0537BA737B0DF543C53D231E20C34A5E17107FFE68ABEF9BFB1836D66F6C6DC28E2A8A13E1AB2657DB7D8F21E988EC5A332B3637D423CCF94081B0AD5C019269D6A043DAAC57C5BC25BE8B581C1FFA42FB45B229127CC42C76DDAEE59E24A5E51B4502CB2FFD0FB9952ADB5B1B981494D9432B15918915B3C4B4FF5D0DF3E05FA71AE1D8990F27C109A8F49DB254B149E9F53503B55FA774B68D946BA757F204F747B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #905 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E02BBF4CF2BFE980FDAABB51C092521747883DD9DFC35958039DB60CB2C244C93E9AC70C011D0C95A8FA70769D0450F0133FDCE0C207083796B6C149244FD3475EB5D6AD6EAA3C341525707C095C1DEEEDE88F0FD6AEF378B9077E653C40C8EB617F257D5C607CCAC0FABB6E331BAAB3C7E4EBFDC42D7311D1A9D38AE222BB0AE62DA76B8259D09F43917250455CF625F8DBA3380B39C2E95BD16D03A00A4A3E414EB9098BC4F203FBF646553A560BB06DBF720B5DDCCE8367DBB0B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #906 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D2D2F7D8D824F224A2B12A96C813188F90B60FABB5F39A8FEC326FBC3683D94B34CE5C2D396A39FB850C90DC817C6933B0A935B74030CF9112D3BB19D07519A05C37A08B44AC6F47140F2FC6ED2F4D5D4D0D569578ABDC79639AC4C152B85B2BCD680858C327F0D1B0116F97BFEF8130A20FF9AB2959EEB3EE31A49D715E4357A15E78EA799B020F8A9F7A59B92F0014F002B4F50FCE5EEB9BAEC52663A8A0B171B44EF982449337FDCC75CA5150266D06351B3B637A9DA91367A2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #907 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C01C4B8D3109DCDD8C657B2A0F7244BBD0C13243060EF98D429C0BEEE555FE153508AEA55680DC66150588F31DBF8BC173E9A8D1D64AEF02C1F783B60B32E1569FBCBEDA79CCC806C747C4D9EB9CF983DFCE7DDE7EA99C6AF1DD30DA65EDBC956515FC8429055E7ED911315E3B7BC31721E8DDD2B79C5DD8B2836B190BF140290775C10A6722DA5F5F88BD2E48E7EED21B2D44BBDB1930CB8398B0DC485CD6AB885F9C719BE67EDFAE7C1DDB6A169517807DC1BEB76580D065945E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #908 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DCDEB49929246D154C4195FFDD8BDEF894D66E74033FA6D27D8A428E65DB6FAF0FC1B7314E92203C3B2EC62956F37E0CD79EF122D52067AAED5796FCD75F4FB1B19732B192DEE0D0EE1152830DEB5E634BD858BE3CC75C959D8BA6D646858E1F1FBBFA3C449AC24113DCE988DD8901AAB75C723A12FF8D20511CF4B6E7363D7C6B8938570953501885F0170116D6CD96E425D49F7CB55118B8D369F87C8E1C8A26CF6839B76E8E02E164AC266CEAF53D3A9789F716E234552A3FAED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #909 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A792D83448294E355948A144A25A2022302F314C5C99E421E4C2766295239BA67885E424A33561147816A0CD565889647BF5F522B8F9987B6D272551D5A3883B5347A09696A9C1A2BE64D9F27967874401EEA7F1593559AA19A6A9BE4AC847D95237DAE00DB6D88EB8E0F545D2416856B48C07AC5E9ACE5F9E8BD3BEFF651E15AB73CB4A27E764AEDB17762929804E9C049542B2BAF8455AB201562BA90C237B19C6F8E86181810B12AEC2F4E6CCD7AB0C8B768109176DD12C13AD9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #910 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C6DF500A262D62ECB49E61DD9B42623398ABD95FE559F384160307E9FE60C7E9D0D1282F53A5D8571C8B937FB99F2A0CE7E410D9B4C6A2B905F3C4AC07D4A91913FA678E756389B089F593D4BC1BE0A5F3317D14477D1C74C50E9988612E857B25B43AC556B57399F4359B5107F6AC71B2B72A4204497F2F20B8ABF70976A9A3FC6CC70DE6E5E3327493B2F2B82780117C69D8CEEAD0102020265E0A8FCDF4E63B573E1760AD86ADB2C82D84D1582A2DE845B17A8DFAB15F375036B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #911 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F7792785B1AF994A40A4B620E89D577B5FA43EEB616AC1C9956D3D413DAD4ED45B3E4E23EDAB2DF710ECF4C66332C23CFE0938DFB376FE681E5C1AACF675ECA2E88489E465AEC7D983025D0B2829C3577833BF2CBEE9A31C3162CBF3A5AE697D5C7C89919666E0F5CD24BDC1C590A1C8D62555DF41777A64F279190107081A102EAB8132CE1ACC9DE87C79F46434C06C111F1E0B4A70941563FC2A2C2AC03A29C5FC31FCAE902B405941231E68420870A333641A78D5C0D338375E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #912 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09FD5F12203AA7646023C4FBEDEF1C26B4BA37826CD2DF037129EF20BE962A33BE653C51422D725B160FAE9ACE2F04D9680BC1D7ABAE144C4322D4E156911978022804953A5702E392C7F1552850DCE474505878A70E7E8CA771524DFF9E41E05703F2A6085782E5440EAC1FA90BDF2FCC9BFD0BFEA0C4D9F6C50D6C9E4DD6FE9BB19DC71E2023472BB9970AD260756000EE366A33A4D2E9B2B9DCC452CF8C4EA962659F4981138EB7F7476B4B22B6D44CEA762ECAA1C6E764920CBD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #913 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B66C4249E80A45490F8E20959868E705D089FC9E9D1AD03721FB8B42E5C826AFE27B90B9E08CE9FE7FA958E0442ABC6B151CD16867ECDE68522C6B56D342B3B818399D32E7EF5D3D38448F67A8E060BF4C8E499DD7F0ECFFBE2FAA45BBC8FCF998A069CCA8BA26819FE0EAE73B813349B6CFAAE0DDC13FAC132EEF9D3316D5301F33CFDC82C34A2478011593FD3D68971BFA4D9D7910DAC1E5855C65DD412B1A96AE6807A9C30644FE4C54FBBC582F93E0E7A2453B2C5B8702511C5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #914 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0851789E5341AB4C600069302BD90B30DB7065685F1E30926483663E1A4D9AC22E0B119C6716742D1DE965D5A818F5D07AF02822F60DB33B84CB358235520897E61CD6108AEB65A004330AC8891548582130BBE90F14981E129EEE4280BCDF1C8FE4F6ED4D002E11D9FD4025DEF915CB10680208FEB6009BF5A9D054AB44E82C27CE226BE361E819651D01797AA0A65915138B00457DC3C61A039E7C874587E79C108F19964FD62F19AD0E397418B277DC73997330BAEBD6DAD175D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #915 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CBB3CF36CB6ACD1F80D7352F0C1523774EF81DDBF6D979EB2B2E993ADFDE50017C9ABBC6356D70FEE0512759535371585F960500B7D38172618833E5DAE0D6A91FAE648FDD741ECAC66118DCCC99458BC47266999011A272850132FD6347A3F3AC242D51816DBA1596CD314135AD4920C60F15CFCF33D58FDB853731A0B75CDF5378F4EC246482E809BCDB937AA50238C5E6F70E8FE11E4EF25C3D30800BFC30077D2D8A05925D9EF482D8272DD563C21B34715740A2B356B0BAD49</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #916 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09F5FA402CFBD81F4535134F2697DC6F8D5B9DBB06026B874EFC2A23933740A087A8A3CC7D1368A11F4929742BCEE486A4C33814D94F6B347A998B2AEA89AE0C8CEBC65F565B2946FF86F8AC2E0C0643E26672FE63AC6F20CCFB4A93A8EEC9F9D9C549465F22A684002168D2A914D690A3BF650AD949AE8F7DCA29749E7B70A4FF9CE8EDE6107E2C3998164305EAA1B650D2E0BE04E250DA2B1444083FABFA642679141B1C42E7D193A19C741E83F12D3BE6F3B64EEFD5E1031071D9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #917 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BBF4DE6497F40B0A82D7B8877B1EEA030D68FE13B9559B4A1971FC5FEBE3EFB5F962C6F69CF4D5CE942E8E49C833B155D0AD2DADCB4A9C76092EEA4FAD5E1FDC394D0A5D0D3849E96396E73D662D2DDB4D9BD161C02A5A20E600FC422686EE9D5AA14A9F39B0093AC9F031873BA0A359D201378F3473A4349DBDF942B56BB07F3865F7D70955765E8720F2D60501E2CFE5E3D77AE0DF815C468C37E5BFC332EF1563F350981553855B5E9CEA1DFAC9815ADB53018462336D2235345</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #918 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FE44644F36FD6E1998C8C73BD82C19AE21E5F202DB996675A0674F37B39D6E65645BB27FDE5400F9B4388FB5560F395548C56553260FD1E31197E8364F99FC612EE2D73F7337CBA28614A5281A51C019ED5DE859A426E28F35CAF764ABBEE3CB52C9EAD1EDFA81216E8FEA5B3A0A40E18C6D7D4E2401ADB8DDE8391093919ABAB3FE31438BF6433D5E8BBC6C0632F4DAFDB8302E277F765E5187E3084344DFF332F74BB784ED95AD12009A03EC0B8ED460E61845C03667C12E20D97</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #919 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E5C4FDAFF1103868957ADB0BC266690D0EC26EC504D62083BBE940991E178A46AE2E0D3DD65BECE82875D19BC576FBFE749018DE5A010F17F9348309E24A40C17BD03C50F80BDF3256C9ABEDE3746787826AEC6A5F6AA5961356F784B858ED26B88EBFED38F22E3CA73165708193D81BDAFF83FE450E682F155EE9897531589788B70D1713D00C257DE18C4431AE0C92334E98D1A852E5DAB04C8FFCE72968DC82922F71496B23B2CCDECA8B99DEF7F790220DCC5B36FAB41B78373</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #920 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E4CB3DEB53E2735F05B94CFFFCD3FAFD7AC9B87163D62BBF3B38CA28FB745A3BACB8ACEDD3032D7FBA4AC41180EE55604ABE7F557168BEC38F5FB93C63AEBC75C8BDAE0BF8402A67E4D372094AA9A710F081106144D63768B8ECEE5CD4E01A8E5058B9B45E72D80DEB35464355077A337F8AC7889ECF2507C70915E2690782A5732BCDB250FC4E62A33D4ED257E9F6B1C8420F7570A5AA30F7435030C7C60A094675D67E54925C62C9D0C0F267539CBC5C5B94AA01690073B5176DB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #921 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E56A7CDBFC704DE41863133301DF703D4D6955C18F27DB94D4480EFB6E87AD223F0B9C67789C71923742E9ABB75CD55626DDCA73C1D6673ABC767F951D5DB9072472053AB0E64D380881CB23DA1262052B5F41B16F05DCBDC43273CE891AE3E99B63FB1F30E760B889AA60D3848B53E482A543593932C1C35F66DB0F9FBB3D495CF38D0EB46303D54FA949654008EF1B56414D745FA52AE019D6EB15C2E5DA32F698802E3BCF88CBBCB38B3A390CAA2B604065EAC82C76FEC4A6489</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #922 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CD7EE8A3D0B598EA4D142FAA024BA1E42305E2626F24F2A0EF69787244DFA47A8597D0B326CBDC6E345D8981A977B3A4B7971B7D26A4A435062C2BC6E8A5AE7771D56B74476B14A3C7641EBA5C7C572400E2C54C6146397F3983E57EDD2DCAFC97C1D3B0C85AC5CDA5B1690EFDFA6C78D4C1ED904F4B6783C18961C43BBEE29103FAA61FB8EC78D85D7BB787B26B39848FC37675D4510D90B03FEB4BAB32E98E9C00BD8F46858BCD8A1EEEBA2A8245C4697CB222BECDD3E9568E743</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #923 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>086A0FD9BCEDD12BFE6A8F7D75D09FCE975C252F18AB2D944B19176A6E36A05E384DEA6DB0D082A93DA6341C41F04C7FC5AACCAB8A8B09DE4D093512C631008B5E758ED883729AEA80B06713CA6F0AF316EFE873710CC860783B0776BCC0131A78EAAC898247D3E938D45E50A8B699D77AF55395057571C0660638A145867605CC41A066680097F374D03656F65363A14BCFF29586567444DA6CA7260E25590B397F77172B9AE6CD7273639FD39E62D270805D5DF7E2F4A393FA25BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #924 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09B51A347BB6AA66D417AC2B5AB2BD48A07634C61DFEAAF1F52DE301ED7735A7F63CFBDDC46190AA7614AF74F1F6F902D186579B0EF1088F322C5EE8F6B053F596C22981A3389C285A0560AA91DEEDB0ACB7A108D8146032CE6BBA61FAD551C40C8E98AE631DC3DF7B4A58577C8B3A44F7BA46579F4363F910FA23E59CD483E7D6DD9F6C19CEBE853B682CB672A36F604112DD1DEF82F71E2CDE3E9F2CD8AE7865B1E77359B4D8EE226276F96CCD69A78854E60897359E1DDB6FB6B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #925 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DF6DF0F715D32BBDE6C7615797DBC3E61C344550E54C6825265213B2C6A07D9CA3A185A9A68B3E8B7A0F2C17CAC417D3648D963A4D62126DD87763B62EAFF500E2A03F402852089244D79DD7927C96A2C06FAD4893418B2B03D0D3E5B407842E49F276C06EA90BBE5F2EB90A75D53004E2C19948EB25DCE04EC5F49163F5E0B0DE987F4C1B2D8FA8C3716E538E32AE6BC9E0A7BA247E4430B02B06F9E6C984FA978593B9826B203F4C0CE2FEA6F610BED3BEC9C6C3989ACB1731A21</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #926 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EDE21A23435EC7589F1AF466CAAEBAD6BFC7BD869E36CAA8A9DD680D8FAFA742B82B09E8F744D873D225B38D9437CD1C3A3ADFF12BFFC2B955F378FF86DFD6DC8A26D5D3776CB3433439D505CF97787C02809D38671E0831E3B6359844BD5D64514065364B79FC688EE52FAC6FAB305725003083D96170CC6B93BF13322D9F4E70A59114AB6F7A543CFA0148D5F141AB8B8F6BC29FFB189F8D50A66F586550DDF06FFD7497419D776EADAED2551EA7D7390EBC600EDADA9109A7A3B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #927 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0915A00CDAC004B1B9442943FE044C35DD9479464D3C55231097977B4E0852BBB224ADC7ACFD7F242EF50BE89506B03CB8B2274D87384B4F58127C1EAEDB0B854B019BD9E9C50BAE703639FF308BA0719C9D1C8A7FA931F79E2566B7A9E8A8BF2E9D4BBB5C744CFE723AD7B0459AA2895E270CF5D03BA745DC11F40C5D2E19225B704D87685489D5BB57431CCEB0EC3B1FA1DAF72BEC50B2128D47AB12B23AAAA853042333B9A57712194DB0A5FF06AB894B7B8947AC5E3719ECE9C5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #928 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AD2FA3F0A379E16707252DB1A40CFE5F343FBC219EB9EB3389E8742A98066F3D5F4703A6FD244E02300537B9D1420498429A426CCE1FCF44ACBF4A09D809DFA7834749E945AFEE863A04B1A7CA8FAB3110504C427B1BC5083D586E9A146F8B3EA0003A49DB68A17DADB38507CFED0682FCC84F298376FE78BE2843222B3F6B5F19050AC92DC0809848B7E71E1CB5C0A92259921DCA585127B628D3EF2AD5ABD2E356EBB646BB705C7F259328547F9D74DFEA7EE5D3514879016F199</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #929 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F52CDCCED06F9167F81CE073B949461DC99153E3E12A40B32476ECDFDF468B8BBFFB824FA561012972E88E6B52E7B776BF98D75245C8F824A65279E7CB1B9EB0249EB8D816E8E45E181A9381B831BF557886FEF0E525A779E480CAFC0A7CF53B7C14D36D70A40D0DB9598BE0407BAD060E1EDDD3782A49549D76088FAEEAC6930868CC8412C1FF5FA07DBD7EE824ACAD1EE39E1793DFE7C5ADC8162303A0A7C7CF837DE6F7E1187E221E8F3F2D690C7477E3A3B49896BBB8DDEFC07</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #930 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C15B0016042B0D2A4CDB056C6986366CE67B3C96F7E7BF9B10084B08753FA9DAD93C79E11A73C718850035F13EC5053D34AAB4921003849009F9FF233BFCE096CA742CA9737E2B9ADF252509AE89E397FCC8134169C7345ED876C04E56C1EA4E795F19C54A8AA1874F56C8DDE78ECC30950794CEB9832F9559F73253665FF486361C52677809C1F939E7F75AE57763D5CB43BBBB74E802CDA7D3E902F328BE070112D924395EDACC4A4A0CD9CD9A9B68F881C6FB81D271C2D1F6487</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #931 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09584AE4DE3B0A9984ED678F8D0998B06DEB5BD068CEB5631D987B57CBF1C090CD632BA63048A8A3F8B2772B9729065DD2D71A73B24BBA35CF3E895EA8A7747EB2B58EDDDF2373A034F22C3395BD4380C30D300A110FDCF9A4483BCEB13CDFD697D9681143832151ECB44C8A509535521176C3501002389F41BDDFD90C5AB805BA2F231EBB7B0AC76F5B9DDA4EADFF79400B7704EFBE127226A32101672C6EAB1BE126E85174A48FF7A87994C1CE66ADEBE6FB88A3FC34F2196527EB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #932 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ABCEF69D400CD46ABD8E59DD0E00880B385E0FE1AB433A81FDA2FF68D830F01F561D905D8C2881DC247D04919BEB8B8095761C55A0A071ACFF8D77AF5B7A45C1DCA526E6F59156249E79D94C90CA0DCA7BC3B887E1A30DD21595E10D508CD5ABD26D281ED8D6EAB880313000163F01BC25D867CEAEAB58A2D009D5FDF5EB47E79C6C4FF0ABFBC511FF5DD20488AC1B66425F479650248CEC0E0368D6319F43FF028494F283480284E4449FCD26EA3CCF278572497179A9F398BFE35</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #933 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB7E9A176E7EACD3D4CA9BC2985CBC26D611DBBD369B41849A3283EF1FD1EA10DAB7352B7F27E788C30419E30E7471012362459E865149FBCCFCD009F0E1D4E3B2EA99E480FA702659DC613E1FDE6DC91AAA9C50DB799667EBD2DCB24A9520CE84528D54D4476A7146D160AE54850D5DB34655CA963B9D443F78C192ABB1E9CFD46B3657904144125C1C6E16A9D543D667FED3417B489EB9B381919BBC8D0EC7DF0CC578B450A69F5B4833B99576945DE08D9F76A259CBFACCB6CE9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #934 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D4713A015384D3F17627773324A305C83E0B6AD90915EA11A1069090E6509367377AFDB14C1EBC4FCDCB41EF2600C3F9D791E0B42CF6551889BA373722407DEB844DAD5F3F0AF8BE2635FA0EA6866C32A06E82B69E0B009F87FC09998C92E796D4AA3800F243CBDA114B9A484EE5750F991659019F297621AF7DFB95F865DA107D499E3FF7B50880954FD6B806D2B8123D77D19FEC19FA60A0CE29B64CF8FAFA9D5F15C1528BF7297D1A730F6553AE2EABF5AE2DA533A68A4FEE93B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #935 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F914AA9469F46700D703A5E93CB2C1C9690A109C8761F4D57976D581C44D03368DFC9A760F5A70F238852A6218E27B4675A21E8685D130115BF382104B77D95F8DC562EB083D230C2B5E9E401497410D54E611F3EA37723F7A739C3FF1BE8ED6E593BD2EC53CA317E5ADB87D123F9A50331EA1ECDD4C5CAE42C0A28704050CD2D824F2D6670ED2399F0BF9E68BEF142744514B922788D3DD9FAAA0DD1CA7A01E7C78869616BB2955EA646C740DC7495F95BD1D2F73102CF31353A3D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #936 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>090A5CB1A39F151EB0384795D19C6E70FCFC46DDB27ED476849B9F9D106CCA61307B90319779E48840BE426D7459685D86F90BF500F33993B6A90CFAE4A830E5EB890255CFD363C193F01BF217B42242A8663F445346478BEC52617E0C86851E1172975B16C76EB7ED3B433788FD97712AE93427F7E81DDCAA78B33D210D7F800A94F862A86D57C946A83B03904135FA048D112DE668DD9448883CDBBBCD6E03439AECE1F33F9601FD9607736FB7F126A35B87FAC547DAFBB5A977E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #937 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A024E8D1BF906518AEF0A7BA65C293006BE5C352230EA18298B7C039E1E1B0393A30A109F920B435643C19D4D5382842918DD28F2121DB729441029CB6F216EC39EAF8DF2244713439F886AD8CC6E62DC4CFB09C790B0C3A534F2495E28B446B7849ED8A149DCFF5B826FBFF35A2580EA9E199E96D59C4E65E4A59BC79CDCD82A0DD1F5FF19DE39283F4250286B6E4EB56AFAD59E2F63B60260DD5625654F13FD9837A3DD1D2E6FEA70844703A7060F194934E217FEFC6FF12E0D2F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #938 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0BE15A152D007CCD71D86236C2A8249D8FCD306A12E3DF60A3ACFAD41C211DF12D59B3EA7300EA3C653C0061E5022FD35EA5583A3FF38083FC6701D39A51901523BD22881B7E7D9A3450AC9452ADFC9A76FB8DB48B9D05DE6EE57BC9C9024B2BB730043881D8FA1B3B161CB2F8C5CE4E93DCB49A94E78547F08A79F919D7DCD0CC9F5DE47D72788AD179C9C28C6E0CC63C52DEDEB08B76DA5738AAFE03F797BCD17AD4AA51035D06701ED66179D5E383D9B20AB6B34E031273BF3119</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #939 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B36BB0815F6B97D89392D4823EE8B1AFA21E55C9E829DF21AFB5923362636FE8E55BF3362C431183E7F5DA31AB3AB09BCD84249AD62C942D0DDE2CFAD212B936F3CA907F71774B5D679BEC7F60365BEAAE96D1041C7B110ACB90EAD0B540139ADBBF219467C0E709F849A230EA7A4326F8B724BE0EAD5BE44EE114EF137A5AD90F65D22FBEA71AE14AAFBC91B8169C31175CF9EE66B9E1E3B4A85EE21EF5222BFA04B2B9AEF41D6C88B67D661D4EC7A849C489427254D524249DB41</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #940 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2EA728F4736CA65952FE7B1A92AA677857535C6E1283E276FE2F8B41C33BBEEBBB4E88F643729AB1999B1B4B7ECC7E8916F4BD6A822B5FE7F55DABFCE04FE92B893F821509554201D9DBEA838B7E94FB8F7D3A4E1EAFEB9C84F6C0B45BC609C9AFFEA3770648FD0D796ABB52B585142ED74DEAAAAEA082BA85252EB159EE2650AA3C3E3D492E3F6112AAD6E9FB0DB65558A32BA4E921FF7CE8743657631D3271AA5BBEE51952C4901A677851A32853E4CA2C3AFF479920A42B7261</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #941 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C6CDD39ACF60B19E947FD8D1EE85F7E379FE7BE30E4876D1E30FBCEF0D08D0C952EB098D997CF3177BC9BB3BBD1ABFBED807DC74CB0FD3F3CAE6778FBDAF44391BE7DAB480F43607AD8B007B40831422A56CC58388465F471BC8D60D7F23720BB1D763D4509FE2F84781D10FAD7E64D34D61A5FBECCA72DB77F47B1DD7DAA106F1DC3E27B1DD4000E9FA44E94C252B2FA6B47DF683CDB4E2A0E995614D6DE298054AF701CDC9BE5E53E8CBA8CABAA9ABBED05C9D3E3122943E4FAFD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #942 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AF7A6CCC8EDCD14851AF101F257E95E1DD30A5BBB62ECF3CCB3A46D91DAF8802F683344C93F9CE2A2912722A5C4FE9578E21F4D2F508F836D120ED0EA53246F4304F36AC4A1F06885173C46D51AF5D884FAFB8344C7DD678D7B7BA355A0DC34D2AA0B51A1C9CE37437CCDB2E9CC5D2532137668F275259F40F9396C2660DA36BABD6B7DEB0DEE2FFD2C56A56AA39FDEF1E393ABF00B7FDA4F84A86B1B5D86894619C4BCD09CC67E90162697071F196F0B5B79FE05ECB30336CFA72B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #943 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F1E390357509C1CB981FB5CC36AB2CC51AE77A15901B0293AFAA0D9F5A2D6C52542CE53CF144E3248937CA5BE75F1630C0BD75BD3C6A7CF3B38F181A4D9B8EA5924963C86CB7D99ACC8047B885601372411FE2C1D9806139BDBCD17A05DF33B11B31E1BD264BD6B03C2FE411A2D1C36AB5AB0CDE48800128AB1DBD1F30991A3AF504E89C5EBF5E907DED76DF6F616A1DD437500C271AA215B060896D2FF66F6044D546EA1245D5AF3EB375AB0BDD0B8653466222D38EE5E6C6F176B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #944 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AC0B2B3F070E115DD250315C92F783CDF9E66D716C06AA833EF922D38D4E8AA82E3F8217368337D965AF2380A8246C8D2D262B434D5811DA2171382E1C803A5EB2412B1765814E65CF7D318205BB0DBD9FA161CED85481E292C8D4A533C0AEE6E59B69F15070BD279A26D1BF7A45BE295C3B2FE485F973B5BE42E4D6E2E2B163DDC12BBBBD2772EC4FB96FE55ED922A6518A035C5DDB9C40C74D2943394C633A5039920CD56C005B294B4AA68116364D05A8E19A386A566D67E4A77</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #945 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E2F6AD346CE15810E0A594967D5A6C8E79583A7C9AC263C4B43432A8A0E30A178159CE84D36B5EDFCB77DC796E8F2264E427C45CD78D30DBDFD853E10DBDC110DB877070E0FA7E1F48006B68FB35AFEF7A4E3E01EF38E239DCEB47CD896076B5B7AB4BD59CFF9BF9609E82CBB55286D59A5E62EF3A6AEF52FB7C98E5A15FE650518D5A6ED5231E79FA2762D5766F29168BE4ABFE78B8001DB332474DFE50A374537CF198CEBD62463E3999E4FEB673818EB6FCDDF139A8FFF847A29</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #946 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FD12DAE73699D438B03D56CA7BA5069517CF28B086C9D314EEED0B778F7B85C277A43C175582163E207480CA572159BF4EB570362E1E9BF2B7967E348A13420159B412A2C22ECB2554755BB9BE72F4540A6820F56739888F3FEBA2CE90EE7B4400EAD04D2EED583424076AF2C24EC2EC436808C5B7DD1CCF78261F7E3AE5532D7527AC0048199C8CBCDACA25E582E22456A9C1ADCA1D75020407356147B94A3FE6FC863074B04950110AF5358FAC3890FCB2CB7672F3CCE676DDBA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #947 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E15D94A6D8FD460AF9C14D492475B462866739443426EF12AAC5B4F5018F6178454ECE3F3BDBA08B72FBACD97A06CAF362BA2EBFE382B9F20982CB829172D7E0446BA105189DA3AE12F800EDC19076A42D1BFBE06AA5F44A345B5B2DF49452BF2048F974690516642942917E0922548D2BD4FF131DF9FDFCC151D4BE1BBE87C7153098F4D66D672BC0BCC8896C5C0B277C216F9BD864255F7BAD32BE5A8C0755AF6FCADDBF7ED723C0AD7C40300A4B417960563468340E78DD7EC59</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #948 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B2B5EF4C8A8286CE0DFD6006D0E08B4F31915FB8223644164313F28DA1BC7F785709153E588E1F8FA081D499372C04B31DC36935F1E3AE10AEB9456477905B2EEF10916AC222E26B426A6347F15F789398A2CDC2FBD3EEA0CC1F7BB0462F3033194D04976D5B6D9D99EEB588B941C1F901C1B8945E2F104E4727AF390218259DA2E7A2D4D79D1E2AAF69B85472153A24794F20AB966A655C55A3A82BC95C26BEA156AE7142A050D2DA9F79E5220187CC150B04899211FA2E31A1FFB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #949 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09F65AB8E3E477BABB1915970F197F0FBA33FD54232919AF995BC6D8325468BE0304B046479041E005A90915ABF09BF135657761071FB6E7BE13534105762FA914A558FF4D17662B03990D86C924DE39E94B31C8B1F7C094FC2FA636CA015C5B144580846398D409D0F0CFA3038BB0CBE24BFA9BFB0F744C1C662462F8034AA6CBCAFA4FB8DC2824665BAA2D2274C0C881596C15F308D99CAF1DBCCAA958E1707254B437E1F4C476328F75D5B59152DCE81BC32D58E0CFD84FA3203F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #950 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DA4C58B89B7AD98EA5DF8E7E1241C0FCB68B8C95F9218316A20AF333585590BD54F5A992C257F03F3372DAB19754379D1F25B43010BAB45DC22D3502EF5BEB9BB5657A5011C8BB62EF20CC659956126B788B513700669F2C178B713B9EEF159BA59759A62FA0B009F4C876B9FAFFBFCB12139439C34BBEEA770C44BCE9CED7F87436F9099B1927C48E5A721631EAC7DEF5A987F994CF915609B2674F4BE43F6A528009D6285E7890A55F7CB814C8B76DF29F83066909A205F3F06A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #951 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C19D02E0E77D48D2E291A50A69C7564357A0E34FCB7F7ADB699489B3E0726A3AF6010F6C2728D896AC2F63374F4F72A61231DDBA53BB22AB47545DE645B4A4FF6F09F7EB157DBC52E98BC279354F1E56F2A407D301ED985CE3A94E994D1EF4ED73AB34BFE67637A04CAEF77D3C161ACD7DF630A367B341B113041BA76340B08DD9AAD84870290D99E7DB820D9DBC3646F717EE8FF04A6CA1F4416183A34531A5B07B1732B9BB4AE15CC9B3EA361C0C6070C3433D32203533C3B008F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #952 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0ECE6A7EC0EC3EFBF9745D011276D000E8A12091F68B89AB875A4818C53A2296A6FF88E2CE1C2D03F195E865650E0827A6CF70CA221D346FE37044AD5DC469DBA6F38A6FE6BD6BE3410DBA96B917DFC952A54FCDBD05A120F25D2050D645FD2E4DDB33479D9D73852156C0D28E2D2173FB32947CF2BFC837CE0D95362CA4BD2CB03244CB258D86C63D0EEBD6FCACEB69C2528B872900704511D76850C99D6B4895E28803E58284BF36D1E9B6936332D96235285988CC65AF38930AB5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #953 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>08191E673144F526461770B33E7BCE5C83C52898D8D9727E2F7771891DC63B18CA02DA945ECE1401F923A40E7BD28460FD0BCFC76B5CAFB43DC5412DED6E1BCBBBF9FF1952185D75AC9B51EF235981F729A1FF321D991A3001686827918B8F0AE86244563EA2587E966C66AD20C2EBBEF4FEFC9CFD5BC052307AC1CE1E3C7CD030C503DAE1E0A0D8A4573964456387CF7D7ABEC0B93F8E6DA2971122F294E517241FCDA6DC06F183D69A5D91C5788AE82B2576206EF2B27917FD1EAB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #954 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E0B98BA26B11C3F2BA951860F3B393F2072DFB417F3D5C6C54D47DCDB0662FAEC6D58E7DD7A21B1BCE3756D8D2204B9D5B5B1E11192569E027B645A2C501FA6AB85D7683E5A1AC3812CDEF1F150685D2EE86EE820AD860657E531E5ECBC3508F599DF12746284BD57408C838F5AFF05319499CDFE824EF2D98A5523997563A64CAAFB636AA0D2494FB833311A4D322181D702C62DCC1A71D67A356708028CA9BD93B45689F5FA81D97136052426B3904374FE1E79D1E5AA3548C75F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #955 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>096F3EFCA93BFBFF62D82191A2E53FCACCDEF9381DEC8D1E8C5C06E64290C3A8C5B7D1F880E4EBD990190E568FA6F477260473C798CF88B1CB0D24ECAFF7C6D9832290B6E15FB1B9714D81BD84A124C1C8130B622E88E5359ECDAAC8B383672B8D5A0EC64617E4783CE6E271F0B42643258CFD44A3C4FE7723DF330A20A845235F01FC1D9C519A9F5EDD6400B2D2BDAFFE26B920C1A6225E8CE9CEA3A4929421B7BD1741D5E69A29F596C7F6F93E5E1D98FF28CCB94B1AFF031A925D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #956 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FF770DDA3E2E6B4D2D1573FB0F781EAC748CF7176D84725961140B734F66C184CAD184C33CD94FBB1FD61B72FC5C5BD5D9B2A4FEA4F12D5AF71695C7888A4E3115054C45E6AAFB3CBD1B27B0D5F11E12D4FE685162133575BBDAEA34D7A8E5256438B02C494C49F2808E01AB522C0A231F0FC16B244E1B6813D820D4A35547C79ECADC04AFDEF65DAFF3DF80DD8A430A8DB07DF48EDBDB30FAFD50583566749E8661A7D4AAD7DF50D26D0F32BD890EB2D3C9069A5CBCBF5AB7B3651</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #957 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0EF77074BB2A2595E0CB272FAA9CF289B8757D3CAC6AAC5599544595062DF799F91799653A9E86B46EC7BC34E245A159BE9183F6CE7EDB2B52EABCB7BFB5CBDA4C1ECF759CB105A6A3314EC8ED4139155D0592F6B467F6266DBF20603CD438C4786047427502F39E34FF0890E7F6FAEED4D183A3319A77277398AC2360064B029CD803309477087E6B485BD2BE9E50CDCD0F42719F88A3FB689D09980D93F1877A73AED5614BA964686E482BD4353501F35C5CC23C8302DE03A21097</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #958 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1A70066A0248FF52DD340B79E6221E4398820BF4262ABE35472CD46EC4852DD58F729AD5798421AB4FDEE190FD7EBAE357A14AAE8A231600C690901485FA8BA027F2E2BF7BAC29463F7A7A45595AF32B6962D6A1618E870DD56A474EC428E1A4950E600526904CB7308C40F9F7C53CD6FE6052C33809C6CB77ACBCC77AE472D2B0423AB341DF5DE6582F4A82DB30AB3A55212EE005DF1364E84D72BB1FC2241AEE1192F784091C8D94BD2086F209E8369FB17EFA925C061870ED6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #959 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A48EEA79FC632810ECDABC39C86DDBE505532C55ECDEAF21D8229EE443983A376AD6F64042EE77AC16849275ECD22F365C44FA1A86FDF7BBB376F91E9D8871E5C3A5F1BDCBA0006C948EE4DF5F3CA65BF2E8E5DE3ACDAAA622A74F602F534EB12167C4ED729787B03188B95B80D9560E4576A4FCA30CE467745AAF12F67140EBCB540DC0DB11F7F0CA1588D227A0946607BE52949266C35279199CB529A64B1D9C19AE62254B0A46844164C9EF5579BBE4C0FF25ADC8EAC9ECFB945</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #960 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09A28E3C52374591D8292EBC9C3DE6446C7E2FDD047FE40BD0C52B17B9E510935603419B9555B4346D219823D9FD3DAC99FB4AA29978797EEDD9C8DD58C4ABC792F75388676F7C32B28A66449E79B9ED94549CD377BF855D9C8277AC557881D4FF6BD9B7D7D2347891CCD72C6BC55F328826D3C53F2D1CF6BA13A721F7758C16A55EF318793D48A619C38AADD9BE9F131D66BE255336965224ADECDFAB4AD995F9DE034D63E791055523FEB1DD28BF299ABE23F6A57EC89CF36ECD6B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #961 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F4D0460DEEC169AAA05FAACA0B78B80FCF49B69951C9018DD74939594F2BB348C5BAB81D2A24212C46885D56145E34C68FB39306EDB7A562D0318E0A3225526872ADE99BCCAD8D73CEC4CEAE51898507336528E078CE795F604004650EDD32849194F4C4288260A67EBCAC1D5A30833A4B4CF6E88AD00C6CD1C986BA84919D4170C5CE45B0B15C0E99FA3A0D352338B50ACD170906A7E71715ADF5C401FE86318763746EBB198D1C2548B2DD8408A50A7F62778E5BE38F1B8AA7265</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #962 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A0D0998B202CB1E3A07C170C3B2C2E581F6DF1B0DB8B9AEDC7316A721060E59A1842D96E0114527A910D3A5093C792577D4DEC64F7A65C04E3949427EA5E426FFEFF8D7861C10CE9F731BF9FA3C992599EAB5CDC86A4F0C77FB0C77F4DCF6F2F5E2813ACC9B56ED8103691B18C6FD8CC007F155EF88A27680EBBF134FA8DF9E58BC9A70D7D8968AE402C8CFC2554613F52E9772B29E674FC9EB2D123B9894E2840CCE013C7459DAE06CD56F8DC258480D9E6D5FE79850FDE34FE45D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #963 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>098B28AB230BC5AA6C0CCB81851E5B429A9F5D6F8C3DBD4C6DD050B2288F90596A1D92A9F9E3762DC7AA920BEFA4E57012E246AFDE9D0AC772B4E4B69F823BEECA9592DE4045F42647E3A4D3812DD2732C97C47F01F7AC4CED2FA0965CB82459AF3A38863F549AC9E38512D4C2E6AD560374128096B68D34D38FEE9D4C04C2320B1952DE6516AC540F8F31DB19C8C5352C2DB9D3484E60A4F813332D703775C1E00261B5F99EBA4C6058088F1F92B7F8F5928D0BE72FB9485C8AB955</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #964 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F5E8B48697E775B42A86EEDDC9294B146CE40BFA7C79406AC7A66444E955A49CF505AA69CC51A391A9F7894FA8FC1BC411D80725A379792827DAFDE29C3D8FB34A66EB40165686FE7C7CD67CA5E454D34C38CF9119E98093129BC7399043AAF63601387F9FB4445EBB21E5A604180271DFE61C4A6B959EA4A3C00263D2BA2107067F441417D443CFCEE6842474000AFE3AEA0595C075AAC37E16ACE0F928A58B5CC421A63B0ED237B6F896ACF754E28AAB9CE5AA102BA5CB7EEE919</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #965 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F3E6E5C6A53DF246470E2E8F4EB9CBEF4B6651BF386219DF11694078312B46B511512F2E9A2DB260975816F44FDF8F8A16B2FBDB2368547F40CC00B1BA16EEB338A0078C83A38FB4BC027B653BF8D4578D98E1661EE15B09C5CF5180A54F803D5D187519D92F2918D534C124BDD9085EC45A0608D7C85CCB1F883271C7AD1C1F034D69F0353DF33DAED8E3743E78C65CDAD3FC2F86866C6F79A9DB00FA344E6FBCFE7EA120F813B1C1BE475F6B4B436D395817E0FF5E23C637C3ADF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #966 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E61EDD51D49B6DA0E66F07C7BF1AB27CCC267B2CC25EFFBB7E6F147134367F70E3DDCA3BEC13D0F2B44C47CDF74290F756C78A41B1DD6EC186392738049AA13CAD05F078315E7D58A9D1032D055DA205AE6CBD8595F3EAB7FFC93B63D1636CE0310E2ACC49119E4B587A10C07196EA4C052B8DE601A11D7F6BA1356B338800CB3933E065EC41C13B621CDD9730BCCDC6697FCB25678F5F76B50871FE6D13CD81E2234887CBA5B1ADF51E80AF75BB70A1E80280853EF099DC5003259</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #967 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F97A1571D5F1A969639DF61875073373EB5A9CE5D6644FF8B8E28648EB3CD4291766A383B97E048C124435723923C29A82BE7D887448405282B8588796525A2450EB97750650816FAED7EEEC2B5FCE499CEE62CD2A68A7D0F6F2D87BA0CD14A3EBA630AC39B65F6C4FD2434D7E3D3121A1660AE1B408E3CF38AB7BA22138F0A011D4C9616545469E6B886D1B60C53CF0DA6986FC391278165CADE1781020A3A24D1D8CBDD1A3D2430D5346811BF35DFC917B48C2E4F5C8809A31787</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #968 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A073D8360F51D2084DDD51874C4CE5579E939B9FA32939751D33262FE1B12ADD29BD59F8143B3BBF98987129E31774273133840CA55AE60AF02CAF86A09CFB9F9C038A6B27CEA9F2928A3EC9F81A2B566BBC3B2F1476F977122A4ADFDC437215E4FB4FA49CFD6B16E77F1029ECBF0C1435DEAE7487522D15FEDC0F713EA9FC7401D4CC2F19CF952152C8DF73B6EDB2DAB19244A09C445EA5B1C22C7C3509F22F115D130D55300D10A795E1792FC392B5BDA52D5A68E1862AAC0C391</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #969 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0C2F3FEA87C9240A4195EC7004C5DF115047413CC6E24E78A84EFEDD0603D54C0AE71945E4DB85EA0A943131A1BFB4B6B813C39CDD016BE4AFF266873628561D3AC1D9A3E67CF2C0A3C81A8960F523F0F59CF28A53DAB9982B2201384730DA61E551B6A5912CB036A1B950A3EE8918A117AAF761B313A54BF81DCBDEF03882DA06AFB89D1D84542B92041CA611ADB4269EED4EC4EB6C49FD9050152C6ED30988BBFBD40CFA8799B896E85CBA702791BCCC5B7D5D599D24A724D3A001</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #970 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E466D4B132086AC1E3E8A01DB073EC8FA73E91E9D68B2F01AF61851B23042B2A4D729EDD29837052D0EC212C0C61D477EC414B248F81294B726B847B9F36E6D11AF94117DA56F146E05793D4695EECD6957FE7673872906A724091C6B23DB40FB51C3EB6B763B5AE6F01F650588B84538D038E7BAAC40C1D3E0ACEC9F3E84EBC65030833C9EA5B508F8CA27078C9B14EBC7919883BE6CF0E03E2DF2E9426516E14DCF097770ED99121F15B7A4EA74217B6BC73CCB4EC9665C25CC8F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #971 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E3F722BF02B13FA4C3FB1FDB2E5C11C34DFD492B2E580E83233C76A6C28F9420A116139E79EE82E42C0ACC4C35142E5F2B0A76105D89CB86F9D60C691910EFD70362013A47BC76A8F9479506C5FFFB5BF2D2F1E799E70D9CE7F2A8AE6EB73D34CA01B61AE72ACE9E403AC77B9BD83010E5396015E9BE10F0A6F0DB39F99E27356175BED17182FC4038CDB9261FF471C578C2DD922E788B47C54C866DF4FBB340272CB4340B7703A1893360B301254F939BBB3E8EE467AB24DB24CD1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #972 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A2B560C92BF94AA14A749AE2C36F03592346B0893F5706F7E3B672E42996C302D8FC677309F1257AC93B69C3CAEC4A1A23ADE34DD96E301573E7D250E4D92683940A7159B572E6799829F177C05CC5EF2F11C71801DEA71861B5B08D8527CF8C64D2114171FA3EE18482487CF09225CBD7ABA3DAF56E6E87C37AEF9A850A8A3382E31F14FFC30CD417876995A6B037834A5A316FBF630345C2BB1F2FEA934CF8EB5EA1F6F5F6CF238A5E9514A38A1F624B09DB31B0815EF45070531</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #973 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F159FD0481ACDE03D20B80487224B8FB10FDD47A268C89F811CC2A3845BD87A5B6B9E0F3FA903CBBB9ED7A03CF7344F58C6F67E0A11B9B751B1F5E9D04DB52DED993A82BF229F83DCE8A2CAA5D9E5A8FE04AF089826AF62189EA13EAC120BF93482BB5767FF589B6EE338F2B901BAAD0B7D4CBED6F00957A9D10F14EE4C96E1472F3B4E4B18C52A379CFB6F1A38C88A31E56DDCC946FC1FF6D8F065B120B92B2F35451F08AE5B62467D6514B3DF4BE717DEC6F81DBC70B242AC5801</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #974 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A5ED61BB7442351AD96E3E1A47E04932C26889631AF2816F0C106E09A540E660FBF83A973671F619D2A56E6BE3EB3607DF88B862A3EF70D18B3C115BEE0A1E56DAFCACEC1870F4FE7B97713E59E7A9DFC8E61928E8432A127A6995FE6CAE665B285BD146E617B11BAB2A393AC9E8FDC1D2C7765DBB4869B9D17874FE6A1266E05BF6353F584CF87D942FEF2CA22F18DEA916E9B595E4B9E982F13632CE54703DB8CA12B2DCA0CC592E3B7BE8DEDC311C8A445889184FE9061762D01</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #975 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CC70939727833FF8EE02C36F5C96D4EC75CA679AF547860D086F4090E75ECB46394C7D073A4B4EA90E493C7568A5FB09311E00239D0042D518A5BCFBE3095D4AC4E334C5C36CD7697EFEF6EF78FC0BDEF5BE468C68CF86EF0E7B6E16E87A606286453B901EFBAF3A3D93A020E32B51440AD811747B0020212F7B5A5D2898FE4E0897EA9F0EB79C4299BBF6513242DFB5FC6F44786DABADE18EACD155FAB18BBD150092E0A304C5A0B58F158E72AE180358CAE7981CA7CD96234539F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #976 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0F12E0729949B5EC74E096AE8DDA14AE5F03D9AD233CC8FB297312E34650F6AB63E89C8684FB601F5C2C297D7CD7D03528473FE45CBC28FA07B9D745CCCFF8C1CD3E70A35D4DB2A938479F73861F55FD5A412091D920B5F77CA61F9DC5D2433E850CD8B0B61982BF7D1094C43A4043AE6A76DB6F859C3C7072626BF1CC07F0CADEFD62348434FD07CA4D195CC6EAB942B9A24EB17548BF61E5DEBE6CC38753B5BDDA91CEF32EE45B8080B9E36C8696FB106CDE84F529939C83712A3D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #977 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B3C2848140ADC2C8BD0AD78902444D2C2B67A196547A509268A5ED1EE912D8756BFBFA79433AFAD83E3C3B0C07309AA9F0C7C47CBD08F2E7F85785882F2DDF12C7F849A458C93D8A521923551FE3691C7412B7FC7C9F375267A7F1B7D8E91FC8476F8F0E9EF91FA70E4A20B6553DBAD2B3126CA9D7461CEF3B284620BFD6B3A49CF9E885A095B8682632558D37308FE6044B8AA959BD09CDE3A8D4DF7BA1038BEE982FFDF5E76546D2580BC23FBE090C3769FC7B5B918EEA5BCFFAF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #978 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DE0987BAD2877A6429A9FC077A77BC3DFD896CE7AD0274F3C8811AB06517E7747A0DDA9CF5DD974E591DD87EDB576177B02651F4D649A9004B9BD69F64292D442692CFEBC839F10CFAC9A572437E06173F25B689616155E8CC33C7EE916D7486A962E35EDEB352F31A35D5653080D9FEDC50BC30975409B7FF022B231DEBC102CDA216683699EE3A4BA5431D195735326451856FA2A9437648A769551E51D652E14CC4D2EA167216A00E8A0B9D311200DDECEF7E53E3A4DFAE23003</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #979 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>082CAC54F5A6147BCAF7BB397E679296FF5BCF3EF6B27FEB157652D8475570B0884B43E297DF54C79848C3119DDBA4462BD30A15F529FB47FFA71385AF918BA77FB75E9C732EA60307278549EF4E134F77DA06A114A817622AA9102FF06EDEDBABAFE0B4946C054530C75681CCE145ADD96D256679E54C6031A205135B656BEF98583021D3ECF85ACC8B98EEE2A4BD24B44D187D5BC49838AC4A0E2106C8BB32177A1D95B2152222CB05C9B92AAB144429D5E0254A7A6660D481EDDF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #980 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09FEDEDA8B4300E0A94B8B0A64E97766DD777ECB4FCD6605F04CF5A6B6D801AF05087009089A80F6C8ECDE6D87A09D4820699FCF7FAEF4F476204506C5D29031C297C607FEB039E96CC2A40A19AF1D60440830ECDFF39DF179E82A94A12C5BB675517CF5619BCF612FF2659D26FE39557A4B8F0931D3C5EBF1C396FDCAB3137B9FEF52985537815C9BC5FE14FD589CACC98477E4EDC96509519FAD25DD6A373C8EE62E4ADD42413E1B266CD64DA1CFCBA33F31442C05B6AB482A8F0B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #981 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D8CB5E6037673847E459B2BC1EBE4BEB02EE2112BD0F4BE9670A9075BE6DF64A0114475243DDC3A8EA344862400089E7D8CCD7361C3F099EBE9A43295A9E19BD26133D02CA3419FDDC9E31476D4D55C6CED0596DA6E0332472804A44B3F711C8AE4A2471C72181E095398B0531E735FB355E1ED781C6DCAB90E0ECA9E19872762A70E40EC043EFDD92BB2B779E2FB67637760EA24432890D1EDD7FE0B9D835B63A38B1E72DB231D85E0CA0A5CF60FD6D9A24916D511077243E23483</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #982 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0892DA3C78BF103DE694BABD893CA7E45433ECBFE4920864BA98A0B679782F8EA04F884BB04A690F7A740328A0E2F0872E93DB7B7DE71BDC7F9D0ECC4BB500B382B4D5F45453035DDBC9F32412563E62EBFCDDD5A461C19D88358FE6B47B18EF225B65B3CFEB335C315FD447A7260AA6E27AF89D45DB3EF4F7E23274BEE7C2382F4242AA4BB0176C680151DB59ABAFB8D9DAA88F5BBBC83C8464D9C420DB7E47E9D36086FE970869E5F3978737B6BC97CA20683835161B9AACE0C257</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #983 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DD884146D58CE5AACAE0E2655CB549B723B4557B3A245CD3CA29EC0F7BEA1D9E068A95EBF11DB75852D5E53F0C16B3963F14F5EF2AD918481644DF338E65D127F432CD56548D556659B72C9B6EFA97221277C016A9D711C8610BC15259C1F7E2963450E184DC3462BE46B460FD3F92341194887FE3429FDFE97DD20D60D48CACADF3942F85133621E02EC003A368B4E40904B1180E058BC2BE9FBF29057E437F1DA0CE9845EE632B02E9DD098FB0186C48D6510A7E99434E2239979</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #984 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0CB4306CC49A4E0250E0A71241A5E155B429F524C6CCEB4431B47C99F41504FCB041BC66218598A7140CC2AE4EDD063F026D52F6D8EEF0CE8761831B1EF9A5C9CDAAE2ABB7F2FF080A794A098016C44A6E3BE180BE9B8AFCA52506B79F8C95E309008C98CC0892FF0608C1031FA32DF48BCDB97850C91982D23D7F7E10E35BE0C94218481609EABF67D3E202DED0988FC1BB5C2A7638FC371BDDA27FAABBFFF2AE4126307931BA86A2C0504B3530D807E3CF0057861287456A61C4E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #985 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FF702107F98CC5BADA20378E4C8A96561EFDF00811BE14F61438B562E97C013F5D55839DCDDF589EB9A076A9A632D84CBAE31B8BF27E5C7792B5C8C7E468ECE8F4A185161BDE2899F2A368824B822054EA8FB01FB6450E7C08EF3163032B725ED1929DB32275AE3EC5E4524E369F0477EE696D955F8568BD50BE45F30C426A10D99928C54B8354C7BF231E4B6F739E5AE43B5ADFB9DE076B91702FC02D51B27BD4AFC4683B803D76B6DFCA3DD382D318231AC6939542C4CFDE3A257</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #986 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0948AC0B9842C41AF658A4D115F41CA84177CF39A580936EE22755AE35C8CA735D7336DCE1A2C912DAF49DE972B8ED6110307ABF86F2B4AA27424C84392310E71A06E784A006C881C9D3432747C78615389B0DA54DBF2C1580109BA2CEA1EAB37E2BF00CD077254CDE157450EC475909506AB211E74F3EC8925D9FFDD82B817EFEEB1D5A8D550794C2165C275C09746DEDDCB5BBEE005D2499DC54237087A8BD847737FD276365708D651F6F59EAE444C4425F9046FCF7352B615B1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #987 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>09BE143D67BB624660493A4CA649F5EC97D5FA498ECECBF04A56BFD2AE621A9960DCA06085C5896EE94A4D4118934D5D9C56C7B78CE05968071B2955BAD327D9FCF94DFB05DED4F06336CB5F6AD73E166EC715104B2B68086267EE350E6F375676FB335D209BB09908359855F5A02AA5627D7564412B131583742A877FAE1A7D7D58B25F3F15302986CAA099002B969164A12ACD4E34A03938D66A5F01709BD80A8CC81DD473B3DCCF0C4AE8C0BB1B417281E0F5DE061B3A9348753D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #988 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D866989CB15924AED8901052906AF7D57B5D8845CEAA1691B6C2D0C9A6794870EE0B98FCE881AFCB90623D01DF9AA8986BFD87C3D21BF0869C07DD0836FD69799E1A06E58B7C086565ED45F0CECCAE67AAA14B16A3787B317BC981A82F06F05724075825A7D3A86DC5AC4499535989E289162306AF887F50B4C15F0C485D6FE5F3E390F2DB289B7560F39BA84078675312120987A9CB04E48185CF6A3F3FF8B642A7F4B8333450E9E3547CC88FAFFC1E4E0363884C904E32D35DC57</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #989 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0A814A8C176ED82F58421C552C54AB39CD1958C4DB305254ADCC5EBCB3EEDB44D96EDE0D24016581C76612C835E34BA0BB8EA74048A6FA99339BBED5DFCD96CE3F66CC882384521F0A588DE350EB8E09E0E54B94B0CCD0B1043DCA9F04E7D0C93CDD97F5F300388EAC12A08E0767DCBC2FA45D8F66A7B7ED030FB773D65DA6597DFBB3FA8CDD8C16D1EE9DC4350D4F982CBC3D4B8A7415F007219714651A80DF1DF88B7B5206629CA6F87D52131FBEBFBE49275DBF89984E65D402F7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #990 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DA8C4E1D8D2345DD2F03C89E17DDCF6F023E359AEFC262438C3F0F855D7B7864427008D27F2E5198ACB03DD24DCA6790F4C0FB792F16AC42385016642CADF3921525C92F15D8A6CFB02A995F5AC2170217CD6446AD88CD2E495707F5737295E72B41341ADD4D26E9488E82E4497459C2FD7FA87CFB32E43379AB9C62716111A2568590A834CFE7878E2A4935F83782FB8D3FE1F104E79CD2F7027520E6C584F3E53A77CAD6CE52C35A0FA49C12B4F967BC1CDF7E9583DFA1BF87CF7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #991 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0825AFCEC9FD3219ED4CA43977DB540281FB580F64769F4B36DECFC0ED7CC4D03DA285257EC865CA1531813711A80C4E155976A1B0CB7EFCF62A67F236A075277647BEBADF4059DBA208990AF2E3C5A9F3948BA26B7417BA05521C3B34051AF6915707B9D454E37BC7E02DA6CBE8BDBF474FEB47FF7BBAC7814FD5BEB00625E36A7A43907807E57FC4D06EF196AB49424D54B3A2ACD355041E060F1F32883DF87B47F526C5B2ACABDB9F89EB38E836238206E41405A72A6C5E9E7F1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #992 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0FCF8F87D5C4DB2365E0253A03921DBE921D1FD182ACEC744FDD2769026441476A8C31B0AEDB7FF96FA43CBC288F35E29A1C6C2FBAB0C383DBB5A12BDA18339BD51EE47052378A1958ACC08984C58D7B7AF7FCBACA13CD5CD6ECA6E66B7BC1A5590E854A0C36FE208BF69E124908C7DDA567B861F2BE77914FDF1A722FB65F1B7EFF28D3D9D42E58172A64E5FB06A7E23B470244AFD615B2E47401FC48EAC682A2EE15472B3402128926A873FB0536BC6B7D060A479D7B093059A5ED</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #993 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>085D1EAD3E385B7606AEC278B5D32B40319D061B43B4507D2315D8511CEFB9E2A20170AB58D44073A8450CE5F27207434E979D79FFF8FFE72C99F27320891D0525D08498C89752E4692E3AD6682DBE9F4688BBE7B83813C5EDE5DB0182D37FFA699646FE8443F30D67239ECC4D509257D44B2E6C12E8687D3BD0BB39865411A539D1A3640CB2D8C21F24828359D4A00F79054B1FEBF177BC1C7D3ED4CF49C320E14E3D558D1CD117C61055A3F75D4DCA5A658044E3606F0A887B6ECF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #994 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>099AE2D7CD4675577155FDF7B5401488878D7AE3C99ABB431B274CD6157FC7A8410CD474954B351F783D5E3300076BE6F3B26079678634D6C9E8AD86D280925A13B4950BEE56CAE3406DD9CEC4BFEEA791695D7024D992D17750F9B5D77224F05623358D0F9447C743339921E969FB10E07BDEE44BEAF81DBDB2EAE3FC6EFB3A2560079FF0D265ACCB581DA87B7322849D2A51F51BAD3DB05BC49A5AF301D9B17C71630A684EC7FE4BB4234104CA389BFC8A2FEE5D89F3D5CDA3BEE1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #995 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0D69F09692E10CEE164FAE20DD8F4E36E6300877DD3BE7066CE0D40AE80AE4D635F470ADF3292FC138FD03F64505E9FE9749242CA1E19FF54D47FC8A3C2BD63E556A595350981A11A5E86074C4E7BB1B9134E95774B28C4C78EB4521CA45C6F073080AF0A0E01F242FF5399E72B751C7681EC7A6516919AA085B4F8767D9D80D5385D41B6B96030530E7AF9C0DD6DF2791A9D8976574215361AE91669910C82CE55903D52638A3C9810E0B6C41AE2FD19BFE3E3A0B878EF7892E7B61</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #996 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B5022EFFD5B848C227079338F193FEF3A3DDD2653698B273935A089D1E2CC793EB17D8101BEE465108DF2C1F0BC07BD44049467F9D8DE3697EE2B3E3BBD481BECBCF217474B74A5C51464B10E96D6E1480C583C3D4DD6204FFB1D5A68D340CAB12965299533F1B537C9D68FA4998390208ED83214688A20A3544C529C95E45F2BE3A50086E32F598E7330EE261EE6A1DDC8F5D00E3BB776F2D9A6B9F7F845CA184F49FF8831143FABE7DDBD24E4B450C51B550B2FA20F03E9DA938F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #997 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E1E1969CF246941991C7A9B4956DAA3BE26986BAE73AC1B26715A93AB44E212930F2B22A0F83594284E9D77800441533960197D2AD6AD889D1833663F10585AA8E31C2A0B9B1098B3D726286B6CB928714E2FDA737CA876B1C113D83D6D0AB5979B8A416A0BFE3497AF8E68AD0DE76398C4105C1FC131A19AA58481E4A1E9DCBD6F778AD7ADDF743138AD195EBC362DF352A983DB48CD4174631A0864923127F7F2D297242417AA497F47E12EDBBCF5C7A74A26B68401B3D72E39F1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #998 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AEE9C2A394E0DDDDCE1620EC10B5E5B051EBB0F70DD05C9A7B549453F213E9C69E9F9E8D6902B5EBD756A2F92D7F46F2678A03EEA5616AAA7EEAB2D37FA808AE90AA2F9500E2CD72CC987076442526F905FFE88E59407B807A3A69CF8E443A8FFF5C88C9AE96642E27C2FF2CCBE84673C6E7CCE29C801CDEB2058F7071AA66D66E02E9C27C33CDE37139440CA6413FC390FFD5FD6B9D5ADCB4E9A108760286947E9C82EA91CACF267E21A02766C1ACAA505C1C837FF1AE3F981A1AF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #999 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E496B2D00E8DE550BCBA114ED64FF97718E318133329D5829BB03E87FECFFCEB0DF08E0B56F6816B82D4FC23BA0419DAB3F736D028E39EFB5E3D0DE6EF1B7AE4196277778E02D4A71F119FAE79794F430FD8B2291FB36779D810D73C46193179CDFDFF6980293FB857EF8B02365A33EB7C9AA76BC3C960CB87232680FAD54FAE1E3FE74D594EBA543698A205874EDED5E13FD987B2FC3A85FF0B1C4E1A5DC94D9220202F145B018D8AF531EBC4A9921D7EA4BF2B280EC94BF715E49</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1000 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0AE4B088969D00326BB4355742735324D6F3AC95DCA8B6CEB216D14FF8FC7706CC3B4E63B352F0BDC4A3182A57D71D92F5C783D2C21C55FA762A110EC754C2BDA0B914376E8395F742DC8BDE86280F97731EC77F098A1E45901D844AE867B13EA2B3416E144EC42DAD8A717A1D86AD680FC4E50B9875FCAD97F6406BC427261F09B399AED57E44EBFB2560068B323E90A6A2266DCEC7E36BACDFF6B6E3282AE42B6F00CFBE1E4A8D4F17C41F79D65DDBBA1B4AC7FA72E892F4B3C05D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1001 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0B7B29CC4C16C52307F60F415A0D6DA60CF93CBD3777157B28FF1C2547F7A5B167C6C83348B336ACDEE535B4D309081B6B691B53E4B3B85D76885052B4C4FD52DD884CC18E52F7963B76E22BF1BE48AE1E09BBBDA67AB05E76074CCB60BB015967C3AB04AE41AF64B389DC5322C10A3C2BADF7D5E7545B651660C1705D81285BA2A6BFF5299620BC6993F4990417EED183D5202BD49364B4F951D0D07E0C8A236E2EF0A6A1C5CB7B7C2C641700179C7D0A729970D2EA784DF7D2C6BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1002 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0DBC5C27A7CC95652AE1E89486B7F74EA0E2EB81C9971EFB418ADF40E8009B616862CF2CC99979FAE08E3CEF610150F96BE2CE72C8BC5FC34AA24A140783CD0B94A10A2C3DB4666821ABE2652A4519B2365BE95BA561FB27E4EACE10E0D2F315CF4781125A07B8FFE86B9F5CC38572951FF3BFB1F6D9761449D930FAF0B07A5531176CE1833D44697B56ADFE40F3E8A6A32EEC031AD2911D81889EDF627145F77B9253A5FFF40E9B28D1FB3D5DE8A26FAC431A463121744F4DD2C185</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1003 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>0E2BE87B35DA00E121B4007C842A6330240597D0FD96F68233AB991B6BFFDE57E47198C6FDA4357BEBE51D63176A734ADCE2E8F84E5EE02EE674C47355DB6B9776B97BCA0A751821F077B3203018C9FD0FF8D1651006BF881F7B886BEC8899DADD6D8B56C745B98EF197009A332DE48C4F39EFB88D07A8EFB689171722082AB51025C11A8A938BD36A596687EF936BDFCAC5B66C12F81BE9B6F4D1770B6EAB9F3C4E6B673A764FD0AEE302A0F2575FF41854CEE7AD4F07DF5C798009</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1004 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F58CC097AC917323683695E12D007BBBBB67BB04F9D7FDBAC1C22C78001193280482D1017FC546EE371CB5B99F38E1FEC7CEADD812C8C1894AB05925D8A86B49AF3E808943138716478B79A695BA7D5502A654D96044871111AA16BBB20D140701EE62F733B93B2018BE55159DC1F1970C323EEF039EAC5AA055FE6F97EF486A4C59961F8A16346906C642C4A4CC8330292402425007899A20D05476080BE9E2E2DA74CDDC0F8576A4DE5704A971E6CE1C1FFD3F2FA094D157DE54D46AB755D913E5FA7B8AAB221D956F74F5DE2B7FF3770D6AD37D0BE1E9995CB047DA36E11413D26E3DEBE4E4050ABCB11BAF415F1F10DF37CED271A6DA5401</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1005 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F3182C0315097C6488967BABA98D50D3EEAA4DCB7831AC5EFBF77D0642F2A5637D93EFF1D37F02E2828FD8995DEBE0E961FCE2F5C5B4EA09694BB8F6BB169EDEF5DBC0FAFC40467CE5AFBB2C87C99580A8D4C1ECAADC950AEDEBBCFCD535DFF8D639BEB2398A47FF2EC3C30167D16F63AF6261FC91C89769CE5DD614254D134D46B77FF0CAE271F7F13FD977CFF3FFB5B964343E7CBFA1354537BB39860CB79579B0AA409276BAC8530B7C3E7E50456E5C12501B382677FA707FCB6669E107FCD932EACEDDA2B1F9986829CEBA1EF75C34ACCCD725BAE16C47A8B66732F9263BE9BB129E80A0044AE2711F216D6401C21E1FBC6661AF2D222B2D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1006 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8BEC4D4258A2E7FB3708E0A9FD1612B3C2CFBC7FE4E5500FF4F31FFF1F562FD7C70DBBC619925FD40FF7B8FFA00905D18E231A995614205EAE6348D0B839DD10B41CE36619D92684CAE0BCF3E20E628C96E8F2D5A2F79FB25347AA52F472C5F9FCC60B5D0A56E11834575AF9C57B024D1A94263C81AA7B0409FBA305845424BC93A1957C17868A936FF4BD1EB107FB8A31A1F4D7FD16CAB146C50D9620349B72A77AA30309F7BE96085462288D0ECAD37CEBA30252A20577A03E95D3DD0A7DEBD908B38A5CBB2324469B424FC6CCC03704A5D6E53E7163B86B217CC2E5FA04143E76EDDAD2F6A5580C83F532AFAD703BDA8753B444EE87F767C1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1007 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F50D449AC3652E6DF452A55117BB236A6F2B76A1CC399C113D25A806D748AAE7306F32ECD18802337D53E89491BCF43112E2575BBCF2CF6DF25A1C8E1A719D4B57450B70380763C0304E2C09968E3AE5140F6A557CC96DDA83E1309EA4918F10498FBFB3E00E862DEAE2FFB6EFEB9FBF6DC2B9DD3455536A744A6E4D789DB43F0E1E3529B8997CFA390A8BF4FC812069A92D66FE641097A42FD7A9EC58A9244D88B9F6AA23A5286DB711EA3302210FE275D484D260717F24E65D36806FFAF18DBA947AB88DC778F0E1FB6DE9BBF588F0411A628CC2DC2BD62952EE4DB9CAF40F88384DBA3AA04681A7DC6129A1D69C79F9F24836F01BEC9862AF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1008 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8AB29DF75450E6890FEF35706110DF5DB39DB387A850A57F973F1F42E21B43BE73CA69172AC9B5C8C10B7B573069A43403C8FD1A2BEC62B400C86905CA258025C6FA42E72081E1FA26FA0D23E71B7A90E0EA4B07C1213A81EC1A13CCF04CC5DD156DC926072260E8DF850CB75B7C685D91ADA0997C5748BBAFA5A0C39D613C718738629008F5C4594B5788618CFF0E86B9D5FFE62A28A5437B7A377CD18C90B870D4D80A691EBD2CC7CF1B88D5C5386B368260A39C96F1210B00E8F117B338F32389FDD9B2A3A1FAA47BDA90E17E9E75A633A5A7568AE59B9BD090A55C2A150E34F2EA0FC304FD47E7545F2BE857A3E201B5721EDF57B62A664B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1009 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>80CE5F2B32F741FD6B4971155E3B28B73975DBE535A9C762400CA4E611DA10400095E35EFB88E703D4D40ED537DF066B497C8E1DD221BD84B220EED9B3141047981032DCF56F14F4732A3BDDCCDD32C2CB9D558F78F1BDD7AC4C5D0FCE2A62465E5AF5C496CBFAE27B76E69305D28C0083E047873F7C24A000ED6F06D858F1DB8A370B7DA64A44EF460C845F0B18D8EED27D8B2C6755D28F765CB9C8373A96BC4C77CE15FE1B833F774D9A5F9F6066FC7EEBEEC4736113550F155AFF2EDCD9093B7877829F86A32A3014B8FD12C9373E086DB38CFACE39F96590554A3957469F99841EFCF45199668F3E9FA21743A3166D32346138154963E721</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1010 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9BACE96B95EB178559985A95CFF95BF675E0C5364BC50FDD6FFCA85751F6CC532C0C3B7B49ED01BF6536E1535D44097076BDF1AEAA71E56E050035A450F29DC65DC97606B7E09540B4CD86BB9EC0EDD658CD1C8F11BCA1C9B02ADB71FF5D14CB2841B181D48D0357B21C8ABE5363D4135520E6291629FF66026535E1AEEA5E955326109208F40D6C0C7E784EEE945833B605AE8756D12FEE6D475215B43727D0DEF00B203561D007A6B21BC91A4AB256A7A4F448BE8D1F2F684E15BEBC6D9AEA02753C484EBC7F6A23E551030D0DBF08AD7CA89C57A9766C1F0C47CC75AD80DE06AA6AA9B5BAE50ADB78AAE740FEE7C0B947CE01538D784B8BD7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1011 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C39FDF58303B9849ED6C1CBDE5E86F291F30BF27A631C5E130105148242B7BDC52A7089C6F534EE2111B046023B46F0D323812F1492458FC74EF37BFAA6A9AE8DE7F447D79565EA649725DA8C7C425B7ADB79B416947C5669511CDE00BC51DDCD4C4CE95FD3A5507CC8CB8D22561646C7EB9E97E76781F62ED20618D255AEA204BFF46FF79D3DA79319CDF1E9A37DFD68DE672689C5A9D46C03AE2E700B41EA3AE236AD024F1D87EAF6F3663CF969B138E1893D0A524EF2ABABBE6954870A7BD5AAAE913797B0DAF6F55CB30324DA8D4B1EE55900C5DE40A6B587AD4288EB304D4C997F3296FCBA75B655EFB657AE179ACA87802FDC751A1CC13</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1012 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9E0C6754DC397B33A79482975AAD506812ED87B37D6790E53D958BC20FC5BC2867B4E7E54D20F4BC1FDA7FC958F2FE9F9EB19BC48CAE525E1BA78E61B750FB1357269A55070F10395A4E6A39CCBBCA79F45A391AC9FA3E2F7DC84CDB49EF4C440443647637E673DBB4917525AA32C85EE80CB5008472BAE51A695A7AFD1FC7A57C3DADBE7D723B395615849D5AB0BBF352B3AFC61584B9914CD5F850D4EB23DF969C30C82DB7A29B453F7D788D12132B54D44C203B4F3FB48F035EF7FE9F41A9064CDEB83E501B1884144570967ACDA580A40875D7484C79B0623BD4FA82C90C90341FECAFC89379EB23AEE46129B5E0BFB73EADF2E91FFCFE01</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1013 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FB60378CB4C1CBDE94437933F19BBB2EC34434CE14542B38F72FFC0EA73B62F7EE8C1A830B96ED18D3C8E8A2F87CD6BDE366C4D7773748F9B3E776405C038F05854E914AD90987367F133163F637A799666C88A04C91CE866AE9AC080CD807B5FFC394C24101864840412456C161252AE29D36F9F2996B921CE832B32AEF56CC39D9837F038A8154227392690580BEA2CFED1CA82BD7390FC91EF7C4B30649779123F6ABE4C23DADFF32974A368E1008F1E3A85D3109A79A0FFA49AC7E88CF120B78CD8AD80193C8C536E80A9811AE9A3CD6C102090F5EE77B5CE6B69BACBBE791B8E63A10CB060E0D0E38EC3C6245D8006E339E76BA6B1FE729</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1014 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8B617C5A7C7BAC4B6200F0EAAB7D95ED738DABD9EFED9A109FEA0ED4BC49D4AF3D07871E2FC1B8C8BB719F32685339D89FCC5EFA7A585DEED1616A5684B930547473F334731166864B3B802CCD4D14C9C42C4BF89AFF802CAEAE43A0B392925D2EF79BE372B240FF7563E7A2792BC181C6965F8135E75526021A68B1BAAA702C5272F510B64C52CD94B3AD5C96E035FA0F842B18D302D9AB78C298B118BFE9B22C964859F39E08E523BC73103E9C618AD51C4ACB708E929007B87FAFA7BCB3DFDDEEEC5E5FDEB0DAD9B04C6DF0EAB126068E745B99A332C5A1583AA592B5D10809F083BBD6EEDD93044663268C78A6AD791E1C82B72C93467975</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1015 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DB758DF9CE5C9728115BD736489406D0C345A75026FD2EA00FC1E26777B8719BCB2BBBED6D48FE1D3FB8B9925DC6FE86FC0E5576F7EECF733DACEB499D4E1E1700E65A27C391C64CC00DB22112EA2AC916523CC108A4683B643EB1045C2FBCDFF65DC43C5C6AEC144C4E041E88C2032DEC1788B9BC7DE255B6E29F6D78E0F39E9752C3CF0D0CFA64E8430226EF89062C6F1606000E3EAFFCAED2496FEFCA6EC40F944CD582B0943CD0B147BC3739CFCBB048E55B5D200BCBC305DEE0FDA15173145ED10B11C6E3AC72DA7079056F7E4976B64A1BDDF049A667FF12936619FC61167CF493E792DC4F41E95AF9941F823BCE9558AE7D3159B40EDB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1016 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E1FE3519163CF091F80D2F752C606321FD1348B765D86690F01935ED29309E2F2892C04440E45D09E9A5226FAA73BD50268762CC89194444E21E37D715630AF335B35A4377DCCF6095BD10B006D1F9C9DF92A39191C8E552B6DFBF3C48DB0CBFFE0E42B2128117F62458545BA8B27C39A4E4325335B6B4B05656C17B036BBC7ECA9679E3919797DC5FC4919C9FEEF86EC2028A63101A0818DBB3BA7CA8BA5A8E8649A70EE0AB9F07B3E80AA2A59F0B6E298EDE20CFEE296B27998892291D1D7B560D13DBD2634B6A23411183D618021B041B23A4500CCFB544239967C3DBA9847B934310AEE69F6B5C7A10812264604670CAC24B96A6321100D9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1017 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B29349A7D62572BE77B20377BD512CBB11994297573E2500EC1C56737A7AD11DD97AAD997AEB97EAD7BA359BEC8D51150B10843D0BFD239A7D0CD18976A33F76AEE5CE3E777CD17AF6DBB59097CD09EC4401A059181FC747D1DF4298EE99686766310231A590C4A4BE09669BDCA2B125BBD7634A40DA38983C27FD9279D8850D36D15680438915BCEF000F031F81435CE34C5ADDDC6DCF68003B0CB794E59BCADA92C40A3681BD6EA307F6EF9C519E751E7D4340A01D898E84F4D3A82EB8EB7DA385FFCA78331ACDA996C06B5FF7C0FD7E7D94840A6D9513080531A2B26D3D8AB86B9151B310EFF5E1FEF36211C2AFA1205F350CA7ADC47246D1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1018 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>83E200CAC09304CB53E8A7BAEC7AD94E65CDDCC3557C3C61516F397929A6F625579A89828F2F79F68AE5FCAEC93E211355F3BF59F53BC769A9ECFB7CD6A4A6489BE78B6F07C95DE0C3B0E04C8DC62FE26757F96EE5F4DFBDB57828CCAC9EF3F401297CC1C38C3FCA87531C6E4595BAF76C49F170031118F6B72DADB810482CCC6B80CD51ACF06DA1E8B74EF3A690BEBFBF83AFF27788C97522423FF7162366A60E6CFBD4CA478563DA6CC3E2ADB9CDEBF36EEBEDC073784B2C456FED923C1ACD44458C2B65158A2C8F18A7DFD663660F247003C29C097B7191153A281054494BFEAA056F0DB128B5AC347409C2833F444DC0216C1425870E9465</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1019 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DE63810827248B07EE5CD7F1F789CAE89054B9C710C74FE95EEED56FBB72738078E0563C5CD30F878BC364C376EB7A200AFFCD5B1A5EB03BDD010CD2FF9D02945E9F0F9856CD60B4FACFFD20A6D7116AE07ED2DEB5A7ED6861C1B615710A9A6E6C069804729922D5E57273D3F22231E9E876877DD59024CAC55261E504880214BEE37609EA465E4E027E7B6AD9BF637A8EB812FD43DA5DD8D2C8164959FD2C0EC4AA5BB40BF0DEF0CE84202C3A36DC54BFB8EA65C33192FEDE5193C56E33DDA789BC0B727E7876D7C42A83F80E9ACF2FA709E5C1748721CAFD867656A9B634B6F050E7906987E23029A6DE732EE943AA60F1986B30F55EF7A403</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1020 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A235BD42C1DEB9500A245000C6B89483B92983850FB53C8B0F433FF127F5F6A6E9441E0E04D61B8E01CA860345D13EF1892D11DC1CEB44EF2B313A77FFAE850C8FF31EFC3B8E875BE79475C95A1708E16C117B87CD3A5BF81876F5BA96ECFD87B945A62C256254B9DA5D6EE28B2AB09873C47F66E80646D27D697E5A08C80B19D0BADF84BEAA101833F8C02D5A2026A587118582B6F6AEB3388130F345AE4925B61EACF4491CDAD10D54F9DB85FA08F6A0F5D332D2BA040F3C2A499BF553EE3EF5CD87BA67313153B5DFAA67B5E1C48356B207F6A46E65EE89E1D7DE5A048EC2FA4476D0A89284623F55BEA41DB24E499B4BAEC86E8A5154E945</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1021 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8C0F2AFAEE4CD6AB6D6D47497C773AAE2C3A1D1B14077E5D64AE1D8A60FC16658FA6745571FAF76552C80C0C1734851603108EE3371511E36928C6773B8B3664556C81373091AB0916390E069FCAA015573B22D9BCF094E84ECC4ED7A7163E4F20643209F8580009E5F38F7180F4877BA5CF05576A22DCEEBC226C8AF06856F67554E789B00BE2E6CEBE62EB39B531605319323B8A4196D0D010A0780F69A07962BF1F336BEBB646C96FF773191C41A440494CA4D1AD030837EFB23304B90606C9D0139ECE0F0F023D0BC1F12CC7145F335E2ACA98520FE41121F71A9A36A905AC01BB709C8A1608D15A422049B64CE07159E8626D585A0CE547</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1022 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>88D596F8DD84B35FB5CAC680A6B3A925B2471C4BC76737F894A08E584B115378B8B261A629A7406698914E13A7AF475C85D4E937085950355DBADAB68B73FBFDCB46F412025B6A569DDEC090043D9C880F85BCE6111796A89BBF72046E4B01075DECAC85BF4B0C8AB2190E5C036A4E7CC5727BEBE01201CA05A763E81A0CCBC70890035370EDE01025A11118E93F80CFEC40E0360D275AC841373E8D42BB0EAC7BD314A41AFAEEDB93B701692D4A4BD07ED13E8EFE8910F76A3C71072D5FFC448C13A7AD79EFE3FB9407CF3ECFC03ED194F366A7105C8D7C3F78CE065981D0C5DCB83104F8D8B0DEF680218C375BBC68578FCAA778500E708F1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1023 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>85D7C573D516AA4D3D6B01DF43E3E2A0660C4DA511525AAD485C457FD0B56832CCA2A9ACE89B71DFD35F1D2875DC07E06FB6B14D998B6262E7AC4ED3936DF4317E9AD34F95828F1F3514EEFB170486FBB9A36C3255982B5366CD72251672919D201906B9B5B96F5383A25049E25EBA18DFFF9D1FDD1AA35800FA2E468A429CE218AF5DE97A24C47AAAFEC8630BE709076811F4D84501C2D726E98A017112B30B88E2B6C9229D2C94F2970FC5A9E67C887B2B7E1B19801C4FEBFF2C31EE67E52A24A928A7591EBC8B970A7BD36F51D5EF7C635E2D6FDA1B51ADDC6F35D7F46EA7E31D14FFD8E19260BAB619167A12B32528219045F39FA5526761</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1024 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BC454DF661ADD16405B9D431AF38EB599008ED7372B03C1AE5B15734B23D3053C0B164605126194E98579B1FABF2FCDC69FCAB2978765CE972BCA0DFA6C3504270BCF41DCEAD039A3417FD4FEE5B137BA2452D629B22C0CD7E54DB5938EB35065F5C09DC2CE6DAC545F96B0C696CD28C2C19BE62A29D53ECD488513A0D7E85731583115DB34B3351F7389F5C9E4BC55CFE02A877B1A8840FA21FE79C1F2B1743A79F14633659478A24E6B37CB7587D223C1C3A06855A0C664D45B9957BE71E28C3DF16F0AADD295E5754B70B410E1CE3298F177D6782C0F8A0577D752667116806B8E82B7E90A08C5B90ADFF8C003F1EBD6225E5E38EFE1BB3BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1025 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ED29C629B5824E7D06C377BC07E1F0AB36C5F9C3D70D3CA3AAA169B7F3A558F4F7A820D5D2A77C1C9FC18BDAA3727A3198C80D6EFF8DB55E1AB676F6910283FA74FC12812ADA9D5565E95D135D034E8A1F2D23CE2096C7E7EE96C9D33003C81AD72A5620BB61CC79C78AFBCCD20BDC92EF392509557309B9B5CBC14E0189FFA27FF0F6217BEE16A644591BA3ADEE127DC6A09E4B6A141D9AB2F92CA8B9982A3B33338A32F8185E309D1E55B4321F7157775FEEDE21F150B42A75624EAA761A68CFEC36CC3E5E619A08B93042F4FAB9A9B938ADEE55530B665544370DC8ED9295F65F7D941EF75F325ED4063EECBE7492ABACDE3FD7BE2191CD27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1026 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DD40DEF55EC574CA9A62F86E2B7AAEEEC583C53FDD9EF40573C10DEBDC896E90D6764946D481757A0A1175EF8C097DD286BD00A876AD66E394799304DC498522BBEA336E884260DEB5D027251FB12261255008FFA5A390D3753EF0B821B72B6A137466694F714816BE9AF97D398800CE2DEDBB01FBFF54E6D97CD7A4BD04E3317F4780F0654D1BE7316542D787CBB0E6133ED61189F7D02B66E584EBD5A034EC26BF9AB4735BF14F9827A118A2C62B23BAA7E85653947F3FF606B5917239C1CB28254D6560BB9E867BDDFB7A8D4C8CD2D9866A9258B9EE6FDED519996123207735FA4CBDD9907932E4A1F6816911E5CD550D08BDA8490C4BB2D7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1027 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BE0756D0A340B1F5F860B41AFD7FC7770740BCD88ADEFC4701613338D382860FDF538CC3503D912809B6B954D1F6A6AAFE0A47E22E8BA0DB7DDABEEC09D2D0F7BDDA5CFD644EEB661883846D05C9ED78689447762B2C51C88FEC26BF6D8FE51E7436F2AA75B5B80A7C1578871AD9D58DADBC0A53CBCA6F0E0EAAB2F67A494A8803001F36F1B9CF87D92F8EC2AE4AA14B901621193E368FD70E27D7980DC3AAB64BBB5BBB4F8D368528AFDEAB597FAE1D94A06B985F3482DF32603CE2FDC3B359D8E4EB9D9A7D8E65703F3B0FD47206A69427553F955652CB5796BC9EBF601D88A2B87032AB985038BB8E6BD9EEFC12A95FC7FFD32B7ED13AAA4B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1028 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FC65B2BB967E14D277DAE130F2DED05B94B7939438793ABBCD29AB4464D71101802574C4947F811473368BAEBC72F9B8BDEFED0AFA8BFCFAB1BFFE2441A816E5BC4B29A0FA5A0FC738554C082629B6B183C5A6EF100122759BDF1FA605055E91C05B30528FB99D306A65B0C2F62A860B212FDEAA5EEA3FE1877C3128655E0C5710C2945796A820052BE74D92FFF7E7D05CEB936D0762754699A87DC6C767D0010452ECB7A08427A7486A48BF306EAD95B8E035F24F57F04BC7009A166979C8C8DA92AEAD8456FEBAA2356E524A9C32F2738B9734B1B75175EB70C0419A928CDEF6A042F989A5E27EC9499219EA52C0A92E999AB546143AEF024F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1029 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B059C2A64F7BE85BC87EE96593688C8FC620E1D7419460A3657FEF317D50CD92E509AC48381F652236B0D7809B16E732369DA65D98D2CC6BAD4191844A7D6F80E0075D84B2138AFE7D7ABFCF00F4132E5AD1BCB7F196C6ABC3A60ECD3E474B64F9DD5EAA236F612C4FEAFA8BC47A2BD41CD51B248CFBFD5D1396891E69AED22DD5B82968E5E6379B84853645AD50EC7198A8C6E4BB007DA40AA158F56B8BCEBE6C7D27D26B6DBC4424701BC1F212383002337BA9064B7B1FCA695811FDE87DD39A0795A77954214804EB0E6E533BAAB423A62B6D1DAD6AA93A78D8124C61EC3E9A70E203D40484C604E55BA0F5CCB731BE2BDB6D57DE6484DA8D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1030 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AB00FA240C09209B9654A7882B13578AFF66889C0F5EE1EB50D9715B1C801A81EE6547EA1A92F340EA79DB1EB95927795EA17DBDA645501291CE35381720945916A32DBEC1BBEC3349F638771FC09268A3FB18D9B4055C38A42D1E097C150AF351A1E2CBF1EEDEAE01E09334FA4B393E6C0A737F05696F483A537FDBECA91F934A9A9BA2EBC5ED9E17D6332661E6FABA0AF6747BECCF9532FF2828E9BC8960C5F0E13E7BC875FB58F9D63596EF14D6517888BB2EB24CB109C99579E51A79C3E61A94F0BA56EB21AF3A4E27B7E95D12270B6A9039B51AE0C6E06FF658607D9C4149D450AFAB3952092F75E42E98213A7D5DD8D8450908E433B0A3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1031 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>93D2B1E71A5344882D5B605AEB881190538577490FF903E5ED5F0679D498A9D286456BEA9FDE36B81F9351A66797C109A06538F36290A4F2A4E9CADA0C554EAE789529C184D48E5B46DC4F5426E65400B0431259D1A6B94E46B66295469DB585F04BEF1734A5B6380DA877B370DD9E4F762C38B0E0FF0627996401814A636247D30EDB7D7E0DC9EC594D82DB21873F2EB39214A644518E66CA08632DF6239C769BA10D05D32E2F5BADFEE055E9BFAEDDC990EACAA4EE77F2E9A9B988849C30831FEE25DE3B3F04F51BEFD4F5C0A26815D953A1786B3D237B9782676CBEEBB17F4E1E3F1C66BC82D0713C6F0AA476429D4E3E1D300C7338CEB84D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1032 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FDF8FBB0C0A200C968E35D10B3CE3C3B5E540BB661BB7E449F3C00BD6A38018DFE385C2B1E8B41EB7A67D7D3B660B5939C853E9D967DA25AB1D7258100B37094773E5B5A0C068A761EFF4EC1617F88623A4FEC0BFB92DB571A6076E2E6EEF9C385B779833A5E226FA7BEF7A14F108D79065F06EADF5753C27F56B6C5FE0D0A30DFC39285727EB668A0B22C88E4F972F15D265AEB6CD8637A43AD63A517212A667664EF54B55941470A76A17DF856E99884E7345CBC17040C54F8E17FA41ABDAFB69A9E76D3BE200EDE4740CBE7C8DB0D17212A70EA05EE0C5F2E8A0AF096C3BB974E05AC39C4B252D3AE6DF0CBA9F5266EED2CB11927FC23EBFF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1033 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8D5887667FD8772DCB5424308E4297467F5CEFF10C7478F39FA24A61FEE055FA2051DB67FCA4386222DEC0E54DDCDEA79B773C70A421D7269A49CE538F2A7AE463594581FCB6820792CB023E522AE541B638D01CB3B152E0540DF958267B43C7D7A87D589D62E81ECF0789534AB8EEA976EFD148CA4F490DAB1B076326F4FD48F356789939AEE9E33BE9546E052DA4822492BF9E41A36EDA9252A29743F63E3503340F9E921DDFEADFB4F8A6CB5BBBCD389CA5F3A9519BC17EE82CDB31CC510F691B95BE0C107ED77C0B3C5C862080601BC87A5826244E22C23EA141943C103E0B754F3B1A89DCE748F03E8032E87B3B2805FC596F191AD4D2E9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1034 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AE01D767ECF53824F44BE70CECF72F7D45313061C06A7B987AC864855554C1110BAE35363C74A409F09006622DE79B38C6EC0068D8F554A371CEC1E1F6060869BA06816A1E3AA60C6B7C175E53A77906314C2DFDCF262F15C4EBD8A5E18BDDBDBBC955A1000278000E9B29A87A1F8B322168939CE3A579768C9B4C7C1C40DF961512BA3A63BE973F331A09007FB4DB859FE14E61972A10335B51591E3121AFBB5EB4B0A6F853691FEA32B8D7693EF375035CC17057089AD32B6CB592D8005CE4F12F0A0F375286B986E19F3EBD65480BE01ED21021ECCCB7FD471B43C9CD514D2B7B9D660DB9AFD385827C3B1C25CDF5DCB32F299356924483F1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1035 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CFB5B79D46943F9ED12F231802EBD2987A3C2205375DEAA27B4535966AA7E63FBB18EF60EC4084041900C127C301C5F7EA0A53209A187C93275332A1564CCA2CB6106F5680762B98E0384DA7F80CF1D403F40B0D7745C350CF07D38F9C11530C7CA1A1A2B812A8B44A7FC4C435319AC52F41DC17B611AA33B363CC8BFAD218F2045D579947D0F960759253CC73848D5F10FE01AFBD7A5F59173BE19364AB66A8AF349ADF74F9EE02866D5EAB1A78BD42D51AAB3B3F046E5F59ED566895F1D9292842FC36EF7799EE73AC55BEBA3A4DEFDFC1D951A97D6877160AE4826FE648514C46DC6257A9EED72515268B33CBD5025BE31949FFD34DF2B161</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1036 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CABB796DB7A7BB0A02F5593F0099F828E3A6F4CE9BE97DB4EB2AB2F6AECD39D29D1E09BFB4187B18AB41008A17F9EC24C95FA204A1C27A95F2744482E9FF1B7489428F12808F255CF421127AA1E9BFD1F567E55EB7229617E273AA081655595D837CAE8C7CD8378AD08B099DF5E0616033D5F600B9D4E8D550A86D2038CAFDE3E881E39BF8E39B0E4A65D480686D46E87C7DF5945412E203A439C3CDE4AA9ED5D86DDE557BA9357CEC23D730D93C2EC3C96086EA735DED2CF0C84C504737DE76FF1C1A0F02DB3465FAA9804EB7E339CD57B198C269945785C2B88F6F8F9AC228A7C0CFC3856C07C0FFC5CB8A60B7F2A0E046C99BE2D2EE5FF2E1</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1037 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8CAABDBCEE62067D6173696F3250DC618A1D774ABFC2507122F18AA098563BE5C92B4FE1C02CD888AA026E44CAAC9E8CE3230FF22D8B8EB3FDF39880F1949A368593993BD8DDE855BA2049BF1CAD73D06927AF7559937F8B01386ACFB9DE9D2099F6015C2CD9F3BD0B1F5FC7F2E38DE3B3F7242EA26D1845354D0E06D4EF04D405D61A5F06F349F2CE8DF75F43FE77D1CBFFDE5B2AAC41C9C383B46F7F24A9A869A8242212D396D4B7C627BB3A271C075C662C2DFFD1204AB694D8751D4A7599326731AAA0BDF8F699D0342841BE11B910310FDF987E70414BE7D27700C2687C17C83A659E936F7D04E9B6C1C4B78C92891CA1B25A7FB09C9825</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1038 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CB97DC69E0A1661AEDC411EC6AAD0FA6CD295C2723F962E1E2B8F7FEA9066E142662CD563DB4F73346A6E7BA5A09246A306F529C498F55CCCB9D5FA8756466B9122A5F660A1390DFDEEE55BE8B8A39F44F8AF338C722985BCA9FFF482E90027AE2A30724DEB8A4C4B235D2939EACE63399DB387A65BAF19472730640C28B1D62F544DE387FF6097AF9BDBC2F442E6E49F128A9B23C112CA9315F15D26DB0C3E906402AB3C0E21905F9F50EB7854E47B16800D678E15096EAC8D254658D0E158266182508308060A9A45182B9748AD1556EA8E2DF5C8D081B9BF97FD11E3D6164B44BA4A435374E8787062CDDE8A713340A08A903D3362B627489</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1039 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>FE7189C52C4BBF700F40803B2FB435BA749AF76D2713394C4839FFA36749791AE7FF018FE937AE23F0580E4FFB6777FA28FC383EE1973C631EDC07E03EA3A571B20C6792045AD2437AEE95BA5EB9254D610A1F14D6ADCD516A0C5D9DBC79E1CB2881AA604F2FBA8B50C77ED4C47CD0549EF0316F1CF546050C1EE7DE42DA15EF862CCD1A852D4C94A672F029AE76482A3A1FEF36CC6BB961AC141D4F204DADF7752195F1EF1745EDDAB9573C6DE0405D468D4620B2B851C753D0509B1D78ABD48F76BF378154789BDEF6828583EC88FD539D49A59535C1A844863C8B260EF9C20AFE952240151789FFD20855CAB0F7DB68313B3FCACAF5A1C3B9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1040 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>87E8516B39CEB0EF9509F96D92FCA4F531838A54B421CE75CA9F94F47FD772E6A08576A1115140F12FAF3D3B3E67F7F7EDEF4ABC93877CA96AFAB27C2D1CC9CD1C60901CF6ADA1FD100E962680B8C52CFD87EF2B23A737AF46F03691EDA02ECE9C2EB6E500CC04E5EA7D582F42E49E49BB12F7A3FD028E9A47BF28C7DC92BD06B10992331F8DAE397F00CDE80FC440C5F4AB03470190DF0676B510B48C8D4A5AF535126EB96BB3699C5DB30AFABD9FC84C840069F4C059E59A3FFBCC5084D24FF5ABC452D334606BF79A3244AA3C9DCF6192DEDCC08CDC8E9368A1B0D08B115B1A1F28F5027B8B7ED95CA8ECF82D7ABAD8F5FEE288DF08950CD5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1041 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BCB3246116D024E09CA65124675D896AFD23C6C8710F832DDCE77B9F1561E5E609006FB54DE7A2298F92B8048261EBAFE302F40FAB56CD8FD70AB695098B6AA49E98D1EAF896F6440EDC69A999695014F00A724EDA018028292DCF954BAAC4EA0AEB53844A3B63BEA8A57A2BFB3CCF8459169C23CC9885BB93B2F3E4094F849E7D2CAB449FD375A0D8A853C71305B60C19B7ABB25FC653F29CD75A2CFD886C473C791ADBC51DC7989D010F65D24B37F875DEB25829DE4A9A76D5DB6EF6A1345CBA150AA32180E1A5AC973DEAF43D1C8251D89E61EBD17EAD46CA846170684AB046A41FF5B7772D9BC3CCE1921E258D59042213FAA6E0A8FC5211</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1042 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F48611CEDDFFA35F6DEE05DFD66BD08624E24AB5CF31E689DD14D7B1576C8DC9E921A0220F3218ADCF3768ED08B20CEE9BE04F5988910CBB32EDF3FEA32C59C9763CC8B6F5184202656C678EA0545505139CCDE943893CD2413A146A5978F58B2FA240D778591940C6653D6F85DFF2B780088453403300A879DA8057398DEB1AAABC860EA2A8E62AA563E1FC1752F85C9460A370BFCF3F840F96B6677412AB49501FF64F1A1C537E8C6D5FBD480F04272EAC66246586F0AC52EDF955C98996E0A80427C3436490E8B3513451EB04DCB2E902F85A2C9B6EA1EDE15F58325639FC1F0AEDF9D4BB50134D028F15B990C91C206F965D4C37A0002651</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1043 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D2F319859A818F0B16039E1194FAD8A7632E891730B56BED9A29F438EA9186ECCD4D976B6C4EA7DEB4D6AB5B77A92F161A3D9DFA7EAE20A5083801215EB2C4AFB08A33E607BC28C59C59868C5B3EC707694E9AE3202CA72D43C62C369D74F83E7C0C5E4DFF9773938B7B6AD01D5CA7F6A204D27D04C32DADF4E9370178FF60FA6982D65B269998F1E7F1E556BDC4DB41CCDA9B114C80C64A2817B9A718100ACF760D036C2A7F69291D61BC03142C7CF5477A80445379FAA8A6208F16A37203D25F03B7FD26EE9A283123F4403B26AFC33F1740A81FF77875DD154370452B75EA0D2A3CFCDC660324F3A9E5E7C7EC0720FFD5925E577DB0482DA5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1044 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>905E19827BA5AF5456814709000BC2B38F124E25C13CBB1B8C906921290FC4041D78693566364E10B32AD1EE82C6EED02D541952AEA877F0235351F534F48CE1DD1F5AE73BCA9CEA826046263D253BB6EA7F25818E4219BBEAF2FA94D2E394CADAE50C6FBBCCF4372DD084F33565D230BE5ACD42BA56238D99299060D4F243EF25CED88E2BFD15879A99C4918457F099DAC172F9D92361F47D6A95CBB42594B288AF5E9EC7D2708FB096DDC7B3ABC2971D532367235BA20FC412805F7E71D53E75C06654481EE09C586645EB21E9F6640DA4FEDC778587182F3130D9DB2D0AA20A18F925863A9407EC963C3183AFC30B8AF1CDA0FE2201DB3779</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1045 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>969BE535295BC08FCBA1B8B5EE59DD7E2493EA624B2C9DA7B1CDC07FB1AD6DD693711A3222106DA3E878280480021A750765DA074A2BEBE3FEC3C662A1C1378E3687095D76AC50BB78000ED9D4D5CFD073B8F60212BA223B61616D800F14B792F523CF9E60494A7289CA6502F3D3F112511B8D199552DE77C6D226BB75E70912D22888AE9E495592BF3E69202B4306A2344F3717E33BA30B90C28E3A9A49193665EFD9CA0C03C654935A7D381A59987F853693AAF3F02403F8913D058ED7190683916D1C05BF7FCA1138492A2A83654E04C321CF602CAA0F946AD8064CE9FB0AC3CA9BB9831901DF79E4295F94F35C013CA264952525D5C00B25</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1046 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B3BF5EE7CCE20B2D6D1ADA8C05BD8C43F04DC2F2F528F29021481878A123B124D99172C303BD499DD04214A524D9797CD69AF2A04E63BCC934D89286CCAB6EE9D6F6C81AE76A42D52D0C906D29126B4DDFAA067E12CD4086EC4FC616E9E5C28A2083A72F9D42CFDA3010FFC2DA39673179A5C074CCB4FF6D36E08CFD4CFF130CD4CEA07BA9234DAE3F2BE7EE32ADDA7ED720EBF2F2909F305783CBCF4B89642CCB10185D85205F9CA53F8AE80E157AB9801EB121529EB5803580C4E5750DAAE676750E6C4E61AFE0BDAD083B01B12412100AE7936C9AABEBB04ECB273F56ED94A46192711C20A83CDB6DEEC37BC3F5415966C0D94B0277617AE5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1047 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F32EFE6C8972AF8654B7D20DC6034891A76A3B1B01510EEF75C85FAB9937DA8A4FA380079ABD7E59C191897724C07E825B3222325F137DAABF2B49E7E9417797DD8E06EA50AB38EADC787CFCEF942F68BB197E60AA87C3A4C65EAEFFB9CF2BD4DBBF16517A7622E9DAD2C8C5135C438C3C4E54AF4B64E36BE900E27DB5C2C2EC06009EFCBE821FE8B90C8FE7D15B83F3F4BB050CA9B7F0E57558ADE92BF538ABD7CBBE49B983CE3E191711973826341C67EE3AF93629AD0C9F2BFC86DC4F321DBBB9673FE378D2AC1009EB18F52C82EB508A780E8E0A8A3F7B5A119C89CFFF5F6ADC3C83F6409EB42EB448FF21BC75E38B3B6302367717295A73</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1048 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A28E70871A40CD7CFECFADC50CBB837D284A067C35C8B5B56C6491042BD3BD43C2F871564F340EEAAF1E5F4EAD8B11AF10551ABD606B2F86DB03225F6F9075DC6DE876558BB35C17BDBF671EEF0521C435483AD4708A1C06521741CFDC5384A4D8D63689B12F65B5B1870C39E640F9621F0733D3053C917A00A7A366A385F3F7D5AB74B0B06BD4C5A481969FFF30EA67D62574B85B984D65B11D2B30A09E60B86B6875907CC345FED1C1AD348F884310800CEA62ABBFB4CD912692901435A10E965738B3887CA8C89FD185E52191238F344B42B9A97D19D343E7CC74ECAF0797060B4E83872A702E77D0BD651D2C78523F12CC55D2A58DE67915</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1049 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A315145A3697F7B1A44E980E872965C9D76F1C884112E003FC17B3C03E1E6760913CA9C36874E220B240C015D9C468E1DB5C9EE1BA97F202DA7EF67E09949D573E42192EDD54E6CAAA8852927F39D10721A2B1E92BEBB6976F9903CDC46FB98C3694C3EBF979078AA619519F26CFAA16A8C61AE16B282CC42B822C43B342EB61969DA2D939C78A27B4185C70A5EEE9D05F666669D10377E86CB34129653A28FB3EA9547C984493B5646F07057B3D0C936C46EA082342D2C7DEA485364BCD1D346E933085E249F683C689C79C225294BE340A8BC6B50A8BF9296418C3F5C06B9DCB17A8181955CC4003AD7EE89FCE5FAE10BE68C1AC85E3939169</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1050 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DC8246A345FC410D1CF4DB5C2098E77EBF53D98D5A1B25D6B08379196B2C36B79DEB876EA34B0D6FB4EE65351408068B3058F4F74E32AF8937C74FD6C0D6ED729BA8B7C611C6823AB8CA4B386D5E9BFBC81756C95CD16CDA2123A99FBC229A9290EEDFFFF71581815EA2B502FA03FF2D90F5446C1F30E3A188C5FEFE1864632B9F0F0F2518DA1D83CC86F90CFE20A2F766CAA9071941DBCA3336D173E072A6B6F761F0AA3A3F75F12A12D8844443A6508AFB6D7BE3355DDE41B9277C72A864DD48C4747293365224820D8C565E96117068B269E0315C5A0270AB9092766B81079A22CBA82A0073F44B1004CDA9772F3F2EABF3E54C3BAF47D4BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1051 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A2657693DE5CA5950E70EEE230201379E5DEFC91B0705A2218D9A18649B566F716331217E584F1F5293A94A85B3562D8488CB5D12E08C1A5A2F0C0E07DC970454CD6A6F9CFC01CF3974A23D3DD15C9E0AFC3D4B8299709F9D50DD6A80DEF47AEA3960CEB66B757EB650CDBCB4CEADE17A527E08659A06D2864797426A6FFAEB6926AD232AF9FE49B15EE3526A76C48DF4C96BC51D3BD8BD685D28DC06FD070A9725941A1D603A87A43969285EE971FE3BADD48D4EC687BE25F58F8A67416717D6AC1457125BAB96842C5586725A7948AB3DB7556C90823159D0AC28A18BAAA60FC2448B7DC623260CB79D9186A36D82BEBBFD275C67E29812C5F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1052 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8A4A958A1995543709484F070217D02C26A1873730D63700E9E7836CECACFE9B4B1FECAB8D9FE85EFDE6F7E0B6A41C341134F22120388050C0BE7163D0D99520004DCDC7F5283C40BCE5B2BD0CA99B9440C59405C6453B0B2D383358D20C066820B7AF4CA1F5DD4319A782D02789B68E68A2DE6DF7482B4EA817A12029DB18F59BBF7F3A8B0058A8ACD8F8F47D59AC5FA8BA4D7D52E437B1D17C2F267F349EA53C3FE148547F3D9FB07EB2CD8B56B9532E85C3B0DDFF1A000DE7A9748A88BC3DF4FB97F0B2E87FCD284C39DF8C9BEA999F87BA853F812AD009645CDD73C8BFF57A149CDFE8A2B1F169D62C5EB078B07D7AB1A14F2AB7836F2B27</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1053 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D1025BFEC9768EB464748C3784CF8B1287A96B064E1A1B082F951F84ED7DD57F10094DA2B61D533D8D4D3FBB06D2607A0C8A9491074E22F4EDD84D84D0C9141996F9E66FF139AE3539829A6987CD3198AC6B02FC319283182AFC25488B55CD3B8CB2B6EBE8FC2D8AB5BA07EE314FE428192237E7A0EC6C4F1E1B8CD593BE672B8DC425A2F857106C833FCDD9B300442BDE82C852F9C5EEAA0D54318B165282097E7881E4B95FE64F6CEA03B0CE3C387B00448A3E99E59E0C7CAF0DD693674E98CCB699E46100C8EA7F0C428E843A1666675F805E899F3A31883AB3187BC26B8475387DBEBBDD97872216B710E418DC3BBE3338461E5E0ABBC39F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1054 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C6B00E75CB97FB10B09A06096576678C9685522F48EFE82D08FF1CB09FDB6EA6F3CF63783A711A474234D99EE6D77AA84C0BE667B0D09762160DB707A42C74A88F0A7267FCAA869FC75D697EE991B2028B33F7253104BF21E14FA6892D6B030BA0413F4758F790B3736DBC2B24BBCFCE77EA157BE0EB653C0208EA5165241D9C7A1E3C60468541011905C8012DC2F133C9A355E927F384FFAB7DCE70BE3ED20C9129F5A8FCF08F6F2659E24C11C5EC69C3C89F8913A5D16AF3FB0366764E41B2090A08040D65B786C5B52BBA3994A671D5F6E04702A41FBD05BD24977EB4690D9B8DD3C547654A345435EAC6807C5A693C7567867B66069DAE13</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1055 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F9583F439E942ECD385C71CDE88EC70671A0C2D9526F9CFD9B46CFD4870FA7ACEDC8F92D35C4F8483F52B63519EC04FD7A18072D466012AA5EE2FAB05F480DE0052D6E885F870DBEAD9770661A38D359FBF3E6EF90E938FE1B02D6B5F145F797606023CE26F7E683E5D3EFE3C12715FA75771559297D39E91BCE687BCF72D7A7B0B8AF25904D75E72ACE4499873B046B48884E8DEBEAC906F67BCBB860B1F61DB6FBCAE3A2A53CE5B9DD5EB7DB82A3C5C9E1204DAF5CE8EFB27A936E65008B43B24D04392F7BD8B27781B6A410A85AF978ECFAF906D9AE3465BD4D00F65467BD8EA8D8EE76BD2CEBBA56671C3F049ECDA32ABBC3564E89604551</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1056 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>817FA41AFE3895EE26DE83322911A14591F18B996F4C58FE916AE409E702FFB23C1A8B6B21EA030028C0FAC84EAA0F837CC767CB94A68BAAC17D6A2B42784BB0A5FA3CA74B1E6A212F8DCE29B560F0664CF4D7C2463DFFDE42AE0B450A6473692B08CDECE8F9C98DFFE7E3950C186EFBF417C022E83DECD69C0003DFD42077BF59A498CE65A0DE0402859888AD481D1CB6EBEB282BCCFC51AA98C0207E68168E62B7FCD9BA8A3588FEB4FBA55E22C3FA72828F90344B9EF76B876F9791C669E7DDA445D86E9282B2D951B04E5E8D12D8DD9DA6FFB7DBDB5B45E708B6BA88E994C872169E68E856DA7B11913D58A842D46154D9890D1FC7F3EFD9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1057 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C8729BA1167D7A945A27EEBF641BFDA71FF5D51D7A47E53FDBAFEFDF0372955BCFFA9D8A9F2A341D1EB59A7A747A68E1103E8B7559D474FDDD67EEE07FBD6B2BEA8DB2FD4A5ABF995F78721FAB31702EE0CB2B9E89C1667490C7B95FF97ECED763291A07C7E1469E6892BB8B26B69141CF14C4AF61EB46376EB0ED55AEE922CA0BA1D0EF01233BEF2DAD8A765C2A583542F4991AF15BA54224B30F4DD07530B6B7712D250E82AC4A4C1F05932128B27342236D43A6B9C7C39E6BAD95D6D676E26D8CEC3D5B80767E92E9F1F2F22426396F4C6A059F3F1BEBE9E74B952DA0CF074F2BA65AC88AEA79B124A2FDFB1F933DEFB89941F97835A01257</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1058 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8D2FF431CB268C3AD392EEBBD7888FC7B99BA19DDB16914303CEDF0775CED1D85594679EC2FC94D49ED12E293AB7A9983B419DC53E7A7FA80FD1AA912279AD3343F9EE9BFBA84F72A5CFD9FB0EEB12649563D273B7C46E2A482049435E6C0D4051EEA8AD9C4596F2DE3F46893E469FEAD6EE0ECC7F9E7ACFFCE3FB706B01C685206C2C967084543B153C37DD9EB9735658C0F80FB6052185E4D1BC47E18DFC63A76A739BCAB47F35041DFF4B3A6130B275FA0D08CC9B39FBFAE2E31E023979355F8FB5D473FCE187B3BF845912930E3146C1931D91E0139AFE0032A602AC0B39FB8790798EAA3EFF5C9CDC7905F72B5EE20A7B627BC7D314450B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1059 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CF4EFDEAAA88673C819EF613E8C9AEDD8F1D892BACC1D24A5142E6DB5C5FAEAE3B6A797B4F72A13FAC1EB54A702506CE2EC812545B02A7673CA404327F93BFD06E32150D69175FBE41F9ECE86862A3CB0AC48ACDC225E669DA787554FE8A63FD74BD20F366094FE7A100FDD167FDDF97F7DDF646C5FCAF1F377B5C7F0FE37EA5E1D736B86CE009F639B46F792B2AEE06C73B2FBF8BF3A3843A54B3ACB12D146809926F2666E07A7A63574CA272C62A6D54C9606404B42A487AAE4C38EE910FEC8CAD0CED8A8255C26740B998577274D48CB54F2868C3B98B06988D0A94A74B92B63823AAF5730A0236086AEB76EF718B654B9C5B45626DBFAC6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1060 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8B92DBD08996081434E84E72FE853955EFDB19009DE5619158EB0F1698AD04FAA7170C5E63E06E48554792B58907F0AED9AE6E849C0660D9276AA86FF029E450C5B46A935C9C8DD1E2946EF0239998674C69E3B2ECA9E931D9CA0AE1C93BC5E724F17A0BC7F65FB6CE0A95D1A366321D51CA6988124BF6DF34224FA99B3CB82489D3F783A2AF5723A2D079BDA5774007EB2A0D0C9B514671E339618DAE0ABB65CABC6944F477AD1B90756649AC6DC1D111294C9D331715220A93462D69F97206E593212E36C091277B87431417BADBA7AFF1E1E7BA6D45467A4334EC9E6AE003D35E67DB00EA6BB2D604442C99158DF5771A4F79BA4F9A763A1F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1061 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D0BADE3D1D8AAC60C4A7FAC5139212A6CB559EFA174CECCD8A57C3D5C21EFE9E5BFC75AB3F3959D9C39F621D317B84193AD5652FF08C2B9E19083A9CEE6318B9FBFC23F29016094A7FE765C21E42FAB4E50BA47A943BCD85EDA901C21A08078CAFD870D037F45A1EFDA725999CB9231EDDA45BADFA1EC21B82FD80D056FCCFF54532AEA2E6C16232735BD64B71CFCD6605654B62AE9AD110AA0FE48D7BDFA1B4B82F2ACD2AB7C644DA570AE757C39CE363B471EF3EBFA12E58C07B3A294728B379CD7E1CD557D263ECE89D91D4A8A17A21EB47C535A0650C89C23E92AA83F94A24D74C6B9B0570272F6F309ABBFEAF6F429F3EB8E4166E2827C9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1062 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9D68F38928DB1C8D30B9A6CA0EEB8C19FEA4348B46B8C9BBF2652BEC81C1B0076B0E4C14F1997F8229024CFCCAD0ABE152C1918EA1AF0732700987C43C5B6D17DB338F6F4C48E7A0427731E9D7FAAA933E34189AF1F291F901A18F7A4CF043EAEE496A71FE4F2409FF9F1A9C445F76EFDDF1E1612F02E7736515EC8948F4BF8460C0EC9029CF363E18C0194642BDC1353A19A3C4E5BEC40AA06BA96BDDBD4332D906CD0BDFA1CF807F42FAE530EE9D57DFA463ABCDAB71895523F98D7D19B15BE45D054991F346AA10CA6990B321D28F3A206178603B471E78E27EB74E13D072F6FF8825C72BBBFCD417E992FD2FFAC871E75050269E4F07774D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1063 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F5B5F1F34ED3C540CFDDE47F58F439055BD4DC5F754BE901D3D54A2DC8B353A3280A7093759BB81EA2D507B22C322A9BDE549F0F12FDCFCB37EE113C64023451CF970F7DCEBB1DCD4F71EA8C8A0723E0F9ABD2EBB46CCB622637B8355DF522E40DCF68DBFC9FB4BBA40B5FBC53CE4ED124DDCF6701C78BDE917130D67F0CF6F4AB78A4D989CB87F601984CBF81A45E8AA8FE1A728EE1B06C5ADA29E7AF4F88AE82E1FFB68F4D25C865C4119757CD8FFD1C0CB9677E79CA9744B89D2B443B5C8379ADFA73DF59C6EAD61E7926F7D397EC0353EC8CF6D6A8A0776F771DDD64661F7F1AFC41E5C8FC6953D0DA8D98D6BD75F69B87893EFE2B913057</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1064 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B6C97047ADD54A063487020D14A5E6EA53BA7218A7B1FB55B9991D9A4D6ADAF35210792EE1C44BA83A910CE8B14775A1DCC8BE3EB6C4A5049DB923683404C7B6C43363997D9246F2FFB874857CAF81A6D5EDEF79EF792574D349C2A6B4B92A2CB39E41294B036CDD95C7641211EB72EB01EC7ECF9D5555801A2D852F54D1C8D3BEB321F81A584BE8D883727CA7113F286276947BCCAC5DDA9B38B659854BB41B2891212CAD82B063C482DA0C1DAED3DCCEE6375002261F543DADE19D67C0EEF2245949FD49C9EEC21E4BA9CF50D9D34EF8B5BDF10E34A129DB47DADD9FD1AC6F9AB0875562992DD80B24750A2AD5829E7D4D678D04811F6B9F0B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1065 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AAA6BD0A736411646C8B9843647DCBB1CE02E5ACE4EB3BC63D75C4EFBF15055956DAC98F4E6A7FE6C9CE14D021B5BCBDD55C2EC2CFD3780FA12BA17458C35C7B7D6C29FEF9F9210EE5FE35A650C019E75B7FBC2BC8E6E24FDB99B11DBB2CE3EE7F95DFDB7D287C8CBD961FCFA80D4624D43ED4F0879E83881E01F8E7495AAABA3268C378BE5CBCFA841F667737C88998F89346BC0382FAE35305E1FC0846F8258746EB0ECB496928A5C7BA1E2828721FE5675F21547A83809A76012193A9F2C665A66BE346F0D361D44868126FA0B3D33A8D8BF1567522C310D935D4703FAD0979C95ED21C40CA341486DF6D6D2FCA2E9CA8629B8CF5EA05C58D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1066 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BC0D81DEDA44B9E166BE294A3F7EE7B89822BF2DD96C8EA204CBBC16D921E1CC4E4CBF8DD650C86DF9A6D911A9D0743B7C411C7BABFAFA2493647671407262687C4397AD7B3B0A75C68FED48DB9A490A9CAB7222784EAFEA91B803CC944B2D4635CCDE9EC33685732935796ED6048657759C48AA129412032BB7276606DE6459FA778ACD943B64A2D0C49CAE98281AC123D520763D148CF5629AF3EC3F1479E7B8FA95437618C4E59AD331BDA468621A1E21C7AE8A2D9FE7702B00291F2A7206F131DCE535631CB039C86973B1E4775049550AC1FD278B796A4BDED0B80D1CECE5C2C086E696A850A5D142C6C2111DBD404D0D30BB2AF6120E89</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1067 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>85FC51D9A7EC48267FC14B8A3E4C5D3629EE4C2AC18009750A55F6A0C0928971B6D582977738B10096F8D8F7607802FE62C7631CE6085B08C25440F3A9E5AE0569831701666D1E4661D41156D32945A16BA34FBAC64C0003C8277A9120AF04D9319BA018F8F7C2A380C65447D3718570D8717CF8681841666B88E8B19099D48C4038D2AB5D56F234ECBA7A045A97B0F6073BBD76A0E92C60F86D3EF79646A02265D9AD6A587B8FEB1F3CEC8F03F04FC0FDBDDD50D5F353AE82665973B5710DDC3DFF35833A4EEDE548D8E1F52049D650D9FED37407A45E310A0A0AC78CCEF1078074E5A595539B9ECE6D7CC09BB2BC1F341D883148350D96B0F5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1068 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>ACB6E34EC5D5051E571239E667A21EF617A0051D9A92AD45472DAB7DF4A68F29A5954B42C9C6CD79E3D84227910E4B046440E8764DE82D8D8F4920AE0B67CDC5D1E80616196B2F1F7F2B29A037473A1687009734309DBDEBBE9D064B183DB18266FC2CB60B82469CDDC15C845E30977465DFB6EA8CD6BAEF6A9AB1058DC034DCF4A52FD6633E5BAC74683DA9564D23C4B9B4383C67B9C682C83B42379D1775FCB20A5028C4804B0051EFA68C14E0FA387A8303005E54627429D42D56F1B232517FFDA6854AE83EE06B26BF5F9A27B30E357FE388DDED803BF76C61DB132F56E9C3A80DF810D73D8C162F38238D5E5354698780C45A6F618C7F49</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1069 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>DA1CEB138FC391228DEB094ECF6F552C1A422020289DCFC58717494C6949A4D729241EB59B08EAFD4A63B5A2A52EB074A25E1F02D8A5FF1955A699B7233D863BFC35DCAD4FB0DCC852C76D6D308620B90B4CF6511A8381FB28B3C308DE17A27F1E681440ACF3DEC4AFBB5018C46CEDDCF7B08EEAE210852A589AF6B7CA13BA31214392BEAF4A066577728FF6A7C9DCF4E40EE44BAA7B5944182379F057B64993C7B0463DA5AEA3CB2372DE44FA0EDF51B2F1EA67F89511C6AE0E3B0FE8C52B37466EA9AD0BCC2AF5EBF8C57C47ED13D5949348EA61246DDF1E7F70F16CE9C63B93C556D8F72F8683CE4E3BD23E53E87F063AA879DAE46AFBCE6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1070 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E677D5CF8AAFD9DD1494DF7604E67393868EC51C94835E3C38E67C1B847A707B862FAA370B9FB2128BEEADF9D084D1BE5B80DCE44F695FB8F766EA0D55B19A195EFFAE51A1F32564C0E56E954A85D525782DE5A7CE697648419A78080EE4B5F9713845FF1879BD1826CEF7B33033758EFFA1F12069D902D12DD3008D60B088FB31707EA0E50A22F528ABAA0D6D4D20A9328D055EE02B755FB5664422646A5344BEFB6A4F016C8B01734A036558CE3A78565716059D3D166D01DBF7B299BD922BCC39A9C0169077AB6857F8ACEDB9101AA1240B7B46C56B0B5AA069EFBCE01F5E1FDE5531F4EC61C16B16F5070DC53791B86F11637D3BAD0DEFE5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1071 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C5F420770C5723242C327F3D2EFC3DB1E0AA5A1BA3275476E83838E113FF213ABE2659B6B1FFE533BDA87462E1D26442CD1375C9D693EE5F9CE756E540A126B87028FA4C1F400EB40B1905418DEA680D6974A5CAF5CA3EB4D524F2D7C6D6A94A241036065A8069560A254E3DAD67EF76ECBE7F0EE3EB7180A013918AA6F622F027C0F45ECEC0B475582B14D6183C60FB82C18037D518B41E9C9679909125A0E8FB576F2065336C61982CB3DF154C08F553B2B3CF5E791FBE90DA40FB9C3BB1542A87E69E03E199E355045536149BECF08C3080286AB54DBE87B090772BAE37A99C9EAD421DF0DC48D083102805CEA3B376D62D5E804E16C9FE4D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1072 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>85AF7A6C7A07FA79EFB6D2D9A752A9352B542E87AC311B8979B6F8065D9E6FEC7499087ABA91151AB23D530317A1647B4E10961B3A7901CF0AB30D0C4E964ED8DE49A95C8392DEB56C8F263E9EAA15BB553EE51550D1A31CB9C79666E1AEB0D1BA86D2955DC66FEF419A66EE150A3683C1A2CE7F504C504859E23DE95C16CC16AFB3907A62932E8AE4DDB7A6B72B163F7EAD88117D95EDC583F182BEF2D6BE2B1CB62AE357A3329662B24D1E8BC1EA68BBA1A580CC8647ED3B8C49FB41BB2B2A2BAFB49A9F5255379E638E01F5A59AA268D76CE2B68BC34CF6B6B3795A681458A136FE951B837CABBFE1581AED37EDB39F9E91825697CF8267BD</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1073 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F62E4C3634B33F4BE7B9FBC1CF2536A27BAC432D51D4052BB2F9EE2ABC1ADA5863D9CE514D9D1993CD7DC135FC037C1060B7646497C24D11A6538E489054C16EDE74C10F01D33851F5F376F21098BF9CB0CCEA133C62B76F6EF388F15005D754A8D0EF63009B5E38A3922A3F729C3816A768CCF231EBA4972141160A64BCCD189A82BA263C1ED195E2270455E099895E0156CAEC3D730DA4B548E598EB85EEC52F337F370D149218D5ADB7E66363C2699B6543B1FB820CFBC4C74F7E8D0CAD7FA13E77F0A25001F96FF10A8453E7E65B25F550860AF250D2D1E6BBEBC5C3527A93DBC9E0F1F35139C65F1C63525A67FC362B34561E8943DB7209</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1074 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A5B8F85B11E129FFA70B4271FCF946DE22D719D87049F1D0284D28015450DF62CB2A046089B979135147D393B2E6093B5C91D52C145879452155630A503E676C0E6C8E0F645776E26D4F5DBF523B5FE72F8B06ABA3526AF0B2129EC239F910FDBF8D55C8694D72B6A27568C7DCC6EA7A5807DC2D4AAEA8C2AE0894953A496A555BF360EDEB6B69D38245525C58CCD0C888F775A5D278C8099531D600E84C336C8F14516201B755F6A23315FADD7824D1D2F386844F2743108C47F08883DC7AE36C04779D6F6DB2A8E41A557C3CFC6A7637750EDD2AD66164DD935065E7460C18F9902797E6F496EC48179FF5C2DFF5E71A5A881D1B3615498199</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1075 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E332201F5087642689768E62764ACAB5F345125A4D79E7FCEADA2DBF57C792A035965486F0949EABFEEBD2556B3D05B7122D084823EC2B606535B05E611942DF070285E085F3FEAEB76C9DB99AC63D1BEA1A90AAA654F882F945BDAFED78A7D792870F1AAE07FA0954612951EC17EA172DDA4D91EEBB7CBE43F525138A2C830A22A913FE1B527895567B08BE5C410946DD99847B460C9EE42A555A544C686AEE5735D4EECF68CF83FA0F38E181CD7D464937C992700E0F793339E0787BDBE76D867D6BE3CB52FF85B4D8A9A450C06396BE89E727FB90C075B34D8449E2735D9022D95677D51E64AC63D986DC1C229C0C86929EE17A87E9BE9831</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1076 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D9FCD5E3687199F3AC2781F04FDD9E2E9AF78FB852A44C89E933CCA7C30C6F20DFEF8C8AF9DEB98E049D5D6D88EF2A796556EBF29FDACFB158BFF0155705507717392763FFA7B178FD2BA95CB37A9FDF21A260A3364BF8390BF03EC523B0B6C70FADB89B490A7B0E1CE199AD58A03BB258B7AEB846D1183BA45B24E5290C8190734933E06F68C54F26E823C6D66A422C9C14BF75D4D526B65B8BC1DFA67EA549A80D0931FE92C3788AF98F7397BC7BF98513ED6F5A6997041108A196E3B67D15940A2D4E8C0B0ED8DAFF81E336C4832173325FCBEDE76EA2A1F30FF4096B7CCE100E8420FC98C722995189F6732A63204137221665BC180042FF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1077 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>B7122B201BF088DFA83CF87E8023144E9AFC5B6BEDB78CC009952AEDE028A78456C4FC10C56F39E728F1608E77E6E9CCADED0F2184F5DADA2F8E22DA703F4DDB54FB1332CD8F4B8AB608B1AA516F8A3D4916BC8CA1B0FDAA2FC5D59D4B90E93237CB97FC2A168FB91A8DE284A84D9C0D3A473CACC26C2D0A61578F2656F35D9D31C1A10468B2392911FA5FED5ED2997E2614D87190063B8C4F50C15304A479438EECED1194D14F7D9372D96BFFA1F8FAF70F71F99E4330068BA81D580A1A763E3937A0C45ECCD2E518C2E909892F6D6861FEE3C8C70B10823D26212075DE398DA1A0A0C71EE82026D31F9723FA063F8D0B4F278E814867850C1D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1078 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8E908589CEA9E38D916F371F061C40BB16811DD06955BB4E49D4D38DDA60AAC4892D76638CFF3F41FB228AC1AFB59E0682C770ED1D373DE5A7EBDA9FDBB5425A25B1983FEA0EB7D57F1BE449C66713F3AC5DC9EC294E55B5D58358953D6133F1E347F839D53C0A4A5AA7CBB1B30A9A0BF4D88E1A7A3E4AE04AAB2DE84262B8A6361C4316DE368F06D580D09A8641E02EA04D455B55AD866CDB98C4F176A9FDB02CD635D4CF5B74259C2B44180227608F72F2004D6E394A4C0FDA40509B7BC6CAB4E9A48B00E988107D19F2E45FC1CF132AF13D08798C7A31E01EEA2807883C7A04B931602DCA17AD4037034050710805A3D26F65CEAFA5ED155D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1079 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8B3F472D09CE91A135E2F8A2F3269916EFC7DFE1870C45F375810F513A1166FF0740324DF0FB85AAA4C6410D3A636CD4935D1778B2AF861EA1CA3E37D24AB6BD9BD50BB2E02DECFCDCDD61F832E20217234F549C5CA4CA99B16C39F8D7A2BDC0EFE432C0E5EBD383AE4D442B27227BEF7F7C9D6156183EDC87E7410BB2F81D98E40625FC2AC323C1200ECCF788B2910A0BF17AD48FFD3327930444EA2F6BAF3ECE5438CB0C916BB123388BE89538256E4CA6F02CE0CFD0A018FE4D18E9EA3C16948B5B8B8B8A73E52E94FD1177FA65A79B23ADE00F6242999FC9323048AE71176C3E343C88019EBA89C3EAEBAFE41904E065174ECB19298C8C7B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1080 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9C52433D5D1B384CBB0CC646EC30D9D626F90F5CBE19ED3AB4EB5E95F244685F3044353ABF1BBA370229E3A559A4F31E90C65BF23ED6849EBBB9818B4B4FF8E13DEF346433F9AFE3DE204633BF6E9DFBEACC3FF574BCC51CAB6B1B6CC161C2223BDCB61C960405E1A3B32F5926A10CA606D9CC21ED64BD20BBE300C4557EE0A729998BA66C048D783251DA1EF05A5880CE8354775328F67D3D22C3BD8911433C202BF4C73D8BAD16D787B0EA7988DD74550B7B693E7581627BC57C37955899C838E882F39E4C263172D8ADA9251BD31BA42503703205AF003460B0A1A4795EAA32BD7123B3CDFA41CD88C1F2A5584339791BF5FF061888D1E971</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1081 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BBADEEE5168DDE5F0727BCF58CA5FB21848F171B15FFAFBE6AEFBB33E02CDBA7CA0CAC558A79FE04D1297FF4CE948E767C15553F577D5B3434CD3C3657C4888F5B09F706C33FAE485AC0DE48DD6620895873E6008747F9D049F3EC55FC352A7BFAE8D1D296D9BC9B7F6FB45C781A483FD05A6D4E9F234561B1273CEE77CF276128726519F452952082A10145899FCFD7E3FD8CDB0A23C555271BE9F4AA477D980314248110239DF0E94507E55FEE415C711558A025A8835EEDAE33D72C73839BBBF60A8FD115FB0DE4C76268D5E6203DD73E5B9E4D0593E08CFF310E94B4AD4226082D046E66E5DC4838AB62873D61A3CF5C7004D8E8105D7091</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1082 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A3948AF670E749C4345AC0FF0D6843402396D48FA1EC264F014EFE56D2DECD68B68033EB9589ED7B121BDAFF62314026C8E5DD8B2CF97A9792A63C39D2C8C44F4F9793813810639EB7D8F044BC99FCF9260D4F147657CB3463C627BF1BB242DBB85FFA818738FC90683994299C615354E3260815800FC75CFE3E4F2534A63D63A251EA2DA2E9E725D8522C2BC830E82911C9FA6000F164807E44E19C6F222FEF3AB70A3FA7E7C3314E0C9077364CF9E5ED13C413AC018590ADD14A8AD891B6E9895CAD4DD1E5FC09807406B5D24E3A52CA44800B72B0D28189D131E28E430AA4A843C7AF9175E75993094F3AB5B0D5834F1C67CF7313BFAF8C55</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1083 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>BE2EB9364802D7F29350D24760911265BEAF3AE96EE5B94297F5C0F6F3DB7371FC1591BE66C5918EDC3A9A30ACFF7B7EB4FED57EA5BE2C2FA9A91F272ABD488B49033E691280500CD3A61CA1988AA3C30C7BA6CD922D3830CD7CC0F7A076310CE79B097F466BE88EB7A79362A6A6BDF48D0978752B5B4E3397A3DB7A163BE60134A81B8AC4BFC768209B03177E8FCEBACF1DD61D48DBCA3E1DCB21A5F690F59D9AEE0C747F505D662C79876B797C7B64DB2D9FA3A3CF0C23109BBA63DCB1FFB6DB37FA26E640CF601F24AFBBDC63C775AF89988FAED6283069D0E94F155B8669E0138151FE8246BBC5B523E880E6ED4FAEA1C0D2481C4231A7C5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1084 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>CDBEAD994DF3F74F5F228DFC3F60FE84BF5643F665CD6F71D122953AB9BF21282B6B4875D947CBB59C7F714FBF29125A66CC8CE373B34CD04F8D0D8813DE0744E9236462F1FB62BECD21920DB6997AC56C23CF570E7D38DF84628AA2898FE2880F103890D369D690690CE8993C1F6FE441C1B3F1D487011021F0598245642361209AFB25EB8940455177174AEECEF9639D6D8C60C6F357C66A57E3DE124AF5FE770ED435C9C608D1F7B298C5C28599A7B378DA3D525604C5407533172375D530C60385EE4C6CC98D2F1430B58DF71B8DBB5438D9E791B29690F457B8A55A2A8604124ABC0AE291DA9C589CB465DF7713FD8A21A1134317EB1A21</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1085 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C6915DAADB04017F72273058478EEB34698442B00B1D06C04707D44C6755B571501F71674C5087E71283191406ADE6EB3218355ED710070D27DC2C5CC824CAE839B4918DF2E17247A1D48C0C3BC6287D6FA7A21EF5C366FB17B3B9FFE376785C9C88F02D7293A89750F660FED65B04F48F58326FF60A99E93D6C65B11C5DEB53526E27A0F67F1C601263F76DC7F6A12851B01E4EFD54779010924D76F634667EB4B3002EFFAC6AC25CDEC9A437D87FB3FCF7AAB827D962F383676327CC186A7F3CCB8BF41B6F86FF612BD90770BEC22E1F2F1BD9FEF2A82C0F9A9FF48784027B472977F642AE7B1B305B42E7D19B75AAA5F14DAD3379450D1121</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1086 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D5DE764C4EE486C216E1E986F7DCB78A0F88FDB42CFDFA30A84D48DB0C07CA8565372DB1EDF22C21EBB38F9308D1A5C79CEF7F71DC54BF93EFE58ABB7A593595FB1F63F3714A888366D3359903F32E67B1E07E8680BFC8E32CFFE2D32E0039341284C7119307159DB74116DF47C485015F81301F4A53CAD2C4BACABD8EF5E8C013CAB864020A5887677159B2E9368074DCCCB91B5D2FB00C6281A7A1E0AF113411E2270FF8D11A088EF15BC0BD350712859C0D2CECD72FCBB43CF8052A5DEC8A264560C6EB1383646CBA5AD97EF9356301F76AC398BA1B1BA2656D8A97765602F3B392D556952DCC2708E1D0552EDB5E994B9A8281D16E27BE2B</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1087 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8E46FA719B54A9CFA17FC6B3EEDC5D564F2D40E2064DB79DB5CB9E10FE82906A8EA60E30C78A23C281E6A97318A07E5CFF19937214B162C18DED3A2BA625E63BD1F16DA9B52772622D6F2DF7A5D174E0A3E4A3FE501AA76FA06D434E48163F5491A4DFC29BD0B2D8B66D8F592E7F26517851CA63B156C118D2D950092A838B3EF8B2B15B0CBEB440D43C0ECBBDE06BC10B6E35A3BA7EBDEBFF44994829C33B2D0C72664EDBC96BEF92792A9D0C4BF76D3CA795C3848DBE50CAB29AAF21D32AA4154C6F607D04BFEEF3E28FD9975E37CD197C155231012965C7D17DAEB5659A60FC1270246A647F5C61021DEF1090C0E5A790586380D76AC520BB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1088 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>E6B23F4C451B6698158DA5BFC4DC054D224EEDCF7230722E87A7EEE1A728EA1A8276C371C0DCA37B56600995B50CB4E532EBE5031F084B05B1F23A98EF2D05F679DB934EC9882A79C6FC085AB3DC389098709D50993C05F7BA0E707EC56718E4B98889885066B11874AAED2461F503FF8C9ADEE5AC77FB72E466049176734C085ADD6D80D2C814D0DDB39A663F00F1CDC8AC427B030393587CF83C28E8A0495DD28C7797D39E8E4B31A2B7093FD2BAA5E73FB52654233E31D9542338C4A6BA75CC7EB769825084F9D4F3A2675F9F205A59FBDD056DC549D37E6A4CE14E18CB1AAFAA26D8FEDDC63EAEA4B8869840448EE4A9E2EF9DB84D0842CF</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1089 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>A922AE9AB2B5EAC5773294859A09427166881466CDFEB11AE5197582EBD1BC4BFDAB4795B706651192178DB5F896B7B4E8E83BA3267167B0E3DBB236A87A2F5C0370981AB26020D2029D87B2CAEE311FEB42C4F163A551D10D0CB7B1ED4D6EB80C50E3B38D9B3B898F76FD60E0E779E4A4C92238271638AB7427F8BDFD65204E8DFC4CA3E30BEDC601552BBA0436EC4D99E53835A61AC260AD3AFA8EBF4EF904C13CFED3ACAABBE96B31F9998C56324277B7AE43D29FAAA802CE9BC73A89B457941A77B78562FC2F01EE77B7813B772C975AF8DE6C8A8862F5679D08D4637DCA8864A1113AA0BD656A523602E41FB721F37C395BD2F4A69DD7E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1090 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F45C7374953EEB0CEF077E4A26538500176DAE92B9EA8289D8EB93FFEF9257BFAE8730579CB9CDA809EBD07E16DE4F56046862DBA971452A9D9E627611B1BE5D52CBD623BBD9CB6545ACA85C816BF81B34F45C30380875752EF90FD40645D69E3BF5A4F5366ECAB8B30E29F9CDDDAF171D5EA2B5FCFE529565770B3D8388681C318DA80FE32B1CE2043B5531DFBA229546593521ACE34A5A698380B7ABAD5AA0F3C6F1267F9720369956F8726DBC430D9921AF23A2C048D9C99E2D17E021E2AA0ADFA89FEB20203BA0CC942D82B090613AD76DA4464B094FF6A7CE4B2E832F0F79AF9ED089EDD3A0E9FDFB821E60EBCA127E4E089C006B9296EB</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1091 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AD60B7B3361B24FE1687A36FCE53D2B95D806F8C7CD6406C56A7B5DAA16A98365800C7EE94C2D33644B60ECCE2B848751B326511B438139294486E64CB899A4DC1323F2B2F06C735E897B81E64CDEC60DD6A5A714926B4B1D0B1842F57D46D439657122191047080EB90C62E1D0ABBC52DA11808872A9FF69F571975B53D6C5BB334B74FFDE498ABB5AD7F74B81596749229B8E90096F87DF4F7E1026BA62A67C8F431C76CAE9B1EF593111A958A4B11E934587D90AA4039566FFCDC5B20D46CDDAF60A506DBCE0D79F3ED5BA56BB3A002CCAF0110465284D79AF0D6E8CB5D23656C779AC1473A6BD8596340393BBA1176A1BAA1CEB5519BC035</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1092 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D9FE8CF4945F9B3F0A78E4CEC479D39CB54BE535CA6E3B0159480C3ED2DF9EAD57A09223B9F5954E64A57CFF02DCFC209884C86C9B1CFC642CAA966D8B5EE3381CA6A2940162552F935735A9E891C67E877621A11D32AA32B7068A34A874597496F86345DD6C1EFC48B956EE6776CD3BF18904F4C964360BA2886C9C4E3F1068A7B5C86070296DA91166542A1E2FD2EB7AE70D1C8A330D381E2BA42161DD28EED835D6523D79656AA0944544E5F4A016BC14D3966B29646FFB438D4F958D2753420D2BEDDE681E0FAF718FEBD2348E0C6C712A7B5A75C7EF120013BC50EFEF62CA11677AB83C35C0E53BD55521B164D174C6D1E0BF0A79FE268F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1093 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D7A9C1A6337C90C988164F37E69E0F531CF7B44BD41DAC1599D77018D3E972A91A9D398584AB77B23C80D73BA11605814B7C314A7C68622D90495E6412451473BDBB79D2789524B0BC681D8F44E5E555B499430B9FC1739E90B02278428012EE18DE16F18D48EDD3B573BE33930B16C4208AF186F9B3983B1AF615D4249CD3D29D2C549AAB5838F62D12A5EB01A17425E6956FB7CEB80C96B946F90FB7DC4F4F559BFF295454B972D4CBCA5EFA0A3C9503BD4E16254DC0AA4A4A41EEC1D97FB646D1F7DC8022EB56AFC6C8A8CE92B10363374F52083E37E75CCCFD13724FA0A6D72499CA7ECCDF9950C9D31D45A9DB4BF8ECC79A79CA9A55C183</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1094 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9FB956305CA586FB7FEFDC7BC8607A5F2ECA5D946797CF67F39A1C7AD55A34D493658576F14D9712C3DF984FAB0C0F2797DD2960E9908A0D943AEF7EEFF6D5BBF0C5CDFBD84C8FAF73446EA371D58A80929942E27C21E0CB39752FC1EE17259A6D6A56E5C7283C531B5EF52A00C043AACA6E9260A08205F4B330146375CAC2BEBF92FB48D55621F74F5AEF7529A8F9BB4A0FDFF90FE33D35FEC8ECD3A2E63CFF8E4FBE8F5AF7E89DF9115B441BBDD78E0299FF73D6D5713A6CE6128D57901709616D6CE352153C684301E609C4891FA1C7BB0BAE95BC8CD6A683A52BEEBA55D521363E4D488742910089A6AF5D779ADF42688549010BD642D6E3</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1095 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>D9CE733CD309B58D3519273F32F40794FD6F22C5ABC76301241B7845B73CF4AA255D9A606D4E528CA2208129AE2D30F195589DF63C70EEC405DACE8F87FD0382863801D85EF70A6A6479C1ED3D46AFB86555A19777725C3AF5E0A271DD100027F3A0B44999819C1F1CFCF8BDDE012E42F462DB339986C227CA59414CB46219E54E1FA602E795EB87D21000FC26ECBB05BF390736F120899B72711367A5CFAEB1063120E939683DA25E677651574D924AFF3D013C11F9CBF644EAECD9A5AB94C7608647DCDE57680192B607DF17CF57837A303B993F9E1F3F20778A599AE41D68167C4D473A86E4F50844412CDA4013FCBC79F8F50C0B10CC6EC9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1096 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>8D1EEEC3229905F6AC18FEC71F3667CC2DD7F9AEF63C29E5C54C7B8F3ECDDE501D0B19BEC17150B44D6C65EB3C3C21D5961F5B01DA05335D51E92B7D0EECC28C6B3EEDEBD6FBD6B2897629F73E0B4F880ED09BEFAA5F41E460900834150DC8F0DCF92AA8CE38D11021D403E392854B3CA2743AA90870331D0D4DBC63BFA908C62826CA81E236C67B304C8E9831F9A3EB1062CD8AF81CA86281C8EE4C3F804893DF26BA7363BB211F2F557C4CC144CD1CB09898519112B170CDC71A02A746AA2DF483381083FF75915A6BE737A3536F1A388B660E7050786AA1214E3760DE388A07A34133C9BF50A5FCCBECE1E4D72FB27FD758202C000CFE1CD7</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1097 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C86127334E1438958203EE13E21B07FF916B06BAE31134888FB1F13F0E674F5845F6F2BDAD5018455CE6DB3066257991A4EEFE9A524F38CAB982A9125D3AB09E4E764B4C3301B5900A36125614CB2DF1CBD49C08DC0B801EEE7C4BF1213A1904D56F0E667755B889569BB5580BCDBB4895DB3B0A9ED5BFCAE9EDDC50FD79323E6527E25EC3BA4AFDB606FC5B6DC23A640E2A674F90D2C8419C91289185D12C8377B28BD26BCFE8379755CA53D28657721DF003C86802556C9BF394B7A976679C600620EF027A7DF7369DB073F3832A29870450356992D91885BFA4FC2106A909832219B410D7C98485E57C1360D65105B5485F78AC1B474E2CA9</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1098 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>F8030E09FE5BC848E468B44CCAF2FA69125FEC901952AC718D2F232DB22DD43E4812777CA772CF454ED70181782C1AF2F8A1AD9357AF772B6FEE49EF437A3C375E6BEEE8C551C4187CE62EB6B4A8FE871BE3A00CBCB94DAE9B06BCA3829C85A576789B026F83C89062C75AF54780473506E80C0057BF9FD217810541E631E228CAF5CE63A71A164DC32E616E7070342CE7D6F570339B3D813005D8334A40EC9DE5750D9E0417691172BB397012AD7193AE030A5D8BE0DCA8A9F1BCF4049529B302A4B687E5E552A0C2C7F04DFC60A994641D7D661BECDA38158D328E89AD4A3B8812E701EAEA0FBDF9066BF905FA75F422F74231828CBC1C8543</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1099 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>886DDB7EE954A8A5BE138E8C4F3461DA8B7E3FAE41CC00FE258B341EC27F492109523C023D6A47985711DE2A4C018589337CE86A5D59E77B6CCC23CEA5D119397B4177E6AF82296ACD71B64D8BD6845AAD48110333704A57D4F3FF002CD121F1FA9AD1494CC9BC7DC00A93DF56D4B5039A4802FE0BAAAAAA1B9A0E3F8FC1C3D20DA9CD543023E5E78A04694A4A8ACE8FA155F03B6BC7C9920D9A38EFBA0E66748D7B37CACAC8A9AC3AF078BAE92CE5E0ECEBAF8EFFD10C4672956396C1FE3DAC426C6084B3D61C0907E506DD28C9603C1B3285870B18B5268B9E07D1102693BAD60CA147D24D0D4D61D0BFAB7C1559DBECD79CD70F35F8D00E6F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1100 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>C22BD0B58448976DA090904B760F444ABC36CB5E0D51ED0BD5548BEFB89647998C51A57892B459CD0A61B8E4BB708FA8EA48E9B0755E8334465B68227F3959BF89B2ECEA4DCAA5A02DD90086C4FC27B3ECE57573D0880BFAE00016CB8337059E31AA05C423E90BEE1CBACFE0C2F64C8D0714896D86AF4761889BD1CEC97F214B5A3B1BFDB39DD31DF72F68912F79DC3C31401D16803FD89776E86FBDFDDD2280061DA64C983E7633ECAEC2E237AEC1B1A1F6BB3CE3A249AD2C5EED4B60FFDC95471BF209FAACC1EB29E544895E635A77A4C917F8A053155A6EF75896CA533300121F848094176849D05C5A14AE0F40EB15A470888E9EA58BCF2F</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1101 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>9E3994BA839691BC3C5F1FEA48D712E64F99DA22974D358C5E6CF5DD9ED3C89B598868D9D6096C7B1C80F1B7DFA8F5FB4E1F5C445FF8A58848B8F11FF35FCBA40985A98FA9F25335B6C0FF725439887B5F6A8F43D3B66F31EE7A18F21B9FDC81D19377559ACE30DA3BB236028BA8E197FE8E3B753467DA5A82CA989CE6763BD42B81ECBB326F9DFE9ACF28DCF234A45CF5A3282384A82E16A06F8B8AC75964BD84DD62F2A2DB03114B1A346F684480BF315DCDD65049A350AA07B696AD41A5410460D5406A9117B2012A7BA0130897B81AF98CA281056B9E09F2AE58318B176047C8539741ED154B20F14B713B3189453CD4A2C101C6C918BEC5</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1102 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>AB33704201D2EF00EA25B8DC1FE2A80B33677B6E9272E8FEFE43F72844E17EF624C257B0C731CCB53DF2879BD0E7128D7E42588869AEF5076CDDB63410999FBC1E197A933D07AA49DFFE96490F8C1F8F0097F34EBD090FCCB4435C1E551327C9F0BC570F1C2FDF4D6A0728E06F7E80DE2FF1CB35B6839BA2D2B746CBC40C300D0D2B06A812719F157713F506DDB7C18EECBF8EA32D68D0258D188664AD349CFB0AED250FC6A963C173E1A1A7A7416148ABB35D5FA85ABBF9E53CE060AD31AF15A71955ED654ED76CDCBEC2ACF44F53CF41F44F289C531036F7FA040EEC7D0F0AE02EA91CBE737CC8FF24475E44B55FF6DE6BD0E75D32C35BCF5D</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
-<action>
-	<actionname>Prime Vector Test #1103 -- from http://www.cl.cam.ac.uk/users/jeh1004/research/miller/primes</actionname>
-	<actiontype>PrimeVector</actiontype>
-	<actionbody>
-		<prime>96FC57652F5221A76EB6CC1E6EA830CA44819734C9146590D6269935D9FE0A550B664BA486C237EBC592A1A5083A55C1F67F4820BC5C485C622D2E539EB348B6ADFCA98C74C5ECBC707785E86528F2127FF51B48CDF9D7F0182D52E0EB87440F43F170CB1070A2EB53BE7C5F9400729ED5C180A3C589C3E7FADA19E7AA94730C3896744A976BDB344AAF51235AD0868E4F336BCFA732F4E5CC67ED204EFC70373C8397007909690154EA7064C5DF1A6511C8D731AC307E4623B265DFD71C14CCE20EA277E2156CF4191DEC3247C2A2BB893A07C4D1574D1C3C69400A14952B23AA53A445627A9D6F112751BDFEAC9743BFCB2585CC6747D42549</prime>
-	</actionbody>
-	<actionresult><result>ETrue</result></actionresult>
-</action>
--- a/crypto/weakcrypto/test/tbigint/tbasicmathsfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,341 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tbasicmathsfb.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <bigint.h>
-#include <random.h>
-
-CTestAction* CBasicMathsFB::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CBasicMathsFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CBasicMathsFB::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CBasicMathsFB* self = new(ELeave) CBasicMathsFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CBasicMathsFB::~CBasicMathsFB()
-	{
-	delete iBody;
-	}
-
-CBasicMathsFB::CBasicMathsFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CBasicMathsFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	//HBufC8* length = Input::ParseElementHexL(*iBody, _L8("<bits>"));
-	TUint bits = Input::ParseIntElement(*iBody, _L8("<bits>"), _L8("</bits>"));
-	// the final /7 gives the number of times we have to increment by 7 to get
-	// to that number of bytes and hence bits.
-	iIterations = ((bits+7)/8)/7 + 1;
-	}
-
-void CBasicMathsFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CBasicMathsFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CBasicMathsFB::DoReportAction(void)
-	{
-	}
-
-void CBasicMathsFB::DoCheckResult(TInt)
-	{
-	}
-
-void CBasicMathsFB::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
-	//min max values for NewRandomLC call
-	RInteger min = RInteger::NewL(10);
-	CleanupStack::PushL(min);
-	RInteger max = RInteger::NewL(100);
-	CleanupStack::PushL(max);
-
-	//Generate iIterations*7 byte random sequences we are using 7 as it's a generator
-	//mod 8.  Thus we'll cycle through every value (0-7) every 8 iterations.
-	//This gives us a better feeling that certain byte lengths (and thus bit
-	//lengths as the byte is chosen randomly) don't have errors.
-	for(TUint i=1; i<iIterations; i++)
-		{ 
-		HBufC8* buf = HBufC8::NewMaxLC(i*7);
-		TPtr8 ptr = buf->Des();
-		TRandom::RandomL(ptr);
-
-		//This is this iteration's random number
-		RInteger initial = RInteger::NewL(ptr);
-		CleanupStack::PushL(initial);
-
-		//get a number x | 10 < x < 100
-		RInteger crange = RInteger::NewRandomL(min, max);
-		CleanupStack::PushL(crange);
-		TUint range = crange.ConvertToLongL();
-		CleanupStack::PopAndDestroy(); //crange
-
-		AddSub(initial, range);
-		MulDiv(initial, range);
-
-		//GCD
-		CleanupStack::PopAndDestroy(); //initial
-		CleanupStack::PopAndDestroy();//buf
-		iConsole.Printf(_L("."));
-		}
-	
-	//Test a single iteration where the initial random number is less than a
-	//word so the division and modulo routines that take words rather than
-	//TIntegers can run.
-	//do
-		{
-		//This is this iteration's random number
-		RInteger initial = RInteger::NewRandomL(31);
-		CleanupStack::PushL(initial);
-		//get a number x | 10 < x < 100
-		RInteger crange = RInteger::NewRandomL(min, max);
-		CleanupStack::PushL(crange);
-		TUint range = crange.ConvertToLongL();
-		CleanupStack::PopAndDestroy(&crange); //crange
-
-		AddSub(initial, range);
-		MulDiv(initial, range);
-		CleanupStack::PopAndDestroy(&initial); //initial
-		iConsole.Printf(_L("."));
-		} //while (0);
-
-	CleanupStack::PopAndDestroy();//max
-	CleanupStack::PopAndDestroy(); //min
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARK;
-	}
-
-void CBasicMathsFB::AddSub(const TInteger& aInitial, TUint aRange)
-	{
-	__UHEAP_MARK;
-	//This is the copy we are going to do stuff to
-	RInteger a = RInteger::NewL(aInitial);
-	CleanupStack::PushL(a);
-
-	// compute a*aRange using doubling
-	TUint j=1;
-	for(; j<aRange; j++)
-		{
-		a += aInitial;
-		}
-
-	//b = a*aRange;
-	RInteger b = RInteger::NewL(a);
-	CleanupStack::PushL(b);
-	//compute (a*aRange)/aRange using subtraction
-	for(j=1; j<aRange; j++)
-		{
-		b -= aInitial;
-		}
-	// b should be the same as the initial value
-	if( b != aInitial )
-		{
-		iResult = EFalse;
-		iOut.writeString(_L("AddSub Failure:"));
-		iOut.writeNewLine();
-		}
-
-	RInteger c = RInteger::NewL(aInitial);
-	CleanupStack::PushL(c);
-	// compute a*aRange using normal multiplication
-	c *= aRange;
-	
-	// c and a should now be the same
-	if( c != a )
-		{ 
-		iResult = EFalse;
-		}
-
-	RInteger d = RInteger::NewL(a);
-	CleanupStack::PushL(d);
-	//compute (a*aRange)/aRange using normal division
-	d /= aRange;
-	if( d != aInitial )
-		{
-		iResult = EFalse;
-		}
-	RInteger e = RInteger::NewL(a);
-	CleanupStack::PushL(e);
-	e %= aRange;
-	// (a*aRange)%aRange == 0
-	if( e != 0 )
-		{
-		iResult = EFalse;
-		}
-	CleanupStack::PopAndDestroy(5); //e,d,c,b,a
-	__UHEAP_MARKEND;
-	}
-
-void CBasicMathsFB::MulDiv(const TInteger& aInitial, TUint aRange)
-	{
-	__UHEAP_MARK;
-	//This is the copy we are going to do stuff to
-	RInteger a = RInteger::NewL(aInitial);
-	CleanupStack::PushL(a);
-
-	//compute a = aInitial^aRange using repeated multiplication
-	TUint j=1;
-	for(; j<aRange; j++)
-		{
-		a *= aInitial;
-		}
-
-	//b = a
-	RInteger b = RInteger::NewL(a);
-	CleanupStack::PushL(b);
-	//try to find aInitial by repeatedly dividing b by aInitial aRange times
-	for(j=1; j<aRange; j++)
-		{
-		TRAPD(res, b /= aInitial);
-		//the first time through aInitial is 0 so this is expected
-		if(res == KErrDivideByZero && aInitial.IsZero())
-			{
-			break;
-			}
-		else if(res == KErrDivideByZero && aInitial.NotZero())
-			{
-			iResult = EFalse;
-			}
-		else if(res != KErrNone)
-			{
-			User::Leave(res);
-			}
-		}
-	// b should be the same as the initial value
-	if( b != aInitial )
-		{
-		iResult = EFalse;
-		}
-
-	//tests division by something smaller than a word
-	if(aInitial.WordCount() <= 1)
-		{
-		RInteger dividend = RInteger::NewL(a);
-		CleanupStack::PushL(dividend);
-		for(j=1; j<aRange; j++)
-			{
-			RInteger quotient;
-			//try to find aInitial by repeatedly dividing dividend by aInitial aRange times 
-			TRAPD(res, quotient = dividend.DividedByL(aInitial.ConvertToLongL()));
-			//the first time through aInitial is 0 so this is expected
-			if(res == KErrDivideByZero && aInitial.IsZero())
-				{
-				break;
-				}
-			else if(res == KErrDivideByZero && aInitial.NotZero())
-				{
-				iResult = EFalse;
-				}
-			else if(res != KErrNone)
-				{
-				User::Leave(res);
-				}
-			dividend.Set(quotient);
-			}
-		if( dividend != aInitial )
-			{
-			iResult = EFalse;
-			}
-
-		TUint remainder=1;
-		TRAPD(res, remainder = a.ModuloL(aInitial.ConvertToLongL()));
-		//the first time through aInitial is 0
-		if(res != KErrDivideByZero && res != KErrNone)
-			{
-			User::Leave(res);
-			}
-		else if(res == KErrDivideByZero && aInitial.NotZero())
-			{
-			iResult = EFalse;
-			}
-		//else we have an expected divide by zero, ignore it.
-		if(remainder != 0)
-			{
-			iResult = EFalse;
-			}
-
-		CleanupStack::PopAndDestroy(&dividend);
-		}
-
-	RInteger c = RInteger::NewL(aRange);
-	CleanupStack::PushL(c);
-	RInteger d = aInitial.ExponentiateL(c);
-	CleanupStack::PushL(d);
-	// c and a should now be the same
-	if( d != a )
-		{ 
-		iResult = EFalse;
-		}
-
-	RInteger e = RInteger::NewL(a);
-	CleanupStack::PushL(e);
-	TRAPD(res, e %= aInitial);
-	//the first time through aInitial is 0
-	if(res != KErrDivideByZero && res != KErrNone)
-		{
-		User::Leave(res);
-		}
-	else if(res == KErrDivideByZero && aInitial.NotZero())
-		{
-		iResult = EFalse;
-		}
-	//else we have an expected divide by zero, ignore it.
-
-	// (aInitial^aRange)%aInitial == 0
-	if( e != 0 )
-		{
-		iResult = EFalse;
-		}
-	CleanupStack::PopAndDestroy(5);//e,d,c,b,a
-	__UHEAP_MARKEND;
-	}
--- a/crypto/weakcrypto/test/tbigint/tbasicmathsfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TBASICMATHSFB_H__
-#define __TBASICMATHSFB_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class TInteger;
-
-class CBasicMathsFB : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CBasicMathsFB();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CBasicMathsFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void AddSub(const TInteger& aInitial, TUint aRange);
-	void MulDiv(const TInteger& aInitial, TUint aRange);
-
-	RFs& iFs;
-	TUint iIterations;
-	HBufC8* iBody;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tbasicmathsvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,175 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tbasicmathsvector.h"
-#include "t_input.h"
-#include <bigint.h>
-
-CTestAction* CBasicMathsVector::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CBasicMathsVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CBasicMathsVector::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CBasicMathsVector* self = new(ELeave) CBasicMathsVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CBasicMathsVector::~CBasicMathsVector()
-	{
-	delete iBody;
-	delete iA;
-	delete iB;
-	delete iAns;
-	}
-
-CBasicMathsVector::CBasicMathsVector(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CBasicMathsVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iA = Input::ParseElementHexL(*iBody, _L8("<a>"));
-	iB = Input::ParseElementHexL(*iBody, _L8("<b>"));
-	iAns = Input::ParseElementHexL(*iBody, _L8("<ans>"));
-	TPtrC8 op = Input::ParseElement(*iBody, _L8("<op>"));
-	if( op == _L8("add") )
-		{
-		iOp = EAdd;
-		}
-	else if( op == _L8("subtract") )
-		{
-		iOp = ESubtract;
-		}
-	else if( op == _L8("multiply") )
-		{
-		iOp = EMultiply;
-		}
-	else if( op == _L8("divide") )
-		{
-		iOp = EDivide;
-		}
-	else if( op == _L8("modulus") )
-		{
-		iOp = EModulus;
-		}
-	else if( op == _L8("gcd") )
-		{
-		iOp = EGCD;
-		}
-	else if( op == _L8("inversemod") )
-		{
-		iOp = EInverseMod;
-		}
-	else 
-		{
-		User::Panic(_L("tbasicmathsvector"), 1);
-		}
-	}
-
-void CBasicMathsVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CBasicMathsVector::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CBasicMathsVector::DoReportAction(void)
-	{
-	}
-
-void CBasicMathsVector::DoCheckResult(TInt)
-	{
-	}
-
-void CBasicMathsVector::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
- 	RInteger a = RInteger::NewL(*iA);
-	CleanupStack::PushL(a);
-	RInteger b = RInteger::NewL(*iB);
-	CleanupStack::PushL(b);
-	RInteger ans = RInteger::NewL(*iAns);
-	CleanupStack::PushL(ans);
-	RInteger result;
-	switch(iOp)
-		{
-		case EAdd:
-			a += b;
-			break;
-		case ESubtract:
-			a -= b;
-			break;
-		case EMultiply:
-			a *= b;
-			break;
-		case EDivide:
-			a /= b;
-			break;
-		case EModulus:
-			a %= b;
-			break;
-		case EGCD:
-			result = a.GCDL(b);
-			a.Set(result);
-			break;
-		case EInverseMod:
-			result = a.InverseModL(b);
-			a.Set(result);
-			break;
-		default:
-			User::Panic(_L("tbasicmathsvector"), 2);
-			break;
-		}
-
-	if( a != ans )
-		{
-		iResult = EFalse;
-		}
-	CleanupStack::PopAndDestroy(&ans);
-	CleanupStack::PopAndDestroy(&b);
-	CleanupStack::PopAndDestroy(&a);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tbasicmathsvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TBASICMATHSVECTOR_H__
-#define __TBASICMATHSVECTOR_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CBasicMathsVector : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CBasicMathsVector();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CBasicMathsVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iA;
-	HBufC8* iB;
-	HBufC8* iAns;
-	enum TOperationType {EAdd, ESubtract, EMultiply, EDivide, EModulus, 
-		EGCD, EInverseMod};
-	TOperationType iOp;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tbigint.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tactionderivekey.h
-*
-*/
-
-
-#ifndef __TBIGINT_H__
-#define __TBIGINT_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CActionBigInt : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionBigInt();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionBigInt(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iPasswd;
-	HBufC8* iSalt;
-	HBufC8* iKey;
-	HBufC8* iOutput;
-	HBufC8* iIterations;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tbigintmain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "t_testhandler.h"
-#include "tscripttests.h"
-#include "t_testsetup.h"
-#include "t_input.h"
-#include "t_output.h"
-#include "tbigint.h"
-#include "tconstructionfb.h"
-#include "tconstructionvector.h"
-#include "tbasicmathsvector.h"
-#include "tbasicmathsfb.h"
-#include "tmontgomeryvector.h"
-#include "tmontgomeryfb.h"
-#include "tprimevector.h"
-#include "tmontgomeryperformance.h"
-#include "tprimegenperformance.h"
-#include "tprimevectorperformance.h"
-#include "tprimegen.h"
-#include "tprimegenvector.h"
-
-LOCAL_D void callExampleL() // initialize and call example code under cleanup stack
-    {
-    START_SCRIPT_LIST
-	SCRIPT_ITEM(CMontgomeryPerformance,_L8("MontgomeryPerformance")),
-	SCRIPT_ITEM(CPrimeVector,_L8("PrimeVector")),
-	SCRIPT_ITEM(CConstructionFB,_L8("ConstructionFB")),
-	SCRIPT_ITEM(CConstructionVector,_L8("ConstructionVector")),
-	SCRIPT_ITEM(CBasicMathsVector,_L8("BasicMathsVector")),
-	SCRIPT_ITEM(CBasicMathsFB,_L8("BasicMathsFB")),
-	SCRIPT_ITEM(CMontgomeryVector,_L8("MontgomeryVector")),
-	SCRIPT_ITEM(CMontgomeryFB,_L8("MontgomeryFB")),
-	SCRIPT_ITEM(CPrimeGenPerformance,_L8("PrimeGenPerformance")),
-	SCRIPT_ITEM(CPrimeVectorPerformance,_L8("PrimeVectorPerformance")),
-	SCRIPT_ITEM(CPrimeGen,_L8("PrimeGen")),
-	SCRIPT_ITEM(CPrimeGenVector,_L8("PrimeGenVector"))
-	END_SCRIPT_LIST
-
-//	Either run the top level build and test script or, if running this test specifically, 
-//	uncomment the following and it'll run them all one after the other
-
-	TDriveUnit sysDrive (static_cast <TInt> (RFs::GetSystemDrive()));
-	TBuf<64> scriptFile = sysDrive.Name();
-	scriptFile.Append(_L("\\tbigint\\tbasicmathstests.txt"));
-	TBuf<64> logFile = sysDrive.Name();
-	logFile.Append(_L("\\tbigint\\tbasicmaths.log"));
-	
-	CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile);
-	
-/*	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tconstructiontests.txt"),
-		_L("c:\\tbigint\\tconstruction.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tprimegen.txt"),
-		_L("c:\\tbigint\\tprimegen.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tprimegenperformance.txt"),
-		_L("c:\\tbigint\\tprimegenperformance.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tmontgomerytests.txt"),
-		_L("c:\\tbigint\\tmontgomery.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tperformancetests.txt"),
-		_L("c:\\tbigint\\tperformance.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tprimetests.txt"),
-		_L("c:\\tbigint\\tprime.log"));
-	CTestSetup::CreateAndRunTestsL(theTestTypes, 
-		_L("c:\\tbigint\\tprimetests2.txt"),
-		_L("c:\\tbigint\\tprime2.log"));
-*/
-    }
-
-GLDEF_C TInt E32Main() // main function called by E32
-    {
-	__UHEAP_MARK;
-	CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack
-	TRAPD(error, callExampleL());
-	__ASSERT_ALWAYS(!error,User::Panic(_L("bigint"),error));
-	delete cleanup; // destroy clean-up stack
-	__UHEAP_MARKEND;
-	return 0;
-    }
--- a/crypto/weakcrypto/test/tbigint/tconstructionfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tconstruction.cpp
-*
-*/
-
-
-#include "tconstructionfb.h"
-#include "t_input.h"
-#include <bigint.h>
-#include <random.h>
-
-CTestAction* CConstructionFB::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CConstructionFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CConstructionFB::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CConstructionFB* self = new(ELeave) CConstructionFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CConstructionFB::~CConstructionFB()
-	{
-	}
-
-CConstructionFB::CConstructionFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CConstructionFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	}
-
-void CConstructionFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CConstructionFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CConstructionFB::DoReportAction(void)
-	{
-	}
-
-void CConstructionFB::DoCheckResult(TInt)
-	{
-	}
-
-void CConstructionFB::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
-	//Generate 100 i*5 byte random sequences
-	//This tests:
-	// - NewLC(const TDesC8&)
-	// - NewLC(const RInteger&)
-	// - BufferLC()
-	// By comparing the output of BufferLC we can have (some) assurance
-	// that the internal integer code is intrepreting strings in the correct
-	// order and endianess
-	for(TUint i=0; i<100; i++)
-		{ 
-		HBufC8* buf = HBufC8::NewMaxLC(i*5);
-		TPtr8 ptr = buf->Des();
-		TRandom::RandomL(ptr);
-
-		RInteger a = RInteger::NewL(ptr);
-		CleanupStack::PushL(a);
-		HBufC8* out = a.BufferLC();
-		if( *out != *buf )
-			{
-			iResult = EFalse;
-			}
-		CleanupStack::PopAndDestroy(out);
-		
-		RInteger b = RInteger::NewL(a);
-		CleanupStack::PushL(b);
-		if( a != b )
-			{
-			iResult = EFalse;
-			}
-		out = b.BufferLC();
-		if( *out != *buf )
-			{
-			iResult = EFalse;
-			}
-		CleanupStack::PopAndDestroy(out);
-		CleanupStack::PopAndDestroy(); //b
-		CleanupStack::PopAndDestroy();//a
-		CleanupStack::PopAndDestroy(buf);
-		}
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tconstructionfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TCONSTRUCTION_H__
-#define __TCONSTRUCTION_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CConstructionFB : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CConstructionFB();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CConstructionFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tconstructionvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tconstructionvector.h"
-#include "t_input.h"
-#include <bigint.h>
-
-class RIntegerTest : public RInteger
-	{
-	public:
-		RIntegerTest(void) {}
-		RIntegerTest(const RInteger& aInteger) {iSize = *((TUint*)&aInteger); iPtr = *(((TUint*)(&aInteger)+1));	}
-		TUint* Ptr(void) {return RInteger::Ptr();}
-	};
-
-CTestAction* CConstructionVector::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CConstructionVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CConstructionVector::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CConstructionVector* self = new(ELeave) CConstructionVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CConstructionVector::~CConstructionVector()
-	{
-	delete iBody;
-	delete iString;
-	delete iMemoryLayout;
-	}
-
-CConstructionVector::CConstructionVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CConstructionVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iString = Input::ParseElementHexL(*iBody, _L8("<input>"));
-	iMemoryLayout = Input::ParseElementHexL(*iBody, _L8("<memorylayout>"));
-	}
-
-void CConstructionVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CConstructionVector::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CConstructionVector::DoReportAction(void)
-	{
-	}
-
-void CConstructionVector::DoCheckResult(TInt)
-	{
-	}
-
-void CConstructionVector::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
-	//This is just a derived class to get around the fact that iReg is
-	//protected in RInteger.  See top of file for definition
-	RIntegerTest a;
-	//a = (RIntegerTest)(RInteger::NewL(*iString));
-	a = static_cast<RIntegerTest>(RIntegerTest::NewL(*iString));
-	CleanupStack::PushL(a);
-	
-	//This test ensures that the internal memory layout of a number is correct
-	TUint compare = Mem::Compare((TUint8*)(a.Ptr()), a.ByteCount(), 
-		iMemoryLayout->Ptr(), iMemoryLayout->Size());
-	if( compare != 0 )
-		{
-		iResult = EFalse;
-		}
-
-	HBufC8* out = a.BufferLC();
-	if( *out != *iString )
-		{
-		iResult = EFalse;
-		}
-	CleanupStack::PopAndDestroy(out);
-	CleanupStack::PopAndDestroy(&a);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tconstructionvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TCONSTRUCTIONVECTOR_H__
-#define __TCONSTRUCTIONVECTOR_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CConstructionVector : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CConstructionVector();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CConstructionVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iString;
-	HBufC8* iMemoryLayout;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryfb.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,149 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tmontgomeryfb.h"
-#include "t_input.h"
-#include "t_output.h"
-#include "tutils.h"
-#include <bigint.h>
-#include <random.h>
-#include "../../source/bigint/mont.h"
-
-CTestAction* CMontgomeryFB::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CMontgomeryFB::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CMontgomeryFB::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CMontgomeryFB* self = new(ELeave) CMontgomeryFB(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CMontgomeryFB::~CMontgomeryFB()
-	{
-	delete iBody;
-	}
-
-CMontgomeryFB::CMontgomeryFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CMontgomeryFB::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	HBufC8* length = Input::ParseElementHexL(*iBody, _L8("<bits>"));
-	CleanupStack::PushL(length);
-	RInteger clength = RInteger::NewL(*length);
-	CleanupStack::PopAndDestroy(length);
-	CleanupStack::PushL(clength);
-	TUint bits = clength.ConvertToLongL();
-	CleanupStack::PopAndDestroy();//clength
-	// the final /7 gives the number of times we have to increment by 7 to get
-	// to that number of bytes and hence bits.
-	iIterations = ((bits+7)/8)/7 + 1;
-	}
-
-void CMontgomeryFB::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CMontgomeryFB::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CMontgomeryFB::DoReportAction(void)
-	{
-	}
-
-void CMontgomeryFB::DoCheckResult(TInt)
-	{
-	}
-
-void CMontgomeryFB::PerformAction(TRequestStatus& aStatus)
-	{
-	TRAPD(res, PerformActionL());
-	__ASSERT_ALWAYS(!res, User::Panic(_L("CMontgomeryFB::PerformAction"), res));
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
-void CMontgomeryFB::PerformActionL()
-	{
-	__UHEAP_MARK;
-	
-	iResult = ETrue;
-
-	//Generate iIterations*7 byte random sequences we are using 7 as it's a
-	//generator mod 8.  Thus we'll cycle through every value (0-7) every 8
-	//iterations.  This gives us a better feeling that certain byte lengths
-	//(and thus bit lengths as the byte is chosen randomly) don't have errors.
-	for(TUint i=1; i<=iIterations; i++)
-		{ 
-		//generate a prime of roughly i*7*8 bits
-		RInteger prime = RInteger::NewPrimeL(i*7*8);
-		CleanupStack::PushL(prime);
-		CMontgomeryStructure* mont = CMontgomeryStructure::NewLC(prime);
-		
-		//generate a random number of x | 2 < x < prime
-		RInteger base = RInteger::NewRandomL(TInteger::Two(), prime);
-		CleanupStack::PushL(base);
-		
-		//This is using Fermat's Little Theorem
-		//  (base ^ prime) % prime == base or
-		//  (base ^ prime-1) % prime == 1
-		const TInteger& y = mont->ExponentiateL(base, prime);
-		if( y != base )
-			{
-			iResult = EFalse;
-			iConsole.Printf(_L("X"));
-			iOut.writeString(_L("Failure exponentiating:"));
-			iOut.writeNewLine();
-			Utils::DumpInteger(iOut, _L("base: "), base);
-			Utils::DumpInteger(iOut, _L("prime: "), prime);
-			Utils::DumpInteger(iOut, _L("output: "), (const RInteger&)y);
-			Utils::DumpInteger(iOut, _L("expected: "), base);
-			}
-
-		CleanupStack::PopAndDestroy(3, &prime);//base,mont,prime
-
-		iConsole.Printf(_L("."));
-		}
-
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryfb.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TMONTGOMERYFB_H__
-#define __TMONTGOMERYFB_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CMontgomeryFB : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CMontgomeryFB();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	void PerformActionL(void);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CMontgomeryFB(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	TUint iIterations;
-	HBufC8* iBody;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryperformance.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,238 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tmontgomeryperformance.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <bigint.h>
-#include "../../source/bigint/mont.h"
-
-_LIT(KPerfConstFormat, "\tConstruction Time: %f us/iteration (%i iterations in %f us)\r\n");
-_LIT(KPerfMultiplyFormat, "\tMultiply Time: %f us/iteration (%i iterations in %f us)\r\n");
-_LIT(KPerfSquareFormat, "\tSquare Time: %f us/iteration (%i iterations in %f us)\r\n");
-_LIT(KPerfExpFormat, "\tExponentiate Time: %f us/iteration (%i iterations in %f us)\r\n");
-_LIT(KPerfReduceFormat, "\tReduce Time: %f us/iteration (%i iterations in %f us)\r\n");
-
-CTestAction* CMontgomeryPerformance::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CMontgomeryPerformance::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CMontgomeryPerformance::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CMontgomeryPerformance* self = new(ELeave) CMontgomeryPerformance(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CMontgomeryPerformance::~CMontgomeryPerformance()
-	{
-	delete iBody;
-	iA.Close();
-	iB.Close();
-	iModulus.Close();
-	}
-
-CMontgomeryPerformance::CMontgomeryPerformance(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CMontgomeryPerformance::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iIterations = Input::ParseIntElement(*iBody, _L8("<iterations>"), _L8("</iterations>"));
-
-	TUint bits = Input::ParseIntElement(*iBody, _L8("<bits>"), _L8("</bits>"));
-	
-	do 
-		{
-		if(*((TUint*)&iModulus)) //if the size is zero, ie iModulus hasn't been initialised so don't clean it up
-			{
-			iModulus.Close();
-			}
-		iModulus = RInteger::NewRandomL(bits);
-		}
-	while(iModulus.IsEven());
-
-	iA = RInteger::NewRandomL(TInteger::One(), iModulus);
-	iB = RInteger::NewRandomL(TInteger::One(), iModulus);
-	}
-
-void CMontgomeryPerformance::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CMontgomeryPerformance::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CMontgomeryPerformance::DoReportAction(void)
-	{
-	}
-
-void CMontgomeryPerformance::DoCheckResult(TInt)
-	{
-	}
-
-void CMontgomeryPerformance::PerformAction(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
-	CMontgomeryStructure* montConst;
-
-	TUint iterations = 0;
-
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds iterationTime(iIterations);
-	
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		montConst = CMontgomeryStructure::NewL(iModulus);
-		delete montConst;
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	TTimeIntervalMicroSeconds time = end.MicroSecondsFrom(start);
-	TReal rate = I64REAL(time.Int64()) / (iterations);
-	TReal rtime = I64REAL(time.Int64());
-    HBufC* realbuf = HBufC::NewLC(128);
-	TPtr buf = realbuf->Des();
-	buf.Format(KPerfConstFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-
-	CMontgomeryStructure* mont = CMontgomeryStructure::NewLC(iModulus); 
-
-//Multiply
-	diff  = 0;
-	iterations = 0;
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		mont->MultiplyL(iA, iB);
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	time = end.MicroSecondsFrom(start);
-	rate = I64REAL(time.Int64()) / iterations;
-    rtime = I64REAL(time.Int64());
-	buf.Zero();
-	buf.Format(KPerfMultiplyFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-
-//Square
-	diff  = 0;
-	iterations = 0;
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		mont->SquareL(iA);
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	time = end.MicroSecondsFrom(start);
-	rate = I64REAL(time.Int64()) / iterations;
-    rtime = I64REAL(time.Int64());
-	buf.Zero();
-	buf.Format(KPerfSquareFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-
-//Exponentiate
-	diff  = 0;
-	iterations = 0;
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		mont->ExponentiateL(iA, iB);
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	time = end.MicroSecondsFrom(start);
-	rate = I64REAL(time.Int64()) / iterations;
-    rtime = I64REAL(time.Int64());
-
-	buf.Zero();
-	buf.Format(KPerfExpFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-
-//Reduce
-	RInteger top = iA.TimesL(iB);
-	CleanupStack::PushL(top);
-
-	diff  = 0;
-	iterations = 0;
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		mont->ReduceL(top);
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	CleanupStack::PopAndDestroy(&top);
-
-	time = end.MicroSecondsFrom(start);
-	rate = I64REAL(time.Int64()) / iterations;
-    rtime = I64REAL(time.Int64());
-	buf.Zero();
-	buf.Format(KPerfReduceFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-	CleanupStack::PopAndDestroy(mont);
-	CleanupStack::PopAndDestroy(realbuf);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryperformance.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TMONTGOMERYPERFORMANCE_H__
-#define __TMONTGOMERYPERFORMANCE_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <bigint.h>
-
-class CMontgomeryPerformance : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CMontgomeryPerformance();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CMontgomeryPerformance(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	TUint iIterations;
-	RInteger iModulus;
-	RInteger iA;
-	RInteger iB;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,158 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tmontgomeryvector.h"
-#include "t_input.h"
-#include <bigint.h>
-#include "../../source/bigint/mont.h"
-
-CTestAction* CMontgomeryVector::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CMontgomeryVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CMontgomeryVector::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CMontgomeryVector* self = new(ELeave) CMontgomeryVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CMontgomeryVector::~CMontgomeryVector()
-	{
-	delete iBody;
-	delete iA;
-	delete iB;
-	delete iModulus;
-	delete iAns;
-	}
-
-CMontgomeryVector::CMontgomeryVector(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CMontgomeryVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iA = Input::ParseElementHexL(*iBody, _L8("<a>"));
-	iB = Input::ParseElementHexL(*iBody, _L8("<b>"));
-	iModulus = Input::ParseElementHexL(*iBody, _L8("<modulus>"));
-	iAns = Input::ParseElementHexL(*iBody, _L8("<ans>"));
-	TPtrC8 op = Input::ParseElement(*iBody, _L8("<op>"));
-	if( op == _L8("multiply") )
-		{
-		iOp = EMultiply;
-		}
-	else if( op == _L8("square") )
-		{
-		iOp = ESquare;
-		}
-	else if( op == _L8("reduce") )
-		{
-		iOp = EReduce;
-		}
-	else if( op == _L8("exponentiate") )
-		{
-		iOp = EExponentiate;
-		}
-	else 
-		{
-		User::Panic(_L("tmontgomeryvector"), 1);
-		}
-	}
-
-void CMontgomeryVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CMontgomeryVector::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CMontgomeryVector::DoReportAction(void)
-	{
-	}
-
-void CMontgomeryVector::DoCheckResult(TInt)
-	{
-	}
-
-void CMontgomeryVector::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = ETrue;
-
- 	RInteger a = RInteger::NewL(*iA);
-	CleanupStack::PushL(a);
-	RInteger b = RInteger::NewL(*iB);
-	CleanupStack::PushL(b);
-	RInteger modulus = RInteger::NewL(*iModulus);
-	CleanupStack::PushL(modulus);
-	RInteger ans = RInteger::NewL(*iAns);
-	CleanupStack::PushL(ans);
-	CMontgomeryStructure* mont = CMontgomeryStructure::NewLC(modulus);
-	//we don't own out at any point, it remains the propery of mont
-	const TInteger* out = 0;
-	switch(iOp)
-		{
-		case EMultiply:
-			out = &(mont->MultiplyL(a, b));
-			break;
-		case ESquare:
-			out = &(mont->SquareL(a));
-			break;
-		case EReduce:
-			out = &(mont->ReduceL(a));
-			break;
-		case EExponentiate:
-			out = &(mont->ExponentiateL(a, b));
-			break;
-		default:
-			User::Panic(_L("tbasicmathsvector"), 2);
-			break;
-		}
-
-	if( *out != ans )
-		{
-		iResult = EFalse;
-		}
-	CleanupStack::PopAndDestroy(mont);
-	CleanupStack::PopAndDestroy(4); //ans, modulus, b,a 
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tmontgomeryvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TMONTGOMERYVECTOR_H__
-#define __TMONTGOMERYVECTOR_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CMontgomeryVector : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CMontgomeryVector();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CMontgomeryVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iA;
-	HBufC8* iB;
-	HBufC8* iModulus;
-	HBufC8* iAns;
-	enum TOperationType {EMultiply, ESquare, EReduce, EExponentiate};
-	TOperationType iOp;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tprimegen.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,103 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tprimegen.h"
-#include "t_input.h"
-#include <bigint.h>
-#include "tutils.h"
-#include <random.h>
-
-CTestAction* CPrimeGen::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPrimeGen::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPrimeGen::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CPrimeGen* self = new(ELeave) CPrimeGen(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPrimeGen::~CPrimeGen()
-	{
-	delete iBody;
-	}
-
-CPrimeGen::CPrimeGen(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CPrimeGen::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iBits = Input::ParseIntElement(*iBody, _L8("<bits>"), _L8("</bits>"));
-	}
-
-void CPrimeGen::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPrimeGen::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPrimeGen::DoReportAction(void)
-	{
-	}
-
-void CPrimeGen::DoCheckResult(TInt)
-	{
-	}
-
-void CPrimeGen::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-
-	RInteger prime = RInteger::NewPrimeL(iBits, TInteger::ETopBitSet);
-	CleanupStack::PushL(prime);
-	if(prime.BitCount() == iBits && prime.IsPrimeL())
-		{
-		iResult = ETrue;
-		}
-
-	CleanupStack::PopAndDestroy(&prime);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tprimegen.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPRIMEGEN_H__
-#define __TPRIMEGEN_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <bigint.h>
-
-class CPrimeGen : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPrimeGen();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CPrimeGen(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	TUint iIterations;
-	TUint iBits;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tprimegenperformance.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,127 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tprimegenperformance.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <bigint.h>
-
-_LIT(KPrimeGenFormat, "\tPrime Generation Time: %f us/iteration (%i iterations in %f us)\r\n");
-
-const TUint KMaxIterations=100;
-
-CTestAction* CPrimeGenPerformance::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPrimeGenPerformance::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPrimeGenPerformance::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CPrimeGenPerformance* self = new(ELeave) CPrimeGenPerformance(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPrimeGenPerformance::~CPrimeGenPerformance()
-	{
-	delete iBody;
-	}
-
-CPrimeGenPerformance::CPrimeGenPerformance(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CPrimeGenPerformance::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iBits = Input::ParseIntElement(*iBody, _L8("<bits>"), _L8("</bits>"));
-	iIterations = Input::ParseIntElement(*iBody, _L8("<iterations>"), _L8("</iterations>"));	
-	__ASSERT_ALWAYS(iIterations < KMaxIterations, User::Panic(_L("Iterations too large"), 1));
-	}
-
-void CPrimeGenPerformance::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPrimeGenPerformance::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPrimeGenPerformance::DoReportAction(void)
-	{
-	}
-
-void CPrimeGenPerformance::DoCheckResult(TInt)
-	{
-	}
-
-void CPrimeGenPerformance::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds iterationTime(iIterations);
-	TUint iterations=0;
-	
-	RInteger prime;
-
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		prime = RInteger::NewPrimeL(iBits, TInteger::ETopBitSet);
-		prime.Close();
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	TTimeIntervalMicroSeconds time = end.MicroSecondsFrom(start);
-	TReal rate = I64REAL(time.Int64()) / iterations;
-    TReal rtime = I64REAL(time.Int64());
-	HBufC* realbuf = HBufC::NewLC(128);
-	TPtr buf = realbuf->Des();
-
-	buf.Format(KPrimeGenFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-	CleanupStack::PopAndDestroy(realbuf);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	iResult = ETrue;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tprimegenperformance.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPRIMEGENPERFORMANCE_H__
-#define __TPRIMEGENPERFORMANCE_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <bigint.h>
-
-class CPrimeGenPerformance : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPrimeGenPerformance();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CPrimeGenPerformance(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	TUint iIterations;
-	TUint iBits;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tprimegenvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,142 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tprimeproblem.cpp
-*
-*/
-
-
-#include <bigint.h>
-#include <random.h>
-#include "tprimegenvector.h"
-#include "t_input.h"
-#include "t_output.h"
-#include "tutils.h"
-#include "../../source/bigint/mont.h"
-
-CTestAction* CPrimeGenVector::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPrimeGenVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPrimeGenVector::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CPrimeGenVector* self = new(ELeave) CPrimeGenVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPrimeGenVector::~CPrimeGenVector()
-	{
-	delete iBody;
-	delete iRandomDes;
-	delete iPrimeDes;
-	iRandom.Close();
-	iPrime.Close();
-	}
-
-CPrimeGenVector::CPrimeGenVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-	: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CPrimeGenVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iBits = Input::ParseIntElement(*iBody, _L8("<bits>"), _L8("</bits>"));
-	iRandomDes = Input::ParseElementHexL(*iBody, _L8("<random>"));
-	iPrimeDes = Input::ParseElementHexL(*iBody, _L8("<prime>"));
-	}
-
-void CPrimeGenVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	iRandom = RInteger::NewL(*iRandomDes);
-	iPrime = RInteger::NewL(*iPrimeDes);
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPrimeGenVector::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPrimeGenVector::DoReportAction(void)
-	{
-	}
-
-void CPrimeGenVector::DoCheckResult(TInt)
-	{
-	iResult = (iResult && iExpectedResult) || (!iResult && !iExpectedResult);
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-void CPrimeGenVector::PerformAction(TRequestStatus& aStatus)
-	{
-	TRAPD(res, PerformActionL());
-	__ASSERT_ALWAYS(!res, User::Panic(_L("CPrimeGenVector::PerformAction"), res));
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
-void CPrimeGenVector::PerformActionL()
-	{
-	__UHEAP_MARK;
-	
-	iResult = EFalse;;
-
-	//Returned number should be the next prime after our initial "random" number
-
-	//This CRandomSetSource stuff is a little dodgy as:
-	// 1) it has no NewL's with is fine as long as it doesn't allocate memory
-	// 2) more importantly, the prime generation routines use random numbers to
-	// determine whether or not the numbers it generates are prime.
-	// Since CRandomSetSource has already exhausted its given list of "random"
-	// numbers it returns 0's for use with anything else that calls it.  It
-	// makes the primality testing a little bogus if you were using it for real
-	// things, but the test vectors that are there have already been verified
-	// and are known to be prime.
-	CRandomSetSource* incrementingRandom = new(ELeave)CRandomSetSource(*iRandomDes);
-	SetThreadRandomLC(incrementingRandom);
-
-	RInteger prime = RInteger::NewPrimeL(iBits);
-
-	if(prime == iPrime)
-		{
-		iResult = ETrue;
-		}
-	prime.Close();
-
-	CleanupStack::PopAndDestroy(1); //SetThreadRandomLC
-
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tprimegenvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tprimeproblem.h
-*
-*/
-
-
-#ifndef __TPRIMEPROBLEM_H__
-#define __TPRIMEPROBLEM_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include "../../inc/bigint.h"
-
-class CPrimeGenVector : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPrimeGenVector();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	void PerformActionL(void);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CPrimeGenVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	TUint iBits;
-	HBufC8* iBody;
-	HBufC8* iRandomDes;
-	HBufC8* iPrimeDes;
-	RInteger iRandom;
-	RInteger iPrime;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tprimevector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tprimevector.h"
-#include "t_input.h"
-#include <bigint.h>
-
-CTestAction* CPrimeVector::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPrimeVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPrimeVector::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CPrimeVector* self = new(ELeave) CPrimeVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPrimeVector::~CPrimeVector()
-	{
-	delete iBody;
-	delete iPrime;
-	}
-
-CPrimeVector::CPrimeVector(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CPrimeVector::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	iPrime = Input::ParseElementHexL(*iBody, _L8("<prime>"));
-	}
-
-void CPrimeVector::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPrimeVector::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPrimeVector::DoReportAction(void)
-	{
-	}
-
-void CPrimeVector::DoCheckResult(TInt /*aError*/)
-	{
-	iResult = (iResult && iExpectedResult) || (!iResult && !iExpectedResult);
-	if (iResult)
-		iConsole.Printf(_L("."));
-	else
-		iConsole.Printf(_L("X"));
-	}
-
-
-void CPrimeVector::PerformAction(TRequestStatus& aStatus)
-	{
-	PerformActionL();
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
-void CPrimeVector::PerformActionL(void)
-	{
-	__UHEAP_MARK;
-	iResult = ETrue;
-
-	RInteger prime = RInteger::NewL(*iPrime);
-	CleanupStack::PushL(prime);
-	iResult = prime.IsPrimeL();
-
-	CleanupStack::PopAndDestroy(&prime); 
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tprimevector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPRIMEVECTOR_H__
-#define __TPRIMEVECTOR_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CPrimeVector : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPrimeVector();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	void PerformActionL(void);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CPrimeVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iPrime;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tprimevectorperformance.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,127 +0,0 @@
-/*
-* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tprimevectorperformance.h"
-#include "t_input.h"
-#include "t_output.h"
-#include <bigint.h>
-
-_LIT(KPrimeVectorFormat, "\tPrime Vector Primality Test Time: %f us/iteration (%i iterations in %f us)\r\n");
-
-CTestAction* CPrimeVectorPerformance::NewL(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPrimeVectorPerformance::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPrimeVectorPerformance::NewLC(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-	{
-	CPrimeVectorPerformance* self = new(ELeave) CPrimeVectorPerformance(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPrimeVectorPerformance::~CPrimeVectorPerformance()
-	{
-	delete iBody;
-	}
-
-CPrimeVectorPerformance::CPrimeVectorPerformance(RFs& aFs, CConsoleBase& aConsole, 
-	Output& aOut) : CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CPrimeVectorPerformance::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-
-	HBufC8* buf = Input::ParseElementHexL(*iBody, _L8("<prime>"));
-	CleanupStack::PushL(buf);
-	iPrime = RInteger::NewL(*buf);
-	CleanupStack::PopAndDestroy(buf);
-	iIterations = Input::ParseIntElement(*iBody, _L8("<iterations>"), _L8("</iterations>"));	
-	}
-
-void CPrimeVectorPerformance::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CPrimeVectorPerformance::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CPrimeVectorPerformance::DoReportAction(void)
-	{
-	}
-
-void CPrimeVectorPerformance::DoCheckResult(TInt)
-	{
-	}
-
-void CPrimeVectorPerformance::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	TTime start, end;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds iterationTime(iIterations);
-	TUint iterations = 0;	
-	
-	iResult = ETrue;
-
-	start.UniversalTime();
-	while (diff < iterationTime)
-		{
-		iResult = iPrime.IsPrimeL();
-		if(!iResult)
-			break;
-		iterations++;
-		end.UniversalTime();
-		end.SecondsFrom(start, diff);
-		}
-	end.UniversalTime();
-
-	TTimeIntervalMicroSeconds time = end.MicroSecondsFrom(start);
-	TReal rate = I64REAL(time.Int64()) / iterations;
-	TReal rtime = I64REAL(time.Int64());
-
-	HBufC* realbuf = HBufC::NewLC(128);
-	TPtr buf = realbuf->Des();
-	buf.Format(KPrimeVectorFormat, rate, iterations, rtime);
-	iOut.writeString(buf);
-	iConsole.Printf(_L("."));
-	CleanupStack::PopAndDestroy(realbuf);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
--- a/crypto/weakcrypto/test/tbigint/tprimevectorperformance.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPRIMEVECTORPERFORMANCE_H__
-#define __TPRIMEVECTORPERFORMANCE_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <bigint.h>
-
-class CPrimeVectorPerformance : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPrimeVectorPerformance();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CPrimeVectorPerformance(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	TUint iIterations;
-	RInteger iPrime;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tbigint/tutils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tutils.h"
-#include <bigint.h>
-#include "t_output.h"
-
-void Utils::DumpInteger(Output& aOut, const TDesC& aDesc, 
-	const RInteger& aThat)
-	{
-	aOut.writeString(aDesc);
-	HBufC8* buf = aThat.BufferLC();
-	aOut.writeOctetString(*buf);
-	aOut.writeNewLine();
-	CleanupStack::PopAndDestroy(buf);
-	}
-
-
-/* CRandomSetSource */
-CRandomSetSource::CRandomSetSource(const TDesC8& aSource)
-    {
-	SetSource(aSource);
-    }
-
-void CRandomSetSource::GenerateBytesL(TDes8& aDest)
-    {
-	TInt i=0;
-	//Reverse the string by bytes up to the point of the end of the given string
-	//of "random" bytes.
-    for (i=0; iCounter >= 0 && i< aDest.Length(); ++i,--iCounter)
-        {
-        aDest[i] = iValue[iCounter];
-        }
-	//Then fill the remaining (if any) bytes in aDest with 0's.  This is all to
-	//allow the stuff to work with bigint style integers; we're writing straight
-	//into a RInteger.Ptr() here
-	for(;i<aDest.Length(); ++i)
-		{
-        aDest[i] = 0x00;
-		}
-    }
-
-void CRandomSetSource::SetSource(const TDesC8& aSource)
-	{
-	iValue.Set(aSource);
-	Reset();
-	}
-
-void CRandomSetSource::Reset(void) 
-	{
-	iCounter = iValue.Length() - 1;
-	}
--- a/crypto/weakcrypto/test/tbigint/tutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TUTILS_H__
-#define __TUTILS_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <random.h>
-
-class RInteger;
-class Output;
-
-class Utils 
-	{
-public:
-	static void DumpInteger(Output& aOut, const TDesC& aDesc, 
-		const RInteger& aThat);
-	};
-
-class CRandomSetSource : public CRandom
-	{
-public:
-	CRandomSetSource(const TDesC8& aSource);
-	virtual void GenerateBytesL(TDes8& aDest);
-	void SetSource(const TDesC8& aSource);
-	void Reset(void);
-
-private:
-	TPtrC8 iValue;
-	TInt iCounter;
-	};
-
-#endif
--- a/crypto/weakcrypto/test/thash/hashtestutils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,195 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Mostly obsolete code to manage hash tests
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "hashtestutils.h"
-
-
-CTestData* CTestData::NewL(const TDesC& aFilename)
-
-	{
-	CTestData* self;
-	self=new (ELeave) CTestData;
-	CleanupStack::PushL(self);
-	self->ConstructL(aFilename);
-	CleanupStack::Pop();		// self
-	return self;
-	}
-
-CTestData::CTestData(void):CBase()
-
-	{
-	}
-
-CTestData::~CTestData(void)
-
-	{
-	delete iFile;
-	delete iLine;
-	}
-
-void CTestData::ConstructL(const TDesC& aFilename)
-
-	{
-	RFs fs;
-	RFile file;
-	CleanupClosePushL(fs);
-	User::LeaveIfError(fs.Connect());
-	TDriveUnit sysDrive(fs.GetSystemDrive());
-	TDriveName driveName(sysDrive.Name());
-	TBuf<24> filePath (driveName);
-	filePath.Append(_L("\\thash\\"));
-	User::LeaveIfError(fs.SetSessionPath(filePath));
-	CleanupClosePushL(file);
-	User::LeaveIfError(file.Open(fs,aFilename,EFileShareAny|EFileRead));
-	// read into iFile
-	TInt size=0;
-	file.Size(size);
-	iFile=HBufC8::NewMaxL(size);
-	TPtr8 ptr=iFile->Des();
-	User::LeaveIfError(file.Read(ptr));
-	CleanupStack::PopAndDestroy(2, &fs);
-	iCurrentPlace=0;
-	iLine=HBufC8::NewMaxL(2000);
-	}
-	
-CTestData::TType CTestData::Type(void)
-
-	{
-	TPtr8 ptr=iLine->Des();
-	if (iCurrentPlace>=iFile->Length())
-		{
-		return EFinished;
-		}
-	TInt8 ch=(*iFile)[iCurrentPlace++];
-	ptr.SetLength(0);
-	while ((ch!='\r')&&(ch!='\n')&&(iCurrentPlace<=iFile->Length()))
-		{
-		ptr.Append(ch);
-		ch=(*iFile)[iCurrentPlace++];
-		}
-	if ((iCurrentPlace==iFile->Length())||(iLine->Length()==0))
-		{
-		return EFinished;
-		}
-	if (((*iFile)[iCurrentPlace]=='\r')||((*iFile)[iCurrentPlace]=='\n'))
-		{
-		iCurrentPlace++;
-		}
-	if ((*iLine)[0]=='+')
-		{
-		switch ((*iLine)[1])
-			{
-		case 'M':				// Message
-			return EMessage;
-		case 'F':				// File Name
-			return EFileName;
-		case 'C':				// Comment
-			return Type();
-		default:
-			return EError;
-			}
-		}
-	return EData;
-	}
-
-HBufC8* CTestData::operator [] (TInt aIndex)
-
-	{
-	TInt i;
-	TInt count=0;
-	HBufC8* ret;
-	ret=HBufC8::New(4000);
-	for (i=0;(i<iLine->Length())&&(count<aIndex);i++)
-		{
-		if ((*iLine)[i]==' ')
-			{
-			count++;
-			}
-		}
-	if(ret != NULL)
-        	{
-	   	TPtr8 ptr=ret->Des();
-	   	for (;(i<iLine->Length()&&(*iLine)[i]!=' ');i++)
-			{
-			ptr.Append((*iLine)[i]);
-			}
-	   	}
-	return ret;
-	}
-
-HBufC* CTestData::Message(void)
-
-	{
-	HBufC* ret=HBufC::NewMax(iLine->Length()-3);
-	TPtrC8 ptr=iLine->Right(iLine->Length()-3);
-	if(ret != NULL)
-		{
-		TPtr dest=ret->Des();
-		dest.Copy(ptr);
-		}
-	return ret;
-	}
-
-
-CTestConsole* CTestConsole::NewL(CConsoleBase* aCon)
-	{
-	CTestConsole* self;
-	self=new (ELeave) CTestConsole;
-	self->iCon=aCon;
-	self->iFile=NULL;
-	return self;
-	}
-
-CTestConsole::CTestConsole(void):CConsoleBase()
-
-	{
-	}
-
-CTestConsole::~CTestConsole(void)
-
-	{
-	delete iCon;
-	if (iFile)
-		{
-		iFile->Close();
-		}
-	}
-
-void CTestConsole::Write(const TDesC16& aString)
-
-	{
-	iCon->Write(aString);
-	if (iFile)
-		{
-		TUint8 space[200];
-		TPtr8 ptr(space,200);
-		ptr.Copy(aString);
-		iFile->Write(ptr);
-		}
-	}
-
-void CTestConsole::SetLogFile(RFile* aFile)
-
-	{
-	iFile=aFile;
-	}
--- a/crypto/weakcrypto/test/thash/hashtestutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-
-#include <e32test.h>
-#include <hash.h>
-#include <f32file.h>
-
-//TBool gMD2Test=ETrue;
-//TBool gMD5Test=ETrue;
-//TBool gSHATest=ETrue;
-//TBool gSHA1Test=ETrue;
-//TBool gHMACTest=ETrue;
-//TBool gErrorTest=ETrue;
-//TBool gPerformanceTest=ETrue;
-//TBool gVectorTest=ETrue;
-//TBool gLogging=ETrue;
-//TBool gFunctionalityTest=ETrue;
-//TBool gBugs=ETrue;
-//TBool gFixed=ETrue;
-//TBool gUnfixed=EFalse;
-
-
-class CTestData:public CBase
-
-	{
-	public:
-		static CTestData* NewL(const TDesC& aFilename);
-		enum TType { EMessage, EData, EFinished,EFileName,EError=-1 } ;
-		TType Type(void);
-		HBufC* Message(void);
-		HBufC8* operator [] (TInt aIndex);
-		~CTestData(void);
-	private:
-		CTestData(void);
-		TInt iCurrentPlace;
-		void ConstructL(const TDesC& aFilename);
-		HBufC8* iLine;
-		HBufC8* iFile;
-	};
-
-
-class CTestConsole:public CConsoleBase
-
-	{
-	public:
-		static CTestConsole* NewL(CConsoleBase* aCon);
-		TInt Create(const TDesC16& aTitle,TSize aSize) {return iCon->Create(aTitle,aSize);};
-		void Read(TRequestStatus& aStatus) {iCon->Read(aStatus);};
-		void ReadCancel(void) {iCon->ReadCancel();};
-		void Write(const TDesC16& aString);
-		TPoint CursorPos(void) const {return iCon->CursorPos();};
-		void SetCursorPosAbs(const TPoint& aPos) {iCon->SetCursorPosAbs(aPos);};
-		void SetCursorPosRel(const TPoint& aPos) {iCon->SetCursorPosRel(aPos);};
-		void SetCursorHeight(TInt aHeight) {iCon->SetCursorHeight(aHeight);};
-		void SetTitle(const TDesC16& aTitle) {iCon->SetTitle(aTitle);};
-		void ClearScreen(void) {iCon->ClearScreen();};
-		void ClearToEndOfLine(void) {iCon->ClearToEndOfLine();};
-		TSize ScreenSize(void) const {return iCon->ScreenSize();};
-		TKeyCode KeyCode(void) const {return iCon->KeyCode();};
-		TUint KeyModifiers(void) const {return iCon->KeyModifiers();};
-		~CTestConsole(void);
-		void SetLogFile(RFile* aFile);
-	private:
-		CTestConsole(void);
-		CConsoleBase* iCon;
-		RFile* iFile;
-	};
-
--- a/crypto/weakcrypto/test/thash/testdata/448bit_data.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGH
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/512bit_data.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOP
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/512bitdata_largerkey.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOP
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/hmacmd2.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-+M HMAC-MD2 tests
-+C This file contains test vectors for the HMAC-MD2 algorithm...
-+C ABCDEFGHIJKLMNOPQRSTUVWXYZ CryptoSpiValidKey (Hash)
-4142434445464748494A4B4C4D4E4F505152535455565758595A 43727970746F53706956616C69644B6579 D842D3C72FCB0EABE31A5856F2544325
-+C NULL STRING CryptoSpiValidKey (Hash)
- 43727970746F53706956616C69644B6579 69D9BEA1F0C7BEE55E8A8051EB90FA55
-+C Large input data 154440 characters long
-+F md4_largedata2.txt 43727970746F53706956616C69644B6579 4A5889AADE3F67FF5C5D9769DBB6EE29
-+C Large input data 5940 characters long
-+F md4_largedata1.txt 43727970746F53706956616C69644B6579 33D94D4AA932B762E2567C3D02B38BDA
-+C 448 bit data
-+F 448bit_data.txt 43727970746F53706956616C69644B6579 0F49057262AD276E225183802245930B
-+C 512 bit data
-+F 512bit_data.txt 43727970746F53706956616C69644B6579 A1F2689F13BB17F6835D2A7B6D224A29
--- a/crypto/weakcrypto/test/thash/testdata/hmacmd4.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-+M HMAC-MD4 tests
-+C ABCDEFGHIJKLMNOPQRSTUVWXYZ CryptoSpiValidKey (Hash)
-4142434445464748494A4B4C4D4E4F505152535455565758595A 43727970746F53706956616C69644B6579 7FB0B665BCCC049E1A5404B73923E58E
-+C NULL STRING CryptoSpiValidKey (Hash)
- 43727970746F53706956616C69644B6579 DEF566560D78F6F382E2F5A54E430E2C
-+C a CryptoSpiValidKey (Hash)
-61 43727970746F53706956616C69644B6579 9EF7E0320FB96D97BFC18E486B62FC7C
-+C abc CryptoSpiValidKey (Hash)
-616263 43727970746F53706956616C69644B6579 F3D6886EF3738E73DF464759B1D30662
-+C message digest CryptoSpiValidKey (Hash)
-6D65737361676520646967657374 43727970746F53706956616C69644B6579 E1B150F74AA4EEDBC364B1A9A1BAC574
-+C abcdefghijklmnopqrstuvwxyz CryptoSpiValidKey (Hash)
-6162636465666768696A6B6C6D6E6F707172737475767778797A 43727970746F53706956616C69644B6579 2801DE91F21BB7EFE54EBE15C73489CB
-+C 12345678901234567890123456789012345678901234567890123456789012345678901234567890 CryptoSpiValidKey (Hash)
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 43727970746F53706956616C69644B6579 E1E7AA31970FA139B9DFBF9A304F434E
-+C The quick brown fox jumps over the lazy dog CryptoSpiValidKey (Hash)
-54686520717569636B2062726F776E20666F78206A756D7073206F76657220746865206C617A7920646F67 43727970746F53706956616C69644B6579 F6B3F13D4E262CD575FE9EABB993C0D7
-+C ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJK 59 byte string CryptoSpiValidKey (Hash)
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B 43727970746F53706956616C69644B6579 DAE8467D6ECF3CB3FBE57E91936EF7D6
-+C 9.) 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words) ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFG 
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F5041424344454647 43727970746F53706956616C69644B6579 9714B92D3B6B82FE863E63E908C38340
-+C 10.) 60 byte vector from openssl ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKL
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C 43727970746F53706956616C69644B6579 E6F36D7012F4CCA6C305DC9520A738EE
-+C 11.) 511 byte vector from openssl ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPA
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F5041 43727970746F53706956616C69644B6579 86233D9263AE6A03A298229A3AA03767
-+C Large input data 154440 characters long
-+F md4_largedata2.txt 43727970746F53706956616C69644B6579 DADD9DBD9C422FD0B8D334E3026DB1AA
-+C Large input data 5940 characters long
-+F md4_largedata1.txt 43727970746F53706956616C69644B6579 DAD83CF0B247E38DE0436EA18F399AA9
-+C 448 bit data
-+F 448bit_data.txt 43727970746F53706956616C69644B6579 12269C66F1DC7E3477AD093C3DC45036
-+C 512 bit data
-+F 512bit_data.txt 43727970746F53706956616C69644B6579 73C5EFEB799F6483BC966B45B8CB6BFC
-+C Larger than blocksize key
-+F 512bitdata_largerkey.txt 4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F5051 D2BCBC23182D961413CF224E086B5BD9
-+F largerthanblocksizedata_key.txt 4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F505152 EC232497D337A52A84CD8ED440BB8783
-+C Large input data 308880 characters long
-+F md4_largedata3.txt 43727970746F53706956616C69644B6579 974E7AE0B0EDA43BAB1EB2968640D56B
-
-
--- a/crypto/weakcrypto/test/thash/testdata/hmacmd5.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-+M HMAC-MD5 tests
-+C This file contains test vectors for the HMAC-MD5 algorithm...
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 9294727A3638BB1C13F48EF8158BFC9D
-+C 0000000000000000000000000000000000000000000000000000000000000000 0123456789ABCDEF132435475768798A9BACBDCEDF112233 E7068E5EF979B0BC871917375EC1B241771EA5C4
-+C 0123456789ABCDEF132435475768798A9BACBDCEDF112233 0123456789ABCDEF132435475768798A9BACBDCEDF112233 9858A7B8978C760324B603B13A3685B38BF4D21A
-+C 4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B B617318655057264E28BC0B6FB378C8EF146BE00
-+C 7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 EFFCDF6AE5EB2FA2D27416D5F184DF9C259A7C79
-+C DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 41414141414141414141414141414141414141414141414141414141414141414141414141414141 125D7342B9AC11CD91A39AF48AA17B4F63F175D3
--- a/crypto/weakcrypto/test/thash/testdata/hmacsha1.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-+M HMAC-SHA1 tests
-+C This file contains test vectors for the HMAC-SHA1 algorithm...
-+C 4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 9294727A3638BB1C13F48EF8158BFC9D
-0000000000000000000000000000000000000000000000000000000000000000 0123456789ABCDEF132435475768798A9BACBDCEDF112233 E7068E5EF979B0BC871917375EC1B241771EA5C4
-0123456789ABCDEF132435475768798A9BACBDCEDF112233 0123456789ABCDEF132435475768798A9BACBDCEDF112233 9858A7B8978C760324B603B13A3685B38BF4D21A
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B B617318655057264E28BC0B6FB378C8EF146BE00
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 EFFCDF6AE5EB2FA2D27416D5F184DF9C259A7C79
-+C DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 41414141414141414141414141414141414141414141414141414141414141414141414141414141 125D7342B9AC11CD91A39AF48AA17B4F63F175D3
--- a/crypto/weakcrypto/test/thash/testdata/hmacsha224.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-+M HMAC-SHA224 tests
-+C This file contains test vectors for the HMAC-SHA224 algorithm taken from RFC4231...
-+M Test Case 1
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 896FB1128ABBDF196832107CD49DF33F47B4B1169912BA4F53684B22   
-+M Test Case 2
-+C Test with a key shorter than the length of the HMAC output
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 A30E01098BC6DBBF45690F3A7E9E6D0F8BBEA2A39E6148008FD05E44
-+M Test Case 3
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 7FB3CB3588C6C1F6FFA9694D7D6AD2649365B0C1F65D69D1EC8333EA
-+M Test Case 4
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD 0102030405060708090A0B0C0D0E0F10111213141516171819 6C11506874013CAC6A2ABC1BB382627CEC6A90D86EFC012DE7AFEC5A
-+M Test Case 6
-+C Test with a key larger than 128 bytes (= block-size of SHA-384 and SHA-512)
-54657374205573696E67204C6172676572205468616E20426C6F636B2D53697A65204B6579202D2048617368204B6579204669727374 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 95E9A0DB962095ADAEBE9B2D6F0DBCE2D499F112F2D2B7273FA6870E
-+M Test Case 7
-+C Test with a key and data that is larger than 128 bytes (= block-size of SHA-384 and SHA-512).
-5468697320697320612074657374207573696E672061206C6172676572207468616E20626C6F636B2D73697A65206B657920616E642061206C6172676572207468616E20626C6F636B2D73697A6520646174612E20546865206B6579206E6565647320746F20626520686173686564206265666F7265206265696E6720757365642062792074686520484D414320616C676F726974686D2E AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 3A854166AC5D9F023F54D517D0B39DBD946770DB9C2B95C9F6F565D1
-
--- a/crypto/weakcrypto/test/thash/testdata/hmacsha256.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-+M HMAC-SHA256 tests
-+C This file contains test vectors for the HMAC-SHA256 algorithm taken from RFC4231...
-+M Test Case 1
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B B0344C61D8DB38535CA8AFCEAF0BF12B881DC200C9833DA726E9376C2E32CFF7 
-+M Test Case 2
-+C Test with a key shorter than the length of the HMAC output
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 5BDCC146BF60754E6A042426089575C75A003F089D2739839DEC58B964EC3843
-+M Test Case 3
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 773EA91E36800E46854DB8EBD09181A72959098B3EF8C122D9635514CED565FE
-+M Test Case 4
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD 0102030405060708090A0B0C0D0E0F10111213141516171819 82558A389A443C0EA4CC819899F2083A85F0FAA3E578F8077A2E3FF46729665B
-+M Test Case 6
-+C Test with a key larger than 128 bytes (= block-size of SHA-384 and SHA-512)
-54657374205573696E67204C6172676572205468616E20426C6F636B2D53697A65204B6579202D2048617368204B6579204669727374 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 60E431591EE0B67F0D8A26AACBF5B77F8E0BC6213728C5140546040F0EE37F54
-+M Test Case 7
-+C Test with a key and data that is larger than 128 bytes (= block-size of SHA-384 and SHA-512).
-5468697320697320612074657374207573696E672061206C6172676572207468616E20626C6F636B2D73697A65206B657920616E642061206C6172676572207468616E20626C6F636B2D73697A6520646174612E20546865206B6579206E6565647320746F20626520686173686564206265666F7265206265696E6720757365642062792074686520484D414320616C676F726974686D2E AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 9B09FFA71B942FCB27635FBCD5B0E944BFDC63644F0713938A7F51535C3A35E2
-
--- a/crypto/weakcrypto/test/thash/testdata/hmacsha384.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-+M HMAC-SHA384 tests
-+C This file contains test vectors for the HMAC-SHA384 algorithm taken from RFC4231...
-+M Test Case 1
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B AFD03944D84895626B0825F4AB46907F15F9DADBE4101EC682AA034C7CEBC59CFAEA9EA9076EDE7F4AF152E8B2FA9CB6 
-+M Test Case 2
-+C Test with a key shorter than the length of the HMAC output
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 AF45D2E376484031617F78D2B58A6B1B9C7EF464F5A01B47E42EC3736322445E8E2240CA5E69E2C78B3239ECFAB21649
-+M Test Case 3
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 88062608D3E6AD8A0AA2ACE014C8A86F0AA635D947AC9FEBE83EF4E55966144B2A5AB39DC13814B94E3AB6E101A34F27
-+M Test Case 4
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD 0102030405060708090A0B0C0D0E0F10111213141516171819 3E8A69B7783C25851933AB6290AF6CA77A9981480850009CC5577C6E1F573B4E6801DD23C4A7D679CCF8A386C674CFFB
-+M Test Case 6
-+C Test with a key larger than 128 bytes (= block-size of SHA-384 and SHA-512)
-54657374205573696E67204C6172676572205468616E20426C6F636B2D53697A65204B6579202D2048617368204B6579204669727374 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 4ECE084485813E9088D2C63A041BC5B44F9EF1012A2B588F3CD11F05033AC4C60C2EF6AB4030FE8296248DF163F44952
-+M Test Case 7
-+C Test with a key and data that is larger than 128 bytes (= block-size of SHA-384 and SHA-512).
-5468697320697320612074657374207573696E672061206C6172676572207468616E20626C6F636B2D73697A65206B657920616E642061206C6172676572207468616E20626C6F636B2D73697A6520646174612E20546865206B6579206E6565647320746F20626520686173686564206265666F7265206265696E6720757365642062792074686520484D414320616C676F726974686D2E AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 6617178E941F020D351E2F254E8FD32C602420FEB0B8FB9ADCCEBB82461E99C5A678CC31E799176D3860E6110C46523E
-
--- a/crypto/weakcrypto/test/thash/testdata/hmacsha512.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-+M HMAC-SHA512 tests
-+C This file contains test vectors for the HMAC-SHA512 algorithm taken from RFC4231...
-+M Test Case 1
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 87AA7CDEA5EF619D4FF0B4241A1D6CB02379F4E2CE4EC2787AD0B30545E17CDEDAA833B7D6B8A702038B274EAEA3F4E4BE9D914EEB61F1702E696C203A126854
-+M Test Case 2
-+C Test with a key shorter than the length of the HMAC output
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 164B7A7BFCF819E2E395FBE73B56E0A387BD64222E831FD610270CD7EA2505549758BF75C05A994A6D034F65F8F0E6FDCAEAB1A34D4A6B4B636E070A38BCE737
-+M Test Case 3
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA FA73B0089D56A284EFB0F0756C890BE9B1B5DBDD8EE81A3655F83E33B2279D39BF3E848279A722C806B485A47E67C807B946A337BEE8942674278859E13292FB
-+M Test Case 4
-+C Test with a combined length of key and data that is larger than 64 bytes (= block-size of SHA-224 and SHA-256).
-CDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD 0102030405060708090A0B0C0D0E0F10111213141516171819 B0BA465637458C6990E5A8C5F61D4AF7E576D97FF94B872DE76F8050361EE3DBA91CA5C11AA25EB4D679275CC5788063A5F19741120C4F2DE2ADEBEB10A298DD
-+M Test Case 6
-+C Test with a key larger than 128 bytes (= block-size of SHA-384 and SHA-512)
-54657374205573696E67204C6172676572205468616E20426C6F636B2D53697A65204B6579202D2048617368204B6579204669727374 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 80B24263C7C1A3EBB71493C1DD7BE8B49B46D1F41B4AEEC1121B013783F8F3526B56D037E05F2598BD0FD2215D6A1E5295E64F73F63F0AEC8B915A985D786598
-+M Test Case 7
-+C Test with a key and data that is larger than 128 bytes (= block-size of SHA-384 and SHA-512).
-5468697320697320612074657374207573696E672061206C6172676572207468616E20626C6F636B2D73697A65206B657920616E642061206C6172676572207468616E20626C6F636B2D73697A6520646174612E20546865206B6579206E6565647320746F20626520686173686564206265666F7265206265696E6720757365642062792074686520484D414320616C676F726974686D2E AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA E37B6A775DC87DBAA4DFA9F96E5E3FFDDEBD71F8867289865DF5A32D20CDC944B6022CAC3C4982B10D5EEB55C3E4DE15134676FB6DE0446065C97440FA8C6A58
-
--- a/crypto/weakcrypto/test/thash/testdata/largerthanblocksizedata_key.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPQ
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/md2.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-+M MD2 tests
-+C This file contains test vectors for the MD2 algorithm...
-+M   RFC 1319 Test Vectors
-+C Null String
- 8350E5A3E24C153DF2275C9F80692773
-61 32EC01EC4A6DAC72C0AB96FB34C0B5D1
-616263 DA853B0D3F88D99B30283A69E6DED6BB
-6D65737361676520646967657374 AB4F496BFB2A530B219FF33031FE06B0
-6162636465666768696A6B6C6D6E6F707172737475767778797A 4E8DDFF3650292AB5A4108C3AA47940B
-4142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A30313233343536373839 DA33DEF2A42DF13975352846C30338CD
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 D5976F79D83D3A0DC9806C3C66F3EFD8
--- a/crypto/weakcrypto/test/thash/testdata/md4.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-+M MD4 tests
-+C This file contains test vectors for the MD4 algorithm...
-+M   RFC 1320 Test Vectors
-+C 1.) NULL STRING
- 31D6CFE0D16AE931B73C59D7E0C089C0
-+C 2.) a
-61 BDE52CB31DE33E46245E05FBDBD6FB24
-+C 3.) abc
-616263 A448017AAF21D8525FC10AE87AA6729D
-+C 4.) message digest
-6D65737361676520646967657374 D9130A8164549FE818874806E1C7014B
-+C 5.) abcdefghijklmnopqrstuvwxyz
-6162636465666768696A6B6C6D6E6F707172737475767778797A D79E1C308AA5BBCDEEA8ED63DF412DA9
-+C 6.) ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
-4142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A30313233343536373839 043F8582F241DB351CE627E153E7f0E4
-+C 7.) 12345678901234567890123456789012345678901234567890123456789012345678901234567890
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 E33B4DDC9C38F2199C3E7B164FCC0536
-+C 8.) The quick brown fox jumps over the lazy dog
-54686520717569636B2062726F776E20666F78206A756D7073206F76657220746865206C617A7920646F67 1BEE69A46BA811185C194762ABAEAE90
-+C 9.) ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJK 59 byte string
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B 022769E181681BCEE392A63CF43D406C
-+C 10.) 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words) ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFG 
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F5041424344454647 6FC27589384B60B306E6D90A25F2F16C
-+C 11.) 60 byte vector from openssl ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKL
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C 782C5CFC95A5FF24494DEB4D16955B76
-+C 12.) 511 byte vector from openssl ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPA
-4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4142434445464748494A4B4C4D4E4F504142434445464748494A4B4C4D4E4F5041 D0E0E84561A8E44DD7C90B38EF0FDB00
-+C 13.) Large input data 5940 characters long
-+F md4_largedata1.txt 86D7D14E5B8F791C13CD2EA68E93A0DD
-+C 14.) Large input data 154440 characters long
-+F md4_largedata2.txt A011C2E6CEC1F5FEB7BC509B7A4C9BDF
-+C 15.) 448 bits Data
-+F 448bit_data.txt 4EC433EA31B6890D8560565524330CB7
-+C 16.) 512 bits Data
-+F 512bit_data.txt 536AB127041F0682BE1ED65FA5FF4980
-+C 17.) Large input data 308880 characters long
-+F md4_largedata3.txt C44890952B176D19C6E91A08CCCF7AE8
-
-
-
--- a/crypto/weakcrypto/test/thash/testdata/md4_largedata1.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKL
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/md4_largedata2.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKL
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/md4_largedata3.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-ABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKLMNOPABCDEFGHIJKL
\ No newline at end of file
--- a/crypto/weakcrypto/test/thash/testdata/md5.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-+M MD5 tests
-+C This file contains test vectors for the MD5 algorithm...
-+M   RFC 1321 Test Vectors
-+C Null string
- D41D8CD98F00B204E9800998ECF8427E
-61 0CC175B9C0F1B6A831C399E269772661
-616263 900150983CD24FB0D6963F7D28E17F72
-6D65737361676520646967657374 F96B697D7CB7938D525A2F31AAF161D0
-6162636465666768696A6B6C6D6E6F707172737475767778797A C3FCD3D76192E4007DFB496CCA67E13B
-4142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A30313233343536373839 D174AB98D277D9F5A5611C2C9F419D9F
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 57EDF4A22BE3C955AC49DA2E2107B67A
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 5B4AE566F6DB38CF72FE880B9EEC0E5C
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 F489EC026D0E9E537A436298535B4608
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C 4316CED59BF47F88557A7C36BC7171EF
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 4604BC16A666ED135F090AD5AD9889D8
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E 0F4B368429643B629A3CABE6286AB8EF
--- a/crypto/weakcrypto/test/thash/testdata/sha1.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-+M SHA1 tests
-+C This file contains test vectors for the SHA1 algorithm...
-+C Null string
- DA39A3EE5E6B4B0D3255BFEF95601890AFD80709
-+M   FIPS 180-1: SHA1 vectors test
-+C Fips test 1 "abc"
-616263 A9993E364706816ABA3E25717850C26C9CD0D89D
-+C Fips test 2 -- 56 bytes and should cause overflow (append a single 1, then 63 zeros, then 448 more zeros, and finally 2 counter words)
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 84983E441C3BD26EBAAE4AA1F95129E5E54670F1
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 14BBF552816C92AE1EF7F85609C9AA5D3FA7D215
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E D0B9C250533E04D2756BB2DAE2A48C0A45D3C143
-+C 255 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 39EB3F491AF16F54DF9A0F89F63E1446CCCF9750
-+C 63 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 9FBBAD9F3B4AC98AD98678AC1794D1B3573BE9BB
-+C 64 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 E06ED9C943DBA7F1522158CBE24C28A4811D5BBE
-+C 65 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001 4E3BEEA28FBDA0091C7A40A3651AE6B7E8CC2D86
-+C 66 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102 89F58D609C0A66FABB171710A495B9CB5B3ADD23
-+C 67 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10010203 FB076BF3E1E4A42DABAE95F4A44A8135B2D8DF9F
-+C 68 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304 789629C809305BB3114233628DFA44735CFD8565
-+C 32 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 7338E14187A47EA6A262BFC4AAD74B7FE867E81E
-+C 31 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 931BA23E8451CC594A90532FFA5411B7AE8219FD
-+C 96 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 92DC32E8E33BB1BFBAC343184A6AB666AF99284C
-+C 95 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 9EDBB3B1BDABFA8386F83B492F2D1F5C242A160B
-+C 127 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F F7EE9B2055DB2868012C4C136F487532A94CCE36
-+C 7 byte vector from openssl
-01020304050607 8C1F28FC2F48C271D6C498F0F249CDDE365C54C5
-+C 8 byte vector from openssl
-0102030405060708 DD5783BCF1E9002BC00AD5B83A95ED6E4EBB4AD5
-+C 447 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 071BA8FA5F5D3F6660D4DC00257C48FEA8F13631
-+C 448 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 55BE7023312244FF7F150229A0A4D39732012ECF
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 853EB610E45E01CF1B7E83B1730BA8B0E716E76C
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C 177D7ECEB83F2F816D3226FAD5D81E7AD7214ACF
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 5FB531887DB584754707F568948C8DC254DAD5FA
--- a/crypto/weakcrypto/test/thash/testdata/sha224.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-+M SHA24 tests
-+C This file contains test vectors for the SHA-224 algorithm...
-+C Null string
- D14A028C2A3A2BC9476102BB288234C415A2B01F828EA62AC5B3E42F
-+M   FIPS 180-2: SHA224 vectors test
-+C Fips test 1 "abc"
-616263 23097D223405D8228642A477BDA255B32AADBCE4BDA0B3F7E36C9DA7
-+C Fips test 2 -- 56 bytes and should cause overflow (append a single 1, then 63 zeros, then 448 more zeros, and finally 2 counter words)
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 75388B16512776CC5DBA5DA1FD890150B0C6455CB4F58B1952522525
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 7FECC7FC1CB448357B64A229FBD995A64F4F51E7356807B4C100E441
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E E932F70ED1B86F026AA3F7E459A967E7AEEE167F196068433226D845
-+C 255 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 2AAA9C005DEF40985837E36D8553CA8D24113D62511A3381B2A2EC2D
-+C 63 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 2AA17A1E2ABE4BBD629F2B2E964561F3CC2D3B954D87536F1E08052E
-+C 64 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 2AFA58F734AFEAC835F8908C63C7F9240B938350818006EC3C8D55D2
-+C 65 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001 7F8D5567B4A550D8483734D26DC9946D73E9F987B866A0BFC13D5227
-+C 66 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102 221CF5332B9606D9C2214068B837CAF873F1FEFC3A0FB74A9BBE2968
-+C 67 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10010203 F9827EFA1BFE26F91CC86C82430310B5DE85FCB302B8E45521E3AD0B
-+C 68 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304 7246547F30B70D6AA9E453548C6182F302B150403694768CA166E26B
-+C 32 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 CCA29B7DADBEBAE3FF520477B6C2AC214AF4C01D4A5176D28D312603
-+C 31 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 7755BC0C7846744425B1EBF44E6D5C3ED406C3057AD9DF389FF1E49D
-+C 96 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 08984764F04619A015773E9585511DAD78253F5C79399E136CB5E2DE
-+C 95 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F AA8A11DB5DC7522D12C6C86078EBCFF288067E5A3506FDF84C9B5FCF
-+C 127 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 657BD5EDED4E077F994D5F3058A7DA39934BEAECB2D710FDCC23616F
-+C 7 byte vector from openssl
-01020304050607 21D973EC86ED65F8AC747F9282CD3AF5DF3AC6D4321FC9A30E2B6C2F
-+C 8 byte vector from openssl
-0102030405060708 B7F8F7CAF78B0783E0588667FABB17D2DF71FF4D6120FB59F87F7C61
-+C 447 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F C4116A2278DE1A63C8DDE55B13786C0573636055717562CF1F10673A
-+C 448 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 E746BD342CFD6679650CE4EA4D5BA9609F7814A102511C63F495B863
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 4D791F3C411E0ED4A592DD43228425D7736B061C8D361212A1CB2676
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C C006F2D44FF0E65C81AF942F7722BAEA79B0BFA38715D1FB20EAEB90
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 68605C91440B199BC284D14FA9320BDAF57341FCE85D2ABBF1367364
--- a/crypto/weakcrypto/test/thash/testdata/sha256.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-+M SHA256 tests
-+C This file contains test vectors for the SHA-256 algorithm...
-+C Null string
- E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855
-+M   FIPS 180-2: SHA256 vectors test
-+C Fips test 1 "abc"
-616263 BA7816BF8F01CFEA414140DE5DAE2223B00361A396177A9CB410FF61F20015AD
-+C Fips test 2 -- 56 bytes and should cause overflow (append a single 1, then 63 zeros, then 448 more zeros, and finally 2 counter words)
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 248D6A61D20638B8E5C026930C3E6039A33CE45964FF2167F6ECEDD419DB06C1
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 2B2EB4E1EA6B262817AEDFFC3DE6D28B5DC9D0CECA929321F491ECA6D4D93982
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E E1AECA5D9CED392A490FD686433A1F369742786665D32BA892FD1A77AD3DB17A
-+C 255 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 85C4E5CF45C5857691253FDA7DABD4EFE26532AAEED6FD54B9D6D068F88C0233
-+C 63 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 67E9F4A4B928561B25025ABB15413D6228B1A25FA05072C1E685257904C14F67
-+C 64 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 911B64766949A2E856F1B6C3501D5A6BF17DD50B6A78D6093AFC4252D2F71A18
-+C 65 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001 A7D09678A407BF9D4EB6A48A9554CA7CEEC9936D448A1468A0D41F0610BC7C6B
-+C 66 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102 ADADEB2AAC68B32B0998EA8801A37208EBBE7CE553374834141B4423FEE39830
-+C 67 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10010203 B0D4631545B8ABB75AAADCA36AB5D6E612A9F628305CA13858AA7D628F402DD3
-+C 68 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304 275357F93873AFFFF00C4A830433CA5137CC327DDFB15C46D6CD8A0A8A6E483C
-+C 32 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 489E98C889E35496DB0DD513734F69F598E4668313FC7C20C59C0D8900EE1F2B
-+C 31 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 648A7473E61884B71FAD5453206681706F480FCEBB750351C2055E17A214E00B
-+C 96 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 3CE8BD8D589E7E942E0AE3C83E1B52D5FEA4485E61DE2D5A1E806D7CF4CA4A06
-+C 95 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 564732781B33B2BAE644147BEA43F9BE11CA9E70B469BF67EDC52866A6C65A8C
-+C 127 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 71AB94529BB29E149D200DCBEF79BB39FF6B778F22B4CE21885EA17641D07F57
-+C 7 byte vector from openssl
-01020304050607 32BBE378A25091502B2BAF9F7258C19444E7A43EE4593B08030ACD790BD66E6A
-+C 8 byte vector from openssl
-0102030405060708 66840DDA154E8A113C31DD0AD32F7F3A366A80E8136979D8F5A101D3D29D6F72
-+C 447 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F DE2E1992F28016A15E901E9D732784641FED939B4E2AA7F689309E51840DBC7C
-+C 448 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 1072D17B79CA4E1D6AD59338D97B811E4567F01D4324E4BD8F3477358E59055C
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 0FA39F22A7D8C018A6630804C31777225B8EAB3FA285236A2B33B5711146537A
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C D65831A9101D91BC2F1F7930726C14E021C44436F0E1BBD5DB430588DFABBD0A
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 519FA7996098A163C9FFAC11FA68B411FC0E88389432023519E02C58F4DFEA6C
--- a/crypto/weakcrypto/test/thash/testdata/sha384.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-+M SHA384 tests
-+C This file contains test vectors for the SHA-384 algorithm...
-+C Null string
- 38B060A751AC96384CD9327EB1B1E36A21FDB71114BE07434C0CC7BF63F6E1DA274EDEBFE76F65FBD51AD2F14898B95B
-+M   FIPS 180-2: SHA384 vectors test
-+C Fips test 1 "abc"
-616263 CB00753F45A35E8BB5A03D699AC65007272C32AB0EDED1631A8B605A43FF5BED8086072BA1E7CC2358BAECA134C825A7
-+C Fips test 2 -- 56 bytes and should cause overflow (append a single 1, then 63 zeros, then 448 more zeros, and finally 2 counter words)
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 3391FDDDFC8DC7393707A65B1B4709397CF8B1D162AF05ABFE8F450DE5F36BC6B0455A8520BC4E6F5FE95B1FE3C8452B
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 775F58A372AB30AE53ECE9485656182B77B97D85167DAC4AFBE3A5F74C10FC96C9AD9F1AABB5890EEAC189BF15406EE2
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E D79A6615997CB1F48B91DB0037483FCE66EB9673C73438F2C5C4A1F8A845B03631F18AEF1AF3DFFC5D596C055E554EAC
-+C 255 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 149FA7BF652229D10B2B38EE8FCAFDA1DB84DDEAC60103659965F629FE47170F5A17A1992273A7F59774A9BCA751EDF2
-+C 63 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F B24E88C899339FDC8BA805B9E4A7837D89E3CC76894CEF8ABC94C8D407C7092AC03A91CCC67892C9DFF7526CD7310106
-+C 64 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 027C3B0C6E3D0E8244C6F31B1C47EA7924DF3610F41ED711C3A451BF54553D7ED3DF193C010217DB4A622A9C46AB3A47
-+C 65 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001 89806BAF1D311AB1D4E27D10083D9E5F36A8B7DE69AEFE4AD0AA1A6A9F084182C4F752D57C95296D2199D3B7F1612EFF
-+C 66 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102 5A56530B6B905E155591D7750BED9C1F4C76E94DEC3DA390B59A401ED54F945E4C4966042ED6652E8DF534F9355303FE
-+C 67 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10010203 2F401F1203EF7940613D74AA7156091C2416FA5115A98C5427EE02FFD65377CA40D8552E13EF80F9822DB4BAF301EA86
-+C 68 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304 607C1E3BFFFEF52DEE9A370FECD70E59C073041296BB0D87F7E63A536338B6EC81752116B1E042651FD591EAFDA00A09
-+C 32 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 97358AD13F2964AD09317A85E0E7B648E30966A25F0D59FA7F2810E4FD7606A5D1AE4FECCC3E0EB0E5B7042B1CECE6CD
-+C 31 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F B90F0C4F759A0ED668AB63FD0BCE1BE505FCA24DFD633850CC571DC680AE6BA98A0F8DFF4EE5D06FEFE6141524901995
-+C 96 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 47E10A8788549415330357AA1C1A7D68F6BBB3D7D5D2DB45D38167647EDBF9E8D3E7C46A7CFE1799A4E1C6080A807F69
-+C 95 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F AED55A4BDC6104EF013FFBA853F955A77C27413453ED1AE6CF21B18AEDA1ABEE263BCF4704A9AFC7C27A73D408C5C1A3
-+C 127 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F CCE83216A6117DBEA0BF300EEBD3DF2E8FBA3275F8CBAF99494FAABEF8CAFFC095CB3AC9E390678C5E7667B7CFC5FDAF
-+C 7 byte vector from openssl
-01020304050607 00E24F0CA4D38B9C517D8DC0EE45E0DA3B4113F01A38D668DAD2E215EB449BBC7E1D44BEA52ECB1F67C9C120802E0C8F
-+C 8 byte vector from openssl
-0102030405060708 9B110BBC741BB66AC09ED8E066E348990C5DBDB7406A2BDF8D77167364820E06B5C78B53F82015A7887786628374E6AE
-+C 447 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 7D44E0F3E1FCF7CE494B25FEECCA01DE0A5CD0CED0D734BF24C6E6F957EF2240A5027B5F3B8CC12A62237EFDF879D25F
-+C 448 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 2BF382E0AC5EA4103335E74D96A47CFC28230841399C0BB06242CA8FB2438E6857B9132F8144F018BB1B34C4A99DF235
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 46FF79A91D10EA103A0F8E59FC5A88270349371888628B5C1D109CEB53153E969F8C814EAE17F5C6AA31B24945853688
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C 98204E445F3915C63582F6956DF40D8A35126707AD30B03BF064A6FA559B07DBDE17604F4EB242F0C5E6F470890776BC
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 57E9EEE476C046BA9C8627E193EAA367C0CF1510F6CF223036DC5B46973942E356524486693515F0AC9F537AC47C5FE3
--- a/crypto/weakcrypto/test/thash/testdata/sha512.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-+M SHA512 tests
-+C This file contains test vectors for the SHA-512 algorithm...
-+C Null string
- CF83E1357EEFB8BDF1542850D66D8007D620E4050B5715DC83F4A921D36CE9CE47D0D13C5D85F2B0FF8318D2877EEC2F63B931BD47417A81A538327AF927DA3E
-+M   FIPS 180-2: SHA512 vectors test
-+C Fips test 1 "abc"
-616263 DDAF35A193617ABACC417349AE20413112E6FA4E89A97EA20A9EEEE64B55D39A2192992A274FC1A836BA3C23A3FEEBBD454D4423643CE80E2A9AC94FA54CA49F
-+C Fips test 2 -- 56 bytes and should cause overflow (append a single 1, then 63 zeros, then 448 more zeros, and finally 2 counter words)
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 204A8FC6DDA82F0A0CED7BEB8E08A41657C16EF468B228A8279BE331A703C33596FD15C13B1B07F9AA1D3BEA57789CA031AD85C7A71DD70354EC631238CA3445
-+C 511 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F BA48CB737173F1DCD520505120573206AA9BE5F7050A6F375BAC2BAB41E87450043C8ED44CFABEFE1BC5BBD06BC577ECA3F515070417E7FF3FBD59F9C2950155
-+C 510 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E 3C12C80774084C5545BA25580EDB2DE9E4B2042203467169F12204439C97BCFEBCEC118716663F0ACB985797E5B9F2607C3FCAD79842F5D99F1C9C537420EFC9
-+C 255 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 0D3B5DE03584F3AA1E43F86B0AF310691007E957DC70F8EF6B6F063C3B7EB5AD83AB2E69F5AEE40674E8CBF07740A98C33AF2BE7FF037E3DA76124877B7FF066
-+C 63 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F B1B56918155D95087E11B318ED8FB742E50B7FA16EF5A87FCCE538BAC8F7561E7084A7CC020E15D99FE49C364831EEFD011FE7C4CACB2E07286B57EA36878F50
-+C 64 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 CD76057D4A5AFB8F40887A95010C7EFCA720417E50FCA7B4D53F1DF6B4E179BD1A814C7CAF3FB7F2C515486A2AD59EEA21390D7716B8CA4B08FD2A9D8EC09612
-+C 65 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001 951BE1F906162E4598896247A56F2B88E6429AB6FF70CCE664E48B579B8D2028943855DF35DDF81AA7C758D649BB961FB1D913E4ACF5B84DFFEB7AD9510CBD59
-+C 66 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102 50CFF01EA788E02AF84DC8E76C34815985C9CCE179B483EBB80B1D6ED15E4B3A4BB1AA943404BC17FA628DBC1CF5EC89F588842E476A848959E851A9CA0399F9
-+C 67 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10010203 764D80DE5A1F95B675138C94668DE21DE27EC24DC0A4B5237C2FB577BC14713874D11F3AF373A257BFCD0BB9EC0D2574FA1E35F00B30D8F2D96522436BA036A1
-+C 68 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304 784F5883639F78DC933F83C98EEF561D60FD6044A0C78D179FCE9216CAA4156C6C1486DB722D5C545FC8375266C4AD6A1EE8966A6F124F80345B4E10F4C2BC09
-+C 32 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 AFF5CDBD4DC8471917E7DD1578802EA7A73592AA66D77011A04A63B537D98E4D2C84C890DE8162966AD3E276231D02913B2AA9A1AB01343D8F7833A7A107F306
-+C 31 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 2A4BC5ACEBD8B357BCBCD2C0B118DE6B7993DA3A7C404FAD1EF7BD0A5839DE5354A5797641C6B3F6F1282614A2FCF41FEDEC018FCAC02307133EB64C499776AA
-+C 96 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 5E38D3D36F2148FF9AB074E4A7FFE14144F73B1D1B7DF41463BE07F2008278B7BA09ECBFCD18D494716C0335A0BEC32F2CD6026E96C7BC451D5D7F1E638334E7
-+C 95 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 3EFCC0920A1089ADA7F62D4808C095AB543047D8A63B23C91C777F5E6FBBA5728917D8D2C49BB890232EA7F14B7572555F0B98107299DBF1D0B06BFCDF50A06E
-+C 127 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 77D5633CE4C8DD2D049C425A436472A35887610A54042C69919F7123912541A2B0E558481E5753545FF6D522CC8D6997771AD0B580F1810AD8B635AFF2669763
-+C 7 byte vector from openssl
-01020304050607 6F966C1FE9C45CE2E0FA3C190D312437A72BEF60898DD0EDE6617AFD8D7BB7F2F5033D02DD1D6560556305C3E8772ACA69968625B057186150FE5450D2A86A6C
-+C 8 byte vector from openssl
-0102030405060708 1818CC2ACD207880A07AFC360FD0DA87E51CCF17E7C604C4EB16BE5788322724C298E1FCC66EB293926993141EF0863C09EDA383188CF5DF49B910AACAC17EC5
-+C 447 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F 83F23BBE89CE2CD77A706D9F3FA142A6BFD28E53CE141DC1088BC96CCBEB61C07A9DECDAACCC297EE5DFB726BD0643ADE7CEB452FE0A2409FA8B436F0FDDEF72
-+C 448 byte vector from openssl 
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F10 13B3ACE42F99138CB8E9B00FC1373743D0A87E786FBAD000AD824B012BF9E4AFF55945D537E1ECC65DA3084F76C977514D50E4B4F5C700353C7E8F1AD3F75172
-+C 55 byte vector from openssl (shouldn't cause padding overflow, a single 0x80 is appended followed by the two counter words)
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F1001020304050607 079A3B6392605868FEA7455F4BC732BA2709B41BC024C60E095423C347CAAC56F3578B4F2E55E37CC648A96208F46F473D76F1D5896C087772E0238ED26AF2A4
-+C 60 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C 389C7D645CFEAA53C62A31D57EAF63AF7B9A249D6A77F0C8CB58570817305D7F4D0F01E7CB03ED132C71EF2E03CA99084311290C46EAA325165601B11DC9AF53
-+C 59 byte vector from openssl
-0102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B0C0D0E0F100102030405060708090A0B 64A34149CAEC3D3F01FC80AAE6571D6864B48DDC58A17D4F1F925133C08D2055BB87E141406D30466DB3D1B96A7FF0B5A876A79157C7406E83C27D3438DE96E9
--- a/crypto/weakcrypto/test/thash/thash.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1152 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
-*/
-
-#include "hashtestutils.h"
-#include <utf.h>
-
-TBool gInOOMTest=EFalse;
-
-RTest test(_L("Hash Tests"));
-
-const TInt KMaxHashSize = 64; // Hash size in bytes
-
-void Hex(HBufC8& aString)
-	{
-	TPtr8 ptr=aString.Des();
-	if (aString.Length()%2)
-		{
-		ptr.SetLength(0);
-		return;
-		}
-	TInt i;
-	for (i=0;i<aString.Length();i+=2)
-		{
-		TUint8 tmp;
-		tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-		tmp*=16;
-		tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-		ptr[i/2]=tmp;
-		}
-	ptr.SetLength(aString.Length()/2);
-	}
-
-void Spin()
-{//	Pointless function to print a dot
-	if (gInOOMTest)
-		{
-		static TInt count=0;
-		if (count++==100)
-			{
-			test.Printf(_L("o"));
-			count=0;
-			}
-		return;
-		}
-	test.Printf(_L("."));
-}
-
-void FunctionalityTestL(CMessageDigest* aMD)
-	{
-	if (!gInOOMTest)
-		test.Next(_L("Functionality test - original API"));
-
-	const TInt maxbuffersize=1024;
-	TInt buffersize;
-	TInt increment;
-	if (gInOOMTest)
-		{
-		buffersize=256;
-		increment=6;
-		}
-	else
-		{
-		buffersize=maxbuffersize;
-		increment=1;
-		}
-
-	TBool testSuccess = ETrue;
-	TInt i = 0;
-	TBuf8<maxbuffersize> buf(maxbuffersize);
-	for (;i<buffersize;i++)
-		{
-		buf[i]=(TUint8)i;
-		}
-	
-	for (i=0;i<buffersize;i+=increment)
-		{
-		TInt j;
-		Spin();
-		if (!gInOOMTest)
-			{
-			if (i>128)
-				{
-				increment=8;
-				}
-			}
-		else
-			{
-			if (i>24)
-				{
-				increment=32;
-				}
-			}
-
-		for (j=0;j<i;j+=16)
-			{
-			buf[0]=(TUint8)j;
-			TPtrC8 ptr=buf.Left(i);
-			TPtrC8 ptr2=buf.Left(j);
-			TPtrC8 ptr3=buf.Mid(j,i-j);
-
-			CMessageDigest* first=aMD->ReplicateL();
-			CleanupStack::PushL(first);
-			TPtrC8 firstFinal = first->Hash(ptr);
-			
-			aMD->Reset();
-			aMD->Update(ptr);
-			TPtrC8 aMDFinal = aMD->Final();
-
-			CMessageDigest* second=aMD->ReplicateL();
-			CleanupStack::PushL(second);
-			second->Hash(ptr2);
-			
-			CMessageDigest* third=second->CopyL();
-			CleanupStack::PushL(third);
-			
-			TPtrC8 secondFinal = second->Hash(ptr3);
-			
-			if (aMDFinal!=firstFinal)
-				{
-				testSuccess = EFalse;
-				}
-			
-			if (firstFinal!=secondFinal)
-				{
-				testSuccess = EFalse;
-				}
-
-			TPtrC8 thirdFinal = third->Hash(ptr3);
-			if (firstFinal!=thirdFinal)
-				{
-				testSuccess = EFalse;
-				}
-			CleanupStack::PopAndDestroy(3);		// first, second, third
-			}
-		}
-	
-///////////////////////////////////////////////////////////////
-//	Now test the new API - Update/Final functions	
-///////////////////////////////////////////////////////////////
-	if (!gInOOMTest)
-		test.Next(_L("\rFunctionality test - calls added API functions Final & Update"));
-
-	for (i=0;i<buffersize;i++)
-		{
-		buf[i]=(TUint8)i;
-		}
-	
-	for (i=0;i<buffersize;i+=increment)
-		{
-		TInt j;
-		Spin();
-		if (!gInOOMTest)
-			{
-			if (i>128)
-				{
-				increment=8;
-				}
-			}
-		else
-			{
-			if (i>24)
-				{
-				increment=32;
-				}
-			}
-		for (j=0;j<i;j+=16)
-			{
-			buf[0]=(TUint8)j;
-			TPtrC8 ptr=buf.Left(i);
-			TPtrC8 ptr2=buf.Left(j);
-			TPtrC8 ptr3=buf.Mid(j,i-j);
-			
-			CMessageDigest* first=aMD->ReplicateL();
-			CleanupStack::PushL(first);
-			first->Update(ptr);
-			
-			aMD->Update(ptr);
-
-			CMessageDigest* second=aMD->ReplicateL();
-			CleanupStack::PushL(second);			
-			second->Update(ptr2);
-			
-			CMessageDigest* third=second->CopyL();
-			CleanupStack::PushL(third);
-			third->Update(ptr3);
-			
-			second->Update(ptr3);
-			
-			TPtrC8 aMDFinal = aMD->Final();
-			TPtrC8 firstFinal = first->Final();
-			TPtrC8 secondFinal = second->Final();
-			TPtrC8 thirdFinal = third->Final();
-			
-			if (aMDFinal!=firstFinal)
-				{
-				testSuccess = EFalse;
-				}
-
-			if (firstFinal!=secondFinal)
-				{
-				testSuccess = EFalse;
-				}
-			
-			if (firstFinal!=thirdFinal)
-				{
-				testSuccess = EFalse;
-				}
-
-			CleanupStack::PopAndDestroy(3);		// first, second, third
-			}
-		}
-	test.Printf(_L("\r\n"));
-	
-	if (!testSuccess)
-		User::Leave(KErrGeneral);
-	}
-
-void VectorTestL(CMessageDigest* aMD,const TDesC& aFilename)
-	{
-	test.Next(_L("Test Vector tests - original API"));
-	TBool finished=EFalse;
-	TBool testSuccess = ETrue;
-	CTestData* data = CTestData::NewL(aFilename);
-	CleanupStack::PushL(data);
-
-	while (!finished)
-		{
-		switch (data->Type())
-			{
-		case CTestData::EMessage:
-			{
-			break;
-			}
-		//This is added to read large input data from the files.
-		case CTestData::EFileName:
-			{
-			CMessageDigest* md=aMD->ReplicateL();
-			CleanupStack::PushL(md);
-			
-			//get the filename from the .dat file
-			HBufC8* filename = (*data)[1];
-			User::LeaveIfNull(filename);
-			CleanupStack::PushL(filename);
-			
-			HBufC8* output= (*data)[2];
-			User::LeaveIfNull(output);
-			CleanupStack::PushL(output);
-			Hex(*output);
-			
-			HBufC16* inputFileName = CnvUtfConverter::ConvertToUnicodeFromUtf8L(*filename);
-			
-			RFs fs;
-			RFile file;
-			CleanupClosePushL(fs);
-			User::LeaveIfError(fs.Connect());
-			TDriveUnit sysDrive(fs.GetSystemDrive());
-			TBuf<24> filePath (sysDrive.Name());
-			filePath.Append(_L("\\thash\\"));
-			User::LeaveIfError(fs.SetSessionPath(filePath));
-			CleanupClosePushL(file);
-			User::LeaveIfError(file.Open(fs,*inputFileName,EFileShareAny|EFileRead));
-			// read into iFile
-			TInt size=0;
-			file.Size(size);
-			HBufC8* fileContents=HBufC8::NewMaxL(size);
-			
-			TPtr8 ptr=fileContents->Des();
-			User::LeaveIfError(file.Read(ptr));
-			CleanupStack::PopAndDestroy(2, &fs);
-			CleanupStack::PushL(fileContents);
-			delete inputFileName;
-			
-			TPtrC8 digest = md->Hash(*fileContents);
-			if (digest!=(*output))	
-				{
-				test.Next(_L("Digest Not Equal"));
-				testSuccess = EFalse;
-				}
-		
-			md->Reset();
-
-			TPtrC8 digest2 = md->Hash(*fileContents);
-			if (digest2!=(*output))	
-				{
-				testSuccess = EFalse;
-				}
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-			
-			TInt inputLen = fileContents->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = fileContents->Left(leftHandLen);
-				TPtrC8 right = fileContents->Right(inputLen - leftHandLen);
-
-				TPtrC8 halfDigest = md->Hash(left);
-				if (halfDigest.Size()==0)	//	Unnecessary test, but removes
-					User::Leave(KErrAbort);	//	a warning about not using halfDigest
-					
-				TPtrC8 wholeDigest = md->Hash(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}			
-				}
-				
-			md->Reset();
-			if (md->Final(*fileContents)!=(*output))
-				{
-				testSuccess = EFalse;
-				}
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-			inputLen = fileContents->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = fileContents->Left(leftHandLen);
-				TPtrC8 right = fileContents->Right(inputLen - leftHandLen);
-
-				md->Update(left);
-				TPtrC8 wholeDigest = md->Final(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}			
-				}
-			CleanupStack::PopAndDestroy(4, md);//md,filename,output,fileContents
-	
-			break;
-			}
-		case CTestData::EData:
-			{
-			CMessageDigest* md=aMD->ReplicateL();
-			CleanupStack::PushL(md);
-			
-			HBufC8* input = (*data)[0];
-			User::LeaveIfNull(input);
-			CleanupStack::PushL(input);
-			
-			HBufC8* output= (*data)[1];
-			User::LeaveIfNull(output);
-			CleanupStack::PushL(output);
-			Hex(*input);
-			Hex(*output);
-
-			TPtrC8 digest = md->Hash(*input);
-			if (digest!=(*output))	
-				{
-				testSuccess = EFalse;
-				}
-		
-			md->Reset();
-
-			TPtrC8 digest2 = md->Hash(*input);
-			if (digest2!=(*output))	
-				{
-				testSuccess = EFalse;
-				}
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-			
-			TInt inputLen = input->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = input->Left(leftHandLen);
-				TPtrC8 right = input->Right(inputLen - leftHandLen);
-
-				TPtrC8 halfDigest = md->Hash(left);
-				if (halfDigest.Size()==0)	//	Unnecessary test, but removes
-					User::Leave(KErrAbort);	//	a warning about not using halfDigest
-					
-				TPtrC8 wholeDigest = md->Hash(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}			
-				}
-
-			///////////////////////////////////////////////////////////////
-			//	Now test the new API - Update/Final functions	
-			///////////////////////////////////////////////////////////////
-			md->Reset();
-			if (md->Final(*input)!=(*output))
-				{
-				testSuccess = EFalse;
-				}
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-			inputLen = input->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = input->Left(leftHandLen);
-				TPtrC8 right = input->Right(inputLen - leftHandLen);
-
-				md->Update(left);
-				TPtrC8 wholeDigest = md->Final(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}			
-				}
-			CleanupStack::PopAndDestroy(3);
-			break;
-			}
-		case CTestData::EFinished:
-			finished=ETrue;
-			break;
-		default:
-			test.Printf(_L("Error in data file\r\n"));
-			break;
-			}
-		};
-
-	CleanupStack::PopAndDestroy(data);
-	
-	if (!testSuccess)
-		User::Leave(KErrGeneral);
-	}
-
-void OOMTestL(CMessageDigest* aMD)
-	{
-	test.Next(_L("Out of memory test"));
-	TInt err = KErrNoMemory;
-	TInt nextFailure=0;
-	gInOOMTest=ETrue;
-	while (err!=KErrNone)
-		{
-		__UHEAP_MARK;
-		__UHEAP_FAILNEXT(nextFailure);
-		TRAP(err,FunctionalityTestL(aMD));		
-		__UHEAP_MARKEND;
-		nextFailure++;
-		}
-	__UHEAP_RESET;
-	gInOOMTest=EFalse;
-	}
-
-void HMACVectorTestL(CMessageDigest* aMD,const TDesC& aFilename)
-	{
-	test.Next(_L("HMAC Test Vector tests"));
-	CTestData* data = CTestData::NewL(aFilename);
-	CleanupStack::PushL(data);
-
-	TBool finished=EFalse;
-	TBool testSuccess = ETrue;
-	
-	while (!finished)
-		{
-		switch (data->Type())
-			{
-		case CTestData::EMessage:
-			{
-			break;
-			}
-		case CTestData::EFileName:
-			{
-			//get the filename from the .dat file
-			HBufC8* filename = (*data)[1];
-			User::LeaveIfNull(filename);
-			CleanupStack::PushL(filename);
-			
-			HBufC8* key= (*data)[2];
-			User::LeaveIfNull(key);
-			CleanupStack::PushL(key);
-						
-			HBufC16* inputFileName = CnvUtfConverter::ConvertToUnicodeFromUtf8L(*filename);
-			
-			HBufC8* output = (*data)[3];
-			User::LeaveIfNull(output);
-			CleanupStack::PushL(output);
-			
-			Hex(*key);
-			Hex(*output);
-			
-			RFs fs;
-			RFile file;
-			CleanupClosePushL(fs);
-			User::LeaveIfError(fs.Connect());
-			TDriveUnit sysDrive(fs.GetSystemDrive());
-			TBuf<24> filePath (sysDrive.Name());
-			filePath.Append(_L("\\thash\\"));
-			User::LeaveIfError(fs.SetSessionPath(filePath));
-			CleanupClosePushL(file);
-			User::LeaveIfError(file.Open(fs,*inputFileName,EFileShareAny|EFileRead));
-			// read into iFile
-			TInt size=0;
-			file.Size(size);
-			HBufC8* fileContents=HBufC8::NewMaxL(size);
-			
-			TPtr8 ptr=fileContents->Des();
-			User::LeaveIfError(file.Read(ptr));
-			CleanupStack::PopAndDestroy(2, &fs);
-			CleanupStack::PushL(fileContents);
-			delete inputFileName;
-			
-			CMessageDigest* temp = aMD->ReplicateL();
-			CleanupStack::PushL(temp);
-			CMessageDigest* md = CHMAC::NewL(*key, temp);
-			CleanupStack::Pop(temp);	//	Now owned by md
-			
-			TPtrC8 digest = md->Hash(*fileContents);
-			if (digest!=(*output))
-				{
-				testSuccess = EFalse;
-				}
-						
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-		
-			TInt inputLen = fileContents->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = fileContents->Left(leftHandLen);
-				TPtrC8 right = fileContents->Right(inputLen - leftHandLen);
-
-				TPtrC8 halfDigest = md->Hash(left);
-				if (halfDigest.Size()==0)	//	Unnecessary test, but removes
-					User::Leave(KErrAbort);	//	a warning about not using halfDigest
-				TPtrC8 wholeDigest = md->Hash(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}
-				}
-
-			md->Reset();
-			TPtrC8 finalDigest = md->Final(*fileContents);
-			if (finalDigest!=(*output))
-				{
-				testSuccess = EFalse;
-				}			
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-		
-			inputLen = fileContents->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = fileContents->Left(leftHandLen);
-				TPtrC8 right = fileContents->Right(inputLen - leftHandLen);
-
-				md->Update(left);
-				TPtrC8 wholeDigest = md->Final(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}
-				}
-			delete md;
-			
-			CleanupStack::PopAndDestroy(4, filename);	//	filename, key, output,fileContents			
-			break;
-			}
-		case CTestData::EData:
-			{
-			HBufC8* input = (*data)[0];
-			User::LeaveIfNull(input);
-			CleanupStack::PushL(input);
-			
-			HBufC8* key = (*data)[1];
-			User::LeaveIfNull(key);
-			CleanupStack::PushL(key);
-			
-			HBufC8* output = (*data)[2];
-			User::LeaveIfNull(output);
-			CleanupStack::PushL(output);
-			
-			Hex(*input);
-			Hex(*key);
-			Hex(*output);
-			
-			CMessageDigest* temp = aMD->ReplicateL();
-			CleanupStack::PushL(temp);
-			CMessageDigest* md = CHMAC::NewL(*key, temp);
-			CleanupStack::Pop(temp);	//	Now owned by md
-			
-			TPtrC8 digest = md->Hash(*input);
-			if (digest!=(*output))
-				{
-				testSuccess = EFalse;
-				}
-						
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-		
-			TInt inputLen = input->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = input->Left(leftHandLen);
-				TPtrC8 right = input->Right(inputLen - leftHandLen);
-
-				TPtrC8 halfDigest = md->Hash(left);
-				if (halfDigest.Size()==0)	//	Unnecessary test, but removes
-					User::Leave(KErrAbort);	//	a warning about not using halfDigest
-				TPtrC8 wholeDigest = md->Hash(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}
-				}
-
-///////////////////////////////////////////////////////////////
-//	Now test the new API - Update/Final functions	
-///////////////////////////////////////////////////////////////
-			md->Reset();
-			TPtrC8 finalDigest = md->Final(*input);
-			if (finalDigest!=(*output))
-				{
-				testSuccess = EFalse;
-				}			
-
-		//	Now try this in 2 half sections (just a quick check)
-			md->Reset();
-		
-			inputLen = input->Length();
-			if (inputLen > 1)
-				{
-				TInt leftHandLen = inputLen/2;
-				TPtrC8 left = input->Left(leftHandLen);
-				TPtrC8 right = input->Right(inputLen - leftHandLen);
-
-				md->Update(left);
-				TPtrC8 wholeDigest = md->Final(right);
-				
-				if (wholeDigest!=(*output))	
-					{
-					testSuccess = EFalse;
-					}
-				}
-			delete md;
-			CleanupStack::PopAndDestroy(3);	//	input, key, output			
-			break;
-			}
-		case CTestData::EFinished:
-			finished=ETrue;
-			break;
-		default:
-			test.Printf(_L("Error in data file\r\n"));
-			break;
-			}
-		};
-
-	CleanupStack::PopAndDestroy(data);
-	
-	if (!testSuccess)
-		User::Leave(KErrGeneral);
-	}
-
-void HMACTestsL(CMessageDigest* aMD,const TDesC& aFilename, const TDesC& aHashType)
-	{
-	TBuf<0x40> formattable;
-	formattable.Format(_L("HMAC Tests for %S"), &aHashType);
-	test.Next(formattable);
-	CMessageDigest* temp = aMD->ReplicateL();
-	CleanupStack::PushL(temp);
-	CHMAC* hmac=CHMAC::NewL(_L8("aaaaaaaa"), temp);
-	CleanupStack::Pop(temp);
-	CleanupStack::PushL(hmac);
-	
-//	For each of the available digests
-	FunctionalityTestL(hmac);		//JCS for now
-	HMACVectorTestL(aMD,aFilename);	
-	OOMTestL(hmac);
-		
-	CleanupStack::PopAndDestroy(hmac);
-	}
-
-
-void MD2TestsL()
-	{
-	CMD2* md2;
-	md2=CMD2::NewL();
-	CleanupStack::PushL(md2);
-
-	FunctionalityTestL(md2);
-	
-	VectorTestL(md2,_L("md2.dat"));
-	
-	OOMTestL(md2);
-		
-	CleanupStack::PopAndDestroy(md2);
-
-// Problem reported by Jal Panvel, 17-12-1999.
-// Report by email, CSHA1::Hash() returning zero length descriptor
-// 
-// This was caused by failure to set internal hash descriptor length on setup, this
-// problem was present in all hashes except MD2 which set it up correctly.
-// Fixed 17-12-1999.
-	test.Next(_L("Fixed bugs Tests"));
-	md2 = CMD2::NewL();
-	CleanupStack::PushL(md2);
-	TPtrC8 data(_L8("The quick brown fox jumped over the lazy dog"));
-	TBuf8<128> hash;
-	hash = md2->Hash(data);
-	test(hash.Length() == md2->HashSize());
-	
-	HMACTestsL(md2,_L("hmacmd2.dat"), _L("md2"));
-	CleanupStack::PopAndDestroy(md2);
-	}
-
-void MD5TestsL()
-	{
-	CMD5* md5;
-	md5=CMD5::NewL();
-	CleanupStack::PushL(md5);
-
-	FunctionalityTestL(md5);
-	
-	VectorTestL(md5,_L("md5.dat"));
-	
-	OOMTestL(md5);
-	
-	CleanupStack::PopAndDestroy(md5);
-	test.Next(_L("Fixed bugs Tests"));
-// Problem reported by Jal Panvel, 17-12-1999.
-// Report by email, CSHA1::Hash() returning zero length descriptor
-// 
-// This was caused by failure to set internal hash descriptor length on setup, this
-// problem was present in all hashes except MD2 which set it up correctly.
-// Fixed 17-12-1999.
-	CMD5* md = CMD5::NewL();
-	CleanupStack::PushL(md);
-	TPtrC8 data(_L8("The quick brown fox jumped over the lazy dog"));
-	TBuf8<128> hash;
-	hash = md->Hash(data);
-	test(hash.Length() == md->HashSize());
-		
-	HMACTestsL(md5,_L("hmacmd5.dat"), _L("md5"));
-	CleanupStack::PopAndDestroy(md);
-
-	//	Test for DEF001510 "TLS - Receives Disconnect Indication during hands..."
-	CMD5* testHasher = CMD5::NewL();
-	CleanupStack::PushL(testHasher);
-	TPtrC8 client(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A4"));
-	TPtrC8 server(_L8("3E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-
-	HBufC8* clientData = client.AllocLC();
-	HBufC8* serverData = server.AllocLC();
-
-	Hex(*clientData);
-	Hex(*serverData);
-	
-	testHasher->Hash(*clientData);
-	testHasher->Hash(*serverData);
-	
-	TBuf8<32> md5buf;
-	md5buf.Copy(testHasher->Hash(TPtrC8(0,0)));
-
-	testHasher->Reset();
-
-//	Now hash in one chunk
-	TPtrC8 all(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A43E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-	HBufC8* allData = all.AllocLC();
-	Hex(*allData);
-
-	TBuf8<32> allbuf;
-	allbuf = testHasher->Hash(*allData);
-	test(allbuf.Compare(md5buf)==0);
-	CleanupStack::PopAndDestroy(4, testHasher);
-	}
-
-// Test for the MD4 Message Digest Algorithm API's	
-void MD4TestsL()
-	{
-	CMD4* md4;
-	md4=CMD4::NewL();
-	CleanupStack::PushL(md4);
-
-	FunctionalityTestL(md4);
-	
-	VectorTestL(md4,_L("md4.dat"));
-	
-	OOMTestL(md4);
-	
-	CleanupStack::PopAndDestroy(md4);
-   
-    //Test to check the Hash Size.
-	CMD4* md = CMD4::NewL();
-	CleanupStack::PushL(md);
-	TPtrC8 data(_L8("The quick brown fox jumped over the lazy dog"));
-	TBuf8<128> hash;
-	hash = md->Hash(data);
-	test(hash.Length() == md->HashSize());
-		
-	HMACTestsL(md,_L("hmacmd4.dat"), _L("md4"));
-	CleanupStack::PopAndDestroy(md);
-   
-    //Tests carried for other Message Digest Algorithms copied(SHA1 and MD5)
-    //Here Input Data is given in two parts and as a whole and the digest generated is compared.
-	CMD4* testHasher = CMD4::NewL();
-	CleanupStack::PushL(testHasher);
-	TPtrC8 client(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A4"));
-	TPtrC8 server(_L8("3E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-
-	HBufC8* clientData = client.AllocLC();
-	HBufC8* serverData = server.AllocLC();
-
-	Hex(*clientData);
-	Hex(*serverData);
-	
-	testHasher->Hash(*clientData);
-	testHasher->Hash(*serverData);
-	
-	TBuf8<32> md4buf;
-	md4buf.Copy(testHasher->Hash(TPtrC8(0,0)));
-
-	testHasher->Reset();
-
-//	Now hash in one chunk
-	TPtrC8 all(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A43E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-	HBufC8* allData = all.AllocLC();
-	Hex(*allData);
-
-	TBuf8<32> allbuf;
-	allbuf = testHasher->Hash(*allData);
-	test(allbuf.Compare(md4buf)==0);
-	CleanupStack::PopAndDestroy(4, testHasher);
-	
-	//Tests for the Factory Method CMessageDigestFactory
-	CMessageDigest* messageDigest = CMessageDigestFactory::NewDigestLC(CMessageDigest::EMD4);
-    VectorTestL(messageDigest,_L("md4.dat"));
-    CleanupStack::PopAndDestroy(messageDigest);
-    }
-
-
-void SHA1TestsL()
-	{
-	CSHA1* sha;
-	sha=CSHA1::NewL();
-	CleanupStack::PushL(sha);
-
-	VectorTestL(sha,_L("sha1.dat"));
-	
-	FunctionalityTestL(sha);
-	
-	OOMTestL(sha);
-		
-	CleanupStack::PopAndDestroy(sha);
-
-	test.Next(_L("Fixed bugs Tests"));	
-// Problem reported by Jal Panvel, 17-12-1999.
-// Report by email, CSHA1::Hash() returning zero length descriptor
-// 
-// This was caused by failure to set internal hash descriptor length on setup, this
-// problem was present in all hashes except MD2 which set it up correctly.
-// Fixed 17-12-1999.
-
-	sha=CSHA1::NewL();
-	CleanupStack::PushL(sha);
-	TPtrC8 data(_L8("The quick brown fox jumped over the lazy dog"));
-	TBuf8<128> hash;
-	hash = sha->Hash(data);
-	test(hash.Length() == sha->HashSize());
-	sha->Reset();
-	
-	//	Test for DEF001510 "TLS - Receives Disconnect Indication during hands..."
-	CSHA1* testHasher = CSHA1::NewL();
-	CleanupStack::PushL(testHasher);
-	TPtrC8 client(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A4"));
-	TPtrC8 server(_L8("3E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-
-	HBufC8* clientData = client.AllocLC();
-	HBufC8* serverData = server.AllocLC();
-
-	Hex(*clientData);
-	Hex(*serverData);
-
-//	Hash in 2 portions
-	TBuf8<32> clientbuf;
-	TBuf8<32> serverbuf;
-	clientbuf = testHasher->Hash(*clientData);
-	serverbuf = testHasher->Hash(*serverData);
-	
-	TBuf8<32> shabuf;
-	shabuf.Copy(testHasher->Hash(TPtrC8(0,0)));
-	testHasher->Reset();
-
-//	Now hash in one chunk
-	TPtrC8 all(_L8("D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A43E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8"));
-	HBufC8* allData = all.AllocLC();
-	Hex(*allData);
-
-	TBuf8<32> allbuf;
-	allbuf = testHasher->Hash(*allData);
-
-	test(allbuf.Compare(shabuf)==0);
-	CleanupStack::PopAndDestroy(4, testHasher);
-	
-	// Test hashing non-word aligned data - used to crash on arm
-	TPtrC8 nonAlignedData = data.Mid(1);
-	hash = sha->Final(nonAlignedData);
-	test(hash.Length() == sha->HashSize());
-	sha->Reset();
-	
-//	Test end
-	HMACTestsL(sha,_L("hmacsha1.dat"), _L("sha1"));
-	CleanupStack::PopAndDestroy();		// sha
-	}
-
-void ExecuteHashTestsL(CMessageDigest* aMD, const TDesC& aVector, const TDesC& aHMACVector, const TDesC& aHashType)
-	{
-	VectorTestL(aMD, aVector);
-	FunctionalityTestL(aMD);
-	OOMTestL(aMD);
-	aMD->Reset();
-
-	test.Next(_L("Fixed bugs Tests"));	
-
-	_LIT8(KTest1Data, "The quick brown fox jumped over the lazy dog");
-	TBuf8<KMaxHashSize> hash;
-	hash = aMD->Hash(KTest1Data());
-	test(hash.Length() == aMD->HashSize());
-	aMD->Reset();
-	
-	//	Test for DEF001510 "TLS - Receives Disconnect Indication during hands..."
-	_LIT8(KClientData, "D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A4");
-	_LIT8(KServerData, "3E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8");
-	
-	HBufC8* clientData = KClientData().AllocLC();
-	HBufC8* serverData = KServerData().AllocLC();
-
-	Hex(*clientData);
-	Hex(*serverData);
-	
-//	Hash in 2 portions
-	aMD->Hash(*clientData);
-	aMD->Hash(*serverData);
-
-	CleanupStack::PopAndDestroy(2, clientData);
-
-	TBuf8<KMaxHashSize> shabuf;
-	shabuf.Copy(aMD->Hash(KNullDesC8()));
-	aMD->Reset();
-
-//	Now hash in one chunk
-	_LIT8(KAllData, "D652CA1A6154D8303C16C055E424A5ACF3EBAB94284CD9B05B85C0D0F0B8E7A43E3E56059EFEE4F8C5B05C76128C4C84916DF9E935510C3C063454856FF29FF8");
-	HBufC8* allData = KAllData().AllocLC();
-	Hex(*allData);
-
-	TBuf8<KMaxHashSize> allbuf;
-	allbuf = aMD->Hash(*allData);
-	
-	test(allbuf.Compare(shabuf)==0);
-	CleanupStack::PopAndDestroy(allData);
-	
-	// Test hashing non-word aligned data - used to crash on arm
-	TPtrC8 nonAlignedData = KTest1Data().Mid(1);
-	hash = aMD->Final(nonAlignedData);
-	test(hash.Length() == aMD->HashSize());
-	aMD->Reset();
-	
-//	Test end
-	HMACTestsL(aMD, aHMACVector, aHashType);
-	}
-
-_LIT(K224Algo, "SHA-224.dat");
-_LIT(K256Algo, "SHA-256.dat");
-_LIT(K384Algo, "SHA-384.dat");
-_LIT(K512Algo, "SHA-512.dat");
-_LIT(K224Vector, "sha224.dat");
-_LIT(K256Vector, "sha256.dat");
-_LIT(K384Vector, "sha384.dat");
-_LIT(K512Vector, "sha512.dat");
-_LIT(K224HmacVector, "hmacsha224.dat");
-_LIT(K256HmacVector, "hmacsha256.dat");
-_LIT(K384HmacVector, "hmacsha384.dat");
-_LIT(K512HmacVector, "hmacsha512.dat");
-
-const TDesC* gNames[] = 
-	{
-	&K224Vector(),
-	&K224HmacVector(),
-	&K224Algo(),
-	&K256Vector(),
-	&K256HmacVector(),
-	&K256Algo(),
-	&K384Vector(),
-	&K384HmacVector(),
-	&K384Algo(),
-	&K512Vector(),
-	&K512HmacVector(),
-	&K512Algo(),
-	};
-
-
-void SHA2TestsL(CMessageDigest::THashId aHashId)
-	{
-	CMessageDigest* md = CMessageDigestFactory::NewDigestLC(aHashId);
-	TInt pos = aHashId - CMessageDigest::ESHA224;
-	pos *= 3;
-	ExecuteHashTestsL(md, *gNames[pos], *gNames[pos+1], *gNames[pos+2]);
-	CleanupStack::PopAndDestroy(md);
-	}
-
-void HashTests(void)
-	{
-	TInt32 testsFailed=0, testCount=0; 
-	
-	test.Start(_L("SHA1 Tests"));
-	TRAPD(r, SHA1TestsL());
-	++testCount;
-  if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nSHA1 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-	
-  test.Start(_L("SHA-224 Tests"));
-	TRAP(r, SHA2TestsL(CMessageDigest::ESHA224));
-	++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nSHA-224 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-
-	test.Start(_L("SHA-256 Tests"));	
-	TRAP(r, SHA2TestsL(CMessageDigest::ESHA256));
-	++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nSHA-256 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-
-	test.Start(_L("SHA-384 Tests"));	
-	TRAP(r, SHA2TestsL(CMessageDigest::ESHA384));
-	++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nSHA-384 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-
-	test.Start(_L("SHA-512 Tests"));	
-	TRAP(r, SHA2TestsL(CMessageDigest::ESHA512));
-	++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nSHA-512 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-	
-	test.Start(_L("MD5 Tests"));
-	TRAP(r, MD5TestsL());
-  ++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nMD5 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-
-	test.Start(_L("MD2 Tests"));
-	TRAP(r, MD2TestsL());
-  ++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nMD2 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
- 
-	//MD4 Message Digest Algorithm Tests
-	test.Start(_L("MD4 Tests"));
-	TRAP(r, MD4TestsL());
-  ++testCount;
-	if (r!=KErrNone)
-		{
-		test.Printf(_L("\r\nMD4 Tests failed error code = %d\r\n\r\n"),r);
-		++testsFailed;
-		}
-
-	test.Printf(_L("\r\n%d tests failed out of %d \r\n"),testsFailed,testCount);
-
-
-	test(testsFailed==0);
-	}
-
-
-GLDEF_C TInt E32Main(void)
-
-	{
-	CTrapCleanup* cleanup;
-	cleanup=CTrapCleanup::New();
-		
-	test.Start(_L(" @SYMTestCaseID:SEC-CRYPTO-HASH-0001 Hash Algorithm Tests "));		 
-	CTestConsole* con=NULL;
-	TRAPD(ret, con=CTestConsole::NewL(test.Console()));
-	if(ret != KErrNone)
-		{
-		return ret;	
-		}
-	RFs fs;
-
-	fs.Connect();
-	RFile* file;
-	file=new (ELeave) RFile;
-	
-	TDriveUnit sysDrive (fs.GetSystemDrive());
-	TDriveName driveName(sysDrive.Name());
-	TBuf<24> hashLogFile (driveName);
-	hashLogFile.Append(_L("\\HashLog.txt"));
-	
-	file->Replace(fs,hashLogFile,EFileShareAny|EFileWrite);
-	con->SetLogFile(file);
-	
-	test.SetConsole(con);
-	__UHEAP_MARK;
-	 HashTests();		
-	__UHEAP_MARKEND;
-
-	test.End();
-	test.Close();
-	delete cleanup;
-	return(KErrNone);
-	}
--- a/crypto/weakcrypto/test/tpadding/scripts/tpadSSLv3.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-[CipherAES_CBC]
-BlockSize=16
-TestCaseName=CipherAES_CBC
-
-[CipherDES_CBC]
-BlockSize=8
-TestCaseName=CipherDES_CBC
-
-[CipherRC2_CBC]
-BlockSize=8
-TestCaseName=CipherRC2_CBC
-
-[ContentLength]
-Length=61  // from example in TLS1.0 spec. section 6.2.3.2. CBC block cipher
-
-//Test for BlockSize 0
-[Zero_BlockSize]
-BlockSize=0
-TextSize=16              
-TestCaseName=Zero_BlockSize
-ExpectedResult=CorruptBlockSize
-
-//Test for Negative BlockSize
-[Negative_BlockSize]
-BlockSize=-8
-TextSize=16             
-TestCaseName=Negative_BlockSize
-ExpectedResult=CorruptBlockSize
-
-//Test for BlockSize lesser than the TextSize
-[Block_LessThan_Text]               
-BlockSize=16
-TextSize=32 
-TestCaseName=Block_LessThan_Text
-ExpectedResult=CorruptBlockSize      
-
-//Test for BlockSize equal to the TextSize
-[Block_Equal_Text]                
-BlockSize=16
-TextSize=16  
-TestCaseName=Block_Equal_Text
-ExpectedResult=CorruptBlockSize          
-
-//Test for BlockSize greater than TextSize and TextSize is Zero
-[Zero_Text]
-BlockSize=16
-TextSize=0
-TestCaseName=Zero_Text
-ExpectedResult=CorruptBlockSize
--- a/crypto/weakcrypto/test/tpadding/scripts/tpadding.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,144 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-PRINT Run all tpadding tests 
-//
-LOAD_SUITE tpaddingServer
-//
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0007
-START_TESTCASE SEC-CRYPTO-PADDING-0007
-
-RUN_TEST_STEP 		100 tpaddingServer PadNone		c:\tpadding\tpaddingnone.ini	PaddingNone
-RUN_TEST_STEP 		100 tpaddingServer UnpadNone	c:\tpadding\tpaddingnone.ini	PaddingNone
-
-END_TESTCASE SEC-CRYPTO-PADDING-0007
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0001
-//! @SYMTestCaseDesc The test case appends no padding.
-//! 		     (PaddingNone)
-//! @SYMDEF	     DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT KErrArgument if blocksize < 0.
-//! @SYMTestExpectedResults No padding.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0001
-
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PadNone	c:\tpadding\tpaddingnone.ini    Zero_BlockSize
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PadNone	c:\tpadding\tpaddingnone.ini    Negative_BlockSize
-
-END_TESTCASE SEC-CRYPTO-PADDING-0001
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0002
-//! @SYMTestCaseDesc Checks the padding for SSL by giving different blocksize and textsize.
-//! 		     (PadSSLv3)
-//! @SYMDEF			 DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT KErrArgument if blocksize <= textsize.
-//! @SYMTestExpectedResults The padding of data for SSL 3.0 should be proper.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0002
-
-RUN_TEST_STEP 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini CipherAES_CBC
-RUN_TEST_STEP 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini CipherDES_CBC
-RUN_TEST_STEP 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini CipherRC2_CBC
-RUN_TEST_STEP 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini Block_LessThan_Text
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini Zero_BlockSize
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PadSSLv3 c:\tpadding\tpadSSLv3.ini Negative_BlockSize
-
-END_TESTCASE SEC-CRYPTO-PADDING-0002
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0003
-//! @SYMTestCaseDesc Checks the unpadding for SSL by giving different blocksize and textsize.
-//! 		     (UnpadSSLv3)
-//! @SYMDEF			 DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT KErrArgument if blocksize <= textsize.
-//! @SYMTestExpectedResults The unpadding of data for SSL 3.0 should be proper.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0003
-
-RUN_TEST_STEP 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini CipherAES_CBC
-RUN_TEST_STEP 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini CipherDES_CBC
-RUN_TEST_STEP 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini CipherRC2_CBC
-RUN_TEST_STEP 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini Block_LessThan_Text
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini Zero_BlockSize
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer UnpadSSLv3 c:\tpadding\tpadSSLv3.ini Negative_BlockSize
-
-END_TESTCASE SEC-CRYPTO-PADDING-0003
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0008
-START_TESTCASE SEC-CRYPTO-PADDING-0008
-
-RUN_TEST_STEP 100 tpaddingServer PadPKCS1
-RUN_TEST_STEP 100 tpaddingServer UnpadPKCS1
-
-RUN_TEST_STEP 100 tpaddingServer PadPKCS7
-RUN_TEST_STEP 100 tpaddingServer UnpadPKCS7
-
-RUN_TEST_STEP 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini DEF073199
-
-END_TESTCASE SEC-CRYPTO-PADDING-0008
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0004
-//! @SYMTestCaseDesc Checks the unpadding for PKCS7 by giving different blocksize, textsize
-//					 and valid and invalid padding byte.
-//! 		     (UnpadCorruptPKCS7)
-//! @SYMDEF			 DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT KErrArgument if blocksize <= textsize.
-//! @SYMTestExpectedResults The unpadding of data for PKCS7 should be proper.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0004
-
-RUN_TEST_STEP 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Valid_PaddingByte1
-RUN_TEST_STEP 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Valid_PaddingByte2
-RUN_TEST_STEP 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Valid_PaddingByte3
-RUN_TEST_STEP 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini InValid_PaddingByte2
-
-END_TESTCASE SEC-CRYPTO-PADDING-0004
-
-
-//! @SYMTestCaseID   SEC-CRYPTO-PADDING-0005
-//! @SYMTestCaseDesc Checks the padding for PKCS7 by giving different blocksize, textsize.
-//! 		     (PaddingCorruptPKCS7)
-//! @SYMDEF			 DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT KErrArgument if blocksize <= textsize.
-//! @SYMTestExpectedResults The padding of data for PKCS7 should be proper.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0005
-
-RUN_TEST_STEP 100 tpaddingServer PaddingCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Block_LessThan_Text_Padding
-RUN_TEST_STEP 100 tpaddingServer PaddingCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Block_Equal_Text_Padding
-RUN_TEST_STEP 100 tpaddingServer PaddingCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Block_GreaterThan_Text_Padding
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PaddingCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Zero_Block_Padding
-RUN_TEST_STEP_RESULT -6 100 tpaddingServer PaddingCorruptPKCS7 c:\tpadding\tpadpkcs7.ini Negative_Block_Padding
-
-END_TESTCASE SEC-CRYPTO-PADDING-0005
-
-
--- a/crypto/weakcrypto/test/tpadding/scripts/tpaddingnone.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-//correct Block size.
-[PaddingNone]
-blocksize=512
-
-// InValid Block Size
-[Zero_BlockSize]
-blocksize=0
-
-// InValid Block Size
-[Negative_BlockSize]
-blocksize=-1
-
--- a/crypto/weakcrypto/test/tpadding/scripts/tpaddingudeb.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-PRINT Run all tpadding tests 
-//
-LOAD_SUITE tpaddingServer
-//
-
-//! @SYMTestCaseID SEC-CRYPTO-PADDING-0006
-//! @SYMTestCaseDesc Checks the unpadding for PKCS7 by giving different blocksize, textsize
-//					 and valid and invalid padding byte.
-//! 		     (UnpadCorruptPKCS7)
-//! @SYMDEF	     DEF079604 
-//! @SYMTestPriority Low
-//! @SYMTestStatus   Implemented
-//! @SYMTestActions  ASSERT ECryptoPanicOutputDescriptorOverflow if given wrong padding byte.
-//! @SYMTestExpectedResults The unpadding of data for PKCS7 should be proper.
-//! @SYMDevelopedForRelease Argus
-START_TESTCASE SEC-CRYPTO-PADDING-0006
-
-RUN_PANIC_STEP_RESULT 1 CRYPTO-LIB 100 tpaddingServer UnpadCorruptPKCS7 c:\tpadding\tpadpkcs7.ini InValid_PaddingByte1
-
-END_TESTCASE SEC-CRYPTO-PADDING-0006
--- a/crypto/weakcrypto/test/tpadding/scripts/tpadpkcs7.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-//Wrong Padding Byte
-[DEF073199]
-blocksize=64
-textsize=48
-paddingbyte=200         
-ExpectedResult=InvalidPadding     
-
-//correct Padding Byte, Block size is less than the text size
-[Valid_PaddingByte1]
-blocksize=48 		
-textsize=64
-paddingbyte=32		
-ExpectedResult=Valid      	
-
-//correct Padding Byte, block size is equal to the text size
-[Valid_PaddingByte2]
-blocksize=64 	       
-textsize=64
-paddingbyte=64         
-ExpectedResult=Valid
-
-//correct Padding Byte, Block size is greater than the text size
-[Valid_PaddingByte3]
-blocksize=64	      
-textsize=48
-paddingbyte=16	       
-ExpectedResult=Valid
-
-//Wrong Padding Byte, block size is equal to the text size
-[InValid_PaddingByte1]
-blocksize=64           
-textsize=64
-paddingbyte=16         
-ExpectedResult=InvalidPadding    
-
-//Block size is greater than the text size, wrong Padding Byte
-[InValid_PaddingByte2]
-blocksize=64           
-textsize=48
-paddingbyte=32         
-ExpectedResult=InvalidPadding    
-
-
-//Tests for PADDING
-
-//Block size is less than the text size
-[Block_LessThan_Text_Padding]
-blocksize=48 		 
-textsize=64		 
-ExpectedResult=InvalidPadding	          
-
-//block size is equal to the text size
-[Block_Equal_Text_Padding]
-blocksize=64 	        
-textsize=64		
-ExpectedResult=Valid
-     
-//Block size is greater than the text size
-[Block_GreaterThan_Text_Padding]
-blocksize=64      	
-textsize=48		
-ExpectedResult=Valid
-
-//Block size is Zero
-[Zero_Block_Padding]
-blocksize=0     	
-textsize=48		
-ExpectedResult=CorruptBlockSize
-
-//Block size is Negative
-[Negative_Block_Padding]
-blocksize=-9           
-textsize=48	  
-ExpectedResult=CorruptBlockSize	         
-
-
-
-
-
-
-
-
--- a/crypto/weakcrypto/test/tpadding/tpaddingNone.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,118 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <padding.h>
-#include "tpaddingNone.h"
-
-CTestPadNone::CTestPadNone()
-{
-   SetTestStepName(KPadNone);
-}
-
-CTestPadNone::~CTestPadNone()
-{
-}
-
-TVerdict CTestPadNone::doTestStepL()
-{
-   SetTestStepResult(EPass);
-   __UHEAP_MARK;
-
-   INFO_PRINTF1(_L("Test of padding with type None"));
-   
-   TInt blockSize = 0; 
-   if (GetIntFromConfig(ConfigSection(), _L("blocksize"), blockSize))
- 		{
- 		ERR_PRINTF1(_L("Missing parameter - blockSize"));
- 		}
-
-   // Block size is arbitrary as no padding actually occurs
-   CPaddingNone *padding = CPaddingNone::NewLC(blockSize);
-   for (TInt i = 1 ; i < blockSize; i++)
-   {
-      HBufC8 *padInData = HBufC8::NewLC(i);
-      HBufC8 *padOutData = HBufC8::NewLC(i);
-      TPtr8 in(padInData->Des());
-      TPtr8 out(padOutData->Des());
-      for (TInt j = 0; j < i; j++)
-      {
-	 in.Append(_L8("a"));
-      }
-
-      // Perform the padding
-      TRAPD(err, padding->DoPadL(in, out));
-      TEST(err == KErrNone);
-      
-      // As no padding actually occurs, the in string should equal the out string
-      TEST(in == out);
-      CleanupStack::PopAndDestroy(2, padInData); // padInData, padOutData
-   }
-   
-   CleanupStack::PopAndDestroy(); // padding
-   __UHEAP_MARKEND;
-   return TestStepResult();
-}
-
-CTestUnpadNone::CTestUnpadNone()
-{
-   SetTestStepName(KUnpadNone);
-}
-
-CTestUnpadNone::~CTestUnpadNone()
-{
-}
-
-TVerdict CTestUnpadNone::doTestStepL()
-{
-   SetTestStepResult(EPass);
-   __UHEAP_MARK;
-
-   INFO_PRINTF1(_L("Test of unpadding with type None"));
-   
-   TInt blockSize = 0; 
-   if (GetIntFromConfig(ConfigSection(), _L("blocksize"), blockSize))
- 		{
- 		ERR_PRINTF1(_L("Missing parameter - blockSize"));
- 		}
-
-   // Block size is arbitrary as no padding actually occurs
-   CPaddingNone *padding = CPaddingNone::NewLC(blockSize);
-   for (TInt i = 1 ; i < blockSize; i++)
-   {
-      HBufC8 *padInData = HBufC8::NewLC(i);
-      HBufC8 *padOutData = HBufC8::NewLC(i);
-      TPtr8 in(padInData->Des());
-      TPtr8 out(padOutData->Des());
-      for (TInt j = 0; j < i; j++)
-      {
-	 in.Append(_L8("a"));
-      }
-
-      // Perform the unpadding
-      TRAPD(err, padding->UnPadL(in, out));
-      TEST(err == KErrNone);
-
-      // As no unpadding actually occurs, the in string should equal the out string
-      TEST(in == out);
-      CleanupStack::PopAndDestroy(2, padInData); // padInData, padOutData
-   }
-   CleanupStack::PopAndDestroy(); // padding
-   __UHEAP_MARKEND;
-   return TestStepResult();
-}
-
--- a/crypto/weakcrypto/test/tpadding/tpaddingNone.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef _TPADDINGNONE_H_
-#define _TPADDINGNONE_H_
-
-#include <test/testexecutestepbase.h>
-#include "tpaddingTestSteps.h"
-
-_LIT(KPadNone, "PadNone");
-_LIT(KUnpadNone, "UnpadNone");
-
-class CTestPadNone : public CPaddingStep
-{
-   public:
-      CTestPadNone();
-      ~CTestPadNone();
-      virtual TVerdict doTestStepL();
-};
-
-class CTestUnpadNone : public CPaddingStep
-{
-   public:
-      CTestUnpadNone();
-      ~CTestUnpadNone();
-      virtual TVerdict doTestStepL();
-};
-
-
-#endif
--- a/crypto/weakcrypto/test/tpadding/tpaddingPKCS1.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,321 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <random.h>
-#include <padding.h>
-#include "tpaddingPKCS1.h"
-
-CTestPadPKCS1::CTestPadPKCS1()
-{
-   SetTestStepName(KPadPKCS1);
-}
-
-CTestPadPKCS1::~CTestPadPKCS1()
-{
-}
-
-TVerdict CTestPadPKCS1::doTestStepL()
-{
-
-   __UHEAP_MARK;
-   
-   INFO_PRINTF1(_L("Test of PKCS1 signature padding"));
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 512"));
-   TestPKCS1SignaturePadding(512);
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 1024"));
-   TestPKCS1SignaturePadding(1024);
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 2048"));
-   TestPKCS1SignaturePadding(2048);
-
-   INFO_PRINTF1(_L("Test of PKCS1 encryption padding"));
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 512"));
-   TestPKCS1EncryptionPadding(512);
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 1024"));
-   TestPKCS1EncryptionPadding(1024);
-
-   SetTestStepResult(EPass);
-   INFO_PRINTF1(_L("Blocksize 2048"));
-   TestPKCS1EncryptionPadding(2048);
-   
-
-   __UHEAP_MARKEND;
-   return TestStepResult();
-}
-
-void CTestPadPKCS1::TestPKCS1SignaturePadding(TInt aBlockSize)
-{
-   CPaddingPKCS1Signature *padding = CPaddingPKCS1Signature::NewLC(aBlockSize);
-   /*
-    * The length of the data D shall not be more than k-11 octets,
-    * which is positive since the length k of the modulus is at
-    * least 12 octets.
-    */
-   TInt noDataBytes = aBlockSize-11;
-   
-   for (TInt i = 0; i <= noDataBytes; i++)
-   {
-      HBufC8 *inData = HBufC8::NewLC(noDataBytes);
-      HBufC8 *outData = HBufC8::NewLC(aBlockSize);
-      TPtr8 in(inData->Des());
-      TPtr8 out(outData->Des());
-      TInt j;
-      
-      for (j = 0; j < i; j++)
-      {
-	 TInt text('a'+j%25);
-	 in.Append(text);
-      }
-      
-      TRAPD(err, padding->DoPadL(in, out));
-      TEST(err == KErrNone);
-      
-      // check the padding.
-      // should have the following syntax:
-      // 00 || 01 || PS || 00 || D where PS is the padding octects of value 0xff
-      
-      TEST(out[0] == 0 && out[1] == 1);
-
-      TInt endOfPadding = aBlockSize - 1 - in.Length();
-      for (j = 2; j < endOfPadding; j++)
-      {
-	 TEST(out[j]==0xff);
-	 
-      }
-      // Check for the delimiter
-      TEST(out[endOfPadding] == 0);
-      // Check that the rest of the data is not corrupted
-      TInt startOfData = aBlockSize - in.Length();
-      TEST(in == out.Mid(startOfData));
-      CleanupStack::PopAndDestroy(2, inData); // inData, outData
-   }
-   TestStepResult() ? INFO_PRINTF1(_L("Test failed")) : INFO_PRINTF1(_L("Test passed"));
-   CleanupStack::PopAndDestroy(); // padding
-}
-
-void CTestPadPKCS1::TestPKCS1EncryptionPadding(TInt aBlockSize)
-{
-   CPaddingPKCS1Encryption *padding = CPaddingPKCS1Encryption::NewLC(aBlockSize);
-   /*
-    * The length of the data D shall not be more than k-11 octets,
-    * which is positive since the length k of the modulus is at
-    * least 12 octets.
-    */
-   TInt noDataBytes = aBlockSize-11;
-   
-   for (TInt i = 0; i <= noDataBytes; i++)
-   {
-      HBufC8 *inData = HBufC8::NewLC(noDataBytes);
-      HBufC8 *outData = HBufC8::NewLC(aBlockSize);
-      TPtr8 in(inData->Des());
-      TPtr8 out(outData->Des());
-      TInt j;
-      
-      for (j = 0; j < i; j++)
-      {
-	 TInt text('a'+j%25);
-	 in.Append(text);
-      }
-      
-      TRAPD(err, padding->DoPadL(in, out));
-      TEST(err == KErrNone);
-      // check the padding.
-      // should have the following syntax:
-      // 00 || 02 || PS || 00 || D where PS is the padding octects containing random data
-      
-      TEST(out[0] == 0 && out[1] == 2);
-      
-      TInt endOfPadding = aBlockSize - 1 - in.Length();
-      for (j = 2; j < endOfPadding; j++)
-      {
-	 TEST(out[j]!=0);
-	 
-      }
-      // Check for the delimiter
-      TEST(out[endOfPadding] == 0);
-      
-      // Check that the rest of the data is not corrupted
-      TInt startOfData = aBlockSize - in.Length();
-      TEST(in == out.Mid(startOfData));
-      CleanupStack::PopAndDestroy(2, inData); // inData, outData
-   }
-   TestStepResult() ? INFO_PRINTF1(_L("Test failed")) : INFO_PRINTF1(_L("Test passed"));
-   CleanupStack::PopAndDestroy(); // padding
-}
-
-   
-CTestUnpadPKCS1::CTestUnpadPKCS1()
-{
-   SetTestStepName(KUnpadPKCS1);
-}
-
-CTestUnpadPKCS1::~CTestUnpadPKCS1()
-{
-}
-
-TVerdict CTestUnpadPKCS1::doTestStepL()
-{
-   __UHEAP_MARK;
-
-   INFO_PRINTF1(_L("Test of PKCS1 signature unpadding"));
-   INFO_PRINTF1(_L("Blocksize 512"));
-   SetTestStepResult(EPass);
-   TestPKCS1SignatureUnpadding(512);
-   INFO_PRINTF1(_L("Blocksize 1024"));
-   SetTestStepResult(EPass);
-   TestPKCS1SignatureUnpadding(1024);
-   INFO_PRINTF1(_L("Blocksize 2048"));
-   SetTestStepResult(EPass);
-   TestPKCS1SignatureUnpadding(2048);
-
-   INFO_PRINTF1(_L("Test of PKCS1 encryption unpadding"));
-   INFO_PRINTF1(_L("Blocksize 512"));
-   SetTestStepResult(EPass);
-   TestPKCS1EncryptionUnpadding(512);
-   INFO_PRINTF1(_L("Blocksize 1024"));
-   SetTestStepResult(EPass);
-   TestPKCS1EncryptionUnpadding(1024);
-   INFO_PRINTF1(_L("Blocksize 2048"));
-   SetTestStepResult(EPass);
-   TestPKCS1EncryptionUnpadding(2048);
-
-   __UHEAP_MARKEND;
-   return TestStepResult();
-}
-
-void CTestUnpadPKCS1::TestPKCS1SignatureUnpadding(TInt aBlockSize)
-{
-   CPaddingPKCS1Signature *padding = CPaddingPKCS1Signature::NewLC(aBlockSize);
-   /*
-    * The length of the data D shall not be more than k-11 octets,
-    * which is positive since the length k of the modulus is at
-    * least 12 octets.
-    */
-   TInt noDataBytes = aBlockSize-11;
-   
-   for (TInt i = 0; i <= noDataBytes; i++)
-   {
-      HBufC8 *inData = HBufC8::NewLC(aBlockSize);
-      HBufC8 *outData = HBufC8::NewLC(noDataBytes);
-      HBufC8 *compData = HBufC8::NewLC(noDataBytes);
-      TPtr8 in(inData->Des());
-      TPtr8 out(outData->Des());
-      TPtr8 comp(compData->Des());
-      
-      TInt endOfPadding = aBlockSize - 1 - i;
-      in.SetLength(endOfPadding+1);
-      in[0] = 0;
-      in[1] = 1;
-      TInt j;
-      for (j = 2; j < endOfPadding; j++)
-      {
-	 in[j] = 0xff;
-      }
-      in[endOfPadding] = 0; // delimiter
-
-      for (j = 0; j < i; j++)
-      {
-	 TInt text('a'+j%25);
-	 in.Append(text);
-	 comp.Append(text);
-      }
-
-      TRAPD(err, padding->UnPadL(in, out));
-      TEST(err == KErrNone);
-
-      TEST(out == comp);
-
-      TEST(out.Length() == i);
-
-      
-      CleanupStack::PopAndDestroy(3, inData); // inData, outData, compData
-   }
-   TestStepResult() ? INFO_PRINTF1(_L("Test failed")) : INFO_PRINTF1(_L("Test passed"));
-   CleanupStack::PopAndDestroy(); // padding
-}
-
-void CTestUnpadPKCS1::TestPKCS1EncryptionUnpadding(TInt aBlockSize)
-{
-   CPaddingPKCS1Encryption *padding = CPaddingPKCS1Encryption::NewLC(aBlockSize);
-   /*
-    * "The length of the data D shall not be more than k-11 octets,
-    * which is positive since the length k of the modulus is at
-    * least 12 octets."
-    */
-   TInt noDataBytes = aBlockSize-11;
-   for (TInt i = 0; i <= noDataBytes; i++)
-   {
-      HBufC8 *inData = HBufC8::NewLC(aBlockSize);
-      HBufC8 *outData = HBufC8::NewLC(noDataBytes);
-      HBufC8 *compData = HBufC8::NewLC(noDataBytes);
-      TPtr8 in(inData->Des());
-      TPtr8 out(outData->Des());
-      TPtr8 comp(compData->Des());
-      
-      TInt endOfPadding = aBlockSize - 1 - i;
-      in.SetLength(endOfPadding+1);
-      in[0] = 0;
-      in[1] = 2;
-      TBuf8<256> rnd(256);
-      GenerateRandomBytesL(rnd);
-
-      TInt k = 2;
-      TInt j = 0;
-      while (k < endOfPadding)
-      {
-         if (rnd[j%256])
-         {
-            in[k++] = rnd[j%256];
-         }
-         
-         if (++j%256 == 0)
-         {
-            GenerateRandomBytesL(rnd);
-         }
-      }
-      in[endOfPadding] = 0; // delimiter
-
-      for (j = 0; j < i; j++)
-      {
-	 TInt text('a'+j%25);
-	 in.Append(text);
-     comp.Append(text);
-      }
-
-      TRAPD(err, padding->UnPadL(in, out));
-      TEST(err == KErrNone);
-
-	  TEST(out == comp);		  
-
-      TEST(out.Length() == i);
-
-      
-      CleanupStack::PopAndDestroy(3, inData); // inData, outData, compData
-   }
-   TestStepResult() ? INFO_PRINTF1(_L("Test failed")) : INFO_PRINTF1(_L("Test passed"));
-   CleanupStack::PopAndDestroy(); // padding
-}
--- a/crypto/weakcrypto/test/tpadding/tpaddingPKCS1.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef _TPADDINGPKCS1_H_
-#define _TPADDINGPKCS1_H_
-
-#include <test/testexecutestepbase.h>
-#include "tpaddingTestSteps.h"
-
-_LIT(KPadPKCS1, "PadPKCS1");
-_LIT(KUnpadPKCS1, "UnpadPKCS1");
-
-class CTestPadPKCS1 : public CPaddingStep
-{
-   public:
-      CTestPadPKCS1();
-      ~CTestPadPKCS1();
-      virtual TVerdict doTestStepL();
-   private:
-      void TestPKCS1SignaturePadding(TInt aBlockSize);
-      void TestPKCS1EncryptionPadding(TInt aBlockSize);
-};
-
-class CTestUnpadPKCS1 : public CPaddingStep
-{
-   public:
-      CTestUnpadPKCS1();
-      ~CTestUnpadPKCS1();
-      virtual TVerdict doTestStepL();
-   private:
-      void TestPKCS1SignatureUnpadding(TInt aBlockSize);
-      void TestPKCS1EncryptionUnpadding(TInt aBlockSize);
-};
-
-
-#endif
--- a/crypto/weakcrypto/test/tpadding/tpaddingPKCS7.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,340 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <random.h>
-#include <padding.h>
-#include <securityerr.h>
-#include "tpaddingPKCS7.h"
-#include <cryptopanic.h>
-
-static void GenerateInput(TInt aBytes, TPtr8& in)
- 	{
- 	for (TInt j = 0; j < aBytes; j++)
- 		{
- 		TInt text('a'+j%25);
- 		in.Append(text);
- 		}
- 	}
-
-CTestPadPKCS7::CTestPadPKCS7()
-	{
-	SetTestStepName(KPadPKCS7);
-	}
-
-CTestPadPKCS7::~CTestPadPKCS7()
-	{
-	}
-
-TVerdict CTestPadPKCS7::doTestStepL()
-	{
-	SetTestStepResult(EPass);
-	__UHEAP_MARK;
-   
-	INFO_PRINTF1(_L("Test of PKCS7  padding"));
-
-	for (TInt i = 1; i < 255; i++)
-		{
-		TestPKCS7Padding(i);
-		}
-  
-	__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-void CTestPadPKCS7::TestPKCS7Padding(TInt aBlockSize)
-	{
-   	CPaddingPKCS7 *padding = CPaddingPKCS7::NewLC(aBlockSize);
-	// Starts with zero input size(total block data is filled/padded with block size) 
-	for (TInt i = 0 ; i <= aBlockSize; i++)
-		{
-		HBufC8 *padInData = HBufC8::NewLC(i);
-		HBufC8 *padOutData = HBufC8::NewLC(i+(aBlockSize-i%aBlockSize));
-		TPtr8 in(padInData->Des());
-		TPtr8 out(padOutData->Des());
-
-		GenerateInput(i, in);
-		TRAPD(err, padding->DoPadL(in, out));
-		
-		TEST(err == KErrNone);
-		
-		TInt totalLength = out.Length();
-		TUint paddingLength = aBlockSize - in.Length()%aBlockSize;
-		// Test that the total length is a multiple of blockSize
-		TEST((totalLength % aBlockSize) == 0);
-      
-		// Test that the padding bytes are equal in value to the paddingLength,
-		// ie, if padding length is 5 the 5 last octets in the out array should be 0x05
-		for (TInt j = paddingLength; j > 0 ; j--)
-			{
-			TEST(out[out.Length()-j] == paddingLength);
-			}
-      
-		// Test that the data has not been corrupted
-		TEST(in == out.Left(out.Length() - paddingLength));
-		
-		CleanupStack::PopAndDestroy(2, padInData); // padInData, padOutData
-		}
-	CleanupStack::PopAndDestroy(padding);
-	}
-   
-CTestUnpadPKCS7::CTestUnpadPKCS7()
-	{
-   	SetTestStepName(KUnpadPKCS7);
-	}
-
-CTestUnpadPKCS7::~CTestUnpadPKCS7()
-	{
-	}
-
-TVerdict CTestUnpadPKCS7::doTestStepL()
-	{
-	SetTestStepResult(EPass);
-	__UHEAP_MARK;
-
-	INFO_PRINTF1(_L("Test of PKCS7 unpadding"));
-	for (TInt i = 1; i < 255; i++)
-		{
-		TestPKCS7Unpadding(i);
-		}
-
-	__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-
-void CTestUnpadPKCS7::TestPKCS7Unpadding(TInt aBlockSize)
-	{
-	CPaddingPKCS7 *padding = CPaddingPKCS7::NewLC(aBlockSize);
-
-	// Input must be < aBlockSize otherwise this wouldn't be 
-	// a padded block
-	for (TInt i = 0 ; i < aBlockSize; i++)
-		{
-		// Input to un-padding should always be an entire block
-		// for correctly data.
-		HBufC8 *padInData = HBufC8::NewLC(aBlockSize);
-		HBufC8 *padOutData = HBufC8::NewLC(i);
-		HBufC8 *padCompareData = HBufC8::NewLC(i);
-		TPtr8 in(padInData->Des());
-		TPtr8 out(padOutData->Des());
-		TPtr8 comp(padCompareData->Des());
-
-		GenerateInput(i, in);
-		comp.Copy(in);		
-
-		in.SetLength(aBlockSize);
-		TInt paddingBytes = aBlockSize - (i % aBlockSize);
-		for (TInt j = 1; j <= paddingBytes; j++)
-			{
-			in[in.Length()-j] = (TUint8)paddingBytes;
-			}
-
-		TRAPD(err, padding->UnPadL(in, out));
-		if (err != KErrNone)
-			{
-			INFO_PRINTF3(_L("The Error returned for block size %d is %d"), aBlockSize,err);
-			}
-		TEST(err == KErrNone); // Verify UnPadL leave code 
-		TEST(out == comp); // Verify  UnPadL output data with expected data
-		CleanupStack::PopAndDestroy(3, padInData); // padInData, padOutData, padCompareData
-		}
-	CleanupStack::PopAndDestroy(padding);
-	}
-
- 
-CTestUnpadCorruptPKCS7::CTestUnpadCorruptPKCS7()
-	{
-	SetTestStepName(KUnpadCorruptPKCS7);
-	}
- 
-CTestUnpadCorruptPKCS7::~CTestUnpadCorruptPKCS7()
-	{
-	}
- 
-TVerdict CTestUnpadCorruptPKCS7::doTestStepL()
- 	{
- 	SetTestStepResult(EPass);
- 	__UHEAP_MARK;
- 
- 	TInt blockSize;
- 	TInt textSize;
- 	TInt paddingNum = 0;
- 	
- 	if (GetIntFromConfig(ConfigSection(), _L("blocksize"), blockSize))
- 		{
- 		if (GetIntFromConfig(ConfigSection(), _L("textsize"), textSize))
- 			{
- 			if (GetIntFromConfig(ConfigSection(), _L("paddingbyte"), paddingNum))
- 				{
- 				INFO_PRINTF1(_L("Test of PKCS7 unpadding with corrupt data"));
- 				TUint8 paddingByte = Min(paddingNum, 255);
-   				TestCorruptPKCS7Unpadding(blockSize, textSize, paddingByte);	  					
- 				}				
- 			else
- 				{
- 				ERR_PRINTF1(_L("Missing parameter - paddingbyte"));
- 				}
- 			}
- 		else
- 			{
- 			ERR_PRINTF1(_L("Missing parameter - textsize"));
- 			}
- 		}
- 	else
-		{
- 		ERR_PRINTF1(_L("Missing parameter - blocksize"));
- 		}
- 
- 	__UHEAP_MARKEND;
- 	return TestStepResult();
- 	}
- 
-void CTestUnpadCorruptPKCS7::TestCorruptPKCS7Unpadding(TInt aBlockSize, TInt aTextSize, TUint8 aPaddingByte)
-	{
- 	CPaddingPKCS7 *padding = CPaddingPKCS7::NewLC(aBlockSize);
- 	TInt paddingBytes = (aBlockSize - aTextSize % aBlockSize);
- 	
-	HBufC8 *padInData = HBufC8::NewLC(aTextSize + paddingBytes);
- 	HBufC8 *padOutData = HBufC8::NewLC(aTextSize);
- 	TPtr8 in(padInData->Des());
- 	TPtr8 out(padOutData->Des());
- 
- 	GenerateInput(aTextSize, in);
- 
- 	in.SetLength(in.Length() + paddingBytes);
- 	for (TInt j = 1; j <= paddingBytes; j++)
- 		{
- 		in[in.Length()-j] = (TUint8) aPaddingByte;
- 		}
- 
- 	TRAPD(err, padding->UnPadL(in, out));
- 	
- 	if ( err == KErrInvalidPadding )
-		{
-  		INFO_PRINTF2(_L("The PKCS7 unpadding UnPadL method returned error is %d"), err);
-  		TEST(err == KErrInvalidPadding);
-  		SetTestStepResult(EPass);
-  		}
-	else if ( err == KErrNone )
-		{
-		TEST(err == KErrNone);
-		}
-	CleanupStack::PopAndDestroy(3, padding); // padding, padInData, padOutData
-	}
-
-CTestPaddingCorruptPKCS7::CTestPaddingCorruptPKCS7()
-	{
-	SetTestStepName(KPaddingCorruptPKCS7);
-	}
- 
-CTestPaddingCorruptPKCS7::~CTestPaddingCorruptPKCS7()
-	{
-	}
- 
-TVerdict CTestPaddingCorruptPKCS7::doTestStepL()
- 	{
- 	SetTestStepResult(EPass);
- 	__UHEAP_MARK;
- 
- 	TInt blockSize;
- 	TInt textSize;
- 	 	
- 	if (GetIntFromConfig(ConfigSection(), _L("blocksize"), blockSize))
- 		{
- 		if (GetIntFromConfig(ConfigSection(), _L("textsize"), textSize))
- 			{
- 			INFO_PRINTF1(_L("Test of PKCS7 unpadding with corrupt data"));
-   			TestCorruptPKCS7padding(blockSize, textSize);	  					
- 			}
- 		else
- 			{
- 			ERR_PRINTF1(_L("Missing parameter - textsize"));
- 			}
- 		}
- 	else
-		{
- 		ERR_PRINTF1(_L("Missing parameter - blocksize"));
- 		}
- 
- 	__UHEAP_MARKEND;
- 	return TestStepResult();
- 	}
- 
-void CTestPaddingCorruptPKCS7::TestCorruptPKCS7padding(TInt aBlockSize, TInt aTextSize)
-	{
-	CPaddingPKCS7 *padding = CPaddingPKCS7::NewLC(aBlockSize);
-
-	TInt paddingBytes = 0;
-	//Divide by 0 is undefined.
-	if(aBlockSize != 0)
-		{
-		paddingBytes = aBlockSize - (aTextSize % aBlockSize);
-		}
-		
- 	HBufC8 *padOutData = HBufC8::NewLC(aTextSize + paddingBytes);
- 	HBufC8 *padInData = HBufC8::NewLC(aTextSize);
- 	TPtr8 in(padInData->Des());
- 	TPtr8 out(padOutData->Des());
- 
- 	GenerateInput(aTextSize, in);
- 	TRAPD(err, padding->DoPadL(in, out));
-
-	INFO_PRINTF2(_L("The PKCS7 padding DoPadL method returned error is %d"), err);
-	TInt totalLength = out.Length();
-	TInt inLength = in.Length();
-	
-	TUint paddingLength = 0;
-	//Divide by 0 is undefined.
-	if(aBlockSize != 0)
-		{
-		paddingLength = aBlockSize - inLength%aBlockSize;
-		// Test that the total length is a multiple of blockSize
-		TEST((totalLength % aBlockSize) == 0);
-		}			
-	
- 	// Test that the padding bytes are equal in value to the paddingLength,
-	// ie, if padding length is 5 the 5 last octets in the out array should be 0x05
-	for (TInt j = paddingLength; j > 0 ; j--)
-		{
-		TEST(out[out.Length()-j] == paddingLength);
-		}
-
-	TPtrC expectedContent;
- 	if (GetStringFromConfig(ConfigSection(), _L("case"), expectedContent))
- 		{
- 		if(expectedContent.Compare(_L("InvalidPadding")) ==0)
- 			{
- 			TEST(err == KErrInvalidPadding);
- 			}
- 		else if(expectedContent.Compare(_L("Valid")) ==0)
- 			{
- 			TEST(err == KErrNone);
- 			}
- 		else if(expectedContent.Compare(_L("CorruptBlockSize")) ==0)
- 			{
- 			TEST(err == KErrArgument);
- 			}
- 		}
- 	
- 	// Test that the data has not been corrupted
-	TEST(in == out.Left(out.Length() - paddingLength));
- 	
- 	CleanupStack::PopAndDestroy(3, padding); // padInData, padOutData, padCompareData, padding
-	}
-
--- a/crypto/weakcrypto/test/tpadding/tpaddingPKCS7.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef _TPADDINGPKCS7_H_
-#define _TPADDINGPKCS7_H_
-
-#include <e32std.h>
-#include <e32cmn.h>
-
-
-#include <test/testexecutestepbase.h>
-#include "tpaddingTestSteps.h"
-
-_LIT(KPadPKCS7, "PadPKCS7");
-_LIT(KUnpadPKCS7, "UnpadPKCS7");
-_LIT(KUnpadCorruptPKCS7, "UnpadCorruptPKCS7");
-_LIT(KPaddingCorruptPKCS7, "PaddingCorruptPKCS7");
-
-
-class CTestPadPKCS7 : public CPaddingStep
-{
- 	public:
- 		CTestPadPKCS7();
- 		~CTestPadPKCS7();
- 		virtual TVerdict doTestStepL();
- 	private:
- 		void TestPKCS7Padding(TInt aBlockSize);
-};
-
-class CTestUnpadPKCS7 : public CPaddingStep
-{
-    public:
- 		CTestUnpadPKCS7();
- 		~CTestUnpadPKCS7();
- 		virtual TVerdict doTestStepL();
- 	private:
- 		void TestPKCS7Unpadding(TInt aBlockSize);
-
-};
-
-class CTestUnpadCorruptPKCS7 : public CPaddingStep
- {
-    public:
- 		CTestUnpadCorruptPKCS7();
- 		~CTestUnpadCorruptPKCS7();
- 		virtual TVerdict doTestStepL();
- 	private:
- 		void TestCorruptPKCS7Unpadding(TInt aBlockSize, TInt aTextSize, TUint8 aCorruptPaddingByte);
- };
-
-class CTestPaddingCorruptPKCS7 : public CPaddingStep
-	{
-public:
-	CTestPaddingCorruptPKCS7();
-    ~CTestPaddingCorruptPKCS7();
-    virtual TVerdict doTestStepL();
-private:
-    void TestCorruptPKCS7padding(TInt aBlockSize, TInt aTextSize);
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpadding/tpaddingSSLv3.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,349 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <padding.h>
-#include "tpaddingSSLv3.h"
-#include <securityerr.h>
-
-CTestPadSSLv3::CTestPadSSLv3()
-	{
-   SetTestStepName(KPadSSLv3);
-	}
-
-CTestPadSSLv3::~CTestPadSSLv3()
-	{
-	}
-
-TVerdict CTestPadSSLv3::doTestStepL()
-	{
-    SetTestStepResult(EPass);
-    __UHEAP_MARK;
-
-	INFO_PRINTF1(_L("Test of padding with type SSLv3"));
-
-	TInt blockSize;
-    TInt textSize;
-
-	if (!GetStringFromConfig(ConfigSection(), _L("TestCaseName"), iTestCaseName))
- 		{
- 		INFO_PRINTF1(_L("Could not find TestCaseName in tpadSSLv3.ini"));
-      	return EFail;
- 		}
-   
-    if (!GetIntFromConfig(ConfigSection(), _L("BlockSize"), blockSize))
- 		{
- 		INFO_PRINTF1(_L("Could not find blocksize in tpadSSLv3.ini"));
-      	return EFail;
- 		}
- 		
-  	if(iTestCaseName.Compare(_L("CipherAES_CBC"))==0 || iTestCaseName.Compare(_L("CipherDES_CBC"))==0 || iTestCaseName.Compare(_L("CipherRC2_CBC"))==0)
- 		{
- 		TestSSLv3Padding(blockSize);
- 		}
- 	else
- 		{
- 		if (!GetIntFromConfig(ConfigSection(), _L("TextSize"), textSize))
-   			{
-      		INFO_PRINTF1(_L("Could not find TextSize in tpadSSLv3.ini"));
-      		return EFail;
-   			}
-   		if (!GetStringFromConfig(ConfigSection(), _L("ExpectedResult"), iExpectedResult))
- 			{
- 			INFO_PRINTF1(_L("Could not find TextSize in tpadSSLv3.ini"));
-      		return EFail;
- 			}
- 		TestSSLv3CorruptPadding(blockSize, textSize);	
- 		}
-	__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-void CTestPadSSLv3::TestSSLv3Padding(TInt aBlockSize)
-	{
-	CPaddingSSLv3 *padding = CPaddingSSLv3::NewLC(aBlockSize);
-
-	for (TInt i = 0 ; i <= aBlockSize; i++)
-		{
-		HBufC8 *padInData = HBufC8::NewLC(i);
-		HBufC8 *padOutData = HBufC8::NewLC(i+(aBlockSize-i%aBlockSize));
-		TPtr8 in(padInData->Des());
-		TPtr8 out(padOutData->Des());
-		TInt j;
-      
-		for (j = 0; j < i; j++)
-			{
-			TInt text('a'+j%25);
-			in.Append(text);
-			}
-		TRAPD(err, padding->DoPadL(in, out));
-		INFO_PRINTF3(_L("The error returned for input size %d is %d"), i, err);
-		TEST(err == KErrNone);
-
-		TInt totalLength = out.Length();
-		TInt paddingLength = aBlockSize - in.Length()%aBlockSize;
-		// Test that the total length is a multiple of blockSize
-		TEST((totalLength % aBlockSize) == 0);
-      
-		// Test that the padding bytes are equal in value to the paddingLength,
-		// ie, if padding length is 5 the 5 last octets in the out array should be 0x05
-		// This is according to RFC2246 (TLS1.0). The padding content in SSL3.0 is arbitrary.
-		for (TInt i = paddingLength; i > 0 ; i--)
-			{
-			TEST(out[out.Length()-i] == paddingLength - 1);
-			}
-
-		// Test that the data has not been corrupted
-		TEST(in == out.Left(out.Length() - paddingLength));
-      
-		CleanupStack::PopAndDestroy(2, padInData); // padInData, padOutData
-		}
-	CleanupStack::PopAndDestroy(padding);
-	}
-
-void CTestPadSSLv3::TestSSLv3CorruptPadding(TInt aBlockSize, TInt aTextSize)
-	{
-	CPaddingSSLv3 *padding = CPaddingSSLv3::NewLC(aBlockSize);
-
-	HBufC8 *padInData = HBufC8::NewLC(aTextSize);
-	TInt paddingBytes = 0;
-	//If BlockSize is 0, Divide by 0 is undefined
-	if(aBlockSize != 0)
-		{
-		paddingBytes = (aBlockSize - aTextSize % aBlockSize);
-		}
-	HBufC8 *padOutData = HBufC8::NewLC(aTextSize + paddingBytes);
-	TPtr8 in(padInData->Des());
-	TPtr8 out(padOutData->Des());
-	TInt j;
-      
-	for (j = 0; j < aTextSize; j++)
-   		{
-	 	TInt text('a'+j%25);
-	 	in.Append(text);
-      	}
-	TRAPD(err, padding->DoPadL(in, out));
-  
-	if(iExpectedResult.Compare(_L("CorruptBlockSize")) ==0)
- 		{
- 		TEST(err == KErrArgument);
- 		}
-	else if(iExpectedResult.Compare(_L("Valid")) ==0)
- 		{
- 		TEST(err == KErrNone);
- 		}
-	else if(iExpectedResult.Compare(_L("InvalidPadding")) == 0)
-		{
-		TEST(err == KErrInvalidPadding);
-		}	
-
-	TInt totalLength = out.Length();
-	TInt paddingLength = 0;
-	//If BlockSize is 0, Divide by 0 is undefined
-	if(aBlockSize != 0)
-		{
-      	paddingLength = aBlockSize - in.Length()%aBlockSize;
-		}
-	//If BlockSize is 0, Divide by 0 is undefined
-	if(aBlockSize != 0)
-		{
-   		// Test that the total length is a multiple of blockSize
-		TEST((totalLength % aBlockSize) == 0);
-		}
-      
-	// Test that the padding bytes are equal in value to the paddingLength,
-	// ie, if padding length is 5 the 5 last octets in the out array should be 0x05
-	// This is according to RFC2246 (TLS1.0). The padding content in SSL3.0 is arbitrary.
-	for (TInt i = paddingLength; i > 0 ; i--)
-		{
-	 	TEST(out[out.Length()-i] == paddingLength - 1);
-      	}
-
-	if(aBlockSize > 0)
-   		{
-   		// Test that the data has not been corrupted
-   		TEST(in == out.Left(out.Length() - paddingLength));
-   		}
-          
-	CleanupStack::PopAndDestroy(2, padInData); // padInData, padOutData
-	CleanupStack::PopAndDestroy(padding);
-	}
-
-CTestUnpadSSLv3::CTestUnpadSSLv3()
-	{
-	SetTestStepName(KUnpadSSLv3);
-	}
-
-CTestUnpadSSLv3::~CTestUnpadSSLv3()
-	{
-	}
-
-TVerdict CTestUnpadSSLv3::doTestStepL()
-	{
-	SetTestStepResult(EPass);
-	__UHEAP_MARK;
-
-	INFO_PRINTF1(_L("Test of unpadding with type SSLv3"));
-
-	TInt blockSize;
-	TInt textSize;
-	if (!GetIntFromConfig(ConfigSection(), _L("BlockSize"), blockSize))
- 		{
- 		INFO_PRINTF1(_L("Could not find blocksize in tpadSSLv3.ini"));
-      	return EFail;
- 		}
- 		
- 	if (!GetStringFromConfig(ConfigSection(), _L("TestCaseName"), iTestCaseName))
- 		{
- 		INFO_PRINTF1(_L("Could not find TestCaseName in tpadSSLv3.ini"));
-      	return EFail;
- 		}	
- 	
- 	if(iTestCaseName.Compare(_L("CipherAES_CBC"))==0 || iTestCaseName.Compare(_L("CipherDES_CBC"))==0 || iTestCaseName.Compare(_L("CipherRC2_CBC"))==0)
- 		{
- 		TestSSLv3Unpadding(blockSize);
- 		}
- 	else
- 		{
- 		if (!GetIntFromConfig(ConfigSection(), _L("TextSize"), textSize))
-   			{
-      		INFO_PRINTF1(_L("Could not find TextSize in tpadSSLv3.ini"));
-      		return EFail;
-   			}
-   			
-   		if (!GetStringFromConfig(ConfigSection(), _L("ExpectedResult"), iExpectedResult))
- 			{
- 			INFO_PRINTF1(_L("Could not find TextSize in tpadSSLv3.ini"));
-      		return EFail;
- 			}
- 		TestSSLv3CorruptUnpadding(blockSize, textSize);	
- 		}
-
-	__UHEAP_MARKEND;
-	return TestStepResult();
-	}
-
-void CTestUnpadSSLv3::TestSSLv3Unpadding(TInt aBlockSize)
-	{
-	CPaddingSSLv3 *padding = CPaddingSSLv3::NewLC(aBlockSize);
-
-	for (TInt i = 0 ; i <= aBlockSize; i++)
-		{
-		HBufC8 *padInData = HBufC8::NewLC(i+(aBlockSize - i%aBlockSize));
-		HBufC8 *padOutData = HBufC8::NewLC(i);
-		HBufC8 *padCompareData = HBufC8::NewLC(i);
-		TPtr8 in(padInData->Des());
-		TPtr8 out(padOutData->Des());
-		TPtr8 comp(padCompareData->Des());
-		TInt j;
-      
-		// build up a padded string here
-		for (j = 0; j < i; j++)
-			{
-			TInt text('a'+j%25);
-			in.Append(text);
-			}
-		comp.Append(in);
-      
-		TInt paddingBytes = aBlockSize - i%aBlockSize;
-		in.SetLength(in.Length() + paddingBytes);
-
-		// pad with arbitary data, to test unpadding of SSL 3.0 padded data
-		in[in.Length()-1] = (TUint8) (paddingBytes - 1);
-		for (j = 2; j <= paddingBytes; j++)
-			{
-			in[in.Length()-j] = (TUint8) ('a' + j%25);
-			}
-		TRAPD(err, padding->UnPadL(in, out));
-		INFO_PRINTF3(_L("The error returned for input size %d is %d"), i, err);
-		TEST(err == KErrNone);
-
-		// test if the unpadding was correct.
-		TEST(out == comp);
-      
-		CleanupStack::PopAndDestroy(3, padInData); // padInData, padOutData, padCompareData
-		}
-	CleanupStack::PopAndDestroy(padding);
-	}
-
-void CTestUnpadSSLv3::TestSSLv3CorruptUnpadding(TInt aBlockSize, TInt aTextSize)
-	{
-	CPaddingSSLv3 *padding = CPaddingSSLv3::NewLC(aBlockSize);
-   
-	TInt paddingBytes = 0;
-	//If BlockSize is 0, Divide by 0 is undefined
-	if(aBlockSize != 0)
-   		{
-   		paddingBytes = aBlockSize - aTextSize%aBlockSize;
-   		}
-	HBufC8 *padInData = HBufC8::NewLC(aTextSize+ paddingBytes);
-	HBufC8 *padOutData = HBufC8::NewLC(aTextSize);
-	HBufC8 *padCompareData = HBufC8::NewLC(aTextSize);
-	TPtr8 in(padInData->Des());
-	TPtr8 out(padOutData->Des());
-	TPtr8 comp(padCompareData->Des());
-	TInt j;
-   
-	if(in.Length() < aTextSize)
-		{
-		for (j = 0; j < in.Length(); j++)
-   			{
-	 		TInt text('a'+j%25);
-	 		in.Append(text);
-      		}
-		}
-	else
-		{
-		// build up a padded string here
-		for (j = 0; j < aTextSize; j++)
-   			{
-	 		TInt text('a'+j%25);
-	 		in.Append(text);
-      		}
-		}
-	comp.Append(in);
-   
-	in.SetLength(in.Length() + paddingBytes);
-
-	if(aBlockSize > 0)
-  		{
-   		// pad with arbitary data, to test unpadding of SSL 3.0 padded data
-   		in[in.Length()-1] = (TUint8) (paddingBytes - 1);
-   		for (j = 2; j <= paddingBytes; j++)
-   			{
-	 		in[in.Length()-j] = (TUint8) ('a' + j%25);
-      		}
-  		 }  
-	TRAPD(err, padding->UnPadL(in, out));
-   
-    if(iExpectedResult.Compare(_L("CorruptBlockSize")) ==0)
- 		{
- 		TEST(err == KErrArgument);
- 		}
-	else if(iExpectedResult.Compare(_L("Valid")) ==0)
- 		{
- 		TEST(err == KErrNone);
- 		}
-	else if(iExpectedResult.Compare(_L("InvalidPadding")) == 0)
-		{
-		TEST(err == KErrInvalidPadding);
-		}
-	// test if the unpadding was correct.
-	TEST(out == comp);
-	CleanupStack::PopAndDestroy(3, padInData); // padInData, padOutData, padCompareData
-	CleanupStack::PopAndDestroy(padding);
-	}
--- a/crypto/weakcrypto/test/tpadding/tpaddingSSLv3.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef _TPADDINGSSLV3_H_
-#define _TPADDINGSSLV3_H_
-
-#include <test/testexecutestepbase.h>
-#include "tpaddingTestSteps.h"
-
-_LIT(KPadSSLv3, "PadSSLv3");
-_LIT(KUnpadSSLv3, "UnpadSSLv3");
-
-class CTestPadSSLv3 : public CPaddingStep
-{
-   public:
-      CTestPadSSLv3();
-      ~CTestPadSSLv3();
-      virtual TVerdict doTestStepL();
-   private:
-      void TestSSLv3Padding(TInt aBlockSize);
-	  void TestSSLv3CorruptPadding(TInt aBlockSize, TInt aTextSize);
-   private:
-	   TPtrC iExpectedResult;
-	   TPtrC iTestCaseName;
-
-};
-
-class CTestUnpadSSLv3 : public CPaddingStep
-{
-   public:
-      CTestUnpadSSLv3();
-      ~CTestUnpadSSLv3();
-      virtual TVerdict doTestStepL();
-   private:
-      void TestSSLv3Unpadding(TInt aBlockSize);
-	  void TestSSLv3CorruptUnpadding(TInt aBlockSize, TInt aTextSize);
-   private:
-	   TPtrC iExpectedResult;
-	   TPtrC iTestCaseName;
-};
-
-
-#endif
--- a/crypto/weakcrypto/test/tpadding/tpaddingServer.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,134 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* paddingServer.cpp
-*
-*/
-
-
-
-#include "tpaddingServer.h"
-#include "tpaddingTestSteps.h"
-#include "tpaddingNone.h"
-#include "tpaddingSSLv3.h"
-#include "tpaddingPKCS1.h"
-#include "tpaddingPKCS7.h"
-
-// name of test server 
-_LIT(KServerName, "tpaddingServer");
-
-// server class name
-CPaddingServer* CPaddingServer::NewL()
-/**
- * @return - Instance of the test server
- * Called inside the MainL() function to create and start the
- * CTestServer derived server.
- */
-{
-   // new server class 
-   CPaddingServer * server = new (ELeave) CPaddingServer();
-   CleanupStack::PushL(server);
-	
-   // Either use a StartL or ConstructL, the latter will permit
-   // Server Logging.
-
-   //server->StartL(KServerName); 
-   server->ConstructL(KServerName);
-   CleanupStack::Pop(server);
-   return server;
-}
-
-// EKA2 much simpler
-// Just an E32Main and a MainL()
-LOCAL_C void MainL()
-/**
- * Much simpler, uses the new Rendezvous() call to sync with the client
- */
-{
-   // Leave the hooks in for platform security
-#if (defined __DATA_CAGING__)
-   RProcess().DataCaging(RProcess::EDataCagingOn);
-   RProcess().SecureApi(RProcess::ESecureApiOn);
-#endif
-   CActiveScheduler* sched=NULL;
-   sched=new(ELeave) CActiveScheduler;
-   CActiveScheduler::Install(sched);
-   // server name
-   CPaddingServer* server = NULL;
-   // Create the CTestServer derived server
-   // server name
-   TRAPD(err,server = CPaddingServer::NewL());
-   if(!err)
-   {
-      // Sync with the client and enter the active scheduler
-      RProcess::Rendezvous(KErrNone);
-      sched->Start();
-   }
-   delete server;
-   delete sched;
-}
-
-// Only a DLL on emulator for typhoon and earlier
-
-GLDEF_C TInt E32Main()
-/**
- * @return - Standard Epoc error code on exit
- */
-{
-   CTrapCleanup* cleanup = CTrapCleanup::New();
-   if(cleanup == NULL)
-   {
-      return KErrNoMemory;
-   }
-   TRAP_IGNORE(MainL());
-   delete cleanup;
-   return KErrNone;
-}
-
-// Create a thread in the calling process
-// Emulator typhoon and earlier
-
-CTestStep* CPaddingServer::CreateTestStep(const TDesC& aStepName)
-/**
- * @return - A CTestStep derived instance
- * Implementation of CTestServer pure virtual
- */
-{
-   CTestStep* testStep = NULL;
-   // __EDIT_ME__ - Create your own test steps here
-   // This server creates just one step but create as many as you want
-   // They are created "just in time" when the worker thread is created
-
-   if (aStepName == KPadNone)
-      testStep = new (ELeave) CTestPadNone();
-   else if (aStepName == KUnpadNone)
-      testStep = new (ELeave) CTestUnpadNone();
-   else if (aStepName == KPadSSLv3)
-      testStep = new (ELeave) CTestPadSSLv3();
-   else if (aStepName == KUnpadSSLv3)
-      testStep = new (ELeave) CTestUnpadSSLv3();
-   else if (aStepName == KPadPKCS1)
-      testStep = new (ELeave) CTestPadPKCS1();
-   else if (aStepName == KUnpadPKCS1)
-      testStep = new (ELeave) CTestUnpadPKCS1();
-   else if (aStepName == KPadPKCS7)
-      testStep = new (ELeave) CTestPadPKCS7();
-   else if (aStepName == KUnpadPKCS7)
-      testStep = new (ELeave) CTestUnpadPKCS7();
-   else if (aStepName == KUnpadCorruptPKCS7)
-      testStep = new (ELeave) CTestUnpadCorruptPKCS7(); 
-   else if (aStepName == KPaddingCorruptPKCS7)
-   	  testStep = new (ELeave) CTestPaddingCorruptPKCS7();
-   return testStep;
-}
--- a/crypto/weakcrypto/test/tpadding/tpaddingServer.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* PaddingServer.h
-*
-*/
-
-
-
-#if (!defined __PADDING_SERVER_H__)
-#define __PADDING_SERVER_H__
-#include <test/testexecuteserverbase.h>
-
-class CPaddingServer : public CTestServer
-{
-  public:
-   static CPaddingServer* NewL();
-   virtual CTestStep* CreateTestStep(const TDesC& aStepName);
-   RFs& Fs(){return iFs;};
-   
-  private:
-   RFs iFs;
-};
-#endif
-
--- a/crypto/weakcrypto/test/tpadding/tpaddingTestSteps.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tpaddingTestSteps.h"
-
-CPaddingStep::CPaddingStep()
-{
-
-}
-
-CPaddingStep::~CPaddingStep()
-{
-
-}
-
-TVerdict CPaddingStep::doTestStepPreambleL()
-{
-   return TestStepResult();
-   
-}
-
-TVerdict CPaddingStep::doTestStepPostambleL()
-{
-   return TestStepResult();
-}
-
--- a/crypto/weakcrypto/test/tpadding/tpaddingTestSteps.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,34 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef _TPADDINGTESTSTEPS_H_
-#define _TPADDINGTESTSTEPS_H_
-
-#include <test/testexecutestepbase.h>
-
-// Base class for all padding tests.
-class CPaddingStep : public CTestStep
-{
-   public:
-      CPaddingStep();
-      ~CPaddingStep();
-      virtual TVerdict doTestStepPreambleL();
-      virtual TVerdict doTestStepPostambleL();
-};
-
-#endif
Binary file crypto/weakcrypto/test/tpbe/Data/pkcs12-first.dat has changed
--- a/crypto/weakcrypto/test/tpbe/Data/pkcs5-orig.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-"SALT4567IBIV23456789abcdef
\ No newline at end of file
Binary file crypto/weakcrypto/test/tpbe/Data/strong.dat has changed
Binary file crypto/weakcrypto/test/tpbe/Data/weak.dat has changed
--- a/crypto/weakcrypto/test/tpbe/scripts/tpbetests_v2.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3354 +0,0 @@
-
-// Copyright (C) 2005 - 2006 Symbian Ltd. All Rights Reserved
-
-
-<action>
-	<actionname>Element test case 1 with explicit kdf, salt len and iterations, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<kdf>PKCS#5</kdf>
-		<salt_len_bytes>16</salt_len_bytes>
-		<iter_count>1000</iter_count>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, explicit kdf, salt len, iter count, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<kdf>PKCS#5</kdf>
-		<salt_len_bytes>16</salt_len_bytes>
-		<iter_count>1000</iter_count>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-// Start of Permanent File Store PBE testing between weak and strong crypto
-<action>
-	<actionname>Write encrypted data to a PFS named according to crypto strength</actionname>
-	<actiontype>WritePFS</actiontype>
-	<actionbody>
-		<writepfs>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</writepfs>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Decrypting weak crypto file</actionname>
-	<actiontype>ReadPFS</actiontype>
-	<actionbody>
-		<readpfs>
-			<strength>weak</strength>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</readpfs>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Decrypting strong crypto file</actionname>
-	<actiontype>ReadPFS</actiontype>
-	<actionbody>
-		<readpfs>
-			<strength>strong</strength>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</readpfs>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-//Start of OOM testing
-<action>
-    <actionname>OOM start</actionname>
-    <actiontype>startmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-<action>
-	<actionname>Element test case 2</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-    <actionname>OOM end</actionname>
-    <actiontype>stopmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-
-
-// =======================================================================
-// PKCS#12 tests
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#5 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, explicit kdf, salt len, iter count, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<kdf>PKCS#5</kdf>
-		<salt_len_bytes>16</salt_len_bytes>
-		<iter_count>1000</iter_count>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherRC2_CBC_40</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipher3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipher3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher3DES_CBC</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_256</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_256</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_256</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_192</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_192</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_192</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-///////////////////////////////////////////////////////////////////////////////////
-
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 2, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherAES_CBC_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 1, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 3 -- 8 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 1 byte password, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>m</passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input>ZYXWUTSR</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 4 -- 0 byte password 0 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd></passwd>
-			<input></input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-////////////////////////////////////////////////////////////////////
-// PKCS12 tests using PKCS#12 PBE algorithm with PKCS#12 KDF function. 
-//  ECipherRC2_CBC_128_16, ECipher3DES_CBC tests defined above.
-//  "Set" tests are not supported for stream cipher ECipherARC4_40,ECipherARC4_128
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_40_5</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_5</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 2, ECipherARC4_128</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherARC4_128</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 3, ECipherARC4_40</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherARC4_40</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Element test case 4, ECipher2Key3DES_CBC</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher2Key3DES_CBC</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 5, ECipherRC2_CBC_40_5</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_5</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 9, ECipher2Key3DES_CBC</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipher2Key3DES_CBC</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-/////////////////////////////////////////
-
-// Run selected PKCS#12 tests in OOM
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-    <actionname>OOM start</actionname>
-    <actiontype>startmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 1, ECipherRC2_CBC_128_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_128_16</cipher>
-		<element>
-			<passwd>password</passwd>
-			<input>This is what I want to encrypt</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Element test case 3, ECipherRC2_CBC_40_16</actionname>
-	<actiontype>Element</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherRC2_CBC_40_16</cipher>
-		<element>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>This is what I want to encrypt but this time I'm going to make it as long is as reasonable for me to type such that it is still rather long and can test some of those types of features of the password based encryption system.  That was becoming a run-on sentence... phew.  I wonder how much it will matter to the program if I just carry on typing random spurious thoughts like this.  The plan is that it won't make a single iota of difference.  But we'll see!</input>
-		</element>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>Test of Set encryption, password changing, exporting importing Test 2 -- 1 byte input, ECipherAES_CBC_128</actionname>
-	<actiontype>Set</actiontype>
-	<actionbody>
-		<kdf>PKCS#12</kdf>
-		<salt_len_bytes>20</salt_len_bytes>
-		<iter_count>1024</iter_count>
-		<cipher>ECipherAES_CBC_128</cipher>
-		<set>
-			<passwd>a90lkjasjk3lk32kdf89</passwd>
-			<input>B</input>
-		</set>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-//! @SYMTestCaseID CIT_PREQ1054_02
-//! @SYMTestCaseDesc Correctly encrypt and decrypt data using key generated with PKCS#12 KDF.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Encrypts are decrypts the specified data using the PKCS#12-generated key.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>OOM end</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
-<action>
-	<actionname>Compatibility old PKCS#5</actionname>
-	<actiontype>ExternPbeParams</actiontype>
-	<actionbody>
-		<orig-filename>c:\tpbe\pkcs5-orig.dat</orig-filename>
-		<expected-cipher>2</expected-cipher>
-		<expected-salt>53414c5434353637</expected-salt>
-		<expected-iv>49563233343536373839616263646566</expected-iv>
-		<expected-iter-count>1234</expected-iter-count>
-		<expected-kdf>0</expected-kdf>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Data compatibility orig PKCS#12</actionname>
-	<actiontype>ExternPbeParams</actiontype>
-	<actionbody>
-		<orig-filename>c:\tpbe\pkcs12-first.dat</orig-filename>
-		<expected-cipher>2</expected-cipher>
-		<expected-salt>53414c5434353637</expected-salt>
-		<expected-iv>49563233343536373839616263646566</expected-iv>
-		<expected-iter-count>1234</expected-iter-count>
-		<expected-kdf>1</expected-kdf>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tpbe/tactionelement.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,347 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <pbedata.h>
-#include <stdlib.h>
-#include <s32mem.h>
-#include <s32std.h>
-#include "tpbe.h"
-#include "tactionelement.h"
-#include "t_input.h"
-
-_LIT8(KElementStart, "<element>");
-_LIT8(KElementEnd, "</element>");
-
-CTestAction* CActionElement::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionElement::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionElement::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionElement* self = new(ELeave) CActionElement(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionElement::~CActionElement()
-	{
-	delete iBody;
-	}
-
-CActionElement::CActionElement(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CActionElement::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-	}
-
-void CActionElement::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 encryptElement = Input::ParseElement(*iBody, KElementStart,
-		KElementEnd, pos, err);
-
-	pos = 0;
-	TPtrC8 kdf = Input::ParseElement(*iBody, KKdfStart, KKdfEnd, pos, err);
-	if (err == KErrNone)
-		iKdf = kdf.AllocL();
-	
-	pos = 0;
-	TPtrC8 saltLenBytes = Input::ParseElement(*iBody, KSaltLenBytesStart, KSaltLenBytesEnd, pos, err);
-	if (err == KErrNone)
-		iSaltLenBytes = saltLenBytes.AllocL();
-	
-	pos = 0;
-	TPtrC8 iterCount = Input::ParseElement(*iBody, KIterCountStart, KIterCountEnd, pos, err);
-	if (err == KErrNone)
-		iIterCount = iterCount.AllocL();
-	
-	pos = 0;
-	TPtrC8 passwdTemp = Input::ParseElement(encryptElement, KPasswdStart, 
-		KPasswdEnd, pos, err);
-	iPasswd = HBufC::NewL(passwdTemp.Length());
-	TPtr16 passwdTemp3( iPasswd->Des());
-	passwdTemp3.Copy(passwdTemp);
-
-	pos = 0;
-	TPtrC8 inputTemp = Input::ParseElement(encryptElement, KInputStart, 
-		KInputEnd, pos, err);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-
-	TPtrC8 cipher = Input::ParseElement(*iBody, KCipherStart, KCipherEnd);
-	if (cipher.Compare(KECipherAES_CBC_128) == 0)
-	{
-	   iCipher = ECipherAES_CBC_128;
-	}
-	else if (cipher.Compare(KECipherAES_CBC_192) == 0)
-	{
-	   iCipher = ECipherAES_CBC_192;
-	}
-	else if (cipher.Compare(KECipherAES_CBC_256) == 0)
-	{
-	   iCipher = ECipherAES_CBC_256;
-	}
-	else if (cipher.Compare(KECipherDES_CBC) == 0)
-	{
-	   iCipher = ECipherDES_CBC;
-	}
-	else if (cipher.Compare(KECipher3DES_CBC) == 0)
-	{
-	   iCipher = ECipher3DES_CBC;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_40) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_40;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_128) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_128;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_40_16) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_40_16;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_128_16) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_128_16;
-	}
-	else if(cipher.Compare(KECipherARC4_128) == 0)
-	{
-		iCipher = ECipherARC4_128;
-	}
-	else if(cipher.Compare(KECipherARC4_40) == 0)
-	{
-		iCipher = ECipherARC4_40;
-	}
-	else if(cipher.Compare(KECipher2Key3DES_CBC) == 0)
-	{
-		iCipher = ECipher2Key3DES_CBC;
-	}
-	else if(cipher.Compare(KECipherRC2_CBC_40_5) == 0)
-	{
-		iCipher = ECipherRC2_CBC_40_5;
-	}
-	else
-	{
-	   iCipher = ECipherAES_CBC_128;
-	}
-	
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CActionElement::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iPasswd;
-	delete iInput;
-	delete iKdf;
-	iKdf = 0;
-	delete iSaltLenBytes;
-	iSaltLenBytes = 0;
-	delete iIterCount;
-	iIterCount = 0;
-	
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CActionElement::DoReportAction(void)
-	{
-	}
-
-void CActionElement::DoCheckResult(TInt)
-	{
-
-	}
-
-void CActionElement::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-	HBufC8* pkcs12Pwd = 0;
-	
-	// default value is NULL to avoid RVCT warning
-	// C2874W: encryption may be used before being set
-	CPBEncryptElement* encryption = 0;
-	if (iKdf == 0)
-		{
-		CleanupStack::PushL(pkcs12Pwd);
- 		encryption = CPBEncryptElement::NewLC(*iPasswd, iCipher);
- 		}
-	else
-		{
-		// if supply KDF, must also supply salt len and iteration count
-		ASSERT(iSaltLenBytes != 0 && iIterCount != 0);
-		
-		CPBEncryptParms* ep = CPBEncryptParms::NewLC();
-		
-		ep->SetCipher(iCipher);
-		
-		TInt saltLenBytes;
-		TInt r = TLex8(*iSaltLenBytes).Val(saltLenBytes);
-		ASSERT(r == KErrNone);
-		ep->ResizeSaltL(saltLenBytes);
-		
-		TInt iterCount;
-		r = TLex8(*iIterCount).Val(iterCount);
-		ASSERT(r == KErrNone);
-		ep->SetIterations(iterCount);
-		
-		CleanupStack::PushL((CBase*)0);
-		CleanupStack::Pop((CBase*)0);
-
-		if (*iKdf == _L8("PKCS#5"))
-			{
-			ep->SetKdf(CPBEncryptParms::EKdfPkcs5);
-			encryption = CPBEncryptElement::NewL(*iPasswd, *ep);
-			}
-		else if (*iKdf == _L8("PKCS#12"))
-			{			
-			pkcs12Pwd = PKCS12KDF::GeneratePasswordLC(*iPasswd);
-			ep->SetKdf(CPBEncryptParms::EKdfPkcs12);
-			encryption = CPBEncryptElement::NewL(*pkcs12Pwd, *ep);
-			CleanupStack::Pop(pkcs12Pwd);
-			}
-		else
-			User::Panic(_L("Unrec KDF"), 0);
-		
-		CleanupStack::PopAndDestroy(ep);
-		// encryption could leak here, but for reservation above
-		CleanupStack::PushL(pkcs12Pwd);
-		CleanupStack::PushL(encryption);
-		}
-
-	CPBEncryptor* encryptor = encryption->NewEncryptLC();
-
-	HBufC8* ciphertextTemp = HBufC8::NewLC(encryptor->MaxFinalOutputLength(iInput->Length())); 
-	TPtr8 ciphertext = ciphertextTemp->Des();	
-	encryptor->ProcessFinalL(*iInput, ciphertext);
-
-	//create a mem buffer store
-	CBufStore* store = CBufStore::NewLC(100);
-	RStoreWriteStream write;
-
-	//write the encryption data to a stream
-	TStreamId dataStreamId = write.CreateLC(*store);
-	encryption->EncryptionData().ExternalizeL(write);
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	//prepare to read the stream back in
-	RStoreReadStream read;
-	read.OpenLC(*store, dataStreamId);
-
-	//read in Encryption Data
-	CPBEncryptionData* data = CPBEncryptionData::NewL(read);
-	CleanupStack::PopAndDestroy(); //OpenLC()
-	CleanupStack::PushL(data);
-
-	CPBEncryptElement* encryption1 =
-			(pkcs12Pwd == 0)
-	 	?	CPBEncryptElement::NewLC(*data, *iPasswd)
-	 	:	CPBEncryptElement::NewLC(*data, *pkcs12Pwd);
-
-	CPBDecryptor* decryptor = encryption1->NewDecryptLC();
-	HBufC8* plaintextTemp = HBufC8::NewLC(decryptor->MaxOutputLength(ciphertext.Size())); 
-	TPtr8 plaintext = plaintextTemp->Des();	
-	decryptor->Process(ciphertext, plaintext);
-
-	//this Mid call is due to get rid of the decrypted padding at the end
-	if(plaintext.Mid(0,iInput->Length()) == *iInput)
-		{
-		iResult = ETrue;			
-		}
-
-	CleanupStack::PopAndDestroy(5); //plaintextTemp,decryptor,encryption1,data,store
-	
-	CPBEncryptionData* data1 = CPBEncryptionData::NewLC(encryption->EncryptionData());
-	
-	CPBEncryptElement* encryption2 =
-			(pkcs12Pwd == 0)
-	 	?	CPBEncryptElement::NewLC(*data1, *iPasswd)
-	 	:	CPBEncryptElement::NewLC(*data1, *pkcs12Pwd);
-
-	CPBDecryptor* decryptor1 = encryption2->NewDecryptLC();
-	HBufC8* plaintextTemp2 = HBufC8::NewLC(decryptor1->MaxOutputLength(ciphertext.Size())); 
-	TPtr8 plaintext2 = plaintextTemp2->Des();	
-	decryptor1->Process(ciphertext, plaintext2);
-
-	//this Mid call is due to get rid of the decrypted padding at the end
-	if(!(plaintext2.Mid(0,iInput->Length()) == *iInput))
-		{
-		iResult = EFalse;			
-		}
-	
-	CleanupStack::PopAndDestroy(plaintextTemp2);
-	CleanupStack::PopAndDestroy(decryptor1);
-	CleanupStack::PopAndDestroy(encryption2);
-	CleanupStack::PopAndDestroy(data1);
-	CleanupStack::PopAndDestroy(ciphertextTemp);
-	CleanupStack::PopAndDestroy(encryptor);
-	CleanupStack::PopAndDestroy(encryption);
-	CleanupStack::PopAndDestroy(pkcs12Pwd);
-	
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-void CActionElement::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
--- a/crypto/weakcrypto/test/tpbe/tactionelement.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONELEMENT_H__
-#define __TACTIONELEMENT_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <pbe.h>
-
-class CActionElement : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionElement();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionElement(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC* iPasswd;
-	HBufC8* iInput;
-	TPBECipher iCipher;
-	HBufC8* iKdf;
-	HBufC8* iSaltLenBytes;
-	HBufC8* iIterCount;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpbe/tactionset.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,346 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <pbedata.h>
-#include <stdlib.h>
-#include <s32mem.h>
-#include <s32std.h>
-#include "tpbe.h"
-#include "tactionset.h"
-#include "t_input.h"
-
-_LIT8(KSetStart, "<set>");
-_LIT8(KSetEnd, "</set>");
-
-CTestAction* CActionSet::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionSet::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionSet::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionSet* self = new(ELeave) CActionSet(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionSet::~CActionSet()
-	{
-	delete iBody;
-	}
-
-CActionSet::CActionSet(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CActionSet::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-	}
-
-void CActionSet::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 encryptElement = Input::ParseElement(*iBody, KSetStart,
-		KSetEnd, pos, err);
-	pos = 0;
-	TPtrC8 kdf = Input::ParseElement(*iBody, KKdfStart, KKdfEnd, pos, err);
-	if (err == KErrNone)
-		iKdf = kdf.AllocL();
-	
-	pos = 0;
-	TPtrC8 saltLenBytes = Input::ParseElement(*iBody, KSaltLenBytesStart, KSaltLenBytesEnd, pos, err);
-	if (err == KErrNone)
-		iSaltLenBytes = saltLenBytes.AllocL();
-	
-	pos = 0;
-	TPtrC8 iterCount = Input::ParseElement(*iBody, KIterCountStart, KIterCountEnd, pos, err);
-	if (err == KErrNone)
-		iIterCount = iterCount.AllocL();
-	
-	pos = 0;
-	TPtrC8 passwdTemp = Input::ParseElement(encryptElement, KPasswdStart, 
-		KPasswdEnd, pos, err);
-	iPasswd = HBufC::NewL(passwdTemp.Length());
-	TPtr16 passwdTemp3( iPasswd->Des());
-	passwdTemp3.Copy(passwdTemp);
-
-	pos = 0;
-	TPtrC8 inputTemp = Input::ParseElement(encryptElement, KInputStart, 
-		KInputEnd, pos, err);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-
-	TPtrC8 cipher = Input::ParseElement(*iBody, KCipherStart, KCipherEnd);
-	if (cipher.Compare(KECipherAES_CBC_128) == 0)
-	{
-	   iCipher = ECipherAES_CBC_128;
-	}
-	else if (cipher.Compare(KECipherAES_CBC_192) == 0)
-	{
-	   iCipher = ECipherAES_CBC_192;
-	}
-	else if (cipher.Compare(KECipherAES_CBC_256) == 0)
-	{
-	   iCipher = ECipherAES_CBC_256;
-	}
-	else if (cipher.Compare(KECipherDES_CBC) == 0)
-	{
-	   iCipher = ECipherDES_CBC;
-	}
-	else if (cipher.Compare(KECipher3DES_CBC) == 0)
-	{
-	   iCipher = ECipher3DES_CBC;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_40) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_40;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_128) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_128;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_40_16) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_40_16;
-	}
-	else if (cipher.Compare(KECipherRC2_CBC_128_16) == 0)
-	{
-	   iCipher = ECipherRC2_CBC_128_16;
-	}
-	else if(cipher.Compare(KECipher2Key3DES_CBC) == 0)
-	{
-		iCipher = ECipher2Key3DES_CBC;
-	}
-	else if(cipher.Compare(KECipherRC2_CBC_40_5) == 0)
-	{
-		iCipher = ECipherRC2_CBC_40_5;
-	}	
-	else
-	{
-	   iCipher = ECipherAES_CBC_128; // Default value if the <cipher> tag is missing
-	}
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CActionSet::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iPasswd;
-	delete iInput;
-	delete iKdf;
-	iKdf = 0;
-	delete iSaltLenBytes;
-	iSaltLenBytes = 0;
-	delete iIterCount;
-	iIterCount = 0;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CActionSet::DoReportAction(void)
-	{
-	}
-
-void CActionSet::DoCheckResult(TInt)
-	{
-
-	}
-
-void CActionSet::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-	HBufC8* pkcs12Pwd = 0;
-	
-	// default value is NULL to avoid RVCT warning
-	// C2874W: set may be used before being set
-	CPBEncryptSet* set = 0;
-	if (iKdf == 0)
-		{
-		CleanupStack::PushL(pkcs12Pwd);
- 		set = CPBEncryptSet::NewLC(*iPasswd, iCipher);
- 		}
-	else
-		{
-		// if supply KDF, must also supply salt len and iteration count
-		ASSERT(iSaltLenBytes != 0 && iIterCount != 0);
-		
-		CPBEncryptParms* ep = CPBEncryptParms::NewLC();
-		
-		ep->SetCipher(iCipher);
-		
-		TInt saltLenBytes;
-		TInt r = TLex8(*iSaltLenBytes).Val(saltLenBytes);
-		ASSERT(r == KErrNone);
-		ep->ResizeSaltL(saltLenBytes);
-		
-		TInt iterCount;
-		r = TLex8(*iIterCount).Val(iterCount);
-		ASSERT(r == KErrNone);
-		ep->SetIterations(iterCount);
-		
-		CleanupStack::PushL((CBase*)0);
-		CleanupStack::Pop((CBase*)0);
-
-		if (*iKdf == _L8("PKCS#5"))
-			{
-			ep->SetKdf(CPBEncryptParms::EKdfPkcs5);
-			set = CPBEncryptSet::NewL(*iPasswd, *ep);
-			}
-		else if (*iKdf == _L8("PKCS#12"))
-			{
-			pkcs12Pwd = PKCS12KDF::GeneratePasswordLC(*iPasswd);
-			ep->SetKdf(CPBEncryptParms::EKdfPkcs12);
-			set = CPBEncryptSet::NewL(*pkcs12Pwd, *ep);
-			CleanupStack::Pop(pkcs12Pwd);
-			}
-		else
-			User::Panic(_L("Unrec KDF"), 0);
-		
-		CleanupStack::PopAndDestroy(ep);
-		// encryption could leak here, but for reservation above
-		CleanupStack::PushL(pkcs12Pwd);
-		CleanupStack::PushL(set);
-		}
-	CPBEncryptor* encryptor = set->NewEncryptLC();
-	HBufC8* ciphertextTemp = HBufC8::NewLC(encryptor->MaxFinalOutputLength(iInput->Length())); 
-
-	TPtr8 ciphertext = ciphertextTemp->Des();	
-	encryptor->ProcessFinalL(*iInput, ciphertext);
-	TBuf<128> newPwdTemp(*iPasswd);
-	newPwdTemp.Append('a');
-
-	TBuf8<128> newPwdTemp8;
-	
-	TPBPassword newPassword(KNullDesC);
-	if (pkcs12Pwd == 0)
-		new(&newPassword) TPBPassword(newPwdTemp);
-	else
-		{
-		HBufC8* newPwd = PKCS12KDF::GeneratePasswordLC(newPwdTemp);
-		newPwdTemp8.Copy(*newPwd);
-		new(&newPassword) TPBPassword(newPwdTemp8);
-		CleanupStack::PopAndDestroy(newPwd);
-		}
-
-	set->ChangePasswordL(newPassword);
-	
-	//create a mem  buffer store
-	CBufStore* store = CBufStore::NewLC(100);
-	RStoreWriteStream write;
-
-	//write the encrypted master key to a stream
-	TStreamId keyStreamId = write.CreateLC(*store);
-	write << set->EncryptedMasterKey();
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	//write the encryption data to another stream
-	TStreamId dataStreamId = write.CreateLC(*store);
-	set->EncryptionData().ExternalizeL(write);
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	//prepare to read the streams back in, creating a new TPBEncryptionData
-	RStoreReadStream read;
-	read.OpenLC(*store, dataStreamId);
-
-	//read in Encryption data
-	CPBEncryptionData* data = CPBEncryptionData::NewL(read);
-	CleanupStack::PopAndDestroy(); //OpenLC()
-	CleanupStack::PushL(data);
-
-	//read in encrypted master key
-	read.OpenLC(*store, keyStreamId);
-	HBufC8* encryptedMasterKey = HBufC8::NewLC(read, 10000); //some large number
-
-	//create a new set encryption class
-	CPBEncryptSet* set2 = CPBEncryptSet::NewLC(*data, *encryptedMasterKey, newPassword);
-
-	HBufC8* plaintextTemp = HBufC8::NewLC(ciphertext.Length());
-	TPtr8 plaintext = plaintextTemp->Des();	
-
-	CPBDecryptor* decryptor = set2->NewDecryptLC();
-	decryptor->Process(ciphertext, plaintext);
-
-	//this Mid call is due to get rid of the decrypted padding at the end
-	if(plaintext.Mid(0,iInput->Length()) == *iInput)
-		{
-		iResult = ETrue;			
-		}
-	
-	CleanupStack::PopAndDestroy(decryptor);
-	CleanupStack::PopAndDestroy(plaintextTemp);
-	CleanupStack::PopAndDestroy(set2);
-	CleanupStack::PopAndDestroy(encryptedMasterKey);
-	CleanupStack::PopAndDestroy(1); //OpenLC
-	CleanupStack::PopAndDestroy(data);
-	CleanupStack::PopAndDestroy(store);
-	CleanupStack::PopAndDestroy(ciphertextTemp);
-	CleanupStack::PopAndDestroy(encryptor);
-	CleanupStack::PopAndDestroy(set);
-	CleanupStack::PopAndDestroy(pkcs12Pwd);
-	
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-void CActionSet::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
--- a/crypto/weakcrypto/test/tpbe/tactionset.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONSET_H__
-#define __TACTIONSET_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-#include <pbe.h>
-
-class CActionSet : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionSet();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionSet(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC* iPasswd;
-	HBufC8* iInput;
-	TPBECipher iCipher;
-	HBufC8* iKdf;
-	HBufC8* iSaltLenBytes;
-	HBufC8* iIterCount;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpbe/tactionsetreadpfs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,242 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionsetreadpfs.h"
-#include "t_input.h"
-#include <cryptostrength.h>
-#include <securityerr.h>
-#include <pbedata.h>
-#include <f32file.h>
-#include <s32file.h>
-#include <stdlib.h>
-#include <s32mem.h>
-#include <s32std.h>
-
-_LIT8(KReadPFSStart, "<readpfs>");
-_LIT8(KReadPFSEnd, "</readpfs>");
-_LIT8(KStrengthStart, "<strength>");
-_LIT8(KStrengthEnd, "</strength>");
-_LIT8(KInputStart, "<input>");
-_LIT8(KInputEnd, "</input>");
-_LIT8(KPasswdStart, "<passwd>");
-_LIT8(KPasswdEnd, "</passwd>");
-_LIT8(KStrong, "strong");
-_LIT16(KWeakFileName, "\\tpbe\\weak.dat");
-_LIT16(KStrongFileName, "\\tpbe\\strong.dat");
-
-CTestAction* CActionSetReadPFS::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionSetReadPFS::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionSetReadPFS::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionSetReadPFS* self = new(ELeave) CActionSetReadPFS(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionSetReadPFS::~CActionSetReadPFS()
-	{
-	delete iBody;
-	}
-
-CActionSetReadPFS::CActionSetReadPFS(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CActionSetReadPFS::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-	}
-
-void CActionSetReadPFS::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 encryptElement = Input::ParseElement(*iBody, KReadPFSStart,
-		KReadPFSEnd, pos, err);
-
-	pos = 0;
-	TPtrC8 strengthTemp = Input::ParseElement(encryptElement, KStrengthStart, 
-		KStrengthEnd, pos, err);
-		
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	if (strengthTemp.CompareF(KStrong))
-		{
-		iFileName = sysDrive.Name();
-		iFileName.Append(KStrongFileName);
-		}
-	
-	else
-		{
-		iFileName = sysDrive.Name();
-		iFileName.Append(KWeakFileName);
-		}
-
-	pos = 0;		
-	TPtrC8 passwdTemp = Input::ParseElement(encryptElement, KPasswdStart, 
-		KPasswdEnd, pos, err);
-	iPasswd = HBufC::NewL(passwdTemp.Length());
-	TPtr16 passwdTemp3( iPasswd->Des());
-	passwdTemp3.Copy(passwdTemp);
-
-	pos = 0;
-	TPtrC8 inputTemp = Input::ParseElement(encryptElement, KInputStart, 
-		KInputEnd, pos, err);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CActionSetReadPFS::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iPasswd;
-	delete iInput;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CActionSetReadPFS::DoReportAction(void)
-	{
-	}
-
-void CActionSetReadPFS::DoCheckResult(TInt)
-	{
-
-	}
-
-void CActionSetReadPFS::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-	
-	//Change the password by appending the letter 'a' to it
-	HBufC* newPasswordTemp = HBufC::NewMaxLC(iPasswd->Length()+1);
-	TPtr newPassword = newPasswordTemp->Des();
-	newPassword.Copy(*iPasswd);
-	newPassword.Append('a');
-
-	//prepare to read the streams back in, creating a new TPBEncryptionData
-	RStoreReadStream read;
-	// open the next PFS
-	CFileStore *store = CPermanentFileStore::OpenLC(iFs, iFileName, EFileRead | EFileWrite);
-	TStreamId dataStreamId(2); // we know it was the second stream written
-	read.OpenLC(*store, dataStreamId);
-	CleanupStack::Pop();
-	//read in Encryption data
-	CPBEncryptionData* data = CPBEncryptionData::NewL(read);
-	read.Close();
-	CleanupStack::PushL(data);
-
-	//read in encrypted master key
-	TStreamId keyStreamId(1); // we know it was the first stream written
-	read.OpenLC(*store, keyStreamId);
-	CleanupStack::Pop();
-	HBufC8* encryptedMasterKey = HBufC8::NewLC(read, 10000); //some large number
-	read.Close();
-	//create a new set encryption class
-	CPBEncryptSet* set = CPBEncryptSet::NewLC(*data, *encryptedMasterKey, newPassword);
-
-	//read in ciphertext key
-	TStreamId cipherId(3); // we know it was the third stream written
-	read.OpenLC(*store, cipherId);
-	CleanupStack::Pop();
-	HBufC8* ciphertextTemp = HBufC8::NewLC(read, 10000); //some large number
-	read.Close();
-	TPtr8 ciphertext = ciphertextTemp->Des();
-	
-	HBufC8* plaintextTemp = HBufC8::NewLC(ciphertext.Length());
-	TPtr8 plaintext = plaintextTemp->Des();	
-
-	// weak crypto should fail if trying to decrypt strong
-	TRAPD(err, 
-		{
-		CPBDecryptor* decryptor = set->NewDecryptLC();
-		decryptor->Process(ciphertext, plaintext);
-
-		//this Mid call is due to get rid of the decrypted padding at the end
-		if ((plaintext.Mid(0,iInput->Length()) == *iInput) &&
-		!((TCrypto::Strength() == TCrypto::EWeak) && (iFileName == KStrongFileName)))
-			{
-			iResult = ETrue;
-			}
-		CleanupStack::PopAndDestroy(decryptor);
-		});
-
-	if ((err == KErrKeyNotWeakEnough) && 
-	(TCrypto::Strength() == TCrypto::EWeak) && (iFileName == KStrongFileName))
-		{
-		iResult = ETrue;
-		}
-
-	CleanupStack::PopAndDestroy(plaintextTemp);
-	CleanupStack::PopAndDestroy(ciphertextTemp);
-	CleanupStack::PopAndDestroy(set);
-	CleanupStack::PopAndDestroy(encryptedMasterKey);
-	CleanupStack::PopAndDestroy(data);
-	CleanupStack::PopAndDestroy(store);
-	CleanupStack::PopAndDestroy(newPasswordTemp);
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-void CActionSetReadPFS::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
--- a/crypto/weakcrypto/test/tpbe/tactionsetreadpfs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONSETREADPFS_H__
-#define __TACTIONSETREADPFS_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CActionSetReadPFS : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionSetReadPFS();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionSetReadPFS(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	TFileName iFileName;
-	HBufC* iPasswd;
-	HBufC8* iInput;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpbe/tactionsetwritepfs.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,211 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionsetwritepfs.h"
-#include "t_input.h"
-#include <cryptostrength.h>
-#include <pbedata.h>
-#include <f32file.h>
-#include <s32file.h>
-#include <stdlib.h>
-#include <s32mem.h>
-#include <s32std.h>
-
-_LIT8(KWritePFSStart, "<writepfs>");
-_LIT8(KWritePFSEnd, "</writepfs>");
-_LIT8(KInputStart, "<input>");
-_LIT8(KInputEnd, "</input>");
-_LIT8(KPasswdStart, "<passwd>");
-_LIT8(KPasswdEnd, "</passwd>");
-_LIT16(KWeakFileName, "\\tpbe\\weak.dat");
-_LIT16(KStrongFileName, "\\tpbe\\strong.dat");
-
-CTestAction* CActionSetWritePFS::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionSetWritePFS::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionSetWritePFS::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionSetWritePFS* self = new(ELeave) CActionSetWritePFS(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionSetWritePFS::~CActionSetWritePFS()
-	{
-	delete iBody;
-	}
-
-CActionSetWritePFS::CActionSetWritePFS(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CActionSetWritePFS::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	
-	}
-
-void CActionSetWritePFS::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 encryptElement = Input::ParseElement(*iBody, KWritePFSStart,
-		KWritePFSEnd, pos, err);
-
-	pos = 0;
-	TPtrC8 passwdTemp = Input::ParseElement(encryptElement, KPasswdStart, 
-		KPasswdEnd, pos, err);
-	iPasswd = HBufC::NewL(passwdTemp.Length());
-	TPtr16 passwdTemp3( iPasswd->Des());
-	passwdTemp3.Copy(passwdTemp);
-
-	pos = 0;
-	TPtrC8 inputTemp = Input::ParseElement(encryptElement, KInputStart, 
-		KInputEnd, pos, err);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CActionSetWritePFS::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iPasswd;
-	delete iInput;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CActionSetWritePFS::DoReportAction(void)
-	{
-	}
-
-void CActionSetWritePFS::DoCheckResult(TInt)
-	{
-
-	}
-
-void CActionSetWritePFS::PerformAction(TRequestStatus& aStatus)
-	{
-	__UHEAP_MARK;
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-	
-	CPBEncryptSet* set = CPBEncryptSet::NewLC(*iPasswd);
-	CPBEncryptor* encryptor = set->NewEncryptLC();
-
-	HBufC8* ciphertextTemp = HBufC8::NewLC(encryptor->MaxFinalOutputLength(iInput->Length())); 
-
-	TPtr8 ciphertext = ciphertextTemp->Des();	
-	encryptor->ProcessFinalL(*iInput, ciphertext);
-
-	//Change the password by appending the letter 'a' to it
-	HBufC* newPasswordTemp = HBufC::NewMaxLC(iPasswd->Length()+1);
-	TPtr newPassword = newPasswordTemp->Des();
-	newPassword.Copy(*iPasswd);
-	newPassword.Append('a');
-
-	set->ChangePasswordL(newPassword);
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName driveName(sysDrive.Name());
-	TBuf<128> pfsFileName (driveName);
-
-	if (TCrypto::Strength() == TCrypto::EStrong)
-		pfsFileName.Append(KStrongFileName);
-	else
-		pfsFileName.Append(KWeakFileName);
-
-	RStoreWriteStream write;
-	
-	CFileStore *store = CPermanentFileStore::ReplaceLC(iFs, pfsFileName, EFileRead | EFileWrite);
-	store->SetTypeL(store->Layout());
-	
-	//write the encrypted master key to a new stream
-	write.CreateLC(*store);
-	write << set->EncryptedMasterKey();
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	//write the encryption data to a new stream
-	write.CreateLC(*store);
-	set->EncryptionData().ExternalizeL(write);
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	//write the cyphertext to a new stream
-	write.CreateLC(*store);
-	write << ciphertext;
-	write.CommitL();
-	CleanupStack::PopAndDestroy(); //CreateLC()
-
-	store->Commit();
-
-	// Finished writing the PFS
-	iResult = ETrue;
-	CleanupStack::PopAndDestroy(store);
-	CleanupStack::PopAndDestroy(newPasswordTemp);
-	CleanupStack::PopAndDestroy(ciphertextTemp);
-	CleanupStack::PopAndDestroy(encryptor);
-	CleanupStack::PopAndDestroy(set);
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	__UHEAP_MARKEND;
-	}
-
-void CActionSetWritePFS::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
--- a/crypto/weakcrypto/test/tpbe/tactionsetwritepfs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-/*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONSETWRITEPFS_H__
-#define __TACTIONSETWRITEPFS_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CActionSetWritePFS : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionSetWritePFS();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionSetWritePFS(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC* iPasswd;
-	HBufC8* iInput;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpbe/texternpbeparams.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,465 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <s32mem.h>
-#include <s32file.h>
-#include "texternpbeparams.h"
-
-
-CTestAction* CExternPbeParams::NewL(
-	RFs& aFs, CConsoleBase& aConsole,
-	Output& aOut, const TTestActionSpec& aTestActionSpec)
-/**
-	Factory function allocates new instance of CExternPbeParams and extracts
-	the element body from the supplied test action spec.
-
-	@param	aFs				Used to parse XML script file.
-	@param	aConsole		Required by CTestAction.
-	@param	aOut			Required by CTestAction.
-	@param	aTestActionSpec	Action specification contains type, name, and
-							XML contents.
-	@return					New instance of CExternPbeParams, which is owned
-							by the caller.
- */
-	{
-	CExternPbeParams* self = new(ELeave) CExternPbeParams(aConsole, aOut, aFs);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CExternPbeParams::CExternPbeParams(CConsoleBase& aConsole, Output& aOut, RFs& aFs)
-/**
-	This constructor exists to record the file server session and to initialize
-	the CTestAction superclass.
-	
-	@param	aConsole		Required by CTestAction.
-	@param	aOut			Required by CTestAction.
-	@param	aFs				Used to read from and write to files in PerformAction,
-							which stores and restores the externalized params.
- */
-:	CTestAction(aConsole, aOut),
-	iFs(aFs)
-	{
-	// empty.
-	}
-
-void CExternPbeParams::ConstructL(const TTestActionSpec& aTestActionSpec)
-/**
-	Second phase initialization initializes the superclass and
-	makes a copy of the test element.
-	
-	@param	aTestActionSpec	Action specification contains type, name, and
-							XML contents.	
- */
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = aTestActionSpec.iActionBody.AllocL();
-	
-	// iBody is deconstructed in DoPerformPrerequisite
-	}
-
-CExternPbeParams::~CExternPbeParams()
-/**
-	Free resources allocated in ConstructL.  Specifically,
-	deletes the copy of the element body text.
- */
-	{
-	delete iBody;
-	}
-
-// -------- implement CTestAction --------
-
-void CExternPbeParams::DoPerformPrerequisite(TRequestStatus& aStatus)
-/**
-	Override CTestAction by deconstructing element body allocated
-	in ConstructL.
-	
-	If this function fails then DoPerformPostrequisite must still
-	be called.
-	
-	@param	aStatus			This status is completed when the prerequisite
-							has finished.  (This implementation is actually
-							synchronous so the request will already be completed
-							when it returns.)
- */
-	{
-	TRAPD(r, DoPerformPrerequisiteL());
-	
-	iActionState = CTestAction::EAction;
-	TRequestStatus* ps = &aStatus;
-	User::RequestComplete(ps, r);
-	}
-
-void CExternPbeParams::DoPerformPrerequisiteL()
-/**
-	Helper function for DoPerformPrerequisite contains resource allocation
-	functions which can leave.
-	
-	Extracts cipher, salt, iv, iter count, and kdf values.
- */
-	{
-	_LIT8(KOrigFileName, "orig-filename");
-	iOrigFileName = ReadStringLC(*iBody, KOrigFileName);
-	CleanupStack::Pop(iOrigFileName);
-	
-	_LIT8(KExpCipherElemName, "expected-cipher");
-	iExpCipher = ReadDecStringL(*iBody, KExpCipherElemName);
-	_LIT8(KExpSaltElemName, "expected-salt");
-	iExpSalt = ReadHexStringL(*iBody, KExpSaltElemName);
-	_LIT8(KExpIvElemName, "expected-iv");
-	iExpIv = ReadHexStringL(*iBody, KExpIvElemName);	
-	_LIT8(KExpIterCountElemName, "expected-iter-count");
-	iExpIterCount = ReadDecStringL(*iBody, KExpIterCountElemName);
-	_LIT8(KExpKdfElemName, "expected-kdf");
-	iExpKdf = ReadDecStringL(*iBody, KExpKdfElemName);
-	}
-
-void CExternPbeParams::DoPerformPostrequisite(TRequestStatus& aStatus)
-/**
-	Implements CTestAction by cleaning up data allocated in DoPerformPrerequisiteL.
-	
-	@param	aStatus			This status is completed to indicate the
-							postrequisite has finished.  (This function
-							is synchronous so the status is completed before
-							this function returns.)
- */
-	{
-	delete iExpIv;
-	iExpIv = 0;
-	delete iExpSalt;
-	iExpSalt = 0;
-	delete iOrigFileName;
-	iOrigFileName = NULL;
-	
-	iFinished = ETrue;
-	TRequestStatus* ps = &aStatus;
-	User::RequestComplete(ps, KErrNone);
-	}
-
-void CExternPbeParams::PerformAction(TRequestStatus& aStatus)
-/**
-	Implements CTestAction by running the actual tests.  This
-	consists of:
-	
-	Reading an externalized CPBEncryptParms object and testing the
-	cipher, salt, iv, iteration count, and KDF are as expected.
-	
-	Externalizing the object to memory.
-	
-	Testing the two externalizations are binary identical.
-	
-	Creating an equivalent object from scratch and externalizing it.
-	
-	Testing the externalizations are binary identical.
-	
-	As well as testing the objects can be stored reliably, this
-	test also ensures that old (pre-PKCS#12) files can still be
-	read and, and that objects are stored in the old format if they
-	do not use any PKCS#12-specific features.  (I.e., they use the
-	default PKCS#5 KDF.)
-	
-	@param	aStatus			This request status is completed when
-							the action has finished, successfully
-							or otherwise.  This implementation is
-							synchronous, and so the status is actually
-							completed before this function returns.
- */
-	{
-	TFileName fn;
-	fn.Copy(*iOrigFileName);	// convert from narrow
-
-	// ensure reference file matches re-externalized form
-	
-	TRAPD(r,
-		TestDecodeMatchesScriptL(fn);
-		TestReExternMatchesL(fn);
-		TestScratchExternL(fn) );
-		
-	iResult = (r == KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	}
-
-CPBEncryptParms* CExternPbeParams::InternalizeEncryptionParamsLC(const TDesC& aFileName)
-/**
-	Construct a CPBEncryptParms object from the externalized
-	form in the named file.
-	
-	@param	aFileName		File which contains externalized form.
-	@return					Internalized encryption parameters object
-							which is placed on the cleanup stack.
- */
-	{
-	RFileReadStream frs;
-	TInt r = frs.Open(iFs, aFileName, EFileStream | EFileRead);
-	User::LeaveIfError(r);
-	CleanupClosePushL(frs);	
-	CPBEncryptParms* pbep = CPBEncryptParms::NewL(frs);
-	CleanupStack::PopAndDestroy(&frs);
-	CleanupStack::PushL(pbep);
-	return pbep;
-	}
-
-void CExternPbeParams::TestDecodeMatchesScriptL(const TDesC& aFileName)
-/**
-	Test whether the encryption parameters which were externalized
-	to the supplied file match those specified in the script file.
-	
-	@param	aFileName		Name of file which contains externalized form.
-	@leave KErrGeneral		The internalized form doesn't match the parameters
-							in the script.
- */
-	{
-	CPBEncryptParms* pbep = InternalizeEncryptionParamsLC(aFileName);
-	
-	TBool match =
-			pbep->Cipher() == iExpCipher
-		&&	pbep->Salt() == *iExpSalt
-		&&	pbep->Iterations() == iExpIterCount;
-	
-	match = match && pbep->Kdf() == iExpKdf;
-
-	if (! match)
-		User::Leave(KErrGeneral);
-	
-	CleanupStack::PopAndDestroy(pbep);	
-	}
-
-void CExternPbeParams::CompareAgainstTestFileL(
-	const TDesC& aFileName, const CPBEncryptParms& aParams)
-/**
-	Externalize the supplied parameters object and ensure it matches the
-	test file.
-	
-	@param	aFileName		File which contains externalized parameters.
-	@param	aParams			Test object to externalize.
-	@leave KErrGeneral The externalized forms do not match.
- */
-	{
- 	// open a file stream on the externalized form
-	RFileReadStream frs;
-	TInt r = frs.Open(iFs, aFileName, EFileStream | EFileRead);
-	User::LeaveIfError(r);
-	CleanupClosePushL(frs);
-	
-	// externalize the object to memory
-	const TInt KMaxBufferLen = 128;
-	HBufC8* reExtBuf = HBufC8::NewLC(KMaxBufferLen);
-	TPtr8 reDes = reExtBuf->Des();
-	RDesWriteStream dws(reDes);
-	CleanupClosePushL(dws);
-	aParams.ExternalizeL(dws);
-	dws.CommitL();
-	
-	// ensure the externalized forms are equal
-	RDesReadStream drs(reDes);
-	TInt fLen = frs.Source()->SizeL();
-	TInt mLen = drs.Source()->SizeL();
-	if (fLen != mLen)
-		User::Leave(KErrGeneral);	
-
-	TBuf8<1> fByte;
-	TBuf8<1> mByte;
-	for (TInt i = 0; i < fLen; ++i)
-		{
-		frs.ReadL(fByte, 1);
-		drs.ReadL(mByte, 1);
-		if (fByte != mByte)
-			User::Leave(KErrGeneral);
-		}
-
-	CleanupStack::PopAndDestroy(3, &frs);	// frs, reExtBuf, dws	
-	}
-
-void CExternPbeParams::TestReExternMatchesL(const TDesC& aFileName)
-/**
-	Read the CPBEncryptParms object which is externalized in
-	the named file, re-externalize it, and check the two
-	representations are binary equivalent.
-	
-	@param	aFileName		Name of file which contains externalized form.
-	@leave	KErrGeneral		The externalized forms are different.
- */
-	{
- 	CPBEncryptParms* pbep = InternalizeEncryptionParamsLC(aFileName);
- 	
- 	CompareAgainstTestFileL(aFileName, *pbep);
- 	
-	CleanupStack::PopAndDestroy(pbep);
-	}
-
-void CExternPbeParams::TestScratchExternL(const TDesC& aFileName)
-/**
-	Construct a CPBEncryptParams object from the parameter values
-	in the script file.  Test it matches the test file.
-	
-	@param	aFileName		Test file which contains externalized parameters.
- */
-	{
-	CPBEncryptParms* pbep = CPBEncryptParms::NewLC(
-		static_cast<TPBECipher>(iExpCipher),
-		*iExpSalt,
-		*iExpIv,
-		iExpIterCount);
-	
-	pbep->SetKdf(static_cast<CPBEncryptParms::TKdf>(iExpKdf));
-
-	CompareAgainstTestFileL(aFileName, *pbep);
-
-	CleanupStack::PopAndDestroy(pbep);
-	}
-
-void CExternPbeParams::DoReportAction(void)
-/**
-	Implements CTestAction but is empty.
- */
-	{
-	// empty.
-	}
-
-void CExternPbeParams::DoCheckResult(TInt /*aError*/)
-/**
-	Implements CTestAction but is empty.
- */
-	{
-	// empty.
-	}
-
-
-// -------- support functions --------
-
-
-HBufC8* CExternPbeParams::ReadHexStringL(const TDesC8& aBody, const TDesC8& aTag)
-/**
-	Convert a string in the test script to an 8-bit buffer.  The string
-	is a sequence of hex digits, e.g. "abcdef01", which is converted to a
-	descriptor containing the matching bytes {0xab, 0xcd, 0xef, 0x01}.
-	
-	@param	aBody			Body of parent element.
-	@param	aTag			Bare tag name.  This function extracts the text
-							between "<aTag>" and "</aTag>".
-	@return					Newly-allocated buffer containing matching bytes.
-							This is owned by the caller.
- */
-	{
- 	HBufC8* scriptString = ReadStringLC(aBody, aTag);
-
-	TInt textLen = scriptString->Length();
-	if ((textLen % 2) != 0)
-		User::Leave(KErrCorrupt);
-	TInt byteCount = textLen / 2;
-	HBufC8* procString = HBufC8::NewMaxLC(byteCount);
-	TPtr8 procDes = procString->Des();
-	for (TInt i = 0; i < byteCount; ++i)
-		{
-		TUint8 byteVal;
-		TInt r = TLex8(scriptString->Mid(i * 2, 2)).Val(byteVal, EHex);
-		User::LeaveIfError(r);
-		procDes[i] = byteVal;
-		}
-	
-	CleanupStack::Pop(procString);
-	CleanupStack::PopAndDestroy(scriptString);
-	return procString;
-	}
-
-TInt CExternPbeParams::ReadDecStringL(const TDesC8& aBody, const TDesC8& aTag)
-/**
-	Finds a decimal text string in the script and returns the
-	integer value which it represents.
-	
-	@param	aBody			Body of parent element.
-	@param	aTag			Bare tag name.  This function extracts the text
-							between "<aTag>" and "</aTag>".
-	@return					Integer value encoded in the script file.
- */
- 	{
- 	HBufC8* scriptString = ReadStringLC(aBody, aTag);
- 	
- 	TInt value;
-	User::LeaveIfError(TLex8(*scriptString).Val(value));
-	CleanupStack::PopAndDestroy(scriptString);
-	return value;
-	}
-
-HBufC8* CExternPbeParams::ReadStringLC(const TDesC8& aBody, const TDesC8& aTag)
-/**
-	Extracts a string from the supplied script file.
-	
-	@param	aBody			Body of parent element.
-	@param	aTag			Bare tag name.  This function extracts the text
-							between "<aTag>" and "</aTag>".
-	@return					A copy of the string allocated on the heap.  The
-							string is placed on the cleanup stack.
- */
-	{
-	TBuf8<32> startTag;
-	startTag.Format(_L8("<%S>"), &aTag);
-	TBuf8<32> endTag;
-	endTag.Format(_L8("</%S>"), &aTag);
-	
-	TInt pos = 0;
-	TInt r;
-	const TPtrC8 contents = Input::ParseElement(
-		aBody, startTag, endTag, pos, r);
-	User::LeaveIfError(r);
-	
-	return contents.AllocLC();
-	}
-
-/**
-	This code was originally in PerformAction to create the initial
-	data files.
-	
-	// GENERATE PKCS5 TEST PARAMS FILE
-	RFileWriteStream fws;
-	r = fws.Replace(iFs, _L("c:\\tpbe\\pkcs5-orig.dat"), EFileStream | EFileWrite);
-	User::LeaveIfError(r);
-	CleanupClosePushL(fws);
-	
-	_LIT8(KSalt, "SALT4567");
-	_LIT8(KIv, "IV23456789abcdef");
-	const TInt KIterCount = 1234;
-	CPBEncryptParms* pbep = CPBEncryptParms::NewLC(
-		ECipherAES_CBC_256, KSalt, KIv, KIterCount);
-	pbep->ExternalizeL(fws);
-	fws.CommitL();
-	CleanupStack::PopAndDestroy(2, &fws);
-
-#ifdef SYMBIAN_PKCS12
-	// GENERATE PKCS12 TEST PARAMS FILE
-	RFileWriteStream fws;
-	r = fws.Replace(iFs, _L("c:\\tpbe\\pkcs12-first.dat"), EFileStream | EFileWrite);
-	User::LeaveIfError(r);
-	CleanupClosePushL(fws);
-	
-	_LIT8(KSalt, "SALT4567");
-	_LIT8(KIv, "IV23456789abcdef");
-	const TInt KIterCount = 1234;
-	CPBEncryptParms* pbep = CPBEncryptParms::NewLC(
-		ECipherAES_CBC_256, KSalt, KIv, KIterCount);
-	pbep->SetKdf(CPBEncryptParms::EKdfPkcs12);
-	pbep->ExternalizeL(fws);
-	fws.CommitL();
-	CleanupStack::PopAndDestroy(2, &fws);
-#endif	// #ifdef SYMBIAN_PKCS12
-
- */
--- a/crypto/weakcrypto/test/tpbe/texternpbeparams.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,98 +0,0 @@
-/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Defines class used for testing pbe param internalization and externalization.
-*
-*/
-
-
-
-
-/**
- @file
-*/
-
-#ifndef TEXTERNPBEPARAMS_H
-#define TEXTERNPBEPARAMS_H
-
-#include <pbedata.h>
-#include "t_testaction.h"
-#include "t_input.h"
-
-class CExternPbeParams : public CTestAction
-/**
-	This class tests thatn encryption parameters can be
-	successfully externalized and restored.  It is also used
-	to ensure pre-PKSC#12 parameters can be read when PKCS#12
-	is enabled.
- */
-	{
-public:
-	static CTestAction* NewL(
-		RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CExternPbeParams();
-	
-	// implement CTestAction
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction();
-	virtual void DoCheckResult(TInt aError);
-	
-	// override CTestAction
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	
-private:
-	CExternPbeParams(CConsoleBase& aConsole, Output& aOut, RFs& aFs);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	
-	void DoPerformPrerequisiteL();
-	
-	static HBufC8* ReadHexStringL(const TDesC8& aBody, const TDesC8& aTag);
-	static TInt ReadDecStringL(const TDesC8& aBody, const TDesC8& aTag);
-	static HBufC8* ReadStringLC(const TDesC8& aBody, const TDesC8& aTag);
-	
-	CPBEncryptParms* InternalizeEncryptionParamsLC(const TDesC& aFileName);
-	void CompareAgainstTestFileL(const TDesC& aFileName, const CPBEncryptParms& aParams);
-	void TestDecodeMatchesScriptL(const TDesC& aFileName);
-	void TestReExternMatchesL(const TDesC& aFileName);
-	void TestScratchExternL(const TDesC& aFileName);
-	
-private:
-	/** File server session used to write params to, and read params from, files. */
-	RFs& iFs;
-	
-	/** Element body text. */
-	HBufC8* iBody;
-
-	/** Original externalized filename. */
-	HBufC8* iOrigFileName;
-	/** Numeric value of expected cipher. */
-	TInt iExpCipher;
-	/** Expected salt. */
-	HBufC8* iExpSalt;
-	/** Expected IV. */
-	HBufC8* iExpIv;
-	/** Expected iteration count. */
-	TInt iExpIterCount;
-	/**
-		Expected key derivation function.  This is not stored
-		as CPBEncryptParms::TKdf, which is not available when
-		SYMBIAN_PKCS12 is not defined.
-	 */
-	TInt iExpKdf;
-	};
-
-#endif	// #ifndef TEXTERNPBEPARAMS_H
-
--- a/crypto/weakcrypto/test/tpbe/tpbe.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef TPBE_H
-#define TPBE_H
-
-#include "pkcs5kdf.h"
-#include "pkcs12kdf.h"
-
-_LIT8(KInputStart, "<input>");
-_LIT8(KInputEnd, "</input>");
-_LIT8(KPasswdStart, "<passwd>");
-_LIT8(KPasswdEnd, "</passwd>");
-_LIT8(KKdfStart, "<kdf>");
-_LIT8(KKdfEnd, "</kdf>");
-_LIT8(KSaltLenBytesStart, "<salt_len_bytes>");
-_LIT8(KSaltLenBytesEnd, "</salt_len_bytes>");
-_LIT8(KCipherStart, "<cipher>");
-_LIT8(KCipherEnd, "</cipher>");
-_LIT8(KIterCountStart, "<iter_count>");
-_LIT8(KIterCountEnd, "</iter_count>");
-_LIT8(KECipherAES_CBC_128, "ECipherAES_CBC_128");
-_LIT8(KECipherAES_CBC_192, "ECipherAES_CBC_192");
-_LIT8(KECipherAES_CBC_256, "ECipherAES_CBC_256");
-_LIT8(KECipherDES_CBC, "ECipherDES_CBC");
-_LIT8(KECipher3DES_CBC, "ECipher3DES_CBC");
-_LIT8(KECipherRC2_CBC_40, "ECipherRC2_CBC_40");
-_LIT8(KECipherRC2_CBC_128, "ECipherRC2_CBC_128");
-_LIT8(KECipherRC2_CBC_40_16, "ECipherRC2_CBC_40_16");
-_LIT8(KECipherRC2_CBC_128_16, "ECipherRC2_CBC_128_16");
-
-_LIT8(KECipherARC4_128, "ECipherARC4_128");
-_LIT8(KECipherARC4_40, "ECipherARC4_40");
-_LIT8(KECipher2Key3DES_CBC, "ECipher2Key3DES_CBC");
-_LIT8(KECipherRC2_CBC_40_5, "ECipherRC2_CBC_40_5");
-
-#endif
-
-
--- a/crypto/weakcrypto/test/tpbe/tpbemain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "t_testhandler.h"
-#include "t_testsetup.h"
-#include "tscripttests.h"
-#include "tactionelement.h"
-#include "tactionset.h"
-#include "tactionsetreadpfs.h"
-#include "tactionsetwritepfs.h"
-#include "texternpbeparams.h"
-
-LOCAL_D void callExampleL() // initialize and call example code under cleanup stack
-    {
-    START_SCRIPT_LIST
-	SCRIPT_ITEM(CActionElement,_L8("Element")),
-	SCRIPT_ITEM(CActionSet,_L8("Set")),
-	SCRIPT_ITEM(CActionSetReadPFS,_L8("ReadPFS")),
-	SCRIPT_ITEM(CActionSetWritePFS,_L8("WritePFS")),
-	SCRIPT_ITEM(CExternPbeParams, _L8("ExternPbeParams"))
-    END_SCRIPT_LIST
-    
-    TDriveUnit sysDrive (RFs::GetSystemDrive());
-	
-    TDriveName driveName(sysDrive.Name());
-    
-    TBuf<24> scriptFile (driveName);
-    scriptFile.Append(_L("\\tpbe\\tpbetests_v2.txt"));
-    
-    TBuf<24> logFile (driveName);
-    logFile.Append(_L("\\tpbetestsv2.log"));
-    
-	CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile);
-    }
-
-GLDEF_C TInt E32Main() // main function called by E32
-    {
-	__UHEAP_MARK;
-	CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack
-	TRAPD(error, callExampleL());
-	__ASSERT_ALWAYS(!error,User::Panic(_L("tpbe"),error));
-	delete cleanup; // destroy clean-up stack
-	__UHEAP_MARKEND;
-	return 0;
-    }
--- a/crypto/weakcrypto/test/tpkcs5kdf/scripts/tpkcs12kdftests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10094 +0,0 @@
-// Copyright (c) Symbian Software Ltd 2006 - 2007. All rights reserved.
-
-<action>
-	<actionname>PKCS5 Key Derivation Test 1 -- vector from peter gutmann</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>5</iterations>
-			<key>D1DAA78615F287E6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 2 -- 100 iterations vector from generated openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>100</iterations>
-			<key>68551A5F09AC24F41152059F3A0A2EE8EE6048C9D600BE023C2D85B4BE27BAE6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 3 -- 1000 iterations 16 byte key, vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>142F8FAFCE633CCD9265D90FC8FE4252</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 4 -- 10000 iteration 64 byte key -- vector from generated openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>10000</iterations>
-			<key>6628B0927CCC52BF3E78EEAB8CC3074E5159878E7BD21717653F3F7A9BD136CFF4BD0327399AEFF176AD45A71B5BE3985B7EEC5008CED8484B69726B2A813584</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 5 -- 16 byte key, really long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>This is an example of a really long really long password, I'm attempting to see how long we can make it and still see if our code will work. This really shouldn't be a problem</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>A39EDFA35086746DE5B4792035D9A070</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 6 -- 16 byte key, medium size password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>5F9219EED8BD0BCF5B3440B062305E05</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 7 -- 32 byte key, long salt, short password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890</salt>
-			<iterations>1000</iterations>
-			<key>5648F3832B18C6A85165B093627F2268CCE1E79DC2F85D3909C36356789B349D</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 8 -- 32 byte key, long salt, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890</salt>
-			<iterations>1000</iterations>
-			<key>9F14D62760272D4388FA70E31C2B7940A083F0190C244F25F293D98D58766016</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 9 -- 16 byte key, really long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>Thisisanexampleofareallylongreallylongpassword,I'mattemptingtoseehowlongwecanmakeitandstillseeifourcodewillwork.Thisreallyshouldn'tbeaproblem</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>529C96D62F54418DD6AD33724F3014D6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 10 -- 16 byte key, really long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>ThisisanexampleofareallylongreallylongpasswordImattemptingtoseehowlongwecanmakeitandstillseeifourcodewillworkThisreallyshouldntbeaproblem</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>E493D7C57BD77047C9D709DF99CBD3C7</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 11 -- 16 byte key, really long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>EBD56BEE980D41A38AFA53642AAE4B25</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 12 -- 32 byte key, really long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>EBD56BEE980D41A38AFA53642AAE4B251FF9C2A1503B2EF65F28E59DEF906A60</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 13 -- 32 byte key, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>1FFB655FEEC4202B0466BF24AA9800D0A96BFA7F904D655253CE2E32B0B7B795</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 14 -- 32 byte key, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>A544F0E2F88507E44F92CA2DCAC8B67C0E0D780182CF7DDC18AB1CA9BB3C2904</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 15 -- 32 byte key, medium length password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>F1DC1A4224F0C9A4655FFDB7D5BE75060BFFD0B682293A5D2E61BD5A773B81BC</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 16 -- 32 byte key, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>798B6F4DA56ECDA25C82A63F3577C3FF97A3A2A92BE3DD810C47704916890615</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 17 -- 32 byte key, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>5F9219EED8BD0BCF5B3440B062305E052CE70AEBC9A43CE9F4F39E3D0E56603D</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 18 -- 32 byte key, long password vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordpassword</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>421B82FF5825F9BE0E580C4D07BFF0CF54FFFD1BAD7763BF483A8291359F60E6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 19 -- 32 byte key, 65 byte password to test the fix in the CHMAC::Init code vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>passwordpasswordpasswordpasswordpasswordpasswordpasswordpasswordp</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>5D0AAB5A6A7BCD6F5376DF142E7FEAC98728F4F1322091138300A95DB5EBDE72</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 20 -- 32 byte key, password with spaces vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password password password password password password password passwordp</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>EE99202289798A02DC6EAEB81A501C43AE3F8513B8F9ECC62FFBF3D0F70EF444</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 21 -- 1 byte key vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>10000</iterations>
-			<key>66</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 22 -- 128 byte key vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>10000</iterations>
-			<key>6628B0927CCC52BF3E78EEAB8CC3074E5159878E7BD21717653F3F7A9BD136CFF4BD0327399AEFF176AD45A71B5BE3985B7EEC5008CED8484B69726B2A813584E6FCB5C7636C3A04DA7F38778BE00C842A5A202578408C27FA08A3A7AACDF7A7B3F9763A33DDDCD09B3E07FA95106B07892F6981AA450447E106BCA8252B1532</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 23 -- 160 (multiple of hash size) byte key vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>alkiasdk29s.382{</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>30000</iterations>
-			<key>62E18995350965CF1E02F111ADBEE270FBBAE6A2D8C6B94D24F1E4E41B04FE40C1C7CE7E768092362A75F220601AAF3FBBE339F33D97CA0443D8DD795B88BF97F9A41561A80D20659486459995CA559D5C37792C608CF279E880142319D333D17C62C35C65E9D2A50E0F4010E2D475ECB179A41366D62617BB48B13FA3A98E3FA0F76236442E324B39EDD1B9AB253A1D6A6A6462E3330B548BC4DAE4CD060FC6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 24 -- 8 byte key vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>`1234567890-=¬!"£$%^&*()_+qwertyuiop[]asdfghjkl;'#\zxcvbnm,./QWERTYUIOP{}ASDFGHJKL:@~|ZXCVBNM<>?</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>F104F4B53A4A160F</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 25 -- 256 byte key vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>`1234567890-=¬!"£$%^&*()_+qwertyuiop[]asdfghjkl;'#\zxcvbnm,./QWERTYUIOP{}ASDFGHJKL:@~|ZXCVBNM<>?</passwd>
-			<salt>1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890</salt>
-			<iterations>10000</iterations>
-			<key>24360C775D9B1E95D0280884846FA049E39B60E2D301219C87B2FA3F8EF13F93C977E2A7A2750B3F6518CBC1539BA9CA2628BDC454657D7D7BF964DCFE6EF489A16A7DA4B6FA3DCA2C6E4457D5822D3CDD712633EE990F3254E1931FD4645EF25F036D76EE2A79394AA82CFF3B3AF9D9C1A84860D1753E5FF7DF45D76B115F159F655EFFE309B6472EB77FC8D149C5EAD72084D37ADBE144356D63350911FD192B1E16B8F37B1BC624A8BC0C29D4B190F16A9A9CC373BE74B9935EFD52FA6828107E21D180BB1079EF8300BF17D5163CA06E27A0B322E5E44CC2A34A0927654B24D4EBF59BF0790A108114B91118548AFEFBF96C5C66D99AFCEA4E32D4EAF9A9</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-// Out of Memory tests follow
-<action>
-    <actionname>OOM Start</actionname>
-    <actiontype>startmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 1 -- vector from peter gutmann</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>5</iterations>
-			<key>D1DAA78615F287E6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 2 -- 100 iterations vector from generated openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>100</iterations>
-			<key>68551A5F09AC24F41152059F3A0A2EE8EE6048C9D600BE023C2D85B4BE27BAE6</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 3 -- 1000 iterations 16 byte key, vector generated from openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>1000</iterations>
-			<key>142F8FAFCE633CCD9265D90FC8FE4252</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 4 -- 10000 iteration 64 byte key -- vector from generated openssl</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>10000</iterations>
-			<key>6628B0927CCC52BF3E78EEAB8CC3074E5159878E7BD21717653F3F7A9BD136CFF4BD0327399AEFF176AD45A71B5BE3985B7EEC5008CED8484B69726B2A813584</key>
-		</derivekey>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>PKCS5 Key Derivation Test 5 -- leave from performAction other than KErrNoMemory</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<passwd>password</passwd>
-			<salt>1234567878563412</salt>
-			<iterations>10000</iterations>
-			<key>66</key>
-			<leaveinperformaction>1</leaveinperformaction>
-		</derivekey>
-		<knowndefect>ETrue</knowndefect>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-    <actionname>OOM End</actionname>
-    <actiontype>stopmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-//End of out of memory tests
-
-// =====================================================================
-// PKCS#12 tests
-
-<action>
-    <actionname>OOM Start</actionname>
-    <actiontype>startmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>3037AFC8EA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>37F44080CB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>8A18939ACF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>AFF6C5EDE0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>2ED53BB2CE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>49CABE7B67</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>F994B990D3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>1AFAAD7E51</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>878C91098D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>0DE3F08CAF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>90253A49C0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>40BE97AB93</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>A64B43E14E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>E323D5F588</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>27476572AF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>A1D9010A67</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>17E4E1F15B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>D1B71808FC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>EE7E4073F2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>5BF185C726</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>72ADF5E041</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>63E6DF459C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>C2099204AB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>3204D28A32</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>FB845F70A4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>B9230EEC1D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>462B0F2D1B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>05B66EF1BB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>C1B7E77C96</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>3DE08CDACF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>D0158BFC57</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>AEB6CD53F0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>80010C12B6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>497DE34C4C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>146C6A5B58</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>E89772E7A5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>2393071377</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>DF2D961FE3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>363619530B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>B43FA2D22B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>EF50923D65</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>9A618595C7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>B3B33AA8A6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>C007DC1ADA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>91DF366136</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>9A08D3C4F5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>33002FA0B6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>22001FA269</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>B0935F1122</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>6602B1B4BB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>3A478368DD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>6473EB1244</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>AA762B8736</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>F00C5240B0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>935593CA37</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>FCE1F429AE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>82B4A13659</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>45FE091D4D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>5670457314</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>1C4CAE2514</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8B4B3CBFB0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>C89C3A2C9C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8109F97073</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>55E985CC15</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>2802AA97D4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>881509A34D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>B2918BC593</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>0FE0529B45</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>1FF923C4B1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>05D1E56D04</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>99FE149183</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>79E29F3FCB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>22A70A8657</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>9CBA922190</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>A037A8B1C2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>82824BE51C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>E166049AC4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>90E975CC54</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>1FFD40D7BB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>406C92305A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>E82BD75AA9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>0182E41FCA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>101FB77598</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>D7499C6A12</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>2C6222B8E2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>6789F0680A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>43E6637258</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>8B3308BDD5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>CA202602C9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>F6A33ADA6A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>79A4E1398F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>6F2402CCE4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>B9ED7B3135</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>65B27A78C7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>8F8FC96A3D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>642DDC3F4E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>0FE4BDC100</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>32D7F10C5E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>C05FE26245</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>818C967A8F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>5301B5B2A1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>9CB5BD2394</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>EB90D956B3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>ACAFB5EB24</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>A7B0859D9D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B0F0F2EB44</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>C11C0499CC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3F63500AC4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B47F802F12</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3099237692</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>CD04522946</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>D85432F8AC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>C77FDE2E52</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>62E06B8A26</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>A5B348EB49</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>2A824C1B6B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>4B8D18B96E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>9DABF586AD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>F734BE1BF9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 40, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>47C18634A0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>3037AFC8EACD4E2AEAB3C1E343B81DE8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>37F44080CB10A6F7E2719CC979FE0F2E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>8A18939ACF4A00A900FE2351DCBAFD0C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>AFF6C5EDE0A50855FE56FDEDB6031BD0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>2ED53BB2CE3C39A2F4039B734F9D94C5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>49CABE7B67736931126499722509C03D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>F994B990D3554AFB778C729E9BAA0CC6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>1AFAAD7E51964CCD2760CCE134E1F2B8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>878C91098D1F4FD0DD8CBC3A8149DF5F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>0DE3F08CAF4FF556C956527AD47C3497</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>90253A49C069E7FF35281461A4DDBE0B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>40BE97AB930A7E8B6DB634C93B94E699</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>A64B43E14E9F71F9EC9A3E6B73FA35E6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>E323D5F588414AE68EF8FCA46879C1C7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>27476572AF26E99AB85CD350DC802ABA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>A1D9010A6761CB2675F1C33BB3C52158</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>17E4E1F15BC31052E563BFF7B5D11D15</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>D1B71808FCCA5C97E8E52CF5E23C633C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>EE7E4073F2E6008722BB9842540998C2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>5BF185C726EE2182888A834066C30BA9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>72ADF5E0413FDBF6659A1E7D495BBE32</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>63E6DF459C899D72577C20FFE4F27670</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>C2099204ABFBB841875BD7595A89D31A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>3204D28A32DF299B612958906C79154A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>FB845F70A40E96C536641C3F797AAE39</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>B9230EEC1D615A6DFEF5A8793CB06783</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>462B0F2D1B18297A3F2C5E4058A0083E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>05B66EF1BB844470CBBB46D5F4C7DB29</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>C1B7E77C96BB5EE1386E8461A58F0D0C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>3DE08CDACF489F30BBD75C0FF401EC02</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>D0158BFC57E643965DC161741725CE94</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>AEB6CD53F0D6830161100C4BFD439B34</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>80010C12B66CC739F4ACF8BB15419770</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>497DE34C4C64E56AD53E5F8F6E16D1A3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>146C6A5B58AF8561220DE4C13A133248</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>E89772E7A52D6D8C65AAE01D0380ED59</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>23930713772E26DBBABB53F3C5C77501</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>DF2D961FE3929BBA41493EB5421FEF7C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>363619530B170B7BAE1C046B29351C23</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>B43FA2D22B6912F6FEDF1CF3FAD123AF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>EF50923D65A0610BDC51AD5DB1B4F4F9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>9A618595C714486B7D7E3120005C8BC1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>B3B33AA8A6777605E3029C0F8DC45290</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>C007DC1ADA9475C5DB2F9B5D18A2DEFD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>91DF3661364A0DAD28180A41ADCB5567</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>9A08D3C4F584ECD1E538B7A46DCFDEA1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>33002FA0B6A5A27991A062FF6173E357</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>22001FA26964DCD0BE3C58AB6E43557C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>B0935F11227F5A473073DCD188886687</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>6602B1B4BBB670208041ECD8E1634845</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>3A478368DD5DC61BAA09325959A3F46C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>6473EB1244E055149E0858C49FAE7B8D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>AA762B8736D4C37BAD263103CA283E09</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>F00C5240B03C9A2324BD5FE0AEEE1B62</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>935593CA370BB6988F2F41D2F4ABF56E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>FCE1F429AEB3B9818D96B88DD25CDED9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>82B4A13659033EA4025DB51A6CB573F9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>45FE091D4DD2D50FA7D3340B1DB838F2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>5670457314E405B0ED1583FC4B82FEAD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>1C4CAE25146D74F3762B5C3FD3A91752</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8B4B3CBFB00466F63B30FEAD111E163D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>C89C3A2C9C06626EB831F4BB5262809B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8109F97073FF3D286B21095E7AFBBAFA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>55E985CC1581F3D0052F53DB469F6DC9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>2802AA97D4C79B1813AB23F2DD710722</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>881509A34D80B5AB5CEC65B859DF2D99</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>B2918BC593DEC4559C279CFA050CB0F9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>0FE0529B45AFC9BB66323C2182DE414A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>1FF923C4B1E1007EF168E4185280F818</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>05D1E56D04BC435A60BDE06C5AFAC9E3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>99FE149183022F9EB2EB815BCC9504E5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>79E29F3FCB3777460EC0F43D3D7048A7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>22A70A865774E55CF08A704356112522</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>9CBA922190F1659F6AA3B2B98347EEC2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>A037A8B1C20DC883FAABF82D8A591B9E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>82824BE51C81A5FF4C4268E256F6621B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>E166049AC4E765E513AFA8A35DDBE756</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>90E975CC54F8BDA5A6CED39088716B27</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>1FFD40D7BBA891A7E6C4DED39FB0740B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>406C92305ACD663AB0B9EB66DED79295</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>E82BD75AA9467E0B8D92362A56CB5D73</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>0182E41FCA166CEAED10972BDF5F57A8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>101FB775982CA15E37A065F7CDC5593D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>D7499C6A1218C419A1F81AA5E3F41E88</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>2C6222B8E2E97F63FFE9E2FC32D673FA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>6789F0680A5C5840B8ED34B061494171</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>43E663725870C4801A917C41C9B58C41</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>8B3308BDD5A8AE507200EAA16FE19D42</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>CA202602C9A265559B6B96729B574DAA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>F6A33ADA6A0F5990E9DA747550DE0941</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>79A4E1398F511B262E60DCFE9E838C93</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>6F2402CCE4A91C1B848CCABD915657A2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>B9ED7B3135488439E78DF480AD845E7E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>65B27A78C72DFEEA6C92846330CE98C6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>8F8FC96A3D958731780B50E843D6BB65</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>642DDC3F4E11C3051D6CDED8DD898C4C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>0FE4BDC1000D1AC2F5E83A938A2BE2F1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>32D7F10C5EAA9961B590E8FE4561B9D5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>C05FE26245C742CC01B23C655E5D934D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>818C967A8F742565CCA37CEA8C683FCC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>5301B5B2A1A6EB6832DC47F3A0850B56</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>9CB5BD2394B268E13DCA91EE2BB0A39C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>EB90D956B358B7C5E9FC4A4EFA02589B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>ACAFB5EB24FFB3B418587B832F52C226</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>A7B0859D9D1BF5E59047192BF2B8C7AC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B0F0F2EB445AB4DBE901D3C248482259</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>C11C0499CC9EC9FBB6ACA7BF4C0B5389</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3F63500AC41074B4D2C1A991CBBBB013</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B47F802F1238A73054DEFD7D3AABFC81</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3099237692953AB2017A1BF0B12DAFC8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>CD045229461658BC6C47C259F2D20433</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>D85432F8ACAE9653D34A68D9329F347A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>C77FDE2E52892DF5613E6A3B8F1C80B9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>62E06B8A2650199AE6E73AB3F503BF02</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>A5B348EB4926290B223724CC8E4ED67F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>2A824C1B6B36AD48D0A5AE94E27988D4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>4B8D18B96EB898D1BAA8BDD82BC443F0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>9DABF586AD2BCD603DC38C3987C98D73</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>F734BE1BF990A3A59CEA6C821492F0B6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 128, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>47C18634A09AB37AB6EECBCD5C7E7F23</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>3037AFC8EACD4E2AEAB3C1E343B81DE84ACF7E50A7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>37F44080CB10A6F7E2719CC979FE0F2E37D0A2CD9B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>8A18939ACF4A00A900FE2351DCBAFD0C19FCB09599</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>AFF6C5EDE0A50855FE56FDEDB6031BD0BDEFCB74C5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>2ED53BB2CE3C39A2F4039B734F9D94C5075116B05A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>49CABE7B67736931126499722509C03D4BBEF714A8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>F994B990D3554AFB778C729E9BAA0CC6EB5BA76534</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>1AFAAD7E51964CCD2760CCE134E1F2B87B314CC024</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>878C91098D1F4FD0DD8CBC3A8149DF5FDE18B82888</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>0DE3F08CAF4FF556C956527AD47C3497C24281A32B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>90253A49C069E7FF35281461A4DDBE0BB38F4041A0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>40BE97AB930A7E8B6DB634C93B94E699D1AD5125B8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>A64B43E14E9F71F9EC9A3E6B73FA35E6F7058A9FC8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>E323D5F588414AE68EF8FCA46879C1C7317B8FA9C1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>27476572AF26E99AB85CD350DC802ABA3A831332A7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>A1D9010A6761CB2675F1C33BB3C5215851703D0D26</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>17E4E1F15BC31052E563BFF7B5D11D1545835E9B47</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>D1B71808FCCA5C97E8E52CF5E23C633C5B9D4A5BE3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>EE7E4073F2E6008722BB9842540998C2C4F7A87C3A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>5BF185C726EE2182888A834066C30BA92C0A6A140F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>72ADF5E0413FDBF6659A1E7D495BBE32915F295734</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>63E6DF459C899D72577C20FFE4F27670F3A85EA780</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>C2099204ABFBB841875BD7595A89D31A9D03A34B94</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>3204D28A32DF299B612958906C79154AED69D3F1C0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>FB845F70A40E96C536641C3F797AAE39BE8A81CD04</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>B9230EEC1D615A6DFEF5A8793CB067834B66B77A11</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>462B0F2D1B18297A3F2C5E4058A0083E1FF74BE8CC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>05B66EF1BB844470CBBB46D5F4C7DB291B21A4623F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>C1B7E77C96BB5EE1386E8461A58F0D0CB544944CDF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>3DE08CDACF489F30BBD75C0FF401EC02E87ECD4647</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>D0158BFC57E643965DC161741725CE9478CDF2A0B5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>AEB6CD53F0D6830161100C4BFD439B341066339A00</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>80010C12B66CC739F4ACF8BB154197709F78AAD39A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>497DE34C4C64E56AD53E5F8F6E16D1A3220BC95812</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>146C6A5B58AF8561220DE4C13A133248300D59D39E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>E89772E7A52D6D8C65AAE01D0380ED59927CD0C2BE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>23930713772E26DBBABB53F3C5C775019B8048482B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>DF2D961FE3929BBA41493EB5421FEF7C2F6C31FE0A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>363619530B170B7BAE1C046B29351C235B8EFED588</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>B43FA2D22B6912F6FEDF1CF3FAD123AF6FC587CA4E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>EF50923D65A0610BDC51AD5DB1B4F4F98FD4D15B0E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>9A618595C714486B7D7E3120005C8BC18D5D95D79B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>B3B33AA8A6777605E3029C0F8DC45290E3C4167208</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>C007DC1ADA9475C5DB2F9B5D18A2DEFD93A30AE3B2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>91DF3661364A0DAD28180A41ADCB55676E992986EF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>9A08D3C4F584ECD1E538B7A46DCFDEA18A8F8BE461</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>33002FA0B6A5A27991A062FF6173E357D9496E6ED1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>22001FA26964DCD0BE3C58AB6E43557CE7B006E466</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>B0935F11227F5A473073DCD188886687D2A1811953</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>6602B1B4BBB670208041ECD8E1634845FC0DC28532</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>3A478368DD5DC61BAA09325959A3F46C7F46AD9E44</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>6473EB1244E055149E0858C49FAE7B8DC951E7E32A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>AA762B8736D4C37BAD263103CA283E09010B7EFC53</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>F00C5240B03C9A2324BD5FE0AEEE1B6237EB9421D8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>935593CA370BB6988F2F41D2F4ABF56E433064D83E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>FCE1F429AEB3B9818D96B88DD25CDED9F01233C0BF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>82B4A13659033EA4025DB51A6CB573F93B03A69634</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>45FE091D4DD2D50FA7D3340B1DB838F22161FBEE94</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>5670457314E405B0ED1583FC4B82FEAD94B434EBED</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>1C4CAE25146D74F3762B5C3FD3A917522564855675</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8B4B3CBFB00466F63B30FEAD111E163D56118A7D93</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>C89C3A2C9C06626EB831F4BB5262809B9C138181C4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8109F97073FF3D286B21095E7AFBBAFAA62B1313EE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>55E985CC1581F3D0052F53DB469F6DC9B72C8F0F5C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>2802AA97D4C79B1813AB23F2DD71072209BCFF9D4F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>881509A34D80B5AB5CEC65B859DF2D998F1A98B2DD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>B2918BC593DEC4559C279CFA050CB0F917D8ED7FF3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>0FE0529B45AFC9BB66323C2182DE414A3D24275EEF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>1FF923C4B1E1007EF168E4185280F8184B14D41DC3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>05D1E56D04BC435A60BDE06C5AFAC9E3CB282C7B16</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>99FE149183022F9EB2EB815BCC9504E59C524A1497</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>79E29F3FCB3777460EC0F43D3D7048A7F4919120FE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>22A70A865774E55CF08A70435611252278DCE76AED</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>9CBA922190F1659F6AA3B2B98347EEC28DCD740C67</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>A037A8B1C20DC883FAABF82D8A591B9E2BE41C79CE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>82824BE51C81A5FF4C4268E256F6621B9656325BEF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>E166049AC4E765E513AFA8A35DDBE7562E01B79FC2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>90E975CC54F8BDA5A6CED39088716B272C4B5887CE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>1FFD40D7BBA891A7E6C4DED39FB0740B6A5AD39E84</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>406C92305ACD663AB0B9EB66DED7929547C692FE11</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>E82BD75AA9467E0B8D92362A56CB5D7353508CC355</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>0182E41FCA166CEAED10972BDF5F57A8F851200E37</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>101FB775982CA15E37A065F7CDC5593DE385BDF504</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>D7499C6A1218C419A1F81AA5E3F41E88AF0704B614</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>2C6222B8E2E97F63FFE9E2FC32D673FAAEC7201B95</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>6789F0680A5C5840B8ED34B061494171E6407643F9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>43E663725870C4801A917C41C9B58C419933A93475</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>8B3308BDD5A8AE507200EAA16FE19D42F3736716A5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>CA202602C9A265559B6B96729B574DAA9B6D67036F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>F6A33ADA6A0F5990E9DA747550DE0941AE4263D468</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>79A4E1398F511B262E60DCFE9E838C938B806716A9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>6F2402CCE4A91C1B848CCABD915657A242EA1FC6D2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>B9ED7B3135488439E78DF480AD845E7EFEE3EF39E6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>65B27A78C72DFEEA6C92846330CE98C6721909E89B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>8F8FC96A3D958731780B50E843D6BB65137A0728C3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>642DDC3F4E11C3051D6CDED8DD898C4CAEB2463E25</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>0FE4BDC1000D1AC2F5E83A938A2BE2F14C62609AB4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>32D7F10C5EAA9961B590E8FE4561B9D571AD446F0C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>C05FE26245C742CC01B23C655E5D934D734610DE01</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>818C967A8F742565CCA37CEA8C683FCC5BEE9DA7B0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>5301B5B2A1A6EB6832DC47F3A0850B5680178499B3</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>9CB5BD2394B268E13DCA91EE2BB0A39C101A5534AA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>EB90D956B358B7C5E9FC4A4EFA02589B2357EA87EA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>ACAFB5EB24FFB3B418587B832F52C2260339CD1DD4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>A7B0859D9D1BF5E59047192BF2B8C7ACC676E0C4B2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B0F0F2EB445AB4DBE901D3C2484822595F58B91CCD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>C11C0499CC9EC9FBB6ACA7BF4C0B538991A350E7A2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3F63500AC41074B4D2C1A991CBBBB013D8416F66C2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B47F802F1238A73054DEFD7D3AABFC819FC75A29D9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3099237692953AB2017A1BF0B12DAFC8F3A797AA45</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>CD045229461658BC6C47C259F2D20433173DE4D31E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>D85432F8ACAE9653D34A68D9329F347AA10E53DB6D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>C77FDE2E52892DF5613E6A3B8F1C80B92E9E2AB0BC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>62E06B8A2650199AE6E73AB3F503BF027DCEC0A49B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>A5B348EB4926290B223724CC8E4ED67FF458F23622</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>2A824C1B6B36AD48D0A5AE94E27988D4F6BDCB2A25</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>4B8D18B96EB898D1BAA8BDD82BC443F0FF00CE1360</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>9DABF586AD2BCD603DC38C3987C98D73A5A9F4B3B2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>F734BE1BF990A3A59CEA6C821492F0B660C6488EF0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 168, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>47C18634A09AB37AB6EECBCD5C7E7F234F02E574A1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>3037AFC8EACD4E2AEAB3C1E343B81DE84ACF7E50A7FB67481AA26FAE2392310DEEF5BA9CB27DCE2D3FB11C95109E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>37F44080CB10A6F7E2719CC979FE0F2E37D0A2CD9B5FC87F188064903840A07BEA1540D4397A8C3BF85454D5EAEF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>8A18939ACF4A00A900FE2351DCBAFD0C19FCB0959936E4C6D9ED338B321B97C02E22A12E67A249DF5FFBB5F09E01</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>AFF6C5EDE0A50855FE56FDEDB6031BD0BDEFCB74C596AEC2CBF2648BC315B5422D9071708C31F2FCC6D7AC48ED63</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1</iterations>
-			<key>2ED53BB2CE3C39A2F4039B734F9D94C5075116B05A655F8AB429B72644AA7EE4C3FA31141DACFEB8D89E1825091F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>49CABE7B67736931126499722509C03D4BBEF714A80CCCCF475F4CA3FCBC217CAFA6AFF894CEA28E0DCD7B5A0D0D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>F994B990D3554AFB778C729E9BAA0CC6EB5BA765340999DE8474B918B754A380F8141A055CD68B85B4CDCC592ED9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>1AFAAD7E51964CCD2760CCE134E1F2B87B314CC0246300C1BDD916C1EF496E57D589FB2C357D7EF9142AB64B2E02</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>878C91098D1F4FD0DD8CBC3A8149DF5FDE18B82888F04507B6810813D6DDAF8E0257911B49AB5250127C50809B33</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1</iterations>
-			<key>0DE3F08CAF4FF556C956527AD47C3497C24281A32B7984CFB3D568FE48E9F78B99EB8561E2F627E46D0EEECF491C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>90253A49C069E7FF35281461A4DDBE0BB38F4041A04FF42A617251CC66ED7314BFAF4CB2F47A98E42B8AA3BE142A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>40BE97AB930A7E8B6DB634C93B94E699D1AD5125B8FA3F056762C96D7E119F68827FBFCC07B2A9E98238B52AA02B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>A64B43E14E9F71F9EC9A3E6B73FA35E6F7058A9FC812A4EEE1F3DE7E52EA6A981DB02085FC4AB4860E438EA50BC5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>E323D5F588414AE68EF8FCA46879C1C7317B8FA9C19C126E28BC5C05064D38F67EF7A72A28795F0CFBA8574DA174</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1</iterations>
-			<key>27476572AF26E99AB85CD350DC802ABA3A831332A7E037629B764434E2E02B5AB8E8A3DC181BBA3AD9AF9D7E8F08</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>A1D9010A6761CB2675F1C33BB3C5215851703D0D2657B057B9372B986ABA327B6C8B8D4372656C74E9756C7C0C2C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>17E4E1F15BC31052E563BFF7B5D11D1545835E9B47AC57D1E3FE07F2C194037B1CE0E18DE0CB8C335975EA51B037</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>D1B71808FCCA5C97E8E52CF5E23C633C5B9D4A5BE332D3AB8A36EE0DC8F1B7E691D2FA8BCCC2C7C371639EBA5CC6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>EE7E4073F2E6008722BB9842540998C2C4F7A87C3A0EC11A60E916ADAD62C57711E88134D3451CEE8640938390E9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2</iterations>
-			<key>5BF185C726EE2182888A834066C30BA92C0A6A140FD09995773E708440FF38F65CBF71E7449EF43ADDDDCCEE7B63</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>72ADF5E0413FDBF6659A1E7D495BBE32915F295734423A7247E5DFD46D2CE07E64F4F881362C98992B188EDE499D</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>63E6DF459C899D72577C20FFE4F27670F3A85EA780B450C711D83FB12C0B0A0539209B1B06AF82EE392AB3FD6A6B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>C2099204ABFBB841875BD7595A89D31A9D03A34B94D3ED582C55B0787E2FB841ADE1E6171D6FE2BDDB19A658F552</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>3204D28A32DF299B612958906C79154AED69D3F1C0351B1A4B4E2DCA7E93F3CAD92714CC9E13CCD0E95A305EBB13</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2</iterations>
-			<key>FB845F70A40E96C536641C3F797AAE39BE8A81CD04873EC243829CE9F83DE277AEC92B18D43211D6DAC966AFFFE8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>B9230EEC1D615A6DFEF5A8793CB067834B66B77A11162299D91EC09517DEACB6C8992D8D1952B9410AED287F9387</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>462B0F2D1B18297A3F2C5E4058A0083E1FF74BE8CC49A6C7BD0A735DBA22FCBC56A6AACAA2ECE7F146A54C7442A7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>05B66EF1BB844470CBBB46D5F4C7DB291B21A4623F41D1179DBADD72CF7CC8A3F03118C5EF87C588C6665E942158</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>C1B7E77C96BB5EE1386E8461A58F0D0CB544944CDFE51188263603019F80688985DB1EF389A8F2CADA47463756C7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2</iterations>
-			<key>3DE08CDACF489F30BBD75C0FF401EC02E87ECD4647451A53DE6218B8B2F860931DE8975712EAC7CAF34347828525</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>D0158BFC57E643965DC161741725CE9478CDF2A0B52A78253F32B2DFCC2228C929F19663EC3AF4B6B3B4A514D2AE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>AEB6CD53F0D6830161100C4BFD439B341066339A0025D3CF7DC68CEE4D9AC92B10B29EB19973637D27DC2C9BF911</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>80010C12B66CC739F4ACF8BB154197709F78AAD39ABC8EEC11F7C88CD138DE85A21B5D5DCB9C8E50E0AFABE82149</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>497DE34C4C64E56AD53E5F8F6E16D1A3220BC95812046A01A53F6FB1C9051ED917D0B3C08A82CADA712730DD2410</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>4</iterations>
-			<key>146C6A5B58AF8561220DE4C13A133248300D59D39E22569CC568CB98585324F9287A672ABFCDF360A26B8B83D1AE</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>E89772E7A52D6D8C65AAE01D0380ED59927CD0C2BE22F0030D6D6FBF85D6A56D7D55A3002233181BCC2A0C4108C8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>23930713772E26DBBABB53F3C5C775019B8048482B6FECC40729F2D5023D6F3C27092166E11A435738C3E0DBF7B0</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>DF2D961FE3929BBA41493EB5421FEF7C2F6C31FE0A93D6A3DD0A61826365407B4C1CBB589C0BC10EC8B510A83771</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>363619530B170B7BAE1C046B29351C235B8EFED58879EAB2DAF93502D254C5569C2667F16B2AA036619AAF4D8E33</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>4</iterations>
-			<key>B43FA2D22B6912F6FEDF1CF3FAD123AF6FC587CA4EFF6FE83AD6ED83E4F217EF7E0C6727BEF0614398026907E7E6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>EF50923D65A0610BDC51AD5DB1B4F4F98FD4D15B0EA1D3AB1983B1E0496EB6FD7259774354267B1976BE459A1D23</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>9A618595C714486B7D7E3120005C8BC18D5D95D79B54DE1063C64DBE97C41BFC6A4A5239B77F2F603C7AFE06247C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>B3B33AA8A6777605E3029C0F8DC45290E3C4167208FA46F3C504ABA355D99FE3A4291DBAB83CB6980CD28C153D24</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>C007DC1ADA9475C5DB2F9B5D18A2DEFD93A30AE3B2F2B76DBC180C689C88147F5366D48C10086AD45B445F818F22</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>4</iterations>
-			<key>91DF3661364A0DAD28180A41ADCB55676E992986EFCD5481A7EBCCA45806E087BB95BAEFD24685A7D9B08426EFCF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>9A08D3C4F584ECD1E538B7A46DCFDEA18A8F8BE4612564ECF299468389BF3597B38FF0ADB79AE9A718D7FC5E0D7E</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>33002FA0B6A5A27991A062FF6173E357D9496E6ED1CD2460647D83960A81A688C1E7C3CB1745C640F96CA26BAB55</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>22001FA26964DCD0BE3C58AB6E43557CE7B006E466B5176BC31A916229C8DC27918BEAC1912CCD1BEDD4D9AC6F7F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>B0935F11227F5A473073DCD188886687D2A18119532A1D5D0A8631441599FF319BD921404D04DA973217A199F621</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>8</iterations>
-			<key>6602B1B4BBB670208041ECD8E1634845FC0DC28532AF24AA6CB93368E87126BC821DB7B3F4301455B454E9715981</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>3A478368DD5DC61BAA09325959A3F46C7F46AD9E449B3AFB8236BFFDF548BA07B6269CB5C0D0E0E00AABB5E872F7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>6473EB1244E055149E0858C49FAE7B8DC951E7E32AC2AA2146482717104D3E93074D41BCA226B3212A41E4EC0F00</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>AA762B8736D4C37BAD263103CA283E09010B7EFC538B44C6C3CB724C8CEC28C91F57A2778A8C74CBBF00A63D6875</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>F00C5240B03C9A2324BD5FE0AEEE1B6237EB9421D88232044436DA8D74F09E19B578C65F8629D022FD8D529F11E2</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>8</iterations>
-			<key>935593CA370BB6988F2F41D2F4ABF56E433064D83E5C5C9892BDB854C8219FFBC1404D590450B1613EB0D2CC0447</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>FCE1F429AEB3B9818D96B88DD25CDED9F01233C0BFCE80BAAFDC06F9C1D1A2862C10203D891E0B2C23F5394ED271</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>82B4A13659033EA4025DB51A6CB573F93B03A69634D71DFB7E270A406AF705382CCA3BB17F29C88ED81EA583AFF5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>45FE091D4DD2D50FA7D3340B1DB838F22161FBEE94047C10AE3CA2853B57E8E59A819DE9BB2D4F3BFBD302F978C7</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>5670457314E405B0ED1583FC4B82FEAD94B434EBEDD86DFBC39161A8A7E48CAD3591C2C9A14FAA242D860ED55163</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>8</iterations>
-			<key>1C4CAE25146D74F3762B5C3FD3A917522564855675801D9D7D946C11B6F57C42C2E7447F8CACF4178D8F7A001A18</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8B4B3CBFB00466F63B30FEAD111E163D56118A7D93AF1D5E01AB3B9973959193DE7A2433CB46A8A15F2D84D97DBC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>C89C3A2C9C06626EB831F4BB5262809B9C138181C44B6D521245B6BBDBE2271369C6B77EC12626368DFCEB358BB8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>8109F97073FF3D286B21095E7AFBBAFAA62B1313EEE6D0B4E9C0A5EBBFF08FC23CB11E1DB17EBAE6A93C2DA749A6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>55E985CC1581F3D0052F53DB469F6DC9B72C8F0F5C2011A3B26BD1C95A8797741938D8E3F2057F76B04310B3D922</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>128</iterations>
-			<key>2802AA97D4C79B1813AB23F2DD71072209BCFF9D4F97A6D3BDA02B3173244164AAE9123987A00699B74F042C35DC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>881509A34D80B5AB5CEC65B859DF2D998F1A98B2DD8D380FA3C08389E335A71B575F3D48228119EA2E34351C7E51</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>B2918BC593DEC4559C279CFA050CB0F917D8ED7FF3FD6375B5D9AB89DDA3B28526392E1BED3594C3A22594137133</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>0FE0529B45AFC9BB66323C2182DE414A3D24275EEF6F15DAE903AEAA4C8A9A23B8DA9E91293F5ED1904E6D8F8ED5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>1FF923C4B1E1007EF168E4185280F8184B14D41DC3483C97430FABCCAB60A1F471741095AEB2B22B00951CEFB816</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>128</iterations>
-			<key>05D1E56D04BC435A60BDE06C5AFAC9E3CB282C7B16C2FF4007B705AC86ACDBE7C08A599E170F42573671CAAC9978</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>99FE149183022F9EB2EB815BCC9504E59C524A1497922B0A2AAB43D17ACD0C3C782048DA1AD2BA09B56143681975</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>79E29F3FCB3777460EC0F43D3D7048A7F4919120FEB822868DC3090EEB79DED23D3E5F8FADAF47EB100E36B393BF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>22A70A865774E55CF08A70435611252278DCE76AED5C8A686073CBBEFEA2A3498BF5505B3E9CC6A1BE108737874F</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>9CBA922190F1659F6AA3B2B98347EEC28DCD740C672CFA941C4ECCF5F173B42AABBBE23AEF7593C67EF5B183C3C8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>128</iterations>
-			<key>A037A8B1C20DC883FAABF82D8A591B9E2BE41C79CED20B6799ADA986C06DDF299F615C6B222A9C12CB65CD078D9A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>82824BE51C81A5FF4C4268E256F6621B9656325BEFB8E936331AB1AB8BDE634EA6298D7B8EB79832AAF01CF1F49A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>E166049AC4E765E513AFA8A35DDBE7562E01B79FC2680CD8CEAEF02609895F3CAC00A837D49674737EEC85151786</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>90E975CC54F8BDA5A6CED39088716B272C4B5887CE53571C9CE41B5FB82532D38F0DB4489BC642605ACF4FDCAEF5</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>1FFD40D7BBA891A7E6C4DED39FB0740B6A5AD39E848576D39CDFA77EFE9969986D072D8C44B9147961EC0A3BC5AC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1024</iterations>
-			<key>406C92305ACD663AB0B9EB66DED7929547C692FE118E8D16D80EDCE4FAFBB47960F4B4AB7272496528D235E45B5A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>E82BD75AA9467E0B8D92362A56CB5D7353508CC355C1E6AFFDE182AC0F49BF46F175F79F51352196D93EA67E17DF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>0182E41FCA166CEAED10972BDF5F57A8F851200E371EC06DC900E66ACAEA25B12EFE28E7571395A1B57ABB8E9DAC</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>101FB775982CA15E37A065F7CDC5593DE385BDF504433650CC572F880CE0F525E77551ACFFCF92F66C9D407BFABF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>D7499C6A1218C419A1F81AA5E3F41E88AF0704B61492CF0D98500BD3842C77C2D639589A83E60B22BE53751156F1</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1024</iterations>
-			<key>2C6222B8E2E97F63FFE9E2FC32D673FAAEC7201B95969233AAFAC6ABB4C369DDD9394FBCE2C4D86670BAA2AD6355</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>6789F0680A5C5840B8ED34B061494171E6407643F9400545C62690ED570B3AAD96654D5DE15C7CA6AE242E6123E9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>43E663725870C4801A917C41C9B58C419933A93475CEA2FBB864F29E6D949DF2AAA8ADAB91C8A32B68062F12EE61</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>8B3308BDD5A8AE507200EAA16FE19D42F3736716A5C24BF367B0C63BE89EA9EB57615C0ABFAFC3FB8DFDEA3907AA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>CA202602C9A265559B6B96729B574DAA9B6D67036F69D903784374671E9B7E087ADE4AB9C5AE6BB62530C90F4E9C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1024</iterations>
-			<key>F6A33ADA6A0F5990E9DA747550DE0941AE4263D4689DBDFBE81CF5F337376B8EEC58ADFD518A26768ABEB20131B9</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>79A4E1398F511B262E60DCFE9E838C938B806716A9831A1BF6FFE616ADE12860428079E9CD2165E9194346EB6677</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>6F2402CCE4A91C1B848CCABD915657A242EA1FC6D25BFDD890E8B903E66B306ED5C9F5C7B53BEA11BD495C328951</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>B9ED7B3135488439E78DF480AD845E7EFEE3EF39E64B6690AE6ED16C5A82A0F7E7D9578BA7F62A7427260733165A</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>65B27A78C72DFEEA6C92846330CE98C6721909E89B014925B22427256BC6A4EFEB7A83A2244E59A25E7DE2F01FA6</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>1536</iterations>
-			<key>8F8FC96A3D958731780B50E843D6BB65137A0728C3A4C55D23D4A0E99EBA71F56EC19356B50B987F486F3FF74A9C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>642DDC3F4E11C3051D6CDED8DD898C4CAEB2463E25C6120B9099920440D11725F1D4F7CABFB8A170BF9744B74461</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>0FE4BDC1000D1AC2F5E83A938A2BE2F14C62609AB413E8EAC164C3BA1FAD7ABC1CADB1BF7458010BF7814262F563</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>32D7F10C5EAA9961B590E8FE4561B9D571AD446F0CC173973E296F655BAB0BFEA7E51BACD8FC73AB278469439B58</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>C05FE26245C742CC01B23C655E5D934D734610DE015AEFA126CC8A53FBD91EC774AE631F57444E206494BE6EB304</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>1536</iterations>
-			<key>818C967A8F742565CCA37CEA8C683FCC5BEE9DA7B0E036709FBD02F0FA15B7497042FF3E0B56ED26ACC058F1D00B</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>5301B5B2A1A6EB6832DC47F3A0850B5680178499B3E8CDC6C4D8D7D7226769FADE4650767B4472BBD418B2D969EB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>9CB5BD2394B268E13DCA91EE2BB0A39C101A5534AA3932F031B4FB2D6F799C857B7B821D5CB05419EE6DF2D10BBD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>EB90D956B358B7C5E9FC4A4EFA02589B2357EA87EA949B44DA6EAFD9D83FCD9365C617C137F7EC9C3EF036BD592C</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>ACAFB5EB24FFB3B418587B832F52C2260339CD1DD458CDBB895741595BD6F879B9134D56F8695A654407E4809C56</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>1536</iterations>
-			<key>A7B0859D9D1BF5E59047192BF2B8C7ACC676E0C4B272CB0DD4D76CAE04D831A4C12BC353F7C60F50ED67DF548599</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B0F0F2EB445AB4DBE901D3C2484822595F58B91CCDD858068993D4F95777E800B47B0A091487E50D888139BBAA95</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>C11C0499CC9EC9FBB6ACA7BF4C0B538991A350E7A2275085600120C9642E197813F99DBE317142466C44961771AF</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3F63500AC41074B4D2C1A991CBBBB013D8416F66C2D6DD3D0577A59043B25D770FAC6CFF48666D15795B61297255</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>B47F802F1238A73054DEFD7D3AABFC819FC75A29D97444114C46756D3F2FD1DF12182CF6C83CF32E72D1A70DF206</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 4</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>53414C54</salt>
-			<iterations>2048</iterations>
-			<key>3099237692953AB2017A1BF0B12DAFC8F3A797AA45F218B705E54071E5BE4AB622F2E9B45FCA663D8B30ADCC0073</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>CD045229461658BC6C47C259F2D20433173DE4D31E54B1D693738FBA6D643ECB095761373FB0E49F9C478BA11755</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>D85432F8ACAE9653D34A68D9329F347AA10E53DB6DC8B942CA4D9447EDFC29A5BDC1D450A73B298C6A9A8ED7D2F4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>C77FDE2E52892DF5613E6A3B8F1C80B92E9E2AB0BC37C801DE5E02A6DD1A193970B4505A403005B378BE47D61FEB</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>62E06B8A2650199AE6E73AB3F503BF027DCEC0A49B2F0294723113F25347AEAF0109E270C77A2524CAC118D164B8</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 20</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>1D565078C3506F89BDA73BB6E3E5B8A3683DD362</salt>
-			<iterations>2048</iterations>
-			<key>A5B348EB4926290B223724CC8E4ED67FF458F2362279F0DF9F3A92AFF0473030D0EBA6E4173AF91E7AE535D3E988</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0000</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>2A824C1B6B36AD48D0A5AE94E27988D4F6BDCB2A259262CE1B3E626454FF2A5B69A372FE3894C48E574F70F191F4</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>0001</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>4B8D18B96EB898D1BAA8BDD82BC443F0FF00CE13602A15DF682A601681221A748627D1C585C079F8DCBD5ABE9763</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>PSWD</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>9DABF586AD2BCD603DC38C3987C98D73A5A9F4B3B2A148121AE3E9E23B3891882F575F204CB0639FC9FDB9D5B0BD</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>password</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>F734BE1BF990A3A59CEA6C821492F0B660C6488EF08E3059843173C72CD79EFEADE34A6DA91F6AB8E92383F1BDFA</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-//! @SYMTestCaseID CIT_PREQ1054_01
-//! @SYMTestCaseDesc Correctly generate key for given KDF mode, password, key length and salt length.
-//! @SYMREQ CIT_PREQ1054
-//! @SYMTestPriority medium
-//! @SYMTestActions Generates a PKCS#12-format key from the supplied parameters.
-//! @SYMTestExpectedResults The generated key matches the expected byte stream.
-<action>
-	<actionname>PKCS#12 KDF, key len = 368, salt len = 25</actionname>
-	<actiontype>DeriveKey</actiontype>
-	<actionbody>
-		<derivekey>
-			<kdf>pkcs#12</kdf>
-			<passwd>abcdefghijklmnopqrstuvwxyz</passwd>
-			<salt>E22C7B03163AE547F8239DA40D6F46D79EA3C6FFB3F04EBE61</salt>
-			<iterations>2048</iterations>
-			<key>47C18634A09AB37AB6EECBCD5C7E7F234F02E574A1167ED13693E8373DFB92EC6F000DBADB9363CA12E9E16ED019</key>
-		</derivekey>
-	</actionbody>
-</action>
-
-<action>
-    <actionname>OOM End</actionname>
-    <actiontype>stopmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tpkcs5kdf/tactionderivekey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,225 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionderivekey.h"
-#include "t_input.h"
-#include <pkcs5kdf.h>
-#include <pkcs12kdf.h>
-#include <stdlib.h>
-
-_LIT8(KKdfStart, "<kdf>");
-_LIT8(KKdfEnd, "</kdf>");
-_LIT8(KPKCS12Kdf, "pkcs#12");
-_LIT8(KDeriveKeyStart, "<derivekey>");
-_LIT8(KDeriveKeyEnd, "</derivekey>");
-_LIT8(KKeyStart, "<key>");
-_LIT8(KKeyEnd, "</key>");
-_LIT8(KPasswdStart, "<passwd>");
-_LIT8(KPasswdEnd, "</passwd>");
-_LIT8(KSaltStart, "<salt>");
-_LIT8(KSaltEnd, "</salt>");
-_LIT8(KIterationsStart, "<iterations>");
-_LIT8(KIterationsEnd, "</iterations>");
-_LIT8(KLeaveInPerformAction, "<leaveinperformaction>");
-_LIT8(KLeaveInPerformActionEnd, "</leaveinperformaction>");
-
-CTestAction* CActionDeriveKey::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionDeriveKey::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionDeriveKey::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionDeriveKey* self = new(ELeave) CActionDeriveKey(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionDeriveKey::~CActionDeriveKey()
-	{
-	delete iBody;
-	}
-
-CActionDeriveKey::CActionDeriveKey(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CTestAction(aConsole, aOut), iFs(aFs)
-	{
-	}
-
-void CActionDeriveKey::ConstructL(const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);
-	}
-
-void CActionDeriveKey::DoPerformPrerequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 deriveKey = Input::ParseElement(*iBody, KDeriveKeyStart, KDeriveKeyEnd, pos, err);
-
-	// KDF is only explicitly specified for PKCS#12 derived keys
-	pos = 0;
-	TPtrC8 kdfTemp = Input::ParseElement(deriveKey, KKdfStart, KKdfEnd, pos, err);
-	if (err == KErrNone)
-		iKdf = kdfTemp.AllocL();
-	
-	pos = 0;
-	TPtrC8 passwdTemp = Input::ParseElement(deriveKey, KPasswdStart, KPasswdEnd, pos, err);
-	iPasswd = HBufC8::NewL(passwdTemp.Length());
-	*iPasswd = passwdTemp;
-
-	pos = 0;
-	TPtrC8 iterationsTemp = Input::ParseElement(deriveKey, KIterationsStart, KIterationsEnd, pos, err);
-	iIterations = HBufC8::NewL(iterationsTemp.Length() + 1); //added 1 for the null zero used later
-	*iIterations = iterationsTemp;
-
-	pos = 0;
-	TPtrC8 saltTemp = Input::ParseElement(deriveKey, KSaltStart, KSaltEnd, pos, err);
-	iSalt = HBufC8::NewL(saltTemp.Length());
-	*iSalt = saltTemp;
-	Hex(*iSalt);
-
-	pos = 0;
-	TPtrC8 keyTemp = Input::ParseElement(deriveKey, KKeyStart, KKeyEnd, pos, err);
-	iKey = HBufC8::NewL(keyTemp.Length());
-	*iKey = keyTemp;
-	Hex(*iKey);
-
-	iOutput = HBufC8::NewL(iKey->Length());
-
-	pos = 0;
-	iLeaveInPerformAction = Input::ParseIntElement(deriveKey, 
-		KLeaveInPerformAction, KLeaveInPerformActionEnd, pos, err);
-	if (err)
-		{
-		iLeaveInPerformAction = 0;
-		}
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EAction;
-	}
-
-void CActionDeriveKey::DoPerformPostrequisite(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	delete iKey;
-	delete iSalt;
-	delete iIterations;
-	delete iPasswd;
-	delete iOutput;
-	delete iKdf;
-	iKdf = 0;
-	
-	iFinished = ETrue;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CActionDeriveKey::DoReportAction(void)
-	{
-	}
-
-void CActionDeriveKey::DoCheckResult(TInt)
-	{
-
-	}
-
-void CActionDeriveKey::PerformAction(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	iResult = EFalse;
-	
-	if (iLeaveInPerformAction)
-		{
-		User::Leave(KErrArgument);
-		}
-	iOutput->Des().SetLength(iKey->Length());
-
-	TUint8* nptr= (TUint8*)(iIterations->Des().PtrZ()); 
-	TUint32 i = strtoul((char*)nptr, 0, 10); 
-	
-	iConsole.Printf(_L("."));
-	TPtr8 outputActual = iOutput->Des();
-	TPtr8 passwdActual = iPasswd->Des();
-	if (iKdf != 0 && *iKdf == KPKCS12Kdf)
-		{
-		// convert the password to PKCS#12 password format
-		HBufC* pwdNative = HBufC::NewLC(iPasswd->Length());
-		pwdNative->Des().Copy(*iPasswd);
-		HBufC8* pwdPKCS12 = PKCS12KDF::GeneratePasswordLC(*pwdNative);
-		PKCS12KDF::DeriveKeyL(outputActual, PKCS12KDF::EIDByteEncryptKey, *pwdPKCS12, *iSalt, i);
-		CleanupStack::PopAndDestroy(2, pwdNative);
-		}
-	else	// PKCS#5
-		{
-		TPtr8 saltActual = iSalt->Des();
-		TPKCS5KDF::DeriveKeyL(outputActual, passwdActual, saltActual,i);
-		}
-		
-	if(*iOutput == *iKey)
-		{
-		iResult = ETrue;
-		}
-		
-	User::RequestComplete(status, KErrNone);
-	iActionState = CTestAction::EPostrequisite;
-	}
-
-void CActionDeriveKey::Hex(HBufC8& aString)
-/**
-	Convert the supplied hex string into the binary equivalent.
-	
-	@param	aString			Hex string.  On entry this contains
-							a sequence of hexadecimal characters,
-							e.g., "3037AFC8EA".  On exit it is
-							half the original length and each two-digit
-							hex number is reduced to the matching
-							byte value.
- */
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
-
--- a/crypto/weakcrypto/test/tpkcs5kdf/tactionderivekey.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,55 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONDERIVEKEY_H__
-#define __TACTIONDERIVEKEY_H__
-
-#include "t_testaction.h"
-#include <e32std.h>
-
-class CActionDeriveKey : public CTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionDeriveKey();
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-
-private:
-	CActionDeriveKey(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void ConstructL(const TTestActionSpec& aTestActionSpec);
-	void Hex(HBufC8& string);
-
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iPasswd;
-	HBufC8* iSalt;
-	HBufC8* iKey;
-	HBufC8* iOutput;
-	HBufC8* iIterations;
-	HBufC8* iKdf;
-	TInt iLeaveInPerformAction;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tpkcs5kdf/tpkcs5kdfmain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,178 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* tpkcs5main.cpp
-*
-*/
-
-
-#include <pkcs5kdf.h>
-#include <pkcs12kdf.h>
-#include "t_testhandler.h"
-#include "t_testsetup.h"
-#include "tscripttests.h"
-#include "tactionderivekey.h"
-
-LOCAL_D void callExampleL() // initialize and call example code under cleanup stack
-    {
-    START_SCRIPT_LIST
-	SCRIPT_ITEM(CActionDeriveKey,_L8("DeriveKey"))
-	END_SCRIPT_LIST
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<64> scriptFile (sysDriveName);
-	scriptFile.Append(_L("\\tpkcs5kdf\\tpkcs12kdftests.txt"));
-	
-	TBuf<64> logFile (sysDriveName);
-	logFile.Append(_L("\\tpkcs5kdf\\tpkcs12kdftests.log"));
-	
-	CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile);
-    }
-
-
-GLDEF_C TInt E32Main() // main function called by E32
-    {
-	__UHEAP_MARK;
-	CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack
-	
-	TRAPD(error, callExampleL());
-	__ASSERT_ALWAYS(!error,User::Panic(_L("tpkcs5"),error));
-	delete cleanup; // destroy clean-up stack
-	__UHEAP_MARKEND;
-	return 0;
-    }
-
-// The following code was used to generate test data.  It is left in
-// the source file because it provides an easy way to generate a large
-// number of PKCS#12 derived keys if required.
-
-#if 0
-
-static void TestPkcs12KdfL();
-static void TestPasswordL(
-	TInt aKeyLenInBits, TInt aIterCount, const TDesC8& aSalt,
-	const TDesC8& aPassword, const TDesC& aPasswordText);
-static void PrintKey(const TDesC8& aKey);
-
-static void TestPkcs12KdfL()
-	{
-	__UHEAP_MARK;
-	
-	const TInt KKeyLenCount = 4;
-	const TInt KKeyLens[KKeyLenCount] = {40, 128, 168, 368};
-	
-	const TInt KIterCount = 8;
-	const TInt KIterCounts[KIterCount] = {1, 2, 4, 8, 128, 1024, 1536, 2048};
-	
-	const TInt KSaltCount = 3;
-	TPtrC8 salts[KSaltCount];
-	
-	const TUint8 KSalt4[4] = {0x53, 0x41, 0x4c, 0x54};
-	salts[0].Set(KSalt4, 4);
-	
-	const TUint8 KSalt20[20] =
-		{
-		0x1d, 0x56, 0x50, 0x78,		0xc3, 0x50, 0x6f, 0x89,
-		0xbd, 0xa7, 0x3b, 0xb6,		0xe3, 0xe5, 0xb8, 0xa3,
-		0x68, 0x3d, 0xd3, 0x62
-		};
-	salts[1].Set(KSalt20, 20);
-	
-	const TUint8 KSalt25[25] =
-		{
-		0xe2, 0x2c, 0x7b, 0x03,		0x16, 0x3a, 0xe5, 0x47,
-		0xf8, 0x23, 0x9d, 0xa4,		0x0d, 0x6f, 0x46, 0xd7,
-		0x9e, 0xa3, 0xc6, 0xff,		0xb3, 0xf0, 0x4e, 0xbe,
-		0x61
-		};
-	salts[2].Set(KSalt25, 25);
-	
-	const TInt KPasswordCount = 5;
-	HBufC8* passwords[KPasswordCount];
-	TPtrC passwords0[KPasswordCount] =
-		{
-		_L("0000"), _L("0001"), _L("PSWD"),
-		_L("password"), _L("abcdefghijklmnopqrstuvwxyz")
-		};
-	for (TInt i = 0; i < KPasswordCount; ++i)
-		passwords[i] = PKCS12KDF::GeneratePasswordLC(passwords0[i]);
-
-	for (TInt klenIdx = 0; klenIdx < KKeyLenCount; ++klenIdx)
-		{
-		for (TInt iterIdx = 0; iterIdx < KIterCount; ++iterIdx)
-			{
-			for (TInt saltIdx = 0; saltIdx < KSaltCount; ++saltIdx)
-				{
-				for (TInt pwdIdx = 0; pwdIdx < KPasswordCount; ++pwdIdx)
-					{
-					TestPasswordL(KKeyLens[klenIdx], KIterCounts[iterIdx], salts[saltIdx], *passwords[pwdIdx], passwords0[pwdIdx]);
-					}
-				}	// for (saltIdx = 0; saltIdx < KSaltCount; ++saltIdx)
-			}	// for (int iterIdx = 0; iterIdx < KIterCount; ++iterIdx)
-		}	// for (TInt klenIdx = 0; klenIdx < KKeyLenCount; ++klenIdx)
-	
-	CleanupStack::PopAndDestroy(KPasswordCount, passwords[0]);
-	
-	__UHEAP_MARKEND;
-	}
-
-static void TestPasswordL(
-	TInt aKeyLenInBits, TInt aIterCount, const TDesC8& aSalt,
-	const TDesC8& aPassword, const TDesC& aPasswordText)
-	{
-	__UHEAP_MARK;
-	
-	TBuf8<512> key;
-	key.SetLength(aKeyLenInBits / 8);
-
-	RDebug::Print(
-		_L("\nkey len = %d, iter count = %d, password = \"%S\", salt len = %d"),
-		aKeyLenInBits, aIterCount, &aPasswordText, aSalt.Length());
-	PKCS12KDF::DeriveKeyL(key, PKCS12KDF::EIDByteEncryptKey, aPassword, aSalt, aIterCount);
-	PrintKey(key);
-	
-	__UHEAP_MARKEND;
-	}
-
-static void PrintKey(const TDesC8& aKey)
-/**
-	Print the supplied key in hex byte format, with
-	16 bytes on each row.
-	
-	@param	aKey			Key to print.
- */
-	{
-	const TInt KBlockSize = 16;
-	TInt keyLen = aKey.Length();
-	TInt rowCount = keyLen / KBlockSize;
-	if ((keyLen % KBlockSize) != 0)
-		++rowCount;
-
-	for (TInt row = 0; row < rowCount; ++row)
-		{
-		TInt start = row * KBlockSize;
-		TInt end = Min(start + KBlockSize, keyLen);
-
-		TBuf<64> line;
-		line.Format(_L("[%04x]"), start);
-		for (TInt i = start; i < end; ++i)
-			line.AppendFormat(_L(" %02x"), aKey[i]);
-		line.Append('\n');
-		RDebug::Print(line);
-		}
-	}
-
-#endif	// #if 0
-
--- a/crypto/weakcrypto/test/trandom/t_random.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,410 +0,0 @@
-/*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* (c) 1999 Symbian Ltd
-*
-*/
-
-
-/**
- @file
-*/
-
-#include <e32base.h>
-#include <e32std.h>
-#include <e32test.h>
-#include <random.h>
-#include <f32file.h>
-
-#include <randsvr.h>
-
-RTest test(_L("Random Number Generator Tests"));
-
-TInt gNumberOfRandomNumbers=10000;
-
-/** Wraps a console and logs output to a file. */
-class CTestConsole:public CConsoleBase
-	{
-	public:
-		static CTestConsole* NewL(CConsoleBase* aCon, const TDesC& aFilename);
-		TInt Create(const TDesC16& aTitle,TSize aSize) {return iCon->Create(aTitle,aSize);};
-		void Read(TRequestStatus& aStatus) {iCon->Read(aStatus);};
-		void ReadCancel(void) {iCon->ReadCancel();};
-		void Write(const TDesC16& aString);
-		TPoint CursorPos(void) const {return iCon->CursorPos();};
-		void SetCursorPosAbs(const TPoint& aPos) {iCon->SetCursorPosAbs(aPos);};
-		void SetCursorPosRel(const TPoint& aPos) {iCon->SetCursorPosRel(aPos);};
-		void SetCursorHeight(TInt aHeight) {iCon->SetCursorHeight(aHeight);};
-		void SetTitle(const TDesC16& aTitle) {iCon->SetTitle(aTitle);};
-		void ClearScreen(void) {iCon->ClearScreen();};
-		void ClearToEndOfLine(void) {iCon->ClearToEndOfLine();};
-		TSize ScreenSize(void) const {return iCon->ScreenSize();};
-		TKeyCode KeyCode(void) const {return iCon->KeyCode();};
-		TUint KeyModifiers(void) const {return iCon->KeyModifiers();};
-		~CTestConsole(void);
-	private:
-		CTestConsole(CConsoleBase* aCon);
-	    void ConstructL(const TDesC& aFilename);
-	    CConsoleBase* iCon;  ///< Pointer to wrapped console, we don't own this
-	    RFs iFs;
-	    RFile iFile;		 ///< Log file
-	};
-
-CTestConsole* CTestConsole::NewL(CConsoleBase* aCon, const TDesC& aFilename)
-
-	{
-	CTestConsole* self;
-	self=new (ELeave) CTestConsole(aCon);
-	CleanupStack::PushL(self);
-	self->ConstructL(aFilename);
-	CleanupStack::Pop(self);
-	return self;
-	}
-
-CTestConsole::CTestConsole(CConsoleBase* aCon) :
-	CConsoleBase(), iCon(aCon)
-
-	{
-	}
-
-void CTestConsole::ConstructL(const TDesC& aFilename)
-	
-	{
-	User::LeaveIfError(iFs.Connect());
-	User::LeaveIfError(iFile.Replace(iFs,aFilename,EFileShareAny|EFileWrite));
-	}
-
-CTestConsole::~CTestConsole(void)
-
-	{
-	iFile.Close();
-	iFs.Close();
-	}
-
-void CTestConsole::Write(const TDesC16& aString)
-
-	{
-	iCon->Write(aString);
-	TUint8 space[200];
-	TPtr8 ptr(space,200);
-	ptr.Copy(aString);
-	iFile.Write(ptr);
-	}
-
-void Monobit(const TUint8* aData)
-
-	{
-	const TInt bitcount[256]=
-		{ 0,1,1,2,1,2,2,3,		// 00-07
-		  1,2,2,3,2,3,3,4,		// 08-0f
-		  1,2,2,3,2,3,3,4,		// 10-17
-		  2,3,3,4,3,4,4,5,		// 18-1f
-		  1,2,2,3,2,3,3,4,		// 20-27
-		  2,3,3,4,3,4,4,5,		// 28-2f
-		  2,3,3,4,3,4,4,5,		// 30-37
-		  3,4,4,5,4,5,5,6,		// 38-3f
-
-		  1,2,2,3,2,3,3,4,		// 40-47
-		  2,3,3,4,3,4,4,5,		// 48-4f
-		  2,3,3,4,3,4,4,5,		// 50-57
-		  3,4,4,5,4,5,5,6,		// 58-5f
-		  2,3,3,4,3,4,4,5,		// 60-67
-		  3,4,4,5,4,5,5,6,		// 68-6f
-		  3,4,4,5,4,5,5,6,		// 70-77
-		  4,5,5,6,5,6,6,7,		// 78-7f
-
-		  1,2,2,3,2,3,3,4,		// 80-87
-		  2,3,3,4,3,4,4,5,		// 88-8f
-		  2,3,3,4,3,4,4,5,		// 90-97
-		  3,4,4,5,4,5,5,6,		// 98-9f
-		  2,3,3,4,3,4,4,5,		// a0-a7
-		  3,4,4,5,4,5,5,6,		// a8-af
-		  3,4,4,5,4,5,5,6,		// b0-b7
-		  4,5,5,6,5,6,6,7,		// b8-bf
-
-		  2,3,3,4,3,4,4,5,		// c0-c7
-		  3,4,4,5,4,5,5,6,		// c8-cf
-		  3,4,4,5,4,5,5,6,		// d0-d7
-		  4,5,5,6,5,6,6,7,		// d8-df
-		  3,4,4,5,4,5,5,6,		// e0-e7
-		  4,5,5,6,5,6,6,7,		// e8-ef
-		  4,5,5,6,5,6,6,7,		// f0-f7
-		  5,6,6,7,6,7,7,8		// f8-ff
-		};
-	TInt total=0;
-	TInt i;
-	for (i=0;i<2500;i++)
-		{
-		total+=bitcount[aData[i]];
-		}
-	test.Printf(_L("    Total bitcount %d\r\n"),total);
-	if ((total>9654)&&(total<10346))
-		{
-		test.Printf(_L("    Passed Monobit\r\n"));
-		}
-	else
-		{
-		test.Printf(_L("    ***FAILED!\r\n"));
-		User::Panic(_L("t_random.exe"), KErrGeneral);
-		}
-	}
-
-void Poker(const TUint8* aData)
-	
-	{
-	TInt f[16]= {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
-	TInt i;
-	for (i=0;i<2500;i++)
-		{
-		f[(aData[i]&0x0f)]++;
-		f[((aData[i]&0xf0)>>4)]++;
-		}
-	TReal x=0;
-	for (i=0;i<16;i++)
-		{
-		x+=f[i]*f[i];
-		}
-	x*=16;
-	x/=5000;
-	x-=5000;
-	if ((x>1.03)&&(x<57.4))
-		{
-		test.Printf(_L("    Passed poker test\r\n"));
-		}
-	else
-		{
-		test.Printf(_L("    ***FAILED poker test\r\n"));
-		User::Panic(_L("t_random.exe"), KErrGeneral);
-		}
-	}
-
-void Runs(const TUint8* aData)
-
-	{
-	TInt i;
-	TInt lastbit=0;
-	TInt count[7][2]={
-		{ 0,0 },
-		{ 0,0 },
-		{ 0,0 },
-		{ 0,0 },
-		{ 0,0 },
-		{ 0,0 },
-		{ 0,0 }
-		};
-	TInt thisrun=0;
-	TInt longrun=0;
-	for (i=0;i<2500;i++)
-		{
-		TInt bit;
-		for (bit=0;bit<8;bit++)
-			{
-			if (((aData[i]>>bit)&1)==lastbit)
-				{
-				thisrun++;
-				}
-			else
-				{
-				if (thisrun<5)
-					{
-					count[thisrun][lastbit]++;
-					}
-				else
-					{
-					count[5][lastbit]++;
-					}
-				lastbit^=1;
-				if (thisrun>longrun)
-					{
-					longrun=thisrun;
-					}
-				thisrun=0;
-				}
-			}
-		}
-	TInt bound[6][2]=
-		{
-			{2267,2733},
-			{1079,1421},
-			{ 502, 748},
-			{ 223, 402},
-			{  90, 223},
-			{  90, 223}
-		};
-	TBool failed=EFalse;
-	for (i=0;i<6;i++)
-		{
-		if (!((count[i][0]>bound[i][0])&&(count[i][0]<bound[i][1])))
-			{
-			test.Printf(_L("    ***FAILED runs test\r\n"));
-			failed=ETrue;
-			}
-		if (!((count[i][1]>bound[i][0])&&(count[i][1]<bound[i][1])))
-			{
-			test.Printf(_L("    ***FAILED runs test\r\n"));
-			failed=ETrue;
-			}
-		}
-	if (!failed)
-		{
-		test.Printf(_L("    Passed runs test\r\n"));
-		}
-	if ( (longrun>34) || (failed) )
-		{
-		test.Printf(_L("    ***FAILED longrun test\r\n"));
-		User::Panic(_L("t_random.exe"), KErrGeneral);
-		}
-	}
-
-void FIPSTest(const TUint8* aData)
-//	Run some basic tests to check it's returned some numbers
-//	These will panic if a failure is detected
-	{
-	Monobit(aData);
-	Poker(aData);
-	Runs(aData);
-	}
-
-void WriteFile(const TUint8* aData,const TDesC& aFileName)
-
-	{
-	RFs fs;
-	fs.Connect();
-	RFile file;
-	TInt err;
-	err=file.Open(fs,aFileName,EFileShareAny|EFileWrite);
-	if (err)
-		{
-		if (file.Create(fs,aFileName,EFileShareAny|EFileWrite))
-			{
-			return;
-			}
-		}
-	TPtrC8 ptr(aData,gNumberOfRandomNumbers);
-	TInt size;
-	file.Size(size);
-	file.Write(size,ptr);
-	file.Close();
-	fs.Close();
-	FIPSTest(aData);
-	}
-
-class RTestRandomSession : public RRandomSession
-	{
-	public:
-	void SendMalformedInputL()
-		{		
-		test.Printf(_L("Test malformed input with negative buffer size\r\n"));		
-		TBuf8<1024> buffer;
-		TInt err = SendReceive(CRandomSession::KRandomRequest, TIpcArgs(&buffer, -1));
-		if (err != KErrArgument)
-			{
-			test.Printf(_L("%d should have been returned on negative buffer size test, but %d was returned!\r\n"), KErrArgument, err);
-			User::Leave(KErrGeneral);
-			}
-		}
-	};
-
-// Checks that RandomServer handles malformed length correctly - see INC113902
-void TestMalformedInputL()
-	{
-	RTestRandomSession rs;
-	TRAPD(err, rs.ConnectL());
-	User::LeaveIfError(err); // The connect method leaves with zero even if it succeeds, so we have to trap the error
-	CleanupClosePushL(rs);		
-	rs.SendMalformedInputL();
-	CleanupStack::PopAndDestroy(&rs);
-	}
-
-void DoTestsL()
-
-	{
-	TestMalformedInputL();
-	
-	test.Printf(_L("  Run random tests with normal salting\r\n"));
-    
-	TInt i;
-	TBuf8<16> buf2;
-	for (i=0;i<16;i++)
-		{
-		buf2.SetLength(i);
-		TRandom::RandomL(buf2);
-		}
-	HBufC8* buf=HBufC8::NewMaxL(gNumberOfRandomNumbers);
-	TPtr8 buffer=buf->Des();
-	for (i=0;i<11;i++)
-		{
-		User::After(10000000);
-		TPtr8 thePtr(buf->Des());
-		thePtr.FillZ();
-	//	Generate the random data	
-		TRandom::RandomL(buffer);
-		if (buf->Length()!=gNumberOfRandomNumbers)
-			User::Leave(KErrGeneral);
-
-
-		WriteFile(buffer.Ptr(),_L("User.rnd"));
-		test.Printf(_L("."));
-		}
-	delete buf;
-	}
-
-void TestsL(void)
-	{
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName driveName(sysDrive.Name());
-	TBuf<64> logFile (driveName);
-	logFile.Append(_L("\\t_random.log"));
-	CTestConsole* con = CTestConsole::NewL(test.Console(), logFile);
-	test.SetConsole(con);
-	
-	DoTestsL();
-	
-	//	If test reached here, no tests failed, otherwise it would have panicked
-	//	and terminated prematurely. Print this out for tester's reference.	
-	test.Printf(_L("\n0 tests failed out of 12\r\n"));
-	}
-
-GLDEF_C TInt E32Main(void)
-
-	{
-	CTrapCleanup* cleanup;
-	cleanup=CTrapCleanup::New();
-	
-	__UHEAP_MARK;
-	
-	test.Start(_L(" SYMTestCaseID:SEC-CRYPTO-RANDOM-0001 Starting random number generator tests\r\n"));
-	CConsoleBase* originalConsole = test.Console();
-
-	TRAPD(ret,TestsL());
-	if (ret)
-		{
-		test.Printf(_L("Unexpected leave\r\n"));
-		// Print something to let the build system know we failed
-		test.Printf(_L("\n1 tests failed out of 11\r\n"));
-		}	
-	test.End();
-
-	if (test.Console() != originalConsole)
-		{
-		delete test.Console();
-		test.SetConsole(originalConsole);
-		}	
-	test.Close();
-	
-	__UHEAP_MARKEND;
-	
-	delete cleanup;
-	return(KErrNone);
-	}
--- a/crypto/weakcrypto/test/trandom/t_random.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
-@file
-
-@SYMPurpose t_random.exe Test harness for random generation implementation
-*/
-TARGET        t_random.exe
-TARGETTYPE    EXE
-
-SOURCEPATH	.
-SOURCE        t_random.cpp
-
-USERINCLUDE ../inc ../random
-OS_LAYER_SYSTEMINCLUDE
-LIBRARY       euser.lib 
-LIBRARY       efsrv.lib random.lib
-
-
-VENDORID 0x70000001
-SMPSAFE
--- a/crypto/weakcrypto/test/trandom/testdata/3des.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-+C This file contains the central script for DES test vectors
-+C The format is:
-+C AlgorithmType TestType Algorithm (Variant) (File)
-+C 
-+C Where:
-+C AlgorithmType is Symmetric, Asymmetric or Padding
-+C TestType is Function, Vector, OOM, Error, Performance, Problem or UnfixedProblem
-+C Algorithm is DES, RC2, RC4, RSA etc 
-+C Variant (where applicable) is CFB, OFB, CBC or ECB
-+C File is the name of the file where the known vectors can be found
-+C
-Symmetric Vector DES ECB DESECB.DAT
-Symmetric Vector DES CBC DESCBC.DAT
-Symmetric Vector DES OFB DESOFB.DAT
-Symmetric Vector DES CFB DESCFB.DAT
-Symmetric Vector 3DES ECB DESECB.DAT
-Symmetric Vector 3DES CBC DESCBC.DAT
-Symmetric Vector 3DES OFB DESOFB.DAT
-Symmetric Vector 3DES CFB DESCFB.DAT
--- a/crypto/weakcrypto/test/trandom/testdata/3des2cbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,207 +0,0 @@
-+C 3DES CBC Tests
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe test - TFCIV802
-01 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 4C0CE7EA6E1FD7C57284B9D5DE41E8AA00E1F61DD4537842 0011223344556677
-02 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 3BD6E1D301A382E0F6DC9868C7A019EC470F379D9928148D 7766554433221100
-+M BSafe test - TV3CBRI0
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-+M BSafe test - TVDS3P00
-01 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF0123450808080808080808 FC624960B90F7A7D2551005F74269110 00000000EFAB23EF
-03 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 010203040506070809101112131415160808080808080808 67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58 00000000EFAB23EF
-04 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213141501 67D89FDD4DB55CDFF52A136D17A87E8F 00000000EFAB23EF
-05 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213140202 67D89FDD4DB55CDF9FF22B5301F5BA69 00000000EFAB23EF
-06 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213030303 67D89FDD4DB55CDF7AC916277CC636EF 00000000EFAB23EF
-07 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111204040404 67D89FDD4DB55CDFE204DB2A32A7B8C8 00000000EFAB23EF
-08 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910110505050505 67D89FDD4DB55CDF287F784D76357583 00000000EFAB23EF
-09 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910060606060606 67D89FDD4DB55CDF4C58EA5623CD0B5B 00000000EFAB23EF
-10 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080907070707070707 67D89FDD4DB55CDFD784A16124DF7747 00000000EFAB23EF
-11 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080808080808080808 67D89FDD4DB55CDF9A19483ADB5C2975 00000000EFAB23EF
-12 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060701 977C3A184FA1E78D 00000000EFAB23EF
-13 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060202 D1AEE6C6FAE1828B 00000000EFAB23EF
-14 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405030303 A5EF9A711DE975CA 00000000EFAB23EF
-15 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030404040404 A429C178F9A65553 00000000EFAB23EF
-16 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030505050505 B53A1C038D1B89CD 00000000EFAB23EF
-17 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102060606060606 0D00D9D7CA3C98A4 00000000EFAB23EF
-18 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0107070707070707 C3F1BA84FB6E4664 00000000EFAB23EF
-19 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0808080808080808 D470869B58D76FAD 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/3des2cfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,197 +0,0 @@
-+C Key1............ Key2............ Key3............ IV.............. Ciphertext...... Plaintext....... 
-+C Current error
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests - TV3CFPN2
-+C These tests are for CFB 64bit pipelined
-+C Dunno if these are relevant
-+C +M This shows an IV problem?
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6E664F920A9DF1E4E570C563110DA5248AB3D43134FC9101FF8E23D1B73E30543DEAABACDD241043449EED61D7589148 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 
-+M BSafe tests - TV3CFPS0
-+C These tests are for CFB 8bit pipelined
-+C Dunno if these are relevant
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6EE29BF123180889FC4C 4E6F7720697320746865 
-+M BSafe tests - TV3CFPS1
-+C These tests are for CFB 1bit pipelined
-+C Dunno if these are relevant (probably not!)
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 372CD5 4E6F77
--- a/crypto/weakcrypto/test/trandom/testdata/3des2ecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext......
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464
-+M Substitution Table Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793
--- a/crypto/weakcrypto/test/trandom/testdata/3des2ofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-+C Key............. IV.............. Ciphertext...... Plaintext....... 
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
--- a/crypto/weakcrypto/test/trandom/testdata/3des3cbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-+C 3DES CBC Tests
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe test - TV3DCBN0
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176 1234567890ABCDEF
-+M BSafe test - TFCIV802
-01 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 4C0CE7EA6E1FD7C57284B9D5DE41E8AA00E1F61DD4537842 0011223344556677
-02 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 3BD6E1D301A382E0F6DC9868C7A019EC470F379D9928148D 7766554433221100
-+M Bsafe test - TVDS3C00
-01 7CA110454A1A6E57 7CA110454A1A6E57 FEDCBA9876543210 0123456789ABCDEF ED39D950FA74BCC4 0000000000000000
-02 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-+C 03 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 01A1D6D039776742 690F5B0D9A26939B 00A1D6D039776700
-+C 03 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 0100000000000042 690F5B0D9A26939B 0000000000000000
-+C 04 7CA110454A1A6E57 FEDCBA9876543210 01A1D6D039776742 7CA110454A1A6E5701A1D6D039776742690F5B0D9A26939B 03770AC578245790C371A968EFEF33019391DBFA3FC3585D 0000000000000000
-+M BSafe test - TV3CBIN0
-+C Vectors were extracted from X9.52 standard.
-+C This vector is for CBC-interleaved not straight CBC, not implemented.
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 0EF198BE0DA40F4D03649EFA6872A717E6B15686748A11401933FB0C744581C10364E942DF9A4B74901E57CCB671CEBC 0000000000055555
-+M BSafe test - TV3CBRI0
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176 1234567890ABCDEF
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-+M BSafe test - TVDS3P00
-01 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF0123450808080808080808 FC624960B90F7A7D2551005F74269110 00000000EFAB23EF
-03 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 010203040506070809101112131415160808080808080808 67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58 00000000EFAB23EF
-04 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213141501 67D89FDD4DB55CDFF52A136D17A87E8F 00000000EFAB23EF
-05 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213140202 67D89FDD4DB55CDF9FF22B5301F5BA69 00000000EFAB23EF
-06 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213030303 67D89FDD4DB55CDF7AC916277CC636EF 00000000EFAB23EF
-07 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111204040404 67D89FDD4DB55CDFE204DB2A32A7B8C8 00000000EFAB23EF
-08 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910110505050505 67D89FDD4DB55CDF287F784D76357583 00000000EFAB23EF
-09 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910060606060606 67D89FDD4DB55CDF4C58EA5623CD0B5B 00000000EFAB23EF
-10 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080907070707070707 67D89FDD4DB55CDFD784A16124DF7747 00000000EFAB23EF
-11 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080808080808080808 67D89FDD4DB55CDF9A19483ADB5C2975 00000000EFAB23EF
-12 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060701 977C3A184FA1E78D 00000000EFAB23EF
-13 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060202 D1AEE6C6FAE1828B 00000000EFAB23EF
-14 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405030303 A5EF9A711DE975CA 00000000EFAB23EF
-15 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030404040404 A429C178F9A65553 00000000EFAB23EF
-16 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030505050505 B53A1C038D1B89CD 00000000EFAB23EF
-17 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102060606060606 0D00D9D7CA3C98A4 00000000EFAB23EF
-18 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0107070707070707 C3F1BA84FB6E4664 00000000EFAB23EF
-19 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0808080808080808 D470869B58D76FAD 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/3des3cfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,201 +0,0 @@
-+C Key1............ Key2............ Key3............ IV.............. Ciphertext...... Plaintext....... 
-+C Current error
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests - TV3CFPN2
-+C These tests are for CFB 64bit pipelined
-+C Dunno if these are relevant
-+C +M This shows an IV problem?
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6E664F920A9DF1E4E570C563110DA5248AB3D43134FC9101FF8E23D1B73E30543DEAABACDD241043449EED61D7589148 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 
-+M BSafe tests - TV3CFPS0
-+C These tests are for CFB 8bit pipelined
-+C Dunno if these are relevant
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6EE29BF123180889FC4C 4E6F7720697320746865 
-+M BSafe tests - TV3CFPS1
-+C These tests are for CFB 1bit pipelined
-+C Dunno if these are relevant (probably not!)
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 372CD5 4E6F77
-+M BSafe tests - TV3DCFN2
-+C These tests are for CFB 64 bit pipelined feedback
-+C Dunno if they are relevant.
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 1234567890ABCDEF EE7EC75C1A101301C4AB2F10462E5DD417400B445B5F2A72 4E6F77206973207468652074696D6520666F7220616C6C20 
--- a/crypto/weakcrypto/test/trandom/testdata/3des3ecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,184 +0,0 @@
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext......
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464
-+M Substitution Table Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793
-+M BSafe test - TV3DECN0
-+C Vectors extracted from X9.52
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 314F8327FA7A09A84362760CC13BA7DAFF55C5F80FAAAC45
--- a/crypto/weakcrypto/test/trandom/testdata/3des3ofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,188 +0,0 @@
-+C Key............. IV.............. Ciphertext...... Plaintext....... 
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests - TV3DOFP0
-+C These tests are for OFB pipelined
-+C Dunno if they are relevant.
-+C +M Another IV problem?
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6E664F920A9DF1E4E570C563110DA5248AB3D43134FC9101B73C082134D1CE8139F838BBCD2D99AA9EB49AFAA8699D8C 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 
-+M BSafe tests - TV3OFBN0
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 1234567890ABCDEF EE7EC75C1A1013019A8A610002668E0787E28AF9EC26B889 4E6F77206973207468652074696D6520666F7220616C6C20 
--- a/crypto/weakcrypto/test/trandom/testdata/3descbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,221 +0,0 @@
-+C 3DES CBC Tests
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe test - TV3DCBN0
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext...... IV..............
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176 1234567890ABCDEF
-+M BSafe test - TFCIV802
-01 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 4C0CE7EA6E1FD7C57284B9D5DE41E8AA00E1F61DD4537842 0011223344556677
-02 1122334455667788 1122334455667788 1122334455667788 000102030405060708091011121314151617181920212223 3BD6E1D301A382E0F6DC9868C7A019EC470F379D9928148D 7766554433221100
-+M Bsafe test - TVDS3C00
-01 7CA110454A1A6E57 7CA110454A1A6E57 FEDCBA9876543210 0123456789ABCDEF ED39D950FA74BCC4 0000000000000000
-02 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-+C 03 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 01A1D6D039776742 690F5B0D9A26939B 00A1D6D039776700
-+C 03 7CA110454A1A6E57 FEDCBA9876543210 FEDCBA9876543210 0100000000000042 690F5B0D9A26939B 0000000000000000
-+C 04 7CA110454A1A6E57 FEDCBA9876543210 01A1D6D039776742 7CA110454A1A6E5701A1D6D039776742690F5B0D9A26939B 03770AC578245790C371A968EFEF33019391DBFA3FC3585D 0000000000000000
-+M BSafe test - TV3CBIN0
-+C Vectors were extracted from X9.52 standard.
-+C This vector is for CBC-interleaved not straight CBC, not implemented.
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 0EF198BE0DA40F4D03649EFA6872A717E6B15686748A11401933FB0C744581C10364E942DF9A4B74901E57CCB671CEBC 0000000000055555
-+M BSafe test - TV3CBRI0
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176 1234567890ABCDEF
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-+M BSafe test - TVDS3P00
-01 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-02 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 6789ABCDEF0123450808080808080808 FC624960B90F7A7D2551005F74269110 00000000EFAB23EF
-03 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 010203040506070809101112131415160808080808080808 67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58 00000000EFAB23EF
-04 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213141501 67D89FDD4DB55CDFF52A136D17A87E8F 00000000EFAB23EF
-05 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213140202 67D89FDD4DB55CDF9FF22B5301F5BA69 00000000EFAB23EF
-06 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111213030303 67D89FDD4DB55CDF7AC916277CC636EF 00000000EFAB23EF
-07 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910111204040404 67D89FDD4DB55CDFE204DB2A32A7B8C8 00000000EFAB23EF
-08 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910110505050505 67D89FDD4DB55CDF287F784D76357583 00000000EFAB23EF
-09 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080910060606060606 67D89FDD4DB55CDF4C58EA5623CD0B5B 00000000EFAB23EF
-10 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080907070707070707 67D89FDD4DB55CDFD784A16124DF7747 00000000EFAB23EF
-11 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 01020304050607080808080808080808 67D89FDD4DB55CDF9A19483ADB5C2975 00000000EFAB23EF
-12 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060701 977C3A184FA1E78D 00000000EFAB23EF
-13 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405060202 D1AEE6C6FAE1828B 00000000EFAB23EF
-14 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030405030303 A5EF9A711DE975CA 00000000EFAB23EF
-15 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030404040404 A429C178F9A65553 00000000EFAB23EF
-16 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102030505050505 B53A1C038D1B89CD 00000000EFAB23EF
-17 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0102060606060606 0D00D9D7CA3C98A4 00000000EFAB23EF
-18 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0107070707070707 C3F1BA84FB6E4664 00000000EFAB23EF
-19 0123456789ABCDEF 0123456789ABCDEF 0123456789ABCDEF 0808080808080808 D470869B58D76FAD 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/3descfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,201 +0,0 @@
-+C Key1............ Key2............ Key3............ IV.............. Ciphertext...... Plaintext....... 
-+C Current error
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests - TV3CFPN2
-+C These tests are for CFB 64bit pipelined
-+C Dunno if these are relevant
-+C +M This shows an IV problem?
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6E664F920A9DF1E4E570C563110DA5248AB3D43134FC9101FF8E23D1B73E30543DEAABACDD241043449EED61D7589148 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 
-+M BSafe tests - TV3CFPS0
-+C These tests are for CFB 8bit pipelined
-+C Dunno if these are relevant
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6EE29BF123180889FC4C 4E6F7720697320746865 
-+M BSafe tests - TV3CFPS1
-+C These tests are for CFB 1bit pipelined
-+C Dunno if these are relevant (probably not!)
-+C Not relevant!
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 372CD5 4E6F77
-+M BSafe tests - TV3DCFN2
-+C These tests are for CFB 64 bit pipelined feedback
-+C Dunno if they are relevant.
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 1234567890ABCDEF EE7EC75C1A101301C4AB2F10462E5DD417400B445B5F2A72 4E6F77206973207468652074696D6520666F7220616C6C20 
--- a/crypto/weakcrypto/test/trandom/testdata/3desecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,184 +0,0 @@
-+C Key1............ Key2............ Key3............ Plaintext....... Ciphertext......
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464
-+M Substitution Table Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793
-+M BSafe test - TV3DECN0
-+C Vectors extracted from X9.52
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 4E6F77206973207468652074696D6520666F7220616C6C20 314F8327FA7A09A84362760CC13BA7DAFF55C5F80FAAAC45
--- a/crypto/weakcrypto/test/trandom/testdata/3desofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,188 +0,0 @@
-+C Key............. IV.............. Ciphertext...... Plaintext....... 
-+M Sample round
-01 10316E028C8F3B4A 10316E028C8F3B4A 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 0101010101010101 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 0101010101010101 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 0101010101010101 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 0101010101010101 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0101010101010101 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0101010101010101 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0101010101010101 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0101010101010101 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0101010101010101 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0101010101010101 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0101010101010101 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0101010101010101 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0101010101010101 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0101010101010101 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0101010101010101 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0101010101010101 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0101010101010101 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0101010101010101 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0101010101010101 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0101010101010101 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0101010101010101 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0101010101010101 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0101010101010101 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0101010101010101 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0101010101010101 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0101010101010101 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0101010101010101 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0101010101010101 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0101010101010101 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0101010101010101 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0101010101010101 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0101010101010101 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0101010101010101 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0101010101010101 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0101010101010101 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0101010101010101 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0101010101010101 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0101010101010101 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0101010101010101 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0101010101010101 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0101010101010101 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0101010101010101 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0101010101010101 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0101010101010101 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0101010101010101 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0101010101010101 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0101010101010101 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0101010101010101 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0101010101010101 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0101010101010101 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0101010101010101 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0101010101010101 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0101010101010101 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0101010101010101 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0101010101010101 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0101010101010101 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0101010101010101 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0101010101010101 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0101010101010101 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0101010101010101 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0101010101010101 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0101010101010101 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0101010101010101 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0101010101010101 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 8001010101010101 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 4001010101010101 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 2001010101010101 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 1001010101010101 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0801010101010101 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0401010101010101 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0201010101010101 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0180010101010101 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0140010101010101 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0120010101010101 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0110010101010101 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0108010101010101 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0104010101010101 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0102010101010101 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0101800101010101 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0101400101010101 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0101200101010101 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0101100101010101 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0101080101010101 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0101040101010101 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0101020101010101 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0101018001010101 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0101014001010101 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0101012001010101 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0101011001010101 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0101010801010101 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0101010401010101 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0101010201010101 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0101010180010101 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0101010140010101 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0101010120010101 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0101010110010101 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0101010108010101 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0101010104010101 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0101010102010101 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0101010101800101 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0101010101400101 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0101010101200101 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0101010101100101 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0101010101080101 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0101010101040101 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0101010101020101 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0101010101018001 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0101010101014001 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0101010101012001 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0101010101011001 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0101010101010801 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0101010101010401 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0101010101010201 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0101010101010180 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0101010101010140 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0101010101010120 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0101010101010110 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0101010101010108 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0101010101010104 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0101010101010102 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 1046913489980131 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 1007103489988020 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 10071034C8980120 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 1046103489988020 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 1086911519190101 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 1086911519580101 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 5107B01519580101 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 1007B01519190101 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 3107915498080101 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 3107919498080101 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 10079115B9080140 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 3107911598080140 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 1007D01589980101 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 9107911589980101 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 9107D01589190101 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 1007D01598980120 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 1007940498190101 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0107910491190401 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0107910491190101 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0107940491190401 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 19079210981A0101 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 1007911998190801 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 10079119981A0801 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 1007921098190101 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 100791159819010B 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 1004801598190101 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 1004801598190102 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 1004801598190108 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 1002911598100104 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 1002911598190104 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 1002911598100201 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 1002911698100101 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 7CA110454A1A6E57 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 0131D9619DC1376E 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 07A1133E4A0B2686 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 3849674C2602319E 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 04B915BA43FEB5B6 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 0113B970FD34F2CE 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0170F175468FB5E6 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 43297FAD38E373FE 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 07A7137045DA2A16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 04689104C2FD3B2F 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 37D06BB516CB7546 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 1F08260D1AC2465E 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 584023641ABA6176 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 025816164629B007 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 49793EBC79B3258F 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 4FB05E1515AB73A7 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 49E95D6D4CA229BF 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 018310DC409B26D6 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 1C587F1C13924FEF 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests - TV3DOFP0
-+C These tests are for OFB pipelined
-+C Dunno if they are relevant.
-+C +M Another IV problem?
-+C 01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 0000000000055555 6E664F920A9DF1E4E570C563110DA5248AB3D43134FC9101B73C082134D1CE8139F838BBCD2D99AA9EB49AFAA8699D8C 4E6F77206973207468652074696D6520666F7220616C6C20676F6F64206D656E20746F20636F6D6520746F2074686520 
-+M BSafe tests - TV3OFBN0
-01 0123456789ABCDEF 23456789ABCDEF01 456789ABCDEF0123 1234567890ABCDEF EE7EC75C1A1013019A8A610002668E0787E28AF9EC26B889 4E6F77206973207468652074696D6520666F7220616C6C20 
--- a/crypto/weakcrypto/test/trandom/testdata/bsafetest.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-+C This file contains the script for bsafe test vectors
-+C The format is:
-+C AlgorithmType TestType Algorithm (Variant) (File)
-+C 
-+C Where:
-+C AlgorithmType is Symmetric, Asymmetric or Padding
-+C TestType is Function, Vector, OOM, Error, Performance, Problem or UnfixedProblem
-+C Algorithm is DES, RC2, RC4, RSA etc 
-+C Variant (where applicable) is CFB, OFB, CBC or ECB
-+C File is the name of the file where the known vectors can be found
-+C
-+M Test case: TV111300
-+M   Tests AI_RFC1113Recode
-+M   Not relevant, this defines base-64 encoding and decoding tests.
-+C
-+M Test case: TVDHKA01
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA02
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA03
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA04
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA05
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA06
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA07
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA08
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA09
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA10
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA11
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA12
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVDHKA13
-+M   Tests Diffie-Hellman Key Agreement
-+C
-+M Test case: TVHMCMD5
-+M   Tests HMAC with MD5
-+C Key.......................... Data............ Result..........................
-0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b 4869205468657265 9294727a3638bb1c13f48ef8158bfc9d
-+C
-+M Test case: TVMD2R00
-+M   Tests MD2 based random number generator
-+M   Not relevant, this defines random number generator tests.
-+C
-+M Test case: TVMD2RX0
-+M   Tests MD2 based random number generator
-+M   Not relevant, this defines random number generator tests.
-+C
-+M Test case: TVMD5R00
-+M   Tests MD5 based random number generator
-+M   Not relevant, this defines random number generator tests.
-+C
-+M Test case: TVMD5RX0
-+M   Tests MD5 based random number generator
-+M   Not relevant, this defines random number generator tests.
-+C
-+M Test case: TVOAEP01
-+M   Tests OAEP padding.
-+M   Not relevant, this defines padding tests for unimplemented padding.
-+C
-+M Test case: TVOAEP02
-+M   Tests OAEP padding.
-+M   Not relevant, this defines padding tests for unimplemented padding.
-+C
-+M Test case: TVOAEP03
-+M   Tests OAEP padding.
-+M   Not relevant, this defines padding tests for unimplemented padding.
-+C
-+M Test case: TVRC4MAC
-+M   Tests RC4 with MAC.
-+M   Not relevant, this defines RC4 with MAC tests - an unimplemented algorithm.
-+C
-+M Test case: TVRKG931
-+M   Tests RSA private key generation.
-+M   Not relevant, this defines RSA private key generation tests.
--- a/crypto/weakcrypto/test/trandom/testdata/des.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-+C This file contains the central script for DES test vectors
-+C The format is:
-+C AlgorithmType TestType Algorithm (Variant) (File)
-+C 
-+C Where:
-+C AlgorithmType is Symmetric, Asymmetric or Padding
-+C TestType is Function, Vector, OOM, Error, Performance, Problem or UnfixedProblem
-+C Algorithm is DES, RC2, RC4, RSA etc 
-+C Variant (where applicable) is CFB, OFB, CBC or ECB
-+C File is the name of the file where the known vectors can be found
-+C
-Symmetric Vector DES ECB DESECB.DAT
-Symmetric Vector DES CBC DESCBC.DAT
-Symmetric Vector DES OFB DESOFB.DAT
-Symmetric Vector DES CFB DESCFB.DAT
-Symmetric Vector 3DES2 ECB DESECB.DAT
-Symmetric Vector 3DES2 CBC DESCBC.DAT
-Symmetric Vector 3DES2 OFB DESOFB.DAT
-Symmetric Vector 3DES2 CFB DESCFB.DAT
-Symmetric Vector 3DES3 ECB DESECB.DAT
-Symmetric Vector 3DES3 CBC DESCBC.DAT
-Symmetric Vector 3DES3 OFB DESOFB.DAT
-Symmetric Vector 3DES3 CFB DESCFB.DAT
--- a/crypto/weakcrypto/test/trandom/testdata/descbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,298 +0,0 @@
-+C Key............. Plaintext....... Ciphertext...... IV..............
-+M Current error:
-01 2814B6BB4B0C59B3 1400000C207D982368387F6F737D7FD46EB15EE08DBA43C7D65957A9DBE0CC38642E2CE403030303 1ED349248400C27F61AEDA41B9788D0A12643D4A3925B15E59E0C4DF530E2E21C5DB08260A1DEE55 B3C7EA550015EDEC
-+M Sample round
-01 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
-+M BSafe tests TVDSCBP0
-+C Key............. Plaintext....... Ciphertext......
-01 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-+C There is another test in this test case but I'm not sure I understand it...
-02 0123456789ABCDEF 010203040506070809101112131415160808080808080808 67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58 00000000EFAB23EF
-03 0123456789ABCDEF 01020304050607080910111213141501 67D89FDD4DB55CDFF52A136D17A87E8F 00000000EFAB23EF
-04 0123456789ABCDEF 01020304050607080910111213140202 67D89FDD4DB55CDF9FF22B5301F5BA69 00000000EFAB23EF
-05 0123456789ABCDEF 01020304050607080910111213030303 67D89FDD4DB55CDF7AC916277CC636EF 00000000EFAB23EF
-06 0123456789ABCDEF 01020304050607080910111204040404 67D89FDD4DB55CDFE204DB2A32A7B8C8 00000000EFAB23EF
-07 0123456789ABCDEF 01020304050607080910110505050505 67D89FDD4DB55CDF287F784D76357583 00000000EFAB23EF
-08 0123456789ABCDEF 01020304050607080910060606060606 67D89FDD4DB55CDF4C58EA5623CD0B5B 00000000EFAB23EF
-09 0123456789ABCDEF 01020304050607080907070707070707 67D89FDD4DB55CDFD784A16124DF7747 00000000EFAB23EF
-10 0123456789ABCDEF 01020304050607080808080808080808 67D89FDD4DB55CDF9A19483ADB5C2975 00000000EFAB23EF
-11 0123456789ABCDEF 0102030405060701 977C3A184FA1E78D 00000000EFAB23EF
-12 0123456789ABCDEF 0102030405060202 D1AEE6C6FAE1828B 00000000EFAB23EF
-13 0123456789ABCDEF 0102030405030303 A5EF9A711DE975CA 00000000EFAB23EF
-14 0123456789ABCDEF 0102030404040404 A429C178F9A65553 00000000EFAB23EF
-15 0123456789ABCDEF 0102030505050505 B53A1C038D1B89CD 00000000EFAB23EF
-16 0123456789ABCDEF 0102060606060606 0D00D9D7CA3C98A4 00000000EFAB23EF
-17 0123456789ABCDEF 0107070707070707 C3F1BA84FB6E4664 00000000EFAB23EF
-18 0123456789ABCDEF 0808080808080808 D470869B58D76FAD 00000000EFAB23EF
-+M BSafe tests TFCIV800
-+C Case 1
-+C This kinda misses the point of the test outlined in the RSA document
-+C but it will do no harm to test these numbers anyway...
-+C Their test is designed to test the setting and resetting of the IV on
-+C a created key object, that should probably form part of the test code
-+C and doesn't really fit in this kind of crude test script.
-01 1234567890123456 000102030405060708091011121314151617181920212223 5363CDC050BC40E578A1F1C5C3B8D9E39960A03EC7DED8EF 0011223344556677
-02 1234567890123456 000102030405060708091011121314151617181920212223 EE213F0EB081E4F0DFFBFF5462293364779769731295AA59 7766554433221100
-+C 03 1234567890123456 000102030405060708091011121314151617181920212223301106052B0E03020704087766554433221100 EE213F0EB081E4F0DFFBFF5462293364779769731295AA591301F0C351157311 7766554433221100
-+C 04 1234567890123456 000102030405060708091011121314151617181920212223301106052B0E03020704087766554433221100 5363CDC050BC40E578A1F1C5C3B8D9E39960A03EC7DED8EF4256B062C4DD9FDE 0011223344556677
-+M BSafe test TFDESC00
-+C This test should test intermediate blocking...
-+C Key............. Plaintext....... Ciphertext......
-01 0123456789ABCDEF 1110010110010100 17668DFC7292532D 0001101001101011
-02 0123456789ABCDEF 88BCA90E90875A7F 7B9A60072946F295 456789ABCDEF0123
-+C 03 0123456789ABCDEF 0F79C384627BAFB2 75D6C6AC805C5A23 456789ABCDEF0123
-+C 04 0123456789ABCDEF 16F80A6F85920584 0D91B1830C8D1142 456789ABCDEF0123
-+C 05 0123456789ABCDEF 1122334455667788 0E75051BB4870F36 456789ABCDEF0123
-+C 06 0123456789ABCDEF 1122334455667788AA11223344556677 0E75051BB4870F36DEC089C77D3D3BA3 456789ABCDEF0123
-07 0123456789ABCDEF 1122334455667788AA1122334455667788AA112233445566 0E75051BB4870F36DEC089C77D3D3BA3AFFD94870F492273 456789ABCDEF0123
-+C 08 0123456789ABCDEF 1122334455667788 BA3A677D27E39FEB 456789ABCDEF0123
-+C 09 0123456789ABCDEF 1122334455667788AA11223344556677 BA3A677D27E39FEB433C6D6B428A430A 456789ABCDEF0123
-+C 10 0123456789ABCDEF 1122334455667788AA1122334455667788AA112233445566 BA3A677D27E39FEB433C6D6B428A430AA2ECC6CBBA99F6E3 456789ABCDEF0123
-+M BSafe test TFDESC01
-+C this test covers a number of different blocking scenarios, they're not really relevant
-+M BSafe test TFDESC02
-+C This test includes vectors already included in TVDSCBP0
-+M Bsafe test - TVDS3C00
-01 FEDCBA9876543210 0123456789ABCDEF ED39D950FA74BCC4 0000000000000000
-02 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-+M Problem report EDNPGAL-4H9K4G
-01 2814B6BB4B0C59B3 1400000C207D982368387F6F737D7FD46EB15EE08DBA43C7D65957A9DBE0CC38642E2CE403030303 1ED349248400C27F61AEDA41B9788D0A12643D4A3925B15E59E0C4DF530E2E21C5DB08260A1DEE55 B3C7EA550015EDEC
-02 CEB8483AF483D7E0 1400000CDA43EE9DFD89B6CD2269C3E72675C92B267427257F0FDD42515EBE611F44FEC003030303 F9CDE248D0E2AB0BF73FA984E5D072496C5BC442CD18BB1D1DB6768C45E9EFCB6F4A13D512A5A62C A5212A20FD0DA44F
-+M BSafe test - TVDES101
-01 0123456789ABCDEF 6789ABCDEF012345 753016DE2F239D93 0000000000000000
-02 0123456789ABCDEF 6789ABCDEF0123450808080808080808 753016DE2F239D9324F13C63A5C4B43F 0000000000000000
-03 0123456789ABCDEF 010203040506070809101112131415160808080808080808 E68F791BAB16D4E63F14635B44DDDD93DBC4565943176B63 0000000000000000
-04 0123456789ABCDEF 01020304050607080910111213141501 E68F791BAB16D4E6CE9C520AE5C59BEE 0000000000000000
-05 0123456789ABCDEF 01020304050607080910111213140202 E68F791BAB16D4E64C3143FA858D570A 0000000000000000
-06 0123456789ABCDEF 01020304050607080910111213030303 E68F791BAB16D4E6028EB48443CAFD5C 0000000000000000
-07 0123456789ABCDEF 01020304050607080910111204040404 E68F791BAB16D4E6557CFD5B4E9B04FE 0000000000000000
-08 0123456789ABCDEF 01020304050607080910110505050505 E68F791BAB16D4E68AE23A9DDBEB105E 0000000000000000
-09 0123456789ABCDEF 01020304050607080910060606060606 E68F791BAB16D4E66C6A5DDFE5281FBB 0000000000000000
-10 0123456789ABCDEF 01020304050607080907070707070707 E68F791BAB16D4E6A1D8BDD18E03ADA1 0000000000000000
-11 0123456789ABCDEF 01020304050607080808080808080808 E68F791BAB16D4E60E5940AE3E4ADFE4 0000000000000000
-12 0123456789ABCDEF 0102030405060701 DF2458C7395177E0 0000000000000000
-13 0123456789ABCDEF 0102030405060202 2E43C041BD6550B6 0000000000000000
-14 0123456789ABCDEF 0102030405030303 A5480DDE17504CA1 0000000000000000
-15 0123456789ABCDEF 0102030404040404 EFBAAD6414727499 0000000000000000
-16 0123456789ABCDEF 0102030505050505 98C640C8AADF724E 0000000000000000
-17 0123456789ABCDEF 0102060606060606 473FDEDE878C9542 0000000000000000
-18 0123456789ABCDEF 0107070707070707 F2AB1C9E707DCC92 0000000000000000
-19 0123456789ABCDEF 0808080808080808 086F9A1D74C94D4E 0000000000000000
-+M BSafe test - TVDES102
-01 0123456789ABCDEF 6789ABCDEF012345 753016DE2F239D93 0000000000000000
-02 0123456789ABCDEF 6789ABCDEF012345030303C29E83F1E0 753016DE2F239D933CC9307C475E9E13 0000000000000000
-03 0123456789ABCDEF 01020304050607080910111213141516030303FC25672FFD E68F791BAB16D4E63F14635B44DDDD935BAEDF6CB59B9B7A 0000000000000000
-04 0123456789ABCDEF 01020304050607080910111213141504040404FC376028FA E68F791BAB16D4E63DA6882D8AD4B04E889F7364C41D2590 0000000000000000
-05 0123456789ABCDEF 01020304050607080910111213140505050505EC36612948 E68F791BAB16D4E6F5B704DC0C54D1809E3BB6125A10731D 0000000000000000
-06 0123456789ABCDEF 01020304050607080910111213060606060606EF3562321C E68F791BAB16D4E630DD4864C3D1F24B2659ABBCAF8C4E0F 0000000000000000
-07 0123456789ABCDEF 01020304050607080910111207070707070707EE346E581D E68F791BAB16D4E621910AAF609E1897D5E1095B33FDFA36 0000000000000000
-08 0123456789ABCDEF 01020304050607080910110808080808080808E143655712 E68F791BAB16D4E6DEB681133527F065007686EEB3DAC45A 0000000000000000
-09 0123456789ABCDEF 0102030405060708091001512219F51E E68F791BAB16D4E60B40D8A42A323B36 0000000000000000
-10 0123456789ABCDEF 0102030405060708090202512219E71D E68F791BAB16D4E632685F3B1C5FEF10 0000000000000000
-11 0123456789ABCDEF 0102030405060708030303512213E61C E68F791BAB16D4E6060CE6B7659E1587 0000000000000000
-12 0123456789ABCDEF 0102030405060704040404512E14E11B 16C1BFBAD83789A006D367DAC1C82582 0000000000000000
-13 0123456789ABCDEF 0102030405060505050505532F15E05B 7153288EA2931B6A19CDD2612B9BEC36 0000000000000000
-14 0123456789ABCDEF 0102030405060606060606502C16E3AB 972DAF48242E2231FA94CA92E0E3C065 0000000000000000
-15 0123456789ABCDEF 0102030407070707070707512D43C5AA C231688E85A483C7A8C3C6D4734A9A68 0000000000000000
-16 0123456789ABCDEF 01020308080808080808085E9489CAA5 46C6DA43666C1B4B05DABA108E995EE8 0000000000000000
-17 0123456789ABCDEF 0102010000BCBFBC E99CADBEA169C19D 0000000000000000
-18 0123456789ABCDEF 0102020000BCBFBF D9318F7F636BE06B 0000000000000000
-19 0123456789ABCDEF 0303030000BEBEBE D84D6726D810A206 0000000000000000
-+M BSafe test - TVDESP00
-01 0123456789ABCDEF 6789ABCDEF012345 FC624960B90F7A7D 00000000EFAB23EF
-02 0123456789ABCDEF 6789ABCDEF0123450808080808080808 FC624960B90F7A7D2551005F74269110 00000000EFAB23EF
-03 0123456789ABCDEF 010203040506070809101112131415160808080808080808 67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58 00000000EFAB23EF
-04 0123456789ABCDEF 01020304050607080910111213141501 67D89FDD4DB55CDFF52A136D17A87E8F 00000000EFAB23EF
-05 0123456789ABCDEF 01020304050607080910111213140202 67D89FDD4DB55CDF9FF22B5301F5BA69 00000000EFAB23EF
-06 0123456789ABCDEF 01020304050607080910111213030303 67D89FDD4DB55CDF7AC916277CC636EF 00000000EFAB23EF
-07 0123456789ABCDEF 01020304050607080910111204040404 67D89FDD4DB55CDFE204DB2A32A7B8C8 00000000EFAB23EF
-08 0123456789ABCDEF 01020304050607080910110505050505 67D89FDD4DB55CDF287F784D76357583 00000000EFAB23EF
-09 0123456789ABCDEF 01020304050607080910060606060606 67D89FDD4DB55CDF4C58EA5623CD0B5B 00000000EFAB23EF
-10 0123456789ABCDEF 01020304050607080907070707070707 67D89FDD4DB55CDFD784A16124DF7747 00000000EFAB23EF
-11 0123456789ABCDEF 01020304050607080808080808080808 67D89FDD4DB55CDF9A19483ADB5C2975 00000000EFAB23EF
-12 0123456789ABCDEF 0102030405060701 977C3A184FA1E78D 00000000EFAB23EF
-13 0123456789ABCDEF 0102030405060202 D1AEE6C6FAE1828B 00000000EFAB23EF
-14 0123456789ABCDEF 0102030405030303 A5EF9A711DE975CA 00000000EFAB23EF
-15 0123456789ABCDEF 0102030404040404 A429C178F9A65553 00000000EFAB23EF
-16 0123456789ABCDEF 0102030505050505 B53A1C038D1B89CD 00000000EFAB23EF
-17 0123456789ABCDEF 0102060606060606 0D00D9D7CA3C98A4 00000000EFAB23EF
-18 0123456789ABCDEF 0107070707070707 C3F1BA84FB6E4664 00000000EFAB23EF
-19 0123456789ABCDEF 0808080808080808 D470869B58D76FAD 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/descfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-+C Key............. IV.............. Ciphertext...... Plaintext....... 
-+M Sample round
-01 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
--- a/crypto/weakcrypto/test/trandom/testdata/desecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,217 +0,0 @@
-+C Key............. Plaintext....... Ciphertext......
-+M Sample round
-01 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 8000000000000000 95F8A5E5DD31D900
-01 0101010101010101 4000000000000000 DD7F121CA5015619
-02 0101010101010101 2000000000000000 2E8653104F3834EA
-03 0101010101010101 1000000000000000 4BD388FF6CD81D4F
-04 0101010101010101 0800000000000000 20B9E767B2FB1456
-05 0101010101010101 0400000000000000 55579380D77138EF
-06 0101010101010101 0200000000000000 6CC5DEFAAF04512F
-07 0101010101010101 0100000000000000 0D9F279BA5D87260
-08 0101010101010101 0080000000000000 D9031B0271BD5A0A
-09 0101010101010101 0040000000000000 424250B37C3DD951
-10 0101010101010101 0020000000000000 B8061B7ECD9A21E5
-11 0101010101010101 0010000000000000 F15D0F286B65BD28
-12 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1
-13 0101010101010101 0004000000000000 E6D5F82752AD63D1
-14 0101010101010101 0002000000000000 ECBFE3BD3F591A5E
-15 0101010101010101 0001000000000000 F356834379D165CD
-16 0101010101010101 0000800000000000 2B9F982F20037FA9
-17 0101010101010101 0000400000000000 889DE068A16F0BE6
-18 0101010101010101 0000200000000000 E19E275D846A1298
-19 0101010101010101 0000100000000000 329A8ED523D71AEC
-20 0101010101010101 0000080000000000 E7FCE22557D23C97
-21 0101010101010101 0000040000000000 12A9F5817FF2D65D
-22 0101010101010101 0000020000000000 A484C3AD38DC9C19
-23 0101010101010101 0000010000000000 FBE00A8A1EF8AD72
-24 0101010101010101 0000008000000000 750D079407521363
-25 0101010101010101 0000004000000000 64FEED9C724C2FAF
-26 0101010101010101 0000002000000000 F02B263B328E2B60
-27 0101010101010101 0000001000000000 9D64555A9A10B852
-28 0101010101010101 0000000800000000 D106FF0BED5255D7
-29 0101010101010101 0000000400000000 E1652C6B138C64A5
-30 0101010101010101 0000000200000000 E428581186EC8F46
-31 0101010101010101 0000000100000000 AEB5F5EDE22D1A36
-32 0101010101010101 0000000080000000 E943D7568AEC0C5C
-33 0101010101010101 0000000040000000 DF98C8276F54B04B
-34 0101010101010101 0000000020000000 B160E4680F6C696F
-35 0101010101010101 0000000010000000 FA0752B07D9C4AB8
-36 0101010101010101 0000000008000000 CA3A2B036DBC8502
-37 0101010101010101 0000000004000000 5E0905517BB59BCF
-38 0101010101010101 0000000002000000 814EEB3B91D90726
-39 0101010101010101 0000000001000000 4D49DB1532919C9F
-40 0101010101010101 0000000000800000 25EB5FC3F8CF0621
-41 0101010101010101 0000000000400000 AB6A20C0620D1C6F
-42 0101010101010101 0000000000200000 79E90DBC98F92CCA
-43 0101010101010101 0000000000100000 866ECEDD8072BB0E
-44 0101010101010101 0000000000080000 8B54536F2F3E64A8
-45 0101010101010101 0000000000040000 EA51D3975595B86B
-46 0101010101010101 0000000000020000 CAFFC6AC4542DE31
-47 0101010101010101 0000000000010000 8DD45A2DDF90796C
-48 0101010101010101 0000000000008000 1029D55E880EC2D0
-49 0101010101010101 0000000000004000 5D86CB23639DBEA9
-50 0101010101010101 0000000000002000 1D1CA853AE7C0C5F
-51 0101010101010101 0000000000001000 CE332329248F3228
-52 0101010101010101 0000000000000800 8405D1ABE24FB942
-53 0101010101010101 0000000000000400 E643D78090CA4207
-54 0101010101010101 0000000000000200 48221B9937748A23
-55 0101010101010101 0000000000000100 DD7C0BBD61FAFD54
-56 0101010101010101 0000000000000080 2FBC291A570DB5C4
-57 0101010101010101 0000000000000040 E07C30D7E4E26E12
-58 0101010101010101 0000000000000020 0953E2258E8E90A1
-59 0101010101010101 0000000000000010 5B711BC4CEEBF2EE
-60 0101010101010101 0000000000000008 CC083F1E6D9E85F6
-61 0101010101010101 0000000000000004 D2FD8867D50D2DFE
-62 0101010101010101 0000000000000002 06E7EA22CE92708F
-63 0101010101010101 0000000000000001 166B40B44ABA4BD6
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 0000000000000000 95A8D72813DAA94D
-01 4001010101010101 0000000000000000 0EEC1487DD8C26D5
-02 2001010101010101 0000000000000000 7AD16FFB79C45926
-03 1001010101010101 0000000000000000 D3746294CA6A6CF3
-04 0801010101010101 0000000000000000 809F5F873C1FD761
-05 0401010101010101 0000000000000000 C02FAFFEC989D1FC
-06 0201010101010101 0000000000000000 4615AA1D33E72F10
-07 0180010101010101 0000000000000000 2055123350C00858
-08 0140010101010101 0000000000000000 DF3B99D6577397C8
-09 0120010101010101 0000000000000000 31FE17369B5288C9
-10 0110010101010101 0000000000000000 DFDD3CC64DAE1642
-11 0108010101010101 0000000000000000 178C83CE2B399D94
-12 0104010101010101 0000000000000000 50F636324A9B7F80
-13 0102010101010101 0000000000000000 A8468EE3BC18F06D
-14 0101800101010101 0000000000000000 A2DC9E92FD3CDE92
-15 0101400101010101 0000000000000000 CAC09F797D031287
-16 0101200101010101 0000000000000000 90BA680B22AEB525
-17 0101100101010101 0000000000000000 CE7A24F350E280B6
-18 0101080101010101 0000000000000000 882BFF0AA01A0B87
-19 0101040101010101 0000000000000000 25610288924511C2
-20 0101020101010101 0000000000000000 C71516C29C75D170
-21 0101018001010101 0000000000000000 5199C29A52C9F059
-22 0101014001010101 0000000000000000 C22F0A294A71F29F
-23 0101012001010101 0000000000000000 EE371483714C02EA
-24 0101011001010101 0000000000000000 A81FBD448F9E522F
-25 0101010801010101 0000000000000000 4F644C92E192DFED
-26 0101010401010101 0000000000000000 1AFA9A66A6DF92AE
-27 0101010201010101 0000000000000000 B3C1CC715CB879D8
-28 0101010180010101 0000000000000000 19D032E64AB0BD8B
-29 0101010140010101 0000000000000000 3CFAA7A7DC8720DC
-30 0101010120010101 0000000000000000 B7265F7F447AC6F3
-31 0101010110010101 0000000000000000 9DB73B3C0D163F54
-32 0101010108010101 0000000000000000 8181B65BABF4A975
-33 0101010104010101 0000000000000000 93C9B64042EAA240
-34 0101010102010101 0000000000000000 5570530829705592
-35 0101010101800101 0000000000000000 8638809E878787A0
-36 0101010101400101 0000000000000000 41B9A79AF79AC208
-37 0101010101200101 0000000000000000 7A9BE42F2009A892
-38 0101010101100101 0000000000000000 29038D56BA6D2745
-39 0101010101080101 0000000000000000 5495C6ABF1E5DF51
-40 0101010101040101 0000000000000000 AE13DBD561488933
-41 0101010101020101 0000000000000000 024D1FFA8904E389
-42 0101010101018001 0000000000000000 D1399712F99BF02E
-43 0101010101014001 0000000000000000 14C1D7C1CFFEC79E
-44 0101010101012001 0000000000000000 1DE5279DAE3BED6F
-45 0101010101011001 0000000000000000 E941A33F85501303
-46 0101010101010801 0000000000000000 DA99DBBC9A03F379
-47 0101010101010401 0000000000000000 B7FC92F91D8E92E9
-48 0101010101010201 0000000000000000 AE8E5CAA3CA04E85
-49 0101010101010180 0000000000000000 9CC62DF43B6EED74
-50 0101010101010140 0000000000000000 D863DBB5C59A91A0
-51 0101010101010120 0000000000000000 A1AB2190545B91D7
-52 0101010101010110 0000000000000000 0875041E64C570F7
-53 0101010101010108 0000000000000000 5A594528BEBEF1CC
-54 0101010101010104 0000000000000000 FCDB3291DE21F0C0
-55 0101010101010102 0000000000000000 869EFD7F9F265A09
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 0000000000000000 88D55E54F54C97B4
-01 1007103489988020 0000000000000000 0C0CC00C83EA48FD
-02 10071034C8980120 0000000000000000 83BC8EF3A6570183
-03 1046103489988020 0000000000000000 DF725DCAD94EA2E9
-04 1086911519190101 0000000000000000 E652B53B550BE8B0
-05 1086911519580101 0000000000000000 AF527120C485CBB0
-06 5107B01519580101 0000000000000000 0F04CE393DB926D5
-07 1007B01519190101 0000000000000000 C9F00FFC74079067
-08 3107915498080101 0000000000000000 7CFD82A593252B4E
-09 3107919498080101 0000000000000000 CB49A2F9E91363E3
-10 10079115B9080140 0000000000000000 00B588BE70D23F56
-11 3107911598080140 0000000000000000 406A9A6AB43399AE
-12 1007D01589980101 0000000000000000 6CB773611DCA9ADA
-13 9107911589980101 0000000000000000 67FD21C17DBB5D70
-14 9107D01589190101 0000000000000000 9592CB4110430787
-15 1007D01598980120 0000000000000000 A6B7FF68A318DDD3
-16 1007940498190101 0000000000000000 4D102196C914CA16
-17 0107910491190401 0000000000000000 2DFA9F4573594965
-18 0107910491190101 0000000000000000 B46604816C0E0774
-19 0107940491190401 0000000000000000 6E7E6221A4F34E87
-20 19079210981A0101 0000000000000000 AA85E74643233199
-21 1007911998190801 0000000000000000 2E5A19DB4D1962D6
-22 10079119981A0801 0000000000000000 23A866A809D30894
-23 1007921098190101 0000000000000000 D812D961F017D320
-24 100791159819010B 0000000000000000 055605816E58608F
-25 1004801598190101 0000000000000000 ABD88E8B1B7716F1
-26 1004801598190102 0000000000000000 537AC95BE69DA1E1
-27 1004801598190108 0000000000000000 AED0F6AE3C25CDD8
-28 1002911598100104 0000000000000000 B3E35A5EE53E7B8D
-29 1002911598190104 0000000000000000 61C79C71921A2EF8
-30 1002911598100201 0000000000000000 E2F5728F0995013C
-31 1002911698100101 0000000000000000 1AEAC39A61F0A464
-+M Substitution Table Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B
-01 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271
-02 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A
-03 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A
-04 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095
-05 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B
-06 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09
-07 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A
-08 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F
-09 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088
-10 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77
-11 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A
-12 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56
-13 025816164629B007 480D39006EE762F2 A1F9915541020B56
-14 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556
-15 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC
-16 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A
-17 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41
-18 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793
-+M BSafe test - TVDSECN0 / TVDES100 / TVDESC00
-+C NIST test vectors 
-00 0000000000000000 0000000000000000 8CA64DE9C1B123A7
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 7359B2163E4EDC58
-02 3000000000000000 1000000000000001 958E6E627A05557B
-03 1111111111111111 1111111111111111 F40379AB9E0EC533
-04 0123456789ABCDEF 1111111111111111 17668DFC7292532D
-05 1111111111111111 0123456789ABCDEF 8A5AE1F81AB8F2DD
-06 0000000000000000 0000000000000000 8CA64DE9C1B123A7
-07 FEDCBA9876543210 0123456789ABCDEF ED39D950FA74BCC4
-08 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B
-09 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271
-10 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A
-11 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A
-12 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095
-13 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B
-14 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09
-15 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A
-16 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F
-17 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088
-18 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77
-19 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A
-20 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56
-21 025816164629B007 480D39006EE762F2 A1F9915541020B56
-22 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556
-23 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC
-24 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A
-25 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41
-26 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793
-27 0101010101010101 0123456789ABCDEF 617B3A0CE8F07100
-28 1F1F1F1F0E0E0E0E 0123456789ABCDEF DB958605F8C8C606
-29 E0FEE0FEF1FEF1FE 0123456789ABCDEF EDBFD1C66C29CCC7
-30 0000000000000000 FFFFFFFFFFFFFFFF 355550B2150E2451
-31 FFFFFFFFFFFFFFFF 0000000000000000 CAAAAF4DEAF1DBAE
-32 0123456789ABCDEF 0000000000000000 D5D44FF720683D0D
-33 FEDCBA9876543210 FFFFFFFFFFFFFFFF 2A2BB008DF97C2F2
--- a/crypto/weakcrypto/test/trandom/testdata/desofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,181 +0,0 @@
-+C Key............. IV.............. Ciphertext...... Plaintext....... 
-+M Sample round
-01 10316E028C8F3B4A 0000000000000000 82DCBAFBDEAB6602 0000000000000000
-+M Variable Plaintext Known Answer Test
-00 0101010101010101 8000000000000000 95F8A5E5DD31D900 0000000000000000
-01 0101010101010101 4000000000000000 DD7F121CA5015619 0000000000000000
-02 0101010101010101 2000000000000000 2E8653104F3834EA 0000000000000000
-03 0101010101010101 1000000000000000 4BD388FF6CD81D4F 0000000000000000
-04 0101010101010101 0800000000000000 20B9E767B2FB1456 0000000000000000
-05 0101010101010101 0400000000000000 55579380D77138EF 0000000000000000
-06 0101010101010101 0200000000000000 6CC5DEFAAF04512F 0000000000000000
-07 0101010101010101 0100000000000000 0D9F279BA5D87260 0000000000000000
-08 0101010101010101 0080000000000000 D9031B0271BD5A0A 0000000000000000
-09 0101010101010101 0040000000000000 424250B37C3DD951 0000000000000000
-10 0101010101010101 0020000000000000 B8061B7ECD9A21E5 0000000000000000
-11 0101010101010101 0010000000000000 F15D0F286B65BD28 0000000000000000
-12 0101010101010101 0008000000000000 ADD0CC8D6E5DEBA1 0000000000000000
-13 0101010101010101 0004000000000000 E6D5F82752AD63D1 0000000000000000
-14 0101010101010101 0002000000000000 ECBFE3BD3F591A5E 0000000000000000
-15 0101010101010101 0001000000000000 F356834379D165CD 0000000000000000
-16 0101010101010101 0000800000000000 2B9F982F20037FA9 0000000000000000
-17 0101010101010101 0000400000000000 889DE068A16F0BE6 0000000000000000
-18 0101010101010101 0000200000000000 E19E275D846A1298 0000000000000000
-19 0101010101010101 0000100000000000 329A8ED523D71AEC 0000000000000000
-20 0101010101010101 0000080000000000 E7FCE22557D23C97 0000000000000000
-21 0101010101010101 0000040000000000 12A9F5817FF2D65D 0000000000000000
-22 0101010101010101 0000020000000000 A484C3AD38DC9C19 0000000000000000
-23 0101010101010101 0000010000000000 FBE00A8A1EF8AD72 0000000000000000
-24 0101010101010101 0000008000000000 750D079407521363 0000000000000000
-25 0101010101010101 0000004000000000 64FEED9C724C2FAF 0000000000000000
-26 0101010101010101 0000002000000000 F02B263B328E2B60 0000000000000000
-27 0101010101010101 0000001000000000 9D64555A9A10B852 0000000000000000
-28 0101010101010101 0000000800000000 D106FF0BED5255D7 0000000000000000
-29 0101010101010101 0000000400000000 E1652C6B138C64A5 0000000000000000
-30 0101010101010101 0000000200000000 E428581186EC8F46 0000000000000000
-31 0101010101010101 0000000100000000 AEB5F5EDE22D1A36 0000000000000000
-32 0101010101010101 0000000080000000 E943D7568AEC0C5C 0000000000000000
-33 0101010101010101 0000000040000000 DF98C8276F54B04B 0000000000000000
-34 0101010101010101 0000000020000000 B160E4680F6C696F 0000000000000000
-35 0101010101010101 0000000010000000 FA0752B07D9C4AB8 0000000000000000
-36 0101010101010101 0000000008000000 CA3A2B036DBC8502 0000000000000000
-37 0101010101010101 0000000004000000 5E0905517BB59BCF 0000000000000000
-38 0101010101010101 0000000002000000 814EEB3B91D90726 0000000000000000
-39 0101010101010101 0000000001000000 4D49DB1532919C9F 0000000000000000
-40 0101010101010101 0000000000800000 25EB5FC3F8CF0621 0000000000000000
-41 0101010101010101 0000000000400000 AB6A20C0620D1C6F 0000000000000000
-42 0101010101010101 0000000000200000 79E90DBC98F92CCA 0000000000000000
-43 0101010101010101 0000000000100000 866ECEDD8072BB0E 0000000000000000
-44 0101010101010101 0000000000080000 8B54536F2F3E64A8 0000000000000000
-45 0101010101010101 0000000000040000 EA51D3975595B86B 0000000000000000
-46 0101010101010101 0000000000020000 CAFFC6AC4542DE31 0000000000000000
-47 0101010101010101 0000000000010000 8DD45A2DDF90796C 0000000000000000
-48 0101010101010101 0000000000008000 1029D55E880EC2D0 0000000000000000
-49 0101010101010101 0000000000004000 5D86CB23639DBEA9 0000000000000000
-50 0101010101010101 0000000000002000 1D1CA853AE7C0C5F 0000000000000000
-51 0101010101010101 0000000000001000 CE332329248F3228 0000000000000000
-52 0101010101010101 0000000000000800 8405D1ABE24FB942 0000000000000000
-53 0101010101010101 0000000000000400 E643D78090CA4207 0000000000000000
-54 0101010101010101 0000000000000200 48221B9937748A23 0000000000000000
-55 0101010101010101 0000000000000100 DD7C0BBD61FAFD54 0000000000000000
-56 0101010101010101 0000000000000080 2FBC291A570DB5C4 0000000000000000
-57 0101010101010101 0000000000000040 E07C30D7E4E26E12 0000000000000000
-58 0101010101010101 0000000000000020 0953E2258E8E90A1 0000000000000000
-59 0101010101010101 0000000000000010 5B711BC4CEEBF2EE 0000000000000000
-60 0101010101010101 0000000000000008 CC083F1E6D9E85F6 0000000000000000
-61 0101010101010101 0000000000000004 D2FD8867D50D2DFE 0000000000000000
-62 0101010101010101 0000000000000002 06E7EA22CE92708F 0000000000000000
-63 0101010101010101 0000000000000001 166B40B44ABA4BD6 0000000000000000
-+M Variable Key Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 8001010101010101 0000000000000000 95A8D72813DAA94D 0000000000000000
-01 4001010101010101 0000000000000000 0EEC1487DD8C26D5 0000000000000000
-02 2001010101010101 0000000000000000 7AD16FFB79C45926 0000000000000000
-03 1001010101010101 0000000000000000 D3746294CA6A6CF3 0000000000000000
-04 0801010101010101 0000000000000000 809F5F873C1FD761 0000000000000000
-05 0401010101010101 0000000000000000 C02FAFFEC989D1FC 0000000000000000
-06 0201010101010101 0000000000000000 4615AA1D33E72F10 0000000000000000
-07 0180010101010101 0000000000000000 2055123350C00858 0000000000000000
-08 0140010101010101 0000000000000000 DF3B99D6577397C8 0000000000000000
-09 0120010101010101 0000000000000000 31FE17369B5288C9 0000000000000000
-10 0110010101010101 0000000000000000 DFDD3CC64DAE1642 0000000000000000
-11 0108010101010101 0000000000000000 178C83CE2B399D94 0000000000000000
-12 0104010101010101 0000000000000000 50F636324A9B7F80 0000000000000000
-13 0102010101010101 0000000000000000 A8468EE3BC18F06D 0000000000000000
-14 0101800101010101 0000000000000000 A2DC9E92FD3CDE92 0000000000000000
-15 0101400101010101 0000000000000000 CAC09F797D031287 0000000000000000
-16 0101200101010101 0000000000000000 90BA680B22AEB525 0000000000000000
-17 0101100101010101 0000000000000000 CE7A24F350E280B6 0000000000000000
-18 0101080101010101 0000000000000000 882BFF0AA01A0B87 0000000000000000
-19 0101040101010101 0000000000000000 25610288924511C2 0000000000000000
-20 0101020101010101 0000000000000000 C71516C29C75D170 0000000000000000
-21 0101018001010101 0000000000000000 5199C29A52C9F059 0000000000000000
-22 0101014001010101 0000000000000000 C22F0A294A71F29F 0000000000000000
-23 0101012001010101 0000000000000000 EE371483714C02EA 0000000000000000
-24 0101011001010101 0000000000000000 A81FBD448F9E522F 0000000000000000
-25 0101010801010101 0000000000000000 4F644C92E192DFED 0000000000000000
-26 0101010401010101 0000000000000000 1AFA9A66A6DF92AE 0000000000000000
-27 0101010201010101 0000000000000000 B3C1CC715CB879D8 0000000000000000
-28 0101010180010101 0000000000000000 19D032E64AB0BD8B 0000000000000000
-29 0101010140010101 0000000000000000 3CFAA7A7DC8720DC 0000000000000000
-30 0101010120010101 0000000000000000 B7265F7F447AC6F3 0000000000000000
-31 0101010110010101 0000000000000000 9DB73B3C0D163F54 0000000000000000
-32 0101010108010101 0000000000000000 8181B65BABF4A975 0000000000000000
-33 0101010104010101 0000000000000000 93C9B64042EAA240 0000000000000000
-34 0101010102010101 0000000000000000 5570530829705592 0000000000000000
-35 0101010101800101 0000000000000000 8638809E878787A0 0000000000000000
-36 0101010101400101 0000000000000000 41B9A79AF79AC208 0000000000000000
-37 0101010101200101 0000000000000000 7A9BE42F2009A892 0000000000000000
-38 0101010101100101 0000000000000000 29038D56BA6D2745 0000000000000000
-39 0101010101080101 0000000000000000 5495C6ABF1E5DF51 0000000000000000
-40 0101010101040101 0000000000000000 AE13DBD561488933 0000000000000000
-41 0101010101020101 0000000000000000 024D1FFA8904E389 0000000000000000
-42 0101010101018001 0000000000000000 D1399712F99BF02E 0000000000000000
-43 0101010101014001 0000000000000000 14C1D7C1CFFEC79E 0000000000000000
-44 0101010101012001 0000000000000000 1DE5279DAE3BED6F 0000000000000000
-45 0101010101011001 0000000000000000 E941A33F85501303 0000000000000000
-46 0101010101010801 0000000000000000 DA99DBBC9A03F379 0000000000000000
-47 0101010101010401 0000000000000000 B7FC92F91D8E92E9 0000000000000000
-48 0101010101010201 0000000000000000 AE8E5CAA3CA04E85 0000000000000000
-49 0101010101010180 0000000000000000 9CC62DF43B6EED74 0000000000000000
-50 0101010101010140 0000000000000000 D863DBB5C59A91A0 0000000000000000
-51 0101010101010120 0000000000000000 A1AB2190545B91D7 0000000000000000
-52 0101010101010110 0000000000000000 0875041E64C570F7 0000000000000000
-53 0101010101010108 0000000000000000 5A594528BEBEF1CC 0000000000000000
-54 0101010101010104 0000000000000000 FCDB3291DE21F0C0 0000000000000000
-55 0101010101010102 0000000000000000 869EFD7F9F265A09 0000000000000000
-+M Permutation Operation Known Answer Test
-+C Key............. Plaintext....... Ciphertext......
-00 1046913489980131 0000000000000000 88D55E54F54C97B4 0000000000000000
-01 1007103489988020 0000000000000000 0C0CC00C83EA48FD 0000000000000000
-02 10071034C8980120 0000000000000000 83BC8EF3A6570183 0000000000000000
-03 1046103489988020 0000000000000000 DF725DCAD94EA2E9 0000000000000000
-04 1086911519190101 0000000000000000 E652B53B550BE8B0 0000000000000000
-05 1086911519580101 0000000000000000 AF527120C485CBB0 0000000000000000
-06 5107B01519580101 0000000000000000 0F04CE393DB926D5 0000000000000000
-07 1007B01519190101 0000000000000000 C9F00FFC74079067 0000000000000000
-08 3107915498080101 0000000000000000 7CFD82A593252B4E 0000000000000000
-09 3107919498080101 0000000000000000 CB49A2F9E91363E3 0000000000000000
-10 10079115B9080140 0000000000000000 00B588BE70D23F56 0000000000000000
-11 3107911598080140 0000000000000000 406A9A6AB43399AE 0000000000000000
-12 1007D01589980101 0000000000000000 6CB773611DCA9ADA 0000000000000000
-13 9107911589980101 0000000000000000 67FD21C17DBB5D70 0000000000000000
-14 9107D01589190101 0000000000000000 9592CB4110430787 0000000000000000
-15 1007D01598980120 0000000000000000 A6B7FF68A318DDD3 0000000000000000
-16 1007940498190101 0000000000000000 4D102196C914CA16 0000000000000000
-17 0107910491190401 0000000000000000 2DFA9F4573594965 0000000000000000
-18 0107910491190101 0000000000000000 B46604816C0E0774 0000000000000000
-19 0107940491190401 0000000000000000 6E7E6221A4F34E87 0000000000000000
-20 19079210981A0101 0000000000000000 AA85E74643233199 0000000000000000
-21 1007911998190801 0000000000000000 2E5A19DB4D1962D6 0000000000000000
-22 10079119981A0801 0000000000000000 23A866A809D30894 0000000000000000
-23 1007921098190101 0000000000000000 D812D961F017D320 0000000000000000
-24 100791159819010B 0000000000000000 055605816E58608F 0000000000000000
-25 1004801598190101 0000000000000000 ABD88E8B1B7716F1 0000000000000000
-26 1004801598190102 0000000000000000 537AC95BE69DA1E1 0000000000000000
-27 1004801598190108 0000000000000000 AED0F6AE3C25CDD8 0000000000000000
-28 1002911598100104 0000000000000000 B3E35A5EE53E7B8D 0000000000000000
-29 1002911598190104 0000000000000000 61C79C71921A2EF8 0000000000000000
-30 1002911598100201 0000000000000000 E2F5728F0995013C 0000000000000000
-31 1002911698100101 0000000000000000 1AEAC39A61F0A464 0000000000000000
-+M Substitution Table Known Answer Test 
-+C Key............. Plaintext....... Ciphertext......
-00 7CA110454A1A6E57 01A1D6D039776742 690F5B0D9A26939B 0000000000000000
-01 0131D9619DC1376E 5CD54CA83DEF57DA 7A389D10354BD271 0000000000000000
-02 07A1133E4A0B2686 0248D43806F67172 868EBB51CAB4599A 0000000000000000
-03 3849674C2602319E 51454B582DDF440A 7178876E01F19B2A 0000000000000000
-04 04B915BA43FEB5B6 42FD443059577FA2 AF37FB421F8C4095 0000000000000000
-05 0113B970FD34F2CE 059B5E0851CF143A 86A560F10EC6D85B 0000000000000000
-06 0170F175468FB5E6 0756D8E0774761D2 0CD3DA020021DC09 0000000000000000
-07 43297FAD38E373FE 762514B829BF486A EA676B2CB7DB2B7A 0000000000000000
-08 07A7137045DA2A16 3BDD119049372802 DFD64A815CAF1A0F 0000000000000000
-09 04689104C2FD3B2F 26955F6835AF609A 5C513C9C4886C088 0000000000000000
-10 37D06BB516CB7546 164D5E404F275232 0A2AEEAE3FF4AB77 0000000000000000
-11 1F08260D1AC2465E 6B056E18759F5CCA EF1BF03E5DFA575A 0000000000000000
-12 584023641ABA6176 004BD6EF09176062 88BF0DB6D70DEE56 0000000000000000
-13 025816164629B007 480D39006EE762F2 A1F9915541020B56 0000000000000000
-14 49793EBC79B3258F 437540C8698F3CFA 6FBF1CAFCFFD0556 0000000000000000
-15 4FB05E1515AB73A7 072D43A077075292 2F22E49BAB7CA1AC 0000000000000000
-16 49E95D6D4CA229BF 02FE55778117F12A 5A6B612CC26CCE4A 0000000000000000
-17 018310DC409B26D6 1D9D5C5018F728C2 5F4C038ED12B2E41 0000000000000000
-18 1C587F1C13924FEF 305532286D6F295A 63FAC0D034D9F793 0000000000000000
--- a/crypto/weakcrypto/test/trandom/testdata/function.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,68 +0,0 @@
-+C This file contains a script for testing the functionality of algorithms.
-+C The format is:
-+C AlgorithmType TestType Algorithm (Variant) (File)
-+C 
-+C Where:
-+C AlgorithmType is Symmetric, Asymmetric or Padding
-+C TestType is Function, Vector, OOM, Error, Performance, Problem or UnfixedProblem
-+C Algorithm is DES, RC2, RC4, RSA etc 
-+C Variant (where applicable) is CFB, OFB, CBC or ECB
-+C File is the name of the file where the known vectors can be found
-+M Currently testing
-+C Symmetric Function RC2 CBC Variable
-+M Functionality tests
-+M Null cipher tests
-Symmetric Function Null
-+M DES Tests
-Symmetric Function DES ECB Variable
-Symmetric Function DES CBC Variable
-Symmetric Function DES CFB Variable
-Symmetric Function DES OFB Variable
-+C Symmetric Function DES ECB Modes
-+C Symmetric Function DES CBC Modes
-+C Symmetric Function DES CFB Modes
-+C Symmetric Function DES OFB Modes
-+M 3DES Tests
-Symmetric Function 3DES2 ECB Variable
-Symmetric Function 3DES2 CBC Variable
-Symmetric Function 3DES2 CFB Variable
-Symmetric Function 3DES2 OFB Variable
-Symmetric Function 3DES3 ECB Variable
-Symmetric Function 3DES3 CBC Variable
-Symmetric Function 3DES3 CFB Variable
-Symmetric Function 3DES3 OFB Variable
-+C Symmetric Function 3DES ECB Modes
-+C Symmetric Function 3DES CBC Modes
-+C Symmetric Function 3DES CFB Modes
-+C Symmetric Function 3DES OFB Modes
-+M RC2 Tests
-Symmetric Function RC2 CFB Variable
-Symmetric Function RC2 ECB Variable
-Symmetric Function RC2 CBC Variable
-Symmetric Function RC2 OFB Variable
-+C Symmetric Function RC2 ECB Modes
-+C Symmetric Function RC2 CBC Modes
-+C Symmetric Function RC2 CFB Modes
-+C Symmetric Function RC2 OFB Modes
-+M RC4 Tests
-Symmetric Function RC4  
-+M RC5 Tests
-Symmetric Function RC5 ECB Variable
-Symmetric Function RC5 CBC Variable
-Symmetric Function RC5 CFB Variable
-Symmetric Function RC5 OFB Variable
-+C Symmetric Function RC5 ECB Modes
-+C Symmetric Function RC5 CBC Modes
-+C Symmetric Function RC5 CFB Modes
-+C Symmetric Function RC5 OFB Modes
-+M RSA Tests
-Asymmetric Function RSA
-+M DH Tests
-+M ***Diffie hellman functionality tests broken?
-+C Asymmetric Function DH
-+M DSA Tests
-Asymmetric Function DSA
-+M Padding tests
-Padding Function NoPadding
-Padding Function SSLPadding
-Padding Function PKCS1
--- a/crypto/weakcrypto/test/trandom/testdata/hmacmd5.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-+M HMAC-MD5 tests
-+C This file contains test vectors for the HMAC-MD5 algorithm...
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 9294727A3638BB1C13F48EF8158BFC9D
-+C 0000000000000000000000000000000000000000000000000000000000000000 0123456789ABCDEF132435475768798A9BACBDCEDF112233 E7068E5EF979B0BC871917375EC1B241771EA5C4
-+C 0123456789ABCDEF132435475768798A9BACBDCEDF112233 0123456789ABCDEF132435475768798A9BACBDCEDF112233 9858A7B8978C760324B603B13A3685B38BF4D21A
-+C 4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B B617318655057264E28BC0B6FB378C8EF146BE00
-+C 7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 EFFCDF6AE5EB2FA2D27416D5F184DF9C259A7C79
-+C DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 41414141414141414141414141414141414141414141414141414141414141414141414141414141 125D7342B9AC11CD91A39AF48AA17B4F63F175D3
--- a/crypto/weakcrypto/test/trandom/testdata/hmacsha1.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-+M HMAC-SHA1 tests
-+C This file contains test vectors for the HMAC-SHA1 algorithm...
-+C 4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B 9294727A3638BB1C13F48EF8158BFC9D
-0000000000000000000000000000000000000000000000000000000000000000 0123456789ABCDEF132435475768798A9BACBDCEDF112233 E7068E5EF979B0BC871917375EC1B241771EA5C4
-0123456789ABCDEF132435475768798A9BACBDCEDF112233 0123456789ABCDEF132435475768798A9BACBDCEDF112233 9858A7B8978C760324B603B13A3685B38BF4D21A
-4869205468657265 0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B0B B617318655057264E28BC0B6FB378C8EF146BE00
-7768617420646F2079612077616E7420666F72206E6F7468696E673F 4A656665 EFFCDF6AE5EB2FA2D27416D5F184DF9C259A7C79
-+C DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 41414141414141414141414141414141414141414141414141414141414141414141414141414141 125D7342B9AC11CD91A39AF48AA17B4F63F175D3
--- a/crypto/weakcrypto/test/trandom/testdata/md2.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-+M MD2 tests
-+C This file contains test vectors for the MD2 algorithm...
-+M   RFC 1319 Test Vectors
-61 32EC01EC4A6DAC72C0AB96FB34C0B5D1
-616263 DA853B0D3F88D99B30283A69E6DED6BB
-6D65737361676520646967657374 AB4F496BFB2A530B219FF33031FE06B0
-6162636465666768696A6B6C6D6E6F707172737475767778797A 4E8DDFF3650292AB5A4108C3AA47940B
-4142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A30313233343536373839 DA33DEF2A42DF13975352846C30338CD
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 D5976F79D83D3A0DC9806C3C66F3EFD8
--- a/crypto/weakcrypto/test/trandom/testdata/md5.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-+M MD5 tests
-+C This file contains test vectors for the MD5 algorithm...
-+M   RFC 1321 Test Vectors
-61 0CC175B9C0F1B6A831C399E269772661
-616263 900150983CD24FB0D6963F7D28E17F72
-6D65737361676520646967657374 F96B697D7CB7938D525A2F31AAF161D0
-6162636465666768696A6B6C6D6E6F707172737475767778797A C3FCD3D76192E4007DFB496CCA67E13B
-4142434445464748494A4B4C4D4E4F505152535455565758595A6162636465666768696A6B6C6D6E6F707172737475767778797A30313233343536373839 D174AB98D277D9F5A5611C2C9F419D9F
-3132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930313233343536373839303132333435363738393031323334353637383930 57EDF4A22BE3C955AC49DA2E2107B67A
--- a/crypto/weakcrypto/test/trandom/testdata/oom.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-+C This file collects together all the out of memory tests
-+C for cryptalg
-+M Out of memory tests
-Symmetric OOM RC2 ECB
-Symmetric OOM RC2 CBC
-Symmetric OOM RC2 CFB
-Symmetric OOM RC2 OFB
-Symmetric OOM RC4
-Symmetric OOM RC5 ECB
-Symmetric OOM RC5 CBC
-Symmetric OOM RC5 CFB
-Symmetric OOM RC5 OFB
-Symmetric OOM DES ECB
-Symmetric OOM DES CBC
-Symmetric OOM DES CFB
-+C Symmetric OOM DES2 OFB
-Symmetric OOM 3DES2 ECB
-Symmetric OOM 3DES2 CBC
-Symmetric OOM 3DES2 CFB
-+C Symmetric OOM DES3 OFB
-Symmetric OOM 3DES3 ECB
-Symmetric OOM 3DES3 CBC
-Symmetric OOM 3DES3 CFB
-+C Symmetric OOM 3DES OFB
-Asymmetric OOM DSA
-Asymmetric OOM RSA
--- a/crypto/weakcrypto/test/trandom/testdata/rc2cbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-+M RC2 CBC tests
-+M BSafe tests - TVR2CBN0
-+C Key............. Plaintext....... Ciphertext...... IV..............
-01 0000000000000000 0000000000000000 EBB773F993278EFF 0000000000000000
-+M BSafe tests - TFCIV801
-+M These appear not to be correct vectors...? 
-+M They are from partial encrypt tests
-+M Actually, the problem is the number of effective bits, these are marked as 
-+M 32 effective bits in the BSafe test vector file and give the correct 
-+M answers if they are initialised with 32 effective bits.
-+C 01 1234567890123456 0001020304050607 ADA134F25BA7E028 7766554433221100
-+C 01 1234567890123456 00010203040506070809101112131415 ADA134F25BA7E0281CBE461F05491F1C 7766554433221100
-+C 01 1234567890123456 000102030405060708091011121314151617181920212223 ADA134F25BA7E0281CBE461F05491F1CC08E67D3AEA1F190 7766554433221100
-+C 02 1234567890123456 0001020304050607 D08502E791F56B76 0011223344556677
-+C 02 1234567890123456 00010203040506070809101112131415 D08502E791F56B76535055800911B4D6 0011223344556677
-+C 02 1234567890123456 000102030405060708091011121314151617181920212223 D08502E791F56B76535055800911B4D6724ECD8EE3E3443B 0011223344556677
-+M BSafe tests - TFRC2C00
-01 0123456789ABCDEF 1110010110010100 83919A5CBDDA91E8 0001101001101011
-02 0123456789ABCDEF 0001101001101011 83919A5CBDDA91E8 1110010110010100
-03 0123456789ABCDEF 88BCA90E90875A7F B0E5CDDD09CB4581 456789ABCDEF0123
-04 0123456789ABCDEF 0F79C384627BAFB2 B20420ABB639D2BE B0E5CDDD09CB4581
-05 0123456789ABCDEF 16F80A6F85920584 0BB613FC9B702A66 B20420ABB639D2BE
-06 0123456789ABCDEF 88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584 B0E5CDDD09CB4581B20420ABB639D2BE0BB613FC9B702A66 456789ABCDEF0123
-+M BSafe tests - TFRC2C01
-+M This vector also appears broken, it is from partial encrypt tests
-+C 01 0123456789ABCDEF 1011121314151617181920212223242526272829303132333435363738394041 D41F760B7391926552423C5B3204DFEECBDC9D7E6B8366FA397CDF48A2E359DC 0000000000000000
-02 0123456789ABCDEF 1122334455667788 560788C117EC3BF0 0000000000000000
-03 0123456789ABCDEF 1122334455667788AA11223344556677 560788C117EC3BF028D552DB234B64C5 0000000000000000
-04 0123456789ABCDEF 1122334455667788AA1122334455667788AA112233445566 560788C117EC3BF028D552DB234B64C58E0C5D57AF03D760 0000000000000000
-+M BSafe tests - TVRC2C00
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 278B27E42E2F0D49 0000000000000000
-02 3000000000000000 1000000000000001 30649EDF9BE7D2C2 0000000000000000
-03 1111111111111111 1111111111111111 08BA6FFA24CD2448 0000000000000000
-04 0123456789ABCDEF 1111111111111111 83919A5CBDDA91E8 0000000000000000
-05 1111111111111111 0123456789ABCDEF 715D05DCBAD0A52D 0000000000000000
-06 FEDCBA9876543210 0123456789ABCDEF AFF61F28ADB8F992 0000000000000000
-07 7CA110454A1A6E57 01A1D6D039776742 E6C72BD91A8317DA 0000000000000000
-08 0131D9619DC1376E 5CD54CA83DEF57DA 5DEC877636C097F4 0000000000000000
-09 07A1133E4A0B2686 0248D43806F67172 F6A678D160B219E1 0000000000000000
-10 3849674C2602319E 51454B582DDF440A F10947AADA21CC24 0000000000000000
-11 04B915BA43FEB5B6 42FD443059577FA2 2F999B72BFE16FA7 0000000000000000
-12 0113B970FD34F2CE 059B5E0851CF143A 35783A7937FC0786 0000000000000000
-13 0170F175468FB5E6 0756D8E0774761D2 4BE2541E1F1E9AE9 0000000000000000
-14 43297FAD38E373FE 762514B829BF486A 0D827AB91CBE6B81 0000000000000000
-15 07A7137045DA2A16 3BDD119049372802 0E4D330B57B01F64 0000000000000000
-16 04689104C2FD3B2F 26955F6835AF609A 0F89859336A2BB56 0000000000000000
-17 37D06BB516CB7546 164D5E404F275232 CC22A66F79417445 0000000000000000
-18 1F08260D1AC2465E 6B056E18759F5CCA 9A9FA77A5CE073A0 0000000000000000
-19 584023641ABA6176 004BD6EF09176062 D896266223671934 0000000000000000
-20 025816164629B007 480D39006EE762F2 4DF89CF7EE3D5B40 0000000000000000
-21 49793EBC79B3258F 437540C8698F3CFA 141F405CA84C25C4 0000000000000000
-22 4FB05E1515AB73A7 072D43A077075292 3F0558B19B018711 0000000000000000
-23 49E95D6D4CA229BF 02FE55778117F12A 585FE24017619CCF 0000000000000000
-24 018310DC409B26D6 1D9D5C5018F728C2 7963042382F61893 0000000000000000
-25 1C587F1C13924FEF 305532286D6F295A B3073BCAE8912B3B 0000000000000000
-26 0101010101010101 0123456789ABCDEF 927B508FF3609651 0000000000000000
-27 1F1F1F1F0E0E0E0E 0123456789ABCDEF D8E4684DCE864C3B 0000000000000000
-28 E0FEE0FEF1FEF1FE 0123456789ABCDEF AF317F8DB5F2B33C 0000000000000000
-29 0000000000000000 FFFFFFFFFFFFFFFF 0770C3EB6DC04678 0000000000000000
-30 FFFFFFFFFFFFFFFF 0000000000000000 A3A112654F81C5CD 0000000000000000
-31 0123456789ABCDEF 0000000000000000 A9F36E0F75C4D4E7 0000000000000000
-32 FEDCBA9876543210 FFFFFFFFFFFFFFFF 285155EE09767F79 0000000000000000
-+M BSafe tests - TVRC2P00
-01 0123456789ABCDEF 6789ABCDEF012345 8AB9812A157EFA87 00000000EFAB23EF
-02 0123456789ABCDEF 6789ABCDEF0123450808080808080808 8AB9812A157EFA8791CF42833556FB07 00000000EFAB23EF
-03 0123456789ABCDEF 010203040506070809101112131415160808080808080808 2DEF62E545A755DEABB588A36AF7E2A11F65064B843373D0 00000000EFAB23EF
-04 0123456789ABCDEF 01020304050607080910111213141501 2DEF62E545A755DE377B2C5382276EC1 00000000EFAB23EF
-05 0123456789ABCDEF 01020304050607080910111213140202 2DEF62E545A755DE558B258C5E98416A 00000000EFAB23EF
-06 0123456789ABCDEF 01020304050607080910111213030303 2DEF62E545A755DE61202489EE7BA71D 00000000EFAB23EF
-07 0123456789ABCDEF 01020304050607080910111204040404 2DEF62E545A755DEE88E29056AE9DA70 00000000EFAB23EF
-08 0123456789ABCDEF 01020304050607080910110505050505 2DEF62E545A755DE3C07D96F3A786265 00000000EFAB23EF
-09 0123456789ABCDEF 01020304050607080910060606060606 2DEF62E545A755DEB44C5090B8835C81 00000000EFAB23EF
-10 0123456789ABCDEF 01020304050607080907070707070707 2DEF62E545A755DECC05EF7692F2C516 00000000EFAB23EF
-11 0123456789ABCDEF 01020304050607080808080808080808 2DEF62E545A755DEC6D72BD46DB0B596 00000000EFAB23EF
-12 0123456789ABCDEF 0102030405060701 BC833CE2076E664D 00000000EFAB23EF
-13 0123456789ABCDEF 0102030405060202 3A6906738CCCC62F 00000000EFAB23EF
-14 0123456789ABCDEF 0102030405030303 8C7CDFD20A4A6E28 00000000EFAB23EF
-15 0123456789ABCDEF 0102030404040404 7BC7D4549A008837 00000000EFAB23EF
-16 0123456789ABCDEF 0102030505050505 EB777B0CDB21B583 00000000EFAB23EF
-17 0123456789ABCDEF 0102060606060606 AD39A96DCDFA9702 00000000EFAB23EF
-18 0123456789ABCDEF 0107070707070707 7C57FF01CCB66C58 00000000EFAB23EF
-19 0123456789ABCDEF 0808080808080808 2F9C162C976D4D2E 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/rc2cfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFF 278B27E42E2F0D49 0000000000000000
-+M RC2 CFB tests
-+M These tests are taken from RC2 CBC tests, the results should 
-+M be the same for the first block at least - they are not directly 
-+M specified as part of the BSafe tests
-+M BSafe tests - TVR2CBN0
-+C Key............. Plaintext....... Ciphertext...... IV..............
-+C 01 0000000000000000 0000000000000000 EBB773F993278EFF 0000000000000000
-+M BSafe tests - TFCIV801
-+M These appear not to be correct vectors...? They are from partial encrypt tests
-+C 01 1234567890123456 000102030405060708091011121314151617181920212223 ADA134F25BA7E0281CBE461F05491F1CC08E67D3AEA1F190 0011223344556677
-+C 02 1234567890123456 000102030405060708091011121314151617181920212223 D08502E791F56B76535055800911B4D6724ECD8EE3E3443B 7766554433221100
-+M BSafe tests - TFRC2C00
-01 0123456789ABCDEF 1110010110010100 83919A5CBDDA91E8 0001101001101011
-02 0123456789ABCDEF 0001101001101011 83919A5CBDDA91E8 1110010110010100
-03 0123456789ABCDEF 88BCA90E90875A7F B0E5CDDD09CB4581 456789ABCDEF0123
-04 0123456789ABCDEF 0F79C384627BAFB2 B20420ABB639D2BE B0E5CDDD09CB4581
-05 0123456789ABCDEF 16F80A6F85920584 0BB613FC9B702A66 B20420ABB639D2BE
-06 0123456789ABCDEF 88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584 B0E5CDDD09CB4581B20420ABB639D2BE0BB613FC9B702A66 456789ABCDEF0123
-+M BSafe tests - TFRC2C01
-+M This vector also appears broken, it is from partial encrypt tests
-+C 01 0123456789ABCDEF 1011121314151617181920212223242526272829303132333435363738394041 D41F760B7391926552423C5B3204DFEECBDC9D7E6B8366FA397CDF48A2E359DC 0000000000000000
-02 0123456789ABCDEF 1122334455667788 560788C117EC3BF0 0000000000000000
-03 0123456789ABCDEF 1122334455667788AA11223344556677 560788C117EC3BF028D552DB234B64C5 0000000000000000
-04 0123456789ABCDEF 1122334455667788AA1122334455667788AA112233445566 560788C117EC3BF028D552DB234B64C58E0C5D57AF03D760 0000000000000000
-+M BSafe tests - TVRC2C00
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 278B27E42E2F0D49 0000000000000000
-02 3000000000000000 1000000000000001 30649EDF9BE7D2C2 0000000000000000
-03 1111111111111111 1111111111111111 08BA6FFA24CD2448 0000000000000000
-04 0123456789ABCDEF 1111111111111111 83919A5CBDDA91E8 0000000000000000
-05 1111111111111111 0123456789ABCDEF 715D05DCBAD0A52D 0000000000000000
-06 FEDCBA9876543210 0123456789ABCDEF AFF61F28ADB8F992 0000000000000000
-07 7CA110454A1A6E57 01A1D6D039776742 E6C72BD91A8317DA 0000000000000000
-08 0131D9619DC1376E 5CD54CA83DEF57DA 5DEC877636C097F4 0000000000000000
-09 07A1133E4A0B2686 0248D43806F67172 F6A678D160B219E1 0000000000000000
-10 3849674C2602319E 51454B582DDF440A F10947AADA21CC24 0000000000000000
-11 04B915BA43FEB5B6 42FD443059577FA2 2F999B72BFE16FA7 0000000000000000
-12 0113B970FD34F2CE 059B5E0851CF143A 35783A7937FC0786 0000000000000000
-13 0170F175468FB5E6 0756D8E0774761D2 4BE2541E1F1E9AE9 0000000000000000
-14 43297FAD38E373FE 762514B829BF486A 0D827AB91CBE6B81 0000000000000000
-15 07A7137045DA2A16 3BDD119049372802 0E4D330B57B01F64 0000000000000000
-16 04689104C2FD3B2F 26955F6835AF609A 0F89859336A2BB56 0000000000000000
-17 37D06BB516CB7546 164D5E404F275232 CC22A66F79417445 0000000000000000
-18 1F08260D1AC2465E 6B056E18759F5CCA 9A9FA77A5CE073A0 0000000000000000
-19 584023641ABA6176 004BD6EF09176062 D896266223671934 0000000000000000
-20 025816164629B007 480D39006EE762F2 4DF89CF7EE3D5B40 0000000000000000
-21 49793EBC79B3258F 437540C8698F3CFA 141F405CA84C25C4 0000000000000000
-22 4FB05E1515AB73A7 072D43A077075292 3F0558B19B018711 0000000000000000
-23 49E95D6D4CA229BF 02FE55778117F12A 585FE24017619CCF 0000000000000000
-24 018310DC409B26D6 1D9D5C5018F728C2 7963042382F61893 0000000000000000
-25 1C587F1C13924FEF 305532286D6F295A B3073BCAE8912B3B 0000000000000000
-26 0101010101010101 0123456789ABCDEF 927B508FF3609651 0000000000000000
-27 1F1F1F1F0E0E0E0E 0123456789ABCDEF D8E4684DCE864C3B 0000000000000000
-28 E0FEE0FEF1FEF1FE 0123456789ABCDEF AF317F8DB5F2B33C 0000000000000000
-29 0000000000000000 FFFFFFFFFFFFFFFF 0770C3EB6DC04678 0000000000000000
-30 FFFFFFFFFFFFFFFF 0000000000000000 A3A112654F81C5CD 0000000000000000
-31 0123456789ABCDEF 0000000000000000 A9F36E0F75C4D4E7 0000000000000000
-32 FEDCBA9876543210 FFFFFFFFFFFFFFFF 285155EE09767F79 0000000000000000
-+M BSafe tests - TVRC2P00
-01 0123456789ABCDEF 6789ABCDEF012345 8AB9812A157EFA87 00000000EFAB23EF
-02 0123456789ABCDEF 6789ABCDEF0123450808080808080808 8AB9812A157EFA8791CF42833556FB07 00000000EFAB23EF
-03 0123456789ABCDEF 010203040506070809101112131415160808080808080808 2DEF62E545A755DEABB588A36AF7E2A11F65064B843373D0 00000000EFAB23EF
-04 0123456789ABCDEF 01020304050607080910111213141501 2DEF62E545A755DE377B2C5382276EC1 00000000EFAB23EF
-05 0123456789ABCDEF 01020304050607080910111213140202 2DEF62E545A755DE558B258C5E98416A 00000000EFAB23EF
-06 0123456789ABCDEF 01020304050607080910111213030303 2DEF62E545A755DE61202489EE7BA71D 00000000EFAB23EF
-07 0123456789ABCDEF 01020304050607080910111204040404 2DEF62E545A755DEE88E29056AE9DA70 00000000EFAB23EF
-08 0123456789ABCDEF 01020304050607080910110505050505 2DEF62E545A755DE3C07D96F3A786265 00000000EFAB23EF
-09 0123456789ABCDEF 01020304050607080910060606060606 2DEF62E545A755DEB44C5090B8835C81 00000000EFAB23EF
-10 0123456789ABCDEF 01020304050607080907070707070707 2DEF62E545A755DECC05EF7692F2C516 00000000EFAB23EF
-11 0123456789ABCDEF 01020304050607080808080808080808 2DEF62E545A755DEC6D72BD46DB0B596 00000000EFAB23EF
-12 0123456789ABCDEF 0102030405060701 BC833CE2076E664D 00000000EFAB23EF
-13 0123456789ABCDEF 0102030405060202 3A6906738CCCC62F 00000000EFAB23EF
-14 0123456789ABCDEF 0102030405030303 8C7CDFD20A4A6E28 00000000EFAB23EF
-15 0123456789ABCDEF 0102030404040404 7BC7D4549A008837 00000000EFAB23EF
-16 0123456789ABCDEF 0102030505050505 EB777B0CDB21B583 00000000EFAB23EF
-17 0123456789ABCDEF 0102060606060606 AD39A96DCDFA9702 00000000EFAB23EF
-18 0123456789ABCDEF 0107070707070707 7C57FF01CCB66C58 00000000EFAB23EF
-19 0123456789ABCDEF 0808080808080808 2F9C162C976D4D2E 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/rc2ecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-+M RC2 ECB tests
-+M These tests are taken from RC2 CBC tests, the results should 
-+M be the same for the first block when the IV consists only of
-+M zeros - they are not directly specified as part of the BSafe 
-+M tests
-+M RFC 2268 tests
-01 88 0000000000000000 61A8A244ADACCCF0
-02 88BCA90E90875A 0000000000000000 6CCF4308974C267F
-03 88BCA90E90875A7F0F79C384627BAFB2 0000000000000000 1A807D272BBE5DB1
-+M The following vector will fail as we only support 64 bit effective
-+M key size and this will give the correct result for 128 bit 
-+M effective key size.
-+C 04 88BCA90E90875A7F0F79C384627BAFB2 0000000000000000 2269552AB0F85CA6
-+C 05 88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584C42FCEB0BE255DAF1E 0000000000000000 5B78D3A43DFFF1F1
-+M BSafe tests - TVR2CBN0
-+C Key............. Plaintext....... Ciphertext......
-01 0000000000000000 0000000000000000 EBB773F993278EFF
-+M BSafe tests - TFRC2C01
-02 0123456789ABCDEF 1122334455667788 560788C117EC3BF0
-+M BSafe tests - TVRC2C00
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 278B27E42E2F0D49
-02 3000000000000000 1000000000000001 30649EDF9BE7D2C2
-03 1111111111111111 1111111111111111 08BA6FFA24CD2448
-04 0123456789ABCDEF 1111111111111111 83919A5CBDDA91E8
-05 1111111111111111 0123456789ABCDEF 715D05DCBAD0A52D
-06 FEDCBA9876543210 0123456789ABCDEF AFF61F28ADB8F992
-07 7CA110454A1A6E57 01A1D6D039776742 E6C72BD91A8317DA
-08 0131D9619DC1376E 5CD54CA83DEF57DA 5DEC877636C097F4
-09 07A1133E4A0B2686 0248D43806F67172 F6A678D160B219E1
-10 3849674C2602319E 51454B582DDF440A F10947AADA21CC24
-11 04B915BA43FEB5B6 42FD443059577FA2 2F999B72BFE16FA7
-12 0113B970FD34F2CE 059B5E0851CF143A 35783A7937FC0786
-13 0170F175468FB5E6 0756D8E0774761D2 4BE2541E1F1E9AE9
-14 43297FAD38E373FE 762514B829BF486A 0D827AB91CBE6B81
-15 07A7137045DA2A16 3BDD119049372802 0E4D330B57B01F64
-16 04689104C2FD3B2F 26955F6835AF609A 0F89859336A2BB56
-17 37D06BB516CB7546 164D5E404F275232 CC22A66F79417445
-18 1F08260D1AC2465E 6B056E18759F5CCA 9A9FA77A5CE073A0
-19 584023641ABA6176 004BD6EF09176062 D896266223671934
-20 025816164629B007 480D39006EE762F2 4DF89CF7EE3D5B40
-21 49793EBC79B3258F 437540C8698F3CFA 141F405CA84C25C4
-22 4FB05E1515AB73A7 072D43A077075292 3F0558B19B018711
-23 49E95D6D4CA229BF 02FE55778117F12A 585FE24017619CCF
-24 018310DC409B26D6 1D9D5C5018F728C2 7963042382F61893
-25 1C587F1C13924FEF 305532286D6F295A B3073BCAE8912B3B
-26 0101010101010101 0123456789ABCDEF 927B508FF3609651
-27 1F1F1F1F0E0E0E0E 0123456789ABCDEF D8E4684DCE864C3B
-28 E0FEE0FEF1FEF1FE 0123456789ABCDEF AF317F8DB5F2B33C
-29 0000000000000000 FFFFFFFFFFFFFFFF 0770C3EB6DC04678
-30 FFFFFFFFFFFFFFFF 0000000000000000 A3A112654F81C5CD
-31 0123456789ABCDEF 0000000000000000 A9F36E0F75C4D4E7
-32 FEDCBA9876543210 FFFFFFFFFFFFFFFF 285155EE09767F79
--- a/crypto/weakcrypto/test/trandom/testdata/rc2ofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,77 +0,0 @@
-+M RC2 OFB tests
-+M These tests are taken from RC2 CBC tests, the results should 
-+M be the same for the first block at least - they are not directly 
-+M specified as part of the BSafe tests
-+M BSafe tests - TVR2CBN0
-+C Key............. Plaintext....... Ciphertext...... IV..............
-01 0000000000000000 0000000000000000 EBB773F993278EFF 0000000000000000
-+M BSafe tests - TFCIV801
-+M These appear not to be correct vectors...? They are from partial encrypt tests
-+C 01 1234567890123456 000102030405060708091011121314151617181920212223 ADA134F25BA7E0281CBE461F05491F1CC08E67D3AEA1F190 0011223344556677
-+C 02 1234567890123456 000102030405060708091011121314151617181920212223 D08502E791F56B76535055800911B4D6724ECD8EE3E3443B 7766554433221100
-+M BSafe tests - TFRC2C00
-01 0123456789ABCDEF 1110010110010100 83919A5CBDDA91E8 0001101001101011
-02 0123456789ABCDEF 0001101001101011 83919A5CBDDA91E8 1110010110010100
-03 0123456789ABCDEF 88BCA90E90875A7F B0E5CDDD09CB4581 456789ABCDEF0123
-04 0123456789ABCDEF 0F79C384627BAFB2 B20420ABB639D2BE B0E5CDDD09CB4581
-05 0123456789ABCDEF 16F80A6F85920584 0BB613FC9B702A66 B20420ABB639D2BE
-06 0123456789ABCDEF 88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584 B0E5CDDD09CB4581B20420ABB639D2BE0BB613FC9B702A66 456789ABCDEF0123
-+M BSafe tests - TFRC2C01
-+M This vector also appears broken, it is from partial encrypt tests
-+C 01 0123456789ABCDEF 1011121314151617181920212223242526272829303132333435363738394041 D41F760B7391926552423C5B3204DFEECBDC9D7E6B8366FA397CDF48A2E359DC 0000000000000000
-02 0123456789ABCDEF 1122334455667788 560788C117EC3BF0 0000000000000000
-03 0123456789ABCDEF 1122334455667788AA11223344556677 560788C117EC3BF028D552DB234B64C5 0000000000000000
-04 0123456789ABCDEF 1122334455667788AA1122334455667788AA112233445566 560788C117EC3BF028D552DB234B64C58E0C5D57AF03D760 0000000000000000
-+M BSafe tests - TVRC2C00
-01 FFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF 278B27E42E2F0D49 0000000000000000
-02 3000000000000000 1000000000000001 30649EDF9BE7D2C2 0000000000000000
-03 1111111111111111 1111111111111111 08BA6FFA24CD2448 0000000000000000
-04 0123456789ABCDEF 1111111111111111 83919A5CBDDA91E8 0000000000000000
-05 1111111111111111 0123456789ABCDEF 715D05DCBAD0A52D 0000000000000000
-06 FEDCBA9876543210 0123456789ABCDEF AFF61F28ADB8F992 0000000000000000
-07 7CA110454A1A6E57 01A1D6D039776742 E6C72BD91A8317DA 0000000000000000
-08 0131D9619DC1376E 5CD54CA83DEF57DA 5DEC877636C097F4 0000000000000000
-09 07A1133E4A0B2686 0248D43806F67172 F6A678D160B219E1 0000000000000000
-10 3849674C2602319E 51454B582DDF440A F10947AADA21CC24 0000000000000000
-11 04B915BA43FEB5B6 42FD443059577FA2 2F999B72BFE16FA7 0000000000000000
-12 0113B970FD34F2CE 059B5E0851CF143A 35783A7937FC0786 0000000000000000
-13 0170F175468FB5E6 0756D8E0774761D2 4BE2541E1F1E9AE9 0000000000000000
-14 43297FAD38E373FE 762514B829BF486A 0D827AB91CBE6B81 0000000000000000
-15 07A7137045DA2A16 3BDD119049372802 0E4D330B57B01F64 0000000000000000
-16 04689104C2FD3B2F 26955F6835AF609A 0F89859336A2BB56 0000000000000000
-17 37D06BB516CB7546 164D5E404F275232 CC22A66F79417445 0000000000000000
-18 1F08260D1AC2465E 6B056E18759F5CCA 9A9FA77A5CE073A0 0000000000000000
-19 584023641ABA6176 004BD6EF09176062 D896266223671934 0000000000000000
-20 025816164629B007 480D39006EE762F2 4DF89CF7EE3D5B40 0000000000000000
-21 49793EBC79B3258F 437540C8698F3CFA 141F405CA84C25C4 0000000000000000
-22 4FB05E1515AB73A7 072D43A077075292 3F0558B19B018711 0000000000000000
-23 49E95D6D4CA229BF 02FE55778117F12A 585FE24017619CCF 0000000000000000
-24 018310DC409B26D6 1D9D5C5018F728C2 7963042382F61893 0000000000000000
-25 1C587F1C13924FEF 305532286D6F295A B3073BCAE8912B3B 0000000000000000
-26 0101010101010101 0123456789ABCDEF 927B508FF3609651 0000000000000000
-27 1F1F1F1F0E0E0E0E 0123456789ABCDEF D8E4684DCE864C3B 0000000000000000
-28 E0FEE0FEF1FEF1FE 0123456789ABCDEF AF317F8DB5F2B33C 0000000000000000
-29 0000000000000000 FFFFFFFFFFFFFFFF 0770C3EB6DC04678 0000000000000000
-30 FFFFFFFFFFFFFFFF 0000000000000000 A3A112654F81C5CD 0000000000000000
-31 0123456789ABCDEF 0000000000000000 A9F36E0F75C4D4E7 0000000000000000
-32 FEDCBA9876543210 FFFFFFFFFFFFFFFF 285155EE09767F79 0000000000000000
-+M BSafe tests - TVRC2P00
-01 0123456789ABCDEF 6789ABCDEF012345 8AB9812A157EFA87 00000000EFAB23EF
-02 0123456789ABCDEF 6789ABCDEF0123450808080808080808 8AB9812A157EFA8791CF42833556FB07 00000000EFAB23EF
-03 0123456789ABCDEF 010203040506070809101112131415160808080808080808 2DEF62E545A755DEABB588A36AF7E2A11F65064B843373D0 00000000EFAB23EF
-04 0123456789ABCDEF 01020304050607080910111213141501 2DEF62E545A755DE377B2C5382276EC1 00000000EFAB23EF
-05 0123456789ABCDEF 01020304050607080910111213140202 2DEF62E545A755DE558B258C5E98416A 00000000EFAB23EF
-06 0123456789ABCDEF 01020304050607080910111213030303 2DEF62E545A755DE61202489EE7BA71D 00000000EFAB23EF
-07 0123456789ABCDEF 01020304050607080910111204040404 2DEF62E545A755DEE88E29056AE9DA70 00000000EFAB23EF
-08 0123456789ABCDEF 01020304050607080910110505050505 2DEF62E545A755DE3C07D96F3A786265 00000000EFAB23EF
-09 0123456789ABCDEF 01020304050607080910060606060606 2DEF62E545A755DEB44C5090B8835C81 00000000EFAB23EF
-10 0123456789ABCDEF 01020304050607080907070707070707 2DEF62E545A755DECC05EF7692F2C516 00000000EFAB23EF
-11 0123456789ABCDEF 01020304050607080808080808080808 2DEF62E545A755DEC6D72BD46DB0B596 00000000EFAB23EF
-12 0123456789ABCDEF 0102030405060701 BC833CE2076E664D 00000000EFAB23EF
-13 0123456789ABCDEF 0102030405060202 3A6906738CCCC62F 00000000EFAB23EF
-14 0123456789ABCDEF 0102030405030303 8C7CDFD20A4A6E28 00000000EFAB23EF
-15 0123456789ABCDEF 0102030404040404 7BC7D4549A008837 00000000EFAB23EF
-16 0123456789ABCDEF 0102030505050505 EB777B0CDB21B583 00000000EFAB23EF
-17 0123456789ABCDEF 0102060606060606 AD39A96DCDFA9702 00000000EFAB23EF
-18 0123456789ABCDEF 0107070707070707 7C57FF01CCB66C58 00000000EFAB23EF
-19 0123456789ABCDEF 0808080808080808 2F9C162C976D4D2E 00000000EFAB23EF
--- a/crypto/weakcrypto/test/trandom/testdata/rc4.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-+C Key............. Plaintext....................... Ciphertext......................
-+C 01 FEDCBA9876543210 0123456789ABCDEFFEDCBA9876543210 DAE10FB4E886C6671003CB322806393D
-+C 02 7554537A544B4361 1400000CC385724820366F8131FDAB5DFE5F2D14ED688CFB59E2904F79ED6FA7 310A5741F57FF354A2986C580A4F6D82A0A603898C94242B1D3BAFE42CC9B059
-+C 03 7554537A54 1400000CC385724820366F8131FDAB5DFE5F2D14ED688CFB59E2904F79ED6FA7 310A5741F57FF354A2986C580A4F6D82A0A603898C94242B1D3BAFE42CC9B059
-+C 04 0123456789ABCDEF 0123456789ABCDEF 75B7878099E0C596 
-+C 05 0123456789ABCDEF 0000000000000000 7494C2E7104B0879 
-+C 06 0000000000000000 0000000000000000 DE188941A3375D3A 
-+C 07 EF012345 00000000000000000000 D6A141A7EC3C38DFBD61 
-01 70E40040838C10495A4B31551D2A18EF 9017E9CEB5ECDD634860A86C1BB51663A5244CED6125B0359DAE984EDE35C86D 1400000C12C873074727389C1041B96E3BF94260A8772A294823ACA42EF21651
-+C 
-+M Test case 1 - RC4, 128
-02 022F0FFA3CB41D904C9D8A5EB98FC953 1400000CED47F2AC3869DAEA1E2A05F51BAACEA8885D0FECCAE2A4E9A9419C6B 09B6024ACDDAB55A0CE3D306A70467D39F1190C27280664153F7B713B0F61AC2
-+C 8B79D448AF287802625D22E0C97A1A3E555EE2F263FE649DE7A0AA66AF4A6A53
--- a/crypto/weakcrypto/test/trandom/testdata/rc5cbc.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-+C Rounds Key IV Plaintext Ciphertext
-+C Our implementation only supports RC5 with 8, 12 or 16 rounds.
-+C All other test vectors removed.
-+C 01 00 00 0000000000000000 0000000000000000 7A7BBA4D79111D1E
-+C 02 00 00 0000000000000000 FFFFFFFFFFFFFFFF 797BBA4D78111D1E
-+C 03 00 00 0000000000000001 0000000000000000 7A7BBA4D79111D1F
-+C 04 00 00 0000000000000000 0000000000000001 7A7BBA4D79111D1F
-+C 05 00 00 0102030405060708 1020304050607080 8B9DED91CE7794A6
-+C 06 01 11 0000000000000000 0000000000000000 2F759FE7AD86A378
-+C 07 02 00 0000000000000000 0000000000000000 DCA2694BF40E0788
-+C 08 02 00000000 0000000000000000 0000000000000000 DCA2694BF40E0788
-09 08 00 0000000000000000 0000000000000000 DCFE098577ECA5FF
-10 08 00 0102030405060708 1020304050607080 9646FB77638F9CA8
-11 12 00 0102030405060708 1020304050607080 B2B3209DB6594DA4
-12 16 00 0102030405060708 1020304050607080 545F7F32A5FC3836
-13 08 01020304 0000000000000000 FFFFFFFFFFFFFFFF 8285E7C1B5BC7402
-14 12 01020304 0000000000000000 FFFFFFFFFFFFFFFF FC586F92F7080934
-15 16 01020304 0000000000000000 FFFFFFFFFFFFFFFF CF270EF9717FF7C4
-16 12 0102030405060708 0000000000000000 FFFFFFFFFFFFFFFF E493F1C1BB4D6E8C
-17 08 0102030405060708 0102030405060708 1020304050607080 5C4C041E0F217AC3
-18 12 0102030405060708 0102030405060708 1020304050607080 921F12485373B4F7
-19 16 0102030405060708 0102030405060708 1020304050607080 5BA0CA6BBE7F5FAD
-20 08 01020304050607081020304050607080 0102030405060708 1020304050607080 C533771CD0110E63
-21 12 01020304050607081020304050607080 0102030405060708 1020304050607080 294DDB46B3278D60
-22 16 01020304050607081020304050607080 0102030405060708 1020304050607080 DAD6BDA9DFE8F7E8
-23 12 0102030405 0000000000000000 FFFFFFFFFFFFFFFF 97E0787837ED317F
-24 08 0102030405 0000000000000000 FFFFFFFFFFFFFFFF 7875DBF6738C6478
-25 08 0102030405 7875DBF6738C6478 0808080808080808 8F34C3C681C99695
-26 08 0102030405 0000000000000000 0000000000000000 7CB3F1DF34F94811
-27 08 0102030405 7CB3F1DF34F94811 1122334455667701 7FD1A023A5BBA217
-+M BSafe tests - TVR5CBN0
-01 12 00000000000000000000000000000000 0000000000000000 0000000000000000 21A5DBEE154B8F6D
-+M BSafe tests - TFCIV804
-01 12 1234567890123456 0011223344556677 000102030405060708091011121314151617181920212223 53DECC19EE94E6D0FB497EE707BFFF094DBA7E93EBE17981
-02 12 1234567890123456 7766554433221100 000102030405060708091011121314151617181920212223 211394F772F9B728A2649D018DE1D2AEE8C3EE063507136F
--- a/crypto/weakcrypto/test/trandom/testdata/rc5cfb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-+C This file contains test vectors for the RC5 CFB algorithm
--- a/crypto/weakcrypto/test/trandom/testdata/rc5ecb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-+C RC5 test code
-+M RC5 BSafe test TVR5WECB
-+C Rounds Key Plaintext Ciphertext
-01 12 00000000000000000000000000000000 00000000000000000000000000000000 039C8D97D421151DE99813BC908B09DF
-02 12 000102030405060708090A0B0C0D0E0F 00000000000000000000000000000000 ED3BCE26F32ADF4141F88B1905D31B50
-03 12 00000000000000000000000000000000 000102030405060708090A0B0C0D0E0F DBCCD45C6DE1CAF3183C2DFD04A82FA9
-04 12 000102030405060708090A0B0C0D0E0F 000102030405060708090A0B0C0D0E0F 75DA0D750094184E218622C0BFC16DF0
-05 12 00000000000000000000000000000000 92F836DDB75BD33A247F93805AB485CD C24ADF7F7A46747020C35C65EA29E7E0
-06 12 CE9E07193FD8D69C9BAB24B1686D7565 37983EEE84DEC31157AEC92EAE3B3388 0130CE147E8E611698E0610D1B6A5BC3
-07 12 37983EEE84DEC31157AEC92EAE3B3388 ED3BCE26F32ADF4141F88B1905D31B50 CE9E07193FD8D69C9BAB24B1686D7565
-08 12 ED3BCE26F32ADF4141F88B1905D31B50 000102030405060708090A0B0C0D0E0F 37983EEE84DEC31157AEC92EAE3B3388
--- a/crypto/weakcrypto/test/trandom/testdata/rc5ofb.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-+C This file contains test vectors for the RC5 CFB algorithm
--- a/crypto/weakcrypto/test/trandom/testdata/rsa.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-+C This file contains test data for a number of RSA test cases.
-+C Each is split into a different section, with Modulus, Public exponent,
-+C Input and Output lines, each containing a number for the test.
-Start testcase1
-+C This test case doesn't work, it comes from some of Philippes data
-Type Decrypt
-Modulus 01AFF1BFA898E4656DC06F97F5CDA85345E4813A92E57C39A72F277A4DFEAAD685507241F61B0C5E744A2BF12EE2B162D7674C8DE231BEDBF3AF349BF92199D2E97C735033C39E109FAC775D12EBDAED0132EE1E9125816F8099C84B93F946379CB7
-PublicExponent 010001
-Input 0192BB944584995809F6414D0EC12D8A64356CBDC7A21CCCCD3C09F3A0C49DAED0F2731C6B16368346F5DD46F065292461AACA8CF1F5D862D43E97C0502498478BE39A44E512698E3B0CF7DB816914D328DEC9D5728A63AE906514E8FD493B08F219
-Output 10CAE34DDAF234B5FEEDD98AC544E0279AE2C5C14D1EC835FEB6F48AEB26414B
-End testcase1
-Start testcase2
-Type Decrypt
-Modulus DA0EE6998DCEA3E34F8A7EFBF18B83256BEA481FF12AB0B9951104BDF063D1E26766CF1CDDCF1B482BEE8D898E9AAF298065ABE9C72D12CBAB1C4C7007A13D0A30CD158D4FF8DDD48C50151CEF50EEC42EF7FCE952F2917DE06DD535308E5E4373F241E9D56AE3B2893A5639386F063C88695B2A4DC5A754B86C89CC9BF93CCAE5FD89F5123C927896D6DC746E934461D18DC746B2750E86E8198AD56D6CD5781695A2E9C80A38EBF224134F73549313853A1BBC1E34B58B058CB9778BB1DB1F2091AB09536E90CE7B3774B97047912251631679AEB1AE412608C8192BD146AA48D6642AD78334FF2C2AC16C19434A0785E7D37CF62168EFEAF2529F7F9390CF
-PublicExponent 010001
-Input AEAA9FFCB7D2CB1F5F392928189E34C96C4F6F1AF064A2704A4F13869B60289EE88149987D0ABBE5B09D3D36DB8F0551FF09312A1FDD89779E0F2E6C9504ED86CBB4003F84024D806A2A2D780BAE6F2BA28344831FCD50824C24AFBDF7A5B4C85A0FF4E7475E498E3796FE9A88053AD9C0DB2987E6199647A73AA68C8B3C77FE4663A753DA21D1AC7E49A24BE6C367592FB38A0EBB2CBDA9AA427C35C1D87FD5A7313A4E634339AF08B061348CD398A94334F60F87293B9DC256589877C3F71BACF69DF83EAAA75445F0F5F9D53165FE6B589C71B31ED752EA3217FC40601DC97924B2F66CFDA8660E82DD98CBDAC2444F2EA07BF2F76B2C761184468A78A3E3
-Output F904CF7410706034554285462CF063C6
-End testcase2
--- a/crypto/weakcrypto/test/trandom/testdata/script.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
-+C This file contains the central script for test vectors
-+C The format is:
-+C AlgorithmType TestType Algorithm (Variant) (File)
-+C 
-+C Where:
-+C AlgorithmType is Symmetric, Asymmetric or Padding
-+C TestType is Function, Vector, OOM, Error, Performance, Problem or UnfixedProblem
-+C Algorithm is DES, RC2, RC4, RSA etc 
-+C Variant (where applicable) is CFB, OFB, CBC or ECB
-+C File is the name of the file where the known vectors can be found
-+M Functionality Testing
-Symmetric Performance 3DES2 ECB
-Symmetric Performance 3DES3 ECB
-Symmetric Performance RC2 ECB
-Asymmetric Performance RSA
-Asymmetric Performance DH
-Symmetric Performance RC5 ECB
-Symmetric Performance DES ECB
-Quit
-Symmetric Vector RC5 CBC RC5CBC.DAT
-Symmetric Vector RC5 CFB RC5CFB.DAT
-Symmetric Vector RC5 OFB RC5OFB.DAT
-Quit
-Symmetric Vector DES ECB DESECB.DAT
-Symmetric Vector DES CBC DESCBC.DAT
-Symmetric Vector DES CFB DESCFB.DAT
-Symmetric Vector DES OFB DESOFB.DAT
-Symmetric Vector 3DES2 ECB 3DESECB.DAT
-Symmetric Vector 3DES2 CBC 3DESCBC.DAT
-Symmetric Vector 3DES2 CFB 3DESCFB.DAT
-Symmetric Vector 3DES2 OFB 3DESOFB.DAT
-Symmetric Vector 3DES3 ECB 3DESECB.DAT
-Symmetric Vector 3DES3 CBC 3DESCBC.DAT
-Symmetric Vector 3DES3 CFB 3DESCFB.DAT
-Symmetric Vector 3DES3 OFB 3DESOFB.DAT
-Symmetric Function DES ECB Modes
-Symmetric Function DES ECB Variable
-Symmetric Function RC2 ECB
-Symmetric Function RC4 
-Symmetric Function RC5 ECB
-Asymmetric Function RSA
-Asymmetric Function DH
-Asymmetric Function DSA
-+M Padding tests
-Padding Function NoPadding
-Padding Function SSLPadding
-Padding Vector NoPadding
-Padding OOM NoPadding
-Padding Error NoPadding
-Padding Performance NoPadding
-Padding Problem NoPadding
-Padding UnfixedProblem NoPadding
-Padding Spurious NoPadding
- 
\ No newline at end of file
--- a/crypto/weakcrypto/test/trandom/testdata/sha.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3 +0,0 @@
-+M SHA tests
-+C This file contains test vectors for the SHA algorithm...
-+M   FIPS 180: SHA vectors test
--- a/crypto/weakcrypto/test/trandom/testdata/sha1.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-+M SHA1 tests
-+C This file contains test vectors for the SHA1 algorithm...
-+M   FIPS 180-1: SHA1 vectors test
-616263 A9993E364706816ABA3E25717850C26C9CD0D89D
-6162636462636465636465666465666765666768666768696768696A68696A6B696A6B6C6A6B6C6D6B6C6D6E6C6D6E6F6D6E6F706E6F7071 84983E441C3BD26EBAAE4AA1F95129E5E54670F1
--- a/crypto/weakcrypto/test/trandom/testdata/vector.dat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-+M Vector test file
-+M RC2 tests
-Symmetric Vector RC2 ECB RC2ECB.DAT
-Symmetric Vector RC2 CBC RC2CBC.DAT
-+C CFB/OFB not working? - no test vectors
-Symmetric Vector RC2 CFB RC2CFB.DAT
-Symmetric Vector RC2 OFB RC2OFB.DAT
-+M RC4 tests
-Symmetric Vector RC4 RC4.DAT
-+M RC5 tests
-+C RC5 ECB not working
-Symmetric Vector RC5 ECB RC5ECB.DAT
-Symmetric Vector RC5 CBC RC5CBC.DAT
-+C No vectors available right now
-+C Symmetric Vector RC5 CFB RC5CFB.DAT
-+C No vectors available right now
-+C Symmetric Vector RC5 OFB RC5OFB.DAT
-+M DES tests
-Symmetric Vector DES ECB DESECB.DAT
-Symmetric Vector DES CBC DESCBC.DAT
-Symmetric Vector DES CFB DESCFB.DAT
-Symmetric Vector DES OFB DESOFB.DAT
-+M 3DES tests
-Symmetric Vector 3DES2 ECB 3DES2ECB.DAT
-Symmetric Vector 3DES2 CBC 3DES2CBC.DAT
-Symmetric Vector 3DES2 CFB 3DES2CFB.DAT
-Symmetric Vector 3DES2 OFB 3DES2OFB.DAT
-Symmetric Vector 3DES3 ECB 3DES3ECB.DAT
-Symmetric Vector 3DES3 CBC 3DES3CBC.DAT
-Symmetric Vector 3DES3 CFB 3DES3CFB.DAT
-Symmetric Vector 3DES3 OFB 3DES3OFB.DAT
--- a/crypto/weakcrypto/test/tsymmetric/cryptotestaction.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,282 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "cryptotestaction.h"
-#include <securityerr.h>
-#include <cryptostrength.h>
-#include "../common/inlines.h"
-#include "t_output.h"
-
-CCryptoTestAction::CCryptoTestAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut)
-:	CTestAction(aConsole, aOut), iFs(aFs), iEffectiveKeyLen(128)
-{}
-
-CCryptoTestAction::~CCryptoTestAction()
-{
-	delete iBody;
-}
-
-void CCryptoTestAction::ConstructL(const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction::ConstructL(aTestActionSpec);
-	iBody = HBufC8::NewL(aTestActionSpec.iActionBody.Length());
-	iBody->Des().Copy(aTestActionSpec.iActionBody);	
-}
-
-void CCryptoTestAction::DoPerformPrerequisite(TRequestStatus& aStatus)
-{
-	TRequestStatus* status = &aStatus;
-	
-	TRAPD(r, DoPerformPrerequisiteL());
-	if ((r != iExpectedWeakResult) && (TCrypto::Strength() == TCrypto::EWeak))
-		{
-		r = KErrUnknown;
-		}
-	User::RequestComplete(status, r);
-	if (KErrNone==r)
-		{
-		iActionState = CTestAction::EAction;
-		}
-	else if (r==KErrKeyNotWeakEnough)
-		{
-		iResult = ETrue;
-		iConsole.Printf(_L("Crypto libraries returned KErrKeyNotWeakEnough!  Passing test automatically.\n\r"));
-		iOut.writeString(_L("Crypto libraries returned KErrKeyNotWeakEnough!  Passing test automatically.\r\n"));
-		iActionState = CTestAction::EPostrequisite;
-		}
-	else if (r==KErrWeakKey)
-		{
-		iResult = ETrue;
-		iConsole.Printf(_L("Crypto libraries returned KErrWeakKey!  Passing test automatically.\n\r"));
-		iOut.writeString(_L("Crypto libraries returned KErrWeakKey!  Passing test automatically.\r\n"));
-		iActionState = CTestAction::EPostrequisite;
-		}
-	else
-		{
-		iActionState = CTestAction::EPostrequisite;
-		}
-}
-
-void CCryptoTestAction::DoPerformPostrequisite(TRequestStatus& aStatus)
-{
-	TRequestStatus* status = &aStatus;
-	TRAPD(r, DoPerformPostrequisiteL());
-	delete iKey;
-	delete iInput;
-	delete iOutput;
-	delete iIV;
-	delete iEResult;
-	delete iDResult;
-
-	iFinished = ETrue;
-	User::RequestComplete(status, r);
-}
-
-void CCryptoTestAction::DoReportAction(void)
-{}
-
-void CCryptoTestAction::DoCheckResult(TInt)
-{
-	if (iResult==EFalse)
-		iConsole.Printf(_L("X"));
-	else
-		iConsole.Printf(_L("."));
-}
-
-void CCryptoTestAction::PerformAction(TRequestStatus& aStatus)
-{
-	TRequestStatus* status = &aStatus;
-
-	TRAPD(res, DoPerformActionL());
-	if (res==KErrNoMemory)
-		{
-		User::Leave(res);	//	For OOM testing
-		}
-	iActionState = CTestAction::EPostrequisite;
-	User::RequestComplete(status, res);
-}
-
-
-void CCryptoTestAction::DoInputParseL(TDesC8& aScriptBuffer)
-{
-	TInt err = KErrNone;
-	TInt pos = 0;
-
-	TPtrC8 keyTemp = Input::ParseElement(aScriptBuffer, KKeyStart, KKeyEnd, pos, err);
-	iKey = HBufC8::NewL(keyTemp.Length());
-	*iKey = keyTemp;
-	Hex(*iKey);
-
-	pos = 0;
-	TPtrC8 inputTemp = Input::ParseElement(aScriptBuffer, KInputStart, KInputEnd, pos, err);
-	iInput = HBufC8::NewL(inputTemp.Length());
-	*iInput = inputTemp;
-	Hex(*iInput);
-
-	pos = 0;
-	TPtrC8 ivTemp = Input::ParseElement(aScriptBuffer, KIVStart, KIVEnd, pos, err);
-	iIV = HBufC8::NewL(ivTemp.Length());
-	*iIV = ivTemp;
-	Hex(*iIV);
-
-	pos = 0;
-	TPtrC8 outputTemp = Input::ParseElement(aScriptBuffer, KOutputStart, KOutputEnd, pos, err);
-	iOutput = HBufC8::NewL(outputTemp.Length());
-	*iOutput = outputTemp;
-	Hex(*iOutput);
-
-	pos = 0;
-	TPtrC8 cipherType = Input::ParseElement(aScriptBuffer, KCipherTypeStart, KCipherTypeEnd, pos, err);
-	iExpectedWeakResult = KErrNone;
-	if( cipherType == _L8("DESECB") )
-	{
-		iCipherType = EDESECB;
-	}
-	else if( cipherType == _L8("DESCBC") )
-	{
-		iCipherType = EDESCBC;
-	}
-	else if( cipherType == _L8("3DESECB") )
-	{
-		iCipherType = E3DESECB;
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if( cipherType == _L8("3DESCBC") )
-	{
-		iCipherType = E3DESCBC;
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if( cipherType == _L8("AESECB") )
-	{
-		iCipherType = EAESECB;
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if (cipherType==_L8("AESENC_ECB") )
-	{
-		iCipherType = EAESMonteCarloEncryptECB;	
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if (cipherType==_L8("AESDEC_ECB") )
-	{
-		iCipherType = EAESMonteCarloDecryptECB;	
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if (cipherType==_L8("AESENC_CBC") )
-	{
-		iCipherType = EAESMonteCarloEncryptCBC;	
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if (cipherType==_L8("AESDEC_CBC") )
-	{
-		iCipherType = EAESMonteCarloDecryptCBC;		
-		iExpectedWeakResult = KErrKeyNotWeakEnough;
-	}
-	else if( cipherType == _L8("RC2ECB") )
-	{
-		iCipherType = ERC2ECB;
-		// weak enough if either aKey or aEffectiveKeyLen is weak
-		TInt minKeySize = Min(iEffectiveKeyLen, BytesToBits(iKey->Size()));
-		TRAP(iExpectedWeakResult, TCrypto::IsSymmetricWeakEnoughL(minKeySize));
-	}
-	else if( cipherType == _L8("RC2CBC") )
-	{
-		iCipherType = ERC2CBC;
-		// weak enough if either aKey or aEffectiveKeyLen is weak
-		TInt minKeySize = Min(iEffectiveKeyLen, BytesToBits(iKey->Size()));
-		TRAP(iExpectedWeakResult, TCrypto::IsSymmetricWeakEnoughL(minKeySize));
-	}
-	else if( cipherType == _L8("RC4") )
-	{
-		iCipherType = ERC4;
-		TRAP(iExpectedWeakResult, TCrypto::IsSymmetricWeakEnoughL(BytesToBits(iKey->Size())));
-	}
-	else if( cipherType == _L8("NULL") )
-	{
-		iCipherType = ECipherNull;
-	}
-	else if( cipherType == _L8("DESECB_WKT"))
-	{
-		iCipherType = EDESECB;	
-		iExpectedWeakResult = KErrWeakKey;
-	}
-	else if( cipherType == _L8("DESCBC_WKT"))
-	{
-		iCipherType = EDESCBC;	
-		iExpectedWeakResult = KErrWeakKey;
-	}
-	else 
-	{
-		TBuf<64> cipherName(0);
-		cipherName.Copy(cipherType);
-		TBuf<256> formattable;
-		formattable.Format(_L("\nBad Cipher Type: %S"), &cipherName);
-		iConsole.Printf(formattable);
-
-		iActionState = CTestAction::EPostrequisite;
-		User::Leave(KErrNotSupported);
-	}
-
-	if ( (iCipherType==ERC2ECB) || (iCipherType==ERC2CBC) )
-	{
-		pos = 0;
-		TPtrC8 effKeyLenTemp = Input::ParseElement(aScriptBuffer, KEffKeyLenStart, KEffKeyLenEnd, pos, err);
-
-		if (effKeyLenTemp.Length() != 0)
-		{
-			TLex8 lex;
-			lex.Assign(effKeyLenTemp);
-			User::LeaveIfError(lex.Val(iEffectiveKeyLen));
-		}
-	}
-
-	pos = 0;
-	TPtrC8 iterationsTemp = Input::ParseElement(aScriptBuffer, KIterationsStart, KIterationsEnd, pos, err);	
-	TLex8 lex;
-	lex.Assign(iterationsTemp);
-	err = lex.Val(iIterationTime);
-
-	pos = 0;
-	TPtrC8 randTemp = Input::ParseElement(aScriptBuffer, KRandDataSizeStart, KRandDataSizeEnd, pos, err);	
-	TLex8 randlex;
-	randlex.Assign(randTemp);
-	err = randlex.Val(iRandDataSize);	
-
-	delete iBody;
-	iBody = NULL;
-}
-
-void CCryptoTestAction::Hex(HBufC8& aString)
-    {
-    TPtr8 ptr=aString.Des();
-    if (aString.Length()%2)
-        {
-        ptr.SetLength(0);
-        return;
-        }
-    TInt i;
-    for (i=0;i<aString.Length();i+=2)
-        {
-        TUint8 tmp;
-        tmp=(TUint8)(aString[i]-(aString[i]>'9'?('A'-10):'0'));
-        tmp*=16;
-        tmp|=(TUint8)(aString[i+1]-(aString[i+1]>'9'?('A'-10):'0'));
-        ptr[i/2]=tmp;
-        }
-    ptr.SetLength(aString.Length()/2);
-    }
-
--- a/crypto/weakcrypto/test/tsymmetric/cryptotestaction.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,107 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __CRYPTOTESTACTION_H__
-#define __CRYPTOTESTACTION_H__
-
-#include "t_testaction.h"
-#include "t_input.h"
-
-_LIT8(KVectorStart, "<vector>");
-_LIT8(KVectorEnd, "</vector>");
-_LIT8(KIncrementalStart, "<incremental>");
-_LIT8(KIncrementalEnd, "</incremental>");
-_LIT8(KKeyStart, "<key>");
-_LIT8(KKeyEnd, "</key>");
-_LIT8(KInputStart, "<input>");
-_LIT8(KInputEnd, "</input>");
-_LIT8(KOutputStart, "<output>");
-_LIT8(KOutputEnd, "</output>");
-_LIT8(KCipherTypeStart, "<ciphertype>");
-_LIT8(KCipherTypeEnd, "</ciphertype>");
-_LIT8(KIVStart, "<iv>");
-_LIT8(KIVEnd, "</iv>");
-_LIT8(KMonteCarloStart, "<MonteCarlo>");
-_LIT8(KMonteCarloEnd, "</MonteCarlo>");
-_LIT8(KEffKeyLenStart, "<effectiveKeyLength>");
-_LIT8(KEffKeyLenEnd, "</effectiveKeyLength>");
-_LIT8(KIterationsStart, "<iterations>");
-_LIT8(KIterationsEnd, "</iterations>");
-_LIT8(KRandDataSizeStart, "<randDataSize>"); //Used specifically in performance tests where random data is used rather than specific input and output data pairs
-_LIT8(KRandDataSizeEnd, "</randDataSize>");  //Used specifically in performance tests where random data is used rather than specific input and output data pairs
-
-
-class CCryptoTestAction : public CTestAction
-{
-public:
-	CCryptoTestAction(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	~CCryptoTestAction();
-public:
-	virtual void ConstructL(const TTestActionSpec& aTestActionSpec);
-	virtual void DoPerformPrerequisite(TRequestStatus& aStatus);
-	virtual void DoPerformPostrequisite(TRequestStatus& aStatus);
-	virtual void PerformAction(TRequestStatus& aStatus);
-	virtual void DoReportAction(void);
-	virtual void DoCheckResult(TInt);
-	virtual void Reset(){}
-protected:	
-	virtual void DoPerformPrerequisiteL() = 0;
-	virtual void DoPerformActionL() = 0;
-	virtual void DoPerformPostrequisiteL() {}
-protected:
-	void Hex(HBufC8& string);
-	void DoInputParseL(TDesC8& aScriptBuffer);
-protected:
-	enum TCipherType
-	{
-		EDESECB,
-		EDESCBC,
-		E3DESECB,
-		E3DESCBC,
-		EAESECB,
-		EAESCBC,
-		EAESMonteCarloEncryptECB,	//	These extra categories have been added
-		EAESMonteCarloDecryptECB,	//	because the Monte-Carlo tests have to be
-		EAESMonteCarloEncryptCBC,	//	split between encrypt and decrypt scripts 
-		EAESMonteCarloDecryptCBC,	//	(too big for test framework in one chunk)
-		ERC2ECB,
-		ERC2CBC,
-		ERC4,
-		ECipherNull
-	};
-protected:
-	RFs& iFs;
-	HBufC8* iBody;
-	HBufC8* iKey;
-	HBufC8* iInput;
-	HBufC8* iOutput;
-	HBufC8* iIV;
-	HBufC8* iEResult;
-	HBufC8* iDResult;
-	TInt iEffectiveKeyLen;
-	TInt iIterationTime;
-	TInt iEncryptIterations;
-	TInt iDecryptIterations;
-	TCipherType iCipherType;
-	TTimeIntervalMicroSeconds iEncryptorCreateTime;
-	TTimeIntervalMicroSeconds iDecryptorCreateTime;
-	TInt iExpectedWeakResult;
-	TInt iRandDataSize;
-};
-
-#endif	//	__CRYPTOTESTACTION_H__
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESECBVectorsScript.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6145 +0,0 @@
-<action>
-	<actionname>AESECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F101112</key>
-			<input>506812A45F08C889B97F5980038B8359</input>
-			<output>D8F532538289EF7D06B506A4FD5BE9C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>14151617191A1B1C1E1F202123242526</key>
-			<input>5C6D71CA30DE8B8B00549984D2EC7D4B</input>
-			<output>59AB30F4D4EE6E4FF9907EF65B1FB68C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A</key>
-			<input>53F3F4C64F8616E4E7C56199F48F21F6</input>
-			<output>BF1ED2FCB2AF3FD41443B56D85025CB1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>A1EB65A3487165FB0F1C27FF9959F703</input>
-			<output>7316632D5C32233EDCB0780560EAE8B2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F606162</key>
-			<input>3553ECF0B1739558B08E350A98A39BFA</input>
-			<output>408C073E3E2538072B72625E68B8364B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>64656667696A6B6C6E6F707173747576</key>
-			<input>67429969490B9711AE2B01DC497AFDE8</input>
-			<output>E1F94DFA776597BEACA262F2F6366FEA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A</key>
-			<input>93385C1F2AEC8BED192F5A8E161DD508</input>
-			<output>F29E986C6A1C27D7B29FFD7EE92B75F1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>B5BF946BE19BEB8DB3983B5F4C6E8DDB</input>
-			<output>131C886A57F8C2E713ABA6955E2B55B5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2</key>
-			<input>41321EE10E21BD907227C4450FF42324</input>
-			<output>D2AB7662DF9B8C740210E5EEB61C199D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>00A82F59C91C8486D12C0A80124F6089</input>
-			<output>14C10554B2859C484CAB5869BBE7C470</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA</key>
-			<input>7CE0FD076754691B4BBD9FAF8A1372FE</input>
-			<output>DB4D498F0A49CF55445D502C1F9AB3B5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>23605A8243D07764541BC5AD355B3129</input>
-			<output>6D96FEF7D66590A77A77BB2056667F7F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test  12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE010002</key>
-			<input>12A8CFA23EA764FD876232B4E842BC44</input>
-			<output>316FB68EDBA736C53E78477BF913725C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>04050607090A0B0C0E0F101113141516</key>
-			<input>BCAF32415E8308B3723E5FDD853CCC80</input>
-			<output>6936F2B93AF8397FD3A771FC011C8C37</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>89AFAE685D801AD747ACE91FC49ADDE0</input>
-			<output>F3F92F7A9C59179C1FCC2C2BA0B082CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F505152</key>
-			<input>F521D07B484357C4A69E76124A634216</input>
-			<output>6A95EA659EE3889158E7A9152FF04EBC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>54555657595A5B5C5E5F606163646566</key>
-			<input>3E23B3BC065BCC152407E23896D77783</input>
-			<output>1959338344E945670678A5D432C90B93</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A</key>
-			<input>79F0FBA002BE1744670E7E99290D8F52</input>
-			<output>E49BDDD2369B83EE66E6C75A1161B394</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>DA23FE9D5BD63E1D72E3DAFBE21A6C2A</input>
-			<output>D3388F19057FF704B70784164A74867D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>E3F5698BA90B6A022EFD7DB2C7E6C823</input>
-			<output>23AA03E2D5E4CD24F3217E596480D1E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2</key>
-			<input>BDC2691D4F1B73D2700679C3BCBF9C6E</input>
-			<output>C84113D68B666AB2A50A8BDB222E91B9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A</key>
-			<input>BA74E02093217EE1BA1B42BD5624349A</input>
-			<output>AC02403981CD4340B507963DB65CB7B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>B5C593B5851C57FBF8B3F57715E8F680</input>
-			<output>8D1299236223359474011F6BF5088414</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F909192</key>
-			<input>3DA9BD9CEC072381788F9387C3BBF4EE</input>
-			<output>5A1D6AB8605505F7977E55B9A54D9B90</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>94959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>4197F3051121702AB65D316B3C637374</input>
-			<output>72E9C2D519CF555E4208805AABE3B258</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA</key>
-			<input>9F46C62EC4F6EE3F6E8C62554BC48AB7</input>
-			<output>A8F3E81C4A23A39EF4D745DFFE026E80</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>0220673FE9E699A4EBC8E0DBEB6979C8</input>
-			<output>546F646449D31458F9EB4EF5483AEE6C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2</key>
-			<input>B2B99171337DED9BC8C2C23FF6F18867</input>
-			<output>4DBE4BC84AC797C0EE4EFB7F1A07401C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>A7FACF4E301E984E5EFEEFD645B23505</input>
-			<output>25E10BFB411BBD4D625AC8795C8CA3B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A</key>
-			<input>F7C762E4A9819160FD7ACFB6C4EEDCDD</input>
-			<output>315637405054EC803614E43DEF177579</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>9B64FC21EA08709F4915436FAA70F1BE</input>
-			<output>60C5BC8A1410247295C6386C59E572A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F303132</key>
-			<input>52AF2C3DE07EE6777F55A4ABFC100B3F</input>
-			<output>01366FC8CA52DFE055D6A00A76471BA6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>34353637393A3B3C3E3F404143444546</key>
-			<input>2FCA001224386C57AA3F968CBE2C816F</input>
-			<output>ECC46595516EC612449C3F581E7D42FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A</key>
-			<input>4149C73658A4A9C564342755EE2C132F</input>
-			<output>6B7FFE4C602A154B06EE9C7DAB5331C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>AF60005A00A1772F7C07A48A923C23D2</input>
-			<output>7DA234C14039A240DD02DD0FBF84EB67</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F808182</key>
-			<input>6FCCBC28363759914B6F0280AFAF20C6</input>
-			<output>C7DC217D9E3604FFE7E91F080ECD5A3A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>84858687898A8B8C8E8F909193949596</key>
-			<input>7D82A43DDF4FEFA2FC5947499884D386</input>
-			<output>37785901863F5C81260EA41E7580CDA5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AA</key>
-			<input>5D5A990EAAB9093AFE4CE254DFA49EF9</input>
-			<output>A07B9338E92ED105E6AD720FCCCE9FE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>4CD1E2FD3F4434B553AAE453F0ED1A02</input>
-			<output>AE0FB9722418CC21A7DA816BBC61322C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2</key>
-			<input>5A2C9A9641D4299125FA1B9363104B5E</input>
-			<output>C826A193080FF91FFB21F71D3373C877</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>B517FE34C0FA217D341740BFD4FE8DD4</input>
-			<output>1181B11B0E494E8D8B0AA6B1D5AC2C48</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FA</key>
-			<input>014BAF2278A69D331D5180103643E99A</input>
-			<output>6743C3D1519AB4F2CD9A78AB09A511BD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>FCFDFEFF01020304060708090B0C0D0E</key>
-			<input>B529BD8164F20D0AA443D4932116841C</input>
-			<output>DC55C076D52BACDF2EEFD952946A439D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F202122</key>
-			<input>2E596DCBB2F33D4216A1176D5BD1E456</input>
-			<output>711B17B590FFC72B5C8E342B601E8003</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>24252627292A2B2C2E2F303133343536</key>
-			<input>7274A1EA2B7EE2424E9A0E4673689143</input>
-			<output>19983BB0950783A537E1339F4AA21C75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A</key>
-			<input>AE20020BD4F13E9D90140BEE3B5D26AF</input>
-			<output>3BA7762E15554169C0F4FA39164C410C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>BAAC065DA7AC26E855E79C8849D75A02</input>
-			<output>A0564C41245AFCA7AF8AA2E0E588EA89</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F707172</key>
-			<input>7C917D8D1D45FAB9E2540E28832540CC</input>
-			<output>5E36A42A2E099F54AE85ECD92E2381ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>74757677797A7B7C7E7F808183848586</key>
-			<input>BDE6F89E16DAADB0E847A2A614566A91</input>
-			<output>770036F878CD0F6CA2268172F106F2FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A</key>
-			<input>C9DE163725F1F5BE44EBB1DB51D07FBC</input>
-			<output>7E4E03908B716116443CCF7C94E7C259</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>3AF57A58F0C07DFFA669572B521E2B92</input>
-			<output>482735A48C30613A242DD494C7F9185D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2</key>
-			<input>3D5EBAC306DDE4604F1B4FBBBFCDAE55</input>
-			<output>B4C0F6C9D4D7079ADDF9369FC081061D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>C2DFA91BCEB76A1183C995020AC0B556</input>
-			<output>D5810FE0509AC53EDCD74F89962E6270</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EA</key>
-			<input>C70F54305885E9A0746D01EC56C8596B</input>
-			<output>03F17A16B3F91848269ECDD38EBB2165</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>ECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>C4F81B610E98012CE000182050C0C2B2</input>
-			<output>DA1248C3180348BAD4A93B4D9856C9DF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F101112</key>
-			<input>EAAB86B1D02A95D7404EFF67489F97D4</input>
-			<output>3D10D7B63F3452C06CDF6CCE18BE0C2C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>14151617191A1B1C1E1F202123242526</key>
-			<input>7C55BDB40B88870B52BEC3738DE82886</input>
-			<output>4AB823E7477DFDDC0E6789018FCB6258</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A</key>
-			<input>BA6EAA88371FF0A3BD875E3F2A975CE0</input>
-			<output>E6478BA56A77E70CFDAA5C843ABDE30E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>08059130C4C24BD30CF0575E4E0373DC</input>
-			<output>1673064895FBEAF7F09C5429FF75772D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F606162</key>
-			<input>9A8EAB004EF53093DFCF96F57E7EDA82</input>
-			<output>4488033AE9F2EFD0CA9383BFCA1A94E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>64656667696A6B6C6E6F707173747576</key>
-			<input>0745B589E2400C25F117B1D796C28129</input>
-			<output>978F3B8C8F9D6F46626CAC3C0BCB9217</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A</key>
-			<input>2F1777781216CEC3F044F134B1B92BBE</input>
-			<output>E08C8A7E582E15E5527F1D9E2EECB236</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>353A779FFC541B3A3805D90CE17580FC</input>
-			<output>CEC155B76AC5FFDA4CF4F9CA91E49A7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2</key>
-			<input>1A1EAE4415CEFCF08C4AC1C8F68BEA8F</input>
-			<output>D5AC7165763225DD2A38CDC6862C29AD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>E6E7E4E5B0B3B2B5D4D5AAAB16111013</input>
-			<output>03680FE19F7CE7275452020BE70E8204</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA</key>
-			<input>F8F9FAFBFBF8F9E677767170EFE0E1E2</input>
-			<output>461DF740C9781C388E94BB861CEB54F6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>63626160A1A2A3A445444B4A75727370</input>
-			<output>451BD60367F96483042742219786A074</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE010002</key>
-			<input>717073720605040B2D2C2B2A05FAFBF9</input>
-			<output>E4DFA42671A02E57EF173B85C0EA9F2B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>04050607090A0B0C0E0F101113141516</key>
-			<input>78797A7BEAE9E8EF3736292891969794</input>
-			<output>ED11B89E76274282227D854700A78B9E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A</key>
-			<input>838281803231300FDDDCDBDAA0AFAEAD</input>
-			<output>433946EAA51EA47AF33895F2B90B3B75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>18191A1BBFBCBDBA75747B7A7F78797A</input>
-			<output>6BC6D616A5D7D0284A5910AB35022528</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F505152</key>
-			<input>848586879B989996A3A2A5A4849B9A99</input>
-			<output>D2A920ECFE919D354B5F49EAE9719C98</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>54555657595A5B5C5E5F606163646566</key>
-			<input>0001020322212027CACBF4F551565754</input>
-			<output>3A061B17F6A92885EFBD0676985B373D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A</key>
-			<input>CECFCCCDAFACADB2515057564A454447</input>
-			<output>FADEEC16E33EA2F4688499D157E20D8F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>92939091CDCECFC813121D1C80878685</input>
-			<output>5CDEFEDE59601AA3C3CDA36FA6B1FA13</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2</key>
-			<input>D2D3D0D16F6C6D6259585F5ED1EEEFEC</input>
-			<output>9574B00039844D92EBBA7EE8719265F8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>ACADAEAF878485820F0E1110D5D2D3D0</input>
-			<output>9A9CF33758671787E5006928188643FA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CA</key>
-			<input>9091929364676619E6E7E0E1757A7B78</input>
-			<output>2CDDD634C846BA66BB46CBFEA4A674F9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>CCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>BABBB8B98A89888F74757A7B92959497</input>
-			<output>D28BAE029393C3E7E26E9FAFBBB4B98F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2</key>
-			<input>8D8C8F8E6E6D6C633B3A3D3CCAD5D4D7</input>
-			<output>EC27529B1BEE0A9AB6A0D73EBC82E9B7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>86878485010203040808F7F767606162</input>
-			<output>3CB25C09472AFF6EE7E2B47CCD7CCB17</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A</key>
-			<input>8E8F8C8D656667788A8B8C8D010E0F0C</input>
-			<output>DEE33103A7283370D725E44CA38F8FE5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>C8C9CACB858687807A7B7475E7E0E1E2</input>
-			<output>27F9BCD1AAC64BFFC11E7815702C1A69</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F404142</key>
-			<input>6D6C6F6E5053525D8C8D8A8BADD2D3D0</input>
-			<output>5DF534FFAD4ED0749A9988E9849D0021</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>44454647494A4B4C4E4F505153545556</key>
-			<input>28292A2B393A3B3C0607181903040506</input>
-			<output>A48BEE75DB04FB60CA2B80F752A8421B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A</key>
-			<input>A5A4A7A6B0B3B28DDBDADDDCBDB2B3B0</input>
-			<output>024C8CF70BC86EE5CE03678CB7AF45F9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>323330316467666130313E3F2C2B2A29</input>
-			<output>3C19AC0F8A3A3862CE577831301E166B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F909192</key>
-			<input>27262524080B0A05171611100B141516</input>
-			<output>C5E355B796A57421D59CA6BE82E73BCA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>94959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>040506074142434435340B0AA3A4A5A6</input>
-			<output>D94033276417ABFB05A69D15B6E386E2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA</key>
-			<input>242526271112130C61606766BDB2B3B0</input>
-			<output>24B36559EA3A9B9B958FE6DA3E5B8D85</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>4B4A4948252627209E9F9091CEC9C8CB</input>
-			<output>20FD4FEAA0E8BF0CCE7861D74EF4CB72</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2</key>
-			<input>68696A6B6665646B9F9E9998D9E6E7E4</input>
-			<output>350E20D5174277B9EC314C501570A11D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>34353637C5C6C7C0F0F1EEEF7C7B7A79</input>
-			<output>87A29D61B7C604D238FE73045A7EFD57</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A</key>
-			<input>32333031C2C1C13F0D0C0B0A050A0B08</input>
-			<output>2C3164C1CC7D0064816BDC0FAA362C52</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>CDCCCFCEBEBDBCBBABAAA5A4181F1E1D</input>
-			<output>195FE5E8A05A2ED594F6E4400EEE10B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F303132</key>
-			<input>212023223635343BA0A1A6A7445B5A59</input>
-			<output>E4663DF19B9A21A5A284C2BD7F905025</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>34353637393A3B3C3E3F404143444546</key>
-			<input>0E0F0C0DA8ABAAAD2F2E515002050407</input>
-			<output>21B88714CFB4E2A933BD281A2C4743FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A</key>
-			<input>070605042A2928378E8F8889BDB2B3B0</input>
-			<output>CBFC3980D704FD0FC54378AB84E17870</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>CBCAC9C893909196A9A8A7A6A5A2A3A0</input>
-			<output>BC5144BAA48BDEB8B63E22E03DA418EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F808182</key>
-			<input>80818283C1C2C3CC9C9D9A9B0CF3F2F1</input>
-			<output>5A1DBAEF1EE2984B8395DA3BDFFA3CCC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>84858687898A8B8C8E8F909193949596</key>
-			<input>1213101125262720FAFBE4E5B1B6B7B4</input>
-			<output>F0B11CD0729DFCC80CEC903D97159574</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AA</key>
-			<input>7F7E7D7C3033320D97969190222D2C2F</input>
-			<output>9F95314ACFDDC6D1914B7F19A9CC8209</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>4E4F4C4D484B4A4D81808F8E53545556</input>
-			<output>595736F6F0F70914A94E9E007F022519</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2</key>
-			<input>DCDDDEDFB0B3B2BD15141312A1BEBFBC</input>
-			<output>1F19F57892CAE586FCDFB4C694DEB183</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>93929190282B2A2DC4C5FAFB92959497</input>
-			<output>540700EE1F6F3DAB0B3EDDF6CAEE1EF5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FA</key>
-			<input>F5F4F7F6C4C7C6D9373631307E717073</input>
-			<output>14A342A91019A331687A2254E6626CA2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>FCFDFEFF01020304060708090B0C0D0E</key>
-			<input>93929190B6B5B4B364656A6B05020300</input>
-			<output>7B25F3C3B2EEA18D743EF283140F29FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F202122</key>
-			<input>BABBB8B90D0E0F00A4A5A2A3043B3A39</input>
-			<output>46C2587D66E5E6FA7F7CA6411AD28047</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>24252627292A2B2C2E2F303133343536</key>
-			<input>D8D9DADB7F7C7D7A10110E0F787F7E7D</input>
-			<output>09470E72229D954ED5EE73886DFEEBA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A</key>
-			<input>FEFFFCFDEFECED923B3A3D3C6768696A</input>
-			<output>D77C03DE92D4D0D79EF8D4824EF365EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>D6D7D4D58A89888F96979899A5A2A3A0</input>
-			<output>1D190219F290E0F1715D152D41A23593</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F707172</key>
-			<input>18191A1BA8ABAAA5303136379B848586</input>
-			<output>A2CD332CE3A0818769616292E87F757B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>74757677797A7B7C7E7F808183848586</key>
-			<input>6B6A6968A4A7A6A1D6D72829B0B7B6B5</input>
-			<output>D54AFA6CE60FBF9341A3690E21385102</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A</key>
-			<input>000102038A89889755545352A6A9A8AB</input>
-			<output>06E5C364DED628A3F5E05E613E356F46</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>2D2C2F2EB3B0B1B6B6B7B8B9F2F5F4F7</input>
-			<output>EAE63C0E62556DAC85D221099896355A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2</key>
-			<input>979695943536373856575051E09F9E9D</input>
-			<output>1FED060E2C6FC93EE764403A889985A2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>A4A5A6A7989B9A9DB1B0AFAE7A7D7C7F</input>
-			<output>C25235C1A30FDEC1C7CB5C5737B2A588</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EA</key>
-			<input>C1C0C3C2686B6A55A8A9AEAFEAE5E4E7</input>
-			<output>796DBEF95147D4D30873AD8B7B92EFC0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>ECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>C1C0C3C2141716118C8D828364636261</input>
-			<output>CBCF0FB34D98D0BD5C22CE37211A46BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F101112</key>
-			<input>93929190CCCFCEC196979091E0FFFEFD</input>
-			<output>94B44DA6466126CAFA7C7FD09063FC24</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>14151617191A1B1C1E1F202123242526</key>
-			<input>B4B5B6B7F9FAFBFC25241B1A6E69686B</input>
-			<output>D78C5B5EBF9B4DBDA6AE506C5074C8FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A</key>
-			<input>868784850704051AC7C6C1C08788898A</input>
-			<output>6C27444C27204B043812CF8CF95F9769</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>F4F5F6F7AAA9A8AFFDFCF3F277707172</input>
-			<output>BE94524EE5A2AA50BBA8B75F4C0AEBCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F606162</key>
-			<input>D3D2D1D00605040BC3C2C5C43E010003</input>
-			<output>A0AEAAE91BA9F31F51AEB3588CF3A39E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>64656667696A6B6C6E6F707173747576</key>
-			<input>73727170424140476A6B74750D0A0B08</input>
-			<output>275297779C28266EF9FE4C6A13C08488</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A</key>
-			<input>C2C3C0C10A0908F754555253A1AEAFAC</input>
-			<output>86523D92BB8672CB01CF4A77FD725882</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>6D6C6F6EF8FBFAFD82838C8DF8FFFEFD</input>
-			<output>4B8327640E9F33322A04DD96FCBF9A36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2</key>
-			<input>F5F4F7F684878689A6A7A0A1D2CDCCCF</input>
-			<output>CE52AF650D088CA559425223F4D32694</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C</key>
-			<input>2D33EEF2C0430A8A9EBF45E809C40BB6</input>
-			<output>DFF4945E0336DF4C1C56BC700EFF837F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1E1F20212324252628292A2B2D2E2F30323334353738393A</key>
-			<input>6AA375D1FA155A61FB72353E0A5A8756</input>
-			<output>B6FDDEF4752765E347D5D2DC196D1252</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3C3D3E3F41424344464748494B4C4D4E5051525355565758</key>
-			<input>BC3736518B9490DCB8ED60EB26758ED4</input>
-			<output>D23684E3D963B3AFCF1A114ACA90CBD6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>AA214402B46CFFB9F761EC11263A311E</input>
-			<output>3A7AC027753E2A18C2CEAB9E17C11FD0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394</key>
-			<input>02AEA86E572EEAB66B2C3AF5E9A46FD6</input>
-			<output>8F6786BD007528BA26603C1601CDD0D8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>969798999B9C9D9EA0A1A2A3A5A6A7A8AAABACADAFB0B1B2</key>
-			<input>E2AEF6ACC33B965C4FA1F91C75FF6F36</input>
-			<output>D17D073B01E71502E28B47AB551168B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6C8C9CACBCDCECFD0</key>
-			<input>0659DF46427162B9434865DD9499F91D</input>
-			<output>A469DA517119FAB95876F41D06D40FFA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>49A44239C748FEB456F59C276A5658DF</input>
-			<output>6091AA3B695C11F5C0B6AD26D3D862FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C</key>
-			<input>66208F6E9D04525BDEDB2733B6A6BE37</input>
-			<output>70F9E67F9F8DF1294131662DC6E69364</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0E0F10111314151618191A1B1D1E1F20222324252728292A</key>
-			<input>3393F8DFC729C97F5480B950BC9666B0</input>
-			<output>D154DCAFAD8B207FA5CBC95E9996B559</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2C2D2E2F31323334363738393B3C3D3E4041424345464748</key>
-			<input>606834C8CE063F3234CF1145325DBD71</input>
-			<output>4934D541E8B46FA339C805A7AEB9E5DA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>FEC1C04F529BBD17D8CECFCC4718B17F</input>
-			<output>62564C738F3EFE186E1A127A0C4D3C61</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384</key>
-			<input>32DF99B431ED5DC5ACF8CAF6DC6CE475</input>
-			<output>07805AA043986EB23693E23BEF8F3438</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>868788898B8C8D8E90919293959697989A9B9C9D9FA0A1A2</key>
-			<input>7FDC2B746F3F665296943B83710D1F82</input>
-			<output>DF0B4931038BADE848DEE3B4B85AA44B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6B8B9BABBBDBEBFC0</key>
-			<input>8FBA1510A3C5B87E2EAA3F7A91455CA2</input>
-			<output>592D5FDED76582E4143C65099309477C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>2C9B468B1C2EED92578D41B0716B223B</input>
-			<output>C9B8D6545580D3DFBCDD09B954ED4E92</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFC</key>
-			<input>0A2BBF0EFC6BC0034F8A03433FCA1B1A</input>
-			<output>5DCCD5D6EB7C1B42ACB008201DF707A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>FEFE01010304050608090A0B0D0E0F10121314151718191A</key>
-			<input>25260E1F31F4104D387222E70632504B</input>
-			<output>A2A91682FFEB6ED1D34340946829E6F9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1C1D1E1F21222324262728292B2C2D2E3031323335363738</key>
-			<input>C527D25A49F08A5228D338642AE65137</input>
-			<output>E45D185B797000348D9267960A68435D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3A3B3C3D3F40414244454647494A4B4C4E4F505153545556</key>
-			<input>3B49FC081432F5890D0E3D87E884A69E</input>
-			<output>45E060DAE5901CDA8089E10D4F4C246B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A6C6D6E6F71727374</key>
-			<input>D173F9ED1E57597E166931DF2754A083</input>
-			<output>F6951AFACC0079A369C71FDCFF45DF50</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>767778797B7C7D7E80818283858687888A8B8C8D8F909192</key>
-			<input>8C2B7CAFA5AFE7F13562DAEAE1ADEDE0</input>
-			<output>9E95E00F351D5B3AC3D0E22E626DDAD6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>94959697999A9B9C9E9FA0A1A3A4A5A6A8A9AAABADAEAFB0</key>
-			<input>AAF4EC8C1A815AEB826CAB741339532C</input>
-			<output>9CB566FF26D92DAD083B51FDC18C173C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBEC</key>
-			<input>40BE8C5D9108E663F38F1A2395279ECF</input>
-			<output>C9C82766176A9B228EB9A974A010B4FB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2A2B2C2D2F30313234353637393A3B3C3E3F404143444546</key>
-			<input>0C8AD9BC32D43E04716753AA4CFBE351</input>
-			<output>D8E26AA02945881D5137F1C1E1386E88</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A5C5D5E5F61626364</key>
-			<input>1407B1D5F87D63357C8DC7EBBAEBBFEE</input>
-			<output>C0E024CCD68FF5FFA4D139C355A77C55</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>84858687898A8B8C8E8F90919394959698999A9B9D9E9FA0</key>
-			<input>E62734D1AE3378C4549E939E6F123416</input>
-			<output>0B18B3D16F491619DA338640DF391D43</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>5A752CFF2A176DB1A1DE77F2D2CDEE41</input>
-			<output>DBE09AC8F66027BF20CB6E434F252EFC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDC</key>
-			<input>A9C8C3A4EABEDC80C64730DDD018CD88</input>
-			<output>6D04E5E43C5B9CBE05FEB9606B6480FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1A1B1C1D1F20212224252627292A2B2C2E2F303133343536</key>
-			<input>EE9B3DBBDB86180072130834D305999A</input>
-			<output>DD1D6553B96BE526D9FEE0FBD7176866</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A4C4D4E4F51525354</key>
-			<input>A7FA8C3586B8EBDE7568EAD6F634A879</input>
-			<output>0260CA7E3F979FD015B0DD4690E16D2A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>37E0F4A87F127D45AC936FE7AD88C10A</input>
-			<output>9893734DE10EDCC8A67C3B110B8B8CC6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>464748494B4C4D4E50515253555657585A5B5C5D5F606162</key>
-			<input>3F77D8B5D92BAC148E4E46F697A535C5</input>
-			<output>93B30B750516B2D18808D710C2EE84EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>828384858788898A8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>D25EBB686C40F7E2C4DA1014936571CA</input>
-			<output>16F65FA47BE3CB5E6DFE7C6C37016C0E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBC</key>
-			<input>4F1C769D1E5B0552C7ECA84DEA26A549</input>
-			<output>F3847210D5391E2360608E5ACB560581</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>BEBFC0C1C3C4C5C6C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA</key>
-			<input>8548E2F882D7584D0FAFC54372B6633A</input>
-			<output>8754462CD223366D0753913E6AF2643D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEEF0F1F2F3F5F6F7F8</key>
-			<input>87D7A336CB476F177CD2A51AF2A62CDF</input>
-			<output>1EA20617468D1B806A1FD58145462017</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>FAFBFCFDFE01000204050607090A0B0C0E0F101113141516</key>
-			<input>03B1FEAC668C4E485C1065DFC22B44EE</input>
-			<output>3B155D927355D737C6BE9DDA60136E2E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A2C2D2E2F31323334</key>
-			<input>BDA15E66819FA72D653A6866AA287962</input>
-			<output>26144F7B66DAA91B6333DBD3850502B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>363738393B3C3D3E40414243454647484A4B4C4D4F505152</key>
-			<input>4D0C7A0D2505B80BF8B62CEB12467F0A</input>
-			<output>E4F9A4AB52CED8134C649BF319EBCC90</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>54555657595A5B5C5E5F60616364656668696A6B6D6E6F70</key>
-			<input>626D34C9429B37211330986466B94E5F</input>
-			<output>B9DDD29AC6128A6CAB121E34A4C62B36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>727374757778797A7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>333C3E6BF00656B088A17E5FF0E7F60A</input>
-			<output>6FCDDAD898F2CE4EFF51294F5EAAF5C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABAC</key>
-			<input>687ED0CDC0D2A2BC8C466D05EF9D2891</input>
-			<output>C9A6FE2BF4028080BEA6F7FC417BD7E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>AEAFB0B1B3B4B5B6B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CA</key>
-			<input>487830E78CC56C1693E64B2A6660C7B6</input>
-			<output>6A2026846D8609D60F298A9C0673127F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>CCCDCECFD1D2D3D4D6D7D8D9DBDCDDDEE0E1E2E3E5E6E7E8</key>
-			<input>7A48D6B7B52B29392AA2072A32B66160</input>
-			<output>2CB25C005E26EFEA44336C4C97A4240B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>907320E64C8C5314D10F8D7A11C8618D</input>
-			<output>496967AB8680DDD73D09A0E4C7DCC8AA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A1C1D1E1F21222324</key>
-			<input>B561F2CA2D6E65A4A98341F3ED9FF533</input>
-			<output>D5AF94DE93487D1F3A8C577CB84A66A4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>262728292B2C2D2E30313233353637383A3B3C3D3F404142</key>
-			<input>DF769380D212792D026F049E2E3E48EF</input>
-			<output>84BDAC569CAE2828705F267CC8376E90</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>44454647494A4B4C4E4F50515354555658595A5B5D5E5F60</key>
-			<input>79F374BC445BDABF8FCCB8843D6054C6</input>
-			<output>F7401DDA5AD5AB712B7EB5D10C6F99B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>626364656768696A6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>4E02F1242FA56B05C68DBAE8FE44C9D6</input>
-			<output>1C9D54318539EBD4C3B5B7E37BF119F0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 172</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F90919294959697999A9B9C</key>
-			<input>CF73C93CBFF57AC635A6F4AD2A4A1545</input>
-			<output>ACA572D65FB2764CFFD4A6ECA090EA0D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 173</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>9E9FA0A1A3A4A5A6A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA</key>
-			<input>9923548E2875750725B886566784C625</input>
-			<output>36D9C627B8C2A886A10CCB36EAE3DFBB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 174</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCED0D1D2D3D5D6D7D8</key>
-			<input>4888336B723A022C9545320F836A4207</input>
-			<output>010EDBF5981E143A81D646E597A4A568</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 175</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>F84D9A5561B0608B1160DEE000C41BA8</input>
-			<output>8DB44D538DC20CC2F40F3067FD298E60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 176</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314</key>
-			<input>C23192A0418E30A19B45AE3E3625BF22</input>
-			<output>930EB53BC71E6AC4B82972BDCD5AAFB3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 177</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>161718191B1C1D1E20212223252627282A2B2C2D2F303132</key>
-			<input>B84E0690B28B0025381AD82A15E501A7</input>
-			<output>6C42A81EDCBC9517CCD89C30C95597B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 178</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>34353637393A3B3C3E3F40414344454648494A4B4D4E4F50</key>
-			<input>ACEF5E5C108876C4F06269F865B8F0B0</input>
-			<output>DA389847AD06DF19D76EE119C71E1DD3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 179</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>525354555758595A5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>0F1B3603E0F5DDEA4548246153A5E064</input>
-			<output>E018FDAE13D3118F9A5D1A647A3F0462</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 180</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F80818284858687898A8B8C</key>
-			<input>FBB63893450D42B58C6D88CD3C1809E3</input>
-			<output>2AA65DB36264239D3846180FABDFAD20</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 181</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8E8F90919394959698999A9B9D9E9FA0A2A3A4A5A7A8A9AA</key>
-			<input>4BEF736DF150259DAE0C91354E8A5F92</input>
-			<output>1472163E9A4F780F1CEB44B07ECF4FDB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 182</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBEC0C1C2C3C5C6C7C8</key>
-			<input>7D2D46242056EF13D3C3FC93C128F4C7</input>
-			<output>C8273FDC8F3A9F72E91097614B62397C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 183</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>E9C1BA2DF415657A256EDB33934680FD</input>
-			<output>66C8427DCD733AAF7B3470CB7D976E3F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 184</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304</key>
-			<input>E23EE277B0AA0A1DFB81F7527C3514F1</input>
-			<output>146131CB17F1424D4F8DA91E6F80C1D0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 185</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>060708090B0C0D0E10111213151617181A1B1C1D1F202122</key>
-			<input>3E7445B0B63CAAF75E4A911E12106B4C</input>
-			<output>2610D0AD83659081AE085266A88770DC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 186</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>24252627292A2B2C2E2F30313334353638393A3B3D3E3F40</key>
-			<input>767774752023222544455A5BE6E1E0E3</input>
-			<output>38A2B5A974B0575C5D733917FB0D4570</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 187</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>424344454748494A4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>72737475717E7F7CE9E8EBEA696A6B6C</input>
-			<output>E21D401EBC60DE20D6C486E4F39A588B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 188</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F70717274757677797A7B7C</key>
-			<input>DFDEDDDC25262728C9C8CFCEF1EEEFEC</input>
-			<output>E51D5F88C670B079C0CA1F0C2C4405A2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 189</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>7E7F80818384858688898A8B8D8E8F90929394959798999A</key>
-			<input>FFFE0100707776755F5E5D5C7675746B</input>
-			<output>246A94788A642FB3D1B823C8762380C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 190</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>9C9D9E9FA1A2A3A4A6A7A8A9ABACADAEB0B1B2B3B5B6B7B8</key>
-			<input>E0E1E2E3424140479F9E9190292E2F2C</input>
-			<output>B80C391C5C41A4C3B30C68E0E3D7550F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 190</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>2120272690EFEEED3B3A39384E4D4C4B</input>
-			<output>B77C4754FC64EB9A1154A9AF0BB1F21C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 191</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4</key>
-			<input>ECEDEEEF5350516EA1A0A7A6A3ACADAE</input>
-			<output>FB554DE520D159A06BF219FC7F34A02F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 192</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F6F7F8F9FBFCFDFE00010203050607080A0B0C0D0F101112</key>
-			<input>32333C3D25222320E9E8EBEACECDCCC3</input>
-			<output>A89FBA152D76B4927BEED160DDB76C57</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 193</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>14151617191A1B1C1E1F20212324252628292A2B2D2E2F30</key>
-			<input>40414243626160678A8BB4B511161714</input>
-			<output>5676EAB4A98D2E8473B3F3D46424247C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 194</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>94959293F5FAFBF81F1E1D1C7C7F7E79</input>
-			<output>4E8F068BD7EDE52A639036EC86C33568</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 195</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C</key>
-			<input>BEBFBCBD191A1B14CFCEC9C8546B6A69</input>
-			<output>F0193C4D7AFF1791EE4C07EB4A1824FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 196</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>6E6F70717374757678797A7B7D7E7F80828384858788898A</key>
-			<input>2C2D3233898E8F8CBBBAB9B8333031CE</input>
-			<output>AC8686EECA9BA761AFE82D67B928C33F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 197</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8C8D8E8F91929394969798999B9C9D9EA0A1A2A3A5A6A7A8</key>
-			<input>84858687BFBCBDBA37363938FDFAFBF8</input>
-			<output>5FAF8573E33B145B6A369CD3606AB2C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 198</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>828384857669686B909192930B08090E</input>
-			<output>31587E9944AB1C16B844ECAD0DF2E7DA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 199</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4</key>
-			<input>BEBFBCBD9695948B707176779E919093</input>
-			<output>D017FECD91148ABA37F6F3068AA67D8A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 200</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E6E7E8E9EBECEDEEF0F1F2F3F5F6F7F8FAFBFCFDFE010002</key>
-			<input>8B8A85846067666521202322D0D3D2DD</input>
-			<output>788EF2F021A73CBA2794B616078A8500</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 201</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>04050607090A0B0C0E0F10111314151618191A1B1D1E1F20</key>
-			<input>76777475F1F2F3F4F8F9E6E777707172</input>
-			<output>5D1EF20DCED6BCBC12131AC7C54788AA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 202</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>222324252728292A2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>A4A5A2A34F404142B4B5B6B727242522</input>
-			<output>B3C8CF961FAF9EA05FDDE6D1E4D8F663</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 203</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F50515254555657595A5B5C</key>
-			<input>94959697E1E2E3EC16171011839C9D9E</input>
-			<output>143075C70605861C7FAC6526199E459F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 204</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5E5F60616364656668696A6B6D6E6F70727374757778797A</key>
-			<input>03023D3C06010003DEDFDCDDFFFCFDE2</input>
-			<output>A5AE12EADE9A87268D898BFC8FC0252A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 205</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>7C7D7E7F81828384868788898B8C8D8E9091929395969798</key>
-			<input>10111213F1F2F3F4CECFC0C1DBDCDDDE</input>
-			<output>0924F7CF2E877A4819F5244A360DCEA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 206</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>9A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>67666160724D4C4F1D1C1F1E73707176</input>
-			<output>3D9E9635AFCC3E291CC7AB3F27D1C99A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 207</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4</key>
-			<input>E6E7E4E5A8ABAAD584858283909F9E9D</input>
-			<output>9D80FEEBF87510E2B8FB98BB54FD788C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 208</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D6D7D8D9DBDCDDDEE0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2</key>
-			<input>71707F7E565150537D7C7F7E6162636C</input>
-			<output>5F9D1A082A1A37985F174002ECA01309</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 209</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F4F5F6F7F9FAFBFCFEFE01010304050608090A0B0D0E0F10</key>
-			<input>64656667212223245555AAAA03040506</input>
-			<output>A390EBB1D1403930184A44B4876646E4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 210</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>121314151718191A1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>9E9F9899ABA4A5A6CFCECDCC2B28292E</input>
-			<output>700FE918981C3195BB6C4BCB46B74E29</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 211</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F40414244454647494A4B4C</key>
-			<input>C7C6C5C4D1D2D3DC626364653A454447</input>
-			<output>907984406F7BF2D17FB1EB15B673D747</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 212</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4E4F50515354555658595A5B5D5E5F60626364656768696A</key>
-			<input>F6F7E8E9E0E7E6E51D1C1F1E5B585966</input>
-			<output>C32A956DCFC875C2AC7C7CC8B8CC26E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 213</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>6C6D6E6F71727374767778797B7C7D7E8081828385868788</key>
-			<input>BCBDBEBF5D5E5F5868696667F4F3F2F1</input>
-			<output>02646E2EBFA9B820CF8424E9B9B6EB51</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 214</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>40414647B0AFAEAD9B9A99989B98999E</input>
-			<output>621FDA3A5BBD54C6D3C685816BD4EAD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 215</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4</key>
-			<input>69686B6A0201001F0F0E0908B4BBBAB9</input>
-			<output>D4E216040426DFAF18B152469BC5AC2F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 216</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C6C7C8C9CBCCCDCED0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2</key>
-			<input>C7C6C9C8D8DFDEDD5A5B5859BEBDBCB3</input>
-			<output>9D0635B9D33B6CDBD71F5D246EA17CC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 217</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6F8F9FAFBFDFEFE00</key>
-			<input>DEDFDCDD787B7A7DFFFEE1E0B2B5B4B7</input>
-			<output>10ABAD1BD9BAE5448808765583A2CC1A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 218</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>020304050708090A0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>4D4C4B4A606F6E6DD0D1D2D3FBF8F9FE</input>
-			<output>6891889E16544E355FF65A793C39C9A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 219</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F30313234353637393A3B3C</key>
-			<input>B7B6B5B4D7D4D5DAE5E4E3E2E1FEFFFC</input>
-			<output>CC735582E68072C163CD9DDF46B91279</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 220</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3E3F40414344454648494A4B4D4E4F50525354555758595A</key>
-			<input>CECFB0B1F7F0F1F2AEAFACAD3E3D3C23</input>
-			<output>C5C68B9AEEB7F878DF578EFA562F9574</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 221</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5C5D5E5F61626364666768696B6C6D6E7071727375767778</key>
-			<input>CACBC8C9CDCECFC812131C1D494E4F4C</input>
-			<output>5F4764395A667A47D73452955D0D2CE8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 222</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>7A7B7C7D7F80818284858687898A8B8C8E8F909193949596</key>
-			<input>9D9C9B9AD22D2C2FB1B0B3B20C0F0E09</input>
-			<output>701448331F66106CEFDDF1EB8267C357</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 223</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4</key>
-			<input>7A7B787964676659959493924F404142</input>
-			<output>CB3EE56D2E14B4E1941666F13379D657</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 224</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B6B7B8B9BBBCBDBEC0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2</key>
-			<input>AAABA4A5CEC9C8CB1F1E1D1CABA8A9A6</input>
-			<output>9FE16EFD18AB6E1981191851FEDB0764</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 225</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6E8E9EAEBEDEEEFF0</key>
-			<input>93929190282B2A2DC4C5FAFB92959497</input>
-			<output>3DC9BA24E1B223589B147ADCEB4C8E48</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 226</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E</key>
-			<input>EFEEE9E8DED1D0D339383B3A888B8A8D</input>
-			<output>1C333032682E7D4DE5E5AFC05C3E483C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 227</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F20212224252627292A2B2C</key>
-			<input>7F7E7D7CA2A1A0AF78797E7F112E2F2C</input>
-			<output>D593CC99A95AFEF7E92038E05A59D00A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 228</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2E2F30313334353638393A3B3D3E3F40424344454748494A</key>
-			<input>84859A9B2B2C2D2E868784852625245B</input>
-			<output>51E7F96F53B4353923452C222134E1EC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 229</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4C4D4E4F51525354565758595B5C5D5E6061626365666768</key>
-			<input>B0B1B2B3070405026869666710171615</input>
-			<output>4075B357A1A2B473400C3B25F32F81A4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 230</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>6A6B6C6D6F70717274757677797A7B7C7E7F808183848586</key>
-			<input>ACADAAABBDA2A3A00D0C0F0E595A5B5C</input>
-			<output>302E341A3EBCD74F0D55F61714570284</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 231</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4</key>
-			<input>121310115655544B5253545569666764</input>
-			<output>57ABDD8231280DA01C5042B78CF76522</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 232</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A6A7A8A9ABACADAEB0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2</key>
-			<input>DEDFD0D166616063EAEBE8E94142434C</input>
-			<output>17F9EA7EEA17AC1ADF0E190FEF799E92</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 233</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6D8D9DADBDDDEDFE0</key>
-			<input>DBDAD9D81417161166677879E0E7E6E5</input>
-			<output>2E1BDD563DD87EE5C338DD6D098D0A7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 234</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>6A6B6C6DE0EFEEED2B2A2928C0C3C2C5</input>
-			<output>EB869996E6F8BFB2BFDD9E0C4504DBB2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 235</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C</key>
-			<input>B1B0B3B21714151A1A1B1C1D5649484B</input>
-			<output>C2E01549E9DECF317468B3E018C61BA8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 236</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1E1F20212324252628292A2B2D2E2F30323334353738393A</key>
-			<input>39380706A3A4A5A6C4C5C6C77271706F</input>
-			<output>8DA875D033C01DD463B244A1770F4A22</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 237</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>3C3D3E3F41424344464748494B4C4D4E5051525355565758</key>
-			<input>5C5D5E5F1013121539383736E2E5E4E7</input>
-			<output>8BA0DCF3A186844F026D022F8839D696</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 238</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>5A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>43424544EAD5D4D72E2F2C2D64676661</input>
-			<output>E9691FF9A6CC6970E51670A0FD5B88C1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 239</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394</key>
-			<input>55545756989B9A65F8F9FEFF18171615</input>
-			<output>F2BAEC06FAEED30F88EE63BA081A6E5B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 240</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>969798999B9C9D9EA0A1A2A3A5A6A7A8AAABACADAFB0B1B2</key>
-			<input>05040B0A525554573C3D3E3F4A494847</input>
-			<output>9C39D4C459AE5753394D6094ADC21E78</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 241</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6C8C9CACBCDCECFD0</key>
-			<input>14151617595A5B5C8584FBFA8E89888B</input>
-			<output>6345B532A11904502EA43BA99C6BD2B2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 242</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>7C7D7A7BFDF2F3F029282B2A51525354</input>
-			<output>5FFAE3061A95172E4070CEDCE1E428C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 243</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C</key>
-			<input>38393A3B1E1D1C1341404746C23D3C3E</input>
-			<output>0A4566BE4CDF9ADCE5DEC865B5AB34CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 244</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0E0F10111314151618191A1B1D1E1F20222324252728292A</key>
-			<input>8D8C939240474645818083827C7F7E41</input>
-			<output>CA17FCCE79B7404F2559B22928F126FB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 245</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2C2D2E2F31323334363738393B3C3D3E4041424345464748</key>
-			<input>3B3A39381A19181F32333C3D45424340</input>
-			<output>97CA39B849ED73A6470A97C821D82F58</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 246</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>F0F1F6F738272625828380817F7C7D7A</input>
-			<output>8198CB06BC684C6D3E9B7989428DCF7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 247</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384</key>
-			<input>89888B8A0407061966676061141B1A19</input>
-			<output>F53C464C705EE0F28D9A4C59374928BD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 248</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>868788898B8C8D8E90919293959697989A9B9C9D9FA0A1A2</key>
-			<input>D3D2DDDCAAADACAF9C9D9E9FE8EBEAE5</input>
-			<output>9ADB3D4CCA559BB98C3E2ED73DBF1154</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 249</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526</key>
-			<input>834EADFCCAC7E1B30664B1ABA44815AB</input>
-			<output>1946DABF6A03A2A2C3D0B05080AED6FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 250</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>D9DC4DBA3021B05D67C0518F72B62BF1</input>
-			<output>5ED301D747D3CC715445EBDEC62F2FB4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>A291D86301A4A739F7392173AA3C604C</input>
-			<output>6585C8F43D13A6BEAB6419FC5935B9D0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>4264B2696498DE4DF79788A9F83E9390</input>
-			<output>2A5B56A596680FCC0E05F5E0F151ECAE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>EE9932B3721804D5A83EF5949245B6F6</input>
-			<output>F5D6FF414FD2C6181494D20C37F2B8C4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>E6248F55C5FDCBCA9CBBB01C88A2EA77</input>
-			<output>85399C01F59FFFB5204F19F8482F00B8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516</key>
-			<input>B8358E41B9DFF65FD461D55A99266247</input>
-			<output>92097B4C88A041DDF98144BC8D22E8E7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>F0E2D72260AF58E21E015AB3A4C0D906</input>
-			<output>89BD5B73B356AB412AEF9F76CEA2D65C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>475B8B823CE8893DB3C44A9F2A379FF7</input>
-			<output>2536969093C55FF9454692F2FAC2F530</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>688F5281945812862F5F3076CF80412F</input>
-			<output>07FC76A872843F3F6E0081EE9396D637</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>08D1D2BC750AF553365D35E75AFACEAA</input>
-			<output>E38BA8EC2AA741358DCC93E8F141C491</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>8707121F47CC3EFCECA5F9A8474950A1</input>
-			<output>D028EE23E4A89075D0B03E868D7D3A42</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>E51AA0B135DBA566939C3B6359A980C5</input>
-			<output>8CD9423DFC459E547155C5D1D522E540</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>069A007FC76A459F98BAF917FEDF9521</input>
-			<output>080E9517EB1677719ACF728086040AE3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556</key>
-			<input>726165C1723FBCF6C026D7D00B091027</input>
-			<output>7C1700211A3991FC0ECDED0AB3E576B0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>D7C544DE91D55CFCDE1F84CA382200CE</input>
-			<output>DABCBCC855839251DB51E224FBE87435</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>FED3C9A161B9B5B2BD611B41DC9DA357</input>
-			<output>68D56FAD0406947A4DD27A7448C10F1D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>4F634CDC6551043409F30B635832CF82</input>
-			<output>DA9A11479844D1FFEE24BBF3719A9925</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>109CE98DB0DFB36734D9F3394711B4E6</input>
-			<output>5E4BA572F8D23E738DA9B05BA24B8D81</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596</key>
-			<input>4EA6DFABA2D8A02FFDFFA89835987242</input>
-			<output>A115A2065D667E3F0B883837A6E903F8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>5AE094F54AF58E6E3CDBF976DAC6D9EF</input>
-			<output>3E9E90DC33EAC2437D86AD30B137E66E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>764D8E8E0F29926DBE5122E66354FDBE</input>
-			<output>01CE82D8FBCDAE824CB3C48E495C3692</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E</key>
-			<input>3F0418F888CDF29A982BF6B75410D6A9</input>
-			<output>0C9CFF163CE936FAAF083CFD3DEA3117</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536</key>
-			<input>E4A3E7CB12CDD56AA4A75197A9530220</input>
-			<output>5131BA9BD48F2BBA85560680DF504B52</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>211677684AAC1EC1A160F44C4EBF3F26</input>
-			<output>9DC503BBF09823AEC8A977A5AD26CCB2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586</key>
-			<input>D21E439FF749AC8F18D6D4B105E03895</input>
-			<output>9A6DB0C0862E506A9E397225884041D7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>D9F6FF44646C4725BD4C0103FF5552A7</input>
-			<output>430BF9570804185E1AB6365FC6A6860C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>0B1256C2A00B976250CFC5B0C37ED382</input>
-			<output>3525EBC02F4886E6A5A3762813E8CE8A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>B056447FFC6DC4523A36CC2E972A3A79</input>
-			<output>07FA265C763779CCE224C7BAD671027B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526</key>
-			<input>5E25CA78F0DE55802524D38DA3FE4456</input>
-			<output>E8B72B4E8BE243438C9FFF1F0E205872</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>A5BCF4728FA5EAAD8567C0DC24675F83</input>
-			<output>109D4F999A0E11ACE1F05E6B22CBCB50</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>814E59F97ED84646B78B2CA022E9CA43</input>
-			<output>45A5E8D4C3ED58403FF08D68A0CC4029</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>15478BEEC58F4775C7A7F5D4395514D7</input>
-			<output>196865964DB3D417B6BD4D586BCB7634</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>253548FFCA461C67C8CBC78CD59F4756</input>
-			<output>60436AD45AC7D30D99195F815D98D2AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>FD7AD8D73B9B0F8CC41600640F503D65</input>
-			<output>BB07A23F0B61014B197620C185E2CD75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516</key>
-			<input>06199DE52C6CBF8AF954CD65830BCD56</input>
-			<output>5BC0B2850129C854423AFF0751FE343B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>F17C4FFE48E44C61BD891E257E725794</input>
-			<output>7541A78F96738E6417D2A24BD2BECA40</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>9A5B4A402A3E8A59BE6BF5CD8154F029</input>
-			<output>B0A303054412882E464591F1546C5B9E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>79BD40B91A7E07DC939D441782AE6B17</input>
-			<output>778C06D8A355EEEE214FCEA14B4E0EEF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>D8CEAAF8976E5FBE1012D8C84F323799</input>
-			<output>09614206D15CBACE63227D06DB6BEEBB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>3316E2751E2E388B083DA23DD6AC3FBE</input>
-			<output>41B97FB20E427A9FDBBB358D9262255D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>8B7CFBE37DE7DCA793521819242C5816</input>
-			<output>C1940F703D845F957652C2D64ABD7ADF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>F23F033C0EEBF8EC55752662FD58CE68</input>
-			<output>D2D44FCDAE5332343366DB297EFCF21B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556</key>
-			<input>59EB34F6C8BDBACC5FC6AD73A59A1301</input>
-			<output>EA8196B79DBE167B6AA9896E287EED2B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>DCDE8B6BD5CF7CC22D9505E3CE81261A</input>
-			<output>D6B0B0C4BA6C7DBE5ED467A1E3F06C2D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>E33CF7E524FED781E7042FF9F4B35DC7</input>
-			<output>EC51EB295250C22C2FB01816FB72BCAE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>27963C8FACDF73062867D164DF6D064C</input>
-			<output>ADED6630A07CE9C7408A155D3BD0D36F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>77B1CE386B551B995F2F2A1DA994EEF8</input>
-			<output>697C9245B9937F32F5D1C82319F0363A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>F083388B013679EFCF0BB9B15D52AE5C</input>
-			<output>AAD5AD50C6262AAEC30541A1B7B5B19C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546</key>
-			<input>C5009E0DAB55DB0ABDB636F2600290C8</input>
-			<output>7D34B893855341EC625BD6875AC18C0D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>7804881E26CD532D8514D3683F00F1B9</input>
-			<output>7EF05105440F83862F5D780E88F02B41</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596</key>
-			<input>46CDDCD73D1EB53E675CA012870A92A3</input>
-			<output>C377C06403382061AF2C9C93A8E70DF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>A9FB44062BB07FE130A8E8299EACB1AB</input>
-			<output>1DBDB3FFDC052DACC83318853ABC6DE5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>2B6FF8D7A5CC3A28A22D5A6F221AF26B</input>
-			<output>69A6EAB00432517D0BF483C91C0963C7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E</key>
-			<input>1A9527C29B8ADD4B0E3E656DBB2AF8B4</input>
-			<output>0797F41DC217C80446E1D514BD6AB197</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536</key>
-			<input>7F99CF2C75244DF015EB4B0C1050AEAE</input>
-			<output>9DFD76575902A637C01343C58E011A03</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>E84FF85B0D9454071909C1381646C4ED</input>
-			<output>ACF4328AE78F34B9FA9B459747CC2658</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586</key>
-			<input>89AFD40F99521280D5399B12404F6DB4</input>
-			<output>B0479AEA12BAC4FE2384CF98995150C6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>A09EF32DBC5119A35AB7FA38656F0329</input>
-			<output>9DD52789EFE3FFB99F33B3DA5030109A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>61773457F068C376C7829B93E696E716</input>
-			<output>ABBB755E4621EF8F1214C19F649FB9FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>A34F0CAE726CCE41DD498747D891B967</input>
-			<output>DA27FB8174357BCE2BED0E7354F380F9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526</key>
-			<input>856F59496C7388EE2D2B1A27B7697847</input>
-			<output>C59A0663F0993838F6E5856593BDC5EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>CB090C593EF7720BD95908FB93B49DF4</input>
-			<output>ED60B264B5213E831607A99C0CE5E57E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>A0AC75CD2F1923D460FC4D457AD95BAF</input>
-			<output>E50548746846F3EB77B8C520640884ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>2A2B282974777689E8E9EEEF525D5C5F</input>
-			<output>28282CC7D21D6A2923641E52D188EF0C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>909192939390919E0F0E09089788898A</input>
-			<output>0DFA5B02ABB18E5A815305216D6D4F8E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>777675748D8E8F907170777649464744</input>
-			<output>7359635C0EECEFE31D673395FB46FB99</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516</key>
-			<input>717073720605040B2D2C2B2A05FAFBF9</input>
-			<output>73C679F7D5AEF2745C9737BB4C47FB36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>64656667FEFDFCC31B1A1D1CA5AAABA8</input>
-			<output>B192BD472A4D2EAFB786E97458967626</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>DBDAD9D86A696867B5B4B3B2C8D7D6D5</input>
-			<output>0EC327F6C8A2B147598CA3FDE61DC6A4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>5C5D5E5FE3E0E1FE31303736333C3D3E</input>
-			<output>FC418EB3C41B859B38D4B6F646629729</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>545556574B48494673727574546B6A69</input>
-			<output>30249E5AC282B1C981EA64B609F3A154</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>ECEDEEEFC6C5C4BB56575051F5FAFBF8</input>
-			<output>5E6E08646D12150776BB43C2D78A9703</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>464744452724252AC9C8CFCED2CDCCCF</input>
-			<output>FAEB3D5DE652CD3447DCEB343F30394A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>E6E7E4E54142435C878681801C131211</input>
-			<output>A8E88706823F6993EF80D05C1C7B2CF0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556</key>
-			<input>72737071CFCCCDC2F9F8FFFE710E0F0C</input>
-			<output>8CED86677E6E00A1A1B15968F2D3CCE6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>505152537370714EC3C2C5C4010E0F0C</input>
-			<output>9FC7C23858BE03BDEBB84E90DB6786A9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>A8A9AAAB5C5F5E51AEAFA8A93D222320</input>
-			<output>B4FBD65B33F70D8CF7F1111AC4649C36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>DEDFDCDDF6F5F4EB10111617FEF1F0F3</input>
-			<output>C5C32D5ED03C4B53CC8C1BD0EF0DBBF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>BDBCBFBE5E5D5C530B0A0D0CFAC5C4C7</input>
-			<output>D1A7F03B773E5C212464B63709C6A891</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>8A8B8889050606F8F4F5F2F3636C6D6E</input>
-			<output>6B7161D8745947AC6950438EA138D028</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546</key>
-			<input>A6A7A4A54D4E4F40B2B3B4B539262724</input>
-			<output>FD47A9F7E366EE7A09BC508B00460661</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>9C9D9E9FE9EAEBF40E0F08099B949596</input>
-			<output>00D40B003DC3A0D9310B659B98C7E416</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596</key>
-			<input>2D2C2F2E1013121DCCCDCACBED121310</input>
-			<output>EEA4C79DCC8E2BDA691F20AC48BE0717</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>F4F5F6F7EDEEEFD0EAEBECEDF7F8F9FA</input>
-			<output>E78F43B11C204403E5751F89D05A2509</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>3D3C3F3E282B2A2573727574150A0B08</input>
-			<output>D0F0E3D1F1244BB979931E38DD1786EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E</key>
-			<input>B6B7B4B5F8FBFAE5B4B5B2B3A0AFAEAD</input>
-			<output>042E639DC4E1E4DDE7B75B749EA6F765</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536</key>
-			<input>B7B6B5B4989B9A95878681809BA4A5A6</input>
-			<output>BC032FDD0EFE29503A980A7D07AB46A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>A8A9AAABE5E6E798E9E8EFEE4748494A</input>
-			<output>0C93AC949C0DA6446EFFB86183B6C910</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586</key>
-			<input>ECEDEEEFD9DADBD4B9B8BFBE657A7B78</input>
-			<output>E0D343E14DA75C917B4A5CEC4810D7C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>7F7E7D7C696A6B74CACBCCCD929D9C9F</input>
-			<output>0EAFB821748408279B937B626792E619</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>08090A0B0605040BFFFEF9F8B9C6C7C4</input>
-			<output>FA1AC6E02D23B106A1FEF18B274A553F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>08090A0BF1F2F3CCFCFDFAFB68676665</input>
-			<output>0DADFE019CD12368075507DF33C1A1E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526</key>
-			<input>CACBC8C93A393837050403020D121310</input>
-			<output>3A0879B414465D9FFBAF86B33A63A1B9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>E9E8EBEA8281809F8F8E8988343B3A39</input>
-			<output>62199FADC76D0BE1805D3BA0B7D914BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>515053524645444BD0D1D6D7340B0A09</input>
-			<output>1B06D6C5D333E742730130CF78E719B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E</key>
-			<input>42434041ECEFEE1193929594C6C9C8CB</input>
-			<output>F1F848824C32E9DCDCBF21580F069329</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6</key>
-			<input>EFEEEDECC2C1C0CF76777071455A5B58</input>
-			<output>1A09050CBD684F784D8E965E0782F28A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE</key>
-			<input>5F5E5D5C3F3C3D221D1C1B1A19161714</input>
-			<output>79C2969E7DED2BA7D088F3F320692360</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516</key>
-			<input>000102034142434C1C1D1A1B8D727371</input>
-			<output>091A658A2F7444C16ACCB669450C7B63</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E</key>
-			<input>8E8F8C8DB1B2B38C56575051050A0B08</input>
-			<output>97C1E3A72CCA65FA977D5ED0E8A7BBFC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566</key>
-			<input>A7A6A5A4E8EBEAE57F7E7978CAD5D4D7</input>
-			<output>70C430C6DB9A17828937305A2DF91A2A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E</key>
-			<input>8A8B888994979689454443429F909192</input>
-			<output>629553457FBE2479098571C7C903FDE8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6</key>
-			<input>8C8D8E8FE0E3E2ED45444342F1CECFCC</input>
-			<output>A25B25A61F612669E7D91265C7D476BA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE</key>
-			<input>FFFEFDFC4C4F4E31D8D9DEDFB6B9B8BB</input>
-			<output>EB7E4E49B8AE0F024570DDA293254FED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506</key>
-			<input>FDFCFFFECCCFCEC12F2E29286679787B</input>
-			<output>38FE15D61CCA84516E924ADCE5014F67</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E</key>
-			<input>67666564BAB9B8A77071767719161714</input>
-			<output>3AD208492249108C9F3EBEB167AD0583</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556</key>
-			<input>9A9B98992D2E2F2084858283245B5A59</input>
-			<output>299BA9F9BF5AB05C3580FC26EDD1ED12</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E</key>
-			<input>A4A5A6A70B0809365C5D5A5B2C232221</input>
-			<output>19DC705B857A60FB07717B2EA5717781</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6</key>
-			<input>464744455754555AF3F2F5F4AFB0B1B2</input>
-			<output>FFC8AEB885B5EFCAD06B6DBEBF92E76B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE</key>
-			<input>323330317675746B7273747549464744</input>
-			<output>F58900C5E0B385253FF2546250A0142B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6</key>
-			<input>A8A9AAAB181B1A15808186872B141516</input>
-			<output>2EE67B56280BC462429CEE6E3370CBC1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E</key>
-			<input>E7E6E5E4202323DDAAABACAD343B3A39</input>
-			<output>20DB650A9C8E9A84AB4D25F7EDC8F03F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546</key>
-			<input>A8A9AAAB2221202FEDECEBEA1E010003</input>
-			<output>3C36DA169525CF818843805F25B78AE5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E</key>
-			<input>F9F8FBFA5F5C5D42424344450E010003</input>
-			<output>9A781D960DB9E45E37779042FEA51922</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596</key>
-			<input>57565554F5F6F7F89697909120DFDEDD</input>
-			<output>6560395EC269C672A3C288226EFDBA77</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE</key>
-			<input>F8F9FAFBCCCFCEF1DDDCDBDA0E010003</input>
-			<output>8C772B7A189AC544453D5916EBB27B9A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6</key>
-			<input>D9D8DBDA7073727D80818687C2DDDCDF</input>
-			<output>77CA5468CC48E843D05F78EED9D6578F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E</key>
-			<input>C5C4C7C6080B0A1588898E8F68676665</input>
-			<output>72CDCC71DC82C60D4429C9E2D8195BAA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536</key>
-			<input>83828180DCDFDED186878081F0CFCECD</input>
-			<output>8080D68CE60E94B40B5B8B69EEB35AFA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E</key>
-			<input>98999A9BDDDEDFA079787F7E0A050407</input>
-			<output>44222D3CDE299C04369D58AC0EBA1E8E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586</key>
-			<input>CECFCCCD4F4C4D429F9E9998DFC0C1C2</input>
-			<output>9B8721B0A8DFC691C5BC5885DBFCB27A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE</key>
-			<input>404142436665647B29282F2EABA4A5A6</input>
-			<output>0DC015CE9A3A3414B5E62EC643384183</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6</key>
-			<input>33323130E6E5E4EB23222524DEA1A0A3</input>
-			<output>705715448A8DA412025CE38345C2A148</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE</key>
-			<input>CFCECDCCF6F5F4CBE6E7E0E199969794</input>
-			<output>C32B5B0B6FBAE165266C569F4B6ECF0B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526</key>
-			<input>BABBB8B97271707FDCDDDADB29363734</input>
-			<output>4DCA6C75192A01DDCA9476AF2A521E87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E</key>
-			<input>C9C8CBCA4447465926272021545B5A59</input>
-			<output>058691E627ECBC36AC07B6DB423BD698</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test </actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576</key>
-			<input>050407067477767956575051221D1C1F</input>
-			<output>7444527095838FE080FC2BCDD30847EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESECB_KAT_VK.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9216 +0,0 @@
-<action>
-	<actionname>AES ECB KAT VK 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0EDD33D3C621E546455BD8BA1418BEC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>40000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C0CC0C5DA5BD63ACD44A80774FAD5222</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>20000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2F0B4B71BC77851B9CA56D42EB8FF080</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>10000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6B1E2FFFE8A114009D8FE22F6DB5F876</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>08000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9AA042C315F94CBB97B62202F83358F5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>04000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DBE01DE67E346A800C4C4B4880311DE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>02000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C117D2238D53836ACD92DDCDB85D6A21</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>01000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DC0ED85DF9611ABB7249CDD168C5467E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00800000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>807D678FFF1F56FA92DE3381904842F2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00400000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0E53B3FCAD8E4B130EF73AEB957FB402</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00200000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>969FFD3B7C35439417E7BDE923035D65</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00100000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A99B512C19CA56070491166A1503BF15</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00080000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6E9985252126EE344D26AE369D2327E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00040000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B85F4809F904C275491FCDCD1610387E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00020000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ED365B8D7D20C1F5D53FB94DD211DF7B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B3A575E86A8DB4A7135D604C43304896</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00008000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>89704BCB8E69F846259EB0ACCBC7F8A2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00004000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C56EE7C92197861F10D7A92B90882055</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00002000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>92F296F6846E0EAF9422A5A24A08B069</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00001000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E67E32BB8F11DEB8699318BEE9E91A60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000800000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B08EEF85EAF626DD91B65C4C3A97D92B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000400000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>661083A6ADDCE79BB4E0859AB5538013</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000200000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>55DFE2941E0EB10AFC0B333BD34DE1FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000100000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6BFE5945E715C9662609770F8846087A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000080000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>79848E9C30C2F8CDA8B325F7FED2B139</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000040000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7A713A53B99FEF34AC04DEEF80965BD0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000020000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>18144A2B46620D32C3C32CE52D49257F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000010000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>872E827C70887C80749F7B8BB1847C7E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000008000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6B86C6A4FE6A60C59B1A3102F8DE49F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000004000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9848BB3DFDF6F532F094679A4C231A20</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000002000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>925AD528E852E329B2091CD3F1C2BCEE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000001000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>80DF436544B0DD596722E46792A40CD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000800000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>525DAF18F93E83E1E74BBBDDE4263BBA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000400000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F65C9D2EE485D24701FFA3313B9D5BE6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000200000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E4FC8D8BCA06425BDF94AFA40FCC14BA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000100000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A53F0A5CA1E4E6440BB975FF320DE6F8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000080000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D55313B9394080462E87E02899B553F0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000040000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>34A71D761F71BCD344384C7F97D27906</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000020000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>233F3D819599612EBC89580245C996A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000010000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B4F1374E5268DBCB676E447529E53F89</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000008000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0816BD27861D2BA891D1044E39951E96</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000004000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F3BE9EA3F10C73CA64FDE5DB13A951D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000002000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2448086A8106FBD03048DDF857D3F1C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000001000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>670756E65BEC8B68F03D77CDCDCE7B91</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000800000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EF968CF0D36FD6C6EFFD225F6FB44CA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000400000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2E8767157922E3826DDCEC1B0CC1E105</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000200000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>78CE7EEC670E45A967BAB17E26A1AD36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000100000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3C5CEE825655F098F6E81A2F417DA3FB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000080000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>67BFDB431DCE1292200BC6F5207ADB12</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000040000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7540FD38E447C0779228548747843A6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000020000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B85E513301F8A936EA9EC8A21A85B5E6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000010000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>04C67DBF16C11427D507A455DE2C9BC5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000008000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>03F75EB8959E55079CFFB4FF149A37B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000004000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>74550287F666C63BB9BC7838433434B0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000002000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7D537200195EBC3AEFD1EAAB1C385221</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000001000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>CE24E4D40C68A82B535CBD3C8E21652A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000800000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AB20072405AA8FC40265C6F1F3DC8BC0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000400000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6CFD2CF688F566B093F67B9B3839E80A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000200000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BD95977E6B7239D407A012C5544BF584</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000100000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DF9C0130AC77E7C72C997F587B46DBE0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000080000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E7F1B82CADC53A648798945B34EFEFF2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000040000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>932C6DBF69255CF13EDCDB72233ACEA3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000020000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5C76002BC7206560EFE550C80B8F12CC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000010000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F6B7BDD1CAEEBAB574683893C4475484</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000008000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A920E37CC6DC6B31DA8C0169569F5034</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000004000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>919380ECD9C778BC513148B0C28D65FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000002000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EE67308DD3F2D9E6C2170755E5784BE1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000001000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3CC73E53B85609023A05E149B223AE09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000800000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>983E8AF7CF05EBB28D71EB841C9406E6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000400000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0F3099B2D31FA5299EE5BF43193287FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000200000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B763D84F38C27FE6931DCEB6715D4DB6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000100000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5AE3C9B0E3CC29C0C61565CD01F8A248</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000080000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F58083572CD90981958565D48D2DEE25</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000040000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7E6255EEF8F70C0EF10337AAB1CCCEF8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000020000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AAD4BAC34DB22821841CE2F631961902</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000010000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D7431C0409BB1441BA9C6858DC7D4E81</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000008000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EF9298C65E339F6E801A59C626456993</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000004000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>53FE29F68FF541ABC3F0EF3350B72F7E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000002000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F6BBA5C10DB02529E2C2DA3FB582CC14</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000001000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E4239AA37FC531A386DAD1126FC0E9CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000800000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8F7758F857D15BBE7BFD0E416404C365</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000400000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D273EB57C687BCD1B4EA7218A509E7B8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000200000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>65D64F8D76E8B3423FA25C4EB58A210A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000100000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>623D802B4EC450D66A16625702FCDBE0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000080000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7496460CB28E5791BAEAF9B68FB00022</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000040000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>34EA600F18BB0694B41681A49D510C1D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000020000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5F8FF0D47D5766D29B5D6E8F46423BD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000010000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>225F9286C5928BF09F84D3F93F541959</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000008000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B21E90D25DF383416A5F072CEBEB1FFB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000004000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4AEFCDA089318125453EB9E8EB5E492E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000002000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4D3E75C6CD40EC4869BC85158591ADB8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000001000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>63A8B904405436A1B99D7751866771B7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000800000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>64F0DAAE47529199792EAE172BA53293</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000400000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C3EEF84BEA18225D515A8C852A9047EE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000200000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A44AC422B47D47B81AF73B3E9AC9596E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000100000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D16E04A8FBC435094F8D53ADF25F5084</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000080000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EF13DC34BAB03E124EEAD8B6BF44B532</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000040000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D94799075C24DCC067AF0D392049250D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000020000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>14F431771EDDCE4764C21A2254B5E3C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000010000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7039329F36F2ED682B02991F28D64679</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000008000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>124EE24EDE5551639DB8B8B941F6141D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000004000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C2852879A34D5184E478EC918B993FEE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000002000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>86A806A3525B93E432053C9AB5ABBEDF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000001000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C1609BF5A4F07E37C17A36366EC23ECC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000800000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7E81E7CB92159A51FFCEA331B1E8EA53</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000400000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>37A7BE002856C5A59A6E03EAFCE7729A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000200000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BDF98A5A4F91E890C9A1D1E5FAAB138F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000100000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4E96ACB66E051F2BC739CC3D3E34A26B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000080000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EE996CDD120EB86E21ECFA49E8E1FCF1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000040000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>61B9E6B579DBF6070C351A1440DD85FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000020000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AC369E484316440B40DFC83AA96E28E7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000010000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0A2D16DE985C76D45C579C1159413BBE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000008000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DA3FDC38DA1D374FA4802CDA1A1C6B0F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000004000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B842523D4C41C2211AFE43A5800ADCE3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000002000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9E2CDA90D8E992DBA6C73D8229567192</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000001000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D49583B781D9E20F5BE101415957FC49</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000800</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EF09DA5C12B376E458B9B8670032498E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000400</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A96BE0463DA774461A5E1D5A9DD1AC10</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000200</key>
-			<input>00000000000000000000000000000000</input>
-			<output>32CEE3341060790D2D4B1362EF397090</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000100</key>
-			<input>00000000000000000000000000000000</input>
-			<output>21CEA416A3D3359D2C4D58FB6A035F06</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000080</key>
-			<input>00000000000000000000000000000000</input>
-			<output>172AEAB3D507678ECAF455C12587ADB7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000040</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B6F897941EF8EBFF9FE80A567EF38478</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000020</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A9723259D94A7DC662FB0C782CA3F1DD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000010</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2F91C984B9A4839F30001B9F430493B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000008</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0472406345A610B048CB99EE0EF3FA0F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000004</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F5F39086646F8C05ED16EFA4B617957C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000002</key>
-			<input>00000000000000000000000000000000</input>
-			<output>26D50F485A30408D5AF47A5736292450</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000001</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0545AAD56DA2A97C3663D1432A3D1C84</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>800000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DE885DC87F5A92594082D02CC1E1B42C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>400000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C749194F94673F9DD2AA1932849630C1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>200000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0CEF643313912934D310297B90F56ECC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>100000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C4495D39D4A553B225FBA02A7B1B87E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>080000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>636D10B1A0BCAB541D680A7970ADC830</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>040000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>07CF045786BD6AFCC147D99E45A901A7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>020000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6A8E3F425A7599348F95398448827976</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>010000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5518276836148A00D91089A20D8BFF57</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>008000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F267E07B5E87E3BC20B969C61D4FCB06</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>004000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5A1CDE69571D401BFCD20DEBADA2212C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>002000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>70A9057263254701D12ADD7D74CD509E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>001000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>35713A7E108031279388A33A0FE2E190</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000800000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E74EDE82B1254714F0C7B4B243108655</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000400000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>39272E3100FAA37B55B862320D1B3EB3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000200000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6D6E24C659FC5AEF712F77BCA19C9DD0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000100000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>76D18212F972370D3CC2C6C372C6CF2F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000080000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B21A1F0BAE39E55C7594ED570A7783EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000040000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>77DE202111895AC48DD1C974B358B458</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000020000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>67810B311969012AAF7B504FFAF39FD1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000010000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C22EA2344D3E9417A6BA07843E713AEA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000008000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C79CAF4B97BEE0BD0630AB354539D653</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000004000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>135FD1AF761D9AE23DF4AA6B86760DB4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000002000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D4659D0B06ACD4D56AB8D11A16FD83B9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000001000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F7D270028FC188E4E4F35A4AAA25D4D4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000800000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>345CAE5A8C9620A9913D5473985852FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000400000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4E8980ADDE60B0E42C0B287FEA41E729</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000200000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F11B6D74E1F15155633DC39743C1A527</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000100000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9C87916C0180064F9D3179C6F5DD8C35</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000080000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>71AB186BCAEA518E461D4F7FAD230E6A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000040000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C4A31BBC3DAAF742F9141C2A5001A49C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000020000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E7C47B7B1D40F182A8928C8A55671D07</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000010000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8E17F294B28FA373C6249538868A7EEF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000008000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>754404096A5CBC08AF09491BE249141A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000004000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>101CB56E55F05D86369B6D1069204F0A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000002000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>73F19BB6604205C6EE227B9759791E41</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000001000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6270C0028F0D136C37A56B2CB64D24D6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000800000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A3BF7C2C38D1114A087ECF212E694346</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000400000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>49CABFF2CEF7D9F95F5EFB1F7A1A7DDE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000200000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EC7F8A47CC59B849469255AD49F62752</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000100000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>68FAE55A13EFAF9B07B3552A8A0DC9D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000080000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>211E6B19C69FAEF481F64F24099CDA65</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000040000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DBB918C75BC5732416F79FB0C8EE4C5C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000020000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>98D494E5D963A6C8B92536D3EC35E3FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000010000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C9A873404D403D6F074190851D67781A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000008000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>073AEF4A7C77D921928CB0DD9D27CAE7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000004000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>89BDE25CEE36FDE769A10E52298CF90F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000002000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>26D0842D37EAD38557C65E0A5E5F122E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000001000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F8294BA375AF46B3F22905BBAFFAB107</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000800000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2AD63EB4D0D43813B979CF72B35BDB94</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000400000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7710C171EE0F4EFA39BE4C995180181D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000200000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C0CB2B40DBA7BE8C0698FAE1E4B80FF8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000100000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>97970E505194622FD955CA1B80B784E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000080000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7CB1824B29F850900DF2CAD9CF04C1CF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000040000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FDF4F036BB988E42F2F62DE63FE19A64</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000020000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>08908CFE2C82606B2C15DF61B75CF3E2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000010000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B3AA689EF2D07FF365ACB9ADBA2AF07A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000008000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F2672CD8EAA3B98776660D0263656F5C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000004000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5BDEAC00E986687B9E1D94A0DA7BF452</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000002000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E6D57BD66EA1627363EE0C4B711B0B21</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000001000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>03730DD6ACB4AD9996A63BE7765EC06F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000800000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A470E361AA5437B2BE8586D2F78DE582</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000400000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7567FEEFA559911FD479670246B484E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000200000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>29829DEA15A4E7A4C049045E7B106E29</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000100000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A407834C3D89D48A2CB7A152208FA4ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000080000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>68F948053F78FEF0D8F9FE7EF3A89819</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000040000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B605174CAB13AD8FE3B20DA3AE7B0234</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000020000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>CCAB8F0AEBFF032893996D383CBFDBFA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000010000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AF14BB8428C9730B7DC17B6C1CBEBCC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000008000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5A41A21332040877EB7B89E8E80D19FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000004000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AC1BA52EFCDDE368B1596F2F0AD893A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000002000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>41B890E31B9045E6ECDC1BC3F2DB9BCC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000001000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4D54A549728E55B19A23660424A0F146</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000800000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A917581F41C47C7DDCFFD5285E2D6A61</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000400000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>604DF24BA6099B93A7405A524D764FCB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000200000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>78D9D156F28B190E232D1B7AE7FC730A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000100000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5A12C39E442CD7F27B3CD77F5D029582</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000080000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FF2BF2F47CF7B0F28EE25AF95DBF790D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000040000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>1863BB7D193BDA39DF090659EB8AE48B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000020000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>38178F2FB4CFCF31E87E1ABCDC023EB5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000010000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F5B13DC690CC0D541C6BA533023DC8C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000008000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>48EC05238D7375D126DC9D08884D4827</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000004000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ACD0D81139691B310B92A6E377BACC87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000002000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9A4AA43578B55CE9CC178F0D2E162C79</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000001000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>08AD94BC737DB3C87D49B9E01B720D81</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000800000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3BCFB2D5D210E8332900C5991D551A2A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000400000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C5F0C6B9397ACB29635CE1A0DA2D8D96</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000200000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>844A29EFC693E2FA9900F87FBF5DCD5F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000100000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5126A1C41051FEA158BE41200E1EA59D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000080000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>302123CA7B4F46D667FFFB0EB6AA7703</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000040000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A9D16BCE7DB5C024277709EE2A88D91A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000020000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F013C5EC123A26CFC34B598C992A996B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000010000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E38A825CD971A1D2E56FB1DBA248F2A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000008000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6E701773C0311E0BD4C5A097406D22B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000004000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>754262CEF0C64BE4C3E67C35ABE439F7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000002000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C9C2D4C47DF7D55CFA0EE5F1FE5070F4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000001000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6AB4BEA85B172573D8BD2D5F4329F13D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000800000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>11F03EF28E2CC9AE5165C587F7396C8C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000400000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0682F2EB1A68BAC7949922C630DD27FA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000200000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ABB0FEC0413D659AFE8E3DCF6BA873BB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000100000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FE86A32E19F805D6569B2EFADD9C92AA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000080000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E434E472275D1837D3D717F2EECC88C3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000040000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>74E57DCD12A21D26EF8ADAFA5E60469A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000020000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C275429D6DAD45DDD423FA63C816A9C1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000010000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7F6EC1A9AE729E86F7744AED4B8F4F07</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000008000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>48B5A71AB9292BD4F9E608EF102636B2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000004000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>076FB95D5F536C78CBED3181BCCF3CF1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000002000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BFA76BEA1E684FD3BF9256119EE0BC0F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000001000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7D395923D56577F3FF8670998F8C4A71</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000800000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BA02C986E529AC18A882C34BA389625F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000400000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3DFCF2D882AFE75D3A191193013A84B5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000200000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FAD1FDE1D0241784B63080D2C74D236C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000100000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7D6C80D39E41F007A14FB9CD2B2C15CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000080000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7975F401FC10637BB33EA2DB058FF6EC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000040000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>657983865C55A818F02B7FCD52ED7E99</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000020000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B32BEB1776F9827FF4C3AC9997E84B20</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000010000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2AE2C7C374F0A41E3D46DBC3E66BB59F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000008000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4D835E4ABDD4BDC6B88316A6E931A07F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000004000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E07EFABFF1C353F7384EBB87B435A3F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000002000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ED3088DC3FAF89AD87B4356FF1BB09C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000001000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4324D01140C156FC898C2E32BA03FB05</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000800000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BE15D016FACB5BAFBC24FA9289132166</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000400000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AC9B7048EDB1ACF4D97A5B0B3F50884B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000200000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>448BECE1F86C7845DFA9A4BB2A016FB3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000100000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>10DD445E87686EB46EA9B1ABC49257F0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000080000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B7FCCF7659FA756D4B7303EEA6C07458</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000040000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>289117115CA3513BAA7640B1004872C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000020000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>57CB42F7EE7186051F50B93FFA7B35BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000010000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F2741BFBFB81663B9136802FB9C3126A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000008000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E32DDDC5C7398C096E3BD535B31DB5CE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000004000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>81D3C204E608AF9CC713EAEBCB72433F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000002000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D4DEEF4BFC36AAA579496E6935F8F98E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000001000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C356DB082B97802B038571C392C5C8F6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000800000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A3919ECD4861845F2527B77F06AC6A4E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000400000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A53858E17A2F802A20E40D44494FFDA0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000200000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5D989E122B78C758921EDBEEB827F0C0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000100000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4B1C0C8F9E7830CC3C4BE7BD226FA8DE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000080000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>82C40C5FD897FBCA7B899C70713573A1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000040000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ED13EE2D45E00F75CCDB51EA8E3E36AD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000020000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F121799EEFE8432423176A3CCF6462BB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000010000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4FA0C06F07997E98271DD86F7B355C50</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000008000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>849EB364B4E81D058649DC5B1BF029B9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000004000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F48F9E0DE8DE7AD944A207809335D9B1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000002000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E59E9205B5A81A4FD26DFCF308966022</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000001000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3A91A1BE14AAE9ED700BDF9D70018804</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000800000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8ABAD78DCB79A48D79070E7DA89664EC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000400000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B68377D98AAE6044938A7457F6C649D9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000200000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E4E1275C42F5F1B63D662C099D6CE33D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000100000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7DEF32A34C6BE668F17DA1BB193B06EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000080000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>78B6000CC3D30CB3A74B68D0EDBD2B53</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000040000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0A47531DE88DD8AE5C23EAE4F7D1F2D5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000020000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>667B24E8000CF68231EC484581D922E5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000010000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>39DAA5EBD4AACAE130E9C33236C52024</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000008000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E3C88760B3CB21360668A63E55BB45D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000004000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F131EE903C1CDB49D416866FD5D8DE51</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000002000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7A1916135B0447CF4033FC13047A583A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000001000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F7D55FB27991143DCDFA90DDF0424FCB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000800000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EA93E7D1CA1111DBD8F7EC111A848C0C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000400000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2A689E39DFD3CBCBE221326E95888779</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000200000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C1CE399CA762318AC2C40D1928B4C57D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000100000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D43FB6F2B2879C8BFAF0092DA2CA63ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000080000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>224563E617158DF97650AF5D130E78A5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000040000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6562FDF6833B7C4F7484AE6EBCC243DD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000020000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>93D58BA7BED22615D661D002885A7457</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000010000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9A0EF559003AD9E52D3E09ED3C1D3320</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000008000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>96BAF5A7DC6F3DD27EB4C717A85D261C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000004000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B8762E06884900E8452293190E19CCDB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000002000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>785416A22BD63CBABF4B1789355197D3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000001000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A0D20CE1489BAA69A3612DCE90F7ABF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000800000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>700244E93DC94230CC607FFBA0E48F32</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000400000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>85329E476829F872A2B4A7E59F91FF2D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000200000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E4219B4935D988DB719B8B8B2B53D247</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 172</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000100000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6ACDD04FD13D4DB4409FE8DD13FD737B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 173</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000080000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9EB7A670AB59E15BE582378701C1EC14</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 174</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000040000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>29DF2D6935FE657763BC7A9F22D3D492</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 175</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000020000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>99303359D4A13AFDBE6C784028CE533A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 176</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000010000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FF5C70A6334545F33B9DBF7BEA0417CA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 177</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000008000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>289F58A17E4C50EDA4269EFB3DF55815</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 178</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000004000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EA35DCB416E9E1C2861D1682F062B5EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 179</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000002000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3A47BF354BE775383C50B0C0A83E3A58</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 180</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000001000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BF6C1DC069FB95D05D43B01D8206D66B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 181</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000800</key>
-			<input>00000000000000000000000000000000</input>
-			<output>046D1D580D5898DA6595F32FD1F0C33D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 182</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000400</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5F57803B7B82A110F7E9855D6A546082</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 183</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000200</key>
-			<input>00000000000000000000000000000000</input>
-			<output>25336ECF34E7BE97862CDFF715FF05A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 184</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000100</key>
-			<input>00000000000000000000000000000000</input>
-			<output>ACBAA2A943D8078022D693890E8C4FEF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 185</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000080</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3947597879F6B58E4E2F0DF825A83A38</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 186</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000040</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4EB8CC3335496130655BF3CA570A4FC0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 187</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000020</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BBDA7769AD1FDA425E18332D97868824</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 188</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000010</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5E7532D22DDB0829A29C868198397154</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 189</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000008</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E66DA67B630AB7AE3E682855E1A1698E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 190</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000004</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4D93800F671B48559A64D1EA030A590A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 191</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000002</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F33159FCC7D9AE30C062CD3B322AC764</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 192</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000001</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8BAE4EFB70D33A9792EEA9BE70889D72</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>8000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E35A6DCB19B201A01EBCFA8AA22B5759</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>4000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5075C2405B76F22F553488CAE47CE90B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>2000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>49DF95D844A0145A7DE01C91793302D3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>1000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E7396D778E940B8418A86120E5F421FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0800000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>05F535C36FCEDE4657BE37F4087DB1EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0400000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D0C1DDDD10DA777C68AB36AF51F2C204</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0200000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>1C55FB811B5C6464C4E5DE1535A75514</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0100000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>52917F3AE957D5230D3A2AF57C7B5A71</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0080000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C6E3D5501752DD5E9AEF086D6B45D705</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0040000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A24A9C7AF1D9B1E17E1C9A3E711B3FA7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0020000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B881ECA724A6D43DBC6B96F6F59A0D20</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0010000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EC524D9A24DFFF2A9639879B83B8E137</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0008000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>34C4F345F5466215A037F443635D6F75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0004000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5BA5055BEDB8895F672E29F2EB5A355D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0002000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B3F692AA3A435259EBBEF9B51AD1E08D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0001000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>414FEB4376F2C64A5D2FBB2ED531BA7D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000800000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A20D519E3BCA3303F07E81719F61605E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000400000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A08D10E520AF811F45BD60A2DC0DC4B1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000200000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B06893A8C563C430E6F3858826EFBBE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000100000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0FFEE26AE2D3929C6BD9C6BEDFF84409</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000080000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4D0F5E906ED77801FC0EF53EDC5F9E2B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000040000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8B6EC00119AD8B026DCE56EA7DEFE930</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000020000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>69026591D43363EE9D83B5007F0B484E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000010000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>27135D86950C6A2F86872706279A4761</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000008000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>35E6DB8723F281DA410C3AC8535ED77C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000004000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>57427CF214B8C28E4BBF487CCB8D0E09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000002000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6DF01BF56E5131AC87F96E99CAB86367</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000001000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3856C5B55790B768BBF7D43031579BCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000800000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>1E6ED8FB7C15BC4D2F63BA7037ED44D0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000400000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E1B2ED6CD8D93D455534E401156D4BCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000200000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EFBCCA5BDFDAD10E875F02336212CE36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000100000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0B777F02FD18DCE2646DCFE868DFAFAD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000080000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C8A104B5693D1B14F5BF1F10100BF508</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000040000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4CCE6615244AFCB38408FECE219962EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000020000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F99E7845D3A255B394C9C050CBA258B1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000010000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B4AFBB787F9BCFB7B55FDF447F611295</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000008000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AE1C426A697FAF2808B7EF6ADDB5C020</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000004000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7572F92811A85B9BDD38DEAD9945BCAE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000002000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>71BC7AA46E43FB95A181527D9F6A360F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000001000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5542EF2923066F1EC8F546DD0D8E7CA8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000800000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6B92317C7D623790B748FDD7EFC42422</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000400000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0FE7C097E899C71EF045360F8D6C25CF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000200000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4ECE7EE107D0264D04693151C25B9DF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000100000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FD6AE687CBFCA9E301045888D3BB9605</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000080000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>476B579C8556C7254424902CC1D6D36E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000040000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4133CBCDFDD6B8860A1FC18665D6D71B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000020000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3B36EC2664798C108B816812C65DFDC7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000010000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>364E20A234FEA385D48DC5A09C9E70CF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000008000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4A4BA25969DE3F5EE5642C71AAD0EFD1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000004000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E42CBAAE43297F67A76C1C501BB79E36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000002000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>23CEDEDA4C15B4C037E8C61492217937</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000001000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A1719147A1F4A1A1180BD16E8593DCDE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000800000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AB82337E9FB0EC60D1F25A1D0014192C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000400000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>74BF2D8FC5A8388DF1A3A4D7D33FC164</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000200000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D5B493317E6FBC6FFFD664B3C491368A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000100000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BA767381586DA56A2A8D503D5F7ADA0B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000080000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E8E6BC57DFE9CCADB0DECABF4E5CF91F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000040000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3C8E5A5CDC9CEED90815D1F84BB2998C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000020000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>283843020BA38F056001B2FD585F7CC9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000010000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D8ADC7426F623ECE8741A70621D28870</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000008000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D7C5C215592D06F00E6A80DA69A28EA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000004000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>52CF6FA433C3C870CAC70190358F7F16</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000002000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F63D442A584DA71786ADEC9F3346DF75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000001000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>549078F4B0CA7079B45F9A5ADAFAFD99</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000800000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F2A5986EE4E9984BE2BAFB79EA8152FA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000400000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8A74535017B4DB2776668A1FAE64384C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000200000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E613342F57A97FD95DC088711A5D0ECD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000100000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3FFAEBF6B22CF1DC82AE17CD48175B01</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000080000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BAFD52EFA15C248CCBF9757735E6B1CE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000040000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7AF94BC018D9DDD4539D2DD1C6F4000F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000020000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FE177AD61CA0FDB281086FBA8FE76803</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000010000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>74DBEA15E2E9285BAD163D7D534251B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000008000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>23DD21331B3A92F200FE56FF050FFE74</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000004000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A69C5AA34AB20A858CAFA766EACED6D8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000002000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3F72BB4DF2A4F941A4A09CB78F04B97A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000001000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>72CC43577E1FD5FD14622D24D97FCDCC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000800000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D83AF8EBE93E0B6B99CAFADE224937D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000400000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>44042329128D56CAA8D084C8BD769D1E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000200000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>14102D72290DE4F2C430ADD1ED64BA1D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000100000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>449124097B1ECD0AE7065206DF06F03C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000080000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D060A99F8CC153A42E11E5F97BD7584A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000040000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>65605B3EA9261488D53E48602ADEA299</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000020000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C5E5CAD7A208DE8EA6BE049EFE5C7346</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000010000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4C280C46D2181646048DD5BC0C0831A5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000008000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5DD65CF37F2A0929559AABAFDA08E730</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000004000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>31F2335CAAF264172F69A693225E6D22</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000002000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3E28B35F99A72662590DA96426DD377F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000001000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>570F40F5D7B20441486578ED344343BE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000800000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C54308AD1C9E3B19F8B7417873045A8C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000400000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>CBF335E39CE13ADE2B696179E8FD0CE1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000200000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9C2FBF422355D8293083D51F4A3C18A9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000100000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5ED8B5A31ECEFAB16C9AA6986DA67BCE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000080000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>627815DCFC814ABC75900041B1DD7B59</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000040000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9EF3E82A50A59F166260494F7A7F2CC3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000020000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>878CD0D8D920888B5935D6C351128737</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000010000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E44429474D6FC3084EB2A6B8B46AF754</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000008000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EBAACF9641D54E1FB18D0A2BE4F19BE5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000004000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>13B3BF497CEE780E123C7E193DEA3A01</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000002000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6E8F381DE00A41161F0DF03B4155BFD4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000001000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>35E4F29BBA2BAE01144910783C3FEF49</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000800000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>55B17BD66788CEAC366398A31F289FFB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000400000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>11341F56C0D6D1008D28741DAA7679CE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000200000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4DF7253DF421D83358BDBE924745D98C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000100000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BAE2EE651116D93EDC8E83B5F3347BE1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000080000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F9721ABD06709157183AF3965A659D9D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000040000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>19A1C252A613FE2860A4AE6D75CE6FA3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000020000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B5DDB2F5D9752C949FBDE3FFF5556C6E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000010000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>81B044FCFFC78ECCFCD171AAD0405C66</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000008000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C640566D3C06020EB2C42F1D62E56A9B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000004000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EA6C4BCF425291679FDFFD26A424FBCC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000002000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>57F6901465D9440D9F15EE2CBA5A4090</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000001000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FBCFA74CADC7406260F63D96C8AAB6B1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000800000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DFF4F096CEA211D4BBDACA033D0EC7D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000400000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>1EE5190D551F0F42F675227A381296A9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000200000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F98E1905012E580F097623C10B93054F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000100000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E7D43743D21DD3C9F168C86856558B9A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000080000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>632A9DDA730DAB67593C5D08D8AC1059</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000040000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E084317000715B9057BC9DE9F3AB6124</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000020000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>61F9EF33A0BB4E666C2ED99101919FAB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000010000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6DC1D68A11834657D46703C22578D59A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000008000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>53AC1548863D3D16F1D4DC7242E05F2C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000004000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E82CD587A408306AD78CEAE0916B9F8C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000002000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0FD2D40EA6AD17A3A767F0A8600D6295</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000001000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AD84CC8255ADB39DFCA23F92761AE7E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000800000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F4F20CF7D51BEE7DA024A2B11A7ECA0B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000400000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5057691B85D9CE93A193214DB0A016B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000200000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0F58C960876390BDEF4BB6BE95CAA1EE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000100000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9A3E66EEBC21BC0BD9430B341EF465FA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000080000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>20415035F34B8BCBCB28ABF07F78F0D4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000040000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AC89FC7BA10479EBF10DE65BCEF89B3C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000020000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>068FA75A30BE443171AF3F6FEB1A20D2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000010000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>50E02F213246C525A8C27700CA34B502</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000008000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>227DA47D5A0906DB3AB042BB0A695FB6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000004000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8663AC30ED12514F1DE46777F4514BFC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000002000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A987D4BC12E1DE9F4B6DF43567C34A8B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000001000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6D5A0370F599ACA605F63B04E5143D0C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000800000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9809266E378B07B7AFDB3BAA97B7E442</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000400000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8F753252B30CCCACE12D9A301F4D5090</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000200000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>032465F6C0CE34D41962F561692A1AFF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000100000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C50E9AD5BEB8F3B00821DD47FF8AC093</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000080000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9C6FEA3D46268D54A6829B2AD25BB276</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000040000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0FD8575E87706F561343D7B3A41E044A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000020000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BEE9BEB3739540D88CBCE77925F0A114</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000010000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D24EAEE7FFFBAC3D6F26C2DCE0DCDE28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000008000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>47771A90398FF0F7FA821C2F8F5E1398</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000004000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4639741B6F84B135AD118C8249B64ED0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000002000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8EE5505EC85567697A3306F250A27720</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000001000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7C8A19AC1AEFBC5E0119D91A5F05D4C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000800000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5141B9B672E54773B672E3A6C424887B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000400000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B5A2D3CD206653C6402F34FB0AE3613D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000200000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0F5BD9408738231D114B0A82753279A3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000100000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FEF033FF4268EA487FC74C5E43A45338</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000080000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A3EDC09DCD529B113910D904AD855581</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000040000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AB8FBB6F27A0AC7C55B59FDD36B72F1C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000020000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EEA44D5ED4D769CC930CD83D8999EC46</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000010000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6972276803AE9AA7C6F431AB10979C34</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000008000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>86DEAA9F39244101818178474D7DBDE9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000004000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>88C6B466EA361D662D8D08CBF181F4FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000002000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>91AB2C6B7C63FF59F7CBEEBF91B20B95</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000001000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2DFE6C146AD5B3D8C3C1718F13B48E01</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000800000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C7CFF1623451711391A302EEC3584AAA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000400000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>089FE845CC05011686C66019D18BE050</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000200000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>08C8410B9B427211A67124B0DCCEAD48</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000100000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8D91592F5566085254784606334D7629</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000080000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3298FEAAF2E1201D6299FF8846639C97</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000040000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C497CB9F0BDFE0EFC8C2F3F90760AA72</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000020000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2788AFD046E0309CBE4424690DA2AB89</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000010000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E9891707F25EF29FEE372890D4258982</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000008000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DB041D94A23D45D4D4DCED5A030CAF61</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000004000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>FFAFDBF0ECB18DF9EA02C27077448E6D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000002000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2DAAA42A7D0A1D3B0E4761D99CF2150A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 172</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000001000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3B7A54CB7CF30ABE263DD6ED5BFE8D63</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 173</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000800000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EEFA090174C590C448A55D43648F534A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 174</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000400000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9E15798731ED42F43EA2740A691DA872</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 175</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000200000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>31FBD661540A5DEAAD1017CFD3909EC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 176</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000100000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>CDA9AE05F224140E28CB951721B44D6A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 177</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000080000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0C5BC512C60A1EAC3434EFB1A8FBB182</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 178</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000040000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>AA863610DEEEEB62D045E87EA30B59B5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 179</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000020000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6AC2448DE568D279C7EEBE1DF403920C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 180</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000010000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E2011E3D292B26888AE801215FD0CB40</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 181</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000008000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E06F3E15EE3A61672D1C99BADE5B9DBE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 182</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000004000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BB7027F0548CF6712CEB4C7A4B28E178</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 183</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000002000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>061EC21FB70FADBDF87C3BD2AE23825B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 184</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000001000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>4C21F26FE94ABBAC381352375314C3EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 185</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000800000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F7CEE6DD99909C2B569EEDA61ED8942E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 186</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000400000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>CE98C4A876C65E4CCB261EBB1D9DF7F5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 187</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000200000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A5491881CF833C3604ABC08044F402AC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 188</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000100000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A1BA16E64CCCB3087D57A768507B0BFC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 189</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000080000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D55951E202D2949EBD3BE43120C738BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 190</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000040000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EBB8E43069E69F450EFEC65DCD52B7FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 191</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000020000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2B292135663B4AA5ABFE9423D57E7EE9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 192</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000010000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E91BF974B3BE3AD966249D8655292A85</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 193</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000008000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>384365998EAA9562236CC58F6ADF9610</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 194</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000004000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C2E997012AA3D4D8D359C9A947CBE69F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 195</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000002000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F49421204148BA213BE87E2D5C22B0BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 196</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000001000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>82ED0ED9953AA92E4DF30929CA65C00F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 197</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000800000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>291EB1D11653C8479437C74A977F5106</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 198</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000400000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>BCB997B1939B8983ABD550D6025683E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 199</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000200000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>1FBA2592C6F489775CAADA71F9B983E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 200</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000100000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>969F66F217AF1A3DB9E41C1B29039824</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 201</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000080000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A54BB7D6B17E423AC0A7744C19073CB8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 202</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000040000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B0AC6E6578D1021F47DCF9748A32EAD5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 203</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000020000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B87B361C3B7B194C77A4358D4669153E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 204</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000010000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>46A133847F96EAA8282A799DC8899D58</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 205</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000008000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2265EC3A9F2D5C9547A091CC8CFB18EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 206</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000004000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>54CBF3A6FC4FE56D426117AA1FFD1DDE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 207</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000002000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5312877CCEAB6CFB0905394A370A8003</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 208</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000001000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7190BD6EC613FE38B84ECFE28F702FE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 209</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000800000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D1FA5B9CA89A43B04C05F0EF29EF68CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 210</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000400000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>808285751548ED934FD1056D2D9AE8BA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 211</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000200000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2758DEF3E7B95A9AE89777BE64D5A6CF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 212</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000100000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>07D81F87DB3E0ACC82B01E08FB22F3C1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 213</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000080000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8DA250E5553D650711A75EE1CB4FD1C7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 214</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000040000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>A93D946BD0E87F32719DF5F158CEE669</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 215</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000020000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>03945236EC2A4D4EAF30B8ABEB54330D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 216</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000010000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>11CC35301F24B79DDE31AEA2D1354F88</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 217</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000008000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E73715B3E8D9A290F44AE6FFBF247E5D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 218</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000004000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>7345E07732B71CB158BBF64CCA5C5B96</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 219</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000002000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6E128F296D24705A1924FD9B70C4ED04</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 220</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000001000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>95A789776F036783FBD330947083F54F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 221</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000800000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>360DEC2533EA4AA2E3E54FD3DE2906EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 222</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000400000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E68EFD7FECF4D601EA22727BD764965B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 223</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000200000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9065C64A8BFF44AC33EDBB611CF83D7B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 224</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000100000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8F33C8DF2A7A51CE8090E8F123BC3723</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 225</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000080000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>807F391FFBA8291BA625623210F99018</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 226</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000040000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5E8B3F3A701522CE5CAA761C929D6292</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 227</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000020000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>3BA404DC38735A78289E3809E8364835</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 228</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000010000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D23BEDBAD229F8305DC425B6B759DCC9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 229</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000008000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>44880F21CF5913040AE376AEE2A10AD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 230</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000004000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>9BC98E29D057C0E828C3B5CCE69256C1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 231</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000002000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B293CC7A975DA141A68279368057CC41</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 232</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000001000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8D60FB87ACD91385B313BE5F1D7BD30F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 233</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000800000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2C8E56132D70291B303C48FDF75543CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 234</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000400000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D1F80035B826791F6CE4E59B7DB1BB0D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 235</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000200000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>42CE6224FC36469339A133DD08173BD4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 236</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000100000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>61817155EA41BCBA2AF7F06AE7CBF585</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 237</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000080000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D1923A9866068D2EF5FB77D57C3315B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 238</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000040000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>B37CBDB5D719F49691CA968EF2E84140</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 239</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000020000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EC974E653A055D7F8F22171030F68E1D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 240</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000010000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>DDE5D3B9AAD9C32213BB3675A822499C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 241</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000008000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D3B6E9216EA1AE57EB1C628A3C38AB78</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 242</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000004000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>82C99ECC69472B7E96324B042AE8B87A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 243</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000002000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>97144DC5338C43600F84439C0AA0D147</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 244</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000001000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>400AC4A0BBADA1DB2121EB144C7E5209</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 245</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000800</key>
-			<input>00000000000000000000000000000000</input>
-			<output>EFD9D550EB419ED278F4885A490AB54C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 246</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000400</key>
-			<input>00000000000000000000000000000000</input>
-			<output>2AB7816E149B7C0404C88A8857793670</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 247</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000200</key>
-			<input>00000000000000000000000000000000</input>
-			<output>5B591DFF9E8DEE15BAD24C025DBCA481</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 248</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000100</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0C06633E30721C3749F49AD8CBF2B754</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 249</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000080</key>
-			<input>00000000000000000000000000000000</input>
-			<output>96D6D31A41B5123B2035FD91A921D4CA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 250</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000040</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E7F6C34D86668BC2805CA7793C5E86AD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 251</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000020</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F46DFF5FF500D6879C4D3E45CF0CF0F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 252</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000010</key>
-			<input>00000000000000000000000000000000</input>
-			<output>60D842D9C61DA7495C116197B7CECBBE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 253</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000008</key>
-			<input>00000000000000000000000000000000</input>
-			<output>D45B24EDB673353EBDF248B8FA06B67A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 254</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000004</key>
-			<input>00000000000000000000000000000000</input>
-			<output>119EAEBCC165D0BD02C0D35DC82EF992</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 255</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000002</key>
-			<input>00000000000000000000000000000000</input>
-			<output>E673143680414ADA301D0ED34626B9FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VK 256</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000001</key>
-			<input>00000000000000000000000000000000</input>
-			<output>6B6CFE160A6263631B292F879EEFF926</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESECB_KAT_VT.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6146 +0,0 @@
-<action>
-	<actionname>AES ECB KAT VT 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>80000000000000000000000000000000</input>
-			<output>3AD78E726C1EC02B7EBFE92B23D9EC34</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>40000000000000000000000000000000</input>
-			<output>45BC707D29E8204D88DFBA2F0B0CAD9B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>20000000000000000000000000000000</input>
-			<output>161556838018F52805CDBD6202002E3F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>10000000000000000000000000000000</input>
-			<output>F5569B3AB6A6D11EFDE1BF0A64C6854A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>08000000000000000000000000000000</input>
-			<output>64E82B50E501FBD7DD4116921159B83E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>04000000000000000000000000000000</input>
-			<output>BAAC12FB613A7DE11450375C74034041</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>02000000000000000000000000000000</input>
-			<output>BCF176A7EAAD8085EBACEA362462A281</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>01000000000000000000000000000000</input>
-			<output>47711816E91D6FF059BBBF2BF58E0FD3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00800000000000000000000000000000</input>
-			<output>B970DFBE40698AF1638FE38BD3DF3B2F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00400000000000000000000000000000</input>
-			<output>F95B59A44F391E14CF20B74BDC32FCFF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00200000000000000000000000000000</input>
-			<output>720F74AE04A2A435B9A7256E49378F5B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00100000000000000000000000000000</input>
-			<output>2A0445F61D36BFA7E277070730CF76DA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00080000000000000000000000000000</input>
-			<output>8D0536B997AEFEC1D94011BAB6699A03</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00040000000000000000000000000000</input>
-			<output>674F002E19F6ED47EFF319E51FAD4498</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00020000000000000000000000000000</input>
-			<output>292C02C5CB9163C80AC0F6CF1DD8E92D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00010000000000000000000000000000</input>
-			<output>FA321CF18EF5FE727DD82A5C1E945141</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00008000000000000000000000000000</input>
-			<output>A5A7AFE1034C39CCCEBE3C584BC0BE05</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00004000000000000000000000000000</input>
-			<output>4FF5A52E697E77D081205DBDB21CEA39</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00002000000000000000000000000000</input>
-			<output>209E88DC94C9003000CE0769AF7B7166</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00001000000000000000000000000000</input>
-			<output>5DEE41AF864CB4B650E5F51551824D38</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000800000000000000000000000000</input>
-			<output>A79A63FA7E4503AE6D6E09F5F9053030</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000400000000000000000000000000</input>
-			<output>A48316749FAE7FAC7002031A6AFD8BA7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000200000000000000000000000000</input>
-			<output>D6EEE8A7357A0E1D64262CA9C337AC42</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000100000000000000000000000000</input>
-			<output>B013CA8A62A858053E9FB667ED39829E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000080000000000000000000000000</input>
-			<output>DF6EA9E4538A45A52D5C1A43C88F4B55</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000040000000000000000000000000</input>
-			<output>7D03BA451371591D3FD5547D9165C73B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000020000000000000000000000000</input>
-			<output>0E0426281A6277E186499D365D5F49FF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000010000000000000000000000000</input>
-			<output>DBC02169DD2059E6CC4C57C1FEDF5AB4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000008000000000000000000000000</input>
-			<output>826590E05D167DA6F00DCC75E22788EB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000004000000000000000000000000</input>
-			<output>34A73F21A04421D9786335FAAB49423A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000002000000000000000000000000</input>
-			<output>ED347D0E0128EE1A7392A1D36AB78AA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000001000000000000000000000000</input>
-			<output>EE944B2FE6E9FC888042608DA9615F75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000800000000000000000000000</input>
-			<output>9E7C85A909EF7218BA7947CFB4718F46</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000400000000000000000000000</input>
-			<output>811AE07A0B2B1F816587FA73699AE77D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000200000000000000000000000</input>
-			<output>68466FBF43C2FE13D4B18F7EC5EA745F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000100000000000000000000000</input>
-			<output>D20B015C7191B219780956E6101F9354</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000080000000000000000000000</input>
-			<output>5939D5C1BBF54EE1B3E326D757BDDE25</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000040000000000000000000000</input>
-			<output>B1FDAFE9A0240E8FFEA19CE94B5105D3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000020000000000000000000000</input>
-			<output>D62962ECE02CDD68C06BDFEFB2F9495B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000010000000000000000000000</input>
-			<output>B3BB2DE6F3C26587BA8BAC4F7AD9499A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000008000000000000000000000</input>
-			<output>E0B1072D6D9FF703D6FBEF77852B0A6B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000004000000000000000000000</input>
-			<output>D8DD51C907F478DE0228E83E61FD1758</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000002000000000000000000000</input>
-			<output>A42DFFE6E7C1671C06A25236FDD10017</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000001000000000000000000000</input>
-			<output>25ACF141550BFAB9EF451B6C6A5B2163</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000800000000000000000000</input>
-			<output>4DA7FCA3949B16E821DBC84F19581018</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000400000000000000000000</input>
-			<output>7D49B6347CBCC8919C7FA96A37A7A215</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000200000000000000000000</input>
-			<output>900024B29A08C6721B95BA3B753DDB4D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000100000000000000000000</input>
-			<output>6D2182FB283B6934D90BA7848CAB5E66</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000080000000000000000000</input>
-			<output>F73EF01B448D23A4D90DE8B2F9666E7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000040000000000000000000</input>
-			<output>4AD9CDA2418643E9A3D926AF5E6B0412</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000020000000000000000000</input>
-			<output>7CAEC8E7E5953997D545B033201C8C5B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000010000000000000000000</input>
-			<output>3C43CA1F6B6864503E27B48D88230CF5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000008000000000000000000</input>
-			<output>44F779B93108FE9FEEC880D79BA74488</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000004000000000000000000</input>
-			<output>9E50E8D9CFD3A682A78E527C9072A1CF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000002000000000000000000</input>
-			<output>68D000CBC838BBE3C505D6F814C01F28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000001000000000000000000</input>
-			<output>2CB2A9FEC1ACD1D9B0FA05205E304F57</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000800000000000000000</input>
-			<output>01EB2806606E46444520A5CC6180CD4B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000400000000000000000</input>
-			<output>DAA9B25168CC702326F217F1A0C0B162</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000200000000000000000</input>
-			<output>3E07E648975D9578D03555B1755807ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000100000000000000000</input>
-			<output>0B45F52E802C8B8DE09579425B80B711</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000080000000000000000</input>
-			<output>659595DA0B68F6DF0DD6CA77202986E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000040000000000000000</input>
-			<output>05FF42873893536E58C8FA98A45C73C4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000020000000000000000</input>
-			<output>B5B03421DE8BBFFC4EADEC767339A9BD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000010000000000000000</input>
-			<output>788BCD111ECF73D4E78D2E21BEF55460</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000008000000000000000</input>
-			<output>909CD9EC6790359F982DC6F2393D5315</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000004000000000000000</input>
-			<output>332950F361535FF24EFAC8C76293F12C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000002000000000000000</input>
-			<output>A68CCD4E330FFDA9D576DA436DB53D75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000001000000000000000</input>
-			<output>27C8A1CCFDB0B015D1ED5B3E77143791</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000800000000000000</input>
-			<output>D76A4B95887A77DF610DD3E1D3B20325</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000400000000000000</input>
-			<output>C068AB0DE71C66DAE83C361EF4B2D989</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000200000000000000</input>
-			<output>C2120BCD49EDA9A288B3B4BE79AC8158</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000100000000000000</input>
-			<output>0C546F62BF2773CD0F564FCECA7BA688</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000080000000000000</input>
-			<output>18F3462BEDE4920213CCB66DAB1640AA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000040000000000000</input>
-			<output>FE42F245EDD0E24B216AEBD8B392D690</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000020000000000000</input>
-			<output>3D3EEBC8D3D1558A194C2D00C337FF2B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000010000000000000</input>
-			<output>29AAEDF043E785DB42836F79BE6CBA28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000008000000000000</input>
-			<output>215F90C6744E2944358E78619159A611</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000004000000000000</input>
-			<output>8606B1AA9E1D548E5442B06551E2C6DC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000002000000000000</input>
-			<output>987BB4B8740EC0EDE7FEA97DF033B5B1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000001000000000000</input>
-			<output>C0A3500DA5B0AE07D2F450930BEEDF1B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000800000000000</input>
-			<output>525FDF8312FE8F32C781481A8DAAAE37</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000400000000000</input>
-			<output>BFD2C56AE5FB9C9DE33A6944572A6487</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000200000000000</input>
-			<output>7975A57A425CDF5AA1FA929101F650B0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000100000000000</input>
-			<output>BF174BC49609A8709B2CD8366DAA79FE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000080000000000</input>
-			<output>06C50C43222F56C874B1704E9F44BF7D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000040000000000</input>
-			<output>0CEC48CD34043EA29CA3B8ED5278721E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000020000000000</input>
-			<output>9548EA34A1560197B304D0ACB8A1698D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000010000000000</input>
-			<output>22F9E9B1BD73B6B5B7D3062C986272F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000008000000000</input>
-			<output>FEE8E934BD0873295059002230E298D4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000004000000000</input>
-			<output>1B08E2E3EB820D139CB4ABBDBE81D00D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000002000000000</input>
-			<output>0021177681E4D90CEAF69DCED0145125</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000001000000000</input>
-			<output>4A8E314452CA8A8A3619FC54BC423643</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000800000000</input>
-			<output>65047474F7222C94C6965425FF1BFD0A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000400000000</input>
-			<output>E123F551A9C4A8489622B16F961A9AA4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000200000000</input>
-			<output>EF05530948B80915028BB2B6FE429380</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000100000000</input>
-			<output>72535B7FE0F0F777CEDCD55CD77E2DDF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000080000000</input>
-			<output>3423D8EFC31FA2F4C365C77D8F3B5C63</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000040000000</input>
-			<output>DE0E51C264663F3C5DBC59580A98D8E4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000020000000</input>
-			<output>B2D9391166680947AB09264156719679</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000010000000</input>
-			<output>10DB79F23B06D263835C424AF749ADB7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000008000000</input>
-			<output>DDF72D27E6B01EC107EA3E005B59563B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000004000000</input>
-			<output>8266B57485A5954A4236751DE07F6694</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000002000000</input>
-			<output>669A501E1F1ADE6E5523DE01D6DBC987</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000001000000</input>
-			<output>C20C48F2989725D461D1DB589DC0896E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000800000</input>
-			<output>DE35158E7810ED1191825D2AA98FA97D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000400000</input>
-			<output>4FE294F2C0F34D0671B693A237EBDDC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000200000</input>
-			<output>087AE74B10CCBFDF6739FEB9559C01A4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000100000</input>
-			<output>5DC278970B7DEF77A5536C77AB59C207</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000080000</input>
-			<output>7607F078C77085184EAA9B060C1FBFFF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000040000</input>
-			<output>9DB841531BCBE7998DAD19993FB3CC00</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000020000</input>
-			<output>D6A089B654854A94560BAE13298835B8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000010000</input>
-			<output>E1E223C4CF90CC5D195B370D65114622</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000008000</input>
-			<output>1CBED73C50D053BDAD372CEEE54836A1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000004000</input>
-			<output>D309E69376D257ADF2BFDA152B26555F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000002000</input>
-			<output>740F7649117F0DEE6EAA7789A9994C36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000001000</input>
-			<output>76AE64417C297184D668C5FD908B3CE5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000800</input>
-			<output>6095FEA4AA8035591F1787A819C48787</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000400</input>
-			<output>D1FF4E7ACD1C79967FEBAB0F7465D450</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000200</input>
-			<output>5F5AD3C42B9489557BB63BF49ECF5F8A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000100</input>
-			<output>FB56CC09B680B1D07C5A52149E29F07C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000080</input>
-			<output>FF49B8DF4A97CBE03833E66197620DAD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000040</input>
-			<output>5E070ADE533D2E090ED0F5BE13BC0983</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000020</input>
-			<output>3AB4FB1D2B7BA376590A2C241D1F508D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000010</input>
-			<output>58B2431BC0BEDE02550F40238969EC78</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000008</input>
-			<output>0253786E126504F0DAB90C48A30321DE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000004</input>
-			<output>200211214E7394DA2089B6ACD093ABE0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000002</input>
-			<output>0388DACE60B6A392F328C2B971B2FE78</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000001</input>
-			<output>58E2FCCEFA7E3061367F1D57A4E7455A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>80000000000000000000000000000000</input>
-			<output>6CD02513E8D4DC986B4AFE087A60BD0C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>40000000000000000000000000000000</input>
-			<output>423D2772A0CA56DAABB48D2129062987</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>20000000000000000000000000000000</input>
-			<output>1021F2A8DA70EB2219DC16804445FF98</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>10000000000000000000000000000000</input>
-			<output>C636E35B402577F96974D8804295EBB8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>08000000000000000000000000000000</input>
-			<output>1566D2E57E8393C19E29F892EA28A9A7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>04000000000000000000000000000000</input>
-			<output>883C878FED70B36CC09D040F9619DD19</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>02000000000000000000000000000000</input>
-			<output>06734593A974965790E715594FC34AA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>01000000000000000000000000000000</input>
-			<output>F19B389948D9A45534E5BD36C984134A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00800000000000000000000000000000</input>
-			<output>D8410DFC14FA6D175EC968EA8CAC514C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00400000000000000000000000000000</input>
-			<output>7E6C6EBB4029A177CF7B2FDD9AC6BB7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00200000000000000000000000000000</input>
-			<output>4B51DD4850DC0A6C3A46D924003D2C27</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00100000000000000000000000000000</input>
-			<output>2E510A9D917B15BE32A192B12A668F23</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00080000000000000000000000000000</input>
-			<output>88F6F79962B0FB77FEA8E7C632D3108E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00040000000000000000000000000000</input>
-			<output>A3A35AB1D88DAF07B52794A0F065383A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00020000000000000000000000000000</input>
-			<output>DC6CC878433E2B3BB193049A4ECBFC53</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00010000000000000000000000000000</input>
-			<output>EFCD3763EB7B1A415938248A9A5B4FD5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00008000000000000000000000000000</input>
-			<output>AB7E9FB9A66DBE5BB44854F07D9015EE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00004000000000000000000000000000</input>
-			<output>8B8E9D3365F8F6743ECF7E33E99255A4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00002000000000000000000000000000</input>
-			<output>54D37B4F176FF3D8F6AFC866066D8572</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00001000000000000000000000000000</input>
-			<output>E83310889480FBF3C00342E3126D0D02</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000800000000000000000000000000</input>
-			<output>D321AB2511F92F098174AA2DE6E85DA2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000400000000000000000000000000</input>
-			<output>D8E3F40B1112D5149D58C481DFA9983F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000200000000000000000000000000</input>
-			<output>2454C4E0806639DDF19854D6C68054AD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000100000000000000000000000000</input>
-			<output>A5506D410F7CA32F3955DD79D9D09418</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000080000000000000000000000000</input>
-			<output>7908EE40677699568A7DC1AA317C7E4E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000040000000000000000000000000</input>
-			<output>B4B7B29DD43B2F5CF765E25192273982</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000020000000000000000000000000</input>
-			<output>92AFE9668159BEFFE2A86F8503260164</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000010000000000000000000000000</input>
-			<output>5C36A232FBA6D187A84657AD4028B18F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000008000000000000000000000000</input>
-			<output>A2E994DFAB3A798DF8F54F6DA87E58E2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000004000000000000000000000000</input>
-			<output>6CDAB10A72ADF77D71D0765BAAE95631</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000002000000000000000000000000</input>
-			<output>9FE3C801BCAAF7BB800F2E6BF3278E21</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000001000000000000000000000000</input>
-			<output>B459D90D9A6C392E5493BC91CF5A0863</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000800000000000000000000000</input>
-			<output>0518A9FA5007F6787E0FB4E5AC27D758</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000400000000000000000000000</input>
-			<output>BED9795415D28599700ED7952384A963</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000200000000000000000000000</input>
-			<output>F0140421173D60251EF6CAB0229B1B50</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000100000000000000000000000</input>
-			<output>460EB4652B3F6779EA28CB11B37529ED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000080000000000000000000000</input>
-			<output>C4283D351C960A6AC13CD19CCF03AE38</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000040000000000000000000000</input>
-			<output>6815A10047B2C834A798EBDCC6786C75</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000020000000000000000000000</input>
-			<output>99BA19F0CDD5990D0386B32CE56C9C4C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000010000000000000000000000</input>
-			<output>DE76F62C61E07915162DA13E79679DEC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000008000000000000000000000</input>
-			<output>DD0325D6854803D06D1D2277D5FB8D67</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000004000000000000000000000</input>
-			<output>580B71A41DE37D6FAC83CCB0B3BB1C97</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000002000000000000000000000</input>
-			<output>E9B1AB470A1B02EF0FF5E6754A092C96</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000001000000000000000000000</input>
-			<output>8590620F5AF5993B7410282F4126BC1F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000800000000000000000000</input>
-			<output>8D4914D2F1B22B2E268E66E532D29D7C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000400000000000000000000</input>
-			<output>FD826CE48E62C5E30867044B86BA4B56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000200000000000000000000</input>
-			<output>100E7B831C9F35FA1271F5F1316C6FCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000100000000000000000000</input>
-			<output>0A2DD0C17F68B996AA96C007003D0B31</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000080000000000000000000</input>
-			<output>C95F68C57E06B0A2E1F623C83C5D80BF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000040000000000000000000</input>
-			<output>571CAFC92C7C8A5EC54C0741E186905C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000020000000000000000000</input>
-			<output>22514353E95312C112255E1EED0B2DF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000010000000000000000000</input>
-			<output>791A8BF462BD17580BD9152C6D11C6C5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000008000000000000000000</input>
-			<output>5882A0178D548F84A165DB809C60DC28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000004000000000000000000</input>
-			<output>3CE4A90EED4458CA6039E42DDADB71C3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000002000000000000000000</input>
-			<output>D3CBAB261207A16BE2751E77044FD7C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000001000000000000000000</input>
-			<output>24E32B698A7B32217093628B01F424AB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000800000000000000000</input>
-			<output>9F6AFC0AF27CF565110C77E3C24F4F5B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000400000000000000000</input>
-			<output>E088AA5CDA20EF267BB039B00C72C45B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000200000000000000000</input>
-			<output>5CF1018B7E0BA1775601C2E279900360</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000100000000000000000</input>
-			<output>3B1A7388B89FB9416AD8753CF5AF35D2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000080000000000000000</input>
-			<output>137FA4ED00AFCD9F5D8BC0D14BD5837A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000040000000000000000</input>
-			<output>806F5C9B663559BB56F234881E4A3E60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000020000000000000000</input>
-			<output>8069A449152292DF2DE8642992C632B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000010000000000000000</input>
-			<output>37C6CF2A1ABD1B1F1922B46C7B4A280D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000008000000000000000</input>
-			<output>7A2835260E5A0AA2B5DC301800EC8438</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000004000000000000000</input>
-			<output>EE81FAF2F9058213FFCACF281CB8509E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000002000000000000000</input>
-			<output>57F22D93C37129BA331FDBA38E005A1E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000001000000000000000</input>
-			<output>EC798782E87B7D9F780CC3C3A46519B5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000800000000000000</input>
-			<output>43EA28497F5D40E3A4744FA2EDAA42DE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000400000000000000</input>
-			<output>91F004E7DEBF41B3414DD8C5C317372C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000200000000000000</input>
-			<output>C249EAE54E7B4DF43B938C1B4CC28314</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000100000000000000</input>
-			<output>32C289D7EEFB99D2F17AD7B7D45FE1EC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000080000000000000</input>
-			<output>A675FB2E8DDBF810CEF01CF2B728CD2B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000040000000000000</input>
-			<output>A418AAAB6E6921CC731AA8A349386080</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000020000000000000</input>
-			<output>2E2B0F44863E67D9B0215C4ABD60417F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000010000000000000</input>
-			<output>F0AF7CB19E911D481F6426DAEFDD2240</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000008000000000000</input>
-			<output>CB1304DAAA2DF6878F56AC2E0F887E04</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000004000000000000</input>
-			<output>B1B70A7E6A0CD1916D9B78BEA19084AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000002000000000000</input>
-			<output>0CDE9F9BE646A5FCE3436B794A9CFC65</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000001000000000000</input>
-			<output>68C7946D476A0A36674B36AFD7E5DF33</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000800000000000</input>
-			<output>48770159A07DD8DFFF06C80105F8D57C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000400000000000</input>
-			<output>665E62801B3260E3C45BD3BE34DFDEBE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000200000000000</input>
-			<output>4159C1F686BFBE5B0E50BDB0DA532B69</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000100000000000</input>
-			<output>6333100A5A4AD917DC2D4E78A04869A3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000080000000000</input>
-			<output>866A4519AB1D199F25886B89D0539ACC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000040000000000</input>
-			<output>EC0CFD37E4CBC7E8BE385283F7AEA75A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000020000000000</input>
-			<output>CA2F383AACCA0810AA13F3E710621422</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000010000000000</input>
-			<output>1D0EEF6870444F950937831EC0A55D98</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000008000000000</input>
-			<output>37839B35ED6801E7670496D479A95017</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000004000000000</input>
-			<output>02317C8C7098C4F94AB867AC7A49DD8D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000002000000000</input>
-			<output>FFB4CB4E3F7F8BF3367EBD43236518B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000001000000000</input>
-			<output>36BEDEF1E4AA3E4A40A305741713FCBF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000800000000</input>
-			<output>B2DFE3C4870269C1E3FEEC39161540D9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000400000000</input>
-			<output>147EF2518AD45DA0026056ECBF6A3DFA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000200000000</input>
-			<output>027A75E4DE635790E47ACE90D7928804</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000100000000</input>
-			<output>C4CF3CCB59BF87D0AFBD629F48CFBB7B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000080000000</input>
-			<output>35165C93F564C97E1C32EF97E8151A87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000040000000</input>
-			<output>449DE37F7D5A1BBD628ABBE7E061701D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000020000000</input>
-			<output>B1D45EAF218F1799B149BAD677FE129F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000010000000</input>
-			<output>BE08AC6DB6BD0583AA9D2ABC71C73DCD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000008000000</input>
-			<output>BCC835BD3DF1A79E4C7C145B899A5C25</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000004000000</input>
-			<output>3D311EA611FF5AF371301C58A8E9912D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000002000000</input>
-			<output>A5A1BEA594ACC7CA80F09EA5ADDB5C71</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000001000000</input>
-			<output>0F09492429FE7222D6CD8190D9F2FFBF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000800000</input>
-			<output>816D2220A16B8AAEE71364FD43636C6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000400000</input>
-			<output>D7E8702408419ED73191B107EAF75A0B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000200000</input>
-			<output>9B170EFB1E235B433C78E276BEA082F0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000100000</input>
-			<output>03BBECC5598AE974430F29395522F096</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000080000</input>
-			<output>DB53517766C0E8CF42059607CBA89380</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000040000</input>
-			<output>2E2AF4B7931F0AEFFAC5471148A5BB97</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000020000</input>
-			<output>C872C0408266403B984F635FF5683DE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000010000</input>
-			<output>15DCF750B0E3A68AD1F4EFD07E8967B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000008000</input>
-			<output>B41092048E9E6A749F6FD8CE515A23A3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000004000</input>
-			<output>4DA9267D62507994312BD5C99ADDE730</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000002000</input>
-			<output>9E2FCA6D1D626E9C6A924EBF7DBF618A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000001000</input>
-			<output>E092E8D7EF2C2465AEFB2493C3063590</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000800</input>
-			<output>1C0E58DA37D1068378A88DBE2EDE4E10</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000400</input>
-			<output>19063F854232B8509A6A3A6D46809959</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000200</input>
-			<output>447FB09E54EFA285F7530F25C4EA0022</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000100</input>
-			<output>F6ABE86321BE40E1FBFDAFED37CC1D9B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000080</input>
-			<output>4E8506CD006666341D6CF51F98B41F35</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000040</input>
-			<output>53995DE0009CA18BECAFB8307C54C14C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000020</input>
-			<output>2006BF99F4C58B6CC2627856593FAEEA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000010</input>
-			<output>2DA697D2737CB30B744A4644FA1CBC6E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000008</input>
-			<output>47A22ACDB60C3A986A8F76ECD0EA3433</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000004</input>
-			<output>FDAA17C2CDE20268FE36E164EA532151</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000002</input>
-			<output>98E7247C07F0FE411C267E4384B0F600</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000001</input>
-			<output>CD33B28AC773F74BA00ED1F312572435</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>80000000000000000000000000000000</input>
-			<output>DDC6BF790C15760D8D9AEB6F9A75FD4E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>40000000000000000000000000000000</input>
-			<output>C7098C217C334D0C9BDF37EA13B0822C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>20000000000000000000000000000000</input>
-			<output>60F0FB0D4C56A8D4EEFEC5264204042D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>10000000000000000000000000000000</input>
-			<output>73376FBBF654D0686E0E84001477106B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>08000000000000000000000000000000</input>
-			<output>2F443B52BA5F0C6EA0602C7C4FD259B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>04000000000000000000000000000000</input>
-			<output>75D11B0E3A68C4223D88DBF017977DD7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>02000000000000000000000000000000</input>
-			<output>779B38D15BFFB63D8D609D551A5CC98E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>01000000000000000000000000000000</input>
-			<output>5275F3D86B4FB8684593133EBFA53CD3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00800000000000000000000000000000</input>
-			<output>1CEF2074B336CEC62F12DEA2F6AB1481</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00400000000000000000000000000000</input>
-			<output>1AEF5ABBAD9D7160874578DCD8BAE172</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00200000000000000000000000000000</input>
-			<output>46C525DB17E72F26BF03216846B6F609</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00100000000000000000000000000000</input>
-			<output>E24411F941BBE08788781E3EC52CBAA4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00080000000000000000000000000000</input>
-			<output>83A3DEDD1DD27018F6A6477E40527581</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00040000000000000000000000000000</input>
-			<output>B68F8A2CDBAB0C923C67FC8F0F1087DE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00020000000000000000000000000000</input>
-			<output>649944A70C32BF87A7409E7AE128FDE8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00010000000000000000000000000000</input>
-			<output>2846526D67387539C89314DE9E0C2D02</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00008000000000000000000000000000</input>
-			<output>A9A0B8402E53C70DD1688054BA58DDFD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00004000000000000000000000000000</input>
-			<output>4A72E6E1B79C83AC4BE3EBA5699EED48</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00002000000000000000000000000000</input>
-			<output>B0E36B867BA4FF2B77D0614B0E364E4C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00001000000000000000000000000000</input>
-			<output>49B57DE141F6418E3090F24DDD4014B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000800000000000000000000000000</input>
-			<output>A6C0D5B9797258E1987AC5F6CD20146D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000400000000000000000000000000</input>
-			<output>426CF4BDCAA369175965D26E7C71EEA2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000200000000000000000000000000</input>
-			<output>E27F484CE54BC99BC1A52BDA3B518A26</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000100000000000000000000000000</input>
-			<output>D16D186284C7E6EE64B8104E0EF20BA5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000080000000000000000000000000</input>
-			<output>6431F8538AD54E1E044A9F71F8EF556B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000040000000000000000000000000</input>
-			<output>ECD57CEB451D27EB96C55B2042257E8E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000020000000000000000000000000</input>
-			<output>4F0F188DC911B1954AFBC734C9F68872</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000010000000000000000000000000</input>
-			<output>B54DEF0337626B65614E81EDFDE620F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000008000000000000000000000000</input>
-			<output>6655D8074CAE0B90B0D3A3FE72D4D9DB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000004000000000000000000000000</input>
-			<output>C6B74B6B9EB4FC0C9A237DB1B616D09A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000002000000000000000000000000</input>
-			<output>D7B5D076EA56EC2B20791D7AD51CCF8F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000001000000000000000000000000</input>
-			<output>FE160C224BF003CE3BDDC90CB52ED22C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000800000000000000000000000</input>
-			<output>5E00DA9BA94B5EC0D258D8A8002E0F6A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000400000000000000000000000</input>
-			<output>09AC6DCFF4DACFF1651E2BA212A292A3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000200000000000000000000000</input>
-			<output>B283617E318D99AF83A05D9810BA89F7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000100000000000000000000000</input>
-			<output>0B5F70CCB40B0EF2538AE9B4A9770B35</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000080000000000000000000000</input>
-			<output>43282BF180248FB517839B37F4DDAAE4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000040000000000000000000000</input>
-			<output>DDBD534C8B2E6D30A268F88C55AD765B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000020000000000000000000000</input>
-			<output>A41A164E50EC2D9F175E752B755E0B5C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000010000000000000000000000</input>
-			<output>37BFF99FF2F7AA97779E4ADF6F13FB10</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000008000000000000000000000</input>
-			<output>9BA4F7BD298152903A683C4CEC669216</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000004000000000000000000000</input>
-			<output>5FB750C7CE10DE7B4504248914D0DA06</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000002000000000000000000000</input>
-			<output>3E748BFA108E086F51D56EC74A9E0FB9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000001000000000000000000000</input>
-			<output>31D4E56B99F5B73C1B8437DF332AFB98</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000800000000000000000000</input>
-			<output>9DC6717B84FC55D266E7B1D9B5C52A5F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000400000000000000000000</input>
-			<output>8EF8BA007F23C0A50FC120E07041BCCD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000200000000000000000000</input>
-			<output>C58F38E1839FC1918A12B8C9E88C66B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000100000000000000000000</input>
-			<output>B695D72A3FCF508C4050E12E40061C2D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000080000000000000000000</input>
-			<output>5D2736AD478A50583BC8C11BEFF16D7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000040000000000000000000</input>
-			<output>DF0EACA8F17847AD41F9578F14C7B56B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000020000000000000000000</input>
-			<output>E5AA14AD48AD0A3C47CC35D5F8020E51</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000010000000000000000000</input>
-			<output>11BE6C8F58EBD8CEF1A53F591A68E8CE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000008000000000000000000</input>
-			<output>ECFE7BAFCBF42C1FEE015488770B3053</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000004000000000000000000</input>
-			<output>E552649F8D8EC4A1E1CD6DF50B6E6777</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000002000000000000000000</input>
-			<output>521C0629DE93B9119CDB1DDC5809DDEA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000001000000000000000000</input>
-			<output>CB38A62A0BAB1784156BA038CBA99BF6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000800000000000000000</input>
-			<output>76CCEE8AAACD394DE1EEF3DDA10CB54B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000400000000000000000</input>
-			<output>6AFF910FA1D5673140E2DB59B8416049</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000200000000000000000</input>
-			<output>064A12C0EF73FB386801BF4F35F3120D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000100000000000000000</input>
-			<output>2240E374929D5B1BB8FF0FFDDDF640EC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000080000000000000000</input>
-			<output>D4BA15C904C7692185DE85C02052E180</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000040000000000000000</input>
-			<output>1714A315AB0166728A44CD91D4AE9018</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000020000000000000000</input>
-			<output>6C970BDD9F0E222722EA31A1D12DD0AD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000010000000000000000</input>
-			<output>F5956EDF02BD36A401BBB6CE77C3D3FB</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000008000000000000000</input>
-			<output>0CA11F122CCD7C259DC597EED3DF9BC4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000004000000000000000</input>
-			<output>50109AB4912AD2560B206F331B62EB6C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000002000000000000000</input>
-			<output>DBE7C91A4175614889A2D4BEFD64845E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000001000000000000000</input>
-			<output>0D3322853A571A6B46B79C0228E0DD25</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000800000000000000</input>
-			<output>96E4EE0BB9A11C6FB8522F285BADDEB6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000400000000000000</input>
-			<output>96705C52D2CFCE82E630C93477C79C49</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000200000000000000</input>
-			<output>C50130AED6A126149D71F3888C83C232</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000100000000000000</input>
-			<output>4816EFE3DEB380566EBA0C17BF582090</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000080000000000000</input>
-			<output>0390857B4C8C98E4CF7A2B6F3394C507</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000040000000000000</input>
-			<output>422E73A02025EBE8B8B5D6E0FA24FCB2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000020000000000000</input>
-			<output>3271AA7F4BF1D7C38050A43076D4FF76</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000010000000000000</input>
-			<output>D2074946F0D37B8975607BFC2E70234C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000008000000000000</input>
-			<output>1A509194C1270AB92E5A42D3A9F8D98B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000004000000000000</input>
-			<output>512438946360CCC4A5C6D73F6EED7130</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000002000000000000</input>
-			<output>98CFCDEC46EBEA1A286B3004F2746A0D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000001000000000000</input>
-			<output>A1CF369949677A3AF3D58E3EABF2741B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000800000000000</input>
-			<output>D84C2E1A0E4A52166FA8FF6889D1E5E2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000400000000000</input>
-			<output>4AD91CCEEF60119B5078FD162D2735DE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000200000000000</input>
-			<output>2860793D818E97AAFF1D339D7702438D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000100000000000</input>
-			<output>6F9068BE73364AE250D89D78A6C9CE6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000080000000000</input>
-			<output>024FC3FEF4883FEB1A8DD005305FECCE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000040000000000</input>
-			<output>08A61FE0816D75EA15EB3C9FB9CCDED6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000020000000000</input>
-			<output>449C86DFA13F260175CE39797686FFA4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000010000000000</input>
-			<output>4FFFFC29A59858E1133F2BFB1A8A4817</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000008000000000</input>
-			<output>19425D1F6480B25096561295697DC2B7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000004000000000</input>
-			<output>31974727ECDD2C77C3A428FC3A8CB3FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000002000000000</input>
-			<output>A57CD704B3C95E744D08DF443458F2F5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000001000000000</input>
-			<output>486D8C193DB1ED73ACB17990442FC40B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000800000000</input>
-			<output>5E4DBF4E83AB3BC055B9FCC7A6B3A763</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000400000000</input>
-			<output>ACF2E0A693FBBCBA4D41B861E0D89E37</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000200000000</input>
-			<output>32A7CB2AE066A51D2B78FC4B4CFCB608</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000100000000</input>
-			<output>677D494DBB73CAF55C1990158DA12F14</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000080000000</input>
-			<output>082A0D2367512ADF0D75A151BFBE0A17</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000040000000</input>
-			<output>5E5BB7337923C482CE8CBA249E6A8C7D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000020000000</input>
-			<output>D3001BA7C7026EE3E5003179530AFCFC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000010000000</input>
-			<output>46EC44F8931E629FE8FD8961312EDDE1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000008000000</input>
-			<output>C5F8ECD79C7B30E81D17E32079969310</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000004000000</input>
-			<output>5B8AD6919E24CAEBCC55401AEE0C9802</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000002000000</input>
-			<output>C2302B7E701B5CC7F8B29E3516DBBFA6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000001000000</input>
-			<output>A1D04D6A76F9F7A94D49FAA64A87F244</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000800000</input>
-			<output>7FB6F92D35B5CB6C631600EDB9E860BA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000400000</input>
-			<output>B2EF7078BCFACE07AEEC3F9B48830EB3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000200000</input>
-			<output>F475A7493D24C7036E53390374C378B3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000100000</input>
-			<output>B36802AC987377A37BD8EADC97C57D60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000080000</input>
-			<output>ADDCD3D19689C4DDC738CE5F69DC9505</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000040000</input>
-			<output>0DAF8CA22884915403C0F0BB1F4BD74F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000020000</input>
-			<output>4AF36BAE2660503B3248E4685059FD05</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000010000</input>
-			<output>7D5631814DD8E917D97A0D514C743971</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000008000</input>
-			<output>BC3352500FC0CBB9DB5B5F6B491C1BE8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000004000</input>
-			<output>6A4A30BA87E87AF65C90AEB7AFEDC76B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000002000</input>
-			<output>77E6125897668AC8E73E8C79A6FF8336</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000001000</input>
-			<output>3FA9D39104EBB323C7AAAA248960DD1E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000800</input>
-			<output>FAD75AD76AB10ADC49036B250E229D39</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000400</input>
-			<output>2FACAA5FE35B228A16AC74088D702EC4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000200</input>
-			<output>88B6CBCFDFEF8AD91720A1BB69A1F33E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000100</input>
-			<output>C7E9D250998632D444356242EF04058D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000080</input>
-			<output>B14DAD8D3D9153F46C0D3A1AD63C7A05</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000040</input>
-			<output>60ABA678A506608D0845966D29B5F790</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000020</input>
-			<output>482DC43F2388EF25D24144E144BD834E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000010</input>
-			<output>1490A05A7CEE43BDE98B56E309DC0126</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000008</input>
-			<output>ABFA77CD6E85DA245FB0BDC5E52CFC29</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000004</input>
-			<output>DD4AB1284D4AE17B41E85924470C36F7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000002</input>
-			<output>CEA7403D4D606B6E074EC5D3BAF39D18</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000001</input>
-			<output>530F8AFBC74536B9A963B4F1C4CB738B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC128.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6801 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Dec 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>FACA37E0B0C85373DF706E73F7C9AF86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FACA37E0B0C85373DF706E73F7C9AF86</key>
-			<iv>52D0C29FF8793A519BD6A8289FC80E6A</iv>
-			<input>FACA37E0B0C85373DF706E73F7C9AF86</input>
-			<output>F5372F9735C5685F1DA362AF6ECB2940</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0FFD1877850D3B2CC2D30CDC990286C6</key>
-			<iv>DD74BB1AC6F0F866C7992C61F59D5594</iv>
-			<input>F5372F9735C5685F1DA362AF6ECB2940</input>
-			<output>5496A4C29C7670F61B5D5DF6181F5947</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5B6BBCB5197B4BDAD98E512A811DDF81</key>
-			<iv>3795C88134F7C011433397D1443FEB3A</iv>
-			<input>5496A4C29C7670F61B5D5DF6181F5947</input>
-			<output>940CC5A2AF4F1F8D1862B47BCF63E4CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CF677917B6345457C1ECE5514E7E3B4B</key>
-			<iv>0FC1413900225B47AF9E139E1650EA23</iv>
-			<input>940CC5A2AF4F1F8D1862B47BCF63E4CA</input>
-			<output>08832415D97820DE305A58A9AD111A9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C7E45D026F4C7489F1B6BDF8E36F21D5</key>
-			<iv>3032F64674FA243D61DF8C16313D81F3</iv>
-			<input>08832415D97820DE305A58A9AD111A9E</input>
-			<output>BD4089775FD1BDB0A6C4F36D1DDAA93E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7AA4D475309DC93957724E95FEB588EB</key>
-			<iv>47D7F440B43888F173AE5A492F1A99F8</iv>
-			<input>BD4089775FD1BDB0A6C4F36D1DDAA93E</input>
-			<output>AB9955F74612859267D61FEA85A75ADC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D13D8182768F4CAB30A4517F7B12D237</key>
-			<iv>6D9E57242195D27771D1C7A748378AB0</iv>
-			<input>AB9955F74612859267D61FEA85A75ADC</input>
-			<output>168F213FB678D8A46D0E55EFD1C49BB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C7B2A0BDC0F7940F5DAA0490AAD64984</key>
-			<iv>1B98968FB5ABD95930525C1257DEB364</iv>
-			<input>168F213FB678D8A46D0E55EFD1C49BB3</input>
-			<output>3C4CEECFF9560501C5D8C901D87C8E7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FBFE4E7239A1910E9872CD9172AAC7FF</key>
-			<iv>35EB7B6D3F63AAE927C5346C9C2CB91D</iv>
-			<input>3C4CEECFF9560501C5D8C901D87C8E7B</input>
-			<output>9D206BE0CC60296BF3A486A8C69778EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>66DE2592F5C1B8656BD64B39B43DBF10</key>
-			<iv>226646B36D8E9B9279F94378CCBF8FBA</iv>
-			<input>9D206BE0CC60296BF3A486A8C69778EF</input>
-			<output>9DA7B8094BD0F0BEA26848C84B8E083C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FB799D9BBE1148DBC9BE03F1FFB3B72C</key>
-			<iv>3E3A2B0E1C70A19BCD7222708AA94F26</iv>
-			<input>9DA7B8094BD0F0BEA26848C84B8E083C</input>
-			<output>6A93B2F318C14C2D3E58455B86A4F5D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91EA2F68A6D004F6F7E646AA791742FB</key>
-			<iv>1F256942B3CD691858A20664BB24545E</iv>
-			<input>6A93B2F318C14C2D3E58455B86A4F5D7</input>
-			<output>4A19AC6C6FEB654D3675A2BE32E5A820</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DBF38304C93B61BBC193E4144BF2EADB</key>
-			<iv>631F2EDE05C1C950BCE67DF53BA53ED6</iv>
-			<input>4A19AC6C6FEB654D3675A2BE32E5A820</input>
-			<output>799EAB8E9C864A13490FD6B089F764C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A26D288A55BD2BA8889C32A4C2058E1E</key>
-			<iv>F6AD064E0DBF4AF4AA5165E1FE0E86FA</iv>
-			<input>799EAB8E9C864A13490FD6B089F764C5</input>
-			<output>2FA3F38CA1216C6D911C1779F333413E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8DCEDB06F49C47C5198025DD3136CF20</key>
-			<iv>DA039AC5F4EDCD84472B23CFA1252EC3</iv>
-			<input>2FA3F38CA1216C6D911C1779F333413E</input>
-			<output>2FC703AD6A7DAF8B0BDDD8586C1D67D0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A209D8AB9EE1E84E125DFD855D2BA8F0</key>
-			<iv>341B5FDA8AB434461A7B7A87EF0C530C</iv>
-			<input>2FC703AD6A7DAF8B0BDDD8586C1D67D0</input>
-			<output>54723CABFBE32DEEDFEBF4292A5710FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F67BE4006502C5A0CDB609AC777CB80A</key>
-			<iv>2C42AD577B0BE057555C3FCB6FC0089E</iv>
-			<input>54723CABFBE32DEEDFEBF4292A5710FA</input>
-			<output>6B1E2A8C1A9CBB95D1B34AAFE15A78D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D65CE8C7F9E7E351C0543039626C0D9</key>
-			<iv>E5E06583A834BF16118ED5FA401A2D6F</iv>
-			<input>6B1E2A8C1A9CBB95D1B34AAFE15A78D3</input>
-			<output>F4E57BFAB65375B3AD49CD78814F0C16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6980B576C9CD0B86B14C8E7B1769CCCF</key>
-			<iv>71E59389FF6F992225B32960593F9362</iv>
-			<input>F4E57BFAB65375B3AD49CD78814F0C16</input>
-			<output>90A31B5934FCF6822526C973114BD953</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F923AE2FFD31FD04946A47080622159C</key>
-			<iv>2A4B31492B9BAEC402C255978BB96D40</iv>
-			<input>90A31B5934FCF6822526C973114BD953</input>
-			<output>61F88BA8D438A0FD23F0101465C7FD4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>98DB258729095DF9B79A571C63E5E8D2</key>
-			<iv>607640CEA12DCF7F188B2B65C7F4153D</iv>
-			<input>61F88BA8D438A0FD23F0101465C7FD4E</input>
-			<output>F62D206DF53F41CA898F3A8EB6A843FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6EF605EADC361C333E156D92D54DAB2D</key>
-			<iv>D69C32E12303361B465BE9A484BCA723</iv>
-			<input>F62D206DF53F41CA898F3A8EB6A843FF</input>
-			<output>364BC3F9FDA5FB1AEEA7691550A58320</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58BDC6132193E729D0B2048785E8280D</key>
-			<iv>C207B8347B8DB8BC6845827BB6986B0E</iv>
-			<input>364BC3F9FDA5FB1AEEA7691550A58320</input>
-			<output>DAA6386A073CD1653E9A9DB0A97970BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>821BFE7926AF364CEE2899372C9158B7</key>
-			<iv>6C5D2B186393280253D6922A8421C3A9</iv>
-			<input>DAA6386A073CD1653E9A9DB0A97970BA</input>
-			<output>AAF74F0E0A0141A811853AE8B120BC00</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>28ECB1772CAE77E4FFADA3DF9DB1E4B7</key>
-			<iv>3CB62EF0E649027DDDB76206D0F4D355</iv>
-			<input>AAF74F0E0A0141A811853AE8B120BC00</input>
-			<output>22A0F9611447C1A85F397DD79E3206F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0A4C481638E9B64CA094DE080383E24E</key>
-			<iv>C4320FA90686AE0F9E979CBF1391F6D6</iv>
-			<input>22A0F9611447C1A85F397DD79E3206F9</input>
-			<output>1871ABDEAA7E057E76D41ED9191FAC39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>123DE3C89297B332D640C0D11A9C4E77</key>
-			<iv>FBFD18AADF7C5E8E96EB976A535BF312</iv>
-			<input>1871ABDEAA7E057E76D41ED9191FAC39</input>
-			<output>BF52994F41B1DEF78C6A057642C52D89</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD6F7A87D3266DC55A2AC5A7585963FE</key>
-			<iv>C195141578ADF4C92113C8A9A63FF072</iv>
-			<input>BF52994F41B1DEF78C6A057642C52D89</input>
-			<output>3EAFB00E3B4A0E6DF74743A7EDAD0FE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>93C0CA89E86C63A8AD6D8600B5F46C1A</key>
-			<iv>D1C4E98C4A9AC79B7CCBC052ACF78913</iv>
-			<input>3EAFB00E3B4A0E6DF74743A7EDAD0FE4</input>
-			<output>4393544AB2387A93496D683C2B8970C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D0539EC35A54193BE400EE3C9E7D1CDD</key>
-			<iv>80517C6341DAF4DCBCCAE452F3040147</iv>
-			<input>4393544AB2387A93496D683C2B8970C7</input>
-			<output>51DAC594293708A918E9EFC04F7F2F1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>81895B5773631192FCE901FCD10233C1</key>
-			<iv>69DE50406B4E3E8A94C1367E1E3D5464</iv>
-			<input>51DAC594293708A918E9EFC04F7F2F1C</input>
-			<output>035B64F06C8166000C82BF15CC88446D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82D23FA71FE27792F06BBEE91D8A77AC</key>
-			<iv>8EA2E38145BBD79881B7EB31B8818A21</iv>
-			<input>035B64F06C8166000C82BF15CC88446D</input>
-			<output>F3EFFA770A21741551F309E1967CC2E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>713DC5D015C30387A198B7088BF6B548</key>
-			<iv>0DCAA309668E11509828152553FF2306</iv>
-			<input>F3EFFA770A21741551F309E1967CC2E4</input>
-			<output>62BA0548E7AD136BEB4E38AECD7942D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1387C098F26E10EC4AD68FA6468FF791</key>
-			<iv>D031FCA5F3C88926CC3BDDC448537B69</iv>
-			<input>62BA0548E7AD136BEB4E38AECD7942D9</input>
-			<output>38E3D4C7AF0C3E494F1D580AC5430634</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2B64145F5D622EA505CBD7AC83CCF1A5</key>
-			<iv>6FFA5A45EDA60294B0224EEB8C36C455</iv>
-			<input>38E3D4C7AF0C3E494F1D580AC5430634</input>
-			<output>2231EB6A6588CBCB56B930B7F1CF9E04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0955FF3538EAE56E5372E71B72036FA1</key>
-			<iv>B5375674631ECC3334A318993CB81F9A</iv>
-			<input>2231EB6A6588CBCB56B930B7F1CF9E04</input>
-			<output>59692274C130D6820287EA10F7E64602</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>503CDD41F9DA33EC51F50D0B85E529A3</key>
-			<iv>A93D6E028B5C2BD17A29C6CA1617A0A2</iv>
-			<input>59692274C130D6820287EA10F7E64602</input>
-			<output>5975A95327DE7749EA8DEDC580E5E8C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>09497412DE0444A5BB78E0CE0500C164</key>
-			<iv>26E00CB161145FCD00C39BC4FB1E5CBB</iv>
-			<input>5975A95327DE7749EA8DEDC580E5E8C7</input>
-			<output>D1F7E36BC8FF4439820CB617E745A9CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D8BE977916FB009C397456D9E24568A8</key>
-			<iv>72E78D9E15C8FBA864C6C40CEBB190B8</iv>
-			<input>D1F7E36BC8FF4439820CB617E745A9CC</input>
-			<output>76FB4F20C902E9AA89854440631092B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE45D859DFF9E936B0F112998155FA1D</key>
-			<iv>4B6C585FEF52490EA62BAAD08FAA3DCF</iv>
-			<input>76FB4F20C902E9AA89854440631092B5</input>
-			<output>6D7D4487DCD624B2FC5002DFE7D2D347</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C3389CDE032FCD844CA110466687295A</key>
-			<iv>E94FD23A598DDE077CD1DAEE97FDADD9</iv>
-			<input>6D7D4487DCD624B2FC5002DFE7D2D347</input>
-			<output>7297F8F85B21E1A5CB902DCC5F6738F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B1AF6426580E2C2187313D8A39E011A3</key>
-			<iv>86E495D31EEFCBC30064414FBD78FAE5</iv>
-			<input>7297F8F85B21E1A5CB902DCC5F6738F9</input>
-			<output>4A6978AACC6968931FB1B83D53D31FEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FBC61C8C946744B2988085B76A330E4C</key>
-			<iv>6BA7664AB5ED4F7956D6C3FAA7C42961</iv>
-			<input>4A6978AACC6968931FB1B83D53D31FEF</input>
-			<output>6B63FAAF9DB43A2B6025F29B1D6A331C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>90A5E62309D37E99F8A5772C77593D50</key>
-			<iv>37D17D1702EA34A3C75376AA0F9D24AD</iv>
-			<input>6B63FAAF9DB43A2B6025F29B1D6A331C</input>
-			<output>8317A07BEE0BF16B88D7D197884AC6CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>13B24658E7D88FF27072A6BBFF13FB9F</key>
-			<iv>29B89B238062495C260AF44C63AA809F</iv>
-			<input>8317A07BEE0BF16B88D7D197884AC6CF</input>
-			<output>0443BFEBCA7C85CBD0CB66AB9D75425D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>17F1F9B32DA40A39A0B9C0106266B9C2</key>
-			<iv>08CF82854AE07429C4A866AA727CEA2E</iv>
-			<input>0443BFEBCA7C85CBD0CB66AB9D75425D</input>
-			<output>6B1EB033CB844F9BDD96BA2C67D139C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7CEF4980E62045A27D2F7A3C05B78005</key>
-			<iv>05579F3E0017EBF6083756DC0A50A2E9</iv>
-			<input>6B1EB033CB844F9BDD96BA2C67D139C7</input>
-			<output>E7904CBFB41EBE4178B4D633AFC9B311</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9B7F053F523EFBE3059BAC0FAA7E3314</key>
-			<iv>E6B2CB0CE57E02A230DCD16C08614823</iv>
-			<input>E7904CBFB41EBE4178B4D633AFC9B311</input>
-			<output>96EAAA148F05FAD1F0FC06E135EC5DF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0D95AF2BDD3B0132F567AAEE9F926EEC</key>
-			<iv>4268294B10AD58BE9E570A9485963682</iv>
-			<input>96EAAA148F05FAD1F0FC06E135EC5DF8</input>
-			<output>9F2F712F62DE747EE479A0A74384B196</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>92BADE04BFE5754C111E0A49DC16DF7A</key>
-			<iv>A5C558F5D4658089CD9FB295EDAE64DB</iv>
-			<input>9F2F712F62DE747EE479A0A74384B196</input>
-			<output>9CF7F00094C4E2D96D752C2312FC135E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0E4D2E042B2197957C6B266ACEEACC24</key>
-			<iv>1CE301F294BDF4C906E5F0A6FA7C22BB</iv>
-			<input>9CF7F00094C4E2D96D752C2312FC135E</input>
-			<output>ABA58D548DB6E9BE977FDDC85E16C2DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A5E8A350A6977E2BEB14FBA290FC0EFA</key>
-			<iv>66C1FF1E4B52A3542B48306EC33F171D</iv>
-			<input>ABA58D548DB6E9BE977FDDC85E16C2DE</input>
-			<output>802948E1A5177FBE97ABA26B996FDF1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>25C1EBB1038001957CBF59C90993D1E1</key>
-			<iv>197A546DEB2E19E17507276B9ED95135</iv>
-			<input>802948E1A5177FBE97ABA26B996FDF1B</input>
-			<output>67D931C0946ECDF2F8E41000726D1A56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4218DA7197EECC67845B49C97BFECBB7</key>
-			<iv>D11DA3CE92ADA0686F7BF12A4796D9F7</iv>
-			<input>67D931C0946ECDF2F8E41000726D1A56</input>
-			<output>386C68821385E8CFCDD5678FE2AA89F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7A74B2F3846B24A8498E2E469954424F</key>
-			<iv>4DDE413EBC3F30E2F3A9F48DA1258DAF</iv>
-			<input>386C68821385E8CFCDD5678FE2AA89F8</input>
-			<output>1638C741EFE3B1CC45C7754783350825</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6C4C75B26B8895640C495B011A614A6A</key>
-			<iv>5B4F013B085E3A04A16A409E8C3BB270</iv>
-			<input>1638C741EFE3B1CC45C7754783350825</input>
-			<output>91AB00C3828D3DF72BEC487EF4652567</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FDE77571E905A89327A5137FEE046F0D</key>
-			<iv>98074F522144682FF1498C61581F8B0E</iv>
-			<input>91AB00C3828D3DF72BEC487EF4652567</input>
-			<output>BC5BA874D2F3039837528993FB275EBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>41BCDD053BF6AB0B10F79AEC152331B7</key>
-			<iv>B65C1A6F80CA024B92176D57061ECDFE</iv>
-			<input>BC5BA874D2F3039837528993FB275EBA</input>
-			<output>B7DE1BEE1867F4DC3F974E0D8B416DB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F662C6EB23915FD72F60D4E19E625C07</key>
-			<iv>7268C08FA807D83C9830F54A59F32662</iv>
-			<input>B7DE1BEE1867F4DC3F974E0D8B416DB0</input>
-			<output>19769B9EB30B8DE5FD640ACE78F01F0A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EF145D75909AD232D204DE2FE692430D</key>
-			<iv>B260792BAB22BAAB6CCF3AE1DD3A0F85</iv>
-			<input>19769B9EB30B8DE5FD640ACE78F01F0A</input>
-			<output>2079F2C0A0DE164CD41FCE29D8CE3178</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CF6DAFB53044C47E061B10063E5C7275</key>
-			<iv>6ABCE7B41E112B91B8E6BC0DBE37600C</iv>
-			<input>2079F2C0A0DE164CD41FCE29D8CE3178</input>
-			<output>0D3A678FAB06E743A9134C103B39B61D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C257C83A9B42233DAF085C160565C468</key>
-			<iv>CEB1E776DBEF46BF8B949C0AF0EBEAD2</iv>
-			<input>0D3A678FAB06E743A9134C103B39B61D</input>
-			<output>80339ADB34BCDE3384D66170373AEEAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>426452E1AFFEFD0E2BDE3D66325F2AC4</key>
-			<iv>EAAC373FCA05E610C1C5D4437AFD5631</iv>
-			<input>80339ADB34BCDE3384D66170373AEEAC</input>
-			<output>38D52D75E5783A08FBFE622633D6CF47</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7AB17F944A86C706D0205F400189E583</key>
-			<iv>2A25ED6933CAAA95569ADA1AC7480942</iv>
-			<input>38D52D75E5783A08FBFE622633D6CF47</input>
-			<output>3204F1EACBB520A69F0939F45BC82041</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48B58E7E8133E7A04F2966B45A41C5C2</key>
-			<iv>9C6819799DAF61111ACC3C0ECEB0F8BF</iv>
-			<input>3204F1EACBB520A69F0939F45BC82041</input>
-			<output>16BD33EE541798BEE114E9D7F9141A9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E08BD90D5247F1EAE3D8F63A355DF5E</key>
-			<iv>C181F4DF1EE0E13BF76044A3DA5E3BC4</iv>
-			<input>16BD33EE541798BEE114E9D7F9141A9C</input>
-			<output>A0A68CF016C6AD8DAC4D5634EAADEBE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FEAE3160C3E2D2930270D95749F834BB</key>
-			<iv>2A4EE2CD011AF421616789DB790354FD</iv>
-			<input>A0A68CF016C6AD8DAC4D5634EAADEBE5</input>
-			<output>FCE7D92FD0B3A1C7920558F653E1019B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0249E84F13517354907581A11A193520</key>
-			<iv>A7F7E2B701F34F308C0F28514DFAA15F</iv>
-			<input>FCE7D92FD0B3A1C7920558F653E1019B</input>
-			<output>F16A084B2DE16D5E3E5405665DE3C623</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F323E0043EB01E0AAE2184C747FAF303</key>
-			<iv>6D319828AAA75DFE99BEEDD21B983C7D</iv>
-			<input>F16A084B2DE16D5E3E5405665DE3C623</input>
-			<output>CE20AE629887DF02064F2D9DB092E1DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3D034E66A637C108A86EA95AF76812D8</key>
-			<iv>9484E76149F41901AF8AFD3152C56506</iv>
-			<input>CE20AE629887DF02064F2D9DB092E1DB</input>
-			<output>B457A655282213C1B7C5C2A206C7FCB9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8954E8338E15D2C91FAB6BF8F1AFEE61</key>
-			<iv>329E089DC915BD71B1F8D0713BFC4F97</iv>
-			<input>B457A655282213C1B7C5C2A206C7FCB9</input>
-			<output>A89B8F7541FFF719A3C7DE1577CE1C3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>21CF6746CFEA25D0BC6CB5ED8661F25E</key>
-			<iv>FA381CAC5777234E6DF8A28A4E6671D8</iv>
-			<input>A89B8F7541FFF719A3C7DE1577CE1C3F</input>
-			<output>C4E73D25647350527C1F93F6C1D90296</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E5285A63AB997582C073261B47B8F0C8</key>
-			<iv>082ACF3D2661514F0E00BDABC9015946</iv>
-			<input>C4E73D25647350527C1F93F6C1D90296</input>
-			<output>34BF6DECECFE1C9AE3AA34B6DB3741EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D197378F4767691823D912AD9C8FB127</key>
-			<iv>3E56B658F899B6DBBA4EAF6E629F3555</iv>
-			<input>34BF6DECECFE1C9AE3AA34B6DB3741EF</input>
-			<output>FD86C78538176DC5D48BE2EC6B89D581</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2C11F00A7F7004DDF752F041F70664A6</key>
-			<iv>765B823193F2738E6CACBB0154C941B1</iv>
-			<input>FD86C78538176DC5D48BE2EC6B89D581</input>
-			<output>524E035AB9DEB29E467B9586A90F3A42</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7E5FF350C6AEB643B12965C75E095EE4</key>
-			<iv>DE2B3EC0A3FF29EC67BBE1B124E9451A</iv>
-			<input>524E035AB9DEB29E467B9586A90F3A42</input>
-			<output>83DE1E768EED94BA09E623845A057834</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FD81ED26484322F9B8CF4643040C26D0</key>
-			<iv>A5CF4D996D8460E71DDA938461BB884B</iv>
-			<input>83DE1E768EED94BA09E623845A057834</input>
-			<output>D8381D17B9BCF942F408DBB2B7B2D6B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>25B9F031F1FFDBBB4CC79DF1B3BEF067</key>
-			<iv>899696B8EDC4E8B60489742A2559C909</iv>
-			<input>D8381D17B9BCF942F408DBB2B7B2D6B7</input>
-			<output>BF1D8175015D0A0341427DE1F7DDE379</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9AA47144F0A2D1B80D85E0104463131E</key>
-			<iv>AD76D13B2F2A3F938F5C810A38A83D09</iv>
-			<input>BF1D8175015D0A0341427DE1F7DDE379</input>
-			<output>58114DEFF8CFF10F06B390EB01B13394</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2B53CAB086D20B70B3670FB45D2208A</key>
-			<iv>9EC540C144AB57D4E5A9185F55E71E50</iv>
-			<input>58114DEFF8CFF10F06B390EB01B13394</input>
-			<output>53E72B9603CE221F0160791DF51F6B3E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9152173D0BA302A80A5609E6B0CD4BB4</key>
-			<iv>B780257238CA60FD998819B2D04CEB92</iv>
-			<input>53E72B9603CE221F0160791DF51F6B3E</input>
-			<output>AF0238554AAFFB0FB5DFAC35E3CE8F4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3E502F68410CF9A7BF89A5D35303C4F8</key>
-			<iv>3509BC884089ADEB90137A39AEA75CFC</iv>
-			<input>AF0238554AAFFB0FB5DFAC35E3CE8F4C</input>
-			<output>20844D3F4F637B974D38B7E5F1C84205</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1ED462570E6F8230F2B11236A2CB86FD</key>
-			<iv>52BAB07EB72804630E4BD769F0172FDA</iv>
-			<input>20844D3F4F637B974D38B7E5F1C84205</input>
-			<output>68404E006D2F16572EDFAE636A62C537</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>76942C5763409467DC6EBC55C8A943CA</key>
-			<iv>E4B417D85F36F3A25CF04AB05157F247</iv>
-			<input>68404E006D2F16572EDFAE636A62C537</input>
-			<output>13C8DF4117D4EA3645F1825700F8FFA5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>655CF31674947E51999F3E02C851BC6F</key>
-			<iv>3FE0683442B6B5DF515209DE16F8FD4B</iv>
-			<input>13C8DF4117D4EA3645F1825700F8FFA5</input>
-			<output>42307D929439F2723202A5206D640431</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>276C8E84E0AD8C23AB9D9B22A535B85E</key>
-			<iv>33FAD11D9D4057E7ED989F1520450C32</iv>
-			<input>42307D929439F2723202A5206D640431</input>
-			<output>5ED8AF875ACF37BE8FAAC16D4AB8072B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>79B42103BA62BB9D24375A4FEF8DBF75</key>
-			<iv>807852E5AD0EB5E0C3A2AAF18DFB14F9</iv>
-			<input>5ED8AF875ACF37BE8FAAC16D4AB8072B</input>
-			<output>79C950A45ECDC8B676A5CFF324A81DA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>007D71A7E4AF732B529295BCCB25A2DD</key>
-			<iv>516BC35B52C26C99E21C0147CB7DD99E</iv>
-			<input>79C950A45ECDC8B676A5CFF324A81DA8</input>
-			<output>595C3DDCFBD90661A3A70B94C470A26B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>59214C7B1F76754AF1359E280F5500B6</key>
-			<iv>FDABDD4BD60725F5E640629416F417D3</iv>
-			<input>595C3DDCFBD90661A3A70B94C470A26B</input>
-			<output>7957CF3989083D25B54C6890EC58DB0C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>20768342967E486F4479F6B8E30DDBBA</key>
-			<iv>CADFADF417898DE3786D5DF869396611</iv>
-			<input>7957CF3989083D25B54C6890EC58DB0C</input>
-			<output>6C1E8DF34FC80DD2ECA00A1EDC5FC239</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4C680EB1D9B645BDA8D9FCA63F521983</key>
-			<iv>A7DF9FA44AA2B49B9E26C6148CCAF36F</iv>
-			<input>6C1E8DF34FC80DD2ECA00A1EDC5FC239</input>
-			<output>72B5A426C9DC3B336756FB10B00626CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3EDDAA97106A7E8ECF8F07B68F543F4D</key>
-			<iv>50FF574915D407A97A74CC399DE2D901</iv>
-			<input>72B5A426C9DC3B336756FB10B00626CE</input>
-			<output>194826159D7FAB9166D64F1DD6F627B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>27958C828D15D51FA95948AB59A218FD</key>
-			<iv>A1E3BC848C019B6FC3F7072F9A866C52</iv>
-			<input>194826159D7FAB9166D64F1DD6F627B0</input>
-			<output>0186B2316FC29104D3549C49F92AE414</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>26133EB3E2D7441B7A0DD4E2A088FCE9</key>
-			<iv>4DBA42F1031AE32016524C7F86781528</iv>
-			<input>0186B2316FC29104D3549C49F92AE414</input>
-			<output>373384DB7383D3A4914C0141BB104B81</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1120BA68915497BFEB41D5A31B98B768</key>
-			<iv>FFCB87107AC596D71BA807902D524247</iv>
-			<input>373384DB7383D3A4914C0141BB104B81</input>
-			<output>25465CE5FA2AD65D75586064A18516A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3466E68D6B7E41E29E19B5C7BA1DA1C0</key>
-			<iv>55879596C3F0A295FA00CFEF1B056248</iv>
-			<input>25465CE5FA2AD65D75586064A18516A8</input>
-			<output>2311A52CEC4A16B5F4FCA613BC0BDB83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>177743A1873457576AE513D406167A43</key>
-			<iv>B1A7DABF3D2384BF8754B829659B3989</iv>
-			<input>2311A52CEC4A16B5F4FCA613BC0BDB83</input>
-			<output>357F4BF62308CD5C48F34E9E644DD515</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>22080857A43C9A0B22165D4A625BAF56</key>
-			<iv>72BF477FE8CF428CFA856323E18B3135</iv>
-			<input>357F4BF62308CD5C48F34E9E644DD515</input>
-			<output>17758539D1896B92BFB811D30C9BA134</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>357D8D6E75B5F1999DAE4C996EC00E62</key>
-			<iv>4CBA048DFA50910EC94FE5D6AA5DD502</iv>
-			<input>17758539D1896B92BFB811D30C9BA134</input>
-			<output>372B6DCEE44D18D3791C4E8FB0A91971</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0256E0A091F8E94AE4B20216DE691713</key>
-			<iv>86F4F670CA3B191B860D6C8A9A35A872</iv>
-			<input>372B6DCEE44D18D3791C4E8FB0A91971</input>
-			<output>66D3FABC4885C1F4897D9160C152D570</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>64851A1CD97D28BE6DCF93761F3BC263</key>
-			<iv>08490B2E8588FE564F0112D76D6108E9</iv>
-			<input>66D3FABC4885C1F4897D9160C152D570</input>
-			<output>926278E71894F32B5E2A5A1F5FA695E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F6E762FBC1E9DB9533E5C969409D5784</key>
-			<iv>D3A2E4AFFDD8A7CC1498EF0E812087B7</iv>
-			<input>926278E71894F32B5E2A5A1F5FA695E7</input>
-			<output>A455F5D65D91563D9C15E6B745F29531</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>52B2972D9C788DA8AFF02FDE056FC2B5</key>
-			<iv>6CB8822EA67C247A6A0CBAD830B3562C</iv>
-			<input>A455F5D65D91563D9C15E6B745F29531</input>
-			<output>4544371A5E3A8E7AD9885AECD3868AF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>17F6A037C24203D276787532D6E94846</key>
-			<iv>93E3CAD8BE023F6451ADAA525988A974</iv>
-			<input>4544371A5E3A8E7AD9885AECD3868AF3</input>
-			<output>8473F4F1D77AC1F46706EBD108CB48A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>938554C61538C226117E9EE3DE2200E3</key>
-			<iv>A7E7B354606EF4C1D00BF4F128CCE966</iv>
-			<input>8473F4F1D77AC1F46706EBD108CB48A5</input>
-			<output>787ADE453DCE2FA7F6F24CD33C9A5CDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EBFF8A8328F6ED81E78CD230E2B85C3F</key>
-			<iv>97A2CF706C1871B502D15B028C5F0D80</iv>
-			<input>787ADE453DCE2FA7F6F24CD33C9A5CDC</input>
-			<output>E6A7E5B65DC124FBE1C1FFFE18A34D8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0D586F357537C97A064D2DCEFA1B11B5</key>
-			<iv>9BBDCAF2A3CC7FC5BF6285631A4636FD</iv>
-			<input>E6A7E5B65DC124FBE1C1FFFE18A34D8A</input>
-			<output>6A391E9F475546720836312BBEB0B3A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>676171AA32628F080E7B1CE544ABA21C</key>
-			<iv>603EEDE91F925A2228537E8BDD26C96B</iv>
-			<input>6A391E9F475546720836312BBEB0B3A9</input>
-			<output>D75086BA446563AAB1873FDEBE611D67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B031F7107607ECA2BFFC233BFACABF7B</key>
-			<iv>546B8CA37AACE2BC2C85014F2ACD6315</iv>
-			<input>D75086BA446563AAB1873FDEBE611D67</input>
-			<output>63A4D826625CBD9F10083E62330BCFBC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D3952F36145B513DAFF41D59C9C170C7</key>
-			<iv>BC2E6E9DD10152C8281B798F711A9334</iv>
-			<input>63A4D826625CBD9F10083E62330BCFBC</input>
-			<output>41275EFDFC86B5BDCCCDCA2BBFA5B90D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>92B271CBE8DDE4806339D7727664C9CA</key>
-			<iv>D940A8D1B3448AA9148C7F6DFC266B00</iv>
-			<input>41275EFDFC86B5BDCCCDCA2BBFA5B90D</input>
-			<output>56AC1BCB285044710D26EFC42A0ABA56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C41E6A00C08DA0F16E1F38B65C6E739C</key>
-			<iv>214238FF5F4D01F3A6694EC80E15BCF7</iv>
-			<input>56AC1BCB285044710D26EFC42A0ABA56</input>
-			<output>5AF2877973AB9787E42202AC0C6E7538</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9EECED79B32637768A3D3A1A500006A4</key>
-			<iv>561B4934904E327F3B3639CED6C7A995</iv>
-			<input>5AF2877973AB9787E42202AC0C6E7538</input>
-			<output>787F52F6D9CD9085D782B95FD68F70F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E693BF8F6AEBA7F35DBF8345868F765C</key>
-			<iv>06B93FB1A99BD387A091509B8C6D3482</iv>
-			<input>787F52F6D9CD9085D782B95FD68F70F8</input>
-			<output>E7B1DB917C92E488C6B02AC4C42AFD79</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0122641E1679437B9B0FA98142A58B25</key>
-			<iv>1D57A61FED51218BD8C1357CE58F21EB</iv>
-			<input>E7B1DB917C92E488C6B02AC4C42AFD79</input>
-			<output>2FBAB770D511EACA849F654DE429DE84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E98D36EC368A9B11F90CCCCA68C55A1</key>
-			<iv>CB311C43EC32D59941CEF81BB9CF4E57</iv>
-			<input>2FBAB770D511EACA849F654DE429DE84</input>
-			<output>A8FE17AEA961C2A450DD5EAABAA19613</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8666C4C06A096B154F4D92661C2DC3B2</key>
-			<iv>B9D7B74D62DD89A01EE3093A5C2A0470</iv>
-			<input>A8FE17AEA961C2A450DD5EAABAA19613</input>
-			<output>D9E598A4DBAF82BDF9474BE13B997FF5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5F835C64B1A6E9A8B60AD98727B4BC47</key>
-			<iv>6398D8A38C38A9B54DCF18C0D76758BA</iv>
-			<input>D9E598A4DBAF82BDF9474BE13B997FF5</input>
-			<output>291DB2BC325CD7A94032E7C1208921A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>769EEED883FA3E01F6383E46073D9DE2</key>
-			<iv>4774C7E1BB97117BCA26A897B9302EFA</iv>
-			<input>291DB2BC325CD7A94032E7C1208921A5</input>
-			<output>DFC55866F85055F06E752E04AAC4C36A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A95BB6BE7BAA6BF1984D1042ADF95E88</key>
-			<iv>BDA0616700CD2817FE4425F6F541E8C1</iv>
-			<input>DFC55866F85055F06E752E04AAC4C36A</input>
-			<output>7CACB3A88E7114F7737B05D0FB3AF7F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D5F70516F5DB7F06EB36159256C3A97B</key>
-			<iv>1EF4836BD363B89EE73911B14EBE9262</iv>
-			<input>7CACB3A88E7114F7737B05D0FB3AF7F3</input>
-			<output>3282F1F6B3C04E325FB13E85D18CDBBC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E775F4E0461B3134B4872B17874F72C7</key>
-			<iv>E35D47CEDBD30701A64FE504C6BC4199</iv>
-			<input>3282F1F6B3C04E325FB13E85D18CDBBC</input>
-			<output>BFB9748A3C825CDA3EA5D001F6AD305F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58CC806A7A996DEE8A22FB1671E24298</key>
-			<iv>7A3676377E0B4F815B4B8C9A98DCAB4D</iv>
-			<input>BFB9748A3C825CDA3EA5D001F6AD305F</input>
-			<output>B33787380A4C3BD5B32EC335916F9229</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EBFB075270D5563B390C3823E08DD0B1</key>
-			<iv>B3E40B27DBF6D985D4F57BD4D2899DC8</iv>
-			<input>B33787380A4C3BD5B32EC335916F9229</input>
-			<output>BCD5E40A3B4885ACA82BEC952BA8A973</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>572EE3584B9DD3979127D4B6CB2579C2</key>
-			<iv>897608FE3238F80CD24192CC64F4F695</iv>
-			<input>BCD5E40A3B4885ACA82BEC952BA8A973</input>
-			<output>793E22E0B01FFE63E89C84A0D0FE1216</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E10C1B8FB822DF479BB50161BDB6BD4</key>
-			<iv>D84401CF83566FEA8FB859C446C22632</iv>
-			<input>793E22E0B01FFE63E89C84A0D0FE1216</input>
-			<output>96858A96FEB19712B10A44FBF8E633D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B8954B2E0533BAE6C8B114EDE33D580D</key>
-			<iv>7210E127BFB706EF9CD24139C0927E01</iv>
-			<input>96858A96FEB19712B10A44FBF8E633D9</input>
-			<output>28A34CC75A215117331D6B88387E16F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>903607E95F12EBF1FBAC7F65DB434EF5</key>
-			<iv>744B8DD281919F79FC529DA15AA0F18F</iv>
-			<input>28A34CC75A215117331D6B88387E16F8</input>
-			<output>43FE41DC9FFB88F93ADC43D41BA3E4B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D3C84635C0E96308C1703CB1C0E0AA47</key>
-			<iv>5C7379A90F1E47F88C7424E8CD31E55D</iv>
-			<input>43FE41DC9FFB88F93ADC43D41BA3E4B2</input>
-			<output>66D6D0E84CEB8672D38DDE557CCCFFF6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B51E96DD8C02E57A12FDE2E4BC2C55B1</key>
-			<iv>529B92CD068415627C4BE49874347F98</iv>
-			<input>66D6D0E84CEB8672D38DDE557CCCFFF6</input>
-			<output>F817D013CB041CA41B6D611ED261FAE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4D0946CE4706F9DE099083FA6E4DAF58</key>
-			<iv>9B4452DD48C3EECEFDB6A6CFAE670117</iv>
-			<input>F817D013CB041CA41B6D611ED261FAE9</input>
-			<output>56420C70CC459A131CD531EDC39ED6E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1B4B4ABE8B4363CD1545B217ADD379B1</key>
-			<iv>264ABBC30CC98DA3C06B935B1364A317</iv>
-			<input>56420C70CC459A131CD531EDC39ED6E9</input>
-			<output>650DA8C4CB11E4ABFE8841D20443BB04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7E46E27A40528766EBCDF3C5A990C2B5</key>
-			<iv>DBABF7B18568FED50C69DA0C9AA5395D</iv>
-			<input>650DA8C4CB11E4ABFE8841D20443BB04</input>
-			<output>94E6CE02AE253F3BE4A59775CAB7B11B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EAA02C78EE77B85D0F6864B0632773AE</key>
-			<iv>F0D2E456CE063CB68988C1C397038480</iv>
-			<input>94E6CE02AE253F3BE4A59775CAB7B11B</input>
-			<output>124F09DAC6A45E6077DCECE971B24ED1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F8EF25A228D3E63D78B4885912953D7F</key>
-			<iv>C19A6D2D35E606E552580B002023C966</iv>
-			<input>124F09DAC6A45E6077DCECE971B24ED1</input>
-			<output>AAD649FD1168DFCB431A7216571ED4C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>52396C5F39BB39F63BAEFA4F458BE9BE</key>
-			<iv>DF1A307B1D25BC2751ECDC791EC51B16</iv>
-			<input>AAD649FD1168DFCB431A7216571ED4C1</input>
-			<output>992749C940CBBB0944F5248E8D65268C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CB1E2596797082FF7F5BDEC1C8EECF32</key>
-			<iv>D8B0466FC4344C6BF4E57584E5F48A36</iv>
-			<input>992749C940CBBB0944F5248E8D65268C</input>
-			<output>FF16B9246C325A3B96250875A9D5C4BE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>34089CB21542D8C4E97ED6B4613B0B8C</key>
-			<iv>B8C3E4ECF57631CE1EEA74AD99545BA2</iv>
-			<input>FF16B9246C325A3B96250875A9D5C4BE</input>
-			<output>72EDB906165FE6A19E02435AC6457C9A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>46E525B4031D3E65777C95EEA77E7716</key>
-			<iv>9C4F78D05257C64D752C576B5BB16245</iv>
-			<input>72EDB906165FE6A19E02435AC6457C9A</input>
-			<output>0C2F00362B8733D343DCAF884A6BFD46</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4ACA2582289A0DB634A03A66ED158A50</key>
-			<iv>C51122198D2FD566ACA1BD07C28BCC7A</iv>
-			<input>0C2F00362B8733D343DCAF884A6BFD46</input>
-			<output>C7F5C00F42695CF7870240DA73D487F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8D3FE58D6AF35141B3A27ABC9EC10DA7</key>
-			<iv>14769B7962371925822C42F0411BDC65</iv>
-			<input>C7F5C00F42695CF7870240DA73D487F7</input>
-			<output>F4BC8A4310A4CD2F396F43B81BD060EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>79836FCE7A579C6E8ACD390485116D4C</key>
-			<iv>CDA4414DF23427B937D586C1A8164479</iv>
-			<input>F4BC8A4310A4CD2F396F43B81BD060EB</input>
-			<output>1B996A525174C35466103BCBD53ECB9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>621A059C2B235F3AECDD02CF502FA6D0</key>
-			<iv>1DA9E7C02BE868E118E4B9BF5928BFCF</iv>
-			<input>1B996A525174C35466103BCBD53ECB9C</input>
-			<output>2B4EC5CB9DE50257B5901C6D49B5EB54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4954C057B6C65D6D594D1EA2199A4D84</key>
-			<iv>55433149AA93215BF53CB8FE66CD683A</iv>
-			<input>2B4EC5CB9DE50257B5901C6D49B5EB54</input>
-			<output>5A5B9ACA3BDA951DC4C4DFB7DD15AD18</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>130F5A9D8D1CC8709D89C115C48FE09C</key>
-			<iv>695C69EA8C4257D2758364AFF6387DA0</iv>
-			<input>5A5B9ACA3BDA951DC4C4DFB7DD15AD18</input>
-			<output>5BB08593BA52E94F07CB14FF564AF299</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48BFDF0E374E213F9A42D5EA92C51205</key>
-			<iv>665463164601CD0045C684729CDD5E7D</iv>
-			<input>5BB08593BA52E94F07CB14FF564AF299</input>
-			<output>DB1840467889551150026A90E3FC272F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>93A79F484FC7742ECA40BF7A7139352A</key>
-			<iv>355C4B87A682712460C80ABA630F7BE8</iv>
-			<input>DB1840467889551150026A90E3FC272F</input>
-			<output>9F7BD8EF96A1ECC75B4E3031E65FE8FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0CDC47A7D96698E9910E8F4B9766DDD6</key>
-			<iv>FBF20FEC0A9E9B530DD3745955A1960C</iv>
-			<input>9F7BD8EF96A1ECC75B4E3031E65FE8FC</input>
-			<output>DCF003E1DDD4B52F5B680568B42EEECF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D02C444604B22DC6CA668A2323483319</key>
-			<iv>04EADC638E309466B9500B1C3A308856</iv>
-			<input>DCF003E1DDD4B52F5B680568B42EEECF</input>
-			<output>DDD2F2AEFEF4A4641747699170DF0129</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0DFEB6E8FA4689A2DD21E3B253973230</key>
-			<iv>FB521123E5BB45F1AC7083C382B95E10</iv>
-			<input>DDD2F2AEFEF4A4641747699170DF0129</input>
-			<output>7D6C54E4369E965513DE1E95E8A37433</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7092E20CCCD81FF7CEFFFD27BB344603</key>
-			<iv>0E71300101915AEE97563493B4B2EFB9</iv>
-			<input>7D6C54E4369E965513DE1E95E8A37433</input>
-			<output>B7F5C4275EF7D3A23E8E9A4BC2BCA700</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C767262B922FCC55F071676C7988E103</key>
-			<iv>8BBC970D4E24F6F1A92859BBAE70B757</iv>
-			<input>B7F5C4275EF7D3A23E8E9A4BC2BCA700</input>
-			<output>679FA9A8AB3EE2F0663D4DC95FEC3847</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A0F88F8339112EA5964C2AA52664D944</key>
-			<iv>B8D28B6903859465F996A0DF491DDAAA</iv>
-			<input>679FA9A8AB3EE2F0663D4DC95FEC3847</input>
-			<output>914DCEAC5B00940A415C2144DAA1EF03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>31B5412F6211BAAFD7100BE1FCC53647</key>
-			<iv>06E1FF99E63E0EDDA1D95682B541D026</iv>
-			<input>914DCEAC5B00940A415C2144DAA1EF03</input>
-			<output>A718031A531395DA071B828A10A2B9DC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>96AD423531022F75D00B896BEC678F9B</key>
-			<iv>F18546028693CC0A72E218460AC932E9</iv>
-			<input>A718031A531395DA071B828A10A2B9DC</input>
-			<output>19D996B9FF549029D800CF977C0E0A88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8F74D48CCE56BF5C080B46FC90698513</key>
-			<iv>7E98DAFA8DE35537A0B0AA8FA32E01DF</iv>
-			<input>19D996B9FF549029D800CF977C0E0A88</input>
-			<output>6A7D514FBE9963987E0EE5DD22FDC8BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E50985C370CFDCC47605A321B2944DAE</key>
-			<iv>071F44277D12AD6E653FB747C11BEFB7</iv>
-			<input>6A7D514FBE9963987E0EE5DD22FDC8BD</input>
-			<output>AB07C464DF72DF58411A7CBF906F43A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4E0E41A7AFBD039C371FDF9E22FB0E08</key>
-			<iv>BDA8979A0DE78999AE0659D2744BC21B</iv>
-			<input>AB07C464DF72DF58411A7CBF906F43A6</input>
-			<output>A8ABC34FF51FD998427A7837BB0F22BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E6A582E85AA2DA047565A7A999F42CB3</key>
-			<iv>3CA763C4375A6C70F072B52C42A02560</iv>
-			<input>A8ABC34FF51FD998427A7837BB0F22BB</input>
-			<output>9E82A41AB2A2748695663075C5BF1C09</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>782726F2E800AE82E00397DC5C4B30BA</key>
-			<iv>B1DD4DC8715CA0B8BA3426395B61ABA4</iv>
-			<input>9E82A41AB2A2748695663075C5BF1C09</input>
-			<output>3C891AEFC6645F3C23A2E3A2E1A522EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44AE3C1D2E64F1BEC3A1747EBDEE1255</key>
-			<iv>932F28E3FC0F85A0E703AD6079A68CC0</iv>
-			<input>3C891AEFC6645F3C23A2E3A2E1A522EF</input>
-			<output>D4FDD9C3D36E80E0AFA95ABEC2E62FB9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9053E5DEFD0A715E6C082EC07F083DEC</key>
-			<iv>1AD1530DE6274BBA3A097004D85DF8FA</iv>
-			<input>D4FDD9C3D36E80E0AFA95ABEC2E62FB9</input>
-			<output>9FACBB106FBF34D9B25A83AD4F45AA38</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0FFF5ECE92B54587DE52AD6D304D97D4</key>
-			<iv>8412EAA361AB8193AD529FA36944FE3D</iv>
-			<input>9FACBB106FBF34D9B25A83AD4F45AA38</input>
-			<output>E95628B6A14326AC153B228C0DD25063</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E6A9767833F6632BCB698FE13D9FC7B7</key>
-			<iv>9F1D906FD25CCCA7565D82CDA44B4A57</iv>
-			<input>E95628B6A14326AC153B228C0DD25063</input>
-			<output>7B1ECD07E452D593D00E326F8FD9F2B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9DB7BB7FD7A4B6B81B67BD8EB2463502</key>
-			<iv>9C91B12734A86451492400EE5759C190</iv>
-			<input>7B1ECD07E452D593D00E326F8FD9F2B5</input>
-			<output>A99874C1ECA463D335B37179348AEF4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>342FCFBE3B00D56B2ED4CCF786CCDA4D</key>
-			<iv>9060C6E8E2B51E5F1000860ECB5A608C</iv>
-			<input>A99874C1ECA463D335B37179348AEF4F</input>
-			<output>F9296E658C3048C58FE6404AB6E0186C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CD06A1DBB7309DAEA1328CBD302CC221</key>
-			<iv>ADCB427405EDF8078622AFC6C731D3EF</iv>
-			<input>F9296E658C3048C58FE6404AB6E0186C</input>
-			<output>8D3A4ABFB8F57AEBB1284B78BFDD240D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>403CEB640FC5E745101AC7C58FF1E62C</key>
-			<iv>4CED30477756892A49FE6358700F5DE7</iv>
-			<input>8D3A4ABFB8F57AEBB1284B78BFDD240D</input>
-			<output>7C71310D5241B8B461847FA7E2B4D506</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3C4DDA695D845FF1719EB8626D45332A</key>
-			<iv>52A3B8E21588368AA3AD2131B283B34C</iv>
-			<input>7C71310D5241B8B461847FA7E2B4D506</input>
-			<output>380A1E2925FC8061FBC69B08B4C7C6C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0447C4407878DF908A58236AD982F5E2</key>
-			<iv>B7AD265DF50ABD77C1D1D02BAF06CEBD</iv>
-			<input>380A1E2925FC8061FBC69B08B4C7C6C8</input>
-			<output>6931E262570F27732A75629A384492CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6D7626222F77F8E3A02D41F0E1C66728</key>
-			<iv>DD7D3CA7F6CE54775836734B10685A99</iv>
-			<input>6931E262570F27732A75629A384492CA</input>
-			<output>336D0AB3F9A793469C544E98CFDC8AD6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E1B2C91D6D06BA53C790F682E1AEDFE</key>
-			<iv>54087C05437049FBAFC9BF6C56AD16CC</iv>
-			<input>336D0AB3F9A793469C544E98CFDC8AD6</input>
-			<output>0098A640F1D04E5557F748B80215082A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E838AD1270025F06B8E47D02C0FE5D4</key>
-			<iv>DD13A93C7FAEF14820D6A168AF9969DB</iv>
-			<input>0098A640F1D04E5557F748B80215082A</input>
-			<output>48660EDDC3ACAC1A814AE088650DE007</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>16E5840CE4AC89EAEAC4A758490205D3</key>
-			<iv>589C43A680F7AE6E15DE25FD50F18BED</iv>
-			<input>48660EDDC3ACAC1A814AE088650DE007</input>
-			<output>047740C48160A14563C0049316C7B78E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1292C4C865CC28AF8904A3CB5FC5B25D</key>
-			<iv>22DB095AF8268D37AC536FDA3A81B7C2</iv>
-			<input>047740C48160A14563C0049316C7B78E</input>
-			<output>D9679ABB1AED1524E8DA2ECA89172853</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CBF55E737F213D8B61DE8D01D6D29A0E</key>
-			<iv>77FDCCC9BAB3B7E81D7B9D14540ED3A7</iv>
-			<input>D9679ABB1AED1524E8DA2ECA89172853</input>
-			<output>C774AD9EF683A59747AB41DA044471C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0C81F3ED89A2981C2675CCDBD296EBCA</key>
-			<iv>2E266970512C0F6D404367978C70B5C6</iv>
-			<input>C774AD9EF683A59747AB41DA044471C4</input>
-			<output>927C98AFDE6F108268A306A1A818EE89</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9EFD6B4257CD889E4ED6CA7A7A8E0543</key>
-			<iv>E2B0A0F146E931136932D8188B7DC980</iv>
-			<input>927C98AFDE6F108268A306A1A818EE89</input>
-			<output>D3C11AF1EF255D65EAAEE5B5C5BF3CD9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4D3C71B3B8E8D5FBA4782FCFBF31399A</key>
-			<iv>ABA118A590A8A69D41D20ED13F7DA4C9</iv>
-			<input>D3C11AF1EF255D65EAAEE5B5C5BF3CD9</input>
-			<output>760B1C47EB476A246CE41163B7425C7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3B376DF453AFBFDFC89C3EAC087365E1</key>
-			<iv>8A395FFEE93FF820FBC086932216324F</iv>
-			<input>760B1C47EB476A246CE41163B7425C7B</input>
-			<output>4EEAE25D1654A461D6A56896EDFFEAB7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>75DD8FA945FB1BBE1E39563AE58C8F56</key>
-			<iv>82D68DE458D38127E2A17DA736BC1651</iv>
-			<input>4EEAE25D1654A461D6A56896EDFFEAB7</input>
-			<output>BD7ABD27F3515B9FD337ADADBA5E9EC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C8A7328EB6AA4021CD0EFB975FD2119F</key>
-			<iv>95757C38F4CB26C29DF174FD8B1F35E8</iv>
-			<input>BD7ABD27F3515B9FD337ADADBA5E9EC9</input>
-			<output>E32EF56DE91CC21C158822BDB841A02C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2B89C7E35FB6823DD886D92AE793B1B3</key>
-			<iv>AFFB434005E300E99E815A8E5B46E159</iv>
-			<input>E32EF56DE91CC21C158822BDB841A02C</input>
-			<output>578B7692D68BD4D65A159C9CCDC81F64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7C02B171893D56EB829345B62A5BAED7</key>
-			<iv>15E783551969F275EF25A429F68BA0DB</iv>
-			<input>578B7692D68BD4D65A159C9CCDC81F64</input>
-			<output>0F70D77F31DE8F0010628377C8E4A1C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7372660EB8E3D9EB92F1C6C1E2BF0F14</key>
-			<iv>078B6E3FC7C79D52A5C49847A7C5D0BB</iv>
-			<input>0F70D77F31DE8F0010628377C8E4A1C3</input>
-			<output>A4F29F6A50A4A15789D4647774C96997</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D780F964E84778BC1B25A2B696766683</key>
-			<iv>C9B2C903F131856C0D8218146479513A</iv>
-			<input>A4F29F6A50A4A15789D4647774C96997</input>
-			<output>7AD4F764911F8F1E8C9356F00B1468EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD540E007958F7A297B6F4469D620E6D</key>
-			<iv>780DAD9DBA12DDC713ECF44057B8B56E</iv>
-			<input>7AD4F764911F8F1E8C9356F00B1468EE</input>
-			<output>A00EAFD28A95C7F39137773F28F9A0D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0D5AA1D2F3CD305106818379B59BAEBE</key>
-			<iv>6643BF26488FB21BCDAA7D4FABAA5BC3</iv>
-			<input>A00EAFD28A95C7F39137773F28F9A0D3</input>
-			<output>FC884EEEB73B2F66C97D742A441B0463</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F1D2EF3C44F61F37CFFCF753F180AADD</key>
-			<iv>7B707442550BF1FA4C1B74F0DC3237FC</iv>
-			<input>FC884EEEB73B2F66C97D742A441B0463</input>
-			<output>9C260AA82C6902B068495B4844507F7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6DF4E594689F1D87A7B5AC1BB5D0D5A0</key>
-			<iv>8329E8DE2980225DA61158BF467B1D79</iv>
-			<input>9C260AA82C6902B068495B4844507F7D</input>
-			<output>1C12FEAA35AD2DD21DE6411C3A3BB6D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>71E61B3E5D323055BA53ED078FEB6375</key>
-			<iv>EFD514D7CF3FAC49DBB5BB3505B9B18F</iv>
-			<input>1C12FEAA35AD2DD21DE6411C3A3BB6D5</input>
-			<output>15F26D34E8E1037A5A2393CEA5DB396B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6414760AB5D3332FE0707EC92A305A1E</key>
-			<iv>9EFC37C295552B965B29A23AC2788D8B</iv>
-			<input>15F26D34E8E1037A5A2393CEA5DB396B</input>
-			<output>76F0C79955566A0A091AA46E0C59455E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>12E4B193E0855925E96ADAA726691F40</key>
-			<iv>5BA54E33128A7526A9130E632BE00D65</iv>
-			<input>76F0C79955566A0A091AA46E0C59455E</input>
-			<output>1EA06231EBEEB995E2F94B88A4004333</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0C44D3A20B6BE0B00B93912F82695C73</key>
-			<iv>9B1C6FA42510E530D2282BF8C5516DCE</iv>
-			<input>1EA06231EBEEB995E2F94B88A4004333</input>
-			<output>16C36348884B32AC1CB1DE2D3C158981</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A87B0EA8320D21C17224F02BE7CD5F2</key>
-			<iv>F755F641EED4C828DCBECC327D93F4AF</iv>
-			<input>16C36348884B32AC1CB1DE2D3C158981</input>
-			<output>6581A3FB5F61C6C1904F35E787BF552D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7F061311DC4114DD876D7AE539C380DF</key>
-			<iv>5D799F356C1672707716C47DA4384C01</iv>
-			<input>6581A3FB5F61C6C1904F35E787BF552D</input>
-			<output>0BA11F8EE845E03641928825B3344994</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>74A70C9F3404F4EBC6FFF2C08AF7C94B</key>
-			<iv>89A5592031795CEAECF1C1F274813818</iv>
-			<input>0BA11F8EE845E03641928825B3344994</input>
-			<output>1CF907A6C8A33C7806819EB97B854588</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>685E0B39FCA7C893C07E6C79F1728CC3</key>
-			<iv>BBE87558AF456066B9CE3EBB8729D554</iv>
-			<input>1CF907A6C8A33C7806819EB97B854588</input>
-			<output>722BB2E53CE7846F40B5EA18AF1430B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A75B9DCC0404CFC80CB86615E66BC73</key>
-			<iv>2CC42E6DA36883482ACB5D9D92823186</iv>
-			<input>722BB2E53CE7846F40B5EA18AF1430B0</input>
-			<output>E667D6A95E9C56BB56E4436CC1B69874</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FC126F759EDC1A47D62FC50D9FD02407</key>
-			<iv>F18DD0388BF5692B7394BAFDC4854308</iv>
-			<input>E667D6A95E9C56BB56E4436CC1B69874</input>
-			<output>3C9A76798C468470EEBC5F7B915879A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C088190C129A9E3738939A760E885DA4</key>
-			<iv>8262D8603FE0F4AE8BF5795690992F1C</iv>
-			<input>3C9A76798C468470EEBC5F7B915879A3</input>
-			<output>3CAFB994BDEF76370D8A5129B63BECDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FC27A098AF75E8003519CB5FB8B3B17F</key>
-			<iv>AB090F7A86CFD9A7C1BD8869BBB4D27B</iv>
-			<input>3CAFB994BDEF76370D8A5129B63BECDB</input>
-			<output>50D037733D2C3242024BD322ADDF01CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ACF797EB9259DA423752187D156CB0B4</key>
-			<iv>3581D6724722C3892C712B2AA1066824</iv>
-			<input>50D037733D2C3242024BD322ADDF01CB</input>
-			<output>0D7CB755305EF09692FCED530CCC1336</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A18B20BEA2072AD4A5AEF52E19A0A382</key>
-			<iv>9D0DAD6448895ECBE05F8DC73E014E3C</iv>
-			<input>0D7CB755305EF09692FCED530CCC1336</input>
-			<output>D66389E01F44C60B26BCF3F9B39DAB55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>77E8A95EBD43ECDF831206D7AA3D08D7</key>
-			<iv>7BDC3CD62CD79C7E6CB8FAE104175DE4</iv>
-			<input>D66389E01F44C60B26BCF3F9B39DAB55</input>
-			<output>CC9F59409D636BE5C555AC2841650CD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB77F01E2020873A4647AAFFEB580400</key>
-			<iv>A4FBE42983B236097E40C1E244B14748</iv>
-			<input>CC9F59409D636BE5C555AC2841650CD7</input>
-			<output>34804672FCEF79481269B1D254DDCAF9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8FF7B66CDCCFFE72542E1B2DBF85CEF9</key>
-			<iv>700B37E771E88E5DCD9C81D6FD16B995</iv>
-			<input>34804672FCEF79481269B1D254DDCAF9</input>
-			<output>62FC00FDF1F6BF44FFBEB5BED5589A64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ED0BB6912D394136AB90AE936ADD549D</key>
-			<iv>F3A9954079382ACD97C3EC198522AE69</iv>
-			<input>62FC00FDF1F6BF44FFBEB5BED5589A64</input>
-			<output>F7901904A02544E064400A2625121C4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A9BAF958D1C05D6CFD0A4B54FCF48D1</key>
-			<iv>3799F5DEF76C56F8B0A69889B85760AA</iv>
-			<input>F7901904A02544E064400A2625121C4C</input>
-			<output>A915D55AE8E14497F2693A55F83041F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B38E7ACF65FD41413DB99EE0B7FF0924</key>
-			<iv>5421F3F4CDD3C6F9BF38184BC61904AA</iv>
-			<input>A915D55AE8E14497F2693A55F83041F5</input>
-			<output>66EA0D0968631F3BDA46921078E495C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D56477C60D9E5E7AE7FF0CF0CF1B9CE5</key>
-			<iv>3B87243EE38BD474E4CBF34A7C592CFC</iv>
-			<input>66EA0D0968631F3BDA46921078E495C1</input>
-			<output>283826367D00718849A6539EE8CAD8BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FD5C51F0709E2FF2AE595F6E27D1445A</key>
-			<iv>0FB53077D2BC27C544CD400A28212291</iv>
-			<input>283826367D00718849A6539EE8CAD8BF</input>
-			<output>B15EA2718FB406D457C8B96530EDC014</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4C02F381FF2A2926F991E60B173C844E</key>
-			<iv>8BFE654E422E9BCCE7F1357053E1130C</iv>
-			<input>B15EA2718FB406D457C8B96530EDC014</input>
-			<output>44238CE0F1765C7983BF408D5ECFA2BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>08217F610E5C755F7A2EA68649F326F4</key>
-			<iv>86841D597FA91F54CBAD3C57FC1FC492</iv>
-			<input>44238CE0F1765C7983BF408D5ECFA2BA</input>
-			<output>BB6408099CA64F1216D204865449E967</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B345776892FA3A4D6CFCA2001DBACF93</key>
-			<iv>849198CEA19F4AD76013D172867A0D20</iv>
-			<input>BB6408099CA64F1216D204865449E967</input>
-			<output>B7E109C6813E686ADA396DDB277AD960</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>04A47EAE13C45227B6C5CFDB3AC016F3</key>
-			<iv>9C5E0182124701DA958CF68E1B9F8CC1</iv>
-			<input>B7E109C6813E686ADA396DDB277AD960</input>
-			<output>65C77CB822CA10AE1F95B91F0A3F6436</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61630216310E4289A95076C430FF72C5</key>
-			<iv>2BB9026F793A64A325E02B922E3A51DD</iv>
-			<input>65C77CB822CA10AE1F95B91F0A3F6436</input>
-			<output>48E9DB9FC3F883AD28A0299561444197</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>298AD989F2F6C12481F05F5151BB3352</key>
-			<iv>6BE0B03639C858D8F2CAE00EFE8FECCA</iv>
-			<input>48E9DB9FC3F883AD28A0299561444197</input>
-			<output>02B277AB327BCB5C91831BD376DC5211</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2B38AE22C08D0A781073448227676143</key>
-			<iv>ADC033E3EEC3705031D2FB24205823A2</iv>
-			<input>02B277AB327BCB5C91831BD376DC5211</input>
-			<output>FE288D6703CF6AB1635483305A82F192</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D5102345C34260C97327C7B27DE590D1</key>
-			<iv>F637C38CB5DF86458225143E157B9415</iv>
-			<input>FE288D6703CF6AB1635483305A82F192</input>
-			<output>B07BF02F795D13D972D5D6E556E8BA37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>656BD36ABA1F731001F211572B0D2AE6</key>
-			<iv>824B7BBB3A339BF045C3CFEA9FD842B9</iv>
-			<input>B07BF02F795D13D972D5D6E556E8BA37</input>
-			<output>D4661C2E102C6644724DA54BE291215D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B10DCF44AA33155473BFB41CC99C0BBB</key>
-			<iv>21FA242B2B9FFF0C7DC6B712A38A333B</iv>
-			<input>D4661C2E102C6644724DA54BE291215D</input>
-			<output>F7EDEE448559A6ACD68815B6EEAF6E38</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>46E021002F6AB3F8A537A1AA27336583</key>
-			<iv>390906ECE51C92800D620E1CD1FD3574</iv>
-			<input>F7EDEE448559A6ACD68815B6EEAF6E38</input>
-			<output>07257C91424F65E6752470A6960DF6D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>41C55D916D25D61ED013D10CB13E935A</key>
-			<iv>918A010EC2B106DE32A220315999DF7D</iv>
-			<input>07257C91424F65E6752470A6960DF6D9</input>
-			<output>CCB4F3FCFFDEE9E93DD3AB4CC2DB870E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8D71AE6D92FB3FF7EDC07A4073E51454</key>
-			<iv>7CF6B4948C4E04ED235F2CC96B0A6B49</iv>
-			<input>CCB4F3FCFFDEE9E93DD3AB4CC2DB870E</input>
-			<output>C455220E8C8847FF2592074A53104105</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>49248C631E737808C8527D0A20F55551</key>
-			<iv>4839E74C868786D0A109603CF98F1100</iv>
-			<input>C455220E8C8847FF2592074A53104105</input>
-			<output>B4D0F5B4C15D7AD556ED4964A94C898F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FDF479D7DF2E02DD9EBF346E89B9DCDE</key>
-			<iv>5C6D9649E47FAA8A2DCAFB317B6BC0EA</iv>
-			<input>B4D0F5B4C15D7AD556ED4964A94C898F</input>
-			<output>B515D2904555793DDC142618DCFF8464</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48E1AB479A7B7BE042AB1276554658BA</key>
-			<iv>E3573B4137C13BBA6CDD10D71042B8F6</iv>
-			<input>B515D2904555793DDC142618DCFF8464</input>
-			<output>2C272D6589E2E6EE09067882795E9FB9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>64C6862213999D0E4BAD6AF42C18C703</key>
-			<iv>08E335104FC5D18E2C11EF34B805F060</iv>
-			<input>2C272D6589E2E6EE09067882795E9FB9</input>
-			<output>B38E39322245C4A2E170EBF36D764AD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D748BF1031DC59ACAADD8107416E8DD6</key>
-			<iv>E134D0DEA38A23983766DA18DADA70E0</iv>
-			<input>B38E39322245C4A2E170EBF36D764AD5</input>
-			<output>E7556255602B48D7CAC710A004FFFD2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>301DDD4551F7117B601A91A7459170F8</key>
-			<iv>301C2808833418F45D5F97FB09A99504</iv>
-			<input>E7556255602B48D7CAC710A004FFFD2E</input>
-			<output>D4356D51B1C486AAC8BCF2F65312758C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E428B014E03397D1A8A6635116830574</key>
-			<iv>264D556FA9A9D73510F562BBF983A4F7</iv>
-			<input>D4356D51B1C486AAC8BCF2F65312758C</input>
-			<output>B4D003D6C542B576A3EAEC8F1B017F5B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>50F8B3C2257122A70B4C8FDE0D827A2F</key>
-			<iv>8821647AD3E9E529909E60D0F75DA400</iv>
-			<input>B4D003D6C542B576A3EAEC8F1B017F5B</input>
-			<output>10056819F314FF21114BE6209AB5508C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>40FDDBDBD665DD861A0769FE97372AA3</key>
-			<iv>CBD574F4DB1EFEE4E2EC9485D1192E04</iv>
-			<input>10056819F314FF21114BE6209AB5508C</input>
-			<output>6E7AA061FE85B6F8972CB0E793BE0CB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E877BBA28E06B7E8D2BD91904892613</key>
-			<iv>4F98EE1501681EC0E7834FE941DF6C6B</iv>
-			<input>6E7AA061FE85B6F8972CB0E793BE0CB0</input>
-			<output>45E0C0014219D77686E82E74E60608CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6B67BBBB6AF9BC080BC3F76DE28F2ED9</key>
-			<iv>1D34CAB2FF836A7E6568823784519170</iv>
-			<input>45E0C0014219D77686E82E74E60608CA</input>
-			<output>ACF686F9D6723EAFDBFE512AB3A8C6B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C7913D42BC8B82A7D03DA6475127E868</key>
-			<iv>BEA74B4435F9F79D39B8CCE1F090D4B8</iv>
-			<input>ACF686F9D6723EAFDBFE512AB3A8C6B1</input>
-			<output>F11FE34D158D40DEA10033BCE0253F30</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>368EDE0FA906C279713D95FBB102D758</key>
-			<iv>DF30EE5D8CA298BE630DDE4B6D8AD7AA</iv>
-			<input>F11FE34D158D40DEA10033BCE0253F30</input>
-			<output>4E970ACAB8B19C942C85FAA7825C5E67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7819D4C511B75EED5DB86F5C335E893F</key>
-			<iv>DC3CCC928C02710EE91391032A3B557D</iv>
-			<input>4E970ACAB8B19C942C85FAA7825C5E67</input>
-			<output>0FF6C292507CF135036E04A391210466</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>77EF165741CBAFD85ED66BFFA27F8D59</key>
-			<iv>7CC57A486E05E36F852278450C03D39F</iv>
-			<input>0FF6C292507CF135036E04A391210466</input>
-			<output>BBEF94C8179E7A124492A252507D58E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CC00829F5655D5CA1A44C9ADF202D5BE</key>
-			<iv>BBB92F65197F8D6B388191E78E90A858</iv>
-			<input>BBEF94C8179E7A124492A252507D58E7</input>
-			<output>BAF11150DD418ED7C28072A718815954</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>76F193CF8B145B1DD8C4BB0AEA838CEA</key>
-			<iv>99DA5A29F934BE23EB74B6DE4E8CC740</iv>
-			<input>BAF11150DD418ED7C28072A718815954</input>
-			<output>A935099B91A35655C850939D2FED1569</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DFC49A541AB70D4810942897C56E9983</key>
-			<iv>92401B7E92A49FA5A6905E51E49D51C2</iv>
-			<input>A935099B91A35655C850939D2FED1569</input>
-			<output>F60E1B5D10CDA17FC762798B86B8708D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>29CA81090A7AAC37D7F6511C43D6E90E</key>
-			<iv>C2A57521674EB0FB3E46DE2CC1DCF419</iv>
-			<input>F60E1B5D10CDA17FC762798B86B8708D</input>
-			<output>0B976079B61F46E7F3CCCD17E23D872F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>225DE170BC65EAD0243A9C0BA1EB6E21</key>
-			<iv>66970AE807FED1E3581496C9FBE5FF50</iv>
-			<input>0B976079B61F46E7F3CCCD17E23D872F</input>
-			<output>FB44F0094A5FC03BD0A27391E58D0AA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D9191179F63A2AEBF498EF9A44666482</key>
-			<iv>ED7B2ED1AFF7DB9B514D6E4DFAEA484B</iv>
-			<input>FB44F0094A5FC03BD0A27391E58D0AA3</input>
-			<output>41A534A69AD25FEB39BB9F754F15D8FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>98BC25DF6CE87500CD2370EF0B73BC7C</key>
-			<iv>B7E8C7F08BCE1CF1CC2568E18C18C92B</iv>
-			<input>41A534A69AD25FEB39BB9F754F15D8FE</input>
-			<output>022B28D4F7355E14F99F654B6C35BC16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9A970D0B9BDD2B1434BC15A46746006A</key>
-			<iv>F2EF32464FC7E5F3D397C259CB963B7F</iv>
-			<input>022B28D4F7355E14F99F654B6C35BC16</input>
-			<output>28F18EA03ADEB36C40FD8FBC590EC6C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B26683ABA103987874419A183E48C6A2</key>
-			<iv>687E822CCFC5800E88E59ED7DEC1409D</iv>
-			<input>28F18EA03ADEB36C40FD8FBC590EC6C8</input>
-			<output>661F9AEA300100333D64FCDD1212C663</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D47919419102984B492566C52C5A00C1</key>
-			<iv>3922BB08EE1B4CC75881D1D6F66B8EE0</iv>
-			<input>661F9AEA300100333D64FCDD1212C663</input>
-			<output>11C4D360F585EDF544D5479AE1ABDBE6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C5BDCA21648775BE0DF0215FCDF1DB27</key>
-			<iv>9B7C0D7D0EA8CAD77B331F2E0CA1E639</iv>
-			<input>11C4D360F585EDF544D5479AE1ABDBE6</input>
-			<output>2E4695733B01CC78993E6EB464784223</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EBFB5F525F86B9C694CE4FEBA9899904</key>
-			<iv>A2BF273F12FE1F4B2F56A86CAFD9C5BF</iv>
-			<input>2E4695733B01CC78993E6EB464784223</input>
-			<output>1CC514E9F4B13FFEF3B076DAC8C62877</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F73E4BBBAB378638677E3931614FB173</key>
-			<iv>1D4960EBE667AC5DE5ED767183838846</iv>
-			<input>1CC514E9F4B13FFEF3B076DAC8C62877</input>
-			<output>3B1A7D179DDED66A37F3053B8B231EEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CC2436AC36E95052508D3C0AEA6CAF99</key>
-			<iv>974643FDFDB695A44B7EF8676A2B87DD</iv>
-			<input>3B1A7D179DDED66A37F3053B8B231EEA</input>
-			<output>620A4E7A25E8D05779C0FB8CEBA55A74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE2E78D613018005294DC78601C9F5ED</key>
-			<iv>C9A1D92DB7D553DCAEB3BB81B489257A</iv>
-			<input>620A4E7A25E8D05779C0FB8CEBA55A74</input>
-			<output>93508503278ECECE65D67B5F50962C4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3D7EFDD5348F4ECB4C9BBCD9515FD9A3</key>
-			<iv>108E736F1DCD178A8648F6AA6D527732</iv>
-			<input>93508503278ECECE65D67B5F50962C4E</input>
-			<output>EA9E953D8B62FFAFF9FAFB97F614D65C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D7E068E8BFEDB164B561474EA74B0FFF</key>
-			<iv>B893A94302C0DAFB19D7B6656085DCA9</iv>
-			<input>EA9E953D8B62FFAFF9FAFB97F614D65C</input>
-			<output>1452ED26E774029EF30D272F8548C2F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C3B285CE5899B3FA466C60612203CD07</key>
-			<iv>668FF6719E5A29A99876227EEDE5818F</iv>
-			<input>1452ED26E774029EF30D272F8548C2F8</input>
-			<output>4083167E5ED1A1A449C1825B84F321E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>833193B00648125E0FADE23AA6F0ECE6</key>
-			<iv>9F6375A022543AB8303368A235813F02</iv>
-			<input>4083167E5ED1A1A449C1825B84F321E1</input>
-			<output>9206639D076685FD2078F9B984B7A03F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1137F02D012E97A32FD51B8322474CD9</key>
-			<iv>1B95128E90B110AED9D543D2A996271F</iv>
-			<input>9206639D076685FD2078F9B984B7A03F</input>
-			<output>AAA3F2BD0126DFD5007DD2835CCB0109</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB940290000848762FA8C9007E8C4DD0</key>
-			<iv>BB2E26A9CDEF9D1B2940EFFBA1971A5D</iv>
-			<input>AAA3F2BD0126DFD5007DD2835CCB0109</input>
-			<output>B58BB3761519C1726D75AE96313FB7DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0E1FB1E61511890442DD67964FB3FA0E</key>
-			<iv>68D3EC37EE43E3F24072F69F2DFA768D</iv>
-			<input>B58BB3761519C1726D75AE96313FB7DE</input>
-			<output>4558CD47C012B7293396D7EDFE3CEA85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4B477CA1D5033E2D714BB07BB18F108B</key>
-			<iv>F7E107DBF4DDBF7974B699536A4E2803</iv>
-			<input>4558CD47C012B7293396D7EDFE3CEA85</input>
-			<output>6F43B6B28AEF5DD1B66279ACAAB9A589</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2404CA135FEC63FCC729C9D71B36B502</key>
-			<iv>B3E6DA8DE5DDF7ED6F832D1306A1C04A</iv>
-			<input>6F43B6B28AEF5DD1B66279ACAAB9A589</input>
-			<output>1BA743E148BC164C4C8324D665B5A3BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3FA389F2175075B08BAAED017E8316BF</key>
-			<iv>8BBBB56B39893C8F286561EF6E47E66A</iv>
-			<input>1BA743E148BC164C4C8324D665B5A3BD</input>
-			<output>49A40365092DD1360D916AAEAFD03FC1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>76078A971E7DA486863B87AFD153297E</key>
-			<iv>48BA08703A306F772E78F660173A26B3</iv>
-			<input>49A40365092DD1360D916AAEAFD03FC1</input>
-			<output>DF7DEB5968D683AAA274B0D5D3F9AA03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A97A61CE76AB272C244F377A02AA837D</key>
-			<iv>0C7832F9CDF65DADA7FA809B8DE709C3</iv>
-			<input>DF7DEB5968D683AAA274B0D5D3F9AA03</input>
-			<output>69689E97E9B166DA53E25BDFBCAF4A97</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C012FF599F1A41F677AD6CA5BE05C9EA</key>
-			<iv>05BC03F59CD8C5FAE4A7240E6168CF41</iv>
-			<input>69689E97E9B166DA53E25BDFBCAF4A97</input>
-			<output>5F87DC71EF2918F75A94E43007FF50E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F952328703359012D398895B9FA990C</key>
-			<iv>4233E654802B55155E158B650B64718E</iv>
-			<input>5F87DC71EF2918F75A94E43007FF50E6</input>
-			<output>4F170790775A6A147E99D251C401969A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D08224B80769331553A05AC47DFB0F96</key>
-			<iv>4AEAE53003D5085F5963CC36C4589941</iv>
-			<input>4F170790775A6A147E99D251C401969A</input>
-			<output>E566D46360EF38E5CFF0C2E7E7E0D679</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>35E4F0DB67860BF09C5098239A1BD9EF</key>
-			<iv>F6CBFF51F6E59B7AAA9EB1261707429A</iv>
-			<input>E566D46360EF38E5CFF0C2E7E7E0D679</input>
-			<output>F7189C4B9E1048ED66D9B7CCD089C5F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2FC6C90F996431DFA892FEF4A921C16</key>
-			<iv>0A05A4BFBBCC8B3E218C123A95FFF475</iv>
-			<input>F7189C4B9E1048ED66D9B7CCD089C5F9</input>
-			<output>68FB0909789DBFA672BEEF5DF0017B63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA076599810BFCBB8837C0B2BA936775</key>
-			<iv>DF1A3AF147E72C2CEAE5D8713D52F572</iv>
-			<input>68FB0909789DBFA672BEEF5DF0017B63</input>
-			<output>AF2784590089186BED3A48ADC1B68562</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0520E1C08182E4D0650D881F7B25E217</key>
-			<iv>BFDC5ECF596F5F3CFFEAAF4B961209FA</iv>
-			<input>AF2784590089186BED3A48ADC1B68562</input>
-			<output>E8C29D3C129AB8FA797EFDCE4CE4D4F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EDE27CFC93185C2A1C7375D137C136E5</key>
-			<iv>49195E71516D5117C26814F98FD94C31</iv>
-			<input>E8C29D3C129AB8FA797EFDCE4CE4D4F2</input>
-			<output>6ACF2AE12C38DB520F49E6C90D4B8F03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>872D561DBF208778133A93183A8AB9E6</key>
-			<iv>E4FA7788D6E7AFBD08884BFCFA74D30C</iv>
-			<input>6ACF2AE12C38DB520F49E6C90D4B8F03</input>
-			<output>78FEA3B57D6176C44CE753FB01416CA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FFD3F5A8C241F1BC5FDDC0E33BCBD540</key>
-			<iv>08E333F43615229D95E7C425A04EA2B7</iv>
-			<input>78FEA3B57D6176C44CE753FB01416CA6</input>
-			<output>5030D7131ABBD7AC323BA31B602B776E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AFE322BBD8FA26106DE663F85BE0A22E</key>
-			<iv>64BDE35106D9A66A4216EA20F6C52D06</iv>
-			<input>5030D7131ABBD7AC323BA31B602B776E</input>
-			<output>14B32E8BD3BD9D82613E32536E6A9F91</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB500C300B47BB920CD851AB358A3DBF</key>
-			<iv>8FB9E6BDCD50610E97CF731216CFE698</iv>
-			<input>14B32E8BD3BD9D82613E32536E6A9F91</input>
-			<output>1F22542AFCE63AA92CCDAF45F8DAEEF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A472581AF7A1813B2015FEEECD50D34F</key>
-			<iv>E18B3C5EDA8CDA9E94A376CEEF687D9F</iv>
-			<input>1F22542AFCE63AA92CCDAF45F8DAEEF0</input>
-			<output>FC986510E3ED40994D1C33201D0EDB27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58EA3D0A144CC1A26D09CDCED05E0868</key>
-			<iv>D1828C9DDB263064AD259A2360B3DFBA</iv>
-			<input>FC986510E3ED40994D1C33201D0EDB27</input>
-			<output>06C1CE557C9AC5D40560CF2D40DCC47C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E2BF35F68D60476686902E39082CC14</key>
-			<iv>3454FD0698CC8CD949970509C23E50F6</iv>
-			<input>06C1CE557C9AC5D40560CF2D40DCC47C</input>
-			<output>4287FA420FD9AFCAB7E290273BDF4054</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1CAC091D670FABBCDF8B92C4AB5D8C40</key>
-			<iv>C2F0C044A975ADBD20DE56858A074886</iv>
-			<input>4287FA420FD9AFCAB7E290273BDF4054</input>
-			<output>447AFDD3ACF0DEEB0385799789FBAFF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58D6F4CECBFF7557DC0EEB5322A623B0</key>
-			<iv>299C337821B0779A7ADC3A04316A6373</iv>
-			<input>447AFDD3ACF0DEEB0385799789FBAFF0</input>
-			<output>BA0BBC980827E87EEA51E66C92C96B31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E2DD4856C3D89D29365F0D3FB06F4881</key>
-			<iv>2368291AD179C3C143E636898EB3E104</iv>
-			<input>BA0BBC980827E87EEA51E66C92C96B31</input>
-			<output>77A6131415B251049423FFFB1F3A8A3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>957B5B42D66ACC2DA27CF2C4AF55C2BB</key>
-			<iv>14300EA81B57E102AEDD97CCD466E18A</iv>
-			<input>77A6131415B251049423FFFB1F3A8A3A</input>
-			<output>A7AEC0CC599D56347A72D934DDAC7899</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>32D59B8E8FF79A19D80E2BF072F9BA22</key>
-			<iv>FD62415C90DACCD22EC364877DB0CB24</iv>
-			<input>A7AEC0CC599D56347A72D934DDAC7899</input>
-			<output>1B1100FCB9F85D8CCFDEC5865083B44D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>29C49B72360FC79517D0EE76227A0E6F</key>
-			<iv>6CB24892D26E43E63819C372D5EB4F6D</iv>
-			<input>1B1100FCB9F85D8CCFDEC5865083B44D</input>
-			<output>33E9BBD018604F301C2543878FCCCA5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A2D20A22E6F88A50BF5ADF1ADB6C433</key>
-			<iv>50D84A03998B897D1AE217FEA9A955C4</iv>
-			<input>33E9BBD018604F301C2543878FCCCA5C</input>
-			<output>07163D652DB035C091830042D6047DF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1D3B1DC703DFBD659A76ADB37BB2B9C0</key>
-			<iv>092DF26C855F07690836203E3E1790D0</iv>
-			<input>07163D652DB035C091830042D6047DF3</input>
-			<output>AD6647AF8EFCD4F3B2ECDB4D6FFFC1EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B05D5A688D236996289A76FE144D782B</key>
-			<iv>68634C941957E3F58F71BE37D7C5C78B</iv>
-			<input>AD6647AF8EFCD4F3B2ECDB4D6FFFC1EB</input>
-			<output>D2B51122154D10F67D2C07BD75D5E8E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>62E84B4A986E796055B67143619890C9</key>
-			<iv>3C85044F6438FAA021BB7985A63A959D</iv>
-			<input>D2B51122154D10F67D2C07BD75D5E8E2</input>
-			<output>4131E9296FECD2DF35EDFBF0CBD0E54B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>23D9A263F782ABBF605B8AB3AA487582</key>
-			<iv>46D47F3F12B6ADD5580CE8CE7C7359CD</iv>
-			<input>4131E9296FECD2DF35EDFBF0CBD0E54B</input>
-			<output>5AEA3E73A6EC0D9D683A3526AC1C0E58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>79339C10516EA6220861BF9506547BDA</key>
-			<iv>D3C58B190FDA0838C770C2185C553D97</iv>
-			<input>5AEA3E73A6EC0D9D683A3526AC1C0E58</input>
-			<output>A21B17CB4588C30CAD6DF25A5E83E273</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DB288BDB14E6652EA50C4DCF58D799A9</key>
-			<iv>870E7F0E3109712E84C58BEC0E7032F6</iv>
-			<input>A21B17CB4588C30CAD6DF25A5E83E273</input>
-			<output>0021FF3BB8336E607B8DE10117005230</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DB0974E0ACD50B4EDE81ACCE4FD7CB99</key>
-			<iv>2FC82B298A60FC40DA3EFD4E800DB063</iv>
-			<input>0021FF3BB8336E607B8DE10117005230</input>
-			<output>2EFA32680ECD84891B447393F7C1AC88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F5F34688A2188FC7C5C5DF5DB8166711</key>
-			<iv>E1B86C9FC466B72BE40F65973FC41FC4</iv>
-			<input>2EFA32680ECD84891B447393F7C1AC88</input>
-			<output>722117C1EE83FBA840EFEE86A930579F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>87D251494C9B746F852A31DB1126308E</key>
-			<iv>48E347A705B6E322153BFE567931346F</iv>
-			<input>722117C1EE83FBA840EFEE86A930579F</input>
-			<output>A684344231EC4C03726A0DC20EADA36D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2156650B7D77386CF7403C191F8B93E3</key>
-			<iv>4CD618E5F959FC4C66602263F6C5C652</iv>
-			<input>A684344231EC4C03726A0DC20EADA36D</input>
-			<output>F40BFBEAC1C1BD1621FBAE1B605BD092</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D55D9EE1BCB6857AD6BB92027FD04371</key>
-			<iv>5A41E8952E6B1C551C4691DE9C0A4B6D</iv>
-			<input>F40BFBEAC1C1BD1621FBAE1B605BD092</input>
-			<output>6ECDBFB3947C7E81C7BD4BE93B603728</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB90215228CAFBFB1106D9EB44B07459</key>
-			<iv>52E2726B0855F993E1075077B3AB1E77</iv>
-			<input>6ECDBFB3947C7E81C7BD4BE93B603728</input>
-			<output>71E051375A3B974FE523DA47862E24AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CA70706572F16CB4F42503ACC29E50F7</key>
-			<iv>76B6637161FBE4760FCE90E9868B441A</iv>
-			<input>71E051375A3B974FE523DA47862E24AE</input>
-			<output>CC6CFBCF9A62A3AE55F6B040673B25B3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>061C8BAAE893CF1AA1D3B3ECA5A57544</key>
-			<iv>5563B0C2350A4ED76EE0C322480884FB</iv>
-			<input>CC6CFBCF9A62A3AE55F6B040673B25B3</input>
-			<output>DA71B26C4EE3FB1FD413FD0757B379E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DC6D39C6A670340575C04EEBF2160CA2</key>
-			<iv>45C1C5DAF8DE9170C01E554DD36C564E</iv>
-			<input>DA71B26C4EE3FB1FD413FD0757B379E6</input>
-			<output>BCD4BC394FFB46207EF0A8EC9883BD55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>60B985FFE98B72250B30E6076A95B1F7</key>
-			<iv>38E5B69E6D82A760BFD65CBAACC56F8A</iv>
-			<input>BCD4BC394FFB46207EF0A8EC9883BD55</input>
-			<output>FD997E7A7B77E5DF637182399779AF75</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D20FB8592FC97FA6841643EFDEC1E82</key>
-			<iv>8EB39B261910419E43B178DCD6803572</iv>
-			<input>FD997E7A7B77E5DF637182399779AF75</input>
-			<output>71749C51136457B604CD8B4C193928A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EC5467D48198C04C6C8CEF72E4D5362A</key>
-			<iv>6DFA447305215066A0B5671E5AB80951</iv>
-			<input>71749C51136457B604CD8B4C193928A8</input>
-			<output>DF48D76E54B4264304B0EC036DFDADDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>331CB0BAD52CE60F683C037189289BF4</key>
-			<iv>8C2B316ECA96DB57322853E07BE47AB3</iv>
-			<input>DF48D76E54B4264304B0EC036DFDADDE</input>
-			<output>5E2BD374B9856C573A4DEBF1B8F453EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6D3763CE6CA98A585271E88031DCC818</key>
-			<iv>E541AC59CFDBEA97D1AE5221F849838E</iv>
-			<input>5E2BD374B9856C573A4DEBF1B8F453EC</input>
-			<output>D7F97B76A8D3076D343A22459EC4765D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BACE18B8C47A8D35664BCAC5AF18BE45</key>
-			<iv>B359889A22B9502571E4817C47BC5348</iv>
-			<input>D7F97B76A8D3076D343A22459EC4765D</input>
-			<output>E24F05EEE812BD3389AC0AAC4172F5C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58811D562C683006EFE7C069EE6A4B83</key>
-			<iv>33F8D881A783051987103096B6C734C3</iv>
-			<input>E24F05EEE812BD3389AC0AAC4172F5C6</input>
-			<output>A2AB44CC9C41A8748201DA6F9429AB39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FA2A599AB02998726DE61A067A43E0BA</key>
-			<iv>2028704442AE252BCF1D081C5EE2D80B</iv>
-			<input>A2AB44CC9C41A8748201DA6F9429AB39</input>
-			<output>E8FA100D1D28186196BAF990A80109AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>12D04997AD018013FB5CE396D242E910</key>
-			<iv>6384E3612062BC6850C94C3B14934A6F</iv>
-			<input>E8FA100D1D28186196BAF990A80109AA</input>
-			<output>683AEF47A8990E2F8AAD8813789069B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7AEAA6D005988E3C71F16B85AAD280A1</key>
-			<iv>12F78728F3B0EFAC7D304257E47ED5C8</iv>
-			<input>683AEF47A8990E2F8AAD8813789069B1</input>
-			<output>F3121C95A5BACDEAEFA87C4EE40B6C6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>89F8BA45A02243D69E5917CB4ED9ECCC</key>
-			<iv>FE654BC69677E13383C4206BFB7896A6</iv>
-			<input>F3121C95A5BACDEAEFA87C4EE40B6C6D</input>
-			<output>AE9701378E128847A2669B516795D586</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>276FBB722E30CB913C3F8C9A294C394A</key>
-			<iv>E79D5C468BCBA36A79B74F32F28FA635</iv>
-			<input>AE9701378E128847A2669B516795D586</input>
-			<output>D97D988A40C5B323794F160FE8639262</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FE1223F86EF578B245709A95C12FAB28</key>
-			<iv>4F3055450C627AD4712E042666AC0812</iv>
-			<input>D97D988A40C5B323794F160FE8639262</input>
-			<output>32381BA55D5C0C91D683D57593772496</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CC2A385D33A9742393F34FE052588FBE</key>
-			<iv>172165B468B83B62B41A2B4310461193</iv>
-			<input>32381BA55D5C0C91D683D57593772496</input>
-			<output>4D555F31A60F1007B96FBB458B06A619</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>817F676C95A664242A9CF4A5D95E29A7</key>
-			<iv>5D5EEBEA67DCD5F7851619F1BAA6414E</iv>
-			<input>4D555F31A60F1007B96FBB458B06A619</input>
-			<output>23D1AC0F18C20FCE7E5CC4619F8376D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2AECB638D646BEA54C030C446DD5F72</key>
-			<iv>54154B82B5820D5892DABD15B403345D</iv>
-			<input>23D1AC0F18C20FCE7E5CC4619F8376D5</input>
-			<output>2E55905A38F818CC04D8A792D2007332</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8CFB5B39B59C73265018975694DD2C40</key>
-			<iv>AC47D7619A587DC8213B749918FCFEA8</iv>
-			<input>2E55905A38F818CC04D8A792D2007332</input>
-			<output>010F3396885F8F6BF15170B8E6D221BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8DF468AF3DC3FC4DA149E7EE720F0DFD</key>
-			<iv>6CE249D2E89C61ACD029AA3C122427D1</iv>
-			<input>010F3396885F8F6BF15170B8E6D221BD</input>
-			<output>4DB3972D9851B8A4B3150A43210D36F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C047FF82A59244E9125CEDAD53023B0D</key>
-			<iv>07A578889914E113C1C4DE01DC4B1DE4</iv>
-			<input>4DB3972D9851B8A4B3150A43210D36F0</input>
-			<output>84F64CFFD705E82704FF3DA4FC074B34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44B1B37D7297ACCE16A3D009AF057039</key>
-			<iv>CE73ADCD7BCF1807C084276EDD765256</iv>
-			<input>84F64CFFD705E82704FF3DA4FC074B34</input>
-			<output>5964DF8E8D656846EE574635787F7B18</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1DD56CF3FFF2C488F8F4963CD77A0B21</key>
-			<iv>679903574013011E62CC5798B9633607</iv>
-			<input>5964DF8E8D656846EE574635787F7B18</input>
-			<output>E28E7E3AA93802BEEFE258F38F5D2E5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FF5B12C956CAC6361716CECF5827257D</key>
-			<iv>678D8583A022C60BCE2C227627A548B2</iv>
-			<input>E28E7E3AA93802BEEFE258F38F5D2E5C</input>
-			<output>D297684A7C50765C413BFA37B5E1E256</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2DCC7A832A9AB06A562D34F8EDC6C72B</key>
-			<iv>4EF9AACC21733B65B4DD0B1F105D4037</iv>
-			<input>D297684A7C50765C413BFA37B5E1E256</input>
-			<output>9EF5F9A2B14B090A201DE74E4CF714C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B33983219BD1B9607630D3B6A131D3E3</key>
-			<iv>5CC41FCC9EC19619BA06D10BBC6E1F5F</iv>
-			<input>9EF5F9A2B14B090A201DE74E4CF714C8</input>
-			<output>81EF000CF6CA737E0F449927E66F6392</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>32D6832D6D1BCA1E79744A91475EB071</key>
-			<iv>6DE60CE2986CF80C5D588FA1F9A8C3A0</iv>
-			<input>81EF000CF6CA737E0F449927E66F6392</input>
-			<output>3BE177EE9F8F7BE3BCE0FAA70C0A5025</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0937F4C3F294B1FDC594B0364B54E054</key>
-			<iv>BE2F86A52BEED4497790D6134CF0D64E</iv>
-			<input>3BE177EE9F8F7BE3BCE0FAA70C0A5025</input>
-			<output>DD313134DB126529F349808B3E766795</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D406C5F72986D4D436DD30BD752287C1</key>
-			<iv>A89E52478FDEF91AF151097CED84579C</iv>
-			<input>DD313134DB126529F349808B3E766795</input>
-			<output>330203EA36484C8E091F00CD2255E599</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E704C61D1FCE985A3FC2307057776258</key>
-			<iv>1AEF7BA63A3E3B6D2EB8EB1980D3E581</iv>
-			<input>330203EA36484C8E091F00CD2255E599</input>
-			<output>E28A47CDB7DB0351006C1D9FB227FCEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>058E81D0A8159B0B3FAE2DEFE5509EB7</key>
-			<iv>F67C7FCF8C5AA1574A165D8CBE694BF4</iv>
-			<input>E28A47CDB7DB0351006C1D9FB227FCEF</input>
-			<output>ACF869797690853BE142BB7BAC735FC8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A976E8A9DE851E30DEEC96944923C17F</key>
-			<iv>636F181C4735E700897928BFC60A43EB</iv>
-			<input>ACF869797690853BE142BB7BAC735FC8</input>
-			<output>60FF9BF36809DAEB94F823FC6458B26A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C989735AB68CC4DB4A14B5682D7B7315</key>
-			<iv>0829C0EE6B170C490C7A73401761CEAA</iv>
-			<input>60FF9BF36809DAEB94F823FC6458B26A</input>
-			<output>17630CBEAB904F7996301515F24A1F27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DEEA7FE41D1C8BA2DC24A07DDF316C32</key>
-			<iv>A4E0624D86F1098D2DD4D0408897ACED</iv>
-			<input>17630CBEAB904F7996301515F24A1F27</input>
-			<output>A1E35C3E2FA1B1DB11DB96E7DD58AB37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7F0923DA32BD3A79CDFF369A0269C705</key>
-			<iv>D3639A296FF168ED773785CFCACD1015</iv>
-			<input>A1E35C3E2FA1B1DB11DB96E7DD58AB37</input>
-			<output>14F5408460708A69A22A2023B01969CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6BFC635E52CDB0106FD516B9B270AECB</key>
-			<iv>37CD0428A0C08CC6AABAAA05D8830557</iv>
-			<input>14F5408460708A69A22A2023B01969CE</input>
-			<output>516991CA6530D20AB121394F51288880</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3A95F29437FD621ADEF42FF6E358264B</key>
-			<iv>FB52F5A95F2E3665D44F0AEACB88B108</iv>
-			<input>516991CA6530D20AB121394F51288880</input>
-			<output>FB0C32B66729736F8E5EC8C92D80FDC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C199C02250D4117550AAE73FCED8DB8E</key>
-			<iv>403B43C740215D94E8FBAE22846D3B0A</iv>
-			<input>FB0C32B66729736F8E5EC8C92D80FDC5</input>
-			<output>C243054D022E7E9EFC21F965C71D63EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>03DAC56F52FA6FEBAC8B1E5A09C5B865</key>
-			<iv>663796B211E7F6E05B4A107B16A904B0</iv>
-			<input>C243054D022E7E9EFC21F965C71D63EB</input>
-			<output>6CA56F6792355B2A7A60A4467A85F71E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6F7FAA08C0CF34C1D6EBBA1C73404F7B</key>
-			<iv>A23B73DF1477EC98202135164C6EF1AB</iv>
-			<input>6CA56F6792355B2A7A60A4467A85F71E</input>
-			<output>BC590C8B427B013F873B2F5F8D66D5D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D326A68382B435FE51D09543FE269AAA</key>
-			<iv>E84DF462C62D594AAD94C33C446E18FC</iv>
-			<input>BC590C8B427B013F873B2F5F8D66D5D1</input>
-			<output>D37CAA9BEA300FF6219349DBA25DA0A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>005A0C1868843A087043DC985C7B3A0C</key>
-			<iv>9AAD322884EBE93D0FA084E144600174</iv>
-			<input>D37CAA9BEA300FF6219349DBA25DA0A6</input>
-			<output>AE50C328AFFC39A103C767C1FD337449</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE0ACF30C77803A97384BB59A1484E45</key>
-			<iv>9CEE91362FB0D50ABCEB58EF49EC3614</iv>
-			<input>AE50C328AFFC39A103C767C1FD337449</input>
-			<output>882939453C6E156CD023B468EDD16C95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2623F675FB1616C5A3A70F314C9922D0</key>
-			<iv>5626126CC424BF26D92C822442E4221E</iv>
-			<input>882939453C6E156CD023B468EDD16C95</input>
-			<output>B9A97FE0DEF66604F6CE928AAB532EC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F8A899525E070C155699DBBE7CA0C12</key>
-			<iv>E5BB374C14E36FD0C2D5F9191C967EC7</iv>
-			<input>B9A97FE0DEF66604F6CE928AAB532EC2</input>
-			<output>6ED0FF2FE8DA900A33AE20F7C1C2E457</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F15A76BACD3AE0CB66C7BD4C2608E845</key>
-			<iv>4493B9F0FF63D392273302B6932C8F77</iv>
-			<input>6ED0FF2FE8DA900A33AE20F7C1C2E457</input>
-			<output>B7583A56BED55067A520B4F5E5C1528F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>46024CEC73EFB0ACC3E709B9C3C9BACA</key>
-			<iv>12E2BFD3EAB69E5132E3CDF8BAFBD45E</iv>
-			<input>B7583A56BED55067A520B4F5E5C1528F</input>
-			<output>28874485575E292B0C83E1B568019BF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6E85086924B19987CF64E80CABC8213A</key>
-			<iv>3CEFDC726C919CA265CD6C28A05DE542</iv>
-			<input>28874485575E292B0C83E1B568019BF0</input>
-			<output>A35D16BBB96BF3F9E06D96EDA9BB44BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CDD81ED29DDA6A7E2F097EE102736581</key>
-			<iv>4AE79901700F018D1E5D95A9FAD762F2</iv>
-			<input>A35D16BBB96BF3F9E06D96EDA9BB44BB</input>
-			<output>367E6880D369D482E7E64CFCD1BCC870</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FBA676524EB3BEFCC8EF321DD3CFADF1</key>
-			<iv>52EEDB058A8E1FE7C651D484F86F941F</iv>
-			<input>367E6880D369D482E7E64CFCD1BCC870</input>
-			<output>32B33E97C94953392A738A964DB121FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C91548C587FAEDC5E29CB88B9E7E8C0D</key>
-			<iv>B3704291187E9D55901DD237EC1E2F24</iv>
-			<input>32B33E97C94953392A738A964DB121FC</input>
-			<output>965A9A0C0287AB8535436E95CC9BFB99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5F4FD2C9857D4640D7DFD61E52E57794</key>
-			<iv>B3878FC256FA4F9ED0BA05FF51C0CE2A</iv>
-			<input>965A9A0C0287AB8535436E95CC9BFB99</input>
-			<output>367A5C93099ACF72353DAC320A3B766E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>69358E5A8CE78932E2E27A2C58DE01FA</key>
-			<iv>774EA78AECAF5A1D7CC1785DE91CAB01</iv>
-			<input>367A5C93099ACF72353DAC320A3B766E</input>
-			<output>116EDEB1D0E6F8D1BB58AF648429B792</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>785B50EB5C0171E359BAD548DCF7B668</key>
-			<iv>FB1EC4218C5F733A54DEA7F753F45D68</iv>
-			<input>116EDEB1D0E6F8D1BB58AF648429B792</input>
-			<output>EF3C679822E3A906F380CD07EBE65F09</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>976737737EE2D8E5AA3A184F3711E961</key>
-			<iv>8BBE09AFE41C5A78EBA0524212AC570F</iv>
-			<input>EF3C679822E3A906F380CD07EBE65F09</input>
-			<output>291B066A30A3B11681D414A4BB5311D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BE7C31194E4169F32BEE0CEB8C42F8B4</key>
-			<iv>4E8F651C06778A964AA7D43999E41FD6</iv>
-			<input>291B066A30A3B11681D414A4BB5311D5</input>
-			<output>764F8FD22FE0BD98852F259EA6DC6F7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C833BECB61A1D46BAEC129752A9E97C8</key>
-			<iv>E90A35007EE7F001D1F5982BF2477C82</iv>
-			<input>764F8FD22FE0BD98852F259EA6DC6F7C</input>
-			<output>66016373A6B1A3797A1B2D2B19B73126</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE32DDB8C7107712D4DA045E3329A6EE</key>
-			<iv>46FF289808B1AF6B290CB5AF05747085</iv>
-			<input>66016373A6B1A3797A1B2D2B19B73126</input>
-			<output>3367064ECF5CA978001887DBDE40DE5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D55DBF6084CDE6AD4C28385ED6978B4</key>
-			<iv>9BAC8819E1CA613CFAA730FBC2034168</iv>
-			<input>3367064ECF5CA978001887DBDE40DE5A</input>
-			<output>5C4F01D47C9DA94DE95FC26763CC1146</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C11ADA2274D177273D9D41E28EA569F2</key>
-			<iv>A5CE34A846E1D0A737963C49FAD6378E</iv>
-			<input>5C4F01D47C9DA94DE95FC26763CC1146</input>
-			<output>D41D854E42863F161E76A2397020C321</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>15075F6C3657483123EBE3DBFE85AAD3</key>
-			<iv>2CC823722DD3E8F15035875ED43513E2</iv>
-			<input>D41D854E42863F161E76A2397020C321</input>
-			<output>1C542DC0B54A053471AF583C909AB3C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>095372AC831D4D055244BBE76E1F1917</key>
-			<iv>9799D03B6AD46BECD981279B35DF707C</iv>
-			<input>1C542DC0B54A053471AF583C909AB3C4</input>
-			<output>958D0254D7AFE1E678A9844DF4F4D18D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9CDE70F854B2ACE32AED3FAA9AEBC89A</key>
-			<iv>E0E401C7BA5E319F0D60AB765CBEE176</iv>
-			<input>958D0254D7AFE1E678A9844DF4F4D18D</input>
-			<output>C54888169B30587E732BD7213EE5B1A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5996F8EECF82F49D59C6E88BA40E7939</key>
-			<iv>711DA6521732E6868111DCC1C835F9DF</iv>
-			<input>C54888169B30587E732BD7213EE5B1A3</input>
-			<output>446F234FCADA809A8B2E167A86C9EB36</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1DF9DBA105587407D2E8FEF122C7920F</key>
-			<iv>B7008BC907C546A56743C292185C2B02</iv>
-			<input>446F234FCADA809A8B2E167A86C9EB36</input>
-			<output>6AD93BC7E18B48810664CD1C528BA6C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7720E066E4D33C86D48C33ED704C34CB</key>
-			<iv>4D7DD98183E56F71D72DB76187FC5F95</iv>
-			<input>6AD93BC7E18B48810664CD1C528BA6C4</input>
-			<output>0D75BD2B8683FB819EB7F71E2E0836A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7A555D4D6250C7074A3BC4F35E44026C</key>
-			<iv>F4DCFB73BBE7EB5348D56F81BCBC0971</iv>
-			<input>0D75BD2B8683FB819EB7F71E2E0836A7</input>
-			<output>8CBE14862E93FE011A4F45518C7258FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F6EB49CB4CC33906507481A2D2365A96</key>
-			<iv>5432FBF1480AA398F09CA5AF375FA394</iv>
-			<input>8CBE14862E93FE011A4F45518C7258FA</input>
-			<output>4026D669905762F0790B6497646A2D4D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B6CD9FA2DC945BF6297FE535B65C77DB</key>
-			<iv>CA462DC9F029A8311CA45A4116DADC1D</iv>
-			<input>4026D669905762F0790B6497646A2D4D</input>
-			<output>A8CD2E187CF274756E5736D420853435</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1E00B1BAA0662F834728D3E196D943EE</key>
-			<iv>4FC9E7688352F4700C5F380BFD1F4FB2</iv>
-			<input>A8CD2E187CF274756E5736D420853435</input>
-			<output>A99410B60322340E279C87D3D26793AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B794A10CA3441B8D60B4543244BED044</key>
-			<iv>4D90B1A30EB7E957FAE3DC8C132F4F42</iv>
-			<input>A99410B60322340E279C87D3D26793AA</input>
-			<output>D136F990196C667EC35E3A0492C39968</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>66A2589CBA287DF3A3EA6E36D67D492C</key>
-			<iv>6FAD87F358F0C702C5E9E599093219ED</iv>
-			<input>D136F990196C667EC35E3A0492C39968</input>
-			<output>8CE49C1BAACAB69432DDA2FF4250C7B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EA46C48710E2CB679137CCC9942D8E9E</key>
-			<iv>2B6FF495B7E482360E31949C7C9B2E2B</iv>
-			<input>8CE49C1BAACAB69432DDA2FF4250C7B2</input>
-			<output>7942B80F57EA24FA200451B37899F9E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>93047C884708EF9DB1339D7AECB4777C</key>
-			<iv>21FDC4C9B03A1A9A3F87FF9AAC80FAAE</iv>
-			<input>7942B80F57EA24FA200451B37899F9E2</input>
-			<output>DE156D56E199FDBB2600DBF9FC254003</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4D1111DEA6911226973346831091377F</key>
-			<iv>387612E399C62916B394A9FC6BC0F059</iv>
-			<input>DE156D56E199FDBB2600DBF9FC254003</input>
-			<output>C302C494D910640271695324E64B0992</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8E13D54A7F817624E65A15A7F6DA3EED</key>
-			<iv>34BCABDE4646BCC05CAF7E61CBF1F8D2</iv>
-			<input>C302C494D910640271695324E64B0992</input>
-			<output>110CE84E5B81867CE4FCCD1BBB5FD792</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F1F3D042400F05802A6D8BC4D85E97F</key>
-			<iv>C7898DA9ABF2A3D364C228A83525B04F</iv>
-			<input>110CE84E5B81867CE4FCCD1BBB5FD792</input>
-			<output>7B94C0E4849AD65291F0F7BD464C544C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E48BFDE0A09A260A93562F010BC9BD33</key>
-			<iv>00E079EEBC47AF3ED3796DBF4A2B55FC</iv>
-			<input>7B94C0E4849AD65291F0F7BD464C544C</input>
-			<output>D6518596BB53E44452393BD4440D805C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>32DA78761BC9C24EC16F14D54FC43D6F</key>
-			<iv>03E168F8AF2303593E0F936648D253DC</iv>
-			<input>D6518596BB53E44452393BD4440D805C</input>
-			<output>0C4B51FB33380BB215F29F3FCE7CA0DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3E91298D28F1C9FCD49D8BEA81B89DB5</key>
-			<iv>15E1ECD59BC092C974FA4738C66D9604</iv>
-			<input>0C4B51FB33380BB215F29F3FCE7CA0DA</input>
-			<output>3FC98D86A558B711807930AAA391C9BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0158A40B8DA97EED54E4BB402229540A</key>
-			<iv>303BD4A407015A9E899816E0FABF288D</iv>
-			<input>3FC98D86A558B711807930AAA391C9BF</input>
-			<output>85D77D90C312FE938F6C1983014BD572</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>848FD99B4EBB807EDB88A2C323628178</key>
-			<iv>E018FA96FD433CFD162E8E67D4F37015</iv>
-			<input>85D77D90C312FE938F6C1983014BD572</input>
-			<output>4F49C1740EA88B5767CE36C95158DD63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CBC618EF40130B29BC46940A723A5C1B</key>
-			<iv>84013D3E2AA0C77650644CD6862096A7</iv>
-			<input>4F49C1740EA88B5767CE36C95158DD63</input>
-			<output>E6F1409ABA890AC3A50FC4AAD82E1872</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2D375875FA9A01EA194950A0AA144469</key>
-			<iv>8BFD137593BFF254414349F1147B9BFF</iv>
-			<input>E6F1409ABA890AC3A50FC4AAD82E1872</input>
-			<output>66F6E29696CFDC72EE905636614D2A72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4BC1BAE36C55DD98F7D90696CB596E1B</key>
-			<iv>8EC295602FB66C4A2DCA65F66B07E010</iv>
-			<input>66F6E29696CFDC72EE905636614D2A72</input>
-			<output>553B45792AE0625B357C4B68A4BB767F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1EFAFF9A46B5BFC3C2A54DFE6FE21864</key>
-			<iv>5999E221475D06295451E52FF88F9F97</iv>
-			<input>553B45792AE0625B357C4B68A4BB767F</input>
-			<output>FAB6F53166BFDB89DF68D46D423C243E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E44C0AAB200A644A1DCD99932DDE3C5A</key>
-			<iv>49D1944CBD7BE00C671B8E996F9A3EB9</iv>
-			<input>FAB6F53166BFDB89DF68D46D423C243E</input>
-			<output>308DDB3FE0415C46AE450C78FC5F2558</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D4C1D194C04B380CB38895EBD1811902</key>
-			<iv>9785FEE180794318514967B4199CFB93</iv>
-			<input>308DDB3FE0415C46AE450C78FC5F2558</input>
-			<output>6659969D1BD493A3851E75981BACCCB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B2984709DB9FABAF3696E073CA2DD5B2</key>
-			<iv>4FD1DAE14DB75AC0E6C94388805AC3B5</iv>
-			<input>6659969D1BD493A3851E75981BACCCB0</input>
-			<output>B56B950D84DCA131FD8A5E2601037B36</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>07F3D2045F430A9ECB1CBE55CB2EAE84</key>
-			<iv>3ED415E7DDDADD2DC7F0376E6CA42EFE</iv>
-			<input>B56B950D84DCA131FD8A5E2601037B36</input>
-			<output>8648F40FA13018563E6F1A799D9FCD91</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>81BB260BFE7312C8F573A42C56B16315</key>
-			<iv>FEAF76717C0905A601509BD68C6D08E5</iv>
-			<input>8648F40FA13018563E6F1A799D9FCD91</input>
-			<output>66DE6D7A74B36C7EE2737DA526F5C8CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E7654B718AC07EB61700D9897044ABD8</key>
-			<iv>2B808C340320DD64AB9278A9D9A3E247</iv>
-			<input>66DE6D7A74B36C7EE2737DA526F5C8CD</input>
-			<output>9BB0D29CDA21452F60B5897186F3FAFB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7CD599ED50E13B9977B550F8F6B75123</key>
-			<iv>D2EB48117E2E9FB2058800DE1A442799</iv>
-			<input>9BB0D29CDA21452F60B5897186F3FAFB</input>
-			<output>489CDC3A2C1AE7510E03AE36D5EAB0E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>344945D77CFBDCC879B6FECE235DE1C6</key>
-			<iv>427765E0671AA6D32634447687E9B209</iv>
-			<input>489CDC3A2C1AE7510E03AE36D5EAB0E5</input>
-			<output>1D65D0E1235AE47DBCC2C65B59892C4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>292C95365FA138B5C57438957AD4CD8A</key>
-			<iv>D75E9F074D965FE902287B3BB1483315</iv>
-			<input>1D65D0E1235AE47DBCC2C65B59892C4C</input>
-			<output>E75B7AE5A8C3B93F15D0E3EBD04E1B4B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CE77EFD3F762818AD0A4DB7EAA9AD6C1</key>
-			<iv>5455FD9A01E04E48CA777CF8185697ED</iv>
-			<input>E75B7AE5A8C3B93F15D0E3EBD04E1B4B</input>
-			<output>11F4A35F6C225A9DF1CA6BAF92E11B07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DF834C8C9B40DB17216EB0D1387BCDC6</key>
-			<iv>3C608F664492626B2208DC92E819411A</iv>
-			<input>11F4A35F6C225A9DF1CA6BAF92E11B07</input>
-			<output>9B8FB71E035CEFF9CBFA1346E5ACEFE0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC192.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6802 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Dec 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>5DF678DD17BA4E75B61768C6ADEF7C7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8AB601AF30C47B225DF678DD17BA4E75B61768C6ADEF7C7B</key>
-			<iv>3B243F1A9BA094EE8AB601AF30C47B22</iv>
-			<input>5DF678DD17BA4E75B61768C6ADEF7C7B</input>
-			<output>F9604074F8FA45AC71959888DD056F9F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D443B8E25A882D05A49638A9EF400BD9C782F04E70EA13E4</key>
-			<iv>467E32A79443B0735EF5B94D6A4C5627</iv>
-			<input>F9604074F8FA45AC71959888DD056F9F</input>
-			<output>98A957EA6DBE623B7E08F919812A3898</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5742DCD38C8FD46D3C3F6F4382FE69E2B98A0957F1C02B7C</key>
-			<iv>B9E1062EEDD9A1ED83016431D607F968</iv>
-			<input>98A957EA6DBE623B7E08F919812A3898</input>
-			<output>AD6D29D6482764BB4BC27A87AE5CD877</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B33625F7872DE4A191524695CAD90D59F24873D05F9CF30B</key>
-			<iv>BD1AAC94D2D39445E474F9240BA230CC</iv>
-			<input>AD6D29D6482764BB4BC27A87AE5CD877</input>
-			<output>DA5EB591FDC48F0D9E4EBD373E5717A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>35DA9F0A5DB187964B0CF304371D82546C06CEE761CBE4A8</key>
-			<iv>4782561ED717916986ECBAFDDA9C6337</iv>
-			<input>DA5EB591FDC48F0D9E4EBD373E5717A3</input>
-			<output>3F6E771434E26D4FA5A57CEF9DEE05D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A8182E4F8FD8C7987462841003FFEF1BC9A3B208FC25E17E</key>
-			<iv>093273C6E96EA5399DC2B145D269400E</iv>
-			<input>3F6E771434E26D4FA5A57CEF9DEE05D6</input>
-			<output>F8FBFC8CBDD4AA8E8DA58DEA7F2F344C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>71A581F408C35DA48C99789CBE2B459544063FE2830AD532</key>
-			<iv>3900E8650CA62A25D9BDAFBB871B9A3C</iv>
-			<input>F8FBFC8CBDD4AA8E8DA58DEA7F2F344C</input>
-			<output>B969AA871D3B35C260D8B36C7E9E8913</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BCD0E4B5F0B7FB5035F0D21BA310705724DE8C8EFD945C21</key>
-			<iv>0E2BCF13C2A18FF5CD756541F874A6F4</iv>
-			<input>B969AA871D3B35C260D8B36C7E9E8913</input>
-			<output>6205EECCDD965D45339A2DFE85F52AD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2796321044D9F5557F53CD77E862D121744A170786176F6</key>
-			<iv>8B935AB4C17D24D21EA98794F4FA6405</iv>
-			<input>6205EECCDD965D45339A2DFE85F52AD7</input>
-			<output>6BC27204DA1B9BC27E463D0E71557D99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD4506295D5309603C374ED3A49DB6D069029C7E09340B6F</key>
-			<iv>A9AF68AB4EFDB7770F3C6508591E9635</iv>
-			<input>6BC27204DA1B9BC27E463D0E71557D99</input>
-			<output>DB1576A8F1BD88F73E6938E72F9C6DCD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61ECB6C8660E5E20E722387B55203E27576BA49926A866A2</key>
-			<iv>DF83746D72419F65CCA9B0E13B5D5740</iv>
-			<input>DB1576A8F1BD88F73E6938E72F9C6DCD</input>
-			<output>150D14977B15FD304890D7B9C4F8536E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>03679C91B6C57828F22F2CEC2E35C3171FFB7320E25035CC</key>
-			<iv>59D101131EA2FD7F628B2A59D0CB2608</iv>
-			<input>150D14977B15FD304890D7B9C4F8536E</input>
-			<output>7AE22B73B412A81D0BCF422C68DA37F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9A087B9DBC37B12988CD079F9A276B0A1434310C8A8A0234</key>
-			<iv>F26F03A3C84A49F0996FE70C0AF2C901</iv>
-			<input>7AE22B73B412A81D0BCF422C68DA37F8</input>
-			<output>2D1584CE9B85E7264228A8AFF8FAFF01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>07489932E5335B38A5D8835101A28C2C561C99A37270FD35</key>
-			<iv>E76AB1C798119F5D9D40E2AF5904EA11</iv>
-			<input>2D1584CE9B85E7264228A8AFF8FAFF01</input>
-			<output>C1067030225453E808F1FF324C44BE7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DC3726E33013BC9964DEF36123F6DFC45EED66913E34434A</key>
-			<iv>55010D6199E792E3DB7FBFD1D520E7A1</iv>
-			<input>C1067030225453E808F1FF324C44BE7F</input>
-			<output>3AD7DBD96BB69D63BE39B9A16574AC74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EDD4EC10B074A36C5E0928B8484042A7E0D4DF305B40EF3E</key>
-			<iv>18C6FE6D0A2FDD7E31E3CAF380671FF5</iv>
-			<input>3AD7DBD96BB69D63BE39B9A16574AC74</input>
-			<output>3D5D82A4C06B9DDCCC8A6B8BF228482F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>23824573BD3CE30D6354AA1C882BDF7B2C5EB4BBA968A711</key>
-			<iv>E1DEAECBCFC06BCCCE56A9630D484061</iv>
-			<input>3D5D82A4C06B9DDCCC8A6B8BF228482F</input>
-			<output>C0E5F9618F2FAB97EA82F8164DC89860</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AAA43BC528933502A3B1537D070474ECC6DC4CADE4A03F71</key>
-			<iv>2CE22FDF7E87B7CC89267EB695AFD60F</iv>
-			<input>C0E5F9618F2FAB97EA82F8164DC89860</input>
-			<output>6942155FC9EF8F7CFE37CD6FED03CECF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2686C442D636D31CAF34622CEEBFB9038EB81C209A3F1BE</key>
-			<iv>B7772CF7B44B856308CC578105F05833</iv>
-			<input>6942155FC9EF8F7CFE37CD6FED03CECF</input>
-			<output>6BA4C261F5173862A6789FB026099571</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>29F645A446D84EACA15784433BFCC3F29E931E722FAA64CF</key>
-			<iv>15CA23A60D99FFF68B9E29E06BBB239D</iv>
-			<input>6BA4C261F5173862A6789FB026099571</input>
-			<output>AA9E8C6497CAC6B0C8CC92F8DFE7B455</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E9165527010387F0BC90827AC360542565F8C8AF04DD09A</key>
-			<iv>53193227307BBE49776720F636C876D3</iv>
-			<input>AA9E8C6497CAC6B0C8CC92F8DFE7B455</input>
-			<output>7DA426C712E7F2F35087D6AA31CF56AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>92DC0EEE09F5169E766D2EE0BED1F7B106D85A20C1828631</key>
-			<iv>85A3D20949963F95CC4D6BBC79E52EE1</iv>
-			<input>7DA426C712E7F2F35087D6AA31CF56AB</input>
-			<output>09B9FF5E5833B6CE0010C3D0C4A84C19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C45B938E7C18B4107FD4D1BEE6E2417F06C899F0052ACA28</key>
-			<iv>292A007187D730B956879D6075EDA28E</iv>
-			<input>09B9FF5E5833B6CE0010C3D0C4A84C19</input>
-			<output>178F7AC0FF63C33683A001F5C4171316</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>03D99546E931B761685BAB7E1981824985689805C13DD93E</key>
-			<iv>A8D8CD3B96215FCDC78206C895290371</iv>
-			<input>178F7AC0FF63C33683A001F5C4171316</input>
-			<output>C39B82763CF6901170902BE6DC1B9305</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B52384CAC0B230F5ABC0290825771258F5F8B3E31D264A3B</key>
-			<iv>451968C3AA8D0319B6FA118C29838794</iv>
-			<input>C39B82763CF6901170902BE6DC1B9305</input>
-			<output>85D827F61EC17FD00B10356292C863E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DCF617A990AC4CBB2E180EFE3BB66D88FEE886818FEE29D9</key>
-			<iv>575103DAEFD233E269D59363501E7C4E</iv>
-			<input>85D827F61EC17FD00B10356292C863E2</input>
-			<output>535BAC956D5CAB917E1A1BC28E82F28F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>14D0FCAFFD961CFD7D43A26B56EAC61980F29D43016CDB56</key>
-			<iv>7DE780ACCF9F1896C826EB066D3A5046</iv>
-			<input>535BAC956D5CAB917E1A1BC28E82F28F</input>
-			<output>7E73E89F187EA6D5F5A3044A19C85941</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AF5BFBC086F1392203304AF44E9460CC7551990918A48217</key>
-			<iv>633F0251217DECEDBB8B076F7B6725DF</iv>
-			<input>7E73E89F187EA6D5F5A3044A19C85941</input>
-			<output>B0976DFD4F0620203AC4ED89D395BAFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>79FFB93DCF243047B3A72709019240EC4F957480CB3138E8</key>
-			<iv>C1AAE3E35613DAADD6A442FD49D50965</iv>
-			<input>B0976DFD4F0620203AC4ED89D395BAFF</input>
-			<output>5ECB838EC7F9F2E7ADBD719599F829B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>681F54ADA7685555ED6CA487C66BB20BE228051552C91151</key>
-			<iv>4F00D9CD31BE1CC611E0ED90684C6512</iv>
-			<input>5ECB838EC7F9F2E7ADBD719599F829B9</input>
-			<output>8DDA96BD88D3D756306D249ABF99F5F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8663BEBF11817A3060B6323A4EB8655DD245218FED50E4A8</key>
-			<iv>7CC24DC4B003DE90EE7CEA12B6E92F65</iv>
-			<input>8DDA96BD88D3D756306D249ABF99F5F9</input>
-			<output>479E96E558540B71508FEF3173A6FC68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>831519BE48B0021A2728A4DF16EC6E2C82CACEBE9EF618C0</key>
-			<iv>59FFA792DC8618070576A7015931782A</iv>
-			<input>479E96E558540B71508FEF3173A6FC68</input>
-			<output>080EA053745BEEBDBC5F7D964EEBD2F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AFC20AF72699543A2F26048C62B780913E95B328D01DCA37</key>
-			<iv>4E5BDD875324CAC02CD713496E295620</iv>
-			<input>080EA053745BEEBDBC5F7D964EEBD2F7</input>
-			<output>B5A58D345C0260A9E274E2E593B76C44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>46AEAF002B9A297E9A8389B83EB5E038DCE151CD43AAA673</key>
-			<iv>C67419FDA89E68B1E96CA5F70D037D44</iv>
-			<input>B5A58D345C0260A9E274E2E593B76C44</input>
-			<output>5200F2D475CA388841CB0DD02C7EB7F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1598E4DD7DA3D7B0C8837B6C4B7FD8B09D2A5C1D6FD41185</key>
-			<iv>9F5C74A1FE2DFF2153364BDD5639FECE</iv>
-			<input>5200F2D475CA388841CB0DD02C7EB7F6</input>
-			<output>B2639C2D26BF2CAF2371CA3A4F3D3476</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FE63AA4A158B41AE7AE0E7416DC0F41FBE5B962720E925F3</key>
-			<iv>2DC59704D531C890EBFB4E976828961E</iv>
-			<input>B2639C2D26BF2CAF2371CA3A4F3D3476</input>
-			<output>C758ADC41E334CCBF34C40E2AEAA3852</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>86B214FA7F89CE06BDB84A8573F3B8D44D17D6C58E431DA1</key>
-			<iv>D0982ADEECE45CCC78D1BEB06A028FA8</iv>
-			<input>C758ADC41E334CCBF34C40E2AEAA3852</input>
-			<output>F8E0AA1E780F18A50371CBCB1B63E83F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C0C34A59DC653DCE4558E09B0BFCA0714E661D0E9520F59E</key>
-			<iv>A252B0F29766A24B46715EA3A3ECF3C8</iv>
-			<input>F8E0AA1E780F18A50371CBCB1B63E83F</input>
-			<output>554B524391A7A1679210CFC0152A65CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3CF3D7DDFFF704231013B2D89A5B0116DC76D2CE800A9050</key>
-			<iv>42EE716B821C18FCFC309D84239239ED</iv>
-			<input>554B524391A7A1679210CFC0152A65CE</input>
-			<output>3273E6C51751407B7E4ECDED7970746D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7FCC684C43B958F02260541D8D0A416DA2381F23F97AE43D</key>
-			<iv>A4FCB2B8AB7158B9433FBF91BC4E5CD3</iv>
-			<input>3273E6C51751407B7E4ECDED7970746D</input>
-			<output>D90B75848AC14ACA3CAD9AF2A15F315F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>240724B451241314FB6B219907CB0BA79E9585D15825D562</key>
-			<iv>5C4FA1918B04D5F85BCB4CF8129D4BE4</iv>
-			<input>D90B75848AC14ACA3CAD9AF2A15F315F</input>
-			<output>753C59B87C45B21D527527C6C2DDEB0D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F0BEECC2DB5D16F98E5778217B8EB9BACCE0A2179AF83E6F</key>
-			<iv>4E41A4AB69AEE73FD4B9C8768A7905ED</iv>
-			<input>753C59B87C45B21D527527C6C2DDEB0D</input>
-			<output>156E851810ADB0BF2D28B6150D32CAC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2FB954C95633B5B9B39FD396B230905E1C8140297CAF4A8</key>
-			<iv>983906FA7F156CF33245798E4E3E2DA2</iv>
-			<input>156E851810ADB0BF2D28B6150D32CAC7</input>
-			<output>26E671DACE32070A601796207BD045B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BF0BD4C6DDBE22DABDDF8CE3A5110E0F81DF8222EC1AB11D</key>
-			<iv>B3188D29356783AF7DF0418A48DD1981</iv>
-			<input>26E671DACE32070A601796207BD045B5</input>
-			<output>ADAD9072859250A8590F6F54C24E5A77</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E4F07AD61768CC010721C9120835EA7D8D0ED762E54EB6A</key>
-			<iv>639F27016A9D99B99144D36BBCC8AE1A</iv>
-			<input>ADAD9072859250A8590F6F54C24E5A77</input>
-			<output>AC8AD3933D51D5D71CA90FB73A53F6AD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9963998A6F982462BCF8CF021DD28B70C479E2C114071DC7</key>
-			<iv>B2A3ACB0CE942F13B72C9E270EEEA8A2</iv>
-			<input>AC8AD3933D51D5D71CA90FB73A53F6AD</input>
-			<output>7319F2825648168F07D525618DA9979A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>417FD42690AAE310CFE13D804B9A9DFFC3ACC7A099AE8A5D</key>
-			<iv>EBB0EF7CE1ACF152D81C4DACFF32C772</iv>
-			<input>7319F2825648168F07D525618DA9979A</input>
-			<output>4FC19392439D6CBE6699419355E0590B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>30CD3A2A0910C7268020AE120807F141A5358633CC4ED356</key>
-			<iv>4DCACE79E4C3ADFE71B2EE0C99BA2436</iv>
-			<input>4FC19392439D6CBE6699419355E0590B</input>
-			<output>047FF92A523900A3C46D906163927DDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F13EE3ACC9C19E4C845F57385A3EF1E261581652AFDCAE8B</key>
-			<iv>E260680204844E6FC1F3D986C0D1596A</iv>
-			<input>047FF92A523900A3C46D906163927DDD</input>
-			<output>2DAE78D178D069918CCC11D675E09655</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91556C720DC982D5A9F12FE922EE9873ED940784DA3C38DE</key>
-			<iv>A4E4973E74B61315606B8FDEC4081C99</iv>
-			<input>2DAE78D178D069918CCC11D675E09655</input>
-			<output>6315A6A029ED7FC5AB3CD38D8DAE561A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9120A23E63AF3BC2CAE489490B03E7B646A8D40957926EC4</key>
-			<iv>C02DA24531C794BD0075CE4C6E66B917</iv>
-			<input>6315A6A029ED7FC5AB3CD38D8DAE561A</input>
-			<output>65A796C69B769E59D34AD19803F117C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5C6847E25C66145DAF431F8F907579EF95E2059154637902</key>
-			<iv>0D72A6B0F3959C89CD48E5DC3FC92F9F</iv>
-			<input>65A796C69B769E59D34AD19803F117C6</input>
-			<output>70770D19D03DF488FB627F460A225F39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F5ECA4C905FF0EC2DF34129640488D676E807AD75E41263B</key>
-			<iv>2F60424B5062D978A984E32B59991A9F</iv>
-			<input>70770D19D03DF488FB627F460A225F39</input>
-			<output>C8A66A2CD18286D2148230BAB7D81E11</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FF86E251C5EC6129179278BA91CA0BB57A024A6DE999382A</key>
-			<iv>CC7330AE077936B10A6A4698C0136FEB</iv>
-			<input>C8A66A2CD18286D2148230BAB7D81E11</input>
-			<output>FC0B47BA3E51927A632F457A919818DC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5C0A7344D6FD6983EB993F00AF9B99CF192D0F17780120F6</key>
-			<iv>CA119AEE5576E06EA38C9115131108AA</iv>
-			<input>FC0B47BA3E51927A632F457A919818DC</input>
-			<output>AEEDB360C58C4CDC7ACE87AA1A4B785B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>426948BD499E8A9845748C606A17D51363E388BD624A58AD</key>
-			<iv>920C491DE39D52501E633BF99F63E31B</iv>
-			<input>AEEDB360C58C4CDC7ACE87AA1A4B785B</input>
-			<output>737ECC4294FF69495DC37DC795EC13CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F8AD0E545AA212E6360A4022FEE8BC5A3E20F57AF7A64B63</key>
-			<iv>B975B70450A41A2DBAC446E9133C987E</iv>
-			<input>737ECC4294FF69495DC37DC795EC13CE</input>
-			<output>3E7CDC26CCC69E02D08248224A22961E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2834233A26DCD8A08769C04322E2258EEA2BD58BD84DD7D</key>
-			<iv>A88326DC57AB80FC3A2E4C67F8CFDF6C</iv>
-			<input>3E7CDC26CCC69E02D08248224A22961E</input>
-			<output>88177B6502254344A364023BCAD29E79</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>962D892D6CDED6798061E761300B611C4DC6BF6377564304</key>
-			<iv>D95CFF470B1796D754AECB1ECEB31BF3</iv>
-			<input>88177B6502254344A364023BCAD29E79</input>
-			<output>A10FA825EB6DA0E242D9A381F607472D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3ADA98C76065214A216E4F44DB66C1FE0F1F1CE281510429</key>
-			<iv>FBD25798351AF35DACF711EA0CBBF733</iv>
-			<input>A10FA825EB6DA0E242D9A381F607472D</input>
-			<output>6B5EE3A222DF46560A12E91C006D303F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C6AB975CF71B6DDF4A30ACE6F9B987A8050DF5FE813C3416</key>
-			<iv>6CDB3875008754DAFC710F9B977E4C95</iv>
-			<input>6B5EE3A222DF46560A12E91C006D303F</input>
-			<output>A0047B92A93ACF32138A818B6E32B3EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FFD0E16A5C955EBAEA34D7745083489A16877475EF0E87F8</key>
-			<iv>F7061CA37B11E445397B7636AB8E3365</iv>
-			<input>A0047B92A93ACF32138A818B6E32B3EE</input>
-			<output>1707FC063700E98FF5FDA98A07A8A1C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA71EC7061FA246CFD332B726783A115E37ADDFFE8A6263F</key>
-			<iv>1853E27FC0689E6755A10D1A3D6F7AD6</iv>
-			<input>1707FC063700E98FF5FDA98A07A8A1C7</input>
-			<output>06320FA4C0E2F42B364B991243FA053D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D8685685696CBF5CFB0124D6A761553ED53144EDAB5C2302</key>
-			<iv>E19A3BEC7EBCA3C87219BAF508969B30</iv>
-			<input>06320FA4C0E2F42B364B991243FA053D</input>
-			<output>BB70503E9715D653710C0630211755A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>28C2AFFA406EF763407174E83074836DA43D42DD8A4B76A5</key>
-			<iv>5F3BCA36562AFA82F0AAF97F2902483F</iv>
-			<input>BB70503E9715D653710C0630211755A7</input>
-			<output>D632FEF42560770DF318C570AFC85285</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>260B8E0723E9AF3D96438A1C1514F460572587AD25832420</key>
-			<iv>328A42D3898A81C20EC921FD6387585E</iv>
-			<input>D632FEF42560770DF318C570AFC85285</input>
-			<output>B1C847FFF455D002E55FCFAF4A4F69A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F39D3CD6A68DC6BC278BCDE3E1412462B27A48026FCC4D84</key>
-			<iv>C89E7B4C1BAED0FAD596B2D185646981</iv>
-			<input>B1C847FFF455D002E55FCFAF4A4F69A4</input>
-			<output>9C484252E1FE52CD2DFCCAA3E0118F07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61A9714C87B94F27BBC38FB100BF76AF9F8682A18FDDC283</key>
-			<iv>56B7D716EC6F9A6D92344D9A2134899B</iv>
-			<input>9C484252E1FE52CD2DFCCAA3E0118F07</input>
-			<output>85A142323B9877E86F3A5874EA613E87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B504BE17C673E81F3E62CD833B270147F0BCDAD565BCFC04</key>
-			<iv>BEF2C82884510475D4ADCF5B41CAA738</iv>
-			<input>85A142323B9877E86F3A5874EA613E87</input>
-			<output>53D0EF74268F55C1B6CA84415E5A2F6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A63CC27BE45C5106DB222F71DA8548646765E943BE6D36B</key>
-			<iv>CC958CC3874510F0AF67723078362D0F</iv>
-			<input>53D0EF74268F55C1B6CA84415E5A2F6F</input>
-			<output>7B7DB0F3EFAD244FFCC6991452001DF6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4B17520C49F46EAF16CF9204F20570C9BAB0C78069E6CE9D</key>
-			<iv>48D7C0690532AFCC51749E2BF7B1ABBF</iv>
-			<input>7B7DB0F3EFAD244FFCC6991452001DF6</input>
-			<output>DD0661DCA2BE8C20E95B3A84CCACDB10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1ADE412393310021CBC9F3D850BBFCE953EBFD04A54A158D</key>
-			<iv>4B96B2D0CCADFF7D51C9132FDAC56E8E</iv>
-			<input>DD0661DCA2BE8C20E95B3A84CCACDB10</input>
-			<output>E505435777F3781121A4A374684E3268</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>493467065AE405B82ECCB08F274884F8724F5E70CD0427E5</key>
-			<iv>1E8116EB95B94AFC53EA2625C9D50599</iv>
-			<input>E505435777F3781121A4A374684E3268</input>
-			<output>EF4B4E997DA0DCCBDBB36C020D03E8B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4C94816DF6EBDEF5C187FE165AE85833A9FC3272C007CF50</key>
-			<iv>29094410F6017E5805A0E66BAC0FDB4D</iv>
-			<input>EF4B4E997DA0DCCBDBB36C020D03E8B5</input>
-			<output>FA9BAB377C654ED894024BEBDCED2FA0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>697A0BC179C07A633B1C5521268D16EB3DFE79991CEAE0F0</key>
-			<iv>83DD12597A405FB725EE8AAC8F2BA496</iv>
-			<input>FA9BAB377C654ED894024BEBDCED2FA0</input>
-			<output>DD1FDA63382552D007F6F8E995820640</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D40786ED2A6C15E8E6038F421EA8443B3A0881708968E6B0</key>
-			<iv>2F3AE5594D9CCEDCBD7D8D2C53AC6F8B</iv>
-			<input>DD1FDA63382552D007F6F8E995820640</input>
-			<output>C5FF0EB50BA651F436D0566385860ADA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D47680C0159F69A23FC81F7150E15CF0CD8D7130CEEEC6A</key>
-			<iv>1BCFAD6802C41B9A4940EEE12B35E372</iv>
-			<input>C5FF0EB50BA651F436D0566385860ADA</input>
-			<output>67AE61A77D77CBFD48C080B21313BBAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>86E61E031542D2DB4452E0506879DE32441857A11FFD57C1</key>
-			<iv>3DF4DA1F65C739511BA1760F141B2441</iv>
-			<input>67AE61A77D77CBFD48C080B21313BBAB</input>
-			<output>68C8512217CB9C3BBF28011FA5BED044</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4F93757DE614CB1D2C9AB1727FB24209FB3056BEBA438785</key>
-			<iv>B2C15424EF4E4637C9756B7EF35619C6</iv>
-			<input>68C8512217CB9C3BBF28011FA5BED044</input>
-			<output>233898C850826172965695499748A1B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C56E54BBB54B22CC0FA229BA2F30237B6D66C3F72D0B2635</key>
-			<iv>DC2FF5992D9383EF8AFD21C6535FE9D1</iv>
-			<input>233898C850826172965695499748A1B0</input>
-			<output>70069F5E963A820D640B40697BD24716</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A1EF05CB5AAE7A977FA4B6E4B90AA176096D839E56D96123</key>
-			<iv>EE8CB982124A394C64815170EFE5585B</iv>
-			<input>70069F5E963A820D640B40697BD24716</input>
-			<output>B136CA2EF42A9CFF53410554B28A8F65</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ACEC084A8CED2F4FCE927CCA4D203D895A2C86CAE453EE46</key>
-			<iv>515D8B6C167EC8570D030D81D64355D8</iv>
-			<input>B136CA2EF42A9CFF53410554B28A8F65</input>
-			<output>123600CD1B5A664430413021DDC8CBBE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8325A9391B4E106ADCA47C07567A5BCD6A6DB6EB399B25F8</key>
-			<iv>5A55A24EC8154E532FC9A17397A33F25</iv>
-			<input>123600CD1B5A664430413021DDC8CBBE</input>
-			<output>8ECCA03E10D415557C4E7D92DDBFD791</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DB877966BE0E84575268DC3946AE4E981623CB79E424F269</key>
-			<iv>659705F3774E141758A2D05FA540943D</iv>
-			<input>8ECCA03E10D415557C4E7D92DDBFD791</input>
-			<output>CB70B675AC6BF92237F1C479516E7E6A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>59027658DEC2B5DE99186A4CEAC5B7BA21D20F00B54A8C03</key>
-			<iv>C9B803CE2D57D26F82850F3E60CC3189</iv>
-			<input>CB70B675AC6BF92237F1C479516E7E6A</input>
-			<output>5D99D06E9BEB82AB1CE22201E8467DBC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>652E430F984201E0C481BA22712E35113D302D015D0CF1BF</key>
-			<iv>1838FACBEAC13CF73C2C35574680B43E</iv>
-			<input>5D99D06E9BEB82AB1CE22201E8467DBC</input>
-			<output>11D7AED0B552D62677DEB874BF7CF8ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8377A2C11B73082DD55614F2C47CE3374AEE9575E2700952</key>
-			<iv>068170C7E11427DFE659E1CE833109CD</iv>
-			<input>11D7AED0B552D62677DEB874BF7CF8ED</input>
-			<output>74B108D32ABE8401D22F2C3FB008F670</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7B89A5C45B0A22BBA1E71C21EEC2673698C1B94A5278FF22</key>
-			<iv>5283DAD6FA2B605DF8FE070540792A96</iv>
-			<input>74B108D32ABE8401D22F2C3FB008F670</input>
-			<output>7883BD8C4DA81C21C4A5847AD801B7AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>101261A4D23FDA13D964A1ADA36A7B175C643D308A79488C</key>
-			<iv>E2ED92DE4829CB526B9BC4608935F8A8</iv>
-			<input>7883BD8C4DA81C21C4A5847AD801B7AE</input>
-			<output>C865B27C21F6F6E681759C318607D2B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E6A6A13B7A64EB51110113D1829C8DF1DD11A1010C7E9A35</key>
-			<iv>AB325AD4F1FF1C52F6B4C09FA85B3142</iv>
-			<input>C865B27C21F6F6E681759C318607D2B9</input>
-			<output>E31D7AC0E8ADB302BC6C23A0B1D693ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>64D366C4F61E139BF21C69116A313EF3617D82A1BDA809D8</key>
-			<iv>A5201D1770A12A898275C7FF8C7AF8CA</iv>
-			<input>E31D7AC0E8ADB302BC6C23A0B1D693ED</input>
-			<output>CAE6A97EE64228EEEF02E135944C5C62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B006CEF05093DE2238FAC06F8C73161D8E7F639429E455BA</key>
-			<iv>62BD7E3EA22E26BAD4D5A834A68DCDB9</iv>
-			<input>CAE6A97EE64228EEEF02E135944C5C62</input>
-			<output>B7AEF117099F799BB0752C7260A2DFB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>160AFF18C06B6C4A8F54317885EC6F863E0A4FE649468A0F</key>
-			<iv>AEBB967838133F64A60C31E890F8B268</iv>
-			<input>B7AEF117099F799BB0752C7260A2DFB5</input>
-			<output>81CCC6EDAD41D9C7986D4E175C71551D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>21112CBE896259CE0E98F79528ADB641A66701F11537DF12</key>
-			<iv>B695BBE7FA331039371BD3A649093584</iv>
-			<input>81CCC6EDAD41D9C7986D4E175C71551D</input>
-			<output>9039E01C6485040A2EDAF4C27FE93870</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>60272333C1B4CCC39EA117894C28B24B88BDF5336ADEE762</key>
-			<iv>4EE830907337D60241360F8D48D6950D</iv>
-			<input>9039E01C6485040A2EDAF4C27FE93870</input>
-			<output>44D359DBE4BE436D5133CD81B72DB5C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>25C676A781511A98DA724E52A896F126D98E38B2DDF352A5</key>
-			<iv>38491C9FD517260445E1559440E5D65B</iv>
-			<input>44D359DBE4BE436D5133CD81B72DB5C7</input>
-			<output>7B47F95ED30563BE218E40DB4EAAE836</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>59A7B7512B5DC429A135B70C7B939298F80078699359BA93</key>
-			<iv>1FD8B8BA8B0492E67C61C1F6AA0CDEB1</iv>
-			<input>7B47F95ED30563BE218E40DB4EAAE836</input>
-			<output>C417F6A6824B165D4C26D631F77E45AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82E6CF234BC0AA10652241AAF9D884C5B426AE586427FF3F</key>
-			<iv>5FB017B65FE4AF34DB417872609D6E39</iv>
-			<input>C417F6A6824B165D4C26D631F77E45AC</input>
-			<output>41EC9A06B318A4D06636ED5403F46CB7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82D69A1D747CF6E024CEDBAC4AC02015D210430C67D39388</key>
-			<iv>1CC1F56321366F420030553E3FBC5CF0</iv>
-			<input>41EC9A06B318A4D06636ED5403F46CB7</input>
-			<output>38E467F81D919F0A1704E9F5CDF4D5FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>29EFCA26B9C67E141C2ABC545751BF1FC514AAF9AA274674</key>
-			<iv>A83BDBF4326AE806AB39503BCDBA88F4</iv>
-			<input>38E467F81D919F0A1704E9F5CDF4D5FC</input>
-			<output>A08359A20D6F405018F8180A3E8D0FD1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AB20AC8C3C5DA5BEBCA9E5F65A3EFF4FDDECB2F394AA49A5</key>
-			<iv>A14B10E1A998B04E82CF66AA859BDBAA</iv>
-			<input>A08359A20D6F405018F8180A3E8D0FD1</input>
-			<output>A16C303138057144A3ECA63E7398DC93</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>86C5E861B9CEAF041DC5D5C7623B8E0B7E0014CDE7329536</key>
-			<iv>181D943EA950561D2DE544ED85930ABA</iv>
-			<input>A16C303138057144A3ECA63E7398DC93</input>
-			<output>EA1A2E30D890D01979D2BCE1EBE6C922</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>90321C401E4B6B30F7DFFBF7BAAB5E1207D2A82C0CD45C14</key>
-			<iv>12BDB944D898BC5A16F7F421A785C434</iv>
-			<input>EA1A2E30D890D01979D2BCE1EBE6C922</input>
-			<output>C0D620FCF33031DAD617ADBE8F6D13AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>84964C3B41FE8E4F3709DB0B499B6FC8D1C5059283B94FB8</key>
-			<iv>0615AD27B29C55F814A4507B5FB5E57F</iv>
-			<input>C0D620FCF33031DAD617ADBE8F6D13AC</input>
-			<output>EC4B9AEDBE44C4B74B693D08AA1D175A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6C6361F2C87BC168DB4241E6F7DFAB7F9AAC389A29A458E2</key>
-			<iv>E79F33FFCD79681CE8F52DC989854F27</iv>
-			<input>EC4B9AEDBE44C4B74B693D08AA1D175A</input>
-			<output>F34D426225ADEC3BD2580BF21EF24B3E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FDA3FB79F1A16865280F0384D272474448F43368375613DC</key>
-			<iv>1DFE18B10032D35F91C09A8B39DAA90D</iv>
-			<input>F34D426225ADEC3BD2580BF21EF24B3E</input>
-			<output>E14841B0D0CC1E698DE8053B9F1621E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>562D3BF792909255C947423402BE592DC51C3653A840323D</key>
-			<iv>247A46C43AE54F1FAB8EC08E6331FA30</iv>
-			<input>E14841B0D0CC1E698DE8053B9F1621E1</input>
-			<output>D21381B5032426EC3582BBD23739E04E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D375E6E32C30A801B54C381019A7FC1F09E8D819F79D273</key>
-			<iv>E05018C26DC38BBDCB1A6599A05398D5</iv>
-			<input>D21381B5032426EC3582BBD23739E04E</input>
-			<output>82034FF505FE67B94373770348A934E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7D1A900B515478DB99578C7404641878B3EDFA82D7D0E696</key>
-			<iv>498AEA38AB55250CE02DCE656397725B</iv>
-			<input>82034FF505FE67B94373770348A934E5</input>
-			<output>018B5B1787138D222F6B39C1291ECD2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E74B55A39F67C54298DCD7638377955A9C86C343FECE2BBA</key>
-			<iv>DD89DF396236F9A59A51C5A8CE33BD99</iv>
-			<input>018B5B1787138D222F6B39C1291ECD2C</input>
-			<output>CABCB7EA14E821726602272A46CEB825</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D3FFFE0F27D9200352606089979FB428FA84E469B800939F</key>
-			<iv>A707D154BAC28BDC34B4ABACB8BEE541</iv>
-			<input>CABCB7EA14E821726602272A46CEB825</input>
-			<output>0840D09DF2B14ED4B340D32101D68A54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>485EC313821A37095A20B014652EFAFC49C43748B9D619CB</key>
-			<iv>ADEF6A8A49BF208B9BA13D1CA5C3170A</iv>
-			<input>0840D09DF2B14ED4B340D32101D68A54</input>
-			<output>5EB0166FB04AF38F9EA60929FD641844</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E841074638A154D90490A67BD5640973D7623E6144B2018F</key>
-			<iv>B1956D86A4F79E40A01FC455BABB63D0</iv>
-			<input>5EB0166FB04AF38F9EA60929FD641844</input>
-			<output>2ECBDAFBD0336A436D89FC12944750EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>17E86798DB7A64E42A5B7C8005576330BAEBC273D0F55163</key>
-			<iv>0AFFE19CA1425218FFA960DEE3DB303D</iv>
-			<input>2ECBDAFBD0336A436D89FC12944750EC</input>
-			<output>A326D8C07EF7A21302A3C6A9C67C371A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D1A6F2AB7C130A60897DA4407BA0C123B84804DA16896679</key>
-			<iv>6F630069CD0333BDC64E9533A7696E84</iv>
-			<input>A326D8C07EF7A21302A3C6A9C67C371A</input>
-			<output>6D06DDFB9B12A71298E32318F582EF72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C7D58104581CB5C5E47B79BBE0B2663120AB27C2E30B890B</key>
-			<iv>80E47BA8410247C5167373AF240FBFA5</iv>
-			<input>6D06DDFB9B12A71298E32318F582EF72</input>
-			<output>E1391A50F140E255A9B2E628F25B9B1D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>00D8EEC433F7D68E054263EB11F284648919C1EA11501216</key>
-			<iv>96F652822C5D4496C70D6FC06BEB634B</iv>
-			<input>E1391A50F140E255A9B2E628F25B9B1D</input>
-			<output>1418A2DC8D6DBA4942932D6944011D8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>71D444358CCCF986115AC1379C9F3E2DCB8AEC8355510F9C</key>
-			<iv>410374DE0D8A79FA710CAAF1BF3B2F08</iv>
-			<input>1418A2DC8D6DBA4942932D6944011D8A</input>
-			<output>A70A2C48CF5786868844274B8C493C56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B9FD9626EC74A129B650ED7F53C8B8AB43CECBC8D91833CA</key>
-			<iv>8362FAE290801C25C829D21360B858AF</iv>
-			<input>A70A2C48CF5786868844274B8C493C56</input>
-			<output>3484BA42558B199E8477B8F8280CDE91</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>94CAEE912A7B443582D4573D0643A135C7B97330F114ED5B</key>
-			<iv>F6ABE3F0A7FFC9E02D3778B7C60FE51C</iv>
-			<input>3484BA42558B199E8477B8F8280CDE91</input>
-			<output>5D79433F85C7D4C258487080E340F049</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1D2F762CF08FAE0ADFAD1402838475F79FF103B012541D12</key>
-			<iv>A0C57652FBF9107C89E598BDDAF4EA3F</iv>
-			<input>5D79433F85C7D4C258487080E340F049</input>
-			<output>C51891EA2E68BC60E84912A91F470201</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9E691D03A3AEB6491AB585E8ADECC99777B811190D131F13</key>
-			<iv>8426C338234DB9E183466B2F53211843</iv>
-			<input>C51891EA2E68BC60E84912A91F470201</input>
-			<output>F946FD67DD7F92A7A6B93B4F71F70243</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61EA6FD274C07ADDE3F3788F70935B30D1012A567CE41D50</key>
-			<iv>2C2AF70B07E9E6F9FF8372D1D76ECC94</iv>
-			<input>F946FD67DD7F92A7A6B93B4F71F70243</input>
-			<output>B4CB0EFF14F8CDC693CC8E7DCEE8E0B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>84F27E5BF8B55DA657387670646B96F642CDA42BB20CFDE0</key>
-			<iv>693782638B439464E51811898C75277B</iv>
-			<input>B4CB0EFF14F8CDC693CC8E7DCEE8E0B0</input>
-			<output>EF6DDB56AAE9CFFE128FB3776DD94D20</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5B1111EADAECDD73B855AD26CE8259085042175CDFD5B0C0</key>
-			<iv>A14AAEF7A1BF063BDFE36FB1225980D5</iv>
-			<input>EF6DDB56AAE9CFFE128FB3776DD94D20</input>
-			<output>4ACC6AF28293A647093AE788BA778835</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A924DC707FB16DF1F299C7D44C11FF4F5978F0D465A238F5</key>
-			<iv>3F7E73BFA24B0C02F235CD9AA55DB082</iv>
-			<input>4ACC6AF28293A647093AE788BA778835</input>
-			<output>5A7989DC61AD6B66B3E83A29168BEDB9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>164FBEF9EBAEEF03A8E04E082DBC9429EA90CAFD7329D54C</key>
-			<iv>2FB4F1A000B78156BF6B6289941F82F2</iv>
-			<input>5A7989DC61AD6B66B3E83A29168BEDB9</input>
-			<output>246A94AB8488B39C52DE68E8CA5AE0D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B1F4A368B64A78EC8C8ADAA3A93427B5B84EA215B973359E</key>
-			<iv>5D178EC8305B804FA7BB1D915DE497EF</iv>
-			<input>246A94AB8488B39C52DE68E8CA5AE0D2</input>
-			<output>F7C758F8DC8FC0891907EBBF299F70B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9161A39C256814AA7B4D825B75BBE73CA14949AA90EC4526</key>
-			<iv>C87E61A9434EB29F209500F493226C46</iv>
-			<input>F7C758F8DC8FC0891907EBBF299F70B8</input>
-			<output>E2D82C5506BEFA7D7BF032E4C72141CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0BFDA1B2CF4B15199995AE0E73051D41DAB97B4E57CD04E9</key>
-			<iv>5D00992780D9832B9A9C022EEA2301B3</iv>
-			<input>E2D82C5506BEFA7D7BF032E4C72141CF</input>
-			<output>F3A0DF1793FC88117E87478FD9E5A1A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F8F5F6016FECDCAF6A357119E0F99550A43E3CC18E28A541</key>
-			<iv>2800EECA83EB078CF30857B3A0A7C9B6</iv>
-			<input>F3A0DF1793FC88117E87478FD9E5A1A8</input>
-			<output>BEB572C53E9985218ED9012BAB4A9F5B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>84F3E0D153E140D6D48003DCDE6010712AE73DEA25623A1A</key>
-			<iv>E2BEAF80F4A1DDA27C0616D03C0D9C79</iv>
-			<input>BEB572C53E9985218ED9012BAB4A9F5B</input>
-			<output>7F4B21C4B7466149CB890B77AC538752</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B69E5A72FE9B1B85ABCB221869267138E16E369D8931BD48</key>
-			<iv>FE0A667B9B2BDD29326DBAA3AD7A5B53</iv>
-			<input>7F4B21C4B7466149CB890B77AC538752</input>
-			<output>4B239C8F83F0A10DC6A3497CC3CF9C8E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0BCF87D2538E0EADE0E8BE97EAD6D03527CD7FE14AFE21C6</key>
-			<iv>878250C5EA7834CFBD51DDA0AD151528</iv>
-			<input>4B239C8F83F0A10DC6A3497CC3CF9C8E</input>
-			<output>89F2B4B8C5AB2988CDEA61F4D4A1BCD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>97A4FDCD2E0C993E691A0A2F2F7DF9BDEA271E159E5F9D12</key>
-			<iv>95E34D44C3E2FE319C6B7A1F7D829793</iv>
-			<input>89F2B4B8C5AB2988CDEA61F4D4A1BCD4</input>
-			<output>C622E28004842564F193C0E58AB40FCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>38F0A45980CEF0B9AF38E8AF2BF9DCD91BB4DEF014EB92D9</key>
-			<iv>1BC195727D154539AF545994AEC26987</iv>
-			<input>C622E28004842564F193C0E58AB40FCB</input>
-			<output>DF360FBC1607BCC1E6EE9088AEE62EC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6638E0333D7A6765700EE7133DFE6018FD5A4E78BA0DBC1E</key>
-			<iv>F0AB65A69AA4486A5EC8446ABDB497DC</iv>
-			<input>DF360FBC1607BCC1E6EE9088AEE62EC7</input>
-			<output>9A8E5BFE223FA9D747164FC1C98B9CDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5103611D32D7A1EFEA80BCED1FC1C9CFBA4C01B9738620C2</key>
-			<iv>A6617B5DA41B2A32373B812E0FADC68A</iv>
-			<input>9A8E5BFE223FA9D747164FC1C98B9CDC</input>
-			<output>F0143DD4EC3A85F9FA4D5579BD7268A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>64FD310AF27CF98C1A948139F3FB4C36400154C0CEF44863</key>
-			<iv>EBCB744B477F25E635FE5017C0AB5863</iv>
-			<input>F0143DD4EC3A85F9FA4D5579BD7268A1</input>
-			<output>C5C1FED629BF81EE343E4DAEE6BC4D44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9390B012FA7D48D9DF557FEFDA44CDD8743F196E28480527</key>
-			<iv>7AF352D33C08F3FEF76D81180801B155</iv>
-			<input>C5C1FED629BF81EE343E4DAEE6BC4D44</input>
-			<output>26C4460F0B79E16263C38C240C276E5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F578E5DF6818CB58F99139E0D13D2CBA17FC954A246F6B7B</key>
-			<iv>05DA148A4EB4D12966E855CD92658381</iv>
-			<input>26C4460F0B79E16263C38C240C276E5C</input>
-			<output>E0E249ADB3A39EE2BB48959426874123</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F23F67282BAFE10E1973704D629EB258ACB400DE02E82A58</key>
-			<iv>7748B1652DE54EF9074782F743B72A56</iv>
-			<input>E0E249ADB3A39EE2BB48959426874123</input>
-			<output>C2299AAE24C941DC44E5D492BC492FED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5CAC16BD99EC5067DB5AEAE34657F384E851D44CBEA105B5</key>
-			<iv>4F599B9C20378305AE937195B243B169</iv>
-			<input>C2299AAE24C941DC44E5D492BC492FED</input>
-			<output>780DA1D6FD961DA4756375A15B8BA620</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9FF7C1766F7F6F9FA3574B35BBC1EE209D32A1EDE52AA395</key>
-			<iv>044A8C7FFE220414C35BD7CBF6933FF8</iv>
-			<input>780DA1D6FD961DA4756375A15B8BA620</input>
-			<output>E63FE8BE6566E9ECCCDBEC442BCCCBD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3EA408C4CD15E6F24568A38BDEA707CC51E94DA9CEE66840</key>
-			<iv>05DE81CD5892F1FEA153C9B2A26A896D</iv>
-			<input>E63FE8BE6566E9ECCCDBEC442BCCCBD5</input>
-			<output>19F5E5DDDF0F6FABA9B16B732C6058B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>29FF0DD567A810385C9D465601A86867F85826DAE28630F8</key>
-			<iv>0A2A8BF3BE53E2B5175B0511AABDF6CA</iv>
-			<input>19F5E5DDDF0F6FABA9B16B732C6058B8</input>
-			<output>41FCD9F8972431F43669863F37B4A18C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>842E4C2F46849E731D619FAE968C5993CE31A0E5D5329174</key>
-			<iv>1EABD419CA4C0D0BADD141FA212C8E4B</iv>
-			<input>41FCD9F8972431F43669863F37B4A18C</input>
-			<output>9857CFE1CFE1046F88DF3EB8ECC92E40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8EE3344CCB9DE2038536504F596D5DFC46EE9E5D39FBBF34</key>
-			<iv>FA266CF1AF82A2250ACD78638D197C70</iv>
-			<input>9857CFE1CFE1046F88DF3EB8ECC92E40</input>
-			<output>DE4C55865FB82BDA1FC0D024791C1B22</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DEEEC86215A6098D5B7A05C906D57626592E4E7940E7A416</key>
-			<iv>F9B4CFCA36A1B0AB500DFC2EDE3BEB8E</iv>
-			<input>DE4C55865FB82BDA1FC0D024791C1B22</input>
-			<output>077F866BF30097D12650855C71B7DB9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>50872D11A2E463D65C0583A2F5D5E1F77F7ECB2531507F8A</key>
-			<iv>53D4E4CE2C06FCC38E69E573B7426A5B</iv>
-			<input>077F866BF30097D12650855C71B7DB9C</input>
-			<output>670BBCB81CDE03B883D9B784124F5851</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7DE3AF7C8550901C3B0E3F1AE90BE24FFCA77CA1231F27DB</key>
-			<iv>C26330B1219C4B4A2D64826D27B4F3CA</iv>
-			<input>670BBCB81CDE03B883D9B784124F5851</input>
-			<output>D6141C300F5E5119E1B5F4BBF415A6DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB126D64220A8DB9ED1A232AE655B3561D12881AD70A8106</key>
-			<iv>74D773D0F053239CC6F1C218A75A1DA5</iv>
-			<input>D6141C300F5E5119E1B5F4BBF415A6DD</input>
-			<output>8F742130206F1047FE9CAAE4F2C31B19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9845C3A02214A55D626E021AC63AA311E38E22FE25C99A1F</key>
-			<iv>7EC0B4E8BD4BD3EB2357AEC4001E28E4</iv>
-			<input>8F742130206F1047FE9CAAE4F2C31B19</input>
-			<output>47D0D28AF3164CC77FBAB5C015CAC1C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BBC47FAB874E0ED425BED090352CEFD69C34973E30035BD6</key>
-			<iv>833EC00D894BD8502381BC0BA55AAB89</iv>
-			<input>47D0D28AF3164CC77FBAB5C015CAC1C9</input>
-			<output>3202B04CFC260747BF839FF754A01E26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BCC028DA5F286DE017BC60DCC90AE89123B708C964A345F0</key>
-			<iv>8BCC8079D2175F4407045771D8666334</iv>
-			<input>3202B04CFC260747BF839FF754A01E26</input>
-			<output>75E9FBADAD8885FB2398427EE94C5899</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>352B0CD3E3BA0EB462559B7164826D6A002F4AB78DEF1D69</key>
-			<iv>0B159F18C1F33EA389EB2409BC926354</iv>
-			<input>75E9FBADAD8885FB2398427EE94C5899</input>
-			<output>90DA906982058C84D2E75B5DAE0EA756</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6F32D4393B37EA77F28F0B18E687E1EED2C811EA23E1BA3F</key>
-			<iv>2F5C35DA76038E4F5A19D8EAD88DE4C3</iv>
-			<input>90DA906982058C84D2E75B5DAE0EA756</input>
-			<output>705C22072FDFB807A49BAE0FD4D254AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5740616769DDF57482D3291FC95859E97653BFE5F733EE90</key>
-			<iv>B276B0CE56828D683872B55E52EA1F03</iv>
-			<input>705C22072FDFB807A49BAE0FD4D254AF</input>
-			<output>A966EE217CF2BDBC17A0BB55AE769FEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C9E379BDBC05CC402BB5C73EB5AAE45561F304B05945717B</key>
-			<iv>E1F41EF2147CB5CE9EA318DAD5D83934</iv>
-			<input>A966EE217CF2BDBC17A0BB55AE769FEB</input>
-			<output>239D761F1F0437935464C4959546B6BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7B2C4F503FCC91AE0828B121AAAED3C63597C025CC03C7C0</key>
-			<iv>6F90097C7822030DB2CF36ED83C95DEE</iv>
-			<input>239D761F1F0437935464C4959546B6BB</input>
-			<output>499477B6476BA58CAEF81290ABDD46C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>42BC1C4F29D1801D41BCC697EDC5764A9B6FD2B567DE8104</key>
-			<iv>1571EE53AE1ACAEF3990531F161D11B3</iv>
-			<input>499477B6476BA58CAEF81290ABDD46C4</input>
-			<output>ACC1FB947EB4C7F115871859CD254D96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9BE24C041BF4DEECED7D3D039371B1BB8EE8CAECAAFBCC92</key>
-			<iv>E24F4DBEF2122A73D95E504B32255EF1</iv>
-			<input>ACC1FB947EB4C7F115871859CD254D96</input>
-			<output>85DC9D7ADF342B0733CF9812CFD58F0A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>83BEBEB5727649F268A1A0794C459ABCBD2752FE652E4398</key>
-			<iv>AF0690E77B1F140B185CF2B16982971E</iv>
-			<input>85DC9D7ADF342B0733CF9812CFD58F0A</input>
-			<output>7ED8B4DCBD1D13BEA5C819E99ECF75AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7020802D561D88AD167914A5F158890218EF4B17FBE13632</key>
-			<iv>F0AC93D8DDD31D5BF39E3E98246BC15F</iv>
-			<input>7ED8B4DCBD1D13BEA5C819E99ECF75AA</input>
-			<output>C81F0464C2DE212229370C7A4ED2E890</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>39F8EA2D638410ABDE6610C13386A82031D8476DB533DEA2</key>
-			<iv>FD6338FAE6F6B00B49D86A0035999806</iv>
-			<input>C81F0464C2DE212229370C7A4ED2E890</input>
-			<output>23A0FA99C632BCC62A035A09514C3EBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>52FA33F30EFD8D0FFDC6EA58F5B414E61BDB1D64E47FE018</key>
-			<iv>04C6E0136D8E04C16B02D9DE6D799DA4</iv>
-			<input>23A0FA99C632BCC62A035A09514C3EBA</input>
-			<output>9F7F1081AE4B6AD51D395D764D2D5B68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>95C21BD9257B233A62B9FAD95BFF7E3306E24012A952BB70</key>
-			<iv>72410E03AAE65889C738282A2B86AE35</iv>
-			<input>9F7F1081AE4B6AD51D395D764D2D5B68</input>
-			<output>5F088092968BF4AF04BF862A6721DF2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>058F749326AE1DD53DB17A4BCD748A9C025DC638CE73645B</key>
-			<iv>D678325E266D12D7904D6F4A03D53EEF</iv>
-			<input>5F088092968BF4AF04BF862A6721DF2B</input>
-			<output>15670F60D1D70E129418AC14A425DD70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>23D2D59C5EF4AF3D28D6752B1CA3848E96456A2C6A56B92B</key>
-			<iv>BB7B672A91E9A61A265DA10F785AB2E8</iv>
-			<input>15670F60D1D70E129418AC14A425DD70</input>
-			<output>3273AC9D250F729AE790A941739C79BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E11B1F94517914C81AA5D9B639ACF61471D5C36D19CAC094</key>
-			<iv>AB84F623EFA11728C2C9CA080F8DBBF5</iv>
-			<input>3273AC9D250F729AE790A941739C79BF</input>
-			<output>9B135880CB56A8E6CF3A364CC6E02175</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>66F867085DBE626581B68136F2FA5EF2BEEFF521DF2AE1E1</key>
-			<iv>01ED899C8DC9C09E87E3789C0CC776AD</iv>
-			<input>9B135880CB56A8E6CF3A364CC6E02175</input>
-			<output>681D6FC5447CCFE1152156CFF6172B6A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>98505FCD27DAB39EE9ABEEF3B6869113ABCEA3EE293DCA8B</key>
-			<iv>A58C8285C31035B1FEA838C57A64D1FB</iv>
-			<input>681D6FC5447CCFE1152156CFF6172B6A</input>
-			<output>6E30DF3FBD67A5FD491E315EF3A268A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F904A41C19B57A9879B31CC0BE134EEE2D092B0DA9FA22B</key>
-			<iv>6F46DCB3A84FD96907C0158CE641E437</iv>
-			<input>6E30DF3FBD67A5FD491E315EF3A268A0</input>
-			<output>5B4980E24D8F9CABE017991326FBBE95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A330D5A6779731D6DCD2B12E466EA84502C70BA3FC641CBE</key>
-			<iv>C5BDAB77E0CA95463CA09FE7B60C667F</iv>
-			<input>5B4980E24D8F9CABE017991326FBBE95</input>
-			<output>7324530BF94BD80D286C9BE2FE4113D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>20F008DE76D7968AAFF6E225BF2570482AAB904102250F6D</key>
-			<iv>32F5EC4AEBB997C583C0DD780140A75C</iv>
-			<input>7324530BF94BD80D286C9BE2FE4113D3</input>
-			<output>B163425AB21DF6AFBD2C7000E777E902</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0F48153B232E71F41E95A07F0D3886E79787E041E552E66F</key>
-			<iv>3D1854E0C481B28E2FB81DE555F9E77E</iv>
-			<input>B163425AB21DF6AFBD2C7000E777E902</input>
-			<output>EB1A6C86C3811E3081325F35BA7F2DCA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>96EE2134FD40CA34F58FCCF9CEB998D716B5BF745F2DCBA5</key>
-			<iv>8629366A8B8E266499A6340FDE6EBBC0</iv>
-			<input>EB1A6C86C3811E3081325F35BA7F2DCA</input>
-			<output>E9675AF0035C3F8E9D5E58D0652BF5C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BF754C828BFE309B1CE89609CDE5A7598BEBE7A43A063E62</key>
-			<iv>566D5FCEC3FF7D43299B6DB676BEFAAF</iv>
-			<input>E9675AF0035C3F8E9D5E58D0652BF5C7</input>
-			<output>24B4DA85EEFAA123948C6B5E0E07EB08</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F0223B4AF5C885B4385C4C8C231F067A1F678CFA3401D56A</key>
-			<iv>67B98EC651B057104F5777C87E36B52F</iv>
-			<input>24B4DA85EEFAA123948C6B5E0E07EB08</input>
-			<output>753CFEBBB9E623453B8BB2976B8D7BD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>04665169E091DEF74D60B2379AF9253F24EC3E6D5F8CAEBE</key>
-			<iv>BC3806A9E56A1DACF4446A2315595B43</iv>
-			<input>753CFEBBB9E623453B8BB2976B8D7BD4</input>
-			<output>6949284723B4F795D530B366FAE70876</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9CABB1CFD4E46F8324299A70B94DD2AAF1DC8D0BA56BA6C8</key>
-			<iv>8C864563BB8D45A098CDE0A63475B174</iv>
-			<input>6949284723B4F795D530B366FAE70876</input>
-			<output>D43FED9A25C62349787F0336BFFBBFEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4407065E88AE79D9F01677EA9C8BF1E389A38E3D1A901923</key>
-			<iv>539CC5888B34198FD8ACB7915C4A165A</iv>
-			<input>D43FED9A25C62349787F0336BFFBBFEB</input>
-			<output>030733E175916579F582A778B261DA1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>84D1EE80E8FA54DEF311440BE91A949A7C212945A8F1C33F</key>
-			<iv>78306F4F56DEF759C0D6E8DE60542D07</iv>
-			<input>030733E175916579F582A778B261DA1C</input>
-			<output>F7B1ABE4B4AE3CB726F9A88B06D4552A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E885BEA6176A75D804A0EFEF5DB4A82D5AD881CEAE259615</key>
-			<iv>3AC80B78F744208A6C545026FF902106</iv>
-			<input>F7B1ABE4B4AE3CB726F9A88B06D4552A</input>
-			<output>DA984A2C346A4B758E066EB509079168</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E0317B2DB3F9893DE38A5C369DEE358D4DEEF7BA722077D</key>
-			<iv>FC74E03B1068A6FEC686A914CC55ED4B</iv>
-			<input>DA984A2C346A4B758E066EB509079168</input>
-			<output>21F473636EF27B91F29BB1CE67908763</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>850E1B37E1F7DD89FFCCD6A0072C98C926455EB5C0B2801E</key>
-			<iv>7DFD76EE7EF97796AB0D0C853AC8451A</iv>
-			<input>21F473636EF27B91F29BB1CE67908763</input>
-			<output>9EEF6E211CC8EDBD3C4FBE3E14B13C70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>655D365D66CAA5C36123B8811BE475741A0AE08BD403BC6E</key>
-			<iv>33318C04CC0B3CBDE0532D6A873D784A</iv>
-			<input>9EEF6E211CC8EDBD3C4FBE3E14B13C70</input>
-			<output>8AB49333CA7B2E58E7B24536BB34DEE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BE3C315647F981DCEB972BB2D19F5B2CFDB8A5BD6F376289</key>
-			<iv>79D06A0D66B5C2B1DB61070B2133241F</iv>
-			<input>8AB49333CA7B2E58E7B24536BB34DEE7</input>
-			<output>323D1E775FD729005DA7A2853A855ED4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3126E544A65724C4D9AA35C58E48722CA01F073855B23C5D</key>
-			<iv>CC5C9D95685AF1228F1AD412E1AEA518</iv>
-			<input>323D1E775FD729005DA7A2853A855ED4</input>
-			<output>E283016FEDADEBA2BEC7ADB5A8DEA8B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BCF052AFAFA4852D3B2934AA63E5998E1ED8AA8DFD6C94E4</key>
-			<iv>2753144E0A26D9FE8DD6B7EB09F3A1E9</iv>
-			<input>E283016FEDADEBA2BEC7ADB5A8DEA8B9</input>
-			<output>9A9BB977D53BBD47550DC60A49AFA0FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ECB724A85CBC7B58A1B28DDDB6DE24C94BD56C87B4C3341E</key>
-			<iv>27F910046A94AA3B50477607F318FE75</iv>
-			<input>9A9BB977D53BBD47550DC60A49AFA0FA</input>
-			<output>AF4C7AC3B02C1B077E8F97B59AE52A21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BCA9E9794F9004AB0EFEF71E06F23FCE355AFB322E261E3F</key>
-			<iv>8AF06705FE272571501ECDD1132C7FF3</iv>
-			<input>AF4C7AC3B02C1B077E8F97B59AE52A21</input>
-			<output>A97DEE2A64DFA7C198B6A4F21E80F7DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>10DCC14B9A309E25A7831934622D980FADEC5FC030A6E9E0</key>
-			<iv>B04E1C6FC657B8AEAC752832D5A09A8E</iv>
-			<input>A97DEE2A64DFA7C198B6A4F21E80F7DF</input>
-			<output>34E8228A24C7A16F9ED3F4B9A94AA70D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9CB6EE6AAEFAFBED936B3BBE46EA3960333FAB7999EC4EED</key>
-			<iv>6A966EBB8F80A1608C6A2F2134CA65C8</iv>
-			<input>34E8228A24C7A16F9ED3F4B9A94AA70D</input>
-			<output>99E6CA896906CBAA9B8D01155D1DB162</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>461916712E8BD6F10A8DF1372FECF2CAA8B2AA6CC4F1FF8F</key>
-			<iv>EAF849974783FAA7DAAFF81B80712D1C</iv>
-			<input>99E6CA896906CBAA9B8D01155D1DB162</input>
-			<output>6009B53EB4690C1F1F10639F1FD7640A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5B9B91A966F9CE146A8444099B85FED5B7A2C9F3DB269B85</key>
-			<iv>3FB045D182F781EB1D8287D8487218E5</iv>
-			<input>6009B53EB4690C1F1F10639F1FD7640A</input>
-			<output>88ED4BC34A27F4C4B480B99857EBF541</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>404F7D8B0E966F02E2690FCAD1A20A110322706B8CCD6EC4</key>
-			<iv>49C0F4571BAEBE4C1BD4EC22686FA116</iv>
-			<input>88ED4BC34A27F4C4B480B99857EBF541</input>
-			<output>B88F0E3E01FEDF97766AC6B762D2EBC3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CB2EA99F330A3A865AE601F4D05CD5867548B6DCEE1F8507</key>
-			<iv>2518DA0D88C02EC38B61D4143D9C5584</iv>
-			<input>B88F0E3E01FEDF97766AC6B762D2EBC3</input>
-			<output>C1C167FF37E89937DCB8D79C9BC9EC74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>913C795CF72CD1219B27660BE7B44CB1A9F0614075D66973</key>
-			<iv>37769A59390261FB5A12D0C3C426EBA7</iv>
-			<input>C1C167FF37E89937DCB8D79C9BC9EC74</input>
-			<output>64D912270A1E60192CDAAD8168219E56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>05F19DF919E44144FFFE742CEDAA2CA8852ACCC11DF7F725</key>
-			<iv>63E9D4D1BDD7FEAD94CDE4A5EEC89065</iv>
-			<input>64D912270A1E60192CDAAD8168219E56</input>
-			<output>C9AD2DBB1C686A67A3E21A5659576A2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>099D0DCE5E4E194236535997F1C246CF26C8D69744A09D0E</key>
-			<iv>A01E3F917EF4652F0C6C903747AA5806</iv>
-			<input>C9AD2DBB1C686A67A3E21A5659576A2B</input>
-			<output>244C740B4B136C6C480D0147163868D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EA1F242E9C75C712121F2D9CBAD12AA36EC5D7D05298F5DF</key>
-			<iv>C9D2288C473BCB3EE38229E0C23BDE50</iv>
-			<input>244C740B4B136C6C480D0147163868D1</input>
-			<output>A6B125A9C570CC3ECBB5D302ADB96E34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CD5D7C91FBDC81A1B4AE08357FA1E69DA57004D2FF219BEB</key>
-			<iv>871F525F8ED73B7F274258BF67A946B3</iv>
-			<input>A6B125A9C570CC3ECBB5D302ADB96E34</input>
-			<output>0F9862A4A21E1FB365135C07577FB3EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F7D9B8C22BDC8005BB366A91DDBFF92EC06358D5A85E2805</key>
-			<iv>01BB0A9A8737C19D3A84C453D00001A4</iv>
-			<input>0F9862A4A21E1FB365135C07577FB3EE</input>
-			<output>D833DB436E1751B882D03FADF683690B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>83F81E3CED72F22F6305B1D2B3A8A89642B367785EDD410E</key>
-			<iv>80E0E7001CCA60CA7421A6FEC6AE722A</iv>
-			<input>D833DB436E1751B882D03FADF683690B</input>
-			<output>0AE2C64D2C577C420F26F2F48AA58D62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>63310E5F2F8F0E0769E7779F9FFFD4D44D95958CD478CC6C</key>
-			<iv>57E54995CDC9417DE0C91063C2FDFC28</iv>
-			<input>0AE2C64D2C577C420F26F2F48AA58D62</input>
-			<output>B0E2976AA3891A2C71AFEB063E3C4383</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F3AE2989B3980DC9D905E0F53C76CEF83C3A7E8AEA448FEF</key>
-			<iv>999DD6C2B1C528E2909F27D69C1703CE</iv>
-			<input>B0E2976AA3891A2C71AFEB063E3C4383</input>
-			<output>16F8A305177ECDBA15403FE5D8EEF60D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>52CF17D8DEA4CE5ACFFD43F02B080342297A416F32AA79E2</key>
-			<iv>C9F5BC961057F845A1613E516D3CC393</iv>
-			<input>16F8A305177ECDBA15403FE5D8EEF60D</input>
-			<output>A607A3EE165E82711B30B44CF4E0C4CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E22ADE79E75FE58E69FAE01E3D568133324AF523C64ABD2D</key>
-			<iv>E153F25DD207351AB0E5C9A139FB2BD4</iv>
-			<input>A607A3EE165E82711B30B44CF4E0C4CF</input>
-			<output>5191CDD0D077AD6BE956AF8E8E39FECA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>38C58EA4EA1E8D4C386B2DCEED212C58DB1C5AAD487343E7</key>
-			<iv>F55357187F06B142DAEF50DD0D4168C2</iv>
-			<input>5191CDD0D077AD6BE956AF8E8E39FECA</input>
-			<output>F63A42508522E5F09C31F160298E8E6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8C29CD4F1330EF25CE516F9E6803C9A8472DABCD61FDCD88</key>
-			<iv>2CBD520E6F6F89C7B4EC43EBF92E6269</iv>
-			<input>F63A42508522E5F09C31F160298E8E6F</input>
-			<output>E58ED2EA8671DC5D527CDE01C6D9655D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3650C9671F38CD752BDFBD74EE7215F5155175CCA724A8D5</key>
-			<iv>73CA969AECA5574BBA7904280C082250</iv>
-			<input>E58ED2EA8671DC5D527CDE01C6D9655D</input>
-			<output>5FFCACC68357B6709F5B10D48C65EA40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6F68A078A75FF5A1742311B26D25A3858A0A65182B414295</key>
-			<iv>DEA2D7D8F9FE3E7D5938691FB86738D4</iv>
-			<input>5FFCACC68357B6709F5B10D48C65EA40</input>
-			<output>10BBA695F25C1F9412DB80F59F937F84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9E08E5F9EEC5A7606498B7279F79BC1198D1E5EDB4D23D11</key>
-			<iv>20E4DE61513233E5F1604581499A52C1</iv>
-			<input>10BBA695F25C1F9412DB80F59F937F84</input>
-			<output>36CAF539734BCAF8250595E5E5DB3E94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F72A5636B3A2D23B5252421EEC3276E9BDD4700851090385</key>
-			<iv>9DEBE05128A2A1A06922B3CF5D67755B</iv>
-			<input>36CAF539734BCAF8250595E5E5DB3E94</input>
-			<output>C64074C9A34850C6FD1B12CD8AE9EF30</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D74FABF587AB10AA941236D74F7A262F40CF62C5DBE0ECB5</key>
-			<iv>DEF3A637247B78C02065FDC33409C291</iv>
-			<input>C64074C9A34850C6FD1B12CD8AE9EF30</input>
-			<output>DF663CE4199BC64ACB9B6F99D69EC679</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8D12BAEA80612A284B740A3356E1E0658B540D5C0D7E2ACC</key>
-			<iv>7D9C0365E66F1A355A5D111F07CA3A82</iv>
-			<input>DF663CE4199BC64ACB9B6F99D69EC679</input>
-			<output>CD1BCBDCE7F8C008177E25B83604EE83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>57B4196767474175866FC1EFB119206D9C2A28E43B7AC44F</key>
-			<iv>41846FA05FC28ABCDAA6A38DE7266B5D</iv>
-			<input>CD1BCBDCE7F8C008177E25B83604EE83</input>
-			<output>CD7E96FE44368C4AD22E9D4F6BE3C2C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CBA15BF34D728F0E4B115711F52FAC274E04B5AB5099068D</key>
-			<iv>873A6522E20108C09C1542942A35CE7B</iv>
-			<input>CD7E96FE44368C4AD22E9D4F6BE3C2C2</input>
-			<output>BCC88D6EAF2E41D9AA6E7C91DADCF92E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D3071140E7C7E244F7D9DA7F5A01EDFEE46AC93A8A45FFA3</key>
-			<iv>A50F782EA949C2A718A64AB3AAB56D4A</iv>
-			<input>BCC88D6EAF2E41D9AA6E7C91DADCF92E</input>
-			<output>1FFD3EC8E0D0AD8F3D23961703C0C445</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3F44AB6E12394D24E824E4B7BAD14071D9495F2D89853BE6</key>
-			<iv>501500DC8A97D00BEC43BA2EF5FEAF60</iv>
-			<input>1FFD3EC8E0D0AD8F3D23961703C0C445</input>
-			<output>1D3D85A9A4BF101E12CC79640D716AC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D6B97A7D0CEBEA71F519611E1E6E506FCB85264984F45120</key>
-			<iv>84933D2D2F1F6C13E9FDD1131ED2A755</iv>
-			<input>1D3D85A9A4BF101E12CC79640D716AC6</input>
-			<output>A2228D0483F9CF74CAA301FD30D7DB68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E86CCBF22BAF7B31573BEC1A9D979F1B012627B4B4238A48</key>
-			<iv>4AE5BFEB7168981E3ED5B18F27449140</iv>
-			<input>A2228D0483F9CF74CAA301FD30D7DB68</input>
-			<output>D43E1D2C7447B7C08BCA25F8371AEECF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0279786975DB97998305F136E9D028DB8AEC024C83396487</key>
-			<iv>2FC19D77503C0296EA15B39B5E74ECA8</iv>
-			<input>D43E1D2C7447B7C08BCA25F8371AEECF</input>
-			<output>4F97B6C0B7D10763CD5CE3A45855FEC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7F842708B71AD43BCC9247F65E012FB847B0E1E8DB6C9A47</key>
-			<iv>BAC3ED277430C4537DFD5F61C2C143A2</iv>
-			<input>4F97B6C0B7D10763CD5CE3A45855FEC0</input>
-			<output>067B1521895AE654CA0C20492A9714B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2FA21F709793A1C7CAE952D7D75BC9EC8DBCC1A1F1FB8EFF</key>
-			<iv>66014BDC0AD70ABB50263878208975FC</iv>
-			<input>067B1521895AE654CA0C20492A9714B8</input>
-			<output>E07E7A1D3F39E45E3A755A82EE3C2EBC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>671468BAD93EDBD32A9728CAE8622DB2B7C99B231FC7A043</key>
-			<iv>47BFF88E3EC2E8DC48B677CA4EAD7A14</iv>
-			<input>E07E7A1D3F39E45E3A755A82EE3C2EBC</input>
-			<output>0933D51670E8918147A56816B838BC74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9749A2F6B448445023A4FDDC988ABC33F06CF335A7FF1C37</key>
-			<iv>58F8C33F4725EED2F05DCA4C6D769F83</iv>
-			<input>0933D51670E8918147A56816B838BC74</input>
-			<output>E90570CDFC2CDCC99826780CA7CD7A1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C43D753C2489B403CAA18D1164A660FA684A8B390032662B</key>
-			<iv>C4027E5BF29E96A65374D7CA90C1F053</iv>
-			<input>E90570CDFC2CDCC99826780CA7CD7A1C</input>
-			<output>65B6C303491459554CDDA630AAB36C12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>32F2C804DF89C908AF174E122DB239AF24972D09AA810A39</key>
-			<iv>51DE94724DCE9B10F6CFBD38FB007D0B</iv>
-			<input>65B6C303491459554CDDA630AAB36C12</input>
-			<output>A0B1694685785EFBDD6DB8E4FC312BC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9431549183D690920FA62754A8CA6754F9FA95ED56B021FD</key>
-			<iv>5CBDC9F06F45D2F5A6C39C955C5F599A</iv>
-			<input>A0B1694685785EFBDD6DB8E4FC312BC4</input>
-			<output>C271A8F639D1A293F4B8899428F618C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0AA1211F2A2134DACDD78FA2911BC5C70D421C797E46393F</key>
-			<iv>E52D7ACAF5DFAF799E90758EA9F7A448</iv>
-			<input>C271A8F639D1A293F4B8899428F618C2</input>
-			<output>AB7968C2A1859D5AEBFAEB201910B672</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>88BFBDDC6D21FC0E66AEE760309E589DE6B8F75967568F4D</key>
-			<iv>15AF9C49191BF995821E9CC34700C8D4</iv>
-			<input>AB7968C2A1859D5AEBFAEB201910B672</input>
-			<output>59D394BB9C41BE21C050A9DF2DD94C2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>05AB922FA8B6F5FF3F7D73DBACDFE6BC26E85E864A8FC366</key>
-			<iv>0FB568270892E7A98D142FF3C59709F1</iv>
-			<input>59D394BB9C41BE21C050A9DF2DD94C2B</input>
-			<output>43F89BAE0DCCB0EAF30411E6239A753C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7A7ED7932DED53767C85E875A1135656D5EC4F606915B65A</key>
-			<iv>48F1E1DAEE9C16CD7FD545BC855BA689</iv>
-			<input>43F89BAE0DCCB0EAF30411E6239A753C</input>
-			<output>8196A2F49E2508443F86B294D71A5D5E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8955F595C21BF3AAFD134A813F365E12EA6AFDF4BE0FEB04</key>
-			<iv>B3DEB1ED557CB477F32B2206EFF6A0DC</iv>
-			<input>8196A2F49E2508443F86B294D71A5D5E</input>
-			<output>5ED45F8741E7FC5C77CAACA9D3DFA26D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>09205C9C2A528A5BA3C715067ED1A24E9DA0515D6DD04969</key>
-			<iv>3742941BC0992AAC8075A909E84979F1</iv>
-			<input>5ED45F8741E7FC5C77CAACA9D3DFA26D</input>
-			<output>F60C9F9616A03B40655CB733EE1C3B68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>46DAA0A9A034745355CB8A906871990EF8FCE66E83CC7201</key>
-			<iv>A3E1EA7D9E5BA6CE4FFAFC358A66FE08</iv>
-			<input>F60C9F9616A03B40655CB733EE1C3B68</input>
-			<output>E73F7E14A3A245B1E594F659D996ED06</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DA145A69C9D459E1B2F4F484CBD3DCBF1D6810375A5A9F07</key>
-			<iv>F5D4EB0EAB3486D29CCEFAC069E02DB2</iv>
-			<input>E73F7E14A3A245B1E594F659D996ED06</input>
-			<output>52651C2039168170765B235D85BF6CEC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61CD045E05969B9FE091E8A4F2C55DCF6B33336ADFE5F3EB</key>
-			<iv>F7162437A85A186ABBD95E37CC42C27E</iv>
-			<input>52651C2039168170765B235D85BF6CEC</input>
-			<output>665C920C4BB95B5C716D60AE9C30DB1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BDF9F289D095660D86CD7AA8B97C06931A5E53C443D528F0</key>
-			<iv>ADD7416105DB0CF0DC34F6D7D503FD92</iv>
-			<input>665C920C4BB95B5C716D60AE9C30DB1B</input>
-			<output>F6E1D36CF7D41F70885587A85B897EA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4CBAF7692571D8C5702CA9C44EA819E3920BD46C185C5652</key>
-			<iv>9FBF3815905FCD9FF14305E0F5E4BEC8</iv>
-			<input>F6E1D36CF7D41F70885587A85B897EA2</input>
-			<output>137DB7F20F98671E37F55E401D0482E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CEBF572BB09CC72963511E3641307EFDA5FE8A2C0558D4B0</key>
-			<iv>0C3951BDCA9582CA8205A04295ED1FEC</iv>
-			<input>137DB7F20F98671E37F55E401D0482E2</input>
-			<output>72125C79A48573158496EFCC5CA552D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0D8978CF8179CBBF1143424FE5B50DE8216865E059FD8664</key>
-			<iv>898422AB0DB951B1C3362FE431E50C96</iv>
-			<input>72125C79A48573158496EFCC5CA552D4</input>
-			<output>6B12016832DE435A963FFFA857824CF7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>180D2DA794FEAF777A514327D76B4EB2B7579A480E7FCA93</key>
-			<iv>0B47A508EAD8008015845568158764C8</iv>
-			<input>6B12016832DE435A963FFFA857824CF7</input>
-			<output>18693A241FB5687CF3A793B9B7EE4B15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3D6C36453DCA611462387903C8DE26CE44F009F1B9918186</key>
-			<iv>857CC19C3E72C1AD25611BE2A934CE63</iv>
-			<input>18693A241FB5687CF3A793B9B7EE4B15</input>
-			<output>4E04BD363AFC26BDDD3D98892A7C705A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8B626E8D8E075BCE2C3CC435F222007399CD917893EDF1DC</key>
-			<iv>6E4FCD034F6E2AF5B60E58C8B3CD3ADA</iv>
-			<input>4E04BD363AFC26BDDD3D98892A7C705A</input>
-			<output>06FB2C371C3F54518AA0A2766CE1CCF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A5ECEB5BAE22C2E72AC7E802EE1D5422136D330EFF0C3D2F</key>
-			<iv>4A23E1EFBB43855E2E8E85D620259929</iv>
-			<input>06FB2C371C3F54518AA0A2766CE1CCF3</input>
-			<output>D7DE2C298EB1EF273A6386986BDEC555</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B25537EEFD5BDA7AFD19C42B60ACBB05290EB59694D2F87A</key>
-			<iv>9034BBDBF74A369E17B9DCB55379189D</iv>
-			<input>D7DE2C298EB1EF273A6386986BDEC555</input>
-			<output>0F4A1CEA83DA845DEC063ADFF173F424</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>39FEF1C45697DABCF253D8C1E3763F58C5088F4965A10C5E</key>
-			<iv>2B5EF64E50A2CF5F8BABC62AABCC00C6</iv>
-			<input>0F4A1CEA83DA845DEC063ADFF173F424</input>
-			<output>CE27F8AF55009D3658D166B960CA12D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5657BBA1106032F13C74206EB676A26E9DD9E9F0056B1E88</key>
-			<iv>CE96953F749BBFD66FA94A6546F7E84D</iv>
-			<input>CE27F8AF55009D3658D166B960CA12D6</input>
-			<output>BF1458E052637EFC0EEF352621606029</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A1BC53DEFD62921A8360788EE415DC929336DCD6240B7EA1</key>
-			<iv>B944FC42142E4940F7EBE87FED02A0EB</iv>
-			<input>BF1458E052637EFC0EEF352621606029</input>
-			<output>E4D96706DB5B0DA8FA429BB65BFBE4D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DAC8C0328BA4104167B91F883F4ED13A697447607FF09A79</key>
-			<iv>A8D8E3A3BB687ECC7B7493EC76C6825B</iv>
-			<input>E4D96706DB5B0DA8FA429BB65BFBE4D8</input>
-			<output>1B11FF1367FE94F7759D1BEC40B8FDCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>03AE3AA5E62CA4927CA8E09B58B045CD1CE95C8C3F4867B5</key>
-			<iv>35D7DB1466E14E3ED966FA976D88B4D3</iv>
-			<input>1B11FF1367FE94F7759D1BEC40B8FDCC</input>
-			<output>0989D688C947C616AC13B63892E35E74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EAD5A60BB601C1147521361391F783DBB0FAEAB4ADAB39C1</key>
-			<iv>59BA56CC11EFA9A2E97B9CAE502D6586</iv>
-			<input>0989D688C947C616AC13B63892E35E74</input>
-			<output>978C150575871FB2C8847AA0CB092108</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C608EE8A971A0383E2AD2316E4709C69787E901466A218C9</key>
-			<iv>253A79448D79B0B72CDD4881211BC297</iv>
-			<input>978C150575871FB2C8847AA0CB092108</input>
-			<output>D08629CCCF6B869B10768DE9E2984B2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D8EB4FC4230D3E39322B0ADA2B1B1AF268081DFD843A53E7</key>
-			<iv>E9A7FDB26A37B6601EE3A14EB4173DBA</iv>
-			<input>D08629CCCF6B869B10768DE9E2984B2E</input>
-			<output>E320AECF3803401AB95E09EB50A6EDA5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E3F18E12233B5A30D10BA41513185AE8D1561416D49CBE42</key>
-			<iv>4C6B62E3E6658BE73B1AC1D600366409</iv>
-			<input>E320AECF3803401AB95E09EB50A6EDA5</input>
-			<output>D29E97683C9989C75D5D73EAADC23EE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7D9DEAA58D97A2FC0395337D2F81D32F8C0B67FC795E80A0</key>
-			<iv>414A2961119CE4D79E6C64B7AEACF8CC</iv>
-			<input>D29E97683C9989C75D5D73EAADC23EE2</input>
-			<output>8D859D878DF32FDD26AF4984D48A1BD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E4A19E3554E8D73B8E10AEFAA272FCF2AAA42E78ADD49B72</key>
-			<iv>9DF8066FCF854065993C7490D97F75C7</iv>
-			<input>8D859D878DF32FDD26AF4984D48A1BD2</input>
-			<output>7B524B71439722F0555D4681F7EEAAC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0C93CDDA4435E903F542E58BE1E5DE02FFF968F95A3A31BB</key>
-			<iv>9529BF1B1ACEEDA5E83253EF10DD3E38</iv>
-			<input>7B524B71439722F0555D4681F7EEAAC9</input>
-			<output>8C8ECC9829F06F73497EA90D48CD7FC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>637747C6EF7B72B579CC2913C815B171B687C1F412F74E7E</key>
-			<iv>ADC9666D259469516FE48A1CAB4E9BB6</iv>
-			<input>8C8ECC9829F06F73497EA90D48CD7FC5</input>
-			<output>6E416C2563212821F0D8E7D75297B11F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7E4BB22E1A7C4E25178D4536AB349950465F26234060FF61</key>
-			<iv>C3BE9A54FDDA99731D3CF5E8F5073C90</iv>
-			<input>6E416C2563212821F0D8E7D75297B11F</input>
-			<output>EFC73DFA5FB87EA16284E25D22360C2F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>62B7D329DC5EA208F84A78CCF48CE7F124DBC47E6256F34E</key>
-			<iv>E2145312DF24CBDB1CFC6107C622EC2D</iv>
-			<input>EFC73DFA5FB87EA16284E25D22360C2F</input>
-			<output>1191FC5E2EFA9F19004C7D00E1F4D8B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>039B0E1DE399831EE9DB8492DA7678E82497B97E83A22BFF</key>
-			<iv>0931D0D100EEB87D612CDD343FC72116</iv>
-			<input>1191FC5E2EFA9F19004C7D00E1F4D8B1</input>
-			<output>717B1B902086B97296B7E97BC01C259E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CB02B3C8CA4A0C9498A09F02FAF0C19AB220500543BE0E61</key>
-			<iv>65D0C1DFC85C7FB9C899BDD529D38F8A</iv>
-			<input>717B1B902086B97296B7E97BC01C259E</input>
-			<output>569097DA8C43871CC5A55AC150ABCD31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5FFAEE959D35C247CE3008D876B3468677850AC41315C350</key>
-			<iv>7A4A448600ACA08994F85D5D577FCED3</iv>
-			<input>569097DA8C43871CC5A55AC150ABCD31</input>
-			<output>4046F3DF53DFC1B56400501F08200FE0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0CA33FAAA4B25FEB8E76FB07256C873313855ADB1B35CCB0</key>
-			<iv>C83E2121AA25A5295359D13F39879DAC</iv>
-			<input>4046F3DF53DFC1B56400501F08200FE0</input>
-			<output>87C5362AAF3F31B05C92189E38FD9C66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5B782B675EE9A8A509B3CD2D8A53B6834F17424523C850D6</key>
-			<iv>567E0CD5EAFC699457DB14CDFA5BF74E</iv>
-			<input>87C5362AAF3F31B05C92189E38FD9C66</input>
-			<output>03A5CD79734810F4D9559FDC97A4B1A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B069B5DCAADA727F0A160054F91BA6779642DD99B46CE177</key>
-			<iv>5397ED8A6DF7641EEB119EBBF433DADA</iv>
-			<input>03A5CD79734810F4D9559FDC97A4B1A1</input>
-			<output>1B1ECDDFD726C66594DF7B050F6758FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>52477DE5EFBAE2621108CD8B2E3D6012029DA69CBB0BB988</key>
-			<iv>52151355DA4369C8E22EC8394560901D</iv>
-			<input>1B1ECDDFD726C66594DF7B050F6758FF</input>
-			<output>26E9A7A560DD36D9767A51DA06301BBD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6E59FF11BED37F8837E16A2E4EE056CB74E7F746BD3BA235</key>
-			<iv>FB1A5F8FA1C3D1F43C1E82F451699DEA</iv>
-			<input>26E9A7A560DD36D9767A51DA06301BBD</input>
-			<output>C2FAB5CDDB329F2EA1E1459251A3CB1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>504DE2EC58CE17BBF51BDFE395D2C9E5D506B2D4EC98692E</key>
-			<iv>6BCD90C4D648AB783E141DFDE61D6833</iv>
-			<input>C2FAB5CDDB329F2EA1E1459251A3CB1B</input>
-			<output>4293D0A26E81DBE9FED6113B1954D59F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CC6C6C4150E763AAB7880F41FB53120C2BD0A3EFF5CCBCB1</key>
-			<iv>0F61DAA62B7E95A79C218EAD08297411</iv>
-			<input>4293D0A26E81DBE9FED6113B1954D59F</input>
-			<output>5DC81F054088DB9B3D1F8AD4BACC2039</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BD3B4967A596578FEA401044BBDBC99716CF293B4F009C88</key>
-			<iv>0C6435697122955071572526F5713425</iv>
-			<input>5DC81F054088DB9B3D1F8AD4BACC2039</input>
-			<output>B6FB950586C671E968FFC709B79E8AF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9A08B753E07CD6535CBB85413D1DB87E7E30EE32F89E1670</key>
-			<iv>377A670B7487B3EB2733FE3445EA81DC</iv>
-			<input>B6FB950586C671E968FFC709B79E8AF8</input>
-			<output>ED69B1E52F5F095EFF0AC73A76039B65</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E5FAA83242346B4EB1D234A41242B120813A29088E9D8D15</key>
-			<iv>DBEEED8784AD80B57FF21F61A248BD1D</iv>
-			<input>ED69B1E52F5F095EFF0AC73A76039B65</input>
-			<output>FBC0C9A6FBC2CCD02BF5A009B43FE903</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44770F6B1653E2754A12FD02E9807DF0AACF89013AA26416</key>
-			<iv>7D9B061A6209E0FAA18DA7595467893B</iv>
-			<input>FBC0C9A6FBC2CCD02BF5A009B43FE903</input>
-			<output>ADBE2B6C2C979C90E019991C5E81F69E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>89A3B49BBE885D34E7ACD66EC517E1604AD6101D64239288</key>
-			<iv>5495C29E4DDA4E26CDD4BBF0A8DBBF41</iv>
-			<input>ADBE2B6C2C979C90E019991C5E81F69E</input>
-			<output>E382D6611C0B2591BE9B7B6BC66D479D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>457D838277C2797B042E000FD91CC4F1F44D6B76A24ED515</key>
-			<iv>0303BB8A65CCE419CCDE3719C94A244F</iv>
-			<input>E382D6611C0B2591BE9B7B6BC66D479D</input>
-			<output>7A39D5BFC7ADB6B7539A1AA45A31A7E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>814AD70FBAF9D8AA7E17D5B01EB17246A7D771D2F87F72F0</key>
-			<iv>550BD125E57ADE94C437548DCD3BA1D1</iv>
-			<input>7A39D5BFC7ADB6B7539A1AA45A31A7E5</input>
-			<output>3CB8FF426FF48FA93EFAEDC559833C86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>89599F584B46337342AF2AF27145FDEF992D9C17A1FC4E76</key>
-			<iv>45800DE7659A8FD008134857F1BFEBD9</iv>
-			<input>3CB8FF426FF48FA93EFAEDC559833C86</input>
-			<output>2F5C7660310DE65B1C5254E2176A15CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8EF84BDE14C7412B6DF35C9240481BB4857FC8F5B6965BBC</key>
-			<iv>5142FFEADEC300C107A1D4865F817258</iv>
-			<input>2F5C7660310DE65B1C5254E2176A15CA</input>
-			<output>7A3056742CF8CFDE9CBEAE32607E8DE3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F076085EE3EA165617C30AE66CB0D46A19C166C7D6E8D65F</key>
-			<iv>02FBB83EDCB092957E8E4380F72D577D</iv>
-			<input>7A3056742CF8CFDE9CBEAE32607E8DE3</input>
-			<output>B2B7B7551B2A1D59601003C6EDD70A78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7D74D286D9CEC1C3A574BDB3779AC93379D165013B3FDC27</key>
-			<iv>890E42EAA4C59B078D02DAD83A24D795</iv>
-			<input>B2B7B7551B2A1D59601003C6EDD70A78</input>
-			<output>8B617CCD9B1289F485167DC13126795C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8BA3AA3C04001B9D2E15C17EEC8840C7FCC718C00A19A57B</key>
-			<iv>F96182D81751ECCAF6D778BADDCEDA5E</iv>
-			<input>8B617CCD9B1289F485167DC13126795C</input>
-			<output>D4800EE4A5E29A18C655AD5CE23063F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E51B3BF1DF7B0D54FA95CF9A496ADADF3A92B59CE829C682</key>
-			<iv>46297563D303DF226EB891CDDB7B16C9</iv>
-			<input>D4800EE4A5E29A18C655AD5CE23063F9</input>
-			<output>4A6008072DCEB7602BF120F0984FF1D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82091A039C558D36B0F5C79D64A46DBF1163956C70663754</key>
-			<iv>28E82D15BAC860EA671221F2432E8062</iv>
-			<input>4A6008072DCEB7602BF120F0984FF1D6</input>
-			<output>B05CD61BC646851726441B147FBB1AD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C503B4B113DE349700A91186A2E2E8A837278E780FDD2D87</key>
-			<iv>342F9FDEEEBE130A470AAEB28F8BB9A1</iv>
-			<input>B05CD61BC646851726441B147FBB1AD3</input>
-			<output>33E1834199EE6CD5C6F950D4823B2337</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4B06065B748AFB69334892C73B0C847DF1DEDEAC8DE60EB0</key>
-			<iv>02928C43C0FF24968E05B2EA6754CFFE</iv>
-			<input>33E1834199EE6CD5C6F950D4823B2337</input>
-			<output>BA0BD1FFA54258361D3A8BD9F3C689E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD0B10216B5D496B894343389E4EDC4BECE455757E208754</key>
-			<iv>50DC56062E88C9CAE60D167A1FD7B202</iv>
-			<input>BA0BD1FFA54258361D3A8BD9F3C689E4</input>
-			<output>4911046D8F1D2BCF54F22B5A83AF5AE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AF6CC229A2618121C05247551153F784B8167E2FFD8FDDB5</key>
-			<iv>A7CC6A2B280A9DE80267D208C93CC84A</iv>
-			<input>4911046D8F1D2BCF54F22B5A83AF5AE1</input>
-			<output>254CA1983D7B794911B455E857CE902B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>66413E8C7D11836FE51EE6CD2C288ECDA9A22BC7AA414D9E</key>
-			<iv>D01066ADC643A032C92DFCA5DF70024E</iv>
-			<input>254CA1983D7B794911B455E857CE902B</input>
-			<output>B0A100E60D0404D123D10AE78E9CFFCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D13AF271F9C3337455BFE62B212C8A1C8A73212024DDB255</key>
-			<iv>20D00A218F07ECEDB77BCCFD84D2B01B</iv>
-			<input>B0A100E60D0404D123D10AE78E9CFFCB</input>
-			<output>D4CD0CC7D2EBAB050108E94365D34FAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8B3C7094C3AD8B018172EAECF3C721198B7BC863410EFDFF</key>
-			<iv>EC5F46869A00FFC25A0682E53A6EB875</iv>
-			<input>D4CD0CC7D2EBAB050108E94365D34FAA</input>
-			<output>DF913CC34675469401CCA41DB50BFBA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7DCF9D4559C3EA3A5EE3D62FB5B2678D8AB76C7EF405065B</key>
-			<iv>8718728B7105A417F6F3EDD19A6E613B</iv>
-			<input>DF913CC34675469401CCA41DB50BFBA4</input>
-			<output>5B09F0AF91EA41851A232543E97A6ED4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C3E6C2A9975117B605EA2680245826089094493D1D7F688F</key>
-			<iv>21D001128A401EBFBE295FECCE92FD8C</iv>
-			<input>5B09F0AF91EA41851A232543E97A6ED4</input>
-			<output>8544DFD1E46D14FF1B0E9CF43A7E9EB6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>54C6D7971066FDD380AEF951C03532F78B9AD5C92701F639</key>
-			<iv>F861E1C66C3F21779720153E8737EA65</iv>
-			<input>8544DFD1E46D14FF1B0E9CF43A7E9EB6</input>
-			<output>586696A67E355CCDC41AD16D87786773</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B47A128050D1FC84D8C86FF7BE006E3A4F8004A4A079914A</key>
-			<iv>55A87D49D3640887E0BCC51740B70157</iv>
-			<input>586696A67E355CCDC41AD16D87786773</input>
-			<output>6C7FF8D2F033B33C729C556E0731ACFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C66EA18D75351D93B4B797254E33DD063D1C51CAA7483DB5</key>
-			<iv>7224A11A5D122A607214B30D25E4E117</iv>
-			<input>6C7FF8D2F033B33C729C556E0731ACFF</input>
-			<output>BC031D9B497C64B15EE143CF4D2130B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>00432A82295B2C6708B48ABE074FB9B763FD1205EA690D04</key>
-			<iv>61D8239BE618CC39C62D8B0F5C6E31F4</iv>
-			<input>BC031D9B497C64B15EE143CF4D2130B1</input>
-			<output>325D14CCDE09311A8069C5522FD050FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E03B01935511FA7E3AE99E72D94688ADE394D757C5B95DF9</key>
-			<iv>339B83266B282A96E0782B117C4AD619</iv>
-			<input>325D14CCDE09311A8069C5522FD050FD</input>
-			<output>FA25D0913004A26A3232F743ACC7677E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>47F79639F27D47E9C0CC4EE3E9422AC7D1A62014697E3A87</key>
-			<iv>C5F60E2EC86A0971A7CC97AAA76CBD97</iv>
-			<input>FA25D0913004A26A3232F743ACC7677E</input>
-			<output>61AA67B567F1CE94326B4711F8115727</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EE86C028A3B01E7EA16629568EB3E453E3CD6705916F6DA0</key>
-			<iv>4037462A5B08A27FA971561151CD5997</iv>
-			<input>61AA67B567F1CE94326B4711F8115727</input>
-			<output>35D0FD8AFF6CBDF34065CED4796D9D27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EE88DBE9CCC930CB94B6D4DC71DF59A0A3A8A9D1E802F087</key>
-			<iv>20CB619D26A05953000E1BC16F792EB5</iv>
-			<input>35D0FD8AFF6CBDF34065CED4796D9D27</input>
-			<output>DD69B839EAE7D0DF79F5D06140D54325</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C77ADB703861D01649DF6CE59B38897FDA5D79B0A8D7B3A2</key>
-			<iv>16CFCF6A4F3272EA29F20099F4A8E0DD</iv>
-			<input>DD69B839EAE7D0DF79F5D06140D54325</input>
-			<output>CA93E79E612893AA0D979ABDF5CA788A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3F486F048B5D9716834C8B7BFA101AD5D7CAE30D5D1DCB28</key>
-			<iv>58332C3A8F187A96F832B474B33C4700</iv>
-			<input>CA93E79E612893AA0D979ABDF5CA788A</input>
-			<output>39974A1C62DF12F62EC9F75704B0EFA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B9022C8EA2C6FEF4BADBC16798CF0823F903145A59AD2480</key>
-			<iv>3C09D97EFC480CD6864A438A299B69E2</iv>
-			<input>39974A1C62DF12F62EC9F75704B0EFA8</input>
-			<output>B840EFC34BCD941BF551E437D633BB3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D22317E3BB60B9FA029B2EA4D3029C380C52F06D8F9E9FBA</key>
-			<iv>C755A4CF1FAD90046B213B6D19A6470E</iv>
-			<input>B840EFC34BCD941BF551E437D633BB3A</input>
-			<output>979F6217FD73CAB73A1DE1FACF68542C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E196EBBFCDA64F7095044CB32E71568F364F119740F6CB96</key>
-			<iv>D342A7B4EF6CB49F33B5FC5C76C6F68A</iv>
-			<input>979F6217FD73CAB73A1DE1FACF68542C</input>
-			<output>A290A25CFBCB1BEE137AFB860BB2CF29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B756B878A99088B83794EEEFD5BA4D612535EA114B4404BF</key>
-			<iv>D92C9835E799541056C053C76436C7C8</iv>
-			<input>A290A25CFBCB1BEE137AFB860BB2CF29</input>
-			<output>7E99249836CA5167C88BD3431C78C2E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2515F524203B507E490DCA77E3701C06EDBE3952573CC65F</key>
-			<iv>FD7219F6C131C4BD92434D5C89ABD8C6</iv>
-			<input>7E99249836CA5167C88BD3431C78C2E0</input>
-			<output>5B7DAB9C2148A2B7ACCE4723D1D63B3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>28A33899811FE9B7127061EBC238BEB141707E7186EAFD60</key>
-			<iv>F6B29A78141D8F8A0DB6CDBDA124B9C9</iv>
-			<input>5B7DAB9C2148A2B7ACCE4723D1D63B3F</input>
-			<output>12BAE3836257C52B88ECEEAAE8DE3B80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>85C6089FEF19163500CA8268A06F7B9AC99C90DB6E34C6E0</key>
-			<iv>AE11E9BE14B4ECB1AD6530066E06FF82</iv>
-			<input>12BAE3836257C52B88ECEEAAE8DE3B80</input>
-			<output>71C5D9F8747D428DE30736C4DD33E3E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>86665ED5DA56FE90710F5B90D41239172A9BA61FB3072505</key>
-			<iv>2CBAA91201D1980B03A0564A354FE8A5</iv>
-			<input>71C5D9F8747D428DE30736C4DD33E3E5</input>
-			<output>D824A3FB80554CCD519D730D25EED2AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F6D0840D75423D5CA92BF86B544775DA7B06D51296E9F7AA</key>
-			<iv>66AA086063C3768C70B6DAD8AF14C3CC</iv>
-			<input>D824A3FB80554CCD519D730D25EED2AF</input>
-			<output>C974BCBE88ACA9D29312192BE52885BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>56F2FDAAB52A8691605F44D5DCEBDC08E814CC3973C17217</key>
-			<iv>14D16CCEDE70F435A02279A7C068BBCD</iv>
-			<input>C974BCBE88ACA9D29312192BE52885BD</input>
-			<output>23B74C4B5E661FA157F571F4C13AA3AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>676109782F02525643E8089E828DC3A9BFE1BDCDB2FBD1B9</key>
-			<iv>46BB517768227D1D3193F4D29A28D4C7</iv>
-			<input>23B74C4B5E661FA157F571F4C13AA3AE</input>
-			<output>BDF2A1A79D553C85F5867B2BD5259A82</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D21B20B085B317EDFE1AA9391FD8FF2C4A67C6E667DE4B3B</key>
-			<iv>054B26F10A7F2D69B57A29C8AAB145BB</iv>
-			<input>BDF2A1A79D553C85F5867B2BD5259A82</input>
-			<output>1E02970BE31FEE63C9BCCC79FB41F670</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3CF3F93D44647FB7E0183E32FCC7114F83DB0A9F9C9FBD4B</key>
-			<iv>C44342FC579F9083EEE8D98DC1D7685A</iv>
-			<input>1E02970BE31FEE63C9BCCC79FB41F670</input>
-			<output>70F71372F64174D7C8757F043812439F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2C83CB76D99E054E90EF2D400A8665984BAE759BA48DFED4</key>
-			<iv>884B46D9FBE7D99C1070324B9DFA7AF9</iv>
-			<input>70F71372F64174D7C8757F043812439F</input>
-			<output>46B20E91579B5CC0ADE9327478DF25FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0ADEA18FAA36E94BD65D23D15D1D3958E64747EFDC52DB2E</key>
-			<iv>F256BC3206E11E9C265D6AF973A8EC05</iv>
-			<input>46B20E91579B5CC0ADE9327478DF25FA</input>
-			<output>51FE245369F67740615E159E28C2D56C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E0C00F8BFD4ADCD087A3078234EB4E1887195271F4900E42</key>
-			<iv>836F6756B9EC572DEA1EAE04577C359B</iv>
-			<input>51FE245369F67740615E159E28C2D56C</input>
-			<output>58A1B407358C1F9783A05C0A43D5B4FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EEA0B17E70A6FC53DF02B3850167518F04B90E7BB745BAB9</key>
-			<iv>0E584BF6D72F08310E60BEF58DEC2083</iv>
-			<input>58A1B407358C1F9783A05C0A43D5B4FB</input>
-			<output>6212DD8752996CC4D747790D5F2BC7E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B6E49EEA07D03112BD106E0253FE3D4BD3FE7776E86E7D5E</key>
-			<iv>2BA760FB0CC14D1858442F947776CD41</iv>
-			<input>6212DD8752996CC4D747790D5F2BC7E7</input>
-			<output>DB16C25BDE0B95F4EC7B34FA2096E6A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F64DCEBA5E71D73E6606AC598DF5A8BF3F85438CC8F89BF8</key>
-			<iv>674AA4866EE9988E40A9505059A1E62C</iv>
-			<input>DB16C25BDE0B95F4EC7B34FA2096E6A6</input>
-			<output>BB98BBB3289F3B5A96C5D3DA92F8CD0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>23CBCCA3D63DABB8DD9E17EAA56A93E5A94090565A0056F7</key>
-			<iv>E3D676539CBD9676D5860219884C7C86</iv>
-			<input>BB98BBB3289F3B5A96C5D3DA92F8CD0F</input>
-			<output>324C1661B1E289EA3DAC27AF14E026C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D6F7C4A098C4E809EFD2018B14881A0F94ECB7F94EE07032</key>
-			<iv>E7FB3F340E160FB5F53C08034EF943B1</iv>
-			<input>324C1661B1E289EA3DAC27AF14E026C5</input>
-			<output>6EDA104789445C38F66EC2562F95FBDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4B795FAB98879223810811CC9DCC4637628275AF61758BE9</key>
-			<iv>C5E830814D72E9449D8E9B0B00437A2A</iv>
-			<input>6EDA104789445C38F66EC2562F95FBDB</input>
-			<output>C834C54858181891C7D654A7502C0B60</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA317465E376BAF2493CD484C5D45EA6A554210831598089</key>
-			<iv>2388FCCDB47CB5DBE1482BCE7BF128D1</iv>
-			<input>C834C54858181891C7D654A7502C0B60</input>
-			<output>9C5F5599557D176050BBAC4258B87F66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B601C39C0E5F02DED563811D90A949C6F5EF8D4A69E1FFEF</key>
-			<iv>10C2528D377387311C30B7F9ED29B82C</iv>
-			<input>9C5F5599557D176050BBAC4258B87F66</input>
-			<output>ED5F51A6AFA843D467E21F6C68992273</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44A1FE3F8349D500383CD0BB3F010A12920D92260178DD9C</key>
-			<iv>9E73D9FB1D2471E8F2A03DA38D16D7DE</iv>
-			<input>ED5F51A6AFA843D467E21F6C68992273</input>
-			<output>D7A5F18382F892264008F75707254D95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>568F031D75B9B48FEF992138BDF99834D2056571065D9009</key>
-			<iv>DEC9B60FA5A91887122EFD22F6F0618F</iv>
-			<input>D7A5F18382F892264008F75707254D95</input>
-			<output>D13A34D9F57884ECEE2FA1A412584BE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>72CFCCE9FE5EB48A3EA315E148811CD83C2AC4D51405DBED</key>
-			<iv>75C70261D0C49D692440CFF48BE70005</iv>
-			<input>D13A34D9F57884ECEE2FA1A412584BE4</input>
-			<output>064D550098F0813D145A2AA296064CCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58448186BD1ED1FC38EE40E1D0719DE52870EE7782039722</key>
-			<iv>754A1B79A75BD3B32A8B4D6F43406576</iv>
-			<input>064D550098F0813D145A2AA296064CCF</input>
-			<output>D7CD7D2B23E42F7A9808D48C28982743</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6FF7BCC770079D57EF233DCAF395B29FB0783AFBAA9BB061</key>
-			<iv>25EE1F4D8F257C6437B33D41CD194CAB</iv>
-			<input>D7CD7D2B23E42F7A9808D48C28982743</input>
-			<output>6F55D4C7A13F08A1D936C5F0177040CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7ECBB104AA3505E58076E90D52AABA3E694EFF0BBDEBF0AB</key>
-			<iv>E21F1527B69B89C8113C0DC3DA3298B2</iv>
-			<input>6F55D4C7A13F08A1D936C5F0177040CA</input>
-			<output>7F061908571CDDBC1F8F82A31A3AF1F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>135D99B5F2482FFAFF70F00505B6678276C17DA8A7D10152</key>
-			<iv>5DA54CDB26A0DC2D6D9628B1587D2A1F</iv>
-			<input>7F061908571CDDBC1F8F82A31A3AF1F9</input>
-			<output>30AB085953DE3E8027DE0C8A185A7D02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3C76458A987B66F0CFDBF85C56685902511F7122BF8B7C50</key>
-			<iv>E0614E072D2563DD2F2BDC3F6A33490A</iv>
-			<input>30AB085953DE3E8027DE0C8A185A7D02</input>
-			<output>92C915E98AEBF6265C43A66AC5B40787</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EBD41B4484EA67A05D12EDB5DC83AF240D5CD7487A3F7BD7</key>
-			<iv>6EA27DF02FA0A9A9D7A25ECE1C910150</iv>
-			<input>92C915E98AEBF6265C43A66AC5B40787</input>
-			<output>E9AC0996F97FFBA0F7C860A089CDF99F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>85B6BBBC8E2243D3B4BEE42325FC5484FA94B7E8F3F28248</key>
-			<iv>46D915F802932C936E62A0F80AC82473</iv>
-			<input>E9AC0996F97FFBA0F7C860A089CDF99F</input>
-			<output>BA1D082EDB28E255CB37AFEDB497D43A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BDA8736E56DDB34F0EA3EC0DFED4B6D131A3180547655672</key>
-			<iv>0A7B9BCBE89E4CDE381EC8D2D8FFF09C</iv>
-			<input>BA1D082EDB28E255CB37AFEDB497D43A</input>
-			<output>63298FE15A14C4A4E582C57772A0581E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9B5DC0C3B097B7CE6D8A63ECA4C07275D421DD7235C50E6C</key>
-			<iv>81F4666446CB470526F5B3ADE64A0481</iv>
-			<input>63298FE15A14C4A4E582C57772A0581E</input>
-			<output>AE79390C6789DFCF7110BA93281E9895</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E64DDC6A55048E35C3F35AE0C349ADBAA53167E11DDB96F9</key>
-			<iv>DB4439803A1ACA807D101CA9E59339FB</iv>
-			<input>AE79390C6789DFCF7110BA93281E9895</input>
-			<output>2C9DF2ED511595756E5CF6D33442D3A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9C75AC9CBA0918CDEF6EA80D925C38CFCB6D91322999455A</key>
-			<iv>B73DBACA0C10AD0A7A3870F6EF0D96F8</iv>
-			<input>2C9DF2ED511595756E5CF6D33442D3A3</input>
-			<output>90FDAEAEDC379128B73515CB2AAC9B7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A045744F6BB9205F7F9306A34E6BA9E77C5884F90335DE20</key>
-			<iv>356BBCDD4EBDA8F93C30D8D3D1B03892</iv>
-			<input>90FDAEAEDC379128B73515CB2AAC9B7A</input>
-			<output>E66EA385E1F20791090CA24ADB250AFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48E94FAC40CFC94B99FDA526AF99AE76755426B3D810D4DC</key>
-			<iv>ABAF17EBE3658829E8AC3BE32B76E914</iv>
-			<input>E66EA385E1F20791090CA24ADB250AFC</input>
-			<output>A17C6802F4322D97C6966B523B54CF88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3FC9CD7847FF49D73881CD245BAB83E1B3C24DE1E3441B54</key>
-			<iv>7D25F4EE8B874E2D772082D40730809C</iv>
-			<input>A17C6802F4322D97C6966B523B54CF88</input>
-			<output>CBEC825D143BF30C58B608B58ABFB618</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D4464B5CD3CFAD06F36D4F794F9070EDEB74455469FBAD4C</key>
-			<iv>93D0E88641960F8EEB8F86249430E4D1</iv>
-			<input>CBEC825D143BF30C58B608B58ABFB618</input>
-			<output>D7A8E224DAA4DB7629790D3D4D5A8560</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>73DD2DA38114D0BD24C5AD5D9534AB9BC20D486924A1282C</key>
-			<iv>3E6B8F8084BAA391A79B66FF52DB7DBB</iv>
-			<input>D7A8E224DAA4DB7629790D3D4D5A8560</input>
-			<output>EB7EAD5CF27BA091DEF8D7839EFD7C90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CDA609EB23BB90EBCFBB0001674F0B0A1CF59FEABA5C54BC</key>
-			<iv>8EEE61573B01F1E4BE7B2448A2AF4056</iv>
-			<input>EB7EAD5CF27BA091DEF8D7839EFD7C90</input>
-			<output>2EFA41B666ECBBB1D699C1FB8CA9E175</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>768FCC098B8F48FFE14141B701A3B0BBCA6C5E1136F5B5C9</key>
-			<iv>60BC671273707E17BB29C5E2A834D814</iv>
-			<input>2EFA41B666ECBBB1D699C1FB8CA9E175</input>
-			<output>44D7245914CF3BF73831D4225BD32FDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91F2FFA6BB520FD1A59665EE156C8B4CF25D8A336D269A14</key>
-			<iv>21187FBCFC5E01BEE77D33AF30DD472E</iv>
-			<input>44D7245914CF3BF73831D4225BD32FDD</input>
-			<output>E9FA049C77C326A4F03D2C9E740DE4A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2FC9C39B5DBC560E4C6C617262AFADE80260A6AD192B7EB5</key>
-			<iv>72912E59A0095846BE3B3C3DE6EE59DF</iv>
-			<input>E9FA049C77C326A4F03D2C9E740DE4A1</input>
-			<output>9A62281465C72FDAA73E00E343A99BC3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F401ED3768BC72D4D60E496607688232A55EA64E5A82E576</key>
-			<iv>88022668FE843060DBC82EAC350024DA</iv>
-			<input>9A62281465C72FDAA73E00E343A99BC3</input>
-			<output>FAD9ADA4B98A4141A2857F93F6F71DEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1AD741BDF8A18D8E2CD7E4C2BEE2C37307DBD9DDAC75F89D</key>
-			<iv>F98FECC470C84631EED6AC8A901DFF5A</iv>
-			<input>FAD9ADA4B98A4141A2857F93F6F71DEB</input>
-			<output>630453171FEE434834490229830E1C1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>24F7B99681335EAD4FD3B7D5A10C803B3392DBF42F7BE487</key>
-			<iv>5D69B4D81847DABD3E20F82B7992D323</iv>
-			<input>630453171FEE434834490229830E1C1A</input>
-			<output>DE613189001598BA6AE67F259F9FD349</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>60E401E96083FF2291B2865CA11918815974A4D1B0E437CE</key>
-			<iv>AADE84AD4127FCDA4413B87FE1B0A18F</iv>
-			<input>DE613189001598BA6AE67F259F9FD349</input>
-			<output>CA18925634072DEC80F2F724A0F24235</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>66831E7F4FC51DB95BAA140A951E356DD98653F5101675FB</key>
-			<iv>1C1E2F698C5DD62006671F962F46E29B</iv>
-			<input>CA18925634072DEC80F2F724A0F24235</input>
-			<output>B289F06551C56B77F5CDF7B321E0E8E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48FB1A5B41F634D5E923E46FC4DB5E1A2C4BA44631F69D18</key>
-			<iv>6A872620ED13A14B2E7804240E33296C</iv>
-			<input>B289F06551C56B77F5CDF7B321E0E8E3</input>
-			<output>13B1F93DD388A192D6FB836C90E0E022</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F13FA6E33170F596FA921D521753FF88FAB0272AA1167D3A</key>
-			<iv>40BF714207DA180BB9C4BCB87086C143</iv>
-			<input>13B1F93DD388A192D6FB836C90E0E022</input>
-			<output>298B7B19A27EA1BE9574588A5885F64B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CE171639A4DDA77DD319664BB52D5E366FC47FA0F9938B71</key>
-			<iv>8FB32729166E154F3F28B0DA95AD52EB</iv>
-			<input>298B7B19A27EA1BE9574588A5885F64B</input>
-			<output>11FA000C73485654A8918360DF3C1F5E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9322B0E9AE4D6B20C2E36647C6650862C755FCC026AF942F</key>
-			<iv>809DE75B169C56BE5D35A6D00A90CC5D</iv>
-			<input>11FA000C73485654A8918360DF3C1F5E</input>
-			<output>05533E642958E2F6F29BB1848BE225CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>21B86D89874D627FC7B05823EF3DEA9435CE4D44AD4DB1E4</key>
-			<iv>81CF24C876471695B29ADD602900095F</iv>
-			<input>05533E642958E2F6F29BB1848BE225CB</input>
-			<output>613DB485B9565B4889887282A3C8CFB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6E5AD95BDDA04D12A68DECA6566BB1DCBC463FC60E857E51</key>
-			<iv>7E3AC16D28733BD84FE2B4D25AED2F6D</iv>
-			<input>613DB485B9565B4889887282A3C8CFB5</input>
-			<output>0CDDDA3B3375430B601BA1CCBD567284</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>807937B80E55E814AA50369D651EF2D7DC5D9E0AB3D30CD5</key>
-			<iv>C49324EE3A928684EE23EEE3D3F5A506</iv>
-			<input>0CDDDA3B3375430B601BA1CCBD567284</input>
-			<output>C47A6E22A123AB6397F9C2AFFA6D45AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>20B3595EFE3D3DA76E2A58BFC43D59B44BA45CA549BE497E</key>
-			<iv>B188E4D3A2AC3F42A0CA6EE6F068D5B3</iv>
-			<input>C47A6E22A123AB6397F9C2AFFA6D45AB</input>
-			<output>71592AFCA1FEEE8AB6D6CEF22C14A21D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A97EAD081EDF66D11F73724365C3B73EFD72925765AAEB63</key>
-			<iv>0DFF90FA3722469289CDF456E0E25B76</iv>
-			<input>71592AFCA1FEEE8AB6D6CEF22C14A21D</input>
-			<output>F4E0C4BCF8B386CF1BD457BD1FB65646</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DA90448D67D59E3CEB93B6FF9D7031F1E6A6C5EA7A1CBD25</key>
-			<iv>154DB6488872217073EEE985790AF8ED</iv>
-			<input>F4E0C4BCF8B386CF1BD457BD1FB65646</input>
-			<output>9ED1119909322C280FE92B7840792605</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CF62D3016C8507F17542A76694421DD9E94FEE923A659B20</key>
-			<iv>ED45F0A7D33FC08515F2978C0B5099CD</iv>
-			<input>9ED1119909322C280FE92B7840792605</input>
-			<output>F812615F1BE701E74FCEEFC288303C7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2681849C663E45A8D50C6398FA51C3EA6810150B255A75C</key>
-			<iv>19E09027253115100D0ACB48AAE6E3AB</iv>
-			<input>F812615F1BE701E74FCEEFC288303C7C</input>
-			<output>25897C51C5FEDBFDC630BF8E9F3B2875</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F47C452077541CEEA8D9BA684A5BC7C360B1BEDE2D6E8F29</key>
-			<iv>2C2EE28C518163DF36145D69B137F8B4</iv>
-			<input>25897C51C5FEDBFDC630BF8E9F3B2875</input>
-			<output>9929E5E9F0CA00D0E02022E2FCFAFC3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F7BF8679C8D86E2C31F05F81BA91C71380919C3CD1947316</key>
-			<iv>FCF0C5D85049463103C3C359BF8C72C2</iv>
-			<input>9929E5E9F0CA00D0E02022E2FCFAFC3F</input>
-			<output>3B603A3FDAA669E7C965708C9789E329</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9312EDA0B14017910A9065BE6037AEF449F4ECB0461D903F</key>
-			<iv>364CDACF5762B18864AD6BD9799879BD</iv>
-			<input>3B603A3FDAA669E7C965708C9789E329</input>
-			<output>AC33F7B1A778C36617668C98E20B318A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D5BC989407D78D82A6A3920FC74F6D925E926028A416A1B5</key>
-			<iv>5FB00506C71711D046AE7534B6979A13</iv>
-			<input>AC33F7B1A778C36617668C98E20B318A</input>
-			<output>B408AF5509EF45E0AEDF12570FAE3651</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6BBB14591C12578112AB3D5ACEA02872F04D727FABB897E4</key>
-			<iv>D41F58F192CF60D6BE078CCD1BC5DA03</iv>
-			<input>B408AF5509EF45E0AEDF12570FAE3651</input>
-			<output>39EB055E027AC0DEA5992B7BA3753AB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3F71566EA7D07EBF2B403804CCDAE8AC55D4590408CDAD51</key>
-			<iv>7E495DEC2224696554CA4237BBC2293E</iv>
-			<input>39EB055E027AC0DEA5992B7BA3753AB5</input>
-			<output>832B01D2AD4F0EE077244CF9B6ABE31C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0BDC563CE47527D1A86B39D66195E64C22F015FDBE664E4D</key>
-			<iv>4FE13E98163C3F7734AD005243A5596E</iv>
-			<input>832B01D2AD4F0EE077244CF9B6ABE31C</input>
-			<output>926EB7E17FA4262D1D390D83CDAC6FB2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>07D4D606747858B63A058E371E31C0613FC9187E73CA21FF</key>
-			<iv>12D459160DCFFEFE0C08803A900D7F67</iv>
-			<input>926EB7E17FA4262D1D390D83CDAC6FB2</input>
-			<output>DBFBC3313F86C26BA54B9F69BA93C665</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>84BE014D4BFA8ACCE1FE4D0621B7020A9A828717C959E79A</key>
-			<iv>179322B7D19F3A38836AD74B3F82D27A</iv>
-			<input>DBFBC3313F86C26BA54B9F69BA93C665</input>
-			<output>39B00A1A655B298F56271B2BDBA6B16B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A921F537F5F324CAD84E471C44EC2B85CCA59C3C12FF56F1</key>
-			<iv>D4B03D3AB6FF79D22D9FF47ABE09AE06</iv>
-			<input>39B00A1A655B298F56271B2BDBA6B16B</input>
-			<output>7C5DABBF7C7951808DCD35DB2617B763</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3BB6AACEEEC21A9FA413ECA338957A054168A9E734E8E192</key>
-			<iv>5C92A3C4C3C8567792975FF91B313E55</iv>
-			<input>7C5DABBF7C7951808DCD35DB2617B763</input>
-			<output>BD88FB3B815415503D4F9264AFEA7887</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>008F402C3524BCA8199B1798B9C16F557C273B839B029915</key>
-			<iv>08360D06E31B3AA43B39EAE2DBE6A637</iv>
-			<input>BD88FB3B815415503D4F9264AFEA7887</input>
-			<output>B2813AFBC477618F4C6A436C97AA26F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8AB9F9FC4EE8B2D4AB1A2D637DB60EDA304D78EF0CA8BFE7</key>
-			<iv>DCF7EF19F68916268A36B9D07BCC0E7C</iv>
-			<input>B2813AFBC477618F4C6A436C97AA26F2</input>
-			<output>1E96D52E46B1D73EB00778B203946F28</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CA9D4CE917399619B58CF84D3B07D9E4804A005D0F3CD0CF</key>
-			<iv>63A112DB63DDECB54024B51559D124CD</iv>
-			<input>1E96D52E46B1D73EB00778B203946F28</input>
-			<output>C03D770FE4B1733C5E59DD68F0060D5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1D8268F833FC772575B18F42DFB6AAD8DE13DD35FF3ADD95</key>
-			<iv>8B7AC769F85BA650D71F241124C5E13C</iv>
-			<input>C03D770FE4B1733C5E59DD68F0060D5A</input>
-			<output>6495A8A3667DEDE2CAB58BA3B2F7034E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CCCEE884786AF28A112427E1B9CB473A14A656964DCDDEDB</key>
-			<iv>280C5BD88E3B88ACD14C807C4B9685AF</iv>
-			<input>6495A8A3667DEDE2CAB58BA3B2F7034E</input>
-			<output>4CC3C2AC85EBD619E708988C9FEC60C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8B85284B2B06874D5DE7E54D3C209123F3AECE1AD221BE1D</key>
-			<iv>62E112946391FEFB474BC0CF536C75C7</iv>
-			<input>4CC3C2AC85EBD619E708988C9FEC60C6</input>
-			<output>1522371FD5D53919F52CD97258CEBDA7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B2EBBE81CF234A7E48C5D252E9F5A83A068217688AEF03BA</key>
-			<iv>8A936BAE971C0C9F396E96CAE425CD33</iv>
-			<input>1522371FD5D53919F52CD97258CEBDA7</input>
-			<output>4AA882DCB39AA79E8439E9ECE9F4F3BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>043B9FDDEC299802026D508E5A6F0FA482BBFE84631BF007</key>
-			<iv>6FA7FCDBA3B1BCA5B6D0215C230AD27C</iv>
-			<input>4AA882DCB39AA79E8439E9ECE9F4F3BD</input>
-			<output>28C1E45D8D01AD148FA7D7C4F41ACE04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1074F9BD3FFD4EAF2AACB4D3D76EA2B00D1C294097013E03</key>
-			<iv>1210BAF1D69B23FE144F6660D3D4D6AD</iv>
-			<input>28C1E45D8D01AD148FA7D7C4F41ACE04</input>
-			<output>3ABE04FC59C3BDF9D7721902DEFCB439</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D97F3440E3684D291012B02F8EAD1F49DA6E304249FD8A3A</key>
-			<iv>C271800852E147D5C90BCDFDDC950386</iv>
-			<input>3ABE04FC59C3BDF9D7721902DEFCB439</input>
-			<output>3A563A6A047E16123B289B047BB54C4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>49A10E68A38B02F42A448A458AD3095BE146AB463248C674</key>
-			<iv>9DB6856C7E01CF3690DE3A2840E34FDD</iv>
-			<input>3A563A6A047E16123B289B047BB54C4E</input>
-			<output>F8CB54B8D16274E9A20C0F026866E52F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9DD96DCFD4A1B11FD28FDEFD5BB17DB2434AA4445A2E235B</key>
-			<iv>233C069312D97A03D47863A7772AB3EB</iv>
-			<input>F8CB54B8D16274E9A20C0F026866E52F</input>
-			<output>0302D25C39BF21F67F1AF2E1951D40F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>746E55928D7E549DD18D0CA1620E5C443C5056A5CF3363A2</key>
-			<iv>B6086C5FEEE9A078E9B7385D59DFE582</iv>
-			<input>0302D25C39BF21F67F1AF2E1951D40F9</input>
-			<output>721192A3A5140DD63D93E0D6ACC4A4B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7E6FC505EAAB07E4A39C9E02C71A519201C3B67363F7C71A</key>
-			<iv>9828A03F0ADCE33E0A01909767D55379</iv>
-			<input>721192A3A5140DD63D93E0D6ACC4A4B8</input>
-			<output>1C0F7440EF41FF18E263392741AD9D8B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D13AD442CAE026C3BF93EA42285BAE8AE3A08F54225A5A91</key>
-			<iv>4FC707A846B4469AAF551147204B2127</iv>
-			<input>1C0F7440EF41FF18E263392741AD9D8B</input>
-			<output>442F978615AC3983AA5ABEA81AD1ACA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>043A4EFFCD44EEB1FBBC7DC43DF7970949FA31FC388BF637</key>
-			<iv>05D58B4A88A961AFD5009ABD07A4C872</iv>
-			<input>442F978615AC3983AA5ABEA81AD1ACA6</input>
-			<output>E75C29413A33AA1210F36AADEC02FCEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>81492E2C6296C9341CE0548507C43D1B59095B51D4890AD9</key>
-			<iv>D89794EAA1791507857360D3AFD22785</iv>
-			<input>E75C29413A33AA1210F36AADEC02FCEE</input>
-			<output>6342BFDDD2F6610350458B6695463484</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptCBC256.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6800 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Dec 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>4804E1818FE6297519A3E88C57310413</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>098E3797788EA3BCD5477BF1660373944804E1818FE6297519A3E88C57310413</key>
-			<iv>098E3797788EA3BCD5477BF166037394</iv>
-			<input>4804E1818FE6297519A3E88C57310413</input>
-			<output>D36C27EBB8FA0BC9FA368DF850FD45FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D949E143F98BDE24BD40A256F9E369339B68C66A371C22BCE395657407CC41E8</key>
-			<iv>D0C7D6D481057D986807D9A79FE01AA7</iv>
-			<input>D36C27EBB8FA0BC9FA368DF850FD45FB</input>
-			<output>EBCB4DC84155682856D94B442BC597EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>296352DA0158E197EBC80771EC1ECC7D70A38BA276494A94B54C2E302C09D606</key>
-			<iv>F02AB399F8D33FB35688A52715FDA54E</iv>
-			<input>EBCB4DC84155682856D94B442BC597EE</input>
-			<output>23AA6A6B4BE8C04E19707CA330804C4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5D3E9E2EA4DEDDB65A58DADB5B9679BC5309E1C93DA18ADAAC3C52931C899A48</key>
-			<iv>745DCCF4A5863C21B190DDAAB788B5C1</iv>
-			<input>23AA6A6B4BE8C04E19707CA330804C4E</input>
-			<output>9B1AA0F33416484BA68740E821F95CD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E35024184CCA14687DB19E13093D2A31C813413A09B7C2910ABB127B3D70C69B</key>
-			<iv>BE6EBA36E814C9DE27E944C852AB538D</iv>
-			<input>9B1AA0F33416484BA68740E821F95CD3</input>
-			<output>8A8C6ADF453CB7A2FC4F3690FF7C6F23</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FDC6EB83FF93BA06DE2D09CB33F05406429F2BE54C8B7533F6F424EBC20CA9B8</key>
-			<iv>1E96CF9BB359AE6EA39C97D83ACD7E37</iv>
-			<input>8A8C6ADF453CB7A2FC4F3690FF7C6F23</input>
-			<output>B104182A3D85B857FB342BD06063E989</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7177668BAC9407FB2835524D58F1311EF39B33CF710ECD640DC00F3BA26F4031</key>
-			<iv>8CB18D085307BDFDF6185B866B016518</iv>
-			<input>B104182A3D85B857FB342BD06063E989</input>
-			<output>68AD7EB507FAEE8FF54E5B7EB4314208</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>790AE8470B39A60E9F32F4025B2251849B364D7A76F423EBF88E5445165E0239</key>
-			<iv>087D8ECCA7ADA1F5B707A64F03D3609A</iv>
-			<input>68AD7EB507FAEE8FF54E5B7EB4314208</input>
-			<output>99736D55B2730FDBC4FCD9128A3E6F06</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4EAF05AC15913059B6B0E43EFA7ADC1C0245202FC4872C303C728D579C606D3F</key>
-			<iv>37A5EDEB1EA896572982103CA1588D98</iv>
-			<input>99736D55B2730FDBC4FCD9128A3E6F06</input>
-			<output>DF326CEE98EE253C855D171D93AA9455</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>55EE1CCDBA5A04040F4212DFBF6ABC89DD774CC15C69090CB92F9A4A0FCAF96A</key>
-			<iv>1B411961AFCB345DB9F2F6E145106095</iv>
-			<input>DF326CEE98EE253C855D171D93AA9455</input>
-			<output>B4E41BD5257CD7AF0A6F020BEE5F4067</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6190A91725B7D4E8DD42F3F3B4E42E14699357147915DEA3B3409841E195B90D</key>
-			<iv>347EB5DA9FEDD0ECD200E12C0B8E929D</iv>
-			<input>B4E41BD5257CD7AF0A6F020BEE5F4067</input>
-			<output>3608F41CA4C677E74F48B113D9B336B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0A93E973CCBAC75C9C0AA05502A43E945F9BA308DDD3A944FC08295238268FBD</key>
-			<iv>6B034064E90D13B4414853A6B6401080</iv>
-			<input>3608F41CA4C677E74F48B113D9B336B0</input>
-			<output>FB54DBB9C0C7176C4C9E1E4E6688B570</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>584CCAEDD52F491A935D892AD132F75AA4CF78B11D14BE28B096371C5EAE3ACD</key>
-			<iv>52DF239E19958E460F57297FD396C9CE</iv>
-			<input>FB54DBB9C0C7176C4C9E1E4E6688B570</input>
-			<output>F40A6A6AE95E9D163D88AAE9A2D359BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0DD784E96CAB96D702DD3972E95317FD50C512DBF44A233E8D1E9DF5FC7D6371</key>
-			<iv>559B4E04B984DFCD9180B0583861E0A7</iv>
-			<input>F40A6A6AE95E9D163D88AAE9A2D359BC</input>
-			<output>0FE04B8BB249E49E24FEB6FFE106121C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2BC3A4EBD80215F0130EC1F76821BC515F2559504603C7A0A9E02B0A1D7B716D</key>
-			<iv>26142002B4A9832711D3F8858172ABAC</iv>
-			<input>0FE04B8BB249E49E24FEB6FFE106121C</input>
-			<output>EBA4EF8D541919A0D0947359344D61C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0B5856BE9A78457868F7CF9C9C58EF7AB481B6DD121ADE0079745853293610A4</key>
-			<iv>209BF255427A50887BF90E6BF479532B</iv>
-			<input>EBA4EF8D541919A0D0947359344D61C9</input>
-			<output>06484C36A29BD3CA7CBAB7FBEA47313B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C004F13C83AA1FD5C2A592D27B47C437B2C9FAEBB0810DCA05CEEFA8C371219F</key>
-			<iv>CB5CA78219D25AADAA525D4EE71F2B4D</iv>
-			<input>06484C36A29BD3CA7CBAB7FBEA47313B</input>
-			<output>376157B7DB3B027980C5EF0E88B3F9EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD89203CAD17908C4F44F3FD2D61505385A8AD5C6BBA0FB3850B00A64BC2D870</key>
-			<iv>6D8DD1002EBD8F598DE1612F56269464</iv>
-			<input>376157B7DB3B027980C5EF0E88B3F9EF</input>
-			<output>756783C2F0EE73BBD81B908F660AA6F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FBE990A6247EABC0CD5090DF0C566E01F0CF2E9E9B547C085D1090292DC87E87</key>
-			<iv>5660B09A89693B4C8214632221373E52</iv>
-			<input>756783C2F0EE73BBD81B908F660AA6F7</input>
-			<output>6CC64B773ECDFA9749DB33197F7EA0AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FEC46AD20DA3E667B26D79B11A82A40F9C0965E9A599869F14CBA33052B6DE2C</key>
-			<iv>052DFA7429DD4DA77F3DE96E16D4CA0E</iv>
-			<input>6CC64B773ECDFA9749DB33197F7EA0AB</input>
-			<output>9230E4DCA927E2F8E617A2EBC4F11477</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F4396B035E4E1BD914877124D1CD4B370E3981350CBE6467F2DC01DB9647CA5B</key>
-			<iv>0AFD01D153EDFDBEA6EA0895CB4FEF38</iv>
-			<input>9230E4DCA927E2F8E617A2EBC4F11477</input>
-			<output>6ACD9F3939A86EE4236A3C060D2F5C3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>49C90E620094D6A85E75BD886FAFE79264F41E0C35160A83D1B63DDD9B689667</key>
-			<iv>BDF065615EDACD714AF2CCACBE62ACA5</iv>
-			<input>6ACD9F3939A86EE4236A3C060D2F5C3C</input>
-			<output>E5F4F050827F69B60B417063AC1060E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1AED4D36938AB2D5D884EF2F106D2CEF8100EE5CB7696335DAF74DBE3778F683</key>
-			<iv>53244354931E647D86F152A77FC2CB7D</iv>
-			<input>E5F4F050827F69B60B417063AC1060E4</input>
-			<output>5CE4B0B3C32700B6B887E05A88EE0239</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EF14B937F6E0F19AC8ADBD208DD60EE5DDE45EEF744E63836270ADE4BF96F4BA</key>
-			<iv>F5F9F401656A434F1029520F9DBB220A</iv>
-			<input>5CE4B0B3C32700B6B887E05A88EE0239</input>
-			<output>4794284E2BB56A47332E84AD7A2006A2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>182581A233332DDCD43C25AF9AA3AD7F9A7076A15FFB09C4515E2949C5B6F218</key>
-			<iv>F7313895C5D3DC461C91988F1775A39A</iv>
-			<input>4794284E2BB56A47332E84AD7A2006A2</input>
-			<output>C8AE2CAA7C257508C3AB75BE28D2602F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ABE7FE236E28332AE7A74A9EA03B97A952DE5A0B23DE7CCC92F55CF7ED649237</key>
-			<iv>B3C27F815D1B1EF6339B6F313A983AD6</iv>
-			<input>C8AE2CAA7C257508C3AB75BE28D2602F</input>
-			<output>A9FD4B9D4833B647FF60F8013C3B5B9D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>08248BDC5F9186DCD65DA6344A10C57EFB2311966BEDCA8B6D95A4F6D15FC9AA</key>
-			<iv>A3C375FF31B9B5F631FAECAAEA2B52D7</iv>
-			<input>A9FD4B9D4833B647FF60F8013C3B5B9D</input>
-			<output>C871D7B4C0167DCFDD79AF1DEAC49D4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BF29FB1B11AA7DB8742FF06458C384853352C622ABFBB744B0EC0BEB3B9B54E5</key>
-			<iv>B70D70C74E3BFB64A272565012D341FB</iv>
-			<input>C871D7B4C0167DCFDD79AF1DEAC49D4F</input>
-			<output>E2DE7BAC726C404FC7BA5099E39409CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1810253DDF0CC5ECE2381FB4C2BEEDCCD18CBD8ED997F70B77565B72D80F5D2F</key>
-			<iv>A739DE26CEA6B8549617EFD09A7D6949</iv>
-			<input>E2DE7BAC726C404FC7BA5099E39409CA</input>
-			<output>D4A8257110EF7FFE2A1F026B28D7483A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F343D1EC9AEB200B65DB4AA369F6A47E052498FFC97888F55D495919F0D81515</key>
-			<iv>EB53F4D145E7E5E787E35517AB4849B2</iv>
-			<input>D4A8257110EF7FFE2A1F026B28D7483A</input>
-			<output>9EA25895CFEAEAD224095C4687726D06</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>86A93B0F219E1FFEBC0E4BA0334046AA9B86C06A069262277940055F77AA7813</key>
-			<iv>75EAEAE3BB753FF5D9D501035AB6E2D4</iv>
-			<input>9EA25895CFEAEAD224095C4687726D06</input>
-			<output>5C5DD66E7AD197DA86844D53C8ACEA0E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2278C61356CB0A951DAE3B6DC76868C9C7DB16047C43F5FDFFC4480CBF06921D</key>
-			<iv>A4D1FD1C7755156BA1A070CDF4282E63</iv>
-			<input>5C5DD66E7AD197DA86844D53C8ACEA0E</input>
-			<output>011959D35C8FE620E1C49D1804912F26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E1972A31ACF850A22CBC592AF6CAF6F0C6C24FD720CC13DD1E00D514BB97BD3B</key>
-			<iv>C3EFEC22FA335A373112624731A29E39</iv>
-			<input>011959D35C8FE620E1C49D1804912F26</input>
-			<output>895DDA7BB43DC3060B41DA70CAE4D2ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BB4A76B5E8FD3820CC5D4A44F527E6704F9F95AC94F1D0DB15410F6471736FD6</key>
-			<iv>5ADD5C8444056882E0E1136E03ED1080</iv>
-			<input>895DDA7BB43DC3060B41DA70CAE4D2ED</input>
-			<output>94E8BBC942B4127A0A8EBEC59319CF57</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4D98C60F0FA316B2DA3D11CFB3B9FE0CDB772E65D645C2A11FCFB1A1E26AA081</key>
-			<iv>F6D2B0BAE75E2E9216605B8B469E187C</iv>
-			<input>94E8BBC942B4127A0A8EBEC59319CF57</input>
-			<output>274FE85E229321D4A6B2E9D4F0D3830F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A9FC5AC4A7B3550BC34E4BA94C0D328BFC38C63BF4D6E375B97D587512B9238E</key>
-			<iv>E4649CCBA81043B919735A66FFB4CC87</iv>
-			<input>274FE85E229321D4A6B2E9D4F0D3830F</input>
-			<output>256AC08E72D79B0CB7457B26769AC226</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1C44DEF03398188AC1B2EF6A6E91A33FD95206B5860178790E3823536423E1A8</key>
-			<iv>B5B88434942B4D8102FCA4C3229C91B4</iv>
-			<input>256AC08E72D79B0CB7457B26769AC226</input>
-			<output>366D17A14CA0FC192DBB731C1C305874</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3D80B92C01F9721032366B20D97DC097EF3F1114CAA184602383504F7813B9DC</key>
-			<iv>21C467DC32616A9AF384844AB7EC63A8</iv>
-			<input>366D17A14CA0FC192DBB731C1C305874</input>
-			<output>000B4A6054663874ECAE310144BA9377</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>48DD38DC16A4CE76338C95A866C1C795EF345B749EC7BC14CF2D614E3CA92AAB</key>
-			<iv>755D81F0175DBC6601BAFE88BFBC0702</iv>
-			<input>000B4A6054663874ECAE310144BA9377</input>
-			<output>32B32D65566626D794FB296CA816B0A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C62EFA02F23FE796799BF9151FBFD8D7DD877611C8A19AC35BD6482294BF9A03</key>
-			<iv>8EF3C2DEE49B29E04A176CBD797E1F42</iv>
-			<input>32B32D65566626D794FB296CA816B0A8</input>
-			<output>D743A090101B1BAF5B83E8C06517E193</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91400A96EEADA906ABD4C3F6863CE4750AC4D681D8BA816C0055A0E2F1A87B90</key>
-			<iv>576EF0941C924E90D24F3AE399833CA2</iv>
-			<input>D743A090101B1BAF5B83E8C06517E193</input>
-			<output>2DE61760BEE8F811B3FEB44D2C566DB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9983EAD4BF987E39644D7D0963F93DB62722C1E16652797DB3AB14AFDDFE1620</key>
-			<iv>08C3E0425135D73FCF99BEFFE5C5D9C3</iv>
-			<input>2DE61760BEE8F811B3FEB44D2C566DB0</input>
-			<output>E97598EFFED4128DCCCDD7A04D8405E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B72929D2D02A00D36E7C3BD11CDB9FA4CE57590E98866BF07F66C30F907A13C1</key>
-			<iv>2EAAC3066FB27EEA0A3146D87F22A212</iv>
-			<input>E97598EFFED4128DCCCDD7A04D8405E1</input>
-			<output>5983276B92B95898302385F5156B6201</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CC9928E45F7885515986E0D431F3288E97D47E650A3F33684F4546FA851171C0</key>
-			<iv>7BB001368F52858237FADB052D28B72A</iv>
-			<input>5983276B92B95898302385F5156B6201</input>
-			<output>ABDEFF06E04995FD2C5472D05056A0A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>59A2D8FCED30176B73FF5642BCE4A9163C0A8163EA76A6956311342AD547D163</key>
-			<iv>953BF018B248923A2A79B6968D178198</iv>
-			<input>ABDEFF06E04995FD2C5472D05056A0A3</input>
-			<output>E4210D117B05F3EADC8AF75D1A80B823</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FFCCE373B679DE040165054D9EECA460D82B8C729173557FBF9BC377CFC76940</key>
-			<iv>A66E3B8F5B49C96F729A530F22080D76</iv>
-			<input>E4210D117B05F3EADC8AF75D1A80B823</input>
-			<output>4786111E1B0F2CA78E43CC0D154BC1EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>36E29D3C942DBC6A12B53088632260649FAD9D6C8A7C79D831D80F7ADA8CA8AA</key>
-			<iv>C92E7E4F2254626E13D035C5FDCEC404</iv>
-			<input>4786111E1B0F2CA78E43CC0D154BC1EA</input>
-			<output>122DC3B40007BA36BC7E7EE808911DAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3692660415E53226D2758E60FD6E3F5F8D805ED88A7BC3EE8DA67192D21DB504</key>
-			<iv>0070FB3881C88E4CC0C0BEE89E4C5F3B</iv>
-			<input>122DC3B40007BA36BC7E7EE808911DAE</input>
-			<output>5E443EC882C1B938C2A4C412D3A92FDF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E3C167B38A29EDFBDC37A50F434C7056D3C4601008BA7AD64F02B58001B49ADB</key>
-			<iv>D55301B79FCCDFDD0E422B6FBE224F09</iv>
-			<input>5E443EC882C1B938C2A4C412D3A92FDF</input>
-			<output>14A8F43BA8829B134D6BD110E6D43F92</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8AD38A575E425D347C5B5BFB08A5173CC76C942BA038E1C502696490E760A549</key>
-			<iv>6912EDE4D46BB0CFA06CFEF44BE9676A</iv>
-			<input>14A8F43BA8829B134D6BD110E6D43F92</input>
-			<output>025982911796C2FE34C89157BF2959BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE4ABA37DD2C3C5109B13C3DD9FCB67EC53516BAB7AE233B36A1F5C75849FCF4</key>
-			<iv>24993060836E616575EA67C6D159A142</iv>
-			<input>025982911796C2FE34C89157BF2959BD</input>
-			<output>BC658642A8EEBEC6DBE2A76BCD70799B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>31AC934C58BF87AD1EE4357BBE315175795090F81F409DFDED4352AC9539856F</key>
-			<iv>9FE6297B8593BBFC1755094667CDE70B</iv>
-			<input>BC658642A8EEBEC6DBE2A76BCD70799B</input>
-			<output>132CE1CC36EFE58A4A53534B962D2D70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>79F7C18CA600203D404363908749B22F6A7C713429AF7877A71001E70314A81F</key>
-			<iv>485B52C0FEBFA7905EA756EB3978E35A</iv>
-			<input>132CE1CC36EFE58A4A53534B962D2D70</input>
-			<output>8D2BA39F08ED00BEB51543C0FCCFA57C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>162A4089A1E46EAB5C9592BF1F98BCC2E757D2AB214278C912054227FFDB0D63</key>
-			<iv>6FDD810507E44E961CD6F12F98D10EED</iv>
-			<input>8D2BA39F08ED00BEB51543C0FCCFA57C</input>
-			<output>2E8D05A8A3066094025FE07F3A53A94E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DB5F33F93F2B795EDA54095937B79E4CC9DAD7038244185D105AA258C588A42D</key>
-			<iv>CD7573709ECF17F586C19BE6282F228E</iv>
-			<input>2E8D05A8A3066094025FE07F3A53A94E</input>
-			<output>D39EC2261C53AD45F91627E1B1F62D22</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CCA770427DF8CF5350864D4E86E6D8891A4415259E17B518E94C85B9747E890F</key>
-			<iv>17F843BB42D3B60D8AD24417B15146C5</iv>
-			<input>D39EC2261C53AD45F91627E1B1F62D22</input>
-			<output>F517DC01890C3D300520B6CE343B7F94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>25F53E7CC6590220E9426296568DE496EF53C924171B8828EC6C33774045F69B</key>
-			<iv>E9524E3EBBA1CD73B9C42FD8D06B3C1F</iv>
-			<input>F517DC01890C3D300520B6CE343B7F94</input>
-			<output>ECBCCBB21AC2D07E3ECACD26D42E4444</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6D4A92C82C6C3D44CED65D76BB33B23E03EF02960DD95856D2A6FE51946BB2DF</key>
-			<iv>48BFACB4EA353F6427943FE0EDBE56A8</iv>
-			<input>ECBCCBB21AC2D07E3ECACD26D42E4444</input>
-			<output>6FF7C241A5FF025FAA8C4DAF5E0950AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A3D0AB0A0F8EDF232D111458D3B8B1C66C18C0D7A8265A09782AB3FECA62E271</key>
-			<iv>CE9A39C223E2E267E3C7492E688B03F8</iv>
-			<input>6FF7C241A5FF025FAA8C4DAF5E0950AE</input>
-			<output>3B7E4B74F021F9E995627DE42B03D7D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A8E2D59CF188CDA75C80FA49889F7EE357668BA35807A3E0ED48CE1AE16135A9</key>
-			<iv>0B327E96FE0612847191EE115B27CF25</iv>
-			<input>3B7E4B74F021F9E995627DE42B03D7D8</input>
-			<output>6759C15ED1049A51953E814C2445F3C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>092010B28BD3C8E59D09CE85169190BB303F4AFD890339B178764F56C524C66F</key>
-			<iv>A1C2C52E7A5B0542C18934CC9E0EEE58</iv>
-			<input>6759C15ED1049A51953E814C2445F3C6</input>
-			<output>05F681CB7984491E2CE5B1025F860BEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>538E3068E1059FE89C27D5F19405274835C9CB36F08770AF5493FE549AA2CD84</key>
-			<iv>5AAE20DA6AD6570D012E1B748294B7F3</iv>
-			<input>05F681CB7984491E2CE5B1025F860BEB</input>
-			<output>E046F5B143CEEAC44EF520F2C3BFA96E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>78B5D2551099875910844A17ABBACD64D58F3E87B3499A6B1A66DEA6591D64EA</key>
-			<iv>2B3BE23DF19C18B18CA39FE63FBFEA2C</iv>
-			<input>E046F5B143CEEAC44EF520F2C3BFA96E</input>
-			<output>0F508DD1BCC6C520A81AE7EC75361179</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8D6E7E66F496C358A369EF7C49D117A3DADFB3560F8F5F4BB27C394A2C2B7593</key>
-			<iv>F5DBAC33E40F4401B3EDA56BE26BDAC7</iv>
-			<input>0F508DD1BCC6C520A81AE7EC75361179</input>
-			<output>BAE114FFF19FD11336D454BF0FF6954D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>781164DD6F90037E9896672FD24F1AF6603EA7A9FE108E5884A86DF523DDE0DE</key>
-			<iv>F57F1ABB9B06C0263BFF88539B9E0D55</iv>
-			<input>BAE114FFF19FD11336D454BF0FF6954D</input>
-			<output>FE73CE62C227459729E8FDC9116EC6BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9268D6C0E8DE5AFBCCE137EADE6293E49E4D69CB3C37CBCFAD40903C32B32665</key>
-			<iv>EA79B21D874E5985547750C50C2D8912</iv>
-			<input>FE73CE62C227459729E8FDC9116EC6BB</input>
-			<output>B13971219C12C12A8308213759196B0D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>701EB5AEF8262D8634B53AF1768ED68E2F7418EAA0250AE52E48B10B6BAA4D68</key>
-			<iv>E276636E10F8777DF8540D1BA8EC456A</iv>
-			<input>B13971219C12C12A8308213759196B0D</input>
-			<output>4F5A36173C16ED45F5D36B9D1AED84FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>40D027792516E1FE962F63B9C939677C602E2EFD9C33E7A0DB9BDA967147C997</key>
-			<iv>30CE92D7DD30CC78A29A5948BFB7B1F2</iv>
-			<input>4F5A36173C16ED45F5D36B9D1AED84FF</input>
-			<output>9FB89D6FEFE606058FE40B5492643596</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CAAFC0DD2E4FC86AC19B40BC34F14630FF96B39273D5E1A5547FD1C2E323FC01</key>
-			<iv>8A7FE7A40B59299457B42305FDC8214C</iv>
-			<input>9FB89D6FEFE606058FE40B5492643596</input>
-			<output>F6D0717F197CBAE383B55117FCBE07AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CE03D67B6DAB9CFAA0C20129475620230946C2ED6AA95B46D7CA80D51F9DFBAD</key>
-			<iv>04AC16A643E454906159419573A76613</iv>
-			<input>F6D0717F197CBAE383B55117FCBE07AC</input>
-			<output>7747114FF82F8C7568BE51912CFDB51A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DDCEDD32E5F0D26F7707DAE453288B537E01D3A29286D733BF74D14433604EB7</key>
-			<iv>13CD0B49885B4E95D7C5DBCD147EAB70</iv>
-			<input>7747114FF82F8C7568BE51912CFDB51A</input>
-			<output>E75313A8DFA7EB0AD1664B14D2DBE284</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6B032958C3379BD4BEC22CD4271EB4589952C00A4D213C396E129A50E1BBAC33</key>
-			<iv>B6CDF46A26C749BBC9C5F63074363F0B</iv>
-			<input>E75313A8DFA7EB0AD1664B14D2DBE284</input>
-			<output>42FEDBDC4F0BD11DA42163D76E952DC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1710F6CF86EDB5F1364F19CA676ED69BDBAC1BD6022AED24CA33F9878F2E81F4</key>
-			<iv>7C13DF9745DA2E25888D351E407062C3</iv>
-			<input>42FEDBDC4F0BD11DA42163D76E952DC7</input>
-			<output>6E0166BA404B3AEFACCA8E972F087EA5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D9711F138D0C2D1003E2C99BB0F0447B5AD7D6C4261D7CB66F97710A026FF51</key>
-			<iv>8A87E73EBE3D772036713553DC61D2DC</iv>
-			<input>6E0166BA404B3AEFACCA8E972F087EA5</input>
-			<output>644A1DCFCA2EC01C3E8911768837D99E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1BD7E446FADA5507ECE26BBB635045E7D1E760A3884F17D758706666281126CF</key>
-			<iv>8640F5B7C20A97D6ECDC4722D85F41A0</iv>
-			<input>644A1DCFCA2EC01C3E8911768837D99E</input>
-			<output>4E69AE75BD37DB8024DBD1A11D6D414E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3454FD4B259FB4C086288ADAFF6464CD9F8ECED63578CC577CABB7C7357C6781</key>
-			<iv>2F83190DDF45E1C76ACAE1619C34212A</iv>
-			<input>4E69AE75BD37DB8024DBD1A11D6D414E</input>
-			<output>F63964784AD35374EAFC933AC11A48B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>97EFD593918FB16F2D6889C118C5ED4469B7AAAE7FAB9F23965724FDF4662F37</key>
-			<iv>A3BB28D8B41005AFAB40031BE7A18989</iv>
-			<input>F63964784AD35374EAFC933AC11A48B6</input>
-			<output>51CBF7F67A22DA909567D67F1919ECEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>481E90BC31903905C08D0E5AEF79A514387C5D58058945B30330F282ED7FC3D8</key>
-			<iv>DFF1452FA01F886AEDE5879BF7BC4850</iv>
-			<input>51CBF7F67A22DA909567D67F1919ECEF</input>
-			<output>9AE181DE8DB65E7E242926091A17D0B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>35A4F86146CED63BDCB485B0AE4C205AA29DDC86883F1BCD2719D48BF7681369</key>
-			<iv>7DBA68DD775EEF3E1C398BEA4135854E</iv>
-			<input>9AE181DE8DB65E7E242926091A17D0B1</input>
-			<output>47E15B5AC96A7FDB805F3B8862D9055F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5ECF20C5884FDF95C2B7C17D40CD6923E57C87DC41556416A746EF0395B11636</key>
-			<iv>6B6BD8A4CE8109AE1E0344CDEE814979</iv>
-			<input>47E15B5AC96A7FDB805F3B8862D9055F</input>
-			<output>1806C474A1ECE5D8183E725804FB92C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AC473047ADF97E75C100CBBD73FA0892FD7A43A8E0B981CEBF789D5B914A84F5</key>
-			<iv>F288108225B6A1E003B70AC0333761B1</iv>
-			<input>1806C474A1ECE5D8183E725804FB92C3</input>
-			<output>0A0615424DAD4EFC25EC43B13C672727</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6620AE39484EDD0EC21A3E3F659537DDF77C56EAAD14CF329A94DEEAAD2DA3D2</key>
-			<iv>CA679E7EE5B7A37B031AF582166F3F4F</iv>
-			<input>0A0615424DAD4EFC25EC43B13C672727</input>
-			<output>551639A520D0D043CAD42CB02900D5EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>04D696BB056CC59492B376CB3A0286EAA26A6F4F8DC41F715040F25A842D763D</key>
-			<iv>62F638824D22189A50A948F45F97B137</iv>
-			<input>551639A520D0D043CAD42CB02900D5EF</input>
-			<output>DF906B0E72FEACC9B45381B992E23A5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0AED1F2A6660BDBA660E00137E38C1C97DFA0441FF3AB3B8E41373E316CF4C67</key>
-			<iv>0E3B8991630C782EF4BD76D8443A4723</iv>
-			<input>DF906B0E72FEACC9B45381B992E23A5A</input>
-			<output>D477C6287D05C0F83B27B1FD91F5F908</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E0A51B848A913A860FD2C39941C8C3A1A98DC269823F7340DF34C21E873AB56F</key>
-			<iv>EA4804AEECF1873C69DCC38A3FF00268</iv>
-			<input>D477C6287D05C0F83B27B1FD91F5F908</input>
-			<output>6AB7E109C085B0BA7C8A8B76482F9C80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A8B0500EC0292EF668A03E8293E235BAC33A236042BAC3FAA3BE4968CF1529EF</key>
-			<iv>48154B8A4AB814706772FD1BD22AF61B</iv>
-			<input>6AB7E109C085B0BA7C8A8B76482F9C80</input>
-			<output>71A31000A5763A0C79B6353E39FFBE84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>34C53C34901B693F4611F20F1DD5125EB2993360E7CCF9F6DA087C56F6EA976B</key>
-			<iv>9C756C3A503247C92EB1CC8D8E3727E4</iv>
-			<input>71A31000A5763A0C79B6353E39FFBE84</input>
-			<output>B5B377EBEBC0B32A5A0C7E2A2504C32A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A13850B9164EF60EB77E06819605AC01072A448B0C0C4ADC8004027CD3EE5441</key>
-			<iv>95FD6C8D86559F31F16FF48E8BD0BE5F</iv>
-			<input>B5B377EBEBC0B32A5A0C7E2A2504C32A</input>
-			<output>B74459D1E7C5CF9106C362572FE9C917</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>37261F6D588FF9028A23319CE02DDA71B06E1D5AEBC9854D86C7602BFC079D56</key>
-			<iv>961E4FD44EC10F0C3D5D371D76287670</iv>
-			<input>B74459D1E7C5CF9106C362572FE9C917</input>
-			<output>5777A0854A6E00DB0B6B199BDD35447A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>085A7B276E58B9175204A87D74B9E78AE719BDDFA1A785968DAC79B02132D92C</key>
-			<iv>3F7C644A36D74015D82799E194943DFB</iv>
-			<input>5777A0854A6E00DB0B6B199BDD35447A</input>
-			<output>01CC73B6EE44403DFED2C91D6F0DC441</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>61DC99DD0C1470F511D79DCC2541002AE6D5CE694FE3C5AB737EB0AD4E3F1D6D</key>
-			<iv>6986E2FA624CC9E243D335B151F8E7A0</iv>
-			<input>01CC73B6EE44403DFED2C91D6F0DC441</input>
-			<output>8993161CF3E75DE836BB2C1955581DB6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AEB68207F1E4395794BA7E28CE9BF7996F46D875BC04984345C59CB41B6700DB</key>
-			<iv>CF6A1BDAFDF049A2856DE3E4EBDAF7B3</iv>
-			<input>8993161CF3E75DE836BB2C1955581DB6</input>
-			<output>2A4D6929ED3A66E71EFC40F1840CD649</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DBF8A8AED7B6D7BCFD1B5BEEC3F01AC0450BB15C513EFEA45B39DC459F6BD692</key>
-			<iv>754E2AA92652EEEB69A125C60D6BED59</iv>
-			<input>2A4D6929ED3A66E71EFC40F1840CD649</input>
-			<output>596CE09B1176A9FB5A9973086A0E4C12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A61C7F2FB652E256190C0896F800CD61C6751C74048575F01A0AF4DF5659A80</key>
-			<iv>C1996F5C2CD3F9999C8B9B67AC701616</iv>
-			<input>596CE09B1176A9FB5A9973086A0E4C12</input>
-			<output>B57AC41360C13F6831689C311BD0ED2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FC3828E6A9487698231D11C10C353F2DA91D95D42089683730C8337CEEB577AC</key>
-			<iv>E659EF14522D58BD428DD14863B533FB</iv>
-			<input>B57AC41360C13F6831689C311BD0ED2C</input>
-			<output>F58AA69EEBF25943C728FA26524DE154</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D16CAD42D19D1A3B9CB12566745B2765C97334ACB7B3174F7E0C95ABCF896F8</key>
-			<iv>612EE2328451A73B9AD603976B708D5B</iv>
-			<input>F58AA69EEBF25943C728FA26524DE154</input>
-			<output>4A678FED6C5E5898A47F2DFE9DF71DF2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D9A8554717435E69EFD4A617CA70B0D216F0BCA7A72569EC539FE4A4210F8B0A</key>
-			<iv>44BE9F933A5A8FCA561FB441AD3502A4</iv>
-			<input>4A678FED6C5E5898A47F2DFE9DF71DF2</input>
-			<output>38011537A04E6C4A81510899741F2FFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA9D9A7B4E187F8D78AAEE11967A20A42EF1A990076B05A6D2CEEC3D5510A4F6</key>
-			<iv>7335CF3C595B21E4977E48065C0A9076</iv>
-			<input>38011537A04E6C4A81510899741F2FFC</input>
-			<output>6472060F536BC5F83A3C247F63C3580E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>90A5D8CD93F0AE068E8DC72CA5DD6E184A83AF9F5400C05EE8F2C84236D3FCF8</key>
-			<iv>3A3842B6DDE8D18BF627293D33A74EBC</iv>
-			<input>6472060F536BC5F83A3C247F63C3580E</input>
-			<output>08B99B59D0584DAC0412796871FE3F27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>489520777A18D5BF65B85AAEA29DB3D8423A34C684588DF2ECE0B12A472DC3DF</key>
-			<iv>D830F8BAE9E87BB9EB359D820740DDC0</iv>
-			<input>08B99B59D0584DAC0412796871FE3F27</input>
-			<output>E8B8579DF9E918B3D24C18E17068AD66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>69542EE000ACEEFB5E0EB471F3CD0927AA82635B7DB195413EACA9CB37456EB9</key>
-			<iv>21C10E977AB43B443BB6EEDF5150BAFF</iv>
-			<input>E8B8579DF9E918B3D24C18E17068AD66</input>
-			<output>9B6C3234993F6900B3E572B5A43CA644</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E88C863186548F35DF6EFB48743B7C1831EE516FE48EFC418D49DB7E9379C8FD</key>
-			<iv>81D8A8D186F861CE81604F3987F6753F</iv>
-			<input>9B6C3234993F6900B3E572B5A43CA644</input>
-			<output>E0A2962A02698489813292D33D02D0AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C9DD7904D060B79B83F97A1FC93E50DED14CC745E6E778C80C7B49ADAE7B1856</key>
-			<iv>2151FF35563438AE5C978157BD052CC6</iv>
-			<input>E0A2962A02698489813292D33D02D0AB</input>
-			<output>10C80B22D8EC54B855E103D6B76C03BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D208B7A87003A507561FA5C7422A85C5C184CC673E0B2C70599A4A7B19171BEA</key>
-			<iv>1BD5CEACA063129CD5E6DFD88B14D51B</iv>
-			<input>10C80B22D8EC54B855E103D6B76C03BC</input>
-			<output>CE88B76CC2223EB68BA9B5852C1921DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>27B0E1BF8EA57E8AD51BC3FA278369780F0C7B0BFC2912C6D233FFFE350E3A31</key>
-			<iv>F5B85617FEA6DB8D8304663D65A9ECBD</iv>
-			<input>CE88B76CC2223EB68BA9B5852C1921DB</input>
-			<output>00401EEE034A193C86A23152AF4B767E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>45E37A710D9E754EE90B7C1DBB894DC20F4C65E5FF630BFA5491CEAC9A454C4F</key>
-			<iv>62539BCE833B0BC43C10BFE79C0A24BA</iv>
-			<input>00401EEE034A193C86A23152AF4B767E</input>
-			<output>CEF1DC8A618BF71C68720E6EEDE31EEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B432E78F49D50B045C8B598EEA3D4142C1BDB96F9EE8FCE63CE3C0C277A652A0</key>
-			<iv>F1D19DFE444B7E4AB580259351B40C80</iv>
-			<input>CEF1DC8A618BF71C68720E6EEDE31EEF</input>
-			<output>EF8FB3790627F31E5CBF21B31FF942DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F5CE9C0AF13DA60D32912620673AEE572E320A1698CF0FF8605CE171685F107E</key>
-			<iv>41FC7B85B8E8AD096E1A7FAE8D07AF15</iv>
-			<input>EF8FB3790627F31E5CBF21B31FF942DE</input>
-			<output>2EF1C697D948D712AA177855B0D56650</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DA14D71084F47D87385EF58128C7517F00C3CC814187D8EACA4B9924D88A762E</key>
-			<iv>2FDA4B1A75C9DB8A0ACFD3A14FFDBF28</iv>
-			<input>2EF1C697D948D712AA177855B0D56650</input>
-			<output>0A20E82375680D134FE05AC74E3A0217</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B68F8C980984E2508E9706117256A4A70AE324A234EFD5F985ABC3E396B07439</key>
-			<iv>6C9B5B888D709FD7B6C9F3905A91F5D8</iv>
-			<input>0A20E82375680D134FE05AC74E3A0217</input>
-			<output>46AF886AB871A3DABDEB32F1738E180B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>078A8955ECB2F6ACB249E2DB36B660794C4CACC88C9E76233840F112E53E6C32</key>
-			<iv>B10505CDE53614FC3CDEE4CA44E0C4DE</iv>
-			<input>46AF886AB871A3DABDEB32F1738E180B</input>
-			<output>79949181E3D20A3042C1E7BDAE73330B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7CB2A8360EE65417A979D9B5D4A32D2935D83D496F4C7C137A8116AF4B4D5F39</key>
-			<iv>7B382163E254A2BB1B303B6EE2154D50</iv>
-			<input>79949181E3D20A3042C1E7BDAE73330B</input>
-			<output>12C5E55F6EA47BC44392AE9FB888C1FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E5835F97C4FF1B007D695DD0E72324A9271DD81601E807D73913B830F3C59EC2</key>
-			<iv>9931F7A1CA194F17D410846533800980</iv>
-			<input>12C5E55F6EA47BC44392AE9FB888C1FB</input>
-			<output>FCA15AB64A01FA6E89FE41F72A67D9E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>50932FF04CCCE411AA0541726C1C4CD7DBBC82A04BE9FDB9B0EDF9C7D9A2472A</key>
-			<iv>B51070678833FF11D76C1CA28B3F687E</iv>
-			<input>FCA15AB64A01FA6E89FE41F72A67D9E8</input>
-			<output>7B75EC39F707C3C90691BE561AD5CAC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>ECAEC5FD6AF5F7DF2587C1A40CB046ADA0C96E99BCEE3E70B67C4791C3778DEC</key>
-			<iv>BC3DEA0D263913CE8F8280D660AC0A7A</iv>
-			<input>7B75EC39F707C3C90691BE561AD5CAC6</input>
-			<output>1D3D15FFA0B69EFA8E146301411DFA49</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82F88C3850CC3D111C2125F34840A9A2BDF47B661C58A08A38682490826A77A5</key>
-			<iv>6E5649C53A39CACE39A6E45744F0EF0F</iv>
-			<input>1D3D15FFA0B69EFA8E146301411DFA49</input>
-			<output>34AFB3D6F0BD9ACB6954BB96B1067F9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>702FEC9E7F0D2369FF35D4B7A1269AD3895BC8B0ECE53A41513C9F06336C083B</key>
-			<iv>F2D760A62FC11E78E314F144E9663371</iv>
-			<input>34AFB3D6F0BD9ACB6954BB96B1067F9E</input>
-			<output>899E4C8192661CCA7C73CDFBC3DCA2F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A1DF98E4585C1A4C15C42AD0782C925000C584317E83268B2D4F52FDF0B0AAC8</key>
-			<iv>D1F0747A27513925EAF1FE67D90A0883</iv>
-			<input>899E4C8192661CCA7C73CDFBC3DCA2F3</input>
-			<output>3097C0413291E217FB0E3A8A2D908C12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F9082177BF33D8AF6131018E1EFD49F305244704C12C49CD6416877DD2026DA</key>
-			<iv>3E4F1AF323AF27C6E3D73AC899C346CF</iv>
-			<input>3097C0413291E217FB0E3A8A2D908C12</input>
-			<output>6C71968295905F881F95DC8BA481CA72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B7E5B267EDBFFD4DB4526BA2A1978C105C23D2F2D9829B14C9D4B4FC79A1ECA8</key>
-			<iv>28753070964CC0C742417BBA4078588F</iv>
-			<input>6C71968295905F881F95DC8BA481CA72</input>
-			<output>96D0AB98DBD0CB94A68FC41BEF0B418D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>127FAA6C94663FA9008A1FB7A419C036CAF3796A025250806F5B70E796AAAD25</key>
-			<iv>A59A180B79D9C2E4B4D87415058E4C26</iv>
-			<input>96D0AB98DBD0CB94A68FC41BEF0B418D</input>
-			<output>9E3E4428A911FB328A9F89D7D5E527DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1B9493F07E7E5F07473E6997AE15CCDC54CD3D42AB43ABB2E5C4F930434F8AFE</key>
-			<iv>09EB399CEA1860AE47B476200A0C0CEA</iv>
-			<input>9E3E4428A911FB328A9F89D7D5E527DB</input>
-			<output>0DB5EF3481A9945BAF2E499B5CDE8DDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7B2B8201EEF1601C44006A6D7E06EE355978D2762AEA3FE94AEAB0AB1F910722</key>
-			<iv>60BF11F1908F3F1B033E03FAD01322E9</iv>
-			<input>0DB5EF3481A9945BAF2E499B5CDE8DDC</input>
-			<output>C0569DD7DCAE99859D3987B04FFD8CF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B2D7FEE25A564FA00CEDC8E05BAC7F7D992E4FA1F644A66CD7D3371B506C8BD2</key>
-			<iv>C9FC7CE3B4A72FBC48EDA28D25AA9148</iv>
-			<input>C0569DD7DCAE99859D3987B04FFD8CF0</input>
-			<output>D8AF74B5BB8E632299D32E8DD4DDA012</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5A06C176A290538BC549CAA8041539A941813B144DCAC54E4E00199684B12BC0</key>
-			<iv>E8D13F94F8C61C2BC9A402485FB946D4</iv>
-			<input>D8AF74B5BB8E632299D32E8DD4DDA012</input>
-			<output>0821FB911EDE8CDCD97DDAEDCCDB7B1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1318D23A3A966D16FDEEE300571F3A8549A0C08553144992977DC37B486A50DC</key>
-			<iv>491E134C98063E9D38A729A8530A032C</iv>
-			<input>0821FB911EDE8CDCD97DDAEDCCDB7B1C</input>
-			<output>BCB2831AF3721C020FC1D683C19AEBEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D6D24AA79B3CA4434CCE2B1470B4FE18F512439FA066559098BC15F889F0BB36</key>
-			<iv>C5CA989DA1AAC955B120C81427ABC49D</iv>
-			<input>BCB2831AF3721C020FC1D683C19AEBEA</input>
-			<output>BE869BB3C18EB622CCAC81B6F5B62CC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5F62348BCD9ADB23A19E683400D968404B94D82C61E8E3B25410944E7C4697F2</key>
-			<iv>89B07E2C56A67F60ED504320706D9658</iv>
-			<input>BE869BB3C18EB622CCAC81B6F5B62CC4</input>
-			<output>C8D3EDD549FEA614B4F2348F82DE5531</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A64795E417B7C9344185F6B0C66C096B834735F9281645A6E0E2A0C1FE98C2C3</key>
-			<iv>F925A16FDA2D1217E01B9E84C6B5612B</iv>
-			<input>C8D3EDD549FEA614B4F2348F82DE5531</input>
-			<output>4049BDBD9C302D8F2E06F10D34317784</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CD1F9AB35436014B0CF7ECE9FF98C2BDC30E8844B4266829CEE451CCCAA9B547</key>
-			<iv>6B580F574381C87F4D721A5939F4CBD6</iv>
-			<input>4049BDBD9C302D8F2E06F10D34317784</input>
-			<output>E1338EA5C5462E8C458E5546FA60324D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>78F7558C14BB5100CE93CD49C22BE2D9223D06E1716046A58B6A048A30C9870A</key>
-			<iv>B5E8CF3F408D504BC26421A03DB32064</iv>
-			<input>E1338EA5C5462E8C458E5546FA60324D</input>
-			<output>055984AA929F4D45F5812DC719D4EF24</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2DBC5092C4C7AB427576EBA2855E00562764824BE3FF0BE07EEB294D291D682E</key>
-			<iv>554B051ED07CFA42BBE526EB4775E28F</iv>
-			<input>055984AA929F4D45F5812DC719D4EF24</input>
-			<output>ABC519C4290C69D98BF7AC2A56767202</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>68FA1D8FE36FC5B48A7486FBB34A7B598CA19B8FCAF36239F51C85677F6B1A2C</key>
-			<iv>45464D1D27A86EF6FF026D5936147B0F</iv>
-			<input>ABC519C4290C69D98BF7AC2A56767202</input>
-			<output>C825E44799B1739A1F4CB406BBEABEDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2302849850FD33D4048B898DB6C7B0244847FC8534211A3EA503161C481A4F1</key>
-			<iv>CACA35C666601689CA3C3E636826005B</iv>
-			<input>C825E44799B1739A1F4CB406BBEABEDD</input>
-			<output>D24EE8D56CE09AFE1061B4016ADD61F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9B2E669EA4BB938072E6E97B0ACF834E96CA971D3FA28B5DFA318560AE5CC506</key>
-			<iv>391E4ED721B440BD32AE51E3D1A3F84C</iv>
-			<input>D24EE8D56CE09AFE1061B4016ADD61F7</input>
-			<output>50FECB118EABF93BB97102E9212C883D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A07C5EBAC9D0F862AD525C76460B4BA9C6345C0CB1097266434087898F704D3B</key>
-			<iv>3B5238246D6B6BE2DFB4B50D4CC4C8E7</iv>
-			<input>50FECB118EABF93BB97102E9212C883D</input>
-			<output>C370C26BD3805211A4679399DFA4DDCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>414C776222058D6285574741B2B4D11D05449E6762892077E727141050D490F0</key>
-			<iv>E13029D8EBD5750028051B37F4BF9AB4</iv>
-			<input>C370C26BD3805211A4679399DFA4DDCB</input>
-			<output>79715A04DF9216268C77A152CA96C2F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5E54A416470FE8BA263C0FC88FD884297C35C463BD1B36516B50B5429A425206</key>
-			<iv>1F18D374650A65D8A36B48893D6C5534</iv>
-			<input>79715A04DF9216268C77A152CA96C2F6</input>
-			<output>06DF18B5FAF35F03FE22E39CAE430655</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>98C55CFFB53FA72345EF936283F64BB17AEADCD647E86952957256DE34015453</key>
-			<iv>C691F8E9F2304F9963D39CAA0C2ECF98</iv>
-			<input>06DF18B5FAF35F03FE22E39CAE430655</input>
-			<output>1AED42EB32C4BAEAF9946818AA00C324</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B8332B1EE5D6A4E1BBFA20AEAE22330560079E3D752CD3B86CE63EC69E019777</key>
-			<iv>20F677E150E903C2FE15B3CC2DD478B4</iv>
-			<input>1AED42EB32C4BAEAF9946818AA00C324</input>
-			<output>D276B6A6D480165A944572EF76D4B3E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6E50753A2A0814A778FA2BC773C6A7A2B271289BA1ACC5E2F8A34C29E8D5249F</key>
-			<iv>D6635E24CFDEB046C3000B69DDE494A7</iv>
-			<input>D276B6A6D480165A944572EF76D4B3E8</input>
-			<output>BA46F59DFADC6CA2CBB7D80E33D7B24B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D8E1763EAD728AB8AA2284964BE586880837DD065B70A94033149427DB0296D4</key>
-			<iv>B6B10304877A9E1FD2D8AF513823212A</iv>
-			<input>BA46F59DFADC6CA2CBB7D80E33D7B24B</input>
-			<output>FC9B9F7B5120E1D8B2DD58D211EFF053</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>458CB146C73342F9D5EE4364C400E8E5F4AC427D0A50489881C9CCF5CAED6687</key>
-			<iv>9D6DC7786A41C8417FCCC7F28FE56E6D</iv>
-			<input>FC9B9F7B5120E1D8B2DD58D211EFF053</input>
-			<output>6AD8BCAEFF6F0BF9F360FF601C9B7A43</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F1FBE00DA1F634ACACB6E2F4F15C11179E74FED3F53F436172A93395D6761CC4</key>
-			<iv>B477514B66C576557958A190355CF9F2</iv>
-			<input>6AD8BCAEFF6F0BF9F360FF601C9B7A43</input>
-			<output>BB6E45D060E186323AC2B50CFB988856</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3FBC35054FFF43657936BB676A5C5D1F251ABB0395DEC553486B86992DEE9492</key>
-			<iv>CE47D508EE0977C9D58059939B004C08</iv>
-			<input>BB6E45D060E186323AC2B50CFB988856</input>
-			<output>31B6157397933EE35DEE5B40FE7237BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D49B4E96F8FC2D91FBED3985C53BEB8314ACAE70024DFBB01585DDD9D39CA329</key>
-			<iv>EB277B93B7036EF482DB82E2AF67B69C</iv>
-			<input>31B6157397933EE35DEE5B40FE7237BB</input>
-			<output>EFEB82ED91C5C60FB8F910542804B57B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8D4ABC926827F066B4391FF4B3D6EC99FB472C9D93883DBFAD7CCD8DFB981652</key>
-			<iv>59D1F20490DBDDF74FD4267176ED071A</iv>
-			<input>EFEB82ED91C5C60FB8F910542804B57B</input>
-			<output>E30D071737AB9991F000302502BE84A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>086A14365F781B2FAF533B1534F458D2184A2B8AA423A42E5D7CFDA8F92692F4</key>
-			<iv>8520A8A4375FEB491B6A24E18722B44B</iv>
-			<input>E30D071737AB9991F000302502BE84A6</input>
-			<output>856AF9DF9A9FE5038B75C98E0E1C720F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A64DE8CF2DF04ADB60E88C769F7025BC9D20D2553EBC412DD6093426F73AE0FB</key>
-			<iv>AE27FCF9728851F4CFBBB763AB847D6E</iv>
-			<input>856AF9DF9A9FE5038B75C98E0E1C720F</input>
-			<output>D84910F298F91E081480A912B1AF32D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C52575277A0BD189E2F746FC51CA77844569C2A7A6455F25C2899D344695D22D</key>
-			<iv>63689DE857FB9B52821FCA8ACEBA5238</iv>
-			<input>D84910F298F91E081480A912B1AF32D6</input>
-			<output>57E4A4A2D639D414ED7F82583B4FFA52</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CB9A5219490F7EE31B030ECE521C589B128D6605707C8B312FF61F6C7DDA287F</key>
-			<iv>0EBF273E3304AF6AF9F4483203D62F1F</iv>
-			<input>57E4A4A2D639D414ED7F82583B4FFA52</input>
-			<output>1CECC8218392F2047C0B70BEBFCC5846</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA6412AAC8FC309E6BCDFFD1DA01B6470E61AE24F3EE793553FD6FD2C2167039</key>
-			<iv>61FE40B381F34E7D70CEF11F881DEEDC</iv>
-			<input>1CECC8218392F2047C0B70BEBFCC5846</input>
-			<output>EC2B86A04DB2B4F41830E5EA035531E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EFF5BC892E47F4C7EA859969255AC665E24A2884BE5CCDC14BCD8A38C14341DA</key>
-			<iv>4591AE23E6BBC459814866B8FF5B7022</iv>
-			<input>EC2B86A04DB2B4F41830E5EA035531E3</input>
-			<output>8A1A8EE6E08F61E99FC37AC177881C8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D62E9405D7402765E30FDAD7A29B2E716850A6625ED3AC28D40EF0F9B6CB5D50</key>
-			<iv>39DB288CF907D3A2098A43BE87C1E814</iv>
-			<input>8A1A8EE6E08F61E99FC37AC177881C8A</input>
-			<output>F21583AC8C5F03C19A1A9B856C97D6E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D49F229B7DB6973EDE6BD14AB20234379A4525CED28CAFE94E146B7CDA5C8BB0</key>
-			<iv>02B1B69EAAF6B05B3D640B9D10991A46</iv>
-			<input>F21583AC8C5F03C19A1A9B856C97D6E0</input>
-			<output>323191D5997CF0424B7F5501CBD55B17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>08B1021CD316864EF5B370CBF891FD27A874B41B4BF05FAB056B3E7D1189D0A7</key>
-			<iv>DC2E2087AEA011702BD8A1814A93C910</iv>
-			<input>323191D5997CF0424B7F5501CBD55B17</input>
-			<output>B2BBCC6E54CB33319536A81174B0D73B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>786AE1D89ECC32C8883D984E7DC5FD0A1ACF78751F3B6C9A905D966C6539079C</key>
-			<iv>70DBE3C44DDAB4867D8EE8858554002D</iv>
-			<input>B2BBCC6E54CB33319536A81174B0D73B</input>
-			<output>6E4ADDA6895734D891F328C6D0C71467</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E6C7441B75AF8701E29376287A126CB07485A5D3966C584201AEBEAAB5FE13FB</key>
-			<iv>9EADA5C3EB63B5C96AAEEE6607D791BA</iv>
-			<input>6E4ADDA6895734D891F328C6D0C71467</input>
-			<output>8BED3D2AAB5271F90EE5335520E87AA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>22D515400072783951742ACDF2FA6DC8FF6898F93D3E29BB0F4B8DFF95166959</key>
-			<iv>C412515B75DDFF38B3E75CE588E80178</iv>
-			<input>8BED3D2AAB5271F90EE5335520E87AA2</input>
-			<output>D3059CA1B293AA1F52D459643C5FAB5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D6E6A383AF38A1CD2889A5F79A23CE512C6D04588FAD83A45D9FD49BA949C205</key>
-			<iv>F433B6C3AF4AD9F479FD8F3A68D9A399</iv>
-			<input>D3059CA1B293AA1F52D459643C5FAB5C</input>
-			<output>C20D8580ACA043B0ED2F409EEA42C0F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA95A47ADECB61AAD1A05DA0CE6B17BDEE6081D8230DC014B0B09405430B02F5</key>
-			<iv>7C7307F971F3C067F929F8575448D9EC</iv>
-			<input>C20D8580ACA043B0ED2F409EEA42C0F0</input>
-			<output>61C0D0081F176C53DE83B70608201EE6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>168A56A528A70354AD74C59A8AF33A508FA051D03C1AAC476E3323034B2B1C13</key>
-			<iv>BC1FF2DFF66C62FE7CD4983A44982DED</iv>
-			<input>61C0D0081F176C53DE83B70608201EE6</input>
-			<output>C016536FEFC08B69867AB2946FFBE011</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>92157F38953622D8C0E191DAC4179A6A4FB602BFD3DA272EE849919724D0FC02</key>
-			<iv>849F299DBD91218C6D9554404EE4A03A</iv>
-			<input>C016536FEFC08B69867AB2946FFBE011</input>
-			<output>6923FF03C812710270438F67EF2F42D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CCB6779947D31DF17182FB54555B49422695FDBC1BC8562C980A1EF0CBFFBED3</key>
-			<iv>5EA308A1D2E53F29B1636A8E914CD328</iv>
-			<input>6923FF03C812710270438F67EF2F42D1</input>
-			<output>0D1674014AD9DC2150E073E2FCF006A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>22AA52C07B42CFEB5E75687D395D86092B8389BD51118A0DC8EA6D12370FB87B</key>
-			<iv>EE1C25593C91D21A2FF793296C06CF4B</iv>
-			<input>0D1674014AD9DC2150E073E2FCF006A8</input>
-			<output>6399A65CC66E9318F2CEE1103B8FFB90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>527EF084271AC57F5D33F2E7C7BE1FF1481A2FE1977F19153A248C020C8043EB</key>
-			<iv>70D4A2445C580A9403469A9AFEE399F8</iv>
-			<input>6399A65CC66E9318F2CEE1103B8FFB90</input>
-			<output>511CBDD6CFA31788A43C765301D6BAAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D826E762C9EA31B6F4415B3AE5ED888B1906923758DC0E9D9E18FA510D56F940</key>
-			<iv>8A5817E6EEF0F4C9A972A9DD2253977A</iv>
-			<input>511CBDD6CFA31788A43C765301D6BAAB</input>
-			<output>B04E78AB18AE3F5B825087D9D5794BD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B4C2DEE60A738C428B187EC3A3A4A982A948EA9C407231C61C487D88D82FB297</key>
-			<iv>6CE43984C399BDF47F5925F946492109</iv>
-			<input>B04E78AB18AE3F5B825087D9D5794BD7</input>
-			<output>6B013F9A972D82BD5A87DA6C1DD5FD0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C4A41F8C4B26391F6C0D629C6B052BD8C249D506D75FB37B46CFA7E4C5FA4F98</key>
-			<iv>7066C16A4155B55DE7151C5FC8A1825A</iv>
-			<input>6B013F9A972D82BD5A87DA6C1DD5FD0F</input>
-			<output>9005F8243C6486F63590E7508503719C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91A18F2681FCACE1C80DC772BD0F2628524C2D22EB3B358D735F40B440F93E04</key>
-			<iv>550590AACADA95FEA400A5EED60A0DF0</iv>
-			<input>9005F8243C6486F63590E7508503719C</input>
-			<output>39DEEEC3D3AEEBBF4B573462B375B5E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E8FF0EE1269AFDCA213F69757C84704D6B92C3E13895DE32380874D6F38C8BE0</key>
-			<iv>795E81C7A766512BE932AE07C18B5665</iv>
-			<input>39DEEEC3D3AEEBBF4B573462B375B5E4</input>
-			<output>1910F8E7C3D863784058CB35D674AEEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F00751EFCCECA0ECA3C252F396B4078E72823B06FB4DBD4A7850BFE325F8250B</key>
-			<iv>18F85F0EEA765D2682FD3B86EA3077C3</iv>
-			<input>1910F8E7C3D863784058CB35D674AEEB</input>
-			<output>4A71250E55629D3C5CC62B18B4B67653</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>383A1B81E82B8174A9B9F0AF9EA498A338F31E08AE2F2076249694FB914E5358</key>
-			<iv>C83D4A6E24C721980A7BA25C08109F2D</iv>
-			<input>4A71250E55629D3C5CC62B18B4B67653</input>
-			<output>19CBB63FBB92C7A10B676DBB5EB29060</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A6695341053BD5B1E15A6CD73DEF84E12138A83715BDE7D72FF1F940CFFCC338</key>
-			<iv>9E5348C0ED1054C548E39C78A34B1C42</iv>
-			<input>19CBB63FBB92C7A10B676DBB5EB29060</input>
-			<output>18BA0A45E67D2CFEC691203FC2509837</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>71B4C384EF619E5D6CADBFC7D53564913982A272F3C0CB29E960D97F0DAC5B0F</key>
-			<iv>D7DD90C5EA5A4BEC8DF7D310E8DAE070</iv>
-			<input>18BA0A45E67D2CFEC691203FC2509837</input>
-			<output>7699C8550933C30D630AC16D8DA6F13D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7D0527970FD45C35817091A317A2EAB04F1B6A27FAF308248A6A1812800AAA32</key>
-			<iv>0CB1E413E0B5C268EDDD2E64C2978E21</iv>
-			<input>7699C8550933C30D630AC16D8DA6F13D</input>
-			<output>78FE8EEC14618ED34F63E8671434ADA7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>204ECE43E91409C515077FACC37C4DF837E5E4CBEE9286F7C509F075943E0795</key>
-			<iv>5D4BE9D4E6C055F09477EE0FD4DEA748</iv>
-			<input>78FE8EEC14618ED34F63E8671434ADA7</input>
-			<output>0907F75149A74B49F302D2C08CF18AF5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8E80DC69B6CC0F0D7F1F0BE6E9F178AD3EE2139AA735CDBE360B22B518CF8D60</key>
-			<iv>AECE122A5FD806C86A18744A2A8D3555</iv>
-			<input>0907F75149A74B49F302D2C08CF18AF5</input>
-			<output>FE24023BCABCD83E6212FA53E7320D92</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5152CCE87D9CCC930D7B376C4F1B334BC0C611A16D8915805419D8E6FFFD80F2</key>
-			<iv>DFD21081CB50C39E72643C8AA6EA4BE6</iv>
-			<input>FE24023BCABCD83E6212FA53E7320D92</input>
-			<output>9526CDED534CB3366306F8C731F87CD6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>00C9D78F67F1B63181ADE21A02675C6755E0DC4C3EC5A6B6371F2021CE05FC24</key>
-			<iv>519B1B671A6D7AA28CD6D5764D7C6F2C</iv>
-			<input>9526CDED534CB3366306F8C731F87CD6</input>
-			<output>801F005EA2E9287FFD8D9B01BE8E2205</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>442603CF6A012BDB23086BD7EFD7396ED5FFDC129C2C8EC9CA92BB20708BDE21</key>
-			<iv>44EFD4400DF09DEAA2A589CDEDB06509</iv>
-			<input>801F005EA2E9287FFD8D9B01BE8E2205</input>
-			<output>7558994ACE0299E34EB586B832C98560</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B153C7C49983077FB0C79C30266A487AA0A74558522E172A84273D9842425B41</key>
-			<iv>F575C40BF3822CA493CFF7E7C9BD7114</iv>
-			<input>7558994ACE0299E34EB586B832C98560</input>
-			<output>324273A52FFBFBCAC5401CFCD3075C98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0E038D82F7FAD738824EF9FEB6F6627692E536FD7DD5ECE041672164914507D9</key>
-			<iv>BF504A466E79D047328965CE909C2A0C</iv>
-			<input>324273A52FFBFBCAC5401CFCD3075C98</input>
-			<output>509E651E053E85340A5B545AA0E40A71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B2237D5D0E16B5F9A8FD7274F4CA1206C27B53E378EB69D44B3C753E31A10DA8</key>
-			<iv>BC20F0DFF9EC62C12AB38B8A423C7070</iv>
-			<input>509E651E053E85340A5B545AA0E40A71</input>
-			<output>1716AB4DCAB205D62EF356E4C565BA70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CBE25CF8F3CAB9849F44F330AD8B17E1D56DF8AEB2596C0265CF23DAF4C4B7D8</key>
-			<iv>79C121A5FDDC0C7D37B98144594105E7</iv>
-			<input>1716AB4DCAB205D62EF356E4C565BA70</input>
-			<output>093CA7764E7F6828EF210E89D3D01C73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2BF3C06B0CAE728C8A6134634D5DEAF1DC515FD8FC26042A8AEE2D532714ABAB</key>
-			<iv>E0119C93FF64CB081525C753E0D6FD10</iv>
-			<input>093CA7764E7F6828EF210E89D3D01C73</input>
-			<output>86F8B39DB10EB8B3CFED4C98BBBFFAE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2C742CFF575CA98D3261BE7DA99E3935AA9EC454D28BC99450361CB9CAB514A</key>
-			<iv>893482A4F9DBB81459472F8497C40962</iv>
-			<input>86F8B39DB10EB8B3CFED4C98BBBFFAE1</input>
-			<output>8BF9C14617B3CE1511ABBD484439D041</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F8AB8BAD8F2C5A54ED4C80AD094A36D4D1502D035A9B728C54A8DC83D892810B</key>
-			<iv>5A6CC9627A5990CC3E6A9B4AD3D3D547</iv>
-			<input>8BF9C14617B3CE1511ABBD484439D041</input>
-			<output>C41B937B1D5E10D982C7850685997862</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4DBA6859C8D681253E8F6278BE76D87D154BBE7847C56255D66F59855D0BF969</key>
-			<iv>B511E3F447FADB71D3C3E2D5B73CEEA9</iv>
-			<input>C41B937B1D5E10D982C7850685997862</input>
-			<output>467114F3F33C8BA65AA76C297E9DA11C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2738E652A9F41B48B443B487B2AF6D7C533AAA8BB4F9E9F38CC835AC23965875</key>
-			<iv>6A828E0B61229A6D8ACCD6FF0CD9B501</iv>
-			<input>467114F3F33C8BA65AA76C297E9DA11C</input>
-			<output>CB9D772C72BC5BB3E18087CABADDE5B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A1C138E8AFAA19465AE9BD1968C19E8798A7DDA7C645B2406D48B266994BBDC7</key>
-			<iv>86F9DEBA065E020EEEAA099EDA6EF3FB</iv>
-			<input>CB9D772C72BC5BB3E18087CABADDE5B2</input>
-			<output>678837A26F65190F44107C19A01F97E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CD73AF62C6130630324F71F35042BC9AFF2FEA05A920AB4F2958CE7F39542A21</key>
-			<iv>6CB2978A69B91F7668A6CCEA3883221D</iv>
-			<input>678837A26F65190F44107C19A01F97E6</input>
-			<output>E395804E9F2D61447B5207AA438F7D98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F076EAF59DAC3F3975E9CBED6697A21B1CBA6A4B360DCA0B520AC9D57ADB57B9</key>
-			<iv>3D0545975BBF390947A6BA1E36D51E81</iv>
-			<input>E395804E9F2D61447B5207AA438F7D98</input>
-			<output>CA6E3E780C170E950306FEE08CAB46D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>87DD7A9906E626E1AC55611A52EBC196D6D454333A1AC49E510C3735F6701160</key>
-			<iv>77AB906C9B4A19D8D9BCAAF7347C638D</iv>
-			<input>CA6E3E780C170E950306FEE08CAB46D9</input>
-			<output>419B7C538E827E431B2C2BA5AEB95373</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C8D569C710030750FDA3A48E748BED26974F2860B498BADD4A201C9058C94213</key>
-			<iv>4F08135E16E521B151F6C59426602CB0</iv>
-			<input>419B7C538E827E431B2C2BA5AEB95373</input>
-			<output>1D6607B51B0DA629C62D00CB20870FEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A3A22E3CED89316BC747E3326CB53C448A292FD5AF951CF48C0D1C5B784E4DF9</key>
-			<iv>6B7747FBFD8A363B3AE447BC183ED162</iv>
-			<input>1D6607B51B0DA629C62D00CB20870FEA</input>
-			<output>58169D0006C9031C7CCE502F086B0CD6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DDB2F456CFE201D5E1DD9EFC6593813FD23FB2D5A95C1FE8F0C34C747025412F</key>
-			<iv>7E10DA6A226B30BE269A7DCE0926BD7B</iv>
-			<input>58169D0006C9031C7CCE502F086B0CD6</input>
-			<output>8001E1BDAE24A2A9ABE102C2BEB4AD70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A990048427C8E19BABE1D0BB5D6A83CA523E53680778BD415B224EB6CE91EC5F</key>
-			<iv>7422F0D2E82AE04E4A3C4E4738F902F5</iv>
-			<input>8001E1BDAE24A2A9ABE102C2BEB4AD70</input>
-			<output>EA143E99846F5DF1C1A2AD0565D3AE45</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5074E20E5B70B571A7155A3AAFE3AF2AB82A6DF18317E0B09A80E3B3AB42421A</key>
-			<iv>F9E4E68A7CB854EA0CF48A81F2892CE0</iv>
-			<input>EA143E99846F5DF1C1A2AD0565D3AE45</input>
-			<output>C1EBFE1B00D813BB5AC9E4B007977B19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>50315F6BF520F26A044751215225348179C193EA83CFF30BC0490703ACD53903</key>
-			<iv>0045BD65AE50471BA3520B1BFDC69BAB</iv>
-			<input>C1EBFE1B00D813BB5AC9E4B007977B19</input>
-			<output>3476AA08CB11F13D8DD858CF10472D03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>03D2536F9830D74A9B2AEDD1508CE4764DB739E248DE02364D915FCCBC921400</key>
-			<iv>53E30C046D1025209F6DBCF002A9D0F7</iv>
-			<input>3476AA08CB11F13D8DD858CF10472D03</input>
-			<output>C79BED3BB201F29B65CDF5709654317C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4AC2173AD99E09ECCB4A647AF96C26F98A2CD4D9FADFF0AD285CAABC2AC6257C</key>
-			<iv>4910445541AEDEA6506089ABA9E0C28F</iv>
-			<input>C79BED3BB201F29B65CDF5709654317C</input>
-			<output>E5E144D56A2FF95D644D51E73AEAE922</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9F46778CA9C15CB9978C0DF359056F3D6FCD900C90F009F04C11FB5B102CCC5E</key>
-			<iv>D58460B6705F55555CC66989A06949C4</iv>
-			<input>E5E144D56A2FF95D644D51E73AEAE922</input>
-			<output>38582F30FDE74A162CCD85955C2E48FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>63038F8EA2934D0C65F181BE92B9664A5795BF3C6D1743E660DC7ECE4C0284A2</key>
-			<iv>FC45F8020B5211B5F27D8C4DCBBC0977</iv>
-			<input>38582F30FDE74A162CCD85955C2E48FC</input>
-			<output>266E808D7E9206C9294F0349D1CEF1DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D43CC15DCAB5047B8C67D61F1735C6A471FB3FB11385452F49937D879DCC7578</key>
-			<iv>B73F4ED368264977E99657A1858CA0EE</iv>
-			<input>266E808D7E9206C9294F0349D1CEF1DA</input>
-			<output>8E3D1F7DC678C32352782D52E4CD44D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9979232A388E0E6C766279CFE7E047B4FFC620CCD5FD860C1BEB50D5790131AD</key>
-			<iv>4D45E277F23B0A17FA05AFD0F0D58110</iv>
-			<input>8E3D1F7DC678C32352782D52E4CD44D5</input>
-			<output>DDC8075418E2A649D4E78144528682F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>43479EA72BF3B417CF224B15749043C5220E2798CD1F2045CF0CD1912B87B354</key>
-			<iv>DA3EBD8D137DBA7BB94032DA93700471</iv>
-			<input>DDC8075418E2A649D4E78144528682F9</input>
-			<output>4096B4F51C77C8A00A5308D8C3175B6A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7AE39630885C3ACDCF915625141DF45A6298936DD168E8E5C55FD949E890E83E</key>
-			<iv>39A40897A3AF8EDA00B31D30608DB79F</iv>
-			<input>4096B4F51C77C8A00A5308D8C3175B6A</input>
-			<output>60D0385ECE913BEC6760BAA0BCCDE853</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82496ADB8A91DAE80C249D2BD8F00C990248AB331FF9D309A23F63E9545D006D</key>
-			<iv>F8AAFCEB02CDE025C3B5CB0ECCEDF8C3</iv>
-			<input>60D0385ECE913BEC6760BAA0BCCDE853</input>
-			<output>79A86909141C27366744FC614808705B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EF7FEE5E3FDAC015E8016A7A9D3EB8677BE0C23A0BE5F43FC57B9F881C557036</key>
-			<iv>6D368485B54B1AFDE425F75145CEB4FE</iv>
-			<input>79A86909141C27366744FC614808705B</input>
-			<output>9817CE82A9D821189878991B32360409</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A400D423453A59F64968E8B80140AAF6E3F70CB8A23DD5275D0306932E63743F</key>
-			<iv>4B7F3A7D7AE099E3A16982C29C7E1291</iv>
-			<input>9817CE82A9D821189878991B32360409</input>
-			<output>C3259E5D4A3E82FDC862E862E4449DA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B9280C8996C8BEC6888CB4D9D1E76B0620D292E5E80357DA9561EEF1CA27E99D</key>
-			<iv>1D28D8AAD3F2E730C1E45C61D0A7C1F0</iv>
-			<input>C3259E5D4A3E82FDC862E862E4449DA2</input>
-			<output>F035078B9A3E45B4ED561F001DB21E47</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9686D9BB259CD14FA7D58C9789932385D0E7956E723D126E7837F1F1D795F7DA</key>
-			<iv>2FAED532B3546F892F59384E58744883</iv>
-			<input>F035078B9A3E45B4ED561F001DB21E47</input>
-			<output>596B9F7F2122A11C599626B16B6AC340</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>736E847DDC4C794A3AA2E22C1AF85EF1898C0A11531FB37221A1D740BCFF349A</key>
-			<iv>E5E85DC6F9D0A8059D776EBB936B7D74</iv>
-			<input>596B9F7F2122A11C599626B16B6AC340</input>
-			<output>800FCC5CE3B08CFFDD70FB5270DED220</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>728D3E35CD653621D41E591530770B370983C64DB0AF3F8DFCD12C12CC21E6BA</key>
-			<iv>01E3BA4811294F6BEEBCBB392A8F55C6</iv>
-			<input>800FCC5CE3B08CFFDD70FB5270DED220</input>
-			<output>5515A58EB0013D2EE561BD2826761209</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>929F6FD8250BAD33FAE4ED108843A2645C9663C300AE02A319B0913AEA57F4B3</key>
-			<iv>E01251EDE86E9B122EFAB405B834A953</iv>
-			<input>5515A58EB0013D2EE561BD2826761209</input>
-			<output>8B7B3AB73287CEAAA0098D41F0B3A28B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3F54C218B02F6097C3F31A05F5CCB8C4D7ED59743229CC09B9B91C7B1AE45638</key>
-			<iv>ADCBADC09524CDA43917F7157D8F1AA0</iv>
-			<input>8B7B3AB73287CEAAA0098D41F0B3A28B</input>
-			<output>90CDCF132600F622D1339197B441A4C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2F60AEE4E6A6F7109193112BC756D7F24720966714293A2B688A8DECAEA5F2F8</key>
-			<iv>10346CFC5689978752600B2E329A6F36</iv>
-			<input>90CDCF132600F622D1339197B441A4C0</input>
-			<output>EA089BEC0DEE1305828522B8AD4F5A99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>33623A9F86F3AF456D92076B132E46A3AD280D8B19C7292EEA0FAF5403EAA861</key>
-			<iv>1C02947B60555855FC011640D4789151</iv>
-			<input>EA089BEC0DEE1305828522B8AD4F5A99</input>
-			<output>339C14562AE38F84BE0FB1569C234287</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6291ED0B63ED8C18A713DDCBFCA054E19EB419DD3324A6AA54001E029FC9EAE6</key>
-			<iv>51F3D794E51E235DCA81DAA0EF8E1242</iv>
-			<input>339C14562AE38F84BE0FB1569C234287</input>
-			<output>31050E95B1F08B9139EF7F8D42110978</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7BEF1BE3E67AA478C5D9F50350D221CCAFB1174882D42D3B6DEF618FDDD8E39E</key>
-			<iv>197EF6E88597286062CA28C8AC72752D</iv>
-			<input>31050E95B1F08B9139EF7F8D42110978</input>
-			<output>18DE66E3B58C9ABAB99987826AF0D0AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3DEB69283844069B400C2E7127B8CD2EB76F71AB3758B781D476E60DB7283331</key>
-			<iv>460472CBDE3EA2E385D5DB72776AECE2</iv>
-			<input>18DE66E3B58C9ABAB99987826AF0D0AF</input>
-			<output>B75D11E28C94DB969FE009B984DA956B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>754C5BEC642540EC8BAD0778773CA8E700326049BBCC6C174B96EFB433F2A65A</key>
-			<iv>48A732C45C614677CBA12909508465C9</iv>
-			<input>B75D11E28C94DB969FE009B984DA956B</input>
-			<output>7CEEE835FC734108785B367A28C62058</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>01B0A659138DEE7CF1EFA11DD0A209247CDC887C47BF2D1F33CDD9CE1B348602</key>
-			<iv>74FCFDB577A8AE907A42A665A79EA1C3</iv>
-			<input>7CEEE835FC734108785B367A28C62058</input>
-			<output>F1E848F6C257D6D56B4FBCA36900614C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F9531CEDC3C5C76A90195BF1E5FB5ED98D34C08A85E8FBCA5882656D7234E74E</key>
-			<iv>F8E3BAB4D048291661F6FAEC355957FD</iv>
-			<input>F1E848F6C257D6D56B4FBCA36900614C</input>
-			<output>7B06A193C8B84977E56B382D424D2A78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D409DB9768430BCA0E2B68BA1CFE93A5F63261194D50B2BDBDE95D403079CD36</key>
-			<iv>2D5AC77AAB86CCA09E32334BF905CD7C</iv>
-			<input>7B06A193C8B84977E56B382D424D2A78</input>
-			<output>413356E3367ACBDD88ADA6DF5E09FFC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8425B50A014625BA114ABAC1585C3F68B70137FA7B2A79603544FB9F6E7032F0</key>
-			<iv>502C6E9D69052E701F61D27B44A2ACCD</iv>
-			<input>413356E3367ACBDD88ADA6DF5E09FFC6</input>
-			<output>13B524E8AEBFE32CC9559B500D9E9A82</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3ED2EEDFF8C12697C9CEB18B8DC86798A4B41312D5959A4CFC1160CF63EEA872</key>
-			<iv>BAF75BD5F987032DD8840B4AD59458F0</iv>
-			<input>13B524E8AEBFE32CC9559B500D9E9A82</input>
-			<output>91775D8DF510277669BC11697965AE99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B3C35FF0F6B2DDCF5522A35E75040BB135C34E9F2085BD3A95AD71A61A8B06EB</key>
-			<iv>8D11B12F0E73FB589CEC12D5F8CC6C29</iv>
-			<input>91775D8DF510277669BC11697965AE99</input>
-			<output>0AA5B5A593FED4CE1FD66736774649D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5581EEED032A31D6F8077BEED79ABB1E3F66FB3AB37B69F48A7B16906DCD4F39</key>
-			<iv>E642B11DF598EC19AD25D8B0A29EB0AF</iv>
-			<input>0AA5B5A593FED4CE1FD66736774649D2</input>
-			<output>3DB595E23D32347092E5D94A8376DB5D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2337ABB014AD70D3E290033BD6FC75D702D36ED88E495D84189ECFDAEEBB9464</key>
-			<iv>76B6455D178741051A9778D50166CEC9</iv>
-			<input>3DB595E23D32347092E5D94A8376DB5D</input>
-			<output>2AF2DEC9D2D4F0BA81D1FC88E421C034</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7C8A43D8CA68E782BBD49C18477683052821B0115C9DAD3E994F33520A9A5450</key>
-			<iv>5FBDE868DEC5975159449F23918AF6D2</iv>
-			<input>2AF2DEC9D2D4F0BA81D1FC88E421C034</input>
-			<output>8AF90FCCBEDCDF709AEE93FEF45C03EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>37FDC789E91F58F691931C86C4505926A2D8BFDDE241724E03A1A0ACFEC657BC</key>
-			<iv>4B7784512377BF742A47809E8326DA23</iv>
-			<input>8AF90FCCBEDCDF709AEE93FEF45C03EC</input>
-			<output>8E98DF785A601DF26465D9A0D163D650</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>57C30D92BD234BE693F15534768970FC2C4060A5B8216FBC67C4790C2FA581EC</key>
-			<iv>603ECA1B543C1310026249B2B2D929DA</iv>
-			<input>8E98DF785A601DF26465D9A0D163D650</input>
-			<output>21D3EAC95A088A548E5C0E56001BD103</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1F9A07E73DB0530F84B6DB88C5EA0AFD0D938A6CE229E5E8E998775A2FBE50EF</key>
-			<iv>48590A75809318E917478EBCB3637A01</iv>
-			<input>21D3EAC95A088A548E5C0E56001BD103</input>
-			<output>48A8853D9E4E4A6351E5F5734911D569</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>219E87740C05905A3DAC677C78C5E6D4453B0F517C67AF8BB87D822966AF8586</key>
-			<iv>3E04809331B5C355B91ABCF4BD2FEC29</iv>
-			<input>48A8853D9E4E4A6351E5F5734911D569</input>
-			<output>C75ECB64A655DC6803FC976A1CAE78A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D445B2CF4C6B8AF073FCDFF8907C4B278265C435DA3273E3BB8115437A01FD2F</key>
-			<iv>F5DB35BB406E1AAA4E50B884E8B9ADF3</iv>
-			<input>C75ECB64A655DC6803FC976A1CAE78A9</input>
-			<output>F063E6C6A62D07B1CA90594CB9041DE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3DECAA3153A9658A2CAA5578AF2C55CD720622F37C1F745271114C0FC305E0CB</key>
-			<iv>E9A918FE1FC2EF7A5F568A803F501EEA</iv>
-			<input>F063E6C6A62D07B1CA90594CB9041DE4</input>
-			<output>45F375DDBA20D20CB6C5EAB28AA85D06</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>31766034845DF8A1AEDFC70CE3CD5B1D37F5572EC63FA65EC7D4A6BD49ADBDCD</key>
-			<iv>0C9ACA05D7F49D2B827592744CE10ED0</iv>
-			<input>45F375DDBA20D20CB6C5EAB28AA85D06</input>
-			<output>5D117AAC285D5A6948390FDAFBDACAD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BF17727E1D5DCA94C9CCA8E11DFBF22A6AE42D82EE62FC378FEDA967B2777718</key>
-			<iv>8E61124A9900323567136FEDFE36A937</iv>
-			<input>5D117AAC285D5A6948390FDAFBDACAD5</input>
-			<output>C8B61B172D930641A88E9E13236E11F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B82DB30F4271245293FC4CB6A0C10D4FA2523695C3F1FA7627633774911966E1</key>
-			<iv>073AC1715F2CEEC65A30E457BD3AFF65</iv>
-			<input>C8B61B172D930641A88E9E13236E11F9</input>
-			<output>FE05708E08F8568BB55175CEEF9E0433</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>28AE9BD5E181AC41CF2F9B4710DD160C5C57461BCB09ACFD923242BA7E8762D2</key>
-			<iv>908328DAA3F088135CD3D7F1B01C1B43</iv>
-			<input>FE05708E08F8568BB55175CEEF9E0433</input>
-			<output>D7DB71EAC2EF31AE105227E34134AD3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>437D385B59B4AB247A5BCFC0C0F8596F8B8C37F109E69D53826065593FB3CFEE</key>
-			<iv>6BD3A38EB8350765B5745487D0254F63</iv>
-			<input>D7DB71EAC2EF31AE105227E34134AD3C</input>
-			<output>ECD51D08C870983992708FC1FDFA9D15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4EF45D9C1FCA58D42D9E7E2E9C7D0B8F67592AF9C196056A1010EA98C24952FB</key>
-			<iv>0D8965C7467EF3F057C5B1EE5C8552E0</iv>
-			<input>ECD51D08C870983992708FC1FDFA9D15</input>
-			<output>F436BA32E9D089248AC47E40AA6B4BAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D3F16D0CF75471A24F273B3E8EF0A3A0936F90CB28468C4E9AD494D868221957</key>
-			<iv>9D053090E89E297662B94510128DA82F</iv>
-			<input>F436BA32E9D089248AC47E40AA6B4BAC</input>
-			<output>F43E89C3DBD391B5778B30A36A9E42F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>953E7AB7369425A4F396D764F3EA047F67511908F3951DFBED5FA47B02BC5BA4</key>
-			<iv>46CF17BBC1C05406BCB1EC5A7D1AA7DF</iv>
-			<input>F43E89C3DBD391B5778B30A36A9E42F3</input>
-			<output>B12ABB428A29703B929EFDB0031694D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C8DDFEFD3C72822B72C78757EE8EF856D67BA24A79BC6DC07FC159CB01AACF75</key>
-			<iv>5DE3844A0AE6A78F815150331D64FC29</iv>
-			<input>B12ABB428A29703B929EFDB0031694D1</input>
-			<output>79F19D2BD0A025D2D9822A28F5304446</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>870A25E9511D3F1BCFA941DA41FD00C0AF8A3F61A91C4812A64373E3F49A8B33</key>
-			<iv>4FD7DB146D6FBD30BD6EC68DAF73F896</iv>
-			<input>79F19D2BD0A025D2D9822A28F5304446</input>
-			<output>C52D5EF8D7A1353F5C1FF7BA33F9ED97</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>178B86564949AE1A0CE50E61F4D3F8776AA761997EBD7D2DFA5C8459C76366A4</key>
-			<iv>9081A3BF18549101C34C4FBBB52EF8B7</iv>
-			<input>C52D5EF8D7A1353F5C1FF7BA33F9ED97</input>
-			<output>82FAB7DF4BE409880B8F66210DE8D2E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C3F845809E635052F94076E1F3026779E85DD646355974A5F1D3E278CA8BB441</key>
-			<iv>D473C3D6D72AFE48F5A5788007D19F0E</iv>
-			<input>82FAB7DF4BE409880B8F66210DE8D2E5</input>
-			<output>52C05722F125348666DFCF0F2D052530</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>34AE823E21F4C45784F2E125CF5039FCBA9D8164C47C4023970C2D77E78E9171</key>
-			<iv>F756C7BEBF9794057DB297C43C525E85</iv>
-			<input>52C05722F125348666DFCF0F2D052530</input>
-			<output>DE7FAAF4A10D4D5404847FA080C1DC1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D1EEFC6B62427F5A2CBB2047AB0E41B64E22B9065710D77938852D7674F4D6D</key>
-			<iv>A9B06DF897D0E3A226395321B5E0DDE7</iv>
-			<input>DE7FAAF4A10D4D5404847FA080C1DC1C</input>
-			<output>49327927599012EE87FF64F45AC9A9AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2C7B21A79BE0B5B0E4DCC427DE8D91572DD052B73CE11F99147736233D86E4C3</key>
-			<iv>B165CE612DC4924546177623A43D754C</iv>
-			<input>49327927599012EE87FF64F45AC9A9AE</input>
-			<output>6E11B9F592DD99CD94F8999D9476F4CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F4A72FB6D161B9E15A41576C5A7CBF3F43C1EB42AE3C8654808FAFBEA9F0100C</key>
-			<iv>D8DC0E114A810C51BE9D934B84F12E68</iv>
-			<input>6E11B9F592DD99CD94F8999D9476F4CF</input>
-			<output>108AC1FE3E008D1C3058917157003E2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2E5FE97C58B060C9BACA9E9CC14CFC89534B2ABC903C0B48B0D73ECFFEF02E20</key>
-			<iv>DAF8C6CA89D1D928E08BC9F09B3043B6</iv>
-			<input>108AC1FE3E008D1C3058917157003E2C</input>
-			<output>B315EF45A3BD77688AD0976EF5DCA26B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9D763A80B96B112E1DAEA50A98C0B6F7E05EC5F933817C203A07A9A10B2C8C4B</key>
-			<iv>B329D3FCE1DB71E7A7643B96598C4A7E</iv>
-			<input>B315EF45A3BD77688AD0976EF5DCA26B</input>
-			<output>7BF8DABED803049DF8D1F34ED00536F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DF5F07523E7E305B48AAD9C205AE826C9BA61F47EB8278BDC2D65AEFDB29BABC</key>
-			<iv>42293DD28715217555047CC89D6E349B</iv>
-			<input>7BF8DABED803049DF8D1F34ED00536F7</input>
-			<output>E55FE84DF3137D16E74DC01A1BFDA4A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>80CF537EC8836ADD0FB72F35B2EF703D7EF9F70A189105AB259B9AF5C0D41E1B</key>
-			<iv>5F90542CF6FD5A86471DF6F7B741F251</iv>
-			<input>E55FE84DF3137D16E74DC01A1BFDA4A7</input>
-			<output>6019F9DA2DFDCDCB14C2C6CE5B34432D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4469D3622A022CFB7614C9C9EB36E6031EE00ED0356CC86031595C3B9BE05D36</key>
-			<iv>C4A6801CE281462679A3E6FC59D9963E</iv>
-			<input>6019F9DA2DFDCDCB14C2C6CE5B34432D</input>
-			<output>6D2788861A8F9526D1EC8A6A8AFBA629</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DED804546FA6B0BCD8C9FD9119616F9873C786562FE35D46E0B5D651111BFB1F</key>
-			<iv>9AB1D73645A49C47AEDD3458F257899B</iv>
-			<input>6D2788861A8F9526D1EC8A6A8AFBA629</input>
-			<output>81D5CDEA70E433A2A341FFB13ECCEC54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>24FD3D900606EEF8F31156D30EA094ADF2124BBC5F076EE443F429E02FD7174B</key>
-			<iv>FA2539C469A05E442BD8AB4217C1FB35</iv>
-			<input>81D5CDEA70E433A2A341FFB13ECCEC54</input>
-			<output>F74B4869E92F918A95B508E382A83FA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C24CA269EAADDFBA060AAF15C2265DE6055903D5B628FF6ED6412103AD7F28ED</key>
-			<iv>E6B19FF9ECAB3142F51BF9C6CC86C94B</iv>
-			<input>F74B4869E92F918A95B508E382A83FA6</input>
-			<output>EF3293511A17D0E089A8F88E396B4F31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>789C94E8D2B6D6FD022ED678F42E796CEA6B9084AC3F2F8E5FE9D98D941467DC</key>
-			<iv>BAD03681381B09470424796D3608248A</iv>
-			<input>EF3293511A17D0E089A8F88E396B4F31</input>
-			<output>0D70FCE243309D716D8FA672A11EBCB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B8DFB47D720C26AE22AD6C87785CCB97E71B6C66EF0FB2FF32667FFF350ADB64</key>
-			<iv>C0432095A0BAF0532083BAFF8C72B2FB</iv>
-			<input>0D70FCE243309D716D8FA672A11EBCB8</input>
-			<output>831365AB30D062F2B1C051A9EA03AEEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>938BCEFF0FD9AEC61CF2B0509A645A19640809CDDFDFD00D83A62E56DF09758F</key>
-			<iv>2B547A827DD588683E5FDCD7E238918E</iv>
-			<input>831365AB30D062F2B1C051A9EA03AEEB</input>
-			<output>EFE7E9DC254FF4AA70ABF327566A5448</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BBF0C86D05BF543EC3B9A9240833187F8BEFE011FA9024A7F30DDD71896321C7</key>
-			<iv>287B06920A66FAF8DF4B197492574266</iv>
-			<input>EFE7E9DC254FF4AA70ABF327566A5448</input>
-			<output>2D41BEE483BD2BAD16026AD7AA5ABA07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B744A9326EC1D56CBFF51D969D075C7DA6AE5EF5792D0F0AE50FB7A623399BC0</key>
-			<iv>0CB4615F6B7E81527C4CB4B295344402</iv>
-			<input>2D41BEE483BD2BAD16026AD7AA5ABA07</input>
-			<output>079460C9B745A53999932C5ECFE6A37B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AE49C59DD393E9EC9030AEDAD7FC61FEA13A3E3CCE68AA337C9C9BF8ECDF38BB</key>
-			<iv>190D6CAFBD523C802FC5B34C4AFB3D83</iv>
-			<input>079460C9B745A53999932C5ECFE6A37B</input>
-			<output>CE7C5851D0437368FEDC7E39270A7430</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8176855633B6FB2445BDDC2FD8D299576F46666D1E2BD95B8240E5C1CBD54C8B</key>
-			<iv>2F3F40CBE02512C8D58D72F50F2EF8A9</iv>
-			<input>CE7C5851D0437368FEDC7E39270A7430</input>
-			<output>A0C3F2D688E4370AD2F08C09B28DBCC1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>050E71C47B278C5825DE84513A732D11CF8594BB96CFEE5150B069C87958F04A</key>
-			<iv>8478F4924891777C6063587EE2A1B446</iv>
-			<input>A0C3F2D688E4370AD2F08C09B28DBCC1</input>
-			<output>BE472E609ABB030B96739A959EDBDD21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>502E4BDCF449E96CB16D5B6C097D20CC71C2BADB0C74ED5AC6C3F35DE7832D6B</key>
-			<iv>55203A188F6E653494B3DF3D330E0DDD</iv>
-			<input>BE472E609ABB030B96739A959EDBDD21</input>
-			<output>FE4227D6AC71519FA0F2078433DF69CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C3DDDE6B2E80381010569BC093561F628F809D0DA005BCC56631F4D9D45C44A1</key>
-			<iv>93F395B7DAC9D17CA13BC0AC9A2B3FAE</iv>
-			<input>FE4227D6AC71519FA0F2078433DF69CA</input>
-			<output>3F8439C7648C5C2B5877643C536E14F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1CC65CB104317D620D729EDEB4C4B512B004A4CAC489E0EE3E4690E587325058</key>
-			<iv>DF1B82DA2AB145721D24051E2792AA70</iv>
-			<input>3F8439C7648C5C2B5877643C536E14F9</input>
-			<output>E189B969BF38C8A2F38BF3F12267B5B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D121C8556039F07E231F9E88DE60572B518D1DA37BB1284CCDCD6314A555E5EC</key>
-			<iv>CDE794E464088D1C2E6D00566AA4E239</iv>
-			<input>E189B969BF38C8A2F38BF3F12267B5B4</input>
-			<output>EF15CCEC56DCD62681FC7564A1095ECD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C87070F4AA767BE043B29FE3AF258C91BE98D14F2D6DFE6A4C311670045CBB21</key>
-			<iv>1951B8A1CA4F8B9E60AD016B7145DBBA</iv>
-			<input>EF15CCEC56DCD62681FC7564A1095ECD</input>
-			<output>BD38CD579A7124DD0814DB21FC0E7D96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>08167C643CA7CAD8729B17EB91918AC103A01C18B71CDAB74425CD51F852C6B7</key>
-			<iv>C0660C9096D1B138312988083EB40650</iv>
-			<input>BD38CD579A7124DD0814DB21FC0E7D96</input>
-			<output>565F580B61E456544D8D553948AD95FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>55BB77ED49C419EEA418365F2750857355FF4413D6F88CE309A89868B0FF534A</key>
-			<iv>5DAD0B897563D336D68321B4B6C10FB2</iv>
-			<input>565F580B61E456544D8D553948AD95FD</input>
-			<output>1AA68EAC78C2B5BFF996F0B58C56432F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8FEC3C85819F24EE1DA186AB212A19D44F59CABFAE3A395CF03E68DD3CA91065</key>
-			<iv>DA574B68C85B3D00B9B9B0F4067A9CA7</iv>
-			<input>1AA68EAC78C2B5BFF996F0B58C56432F</input>
-			<output>65660FBF6C166604D9E717671488D734</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D1D19B25C23EA5923D45493905B867D12A3FC500C22C5F5829D97FBA2821C751</key>
-			<iv>5E3DA7A043A1817C20E4CF9224927E05</iv>
-			<input>65660FBF6C166604D9E717671488D734</input>
-			<output>477CBD97B467AA1AAB738E294092FAA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E1972BE045093EC4475DCE6351CDEDCB6D437897764BF54282AAF19368B33DF2</key>
-			<iv>3046B0C587379B567A18875A54758A1A</iv>
-			<input>477CBD97B467AA1AAB738E294092FAA3</input>
-			<output>C0ED90D90AE11390A275BD03BE00E1D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6F622A270D77AE65084E2070343E8C7FADAEE84E7CAAE6D220DF4C90D6B3DC27</key>
-			<iv>8EF501C7487E90A14F13EE1365F361B4</iv>
-			<input>C0ED90D90AE11390A275BD03BE00E1D5</input>
-			<output>296FED9B8CF7C532721A2188DDB1A441</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FF7209EA94C0401544991FDB57F77F2084C105D5F05D23E052C56D180B027866</key>
-			<iv>901023CD99B7EE704CD73FAB63C9F35F</iv>
-			<input>296FED9B8CF7C532721A2188DDB1A441</input>
-			<output>4AE1C2EB8D1CEB5804FA992708150590</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>73C6F94AD63DE39C289AE20179FDDDD7CE20C73E7D41C8B8563FF43F03177DF6</key>
-			<iv>8CB4F0A042FDA3896C03FDDA2E0AA2F7</iv>
-			<input>4AE1C2EB8D1CEB5804FA992708150590</input>
-			<output>A4EAC8940C12F9CEAC78DFDC99DF68B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A7369886016682F6075678509FFB86ED6ACA0FAA71533176FA472BE39AC81542</key>
-			<iv>D4F061CCD75B616A2FCC9A51E6065B3A</iv>
-			<input>A4EAC8940C12F9CEAC78DFDC99DF68B4</input>
-			<output>70B05A9959E7C4E4545BB3AECCD8B33D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F01B9FF32CE9CA699F69ADBBC209BBD21A7A553328B4F592AE1C984D5610A67F</key>
-			<iv>572D07752D8F489F983FD5EB5DF23D3F</iv>
-			<input>70B05A9959E7C4E4545BB3AECCD8B33D</input>
-			<output>F4978960F1382713A5A7183B9694DE85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FF05A97961A5CA725CD2E1B2A9D58304EEEDDC53D98CD2810BBB8076C08478FA</key>
-			<iv>0F1E368A4D4C001BC3BB4C096BDC38D6</iv>
-			<input>F4978960F1382713A5A7183B9694DE85</input>
-			<output>EDCC3B8D26928086F1C6727833405424</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA4DB35CCBD936D13D1B7DB64638B99A0321E7DEFF1E5207FA7DF20EF3C42CDE</key>
-			<iv>55481A25AA7CFCA361C99C04EFED3A9E</iv>
-			<input>EDCC3B8D26928086F1C6727833405424</input>
-			<output>12A36AC1DA72345291CF206FA04F102F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>611E32BF030B7B377AEC338C7FA6D88311828D1F256C66556BB2D261538B3CF1</key>
-			<iv>CB5381E3C8D24DE647F74E3A399E6119</iv>
-			<input>12A36AC1DA72345291CF206FA04F102F</input>
-			<output>8DA0003E090444453B932F0CDBBFA54E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>43E230241EF150AC761C1307C43C3E209C228D212C6822105021FD6D883499BF</key>
-			<iv>22FC029B1DFA2B9B0CF0208BBB9AE6A3</iv>
-			<input>8DA0003E090444453B932F0CDBBFA54E</input>
-			<output>A3D9F2112895CEA937A2B18ABB589CC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1FE38E9028DAC8A1E65A04C78BD0E7523FFB7F3004FDECB967834CE7336C057F</key>
-			<iv>5C01BEB4362B980D904617C04FECD972</iv>
-			<input>A3D9F2112895CEA937A2B18ABB589CC0</input>
-			<output>191EE02B9FED198599B5BC2F36271ABB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5FFD20799D7A7E7A328BD57B13F6E52F26E59F1B9B10F53CFE36F0C8054B1FC4</key>
-			<iv>401EAEE9B5A0B6DBD4D1D1BC9826027D</iv>
-			<input>191EE02B9FED198599B5BC2F36271ABB</input>
-			<output>EFC32006AE746D1E3F65E6C7ADF32804</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EFEFD2A0F1917EB5BFD2337260E11023C926BF1D35649822C153160FA8B837C0</key>
-			<iv>B012F2D96CEB00CF8D59E6097317F50C</iv>
-			<input>EFC32006AE746D1E3F65E6C7ADF32804</input>
-			<output>F9C49B0BFFA354EEBBE3DE29BF9D2623</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7676D792019D370A67526977EC5FDB5B30E22416CAC7CCCC7AB0C826172511E3</key>
-			<iv>99990532F00C49BFD8805A058CBECB78</iv>
-			<input>F9C49B0BFFA354EEBBE3DE29BF9D2623</input>
-			<output>EAEAE4BFF789E64D80D88CE5BC0E15CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>69202B4EB33EB35987DD82026714F603DA08C0A93D4E2A81FA6844C3AB2B042F</key>
-			<iv>1F56FCDCB2A38453E08FEB758B4B2D58</iv>
-			<input>EAEAE4BFF789E64D80D88CE5BC0E15CC</input>
-			<output>96C362F59FD2457A5ED68A116B4AA682</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DE8B4CC7995B3E061E126157B0C2AF984CCBA25CA29C6FFBA4BECED2C061A2AD</key>
-			<iv>B7AB67892A658D5F99CFE355D7D6599B</iv>
-			<input>96C362F59FD2457A5ED68A116B4AA682</input>
-			<output>5498BE46DCE840F7B593BE2BC0D252CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1BFE119E1B63BA06E9A590709A2985D218531C1A7E742F0C112D70F900B3F066</key>
-			<iv>C5755D5982388400F7B7F1272AEB2A4A</iv>
-			<input>5498BE46DCE840F7B593BE2BC0D252CB</input>
-			<output>697482966F491ACB46E7171A4813D916</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9E6361F9775A88FAAD09711E9691798C71279E8C113D35C757CA67E348A02970</key>
-			<iv>859D70676C3932FC44ACE16E0CB8FC5E</iv>
-			<input>697482966F491ACB46E7171A4813D916</input>
-			<output>A799874DC7721D96DEEFAB5FE1A01A8E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7D1EF621D3ADC4BD4EC1861167FA5B0CD6BE19C1D64F28518925CCBCA90033FE</key>
-			<iv>E37D97D8A4F74C47E3C8F70FF16B2280</iv>
-			<input>A799874DC7721D96DEEFAB5FE1A01A8E</input>
-			<output>2D19344625CF5E6DE07EE960F4AEC5CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7DFD0BE692B47C022DC789EF5291D2F5FBA72D87F380763C695B25DC5DAEF631</key>
-			<iv>00E3FDC74119B8BF63060FFE356B89F9</iv>
-			<input>2D19344625CF5E6DE07EE960F4AEC5CF</input>
-			<output>F80C5143F173AE672DA4DDC8272C13EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A78C66D30475B93F0A87E6E4A8BFA3AE03AB7CC402F3D85B44FFF8147A82E5DE</key>
-			<iv>DA716D3596C1C53D27406F0BFA2E715B</iv>
-			<input>F80C5143F173AE672DA4DDC8272C13EF</input>
-			<output>76BDB7A63614A41C9D52718B3514E03C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9542E4B9D92DAF7B463C83DA257422B37516CB6234E77C47D9AD899F4F9605E2</key>
-			<iv>32CE826ADD5816444CBB653E8DCB811D</iv>
-			<input>76BDB7A63614A41C9D52718B3514E03C</input>
-			<output>93F65B7B961EE6B623A026576FF8890B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6932CD66A25D1DE274C7D5DF540917BFE6E09019A2F99AF1FA0DAFC8206E8CE9</key>
-			<iv>FC7029DF7B70B29932FB5605717D350C</iv>
-			<input>93F65B7B961EE6B623A026576FF8890B</input>
-			<output>FA5BEB508ABCBCB1B1D56C0E207A032D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>595CCC3640445FF5BBF303FF7845AB821CBB7B49284526404BD8C3C600148FC4</key>
-			<iv>306E0150E2194217CF34D6202C4CBC3D</iv>
-			<input>FA5BEB508ABCBCB1B1D56C0E207A032D</input>
-			<output>BFAEA3EB7C617567EB302D571DBF2811</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>BF5382311BF88FC9E32D5BADC832BE48A315D8A254245327A0E8EE911DABA7D5</key>
-			<iv>E60F4E075BBCD03C58DE5852B07715CA</iv>
-			<input>BFAEA3EB7C617567EB302D571DBF2811</input>
-			<output>4B0E63933414184D43B0AA714AA31E02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B50A2FF8FAC6820638CCBA3A0CA6519CE81BBB3160304B6AE35844E05708B9D7</key>
-			<iv>0A59ADC9E13E0DCFDBE1E197C494EFD4</iv>
-			<input>4B0E63933414184D43B0AA714AA31E02</input>
-			<output>0073CA04B300003AF3C1035C664E0646</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1A32AA7CA8B5D83C47F56C5D24EDBD38E8687135D3304B50109947BC3146BF91</key>
-			<iv>AF38858452735A3A7F39D667284BECA4</iv>
-			<input>0073CA04B300003AF3C1035C664E0646</input>
-			<output>75CFE6D4A4F05D8EBB5C614AC7FB48C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C321C5381F5A334C8B82DD2F0E4C73AE9DA797E177C016DEABC526F6F6BDF759</key>
-			<iv>D9136F44B7EFEB70CC77B1722AA1CE96</iv>
-			<input>75CFE6D4A4F05D8EBB5C614AC7FB48C8</input>
-			<output>B0D8DB37DF5C3A87B9E5D562283E8FEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>40879EA19753F0F22B1C1BF438A446532D7F4CD6A89C2C591220F394DE8378B7</key>
-			<iv>83A65B998809C3BEA09EC6DB36E835FD</iv>
-			<input>B0D8DB37DF5C3A87B9E5D562283E8FEE</input>
-			<output>9C885637CC7666C04B424DD6EF1F3EDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B6824C9F800B1E7825135F250DB99FC8B1F71AE164EA4A995962BE42319C466C</key>
-			<iv>F605D23E1758EE8A0E0F44D1351DD99B</iv>
-			<input>9C885637CC7666C04B424DD6EF1F3EDB</input>
-			<output>3E7F4437656E63E0ADC6C764B20FE92D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7FA3CDE5856B1F0D9AE33E9E6ED1532E8F885ED601842979F4A479268393AF41</key>
-			<iv>C921817A05600175BFF061BB6368CCE6</iv>
-			<input>3E7F4437656E63E0ADC6C764B20FE92D</input>
-			<output>B19CCFDAADEC54C8DD5F4FD53D3C5824</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3E3ABA34DB005D9FF2CEF1321BCD018E3E14910CAC687DB129FB36F3BEAFF765</key>
-			<iv>419977D15E6B4292682DCFAC751C52A0</iv>
-			<input>B19CCFDAADEC54C8DD5F4FD53D3C5824</input>
-			<output>84F7D061322A4042913C0BD14F5F1391</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FB474D499955CB1F37FBA309DD55E09DBAE3416D9E423DF3B8C73D22F1F0E4F4</key>
-			<iv>C57DF77D42559680C535523BC698E113</iv>
-			<input>84F7D061322A4042913C0BD14F5F1391</input>
-			<output>CBCD716DA9C53D7AFFFE65B780926660</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7C1D07031362A7439F9DD5272DAD1D9B712E3000378700894739589571628294</key>
-			<iv>875A4A4A8A376C5CA866762EF0F8FD06</iv>
-			<input>CBCD716DA9C53D7AFFFE65B780926660</input>
-			<output>F605D205704496C5BFCEE88130920CDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7E9E72A6032523643F0965E8BFCB0793872BE20547C3964CF8F7B01441F08E4A</key>
-			<iv>028375A510478427A094B0CF92661A08</iv>
-			<input>F605D205704496C5BFCEE88130920CDE</input>
-			<output>CFA8B47DEB5770925EA29484D82CDBB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>518CA0A8C81E9DDCE1060410C69F0ACE48835678AC94E6DEA655249099DC55FE</key>
-			<iv>2F12D20ECB3BBEB8DE0F61F879540D5D</iv>
-			<input>CFA8B47DEB5770925EA29484D82CDBB4</input>
-			<output>1065AD49D2DD48EB9540F23A69469B92</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>45E6A5A17D8D1AEA04CD8E184D0A1BF758E6FB317E49AE353315D6AAF09ACE6C</key>
-			<iv>146A0509B5938736E5CB8A088B951139</iv>
-			<input>1065AD49D2DD48EB9540F23A69469B92</input>
-			<output>DB12EE00C65069CFEA509BA5BD5BB6BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FC8F8F7F8A440A6CEB920D4311851B3A83F41531B819C7FAD9454D0F4DC178D0</key>
-			<iv>B9692ADEF7C91086EF5F835B5C8F00CD</iv>
-			<input>DB12EE00C65069CFEA509BA5BD5BB6BC</input>
-			<output>B66316FB3CCC9B262A34C205AE43F42B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>42D666DF2C1575E3B346FCBCD208AD9F359703CA84D55CDCF3718F0AE3828CFB</key>
-			<iv>BE59E9A0A6517F8F58D4F1FFC38DB6A5</iv>
-			<input>B66316FB3CCC9B262A34C205AE43F42B</input>
-			<output>4C851D9BDC164194A6D1FDE274C06D1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>786B9456901DFA9FF85C686DEEDCA02079121E5158C31D4855A072E89742E1E0</key>
-			<iv>3ABDF289BC088F7C4B1A94D13CD40DBF</iv>
-			<input>4C851D9BDC164194A6D1FDE274C06D1B</input>
-			<output>5507F1EB271BDBC0A6DD8BBAEC843A05</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C79B5CD424E592D392FECD3233CEA70B2C15EFBA7FD8C688F37DF9527BC6DBE5</key>
-			<iv>BFF0C882B4F8684C6AA2A55FDD12072B</iv>
-			<input>5507F1EB271BDBC0A6DD8BBAEC843A05</input>
-			<output>BB10EF7C98DE0255C836D5319B94B166</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>10ABC5B835E6E6BD02E90B63D22EF9E7970500C6E706C4DD3B4B2C63E0526A83</key>
-			<iv>D730996C1103746E9017C651E1E05EEC</iv>
-			<input>BB10EF7C98DE0255C836D5319B94B166</input>
-			<output>E8B797AFDC378DB47F172260963A6E2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>75E05AAAB4E6981A20E4177D214B81EA7FB297693B314969445C0E03766804AF</key>
-			<iv>654B9F1281007EA7220D1C1EF365780D</iv>
-			<input>E8B797AFDC378DB47F172260963A6E2C</input>
-			<output>58ED1CC5A208A0E7340167E79F5DA7C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A69FECC296D12216128BD1D2C48B373D275F8BAC9939E98E705D69E4E935A36D</key>
-			<iv>D37FB6682237BA0C326FC6AFE5C0B6D7</iv>
-			<input>58ED1CC5A208A0E7340167E79F5DA7C2</input>
-			<output>FEDA5FB215819B441BE18B0AED27A1FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7EED1776E603DD6C20F08B4C6B121525D985D41E8CB872CA6BBCE2EE04120290</key>
-			<iv>D872FBB470D2FF7A327B5A9EAF992218</iv>
-			<input>FEDA5FB215819B441BE18B0AED27A1FD</input>
-			<output>7CD64E29A704F13688DB206F7F337685</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D4479A0AF29AF7145EC3FB89FEF8BBA7A5539A372BBC83FCE367C2817B217415</key>
-			<iv>AAAA8D7C14992A787E3370C595EAAE82</iv>
-			<input>7CD64E29A704F13688DB206F7F337685</input>
-			<output>25D6728244F28F79D1BC707BE94ECA13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7FB45D09003B25EFEB5F68CCB7E09C008085E8B56F4E0C8532DBB2FA926FBE06</key>
-			<iv>ABF3C703F2A1D2FBB59C9345491827A7</iv>
-			<input>25D6728244F28F79D1BC707BE94ECA13</input>
-			<output>47AF03717893A10D7F40D5A3D9B82534</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>35EE9428D4EC49EC103EDF32F4FBEE16C72AEBC417DDAD884D9B67594BD79B32</key>
-			<iv>4A5AC921D4D76C03FB61B7FE431B7216</iv>
-			<input>47AF03717893A10D7F40D5A3D9B82534</input>
-			<output>B6C25C0E4CA560707588321AAF41119C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B12C0149A6EDD2DC3742D10822FEDDF771E8B7CA5B78CDF838135543E4968AAE</key>
-			<iv>84C2956172019B30277C0E3AD60533E1</iv>
-			<input>B6C25C0E4CA560707588321AAF41119C</input>
-			<output>09137DF5460434E863647B4B50E17A60</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CFEC596CE216B14A955E7CBC095C198678FBCA3F1D7CF9105B772E08B477F0CE</key>
-			<iv>7EC0582544FB6396A21CADB42BA2C471</iv>
-			<input>09137DF5460434E863647B4B50E17A60</input>
-			<output>17A26688B271E9765F41C71CD8CF0C25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>35903FF91CC199C048C6C031AA2F4FC96F59ACB7AF0D10660436E9146CB8FCEB</key>
-			<iv>FA7C6695FED7288ADD98BC8DA373564F</iv>
-			<input>17A26688B271E9765F41C71CD8CF0C25</input>
-			<output>62E3C4D53DECB83FCD5F57D1971D58FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F262476804B79C1F85FEB875CCD5FC3E0DBA686292E1A859C969BEC5FBA5A410</key>
-			<iv>C7F27891187605DFCD38784466FAB3F7</iv>
-			<input>62E3C4D53DECB83FCD5F57D1971D58FB</input>
-			<output>3495C5855D819B6FF779FC7AC59BEB53</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DC61E5CFC9BAE6B23B894486AD478ADD392FADE7CF6033363E1042BF3E3E4F43</key>
-			<iv>2E03A2A7CD0D7AADBE77FCF3619276E3</iv>
-			<input>3495C5855D819B6FF779FC7AC59BEB53</input>
-			<output>7440ABE9E1374208CFBCCC18ADC6089F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C9D2E747A1A6D594CCAE434B7605C8FB4D6F060E2E57713EF1AC8EA793F847DC</key>
-			<iv>15B30288681C3326F72707CDDB424226</iv>
-			<input>7440ABE9E1374208CFBCCC18ADC6089F</input>
-			<output>B6802F0F62A28AF7326CDB2144E8DE87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>99FEF610CFFFACBE8C6AD0A2B0C8F8A7FBEF29014CF5FBC9C3C05586D710995B</key>
-			<iv>502C11576E59792A40C493E9C6CD305C</iv>
-			<input>B6802F0F62A28AF7326CDB2144E8DE87</input>
-			<output>B84D7D91E60C131F6F042D403D85C47B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>91EB2713A930B6A53993029D5A056B4143A25490AAF9E8D6ACC478C6EA955D20</key>
-			<iv>0815D10366CF1A1BB5F9D23FEACD93E6</iv>
-			<input>B84D7D91E60C131F6F042D403D85C47B</input>
-			<output>4DDF64827A16F90B5E6B306E8F227DB7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C15019D3523304CC9231B33C53C7FE1E0E7D3012D0EF11DDF2AF48A865B72097</key>
-			<iv>50BB3EC0FB03B269ABA2B1A109C2955F</iv>
-			<input>4DDF64827A16F90B5E6B306E8F227DB7</input>
-			<output>FDF6E5B6486E11839EB3A7F5C3898F54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E24B749901384F48B2E740C51175E311F38BD5A49881005E6C1CEF5DA63EAFC3</key>
-			<iv>231B6D4A530B4B8420D6F3F942B21D0F</iv>
-			<input>FDF6E5B6486E11839EB3A7F5C3898F54</input>
-			<output>841EF37B4AF82CC5EB00E11775079D81</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44B7FFFA042DCA1BF276D4911D4B0BE2779526DFD2792C9B871C0E4AD3393242</key>
-			<iv>A6FC8B6305158553409194540C3EE8F3</iv>
-			<input>841EF37B4AF82CC5EB00E11775079D81</input>
-			<output>1725AF7F70B65FBB060D29B3BCDF0A31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B724B2CD569E436B20594E10576934BF60B089A0A2CF7320811127F96FE63873</key>
-			<iv>F3934D3752B38970D22F9A814A223F5D</iv>
-			<input>1725AF7F70B65FBB060D29B3BCDF0A31</input>
-			<output>2CCC6D09954E5FE6C6A87E18950EED02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E9EB02E31CABD14DFF231F1F649294044C7CE4A937812CC647B959E1FAE8D571</key>
-			<iv>5ECFB02E4A359226DF7A510F33FBA0BB</iv>
-			<input>2CCC6D09954E5FE6C6A87E18950EED02</input>
-			<output>C82C82AF68EACE2AF22C3266F898F573</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>90C8F71B05BE122AFE5D58A7A1AAB666845066065F6BE2ECB5956B8702702002</key>
-			<iv>7923F5F81915C367017E47B8C5382262</iv>
-			<input>C82C82AF68EACE2AF22C3266F898F573</input>
-			<output>377F6966928959F2D68F3A2BD0EA3735</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>1BE70B607CF9A9E35DF916C4CC103FEBB32F0F60CDE2BB1E631A51ACD29A1737</key>
-			<iv>8B2FFC7B7947BBC9A3A44E636DBA898D</iv>
-			<input>377F6966928959F2D68F3A2BD0EA3735</input>
-			<output>3A8CCF4943B9866A9ABBEC0BA46F25DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>631B2C30FEA26433F0CBCD01B1CE974089A3C0298E5B3D74F9A1BDA776F532EC</key>
-			<iv>78FC2750825BCDD0AD32DBC57DDEA8AB</iv>
-			<input>3A8CCF4943B9866A9ABBEC0BA46F25DB</input>
-			<output>3B767EAB7F0C2D24BBE5565E93DC3E24</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>8785E70A8CD45A8FE1E4382DC62D563DB2D5BE82F15710504244EBF9E5290CC8</key>
-			<iv>E49ECB3A72763EBC112FF52C77E3C17D</iv>
-			<input>3B767EAB7F0C2D24BBE5565E93DC3E24</input>
-			<output>619610C6A4A8E9B196E65D2E5D463968</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B49BAD1E8EB8B9CF7F32048A81E5BCD3D343AE4455FFF9E1D4A2B6D7B86F35A0</key>
-			<iv>331E4A14026CE3409ED63CA747C8EAEE</iv>
-			<input>619610C6A4A8E9B196E65D2E5D463968</input>
-			<output>F12AF66580B33C3113C45CF5EFD52F4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3C92453C6342B6CDC18BFE05241EB5D922695821D54CC5D0C766EA2257BA1AEF</key>
-			<iv>8809E822EDFA0F02BEB9FA8FA5FB090A</iv>
-			<input>F12AF66580B33C3113C45CF5EFD52F4F</input>
-			<output>A427E0B2CD34285167999A9F18295D26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>24A1F21CA68CF23F1674BF5328219987864EB8931878ED81A0FF70BD4F9347C9</key>
-			<iv>1833B720C5CE44F2D7FF41560C3F2C5E</iv>
-			<input>A427E0B2CD34285167999A9F18295D26</input>
-			<output>85F5855ACB2741070E1C89F904CBDBEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B5479F4D4A0DBBFFBF86C576009F241403BB3DC9D35FAC86AEE3F9444B589C23</key>
-			<iv>91E66D51EC8149C0A9F27A2528BEBD93</iv>
-			<input>85F5855ACB2741070E1C89F904CBDBEA</input>
-			<output>295D7A02348A185F5C54113C734E9003</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AA9CE82B0B649063C874699C71E8A94E2AE647CBE7D5B4D9F2B7E87838160C20</key>
-			<iv>1FDB776641692B9C77F2ACEA71778D5A</iv>
-			<input>295D7A02348A185F5C54113C734E9003</input>
-			<output>E466F369B840296AAB1A24ED32A19F51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A2BA72E2906E04C42C0047EF222FFFE6CE80B4A25F959DB359ADCC950AB79371</key>
-			<iv>08269AC99B0A94A7E4742E7353C756A8</iv>
-			<input>E466F369B840296AAB1A24ED32A19F51</input>
-			<output>099CEB8099DD025E4A57015168F75388</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>EA9B425CCD937976EB04693F16C4DAC4C71C5F22C6489FED13FACDC46240C0F9</key>
-			<iv>482130BE5DFD7DB2C7042ED034EB2522</iv>
-			<input>099CEB8099DD025E4A57015168F75388</input>
-			<output>E40CD2C0A7E7CB35C64AEB396338A801</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D31BCE56BA19A7CB6057C5F2CCB3786223108DE261AF54D8D5B026FD017868F8</key>
-			<iv>39808C0A778ADEBD8B53ACCDDA77A2A6</iv>
-			<input>E40CD2C0A7E7CB35C64AEB396338A801</input>
-			<output>12E94732A52D15C624A8E554AB54C9A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F0CD039C509E0EFF71B18AE3FEEB186D31F9CAD0C482411EF118C3A9AA2CA15C</key>
-			<iv>23D6CDCAEA87A93411E64F113258600F</iv>
-			<input>12E94732A52D15C624A8E554AB54C9A4</input>
-			<output>241C32C2C0C5C6CBE4BB354C054C68D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>0579BEABF73DD177C1F1F0827DA20BA115E5F812044787D515A3F6E5AF60C98B</key>
-			<iv>F5B4BD37A7A3DF88B0407A61834913CC</iv>
-			<input>241C32C2C0C5C6CBE4BB354C054C68D7</input>
-			<output>E4EA5643CF19EF64820A1B591DE1C378</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>99C7C61F7153FFA0F07380D052431667F10FAE51CB5E68B197A9EDBCB2810AF3</key>
-			<iv>9CBE78B4866E2ED7318270522FE11DC6</iv>
-			<input>E4EA5643CF19EF64820A1B591DE1C378</input>
-			<output>BC86D5465171B667CE837F874D933FF4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>C2A65A0A2E71F6E7E2BD9FBB5049F7914D897B179A2FDED6592A923BFF123507</key>
-			<iv>5B619C155F22094712CE1F6B020AE1F6</iv>
-			<input>BC86D5465171B667CE837F874D933FF4</input>
-			<output>EEB9DC4EBD27720AD3527A1323D85413</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B635E7EFD987991CD29414B3EBAB2EA4A330A7592708ACDC8A78E828DCCA6114</key>
-			<iv>7493BDE5F7F66FFB30298B08BBE2D935</iv>
-			<input>EEB9DC4EBD27720AD3527A1323D85413</input>
-			<output>78591E006B877AC6880834E3F98FD6B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F5849125E52B6DF3CD8144DDB64178DDDB69B9594C8FD61A0270DCCB2545B7A4</key>
-			<iv>43B176CA3CACF4EF1F15506E5DEA5679</iv>
-			<input>78591E006B877AC6880834E3F98FD6B0</input>
-			<output>8F9A67CF96F4608D56923CB267855F3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>41885734A072249ADE0091A0AD87F47854F3DE96DA7BB69754E2E07942C0E89B</key>
-			<iv>B40CC611455949691381D57D1BC68CA5</iv>
-			<input>8F9A67CF96F4608D56923CB267855F3F</input>
-			<output>1B0B8D9118CBECBA2D5AD17A261F9D56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FF1A5B86E3545D9CB01A1222EC99A81C4FF85307C2B05A2D79B8310364DF75CD</key>
-			<iv>BE920CB2432679066E1A8382411E5C64</iv>
-			<input>1B0B8D9118CBECBA2D5AD17A261F9D56</input>
-			<output>6225E63F0C1A5DE00FD63032908A51F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>836FB4DC9C17E5AD70404B41CC4A043E2DDDB538CEAA07CD766E0131F455243E</key>
-			<iv>7C75EF5A7F43B831C05A596320D3AC22</iv>
-			<input>6225E63F0C1A5DE00FD63032908A51F3</input>
-			<output>7C66E540C016FB81A345E10331FCAFF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>63CA7D0E2675E43626B5311A7BA7131B51BB50780EBCFC4CD52BE032C5A98BCD</key>
-			<iv>E0A5C9D2BA62019B56F57A5BB7ED1725</iv>
-			<input>7C66E540C016FB81A345E10331FCAFF3</input>
-			<output>2F010053D3C59BB8ACB5B13B197A4204</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6B5C4A2DD70FFF3023B2A775BECF05607EBA502BDD7967F4799E5109DCD3C9C9</key>
-			<iv>08963723F17A1B060507966FC568167B</iv>
-			<input>2F010053D3C59BB8ACB5B13B197A4204</input>
-			<output>8918E06B8619B43E859171A345E246AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>575661F811B8D8B50980A55848A48949F7A2B0405B60D3CAFC0F20AA99318F67</key>
-			<iv>3C0A2BD5C6B727852A32022DF66B8C29</iv>
-			<input>8918E06B8619B43E859171A345E246AE</input>
-			<output>60FF920A8495AD880459737525C109D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>5FACBE49DE8F64786918067E7E361681975D224ADFF57E42F85653DFBCF086B1</key>
-			<iv>08FADFB1CF37BCCD6098A32636929FC8</iv>
-			<input>60FF920A8495AD880459737525C109D6</input>
-			<output>03F09A2C18DB8BAE5CCC93B9165A1D16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9BFDA5803AC1C3004F0B138885DE59FE94ADB866C72EF5ECA49AC066AAAA9BA7</key>
-			<iv>C4511BC9E44EA778261315F6FBE84F7F</iv>
-			<input>03F09A2C18DB8BAE5CCC93B9165A1D16</input>
-			<output>52CB3AF36047F4D14C2EAEE3C3F8AF2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>614239035D7EF489DE2F88FDB6188EC3C6668295A769013DE8B46E856952348D</key>
-			<iv>FABF9C8367BF378991249B7533C6D73D</iv>
-			<input>52CB3AF36047F4D14C2EAEE3C3F8AF2A</input>
-			<output>249794B3822BB06708B5D5777D297C40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>20BEFE90BA9C7EE9CFB1E569FE354258E2F116262542B15AE001BBF2147B48CD</key>
-			<iv>41FCC793E7E28A60119E6D94482DCC9B</iv>
-			<input>249794B3822BB06708B5D5777D297C40</input>
-			<output>1836AE59EAE452DAC108618DECD666BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E11E8BF6DE253E4FBADEDFD44B34BE15FAC7B87FCFA6E3802109DA7FF8AD2E70</key>
-			<iv>C1A0756664B940A6756F3ABDB501FC4D</iv>
-			<input>1836AE59EAE452DAC108618DECD666BD</input>
-			<output>20EE84DEB0E7B0C83D74CE251AA1615C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>D519038D457B4BCD9DD50C8F64FE2F2ADA293CA17F4153481C7D145AE20C4F2C</key>
-			<iv>3407887B9B5E7582270BD35B2FCA913F</iv>
-			<input>20EE84DEB0E7B0C83D74CE251AA1615C</input>
-			<output>6FA7D3584A2E4B803AC1AC07B09931A2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>82F1611CFB9E7AF9F9274C6BF1B96BEBB58EEFF9356F18C826BCB85D52957E8E</key>
-			<iv>57E86291BEE5313464F240E4954744C1</iv>
-			<input>6FA7D3584A2E4B803AC1AC07B09931A2</input>
-			<output>A7B8F8AC07BAB843F4E7942A6E4A85D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DFF5A6DE8ADE9AB78CF1E637F44FD3351236175532D5A08BD25B2C773CDFFB5B</key>
-			<iv>5D04C7C27140E04E75D6AA5C05F6B8DE</iv>
-			<input>A7B8F8AC07BAB843F4E7942A6E4A85D5</input>
-			<output>7F3C3702404E6E013474A0AA0EF85527</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9C6A11136F64F462E7C5CB30049CDA056D0A2057729BCE8AE62F8CDD3227AE7C</key>
-			<iv>439FB7CDE5BA6ED56B342D07F0D30930</iv>
-			<input>7F3C3702404E6E013474A0AA0EF85527</input>
-			<output>7C0C44DC96872DEE0BAC71DDBDCC84E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>2C95624ADD9B1E09F13AE579333B22BB1106648BE41CE364ED83FD008FEB2A9F</key>
-			<iv>B0FF7359B2FFEA6B16FF2E4937A7F8BE</iv>
-			<input>7C0C44DC96872DEE0BAC71DDBDCC84E3</input>
-			<output>B9E4597C562E9B5C0E6815E64F767CE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>CBB3F14A21E49825990B89E7D07BC386A8E23DF7B2327838E3EBE8E6C09D5676</key>
-			<iv>E7269300FC7F862C68316C9EE340E13D</iv>
-			<input>B9E4597C562E9B5C0E6815E64F767CE9</input>
-			<output>4B37A1FD978F50BE9EA482CFBEACFA08</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>65B742FFD29D9B07F3956625AED7382EE3D59C0A25BD28867D4F6A297E31AC7E</key>
-			<iv>AE04B3B5F37903226A9EEFC27EACFBA8</iv>
-			<input>4B37A1FD978F50BE9EA482CFBEACFA08</input>
-			<output>D3406B71FFC847C364199666A808C43A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>6C6A4DE74AF6C443B4F6A1C7DAB4A28E3095F77BDA756F451956FC4FD6396844</key>
-			<iv>09DD0F18986B5F444763C7E274639AA0</iv>
-			<input>D3406B71FFC847C364199666A808C43A</input>
-			<output>94744ECE39108CB8084DF8A17C49CDCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>AD09E82AFAA9F5168CD9B83F44C096A0A4E1B9B5E365E3FD111B04EEAA70A588</key>
-			<iv>C163A5CDB05F3155382F19F89E74342E</iv>
-			<input>94744ECE39108CB8084DF8A17C49CDCC</input>
-			<output>45EF43A20D7F174DA1463DDA678BBFFB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>DC29CBF4E8B92311A9AA788C437A8EDDE10EFA17EE1AF4B0B05D3934CDFB1A73</key>
-			<iv>712023DE1210D6072573C0B307BA187D</iv>
-			<input>45EF43A20D7F174DA1463DDA678BBFFB</input>
-			<output>4480FB073AA197507E376C56B824C753</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>93308B36D3A2E1A952B96FE4687B2DF9A58E0110D4BB63E0CE6A556275DFDD20</key>
-			<iv>4F1940C23B1BC2B8FB1317682B01A324</iv>
-			<input>4480FB073AA197507E376C56B824C753</input>
-			<output>C8BBB77D206EF37C7C40DB175D105271</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>9682C995955D18471758C504201E93AC6D35B66DF4D5909CB22A8E7528CF8F51</key>
-			<iv>05B242A346FFF9EE45E1AAE04865BE55</iv>
-			<input>C8BBB77D206EF37C7C40DB175D105271</input>
-			<output>50C0B9001C716D53470FC9B011191402</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>60854B33BE79B0E631B1AF9046C46D153DF50F6DE8A4FDCFF52547C539D69B53</key>
-			<iv>F60782A62B24A8A126E96A9466DAFEB9</iv>
-			<input>50C0B9001C716D53470FC9B011191402</input>
-			<output>8DB5367A34C5E5B93486AB07CA8BB02E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7EE74E63D01F31D44B3860471B0BE50FB0403917DC611876C1A3ECC2F35D2B7D</key>
-			<iv>1E6205506E6681327A89CFD75DCF881A</iv>
-			<input>8DB5367A34C5E5B93486AB07CA8BB02E</input>
-			<output>4F9B922C88C1750829D9088F16EDB529</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>A65EE6CE576182F487D2C21C4F8539F3FFDBAB3B54A06D7EE87AE44DE5B09E54</key>
-			<iv>D8B9A8AD877EB320CCEAA25B548EDCFC</iv>
-			<input>4F9B922C88C1750829D9088F16EDB529</input>
-			<output>05A705F6B55D3ACF3E95E8264FEFFDCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>64F9A7DF5DA898C968746F96692F1892FA7CAECDE1FD57B1D6EF0C6BAA5F6398</key>
-			<iv>C2A741110AC91A3DEFA6AD8A26AA2161</iv>
-			<input>05A705F6B55D3ACF3E95E8264FEFFDCC</input>
-			<output>D1FB7C1A698990AC81068D08BE1CE91F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>019663655974433AD5731BC4388A067D2B87D2D78874C71D57E9816314438A87</key>
-			<iv>656FC4BA04DCDBF3BD07745251A51EEF</iv>
-			<input>D1FB7C1A698990AC81068D08BE1CE91F</input>
-			<output>A1CD24AAFCEE3A60A025B983D10D8E54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>16EF87A84F0627345CED6385A62374778A4AF67D749AFD7DF7CC38E0C54E04D3</key>
-			<iv>1779E4CD1672640E899E78419EA9720A</iv>
-			<input>A1CD24AAFCEE3A60A025B983D10D8E54</input>
-			<output>B9064D063D2C8D8D935B53CBEF3224E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>80931C61E23BA976FFC9288F74AD876D334CBB7B49B670F064976B2B2A7C2031</key>
-			<iv>967C9BC9AD3D8E42A3244B0AD28EF31A</iv>
-			<input>B9064D063D2C8D8D935B53CBEF3224E2</input>
-			<output>8AD3B2222D84A4B25DC1311378027207</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>227ACE0315678DEE433049D8CDFEE2D8B99F09596432D44239565A38527E5236</key>
-			<iv>A2E9D262F75C2498BCF96157B95365B5</iv>
-			<input>8AD3B2222D84A4B25DC1311378027207</input>
-			<output>3A7FC9D43F1F997FAF4931101C5B5FD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>11799A22D50C53A89EDF396B7C7565AD83E0C08D5B2D4D3D961F6B284E250DE2</key>
-			<iv>33035421C06BDE46DDEF70B3B18B8775</iv>
-			<input>3A7FC9D43F1F997FAF4931101C5B5FD4</input>
-			<output>930860056FE2FDDC10059D09385C0415</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>58DE85D9975D5F8A16C47C834568EF1D10E8A08834CFB0E1861AF621767909F7</key>
-			<iv>49A71FFB42510C22881B45E8391D8AB0</iv>
-			<input>930860056FE2FDDC10059D09385C0415</input>
-			<output>F41CCB823840FF7D16C6990A14E591D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>3C8567CD05AF33761FE05FBDC2596EBFE4F46B0A0C8F4F9C90DC6F2B629C982E</key>
-			<iv>645BE21492F26CFC0924233E873181A2</iv>
-			<input>F41CCB823840FF7D16C6990A14E591D9</input>
-			<output>82899B698456363C175791B845D5736F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>F50F05CBDDFEBE7A656EE5C08CC24FF5667DF06388D979A0878BFE932749EB41</key>
-			<iv>C98A6206D8518D0C7A8EBA7D4E9B214A</iv>
-			<input>82899B698456363C175791B845D5736F</input>
-			<output>CF85BFDA1DFF5ADFFAF1B3E000B407F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>B44AA91A374D1C5A7BD00557CBD24962A9F84FB99526237F7D7A4D7327FDECB2</key>
-			<iv>4145ACD1EAB3A2201EBEE09747100697</iv>
-			<input>CF85BFDA1DFF5ADFFAF1B3E000B407F3</input>
-			<output>34EEA75CC20C6EDEE9A5379C3B5CF01A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>4C401127C0AFABBEA4C93FD80BA009CC9D16E8E5572A4DA194DF7AEF1CA11CA8</key>
-			<iv>F80AB83DF7E2B7E4DF193A8FC07240AE</iv>
-			<input>34EEA75CC20C6EDEE9A5379C3B5CF01A</input>
-			<output>27C6392ABE790B448CC9216B3FCF5454</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>44D59CB8EBCC91362462D1D8FE193270BAD0D1CFE95346E518165B84236E48FC</key>
-			<iv>08958D9F2B633A8880ABEE00F5B93BBC</iv>
-			<input>27C6392ABE790B448CC9216B3FCF5454</input>
-			<output>2C39AC10C7D51B61D8F437D9BAA24A55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>E42795DA2BF8FA7A3B0E83923A5E243196E97DDF2E865D84C0E26C5D99CC02A9</key>
-			<iv>A0F20962C0346B4C1F6C524AC4471641</iv>
-			<input>2C39AC10C7D51B61D8F437D9BAA24A55</input>
-			<output>F828BC735827C106E61F8FFFE9453A77</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>7F05DC0CD80178018D3A90E4A0CE63156EC1C1AC76A19C8226FDE3A2708938DE</key>
-			<iv>9B2249D6F3F9827BB63413769A904724</iv>
-			<input>F828BC735827C106E61F8FFFE9453A77</input>
-			<output>DF8129A79852FEE2A8015A2379A7215B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>935560C6072D897477D71AC4C12188D0B140E80BEEF362608EFCB981092E1985</key>
-			<iv>EC50BCCADF2CF175FAED8A2061EFEBC5</iv>
-			<input>DF8129A79852FEE2A8015A2379A7215B</input>
-			<output>CD6429CF3F81F8B4F82BC627A8283096</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB128.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6400 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo DEC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>44416AC2D1F53C583303917E6BE9EBE0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44416AC2D1F53C583303917E6BE9EBE0</key>
-			<input>44416AC2D1F53C583303917E6BE9EBE0</input>
-			<output>E3FD51123B48A2E2AB1DB29894202222</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A7BC3BD0EABD9EBA981E23E6FFC9C9C2</key>
-			<input>E3FD51123B48A2E2AB1DB29894202222</input>
-			<output>877B88A77AEF04F05546539E17259F53</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>20C7B37790529A4ACD587078E8EC5691</key>
-			<input>877B88A77AEF04F05546539E17259F53</input>
-			<output>C7A71C1B46261602EB1EE48FDA8155A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E760AF6CD6748C48264694F7326D0335</key>
-			<input>C7A71C1B46261602EB1EE48FDA8155A4</input>
-			<output>6B6AC8E00FAF7E045ECCFC426A137221</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8C0A678CD9DBF24C788A68B5587E7114</key>
-			<input>6B6AC8E00FAF7E045ECCFC426A137221</input>
-			<output>3F252821FA79AFC3F1798B343AAD41EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B32F4FAD23A25D8F89F3E38162D330FA</key>
-			<input>3F252821FA79AFC3F1798B343AAD41EE</input>
-			<output>0B55C691E1F97205D137FF34478E5BC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B87A893CC25B2F8A58C41CB5255D6B33</key>
-			<input>0B55C691E1F97205D137FF34478E5BC9</input>
-			<output>F6CCC1CC18A3199D6427EDCA0BB2DF90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4EB648F0DAF836173CE3F17F2EEFB4A3</key>
-			<input>F6CCC1CC18A3199D6427EDCA0BB2DF90</input>
-			<output>0CDD7D9734B1515C73DDA60EFF28CD89</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>426B3567EE49674B4F3E5771D1C7792A</key>
-			<input>0CDD7D9734B1515C73DDA60EFF28CD89</input>
-			<output>3E813131EDD440D9054799CEA508FF6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7CEA0456039D27924A79CEBF74CF8645</key>
-			<input>3E813131EDD440D9054799CEA508FF6F</input>
-			<output>8C6859BD0B6E078FAA6B686297653232</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F0825DEB08F3201DE012A6DDE3AAB477</key>
-			<input>8C6859BD0B6E078FAA6B686297653232</input>
-			<output>C966A4106C1DCE062D1346EB5E5133BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>39E4F9FB64EEEE1BCD01E036BDFB87CC</key>
-			<input>C966A4106C1DCE062D1346EB5E5133BB</input>
-			<output>4F4AE38B53FD7800F0E9F5C214E16F2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>76AE1A703713961B3DE815F4A91AE8E6</key>
-			<input>4F4AE38B53FD7800F0E9F5C214E16F2A</input>
-			<output>C73A033491DC0B6A77FEA2FBCC9D305E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B1941944A6CF9D714A16B70F6587D8B8</key>
-			<input>C73A033491DC0B6A77FEA2FBCC9D305E</input>
-			<output>C928C2A05BB44816EFBE6B13E94BC70E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>78BCDBE4FD7BD567A5A8DC1C8CCC1FB6</key>
-			<input>C928C2A05BB44816EFBE6B13E94BC70E</input>
-			<output>A7C1593E7B4BAEE5256D4081337E7CAF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DF7D82DA86307B8280C59C9DBFB26319</key>
-			<input>A7C1593E7B4BAEE5256D4081337E7CAF</input>
-			<output>7ECD305AC27AEBFA2B8F85F9AC312638</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1B0B280444A9078AB4A196413834521</key>
-			<input>7ECD305AC27AEBFA2B8F85F9AC312638</input>
-			<output>A24D1403A58B94798F5F3565ABFD3B44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>03FDA683E1C1040124152C01B87E7E65</key>
-			<input>A24D1403A58B94798F5F3565ABFD3B44</input>
-			<output>5B6E097B3B0E21DCC9CE9970701C7BD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5893AFF8DACF25DDEDDBB571C86205B0</key>
-			<input>5B6E097B3B0E21DCC9CE9970701C7BD5</input>
-			<output>4E21CEA52B3111AC8F6B204A1F5E65E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>16B2615DF1FE347162B0953BD73C6052</key>
-			<input>4E21CEA52B3111AC8F6B204A1F5E65E2</input>
-			<output>806DDC5C37ADEEBB6FCE4730939D7A99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>96DFBD01C653DACA0D7ED20B44A11ACB</key>
-			<input>806DDC5C37ADEEBB6FCE4730939D7A99</input>
-			<output>3462F7C6D3E071A0D3ACE7FD79149776</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A2BD4AC715B3AB6ADED235F63DB58DBD</key>
-			<input>3462F7C6D3E071A0D3ACE7FD79149776</input>
-			<output>AF0FFF307B72284E794C8A64C30299D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0DB2B5F76EC18324A79EBF92FEB7146F</key>
-			<input>AF0FFF307B72284E794C8A64C30299D2</input>
-			<output>E482B613FBCF9C4422D85E3160B1FB0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E93003E4950E1F608546E1A39E06EF60</key>
-			<input>E482B613FBCF9C4422D85E3160B1FB0F</input>
-			<output>FADC8EF9C95540AD69897DECAB2D50D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>13EC8D1D5C5B5FCDECCF9C4F352BBFB5</key>
-			<input>FADC8EF9C95540AD69897DECAB2D50D5</input>
-			<output>2A765E237FB5230D792D455596A17118</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>399AD33E23EE7CC095E2D91AA38ACEAD</key>
-			<input>2A765E237FB5230D792D455596A17118</input>
-			<output>0887DA8012C7F95BD6ADB18D1ED3C2DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>311D09BE3129859B434F6897BD590C76</key>
-			<input>0887DA8012C7F95BD6ADB18D1ED3C2DB</input>
-			<output>3BB831A7B6FAC3649176471012FAD1C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0AA5381987D346FFD2392F87AFA3DDB7</key>
-			<input>3BB831A7B6FAC3649176471012FAD1C1</input>
-			<output>E4F8629AB3489A0945B8B7188B953DE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EE5D5A83349BDCF69781989F2436E052</key>
-			<input>E4F8629AB3489A0945B8B7188B953DE5</input>
-			<output>1D4B0B5B321EB711939AB481239E2541</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F31651D806856BE7041B2C1E07A8C513</key>
-			<input>1D4B0B5B321EB711939AB481239E2541</input>
-			<output>71A368D5A33665D6FF9F33FECAFC6884</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>82B5390DA5B30E31FB841FE0CD54AD97</key>
-			<input>71A368D5A33665D6FF9F33FECAFC6884</input>
-			<output>8ACF418080075BA23B05A52552773B84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>087A788D25B45593C081BAC59F239613</key>
-			<input>8ACF418080075BA23B05A52552773B84</input>
-			<output>E0E6058735F4FE765E882521D769FB41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E89C7D0A1040ABE59E099FE4484A6D52</key>
-			<input>E0E6058735F4FE765E882521D769FB41</input>
-			<output>70DCE91F818DF2CDC4269F1B4EA0A465</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9840941591CD59285A2F00FF06EAC937</key>
-			<input>70DCE91F818DF2CDC4269F1B4EA0A465</input>
-			<output>E2F809D6DD77D72EF6DB5A82C42BF1CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7AB89DC34CBA8E06ACF45A7DC2C138F8</key>
-			<input>E2F809D6DD77D72EF6DB5A82C42BF1CF</input>
-			<output>0741D11DDD877957E753ECF8DB91C72B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7DF94CDE913DF7514BA7B6851950FFD3</key>
-			<input>0741D11DDD877957E753ECF8DB91C72B</input>
-			<output>03E411012CA3B5B3CC163677D4B52456</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7E1D5DDFBD9E42E287B180F2CDE5DB85</key>
-			<input>03E411012CA3B5B3CC163677D4B52456</input>
-			<output>0270D90790EF8347ACFB87EB2FEC2710</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C6D84D82D71C1A52B4A0719E209FC95</key>
-			<input>0270D90790EF8347ACFB87EB2FEC2710</input>
-			<output>3AE40270512374AF4022638E0A7A6D8E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>468986A87C52B50A6B686497E873911B</key>
-			<input>3AE40270512374AF4022638E0A7A6D8E</input>
-			<output>8008D87E928A980FECA08CAF1EC91DDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6815ED6EED82D0587C8E838F6BA8CC1</key>
-			<input>8008D87E928A980FECA08CAF1EC91DDA</input>
-			<output>1D479A54832FF1A81D30008EFDF16A34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DBC6C4826DF7DCAD9AF8E8B60B4BE6F5</key>
-			<input>1D479A54832FF1A81D30008EFDF16A34</input>
-			<output>9E731FECD9A767BDA0C84B4C4D552BD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>45B5DB6EB450BB103A30A3FA461ECD26</key>
-			<input>9E731FECD9A767BDA0C84B4C4D552BD3</input>
-			<output>C2211A6B16CD27C6C73A5C3C1A0132AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8794C105A29D9CD6FD0AFFC65C1FFF8A</key>
-			<input>C2211A6B16CD27C6C73A5C3C1A0132AC</input>
-			<output>7E523DD6F25706F971F020F88FFA0CF7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F9C6FCD350CA9A2F8CFADF3ED3E5F37D</key>
-			<input>7E523DD6F25706F971F020F88FFA0CF7</input>
-			<output>0EDC01C6C1A8DA6A7C9EEE3587CB098E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F71AFD1591624045F064310B542EFAF3</key>
-			<input>0EDC01C6C1A8DA6A7C9EEE3587CB098E</input>
-			<output>EE479106871DA872632794633B1ACF0E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>195D6C13167FE8379343A5686F3435FD</key>
-			<input>EE479106871DA872632794633B1ACF0E</input>
-			<output>7EC1A4578D911F336184DACCCA92D943</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>679CC8449BEEF704F2C77FA4A5A6ECBE</key>
-			<input>7EC1A4578D911F336184DACCCA92D943</input>
-			<output>53715F25AE02513F181E3DECBB007803</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>34ED976135ECA63BEAD942481EA694BD</key>
-			<input>53715F25AE02513F181E3DECBB007803</input>
-			<output>304D5764B5206F8204A69D1BED11FA62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>04A0C00580CCC9B9EE7FDF53F3B76EDF</key>
-			<input>304D5764B5206F8204A69D1BED11FA62</input>
-			<output>5A7590ADEF208BFD808499A2BFE9B011</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5ED550A86FEC42446EFB46F14C5EDECE</key>
-			<input>5A7590ADEF208BFD808499A2BFE9B011</input>
-			<output>2502C0F68A721A93ECE8D7B6C2097BA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7BD7905EE59E58D7821391478E57A56A</key>
-			<input>2502C0F68A721A93ECE8D7B6C2097BA4</input>
-			<output>1C814E26A6464086D606C7B4C6DFD85B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6756DE7843D81851541556F348887D31</key>
-			<input>1C814E26A6464086D606C7B4C6DFD85B</input>
-			<output>9D55D6EA99BA391190068205DD9AE69C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FA030892DA622140C413D4F695129BAD</key>
-			<input>9D55D6EA99BA391190068205DD9AE69C</input>
-			<output>9D1212D0BD8C26422EEFF4DDB16B2EF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>67111A4267EE0702EAFC202B2479B55E</key>
-			<input>9D1212D0BD8C26422EEFF4DDB16B2EF3</input>
-			<output>54DF71E70141E1712449CDC1AC7D07F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>33CE6BA566AFE673CEB5EDEA8804B2A8</key>
-			<input>54DF71E70141E1712449CDC1AC7D07F6</input>
-			<output>AF3DE6F3510978928C129CFC19FB29B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9CF38D5637A69EE142A7711691FF9B1C</key>
-			<input>AF3DE6F3510978928C129CFC19FB29B4</input>
-			<output>830DB7014774C7DF870C8456BC0162AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1FFE3A5770D2593EC5ABF5402DFEF9B7</key>
-			<input>830DB7014774C7DF870C8456BC0162AB</input>
-			<output>6606C0A36A18BEFF33485F95B82C30E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>79F8FAF41ACAE7C1F6E3AAD595D2C950</key>
-			<input>6606C0A36A18BEFF33485F95B82C30E7</input>
-			<output>4B1E64672B89056DF693E73B419E786E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>32E69E933143E2AC00704DEED44CB13E</key>
-			<input>4B1E64672B89056DF693E73B419E786E</input>
-			<output>1877DEEAFF10A5A3F5E9A811BF7595BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2A914079CE53470FF599E5FF6B392484</key>
-			<input>1877DEEAFF10A5A3F5E9A811BF7595BA</input>
-			<output>A11A48215BF59CC53BC8A009DCA3973D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8B8B085895A6DBCACE5145F6B79AB3B9</key>
-			<input>A11A48215BF59CC53BC8A009DCA3973D</input>
-			<output>E80535676DE8898A3624B8127EC21024</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>638E3D3FF84E5240F875FDE4C958A39D</key>
-			<input>E80535676DE8898A3624B8127EC21024</input>
-			<output>E2977A804EC9A8B03C85234AD3A95B52</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>811947BFB687FAF0C4F0DEAE1AF1F8CF</key>
-			<input>E2977A804EC9A8B03C85234AD3A95B52</input>
-			<output>D776D8BF13F736483862328571C06C61</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>566F9F00A570CCB8FC92EC2B6B3194AE</key>
-			<input>D776D8BF13F736483862328571C06C61</input>
-			<output>3AF7969F3247A0914037209556997164</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6C98099F97376C29BCA5CCBE3DA8E5CA</key>
-			<input>3AF7969F3247A0914037209556997164</input>
-			<output>4F87DDC715CEE3A9D67645AD920DF74A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>231FD45882F98F806AD38913AFA51280</key>
-			<input>4F87DDC715CEE3A9D67645AD920DF74A</input>
-			<output>9E88CA52E6B0C160E52B23F36882DBA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD971E0A64494EE08FF8AAE0C727C921</key>
-			<input>9E88CA52E6B0C160E52B23F36882DBA1</input>
-			<output>CAD26E5881D9D4E52C7595C773E0FDAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>77457052E5909A05A38D3F27B4C7348A</key>
-			<input>CAD26E5881D9D4E52C7595C773E0FDAB</input>
-			<output>C2D0B3D713CFCA5ABB7B9DED14429F37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B595C385F65F505F18F6A2CAA085ABBD</key>
-			<input>C2D0B3D713CFCA5ABB7B9DED14429F37</input>
-			<output>DD7AADA7524A4878F7C598C4CBCD9CAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>68EF6E22A4151827EF333A0E6B483716</key>
-			<input>DD7AADA7524A4878F7C598C4CBCD9CAB</input>
-			<output>A0F33B1FCC3F4A4B0982F0823C4ED3C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C81C553D682A526CE6B1CA8C5706E4DF</key>
-			<input>A0F33B1FCC3F4A4B0982F0823C4ED3C9</input>
-			<output>B22BB23CD68E8779A8C0FC9A350CB756</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7A37E701BEA4D5154E713616620A5389</key>
-			<input>B22BB23CD68E8779A8C0FC9A350CB756</input>
-			<output>EA4D96AC54BD8387AD36AC8C855A9D44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>907A71ADEA195692E3479A9AE750CECD</key>
-			<input>EA4D96AC54BD8387AD36AC8C855A9D44</input>
-			<output>A3B90CFDE355723BC94999784534FA74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>33C37D50094C24A92A0E03E2A26434B9</key>
-			<input>A3B90CFDE355723BC94999784534FA74</input>
-			<output>55636C86A64383768CB948FF57B29322</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>66A011D6AF0FA7DFA6B74B1DF5D6A79B</key>
-			<input>55636C86A64383768CB948FF57B29322</input>
-			<output>B29CCDFD8E7BE50892F0D77DD969F97E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D43CDC2B217442D734479C602CBF5EE5</key>
-			<input>B29CCDFD8E7BE50892F0D77DD969F97E</input>
-			<output>9CF0432822EABDF489B57EDD9CEF7FEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>48CC9F03039EFF23BDF2E2BDB050210F</key>
-			<input>9CF0432822EABDF489B57EDD9CEF7FEA</input>
-			<output>AA753B7D38E807D691005899385DC6DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E2B9A47E3B76F8F52CF2BA24880DE7D5</key>
-			<input>AA753B7D38E807D691005899385DC6DA</input>
-			<output>E4F0681527FA7AD3D1E7C78C03FB79FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0649CC6B1C8C8226FD157DA88BF69E2F</key>
-			<input>E4F0681527FA7AD3D1E7C78C03FB79FA</input>
-			<output>7923AF8E50F378B9C97D2F162348025B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F6A63E54C7FFA9F346852BEA8BE9C74</key>
-			<input>7923AF8E50F378B9C97D2F162348025B</input>
-			<output>3BEFAB920CA31A6B8B87E11DF97B42DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4485C87740DCE0F4BFEFB3A351C5DEAA</key>
-			<input>3BEFAB920CA31A6B8B87E11DF97B42DE</input>
-			<output>4661D6B8004611976A21C69804D102C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>02E41ECF409AF163D5CE753B5514DC6A</key>
-			<input>4661D6B8004611976A21C69804D102C0</input>
-			<output>B861DF2279F2AEE4FCFD7D322AD0BE2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BA85C1ED39685F87293308097FC46241</key>
-			<input>B861DF2279F2AEE4FCFD7D322AD0BE2B</input>
-			<output>1785745618A541F9454443FFB494F2E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AD00B5BB21CD1E7E6C774BF6CB5090A8</key>
-			<input>1785745618A541F9454443FFB494F2E9</input>
-			<output>AA7507A80B4CCF33E8B4F09E2D7004F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0775B2132A81D14D84C3BB68E620945E</key>
-			<input>AA7507A80B4CCF33E8B4F09E2D7004F6</input>
-			<output>433412B8F10F81A557AC461823097FC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4441A0ABDB8E50E8D36FFD70C529EB99</key>
-			<input>433412B8F10F81A557AC461823097FC7</input>
-			<output>EC3206BDB3765876B74952C411D40373</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A873A61668F8089E6426AFB4D4FDE8EA</key>
-			<input>EC3206BDB3765876B74952C411D40373</input>
-			<output>F7F994027D328FA3D70C9DEABD3BE733</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5F8A321415CA873DB32A325E69C60FD9</key>
-			<input>F7F994027D328FA3D70C9DEABD3BE733</input>
-			<output>E2A8419BF86A2408ED8D0274A5CE0E10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD22738FEDA0A3355EA7302ACC0801C9</key>
-			<input>E2A8419BF86A2408ED8D0274A5CE0E10</input>
-			<output>80FB8CD5243C89D77F503B2F16979F90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3DD9FF5AC99C2AE221F70B05DA9F9E59</key>
-			<input>80FB8CD5243C89D77F503B2F16979F90</input>
-			<output>F7773137F233AE2609C2C9AC36F58224</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CAAECE6D3BAF84C42835C2A9EC6A1C7D</key>
-			<input>F7773137F233AE2609C2C9AC36F58224</input>
-			<output>F3D0A1DADA4A009E8E4C0EF717469BCD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>397E6FB7E1E5845AA679CC5EFB2C87B0</key>
-			<input>F3D0A1DADA4A009E8E4C0EF717469BCD</input>
-			<output>0AC0FF22EB653A26A3F1F0CFE3808609</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>33BE90950A80BE7C05883C9118AC01B9</key>
-			<input>0AC0FF22EB653A26A3F1F0CFE3808609</input>
-			<output>28FF865CE11720BB1B56EF49D7D1840D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1B4116C9EB979EC71EDED3D8CF7D85B4</key>
-			<input>28FF865CE11720BB1B56EF49D7D1840D</input>
-			<output>001FAF58E22F5E8ED6BCC7FD581D7C2F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1B5EB99109B8C049C86214259760F99B</key>
-			<input>001FAF58E22F5E8ED6BCC7FD581D7C2F</input>
-			<output>32B41303A58AB49CB4CB2322B77383B3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>29EAAA92AC3274D57CA9370720137A28</key>
-			<input>32B41303A58AB49CB4CB2322B77383B3</input>
-			<output>9C52020FCDE0306C8E19CDF68FEFDF50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B5B8A89D61D244B9F2B0FAF1AFFCA578</key>
-			<input>9C52020FCDE0306C8E19CDF68FEFDF50</input>
-			<output>2E3452997687D12E3A8C59B9178B09E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9B8CFA0417559597C83CA348B877AC9A</key>
-			<input>2E3452997687D12E3A8C59B9178B09E2</input>
-			<output>872CF16DBB7CD6EA8EBB91A60BDE0C6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1CA00B69AC29437D468732EEB3A9A0F5</key>
-			<input>872CF16DBB7CD6EA8EBB91A60BDE0C6F</input>
-			<output>7862C78E3B209535E6C6BE92F5EDF42B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>64C2CCE79709D648A0418C7C464454DE</key>
-			<input>7862C78E3B209535E6C6BE92F5EDF42B</input>
-			<output>9185D8487C1D2DB679A52FDA2FE5FFCD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F54714AFEB14FBFED9E4A3A669A1AB13</key>
-			<input>9185D8487C1D2DB679A52FDA2FE5FFCD</input>
-			<output>77C3AF8C81CDB1CDEF5C0429CF3E5DA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8284BB236AD94A3336B8A78FA69FF6B7</key>
-			<input>77C3AF8C81CDB1CDEF5C0429CF3E5DA4</input>
-			<output>6F36C74290EA6332E98CD23D08AEF7F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EDB27C61FA332901DF3475B2AE31014E</key>
-			<input>6F36C74290EA6332E98CD23D08AEF7F9</input>
-			<output>4A7831538FA1D32E3F8631BEFD99AA73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A7CA4D327592FA2FE0B2440C53A8AB3D</key>
-			<input>4A7831538FA1D32E3F8631BEFD99AA73</input>
-			<output>5D2B599D9AF9054A99C25577C9286C9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FAE114AFEF6BFF657970117B9A80C7A3</key>
-			<input>5D2B599D9AF9054A99C25577C9286C9E</input>
-			<output>65E4088200BCC01FCEE39C6E42082FD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9F051C2DEFD73F7AB7938D15D888E87B</key>
-			<input>65E4088200BCC01FCEE39C6E42082FD8</input>
-			<output>4588E0D3AABBEFE611B9576391B903E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DA8DFCFE456CD09CA62ADA764931EB92</key>
-			<input>4588E0D3AABBEFE611B9576391B903E9</input>
-			<output>A55622F833FF271DD8A8F01CF5828FCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7FDBDE067693F7817E822A6ABCB3645D</key>
-			<input>A55622F833FF271DD8A8F01CF5828FCF</input>
-			<output>8C954010C870B2DB7FA44E1DEBFE6DE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F34E9E16BEE3455A01266477574D09B5</key>
-			<input>8C954010C870B2DB7FA44E1DEBFE6DE8</input>
-			<output>58B7BD00ED18FC81E618807DE65305B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ABF9231653FBB9DBE73EE40AB11E0C0D</key>
-			<input>58B7BD00ED18FC81E618807DE65305B8</input>
-			<output>EF82E5F4879039F2A1A4CC2F2044BD14</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>447BC6E2D46B8029469A2825915AB119</key>
-			<input>EF82E5F4879039F2A1A4CC2F2044BD14</input>
-			<output>2B6C12307F14FD50B41D8F972B19AC76</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6F17D4D2AB7F7D79F287A7B2BA431D6F</key>
-			<input>2B6C12307F14FD50B41D8F972B19AC76</input>
-			<output>C9B6D042CE76892D17F70D4EE00A0D79</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A6A104906509F454E570AAFC5A491016</key>
-			<input>C9B6D042CE76892D17F70D4EE00A0D79</input>
-			<output>1B08F9293BBFC44DDCF2C1D26A9DD00B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BDA9FDB95EB6301939826B2E30D4C01D</key>
-			<input>1B08F9293BBFC44DDCF2C1D26A9DD00B</input>
-			<output>4FD353B247048FAAA728E10C691C70CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F27AAE0B19B2BFB39EAA8A2259C8B0D7</key>
-			<input>4FD353B247048FAAA728E10C691C70CA</input>
-			<output>0BBB6FDBC62C428B85111BC7C93AE994</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F9C1C1D0DF9EFD381BBB91E590F25943</key>
-			<input>0BBB6FDBC62C428B85111BC7C93AE994</input>
-			<output>9C1A213A5772DE6C15CE7406F84BED03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>65DBE0EA88EC23540E75E5E368B9B440</key>
-			<input>9C1A213A5772DE6C15CE7406F84BED03</input>
-			<output>AB3DE06BBDB213D64F735CA990DC373C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CEE60081355E30824106B94AF865837C</key>
-			<input>AB3DE06BBDB213D64F735CA990DC373C</input>
-			<output>6C004A1A114E90C7903AA4A0120A2B10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A2E64A9B2410A045D13C1DEAEA6FA86C</key>
-			<input>6C004A1A114E90C7903AA4A0120A2B10</input>
-			<output>6405A033C294E72119A8955712548121</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6E3EAA8E6844764C89488BDF83B294D</key>
-			<input>6405A033C294E72119A8955712548121</input>
-			<output>AE8A3BAC7279B1BC152A5AD8EBAC3EAD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6869D10494FDF6D8DDBED265139717E0</key>
-			<input>AE8A3BAC7279B1BC152A5AD8EBAC3EAD</input>
-			<output>4ADDA9999D2BE20D8925F39699563294</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>22B4789D09D614D5549B21F38AC12574</key>
-			<input>4ADDA9999D2BE20D8925F39699563294</input>
-			<output>BC5CA33CB2A1A580EB92946C77A63467</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9EE8DBA1BB77B155BF09B59FFD671113</key>
-			<input>BC5CA33CB2A1A580EB92946C77A63467</input>
-			<output>F7ABEAD301264A3E59EABA0B9606DC92</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>69433172BA51FB6BE6E30F946B61CD81</key>
-			<input>F7ABEAD301264A3E59EABA0B9606DC92</input>
-			<output>2566114A10BE9BF19E0910486DAB6BE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4C252038AAEF609A78EA1FDC06CAA664</key>
-			<input>2566114A10BE9BF19E0910486DAB6BE5</input>
-			<output>AF72E1B179660A1B833D9D4FC8473B6B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E357C189D3896A81FBD78293CE8D9D0F</key>
-			<input>AF72E1B179660A1B833D9D4FC8473B6B</input>
-			<output>DFF968B761D8E154B74C9D568C12008E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3CAEA93EB2518BD54C9B1FC5429F9D81</key>
-			<input>DFF968B761D8E154B74C9D568C12008E</input>
-			<output>42DF098BCB57D0D25269E29C9BC99DE6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7E71A0B579065B071EF2FD59D9560067</key>
-			<input>42DF098BCB57D0D25269E29C9BC99DE6</input>
-			<output>66C34CAAEFC2009B985D1E622FC61AB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>18B2EC1F96C45B9C86AFE33BF6901AD3</key>
-			<input>66C34CAAEFC2009B985D1E622FC61AB4</input>
-			<output>150C1BF943982C5EA1A6839D94F23288</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0DBEF7E6D55C77C2270960A66262285B</key>
-			<input>150C1BF943982C5EA1A6839D94F23288</input>
-			<output>048BFBB28879206964C5F3B41264011A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>09350C545D2557AB43CC931270062941</key>
-			<input>048BFBB28879206964C5F3B41264011A</input>
-			<output>54D2DC53B87EC949F0FA0E134EE26D50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5DE7D007E55B9EE2B3369D013EE44411</key>
-			<input>54D2DC53B87EC949F0FA0E134EE26D50</input>
-			<output>1BA46AFE1AE87C4F0254BF02DF3B6D37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4643BAF9FFB3E2ADB1622203E1DF2926</key>
-			<input>1BA46AFE1AE87C4F0254BF02DF3B6D37</input>
-			<output>7733E74E743C9E997AC2ED36B2E89CE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>31705DB78B8F7C34CBA0CF355337B5CE</key>
-			<input>7733E74E743C9E997AC2ED36B2E89CE8</input>
-			<output>670AEA160FAC67ABCECA140EB8195EB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>567AB7A184231B9F056ADB3BEB2EEB7B</key>
-			<input>670AEA160FAC67ABCECA140EB8195EB5</input>
-			<output>7CFD74D510AC894FF5B698280386F4FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2A87C374948F92D0F0DC4313E8A81F84</key>
-			<input>7CFD74D510AC894FF5B698280386F4FF</input>
-			<output>10D03F32C0694E9FFF598E101998105E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3A57FC4654E6DC4F0F85CD03F1300FDA</key>
-			<input>10D03F32C0694E9FFF598E101998105E</input>
-			<output>351D6E8D1C26F36973356F6235B8ABAD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0F4A92CB48C02F267CB0A261C488A477</key>
-			<input>351D6E8D1C26F36973356F6235B8ABAD</input>
-			<output>0DDDA7AA09FBD986C0B9EA2B018FAE4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>02973561413BF6A0BC09484AC5070A38</key>
-			<input>0DDDA7AA09FBD986C0B9EA2B018FAE4F</input>
-			<output>31C5B68B7A08D1B7320FAB052CC3B0D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>335283EA3B3327178E06E34FE9C4BAE9</key>
-			<input>31C5B68B7A08D1B7320FAB052CC3B0D1</input>
-			<output>501B8D9EE91468522029020A39484DB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>63490E74D2274F45AE2FE145D08CF75C</key>
-			<input>501B8D9EE91468522029020A39484DB5</input>
-			<output>2714FBA566DFD4909B8ABF29B1D5A8E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>445DF5D1B4F89BD535A55E6C61595FB4</key>
-			<input>2714FBA566DFD4909B8ABF29B1D5A8E8</input>
-			<output>94485381E5088D67BC1335C89FA5C2B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D015A65051F016B289B66BA4FEFC9D0C</key>
-			<input>94485381E5088D67BC1335C89FA5C2B8</input>
-			<output>BE5BEE26D6686A0EB5838C237FEF79B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6E4E487687987CBC3C35E7878113E4BB</key>
-			<input>BE5BEE26D6686A0EB5838C237FEF79B7</input>
-			<output>417F73D46CFBE3C5C9AD513BCBC6D185</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2F313BA2EB639F79F598B6BC4AD5353E</key>
-			<input>417F73D46CFBE3C5C9AD513BCBC6D185</input>
-			<output>AE3B07350B3BE7D4F9F6FE2F95622449</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>810A3C97E05878AD0C6E4893DFB71177</key>
-			<input>AE3B07350B3BE7D4F9F6FE2F95622449</input>
-			<output>7BD4231225A7B665953AB034E24A7C7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FADE1F85C5FFCEC89954F8A73DFD6D0D</key>
-			<input>7BD4231225A7B665953AB034E24A7C7A</input>
-			<output>3C1FBE8F3CEB1438B4A64E59FAF291CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6C1A10AF914DAF02DF2B6FEC70FFCC2</key>
-			<input>3C1FBE8F3CEB1438B4A64E59FAF291CF</input>
-			<output>ACFF7F1E71AA952CF8ADB24FEE18A7BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6A3EDE1488BE4FDCD55F04B129175B79</key>
-			<input>ACFF7F1E71AA952CF8ADB24FEE18A7BB</input>
-			<output>3C3A6D3FD73B36317417106A92E2B43E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5604B32B5F8579EDA14814DBBBF5EF47</key>
-			<input>3C3A6D3FD73B36317417106A92E2B43E</input>
-			<output>F34F8C719A4A74DD8F4FA4CBC520827A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A54B3F5AC5CF0D302E07B0107ED56D3D</key>
-			<input>F34F8C719A4A74DD8F4FA4CBC520827A</input>
-			<output>6A5D56FB6C7EBA15112AF8A093F3E1E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CF1669A1A9B1B7253F2D48B0ED268CDC</key>
-			<input>6A5D56FB6C7EBA15112AF8A093F3E1E1</input>
-			<output>8BF39EE3B8ED0F6A6EA92319A81B10E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44E5F742115CB84F51846BA9453D9C3A</key>
-			<input>8BF39EE3B8ED0F6A6EA92319A81B10E6</input>
-			<output>2BC796D320C444BBBAD466D686F460F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6F2261913198FCF4EB500D7FC3C9FCCC</key>
-			<input>2BC796D320C444BBBAD466D686F460F6</input>
-			<output>2CF595F424ED50B1A146E387B128CBA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>43D7F4651575AC454A16EEF872E1376F</key>
-			<input>2CF595F424ED50B1A146E387B128CBA3</input>
-			<output>56F2E856045BAE66EA003A6C39205344</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>15251C33112E0223A016D4944BC1642B</key>
-			<input>56F2E856045BAE66EA003A6C39205344</input>
-			<output>31C83401BD83424BA6E94C0D6D453D9A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>24ED2832ACAD406806FF9899268459B1</key>
-			<input>31C83401BD83424BA6E94C0D6D453D9A</input>
-			<output>A687F05992CCB57CDE61AFF8878913ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>826AD86B3E61F514D89E3761A10D4A5C</key>
-			<input>A687F05992CCB57CDE61AFF8878913ED</input>
-			<output>16E771193C2473502F415C27FB101D94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>948DA97202458644F7DF6B465A1D57C8</key>
-			<input>16E771193C2473502F415C27FB101D94</input>
-			<output>C69CDBA29C9EDC3407C1C73A756A0B6E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>521172D09EDB5A70F01EAC7C2F775CA6</key>
-			<input>C69CDBA29C9EDC3407C1C73A756A0B6E</input>
-			<output>566D82281F48E3217F3852115CF2E944</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>047CF0F88193B9518F26FE6D7385B5E2</key>
-			<input>566D82281F48E3217F3852115CF2E944</input>
-			<output>B3FEBC8F8F0F0B652C4358BCC9BF54DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B7824C770E9CB234A365A6D1BA3AE13D</key>
-			<input>B3FEBC8F8F0F0B652C4358BCC9BF54DF</input>
-			<output>BBB84877094B3EB86203D17C92CF5168</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0C3A040007D78C8CC16677AD28F5B055</key>
-			<input>BBB84877094B3EB86203D17C92CF5168</input>
-			<output>2C45E5A3F8C564862DA4D8AD428D3E67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>207FE1A3FF12E80AECC2AF006A788E32</key>
-			<input>2C45E5A3F8C564862DA4D8AD428D3E67</input>
-			<output>10ADC2AF56600D95AD8BB579EF5170C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>30D2230CA972E59F41491A798529FEFB</key>
-			<input>10ADC2AF56600D95AD8BB579EF5170C9</input>
-			<output>1854BB8AC568F3599153BE1AC60BA78D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>288698866C1A16C6D01AA46343225976</key>
-			<input>1854BB8AC568F3599153BE1AC60BA78D</input>
-			<output>E641765C80D8812A1A0F4606C639642E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CEC7EEDAECC297ECCA15E265851B3D58</key>
-			<input>E641765C80D8812A1A0F4606C639642E</input>
-			<output>317AC70CEAA87AE66A15C22BD5E534E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FFBD29D6066AED0AA000204E50FE09BD</key>
-			<input>317AC70CEAA87AE66A15C22BD5E534E5</input>
-			<output>BFFB8D7B3D9F54727944ABC3F6474362</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4046A4AD3BF5B978D9448B8DA6B94ADF</key>
-			<input>BFFB8D7B3D9F54727944ABC3F6474362</input>
-			<output>060765D1D9D289B862DA274CFDB4D7A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4641C17CE22730C0BB9EACC15B0D9D7F</key>
-			<input>060765D1D9D289B862DA274CFDB4D7A0</input>
-			<output>FBAFA4C1D6CEF2A45E9E084311FDF858</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BDEE65BD34E9C264E500A4824AF06527</key>
-			<input>FBAFA4C1D6CEF2A45E9E084311FDF858</input>
-			<output>F7F36BFDA77362B470B0B074241C58E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4A1D0E40939AA0D095B014F66EEC3DCE</key>
-			<input>F7F36BFDA77362B470B0B074241C58E9</input>
-			<output>2FC236EDCD573A6DCFBA7930E9CF4698</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>65DF38AD5ECD9ABD5A0A6DC687237B56</key>
-			<input>2FC236EDCD573A6DCFBA7930E9CF4698</input>
-			<output>949A9994DC976595BFACA5F31116A165</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F145A139825AFF28E5A6C8359635DA33</key>
-			<input>949A9994DC976595BFACA5F31116A165</input>
-			<output>19373CA9D519BF83EAA4C17E1EE8225C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E8729D90574340AB0F02094B88DDF86F</key>
-			<input>19373CA9D519BF83EAA4C17E1EE8225C</input>
-			<output>685C783918997A7572B0A09315F1F2DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>802EE5A94FDA3ADE7DB2A9D89D2C0AB4</key>
-			<input>685C783918997A7572B0A09315F1F2DB</input>
-			<output>FC0CB1792EADB7E8DECB021A435DE1E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C2254D061778D36A379ABC2DE71EB53</key>
-			<input>FC0CB1792EADB7E8DECB021A435DE1E7</input>
-			<output>797C5E5B4F3B38E7C72FF7AAAB270E86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>055E0A8B2E4CB5D164565C687556E5D5</key>
-			<input>797C5E5B4F3B38E7C72FF7AAAB270E86</input>
-			<output>A5AB675262EA186F777681647B6AA1F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A0F56DD94CA6ADBE1320DD0C0E3C442C</key>
-			<input>A5AB675262EA186F777681647B6AA1F9</input>
-			<output>08CDF6AF55BBB247D0DE1A69CD041A78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A8389B76191D1FF9C3FEC765C3385E54</key>
-			<input>08CDF6AF55BBB247D0DE1A69CD041A78</input>
-			<output>DED1F3C30AB5EC3455C7B6A756E5FF03</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>76E968B513A8F3CD963971C295DDA157</key>
-			<input>DED1F3C30AB5EC3455C7B6A756E5FF03</input>
-			<output>C759A17B354D668D1BA5541D16241D9F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B1B0C9CE26E595408D9C25DF83F9BCC8</key>
-			<input>C759A17B354D668D1BA5541D16241D9F</input>
-			<output>97E011FE7B327B8292270D4CD18BD9AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2650D8305DD7EEC21FBB289352726564</key>
-			<input>97E011FE7B327B8292270D4CD18BD9AC</input>
-			<output>9F004E4282F790C06681F16262EF78CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B9509672DF207E02793AD9F1309D1DAB</key>
-			<input>9F004E4282F790C06681F16262EF78CF</input>
-			<output>6B34AA95EFD874915DAE275CE34A04B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D2643CE730F80A932494FEADD3D71912</key>
-			<input>6B34AA95EFD874915DAE275CE34A04B9</input>
-			<output>96966D118C50B67849F93B109492B5EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44F251F6BCA8BCEB6D6DC5BD4745ACF9</key>
-			<input>96966D118C50B67849F93B109492B5EB</input>
-			<output>2CA6F85E4F29BE884392A0FEDD08D5A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6854A9A8F38102632EFF65439A4D795E</key>
-			<input>2CA6F85E4F29BE884392A0FEDD08D5A7</input>
-			<output>21B71D4F23DDC002CAAFB7426009BD27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>49E3B4E7D05CC261E450D201FA44C479</key>
-			<input>21B71D4F23DDC002CAAFB7426009BD27</input>
-			<output>BF059F1945E9E51B22B308849757B475</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F6E62BFE95B5277AC6E3DA856D13700C</key>
-			<input>BF059F1945E9E51B22B308849757B475</input>
-			<output>434F4E756A3178472E12B80A1C2ED83E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B5A9658BFF845F3DE8F1628F713DA832</key>
-			<input>434F4E756A3178472E12B80A1C2ED83E</input>
-			<output>37DB2B0D5967700CDE348FB60661A6D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>82724E86A6E32F3136C5ED39775C0EE6</key>
-			<input>37DB2B0D5967700CDE348FB60661A6D4</input>
-			<output>D31C5130F8F217AC0014B5F37B9BB86B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>516E1FB65E11389D36D158CA0CC7B68D</key>
-			<input>D31C5130F8F217AC0014B5F37B9BB86B</input>
-			<output>3B8CD15967907F9C617697EBEF395B16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6AE2CEEF3981470157A7CF21E3FEED9B</key>
-			<input>3B8CD15967907F9C617697EBEF395B16</input>
-			<output>AF17B5E5236BF46576379CD4E5AF8A34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C5F57B0A1AEAB364219053F5065167AF</key>
-			<input>AF17B5E5236BF46576379CD4E5AF8A34</input>
-			<output>88286D6FB237181EC239C1D70C0D6675</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4DDD1665A8DDAB7AE3A992220A5C01DA</key>
-			<input>88286D6FB237181EC239C1D70C0D6675</input>
-			<output>8A5207BB1283343B3692045183451A7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C78F11DEBA5E9F41D53B967389191BA7</key>
-			<input>8A5207BB1283343B3692045183451A7D</input>
-			<output>53C12FAC4B0185AA0CE067FC67EC5B9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>944E3E72F15F1AEBD9DBF18FEEF5403B</key>
-			<input>53C12FAC4B0185AA0CE067FC67EC5B9C</input>
-			<output>BBA2BB9B1CA48D2E97E0C39E500EB9C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2FEC85E9EDFB97C54E3B3211BEFBF9FB</key>
-			<input>BBA2BB9B1CA48D2E97E0C39E500EB9C0</input>
-			<output>8BA2341064B7B5184CD7E7A40FA0358E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A44EB1F9894C22DD02ECD5B5B15BCC75</key>
-			<input>8BA2341064B7B5184CD7E7A40FA0358E</input>
-			<output>97121EEEA68CC6200FBC0B311849E625</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>335CAF172FC0E4FD0D50DE84A9122A50</key>
-			<input>97121EEEA68CC6200FBC0B311849E625</input>
-			<output>027FA370A9412B342043A15F19294961</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>31230C678681CFC92D137FDBB03B6331</key>
-			<input>027FA370A9412B342043A15F19294961</input>
-			<output>72CFBE6BA03AB28A53A6727717D1199A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>43ECB20C26BB7D437EB50DACA7EA7AAB</key>
-			<input>72CFBE6BA03AB28A53A6727717D1199A</input>
-			<output>7A15B1B4B4ED35F9C208500FE7C4C1C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>39F903B8925648BABCBD5DA3402EBB6C</key>
-			<input>7A15B1B4B4ED35F9C208500FE7C4C1C7</input>
-			<output>AF46496D09254FAB5F381E93EEB4FBB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>96BF4AD59B730711E3854330AE9A40DC</key>
-			<input>AF46496D09254FAB5F381E93EEB4FBB0</input>
-			<output>ADA064E0F4324E8B0C062F6E33C7D016</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3B1F2E356F41499AEF836C5E9D5D90CA</key>
-			<input>ADA064E0F4324E8B0C062F6E33C7D016</input>
-			<output>7723A61733BD5BBFAB8C559ED379B8B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4C3C88225CFC1225440F39C04E24287F</key>
-			<input>7723A61733BD5BBFAB8C559ED379B8B5</input>
-			<output>5D210E8F35DD863316E89FADA70E8392</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>111D86AD6921941652E7A66DE92AABED</key>
-			<input>5D210E8F35DD863316E89FADA70E8392</input>
-			<output>92B1D20E7D87787950990052DE2ABA4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>83AC54A314A6EC6F027EA63F370011A2</key>
-			<input>92B1D20E7D87787950990052DE2ABA4F</input>
-			<output>178E494D23AA6AC13AC180727C47FD2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>94221DEE370C86AE38BF264D4B47EC88</key>
-			<input>178E494D23AA6AC13AC180727C47FD2A</input>
-			<output>CB9C10817C059D5BE4F123576FF459C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5FBE0D6F4B091BF5DC4E051A24B3B54E</key>
-			<input>CB9C10817C059D5BE4F123576FF459C6</input>
-			<output>4934C56CC7BAF0A8DEBB62CFB2B0DEBF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>168AC8038CB3EB5D02F567D596036BF1</key>
-			<input>4934C56CC7BAF0A8DEBB62CFB2B0DEBF</input>
-			<output>F6F2A4B90B357D88401702C968D9EC02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E0786CBA878696D542E2651CFEDA87F3</key>
-			<input>F6F2A4B90B357D88401702C968D9EC02</input>
-			<output>06A35CAD7B36751BEE345C33112EB6D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6DB3017FCB0E3CEACD6392FEFF43122</key>
-			<input>06A35CAD7B36751BEE345C33112EB6D1</input>
-			<output>3244CDE10DF48795DA702CD8C2F4CABD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D49FFDF6F144645B76A615F72D00FB9F</key>
-			<input>3244CDE10DF48795DA702CD8C2F4CABD</input>
-			<output>47C06F5BEA8C3503512E0E200966C546</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>935F92AD1BC8515827881BD724663ED9</key>
-			<input>47C06F5BEA8C3503512E0E200966C546</input>
-			<output>68A077D25CBEA7F76B88D8C6A414D0CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBFFE57F4776F6AF4C00C3118072EE17</key>
-			<input>68A077D25CBEA7F76B88D8C6A414D0CE</input>
-			<output>DDF110C2C79B46C5132CCEF654280D7E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>260EF5BD80EDB06A5F2C0DE7D45AE369</key>
-			<input>DDF110C2C79B46C5132CCEF654280D7E</input>
-			<output>0AB610A0082813076D052011C12DC924</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2CB8E51D88C5A36D32292DF615772A4D</key>
-			<input>0AB610A0082813076D052011C12DC924</input>
-			<output>8C42F49EDAE1BD6B631E74B68B1B8444</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A0FA118352241E06513759409E6CAE09</key>
-			<input>8C42F49EDAE1BD6B631E74B68B1B8444</input>
-			<output>B5A5B6E50B3A066D16DF883F353019FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>155FA766591E186B47E8D17FAB5CB7F7</key>
-			<input>B5A5B6E50B3A066D16DF883F353019FE</input>
-			<output>70CFA25AFC9919937E2FC90900F0B398</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6590053CA58701F839C71876ABAC046F</key>
-			<input>70CFA25AFC9919937E2FC90900F0B398</input>
-			<output>B927A5911AE33DEAB619DAFEE22CD0DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DCB7A0ADBF643C128FDEC2884980D4B0</key>
-			<input>B927A5911AE33DEAB619DAFEE22CD0DF</input>
-			<output>10C548438C5B976EDD624129B2102D7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CC72E8EE333FAB7C52BC83A1FB90F9CA</key>
-			<input>10C548438C5B976EDD624129B2102D7A</input>
-			<output>4549E45DA2F8FE82972DC7DF3548CAFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>893B0CB391C755FEC591447ECED83335</key>
-			<input>4549E45DA2F8FE82972DC7DF3548CAFF</input>
-			<output>2B85505E64089FEB6B5763011E778C96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A2BE5CEDF5CFCA15AEC6277FD0AFBFA3</key>
-			<input>2B85505E64089FEB6B5763011E778C96</input>
-			<output>4B157930F9A6EBE3D9D6AC9FADDEB35C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E9AB25DD0C6921F677108BE07D710CFF</key>
-			<input>4B157930F9A6EBE3D9D6AC9FADDEB35C</input>
-			<output>12341C0FE9EB6757BFFCC4BC1A8F2585</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FB9F39D2E58246A1C8EC4F5C67FE297A</key>
-			<input>12341C0FE9EB6757BFFCC4BC1A8F2585</input>
-			<output>5422D62D794B02FC04BE01198EE23ACE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AFBDEFFF9CC9445DCC524E45E91C13B4</key>
-			<input>5422D62D794B02FC04BE01198EE23ACE</input>
-			<output>42D43022FD6DB571BCB2FDE653C9068C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ED69DFDD61A4F12C70E0B3A3BAD51538</key>
-			<input>42D43022FD6DB571BCB2FDE653C9068C</input>
-			<output>80BD3AAED5D519B75D22BF060EF1DFC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6DD4E573B471E89B2DC20CA5B424CAFE</key>
-			<input>80BD3AAED5D519B75D22BF060EF1DFC6</input>
-			<output>B72973F9016A348CDDCCFFC2DD291B5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DAFD968AB51BDC17F00EF367690DD1A4</key>
-			<input>B72973F9016A348CDDCCFFC2DD291B5A</input>
-			<output>5692E61C86A7B2C043ABBED712390361</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8C6F709633BC6ED7B3A54DB07B34D2C5</key>
-			<input>5692E61C86A7B2C043ABBED712390361</input>
-			<output>75138737269AA27855C2CFD2DCEDEFC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F97CF7A11526CCAFE6678262A7D93D01</key>
-			<input>75138737269AA27855C2CFD2DCEDEFC4</input>
-			<output>A022AA28CECC4BB5EB28BA5B7828AB6E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>595E5D89DBEA871A0D4F3839DFF1966F</key>
-			<input>A022AA28CECC4BB5EB28BA5B7828AB6E</input>
-			<output>17B0BF87EE02AA44705B1B1B4DF7D3F4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4EEEE20E35E82D5E7D1423229206459B</key>
-			<input>17B0BF87EE02AA44705B1B1B4DF7D3F4</input>
-			<output>095A5A041C43DCFEB5D0DF3E7659344A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>47B4B80A29ABF1A0C8C4FC1CE45F71D1</key>
-			<input>095A5A041C43DCFEB5D0DF3E7659344A</input>
-			<output>9DCE0D1C572509F3367EE952B89044E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DA7AB5167E8EF853FEBA154E5CCF3534</key>
-			<input>9DCE0D1C572509F3367EE952B89044E5</input>
-			<output>E6075BCC82399A91E52034EA2F197058</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3C7DEEDAFCB762C21B9A21A473D6456C</key>
-			<input>E6075BCC82399A91E52034EA2F197058</input>
-			<output>431D243CEE96B424B0FA4FEC5E707036</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F60CAE61221D6E6AB606E482DA6355A</key>
-			<input>431D243CEE96B424B0FA4FEC5E707036</input>
-			<output>5EF70106A2EA454CA9405A8AA1B54EF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2197CBE0B0CB93AA022034C28C137BAA</key>
-			<input>5EF70106A2EA454CA9405A8AA1B54EF0</input>
-			<output>09B003CB7E2ADDD587A2ABCDD03D234F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2827C82BCEE14E7F85829F0F5C2E58E5</key>
-			<input>09B003CB7E2ADDD587A2ABCDD03D234F</input>
-			<output>3647FAC6EF758113DC768E7737098DE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1E6032ED2194CF6C59F411786B27D50C</key>
-			<input>3647FAC6EF758113DC768E7737098DE9</input>
-			<output>C043BD96A88492C85431B72C708C3C60</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE238F7B89105DA40DC5A6541BABE96C</key>
-			<input>C043BD96A88492C85431B72C708C3C60</input>
-			<output>299A25142A6B5D334158D359DD9CD574</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F7B9AA6FA37B00974C9D750DC6373C18</key>
-			<input>299A25142A6B5D334158D359DD9CD574</input>
-			<output>21E56C2202C8D6F81EDC63A8A1EA4B6A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D65CC64DA1B3D66F524116A567DD7772</key>
-			<input>21E56C2202C8D6F81EDC63A8A1EA4B6A</input>
-			<output>FD3565957E3845065B7AEF27A900FDD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2B69A3D8DF8B9369093BF982CEDD8AA7</key>
-			<input>FD3565957E3845065B7AEF27A900FDD5</input>
-			<output>A4DB9120D1ED0419342AFC2CBF114647</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8FB232F80E6697703D1105AE71CCCCE0</key>
-			<input>A4DB9120D1ED0419342AFC2CBF114647</input>
-			<output>27FDDEA1E746BD217CFB4CD7A511BACE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A84FEC59E9202A5141EA4979D4DD762E</key>
-			<input>27FDDEA1E746BD217CFB4CD7A511BACE</input>
-			<output>6A9189FD46E47B22F151A213D023442B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C2DE65A4AFC45173B0BBEB6A04FE3205</key>
-			<input>6A9189FD46E47B22F151A213D023442B</input>
-			<output>1C729701404C76D5D7A156C39CF52542</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DEACF2A5EF8827A6671ABDA9980B1747</key>
-			<input>1C729701404C76D5D7A156C39CF52542</input>
-			<output>6F97CB4564E0783DFE962DCB13FEDF72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B13B39E08B685F9B998C90628BF5C835</key>
-			<input>6F97CB4564E0783DFE962DCB13FEDF72</input>
-			<output>F818140A280299B182CDA37CBE9B27AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>49232DEAA36AC62A1B41331E356EEF9E</key>
-			<input>F818140A280299B182CDA37CBE9B27AB</input>
-			<output>20E9F2BE7017C2945005FD8A420A5B7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>69CADF54D37D04BE4B44CE947764B4E3</key>
-			<input>20E9F2BE7017C2945005FD8A420A5B7D</input>
-			<output>60BB97C634161EF6A36056193B6EDDB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>09714892E76B1A48E824988D4C0A6953</key>
-			<input>60BB97C634161EF6A36056193B6EDDB0</input>
-			<output>E4B9777B7390EF430A93FF7DD0B68CD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EDC83FE994FBF50BE2B767F09CBCE587</key>
-			<input>E4B9777B7390EF430A93FF7DD0B68CD4</input>
-			<output>E5E3BD960CF15BBDB8A6C08711A884CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>082B827F980AAEB65A11A7778D146148</key>
-			<input>E5E3BD960CF15BBDB8A6C08711A884CF</input>
-			<output>71A6AEFD0181DCE69A116585044C7F66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>798D2C82998B7250C000C2F289581E2E</key>
-			<input>71A6AEFD0181DCE69A116585044C7F66</input>
-			<output>8E9C1CFFDB8972617D74DA0E9ED065D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F711307D42020031BD7418FC17887BFF</key>
-			<input>8E9C1CFFDB8972617D74DA0E9ED065D1</input>
-			<output>CE7882AB901A199910FC463A4D1D626A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3969B2D6D21819A8AD885EC65A951995</key>
-			<input>CE7882AB901A199910FC463A4D1D626A</input>
-			<output>2334546032E850D0029CB1AD6AFCEA7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A5DE6B6E0F04978AF14EF6B3069F3EF</key>
-			<input>2334546032E850D0029CB1AD6AFCEA7A</input>
-			<output>88B4CF0D4AB7BD00BE98DA1626063A69</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>92E929BBAA47F478118C357D166FC986</key>
-			<input>88B4CF0D4AB7BD00BE98DA1626063A69</input>
-			<output>5A7FF831F28E5EC4A11DA524E2323925</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C896D18A58C9AABCB0919059F45DF0A3</key>
-			<input>5A7FF831F28E5EC4A11DA524E2323925</input>
-			<output>DF000551EF9BBD914969BD1B353BDC8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1796D4DBB752172DF9F82D42C1662C2F</key>
-			<input>DF000551EF9BBD914969BD1B353BDC8C</input>
-			<output>1EECBC47697208193C354E28D23E8CE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>097A689CDE201F34C5CD636A1358A0C6</key>
-			<input>1EECBC47697208193C354E28D23E8CE9</input>
-			<output>DF85CD4B3F821A7411F9F5D1FDF9DB85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D6FFA5D7E1A20540D43496BBEEA17B43</key>
-			<input>DF85CD4B3F821A7411F9F5D1FDF9DB85</input>
-			<output>038E765F1910D8C0C1251254605218F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D571D388F8B2DD80151184EF8EF363B1</key>
-			<input>038E765F1910D8C0C1251254605218F2</input>
-			<output>FBA8FE850294EEAEE75F56C974BF7DE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2ED92D0DFA26332EF24ED226FA4C1E55</key>
-			<input>FBA8FE850294EEAEE75F56C974BF7DE4</input>
-			<output>47F9D6F7A3E2A1BFA360EA1BA8B0450E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6920FBFA59C49291512E383D52FC5B5B</key>
-			<input>47F9D6F7A3E2A1BFA360EA1BA8B0450E</input>
-			<output>FD6F4A4825DE5E776BFD569223CB5A2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>944FB1B27C1ACCE63AD36EAF71370177</key>
-			<input>FD6F4A4825DE5E776BFD569223CB5A2C</input>
-			<output>10430ED7EE0FDB8FBC348F8E08286622</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>840CBF659215176986E7E121791F6755</key>
-			<input>10430ED7EE0FDB8FBC348F8E08286622</input>
-			<output>4B75D5C573185303B01EB649884758B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CF796AA0E10D446A36F95768F1583FE4</key>
-			<input>4B75D5C573185303B01EB649884758B1</input>
-			<output>85CCA4271A941517D55D05B4F29527C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4AB5CE87FB99517DE3A452DC03CD1827</key>
-			<input>85CCA4271A941517D55D05B4F29527C3</input>
-			<output>615EA2D44C52D639B6AD05D621B4A1A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2BEB6C53B7CB87445509570A2279B981</key>
-			<input>615EA2D44C52D639B6AD05D621B4A1A6</input>
-			<output>1DFD1E93D34ABFE45BA6BF6BD3FBF30E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>361672C0648138A00EAFE861F1824A8F</key>
-			<input>1DFD1E93D34ABFE45BA6BF6BD3FBF30E</input>
-			<output>B65C3F09FFFF752DEE2F8F2D441A51CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>804A4DC99B7E4D8DE080674CB5981B45</key>
-			<input>B65C3F09FFFF752DEE2F8F2D441A51CA</input>
-			<output>3B36D6FD4F7ACAD4681FF4398AC7AFB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BB7C9B34D4048759889F93753F5FB4F6</key>
-			<input>3B36D6FD4F7ACAD4681FF4398AC7AFB3</input>
-			<output>F3CDEFABE450D887CD585C280BB22367</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>48B1749F30545FDE45C7CF5D34ED9791</key>
-			<input>F3CDEFABE450D887CD585C280BB22367</input>
-			<output>ECC49251BAD79981CA1B1F683A843531</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A475E6CE8A83C65F8FDCD0350E69A2A0</key>
-			<input>ECC49251BAD79981CA1B1F683A843531</input>
-			<output>8BE43F0A30663108513A0E5F49F9152C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2F91D9C4BAE5F757DEE6DE6A4790B78C</key>
-			<input>8BE43F0A30663108513A0E5F49F9152C</input>
-			<output>DB3D559FCEBE0FAF3B218161BA6B3F07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F4AC8C5B745BF8F8E5C75F0BFDFB888B</key>
-			<input>DB3D559FCEBE0FAF3B218161BA6B3F07</input>
-			<output>8F0C3AE11B03433C07CABD26BF47A430</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7BA0B6BA6F58BBC4E20DE22D42BC2CBB</key>
-			<input>8F0C3AE11B03433C07CABD26BF47A430</input>
-			<output>73578DC3464CE3EE0314B206E1E9504C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>08F73B792914582AE119502BA3557CF7</key>
-			<input>73578DC3464CE3EE0314B206E1E9504C</input>
-			<output>60DA2C12B296804C608348A54EE1C60D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>682D176B9B82D866819A188EEDB4BAFA</key>
-			<input>60DA2C12B296804C608348A54EE1C60D</input>
-			<output>A960934724BDC61E5429E59856FC1902</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C14D842CBF3F1E78D5B3FD16BB48A3F8</key>
-			<input>A960934724BDC61E5429E59856FC1902</input>
-			<output>6B7E71535C6B7B09BDF19AF79CD58C95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA33F57FE3546571684267E1279D2F6D</key>
-			<input>6B7E71535C6B7B09BDF19AF79CD58C95</input>
-			<output>B95E0126EF320F1E6F288366DB7F2773</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>136DF4590C666A6F076AE487FCE2081E</key>
-			<input>B95E0126EF320F1E6F288366DB7F2773</input>
-			<output>6403B99D6FE0F85128FDD1F05B81AA6E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>776E4DC46386923E2F973577A763A270</key>
-			<input>6403B99D6FE0F85128FDD1F05B81AA6E</input>
-			<output>9EBA25F2D6CE5817F4317F3AFE6421E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E9D46836B548CA29DBA64A4D59078397</key>
-			<input>9EBA25F2D6CE5817F4317F3AFE6421E7</input>
-			<output>5E77AAE8A3C5EEAF4732BB310DAC3771</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B7A3C2DE168D24869C94F17C54ABB4E6</key>
-			<input>5E77AAE8A3C5EEAF4732BB310DAC3771</input>
-			<output>5FD00675371300B60C30EFCEE0171080</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E873C4AB219E243090A41EB2B4BCA466</key>
-			<input>5FD00675371300B60C30EFCEE0171080</input>
-			<output>482D701DBCE3AE108F65836C12A41C2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A05EB4B69D7D8A201FC19DDEA618B84A</key>
-			<input>482D701DBCE3AE108F65836C12A41C2C</input>
-			<output>2966D81642542925891D8F7409051E4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>89386CA0DF29A30596DC12AAAF1DA600</key>
-			<input>2966D81642542925891D8F7409051E4A</input>
-			<output>2FD6F3DB9DD1DEDED9F32D1806AE69D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A6EE9F7B42F87DDB4F2F3FB2A9B3CFD6</key>
-			<input>2FD6F3DB9DD1DEDED9F32D1806AE69D6</input>
-			<output>9B59277165B792790E29ADB53ADE60DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3DB7B80A274FEFA241069207936DAF0D</key>
-			<input>9B59277165B792790E29ADB53ADE60DB</input>
-			<output>A4873C5246044200B56C25FFADAB15D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>99308458614BADA2F46AB7F83EC6BADB</key>
-			<input>A4873C5246044200B56C25FFADAB15D6</input>
-			<output>9E2BBBD65649EB2A0CD974AD32BF382F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>071B3F8E37024688F8B3C3550C7982F4</key>
-			<input>9E2BBBD65649EB2A0CD974AD32BF382F</input>
-			<output>F83F4408675892DADA4833A43F22FFC8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FF247B86505AD45222FBF0F1335B7D3C</key>
-			<input>F83F4408675892DADA4833A43F22FFC8</input>
-			<output>19C337CCBF8D06DC68D9A16DB294EF44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6E74C4AEFD7D28E4A22519C81CF9278</key>
-			<input>19C337CCBF8D06DC68D9A16DB294EF44</input>
-			<output>433578E0901A4F4B134E6DCF68249FC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A5D234AA7FCD9DC5596C3C53E9EB0DBF</key>
-			<input>433578E0901A4F4B134E6DCF68249FC7</input>
-			<output>7F317CB0B3279C894B8A08289797FFF1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DAE3481ACCEA014C12E6347B7E7CF24E</key>
-			<input>7F317CB0B3279C894B8A08289797FFF1</input>
-			<output>AFFB4CA21A2A36FD24BB18C5AED17789</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>751804B8D6C037B1365D2CBED0AD85C7</key>
-			<input>AFFB4CA21A2A36FD24BB18C5AED17789</input>
-			<output>394DA5EC353A68B844D1BC24A468DA5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4C55A154E3FA5F09728C909A74C55F9B</key>
-			<input>394DA5EC353A68B844D1BC24A468DA5C</input>
-			<output>C649C174B98A06351F26C117D14FF290</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8A1C60205A70593C6DAA518DA58AAD0B</key>
-			<input>C649C174B98A06351F26C117D14FF290</input>
-			<output>2E122AA7C90B57304A80C19480627DD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A40E4A87937B0E0C272A901925E8D0DC</key>
-			<input>2E122AA7C90B57304A80C19480627DD7</input>
-			<output>9841ADE6A65834CE89959EFE8F059ED6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3C4FE76135233AC2AEBF0EE7AAED4E0A</key>
-			<input>9841ADE6A65834CE89959EFE8F059ED6</input>
-			<output>6B70D74762A4BEFBD15B9EC6835CB69B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>573F3026578784397FE4902129B1F891</key>
-			<input>6B70D74762A4BEFBD15B9EC6835CB69B</input>
-			<output>2E8B5DEF53E2294C0C953A9B8BD9399D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>79B46DC90465AD757371AABAA268C10C</key>
-			<input>2E8B5DEF53E2294C0C953A9B8BD9399D</input>
-			<output>D32D00F78BA00F6CEA792598B89779E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA996D3E8FC5A21999088F221AFFB8E8</key>
-			<input>D32D00F78BA00F6CEA792598B89779E4</input>
-			<output>7059DCC6CB8D295B95F2978F25927B31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DAC0B1F844488B420CFA18AD3F6DC3D9</key>
-			<input>7059DCC6CB8D295B95F2978F25927B31</input>
-			<output>833A1AFA7DC4CAF54F5B36981A98D7E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>59FAAB02398C41B743A12E3525F5143A</key>
-			<input>833A1AFA7DC4CAF54F5B36981A98D7E3</input>
-			<output>4CC5A526400B493AAA28909A2F4932BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>153F0E247987088DE989BEAF0ABC2685</key>
-			<input>4CC5A526400B493AAA28909A2F4932BF</input>
-			<output>D7134DEE2967104D161876A0802B3727</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C22C43CA50E018C0FF91C80F8A9711A2</key>
-			<input>D7134DEE2967104D161876A0802B3727</input>
-			<output>C45DB7BC52D7A0D53399B91EFB686D32</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0671F4760237B815CC08711171FF7C90</key>
-			<input>C45DB7BC52D7A0D53399B91EFB686D32</input>
-			<output>2F49EA2A8D7F44909BCF41C3640FD0AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>29381E5C8F48FC8557C730D215F0AC3B</key>
-			<input>2F49EA2A8D7F44909BCF41C3640FD0AB</input>
-			<output>6D416059758F4AC555A05D83E9CFC4DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44797E05FAC7B64002676D51FC3F68E5</key>
-			<input>6D416059758F4AC555A05D83E9CFC4DE</input>
-			<output>2721015DDF85EC87ED8480A87705CD37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>63587F5825425AC7EFE3EDF98B3AA5D2</key>
-			<input>2721015DDF85EC87ED8480A87705CD37</input>
-			<output>3B045F5DD5ADC6E5D341E2E6A5B919D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>585C2005F0EF9C223CA20F1F2E83BC01</key>
-			<input>3B045F5DD5ADC6E5D341E2E6A5B919D3</input>
-			<output>85DA9719FF16899B343BE56FDF9F86BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DD86B71C0FF915B90899EA70F11C3ABE</key>
-			<input>85DA9719FF16899B343BE56FDF9F86BF</input>
-			<output>67FD32AC2783C381E77AE0BB8ACEECCD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BA7B85B0287AD638EFE30ACB7BD2D673</key>
-			<input>67FD32AC2783C381E77AE0BB8ACEECCD</input>
-			<output>D8BEC715849E6A2A164F0139B8EC038E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>62C542A5ACE4BC12F9AC0BF2C33ED5FD</key>
-			<input>D8BEC715849E6A2A164F0139B8EC038E</input>
-			<output>6ECA9375A207148E36203C8BD885A520</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0C0FD1D00EE3A89CCF8C37791BBB70DD</key>
-			<input>6ECA9375A207148E36203C8BD885A520</input>
-			<output>A96877A8369B7086EF76D8281C066068</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A567A6783878D81A20FAEF5107BD10B5</key>
-			<input>A96877A8369B7086EF76D8281C066068</input>
-			<output>2D6DDF2C136F5ACDC12D33D52ECD6397</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>880A79542B1782D7E1D7DC8429707322</key>
-			<input>2D6DDF2C136F5ACDC12D33D52ECD6397</input>
-			<output>E2F3EFF780EEDAD7B820CF57F946AB21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6AF996A3ABF9580059F713D3D036D803</key>
-			<input>E2F3EFF780EEDAD7B820CF57F946AB21</input>
-			<output>D083829AB624DC46BF55F15C2ACA2CDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BA7A14391DDD8446E6A2E28FFAFCF4DF</key>
-			<input>D083829AB624DC46BF55F15C2ACA2CDC</input>
-			<output>637A1328711A701F011B0D66953A11FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D90007116CC7F459E7B9EFE96FC6E523</key>
-			<input>637A1328711A701F011B0D66953A11FC</input>
-			<output>9230F9E8C4AA7D697641B4E800AECE8B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4B30FEF9A86D893091F85B016F682BA8</key>
-			<input>9230F9E8C4AA7D697641B4E800AECE8B</input>
-			<output>CABC2F3EBCB87AEF4550060FB6F95C7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>818CD1C714D5F3DFD4A85D0ED99177D5</key>
-			<input>CABC2F3EBCB87AEF4550060FB6F95C7D</input>
-			<output>25C93DA609BEDFD48D88B7E005EA9D4D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A445EC611D6B2C0B5920EAEEDC7BEA98</key>
-			<input>25C93DA609BEDFD48D88B7E005EA9D4D</input>
-			<output>E445C1B43DC6AA0D47C766675676CA29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>40002DD520AD86061EE78C898A0D20B1</key>
-			<input>E445C1B43DC6AA0D47C766675676CA29</input>
-			<output>3F8A99E9D556F0CE0B0F3B4FE89A7C15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F8AB43CF5FB76C815E8B7C662975CA4</key>
-			<input>3F8A99E9D556F0CE0B0F3B4FE89A7C15</input>
-			<output>BE04197CADBDBC917AB288D85C554D4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C18EAD405846CA596F5A3F1E3EC211EE</key>
-			<input>BE04197CADBDBC917AB288D85C554D4A</input>
-			<output>2CF8FE59EED67AF15BD6C09C8DA37882</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ED765319B690B0A8348CFF82B361696C</key>
-			<input>2CF8FE59EED67AF15BD6C09C8DA37882</input>
-			<output>FF8CBF98D0B15198ACDC53D7247511C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>12FAEC816621E1309850AC55971478A9</key>
-			<input>FF8CBF98D0B15198ACDC53D7247511C5</input>
-			<output>27794678855BAE2BDE7EB75487813E28</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3583AAF9E37A4F1B462E1B0110954681</key>
-			<input>27794678855BAE2BDE7EB75487813E28</input>
-			<output>5681B2CECDE71663A864D0288607D86B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>630218372E9D5978EE4ACB2996929EEA</key>
-			<input>5681B2CECDE71663A864D0288607D86B</input>
-			<output>8936EB6E65F2CD2B3AFD1310B5B2D6C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EA34F3594B6F9453D4B7D83923204822</key>
-			<input>8936EB6E65F2CD2B3AFD1310B5B2D6C8</input>
-			<output>16045490148187B05CC46B80099A4530</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FC30A7C95FEE13E38873B3B92ABA0D12</key>
-			<input>16045490148187B05CC46B80099A4530</input>
-			<output>FE909FFB1D490B028867288FE682EEE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>02A0383242A718E100149B36CC38E3FB</key>
-			<input>FE909FFB1D490B028867288FE682EEE9</input>
-			<output>7B3E5C0017089A7842866ABA6364FFEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>799E643255AF82994292F18CAF5C1C11</key>
-			<input>7B3E5C0017089A7842866ABA6364FFEA</input>
-			<output>CC263F129618975F204AE499F115C69B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B5B85B20C3B715C662D815155E49DA8A</key>
-			<input>CC263F129618975F204AE499F115C69B</input>
-			<output>997ACE7EABF6EBF9CC7BBCC2670CF1A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2CC2955E6841FE3FAEA3A9D739452B2A</key>
-			<input>997ACE7EABF6EBF9CC7BBCC2670CF1A0</input>
-			<output>88D4A74B19278ED442068D0954DFA8B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A4163215716670EBECA524DE6D9A8398</key>
-			<input>88D4A74B19278ED442068D0954DFA8B2</input>
-			<output>F1CC6407AB254178DEFEF983112D6AC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>55DA5612DA433193325BDD5D7CB7E95D</key>
-			<input>F1CC6407AB254178DEFEF983112D6AC5</input>
-			<output>689A0E429CDAF1BD1197C160BF962544</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3D4058504699C02E23CC1C3DC321CC19</key>
-			<input>689A0E429CDAF1BD1197C160BF962544</input>
-			<output>54CF618196D978C0460CF8051DF5BE18</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>698F39D1D040B8EE65C0E438DED47201</key>
-			<input>54CF618196D978C0460CF8051DF5BE18</input>
-			<output>4AA0EF106F23B43C3DD371C66404C602</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>232FD6C1BF630CD2581395FEBAD0B403</key>
-			<input>4AA0EF106F23B43C3DD371C66404C602</input>
-			<output>A5185CAE1718143FC6CC329D9F233E17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>86378A6FA87B18ED9EDFA76325F38A14</key>
-			<input>A5185CAE1718143FC6CC329D9F233E17</input>
-			<output>A2A7E8855D25A0C475961E9B7ED7BE35</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>249062EAF55EB829EB49B9F85B243421</key>
-			<input>A2A7E8855D25A0C475961E9B7ED7BE35</input>
-			<output>E0B7536B335FB98F197F762B3B97CECE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C4273181C60101A6F236CFD360B3FAEF</key>
-			<input>E0B7536B335FB98F197F762B3B97CECE</input>
-			<output>C45C38164083871528D8B3BA7423BFEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>007B0997868286B3DAEE7C6914904505</key>
-			<input>C45C38164083871528D8B3BA7423BFEA</input>
-			<output>017AEBDEF43CF9664C582356A4A0C374</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0101E24972BE7FD596B65F3FB0308671</key>
-			<input>017AEBDEF43CF9664C582356A4A0C374</input>
-			<output>BBB48EA21B5EDCCF5346A7B4E6796BED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BAB56CEB69E0A31AC5F0F88B5649ED9C</key>
-			<input>BBB48EA21B5EDCCF5346A7B4E6796BED</input>
-			<output>3A53DFCB6067F9E98653136A44A4B537</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>80E6B32009875AF343A3EBE112ED58AB</key>
-			<input>3A53DFCB6067F9E98653136A44A4B537</input>
-			<output>951BA0E2272E46FC8CC3990E002EEFF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>15FD13C22EA91C0FCF6072EF12C3B75B</key>
-			<input>951BA0E2272E46FC8CC3990E002EEFF0</input>
-			<output>249202E40BC5892B9CEE96279E69432A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>316F1126256C9524538EE4C88CAAF471</key>
-			<input>249202E40BC5892B9CEE96279E69432A</input>
-			<output>B90CE5BF126163B37F75032A88AFD615</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8863F499370DF6972CFBE7E204052264</key>
-			<input>B90CE5BF126163B37F75032A88AFD615</input>
-			<output>E0BDD9E1FF493D82777BD7FB4035D309</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>68DE2D78C844CB155B8030194430F16D</key>
-			<input>E0BDD9E1FF493D82777BD7FB4035D309</input>
-			<output>0A3A5E377CDB2D1F6CB09E200494F578</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>62E4734FB49FE60A3730AE3940A40415</key>
-			<input>0A3A5E377CDB2D1F6CB09E200494F578</input>
-			<output>483DF6E2936389D1FC09921497AF8AE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2AD985AD27FC6FDBCB393C2DD70B8EF2</key>
-			<input>483DF6E2936389D1FC09921497AF8AE7</input>
-			<output>7A90B7B1E493109323A54AD285090EC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5049321CC36F7F48E89C76FF52028034</key>
-			<input>7A90B7B1E493109323A54AD285090EC6</input>
-			<output>B6471BF36A24B5B0CAC19BDD4C83DC50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E60E29EFA94BCAF8225DED221E815C64</key>
-			<input>B6471BF36A24B5B0CAC19BDD4C83DC50</input>
-			<output>EFBDC6ECADCE6AA5DBD302E7A0647700</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>09B3EF030485A05DF98EEFC5BEE52B64</key>
-			<input>EFBDC6ECADCE6AA5DBD302E7A0647700</input>
-			<output>783A89B88CC875F743B645BA1449CEE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>718966BB884DD5AABA38AA7FAAACE583</key>
-			<input>783A89B88CC875F743B645BA1449CEE7</input>
-			<output>EAD61D2577852D4EA276F3699EFB2BDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9B5F7B9EFFC8F8E4184E59163457CE5F</key>
-			<input>EAD61D2577852D4EA276F3699EFB2BDC</input>
-			<output>9E804D8814AF4FC67BA931D1C72774C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>05DF3616EB67B72263E768C7F370BA98</key>
-			<input>9E804D8814AF4FC67BA931D1C72774C7</input>
-			<output>7C383CC27D8C2B117AC72088EB334FD9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>79E70AD496EB9C331920484F1843F541</key>
-			<input>7C383CC27D8C2B117AC72088EB334FD9</input>
-			<output>9D4BE61ECECB2E60EC621A6320C0E844</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E4ACECCA5820B253F542522C38831D05</key>
-			<input>9D4BE61ECECB2E60EC621A6320C0E844</input>
-			<output>227992ADFC526D9AA99BA629E7523198</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6D57E67A472DFC95CD9F405DFD12C9D</key>
-			<input>227992ADFC526D9AA99BA629E7523198</input>
-			<output>93A265FB7650BE75CBDD8732F65F09A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>55771B9CD22261BC97047337298E2538</key>
-			<input>93A265FB7650BE75CBDD8732F65F09A5</input>
-			<output>5AB3354B8D28F041C5A7FDAB828996BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0FC42ED75F0A91FD52A38E9CAB07B384</key>
-			<input>5AB3354B8D28F041C5A7FDAB828996BC</input>
-			<output>BA5C6566701BD3791C2DA51CDC5AB6DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B5984BB12F1142844E8E2B80775D0559</key>
-			<input>BA5C6566701BD3791C2DA51CDC5AB6DD</input>
-			<output>2C96CE0653EFB1113C6E822DD4AE6200</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>990E85B77CFEF39572E0A9ADA3F36759</key>
-			<input>2C96CE0653EFB1113C6E822DD4AE6200</input>
-			<output>1065F5519472C78BADAB79EC00BBCABA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>896B70E6E88C341EDF4BD041A348ADE3</key>
-			<input>1065F5519472C78BADAB79EC00BBCABA</input>
-			<output>049AA7D4B4C1A59C1A16E3E5D8B46515</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8DF1D7325C4D9182C55D33A47BFCC8F6</key>
-			<input>049AA7D4B4C1A59C1A16E3E5D8B46515</input>
-			<output>C8F1C4179DD8FCD6942D07AF7392F481</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>45001325C1956D545170340B086E3C77</key>
-			<input>C8F1C4179DD8FCD6942D07AF7392F481</input>
-			<output>9C9AE90AFE18822197EA47FE2F48813F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D99AFA2F3F8DEF75C69A73F52726BD48</key>
-			<input>9C9AE90AFE18822197EA47FE2F48813F</input>
-			<output>DFBABE8688391CC868CDE134DDFFE1F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>062044A9B7B4F3BDAE5792C1FAD95CB8</key>
-			<input>DFBABE8688391CC868CDE134DDFFE1F0</input>
-			<output>72BE585F98DA4DC03998B5820D5230A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>749E1CF62F6EBE7D97CF2743F78B6C11</key>
-			<input>72BE585F98DA4DC03998B5820D5230A9</input>
-			<output>BCF3D47B888599A27AD63D6EFD8FB86F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C86DC88DA7EB27DFED191A2D0A04D47E</key>
-			<input>BCF3D47B888599A27AD63D6EFD8FB86F</input>
-			<output>62F7A2AD05BB46CB81B9601129100455</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA9A6A20A25061146CA07A3C2314D02B</key>
-			<input>62F7A2AD05BB46CB81B9601129100455</input>
-			<output>FA4D3B82232D19BE14A57422012C7751</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>50D751A2817D78AA78050E1E2238A77A</key>
-			<input>FA4D3B82232D19BE14A57422012C7751</input>
-			<output>40953AAA3D6C1BBE375A1E275754C98C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>10426B08BC1163144F5F1039756C6EF6</key>
-			<input>40953AAA3D6C1BBE375A1E275754C98C</input>
-			<output>CE9123C6A5A66AF788A8515721D646A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DED348CE19B709E3C7F7416E54BA2856</key>
-			<input>CE9123C6A5A66AF788A8515721D646A0</input>
-			<output>E45F3483E343F5C3C0AC77E955369AB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3A8C7C4DFAF4FC20075B3687018CB2E5</key>
-			<input>E45F3483E343F5C3C0AC77E955369AB3</input>
-			<output>6E7CE5F4BE070EC870691CDD494A767E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>54F099B944F3F2E877322A5A48C6C49B</key>
-			<input>6E7CE5F4BE070EC870691CDD494A767E</input>
-			<output>2BB1EE551920A632E90EB9E462280365</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F4177EC5DD354DA9E3C93BE2AEEC7FE</key>
-			<input>2BB1EE551920A632E90EB9E462280365</input>
-			<output>692E0FA8B1C39CB96A11E21EA1B3365E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>166F7844EC10C863F42D71A08B5DF1A0</key>
-			<input>692E0FA8B1C39CB96A11E21EA1B3365E</input>
-			<output>345C0DE98A9F472B6BCBE241BB346590</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>223375AD668F8F489FE693E130699430</key>
-			<input>345C0DE98A9F472B6BCBE241BB346590</input>
-			<output>D9D9313DC80FB90608614ECCC962207F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBEA4490AE80364E9787DD2DF90BB44F</key>
-			<input>D9D9313DC80FB90608614ECCC962207F</input>
-			<output>7AEE31C488D1DD54B9AD8EE3AEFE546C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>810475542651EB1A2E2A53CE57F5E023</key>
-			<input>7AEE31C488D1DD54B9AD8EE3AEFE546C</input>
-			<output>9CF27E1202080D9F3A9B5E02290204EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1DF60B462459E68514B10DCC7EF7E4C9</key>
-			<input>9CF27E1202080D9F3A9B5E02290204EA</input>
-			<output>670085C6D3B95C6017DB9163B9D2D565</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7AF68E80F7E0BAE5036A9CAFC72531AC</key>
-			<input>670085C6D3B95C6017DB9163B9D2D565</input>
-			<output>2A36E88DF74BA4B24283FEE52DDE5AA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>50C0660D00AB1E5741E9624AEAFB6B08</key>
-			<input>2A36E88DF74BA4B24283FEE52DDE5AA4</input>
-			<output>81B75B31F130467F4A1FA6CA4A329E5E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D1773D3CF19B58280BF6C480A0C9F556</key>
-			<input>81B75B31F130467F4A1FA6CA4A329E5E</input>
-			<output>D0A0347102BD11F9E2BD8E8A72D53ADC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>01D7094DF32649D1E94B4A0AD21CCF8A</key>
-			<input>D0A0347102BD11F9E2BD8E8A72D53ADC</input>
-			<output>97F0187509608DF1D9B27AB5D005E505</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>96271138FA46C42030F930BF02192A8F</key>
-			<input>97F0187509608DF1D9B27AB5D005E505</input>
-			<output>E60139E36ECD7B24C7C98772C92A1E87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>702628DB948BBF04F730B7CDCB333408</key>
-			<input>E60139E36ECD7B24C7C98772C92A1E87</input>
-			<output>7E92E19E07A469E7D49D3D07EF719157</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0EB4C945932FD6E323AD8ACA2442A55F</key>
-			<input>7E92E19E07A469E7D49D3D07EF719157</input>
-			<output>F5BF8B37136F2E1F6BEC6F572021E3BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
\ No newline at end of file
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB192.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6400 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo DEC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>48E31E9E256718F29229319C19F15BA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9643D8334A63DF4D48E31E9E256718F29229319C19F15BA4</key>
-			<input>48E31E9E256718F29229319C19F15BA4</input>
-			<output>CC01684BE9B29ED01EA7923E7D2380AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EF334C87288C43DE84E276D5CCD586228C8EA3A264D2DB0E</key>
-			<input>CC01684BE9B29ED01EA7923E7D2380AA</input>
-			<output>8726B4E66D6B8FBAA22D42981A5A40CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0891A045BB044B9D03C4C233A1BE09982EA3E13A7E889BC2</key>
-			<input>8726B4E66D6B8FBAA22D42981A5A40CC</input>
-			<output>83B9A21A0710FDB9C603797613772ED6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A5233519DE914717807D6029A6AEF421E8A0984C6DFFB514</key>
-			<input>83B9A21A0710FDB9C603797613772ED6</input>
-			<output>F15479A2B2C250F7E5C11D333D867CBD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1CB19726DB4C2C77129198B146CA4D60D61857F5079C9A9</key>
-			<input>F15479A2B2C250F7E5C11D333D867CBD</input>
-			<output>C1AF401BD4E62D8BA15BEC3690F2FB25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>04B03C15DB8324B3B0865990C08A895DAC3A6949C08B328C</key>
-			<input>C1AF401BD4E62D8BA15BEC3690F2FB25</input>
-			<output>01E01E3B10470286035EBD7502EF11A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1CB0164AB1E88EDB16647ABD0CD8BDBAF64D43CC264232C</key>
-			<input>01E01E3B10470286035EBD7502EF11A0</input>
-			<output>A681127825B718411291106AB416779A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>27BFD9CB824C525617E755D3F57A939ABDF5C456767254B6</key>
-			<input>A681127825B718411291106AB416779A</input>
-			<output>5C2EBA728589A9CAA15E28E7D8E59AA0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B308E0DCE108194C4BC9EFA170F33A501CABECB1AE97CE16</key>
-			<input>5C2EBA728589A9CAA15E28E7D8E59AA0</input>
-			<output>E738305279BE636648B6D5FFA3E97E4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FE787701EE66664BACF1DFF3094D5936541D394E0D7EB05C</key>
-			<input>E738305279BE636648B6D5FFA3E97E4A</input>
-			<output>5AF7D4C9439C7412FD7236E7685659DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DD93D742AFA0B19CF6060B3A4AD12D24A96F0FA96528E983</key>
-			<input>5AF7D4C9439C7412FD7236E7685659DF</input>
-			<output>30D0681D4060E24D1427D1AAC498DB1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D5D19C2FEA9DC94BC6D663270AB1CF69BD48DE03A1B03298</key>
-			<input>30D0681D4060E24D1427D1AAC498DB1B</input>
-			<output>FC9B6752064B1CCE75EBFBE91AF8F2CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EB0954ECE44620833A4D04750CFAD3A7C8A325EABB48C055</key>
-			<input>FC9B6752064B1CCE75EBFBE91AF8F2CD</input>
-			<output>61E6AE6E035BCC3C94EF00101216904A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6E5AB38545B6DF75BABAA1B0FA11F9B5C4C25FAA95E501F</key>
-			<input>61E6AE6E035BCC3C94EF00101216904A</input>
-			<output>BF738A4E55F036126CC9B56DED530B8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E8C670F71E5B62B6E4D820555A51298930859097440D5B93</key>
-			<input>BF738A4E55F036126CC9B56DED530B8C</input>
-			<output>6B9CD4C227FC30C14FD881B838D9F8F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>23FF647DD75770418F44F4977DAD19487F5D112F7CD4A366</key>
-			<input>6B9CD4C227FC30C14FD881B838D9F8F5</input>
-			<output>6173EF2B5C9B569A1BD4B62C7C913844</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DB94124B11CC03D9EE371BBC21364FD26489A70300459B22</key>
-			<input>6173EF2B5C9B569A1BD4B62C7C913844</input>
-			<output>709EF90F853E55123A917FB258E900F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4821CA96B50ACA049EA9E2B3A4081AC05E18D8B158AC9BDB</key>
-			<input>709EF90F853E55123A917FB258E900F9</input>
-			<output>5D73D99E47B1DB28E0ED9B9D1C212CFA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FA47C5BF5E688F8BC3DA3B2DE3B9C1E8BEF5432C448DB721</key>
-			<input>5D73D99E47B1DB28E0ED9B9D1C212CFA</input>
-			<output>32016FFCB2AA5EA6EA0C808F60613CA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C66A73E0D1261C2CF1DB54D151139F4E54F9C3A324EC8B83</key>
-			<input>32016FFCB2AA5EA6EA0C808F60613CA2</input>
-			<output>CAA3704F7FD76EBACB1D2A266A0899FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FAE8E04094E572A33B78249E2EC4F1F49FE4E9854EE4127C</key>
-			<input>CAA3704F7FD76EBACB1D2A266A0899FF</input>
-			<output>E32DBD027A1A36B2EC8D0A98C9293E7E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8F2FBF9E40182950D855999C54DEC7467369E31D87CD2C02</key>
-			<input>E32DBD027A1A36B2EC8D0A98C9293E7E</input>
-			<output>1C117311882C0D5159A9DFD5C3C68D95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F6FB8F6DFAA034BFC444EA8DDCF2CA172AC03CC8440BA197</key>
-			<input>1C117311882C0D5159A9DFD5C3C68D95</input>
-			<output>5E379C2471DB04582CD861E6F8A419D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>699DCA67F4EF50C49A7376A9AD29CE4F06185D2EBCAFB840</key>
-			<input>5E379C2471DB04582CD861E6F8A419D7</input>
-			<output>5932A84C6ACBD8452EE9AC47CE4B6BD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F568B4F126486CE4C341DEE5C7E2160A28F1F16972E4D398</key>
-			<input>5932A84C6ACBD8452EE9AC47CE4B6BD8</input>
-			<output>00634EED1D18C84AE0A8198CF791DE81</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C49E5E8D366B6FE7C3229008DAFADE40C859E8E585750D19</key>
-			<input>00634EED1D18C84AE0A8198CF791DE81</input>
-			<output>E10C93B1C466FFF0B6EB6DB50AF271EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>22B07DB9ED443A9D222E03B91E9C21B07EB285508F877CF5</key>
-			<input>E10C93B1C466FFF0B6EB6DB50AF271EC</input>
-			<output>58A0C680F565E63A7E41C6EAC50A3B01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2BDF4CCE2B4CAFDD7A8EC539EBF9C78A00F343BA4A8D47F4</key>
-			<input>58A0C680F565E63A7E41C6EAC50A3B01</input>
-			<output>92921B2AA7FC6367199A4C42FAE0E2A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E2BE29F6905D41C5E81CDE134C05A4ED19690FF8B06DA550</key>
-			<input>92921B2AA7FC6367199A4C42FAE0E2A4</input>
-			<output>B6EC2A692D2657E5506F2C3BA1912799</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E43634FD3DB719C75EF0F47A6123F308490623C311FC82C9</key>
-			<input>B6EC2A692D2657E5506F2C3BA1912799</input>
-			<output>23ECD0813B1A7090CF9BE874D6B0846C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ACA2F21EF46E30B57D1C24FB5A398398869DCBB7C74C06A5</key>
-			<input>23ECD0813B1A7090CF9BE874D6B0846C</input>
-			<output>04BD52F4C1AB8DF4816A6E11F8B54452</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0130B37AFE24D66079A1760F9B920E6C07F7A5A63FF942F7</key>
-			<input>04BD52F4C1AB8DF4816A6E11F8B54452</input>
-			<output>DFA0074DEFEDB44D0D96AD6020D1A37D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>00AC6BF5E3AD20FFA6017142747FBA210A6108C61F28E18A</key>
-			<input>DFA0074DEFEDB44D0D96AD6020D1A37D</input>
-			<output>5AB15057E05F73FAAF12C0EC26D3F02F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E3A70EBF3D9167AAFCB021159420C9DBA573C82A39FB11A5</key>
-			<input>5AB15057E05F73FAAF12C0EC26D3F02F</input>
-			<output>6ECC2F23AB7854E97F215C52EF1E62E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CBCD9116DC78FA64927C0E363F589D32DA529478D6E57345</key>
-			<input>6ECC2F23AB7854E97F215C52EF1E62E0</input>
-			<output>930B3EBDE0989049056022E83FC9EF1E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBB5E5462DE715180177308BDFC00D7BDF32B690E92C9C5B</key>
-			<input>930B3EBDE0989049056022E83FC9EF1E</input>
-			<output>1EE4ABB9ACD70B93A83BCD8751F858DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E5D2B1ACD8BE6DF21F939B32731706E877097B17B8D4C485</key>
-			<input>1EE4ABB9ACD70B93A83BCD8751F858DE</input>
-			<output>FCAC610EA0D309C6D36EED5A4BC04036</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>54DD0B6CB083BDE8E33FFA3CD3C40F2EA467964DF31484B3</key>
-			<input>FCAC610EA0D309C6D36EED5A4BC04036</input>
-			<output>161D5EE8F50A3F69A11ADFEAF1A2A2AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>28309F7EB99AAEE1F522A4D426CE3047057D49A702B62619</key>
-			<input>161D5EE8F50A3F69A11ADFEAF1A2A2AA</input>
-			<output>D9D365B061D2F3BF9DF94181837621B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E55ECDDFAE95A2C92CF1C164471CC3F89884082681C007AD</key>
-			<input>D9D365B061D2F3BF9DF94181837621B4</input>
-			<output>938647A6AAD455D89A6DFEFE60D62331</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C9CEE1C9D89DF76ABF7786C2EDC8962002E9F6D8E116249C</key>
-			<input>938647A6AAD455D89A6DFEFE60D62331</input>
-			<output>06A002DDC7DC4F22F9B1D5734C312AAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B26709109B66C916B9D7841F2A14D902FB5823ABAD270E36</key>
-			<input>06A002DDC7DC4F22F9B1D5734C312AAA</input>
-			<output>BB45E9BE2237E3288F56EDD0D9AD6734</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2FAD2FF32E10680502926DA108233A2A740ECE7B748A6902</key>
-			<input>BB45E9BE2237E3288F56EDD0D9AD6734</input>
-			<output>CF5A1338F5FA7ED4C77F6EA3836F079A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>63D3D62540C790D1CDC87E99FDD944FEB371A0D8F7E56E98</key>
-			<input>CF5A1338F5FA7ED4C77F6EA3836F079A</input>
-			<output>32F2D628117ADB46383FC101B58E95A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0DF38CE71CF26A19FF3AA8B1ECA39FB88B4E61D9426BFB3E</key>
-			<input>32F2D628117ADB46383FC101B58E95A6</input>
-			<output>3A3CCEA99D43887AC64498AB4EFC87DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7EEEB78A0C9BAA9FC506661871E017C24D0AF9720C977CE3</key>
-			<input>3A3CCEA99D43887AC64498AB4EFC87DD</input>
-			<output>787DC1C632C4AA77D42324338C510146</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4DF02EE427AE29A1BD7BA7DE4324BDB59929DD4180C67DA5</key>
-			<input>787DC1C632C4AA77D42324338C510146</input>
-			<output>BB0635A471D26B80E5E387E4F14A1626</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D6983F5E8BE728D9067D927A32F6D6357CCA5AA5718C6B83</key>
-			<input>BB0635A471D26B80E5E387E4F14A1626</input>
-			<output>14A9AA3EE6343C2D57E0F2ED7A05DC0D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD84A7CD471613B512D43844D4C2EA182B2AA8480B89B78E</key>
-			<input>14A9AA3EE6343C2D57E0F2ED7A05DC0D</input>
-			<output>25E254AD6C33908BC07B3DEC4052F549</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E54A2146242AADFB37366CE9B8F17A93EB5195A44BDB42C7</key>
-			<input>25E254AD6C33908BC07B3DEC4052F549</input>
-			<output>10E09F426E6F33CD21DF1EB748A46088</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0517B745BCE24E0527D6F3ABD69E495ECA8E8B13037F224F</key>
-			<input>10E09F426E6F33CD21DF1EB748A46088</input>
-			<output>B65D2FFE83F9469AA2B1ABC559EAAB87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8297790C75E8931C918BDC5555670FC4683F20D65A9589C8</key>
-			<input>B65D2FFE83F9469AA2B1ABC559EAAB87</input>
-			<output>E743F6441CCF9703FF4B8E3F4921ACDF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7EC47C0C5663CD4C76C82A1149A898C79774AEE913B42517</key>
-			<input>E743F6441CCF9703FF4B8E3F4921ACDF</input>
-			<output>BECC5CF2F2C62A9E7D3CF979A9E96F94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBB1F10529FABEB3C80476E3BB6EB259EA485790BA5D4A83</key>
-			<input>BECC5CF2F2C62A9E7D3CF979A9E96F94</input>
-			<output>3718199958EAA473B980B95F9C76E03F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EE4113D30720269DFF1C6F7AE384162A53C8EECF262BAABC</key>
-			<input>3718199958EAA473B980B95F9C76E03F</input>
-			<output>D15525B8BBB6D209E0BB3B6F5ACB2556</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>488286944DC6B0842E494AC25832C423B373D5A07CE08FEA</key>
-			<input>D15525B8BBB6D209E0BB3B6F5ACB2556</input>
-			<output>0270AF07DDA52DF7CA7B0EE7DF098A80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A32A880A84E7EDB82C39E5C58597E9D47908DB47A3E9056A</key>
-			<input>0270AF07DDA52DF7CA7B0EE7DF098A80</input>
-			<output>2D380F99A182CD14CFFEF5E88B93B416</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DBD0FD5053BC52C60101EA5C241524C0B6F62EAF287AB17C</key>
-			<input>2D380F99A182CD14CFFEF5E88B93B416</input>
-			<output>47FE8C67DCBC616E4C984D323EA4A45B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D79F78A4726F5FCA46FF663BF8A945AEFA6E639D16DE1527</key>
-			<input>47FE8C67DCBC616E4C984D323EA4A45B</input>
-			<output>FA595C69C3286771FB8C921DFBBFFC2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0C88AAD46F951FB6BCA63A523B8122DF01E2F180ED61E909</key>
-			<input>FA595C69C3286771FB8C921DFBBFFC2E</input>
-			<output>8FA64C511FCE6FC987B327D12EBDADAD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>762EEA21D382067E33007603244F4D168651D651C3DC44A4</key>
-			<input>8FA64C511FCE6FC987B327D12EBDADAD</input>
-			<output>8F52C709508408B40C241FD38E515E76</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EA05788C20FB364EBC52B10A74CB45A28A75C9824D8D1AD2</key>
-			<input>8F52C709508408B40C241FD38E515E76</input>
-			<output>7CFD332B306684AC92279CE06F1287D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D4B2582B094D874DC0AF822144ADC10E18525562229F9D0A</key>
-			<input>7CFD332B306684AC92279CE06F1287D8</input>
-			<output>0DA14F6619665E0128044355481BD658</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C080E7033FDF1BCFCD0ECD475DCB9F0F305616376A844B52</key>
-			<input>0DA14F6619665E0128044355481BD658</input>
-			<output>FEDEBE73AA4047AF27E86A8B9E8E2ED7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C5BA9667999CF2D633D07334F78BD8A017BE7CBCF40A6585</key>
-			<input>FEDEBE73AA4047AF27E86A8B9E8E2ED7</input>
-			<output>12CD6896129E376AAB9C0E980F3B7CD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>65FF092A539C4600211D1BA2E515EFCABC227224FB311957</key>
-			<input>12CD6896129E376AAB9C0E980F3B7CD2</input>
-			<output>04E7939B352F7B5C38B7EC5784EC78C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F98E7062F9EBE61C25FA8839D03A949684959E737FDD6195</key>
-			<input>04E7939B352F7B5C38B7EC5784EC78C2</input>
-			<output>0184996278A57E36E608E95616C46964</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>306FBEFB3BF4E241247E115BA89FEAA0629D7725691908F1</key>
-			<input>0184996278A57E36E608E95616C46964</input>
-			<output>92179E392E05C8B96A0CFAC36109B09E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EE641F5DB58F9057B6698F62869A221908918DE60810B86F</key>
-			<input>92179E392E05C8B96A0CFAC36109B09E</input>
-			<output>7F197B01172C809635198E6B156D13BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EADB8B255F98FD9DC970F46391B6A28F3D88038D1D7DABD3</key>
-			<input>7F197B01172C809635198E6B156D13BC</input>
-			<output>46F6DD79AD079DCFBC451B24ECDDA4FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>47225D75FE68FFA08F86291A3CB13F4081CD18A9F1A00F29</key>
-			<input>46F6DD79AD079DCFBC451B24ECDDA4FA</input>
-			<output>B5DAA09E3545F92FF44176187A1F9179</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7CDECC21E72E54F43A5C898409F4C66F758C6EB18BBF9E50</key>
-			<input>B5DAA09E3545F92FF44176187A1F9179</input>
-			<output>F51A35F3DD410132EEC9E9F22A6F6FAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>75D1AAFDBFE72C94CF46BC77D4B5C75D9B458743A1D0F1FB</key>
-			<input>F51A35F3DD410132EEC9E9F22A6F6FAB</input>
-			<output>D1CC6D95B58793C342CF14AF250D5E40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>41874C54BD58757A1E8AD1E26132549ED98A93EC84DDAFBB</key>
-			<input>D1CC6D95B58793C342CF14AF250D5E40</input>
-			<output>A1FAB3B352A887A829357528FED4B80E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1D94704F4A51A5CABF706251339AD336F0BFE6C47A0917B5</key>
-			<input>A1FAB3B352A887A829357528FED4B80E</input>
-			<output>CBC6473B3AA4DE2D64EED554CA241EAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A41B52E0AE7E568074B6256A093E0D1B94513390B02D0919</key>
-			<input>CBC6473B3AA4DE2D64EED554CA241EAC</input>
-			<output>19DC6E89D71DCE5DCECD1A6F85C3FBD6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>85F21BCD70691F596D6A4BE3DE23C3465A9C29FF35EEF2CF</key>
-			<input>19DC6E89D71DCE5DCECD1A6F85C3FBD6</input>
-			<output>EC6974E51B21F26A100E66183C68FD15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CAD0B254A88B669681033F06C502312C4A924FE709860FDA</key>
-			<input>EC6974E51B21F26A100E66183C68FD15</input>
-			<output>A16B6F78009B6E30CB758E87AD4D8034</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8AC49B19582BFCF32068507EC5995F1C81E7C160A4CB8FEE</key>
-			<input>A16B6F78009B6E30CB758E87AD4D8034</input>
-			<output>CB5C20AAFA898193BC34FF3EE460B313</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>988F8D4F3A66AC99EB3470D43F10DE8F3DD33E5E40AB3CFD</key>
-			<input>CB5C20AAFA898193BC34FF3EE460B313</input>
-			<output>397F92C8E69E0916E30DC6889779799E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE2D26C6130E006ED24BE21CD98ED799DEDEF8D6D7D24563</key>
-			<input>397F92C8E69E0916E30DC6889779799E</input>
-			<output>9A9CBD9380E2187855CAE5A73D58480F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BF6BE6D55C04977348D75F8F596CCFE18B141D71EA8A0D6C</key>
-			<input>9A9CBD9380E2187855CAE5A73D58480F</input>
-			<output>B67B360EE0FF297D3662F5B7CDB82CB9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6582BCA895FA1221FEAC6981B993E69CBD76E8C6273221D5</key>
-			<input>B67B360EE0FF297D3662F5B7CDB82CB9</input>
-			<output>2D146ED9236082D2D71810969A1AB1FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6AC68BB8BBC7F520D3B807589AF3644E6A6EF850BD28902E</key>
-			<input>2D146ED9236082D2D71810969A1AB1FB</input>
-			<output>4B9F55652C40B6DA963A98D875ADACE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>180DAB1B14A92DB29827523DB6B3D294FC546088C8853CCA</key>
-			<input>4B9F55652C40B6DA963A98D875ADACE4</input>
-			<output>FC0A8A3D511F5FAFF0A3DD13B49E5A13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7ABD7440D5EE5FE2642DD800E7AC8D3B0CF7BD9B7C1B66D9</key>
-			<input>FC0A8A3D511F5FAFF0A3DD13B49E5A13</input>
-			<output>4231C02AD3231C3EB7AEB9135B95AC4B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>54ACAE182B5FDACF261C182A348F9105BB590488278ECA92</key>
-			<input>4231C02AD3231C3EB7AEB9135B95AC4B</input>
-			<output>4C3A949ACCCBB55F9415C81B1413FD9D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>015706F99E81CC026A268CB0F844245A2F4CCC93339D370F</key>
-			<input>4C3A949ACCCBB55F9415C81B1413FD9D</input>
-			<output>E9B1CEAF77B64A88CC3E020B16E1BF7E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>929BD0A1CC6450E78397421F8FF26ED2E372CE98257C8871</key>
-			<input>E9B1CEAF77B64A88CC3E020B16E1BF7E</input>
-			<output>98FFEA0827068CB0B508CA520D8B43F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9B81EC47D8442D311B68A817A8F4E262567A04CA28F7CB86</key>
-			<input>98FFEA0827068CB0B508CA520D8B43F7</input>
-			<output>BEDA572C3CA3FEF97F7071DA35414EA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>93B211B869CBECCBA5B2FF3B94571C9B290A75101DB68527</key>
-			<input>BEDA572C3CA3FEF97F7071DA35414EA1</input>
-			<output>35E8CB8302748C8623A09980909FB516</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BC5320E4025EB960905A34B89623901D0AAAEC908D293031</key>
-			<input>35E8CB8302748C8623A09980909FB516</input>
-			<output>E136148B2FA5AF5CD3F8BC3883566CB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C4EC937F948D0B5A716C2033B9863F41D95250A80E7F5C89</key>
-			<input>E136148B2FA5AF5CD3F8BC3883566CB8</input>
-			<output>B7CE40E3E3D30191CDF4AB5BE98F347A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6D381856C149D9DCC6A260D05A553ED014A6FBF3E7F068F3</key>
-			<input>B7CE40E3E3D30191CDF4AB5BE98F347A</input>
-			<output>A821E934DAAE37FF3136E769DAC315FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A3679C5957C656DE6E8389E480FB092F25901C9A3D337D08</key>
-			<input>A821E934DAAE37FF3136E769DAC315FB</input>
-			<output>4227B96A0CC6CA1C21BCF8B1ADB3BDE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BE7112453B1DF3EC2CA4308E8C3DC333042CE42B9080C0E9</key>
-			<input>4227B96A0CC6CA1C21BCF8B1ADB3BDE1</input>
-			<output>EE36BBFDDF19165F9E64AE79B4CF06A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AEA4A2D5CD0A2FC7C2928B735324D56C9A484A52244FC640</key>
-			<input>EE36BBFDDF19165F9E64AE79B4CF06A9</input>
-			<output>C3DFE088C6767BC939F492C1FA9604CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A16FC5F22F03984F014D6BFB9552AEA5A3BCD893DED9C28D</key>
-			<input>C3DFE088C6767BC939F492C1FA9604CD</input>
-			<output>DB1202E468119D977868F6E294E3CC3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A4E0565DD419BDD1DA5F691FFD433332DBD42E714A3A0EB7</key>
-			<input>DB1202E468119D977868F6E294E3CC3A</input>
-			<output>6F2F682BA4F95EB8C5B883C7660B2653</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3CAEE44D0E85058EB570013459BA6D8A1E6CADB62C3128E4</key>
-			<input>6F2F682BA4F95EB8C5B883C7660B2653</input>
-			<output>1036B4AA6C897D36DFE6658A953E5075</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E883A500CA89963A546B59E353310BCC18AC83CB90F7891</key>
-			<input>1036B4AA6C897D36DFE6658A953E5075</input>
-			<output>04FCB3A81E5319A16CCF212719906229</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ADED5A405C5C095AA1BA06362B60091DAD45E91BA09F1AB8</key>
-			<input>04FCB3A81E5319A16CCF212719906229</input>
-			<output>CD79BAC069BB58605D43005B927816E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5499B441405D16B06CC3BCF642DB517DF006E94032E70C5D</key>
-			<input>CD79BAC069BB58605D43005B927816E5</input>
-			<output>DB5B3C625D1F66CF28A86CC100472398</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D31221246382CA8EB79880941FC437B2D8AE858132A02FC5</key>
-			<input>DB5B3C625D1F66CF28A86CC100472398</input>
-			<output>D8732A2C16EC6AE202371AF03A6F91E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CDF928E97051F08B6FEBAAB809285D50DA999F7108CFBE2D</key>
-			<input>D8732A2C16EC6AE202371AF03A6F91E8</input>
-			<output>F0A1A353A8AB9A893F621F0BEA3B4F01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>10CC2EED0ECBD1E69F4A09EBA183C7D9E5FB807AE2F4F12C</key>
-			<input>F0A1A353A8AB9A893F621F0BEA3B4F01</input>
-			<output>27E4451BD15E43F301E138713DC12E78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>03C4F5E1FD3D34D1B8AE4CF070DD842AE41AB80BDF35DF54</key>
-			<input>27E4451BD15E43F301E138713DC12E78</input>
-			<output>C7FA931DA414CB37A9BDB6F128E082EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CC5D7D36D085E3257F54DFEDD4C94F1D4DA70EFAF7D55DBA</key>
-			<input>C7FA931DA414CB37A9BDB6F128E082EE</input>
-			<output>A6777D51A0A1C94DD74A18795341015F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9F4EE4750FF3F53AD923A2BC746886509AED1683A4945CE5</key>
-			<input>A6777D51A0A1C94DD74A18795341015F</input>
-			<output>32A4D930A5597E02D7076E399D18D895</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8525417BB6D8095BEB877B8CD131F8524DEA78BA398C8470</key>
-			<input>32A4D930A5597E02D7076E399D18D895</input>
-			<output>1B78FCF274EEB1E597998EE4EFFF9F8B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>54EFA98071F1EF62F0FF877EA5DF49B7DA73F65ED6731BFB</key>
-			<input>1B78FCF274EEB1E597998EE4EFFF9F8B</input>
-			<output>2997FEE2823CC84DA14E8439449F5C7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2505931CE4D41D16D968799C27E381FA7B3D726792EC4787</key>
-			<input>2997FEE2823CC84DA14E8439449F5C7C</input>
-			<output>810534A9E8DB2808FEE681B13C04411D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C2DF863BEB4F27AB586D4D35CF38A9F285DBF3D6AEE8069A</key>
-			<input>810534A9E8DB2808FEE681B13C04411D</input>
-			<output>BE2380994365F1D7FC8278E86C8B497D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>036C0C95D0C26B66E64ECDAC8C5D582579598B3EC2634FE7</key>
-			<input>BE2380994365F1D7FC8278E86C8B497D</input>
-			<output>EFEC3977D5A21DC4AC786E786CA3ECE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD05AD63A0A9F1B509A2F4DB59FF45E1D521E546AEC0A30E</key>
-			<input>EFEC3977D5A21DC4AC786E786CA3ECE9</input>
-			<output>22A7280D8231895EA4F0B6A39AC583C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A16DFA00981597B42B05DCD6DBCECCBF71D153E5340520CD</key>
-			<input>22A7280D8231895EA4F0B6A39AC583C3</input>
-			<output>0CC61E91B3CBCD0E190D52059E27647A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ABC1AD453235832727C3C247680501B168DC01E0AA2244B7</key>
-			<input>0CC61E91B3CBCD0E190D52059E27647A</input>
-			<output>5CE91F77F7C8F0AB1BBA802D2FFF0E9B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>64D40ACA0F526EC67B2ADD309FCDF11A736681CD85DD4A2C</key>
-			<input>5CE91F77F7C8F0AB1BBA802D2FFF0E9B</input>
-			<output>255459BE5A27E08942A049F6EC44582E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8BB5C7D8B2B177855E7E848EC5EA119331C6C83B69991202</key>
-			<input>255459BE5A27E08942A049F6EC44582E</input>
-			<output>28E2E20115C3665D9D88CB74681301EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E30FCC4C182F471769C668FD02977CEAC4E034F018A13E8</key>
-			<input>28E2E20115C3665D9D88CB74681301EA</input>
-			<output>2E96E6BBCD999F4B1507C7EC9E4B8430</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>906B361E9D72E107580A80341DB0E885B949C4A39FC197D8</key>
-			<input>2E96E6BBCD999F4B1507C7EC9E4B8430</input>
-			<output>03DED0A95164E5FA215E9C49C433E95B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F656F5D9D973C02C5BD4509D4CD40D7F981758EA5BF27E83</key>
-			<input>03DED0A95164E5FA215E9C49C433E95B</input>
-			<output>AD9C16D2567B73FCA4866FE16CF09CDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8811A4ACDF37A140F648464F1AAF7E833C91370B3702E259</key>
-			<input>AD9C16D2567B73FCA4866FE16CF09CDA</input>
-			<output>68539BFF0F8CC23A0A3267796A11B75C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E5AF2E8CDBAD01589E1BDDB01523BCB936A350725D135505</key>
-			<input>68539BFF0F8CC23A0A3267796A11B75C</input>
-			<output>B15F623E5A7D73452A419EB04AFCF72E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C9E743CAD731A62E2F44BF8E4F5ECFFC1CE2CEC217EFA22B</key>
-			<input>B15F623E5A7D73452A419EB04AFCF72E</input>
-			<output>520142AFDA69E9CFA98D8DD59CCB12BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6CF6C656FFBB77807D45FD2195372633B56F43178B24B097</key>
-			<input>520142AFDA69E9CFA98D8DD59CCB12BC</input>
-			<output>7EC2A8430F23A5E183E0032DAB5232C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>772CEE9F934D57D4038755629A1483D2368F403A20768252</key>
-			<input>7EC2A8430F23A5E183E0032DAB5232C5</input>
-			<output>E5E3A5D968B1FF774B55CCA06BE3BD65</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9A4DAB93F3C74EBBE664F0BBF2A57CA57DDA8C9A4B953F37</key>
-			<input>E5E3A5D968B1FF774B55CCA06BE3BD65</input>
-			<output>9608643D0A34DA28372A7E7E34427E1B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EF0F60BCBA3374E0706C9486F891A68D4AF0F2E47FD7412C</key>
-			<input>9608643D0A34DA28372A7E7E34427E1B</input>
-			<output>B22BD410584F29610801B18EDAB1BD19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE013A6C3440AFF3C2474096A0DE8FEC42F1436AA566FC35</key>
-			<input>B22BD410584F29610801B18EDAB1BD19</input>
-			<output>ADEC4519F1A7AD74BCCECABEDCF20D73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2B5B547A934A5A376FAB058F51792298FE3F89D47994F146</key>
-			<input>ADEC4519F1A7AD74BCCECABEDCF20D73</input>
-			<output>E04D4FF54191BEEEF5B295A32DA2ADE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BF356F2FFC2C538F8FE64A7A10E89C760B8D1C7754365CA3</key>
-			<input>E04D4FF54191BEEEF5B295A32DA2ADE5</input>
-			<output>3F9531EDD5072F7A9F2A62ECC2CCE50A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7CEBD7310CC4791AB0737B97C5EFB30C94A77E9B96FAB9A9</key>
-			<input>3F9531EDD5072F7A9F2A62ECC2CCE50A</input>
-			<output>C3DC95781FAE7BB6C02BD08B3617DDF1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>192741D2AB9C887673AFEEEFDA41C8BA548CAE10A0ED6458</key>
-			<input>C3DC95781FAE7BB6C02BD08B3617DDF1</input>
-			<output>F69B837F168B9A9E637E7357B65F2B60</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>38552740A79FB5BF85346D90CCCA522437F2DD4716B24F38</key>
-			<input>F69B837F168B9A9E637E7357B65F2B60</input>
-			<output>40DCDF58E7EFDD62C114A83F8AC898BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A0AED2C07C2168B6C5E8B2C82B258F46F6E675789C7AD783</key>
-			<input>40DCDF58E7EFDD62C114A83F8AC898BB</input>
-			<output>27F78F3BD8E04A8646EBF364155A71ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2B4FAEBF17993E12E21F3DF3F3C5C5C0B00D861C8920A66E</key>
-			<input>27F78F3BD8E04A8646EBF364155A71ED</input>
-			<output>F305DFC8EAD44E786F59B0551C7104F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>96819F6E9738209F111AE23B19118BB8DF5436499551A29B</key>
-			<input>F305DFC8EAD44E786F59B0551C7104F5</input>
-			<output>2E47F833BE7C06ED1E42AC11366F4BEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AAEA16BAC3E84DD73F5D1A08A76D8D55C1169A58A33EE974</key>
-			<input>2E47F833BE7C06ED1E42AC11366F4BEF</input>
-			<output>A9D3A511C3D76779B607AAB2556823AD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F66BA47C56AC5A36968EBF1964BAEA2C771130EAF656CAD9</key>
-			<input>A9D3A511C3D76779B607AAB2556823AD</input>
-			<output>153A7CC2387C05289F759C85076CDD88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1D892BCCFAF3DA1083B4C3DB5CC6EF04E864AC6FF13A1751</key>
-			<input>153A7CC2387C05289F759C85076CDD88</input>
-			<output>76B6089030D914F0F4C6078193207A7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DAEBAF980095A397F502CB4B6C1FFBF41CA2ABEE621A6D2C</key>
-			<input>76B6089030D914F0F4C6078193207A7D</input>
-			<output>EB71D127848BA397451D45801830461E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>85F86FADA92076AB1E731A6CE894586359BFEE6E7A2A2B32</key>
-			<input>EB71D127848BA397451D45801830461E</input>
-			<output>B79D9BE1B2DB808B412413C203C710DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BEADDA5CE1E7F3D4A9EE818D5A4FD8E8189BFDAC79ED3BED</key>
-			<input>B79D9BE1B2DB808B412413C203C710DF</input>
-			<output>E6423467C3CA69D94C944FA2A97BB61F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D4664C8DCFA8304D4FACB5EA9985B131540FB20ED0968DF2</key>
-			<input>E6423467C3CA69D94C944FA2A97BB61F</input>
-			<output>18EFF53B7D62A9D9ED8AB9ABE67FC110</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9CCF1EEAF55FEA5A574340D1E4E718E8B9850BA536E94CE2</key>
-			<input>18EFF53B7D62A9D9ED8AB9ABE67FC110</input>
-			<output>8E6A4AC577153D806ED71A07319CAB67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7D840184CB9D3A05D9290A1493F22568D75211A20775E785</key>
-			<input>8E6A4AC577153D806ED71A07319CAB67</input>
-			<output>B7B23D8E7D344F39B3EA0D67CCF37377</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D72F35B6DD825B656E9B379AEEC66A5164B81CC5CB8694F2</key>
-			<input>B7B23D8E7D344F39B3EA0D67CCF37377</input>
-			<output>3385AD0503AF68BFBFBEAA89B1C87736</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>48335F06D7C27C955D1E9A9FED6902EEDB06B64C7A4EE3C4</key>
-			<input>3385AD0503AF68BFBFBEAA89B1C87736</input>
-			<output>9FC40A6B984BEEC182AB650B05CEF38C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A66149286535FD6EC2DA90F47522EC2F59ADD3477F801048</key>
-			<input>9FC40A6B984BEEC182AB650B05CEF38C</input>
-			<output>4CEC52C9DE143486DFC9D098637DFBB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7EA78450FAEEF8BF8E36C23DAB36D8A9866403DF1CFDEBFD</key>
-			<input>4CEC52C9DE143486DFC9D098637DFBB5</input>
-			<output>EB8E40333ACD18EFB04DC0A857DDCD7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>197DDF842BAEF36E65B8820E91FBC0463629C3774B202687</key>
-			<input>EB8E40333ACD18EFB04DC0A857DDCD7A</input>
-			<output>F1AFF04058F819B0F191398C8022130F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D68841CF848B0F619417724EC903D9F6C7B8FAFBCB023588</key>
-			<input>F1AFF04058F819B0F191398C8022130F</input>
-			<output>6DF4A95D8D602C0E53F5A5C350D3EB64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6DFA0F7B01A2F011F9E3DB134463F5F8944D5F389BD1DEEC</key>
-			<input>6DF4A95D8D602C0E53F5A5C350D3EB64</input>
-			<output>057D8F9BE9260BB3A0382CD2EF7D1FCA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>88227C4AD1CBC8F0FC9E5488AD45FE4B347573EA74ACC126</key>
-			<input>057D8F9BE9260BB3A0382CD2EF7D1FCA</input>
-			<output>D4EDACCB9B7B35F2A0690E22C91E25AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>848B8E3213D366B22873F843363ECBB9941C7DC8BDB2E488</key>
-			<input>D4EDACCB9B7B35F2A0690E22C91E25AE</input>
-			<output>A2F61B5BDD9F580B26C329B878BAFA3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FA3A476D1C6E33FD8A85E318EBA193B2B2DF5470C5081EB4</key>
-			<input>A2F61B5BDD9F580B26C329B878BAFA3C</input>
-			<output>5A0616880CD40B72B58CF268EC8F934B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C9F77D58F58D5FEDD083F590E77598C00753A61829878DFF</key>
-			<input>5A0616880CD40B72B58CF268EC8F934B</input>
-			<output>0E42047D7EDE2A5FBB37767A69A45B9B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>00A523C700FBB663DEC1F1ED99ABB29FBC64D0624023D664</key>
-			<input>0E42047D7EDE2A5FBB37767A69A45B9B</input>
-			<output>2AFA823A10BB436A7B00816C80A52711</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>660275323A59E807F43B73D78910F1F5C764510EC086F175</key>
-			<input>2AFA823A10BB436A7B00816C80A52711</input>
-			<output>B2406F3F9160E25DF7C9AA81AF6EB449</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>47A4FCDB97D4A383467B1CE8187013A830ADFB8F6FE8453C</key>
-			<input>B2406F3F9160E25DF7C9AA81AF6EB449</input>
-			<output>B1E01D2A401495F8DDAEAB7B04BEB23D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2BDD5B54D4EB236AF79B01C258648650ED0350F46B56F701</key>
-			<input>B1E01D2A401495F8DDAEAB7B04BEB23D</input>
-			<output>390572A9ECE28A0E0BBDC729DBE5F79A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>328202460B65D004CE9E736BB4860C5EE6BE97DDB0B3009B</key>
-			<input>390572A9ECE28A0E0BBDC729DBE5F79A</input>
-			<output>5D41665811702124C597DB4E3BD950E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>94457C0A759DF4E993DF1533A5F62D7A23294C938B6A507A</key>
-			<input>5D41665811702124C597DB4E3BD950E1</input>
-			<output>689EB1CB1586D127696E8725DEE49E58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E0226CA850DDC79FB41A4F8B070FC5D4A47CBB6558ECE22</key>
-			<input>689EB1CB1586D127696E8725DEE49E58</input>
-			<output>A2D9DF62AC8BF8A93E7A954416864052</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>659C817A1C10A24D59987B9A1CFB04F4743D5EF243088E70</key>
-			<input>A2D9DF62AC8BF8A93E7A954416864052</input>
-			<output>507835696F1920BD4A05797563DF5769</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>92192D9175187FB409E04EF373E224493E38278720D7D919</key>
-			<input>507835696F1920BD4A05797563DF5769</input>
-			<output>2070413F5103482B6C83129304E5AC87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6959063FBA59CCEC29900FCC22E16C6252BB35142432759E</key>
-			<input>2070413F5103482B6C83129304E5AC87</input>
-			<output>BF7FD1E21B41B1F1C2625C1097F1BCB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5722993710D811B196EFDE2E39A0DD9390D96904B3C3C926</key>
-			<input>BF7FD1E21B41B1F1C2625C1097F1BCB8</input>
-			<output>6E2236654F2999545F50FA9CF63F9F2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>038FA98E7A226A9FF8CDE84B768944C7CF89939845FC5608</key>
-			<input>6E2236654F2999545F50FA9CF63F9F2E</input>
-			<output>3F370291CEDCB115C8EE409A8EEB46D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CACF0199725D5466C7FAEADAB855F5D20767D302CB1710DE</key>
-			<input>3F370291CEDCB115C8EE409A8EEB46D6</input>
-			<output>84023DB96D373EC8315AE78A3B7E82FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7B40321CB11520D143F8D763D562CB1A363D3488F0699225</key>
-			<input>84023DB96D373EC8315AE78A3B7E82FB</input>
-			<output>C35064D82A3016FE2C2E2CC0627E7B5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F045CFEC2A6BC7E580A8B3BBFF52DDE41A1318489217E979</key>
-			<input>C35064D82A3016FE2C2E2CC0627E7B5C</input>
-			<output>D78DFFE87C0F95856C31A07BADA23084</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>86B3CA5F50CEF6C557254C53835D48617622B8333FB5D9FD</key>
-			<input>D78DFFE87C0F95856C31A07BADA23084</input>
-			<output>5B5B5D3CA5C6E5CF18F3E4EE802BE82B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6D99DC0C58655B70C7E116F269BADAE6ED15CDDBF9E31D6</key>
-			<input>5B5B5D3CA5C6E5CF18F3E4EE802BE82B</input>
-			<output>DB65A82F6EB7A410A367165900E85117</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B8F770CFBE47D070D71BB940482C09BECDB64A84BF7660C1</key>
-			<input>DB65A82F6EB7A410A367165900E85117</input>
-			<output>FE8BE8484D925043102238FF63FDAC57</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FF09ADB06FE587192990510805BE59FDDD94727BDC8BCC96</key>
-			<input>FE8BE8484D925043102238FF63FDAC57</input>
-			<output>AC36E01A7AD482A8D89703D2A6528720</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B5C937A4019CDAD185A6B1127F6ADB55050371A97AD94BB6</key>
-			<input>AC36E01A7AD482A8D89703D2A6528720</input>
-			<output>9F3698CE06C6497C89B58CA723F7ECAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F60CAF8FB99B63B21A9029DC79AC92298CB6FD0E592EA71C</key>
-			<input>9F3698CE06C6497C89B58CA723F7ECAA</input>
-			<output>FB8CE2E1D332FE4557B6C5CF1676F2FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B7CF2BABD58B5FDCE11CCB3DAA9E6C6CDB0038C14F5855E7</key>
-			<input>FB8CE2E1D332FE4557B6C5CF1676F2FB</input>
-			<output>A2631F612698318AD454E9DB10319DA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FD99B4137CAFC47F437FD45C8C065DE60F54D11A5F69C841</key>
-			<input>A2631F612698318AD454E9DB10319DA6</input>
-			<output>FCA42B332B5974EE6DFA54B54EC89AC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>271CEEF189AD367DBFDBFF6FA75F290862AE85AF11A15286</key>
-			<input>FCA42B332B5974EE6DFA54B54EC89AC7</input>
-			<output>A70DBBDFCE54B8648C3FC4A8A58CCDF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7B78F7ECC9B28EC718D644B0690B916CEE914107B42D9F7E</key>
-			<input>A70DBBDFCE54B8648C3FC4A8A58CCDF8</input>
-			<output>C90CE914F9310F9C3EE065DD95281A51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>762F521ADF6C5F24D1DAADA4903A9EF0D07124DA2105852F</key>
-			<input>C90CE914F9310F9C3EE065DD95281A51</input>
-			<output>63E8430CE22F531E4A4D4583533F6FC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A88A493EB3C28C49B232EEA87215CDEE9A3C6159723AEAEB</key>
-			<input>63E8430CE22F531E4A4D4583533F6FC4</input>
-			<output>E7562DC647910A052F4AFBF165A68A3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1C97343A60EE05035564C36E3584C7EBB5769AA8179C60D1</key>
-			<input>E7562DC647910A052F4AFBF165A68A3A</input>
-			<output>3E070B3F65FD01B49849513B556DB199</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C5110692100A332E6B63C8515079C65F2D3FCB9342F1D148</key>
-			<input>3E070B3F65FD01B49849513B556DB199</input>
-			<output>3DE5A45B2CAA4FAFAC3032F89F15195D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D94D8CAA9EBD67F056866C0A7CD389F0810FF96BDDE4C815</key>
-			<input>3DE5A45B2CAA4FAFAC3032F89F15195D</input>
-			<output>A36A163E8806B1E053EBE439B0D1302F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1C1D7A3E9358048CF5EC7A34F4D53810D2E41D526D35F83A</key>
-			<input>A36A163E8806B1E053EBE439B0D1302F</input>
-			<output>67CA4B988CCABA4E4DBEE6C387562762</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9182E40D14973087922631AC781F825E9F5AFB91EA63DF58</key>
-			<input>67CA4B988CCABA4E4DBEE6C387562762</input>
-			<output>9F404F0E1A9FE5A988CE6E4A54FE9E23</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7D89ECFC0DCFFE0A0D667EA2628067F7179495DBBE9D417B</key>
-			<input>9F404F0E1A9FE5A988CE6E4A54FE9E23</input>
-			<output>D71EFD794457C71614E4266C77193444</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AC7A11D29CDA0FB6DA7883DB26D7A0E10370B3B7C984753F</key>
-			<input>D71EFD794457C71614E4266C77193444</input>
-			<output>185DBF418A6834CD118B16EAF381F3CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1029D5FA3D38927EC2253C9AACBF942C12FBA55D3A0586F4</key>
-			<input>185DBF418A6834CD118B16EAF381F3CB</input>
-			<output>737A502DEE68DDFA3FEECD42ACE124EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F261B484C642750CB15F6CB742D749D62D15681F96E4A21E</key>
-			<input>737A502DEE68DDFA3FEECD42ACE124EA</input>
-			<output>FD11B0F356455913E892928B5B16946B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BCCFAF05FF47A5EC4C4EDC44149210C5C587FA94CDF23675</key>
-			<input>FD11B0F356455913E892928B5B16946B</input>
-			<output>4B06F6D6D149BAF25D4C76E46EFF8571</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1000A15983B73D6807482A92C5DBAA3798CB8C70A30DB304</key>
-			<input>4B06F6D6D149BAF25D4C76E46EFF8571</input>
-			<output>450713DA24492403C48CB16D2F39744E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>306F097E64B634AC424F3948E1928E345C473D1D8C34C74A</key>
-			<input>450713DA24492403C48CB16D2F39744E</input>
-			<output>998CA5E3C80B66EB11EAD376FA358A92</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>13965208C3EF77E1DBC39CAB2999E8DF4DADEE6B76014DD8</key>
-			<input>998CA5E3C80B66EB11EAD376FA358A92</input>
-			<output>F54A34F6F0833CA808D60A8F75BB0585</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A6DC3FDD0D1F97C2E89A85DD91AD477457BE4E403BA485D</key>
-			<input>F54A34F6F0833CA808D60A8F75BB0585</input>
-			<output>8760D5CBD1DA48807BAEAF7F781680F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>228897B4E2F16967A9E97D9608C09CF73ED54B9B7BACC8AF</key>
-			<input>8760D5CBD1DA48807BAEAF7F781680F2</input>
-			<output>EF57DF7161E1BC0F7B466A50C576691A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D0E8190E72A305C946BEA2E7692120F8459321CBBEDAA1B5</key>
-			<input>EF57DF7161E1BC0F7B466A50C576691A</input>
-			<output>E01ECA338A93EA38E43B2F364314C121</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>087F0486B80659F0A6A068D4E3B2CAC0A1A80EFDFDCE6094</key>
-			<input>E01ECA338A93EA38E43B2F364314C121</input>
-			<output>A7683273638D02272FF6A311BB94256F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1D807E4730DDA3EB01C85AA7803FC8E78E5EADEC465A45FB</key>
-			<input>A7683273638D02272FF6A311BB94256F</input>
-			<output>1BCC3DF6B07BD2615C13E381F5F877C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D4D4F2780D52D7521A04675130441A86D24D4E6DB3A23238</key>
-			<input>1BCC3DF6B07BD2615C13E381F5F877C3</input>
-			<output>D1B3B793D1377E82A2DE5D46E53791FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>86D08D85652DB662CBB7D0C2E17364047093132B5695A3C3</key>
-			<input>D1B3B793D1377E82A2DE5D46E53791FB</input>
-			<output>9AC7AF9B82621E18E4FF613EAA609F46</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C03996907AC99A7A51707F5963117A1C946C7215FCF53C85</key>
-			<input>9AC7AF9B82621E18E4FF613EAA609F46</input>
-			<output>57F3FA35A42C29F33DEC4671140264A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F8CA52D95C587EF80683856CC73D53EFA9803464E8F75821</key>
-			<input>57F3FA35A42C29F33DEC4671140264A4</input>
-			<output>A887ED8BF6C19F5012F317A4FCF3D7BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE99CC8F9756C1DCAE0468E731FCCCBFBB7323C014048F9E</key>
-			<input>A887ED8BF6C19F5012F317A4FCF3D7BF</input>
-			<output>A29C8D764BCF211C789158A9B8EB330C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9228DB1B61E0D8670C98E5917A33EDA3C3E27B69ACEFBC92</key>
-			<input>A29C8D764BCF211C789158A9B8EB330C</input>
-			<output>EB6AFD9B36315DB322EC8C4243043F50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>24AFE14097C2A217E7F2180A4C02B010E10EF72BEFEB83C2</key>
-			<input>EB6AFD9B36315DB322EC8C4243043F50</input>
-			<output>05C8AC90CCD00E2A3809C68C11D6D65A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>32810943F9313BD0E23AB49A80D2BE3AD90731A7FE3D5598</key>
-			<input>05C8AC90CCD00E2A3809C68C11D6D65A</input>
-			<output>E39991B58C52154166AD09367B04C67A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBEC72A177254EA501A3252F0C80AB7BBFAA3891853993E2</key>
-			<input>E39991B58C52154166AD09367B04C67A</input>
-			<output>CBC8974F72F77A1821FC69B29FE2DB60</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C706D206DE538439CA6BB2607E77D1639E5651231ADB4882</key>
-			<input>CBC8974F72F77A1821FC69B29FE2DB60</input>
-			<output>1D08F4E2B8DFED1032B6CA5211B3E34C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9A7EB0A4F8E67F87D7634682C6A83C73ACE09B710B68ABCE</key>
-			<input>1D08F4E2B8DFED1032B6CA5211B3E34C</input>
-			<output>1888CEC22449EFF96BDC2C7A242BBBDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>70CA2CAD6A50D22BCFEB8840E2E1D38AC73CB70B2F431012</key>
-			<input>1888CEC22449EFF96BDC2C7A242BBBDC</input>
-			<output>032E6155677B6A72D7F94C7A9A9AA53F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B16697FEA247CDB9CCC5E915859AB9F810C5FB71B5D9B52D</key>
-			<input>032E6155677B6A72D7F94C7A9A9AA53F</input>
-			<output>9B43BBD1C0CEBF7593E9BC0ABB626E96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7A3E844BEB897A63578652C44554068D832C477B0EBBDBBB</key>
-			<input>9B43BBD1C0CEBF7593E9BC0ABB626E96</input>
-			<output>8D661E03C61C28D5786EBCEBE0D5B63D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E7A1B96EFC4D5FB5DAE04CC783482E58FB42FB90EE6E6D86</key>
-			<input>8D661E03C61C28D5786EBCEBE0D5B63D</input>
-			<output>F61D5DCBF8F2F3F0EAB387149790E079</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0EDA761C06FBA0A02CFD110C7BBADDA811F17C8479FE8DFF</key>
-			<input>F61D5DCBF8F2F3F0EAB387149790E079</input>
-			<output>1F03E0957B6892533BBEAB06EB35AD4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E242AD5B7141916133FEF19900D24FFB2A4FD78292CB20B0</key>
-			<input>1F03E0957B6892533BBEAB06EB35AD4F</input>
-			<output>BB9E7343035F88764B229D506E7ADC7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D901A6CF874A6A77886082DA038DC78D616D4AD2FCB1FCCB</key>
-			<input>BB9E7343035F88764B229D506E7ADC7B</input>
-			<output>3934EBF7AD2243C0D09734E30B41C0E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0F488E86E7D92F29B154692DAEAF844DB1FA7E31F7F03C2F</key>
-			<input>3934EBF7AD2243C0D09734E30B41C0E4</input>
-			<output>B9CE1A1A9595E7235F5B10FBA29ACCD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A7E2CF991692247A089A73373B3A636EEEA16ECA556AF0FD</key>
-			<input>B9CE1A1A9595E7235F5B10FBA29ACCD2</input>
-			<output>624EBA65EE9E3E1BDF8C5AA7E1283A65</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1DE03E09395E56CE6AD4C952D5A45D75312D346DB442CA98</key>
-			<input>624EBA65EE9E3E1BDF8C5AA7E1283A65</input>
-			<output>375132E5F47DA19E80CC8652BE5A3692</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>51B6813629EFE53C5D85FBB721D9FCEBB1E1B23F0A18FC0A</key>
-			<input>375132E5F47DA19E80CC8652BE5A3692</input>
-			<output>8165A4126FE75EFC6AFF7BFD732F94A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8DD50DFF93624339DCE05FA54E3EA217DB1EC9C2793768AC</key>
-			<input>8165A4126FE75EFC6AFF7BFD732F94A6</input>
-			<output>35012FABD289E6B7FB07946591D18F0D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C7A4F75CB74C7F3DE9E1700E9CB744A020195DA7E8E6E7A1</key>
-			<input>35012FABD289E6B7FB07946591D18F0D</input>
-			<output>C26F37D700677ED72F4FC2C8F6AEADE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>198B572CD0E711352B8E47D99CD03A770F569F6F1E484A43</key>
-			<input>C26F37D700677ED72F4FC2C8F6AEADE2</input>
-			<output>CB29ECE41596736B72AED2460AEEFBA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0A1FB41CA720E357E0A7AB3D8946491C7DF84D2914A6B1E1</key>
-			<input>CB29ECE41596736B72AED2460AEEFBA2</input>
-			<output>7F7BD6FAF9C37D5522A3BF480CCEBF20</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7E383601899DEA729FDC7DC7708534495F5BF26118680EC1</key>
-			<input>7F7BD6FAF9C37D5522A3BF480CCEBF20</input>
-			<output>C501E371005DF57E0037F41A744D026F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>13ACF410865B41E15ADD9EB670D8C1375F6C067B6C250CAE</key>
-			<input>C501E371005DF57E0037F41A744D026F</input>
-			<output>624EF8749580108CDC7A020179F81D0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>75F025072AA2406F389366C2E558D1BB8316047A15DD11A1</key>
-			<input>624EF8749580108CDC7A020179F81D0F</input>
-			<output>40D72550603522C67180DE6EC3D30139</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C5ED76F88EA65C3D78444392856DF37DF296DA14D60E1098</key>
-			<input>40D72550603522C67180DE6EC3D30139</input>
-			<output>96C6F647AFB90F804431F9E2F1780F29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E827DFF88D0B1A43EE82B5D52AD4FCFDB6A723F627761FB1</key>
-			<input>96C6F647AFB90F804431F9E2F1780F29</input>
-			<output>CCB934A501DDAD11E994938A214EB189</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F0777D1BFF12EE42223B81702B0951EC5F33B07C0638AE38</key>
-			<input>CCB934A501DDAD11E994938A214EB189</input>
-			<output>07825F2D35E761C76893B697E30E4D08</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6912B59C06C90D3725B9DE5D1EEE302B37A006EBE536E330</key>
-			<input>07825F2D35E761C76893B697E30E4D08</input>
-			<output>1F674E97F88EB1DA1DD24C0AB4321258</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AE24933526FAE5F83ADE90CAE66081F12A724AE15104F168</key>
-			<input>1F674E97F88EB1DA1DD24C0AB4321258</input>
-			<output>B6DE499EBE0B3C30F1DAC8E40FE9F10C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F348F88852CF356C8C00D954586BBDC1DBA882055EED0064</key>
-			<input>B6DE499EBE0B3C30F1DAC8E40FE9F10C</input>
-			<output>105E31DBDE33764B098862AF6D0B6CD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>83B06CC00A17D3149C5EE88F8658CB8AD220E0AA33E66CB6</key>
-			<input>105E31DBDE33764B098862AF6D0B6CD2</input>
-			<output>697D6537677B20C188246FBF4997C7CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A5381A9C91D61A01F5238DB8E123EB4B5A048F157A71AB7D</key>
-			<input>697D6537677B20C188246FBF4997C7CB</input>
-			<output>4FBFB0EFBA92C1E0189E2C3097AA35BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FDF831A7D1345AFEBA9C3D575BB12AAB429AA325EDDB9EC7</key>
-			<input>4FBFB0EFBA92C1E0189E2C3097AA35BA</input>
-			<output>600288531DCEB99B69A7890CE804FA9F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A10ED54E7B2B2B2BDA9EB504467F93302B3D2A2905DF6458</key>
-			<input>600288531DCEB99B69A7890CE804FA9F</input>
-			<output>EE94D4376D9332C8DCD05C695EDB124F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2F69F01250D7745F340A61332BECA1F8F7ED76405B047617</key>
-			<input>EE94D4376D9332C8DCD05C695EDB124F</input>
-			<output>7EDC3182C36DC5A172B170A919524888</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FCD5F8FAB347624E4AD650B1E8816459855C06E942563E9F</key>
-			<input>7EDC3182C36DC5A172B170A919524888</input>
-			<output>95FA03C96DFCB9ABCFF23B5ABFBABCDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A9307E62197A747EDF2C5378857DDDF24AAE3DB3FDEC8241</key>
-			<input>95FA03C96DFCB9ABCFF23B5ABFBABCDE</input>
-			<output>6CE2C6CFC61667965C20B0BE11B55DDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DA3B03896DDFDE08B3CE95B7436BBA64168E8D0DEC59DF9F</key>
-			<input>6CE2C6CFC61667965C20B0BE11B55DDE</input>
-			<output>3DBDFBE63A6FAE7572C778108A62A27C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7D766BAD6E536CE38E736E51790414116449F51D663B7DE3</key>
-			<input>3DBDFBE63A6FAE7572C778108A62A27C</input>
-			<output>1C197D3449FED6ED6924E14B43A17BF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>36F69C30B0272CAB926A136530FAC2FC0D6D1456259A0613</key>
-			<input>1C197D3449FED6ED6924E14B43A17BF0</input>
-			<output>0B0CCC6F508C18168284F7976AD81BEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>632661C312B2EB5D9966DF0A6076DAEA8FE9E3C14F421DFD</key>
-			<input>0B0CCC6F508C18168284F7976AD81BEE</input>
-			<output>F437B8FD92CE37D8D74550C5BE29BF99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5FB1BDFC29EFE2DA6D5167F7F2B8ED3258ACB304F16BA264</key>
-			<input>F437B8FD92CE37D8D74550C5BE29BF99</input>
-			<output>78F6E6F6480A04F5632EA112170F928C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2B24C5188F4A2E7B15A78101BAB2E9C73B821216E66430E8</key>
-			<input>78F6E6F6480A04F5632EA112170F928C</input>
-			<output>2FD38831EE4D09DD8DB9A84B5825B528</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F816FB720A08828C3A74093054FFE01AB63BBA5DBE4185C0</key>
-			<input>2FD38831EE4D09DD8DB9A84B5825B528</input>
-			<output>ED307697B51CFAD7052A3A7B3A564990</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>776B08F4778FAB96D7447FA7E1E31ACDB31180268417CC50</key>
-			<input>ED307697B51CFAD7052A3A7B3A564990</input>
-			<output>DB9952A98F0D4B045C624EFA5619CAF9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C7A944C9BA2D5F740CDD2D0E6EEE51C9EF73CEDCD20E06A9</key>
-			<input>DB9952A98F0D4B045C624EFA5619CAF9</input>
-			<output>DADA40BF0E367AF50874BB2628251AA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>69B8688D9C1ECD95D6076DB160D82B3CE70775FAFA2B1C0A</key>
-			<input>DADA40BF0E367AF50874BB2628251AA3</input>
-			<output>35DFA85D3F2D7F47DD7865EA0BC73A5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7E6C7E90EDE36F44E3D8C5EC5FF5547B3A7F1010F1EC2656</key>
-			<input>35DFA85D3F2D7F47DD7865EA0BC73A5C</input>
-			<output>EE0231F994C2DB6C7C04746170F03E54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0E56C8FD184AB5D40DDAF415CB378F17467B6471811C1802</key>
-			<input>EE0231F994C2DB6C7C04746170F03E54</input>
-			<output>D9F314FEAD11122CE8F532ED0C0B129C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>267BC5325796002BD429E0EB66269D3BAE8E569C8D170A9E</key>
-			<input>D9F314FEAD11122CE8F532ED0C0B129C</input>
-			<output>74A32BDFF53A59F09AAFB328977E05B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>889B6087CAAD1B43A08ACB34931CC4CB3421E5B41A690F2F</key>
-			<input>74A32BDFF53A59F09AAFB328977E05B1</input>
-			<output>D4CCC3077C15EE470D5EFCF815A48410</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F9AE78D077E3F98574460833EF092A8C397F194C0FCD8B3F</key>
-			<input>D4CCC3077C15EE470D5EFCF815A48410</input>
-			<output>29284B0E7776DFB8BB536B3C16399D62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>71BBCD4B1F4B04265D6E433D987FF534822C727019F4165D</key>
-			<input>29284B0E7776DFB8BB536B3C16399D62</input>
-			<output>202326CEAD57A5C13592FFBFFD5BF508</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F6F461C7931CF0317D4D65F3352850F5B7BE8DCFE4AFE355</key>
-			<input>202326CEAD57A5C13592FFBFFD5BF508</input>
-			<output>B9AFAD0658E1A4A1EECAA25B2863AD53</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BC0D82D3B7909D54C4E2C8F56DC9F45459742F94CCCC4E06</key>
-			<input>B9AFAD0658E1A4A1EECAA25B2863AD53</input>
-			<output>DE7AC7F7381DD34F3148911F306F4161</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>339FFE2E01AB1D621A980F0255D4271B683CBE8BFCA30F67</key>
-			<input>DE7AC7F7381DD34F3148911F306F4161</input>
-			<output>F197DE9FED1EA08F6C17E631BF5449FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EC908F9A4F266644EB0FD19DB8CA8794042B58BA43F74699</key>
-			<input>F197DE9FED1EA08F6C17E631BF5449FE</input>
-			<output>7E1416C06ED3F56782DB5CB536B9B56E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CFE36CCCC94F8A5B951BC75DD61972F386F0040F754EF3F7</key>
-			<input>7E1416C06ED3F56782DB5CB536B9B56E</input>
-			<output>BE1FE1F7B4CFF55D15BBCB6D9313729D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>90690906407FB8AC2B0426AA62D687AE934BCF62E65D816A</key>
-			<input>BE1FE1F7B4CFF55D15BBCB6D9313729D</input>
-			<output>50E6818C06583D3D1C99C4A127D118CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5D2A712578EC47217BE2A726648EBA938FD20BC3C18C99A5</key>
-			<input>50E6818C06583D3D1C99C4A127D118CF</input>
-			<output>E1BFD3ED18E9A6D7BF383D590DA23B59</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3CA141EE57D7E0FC9A5D74CB7C671C4430EA369ACC2EA2FC</key>
-			<input>E1BFD3ED18E9A6D7BF383D590DA23B59</input>
-			<output>03961127347C141C01F5276CB9BB31F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>65E9B8AE22DC52A599CB65EC481B0858311F11F67595930B</key>
-			<input>03961127347C141C01F5276CB9BB31F7</input>
-			<output>E9A8336DC0B530A86988B2DE74EDFFA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>870A30E0F3B836FA7063568188AE38F05897A32801786CAA</key>
-			<input>E9A8336DC0B530A86988B2DE74EDFFA1</input>
-			<output>B5FA5E388CFFFE2BA33436CC39A73972</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4B81E55C765F570CC59908B90451C6DBFBA395E438DF55D8</key>
-			<input>B5FA5E388CFFFE2BA33436CC39A73972</input>
-			<output>CEF4896BBC86F1E02312479C40D96DAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0FAB0DCFB6E3E7940B6D81D2B8D7373BD8B1D27878063876</key>
-			<input>CEF4896BBC86F1E02312479C40D96DAE</input>
-			<output>F195F5321FCAA68B0B0CBA83978A8084</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F860076D3847A80BFAF874E0A71D91B0D3BD68FBEF8CB8F2</key>
-			<input>F195F5321FCAA68B0B0CBA83978A8084</input>
-			<output>861575205386223EBC6B48B22C35A2A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B2DB77DC3E18C3A77CED01C0F49BB38E6FD62049C3B91A54</key>
-			<input>861575205386223EBC6B48B22C35A2A6</input>
-			<output>DC074F3D41C62DA9D609A982DEB9E074</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E632B0C6EE68910EA0EA4EFDB55D9E27B9DF89CB1D00FA20</key>
-			<input>DC074F3D41C62DA9D609A982DEB9E074</input>
-			<output>6933F4F193B028A22B913453B0B4C9A2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>88AA3FEE5FDFA336C9D9BA0C26EDB685924EBD98ADB43382</key>
-			<input>6933F4F193B028A22B913453B0B4C9A2</input>
-			<output>56811E665DDFBEA07A7C2C762F0D5C73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2A0A1FE31ADFC64F9F58A46A7B320825E83291EE82B96FF1</key>
-			<input>56811E665DDFBEA07A7C2C762F0D5C73</input>
-			<output>CFF92E47C8C973ADA7B57D9FE320B356</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7958F9D10B6DC91050A18A2DB3FB7B884F87EC716199DCA7</key>
-			<input>CFF92E47C8C973ADA7B57D9FE320B356</input>
-			<output>A55A4F827552761580DC27E0712051B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ADDB73FE13D439CAF5FBC5AFC6A90D9DCF5BCB9110B98D16</key>
-			<input>A55A4F827552761580DC27E0712051B1</input>
-			<output>734B095C3C54FCDE26C33659C82CACCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E979AF9C739F60AE86B0CCF3FAFDF143E998FDC8D89521DD</key>
-			<input>734B095C3C54FCDE26C33659C82CACCB</input>
-			<output>122A4F2ADE6C69364943658517A56587</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E05BDC75E94EB2A8949A83D924919875A0DB984DCF30445A</key>
-			<input>122A4F2ADE6C69364943658517A56587</input>
-			<output>C6EF3170C5EF69B479AC6653E8B7E979</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>67AF0BE0DE572F595275B2A9E17EF1C1D977FE1E2787AD23</key>
-			<input>C6EF3170C5EF69B479AC6653E8B7E979</input>
-			<output>51113FF8A1000A5449F24E8E5363FB72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C8DCBB512AE775603648D51407EFB959085B09074E45651</key>
-			<input>51113FF8A1000A5449F24E8E5363FB72</input>
-			<output>B9341E24A41C9D9CE56D6E4F17A7A311</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EEBE49DAF88030F5BA509375E462660975E8DEDF6343F540</key>
-			<input>B9341E24A41C9D9CE56D6E4F17A7A311</input>
-			<output>26A135C466B061791DE40A40E9366FC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A06A0B9127769EF79CF1A6B182D20770680CD49F8A759A86</key>
-			<input>26A135C466B061791DE40A40E9366FC6</input>
-			<output>AE832B68C147CF8A70A8E5CCC3FF05F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CD394B7808099B2832728DD94395C8FA18A43153498A9F74</key>
-			<input>AE832B68C147CF8A70A8E5CCC3FF05F2</input>
-			<output>72747F478E3AE57C6C7D6D4E5C4FCE71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>80D4A1BD538D11434006F29ECDAF2D8674D95C1D15C55105</key>
-			<input>72747F478E3AE57C6C7D6D4E5C4FCE71</input>
-			<output>21539022400BEE401E8FE7E9F0F7AAC3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C8BCB868E11B46E3615562BC8DA4C3C66A56BBF4E532FBC6</key>
-			<input>21539022400BEE401E8FE7E9F0F7AAC3</input>
-			<output>44149C7C375F07B7169C8A9A14133C8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DFC35DD4FAD95C2A2541FEC0BAFBC4717CCA316EF121C74A</key>
-			<input>44149C7C375F07B7169C8A9A14133C8C</input>
-			<output>2A7FA9D2EACC0C5444510E7D69EB3FD6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>73B0B53EE6D591140F3E57125037C825389B3F1398CAF89C</key>
-			<input>2A7FA9D2EACC0C5444510E7D69EB3FD6</input>
-			<output>9949145B8C88D03BBA46FEBE9856B732</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7BFBD6A0A317DEE996774349DCBF181E82DDC1AD009C4FAE</key>
-			<input>9949145B8C88D03BBA46FEBE9856B732</input>
-			<output>714E072347ECDEA4F8EB2B02746FBC66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CA326A1D191B2BC6E739446A9B53C6BA7A36EAAF74F3F3C8</key>
-			<input>714E072347ECDEA4F8EB2B02746FBC66</input>
-			<output>CCF2295814759A5004E8C3E2B97C4958</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>428400F7196D32C62BCB6D328F265CEA7EDE294DCD8FBA90</key>
-			<input>CCF2295814759A5004E8C3E2B97C4958</input>
-			<output>12108AB0753EAAE007DEFF2EBA8A3EF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3E38F6FA3F49742339DBE782FA18F60A7900D66377058460</key>
-			<input>12108AB0753EAAE007DEFF2EBA8A3EF0</input>
-			<output>0109AC127FB55B91BC922EDFF3C43819</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>07C585ABD1C227D638D24B9085ADAD9BC592F8BC84C1BC79</key>
-			<input>0109AC127FB55B91BC922EDFF3C43819</input>
-			<output>33FF03F6966E81EE28889CFA0B9BA8B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FB823872148252C20B2D486613C32C75ED1A64468F5A14C0</key>
-			<input>33FF03F6966E81EE28889CFA0B9BA8B9</input>
-			<output>D8468C180BAC0F6D703611DDAD951014</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F81900EAD21ECE3BD36BC47E186F23189D2C759B22CF04D4</key>
-			<input>D8468C180BAC0F6D703611DDAD951014</input>
-			<output>07994906A8377D64F2D32DB4BB170EF1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2ADC8C0244307531D4F28D78B0585E7C6FFF582F99D80A25</key>
-			<input>07994906A8377D64F2D32DB4BB170EF1</input>
-			<output>48382015F82AA7EC8944C40275595CEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2E917F5C5BAB80939CCAAD6D4872F990E6BB9C2DEC8156CA</key>
-			<input>48382015F82AA7EC8944C40275595CEF</input>
-			<output>D4EEE0A1A56118EB8F6AE16FE16F70ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>126D396B29E0252248244DCCED13E17B69D17D420DEE2627</key>
-			<input>D4EEE0A1A56118EB8F6AE16FE16F70ED</input>
-			<output>358E5FAE4A4ED6B1058E32942AE030DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D390A60684F5C9147DAA1262A75D37CA6C5F4FD6270E16FC</key>
-			<input>358E5FAE4A4ED6B1058E32942AE030DB</input>
-			<output>B9730D311EA8312DAC34F444A4560DDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0B2A03E62FCD9B06C4D91F53B9F506E7C06BBB9283581B20</key>
-			<input>B9730D311EA8312DAC34F444A4560DDC</input>
-			<output>D64F286B32B4058A51B73844BCA93DDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5858183C5713BBD6129637388B41036D91DC83D63FF126FA</key>
-			<input>D64F286B32B4058A51B73844BCA93DDA</input>
-			<output>78425B7FE64D972C642ED17369ED8844</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C555D9DC23D3A1846AD46C476D0C9441F5F252A5561CAEBE</key>
-			<input>78425B7FE64D972C642ED17369ED8844</input>
-			<output>2DE9202F4CD7F67C7B7F94CF7F3B9B5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7BA871DA6E336CFA473D4C6821DB623D8E8DC66A292735E4</key>
-			<input>2DE9202F4CD7F67C7B7F94CF7F3B9B5A</input>
-			<output>A30322EC9A51266B50153995BCEBC846</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>55BF35687EBA169AE43E6E84BB8A4456DE98FFFF95CCFDA2</key>
-			<input>A30322EC9A51266B50153995BCEBC846</input>
-			<output>14754B0469683F36E4791FD9B8B1C585</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0404CAE90360F118F04B2580D2E27B603AE1E0262D7D3827</key>
-			<input>14754B0469683F36E4791FD9B8B1C585</input>
-			<output>E8592DC147A1DC4F48D43E365B9D63FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>109E16AA717A4EF4181208419543A72F7235DE1076E05BD8</key>
-			<input>E8592DC147A1DC4F48D43E365B9D63FF</input>
-			<output>47A3BF0743562C7D412563C94C2CD717</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0A8DC7647F8C06D15FB1B746D6158B523310BDD93ACC8CCF</key>
-			<input>47A3BF0743562C7D412563C94C2CD717</input>
-			<output>63F8C6A062937471364050815D856793</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CC9B8854C13F73623C4971E6B486FF230550ED586749EB5C</key>
-			<input>63F8C6A062937471364050815D856793</input>
-			<output>E70443AF44BF549607251A86CD83A4D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2D067D896DF1E749DB4D3249F039ABB50275F7DEAACA4F8F</key>
-			<input>E70443AF44BF549607251A86CD83A4D3</input>
-			<output>ACEF2AE95CA660AEE513BF48BCF7D125</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DEC45DD3C0DAD30A77A218A0AC9FCB1BE7664896163D9EAA</key>
-			<input>ACEF2AE95CA660AEE513BF48BCF7D125</input>
-			<output>859E9E4001245A50ED76055539672F1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6F208E93D9C89CE8F23C86E0ADBB914B0A104DC32F5AB1B0</key>
-			<input>859E9E4001245A50ED76055539672F1A</input>
-			<output>42B059061FE4C86C7AC2B7C8B62820C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>86EC7CE558994E8EB08CDFE6B25F592770D2FA0B99729172</key>
-			<input>42B059061FE4C86C7AC2B7C8B62820C2</input>
-			<output>01C6296F1532450F182D6A3FC8249DD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C74B31CEC9B31130B14AF689A76D1C2868FF903451560CA5</key>
-			<input>01C6296F1532450F182D6A3FC8249DD7</input>
-			<output>14334054946821E3FE8D72D1EF402EE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AC636B2AD3699560A579B6DD33053DCB9672E2E5BE162244</key>
-			<input>14334054946821E3FE8D72D1EF402EE1</input>
-			<output>F09B2FE9A8F17CD847532D4979D2A8C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6F956E3680FC783155E299349BF44113D121CFACC7C48A80</key>
-			<input>F09B2FE9A8F17CD847532D4979D2A8C4</input>
-			<output>4C97BD8822E63C7A2EE0E444563AF1C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C69B2FB718C41B1A197524BCB9127D69FFC12BE891FE7B48</key>
-			<input>4C97BD8822E63C7A2EE0E444563AF1C8</input>
-			<output>344E85BE2C8B36430C8058B310062171</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BFFA143B8A18CACF2D3BA10295994B2AF341735B81F85A39</key>
-			<input>344E85BE2C8B36430C8058B310062171</input>
-			<output>FF3F882CB22D13A8631DCA6DD702D0E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>22F58A0FC077AB5FD204292E27B45882905CB93656FA8AD9</key>
-			<input>FF3F882CB22D13A8631DCA6DD702D0E0</input>
-			<output>866B2E52CF71505973D9D6642C8178BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DC8CE7A9130F3662546F077CE8C508DBE3856F527A7BF262</key>
-			<input>866B2E52CF71505973D9D6642C8178BB</input>
-			<output>4802741ADF67A3811A8AEC7008D8827E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>743B09AA8FD3C6A01C6D736637A2AB5AF90F832272A3701C</key>
-			<input>4802741ADF67A3811A8AEC7008D8827E</input>
-			<output>FD3701579815D02BE878C74ABB98C59B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>865B3EC9EFBE27D0E15A7231AFB77B7111774468C93BB587</key>
-			<input>FD3701579815D02BE878C74ABB98C59B</input>
-			<output>99BCA8250D54F3A9A72054AF5578F842</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>041C037E08923FFF78E6DA14A2E388D8B65710C79C434DC5</key>
-			<input>99BCA8250D54F3A9A72054AF5578F842</input>
-			<output>F0DA5C0E446547356D5027BA346A831C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBABCE025CF5FF3D883C861AE686CFEDDB07377DA829CED9</key>
-			<input>F0DA5C0E446547356D5027BA346A831C</input>
-			<output>EED0140AF408652DD879E3289536C389</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3F12399A3E5C0F9566EC9210128EAAC0037ED4553D1F0D50</key>
-			<input>EED0140AF408652DD879E3289536C389</input>
-			<output>FDC7299A95BDB941A299478B7B409EF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D541517B701036E39B2BBB8A87331381A1E793DE465F93A8</key>
-			<input>FDC7299A95BDB941A299478B7B409EF8</input>
-			<output>5BE5AEC30578CD03BA7B17E8B16AAFBF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6657840FF425DD8AC0CE1549824BDE821B9C8436F7353C17</key>
-			<input>5BE5AEC30578CD03BA7B17E8B16AAFBF</input>
-			<output>3C7A9745F48DA61CF7875A449E24C735</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>52D29BBD64550DFBFCB4820C76C6789EEC1BDE726911FB22</key>
-			<input>3C7A9745F48DA61CF7875A449E24C735</input>
-			<output>69516DE0343F3552830D28CE8B9A282C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3699B16BB0349B9195E5EFEC42F94DCC6F16F6BCE28BD30E</key>
-			<input>69516DE0343F3552830D28CE8B9A282C</input>
-			<output>EB09EE300286690EA65A30526A43B86B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>60E79B9E7C41814E7EEC01DC407F24C2C94CC6EE88C86B65</key>
-			<input>EB09EE300286690EA65A30526A43B86B</input>
-			<output>A235384FE517A5F455BBE6B850C05E33</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>11F650282BBCB584DCD93993A56881369CF72056D8083556</key>
-			<input>A235384FE517A5F455BBE6B850C05E33</input>
-			<output>41E297350390E91EC00FF875B3CA60BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>11B449F7EE983AB89D3BAEA6A6F868285CF8D8236BC255EC</key>
-			<input>41E297350390E91EC00FF875B3CA60BA</input>
-			<output>5FB9F6408D54401A9A76288AE3A04944</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>54CBA9A5782ED91FC28258E62BAC2832C68EF0A988621CA8</key>
-			<input>5FB9F6408D54401A9A76288AE3A04944</input>
-			<output>7C9CD2510E96FF37BF75E57E84098535</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>871169F28E704C95BE1E8AB7253AD70579FB15D70C6B999D</key>
-			<input>7C9CD2510E96FF37BF75E57E84098535</input>
-			<output>8E041B8C74A84D747B02714452B34F11</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F44ED6AA755957A301A913B51929A7102F964935ED8D68C</key>
-			<input>8E041B8C74A84D747B02714452B34F11</input>
-			<output>3698639F56657A40D52B9B8015448C2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EEAF09001996BA6E0682F2A407F7E031D7D2FF134B9C5AA6</key>
-			<input>3698639F56657A40D52B9B8015448C2A</input>
-			<output>79FB5E4A065D29E1CA3E15897B60032F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D21CCA06254A64C97F79ACEE01AAC9D01DECEA9A30FC5989</key>
-			<input>79FB5E4A065D29E1CA3E15897B60032F</input>
-			<output>C582F5F8D9D2E9323C769B2B1AE369BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>29D2F84E4568BA6FBAFB5916D87820E2219A71B12A1F3034</key>
-			<input>C582F5F8D9D2E9323C769B2B1AE369BD</input>
-			<output>916405DC8F2AD50548997D87BCCADBFB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>43AC4D54A8A0222F2B9F5CCA5752F5E769030C3696D5EBCF</key>
-			<input>916405DC8F2AD50548997D87BCCADBFB</input>
-			<output>0E9FF0E147A47056EC6B09837C9E0E62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9AF110B8274794772500AC2B10F685B1856805B5EA4BE5AD</key>
-			<input>0E9FF0E147A47056EC6B09837C9E0E62</input>
-			<output>3B6E3CAAC358427980E66E3D30D39E4F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>49F910E7957BC95C1E6E9081D3AEC7C8058E6B88DA987BE2</key>
-			<input>3B6E3CAAC358427980E66E3D30D39E4F</input>
-			<output>25CBE5AB4C6785C0F2847CF89F2635AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>64D90092DD97AC3C3BA5752A9FC94208F70A177045BE4E49</key>
-			<input>25CBE5AB4C6785C0F2847CF89F2635AB</input>
-			<output>3D9200D39461D8B2CE7874DA20BFD9DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C7A8403AFB011673063775F90BA89ABA397263AA65019793</key>
-			<input>3D9200D39461D8B2CE7874DA20BFD9DA</input>
-			<output>E61E7E06A1E1F656AE8F8C29C96E5A16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>071AF635AF7A9602E0290BFFAA496CEC97FDEF83AC6FCD85</key>
-			<input>E61E7E06A1E1F656AE8F8C29C96E5A16</input>
-			<output>7488BB35F06E94F31A744D1EA95E71D0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A4B5ECB7047E08D694A1B0CA5A27F81F8D89A29D0531BC55</key>
-			<input>7488BB35F06E94F31A744D1EA95E71D0</input>
-			<output>3912DC00C0AB79C473CA2CC8F69262F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD4478B38A0E9347ADB36CCA9A8C81DBFE438E55F3A3DEA5</key>
-			<input>3912DC00C0AB79C473CA2CC8F69262F0</input>
-			<output>C4B546F134A016DADA8E7C478B1E7D45</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F7B6F476517483AD69062A3BAE2C970124CDF21278BDA3E0</key>
-			<input>C4B546F134A016DADA8E7C478B1E7D45</input>
-			<output>298524C5D468EBFA97DEFEC7B80EE752</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8E0C5244F7417C2440830EFE7A447CFBB3130CD5C0B344B2</key>
-			<input>298524C5D468EBFA97DEFEC7B80EE752</input>
-			<output>B27EFB90BA3A27A1077C6742D5B68396</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6E8F264FA0C9A9AF2FDF56EC07E5B5AB46F6B971505C724</key>
-			<input>B27EFB90BA3A27A1077C6742D5B68396</input>
-			<output>D02C27A94DD3B772B338C7462379B009</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AD694D243DCC6B7B22D1D2C78DADEC280757ACD1367C772D</key>
-			<input>D02C27A94DD3B772B338C7462379B009</input>
-			<output>1CED06084E67BA4BAD3C331F4074B9FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>68AEF48D86D395583E3CD4CFC3CA5663AA6B9FCE7608CED2</key>
-			<input>1CED06084E67BA4BAD3C331F4074B9FF</input>
-			<output>C0D7811FE8630B3E7C3A60DA9042A6B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>670A8D40573F598AFEEB55D02BA95D5DD651FF14E64A6860</key>
-			<input>C0D7811FE8630B3E7C3A60DA9042A6B2</input>
-			<output>45F92C84CE2AEC6E7953C8AAC5901D0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D44FD97B0D59C923BB127954E583B133AF0237BE23DA756F</key>
-			<input>45F92C84CE2AEC6E7953C8AAC5901D0F</input>
-			<output>23A4863C994EFE93E7CE1C89FE14143D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E08C6A539C74A6598B6FF687CCD4FA048CC2B37DDCE6152</key>
-			<input>23A4863C994EFE93E7CE1C89FE14143D</input>
-			<output>85EB5F46988211E3077FDBE38F1EBE6B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>21B17D5E461224B31D5DA02EE44F5E434FB3F0D452D0DF39</key>
-			<input>85EB5F46988211E3077FDBE38F1EBE6B</input>
-			<output>59CF6CCC81A8BC17A52D7550B40C7514</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6CC595309F161F3E4492CCE265E7E254EA9E8584E6DCAA2D</key>
-			<input>59CF6CCC81A8BC17A52D7550B40C7514</input>
-			<output>13DF4C2AA74A4B9123B3A57FE94F85BE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>77B90151B41B1B7D574D80C8C2ADA9C5C92D20FB0F932F93</key>
-			<input>13DF4C2AA74A4B9123B3A57FE94F85BE</input>
-			<output>6DEDE53AD5DC2A87744DA0EA561977A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8E1683C57C1817C23AA065F217718342BD608011598A5830</key>
-			<input>6DEDE53AD5DC2A87744DA0EA561977A3</input>
-			<output>F9D912AAB5ED1ACBD0475411DF98F49C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E9FDD94AE4B4FABAC3797758A29C99896D27D4008612ACAC</key>
-			<input>F9D912AAB5ED1ACBD0475411DF98F49C</input>
-			<output>853C907D9FD35B61D2ABBE5C1A89DB4B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BCC524DF4D452AE14645E7253D4FC2E8BF8C6A5C9C9B77E7</key>
-			<input>853C907D9FD35B61D2ABBE5C1A89DB4B</input>
-			<output>874C4BC1993FBA12136443B57F9523BE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9F5EFA7196589240C109ACE4A47078FAACE829E9E30E5459</key>
-			<input>874C4BC1993FBA12136443B57F9523BE</input>
-			<output>E6B6E9133DD0EC2844EF3CC0C2F9E4AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2F0731DB4FA3024127BF45F799A094D2E807152921F7B0F5</key>
-			<input>E6B6E9133DD0EC2844EF3CC0C2F9E4AC</input>
-			<output>20B41EE01134041DF8D11BB7F86928EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7E44D240F06AAA5E070B5B17889490CF10D60E9ED99E981F</key>
-			<input>20B41EE01134041DF8D11BB7F86928EA</input>
-			<output>BF6B03096DCDC052B1325CC34BF6E56C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D8D3E3D538C8CA34B860581EE559509DA1E4525D92687D73</key>
-			<input>BF6B03096DCDC052B1325CC34BF6E56C</input>
-			<output>5ED3E40FB5C34DD1F370C3AD72C7C24D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F3DF20767CDA5E0CE6B3BC11509A1D4C529491F0E0AFBF3E</key>
-			<input>5ED3E40FB5C34DD1F370C3AD72C7C24D</input>
-			<output>3EA6BCE2317C5D696DF8240C481B34DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>484932A15D75173FD81500F361E640253F6CB5FCA8B48BE3</key>
-			<input>3EA6BCE2317C5D696DF8240C481B34DD</input>
-			<output>41D6E077746FE1A9307E1107631A5D2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EF960956685DE1CE99C3E0841589A18C0F12A4FBCBAED6CF</key>
-			<input>41D6E077746FE1A9307E1107631A5D2C</input>
-			<output>D0C6DDEF0A623686BA303C278D445964</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>82477D8D682C1D4849053D6B1FEB970AB52298DC46EA8FAB</key>
-			<input>D0C6DDEF0A623686BA303C278D445964</input>
-			<output>EEFFA6025D6CAFBF9DC18E5B1B99A6ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>15D8DCF80A26856AA7FA9B69428738B528E316875D732946</key>
-			<input>EEFFA6025D6CAFBF9DC18E5B1B99A6ED</input>
-			<output>38E222ABAA07CDAE9CC02FAC84EC0FC1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>556151278277D7579F18B9C2E880F51BB423392BD99F2687</key>
-			<input>38E222ABAA07CDAE9CC02FAC84EC0FC1</input>
-			<output>B00C719E6A320E4385794EB7F23C0D80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>777F91003E4410572F14C85C82B2FB58315A779C2BA32B07</key>
-			<input>B00C719E6A320E4385794EB7F23C0D80</input>
-			<output>0E667CA932023D2EFD8DDBDED5A43D78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>130507FC817F14432172B4F5B0B0C676CCD7AC42FE07167F</key>
-			<input>0E667CA932023D2EFD8DDBDED5A43D78</input>
-			<output>6B15DA892F0B5916F31BB74FC7D03F9A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D045A84BBF62DE2E4A676E7C9FBB9F603FCC1B0D39D729E5</key>
-			<input>6B15DA892F0B5916F31BB74FC7D03F9A</input>
-			<output>EBEF6DC298D63BF6E6E46F833B217033</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7742FB68CDF60735A18803BE076DA496D928748E02F659D6</key>
-			<input>EBEF6DC298D63BF6E6E46F833B217033</input>
-			<output>48DC6F65F193AFCCE559EA6F04FBD79A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5CE32BC22C77B664E9546CDBF6FE0B5A3C719EE1060D8E4C</key>
-			<input>48DC6F65F193AFCCE559EA6F04FBD79A</input>
-			<output>D0596880F92716C51E41519C640AEFDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2DA6B73C5131E24C390D045B0FD91D9F2230CF7D62076196</key>
-			<input>D0596880F92716C51E41519C640AEFDA</input>
-			<output>ABB7C3E499086F53C4DB97640168943B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E41C1A826978491892BAC7BF96D172CCE6EB5819636FF5AD</key>
-			<input>ABB7C3E499086F53C4DB97640168943B</input>
-			<output>0CC58B3D0370317E1025E1AF97962646</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>501012EE411DCDC59E7F4C8295A143B2F6CEB9B6F4F9D3EB</key>
-			<input>0CC58B3D0370317E1025E1AF97962646</input>
-			<output>28920AED2B644C4346FC146903887244</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>97B7E8C1147A5062B6ED466FBEC50FF1B032ADDFF771A1AF</key>
-			<input>28920AED2B644C4346FC146903887244</input>
-			<output>E7A28DA5EC871DAF8C2D196C7ED8977F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>988B9928402BCD63514FCBCA5242125E3C1FB4B389A936D0</key>
-			<input>E7A28DA5EC871DAF8C2D196C7ED8977F</input>
-			<output>013876A92413AED2E360A241FE021B25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3432357430ACC9135077BD637651BC8CDF7F16F277AB2DF5</key>
-			<input>013876A92413AED2E360A241FE021B25</input>
-			<output>10F1A56A8CFDA1D5044D5D0E53F6A773</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CE94F859CD3E85F440861809FAAC1D59DB324BFC245D8A86</key>
-			<input>10F1A56A8CFDA1D5044D5D0E53F6A773</input>
-			<output>941C717EE6642DD474719F099AEEB1EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1BFA52EA232FDF0D49A69771CC8308DAF43D4F5BEB33B6D</key>
-			<input>941C717EE6642DD474719F099AEEB1EB</input>
-			<output>F31B47230ABC94977E14E1080528C1C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>37B36A8E7A3B4F2A27812E541674A41AD15735FDBB9BFAA4</key>
-			<input>F31B47230ABC94977E14E1080528C1C9</input>
-			<output>A91264221890CA93541B662F64A11C62</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>04F603F98A9D1AC78E934A760EE46E89854C53D2DF3AE6C6</key>
-			<input>A91264221890CA93541B662F64A11C62</input>
-			<output>05F5171B639825EC67A37B3671F2F884</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A294EBBBD53D18DD8B665D6D6D7C4B65E2EF28E4AEC81E42</key>
-			<input>05F5171B639825EC67A37B3671F2F884</input>
-			<output>B6FE84EB2987DE956953DEBA6FD2E029</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E0E38A82F60E8EED3D98D98644FB95F08BBCF65EC11AFE6B</key>
-			<input>B6FE84EB2987DE956953DEBA6FD2E029</input>
-			<output>2741338CF00FBC70C4B1C67C97E85B97</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2193D386143F6D761AD9EA0AB4F429804F0D302256F2A5FC</key>
-			<input>2741338CF00FBC70C4B1C67C97E85B97</input>
-			<output>E56C7C453E2E13028AD812F9CDB78E2F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>05AD3BC4F1B29F17FFB5964F8ADA3A82C5D522DB9B452BD3</key>
-			<input>E56C7C453E2E13028AD812F9CDB78E2F</input>
-			<output>9A9B49AC0691F1576D515E935F042229</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1588C005075F4674652EDFE38C4BCBD5A8847C48C44109FA</key>
-			<input>9A9B49AC0691F1576D515E935F042229</input>
-			<output>143E5F64AD38373D3B54FA24CC7C0AF5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>731083CCCB22E7CF711080872173FCE893D0866C083D030F</key>
-			<input>143E5F64AD38373D3B54FA24CC7C0AF5</input>
-			<output>61F6AF426601588CB7C525255EC1A06D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DACEE3906B98DFC110E62FC54772A4642415A34956FCA362</key>
-			<input>61F6AF426601588CB7C525255EC1A06D</input>
-			<output>DB5DC1C3B3413F653D72F8744C2DD881</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D9ACA0F56DCA4FC0CBBBEE06F4339B0119675B3D1AD17BE3</key>
-			<input>DB5DC1C3B3413F653D72F8744C2DD881</input>
-			<output>4E9D548DA49E992AD3123F53558909C9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>12C2FE0C57D21C208526BA8B50AD022BCA75646E4F58722A</key>
-			<input>4E9D548DA49E992AD3123F53558909C9</input>
-			<output>EB2E835192E64ABC30C3F2662B703C47</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7A43322D6174BA786E0839DAC24B4897FAB6960864284E6D</key>
-			<input>EB2E835192E64ABC30C3F2662B703C47</input>
-			<output>CD0690863F63F2B263D4C11190A7985B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EBC6D71978D39185A30EA95CFD28BA2599625719F48FD636</key>
-			<input>CD0690863F63F2B263D4C11190A7985B</input>
-			<output>C044E800B65CA78559D0642C370C7D3E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1B6CE2EEC5FC386634A415C4B741DA0C0B23335C383AB08</key>
-			<input>C044E800B65CA78559D0642C370C7D3E</input>
-			<output>F1A81B68F6E5A6271A8CB24E7D9491EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
\ No newline at end of file
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloDecryptECB256.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6400 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo DEC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>058CCFFDBBCB382D1F6F56585D8A4ADE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>85C6B2BB2300148F945AEBF1F021CF79058CCFFDBBCB382D1F6F56585D8A4ADE</key>
-			<input>058CCFFDBBCB382D1F6F56585D8A4ADE</input>
-			<output>15173A0EB65F5CC05E704EFE61D9E346</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2447EC44111548FBB670B98F182D5DEE109BF5F30D9464ED411F18A63C53A998</key>
-			<input>15173A0EB65F5CC05E704EFE61D9E346</input>
-			<output>85F083ACC676D91EDD1ABFB43935237A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>85D3E1D750CAA89BEE274AA7C32C2207956B765FCBE2BDF39C05A71205668AE2</key>
-			<input>85F083ACC676D91EDD1ABFB43935237A</input>
-			<output>42C8F0ABC58E0BEAC32911D2DD9FA8C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CE86B24954745B2BAAF27010202EE7FAD7A386F40E6CB6195F2CB6C0D8F9222A</key>
-			<input>42C8F0ABC58E0BEAC32911D2DD9FA8C8</input>
-			<output>5E44123D2CA07981B073BB2749F557D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CD7BCBBA4555A0D034FD7B528A1D042C89E794C922CCCF98EF5F0DE7910C75FC</key>
-			<input>5E44123D2CA07981B073BB2749F557D6</input>
-			<output>8B649458EA90F4F7E13467E509B7F164</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EF28DFAED7794B1C7B892F3C98FCDC9602830091C85C3B6F0E6B6A0298BB8498</key>
-			<input>8B649458EA90F4F7E13467E509B7F164</input>
-			<output>F240D1F579DA2CA8839F7072DF52EBA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C66605EC92F96B49F08CBC6276A0DC68F0C3D164B18617C78DF41A7047E96F3B</key>
-			<input>F240D1F579DA2CA8839F7072DF52EBA3</input>
-			<output>B05297490A394B4A1736DE7F8DC12969</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>347403B6E6344E1525B8D2BD4DCA343F4091462DBBBF5C8D9AC2C40FCA284652</key>
-			<input>B05297490A394B4A1736DE7F8DC12969</input>
-			<output>8BA49D44B98E67501235CE1C2F26BB28</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B932CD0C70488602C56F92A0DA57BE27CB35DB6902313BDD88F70A13E50EFD7A</key>
-			<input>8BA49D44B98E67501235CE1C2F26BB28</input>
-			<output>86CE4E4D040C49F2717407157454162E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>28F8B6B4AB2B0B81F3676F6E422D438C4DFB9524063D722FF9830D06915AEB54</key>
-			<input>86CE4E4D040C49F2717407157454162E</input>
-			<output>4E9CA7FB0FF9F38FC821CA91052483F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5CD19F4D3C5B58602B101E15B39F51E4036732DF09C481A031A2C797947E68AD</key>
-			<input>4E9CA7FB0FF9F38FC821CA91052483F9</input>
-			<output>55E49ED59245C1850CB0C17C1CEEA05E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E822BB0D1F25F3DCA6FE0CB1A8AF39F15683AC0A9B8140253D1206EB8890C8F3</key>
-			<input>55E49ED59245C1850CB0C17C1CEEA05E</input>
-			<output>F7F0BFA319AC289C9F64E6FCDD531B44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8B64FF354C6E303F14EA34C9F667FEC9A17313A9822D68B9A276E01755C3D3B7</key>
-			<input>F7F0BFA319AC289C9F64E6FCDD531B44</input>
-			<output>6ACB8A177226AE47E2170F77D2FE4923</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A9D440EBAC3F3625E229B66C5D9249CCBB899BEF00BC6FE4061EF60873D9A94</key>
-			<input>6ACB8A177226AE47E2170F77D2FE4923</input>
-			<output>BAA9BB819332A87D6004164927EAC699</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>97F92B9AD44A3182FF10E07747C560B37111223F63396E832065F929A0D75C0D</key>
-			<input>BAA9BB819332A87D6004164927EAC699</input>
-			<output>EB84793E2D68632900B0517392EC4B94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2AEEBA2AC59870A7B4274B80FE74D55A9A955B014E510DAA20D5A85A323B1799</key>
-			<input>EB84793E2D68632900B0517392EC4B94</input>
-			<output>6C662FBE2B22394CC1D45453772C72BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EEA4B3C4F96C42E3B7DF5A3870C85B69F6F374BF657334E6E101FC0945176523</key>
-			<input>6C662FBE2B22394CC1D45453772C72BA</input>
-			<output>70D2BBC1FA7D49848D94112DA93A3C3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F930D1529C654F31549809C6CD5CC4608621CF7E9F0E7D626C95ED24EC2D591F</key>
-			<input>70D2BBC1FA7D49848D94112DA93A3C3C</input>
-			<output>1AFF91E67039133946638E4E505310C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5D0F461C1A5FF7BA5C93F0CED9DD49FF9CDE5E98EF376E5B2AF6636ABC7E49DD</key>
-			<input>1AFF91E67039133946638E4E505310C2</input>
-			<output>8E4358B22DE7BCDC8B8409E6250633BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA4B475845EB19F601856A40AB517594129D062AC2D0D287A1726A8C99787A62</key>
-			<input>8E4358B22DE7BCDC8B8409E6250633BF</input>
-			<output>2A79FE5A222C9503954346D6C15AC679</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9703F4DD85A3BE85343FFD15950A266B38E4F870E0FC478434312C5A5822BC1B</key>
-			<input>2A79FE5A222C9503954346D6C15AC679</input>
-			<output>0FF812C5B863282C294D7069F830EE86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3DD1B2ACBC6568851E767D20D82AD324371CEAB5589F6FA81D7C5C33A012529D</key>
-			<input>0FF812C5B863282C294D7069F830EE86</input>
-			<output>D449218625DE49D2B9514E032CA096E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>95CC16235D3DFF4F7DB2116D2B380F39E355CB337D41267AA42D12308CB2C47A</key>
-			<input>D449218625DE49D2B9514E032CA096E7</input>
-			<output>F951EAC3BC78DB0AE13FDC33048D2D81</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A6F55AFBDA7EA939F6F2A28530C416781A0421F0C139FD704512CE03883FE9FB</key>
-			<input>F951EAC3BC78DB0AE13FDC33048D2D81</input>
-			<output>7D5A03A955F6403F918AC915AC22B797</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C5D39885F4C0F4FCF672321B711C5B7675E225994CFBD4FD4980716241D5E6C</key>
-			<input>7D5A03A955F6403F918AC915AC22B797</input>
-			<output>CA2E1C274073AD2A3AE35C60ECA52A58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E7B914B84BFA1A2D7BD409AFADD2EDCAD703E7ED4BC1065EE7B5B76C8B87434</key>
-			<input>CA2E1C274073AD2A3AE35C60ECA52A58</input>
-			<output>C5048FA0148CED10A06E107269DA9C95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F62D8C4822C5F89D51E3C68695D91CA66874B1DEC030FD754E154B04A162E8A1</key>
-			<input>C5048FA0148CED10A06E107269DA9C95</input>
-			<output>CB9B457A7A24577DA71AC335F0572DAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C37AAD7CB20087F4B98390C59D3ECFB2A3EFF4A4BA14AA08E90F88315135C50A</key>
-			<input>CB9B457A7A24577DA71AC335F0572DAB</input>
-			<output>FA60BFF170DD30C29DF1807C1612CD67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A2C6858B37D0341BF8796FB72D00B72598F4B55CAC99ACA74FE084D4727086D</key>
-			<input>FA60BFF170DD30C29DF1807C1612CD67</input>
-			<output>E2FACFB5DF4E69C911838FCC546D0C8E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>039B73E3A8DCF3C678FBC246AAECDAECBB7584E01587F303657D8781134A04E3</key>
-			<input>E2FACFB5DF4E69C911838FCC546D0C8E</input>
-			<output>749AB2B9176AFDB8B6714DF44BBF2B58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>773D90EA7ECA29DFD9141A42EB2BBC64CFEF365902ED0EBBD30CCA7558F52FBB</key>
-			<input>749AB2B9176AFDB8B6714DF44BBF2B58</input>
-			<output>0285E58D09A8D33FB196FD16A8DF37C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>598262B046B44784D977F6BE2553C6ACCD6AD3D40B45DD84629A3763F02A187B</key>
-			<input>0285E58D09A8D33FB196FD16A8DF37C0</input>
-			<output>1C952C46AE829D8805031A44F9D85521</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AFAE657D3220CD1E6199A49754525F4AD1FFFF92A5C7400C67992D2709F24D5A</key>
-			<input>1C952C46AE829D8805031A44F9D85521</input>
-			<output>EED0A47E63FF354B4D9C53F7FD75D720</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A61F583BCFD120B8CABE1E4C616F4FC73F2F5BECC63875472A057ED0F4879A7A</key>
-			<input>EED0A47E63FF354B4D9C53F7FD75D720</input>
-			<output>10C1F0F7C32AD36F03AEA8DCE6AAE7BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FB76D4B83A7F50482A92F5A92CB60F522FEEAB1B0512A62829ABD60C122D7DC6</key>
-			<input>10C1F0F7C32AD36F03AEA8DCE6AAE7BC</input>
-			<output>372488DF6543180F1F2AE15E5B0C8785</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>35EAC2BA73F55570CB727220C027FE6218CA23C46051BE27368137524921FA43</key>
-			<input>372488DF6543180F1F2AE15E5B0C8785</input>
-			<output>3DE420FF3699D68DB69966F57D09045A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>48B6E08B9FD9B5C130E1829CD4540D9C252E033B56C868AA801851A73428FE19</key>
-			<input>3DE420FF3699D68DB69966F57D09045A</input>
-			<output>7858F396DC520131C789CB8F8C919CCD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DB39C13F29241FF29C5BEB839705AD5B5D76F0AD8A9A699B47919A28B8B962D4</key>
-			<input>7858F396DC520131C789CB8F8C919CCD</input>
-			<output>07BE8BBF9FCD7D04888E61935DD7222F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A5F9B675531AB58C1FFC316C9359EA335AC87B121557149FCF1FFBBBE56E40FB</key>
-			<input>07BE8BBF9FCD7D04888E61935DD7222F</input>
-			<output>EDD619B7C12E2AF6BDAA953B2E7871EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A02D1F14A64BBC67DD7EE9EAB3FB0EADB71E62A5D4793E6972B56E80CB163114</key>
-			<input>EDD619B7C12E2AF6BDAA953B2E7871EF</input>
-			<output>C748CDB645F1A1E44A63FAF00B2C3A45</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>177D7A6843B5ABBEB212E68734A7A05C7056AF1391889F8D38D69470C03A0B51</key>
-			<input>C748CDB645F1A1E44A63FAF00B2C3A45</input>
-			<output>BD3ED4C8CD7DBF4299AC63FE119D291E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD9BDC6BD09DEED3E75C918BE55E5332CD687BDB5CF520CFA17AF78ED1A7224F</key>
-			<input>BD3ED4C8CD7DBF4299AC63FE119D291E</input>
-			<output>A16B82F958441E90A965427C854EECBB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6325C33EC76F8EDE02707A3AE82F1096C03F92204B13E5F081FB5F254E9CEF4</key>
-			<input>A16B82F958441E90A965427C854EECBB</input>
-			<output>E04E642689D1AB78E7CDE26D0563901C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B8543DB3071AB9F0802D4106FBDA59648C4D9D048D609527EFD2579F518A5EE8</key>
-			<input>E04E642689D1AB78E7CDE26D0563901C</input>
-			<output>08E59C72C13C030DA3C50300861EA097</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ECDD43A6B225DB325BFFE5462B66E97884A801764C5C962A4C17549FD794FE7F</key>
-			<input>08E59C72C13C030DA3C50300861EA097</input>
-			<output>C224B2EFEE07AAC33F1F6EB1295D9A50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>741D627C8B47BED4497C71FDC9854912468CB399A25B3CE973083A2EFEC9642F</key>
-			<input>C224B2EFEE07AAC33F1F6EB1295D9A50</input>
-			<output>1653CE734D27B44369D4FE582E7A885F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A47BDC62B1D80815AC6BF04481C5601F50DF7DEAEF7C88AA1ADCC476D0B3EC70</key>
-			<input>1653CE734D27B44369D4FE582E7A885F</input>
-			<output>CADC89828B6147FAEC581DDCFF3C0960</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CB91E738F51C111DAC2E0A3BF7B076A39A03F468641DCF50F684D9AA2F8FE510</key>
-			<input>CADC89828B6147FAEC581DDCFF3C0960</input>
-			<output>49402F0F4AFA2518D57C5D1CFCECC0F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BDA1FFAEE7B93EDFCA4374871A149550D343DB672EE7EA4823F884B6D36325E2</key>
-			<input>49402F0F4AFA2518D57C5D1CFCECC0F2</input>
-			<output>EBFF53AB449DE5A53EDC6E595AA47B10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>18D865B8E8C779268D3876C22AF479FB38BC88CC6A7A0FED1D24EAEF89C75EF2</key>
-			<input>EBFF53AB449DE5A53EDC6E595AA47B10</input>
-			<output>30073458509F9AC9DA21B2DF566AB3BE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>967E2580238300563A34A6E70D84B4FF08BBBC943AE59524C7055830DFADED4C</key>
-			<input>30073458509F9AC9DA21B2DF566AB3BE</input>
-			<output>5AB9F90CC2A7603A68E2ACA95A2DE55D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A469A4E2F0B3847F3B52886FAD7DBAF652024598F842F51EAFE7F49985800811</key>
-			<input>5AB9F90CC2A7603A68E2ACA95A2DE55D</input>
-			<output>F22A13F395B6064172CA9DC572C26B2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9EA4946ED73FF8BB8700C18967C01968A028566B6DF4F35FDD2D695CF742633F</key>
-			<input>F22A13F395B6064172CA9DC572C26B2E</input>
-			<output>26E44B9F3DEBA8EE3531DDFA42F1DC14</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3D25EEEACEF18702FD3896283CFF8A8386CC1DF4501F5BB1E81CB4A6B5B3BF2B</key>
-			<input>26E44B9F3DEBA8EE3531DDFA42F1DC14</input>
-			<output>32D9F05174FFF34594E952B7ADE09737</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8BF2A692F6A35980C0CF02FF4650871BB415EDA524E0A8F47CF5E6111853281C</key>
-			<input>32D9F05174FFF34594E952B7ADE09737</input>
-			<output>7BEF027DEB1FF22774CE8A8A101DD41B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C90BF0E1A8B615B4C8BD318260BB80AECFFAEFD8CFFF5AD3083B6C9B084EFC07</key>
-			<input>7BEF027DEB1FF22774CE8A8A101DD41B</input>
-			<output>CF6B2444DFBBFE5B6A1CA99F2D13DE9A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C2A4C82B4AAEE0A22315026C6FE396900091CB9C1044A4886227C504255D229D</key>
-			<input>CF6B2444DFBBFE5B6A1CA99F2D13DE9A</input>
-			<output>14AD8C7B0F0460A3F48D5CD2CFFB385C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BF76E610192E2AEF42FF8F487CDDC318143C47E71F40C42B96AA99D6EAA61AC1</key>
-			<input>14AD8C7B0F0460A3F48D5CD2CFFB385C</input>
-			<output>A5A850FC44A09C5985CE9661AF84F186</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1E42AEC368C600F18CBFA305EB559946B194171B5BE0587213640FB74522EB47</key>
-			<input>A5A850FC44A09C5985CE9661AF84F186</input>
-			<output>E2895D416951FDA66B695ABFA313F89D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E9BC121E32849DAA501BEA4E534D9C2531D4A5A32B1A5D4780D5508E63113DA</key>
-			<input>E2895D416951FDA66B695ABFA313F89D</input>
-			<output>91E93AAECC5FB253F7463F101B2A4132</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ACC045A67F680F14D3F8DA454C922071C2F470F4FEEE17878F4B6A18FD1B52E8</key>
-			<input>91E93AAECC5FB253F7463F101B2A4132</input>
-			<output>F0F339022B4001E72F3BCC1A140603AD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4B47D2639B4A04D3C87D35DB4E63E563320749F6D5AE1660A070A602E91D5145</key>
-			<input>F0F339022B4001E72F3BCC1A140603AD</input>
-			<output>DBECAFF90EDD4555A5D9A23817520D51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C73B1C617BE90F2710DFF2C3AC60E0F9E9EBE60FDB73533505A9043AFE4F5C14</key>
-			<input>DBECAFF90EDD4555A5D9A23817520D51</input>
-			<output>73315A63A8889095AFED497AEFE657B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F368758F7B303DE356481ED8EBFA46F9ADABC6C73FBC3A0AA444D4011A90BA0</key>
-			<input>73315A63A8889095AFED497AEFE657B4</input>
-			<output>3AB7E2F81D24D857308A1FC785559333</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6D7EF76412498AB3C70AA3006CC87188A06D5E946EDF1BF79ACE528794FC9893</key>
-			<input>3AB7E2F81D24D857308A1FC785559333</input>
-			<output>7EAA2814E372F674AB0B6E0E428D1AF4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D626AD50A7B86153BF9215A6A8F7E908DEC776808DADED8331C53C89D6718267</key>
-			<input>7EAA2814E372F674AB0B6E0E428D1AF4</input>
-			<output>ADD212A59AC9EF6A55AEAC22D35A1BFE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4B9C7ED9AC7835C87DAB8BEF3ED6878B73156425176402E9646B90AB052B9999</key>
-			<input>ADD212A59AC9EF6A55AEAC22D35A1BFE</input>
-			<output>203ECD34AE1BB2F23BC673DBD74FA07B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E34FBDEF9D81B464DD1138093F132051532BA911B97FB01B5FADE370D26439E2</key>
-			<input>203ECD34AE1BB2F23BC673DBD74FA07B</input>
-			<output>0A18AFD5EEBBD338299897EA1F01324C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>77BD51D39775121C22343FFC66D40F0B593306C457C463237635749ACD650BAE</key>
-			<input>0A18AFD5EEBBD338299897EA1F01324C</input>
-			<output>2892A6AE9517642A0977942360FB8104</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2761BF5478726AF184C86B45AE331A7E71A1A06AC2D307097F42E0B9AD9E8AAA</key>
-			<input>2892A6AE9517642A0977942360FB8104</input>
-			<output>8A4CD7685B9A1E663C3130C34BC418B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DD168B81E90D806FF468BE5E551F3344FBED77029949196F4373D07AE65A9213</key>
-			<input>8A4CD7685B9A1E663C3130C34BC418B9</input>
-			<output>C7C0A15A1A22363B378D5DD27A69D4C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3442C07C0E98F523F9278D934F424BD83C2DD658836B2F5474FE8DA89C3346D1</key>
-			<input>C7C0A15A1A22363B378D5DD27A69D4C2</input>
-			<output>55A8EF8CAE213FE3FD6AA77E7415400A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>291BD1577921B2947BC470C19727F0BD698539D42D4A10B789942AD6E82606DB</key>
-			<input>55A8EF8CAE213FE3FD6AA77E7415400A</input>
-			<output>0B07BEB71461356645936996AC45EB87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>46475B4C21F0F4895FEFCC67632DBCDC62828763392B25D1CC0743404463ED5C</key>
-			<input>0B07BEB71461356645936996AC45EB87</input>
-			<output>6DFA5978F740C18CEE6F70FF50008BFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CF89BDDE5D363B3C44DB6FED2DAB47AA0F78DE1BCE6BE45D226833BF146366A1</key>
-			<input>6DFA5978F740C18CEE6F70FF50008BFD</input>
-			<output>6F58747F0336A2C4D2A397511E06D703</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>85F7D4A4503F7C3D52998384F8B29BEF6020AA64CD5D4699F0CBA4EE0A65B1A2</key>
-			<input>6F58747F0336A2C4D2A397511E06D703</input>
-			<output>32AC7B1B8FFA7D411F46C129EEFFAF13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CDE87D2DFB6198CFC737D93433419757528CD17F42A73BD8EF8D65C7E49A1EB1</key>
-			<input>32AC7B1B8FFA7D411F46C129EEFFAF13</input>
-			<output>CF5D039714814E72ECE7B9D5D1B27D11</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BCB9F75F11496AABFE2633E393B59B449DD1D2E8562675AA036ADC12352863A0</key>
-			<input>CF5D039714814E72ECE7B9D5D1B27D11</input>
-			<output>3455F997002A1818967E2679A07C1D56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>99E143B3524E724A009533AEC659E15BA9842B7F560C6DB29514FA6B95547EF6</key>
-			<input>3455F997002A1818967E2679A07C1D56</input>
-			<output>1F2113D44E290F1379A3CEC6D57D6279</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>90086C83794D6878FF2CE748ECA6EDF4B6A538AB182562A1ECB734AD40291C8F</key>
-			<input>1F2113D44E290F1379A3CEC6D57D6279</input>
-			<output>88866DB676AA3B21954AFDE0A0F33007</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FA254EB868F6CD5965346ACAE326BD2A3E23551D6E8F598079FDC94DE0DA2C88</key>
-			<input>88866DB676AA3B21954AFDE0A0F33007</input>
-			<output>A1665AD0252764E2691E65FEFB609CDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>92032C92FEEB0A5CD5D71AAF1BF5F47D9F450FCD4BA83D6210E3ACB31BBAB052</key>
-			<input>A1665AD0252764E2691E65FEFB609CDA</input>
-			<output>988CE348430A206546379A8C684C00F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CF32144187F7B98256B5B4204DFABC8807C9EC8508A21D0756D4363F73F6B0A3</key>
-			<input>988CE348430A206546379A8C684C00F1</input>
-			<output>60289F0B6A9ADD08BF8924AA6D7F4D12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A7BD244360E3C325F3EA315C86959DD867E1738E6238C00FE95D12951E89FDB1</key>
-			<input>60289F0B6A9ADD08BF8924AA6D7F4D12</input>
-			<output>FA3EA122499D7E083D81F147D9D68B09</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>86213610EDC35A883A3364E8D529C6459DDFD2AC2BA5BE07D4DCE3D2C75F76B8</key>
-			<input>FA3EA122499D7E083D81F147D9D68B09</input>
-			<output>8E0B2452EF0515FC554A0AADF107714D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>92CC3AE4A2A68CD93634075E902C66CB13D4F6FEC4A0ABFB8196E97F365807F5</key>
-			<input>8E0B2452EF0515FC554A0AADF107714D</input>
-			<output>463CEAE83A50BA54280E792AB6B29B94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6D86FA00DBB949A29D4A6166F1EF531E55E81C16FEF011AFA998905580EA9C61</key>
-			<input>463CEAE83A50BA54280E792AB6B29B94</input>
-			<output>416CA710B874E50CC98DF842B3435AD1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C9400C98A04F5041BE1C6090A866F7DA1484BB064684F4A36015681733A9C6B0</key>
-			<input>416CA710B874E50CC98DF842B3435AD1</input>
-			<output>3BA8BB5C572C0404E4B8199528825904</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ED5043E9699B37844033E8BD170588342F2C005A11A8F0A784AD71821B2B9FB4</key>
-			<input>3BA8BB5C572C0404E4B8199528825904</input>
-			<output>1D2812DE70AA2D59894DA4DA7FE906FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1964C6C301EEEF60B34E8E35175CAF8D320412846102DDFE0DE0D55864C29948</key>
-			<input>1D2812DE70AA2D59894DA4DA7FE906FC</input>
-			<output>2735CAAFE653442FFC2E878AE2829998</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>567B1E0737D0F72F82EB3A47D17209191531D82B875199D1F1CE52D2864000D0</key>
-			<input>2735CAAFE653442FFC2E878AE2829998</input>
-			<output>07B5FA4835E5DFC67E02F490A497145D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>89AAD6DCA6A8973580D02768EBC8372412842263B2B446178FCCA64222D7148D</key>
-			<input>07B5FA4835E5DFC67E02F490A497145D</input>
-			<output>A31272EC8623213B015811FAE12330CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4B4AB47A0DBA39907D8E919767E69518B196508F3497672C8E94B7B8C3F42443</key>
-			<input>A31272EC8623213B015811FAE12330CE</input>
-			<output>9132AB51C9738A62CABDE4977947E0BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BEC71999AEE5517C243B65830D30DEBB20A4FBDEFDE4ED4E4429532FBAB3C4FC</key>
-			<input>9132AB51C9738A62CABDE4977947E0BF</input>
-			<output>689375EA83B61894631E6EFA2D509531</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>77CE2C97A458300D7C95C6871CEB56D648378E347E52F5DA27373DD597E351CD</key>
-			<input>689375EA83B61894631E6EFA2D509531</input>
-			<output>AAA5C6C5917DFC103383DE6C79EB2BA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0AD691774612F7EFA41FE39B8B3A2D14E29248F1EF2F09CA14B4E3B9EE087A6B</key>
-			<input>AAA5C6C5917DFC103383DE6C79EB2BA6</input>
-			<output>29D9945BDB3770ED2A41D2760D0DC51D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4E1D42ADC4CEF6BAE3A5B9E08F7ACD65CB4BDCAA341879273EF531CFE305BF76</key>
-			<input>29D9945BDB3770ED2A41D2760D0DC51D</input>
-			<output>2F9B3C4E1FDCDC8F7D5DFBEA342284F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2D76A3E35C075DB14E40A59F46E07A81E4D0E0E42BC4A5A843A8CA25D7273B84</key>
-			<input>2F9B3C4E1FDCDC8F7D5DFBEA342284F2</input>
-			<output>ED4CFCF1C8D226EBACCC8FF11B1C81B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E7364D0D17D723A69C0BA956778BD0E9099C1C15E3168343EF6445D4CC3BBA3C</key>
-			<input>ED4CFCF1C8D226EBACCC8FF11B1C81B8</input>
-			<output>2F9B5E1392B767E8497F849D00E98193</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>709380C7012CB4272A69F6D4936B163E2607420671A1E4ABA61BC149CCD23BAF</key>
-			<input>2F9B5E1392B767E8497F849D00E98193</input>
-			<output>3BE783A4A38EFB44150AA7A08E1888F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>98FF27B8AB7B91F690231E24608076EF1DE0C1A2D22F1FEFB31166E942CAB359</key>
-			<input>3BE783A4A38EFB44150AA7A08E1888F6</input>
-			<output>F35AED9C83E53D2EADDE507345096218</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>24F9D2FF633EE9AAED7321CFCF4D1D20EEBA2C3E51CA22C11ECF369A07C3D141</key>
-			<input>F35AED9C83E53D2EADDE507345096218</input>
-			<output>A22BF93FD521A6E59C196022FF252DC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>70E491840BC5C42A878655E18E9AAAA74C91D50184EB842482D656B8F8E6FC83</key>
-			<input>A22BF93FD521A6E59C196022FF252DC2</input>
-			<output>11E67B52F8CD97D63268485EB546E1FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>098FF2D6DE55FF5C66D5AD7D5949643A5D77AE537C2613F2B0BE1EE64DA01D7D</key>
-			<input>11E67B52F8CD97D63268485EB546E1FE</input>
-			<output>1E67AF3F7E7FDEFB868696E96F718ACC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B89EA7CBAE57B8AD39F23B22A8F651A44310016C0259CD093638880F22D197B1</key>
-			<input>1E67AF3F7E7FDEFB868696E96F718ACC</input>
-			<output>332B0045710B2DD6EC3D619051580C7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>39F71BC56EBFA91088499DC41A0C5B5B703B01297352E0DFDA05E99F73899BCE</key>
-			<input>332B0045710B2DD6EC3D619051580C7F</input>
-			<output>86F3D75D18F7AB31C6C52C19B0C35023</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>417147DB03FDA0B26BEED7FE8A9487D5F6C8D6746BA54BEE1CC0C586C34ACBED</key>
-			<input>86F3D75D18F7AB31C6C52C19B0C35023</input>
-			<output>452E6C2DA8B93A1E282F1A86AECB9F15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C4336C26C20AD7811578044800A51E8EB3E6BA59C31C71F034EFDF006D8154F8</key>
-			<input>452E6C2DA8B93A1E282F1A86AECB9F15</input>
-			<output>637F010BAC28AC108331F4E26B262D3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D0369C75D40EEF29CF7588FB87EE2ED2D099BB526F34DDE0B7DE2BE206A779C2</key>
-			<input>637F010BAC28AC108331F4E26B262D3A</input>
-			<output>3F3DCA8B4C2DDFD556880A17FB575E7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4DE25218630A678C287EC42F93985D22EFA471D923190235E15621F5FDF027B9</key>
-			<input>3F3DCA8B4C2DDFD556880A17FB575E7B</input>
-			<output>3DA8C1D40B51A8BC6E728D7A1E6B3B2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C0526C3096805B532433C0248E153A00D20CB00D2848AA898F24AC8FE39B1C97</key>
-			<input>3DA8C1D40B51A8BC6E728D7A1E6B3B2E</input>
-			<output>449B050578191E4C156F7040EF27D5EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6A1B7384328BAA25B6A857FB12A90FD49697B5085051B4C59A4BDCCF0CBCC97B</key>
-			<input>449B050578191E4C156F7040EF27D5EC</input>
-			<output>D58ACA128F936803BDD5EC1E6DECAB04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44B7F3EB0EF0EF4325353D30F35C4D71431D7F1ADFC2DCC6279E30D16150627F</key>
-			<input>D58ACA128F936803BDD5EC1E6DECAB04</input>
-			<output>77F1011F968AD46338CA68D5DF37959E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E1E6BBD70AEAC4D65159422B3DFE82DF34EC7E05494808A51F545804BE67F7E1</key>
-			<input>77F1011F968AD46338CA68D5DF37959E</input>
-			<output>FC692161766A29C9E6A86C353E2F3FE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5C33A88179175BB12593D6574245A6A6C8855F643F22216CF9FC34318048C804</key>
-			<input>FC692161766A29C9E6A86C353E2F3FE5</input>
-			<output>F5FD2F77BC4908F470142417048C6233</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E6A3CDD47570AEC4FC3B3453F78F253F3D787013836B299889E8102684C4AA37</key>
-			<input>F5FD2F77BC4908F470142417048C6233</input>
-			<output>FBDC2774D7E426CBD8B62ABD0E0EAA6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4F5B3EDC53366D4C74D94663E17CBDB6C6A45767548F0F53515E3A9B8ACA0058</key>
-			<input>FBDC2774D7E426CBD8B62ABD0E0EAA6F</input>
-			<output>796D978C9D724C1C9445EC5BD272CEB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9119AD19E78100B3D04BED87FF5C22B5BFC9C0EBC9FD434FC51BD6C058B8CEE8</key>
-			<input>796D978C9D724C1C9445EC5BD272CEB0</input>
-			<output>15ECF7D3F516D3CBA0307959287A5BAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>600B4D7604FF2650611C453A50D02275AA2537383CEB9084652BAF9970C29543</key>
-			<input>15ECF7D3F516D3CBA0307959287A5BAB</input>
-			<output>DA67996084E9C74C143310FC3CF207DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3B8E0B73BBF745BB360EA50E7DA9B3297042AE58B80257C87118BF654C30929E</key>
-			<input>DA67996084E9C74C143310FC3CF207DD</input>
-			<output>6E9BC50580D45D54FEEC74830C0D9516</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>231592D0CE761359AE2E85CC4E4156A01ED96B5D38D60A9C8FF4CBE6403D0788</key>
-			<input>6E9BC50580D45D54FEEC74830C0D9516</input>
-			<output>A4B0F6A50C72C5EE755FA5595334DF2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7ABD82D278910B909B0D6219EF5E0D98BA699DF834A4CF72FAAB6EBF1309D8A6</key>
-			<input>A4B0F6A50C72C5EE755FA5595334DF2E</input>
-			<output>24CDAEEB54A1EB7E2D4A0BEE526EA6E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5C8F7B23850BD287F011E257D691F8979EA433136005240CD7E1655141677E46</key>
-			<input>24CDAEEB54A1EB7E2D4A0BEE526EA6E0</input>
-			<output>84F24CDC0AA63CEA2DDE8F94C8776765</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DF8EEE46309021F6E7D7D41908B6CABE1A567FCF6AA318E6FA3FEAC589101923</key>
-			<input>84F24CDC0AA63CEA2DDE8F94C8776765</input>
-			<output>EEA20542DEDB0B99A2144942FFEAC820</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8634A663D618B3BB54F44A5849170ACDF4F47A8DB478137F582BA38776FAD103</key>
-			<input>EEA20542DEDB0B99A2144942FFEAC820</input>
-			<output>CDD91737753BE9F672A60DD722202127</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E41913E97F21A4E6A948ABEB45279E0D392D6DBAC143FA892A8DAE5054DAF024</key>
-			<input>CDD91737753BE9F672A60DD722202127</input>
-			<output>E6E2F7846E06BB90F19B21521DD4D238</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1E63624B5EADBE7D42255F208CC7D348DFCF9A3EAF454119DB168F02490E221C</key>
-			<input>E6E2F7846E06BB90F19B21521DD4D238</input>
-			<output>0110CA2647D43C8BD012976113EFB860</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8476329019AA4D0D91C71E0DFFF47906DEDF5018E8917D920B0418635AE19A7C</key>
-			<input>0110CA2647D43C8BD012976113EFB860</input>
-			<output>CC9AACC98876387D09565F1A20D329AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DB1C0803BC1AD91C5621FA8C54AA83EF1245FCD160E745EF025247797A32B3D3</key>
-			<input>CC9AACC98876387D09565F1A20D329AF</input>
-			<output>55AB296D67DEEBA179AD8093C1952CC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5C0887FF7C888D7800C43BC9E88D9B3B47EED5BC0739AE4E7BFFC7EABBA79F11</key>
-			<input>55AB296D67DEEBA179AD8093C1952CC2</input>
-			<output>27016691505182706848CD5D7A2C5CAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0FFBE12ADFA17F3BF26622C20311D38960EFB32D57682C3E13B70AB7C18BC3BA</key>
-			<input>27016691505182706848CD5D7A2C5CAB</input>
-			<output>5E6C9FAF480FFE51D7687ADE203D5367</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C4C12330BC21062618E2E83EC3755DAC3E832C821F67D26FC4DF7069E1B690DD</key>
-			<input>5E6C9FAF480FFE51D7687ADE203D5367</input>
-			<output>082FF20DC6AFBA3888348E5724F5C526</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3F6BF56A0136C1058924FCD831A65EBC36ACDE8FD9C868574CEBFE3EC54355FB</key>
-			<input>082FF20DC6AFBA3888348E5724F5C526</input>
-			<output>67AE68CDDA349A067339F28FA216A188</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4AB9E8E9B5BB84353006AB43065C6B8F5102B64203FCF2513FD20CB16755F473</key>
-			<input>67AE68CDDA349A067339F28FA216A188</input>
-			<output>3316F37F97D679B78A537A0E107923AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E04DE045508423D735B20168C7974CC26214453D942A8BE6B58176BF772CD7D8</key>
-			<input>3316F37F97D679B78A537A0E107923AB</input>
-			<output>00AEB331686999C5F5FB1E7C6CCF1072</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D4D19E570760468E9703F0E49C4AC9F262BAF60CFC431223407A68C31BE3C7AA</key>
-			<input>00AEB331686999C5F5FB1E7C6CCF1072</input>
-			<output>29A5DB93D2AE9B1ED9714213EAD9AA1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6D6789354D2CC3EFA9ABFC466F21A6E24B1F2D9F2EED893D990B2AD0F13A6DB6</key>
-			<input>29A5DB93D2AE9B1ED9714213EAD9AA1C</input>
-			<output>E98426CB0F858A084EB66311188D9200</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>06ED66801B81943BF1640AAE222A23C7A29B0B5421680335D7BD49C1E9B7FFB6</key>
-			<input>E98426CB0F858A084EB66311188D9200</input>
-			<output>21527326577425261F2D40268C428E29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2232758279A806C21870C85273C12FA883C97872761C2613C89009E765F5719F</key>
-			<input>21527326577425261F2D40268C428E29</input>
-			<output>CC9393A43B8A8194C0EC29F989E597A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E7E22C2A6E6D4A1BFE7B706047094AF44F5AEBD64D96A787087C201EEC10E639</key>
-			<input>CC9393A43B8A8194C0EC29F989E597A6</input>
-			<output>714846062B262A823B24164900DF91AD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>89A78F64BCAEE02CAC92928134C2567C3E12ADD066B08D0533583657ECCF7794</key>
-			<input>714846062B262A823B24164900DF91AD</input>
-			<output>1D0AC79D1E9BB36A6A6A8E49538C08FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4F6E8D81296C95FAA0FE6F2D324A392223186A4D782B3E6F5932B81EBF437F6B</key>
-			<input>1D0AC79D1E9BB36A6A6A8E49538C08FF</input>
-			<output>403D8B10E0AB31493589AFFA8E8B1BEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>24E398291CF018E4666728F4F635F74D6325E15D98800F266CBB17E431C86485</key>
-			<input>403D8B10E0AB31493589AFFA8E8B1BEE</input>
-			<output>9E0516EDA401DAAF6AC013841C0D63C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F80CF8AF1FA463D2ED7C7F59C1B239B0FD20F7B03C81D589067B04602DC5074D</key>
-			<input>9E0516EDA401DAAF6AC013841C0D63C8</input>
-			<output>74B2B200922B21AA20A0C5860CFB7E4D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>577A5456424E1A76C3E113EB82CCDF34899245B0AEAAF42326DBC1E6213E7900</key>
-			<input>74B2B200922B21AA20A0C5860CFB7E4D</input>
-			<output>25AFF27E13888A638CDA2673D7F16AFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C623BBD4777E6EF9BC058DF5BA27BEAAC3DB7CEBD227E40AA01E795F6CF13FD</key>
-			<input>25AFF27E13888A638CDA2673D7F16AFD</input>
-			<output>A54F400AB9C52913D7302BA36BF217DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A8B33E433720C4B925C4F0315DDB73B00972F7C404E757537D31CC369D3D0420</key>
-			<input>A54F400AB9C52913D7302BA36BF217DD</input>
-			<output>48A263A07112AA95EA1414CE03545790</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DA864B91AED3E2FAC25782F4A50C13C841D0946475F5FDC69725D8F89E6953B0</key>
-			<input>48A263A07112AA95EA1414CE03545790</input>
-			<output>541547E924522E59C1721D130B64D92F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EEB5FF6F9C435510E12934F5E806553E15C5D38D51A7D39F5657C5EB950D8A9F</key>
-			<input>541547E924522E59C1721D130B64D92F</input>
-			<output>5830544939EB4607145538388840248B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>24E609AD29E4C601189CB2FE119767884DF587C4684C95984202FDD31D4DAE14</key>
-			<input>5830544939EB4607145538388840248B</input>
-			<output>CBE1F82FD3318448AA36ADB5967EF865</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5A7EBB76C38C2E5F038612A06E84BB2C86147FEBBB7D11D0E83450668B335671</key>
-			<input>CBE1F82FD3318448AA36ADB5967EF865</input>
-			<output>3B104547D2D620879E3CB2B5774C0FB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>827EFCB7BC862C2466B8C79FC297AD3DBD043AAC69AB31577608E2D3FC7F59C5</key>
-			<input>3B104547D2D620879E3CB2B5774C0FB4</input>
-			<output>B667F7544FE49A07611A160E3312F69A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9BC6C18805144F98CAEA7B252B3EE2930B63CDF8264FAB501712F4DDCF6DAF5F</key>
-			<input>B667F7544FE49A07611A160E3312F69A</input>
-			<output>C3E928FDEB5D7DDF7CF32C4DBCFE32F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2BC00DF6D26F9A968C3BFF47AE761718C88AE505CD12D68F6BE1D89073939DAC</key>
-			<input>C3E928FDEB5D7DDF7CF32C4DBCFE32F3</input>
-			<output>72A9CF7AA2EDAF1907D77D10A02A45DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>15A0EE054E2D5E7EDCF3FC766860ACCDBA232A7F6FFF79966C36A580D3B9D872</key>
-			<input>72A9CF7AA2EDAF1907D77D10A02A45DE</input>
-			<output>97ABFAAD506940F88FDC8F55AD7EA919</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C56C11F3A96852119C16751963C24CD42D88D0D23F96396EE3EA2AD57EC7716B</key>
-			<input>97ABFAAD506940F88FDC8F55AD7EA919</input>
-			<output>DD55A02B1EB01EB091CA6337D0BEB5BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8634CC7B3416FCE337AAFA39791D1545F0DD70F9212627DE722049E2AE79C4D6</key>
-			<input>DD55A02B1EB01EB091CA6337D0BEB5BD</input>
-			<output>C5EB3DF5A328B267F3895CECD4A828AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DDC1361E1432CCAC3551E2478A321A0035364D0C820E95B981A9150E7AD1EC79</key>
-			<input>C5EB3DF5A328B267F3895CECD4A828AF</input>
-			<output>49952DACD97FD5583A7D9C4FF515EC17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>52658EEC2A7441D866CFA15944BB12857CA360A05B7140E1BBD489418FC4006E</key>
-			<input>49952DACD97FD5583A7D9C4FF515EC17</input>
-			<output>4971EEEF871E935AC470BD770802B04B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>05FC7A181B1935EA8DCEC961B0DFC14B35D28E4FDC6FD3BB7FA4343687C6B025</key>
-			<input>4971EEEF871E935AC470BD770802B04B</input>
-			<output>3DB5E9165C24EC3790DC3E53E5E5D2DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8D2793B7BDCF80338AA39C86008361BC08676759804B3F8CEF780A65622362FB</key>
-			<input>3DB5E9165C24EC3790DC3E53E5E5D2DE</input>
-			<output>1FDB5D4FBB59F082B3B617C8A23734F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>37BE37961B77866869826907BB9E9C1717BC3A163B12CF0E5CCE1DADC014560A</key>
-			<input>1FDB5D4FBB59F082B3B617C8A23734F1</input>
-			<output>8C59775AD3FF7C337B22C8E785321E25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F3184EA1C8FFE3D436BEE076AA999B659BE54D4CE8EDB33D27ECD54A4526482F</key>
-			<input>8C59775AD3FF7C337B22C8E785321E25</input>
-			<output>0CB834FCC0CFDAECAF4AFC5A2E38DF23</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CACF50D99B066EB84CBFAEEC9B0D6769975D79B0282269D188A629106B1E970C</key>
-			<input>0CB834FCC0CFDAECAF4AFC5A2E38DF23</input>
-			<output>229EB7B6A97D91921BCD8C95A0D7C17B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3FA80E4FB785B9FC3B058CC62D289958B5C3CE06815FF843936BA585CBC95677</key>
-			<input>229EB7B6A97D91921BCD8C95A0D7C17B</input>
-			<output>0D7692C281DD4FF35D9B1620E1385C34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CE2A3A893C96A4F1AA81AD52EBCC3C23B8B55CC40082B7B0CEF0B3A52AF10A43</key>
-			<input>0D7692C281DD4FF35D9B1620E1385C34</input>
-			<output>D3C5FE594F5C8C5A359235448EB20146</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FC8642DB8CB42D1B1251CB7FE6AFF90D6B70A29D4FDE3BEAFB6286E1A4430B05</key>
-			<input>D3C5FE594F5C8C5A359235448EB20146</input>
-			<output>8C0F88460C700D96847249807B84223F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2A9C9FD184A5B2418FD415A228A5C0AFE77F2ADB43AE367C7F10CF61DFC7293A</key>
-			<input>8C0F88460C700D96847249807B84223F</input>
-			<output>5A4237A5C2DABDCDA6389D5FC66032F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FDB533163E989D2FA32CCA5D3CC5D376BD3D1D7E81748BB1D928523E19A71BCC</key>
-			<input>5A4237A5C2DABDCDA6389D5FC66032F6</input>
-			<output>BF8AAC6B1536CCCCECCC9D6BE970EB3E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3C4B3CF0FD0C4292B2497175D4400F8902B7B1159442477D35E4CF55F0D7F0F2</key>
-			<input>BF8AAC6B1536CCCCECCC9D6BE970EB3E</input>
-			<output>97CE58407FD26D63C86765CB05EA6277</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>367862F3E2C5520EA2269392B6139E9C9579E955EB902A1EFD83AA9EF53D9285</key>
-			<input>97CE58407FD26D63C86765CB05EA6277</input>
-			<output>B411687B044B624077A92D8C130697B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0300AF491DAF6C607417FB1FD9B1EC612168812EEFDB485E8A2A8712E63B053C</key>
-			<input>B411687B044B624077A92D8C130697B9</input>
-			<output>D22E92A5132EA85F4FB25EE19C248008</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C92EF49A7D27E97F1884299B635F0ADF346138BFCF5E001C598D9F37A1F8534</key>
-			<input>D22E92A5132EA85F4FB25EE19C248008</input>
-			<output>FD6817CD680A2A8CE93E4B4F9CAA72AA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>80EABB1D8C9B5F769FCAC87ED8D0C9CA0E2E044694FFCA8D2CA692BCE6B5F79E</key>
-			<input>FD6817CD680A2A8CE93E4B4F9CAA72AA</input>
-			<output>8DDD9B3B9278D2DE3453EA6769E1C39C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FB345E2D7BBBED527259FAEAEA79C05D83F39F7D0687185318F578DB8F543402</key>
-			<input>8DDD9B3B9278D2DE3453EA6769E1C39C</input>
-			<output>AE69F5CD8D342E74113E979ACE3539F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7D93DC33FF2266770291160CD317C65E2D9A6AB08BB3362709CBEF4141610DF0</key>
-			<input>AE69F5CD8D342E74113E979ACE3539F2</input>
-			<output>30E19A4E84997172486DAE4FB4C41E58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>82362FF3E9C1AD93474CF4CABD354E7E1D7BF0FE0F2A475541A6410EF5A513A8</key>
-			<input>30E19A4E84997172486DAE4FB4C41E58</input>
-			<output>75B3D07617EB189512DC5161908940C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8EFD0FCB3855CCC16BD919FBD17596C768C8208818C15FC0537A106F652C5369</key>
-			<input>75B3D07617EB189512DC5161908940C1</input>
-			<output>FD13E89107FAFA44998721AD726C620F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2299D22282C798107F489637DCD479C395DBC8191F3BA584CAFD31C217403166</key>
-			<input>FD13E89107FAFA44998721AD726C620F</input>
-			<output>C1B0210C0387864717BD7D02063B6A69</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>75E05597A2BBDF23E5BD172C83548C9B546BE9151CBC23C3DD404CC0117B5B0F</key>
-			<input>C1B0210C0387864717BD7D02063B6A69</input>
-			<output>0E442B38E9024CCA5DC43A7B8D5F6FCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4DBC8DCB8C25B5F4AD374BA3064216555A2FC22DF5BE6F09808476BB9C2434C0</key>
-			<input>0E442B38E9024CCA5DC43A7B8D5F6FCF</input>
-			<output>8FD213EC19D62FD2C19E6C91B97E56A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E393BAD07E955EBC1446B847DE5A891ED5FDD1C1EC6840DB411A1A2A255A6260</key>
-			<input>8FD213EC19D62FD2C19E6C91B97E56A0</input>
-			<output>F52ADFD33A68EE198F33708E676D0CE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3F33A76F87DB0388C2D66C7F2EFAA1B820D70E12D600AEC2CE296AA442376E89</key>
-			<input>F52ADFD33A68EE198F33708E676D0CE9</input>
-			<output>7649EB4283505EEEE1BE16DB6677B3F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>04BC65DE70C9E01EEEDA5A507C218C8D569EE5505550F02C2F977C7F2440DD7C</key>
-			<input>7649EB4283505EEEE1BE16DB6677B3F5</input>
-			<output>6FB1C4AD8A5B8A606621A8BF4277F3DC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8A6EF9710F4AE10EB60C8D25A8F67C50392F21FDDF0B7A4C49B6D4C066372EA0</key>
-			<input>6FB1C4AD8A5B8A606621A8BF4277F3DC</input>
-			<output>22C2CF9572D708F688291056E2F8E120</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ED6D084D5F8AA4F201F9C20EA26A90E81BEDEE68ADDC72BAC19FC49684CFCF80</key>
-			<input>22C2CF9572D708F688291056E2F8E120</input>
-			<output>28AC7257911ECEB549D910BFA0905AE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BA2735927D6A76B952C08A219FBB572233419C3F3CC2BC0F8846D429245F9565</key>
-			<input>28AC7257911ECEB549D910BFA0905AE5</input>
-			<output>2A1F3842DF988CDA0C6415450A657DB2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>53BCC06CCCBC31A5BEE2CE88E6EAEFAC195EA47DE35A30D58422C16C2E3AE8D7</key>
-			<input>2A1F3842DF988CDA0C6415450A657DB2</input>
-			<output>6055EB3A24DE4D87C6BA5073A5BAC919</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DF88C3CEC31C7B88D8AC0C7AAA2CED99790B4F47C7847D524298911F8B8021CE</key>
-			<input>6055EB3A24DE4D87C6BA5073A5BAC919</input>
-			<output>CC051CCD37068B41935FD14538DFEF82</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>265B351B93FF456D5A1EAADD2BEA1296B50E538AF082F613D1C7405AB35FCE4C</key>
-			<input>CC051CCD37068B41935FD14538DFEF82</input>
-			<output>225B63F455DD72EC87CF6FD5DF0FDAF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BAC4C541E0A693CF8A3892A82F67CD959755307EA55F84FF56082F8F6C5014BF</key>
-			<input>225B63F455DD72EC87CF6FD5DF0FDAF3</input>
-			<output>64027F6B72F0A11628F66D5C502658E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E8F68EF4909A128F331DFEFAE8560EBCF3574F15D7AF25E97EFE42D33C764C57</key>
-			<input>64027F6B72F0A11628F66D5C502658E8</input>
-			<output>529AAF9163EDA1BC39E66D2556BE938B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1951B1A50BED04096C17E816D4EC6225A1CDE084B442845547182FF66AC8DFDC</key>
-			<input>529AAF9163EDA1BC39E66D2556BE938B</input>
-			<output>F93E85D98EB9BDDD7D3844421235FBAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D39AF070909FBC0E3226E28041B0286158F3655D3AFB39883A206BB478FD2477</key>
-			<input>F93E85D98EB9BDDD7D3844421235FBAB</input>
-			<output>16B6B3CC08003BA36C9E84B1EE9CD7CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B705C6CCD010B980E386B8690C83E96C4E45D69132FB022B56BEEF059661F3BB</key>
-			<input>16B6B3CC08003BA36C9E84B1EE9CD7CC</input>
-			<output>301AFE66055149FA5775A9CE19F1FF63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B3C813D4FCBD31ED95E7E71CEC15153E7E5F28F737AA4BD101CB46CB8F900CD8</key>
-			<input>301AFE66055149FA5775A9CE19F1FF63</input>
-			<output>1090E68F7C8400861589E304A5B815CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0EBC30ADB6946B6415C0309D636C79F46ECFCE784B2E4B571442A5CF2A281915</key>
-			<input>1090E68F7C8400861589E304A5B815CD</input>
-			<output>2778F0C712804C0B8D085B196A4D73C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9C5815C6705B39DEECB8BDDDC9329A0D49B73EBF59AE075C994AFED640656AD1</key>
-			<input>2778F0C712804C0B8D085B196A4D73C4</input>
-			<output>14FECB137DC9C38A04D92B60A177A61D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9D83B41F8F415B5F3B2C08682383471B5D49F5AC2467C4D69D93D5B6E112CCCC</key>
-			<input>14FECB137DC9C38A04D92B60A177A61D</input>
-			<output>0EF1321EA52EAA7624E3F2EFD0C886AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2960CEE0AF043ED1A549BA223F6C1CF153B8C7B281496EA0B970275931DA4A63</key>
-			<input>0EF1321EA52EAA7624E3F2EFD0C886AF</input>
-			<output>AFA8B2129577EC178B59D42D1B92D313</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>51E0DECF48A151021C70EC3EE3CE9008FC1075A0143E82B73229F3742A489970</key>
-			<input>AFA8B2129577EC178B59D42D1B92D313</input>
-			<output>3351631344E6EF86712327D3C05EBDEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5F34A789B0B1185BA7D1BB3EF2677060CF4116B350D86D31430AD4A7EA16249B</key>
-			<input>3351631344E6EF86712327D3C05EBDEB</input>
-			<output>C299D0556B0D15014627CADBCCC3DC33</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FC3E420F84F4C75802DCF68ABF0030E70DD8C6E63BD57830052D1E7C26D5F8A8</key>
-			<input>C299D0556B0D15014627CADBCCC3DC33</input>
-			<output>CEB83A2B9DD76B649BAAE48A8B772A5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C04448AD77DBF33F22A2346C7A40F813C360FCCDA60213549E87FAF6ADA2D2F4</key>
-			<input>CEB83A2B9DD76B649BAAE48A8B772A5C</input>
-			<output>A8C6AEC94E82BC68AC8E29A8CB9504F6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3FA863ECC4AFA141DD7349C44F94FEE16BA65204E880AF3C3209D35E6637D602</key>
-			<input>A8C6AEC94E82BC68AC8E29A8CB9504F6</input>
-			<output>1EDED55C8D3309F828C17AF072C79D7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8893E5FB27191AE09E4AB5F062289F117578875865B3A6C41AC8A9AE14F04B78</key>
-			<input>1EDED55C8D3309F828C17AF072C79D7A</input>
-			<output>FD2AC22891FB294EB0AD2BADFE759C29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>90BA1205BB7927E86F9895855648D3EB88524570F4488F8AAA658203EA85D751</key>
-			<input>FD2AC22891FB294EB0AD2BADFE759C29</input>
-			<output>2FE6AE59ACD516EE1567A7A1C43FDE2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>278FD88834EA67564F301785C4045D6FA7B4EB29589D9964BF0225A22EBA097B</key>
-			<input>2FE6AE59ACD516EE1567A7A1C43FDE2A</input>
-			<output>35BEC13F159F61C7EF4C860AD3B41A75</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E9D2F23C213D02724737A5E907BFBDF0920A2A164D02F8A3504EA3A8FD0E130E</key>
-			<input>35BEC13F159F61C7EF4C860AD3B41A75</input>
-			<output>650D65D6ED716DA515EAAF1A7447C3FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4A0A997634E2D9305795FC90291F6FD9F7074FC0A073950645A40CB28949D0F5</key>
-			<input>650D65D6ED716DA515EAAF1A7447C3FB</input>
-			<output>7AFE0D2F234A6CDEDD7103DA09147285</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BD671DD81F8FCD9D472564589AA13F5D8DF942EF8339F9D898D50F68805DA270</key>
-			<input>7AFE0D2F234A6CDEDD7103DA09147285</input>
-			<output>40627620B17313AF42EA7DD6CFD900F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5668F777C46BF78DC664E72186626BF5CD9B34CF324AEA77DA3F72BE4F84A289</key>
-			<input>40627620B17313AF42EA7DD6CFD900F9</input>
-			<output>0C62985837C8C6FB468BD6E3928F8497</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B82B5D4C3DEF62CFAE064CFDB5D904EFC1F9AC9705822C8C9CB4A45DDD0B261E</key>
-			<input>0C62985837C8C6FB468BD6E3928F8497</input>
-			<output>A1FFF4635AAF2AD8AE6EA8C70858EF3B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6A179EF63528EFA2B12DBA23D1EC8D21600658F45F2D065432DA0C9AD553C925</key>
-			<input>A1FFF4635AAF2AD8AE6EA8C70858EF3B</input>
-			<output>403F8E2D050E2976487BBEDD6466357E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6857720AC4DDCFFE8A96B455C973901A2039D6D95A232F227AA1B247B135FC5B</key>
-			<input>403F8E2D050E2976487BBEDD6466357E</input>
-			<output>2DD7EB8476988C850E8D95DC598FC61A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5B938E230BFE9056471E7C83A6ED03930DEE3D5D2CBBA3A7742C279BE8BA3A41</key>
-			<input>2DD7EB8476988C850E8D95DC598FC61A</input>
-			<output>676B96F400AE18138B302FD3D70D490E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4CE7ECA340DEC23715C53343EB9162DA6A85ABA92C15BBB4FF1C08483FB7734F</key>
-			<input>676B96F400AE18138B302FD3D70D490E</input>
-			<output>620AAA14B94BF6B60A83129085BCF02B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1024ECE618D140CAE8B9DFC8EB1DE137088F01BD955E4D02F59F1AD8BA0B8364</key>
-			<input>620AAA14B94BF6B60A83129085BCF02B</input>
-			<output>B701A38325DC282045C6F914394B9F70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6B8C6DA855E1E72E4A6AC44601B24D60BF8EA23EB0826522B059E3CC83401C14</key>
-			<input>B701A38325DC282045C6F914394B9F70</input>
-			<output>808D0B334B775C59F8C34A3524CB4126</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C50A625A89465321DACCB9EB40DEF57D3F03A90DFBF5397B489AA9F9A78B5D32</key>
-			<input>808D0B334B775C59F8C34A3524CB4126</input>
-			<output>4E29C921CC295F6A3082C1BC02ACDA70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>973341A4E3DB315FA97C7EEDF493EA71712A602C37DC661178186845A5278742</key>
-			<input>4E29C921CC295F6A3082C1BC02ACDA70</input>
-			<output>77BC204E50EFCA2AEBDC16D3F3C3D739</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>639EB8FB16B34B55550705FDCFF7C8CC069640626733AC3B93C47E9656E4507B</key>
-			<input>77BC204E50EFCA2AEBDC16D3F3C3D739</input>
-			<output>A677A7B55AA03EB0587EE00123D047F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>610A9602B725E4D87AB2904E91050D90A0E1E7D73D93928BCBBA9E9775341788</key>
-			<input>A677A7B55AA03EB0587EE00123D047F3</input>
-			<output>09AF5421548AC11466370484F8C556DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>314A6E0BD202458489059738917B6678A94EB3F66919539FAD8D9A138DF14156</key>
-			<input>09AF5421548AC11466370484F8C556DE</input>
-			<output>B6CDD2336AB8735EE7A9946A1FE7EE0C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>73658C0F88490F7C3B9F2B7B39551BBF1F8361C503A120C14A240E799216AF5A</key>
-			<input>B6CDD2336AB8735EE7A9946A1FE7EE0C</input>
-			<output>B5A2F3B47E4AC87BC06612587253930E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>968794DEC3E866DE4F999C860E9851E9AA2192717DEBE8BA8A421C21E0453C54</key>
-			<input>B5A2F3B47E4AC87BC06612587253930E</input>
-			<output>09C9C38BB3348147EB284FFA24D87244</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>205605E66A4BE2CF61E13243E104FED9A3E851FACEDF69FD616A53DBC49D4E10</key>
-			<input>09C9C38BB3348147EB284FFA24D87244</input>
-			<output>9D1EDCA2674E5A30416DF7CC2938DC63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9CA7508C83DB6E56EFF3489F2BD30C573EF68D58A99133CD2007A417EDA59273</key>
-			<input>9D1EDCA2674E5A30416DF7CC2938DC63</input>
-			<output>E8A2282B47DAB6A666A4607BBC857FC6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0F98884E85FEB533CFC281C2F4437915D654A573EE4B856B46A3C46C5120EDB5</key>
-			<input>E8A2282B47DAB6A666A4607BBC857FC6</input>
-			<output>B6675D2263DC1C1E0F04A9A9BC666D2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3F3ED6DC6E08DF2515D08273832429286033F8518D97997549A76DC5ED468098</key>
-			<input>B6675D2263DC1C1E0F04A9A9BC666D2D</input>
-			<output>D6FF2642FD84C80674EAF8674242248D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>67910C06B57CD52767674B70F59337D8B6CCDE13701351733D4D95A2AF04A415</key>
-			<input>D6FF2642FD84C80674EAF8674242248D</input>
-			<output>47D4419A669253C39A0CC96C7CD612C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>43EE254E414DB89044EE2F703B340F6AF1189F89168102B0A7415CCED3D2B6D5</key>
-			<input>47D4419A669253C39A0CC96C7CD612C0</input>
-			<output>B2B3FD7A1D4B0695B3499430F2E44CEA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>89C9881E6D6CEFF00DDFC5618655FA4543AB62F30BCA04251408C8FE2136FA3F</key>
-			<input>B2B3FD7A1D4B0695B3499430F2E44CEA</input>
-			<output>4AAD0AE20AFF0675CF78992DFD2B685C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2C24846D047677F89EF73B917962D0FA0906681101350250DB7051D3DC1D9263</key>
-			<input>4AAD0AE20AFF0675CF78992DFD2B685C</input>
-			<output>C90343412CFE70201CE22D9AD2222788</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>770637F8F8F32915BF7630919D0726AEC0052B502DCB7270C7927C490E3FB5EB</key>
-			<input>C90343412CFE70201CE22D9AD2222788</input>
-			<output>923FE89134FAF362802C5A2EBF399D2C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>426891CF6B068FAC7FFB5A04874AEC78523AC3C11931811247BE2667B10628C7</key>
-			<input>923FE89134FAF362802C5A2EBF399D2C</input>
-			<output>9C08F05026196BA3550A2496049B720B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B66BCCA5EFAF3F448BDD52DC48F2B904CE3233913F28EAB112B402F1B59D5ACC</key>
-			<input>9C08F05026196BA3550A2496049B720B</input>
-			<output>7B487FD67D0C2D987C3DEFD335C2EF17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>079CCBC13FCFB0D032293FDFEC563F86B57A4C474224C7296E89ED22805FB5DB</key>
-			<input>7B487FD67D0C2D987C3DEFD335C2EF17</input>
-			<output>CEC12158856704CE8ABF0CA6C6F3006B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>998AFEF458902CA632D60843A88D36637BBB6D1FC743C3E7E436E18446ACB5B0</key>
-			<input>CEC12158856704CE8ABF0CA6C6F3006B</input>
-			<output>DA19C7C7283ADD9C5145ABBA53F1E7E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>95EDAF196289EE6D24AA752DF489DEFCA1A2AAD8EF791E7BB5734A3E155D5251</key>
-			<input>DA19C7C7283ADD9C5145ABBA53F1E7E1</input>
-			<output>F043A57E686C1FE7DACB858F0C3E6857</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3050D2C04C0860414427BF5B19792D7651E10FA68715019C6FB8CFB119633A06</key>
-			<input>F043A57E686C1FE7DACB858F0C3E6857</input>
-			<output>2FB7B264BB4B3FAFA01A6BB93CC2958D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>26186DD7BE83659550BA3B52D99975037E56BDC23C5E3E33CFA2A40825A1AF8B</key>
-			<input>2FB7B264BB4B3FAFA01A6BB93CC2958D</input>
-			<output>D46BBD3ABD958DA722F3591578C30F5E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE1D625B9C840580FDDE57EDE82419D1AA3D00F881CBB394ED51FD1D5D62A0D5</key>
-			<input>D46BBD3ABD958DA722F3591578C30F5E</input>
-			<output>3D69379AB60535902C38AB5E121DD035</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FF9396CB65FFB9D47EF4E0253FD98BBA9754376237CE8604C16956434F7F70E0</key>
-			<input>3D69379AB60535902C38AB5E121DD035</input>
-			<output>A5767F4E6C8482290BC7B76D23EEF145</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B98B5F1CA9752B1B07514B72C3D585F23222482C5B4A042DCAAEE12E6C9181A5</key>
-			<input>A5767F4E6C8482290BC7B76D23EEF145</input>
-			<output>9388736A82C99337C49BB4F32437B1DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5F130919FB4ED29397E4781550B1D444A1AA3B46D983971A0E3555DD48A6307F</key>
-			<input>9388736A82C99337C49BB4F32437B1DA</input>
-			<output>915C6C5181E797DADC289F8FFF60CD19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D3F202F140D38545C8A04EC2D0993E2B30F65717586400C0D21DCA52B7C6FD66</key>
-			<input>915C6C5181E797DADC289F8FFF60CD19</input>
-			<output>A61167CDBE95ABFAD9C1A58BDA90F0D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FBFA83B249C3B13C83E8FC111611391296E730DAE6F1AB3A0BDC6FD96D560DB2</key>
-			<input>A61167CDBE95ABFAD9C1A58BDA90F0D4</input>
-			<output>9AF2B4CF00B037976D0F5CAC4201885D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CC24CC54D0889912C7AD2473EBA8BBB30C158415E6419CAD66D333752F5785EF</key>
-			<input>9AF2B4CF00B037976D0F5CAC4201885D</input>
-			<output>A9B74046119B6699FD5EFD1E476BEE64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F520F18D9FACA98E5F57226127FA9B6BA5A2C453F7DAFA349B8DCE6B683C6B8B</key>
-			<input>A9B74046119B6699FD5EFD1E476BEE64</input>
-			<output>CD7EAA1EF3B91B69FD3E54FCC5A802E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9BFD59A9F78FB1BE6F13B701D7EB0F6268DC6E4D0463E15D66B39A97AD946962</key>
-			<input>CD7EAA1EF3B91B69FD3E54FCC5A802E9</input>
-			<output>FD7095C419E2722425E6D4CA1A393D8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C1C39AC5158C8CDBE82CF37D00B7896995ACFB891D81937943554E5DB7AD54EE</key>
-			<input>FD7095C419E2722425E6D4CA1A393D8C</input>
-			<output>9963CE47EB0322135C5D20B923FC341A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C9E26AE18D08643029C92F11BD3E8AA40CCF35CEF682B16A1F086EE4945160F4</key>
-			<input>9963CE47EB0322135C5D20B923FC341A</input>
-			<output>11589A1BDD037FABABBB9BF5AAC859A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2183FF3C1EB1DF48DB8FA5F87F279F891D97AFD52B81CEC1B4B3F5113E993953</key>
-			<input>11589A1BDD037FABABBB9BF5AAC859A7</input>
-			<output>B6CEE1CD709BE6E055041FC2E1A87539</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>738690954B4B92CE2367567B3A960E8DAB594E185B1A2821E1B7EAD3DF314C6A</key>
-			<input>B6CEE1CD709BE6E055041FC2E1A87539</input>
-			<output>D776658F01CCEC460FA7145C6C6CBD42</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>71AB2DBD9923F08E516D8DF0CF57CC227C2F2B975AD6C467EE10FE8FB35DF128</key>
-			<input>D776658F01CCEC460FA7145C6C6CBD42</input>
-			<output>0C6D2578060A0A1024230D838AA45234</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1C0E18C83D74E46DDF65BFC3335CFF0D70420EEF5CDCCE77CA33F30C39F9A31C</key>
-			<input>0C6D2578060A0A1024230D838AA45234</input>
-			<output>BFD55D67EF4883200FDAEEA5D44F0302</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7DA814BD80D8CBBEE778E030682E7F34CF975388B3944D57C5E91DA9EDB6A01E</key>
-			<input>BFD55D67EF4883200FDAEEA5D44F0302</input>
-			<output>E821629542650FAFEF08D94AC889078A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>10490CD6F16D915CE9891C69E10884D827B6311DF1F142F82AE1C4E3253FA794</key>
-			<input>E821629542650FAFEF08D94AC889078A</input>
-			<output>F2F81CD9CBD3E932686B6195A97EE13A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F0114F7C7101931F6A4595A6C3D2F34AD54E2DC43A22ABCA428AA5768C4146AE</key>
-			<input>F2F81CD9CBD3E932686B6195A97EE13A</input>
-			<output>C90348C14450EE3D9BFA30377D4B2440</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C5802B19BA4921D3750A590F02658F621C4D65057E7245F7D9709541F10A62EE</key>
-			<input>C90348C14450EE3D9BFA30377D4B2440</input>
-			<output>619E907C4E7FD3A723E34B8D3880D71B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>236500CE70AC49E98907DC4EDAE41CCA7DD3F579300D9650FA93DECCC98AB5F5</key>
-			<input>619E907C4E7FD3A723E34B8D3880D71B</input>
-			<output>932A17E8FDA853F6DB1C9271EC4FBF56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7BB7D14473E7E2D70F3C8C90D4B1035CEEF9E291CDA5C5A6218F4CBD25C50AA3</key>
-			<input>932A17E8FDA853F6DB1C9271EC4FBF56</input>
-			<output>549CB80C490E592E18ACC04FAA933489</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>415AD8391B32F6E61A861B4C8A4BBC6DBA655A9D84AB9C8839238CF28F563E2A</key>
-			<input>549CB80C490E592E18ACC04FAA933489</input>
-			<output>BF6337BEDE116D5A60B06DA8B270159C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>058F24C125EB3E94B54BB6F1F099501C05066D235ABAF1D25993E15A3D262BB6</key>
-			<input>BF6337BEDE116D5A60B06DA8B270159C</input>
-			<output>CBD3D52496E6DF0DBD065BD924C5001F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B85B96EC639098C392FD33D11A49251ECED5B807CC5C2EDFE495BA8319E32BA9</key>
-			<input>CBD3D52496E6DF0DBD065BD924C5001F</input>
-			<output>AF8879C67DF265E118096478FBA003AD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>526BF9DCAF4A4DFD05FAD0EA3B58131D615DC1C1B1AE4B3EFC9CDEFBE2432804</key>
-			<input>AF8879C67DF265E118096478FBA003AD</input>
-			<output>C627176029E2D22A51F5630B129A1095</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>553316781F120EE83A2D083D97D19F99A77AD6A1984C9914AD69BDF0F0D93891</key>
-			<input>C627176029E2D22A51F5630B129A1095</input>
-			<output>F46AC5870C65636D6C200312F2A15BE6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E9A37578C1402447D6CC1161F126D5C7531013269429FA79C149BEE202786377</key>
-			<input>F46AC5870C65636D6C200312F2A15BE6</input>
-			<output>4FBBFF3856FC0DEC7EE18585FFA4AC16</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>78521B42D0FBE8EA8BB6D44D66AE476D1CABEC1EC2D5F795BFA83B67FDDCCF61</key>
-			<input>4FBBFF3856FC0DEC7EE18585FFA4AC16</input>
-			<output>8711DAE7DD9B3F6D9FAD03669C1C8F5E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>851C9A078620280FBCDDFB4FD3745C749BBA36F91F4EC8F82005380161C0403F</key>
-			<input>8711DAE7DD9B3F6D9FAD03669C1C8F5E</input>
-			<output>050E884136E09368DEFBC43F6B3182CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>50CCAA51D781B7090285D907E68B1F7A9EB4BEB829AE5B90FEFEFC3E0AF1C2F3</key>
-			<input>050E884136E09368DEFBC43F6B3182CC</input>
-			<output>CEC37197CEE3E0D797F441CC0541B851</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DAB5ECB43982EAE8412102E2B7BC7CEA5077CF2FE74DBB47690ABDF20FB07AA2</key>
-			<input>CEC37197CEE3E0D797F441CC0541B851</input>
-			<output>197ECC091E5620DCA63BA2E6CFBC9F43</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>57974D1C4BBF761C9E09B8DAD3E510DF49090326F91B9B9BCF311F14C00CE5E1</key>
-			<input>197ECC091E5620DCA63BA2E6CFBC9F43</input>
-			<output>F2E836DEE9668E81D74A3C0F03CF3C10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E37677110C5A9A59EC06E0968BF5D14EBBE135F8107D151A187B231BC3C3D9F1</key>
-			<input>F2E836DEE9668E81D74A3C0F03CF3C10</input>
-			<output>DD581BB9F4A7BEC66CAC7916871F55C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2CD760C245E62EA5B477BDA094B3AD5166B92E41E4DAABDC74D75A0D44DC8C39</key>
-			<input>DD581BB9F4A7BEC66CAC7916871F55C8</input>
-			<output>7B05D43A3BE733E0DE6E2CE494141B46</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE35BF6BC48E8B8E6A30DB886C9D75DD1DBCFA7BDF3D983CAAB976E9D0C8977F</key>
-			<input>7B05D43A3BE733E0DE6E2CE494141B46</input>
-			<output>1D561DCAA42E92568DD6ACD583FF7BCE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8AD7FCADA5D092DD5D221532EED3FD1000EAE7B17B130A6A276FDA3C5337ECB1</key>
-			<input>1D561DCAA42E92568DD6ACD583FF7BCE</input>
-			<output>1E9AB09A76FD91CC33B85390BDE631F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>534EEF6B1450693335980E00CD3CDE361E70572B0DEE9BA614D789ACEED1DD49</key>
-			<input>1E9AB09A76FD91CC33B85390BDE631F8</input>
-			<output>CBD0E3A07952EAC118A81B76D09276FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8A39C2221622785E4DA9B14DAAE6ADF3D5A0B48B74BC71670C7F92DA3E43ABB4</key>
-			<input>CBD0E3A07952EAC118A81B76D09276FD</input>
-			<output>AC20057B857E6C34F7E68A5765573538</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>50887AD2D325CBC04B5FD69518318BAD7980B1F0F1C21D53FB99188D5B149E8C</key>
-			<input>AC20057B857E6C34F7E68A5765573538</input>
-			<output>DDFFD26BA5B33AEA36A0A6D75EAA047C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9613965C1776C5BAEA3CEE6154AABC9FA47F639B547127B9CD39BE5A05BE9AF0</key>
-			<input>DDFFD26BA5B33AEA36A0A6D75EAA047C</input>
-			<output>F0883B6DD3CA0515CB9F1ABA646CCB69</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E7F6DB8A94597956CEE07447F9BB5CA454F758F687BB22AC06A6A4E061D25199</key>
-			<input>F0883B6DD3CA0515CB9F1ABA646CCB69</input>
-			<output>F4E27CA9E27B3E81B981298738C01FDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0CB665943D6E6E32886A94C070366FB2A015245F65C01C2DBF278D6759124E43</key>
-			<input>F4E27CA9E27B3E81B981298738C01FDA</input>
-			<output>B03B2EB7A1E13E1A17C51FF5684E2A72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1EA698290E4B1D41B0CC4F3B9A9398FF102E0AE8C4212237A8E29292315C6431</key>
-			<input>B03B2EB7A1E13E1A17C51FF5684E2A72</input>
-			<output>BE133CCCE406C1C0BC1707115B5B0C84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BA38F49FA3D4A74ED41F8DA958A953C7AE3D36242027E3F714F595836A0768B5</key>
-			<input>BE133CCCE406C1C0BC1707115B5B0C84</input>
-			<output>A15B1C9BCF319AEF262E366C142A0DCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>935F2CEECBBCF3465DB9B0DB927AF4310F662ABFEF16791832DBA3EF7E2D657A</key>
-			<input>A15B1C9BCF319AEF262E366C142A0DCF</input>
-			<output>7A8DA23874D28EB75261D87D57451EAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B8E67B884E3E229EBB516065499F790275EB88879BC4F7AF60BA7B9229687BD4</key>
-			<input>7A8DA23874D28EB75261D87D57451EAE</input>
-			<output>9331C989A7E291FD94BA4C945A79126E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CFB51BE6CDA499D66E7B36CAAC220FB7E6DA410E3C266652F4003706731169BA</key>
-			<input>9331C989A7E291FD94BA4C945A79126E</input>
-			<output>70A2F921A8BB0548D91A114478308448</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>19821B21FED0C1659AF4E16F49F63B699678B82F949D631A2D1A26420B21EDF2</key>
-			<input>70A2F921A8BB0548D91A114478308448</input>
-			<output>8ED8FC98045BA0EF9C15E9565EECE5BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>27DA5E31E794D670BDB701F361B8977018A044B790C6C3F5B10FCF1455CD0849</key>
-			<input>8ED8FC98045BA0EF9C15E9565EECE5BB</input>
-			<output>F6621989AFC0427E3E84039B6C6C2E75</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>64E8F7C4292DF7D0B01BED3FAE08DA4FEEC25D3E3F06818B8F8BCC8F39A1263C</key>
-			<input>F6621989AFC0427E3E84039B6C6C2E75</input>
-			<output>68F4804D1E8D383FAF4E76F80FB8F92B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EE626AFFE4997C11CAE2714FF96D84B18636DD73218BB9B420C5BA773619DF17</key>
-			<input>68F4804D1E8D383FAF4E76F80FB8F92B</input>
-			<output>2D61F123E2479D56AE5C327A57F6A28B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EA24B2DB953084C818B0E6F34BA1584DAB572C50C3CC24E28E99880D61EF7D9C</key>
-			<input>2D61F123E2479D56AE5C327A57F6A28B</input>
-			<output>C6CD16E7A122D105EE398E6C7F15B4EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F209D1ADE0869F674F6FEDCD3DB7D2EB6D9A3AB762EEF5E760A006611EFAC973</key>
-			<input>C6CD16E7A122D105EE398E6C7F15B4EF</input>
-			<output>EDD6BBA5787DA2BF6A1ADF297DB98281</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>302BEB9AA2ACB3594D7E50859C187294804C81121A9357580ABAD94863434BF2</key>
-			<input>EDD6BBA5787DA2BF6A1ADF297DB98281</input>
-			<output>4A51E54F4F81469A06F6001F2F32F4AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3270FC87B4DC04FDD3F20C01407BE123CA1D645D551211C20C4CD9574C71BF5E</key>
-			<input>4A51E54F4F81469A06F6001F2F32F4AC</input>
-			<output>F7A2303EA59907BCC32AA4FC5A6DE448</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C85326465BF46A442BC1E544F9041C4A3DBF5463F08B167ECF667DAB161C5B16</key>
-			<input>F7A2303EA59907BCC32AA4FC5A6DE448</input>
-			<output>2274E43F9F8A7081DF74D5225EC28AD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A54E889A4D9FFBF993C53A9DD3B951391FCBB05C6F0166FF1012A88948DED1CE</key>
-			<input>2274E43F9F8A7081DF74D5225EC28AD8</input>
-			<output>0C8358EC431313223B59126BDBB36571</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>FA14699C20CFFE7DB68786E6117F95851348E8B02C1275DD2B4BBAE2936DB4BF</key>
-			<input>0C8358EC431313223B59126BDBB36571</input>
-			<output>03237A81EEA2EAFBB5AC0B3E635CC1AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B3744022A5397A735A4271261A2C96DF106B9231C2B09F269EE7B1DCF0317513</key>
-			<input>03237A81EEA2EAFBB5AC0B3E635CC1AC</input>
-			<output>409EBF7DF31FD9557118B1B5CAB5EBE3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8C7A22A934DCBC5E084E472DBAE4848350F52D4C31AF4673EFFF00693A849EF0</key>
-			<input>409EBF7DF31FD9557118B1B5CAB5EBE3</input>
-			<output>6CF5C9CF4A62C668B6481F7A12EE43DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DB0497ED308C95BC9703265174B654D23C00E4837BCD801B59B71F13286ADD2B</key>
-			<input>6CF5C9CF4A62C668B6481F7A12EE43DB</input>
-			<output>D8A84E93CFF3EB9DC891333BDA5F3560</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7A88D30D4CC9AB8EFA76139B68F0028AE4A8AA10B43E6B8691262C28F235E84B</key>
-			<input>D8A84E93CFF3EB9DC891333BDA5F3560</input>
-			<output>009E0C2454E321326336CC56D0660F91</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>55A78B8839B395B552630641648DFCE5E436A634E0DD4AB4F210E07E2253E7DA</key>
-			<input>009E0C2454E321326336CC56D0660F91</input>
-			<output>EBC89334F29560D9B9AEAE2F1D9DC65B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B41A907C82EDE32C6C1FD0DFED0A232D0FFE350012482A6D4BBE4E513FCE2181</key>
-			<input>EBC89334F29560D9B9AEAE2F1D9DC65B</input>
-			<output>4DA63E94EBB4DA255800C9B25068E47E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3E428E8A77067008EFDE7BD6174B05B742580B94F9FCF04813BE87E36FA6C5FF</key>
-			<input>4DA63E94EBB4DA255800C9B25068E47E</input>
-			<output>6833E2CEFA8CF4B5B4607FA49D7B658D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>39D17AE8C7232386F8339427E4A79AAC2A6BE95A037004FDA7DEF847F2DDA072</key>
-			<input>6833E2CEFA8CF4B5B4607FA49D7B658D</input>
-			<output>41D882B653BEFEEEB9AE354F5ABCC058</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E8D52C97FA4149312A45D3EFE0A326086BB36BEC50CEFA131E70CD08A861602A</key>
-			<input>41D882B653BEFEEEB9AE354F5ABCC058</input>
-			<output>D54A329BCF56B703BE0F02EE3AACB933</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D36FAED6CF436A491111890449BC3C66BEF959779F984D10A07FCFE692CDD919</key>
-			<input>D54A329BCF56B703BE0F02EE3AACB933</input>
-			<output>5FAAEB95E0F9D0C3C43BF725DADC9595</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9D7BCBB15816A0A941BBB787D2EEA155E153B2E27F619DD3644438C348114C8C</key>
-			<input>5FAAEB95E0F9D0C3C43BF725DADC9595</input>
-			<output>BC699D5E82FD43B45A7B925E8C1A2F3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F2EB78917ECAC2E77C19B892E846AE715D3A2FBCFD9CDE673E3FAA9DC40B63B0</key>
-			<input>BC699D5E82FD43B45A7B925E8C1A2F3C</input>
-			<output>773D115B40F0E9EF780B2D10846FA684</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B10B9F0CECA554749EC178F3C63547DD2A073EE7BD6C37884634878D4064C534</key>
-			<input>773D115B40F0E9EF780B2D10846FA684</input>
-			<output>50095809CC96520EB8E3A66F499EE147</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E86E52AEB04DE0D3DC85A91E9B10D2677A0E66EE71FA6586FED721E209FA2473</key>
-			<input>50095809CC96520EB8E3A66F499EE147</input>
-			<output>6994CF8BA4C731CA33DAFE33D2A0BF94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>44C3C8A2F0F931926AC73F3E5351B114139AA965D53D544CCD0DDFD1DB5A9BE7</key>
-			<input>6994CF8BA4C731CA33DAFE33D2A0BF94</input>
-			<output>981902A8FD71DF8B67D52E6FC2813B90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2D309D3D2603EC7E7B4EA626E9BDECFE8B83ABCD284C8BC7AAD8F1BE19DBA077</key>
-			<input>981902A8FD71DF8B67D52E6FC2813B90</input>
-			<output>35FA9A93AE142F562E62771991752B78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E80939BCB4DB83768EBAD3CF2DD3F270BE79315E8658A49184BA86A788AE8B0F</key>
-			<input>35FA9A93AE142F562E62771991752B78</input>
-			<output>A3651DBF8585004F0729AF4CA615C674</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BF1A4C57D4434FA59A2E45DB589AA16F1D1C2CE103DDA4DE839329EB2EBB4D7B</key>
-			<input>A3651DBF8585004F0729AF4CA615C674</input>
-			<output>AF31F082CACEB768627B93A4D3E5349A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6EB47730BACAAB2207A3D12B0652B0CDB22DDC63C91313B6E1E8BA4FFD5E79E1</key>
-			<input>AF31F082CACEB768627B93A4D3E5349A</input>
-			<output>57B75D2B640F45DB2D4A1F71F08545A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3EB0F3D31E648E260FE9F6FA8812ADD1E59A8148AD1C566DCCA2A53E0DDB3C44</key>
-			<input>57B75D2B640F45DB2D4A1F71F08545A5</input>
-			<output>A812DA38D7B82DF310366FA62FFD11E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>0409A87F024E710C27E456CA170B60184D885B707AA47B9EDC94CA9822262DA2</key>
-			<input>A812DA38D7B82DF310366FA62FFD11E6</input>
-			<output>447F235914368F2BECD5FF98D1A34205</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7DE3A1E7234BF755908324E13DF413EB09F778296E92F4B530413500F3856FA7</key>
-			<input>447F235914368F2BECD5FF98D1A34205</input>
-			<output>5205860E4562B5CD6748EF89BF2791E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>12EE9519335A2D827649D4EB047EB5255BF2FE272BF041785709DA894CA2FE4E</key>
-			<input>5205860E4562B5CD6748EF89BF2791E9</input>
-			<output>30C0229AFDFF59E24426ACAD8D4AEFDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>78FF32A055D51E0A9D6E77D838AE72AD6B32DCBDD60F189A132F7624C1E81195</key>
-			<input>30C0229AFDFF59E24426ACAD8D4AEFDB</input>
-			<output>FF467C6E0F82F5D2F9487DDBDB43EFB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6E49FA4CDEFC70619F739B488DD434969474A0D3D98DED48EA670BFF1AABFE26</key>
-			<input>FF467C6E0F82F5D2F9487DDBDB43EFB3</input>
-			<output>7E375B3D13871B09CA4D3357AC5EBB0E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>90791666C996FF15EED1E20BAFB6B4B3EA43FBEECA0AF641202A38A8B6F54528</key>
-			<input>7E375B3D13871B09CA4D3357AC5EBB0E</input>
-			<output>E64A319F6FBD96BD799760C4077F9713</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7F0D0CAB938585CF65726A6CB01DE8B00C09CA71A5B760FC59BD586CB18AD23B</key>
-			<input>E64A319F6FBD96BD799760C4077F9713</input>
-			<output>1487C8488C675BD46FAF2EEC0BC7AE7E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7B429E6D59D4D65E16ED325F49E93D9C188E023929D03B2836127680BA4D7C45</key>
-			<input>1487C8488C675BD46FAF2EEC0BC7AE7E</input>
-			<output>1F103E64A4F5239C9157E70487C50941</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AF20B02C3C5BD4E33E34359B86BBF2CF079E3C5D8D2518B4A74591843D887504</key>
-			<input>1F103E64A4F5239C9157E70487C50941</input>
-			<output>24C8481DD1A2245735597A18A2433E41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E4F3CE6AFF9926837BAAB04C311F72A7235674405C873CE3921CEB9C9FCB4B45</key>
-			<input>24C8481DD1A2245735597A18A2433E41</input>
-			<output>3D9E715A686DE9AF8EE37AF54F82AA8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A9BACBEC55AA453A83FF82CFDDB7F2F91EC8051A34EAD54C1CFF9169D049E1CF</key>
-			<input>3D9E715A686DE9AF8EE37AF54F82AA8A</input>
-			<output>B330735D9AB5B96501CDAF61A8EAD19F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5826BE9127DB557D401AF4DE6343F8AFADF87647AE5F6C291D323E0878A33050</key>
-			<input>B330735D9AB5B96501CDAF61A8EAD19F</input>
-			<output>61AE40475EA11DBCC364F5377673CE37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A8F0146E46A5391D0663380DF9F1FD6FCC563600F0FE7195DE56CB3F0ED0FE67</key>
-			<input>61AE40475EA11DBCC364F5377673CE37</input>
-			<output>525C1ED538B23D7CFA4A43114CF35BD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>20F90A51E7A0BB9B88AE1DD28C8B484A9E0A28D5C84C4CE9241C882E4223A5B3</key>
-			<input>525C1ED538B23D7CFA4A43114CF35BD4</input>
-			<output>C2957E002E35236D455F53006495E4B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A71CC695B7AEB0D5148FA622536669385C9F56D5E6796F846143DB2E26B64104</key>
-			<input>C2957E002E35236D455F53006495E4B7</input>
-			<output>76F9C97A4B414E5DE532082BB12F5362</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>617CF5726F26BD9A3B52FC0D902A97AD2A669FAFAD3821D98471D30597991266</key>
-			<input>76F9C97A4B414E5DE532082BB12F5362</input>
-			<output>F4D9E814D4C61B2FB1D7CDCCBAF14AA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>D4DBBCC269A61933E4D63C3BDA5F522EDEBF77BB79FE3AF635A61EC92D6858C7</key>
-			<input>F4D9E814D4C61B2FB1D7CDCCBAF14AA1</input>
-			<output>6B51AF38B42F226D62474A97BD001FFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>512FAF06A5885D032A885EC030AF3C18B5EED883CDD1189B57E1545E90684738</key>
-			<input>6B51AF38B42F226D62474A97BD001FFF</input>
-			<output>868C58D6B805CF8F9EB04A8BA123371A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BDD2CB78E9B554FC7FEEEC05D02309F23362805575D4D714C9511ED5314B7022</key>
-			<input>868C58D6B805CF8F9EB04A8BA123371A</input>
-			<output>1752558A1F90975140CA41F68BE5333F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>15CC46826BFD5B45ABAE9B0B2756D39C2430D5DF6A444045899B5F23BAAE431D</key>
-			<input>1752558A1F90975140CA41F68BE5333F</input>
-			<output>68801EAB4042E7390E64AA53C38C1D15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DF5FB425C5B25E15EA717736D8ABE6644CB0CB742A06A77C87FFF57079225E08</key>
-			<input>68801EAB4042E7390E64AA53C38C1D15</input>
-			<output>02FE87211909D8954EC90EF53100F26D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>CD73FCED5EBA6038DD8B8A000111BEF94E4E4C55330F7FE9C936FB854822AC65</key>
-			<input>02FE87211909D8954EC90EF53100F26D</input>
-			<output>3A51FAFD22A2CC95B532023A37BBF0FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EF890ED47D9F1581CC98C88F3BF7F88D741FB6A811ADB37C7C04F9BF7F995C9B</key>
-			<input>3A51FAFD22A2CC95B532023A37BBF0FE</input>
-			<output>D233A6BBC315BA5F4630AE7F99F77116</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA9CA1A7DFA24E1936E49D34054F7749A62C1013D2B809233A3457C0E66E2D8D</key>
-			<input>D233A6BBC315BA5F4630AE7F99F77116</input>
-			<output>E6B9619D7B0E1DF6CFE79FD51533406B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>ADC4161B346687F98D4CB5B661662A8A4095718EA9B614D5F5D3C815F35D6DE6</key>
-			<input>E6B9619D7B0E1DF6CFE79FD51533406B</input>
-			<output>A746D31BCB29F7512E3F6E5EFD14FDAD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9C1CA3776C9ED13D220453C8AEFA0ECDE7D3A295629FE384DBECA64B0E49904B</key>
-			<input>A746D31BCB29F7512E3F6E5EFD14FDAD</input>
-			<output>B2489A51878848EC37E6782FB2110122</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B64A5B45ABFDEC3EF8164FCEAE89919E559B38C4E517AB68EC0ADE64BC589169</key>
-			<input>B2489A51878848EC37E6782FB2110122</input>
-			<output>EF77F9367A063FDB874C9FC96983EAD1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AEFFDEE2501961FEEB985134E2B651EDBAECC1F29F1194B36B4641ADD5DB7BB8</key>
-			<input>EF77F9367A063FDB874C9FC96983EAD1</input>
-			<output>4ECFF4DA51BB2BE1EF8E85C4BBE51C69</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6B28BA96CEB25B3862F413A2CBED4889F4233528CEAABF5284C8C4696E3E67D1</key>
-			<input>4ECFF4DA51BB2BE1EF8E85C4BBE51C69</input>
-			<output>0CAEAF484505A1AF13BB0ADCC665F91C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2062889724A47DD541F1F0A3FC8C5952F88D9A608BAF1EFD9773CEB5A85B9ECD</key>
-			<input>0CAEAF484505A1AF13BB0ADCC665F91C</input>
-			<output>6C75CA469CACCCE29CAE88202E02727C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C2115A8A6EE164B944A8C8128EBAB8E694F850261703D21F0BDD46958659ECB1</key>
-			<input>6C75CA469CACCCE29CAE88202E02727C</input>
-			<output>567060CEFF3AEDDE8AB5823450E35967</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C3D2704E15936C6916073E234D0012CCC28830E8E8393FC18168C4A1D6BAB5D6</key>
-			<input>567060CEFF3AEDDE8AB5823450E35967</input>
-			<output>E04F927E409060080EC530D5C344CA24</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>49173A9FB3283181B71264E3FB5591FA22C7A296A8A95FC98FADF47415FE7FF2</key>
-			<input>E04F927E409060080EC530D5C344CA24</input>
-			<output>4D473408396C17D4BA3DBB63B46E7727</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8BF3DDDC9217496E29F46E61233D62B66F80969E91C5481D35904F17A19008D5</key>
-			<input>4D473408396C17D4BA3DBB63B46E7727</input>
-			<output>BB6779933AC9E435C637CDA146A04284</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6ACA3C31248BFBB5BB9FD54C4B31BC21D4E7EF0DAB0CAC28F3A782B6E7304A51</key>
-			<input>BB6779933AC9E435C637CDA146A04284</input>
-			<output>5C2129A55114540ED68591C60E45D6CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A270DAD402DC752332671216A6C3BFF88C6C6A8FA18F82625221370E9759C9E</key>
-			<input>5C2129A55114540ED68591C60E45D6CF</input>
-			<output>57790B87F69BF1C007E563A82987EEAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>6E39E75268AC2C51ABE11CE3CE16CAF3DFBFCD2F0C8309E622C770D8C0F27230</key>
-			<input>57790B87F69BF1C007E563A82987EEAE</input>
-			<output>58790B192C8B90B76F34990E28A6689A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>2367A67114D722A79F9434B5A418BEEB87C6C636200899514DF3E9D6E8541AAA</key>
-			<input>58790B192C8B90B76F34990E28A6689A</input>
-			<output>599CA8B58EFE301A87CE72540CCB4067</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A4CE195518F7E36D7E0D5C9666802411DE5A6E83AEF6A94BCA3D9B82E49F5ACD</key>
-			<input>599CA8B58EFE301A87CE72540CCB4067</input>
-			<output>4483131C7E03089F898166A5B3E85E3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>73C5204211D3648DAAF5FE071186C0E99AD97D9FD0F5A1D443BCFD27577704F7</key>
-			<input>4483131C7E03089F898166A5B3E85E3A</input>
-			<output>DBF64C5A0897B343BAF7047A6C564D02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1A3831AFF223BB2FE79C8EF8845E553C412F31C5D8621297F94BF95D3B2149F5</key>
-			<input>DBF64C5A0897B343BAF7047A6C564D02</input>
-			<output>B24420DA45E3620B619978CB09F1860C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>31EF243EF87C32148751F8F299151042F36B111F9D81709C98D2819632D0CFF9</key>
-			<input>B24420DA45E3620B619978CB09F1860C</input>
-			<output>12B466EF6AE6F28AF78AC184DB8B3C83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9E935E6F5D76BEE2E639F2880C8352EEE1DF77F0F76782166F584012E95BF37A</key>
-			<input>12B466EF6AE6F28AF78AC184DB8B3C83</input>
-			<output>518E89A35CF55D591DE8BB924D8F96E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>C6398957838B02B5948A95DCBFBF2813B051FE53AB92DF4F72B0FB80A4D4659D</key>
-			<input>518E89A35CF55D591DE8BB924D8F96E7</input>
-			<output>1FDF7FE52BD46EF54F1F7A6242B04BD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5764E84D9000518C185717581E0D70E5AF8E81B68046B1BA3DAF81E2E6642E45</key>
-			<input>1FDF7FE52BD46EF54F1F7A6242B04BD8</input>
-			<output>2C68E67C37B50056E80DC09B9ED84AA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>5F8CB51BF30B954B4AC09620B0A20FCA83E667CAB7F3B1ECD5A2417978BC64ED</key>
-			<input>2C68E67C37B50056E80DC09B9ED84AA8</input>
-			<output>14CC2D821B03BE21355A779B9066BE41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>50B32E6D62EE3B8CE2DD5797BA70D8D2972A4A48ACF00FCDE0F836E2E8DADAAC</key>
-			<input>14CC2D821B03BE21355A779B9066BE41</input>
-			<output>BB09D339888C27294E73326E64AC3B21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E1B2199CAF1C3FA78E973ACF5C3AC8702C239971247C28E4AE8B048C8C76E18D</key>
-			<input>BB09D339888C27294E73326E64AC3B21</input>
-			<output>BCFBD8255802CC8233AEA86E49089328</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3403D2498A4562E73734D065E9B44AD890D841547C7EE4669D25ACE2C57E72A5</key>
-			<input>BCFBD8255802CC8233AEA86E49089328</input>
-			<output>5A919AC72F12DB1FAB8E4876FBA8842B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B979FA15F93E5ACA1F6E452C9053751BCA49DB93536C3F7936ABE4943ED6F68E</key>
-			<input>5A919AC72F12DB1FAB8E4876FBA8842B</input>
-			<output>BDB03BD29FD3828AF1AE8C729F37F88A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A8CDF9FE3C0227A9107C700C404AE39777F9E041CCBFBDF3C70568E6A1E10E04</key>
-			<input>BDB03BD29FD3828AF1AE8C729F37F88A</input>
-			<output>0AAC43CE316476F3A532D44B4DFBF4B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B4D497FBD5DE2CA68FF60C701E208A257D55A38FFDDBCB006237BCADEC1AFABC</key>
-			<input>0AAC43CE316476F3A532D44B4DFBF4B8</input>
-			<output>853A5EE7CB3C4BB3F0120BB2CFFB4436</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A019DCC09A4CAAA3772BF4C54C8828E9F86FFD6836E780B39225B71F23E1BE8A</key>
-			<input>853A5EE7CB3C4BB3F0120BB2CFFB4436</input>
-			<output>B525599C918446AF4EA9F6965F3971EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>238BF8B851B0864F9BEC8E242B7795D14D4AA4F4A763C61CDC8C41897CD8CF60</key>
-			<input>B525599C918446AF4EA9F6965F3971EA</input>
-			<output>A8377EC293D41F74A0A2DB66BA7D3D2F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AF9E313988F294AE6A8155BC76F2514BE57DDA3634B7D9687C2E9AEFC6A5F24F</key>
-			<input>A8377EC293D41F74A0A2DB66BA7D3D2F</input>
-			<output>301BD4D318101A02166EBC23DED9C12D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>3B6186F7ACE8E9B022DDE0ECF5D808D3D5660EE52CA7C36A6A4026CC187C3362</key>
-			<input>301BD4D318101A02166EBC23DED9C12D</input>
-			<output>05BD0686BE53B94FB1B42AE407BE081C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>EADED20A0F405D9E3AAE404FB074162ED0DB086392F47A25DBF40C281FC23B7E</key>
-			<input>05BD0686BE53B94FB1B42AE407BE081C</input>
-			<output>7A3AF681F2043806EDB761F65D9A6C3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AA6F474F5F5FF513FC992E4232061B75AAE1FEE260F0422336436DDE42585744</key>
-			<input>7A3AF681F2043806EDB761F65D9A6C3A</input>
-			<output>3C297DE35CCF4E6E0A800B9A3EE37C95</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>68BFE30863F135A09B81BE2800CBBC3796C883013C3F0C4D3CC366447CBB2BD1</key>
-			<input>3C297DE35CCF4E6E0A800B9A3EE37C95</input>
-			<output>5F8AAC15C74CC7EA87A1AC185103A9D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9093DEBE66D714180BEB8FE51C4807ADC9422F14FB73CBA7BB62CA5C2DB88206</key>
-			<input>5F8AAC15C74CC7EA87A1AC185103A9D7</input>
-			<output>083AF3AF30961FD5A077F5564D55E9E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A1E1049159A94DF638092C90F7707CD7C178DCBBCBE5D4721B153F0A60ED6BEF</key>
-			<input>083AF3AF30961FD5A077F5564D55E9E9</input>
-			<output>89BEFF6AB40B18ECD9413446E848253A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7C506732A8863DB1BF61EFC710F22D2348C623D17FEECC9EC2540B4C88A54ED5</key>
-			<input>89BEFF6AB40B18ECD9413446E848253A</input>
-			<output>095B2C04636C9C5BF9735BCA21211EAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>7283413612863BA1E1B5AE93DF1318F5419D0FD51C8250C53B275086A984507F</key>
-			<input>095B2C04636C9C5BF9735BCA21211EAA</input>
-			<output>E95DB3DB1E3A478C8A31212B28E0E7BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>BE861CED86D725162D938727D7AEFC1BA8C0BC0E02B81749B11671AD8164B7C3</key>
-			<input>E95DB3DB1E3A478C8A31212B28E0E7BC</input>
-			<output>9927F1D7EF0631500E1DF058932BF320</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>45AA89CBCE192CEEC22BF5F33DDE0E8D31E74DD9EDBE2619BF0B81F5124F44E3</key>
-			<input>9927F1D7EF0631500E1DF058932BF320</input>
-			<output>4B1147179F2AF27E5C9DBB7F01CC56A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B08A08DABC52884E9EBB310236815BFE7AF60ACE7294D467E3963A8A1383124B</key>
-			<input>4B1147179F2AF27E5C9DBB7F01CC56A8</input>
-			<output>E9752A7D47734DACAC6E74A1A3EC4956</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>34B4424CE75A4A1BCE9E6C825F5F0DC1938320B335E799CB4FF84E2BB06F5B1D</key>
-			<input>E9752A7D47734DACAC6E74A1A3EC4956</input>
-			<output>AB2D652BCEE42804C5155980DA02CECC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>F9954BB1A793565A79AA2B9DF408A34A38AE4598FB03B1CF8AED17AB6A6D95D1</key>
-			<input>AB2D652BCEE42804C5155980DA02CECC</input>
-			<output>3C6651362E89F6C6B28C04CA22F110EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>9548931715FB259E318020E30D68165604C814AED58A470938611361489C853D</key>
-			<input>3C6651362E89F6C6B28C04CA22F110EC</input>
-			<output>15598364698838475AB96F95CFCF3342</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>1CDB0706417BBE66B559237109353221119197CABC027F4E62D87CF48753B67F</key>
-			<input>15598364698838475AB96F95CFCF3342</input>
-			<output>D8B3BB941893206E1CA6654B81F403E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>8C4AD897B595252B0987673F45EE73F2C9222C5EA4915F207E7E19BF06A7B59B</key>
-			<input>D8B3BB941893206E1CA6654B81F403E4</input>
-			<output>ECE471CC2FF45C26C7143C41702F90D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>A6D3DF3279B7405256C0D22DA240524125C65D928B650306B96A25FE76882549</key>
-			<input>ECE471CC2FF45C26C7143C41702F90D2</input>
-			<output>AB387AE5A5FC892C311D97C22467940D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>36F250F7C3906C7E0020055422CDB8B28EFE27772E998A2A8877B23C52EFB144</key>
-			<input>AB387AE5A5FC892C311D97C22467940D</input>
-			<output>FF48C2C77D5F52DF27C4060DF7F895D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>4FF045275860B943EDE02C802F34B71B71B6E5B053C6D8F5AFB3B431A5172493</key>
-			<input>FF48C2C77D5F52DF27C4060DF7F895D7</input>
-			<output>221BC444E2A6A7F8DE9DA16AB01EB2AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>E15B4E0E242FBABF1D47E9DBE6D0660253AD21F4B1607F0D712E155B1509963F</key>
-			<input>221BC444E2A6A7F8DE9DA16AB01EB2AC</input>
-			<output>DE252D19973ABD9F182049D39455784B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>401023A611A3133C895A3684AB3E7C9D8D880CED265AC292690E5C88815CEE74</key>
-			<input>DE252D19973ABD9F182049D39455784B</input>
-			<output>843163BD101982EE948039915C8F60D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>B9DDF52C271F143E523532E45E6F368D09B96F503643407CFD8E6519DDD38EAC</key>
-			<input>843163BD101982EE948039915C8F60D8</input>
-			<output>6FD9D36B751854C3417F29E8F3B654D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>AC7F45F8630CE02525F9F4941B4E13206660BC3B435B14BFBCF14CF12E65DA75</key>
-			<input>6FD9D36B751854C3417F29E8F3B654D9</input>
-			<output>E1268BA8A1473DEDE6CA64DDF2C8B805</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo DEC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_ECB</ciphertype>
-			<key>DE11FF0A429E1CD3DE016DAC294F771187463793E21C29525A3B282CDCAD6270</key>
-			<input>E1268BA8A1473DEDE6CA64DDF2C8B805</input>
-			<output>4DE0C6DF7CB1697284604D60271BC59A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC128.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6801 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Enc 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>8A05FC5E095AF4848A08D328D3688E3D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8A05FC5E095AF4848A08D328D3688E3D</key>
-			<iv>8A05FC5E095AF4848A08D328D3688E3D</iv>
-			<input>204F17E2444381F6114FF53934C0BCD3</input>
-			<output>192D9B3AA10BB2F7846CCBA0085C657A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>93286764A85146730E641888DB34EB47</key>
-			<iv>192D9B3AA10BB2F7846CCBA0085C657A</iv>
-			<input>983BF6F5A6DFBCDAA19370666E83A99A</input>
-			<output>40D8DAF6D1FDA0A073B3BD18B7695D2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D3F0BD9279ACE6D37DD7A5906C5DB669</key>
-			<iv>40D8DAF6D1FDA0A073B3BD18B7695D2E</iv>
-			<input>C48CD503A21C8AD0B2483EF15F79571D</input>
-			<output>3EDBE80D69A1D2248CA55FC17C4EF3C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ED2B559F100D34F7F172FA51101345AC</key>
-			<iv>3EDBE80D69A1D2248CA55FC17C4EF3C5</iv>
-			<input>6A49A07B90CE830C20BC239646D936C0</input>
-			<output>D87891CF573C99EAE4349A70CA099415</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3553C4504731AD1D15466021DA1AD1B9</key>
-			<iv>D87891CF573C99EAE4349A70CA099415</iv>
-			<input>0ACB9A969946F523317BB932CE1561A4</input>
-			<output>24E8F1013F479BBE655DF088C9316BC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>11BB3551787636A3701B90A9132BBA7E</key>
-			<iv>24E8F1013F479BBE655DF088C9316BC7</iv>
-			<input>3DFC8683C1D626A26E2513EB747E8B0F</input>
-			<output>2C92E80D8D1F70B411C28BD9FDABF21D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D29DD5CF569461761D91B70EE804863</key>
-			<iv>2C92E80D8D1F70B411C28BD9FDABF21D</iv>
-			<input>FAE2D6A36DBD17199F257643C89EB608</input>
-			<output>A61810A2798A70A9D2B37E88DEF9AE0F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9B31CDFE8CE336BEB36A65F83079E66C</key>
-			<iv>A61810A2798A70A9D2B37E88DEF9AE0F</iv>
-			<input>CB97F090318A6B10F5044EB8333ECDD6</input>
-			<output>0034FA480DE6F65D98D30B026118718F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9B0537B68105C0E32BB96EFA516197E3</key>
-			<iv>0034FA480DE6F65D98D30B026118718F</iv>
-			<input>1B8030AC682BA677A7A3ACDC7FB33BB6</input>
-			<output>BEA24548CBC4A6630C9F1251F2C3DC51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>25A772FE4AC1668027267CABA3A24BB2</key>
-			<iv>BEA24548CBC4A6630C9F1251F2C3DC51</iv>
-			<input>D0524282C9AC395508CB2991822E8F42</input>
-			<output>4F278DD0B06CBFBAA928635E7CA81B68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6A80FF2EFAADD93A8E0E1FF5DF0A50DA</key>
-			<iv>4F278DD0B06CBFBAA928635E7CA81B68</iv>
-			<input>49EA900E2F61DF8CDEA7D479F59C4C30</input>
-			<output>EDFF930BB183F8DAC2FC0BD01AD65882</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>877F6C254B2E21E04CF21425C5DC0858</key>
-			<iv>EDFF930BB183F8DAC2FC0BD01AD65882</iv>
-			<input>A1BBEB4E44EF725497B8C589192CC900</input>
-			<output>A6FE530E9509D48BAF30F601D04DB19D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21813F2BDE27F56BE3C2E2241591B9C5</key>
-			<iv>A6FE530E9509D48BAF30F601D04DB19D</iv>
-			<input>4AD71402771A83F41F7E3AC004150CB7</input>
-			<output>FF1148A2E07401F7291B418D62618B65</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE9077893E53F49CCAD9A3A977F032A0</key>
-			<iv>FF1148A2E07401F7291B418D62618B65</iv>
-			<input>AC47A1FD3490D6E809D40D4BEB8FF639</input>
-			<output>4420D4686F7A4D77A72810E89A5E0DF1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9AB0A3E15129B9EB6DF1B341EDAE3F51</key>
-			<iv>4420D4686F7A4D77A72810E89A5E0DF1</iv>
-			<input>F22E1865DD87A88238173FC693C382E7</input>
-			<output>A4C7DE5DF9E2B6A20A1E22F8D7496ACD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3E777DBCA8CB0F4967EF91B93AE7559C</key>
-			<iv>A4C7DE5DF9E2B6A20A1E22F8D7496ACD</iv>
-			<input>929EFB34B1C552221B648A3D2C678EC9</input>
-			<output>D93DBCCA25FA4D9D8C37B3F107FCFA3C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E74AC1768D3142D4EBD822483D1BAFA0</key>
-			<iv>D93DBCCA25FA4D9D8C37B3F107FCFA3C</iv>
-			<input>771C61ABB1E9BAB6F678336C8193307E</input>
-			<output>75F491C2EA85184ACA3C96B769FA9698</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92BE50B467B45A9E21E4B4FF54E13938</key>
-			<iv>75F491C2EA85184ACA3C96B769FA9698</iv>
-			<input>55E42F98CCED821FE211D29674E77F48</input>
-			<output>A9C7536B77265ECBF7AC5ECD1EF5DDE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3B7903DF10920455D648EA324A14E4DA</key>
-			<iv>A9C7536B77265ECBF7AC5ECD1EF5DDE2</iv>
-			<input>56BC0FA54F6F1E04A9A8893D3964EA68</input>
-			<output>3C749BF7EFA55CE924D1B33291C2B586</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>070D9828FF3758BCF2995900DBD6515C</key>
-			<iv>3C749BF7EFA55CE924D1B33291C2B586</iv>
-			<input>45D9BBBB1F3BB33EE182F09C90B1661C</input>
-			<output>C4708DBAEBD202CDD2054DDCB1AF7BAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C37D159214E55A71209C14DC6A792AF7</key>
-			<iv>C4708DBAEBD202CDD2054DDCB1AF7BAB</iv>
-			<input>37765B154264AD781BBE5F5717DE7038</input>
-			<output>87457FD2EE747645576A27F46B00EC30</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>44386A40FA912C3477F633280179C6C7</key>
-			<iv>87457FD2EE747645576A27F46B00EC30</iv>
-			<input>A7150BBC7BE3837E145AB83E554B49DE</input>
-			<output>E25743DAD8E627803DA6C5E587C82384</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A66F299A22770BB44A50F6CD86B1E543</key>
-			<iv>E25743DAD8E627803DA6C5E587C82384</iv>
-			<input>173343A8488146FC9E4B59C2DF42BAF3</input>
-			<output>0D0A78CD5E3EB40F92FB55351122E92B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AB6551577C49BFBBD8ABA3F897930C68</key>
-			<iv>0D0A78CD5E3EB40F92FB55351122E92B</iv>
-			<input>3B68CFE78B5DEA8F5165A2034D8C2823</input>
-			<output>1921B523A2F9B5F53C740D451C9FCE0C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B244E474DEB00A4EE4DFAEBD8B0CC264</key>
-			<iv>1921B523A2F9B5F53C740D451C9FCE0C</iv>
-			<input>FDDD484B52C7F3A32F4514BEF5A646E3</input>
-			<output>6EAC2BB6EDF35C1267FF4F10700F3CD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DCE8CFC23343565C8320E1ADFB03FEB3</key>
-			<iv>6EAC2BB6EDF35C1267FF4F10700F3CD7</iv>
-			<input>CDAD592E5467AD1FA1B71D8AC050FCE0</input>
-			<output>D9624E40A8C9A2C58ABEDBAEB865DC1F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>058A81829B8AF499099E3A03436622AC</key>
-			<iv>D9624E40A8C9A2C58ABEDBAEB865DC1F</iv>
-			<input>F9E90A4D7A9EF66818004CBC47C8C6EA</input>
-			<output>DE15C7322B32738BB493E7FA27AFE6E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DB9F46B0B0B88712BD0DDDF964C9C44E</key>
-			<iv>DE15C7322B32738BB493E7FA27AFE6E2</iv>
-			<input>FE3CC4AE4A13AC8946407CEEE220290B</input>
-			<output>5822C79D627AD8A0C4975873D62C5E11</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>83BD812DD2C25FB2799A858AB2E59A5F</key>
-			<iv>5822C79D627AD8A0C4975873D62C5E11</iv>
-			<input>A5106EBD8888CC3A6884AC8E8EA9C97A</input>
-			<output>F5AD0473A4228662D9F76E7A5ED4DBDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7610855E76E0D9D0A06DEBF0EC314182</key>
-			<iv>F5AD0473A4228662D9F76E7A5ED4DBDD</iv>
-			<input>4F30B073FB95CD0F0317E749F20E7A7D</input>
-			<output>4B39DA1FA331CFEB1D6713054C6E9474</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D295F41D5D1163BBD0AF8F5A05FD5F6</key>
-			<iv>4B39DA1FA331CFEB1D6713054C6E9474</iv>
-			<input>4850735E17F01A3B131E1B78B3A6EB96</input>
-			<output>32D1BE8640859CFAB16D64CE8795729B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0FF8E1C795548AC10C679C3B27CAA76D</key>
-			<iv>32D1BE8640859CFAB16D64CE8795729B</iv>
-			<input>A8C4B9E0069935CB046ACBB49C0B1205</input>
-			<output>47DC1150929AA9610938CB0CFE92995E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4824F09707CE23A0055F5737D9583E33</key>
-			<iv>47DC1150929AA9610938CB0CFE92995E</iv>
-			<input>13F5DA56D399A7DAA004D0BE76845E68</input>
-			<output>BCA6BD8971837B8A81B923E5B2ED0D83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4824D1E764D582A84E674D26BB533B0</key>
-			<iv>BCA6BD8971837B8A81B923E5B2ED0D83</iv>
-			<input>8397C79E02FDFE6B7D47FA0181EA453A</input>
-			<output>23D991B7DA5E96966830E7B40B5A2D8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D75BDCA9AC13CEBCECD6936660EF1E3A</key>
-			<iv>23D991B7DA5E96966830E7B40B5A2D8A</iv>
-			<input>18987E5504E23C0F862BCA8DFFC2B07F</input>
-			<output>17AA31C49F584DEF77C8E7891B11652B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C0F1ED6D334B83539B1E74EF7BFE7B11</key>
-			<iv>17AA31C49F584DEF77C8E7891B11652B</iv>
-			<input>A34D44CC1C6E171D7D48447F87E2F2C1</input>
-			<output>DD1F90F66D4062E6823F0F229562D110</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1DEE7D9B5E0BE1B519217BCDEE9CAA01</key>
-			<iv>DD1F90F66D4062E6823F0F229562D110</iv>
-			<input>C9793582E22B8840BBAA3D7669208CCC</input>
-			<output>8F5B876777F7CA903B1D6346AA8BDAE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92B5FAFC29FC2B25223C188B441770E6</key>
-			<iv>8F5B876777F7CA903B1D6346AA8BDAE7</iv>
-			<input>730EACFEE3817A94B88117ABB3F9CDE4</input>
-			<output>388780BA989C0A8BB5BD9E4086D91EF7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA327A46B16021AE978186CBC2CE6E11</key>
-			<iv>388780BA989C0A8BB5BD9E4086D91EF7</iv>
-			<input>F004D3A14C6C94FA2D39BE0C71119658</input>
-			<output>7F4C33E4F5C055C05DB4B7691061B307</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D57E49A244A0746ECA3531A2D2AFDD16</key>
-			<iv>7F4C33E4F5C055C05DB4B7691061B307</iv>
-			<input>575F86A5D1637CB86449F8BC0F1573D3</input>
-			<output>F6FE1919F174065AB31AC43E0D733A81</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>238050BBB5D47234792FF59CDFDCE797</key>
-			<iv>F6FE1919F174065AB31AC43E0D733A81</iv>
-			<input>14F8E2DB61B05E094CA4C0E9DA7800EE</input>
-			<output>4CB876F2DC169F955E639C6C916340A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6F38264969C2EDA1274C69F04EBFA731</key>
-			<iv>4CB876F2DC169F955E639C6C916340A6</iv>
-			<input>F88BA2E4AA4ABDD381778DFD1DA1856F</input>
-			<output>AEEB80B469D89E45BC3426B6CCC50440</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C1D3A6FD001A73E49B784F46827AA371</key>
-			<iv>AEEB80B469D89E45BC3426B6CCC50440</iv>
-			<input>195F74019B65C0F7D724491BDE8C8B88</input>
-			<output>2FD7CCDBDB2B2037C104F0A707A11EDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE046A26DB3153D35A7CBFE185DBBDAB</key>
-			<iv>2FD7CCDBDB2B2037C104F0A707A11EDA</iv>
-			<input>FF51887AB5FEC9C97CB61BB2DE9CDBC6</input>
-			<output>8DF7BB99B781C63F4F8B2A7D5DFF2960</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>63F3D1BF6CB095EC15F7959CD82494CB</key>
-			<iv>8DF7BB99B781C63F4F8B2A7D5DFF2960</iv>
-			<input>A35AAB0055E99FA980D59B242B8C6257</input>
-			<output>7D96ECC20571E9E85C16E3BDADA374CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1E653D7D69C17C0449E176217587E001</key>
-			<iv>7D96ECC20571E9E85C16E3BDADA374CA</iv>
-			<input>02CC392194874CD531025588C96E2D22</input>
-			<output>AA1DC2E69CE582DFA9A1B435854FCBB1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B478FF9BF524FEDBE040C214F0C82BB0</key>
-			<iv>AA1DC2E69CE582DFA9A1B435854FCBB1</iv>
-			<input>94CC5DB118EF53C904B0EEC23AC650FD</input>
-			<output>DA0CA33BCCE4ABA1936833127D1F5E25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6E745CA039C0557A7328F1068DD77595</key>
-			<iv>DA0CA33BCCE4ABA1936833127D1F5E25</iv>
-			<input>52F009E929526E923BE4F43B66876725</input>
-			<output>B5E80FF4DADD69BB7493B9F72A752811</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DB9C5354E31D3CC107BB48F1A7A25D84</key>
-			<iv>B5E80FF4DADD69BB7493B9F72A752811</iv>
-			<input>6B88B42E99E5B4F838064A711B71DE1F</input>
-			<output>5CDDCE45516C6D1654647A1A541AC435</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>87419D11B27151D753DF32EBF3B899B1</key>
-			<iv>5CDDCE45516C6D1654647A1A541AC435</iv>
-			<input>9E25CBDD8E2D7D68FF72932E35879175</input>
-			<output>3C7E88A9A6462D08ADA5910A3FCE611A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BB3F15B814377CDFFE7AA3E1CC76F8AB</key>
-			<iv>3C7E88A9A6462D08ADA5910A3FCE611A</iv>
-			<input>72A4EF1D82A3AC5C1DFDF8C4DCFB9F6E</input>
-			<output>E428200E1C3BE9A5141F73590B7473B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5F1735B6080C957AEA65D0B8C7028B13</key>
-			<iv>E428200E1C3BE9A5141F73590B7473B8</iv>
-			<input>7CD8053F2FD743A44CC39F75C1E81075</input>
-			<output>AB3B8A79653E884053AFC8C14504AF77</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F42CBFCF6D321D3AB9CA187982062464</key>
-			<iv>AB3B8A79653E884053AFC8C14504AF77</iv>
-			<input>0731077A8B6854CB90AFFAE3A3B199C4</input>
-			<output>53B7DFD6D12DDE7966C62FCC1946A4AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A79B6019BC1FC343DF0C37B59B4080C8</key>
-			<iv>53B7DFD6D12DDE7966C62FCC1946A4AC</iv>
-			<input>E4E26CA1DA697F30E0542763313A79B7</input>
-			<output>6DEC201BBB90B66A3B2DFF4FA1DDF7C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CA774002078F7529E421C8FA3A9D770C</key>
-			<iv>6DEC201BBB90B66A3B2DFF4FA1DDF7C4</iv>
-			<input>C2CF11681C4767A78B2F95AFB50CF155</input>
-			<output>F535B7CD4135A39E0E344BD2CFA14B83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3F42F7CF46BAD6B7EA158328F53C3C8F</key>
-			<iv>F535B7CD4135A39E0E344BD2CFA14B83</iv>
-			<input>606618948C1ED454B9B0F92435381D2D</input>
-			<output>209AC483682C48AA197BB64417127656</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1FD8334C2E969E1DF36E356CE22E4AD9</key>
-			<iv>209AC483682C48AA197BB64417127656</iv>
-			<input>8F8A70AADF2F8BFB5E137F86AC83D32F</input>
-			<output>76F5F43A888D7F22D698A73810ED5B15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>692DC776A61BE13F25F69254F2C311CC</key>
-			<iv>76F5F43A888D7F22D698A73810ED5B15</iv>
-			<input>E9E8AEBF16A5F4E1C26B4A385163E844</input>
-			<output>625C62F33C9548F2651FB0A08BF45286</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0B71A5859A8EA9CD40E922F47937434A</key>
-			<iv>625C62F33C9548F2651FB0A08BF45286</iv>
-			<input>C69CFD36C50EBA06E3B3C4AB7C9B694E</input>
-			<output>3931CE6DF783063F26920D4048B00C82</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>32406BE86D0DAFF2667B2FB431874FC8</key>
-			<iv>3931CE6DF783063F26920D4048B00C82</iv>
-			<input>5DFE322DD692BA8DD9CD328A5AF9A3B7</input>
-			<output>A3CA3ECE725C84281144052A80EA5176</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>918A55261F512BDA773F2A9EB16D1EBE</key>
-			<iv>A3CA3ECE725C84281144052A80EA5176</iv>
-			<input>4BBD16BF74226F816767A7207C672C9A</input>
-			<output>94552690A231354F8F9BEF295E55F142</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>05DF73B6BD601E95F8A4C5B7EF38EFFC</key>
-			<iv>94552690A231354F8F9BEF295E55F142</iv>
-			<input>7055D0C535B2B0501FF6AAEE46E03818</input>
-			<output>771908987F00C2D822897E7EEA148F29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>72C67B2EC260DC4DDA2DBBC9052C60D5</key>
-			<iv>771908987F00C2D822897E7EEA148F29</iv>
-			<input>7336B9D4977BDDA811C0C5EBEA539574</input>
-			<output>7AA84598115B181863081AFCC239EDD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>086E3EB6D33BC455B925A135C7158D07</key>
-			<iv>7AA84598115B181863081AFCC239EDD2</iv>
-			<input>5296C8546532BAEACBEC9F29916FB6B2</input>
-			<output>3D95967035AF639B2D2814DEB9B7F86A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>35FBA8C6E694A7CE940DB5EB7EA2756D</key>
-			<iv>3D95967035AF639B2D2814DEB9B7F86A</iv>
-			<input>430880F5576C7783BC1336F900DDD037</input>
-			<output>4D70AAD2FC9EF403B463A72DB4CFE640</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>788B02141A0A53CD206E12C6CA6D932D</key>
-			<iv>4D70AAD2FC9EF403B463A72DB4CFE640</iv>
-			<input>E489B93778DE0C42FEFB6122ECA46BDC</input>
-			<output>165DDB405546934E81CB6B0B89B4A40E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6ED6D9544F4CC083A1A579CD43D93723</key>
-			<iv>165DDB405546934E81CB6B0B89B4A40E</iv>
-			<input>8E5481ACD58BFC5D141C1F71CDE91E37</input>
-			<output>693775A3661CE9D0E4CB4888431C64A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>07E1ACF729502953456E314500C55386</key>
-			<iv>693775A3661CE9D0E4CB4888431C64A5</iv>
-			<input>4AAA5E507EFB9FAD15E5F4C77F46AF89</input>
-			<output>C42391D50B1210C67B6AD642745A4DAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C3C23D22224239953E04E707749F1E2A</key>
-			<iv>C42391D50B1210C67B6AD642745A4DAC</iv>
-			<input>4E0748F8716801B099494037485B8BA4</input>
-			<output>A4CB7F010AC42B4C3C14F02353F3644A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>67094223288612D902101724276C7A60</key>
-			<iv>A4CB7F010AC42B4C3C14F02353F3644A</iv>
-			<input>0B7B41D57885DB37A2FC355C8D03FF3C</input>
-			<output>1BB0CBD24537B36EB555BE8C0FEC3A1F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7CB989F16DB1A1B7B745A9A82880407F</key>
-			<iv>1BB0CBD24537B36EB555BE8C0FEC3A1F</iv>
-			<input>4696F9A564354194142AB7B8630B4279</input>
-			<output>18B10BAE39D4FA58F586A067A8E38BC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6408825F54655BEF42C309CF8063CBBA</key>
-			<iv>18B10BAE39D4FA58F586A067A8E38BC5</iv>
-			<input>0B59EBABAB994F2DDB3DE383454BECE8</input>
-			<output>C09C6670B93ECD303BA53DE58DD81A64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A494E42FED5B96DF7966342A0DBBD1DE</key>
-			<iv>C09C6670B93ECD303BA53DE58DD81A64</iv>
-			<input>2F897F3385E71133CEC8367411E830A3</input>
-			<output>45EA7CB9119DF7367294F9FE36D4A09F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E17E9896FCC661E90BF2CDD43B6F7141</key>
-			<iv>45EA7CB9119DF7367294F9FE36D4A09F</iv>
-			<input>8CDE9D975B51A098F4CAC93DC58C002F</input>
-			<output>02DDD735439A8AE03E976E629A6C992C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E3A34FA3BF5CEB093565A3B6A103E86D</key>
-			<iv>02DDD735439A8AE03E976E629A6C992C</iv>
-			<input>1E20571F82C2C6884A6F90A23FD3A925</input>
-			<output>B040686B866AE80A88B899031F2F0EE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53E327C839360303BDDD3AB5BE2CE689</key>
-			<iv>B040686B866AE80A88B899031F2F0EE4</iv>
-			<input>0851624711970ADE2F456D5DAFB17E05</input>
-			<output>201756BC061706513264A3C489D95A0C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>73F471743F2105528FB9997137F5BC85</key>
-			<iv>201756BC061706513264A3C489D95A0C</iv>
-			<input>E8B1410DE742136E71F54D31FEAA72EB</input>
-			<output>2EF27C31AA488648FCE0F1804D658092</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5D060D459569831A735968F17A903C17</key>
-			<iv>2EF27C31AA488648FCE0F1804D658092</iv>
-			<input>97E0CA84C9B22C8942C7FC5088EAED04</input>
-			<output>7545F1D9C8F5F8B441EDCDAF00462344</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2843FC9C5D9C7BAE32B4A55E7AD61F53</key>
-			<iv>7545F1D9C8F5F8B441EDCDAF00462344</iv>
-			<input>7B5572C09E998656B55C53748CF77C21</input>
-			<output>347875EFD6BD978CD1B2EA949F7E2358</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1C3B89738B21EC22E3064FCAE5A83C0B</key>
-			<iv>347875EFD6BD978CD1B2EA949F7E2358</iv>
-			<input>A30001AA29D70B0A141B8FC8B9B2E210</input>
-			<output>9C956408BA335CCC9F02F31CC45FD5E6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80AEED7B3112B0EE7C04BCD621F7E9ED</key>
-			<iv>9C956408BA335CCC9F02F31CC45FD5E6</iv>
-			<input>839783D75859393B215010F63159FA45</input>
-			<output>B70E700F4A7ED08618754960B83BD0F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>37A09D747B6C60686471F5B699CC391F</key>
-			<iv>B70E700F4A7ED08618754960B83BD0F2</iv>
-			<input>1E3C630BC8C34BF8822686043D14E4D6</input>
-			<output>4721B6796F82D47D6EEB9CB11A19605E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>70812B0D14EEB4150A9A690783D55941</key>
-			<iv>4721B6796F82D47D6EEB9CB11A19605E</iv>
-			<input>CEE1B977E8B75623CC4E2C4F4765FE2A</input>
-			<output>3382E1B076680BBBE7C451582016DD11</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4303CABD6286BFAEED5E385FA3C38450</key>
-			<iv>3382E1B076680BBBE7C451582016DD11</iv>
-			<input>02365457AB60C892A0C34A7067AB7608</input>
-			<output>AB581732E06B90AA0C835C1C7B6D18B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E85BDD8F82ED2F04E1DD6443D8AE9CE5</key>
-			<iv>AB581732E06B90AA0C835C1C7B6D18B5</iv>
-			<input>222B7ED84C648C12FFDD6E8E13EEC651</input>
-			<output>3E2E592CEEAD3B5E16860E80E406E882</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D67584A36C40145AF75B6AC33CA87467</key>
-			<iv>3E2E592CEEAD3B5E16860E80E406E882</iv>
-			<input>7D24BD646EEBA44ED27B11DA42D72FF8</input>
-			<output>9163F6DBE0D8BB79A154D92E37A07E1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>471672788C98AF23560FB3ED0B080A7B</key>
-			<iv>9163F6DBE0D8BB79A154D92E37A07E1C</iv>
-			<input>42B571FFB3275F5A8E26616A3F0E3403</input>
-			<output>E1340E61513FE8146F29E111392E2C3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A6227C19DDA74737392652FC32262641</key>
-			<iv>E1340E61513FE8146F29E111392E2C3A</iv>
-			<input>6EFD16D48E03B6E1CD74777ABC891DA8</input>
-			<output>3D703B4FD8A8A7F015D0FD47DE0C5A28</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9B524756050FE0C72CF6AFBBEC2A7C69</key>
-			<iv>3D703B4FD8A8A7F015D0FD47DE0C5A28</iv>
-			<input>7956129687AC95397E14821A17F267DE</input>
-			<output>C5C6D2BAABDBE0B82CDFFFE7A92C8344</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5E9495ECAED4007F0029505C4506FF2D</key>
-			<iv>C5C6D2BAABDBE0B82CDFFFE7A92C8344</iv>
-			<input>AC661770332FE0A45B80791C3A5D1241</input>
-			<output>6F7BDE1BD17C5B10064B52EB54EE90B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>31EF4BF77FA85B6F066202B711E86F9D</key>
-			<iv>6F7BDE1BD17C5B10064B52EB54EE90B0</iv>
-			<input>1DE0702C81667A979E5E3542DA95C5AD</input>
-			<output>DC7E35D5B02AFF4B92C190265E01C0F8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ED917E22CF82A42494A392914FE9AF65</key>
-			<iv>DC7E35D5B02AFF4B92C190265E01C0F8</iv>
-			<input>A491CB4321C757FD353B560C0B3EA4D0</input>
-			<output>D753F5A6C5D7E17F4024FD8675B23E7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3AC28B840A55455BD4876F173A5B911A</key>
-			<iv>D753F5A6C5D7E17F4024FD8675B23E7F</iv>
-			<input>418FA3B3E9B4E463D04AC3A3361DCA57</input>
-			<output>B635529E8080B33E9AD6D79B8203112D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8CF7D91A8AD5F6654E51B88CB8588037</key>
-			<iv>B635529E8080B33E9AD6D79B8203112D</iv>
-			<input>C87E4ED505989807D1DBDA4769804EA3</input>
-			<output>43E763CD1B9EE4BC474B79C1E0DA2564</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CF10BAD7914B12D9091AC14D5882A553</key>
-			<iv>43E763CD1B9EE4BC474B79C1E0DA2564</iv>
-			<input>042F084454D0EE01AB00D3921E1BCA06</input>
-			<output>C799956FF8A7A05B71123EBC4AA09C0C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>08892FB869ECB2827808FFF11222395F</key>
-			<iv>C799956FF8A7A05B71123EBC4AA09C0C</iv>
-			<input>9A8E40400C51A438DCE498AD3455DE51</input>
-			<output>76679B0E26B1B6CA2A8D90944777C57F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7EEEB4B64F5D044852856F655555FC20</key>
-			<iv>76679B0E26B1B6CA2A8D90944777C57F</iv>
-			<input>227E122D3AF18A3CAA973B33B3356CE7</input>
-			<output>B2F52396F02D2DFFE36C5F9238AC1EBE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC1B9720BF7029B7B1E930F76DF9E29E</key>
-			<iv>B2F52396F02D2DFFE36C5F9238AC1EBE</iv>
-			<input>0D9CDD97E2FE0E78CF16B1596DC20ABA</input>
-			<output>7C8EDD3A079835954238E0FE4872AAE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B0954A1AB8E81C22F3D1D009258B487F</key>
-			<iv>7C8EDD3A079835954238E0FE4872AAE1</iv>
-			<input>925A7ECD233B3B3CCDE2221A03C5F720</input>
-			<output>D7C9FD3EF010C8577087591149D5640F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>675CB72448F8D475835689186C5E2C70</key>
-			<iv>D7C9FD3EF010C8577087591149D5640F</iv>
-			<input>59FEFBE5179F0E7E48F3D97CDA314FF5</input>
-			<output>2608CCE6BA917551DEF84FA7BCA9B23C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>41547BC2F269A1245DAEC6BFD0F79E4C</key>
-			<iv>2608CCE6BA917551DEF84FA7BCA9B23C</iv>
-			<input>7F24A1BA8762294194F76322A6B28A16</input>
-			<output>EFF1513B52D5D74D2202898AC99552C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AEA52AF9A0BC76697FAC4F351962CC88</key>
-			<iv>EFF1513B52D5D74D2202898AC99552C4</iv>
-			<input>79B43F27F3E144C4EFBF383698A1EC90</input>
-			<output>B4B3B020D44D059666E86D22072916B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A169AD974F173FF194422171E4BDA3D</key>
-			<iv>B4B3B020D44D059666E86D22072916B5</iv>
-			<input>8BF20B60B4774354857BA2979CD396F9</input>
-			<output>6F1A3D43CC2171A808AE8D38396DE1D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>750CA79AB8D0025711EAAF2F27263BEC</key>
-			<iv>6F1A3D43CC2171A808AE8D38396DE1D1</iv>
-			<input>74955DDACFB8A5467D069F1EF341248B</input>
-			<output>47C23A68DA351C22EBF86FDBD8F723B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>32CE9DF262E51E75FA12C0F4FFD11858</key>
-			<iv>47C23A68DA351C22EBF86FDBD8F723B4</iv>
-			<input>25D7A186ED990020E10A23C5CFB1CEF9</input>
-			<output>D5F2E2C2CED730479D87E0AF0FEF8A73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E73C7F30AC322E326795205BF03E922B</key>
-			<iv>D5F2E2C2CED730479D87E0AF0FEF8A73</iv>
-			<input>13480F2EDCCB62B8F9A7DF98238571FC</input>
-			<output>F29A46A7F1B1D1D4F5FE30E569D7A801</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15A639975D83FFE6926B10BE99E93A2A</key>
-			<iv>F29A46A7F1B1D1D4F5FE30E569D7A801</iv>
-			<input>75E138123B5A98596303ACF9DAEEA714</input>
-			<output>9F6E9A13913DF78AC67BD20303AF49B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8AC8A384CCBE086C5410C2BD9A46739F</key>
-			<iv>9F6E9A13913DF78AC67BD20303AF49B5</iv>
-			<input>DBD0AE00FD06761626366EB251412A32</input>
-			<output>46AC9F42239B22A163CE0FDEAA103D44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC643CC6EF252ACD37DECD6330564EDB</key>
-			<iv>46AC9F42239B22A163CE0FDEAA103D44</iv>
-			<input>B8768A8AF461C9547D1F982FE90E96B6</input>
-			<output>95D7C8F969B0EEB03FEC257043597315</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59B3F43F8695C47D0832E813730F3DCE</key>
-			<iv>95D7C8F969B0EEB03FEC257043597315</iv>
-			<input>3D20CC8AD484048251C7A81C7E3CA59C</input>
-			<output>6B74AF42435BC640A826EC443207574E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>32C75B7DC5CE023DA014045741086A80</key>
-			<iv>6B74AF42435BC640A826EC443207574E</iv>
-			<input>BF719F78B23BAFD4A50634BCD9361095</input>
-			<output>31E3919F36D79FBF61884227110C10FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0324CAE2F3199D82C19C467050047A7F</key>
-			<iv>31E3919F36D79FBF61884227110C10FF</iv>
-			<input>E1D32740BB8B6D67AD3038887899F090</input>
-			<output>A1CD90683CE041D6CA20780176FDD5F4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A2E95A8ACFF9DC540BBC3E7126F9AF8B</key>
-			<iv>A1CD90683CE041D6CA20780176FDD5F4</iv>
-			<input>3069EA97F092ACDCF41649377B8FCBC8</input>
-			<output>7220F866A10DC711DC1D277B4C8F204D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D0C9A2EC6EF41B45D7A1190A6A768FC6</key>
-			<iv>7220F866A10DC711DC1D277B4C8F204D</iv>
-			<input>B0563A5E0EE1E2B96F3F7D04EE39EA7C</input>
-			<output>CF81CA348B98C532B172F032AE0A6FED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1F4868D8E56CDE7766D3E938C47CE02B</key>
-			<iv>CF81CA348B98C532B172F032AE0A6FED</iv>
-			<input>B1B78BD75C30DD4E1E198ACB98B498A6</input>
-			<output>99C990D64D27D47ED0C1E7F186AC6674</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8681F80EA84B0A09B6120EC942D0865F</key>
-			<iv>99C990D64D27D47ED0C1E7F186AC6674</iv>
-			<input>D413E3CC66E9938E4E0CFC1975E38C8C</input>
-			<output>30C7DAD86FEF77C43A44A3EF8B116354</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B64622D6C7A47DCD8C56AD26C9C1E50B</key>
-			<iv>30C7DAD86FEF77C43A44A3EF8B116354</iv>
-			<input>CD85D9334481AE85B8816233CA4AF7DB</input>
-			<output>9E717B45239DD908138837154B803654</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>28375993E439A4C59FDE9A338241D35F</key>
-			<iv>9E717B45239DD908138837154B803654</iv>
-			<input>925BA3760D655D5B788802DDE25732BB</input>
-			<output>4A6E32C01709EBCCC9BCA43FD5DFDFB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62596B53F3304F0956623E0C579E0CEC</key>
-			<iv>4A6E32C01709EBCCC9BCA43FD5DFDFB3</iv>
-			<input>0AA6264BFCC7BD07FA8F94E1EF739633</input>
-			<output>7263392DC9DA868BC0317A6D4AD52553</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>103A527E3AEAC982965344611D4B29BF</key>
-			<iv>7263392DC9DA868BC0317A6D4AD52553</iv>
-			<input>FB385BD8ECE7C4DFE2351D851141888D</input>
-			<output>AA49B1DDA3AF4D05D861667E88AD61AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BA73E3A3994584874E32221F95E64814</key>
-			<iv>AA49B1DDA3AF4D05D861667E88AD61AB</iv>
-			<input>510E13E20BB06EAD335F10F2C69831D3</input>
-			<output>3AC256A92F69AF35DB05DDCA61CF1EE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80B1B50AB62C2BB29537FFD5F42956F0</key>
-			<iv>3AC256A92F69AF35DB05DDCA61CF1EE4</iv>
-			<input>0A07CAA0EC6CB726F1A38847253BECB6</input>
-			<output>037497736381429A5E5A139C44A6C64A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>83C52279D5AD6928CB6DEC49B08F90BA</key>
-			<iv>037497736381429A5E5A139C44A6C64A</iv>
-			<input>864FEF67C8902757E2CFB28DA2EF3C8D</input>
-			<output>5393D7F9F37A5B9F1F82C1BE20435149</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D056F58026D732B7D4EF2DF790CCC1F3</key>
-			<iv>5393D7F9F37A5B9F1F82C1BE20435149</iv>
-			<input>ED2D2A671677067B30540D4C9D86905F</input>
-			<output>2969AC5FB94EC76209C6DF58F6B8AA01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F93F59DF9F99F5D5DD29F2AF66746BF2</key>
-			<iv>2969AC5FB94EC76209C6DF58F6B8AA01</iv>
-			<input>67ED14454DAD764C1772BCB1E0527954</input>
-			<output>150F94E1940F9D2ACC735F79B0912A06</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EC30CD3E0B9668FF115AADD6D6E541F4</key>
-			<iv>150F94E1940F9D2ACC735F79B0912A06</iv>
-			<input>517A4852F68370EDD879E32F52FD4D2B</input>
-			<output>6EFD8E4E4C096A2033B3DA8A1F0066AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>82CD4370479F02DF22E9775CC9E5275B</key>
-			<iv>6EFD8E4E4C096A2033B3DA8A1F0066AF</iv>
-			<input>DBF4CAD912437115658E5BA5E1724739</input>
-			<output>899D9126CD85D2D4053AD9EE7156041B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0B50D2568A1AD00B27D3AEB2B8B32340</key>
-			<iv>899D9126CD85D2D4053AD9EE7156041B</iv>
-			<input>69B302F96AFCF802AC639EBABC52ECFB</input>
-			<output>819E4B8319807088FF306E125E52DAD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ACE99D5939AA083D8E3C0A0E6E1F993</key>
-			<iv>819E4B8319807088FF306E125E52DAD3</iv>
-			<input>F5CA57371833F0AF98F0EC02DFE518ED</input>
-			<output>4DFA3739235D14660DF7D5FDE36F6567</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C734AEECB0C7B4E5D514155D058E9CF4</key>
-			<iv>4DFA3739235D14660DF7D5FDE36F6567</iv>
-			<input>29BBD9264B9792BED8A8EFA43F943A7D</input>
-			<output>4EA36ECCBCCD9FAFD8FB588BD53826A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8997C0200C0A2B4A0DEF4DD6D0B6BA53</key>
-			<iv>4EA36ECCBCCD9FAFD8FB588BD53826A7</iv>
-			<input>149120CFC3D7C671F287AA77A4A3EF97</input>
-			<output>0282357C78C8944A5520AF80506DE30D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8B15F55C74C2BF0058CFE25680DB595E</key>
-			<iv>0282357C78C8944A5520AF80506DE30D</iv>
-			<input>02C2E0CCB12F5216213D493325F38FC3</input>
-			<output>C827C36F654137A2BB127D1782285B10</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>43323633118388A2E3DD9F4102F3024E</key>
-			<iv>C827C36F654137A2BB127D1782285B10</iv>
-			<input>FA1693AD90401791FF9093A562EC66EB</input>
-			<output>3723A94BC91032BF8DB599ABEFB784D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74119F78D893BA1D6E6806EAED44869F</key>
-			<iv>3723A94BC91032BF8DB599ABEFB784D1</iv>
-			<input>5410CBE33ABB58AB0B0E86F5817E6F2C</input>
-			<output>26A520B5B475632EE8806648BFC028AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>52B4BFCD6CE6D93386E860A25284AE30</key>
-			<iv>26A520B5B475632EE8806648BFC028AF</iv>
-			<input>B01A11D200C24F4333029DE3BFF49601</input>
-			<output>36D5E00E0A53D7CE1498215AFA686905</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64615FC366B50EFD927041F8A8ECC735</key>
-			<iv>36D5E00E0A53D7CE1498215AFA686905</iv>
-			<input>252E4460E9A391D54CE9E516663E59AE</input>
-			<output>829F0B7B17ED5F2FB7A014A6CD9D8052</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6FE54B8715851D225D0555E65714767</key>
-			<iv>829F0B7B17ED5F2FB7A014A6CD9D8052</iv>
-			<input>BCC51A6493F6847BEA8219329F67308D</input>
-			<output>BAB1D358D08DA13BEC485051F2EBFE2E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C4F87E0A1D5F0E9C998050F979AB949</key>
-			<iv>BAB1D358D08DA13BEC485051F2EBFE2E</iv>
-			<input>D89236011B3C2338E95322D4716AEE59</input>
-			<output>29BA99F8CF8B48134B1330E75BD7254E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>75F51E186E5EB8FA828B35E8CC4D9C07</key>
-			<iv>29BA99F8CF8B48134B1330E75BD7254E</iv>
-			<input>21D0EB5857C93A0D4D75253E1020C00E</input>
-			<output>9D557274FE14AA69673441117A2D7DA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8A06C6C904A1293E5BF74F9B660E1A5</key>
-			<iv>9D557274FE14AA69673441117A2D7DA2</iv>
-			<input>3C3BB454584C4C7570089B6E631BA035</input>
-			<output>543EF50A024E77ACE685BD0BBB47232D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC9E99669204653F033AC9F20D27C288</key>
-			<iv>543EF50A024E77ACE685BD0BBB47232D</iv>
-			<input>8ED890BC903AEAC7C3C685980EDB3370</input>
-			<output>884BD68868D89DE9DEDB2D95A8B992FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>34D54FEEFADCF8D6DDE1E467A59E5073</key>
-			<iv>884BD68868D89DE9DEDB2D95A8B992FB</iv>
-			<input>684DEBD6DEDE24BD0F4F8AFA47F08AEF</input>
-			<output>DB00984CAEB14CF5A1FDE8E8E9C03830</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EFD5D7A2546DB4237C1C0C8F4C5E6843</key>
-			<iv>DB00984CAEB14CF5A1FDE8E8E9C03830</iv>
-			<input>C42B245443F2695F306455199C7C76FE</input>
-			<output>0CA808425E8EBDDD5519130F4900329F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E37DDFE00AE309FE29051F80055E5ADC</key>
-			<iv>0CA808425E8EBDDD5519130F4900329F</iv>
-			<input>1655F89334CCB6ED8E140088997BD2D1</input>
-			<output>0DAE2F85CD81874DCD7368277D0C386D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EED3F065C7628EB3E47677A7785262B1</key>
-			<iv>0DAE2F85CD81874DCD7368277D0C386D</iv>
-			<input>2B7A2DF6E0CAC83837AFDC8B2134E6A6</input>
-			<output>E3BF66A6784432E6CE61B769C3CFDB35</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D6C96C3BF26BC552A17C0CEBB9DB984</key>
-			<iv>E3BF66A6784432E6CE61B769C3CFDB35</iv>
-			<input>8FED19E77B9690EC8F70272364B4EB74</input>
-			<output>473925552401311F24EE4F40B5A3ECB5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A55B3969B278D4A0EF98F8E0E3E5531</key>
-			<iv>473925552401311F24EE4F40B5A3ECB5</iv>
-			<input>032D9AF654037E2586B12CF031E4AB4C</input>
-			<output>E9E1E4ACF3F4E25CB8093F6B27665DFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A3B4573A68D36F16B6F0B0E5295808CE</key>
-			<iv>E9E1E4ACF3F4E25CB8093F6B27665DFF</iv>
-			<input>E6EF26B3721F6C772D231584DD480441</input>
-			<output>2D9F85D63FED609876DF97F0E6B85564</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8E2BD2EC573E0F8EC02F2715CFE05DAA</key>
-			<iv>2D9F85D63FED609876DF97F0E6B85564</iv>
-			<input>E641EBC4A734C71669D948F1BEEE675A</input>
-			<output>3A61F4BED09FD7A7AED71E9FD53D2EE3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B44A265287A1D8296EF8398A1ADD7349</key>
-			<iv>3A61F4BED09FD7A7AED71E9FD53D2EE3</iv>
-			<input>36DB43747CD9215857886A0DE2008509</input>
-			<output>6BE2AD95F4A642F3FD73D9543B53D479</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DFA88BC773079ADA938BE0DE218EA730</key>
-			<iv>6BE2AD95F4A642F3FD73D9543B53D479</iv>
-			<input>58A73313B31B8C1EB3C144C9363EE94B</input>
-			<output>BF198D336DF857BFBA069634C25CF45B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>60B106F41EFFCD65298D76EAE3D2536B</key>
-			<iv>BF198D336DF857BFBA069634C25CF45B</iv>
-			<input>E0974E1BBEFE21422ECED27858535F87</input>
-			<output>7945132F6F7EED6B61E1CF9C47E2AB2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19F415DB7181200E486CB976A430F841</key>
-			<iv>7945132F6F7EED6B61E1CF9C47E2AB2A</iv>
-			<input>6F36B63A1A8B426282CA4E61B7E37B3A</input>
-			<output>AF441F330C8C199E9776D92A92B02216</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B6B00AE87D0D3990DF1A605C3680DA57</key>
-			<iv>AF441F330C8C199E9776D92A92B02216</iv>
-			<input>99AD2B814D3A4C0E1C27D4251C55C74A</input>
-			<output>F34463A538E46E87B0F24EAA36B674A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>45F4694D45E957176FE82EF60036AEF0</key>
-			<iv>F34463A538E46E87B0F24EAA36B674A7</iv>
-			<input>6D05C19E42D0561C198A10FA55F4C870</input>
-			<output>5D54D3C72D55015D0149FA1591208824</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18A0BA8A68BC564A6EA1D4E3911626D4</key>
-			<iv>5D54D3C72D55015D0149FA1591208824</iv>
-			<input>7AA7A04DE8CD21F59BA5369CA175CEC3</input>
-			<output>D2EBE35C33210B39CD4F443BB577DBD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CA4B59D65B9D5D73A3EE90D82461FD0C</key>
-			<iv>D2EBE35C33210B39CD4F443BB577DBD8</iv>
-			<input>2DA2A48FE13FA4DD5271A02FB7F98AEC</input>
-			<output>2F4AD89C0D915DF978160E9E882AD28E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E501814A560C008ADBF89E46AC4B2F82</key>
-			<iv>2F4AD89C0D915DF978160E9E882AD28E</iv>
-			<input>82EB831B9FF9DA7D06553A456133766B</input>
-			<output>09A04C7CBED3D60ADB6CFDD012DEED17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECA1CD36E8DFD68000946396BE95C295</key>
-			<iv>09A04C7CBED3D60ADB6CFDD012DEED17</iv>
-			<input>8D4FD1CE8CB9745E9E65182D94F8307A</input>
-			<output>193C6FAB40C87C7029983EDD52628400</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F59DA29DA817AAF0290C5D4BECF74695</key>
-			<iv>193C6FAB40C87C7029983EDD52628400</iv>
-			<input>F06A061082E499E65A5DED0D22323F57</input>
-			<output>7166BD655D8128E7B09D37B38478B480</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>84FB1FF8F596821799916AF8688FF215</key>
-			<iv>7166BD655D8128E7B09D37B38478B480</iv>
-			<input>DCEC808551EA98534E1A9EDF457125DA</input>
-			<output>5DFAAFB695D34A7AF2D39CD2D01FD4BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D901B04E6045C86D6B42F62AB89026A8</key>
-			<iv>5DFAAFB695D34A7AF2D39CD2D01FD4BD</iv>
-			<input>FAE59C96604D062F49C8C93FA7E4D5FC</input>
-			<output>85F63AFC88A1CED4E73B849C295692F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5CF78AB2E8E406B98C7972B691C6B45A</key>
-			<iv>85F63AFC88A1CED4E73B849C295692F2</iv>
-			<input>7FE1EA6A7A525A7E0222D6269F7D6A40</input>
-			<output>DC60A8554BF9E783D0E92283EC0D00AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>809722E7A31DE13A5C9050357DCBB4F5</key>
-			<iv>DC60A8554BF9E783D0E92283EC0D00AF</iv>
-			<input>89C93828CE30D4CD7025D9F2CF864371</input>
-			<output>EF10720E8F10FBABC96BB5F4E5287D12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6F8750E92C0D1A9195FBE5C198E3C9E7</key>
-			<iv>EF10720E8F10FBABC96BB5F4E5287D12</iv>
-			<input>A8DEA35D4A712ACE8F38A2CA2CB6BCFB</input>
-			<output>EED271733DC7B81AD09C86C8F8D69255</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8155219A11CAA28B4567630960355BB2</key>
-			<iv>EED271733DC7B81AD09C86C8F8D69255</iv>
-			<input>6720AD239EFECF5785B238D4DA39DD6A</input>
-			<output>DC47B1FAC154CB0C39ADF4C92F8C2902</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5D129060D09E69877CCA97C04FB972B0</key>
-			<iv>DC47B1FAC154CB0C39ADF4C92F8C2902</iv>
-			<input>D41DEA3BC44CC552B5ACCFEEFAF225F5</input>
-			<output>AD4828834513730BF275C854D35BF09E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F05AB8E3958D1A8C8EBF5F949CE2822E</key>
-			<iv>AD4828834513730BF275C854D35BF09E</iv>
-			<input>5059DA9258A7DE12865E1E2173399BC9</input>
-			<output>82CA6B085A452CFDFFBDE5C7B738CDAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7290D3EBCFC836717102BA532BDA4F85</key>
-			<iv>82CA6B085A452CFDFFBDE5C7B738CDAB</iv>
-			<input>9625B8A444C3E4D3554A8C6E33E1B810</input>
-			<output>4F44C38189E1011970690D0ED4BCB9C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3DD4106A46293768016BB75DFF66F642</key>
-			<iv>4F44C38189E1011970690D0ED4BCB9C7</iv>
-			<input>373FBCA7529A9FA9AF77295FC55B0BEE</input>
-			<output>27BE0578B0F898C04133AA4D3C1A5A7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A6A1512F6D1AFA840581D10C37CAC3E</key>
-			<iv>27BE0578B0F898C04133AA4D3C1A5A7C</iv>
-			<input>37FC0A286DFFD5A76643D1D45C858F64</input>
-			<output>B9C70B34F78F3DA7796C32D0918474A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A3AD1E26015E920F39342FC052F8D89B</key>
-			<iv>B9C70B34F78F3DA7796C32D0918474A5</iv>
-			<input>E1EAC69AA2A8F05B8747E2624D00F4BB</input>
-			<output>846985C471F10676E63BCD09C32506F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>27C49BE270AF9479DF0FE2C991DDDE68</key>
-			<iv>846985C471F10676E63BCD09C32506F3</iv>
-			<input>6EB0046D9C6854C63447296F4F6D3D21</input>
-			<output>F754559746C52113C29AF782E96B6105</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D090CE75366AB56A1D95154B78B6BF6D</key>
-			<iv>F754559746C52113C29AF782E96B6105</iv>
-			<input>F65269422328F40D8A53F4F14DB88583</input>
-			<output>AE6B4EABF8DC479A1E3F8C3F30A4A797</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7EFB80DECEB6F2F003AA9974481218FA</key>
-			<iv>AE6B4EABF8DC479A1E3F8C3F30A4A797</iv>
-			<input>765B38DC041DEC130A3A294D9F89A16D</input>
-			<output>87645926B9D85AC4AB023D2104CC3FA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F99FD9F8776EA834A8A8A4554CDE2758</key>
-			<iv>87645926B9D85AC4AB023D2104CC3FA2</iv>
-			<input>8070950120E0FBE07C70B171364AD173</input>
-			<output>0125D51139CE00DB848B8A9AD3FEB90B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F8BA0CE94EA0A8EF2C232ECF9F209E53</key>
-			<iv>0125D51139CE00DB848B8A9AD3FEB90B</iv>
-			<input>1EF45DD2CD61667469569CFAD445341C</input>
-			<output>E1651756A2C0D132C671D74748244E49</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19DF1BBFEC6079DDEA52F988D704D01A</key>
-			<iv>E1651756A2C0D132C671D74748244E49</iv>
-			<input>26BEF7E8A3D0AC50DC64B8215CCBC44F</input>
-			<output>94049FBD554A6CFFE7927D6EC07D6242</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8DDB8402B92A15220DC084E61779B258</key>
-			<iv>94049FBD554A6CFFE7927D6EC07D6242</iv>
-			<input>803F34FA967583623D0CA4D76FC56787</input>
-			<output>974BBE04952D8F0DD70F4353FEB092EB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A903A062C079A2FDACFC7B5E9C920B3</key>
-			<iv>974BBE04952D8F0DD70F4353FEB092EB</iv>
-			<input>023E5D307CE85244144D59A53DB504E7</input>
-			<output>2615B9F94F9024EA616648FF15E3B65F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C8583FF6397BEC5BBA98F4AFC2A96EC</key>
-			<iv>2615B9F94F9024EA616648FF15E3B65F</iv>
-			<input>1A84130B09CE3E7AB1F400B9FE295BEB</input>
-			<output>39A2A3B6EFB5EBE805CBAD5817EAEEDA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>052720498C22552DBE622212EBC07836</key>
-			<iv>39A2A3B6EFB5EBE805CBAD5817EAEEDA</iv>
-			<input>B83609055302D99DE46B7153AE3DFCE2</input>
-			<output>93F72B839E2AD731B5E894B56ADADCF4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>96D00BCA1208821C0B8AB6A7811AA4C2</key>
-			<iv>93F72B839E2AD731B5E894B56ADADCF4</iv>
-			<input>85E69EBDE13C05526EA8AE1D24B487F3</input>
-			<output>D0ADA333801DFDBFC2420B73CD2B92A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>467DA8F992157FA3C9C8BDD44C313667</key>
-			<iv>D0ADA333801DFDBFC2420B73CD2B92A5</iv>
-			<input>F24782E953B9B1BBF3B925659C99415B</input>
-			<output>F59A3D0B65E8F16DC73CCD6C27E8C705</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B3E795F2F7FD8ECE0EF470B86BD9F162</key>
-			<iv>F59A3D0B65E8F16DC73CCD6C27E8C705</iv>
-			<input>73BE517552E054D78583BEA03B84A245</input>
-			<output>7904DBE3A103D936EB4B960C180B0651</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CAE34E1156FE57F8E5BFE6B473D2F733</key>
-			<iv>7904DBE3A103D936EB4B960C180B0651</iv>
-			<input>91998E9582D8357DD5D8B95A9D85912F</input>
-			<output>C2DE0D0145A45DEABD6DE1FD62161EB1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>083D4310135A0A1258D2074911C4E982</key>
-			<iv>C2DE0D0145A45DEABD6DE1FD62161EB1</iv>
-			<input>2A5D4EC49712B9CF1E2D9C6C5EFACC2A</input>
-			<output>974264BDC574C738243DDC008EC4C15A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F7F27ADD62ECD2A7CEFDB499F0028D8</key>
-			<iv>974264BDC574C738243DDC008EC4C15A</iv>
-			<input>F74520C3745B9B9F9D19642AA57451FB</input>
-			<output>F4EE51C2ECC32F4806F9C8588880525B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6B91766F3AEDE2627A16131117807A83</key>
-			<iv>F4EE51C2ECC32F4806F9C8588880525B</iv>
-			<input>4A7D6FC6712F451F58DF0AC2D517189E</input>
-			<output>F4978F5F53AA4C336BEE0C62F432B44F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F06F9306947AE5111F81F73E3B2CECC</key>
-			<iv>F4978F5F53AA4C336BEE0C62F432B44F</iv>
-			<input>00DAD17491C973991FEC296972B691BC</input>
-			<output>09DAA53C2E394BF83113BE48E5D0CCA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>96DC5C0C477EE5A920EBA13B0662026E</key>
-			<iv>09DAA53C2E394BF83113BE48E5D0CCA2</iv>
-			<input>C00943704C1336F01A1D23FD98BE7E8B</input>
-			<output>D0DE529664BF241DBED3168DA5BC1B28</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>46020E9A23C1C1B49E38B7B6A3DE1946</key>
-			<iv>D0DE529664BF241DBED3168DA5BC1B28</iv>
-			<input>A07FAD9770CC32C5680F33A2D67044A4</input>
-			<output>F6A44922B3744BE96C46742A79A49CBB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B0A647B890B58A5DF27EC39CDA7A85FD</key>
-			<iv>F6A44922B3744BE96C46742A79A49CBB</iv>
-			<input>D5450C670BE84169AD1E62C5ECB8365F</input>
-			<output>47D229908D4C1EA34E429C34B7D635F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F7746E281DF994FEBC3C5FA86DACB008</key>
-			<iv>47D229908D4C1EA34E429C34B7D635F5</iv>
-			<input>9E90D30BE92104667A16522237D645A6</input>
-			<output>6463AC2096842A0958ACF45370C0626F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9317C2088B7DBEF7E490ABFB1D6CD267</key>
-			<iv>6463AC2096842A0958ACF45370C0626F</iv>
-			<input>74382A7BF713DE8E8D17AE389E03C3AC</input>
-			<output>ECDCEF7613C362D288AC23D38722DC4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7FCB2D7E98BEDC256C3C88289A4E0E2B</key>
-			<iv>ECDCEF7613C362D288AC23D38722DC4C</iv>
-			<input>DB2EC6F41A72F426D9F5DBC65CEC1C5C</input>
-			<output>DFE2DA423ACE2DFB053265E9E9B214E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A029F73CA270F1DE690EEDC173FC1AC9</key>
-			<iv>DFE2DA423ACE2DFB053265E9E9B214E2</iv>
-			<input>35998CB9958DC9DE0550FC3EA722D571</input>
-			<output>5EBCA79BF99165D9FFE355D9B24ECB5D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FE9550A75BE1940796EDB818C1B2D194</key>
-			<iv>5EBCA79BF99165D9FFE355D9B24ECB5D</iv>
-			<input>9BDA7BC96736FE2140911C98E8E02E1C</input>
-			<output>782D3EFD5F599E8D3C85D06128677EC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>86B86E5A04B80A8AAA686879E9D5AF56</key>
-			<iv>782D3EFD5F599E8D3C85D06128677EC2</iv>
-			<input>8014C1F398E4DCC7F4E5E09E5FAFB080</input>
-			<output>E01AE2D961F31BBAE3DA7429627572AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>66A28C83654B113049B21C508BA0DDFD</key>
-			<iv>E01AE2D961F31BBAE3DA7429627572AB</iv>
-			<input>97D66D66D1731EEFF14519620616A10B</input>
-			<output>BC41ED9D568D6ED36212C92DEEB40A0E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DAE3611E33C67FE32BA0D57D6514D7F3</key>
-			<iv>BC41ED9D568D6ED36212C92DEEB40A0E</iv>
-			<input>F7646B60C237ED24F467141980EB4F00</input>
-			<output>CB8DF2D164E5B4AB3193D02E71959F63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>116E93CF5723CB481A33055314814890</key>
-			<iv>CB8DF2D164E5B4AB3193D02E71959F63</iv>
-			<input>4A3A241B26AC7A1C88AA2FB750DF6E5A</input>
-			<output>E396FB47A686ABAA350B84C250E5EAE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F2F86888F1A560E22F3881914464A279</key>
-			<iv>E396FB47A686ABAA350B84C250E5EAE9</iv>
-			<input>A71348309D176A072167C4B1B8A295C0</input>
-			<output>29AF21F96564EB591E9A60B1BE88DEC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DB57497194C18BBB31A2E120FAEC7CBE</key>
-			<iv>29AF21F96564EB591E9A60B1BE88DEC7</iv>
-			<input>BC528364EF78D6432177FE0CF1CDECD1</input>
-			<output>34CD9D96D4455AE0C15B6B970F1EC905</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EF9AD4E74084D15BF0F98AB7F5F2B5BB</key>
-			<iv>34CD9D96D4455AE0C15B6B970F1EC905</iv>
-			<input>18972F6992299533EE23AA5824C25892</input>
-			<output>2E05E3E2079A055310FD9318590A6F41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C19F3705471ED408E00419AFACF8DAFA</key>
-			<iv>2E05E3E2079A055310FD9318590A6F41</iv>
-			<input>5441FF0D0A4062D5D0DF29BF2FDA85B4</input>
-			<output>47D4EAECE59C733EEFCB7B9D5BE95A98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>864BDDE9A282A7360FCF6232F7118062</key>
-			<iv>47D4EAECE59C733EEFCB7B9D5BE95A98</iv>
-			<input>ED3E19B5AB5389AA3A58D97F6604F4C0</input>
-			<output>00525B7D5BFC0651AEF6770F6281E6DC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>86198694F97EA167A139153D959066BE</key>
-			<iv>00525B7D5BFC0651AEF6770F6281E6DC</iv>
-			<input>8BD4869C88A9BD3DCFE89B98B93F6EB3</input>
-			<output>AFB2215E6DC04E9467F44227FD4BDB98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>29ABA7CA94BEEFF3C6CD571A68DBBD26</key>
-			<iv>AFB2215E6DC04E9467F44227FD4BDB98</iv>
-			<input>6E7269FC27BDCC42D64CEF41A612F771</input>
-			<output>7B769B90279C95E31D8B3D792FA27FA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>52DD3C5AB3227A10DB466A634779C28E</key>
-			<iv>7B769B90279C95E31D8B3D792FA27FA8</iv>
-			<input>E00316E79DC10D179002B1BACC146027</input>
-			<output>E3870CDE5CF99B7C4C489AF81153002F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B15A3084EFDBE16C970EF09B562AC2A1</key>
-			<iv>E3870CDE5CF99B7C4C489AF81153002F</iv>
-			<input>FB2FC78A79C33225E6EAAA06B76FA793</input>
-			<output>4DFC91F8971635348EF35141E8C291F7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FCA6A17C78CDD45819FDA1DABEE85356</key>
-			<iv>4DFC91F8971635348EF35141E8C291F7</iv>
-			<input>69C8EE14F21832BB077F1A5414851FFE</input>
-			<output>DA51BE36F96AA8C80DED9DB2A701D72F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>26F71F4A81A77C9014103C6819E98479</key>
-			<iv>DA51BE36F96AA8C80DED9DB2A701D72F</iv>
-			<input>766EC1664D2194E0F89B69861A4A8501</input>
-			<output>2ACA6359CD935CA2294F9FB5A50F4993</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0C3D7C134C3420323D5FA3DDBCE6CDEA</key>
-			<iv>2ACA6359CD935CA2294F9FB5A50F4993</iv>
-			<input>1D95E551169BD538836CC349BC6B1772</input>
-			<output>315518F0AC6C1DC9939CB802336DA968</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D6864E3E0583DFBAEC31BDF8F8B6482</key>
-			<iv>315518F0AC6C1DC9939CB802336DA968</iv>
-			<input>4F6BFE727AECDAB5A32DF8CFFC43D6A9</input>
-			<output>34C3ECD89376B4D771CA0669C2C3E26C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09AB883B732E892CDF091DB64D4886EE</key>
-			<iv>34C3ECD89376B4D771CA0669C2C3E26C</iv>
-			<input>AA8B1DA2E015D482EE08FA2B4A2B77B6</input>
-			<output>A3F4DD9DDC375C90579C274527612C6E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA5F55A6AF19D5BC88953AF36A29AA80</key>
-			<iv>A3F4DD9DDC375C90579C274527612C6E</iv>
-			<input>2EE6982D9E0AA5FCB61F3E66E52A0D6D</input>
-			<output>C45C9E4DE76782E2599BD73B132BFE90</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6E03CBEB487E575ED10EEDC879025410</key>
-			<iv>C45C9E4DE76782E2599BD73B132BFE90</iv>
-			<input>6E58E5B1EDF1BFABAD643D8223F0FA81</input>
-			<output>32221DA62DA2B441B5E66A197A5C69F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C21D64D65DCE31F64E887D1035E3DE1</key>
-			<iv>32221DA62DA2B441B5E66A197A5C69F1</iv>
-			<input>D5A81DF4B6BE17A531478961D78CAB46</input>
-			<output>E1FEB5C31B1671F15DC1F7713E5DD7FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BDDF638E7ECA92EE392970A03D03EA1F</key>
-			<iv>E1FEB5C31B1671F15DC1F7713E5DD7FE</iv>
-			<input>D360948141A1D3ECFF5E8D6BDC022685</input>
-			<output>FF07F02135FB458D63EE68C4B1463A99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42D893AF4B31D7635AC718648C45D086</key>
-			<iv>FF07F02135FB458D63EE68C4B1463A99</iv>
-			<input>E3C1E44333C9307E90EE2FBA6A7708A5</input>
-			<output>1AE4E8466B84B59EECF5E6BEB6140DF2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>583C7BE920B562FDB632FEDA3A51DD74</key>
-			<iv>1AE4E8466B84B59EECF5E6BEB6140DF2</iv>
-			<input>653AA343CE35F72E2ADB5FFCD2DFCBA8</input>
-			<output>3CB44BC123DDCD55B812D265CC5E974E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>648830280368AFA80E202CBFF60F4A3A</key>
-			<iv>3CB44BC123DDCD55B812D265CC5E974E</iv>
-			<input>E96A66BFE5F0E8083A01664A47226672</input>
-			<output>BB6C54E118FA895F2AC4CC036166E390</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DFE464C91B9226F724E4E0BC9769A9AA</key>
-			<iv>BB6C54E118FA895F2AC4CC036166E390</iv>
-			<input>A5B240D8E5731E1BFA7C4FDFB4EED81F</input>
-			<output>DA20870677A6214F26FDACBA81B41882</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>05C4E3CF6C3407B802194C0616DDB128</key>
-			<iv>DA20870677A6214F26FDACBA81B41882</iv>
-			<input>92FF6EAB4A6D1AD3941E6A91D8C9105B</input>
-			<output>F079AA86FC9FD361DBA0C21CCD4B0F6C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F5BD494990ABD4D9D9B98E1ADB96BE44</key>
-			<iv>F079AA86FC9FD361DBA0C21CCD4B0F6C</iv>
-			<input>DFF005175EF746B83CB00AC13337E248</input>
-			<output>B6021E0AA1A921C7BCC3FDAB1C3EA44A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>43BF57433102F51E657A73B1C7A81A0E</key>
-			<iv>B6021E0AA1A921C7BCC3FDAB1C3EA44A</iv>
-			<input>DDDC1AA804AD13813C6AEA540557C097</input>
-			<output>41F0E4AB03801DCE585727B7C41F48BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>024FB3E83282E8D03D2D540603B752B3</key>
-			<iv>41F0E4AB03801DCE585727B7C41F48BD</iv>
-			<input>4C6421E5A487C9C452958CAB38AC7098</input>
-			<output>6EFDD855BAF2D13437C01097ABB633DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6CB26BBD887039E40AED4491A801616D</key>
-			<iv>6EFDD855BAF2D13437C01097ABB633DE</iv>
-			<input>2A11519D5463F2B96A5E0FCE6E4710D7</input>
-			<output>5E8243E5C54A109CCC0BF622A299EF68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>323028584D3A2978C6E6B2B30A988E05</key>
-			<iv>5E8243E5C54A109CCC0BF622A299EF68</iv>
-			<input>252145DACAD23E8B85AB7637B22C42F2</input>
-			<output>2C9A476418F01C589ADC0CA10BF4A183</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1EAA6F3C55CA35205C3ABE12016C2F86</key>
-			<iv>2C9A476418F01C589ADC0CA10BF4A183</iv>
-			<input>A22C36DC7D00645FEFE8683EA4231787</input>
-			<output>DA3A4AC19EF6A0F950E26B00834AFE41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C49025FDCB3C95D90CD8D5128226D1C7</key>
-			<iv>DA3A4AC19EF6A0F950E26B00834AFE41</iv>
-			<input>B0DC92D3B4878156B768923286F0433F</input>
-			<output>10BBC2A8C8F650FD8EED7CC9F5EAD05D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D42BE75503CAC5248235A9DB77CC019A</key>
-			<iv>10BBC2A8C8F650FD8EED7CC9F5EAD05D</iv>
-			<input>83A9338157091D4AECAF60E887AE09F7</input>
-			<output>757993A70F78B25F02FA0355E04DE27B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A15274F20CB2777B80CFAA8E9781E3E1</key>
-			<iv>757993A70F78B25F02FA0355E04DE27B</iv>
-			<input>9D818ACA2C753E7314F51699D3062031</input>
-			<output>E2E74C76C09516135876D54AFC940D80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>43B53884CC276168D8B97FC46B15EE61</key>
-			<iv>E2E74C76C09516135876D54AFC940D80</iv>
-			<input>BDD36F881F8D1FC56780E291D1359EE1</input>
-			<output>22F76A2DB98544549DEA21FFCDC2B943</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>614252A975A2253C45535E3BA6D75722</key>
-			<iv>22F76A2DB98544549DEA21FFCDC2B943</iv>
-			<input>4C9C16802A4BB1202D4FAC9E76C57A43</input>
-			<output>166B0FF778D72B6102D6ADF990A70A23</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>77295D5E0D750E5D4785F3C236705D01</key>
-			<iv>166B0FF778D72B6102D6ADF990A70A23</iv>
-			<input>0045ECDDAA51EE6FDB226E2D9471F46C</input>
-			<output>D7724DC8A1413BC1B9D6F305794426F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A05B1096AC34359CFE5300C74F347BF1</key>
-			<iv>D7724DC8A1413BC1B9D6F305794426F0</iv>
-			<input>25C55C60290DF3D0DC3274CD2AE0ED21</input>
-			<output>41F0196DFE0B1F664A107D12A6FF3D79</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1AB09FB523F2AFAB4437DD5E9CB4688</key>
-			<iv>41F0196DFE0B1F664A107D12A6FF3D79</iv>
-			<input>9A44454F7A335C89BEFF1D94D3FDB320</input>
-			<output>3F37D7ADFB9933FFBAC1F7D07F31046E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE9CDE56A9A619050E828A0596FA42E6</key>
-			<iv>3F37D7ADFB9933FFBAC1F7D07F31046E</iv>
-			<input>03D7F09054233696BEF84AB8D5B77091</input>
-			<output>02D226A748153C27A723F02461FFF913</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DC4EF8F1E1B32522A9A17A21F705BBF5</key>
-			<iv>02D226A748153C27A723F02461FFF913</iv>
-			<input>D5C82A6F048A2AA0E5CF4F1EDADD68B3</input>
-			<output>4BD7486C212E7F78228478BBF0A7AD3D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9799B09DC09D5A5A8B25029A07A216C8</key>
-			<iv>4BD7486C212E7F78228478BBF0A7AD3D</iv>
-			<input>936431AD9F800606240C33EAF661D3DA</input>
-			<output>3EFE00CA0A96AF4425E683512DAC0164</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A967B057CA0BF51EAEC381CB2A0E17AC</key>
-			<iv>3EFE00CA0A96AF4425E683512DAC0164</iv>
-			<input>280DC27864BED0D548B5B4F9A7FA38DE</input>
-			<output>7023640C8D6B02F6C4C7E007C169C592</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D944D45B4760F7E86A0461CCEB67D23E</key>
-			<iv>7023640C8D6B02F6C4C7E007C169C592</iv>
-			<input>CD0F58962915E5A514E5D6DA8BB868E8</input>
-			<output>D08419A75363E9622FAA09DB589915F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09C0CDFC14031E8A45AE6817B3FEC7CF</key>
-			<iv>D08419A75363E9622FAA09DB589915F1</iv>
-			<input>09A6099FDDDBBC15EE79224B01C49DF0</input>
-			<output>6CDD2B0279D9DB3C71329C1BB2C24C2F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>651DE6FE6DDAC5B6349CF40C013C8BE0</key>
-			<iv>6CDD2B0279D9DB3C71329C1BB2C24C2F</iv>
-			<input>B24B11FD8A6FC6B2703FFBEBC85B6C44</input>
-			<output>CCB0F6F32BDE2339A1842A7EDC8C99C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A9AD100D4604E68F9518DE72DDB01227</key>
-			<iv>CCB0F6F32BDE2339A1842A7EDC8C99C7</iv>
-			<input>2E471506C55D1762CDB9EAEF29E23C01</input>
-			<output>DAD62227A5F328CC33F054EEB346E3D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>737B322AE3F7CE43A6E88A9C6EF6F1F4</key>
-			<iv>DAD62227A5F328CC33F054EEB346E3D3</iv>
-			<input>5598344020E32F9B2C509D06F4E7804A</input>
-			<output>18DE226F7CAA4EF2712A223C4709C9E2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6BA510459F5D80B1D7C2A8A029FF3816</key>
-			<iv>18DE226F7CAA4EF2712A223C4709C9E2</iv>
-			<input>549A87BE74B62BAC3F0FDC2A878F5669</input>
-			<output>DB082C8D70948B6BF08D4848E4DB0231</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B0AD3CC8EFC90BDA274FE0E8CD243A27</key>
-			<iv>DB082C8D70948B6BF08D4848E4DB0231</iv>
-			<input>08946428BF90FBF0951A35D6FB72A48A</input>
-			<output>29CBD3E3F2074514E63A7B2A651AB031</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9966EF2B1DCE4ECEC1759BC2A83E8A16</key>
-			<iv>29CBD3E3F2074514E63A7B2A651AB031</iv>
-			<input>7EBEC38F7787EE1BDD6A648334FA3076</input>
-			<output>0037935821278E879BCBB2FBE4ECC23E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>99517C733CE9C0495ABE29394CD24828</key>
-			<iv>0037935821278E879BCBB2FBE4ECC23E</iv>
-			<input>01D77828928164A830C249D96AC6F8B4</input>
-			<output>47501831F9DF42C234E9FE9169075888</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE016442C536828B6E57D7A825D510A0</key>
-			<iv>47501831F9DF42C234E9FE9169075888</iv>
-			<input>608349FF8FFC31B072CFA7DF649E15B8</input>
-			<output>BC10B1D412BC05404B2E38A1D75DA421</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6211D596D78A87CB2579EF09F288B481</key>
-			<iv>BC10B1D412BC05404B2E38A1D75DA421</iv>
-			<input>B16325BD78FC0451216FF476D4CAE293</input>
-			<output>6ABD8010E9CBAE61E05A9E30C622B501</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>08AC55863E4129AAC523713934AA0180</key>
-			<iv>6ABD8010E9CBAE61E05A9E30C622B501</iv>
-			<input>E613C244F74C61B078C9E59E06E7AD85</input>
-			<output>E896B8BD539C30D9A58E5EF6629B279C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E03AED3B6DDD197360AD2FCF5631261C</key>
-			<iv>E896B8BD539C30D9A58E5EF6629B279C</iv>
-			<input>6CFF7A909AAB2C0DC61FB8F11B45E661</input>
-			<output>30D15AAA05F56FA2D21E9974FB3FF5DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D0EBB791682876D1B2B3B6BBAD0ED3C6</key>
-			<iv>30D15AAA05F56FA2D21E9974FB3FF5DA</iv>
-			<input>6BFAC8E8FB9C3D5AF813B4DF90AD863B</input>
-			<output>43B99F3DA3C1BCCE9038118E2968EFA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>935228ACCBE9CA1F228BA73584663C67</key>
-			<iv>43B99F3DA3C1BCCE9038118E2968EFA1</iv>
-			<input>064D09E9F5104602E191DC39F18E6A1A</input>
-			<output>EBC5796519BE4E05262A10D56FA0F72D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>789751C9D257841A04A1B7E0EBC6CB4A</key>
-			<iv>EBC5796519BE4E05262A10D56FA0F72D</iv>
-			<input>C2B528D69ED3028A359D4472D98807A7</input>
-			<output>5F2B51DD025E775A63DFE5B9FBF54986</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>27BC0014D009F340677E5259103382CC</key>
-			<iv>5F2B51DD025E775A63DFE5B9FBF54986</iv>
-			<input>D5CF62940967AF7225F79E87136751F5</input>
-			<output>F56D88E433CEA445C6E4D6298DFB6C27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D2D188F0E3C75705A19A84709DC8EEEB</key>
-			<iv>F56D88E433CEA445C6E4D6298DFB6C27</iv>
-			<input>3BE3171202E762846D2CA00FB2CB141A</input>
-			<output>4C168A0129F2D48E249777A366D1AEF1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9EC702F1CA35838B850DF3D3FB19401A</key>
-			<iv>4C168A0129F2D48E249777A366D1AEF1</iv>
-			<input>5B82A34141C236FAED7E1A78D3C426C4</input>
-			<output>E11FEBEF79E425480442D45A8C105B44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7FD8E91EB3D1A6C3814F278977091B5E</key>
-			<iv>E11FEBEF79E425480442D45A8C105B44</iv>
-			<input>86CFADD3F1B368B3A6E57148CA343D38</input>
-			<output>5F5F3548BDBB2A5337FBF07DF76526DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2087DC560E6A8C90B6B4D7F4806C3D83</key>
-			<iv>5F5F3548BDBB2A5337FBF07DF76526DD</iv>
-			<input>A4474ACA97100C7A357A66119D678798</input>
-			<output>013ADA262021F88617773CF478067EC8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21BD06702E4B7416A1C3EB00F86A434B</key>
-			<iv>013ADA262021F88617773CF478067EC8</iv>
-			<input>6D66801C39DB803B5DA5A80E30DB0D89</input>
-			<output>F46BE70F65FC5641318292AE0C79E5C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D5D6E17F4BB72257904179AEF413A68E</key>
-			<iv>F46BE70F65FC5641318292AE0C79E5C5</iv>
-			<input>C9499B32D8F47313EB351139DB81AB25</input>
-			<output>8573A25F86C7784BF7A0153DF812805C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>50A54320CD705A1C67E16C930C0126D2</key>
-			<iv>8573A25F86C7784BF7A0153DF812805C</iv>
-			<input>4B09D37A4A57B320C34B1D70F74EB36A</input>
-			<output>036913128A2B71CE3D05D52D61E48E86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53CC5032475B2BD25AE4B9BE6DE5A854</key>
-			<iv>036913128A2B71CE3D05D52D61E48E86</iv>
-			<input>EA3A92794B204C0345765CEE2A04AF27</input>
-			<output>5A53E929182859CC28D4EB1CB9579B71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>099FB91B5F73721E723052A2D4B23325</key>
-			<iv>5A53E929182859CC28D4EB1CB9579B71</iv>
-			<input>2714E38858426C5631BB2BB4FA289985</input>
-			<output>DF4BD734DEC60475D47FE40502439AAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D6D46E2F81B5766BA64FB6A7D6F1A98B</key>
-			<iv>DF4BD734DEC60475D47FE40502439AAE</iv>
-			<input>69AC3FD2273926E2DAD3F5BED9F21491</input>
-			<output>EBCCD0B121C4009EA7F038F30F5B6B05</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D18BE9EA07176F501BF8E54D9AAC28E</key>
-			<iv>EBCCD0B121C4009EA7F038F30F5B6B05</iv>
-			<input>07520CD471E27BAC35387DB47E706784</input>
-			<output>299FE603BBA51BD1582CBD42BC9568EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1487589D1BD46D2459933316653FAA64</key>
-			<iv>299FE603BBA51BD1582CBD42BC9568EA</iv>
-			<input>39598B70B8EB190049823472E3596E42</input>
-			<output>68DD98FE52B454F85D6F6A6C742223FA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C5AC063496039DC04FC597A111D899E</key>
-			<iv>68DD98FE52B454F85D6F6A6C742223FA</iv>
-			<input>C7E13ABBBA75F527AB1320DD930B24F1</input>
-			<output>906B569E44263A4E6F41A52802D3FC59</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EC3196FD0D4603926BBDFC5213CE75C7</key>
-			<iv>906B569E44263A4E6F41A52802D3FC59</iv>
-			<input>9F5D8E50F06895D5D7E6D1DAA247D45F</input>
-			<output>E5ECBDCC55A9D952BE0F93DFA0FE2C31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09DD2B3158EFDAC0D5B26F8DB33059F6</key>
-			<iv>E5ECBDCC55A9D952BE0F93DFA0FE2C31</iv>
-			<input>EC3F35C1E6371F106443BD1446D58A0A</input>
-			<output>4837A3D703E80BFE50D742E378956F3A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>41EA88E65B07D13E85652D6ECBA536CC</key>
-			<iv>4837A3D703E80BFE50D742E378956F3A</iv>
-			<input>7998C3B7B5C94540DFC5BF777D700D48</input>
-			<output>DF1564E5E47503A779020D27394571E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9EFFEC03BF72D299FC672049F2E04725</key>
-			<iv>DF1564E5E47503A779020D27394571E9</iv>
-			<input>63BEA75A2440C5D123F335F72137B0B6</input>
-			<output>5147239C3F6E4A158989BE96C0275D41</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CFB8CF9F801C988C75EE9EDF32C71A64</key>
-			<iv>5147239C3F6E4A158989BE96C0275D41</iv>
-			<input>09C656A0DFCF893DDBE5E2B3D88E5F1F</input>
-			<output>7E4DEE30DED62EE15CD957530B62559D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B1F521AF5ECAB66D2937C98C39A54FF9</key>
-			<iv>7E4DEE30DED62EE15CD957530B62559D</iv>
-			<input>71DC22F489DD422CDE09F01DAA427567</input>
-			<output>6F62D6359F07F6BDBB4C02BBE50B273C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE97F79AC1CD40D0927BCB37DCAE68C5</key>
-			<iv>6F62D6359F07F6BDBB4C02BBE50B273C</iv>
-			<input>C2A9BC94CAE48DBEB37B4B506AD4336A</input>
-			<output>902D9E9F82DE4E66E42B4FEA79AF4077</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4EBA690543130EB6765084DDA50128B2</key>
-			<iv>902D9E9F82DE4E66E42B4FEA79AF4077</iv>
-			<input>69EE7E15EEC2EA953A32E1714961BA9E</input>
-			<output>72CB5DE8AF6CDC60A00A15CEAF249DBD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C7134EDEC7FD2D6D65A91130A25B50F</key>
-			<iv>72CB5DE8AF6CDC60A00A15CEAF249DBD</iv>
-			<input>4C0A3B88FDFAEFEC38858A927C38AE6A</input>
-			<output>68C2BFA5DE837B927BD75C6DE6008595</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>54B38B4832FCA944AD8DCD7EEC25309A</key>
-			<iv>68C2BFA5DE837B927BD75C6DE6008595</iv>
-			<input>CE75CCA2D7B0199EB1DA7E33A0E50AB7</input>
-			<output>4FFCCBB31FB1FCC0FCB38F0B557BE67A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1B4F40FB2D4D5584513E4275B95ED6E0</key>
-			<iv>4FFCCBB31FB1FCC0FCB38F0B557BE67A</iv>
-			<input>E0ECA2ABC1F389B149E746CFB039539E</input>
-			<output>249FB11DF8C0ED1F346F6D69B8FD0470</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3FD0F1E6D58DB89B65512F1C01A3D290</key>
-			<iv>249FB11DF8C0ED1F346F6D69B8FD0470</iv>
-			<input>BFA871CA5EC16C0B353679782BE04394</input>
-			<output>8127E6D8EEC1111518065EDC34CD4B4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BEF7173E3B4CA98E7D5771C0356E99DC</key>
-			<iv>8127E6D8EEC1111518065EDC34CD4B4C</iv>
-			<input>1EF816C565B2F56E772C96AD5C92842D</input>
-			<output>C8DC75AE1E2DBD005D94E69D6776C498</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>762B62902561148E20C3975D52185D44</key>
-			<iv>C8DC75AE1E2DBD005D94E69D6776C498</iv>
-			<input>9F2B9873F88EBF21A3BB3DCD853C812E</input>
-			<output>861D4FF061E85D44173252244F143692</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F0362D60448949CA37F1C5791D0C6BD6</key>
-			<iv>861D4FF061E85D44173252244F143692</iv>
-			<input>6CDEA8A806516A1A0E1CBB5AA123862A</input>
-			<output>16DA4EE5C5044F66EFCC313754FBCD9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6EC6385818D06ACD83DF44E49F7A648</key>
-			<iv>16DA4EE5C5044F66EFCC313754FBCD9E</iv>
-			<input>5B637BB469073B5E54EC006F47C4D546</input>
-			<output>C2C50037BBBEC252B7D5CF10C38BD665</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>242963B23A33C4FE6FE83B5E8A7C702D</key>
-			<iv>C2C50037BBBEC252B7D5CF10C38BD665</iv>
-			<input>38DADBF2BA4A80A6A190D9E2AA245167</input>
-			<output>721222A5A67E96246DA1B9C59B67DDD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>563B41179C4D52DA0249829B111BADF8</key>
-			<iv>721222A5A67E96246DA1B9C59B67DDD5</iv>
-			<input>CB52378F6E4E7FCB1891D3BB4D086B9F</input>
-			<output>D28B8F54E8BDA9A20965984D5DA27FC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>84B0CE4374F0FB780B2C1AD64CB9D231</key>
-			<iv>D28B8F54E8BDA9A20965984D5DA27FC9</iv>
-			<input>E66015A1B848EF190F981DEFEDB98C93</input>
-			<output>012C5D9B847C9583B0BE03999D24E277</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>859C93D8F08C6EFBBB92194FD19D3046</key>
-			<iv>012C5D9B847C9583B0BE03999D24E277</iv>
-			<input>F5B2BAD53323A52A2B99CC12782CD6F9</input>
-			<output>D1EFB7E7A34F75887038FC4827E894C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5473243F53C31B73CBAAE507F675A487</key>
-			<iv>D1EFB7E7A34F75887038FC4827E894C1</iv>
-			<input>11C0C41C3F547B5D7FC94115327AB3D5</input>
-			<output>2CF97D8995AA8FDC4C05205D3D8B757F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>788A59B6C66994AF87AFC55ACBFED1F8</key>
-			<iv>2CF97D8995AA8FDC4C05205D3D8B757F</iv>
-			<input>3F911029D8B69CA1A323A277090B9C07</input>
-			<output>44BB04C6253F3ADD454264EA97490475</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C315D70E356AE72C2EDA1B05CB7D58D</key>
-			<iv>44BB04C6253F3ADD454264EA97490475</iv>
-			<input>9D7724EFD1AE76904458EF1360953AA4</input>
-			<output>5D6F876E4FDD6921B243EB1F6EF50F82</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>615EDA1EAC8BC75370AE4AAF3242DA0F</key>
-			<iv>5D6F876E4FDD6921B243EB1F6EF50F82</iv>
-			<input>44A26554FE355D95706431B344701B03</input>
-			<output>5F3226B39DF230163D2C474F04BAD36E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3E6CFCAD3179F7454D820DE036F80961</key>
-			<iv>5F3226B39DF230163D2C474F04BAD36E</iv>
-			<input>5D8B62C8CD3B04451A599989F3165530</input>
-			<output>A247CF8E1D8F480DA4155DA846A2B64E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9C2B33232CF6BF48E9975048705ABF2F</key>
-			<iv>A247CF8E1D8F480DA4155DA846A2B64E</iv>
-			<input>610D3798E62E9338D5987BAC82D48CD7</input>
-			<output>2A92B5AAEA43CFBAA62842DEE7F43A19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B6B98689C6B570F24FBF129697AE8536</key>
-			<iv>2A92B5AAEA43CFBAA62842DEE7F43A19</iv>
-			<input>F77943AA429BCCC5253156474E719389</input>
-			<output>7D475AFF824080E9C95D4E49D4F5090D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CBFEDC7644F5F01B86E25CDF435B8C3B</key>
-			<iv>7D475AFF824080E9C95D4E49D4F5090D</iv>
-			<input>5E6269D157164B2C544D3052E9DB8553</input>
-			<output>AD4628B05F5A765E557015B4A41505EA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>66B8F4C61BAF8645D392496BE74E89D1</key>
-			<iv>AD4628B05F5A765E557015B4A41505EA</iv>
-			<input>77126BD6C08A094981FEC9E2DE91B2BF</input>
-			<output>59C24F269E3884A4F8E3F9FB05BF448F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3F7ABBE0859702E12B71B090E2F1CD5E</key>
-			<iv>59C24F269E3884A4F8E3F9FB05BF448F</iv>
-			<input>7775F90D2189E91B75AB8AD93C0D44F2</input>
-			<output>B72873115D4761B8BAEB5B5892B79DF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8852C8F1D8D06359919AEBC8704650A6</key>
-			<iv>B72873115D4761B8BAEB5B5892B79DF8</iv>
-			<input>03D9C45A2A152ADAA53E1D42AB33555B</input>
-			<output>FE0C3F22E6B467DC1C628C928D03DB5B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>765EF7D33E6404858DF8675AFD458BFD</key>
-			<iv>FE0C3F22E6B467DC1C628C928D03DB5B</iv>
-			<input>279791AC4189634A6066BCDCAA2EF9B4</input>
-			<output>7F3ABBA943C8E3EF19C3BA2C98C9685F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09644C7A7DACE76A943BDD76658CE3A2</key>
-			<iv>7F3ABBA943C8E3EF19C3BA2C98C9685F</iv>
-			<input>E46E5FB6019BA52524A383A18A89583A</input>
-			<output>C96D250343B134241221490AB39931DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C00969793E1DD34E861A947CD615D279</key>
-			<iv>C96D250343B134241221490AB39931DB</iv>
-			<input>A3A544B8982C2F9EA0CD0ABC4D6392E2</input>
-			<output>951D54AABDF6F5B70E700C4896EB2685</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>55143DD383EB26F9886A983440FEF4FC</key>
-			<iv>951D54AABDF6F5B70E700C4896EB2685</iv>
-			<input>43FEB2051478A02BA1F054C9E82F0209</input>
-			<output>1F90165BE29C6C86D09AD07B1C006CA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A842B8861774A7F58F0484F5CFE985A</key>
-			<iv>1F90165BE29C6C86D09AD07B1C006CA6</iv>
-			<input>558AD95B25BAB5205FB7E529C96E5B59</input>
-			<output>40C0A0427C12AB1F72A7ADF96F82D437</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0A448BCA1D65E1602A57E5B6337C4C6D</key>
-			<iv>40C0A0427C12AB1F72A7ADF96F82D437</iv>
-			<input>BABA13A1244DEFF5E4A2AB8183775773</input>
-			<output>FB08FDF3BF4394BA1A92C45B7F5F3060</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F14C7639A22675DA30C521ED4C237C0D</key>
-			<iv>FB08FDF3BF4394BA1A92C45B7F5F3060</iv>
-			<input>46E036ECCDBE88931E552E45CBBC2BDC</input>
-			<output>311AE8C2B7CB633178874BDEEEE0602F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C0569EFB15ED16EB48426A33A2C31C22</key>
-			<iv>311AE8C2B7CB633178874BDEEEE0602F</iv>
-			<input>4D5C919959478AD0D9862BA509233102</input>
-			<output>1DC85D9A8877C79698C7D1C1610CBAE9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD9EC3619D9AD17DD085BBF2C3CFA6CB</key>
-			<iv>1DC85D9A8877C79698C7D1C1610CBAE9</iv>
-			<input>D423E31E9FD6E4F4373FA7AD31CC6011</input>
-			<output>FC55E7BEA15BD539EDACB202F0218D4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21CB24DF3CC104443D2909F033EE2B81</key>
-			<iv>FC55E7BEA15BD539EDACB202F0218D4A</iv>
-			<input>52C2C696A4343C0F280A3BC8F6AA19EA</input>
-			<output>FFD9FECD3A4EC194568A96C5A899E8D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE12DA12068FC5D06BA39F359B77C353</key>
-			<iv>FFD9FECD3A4EC194568A96C5A899E8D2</iv>
-			<input>3B2266FAB514211E8E33AFA566898083</input>
-			<output>DC1A545F354365A0002180BACCE0AD25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>02088E4D33CCA0706B821F8F57976E76</key>
-			<iv>DC1A545F354365A0002180BACCE0AD25</iv>
-			<input>DC20E6BD8B8AC822CF2B505E580E6A80</input>
-			<output>51CF4C11F15B8B565B875F769C2FD37F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53C7C25CC2972B26300540F9CBB8BD09</key>
-			<iv>51CF4C11F15B8B565B875F769C2FD37F</iv>
-			<input>67B4C3E2AFC3402901549265186303FB</input>
-			<output>A118B7E5B10DAB4DDB449877AB1E6897</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F2DF75B9739A806BEB41D88E60A6D59E</key>
-			<iv>A118B7E5B10DAB4DDB449877AB1E6897</iv>
-			<input>971952EE322CD68462B4CE8B772BBA48</input>
-			<output>A2988AAC94D8A7EFB32B34CC07911F3E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5047FF15E7422784586AEC426737CAA0</key>
-			<iv>A2988AAC94D8A7EFB32B34CC07911F3E</iv>
-			<input>64C2665506EDDED98EC55D2CCED7762C</input>
-			<output>86AEB7B90565D05293A8D9146880C307</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D6E948ACE227F7D6CBC235560FB709A7</key>
-			<iv>86AEB7B90565D05293A8D9146880C307</iv>
-			<input>A5E7E411209DD2A34AA8CDA3153A69E4</input>
-			<output>27746442FAC1DF26B11A55251AAFD865</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F19D2CEE18E628F07AD860731518D1C2</key>
-			<iv>27746442FAC1DF26B11A55251AAFD865</iv>
-			<input>83A41EF5F664A909BC47939D7858C221</input>
-			<output>619A164C3F2119FFCA3832A5EA958E01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90073AA227C7310FB0E052D6FF8D5FC3</key>
-			<iv>619A164C3F2119FFCA3832A5EA958E01</iv>
-			<input>1F5A31EBB2C515728DB07EE3160D03CD</input>
-			<output>DEE1692D386EF5A8861BE5D8A4630906</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4EE6538F1FA9C4A736FBB70E5BEE56C5</key>
-			<iv>DEE1692D386EF5A8861BE5D8A4630906</iv>
-			<input>297B343F5EE6221FB6CC40E0C836B387</input>
-			<output>B2BA45B0A776A950C32DD5F302201FC3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FC5C163FB8DF6DF7F5D662FD59CE4906</key>
-			<iv>B2BA45B0A776A950C32DD5F302201FC3</iv>
-			<input>CC3601DC94B13116DF3012860A522D2D</input>
-			<output>6D141746B23B4E1EF20DFE6C14D6ECE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>914801790AE423E907DB9C914D18A5E2</key>
-			<iv>6D141746B23B4E1EF20DFE6C14D6ECE4</iv>
-			<input>FE07DA9A6E8B712B1FDFC3C1CC87146D</input>
-			<output>0D80E8F5557A88A271133F8929125C72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9CC8E98C5F9EAB4B76C8A318640AF990</key>
-			<iv>0D80E8F5557A88A271133F8929125C72</iv>
-			<input>EBDC0192755A685D6275532E93D33890</input>
-			<output>B88A629A8E22A78BAF98C9E623F48134</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>24428B16D1BC0CC0D9506AFE47FE78A4</key>
-			<iv>B88A629A8E22A78BAF98C9E623F48134</iv>
-			<input>78AD3067BE2E9536ADB58DA49D7CA6DA</input>
-			<output>0A9C2D318240F4FA4FF91CC5D23A371F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2EDEA62753FCF83A96A9763B95C44FBB</key>
-			<iv>0A9C2D318240F4FA4FF91CC5D23A371F</iv>
-			<input>04C72A08CCC36B4211AFE98637C4CEFF</input>
-			<output>A42618A89B9E618DDD7A983081E086B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8AF8BE8FC86299B74BD3EE0B1424C902</key>
-			<iv>A42618A89B9E618DDD7A983081E086B9</iv>
-			<input>22D4A346027B8E5FEE1C0C0C45CA7DCB</input>
-			<output>7CC4479AE05A295723F27545E1A46B7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F63CF9152838B0E068219B4EF580A279</key>
-			<iv>7CC4479AE05A295723F27545E1A46B7B</iv>
-			<input>05090A5C8F3CD0E7F7EA11B33CDF3C1D</input>
-			<output>815BCEB2A29EA2A491C8E39B117790EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>776737A78AA61244F9E978D5E4F73295</key>
-			<iv>815BCEB2A29EA2A491C8E39B117790EC</iv>
-			<input>7B40F8A4AC0E4C6BD73A59FFC91CA77D</input>
-			<output>E4ED412F3ECDD4B7409BEEAEDC2C755F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>938A7688B46BC6F3B972967B38DB47CA</key>
-			<iv>E4ED412F3ECDD4B7409BEEAEDC2C755F</iv>
-			<input>047E2E4681A97ED20308F1FE4B132F7B</input>
-			<output>10153209AED4115329587180D65A0B97</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>839F44811ABFD7A0902AE7FBEE814C5D</key>
-			<iv>10153209AED4115329587180D65A0B97</iv>
-			<input>32671E6C0D28744AB457587BBB6DD21E</input>
-			<output>847F781EDF77A870C4EA99CCC1721917</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>07E03C9FC5C87FD054C07E372FF3554A</key>
-			<iv>847F781EDF77A870C4EA99CCC1721917</iv>
-			<input>EC3159B002B95054F00D57049D91E32B</input>
-			<output>05CC06529764F6747FCB2B62569C428C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>022C3ACD52AC89A42B0B5555796F17C6</key>
-			<iv>05CC06529764F6747FCB2B62569C428C</iv>
-			<input>9A930743113957D10EC643D8D8034C73</input>
-			<output>D1C7957073C2A44D9483DD11F3FA2B1E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D3EBAFBD216E2DE9BF8888448A953CD8</key>
-			<iv>D1C7957073C2A44D9483DD11F3FA2B1E</iv>
-			<input>2E061A5B483D0D834D3019954E54CF80</input>
-			<output>0AC3300C59DB7A76A1E16DC5BF167B70</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D9289FB178B5579F1E69E581358347A8</key>
-			<iv>0AC3300C59DB7A76A1E16DC5BF167B70</iv>
-			<input>2A6E00DF7820913341D26EF611A7BEC1</input>
-			<output>5A5A1BE396D3C56DB0690B92A925D8D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>83728452EE6692F2AE00EE139CA69F70</key>
-			<iv>5A5A1BE396D3C56DB0690B92A925D8D8</iv>
-			<input>E871C79BA6132F15C80A85F4BC732E77</input>
-			<output>829ABA07496E1269437680257308029D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>01E83E55A708809BED766E36EFAE9DED</key>
-			<iv>829ABA07496E1269437680257308029D</iv>
-			<input>5955643AB76251E6AF97BC2490D09A72</input>
-			<output>3FEDBF80B703D067126EF55B02A41175</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3E0581D5100B50FCFF189B6DED0A8C98</key>
-			<iv>3FEDBF80B703D067126EF55B02A41175</iv>
-			<input>32BCF86ECA6CCE8F9C1C87AD9FDF8238</input>
-			<output>B59D6C5FCA91EDBFE75E795638CAD286</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8B98ED8ADA9ABD431846E23BD5C05E1E</key>
-			<iv>B59D6C5FCA91EDBFE75E795638CAD286</iv>
-			<input>01A08051FC1D98C1BDAE4CA1D41D91E6</input>
-			<output>21CB8EF8BBE6C371A26BFF92701C3D1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA536372617C7E32BA2D1DA9A5DC6304</key>
-			<iv>21CB8EF8BBE6C371A26BFF92701C3D1A</iv>
-			<input>5F5D891DF8D595D3FEDAEF0174B0A1D1</input>
-			<output>23D0FB6489113D3D4AA6470210698391</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>89839816E86D430FF08B5AABB5B5E095</key>
-			<iv>23D0FB6489113D3D4AA6470210698391</iv>
-			<input>54FEAB37EFCD36D28E943DD85E803812</input>
-			<output>45F0556ED9A8ED0E1C8B0A0BA648E069</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC73CD7831C5AE01EC0050A013FD00FC</key>
-			<iv>45F0556ED9A8ED0E1C8B0A0BA648E069</iv>
-			<input>7AF4BC398ACAD37F526BDE12F3ED59ED</input>
-			<output>C41E115EE06FFE5DED10480A1BE5B720</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>086DDC26D1AA505C011018AA0818B7DC</key>
-			<iv>C41E115EE06FFE5DED10480A1BE5B720</iv>
-			<input>CF15E4B6DDF60A4EE0CB6CBFA8AD499B</input>
-			<output>1098A41E2C97C9D70626E4D1841F5CC1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18F57838FD3D998B0736FC7B8C07EB1D</key>
-			<iv>1098A41E2C97C9D70626E4D1841F5CC1</iv>
-			<input>BAD4050A0013AB8BC556F367AB634D94</input>
-			<output>D9B58211EB935246A5E04FCD3BE10B54</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C140FA2916AECBCDA2D6B3B6B7E6E049</key>
-			<iv>D9B58211EB935246A5E04FCD3BE10B54</iv>
-			<input>CEFF0AF7EF4EA7EF3B0E8BF7FB756E77</input>
-			<output>50FAE8C770EF7F9D5FE93B090B9D5C66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>91BA12EE6641B450FD3F88BFBC7BBC2F</key>
-			<iv>50FAE8C770EF7F9D5FE93B090B9D5C66</iv>
-			<input>3B8C412B4156B413AD06CB181B4C5EAA</input>
-			<output>E47249D4B5F24FF415B0E669EBF471B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>75C85B3AD3B3FBA4E88F6ED6578FCD9E</key>
-			<iv>E47249D4B5F24FF415B0E669EBF471B1</iv>
-			<input>56C612C5C594CAFB7B1CE8131E786DF0</input>
-			<output>6AF057199C217EECB886D940F61B91C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1F380C234F9285485009B796A1945C5B</key>
-			<iv>6AF057199C217EECB886D940F61B91C5</iv>
-			<input>5629EF768743AB63D5B79B511C0A6BEF</input>
-			<output>A5A76C330984D34310D021A6C2BDE9BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BA9F60104616560B40D996306329B5E7</key>
-			<iv>A5A76C330984D34310D021A6C2BDE9BC</iv>
-			<input>ED8DF427A02692C09D7AAEF2EDAA1249</input>
-			<output>8AAEFBA5DE0AAA41D947E3238B279913</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>30319BB5981CFC4A999E7513E80E2CF4</key>
-			<iv>8AAEFBA5DE0AAA41D947E3238B279913</iv>
-			<input>949339605F30310FC557F2CA4815B034</input>
-			<output>9408BCB67EA573E7B5359B67918C16B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A4392703E6B98FAD2CABEE7479823A4D</key>
-			<iv>9408BCB67EA573E7B5359B67918C16B9</iv>
-			<input>03607642CBBCCA2134837AC4BB452682</input>
-			<output>90660AF3DD0EAC1B61BB60EB49408586</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>345F2DF03BB723B64D108E9F30C2BFCB</key>
-			<iv>90660AF3DD0EAC1B61BB60EB49408586</iv>
-			<input>DE00E32930E14BD4297F9D789D0C25A1</input>
-			<output>1C48AC020174C0D87443229C113E2838</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>281781F23AC3E36E3953AC0321FC97F3</key>
-			<iv>1C48AC020174C0D87443229C113E2838</iv>
-			<input>9CA7A04855F8404176D7D30B594B65AC</input>
-			<output>7ACCB3FD4F9C7A5BFB83A969EB6D211A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>52DB320F755F9935C2D0056ACA91B6E9</key>
-			<iv>7ACCB3FD4F9C7A5BFB83A969EB6D211A</iv>
-			<input>DC0B392E998A347ECB789A51A09F1B1D</input>
-			<output>22BED79EF2CAFF83BE8CEE5D7001DE21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7065E591879566B67C5CEB37BA9068C8</key>
-			<iv>22BED79EF2CAFF83BE8CEE5D7001DE21</iv>
-			<input>07210334590A9314031D98F7DFBB84B9</input>
-			<output>44B16879886BC331407D1E7C7F247A04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>34D48DE80FFEA5873C21F54BC5B412CC</key>
-			<iv>44B16879886BC331407D1E7C7F247A04</iv>
-			<input>27DDF18405E56989E59ED442C8825DD6</input>
-			<output>2787AD57159450916A45C72D0E074D53</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>135320BF1A6AF51656643266CBB35F9F</key>
-			<iv>2787AD57159450916A45C72D0E074D53</iv>
-			<input>4F43202A454BB0F3A9440DA558BEE228</input>
-			<output>3C1B83C66CEEEB27644BC66ACC3117E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2F48A37976841E31322FF40C07824877</key>
-			<iv>3C1B83C66CEEEB27644BC66ACC3117E8</iv>
-			<input>28ED6A88BDE4ADEFDA5C0F629109A7A3</input>
-			<output>B6009481F8C5D3EE37C645CF238238A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>994837F88E41CDDF05E9B1C3240070D6</key>
-			<iv>B6009481F8C5D3EE37C645CF238238A1</iv>
-			<input>48DC5A3700CD4A7A9B066DC0E2667544</input>
-			<output>C1A20854601D7A81CAC51E9237BDC030</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>58EA3FACEE5CB75ECF2CAF5113BDB0E6</key>
-			<iv>C1A20854601D7A81CAC51E9237BDC030</iv>
-			<input>1F84C71120B50FDF715B60DB69DECBE0</input>
-			<output>663EDB4EFD3F6AC2259A43C926ACE66D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3ED4E4E21363DD9CEAB6EC983511568B</key>
-			<iv>663EDB4EFD3F6AC2259A43C926ACE66D</iv>
-			<input>D6F9C59367A57E1DBDC2F4627524BC9A</input>
-			<output>CA84A10F987212D75B744A7966ABBABA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F45045ED8B11CF4BB1C2A6E153BAEC31</key>
-			<iv>CA84A10F987212D75B744A7966ABBABA</iv>
-			<input>1D8BC84060844CE5C40C716F2190C2BB</input>
-			<output>ABAEEB339C4D150E894392444E021710</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5FFEAEDE175CDA45388134A51DB8FB21</key>
-			<iv>ABAEEB339C4D150E894392444E021710</iv>
-			<input>1300843AABCFB110198F0F0102C0A4D5</input>
-			<output>DBA9A1F8EE9AB8300D0273F71EAC5D1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>84570F26F9C66275358347520314A63D</key>
-			<iv>DBA9A1F8EE9AB8300D0273F71EAC5D1C</iv>
-			<input>1EA11B05D7DA9D770BA9AB619267B7A3</input>
-			<output>4921F1CB4A9AA6594C205D8FF0B2DEC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD76FEEDB35CC42C79A31ADDF3A678F4</key>
-			<iv>4921F1CB4A9AA6594C205D8FF0B2DEC9</iv>
-			<input>9ABA414156563E88A8CCDB3BD226F66C</input>
-			<output>4CF623AC6E145E2D61CAD28BFBF1F1E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8180DD41DD489A011869C85608578911</key>
-			<iv>4CF623AC6E145E2D61CAD28BFBF1F1E5</iv>
-			<input>FEF20625FA0C788DB8A20298F6933F6F</input>
-			<output>67C491A5CA1A065980BDECE44B7979F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6444CE417529C5898D424B2432EF0E0</key>
-			<iv>67C491A5CA1A065980BDECE44B7979F1</iv>
-			<input>79C4A475D0E064D72D48AF6357A0E6A0</input>
-			<output>529766CDD1223ED05C055108F91E6526</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B4D32A29C670A288C4D175BABA3095C6</key>
-			<iv>529766CDD1223ED05C055108F91E6526</iv>
-			<input>0758AA9195AE8684B9FEEBEF8E1226AE</input>
-			<output>2AEC009219ECD0499DD729352C220E7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9E3F2ABBDF9C72C159065C8F96129BBB</key>
-			<iv>2AEC009219ECD0499DD729352C220E7D</iv>
-			<input>886713433798AB16E87A8AD3A8CD0C87</input>
-			<output>0DE2A7554E343B6FFC6D1ECF4A8AF0DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>93DD8DEE91A849AEA56B4240DC986B66</key>
-			<iv>0DE2A7554E343B6FFC6D1ECF4A8AF0DD</iv>
-			<input>984E8BA3DFFB4E9A1244D65BEA7DC594</input>
-			<output>8111340B4AF2CD82FF15447143069276</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>12CCB9E5DB5A842C5A7E06319F9EF910</key>
-			<iv>8111340B4AF2CD82FF15447143069276</iv>
-			<input>A4F6C8ACF4F1050D11E42FEF1B6C8B68</input>
-			<output>BB4693FA1399583EACB21D2675E6D156</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A98A2A1FC8C3DC12F6CC1B17EA782846</key>
-			<iv>BB4693FA1399583EACB21D2675E6D156</iv>
-			<input>C5DBE1A937D6EA2FDD9A1A2FD25217B9</input>
-			<output>BC01B078339637D796F822B7E58D968D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>158B9A67FB55EBC5603439A00FF5BECB</key>
-			<iv>BC01B078339637D796F822B7E58D968D</iv>
-			<input>DBD0494B0FE3149F8BCB8A70D344E811</input>
-			<output>600C1EFBDCA314A6F9714DEE413B9BD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7587849C27F6FF639945744E4ECE2519</key>
-			<iv>600C1EFBDCA314A6F9714DEE413B9BD2</iv>
-			<input>FCA88DCB484317D7F886E7437BC9E669</input>
-			<output>2E3788A647105DD0A286E2EFFD469C99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5BB00C3A60E6A2B33BC396A1B388B980</key>
-			<iv>2E3788A647105DD0A286E2EFFD469C99</iv>
-			<input>65AF28E41B3DA5ACE3B2CC9A25EAD28C</input>
-			<output>5411E48B57058A52C8560423BCFFBCD2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0FA1E8B137E328E1F39592820F770552</key>
-			<iv>5411E48B57058A52C8560423BCFFBCD2</iv>
-			<input>6DD82A9F1CF0A5134A76899B04BE37D5</input>
-			<output>C3F69C8ED682BF252D5119D1695126E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC57743FE16197C4DEC48B53662623B3</key>
-			<iv>C3F69C8ED682BF252D5119D1695126E1</iv>
-			<input>DE729AB3803144FD958D8597396BC8ED</input>
-			<output>0941B78975FD2945B4AA81E8C58E3CB2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C516C3B6949CBE816A6E0ABBA3A81F01</key>
-			<iv>0941B78975FD2945B4AA81E8C58E3CB2</iv>
-			<input>D8404E7A17254EB40683A8919A9563B4</input>
-			<output>BF647E0346C013E138A2F0B06E7BB142</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A72BDB5D25CAD6052CCFA0BCDD3AE43</key>
-			<iv>BF647E0346C013E138A2F0B06E7BB142</iv>
-			<input>214089EC2996CE9FA2BBFEFBCAC03509</input>
-			<output>AFDA67B9451FF758CC87BBD93C7D4BE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D5A8DA0C97435A389E4B41D2F1AEE5A7</key>
-			<iv>AFDA67B9451FF758CC87BBD93C7D4BE4</iv>
-			<input>9406E9D4FB4592A609BBDB23CE5F9D7F</input>
-			<output>B18202E4CA510695540371A8B6523616</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>642AD8E85D125CADCA48307A47FCD3B1</key>
-			<iv>B18202E4CA510695540371A8B6523616</iv>
-			<input>FEE45BE0503B4093747AFCEA9881D30D</input>
-			<output>64E149A4A1840F93D675B041ED81D45A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00CB914CFC96533E1C3D803BAA7D07EB</key>
-			<iv>64E149A4A1840F93D675B041ED81D45A</iv>
-			<input>880368D5609350167C7826DA30DCFF59</input>
-			<output>65A363E9837DFBBDA2688E6F4FBE6C35</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6568F2A57FEBA883BE550E54E5C36BDE</key>
-			<iv>65A363E9837DFBBDA2688E6F4FBE6C35</iv>
-			<input>29C5940D09A8723B441FC469C909813A</input>
-			<output>2A47FDF5BF600891DF4D9E8AA34748BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4F2F0F50C08BA012611890DE46842364</key>
-			<iv>2A47FDF5BF600891DF4D9E8AA34748BA</iv>
-			<input>20AF0FF7BAC0F468C12BD2816A8B1620</input>
-			<output>68A637E4B94EC150C84A6EBB005BB79B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>278938B479C56142A952FE6546DF94FF</key>
-			<iv>68A637E4B94EC150C84A6EBB005BB79B</iv>
-			<input>42906D013A3F0A426B01B489ECA6CAD7</input>
-			<output>A090CA02FCD40F01CA0D1A699E30C164</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8719F2B685116E43635FE40CD8EF559B</key>
-			<iv>A090CA02FCD40F01CA0D1A699E30C164</iv>
-			<input>05A02D4D7D90BCA74ECE791CD865CB88</input>
-			<output>F70109F0EBBA56959B3013565E2BDFFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7018FB466EAB38D6F86FF75A86C48A67</key>
-			<iv>F70109F0EBBA56959B3013565E2BDFFC</iv>
-			<input>C373AB7B8F770212F9D5CEF40099086C</input>
-			<output>67221CC1F104809B8A5D35431963812D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>173AE7879FAFB84D7232C2199FA70B4A</key>
-			<iv>67221CC1F104809B8A5D35431963812D</iv>
-			<input>8C59B2A7FD50EC66ABACC0531BE33237</input>
-			<output>E06166175F68155DB86E268F3C5524AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F75B8190C0C7AD10CA5CE496A3F22FE4</key>
-			<iv>E06166175F68155DB86E268F3C5524AE</iv>
-			<input>D39790AED2970355A6337AAD2CA4D501</input>
-			<output>85E89883242A3B68F4AAF922646EB385</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>72B31913E4ED96783EF61DB4C79C9C61</key>
-			<iv>85E89883242A3B68F4AAF922646EB385</iv>
-			<input>87D4160C7C97476D0884A22B5983AA65</input>
-			<output>038C79FDFAA0B4F4AD9DC336F46CACDF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>713F60EE1E4D228C936BDE8233F030BE</key>
-			<iv>038C79FDFAA0B4F4AD9DC336F46CACDF</iv>
-			<input>3B59088B5ADC77E4B3FC31897C6389B5</input>
-			<output>F6C92ECB3332E5E93C9DE29F27F94BB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>87F64E252D7FC765AFF63C1D14097B0D</key>
-			<iv>F6C92ECB3332E5E93C9DE29F27F94BB3</iv>
-			<input>68BA9BEBB40B3E35D2E577A2831CF9DB</input>
-			<output>7B72342488233DAD5ACF0A8D54EA9E8B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FC847A01A55CFAC8F539369040E3E586</key>
-			<iv>7B72342488233DAD5ACF0A8D54EA9E8B</iv>
-			<input>7816251219B8C7F009ADD7A1898D02CF</input>
-			<output>45CBA66AD6045917C3E8257D3ECBECDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B94FDC6B7358A3DF36D113ED7E28095D</key>
-			<iv>45CBA66AD6045917C3E8257D3ECBECDB</iv>
-			<input>F542FEAB12E2EA9AE761E58108784E37</input>
-			<output>82E289465F5838036B9880C33AEBCB83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3BAD552D2C009BDC5D49932E44C3C2DE</key>
-			<iv>82E289465F5838036B9880C33AEBCB83</iv>
-			<input>3B8208791DAE56383CC2BCB44097C9D3</input>
-			<output>F02F2B89DE46D01F46AD95C82AF0C20E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CB827EA4F2464BC31BE406E66E3300D0</key>
-			<iv>F02F2B89DE46D01F46AD95C82AF0C20E</iv>
-			<input>3F2C0F7A0AEAB04F318C661ABCFED153</input>
-			<output>8D4FAF6332578524301ACA22AD86965B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>46CDD1C7C011CEE72BFECCC4C3B5968B</key>
-			<iv>8D4FAF6332578524301ACA22AD86965B</iv>
-			<input>A27200B51D69AAC22F1C567F8BCEABFA</input>
-			<output>2F844CBF78EBA70DA7A49601388F1AB6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC192.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13602 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Enc 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>7BD966D53AD8C1BB85D2ADFAE87BB104</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>506339DAE3B35BEB7BD966D53AD8C1BB85D2ADFAE87BB104</key>
-			<iv>7BD966D53AD8C1BB85D2ADFAE87BB104</iv>
-			<input>0555C410F44C7AA4506339DAE3B35BEB</input>
-			<output>869C061BE9CFEAB5D285B0724A9A8970</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74D3414C2374367BFD4560CED3172B0E57571D88A2E13874</key>
-			<iv>869C061BE9CFEAB5D285B0724A9A8970</iv>
-			<input>C6FB25A188CF7F3F24B07896C0C76D90</input>
-			<output>9E58A52B3840DBE16E8063A18220FEE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DDE2DF4EEC312FA3631DC5E5EB57F0EF39D77E2920C1C690</key>
-			<iv>9E58A52B3840DBE16E8063A18220FEE4</iv>
-			<input>84E3D4168A8469A6A9319E02CF4519D8</input>
-			<output>730A256C202B9D57F3C0D73AD4B6CBED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9D973AECAF19E9951017E089CB7C6DB8CA17A913F4770D7D</key>
-			<iv>730A256C202B9D57F3C0D73AD4B6CBED</iv>
-			<input>E000CE26CD3185B44075E5A24328C636</input>
-			<output>E79EF11C5C1FD1AB75280BCFFCFE89D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A52007B2C40C9F4F78911959763BC13BF3FA2DC088984A9</key>
-			<iv>E79EF11C5C1FD1AB75280BCFFCFE89D4</iv>
-			<input>19D79403BB238816E7C53A9783592061</input>
-			<output>65744444724F1052D0B8674EDC8083B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>40D50426A8D09F3292FD55D1E52CAC416F87C592D409071C</key>
-			<iv>65744444724F1052D0B8674EDC8083B5</iv>
-			<input>FDFA33685E2B5BBC3A87045D849056C6</input>
-			<output>23C6377D3D076491AD93E2B6112289C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6FD062412FE1AE4EB13B62ACD82BC8D0C2142724C52B8EDB</key>
-			<iv>23C6377D3D076491AD93E2B6112289C7</iv>
-			<input>5056DDDEF15831502F0566678731317C</input>
-			<output>F13A83088536BF30E5E9018BE57D7D89</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB4DB5F469D0EE9B4001E1A45D1D77E027FD26AF2056F352</key>
-			<iv>F13A83088536BF30E5E9018BE57D7D89</iv>
-			<input>0EE535A4A524668F849DD7B5463140D5</input>
-			<output>3F496CB19B21C37159528BF345473E6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA6E5744B909D9A87F488D15C63CB4917EAFAD5C6511CD3F</key>
-			<iv>3F496CB19B21C37159528BF345473E6D</iv>
-			<input>3A11F90EB51C81ED4123E2B0D0D93733</input>
-			<output>CF79C1EDEE17A68DC7E673006AEC90D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64AB0C0C9471B77FB0314CF8282B121CB949DE5C0FFD5DE6</key>
-			<iv>CF79C1EDEE17A68DC7E673006AEC90D9</iv>
-			<input>85187E7F91280A5BCEC55B482D786ED7</input>
-			<output>92D1757BEBCE6E0406407819AF82353F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9E5720C1DC2E285C22E03983C3E57C18BF09A645A07F68D9</key>
-			<iv>92D1757BEBCE6E0406407819AF82353F</iv>
-			<input>45147511BC08EC76FAFC2CCD485F9F23</input>
-			<output>8C0228F57523D746E67D27A8E6C426D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EBBB8245582E4367AEE21176B6C6AB5E597481ED46BB4E00</key>
-			<iv>8C0228F57523D746E67D27A8E6C426D9</iv>
-			<input>73B9EEAC644CBB8875ECA28484006B3B</input>
-			<output>D0025BF1FC35DD9BDA20F42DF775AF71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5F938EE9CC63C9E87EE04A874AF376C5835475C0B1CEE171</key>
-			<iv>D0025BF1FC35DD9BDA20F42DF775AF71</iv>
-			<input>DE2507F01BC8B212B4280CAC944D8A8F</input>
-			<output>3FDDD3E04B2CBE79BB07D82182CD3787</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B94E2EC5F6E86EDC413D996701DFC8BC3853ADE13303D6F6</key>
-			<iv>3FDDD3E04B2CBE79BB07D82182CD3787</iv>
-			<input>90CE32BCC16C20F7E6DDA02C3A8BA734</input>
-			<output>F7B491E4C40B60BE8ACF16D68E3ED60F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE41ABD8C44F5DF6B6890883C5D4A802B29CBB37BD3D00F9</key>
-			<iv>F7B491E4C40B60BE8ACF16D68E3ED60F</iv>
-			<input>B7ACCA62BB9974BC670F851D32A7332A</input>
-			<output>7ED4055D367CB31A4CF1CC17132E00B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2A57C71F23BC4DEC85D0DDEF3A81B18FE6D7720AE13004C</key>
-			<iv>7ED4055D367CB31A4CF1CC17132E00B5</iv>
-			<input>1CA59C2384797B803CE4D7A936749928</input>
-			<output>8D50A87F14D466323929BB52FA60FA42</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2FA1A78B8BCC301C450DA5A1E77C7D2AC744CC725473FA0E</key>
-			<iv>8D50A87F14D466323929BB52FA60FA42</iv>
-			<input>0A623319F2A051ACCD04DBFA79F7F4C2</input>
-			<output>7C02D378606FC33DFCEF8AA2A000383E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A949CE493892DF58390F76D98713BE173BAB46D0F473C230</key>
-			<iv>7C02D378606FC33DFCEF8AA2A000383E</iv>
-			<input>EE8F5FF6A7FF813386E869C2B35EEF44</input>
-			<output>CAE55B9CCBB5A68EBF0D2AB55E079FD4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E159445FE4201A6CF3EA2D454CA6189984A66C65AA745DE4</key>
-			<iv>CAE55B9CCBB5A68EBF0D2AB55E079FD4</iv>
-			<input>9699456986535C4648108A16DCB2C534</input>
-			<output>9056685FBFECC7A6143DB5AC314DAC88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE4F7BF96BF1163E63BC451AF34ADF3F909BD9C99B39F16C</key>
-			<iv>9056685FBFECC7A6143DB5AC314DAC88</iv>
-			<input>16D6C34C3B57AC0A0F163FA68FD10C52</input>
-			<output>4D6A5542F0680CE37E88119141F321F5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>27F8CEE0120E8A0F2ED610580322D3DCEE13C858DACAD099</key>
-			<iv>4D6A5542F0680CE37E88119141F321F5</iv>
-			<input>337839926E36EC77C9B7B51979FF9C31</input>
-			<output>78E16D6027F0D190E78825C2F52E5364</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0AF4D3D8EB9FF18A56377D3824D2024C099BED9A2FE483FD</key>
-			<iv>78E16D6027F0D190E78825C2F52E5364</iv>
-			<input>8F96B66F934467C72D0C1D38F9917B85</input>
-			<output>82A81B33F80A105DD7D9CC6DDFECDB96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AD2AFC821170D967D49F660BDCD81211DE4221F7F008586B</key>
-			<iv>82A81B33F80A105DD7D9CC6DDFECDB96</iv>
-			<input>E2CB8E6E329C6660A7DE2F5AFAEF28ED</input>
-			<output>0BCD68A063BA3540B3E04C885DF45BD0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5B50EE72BD6CE837DF520EABBF6227516DA26D7FADFC03BB</key>
-			<iv>0BCD68A063BA3540B3E04C885DF45BD0</iv>
-			<input>31A14C64CD8BCC8FF67A12F0AC1C3150</input>
-			<output>DB27EA5834BF572EA50E03E0773C1010</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF4D8A58F54D47620475E4F38BDD707FC8AC6E9FDAC013AB</key>
-			<iv>DB27EA5834BF572EA50E03E0773C1010</iv>
-			<input>26755B5C0BE60998E41D642A4821AF55</input>
-			<output>655A896243B5E86B2F74299A317A2E4C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8DC190D88B17EAB9612F6D91C8689814E7D84705EBBA3DE7</key>
-			<iv>655A896243B5E86B2F74299A317A2E4C</iv>
-			<input>C6920ADCED82F661328C1A807E5AADDB</input>
-			<output>9F45472FDBB732C745AD228810392EA2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B44071C6F14CDA97FE6A2ABE13DFAAD3A275658DFB831345</key>
-			<iv>9F45472FDBB732C745AD228810392EA2</iv>
-			<input>2178DFA9784E563E3981E11E7A5B302E</input>
-			<output>9F985FBF08235845E396BFCE54BCE7C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A3C12E42B53D829E61F275011BFCF29641E3DA43AF3FF48D</key>
-			<iv>9F985FBF08235845E396BFCE54BCE7C8</iv>
-			<input>44977E2274DA25AE17815F8444715809</input>
-			<output>033EAF4FAC934D123012279B1663C80B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8FD2B79E25E39C4A62CCDA4EB76FBF8471F1FDD8B95C3C86</key>
-			<iv>033EAF4FAC934D123012279B1663C80B</iv>
-			<input>425088D4626CD7972C1399DC90DE1ED4</input>
-			<output>A962CB4707B0048BB81F4225EFC85E48</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D68793EF46B8125CBAE1109B0DFBB0FC9EEBFFD569462CE</key>
-			<iv>A962CB4707B0048BB81F4225EFC85E48</iv>
-			<input>EF21ED587C272175B2BACEA0D1881D6F</input>
-			<output>6F3A0D63A22C003F7F65B09098F667DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6A4FB651BE9D0BAFA4941C6A12F3BB30B68B0F6DCE620515</key>
-			<iv>6F3A0D63A22C003F7F65B09098F667DB</iv>
-			<input>16054E60B460B2D15727CF6F4AF68A8A</input>
-			<output>8BB46230FF03665765F2E5AAEA14104F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3F5991D63C15A1822F207E5AEDF0DD67D379EAC72476155A</key>
-			<iv>8BB46230FF03665765F2E5AAEA14104F</iv>
-			<input>82D0B12FEA88917F551627878288AA2D</input>
-			<output>8E1A664131FAB09E786E111C3C20A7BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>456F69D38929ED82A13A181BDC0A6DF9AB17FBDB1856B2E1</key>
-			<iv>8E1A664131FAB09E786E111C3C20A7BB</iv>
-			<input>1384D3B7CAEB528A7A36F805B53C4C00</input>
-			<output>92D99BF1D71026D2BF78E32421E34E52</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>658891F63379484C33E383EA0B1A4B2B146F18FF39B5FCB3</key>
-			<iv>92D99BF1D71026D2BF78E32421E34E52</iv>
-			<input>9F60C3117269E88920E7F825BA50A5CE</input>
-			<output>7DB6782C68EC5FC75A2A75E4EA7B4071</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9193E2EACE8423F64E55FBC663F614EC4E456D1BD3CEBCC2</key>
-			<iv>7DB6782C68EC5FC75A2A75E4EA7B4071</iv>
-			<input>232ECA0370EBD920F41B731CFDFD6BBA</input>
-			<output>D76A1E73E977533E6D7C74277DAFEB48</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4C34FE273D0FCB5993FE5B58A8147D22339193CAE61578A</key>
-			<iv>D76A1E73E977533E6D7C74277DAFEB48</iv>
-			<input>5BCD8C6C4D14321F6550AD08BD54DF43</input>
-			<output>4A69E9081DDD43A6061700C7DA8F5E73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DC82C155896C5D5CD3560CBD975C0474252E19FB74EE09F9</key>
-			<iv>4A69E9081DDD43A6061700C7DA8F5E73</iv>
-			<input>C914BB961EA890D828418EB7FABCA1E9</input>
-			<output>91EE5BE28C27F055258BC3E1F37E2DEC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>08F1655EA3656F1C42B8575F1B7BF42100A5DA1A87902415</key>
-			<iv>91EE5BE28C27F055258BC3E1F37E2DEC</iv>
-			<input>11804F73D788115CD473A40B2A093240</input>
-			<output>86B9BE5AFD2A8A49E2651C314CAE0918</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59D7EFD92140A147C401E905E6517E68E2C0C62BCB3E2D0D</key>
-			<iv>86B9BE5AFD2A8A49E2651C314CAE0918</iv>
-			<input>6E2A1E436926174E51268A878225CE5B</input>
-			<output>C642F5ED78DB76738A89296B1C4A0932</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6E75E7867D0FB4A02431CE89E8A081B6849EF40D774243F</key>
-			<iv>C642F5ED78DB76738A89296B1C4A0932</iv>
-			<input>15896B8B864CF068AF30B1A146905A0D</input>
-			<output>24288AE027547E499EBADE9260C8F037</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9A048C2BC98E15B2266B9608B9DE7652F6F331D2B7BCD408</key>
-			<iv>24288AE027547E499EBADE9260C8F037</iv>
-			<input>FF9A330C205DC3006CE3D253AE5EEEF8</input>
-			<output>BD9B3D670D24EDDA1EAD1DB06C8A83C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>97E8C017644E9FED9BF0AB6FB4FA9B88E85E2C62DB3657CF</key>
-			<iv>BD9B3D670D24EDDA1EAD1DB06C8A83C7</iv>
-			<input>C9A3916C34A7CCD90DEC4C3CADC08A5F</input>
-			<output>1FCCBC65C44E4680E1593EE0EEFEA9A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3A2862113BD3312D843C170A70B4DD080907128235C8FE66</key>
-			<iv>1FCCBC65C44E4680E1593EE0EEFEA9A9</iv>
-			<input>EAF9C4A80EE93585ADC0A2065F9DAEC0</input>
-			<output>2C0004064936696B10D039D9795BABC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>33FAE356C0C96F17A83C130C3982B46319D72B5B4C9355A1</key>
-			<iv>2C0004064936696B10D039D9795BABC7</iv>
-			<input>4181525880CA468909D28147FB1A5E3A</input>
-			<output>79F193EB9A9A48464FF007D73E9B4106</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2136A7940C9B9FAFD1CD80E7A318FC2556272C8C720814A7</key>
-			<iv>79F193EB9A9A48464FF007D73E9B4106</iv>
-			<input>2899D75DFB84950E12CC44C2CC52F0B8</input>
-			<output>DA12307CE9A6BA0FCE5A76AE1747E619</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0C839679750274320BDFB09B4ABE462A987D5A22654FF2BE</key>
-			<iv>DA12307CE9A6BA0FCE5A76AE1747E619</iv>
-			<input>2C71B8623CA5BF292DB531ED7999EB9D</input>
-			<output>A59997FA19B58BC71CB05E7140386C94</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4D3CDB92797645C1AE462761530BCDED84CD045325779E2A</key>
-			<iv>A59997FA19B58BC71CB05E7140386C94</iv>
-			<input>63F4FC202A1B921241BF4DEB0C7431F3</input>
-			<output>49E65D7422398035DD1E4EBAD37C699D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>38082D7CC27EBABBE7A07A1571324DD859D34AE9F60BF7B7</key>
-			<iv>49E65D7422398035DD1E4EBAD37C699D</iv>
-			<input>7F0E2FD5D4B5A0CB7534F6EEBB08FF7A</input>
-			<output>64DF24483FC73174FB6482A6E2B895E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1557398CFBFF31F8837F5E5D4EF57CACA2B7C84F14B36257</key>
-			<iv>64DF24483FC73174FB6482A6E2B895E0</iv>
-			<input>0F525FCF2A1E3D612D5F14F039818B43</input>
-			<output>028880CC8AA1B92CB807F1102663E658</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>229C31F1D34A529581F7DE91C454C5801AB0395F32D0840F</key>
-			<iv>028880CC8AA1B92CB807F1102663E658</iv>
-			<input>219604B99FF2BE7B37CB087D28B5636D</input>
-			<output>FAC8B66D1BA7849392CC235D0276110E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C75DE76D40D536277B3F68FCDFF34113887C1A0230A69501</key>
-			<iv>FAC8B66D1BA7849392CC235D0276110E</iv>
-			<input>3319C80C038E565FE5C1D69C939F64B2</input>
-			<output>79770F286419EEFD855868EC4ADF3775</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5F0B08B451490B27024867D4BBEAAFEE0D2472EE7A79A274</key>
-			<iv>79770F286419EEFD855868EC4ADF3775</iv>
-			<input>E173A8580816CAFA9856EFD9119C3D00</input>
-			<output>FC0AA487B09DF657DB58DBF83E13E137</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E86E8BFBF1D65541FE42C3530B7759B9D67CA916446A4343</key>
-			<iv>FC0AA487B09DF657DB58DBF83E13E137</iv>
-			<input>01274C45F202C22CB765834FA09F5E66</input>
-			<output>9691EA44FC67CA29E50E7FF7DBC4D0CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7849550CA6CCD87268D32917F71093903372D6E19FAE9389</key>
-			<iv>9691EA44FC67CA29E50E7FF7DBC4D0CA</iv>
-			<input>026BD493499B7BA99027DEF7571A8D33</input>
-			<output>5206F7CF45A59FD6444CCBB6B034CF45</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>52D81D6104DBF6DF3AD5DED8B2B50C46773E1D572F9A5CCC</key>
-			<iv>5206F7CF45A59FD6444CCBB6B034CF45</iv>
-			<input>33CA15B3D921E7752A91486DA2172EAD</input>
-			<output>F4A41D18E3EF9DE46917BADB1B5EC613</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>36FB680165ABD632CE71C3C0515A91A21E29A78C34C49ADF</key>
-			<iv>F4A41D18E3EF9DE46917BADB1B5EC613</iv>
-			<input>65F3084285AA869464237560617020ED</input>
-			<output>6C4154D3245D2546979118A36120A911</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6E7548B98AA0640AA23097137507B4E489B8BF2F55E433CE</key>
-			<iv>6C4154D3245D2546979118A36120A911</iv>
-			<input>6CF540F502D90886588E20B8EF0BB238</input>
-			<output>2A52376A7E494ADEDD53A416F73FE9C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A0D840A0E3CC1EA58862A0790B4EFE3A54EB1B39A2DBDA0E</key>
-			<iv>2A52376A7E494ADEDD53A416F73FE9C0</iv>
-			<input>708AE2375F305572CEAD0819696C7AAF</input>
-			<output>7A0EF052184147EA279839380B3DBB32</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>153CF68E4A1C1FCEF26C502B130FB9D073732201A9E6613C</key>
-			<iv>7A0EF052184147EA279839380B3DBB32</iv>
-			<input>A8267215107D3DD0B5E4B62EA9D0016B</input>
-			<output>F193B80D57571F94A4F5373149163AA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0B0657A66C37D8703FFE8264458A644D7861530E0F05B9D</key>
-			<iv>F193B80D57571F94A4F5373149163AA1</iv>
-			<input>EE4B04302CB02990F58C93F42CDF6249</input>
-			<output>A28E99815C930AC05ADA4524A7E5968C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>94760F8A93926E4DA17171A718CBAC848D5C50144715CD11</key>
-			<iv>A28E99815C930AC05ADA4524A7E5968C</iv>
-			<input>34D122B717CBA59174C66AF0F55113CA</input>
-			<output>6F9342E7915613450E823EC9A781DAA3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0B352460A1579376CEE23340899DBFC183DE6EDDE09417B2</key>
-			<iv>6F9342E7915613450E823EC9A781DAA3</iv>
-			<input>D8689ED21F3EA8E29F432BEA32C5FD3B</input>
-			<output>584BB944532A830F7F8DCDBE42E7DBFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>999A5CEB73DFCC1796A98A04DAB73CCEFC53A363A273CC4E</key>
-			<iv>584BB944532A830F7F8DCDBE42E7DBFC</iv>
-			<input>4E87F73D46D0C0AF92AF788BD2885F61</input>
-			<output>4AC372A4D3273C71F69D50168A9235A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42C59FFD5AA69C11DC6AF8A0099000BF0ACEF37528E1F9EF</key>
-			<iv>4AC372A4D3273C71F69D50168A9235A1</iv>
-			<input>324DC9C2D34E95F9DB5FC31629795006</input>
-			<output>60E53CC2D5E4900D48A0C5F7EE3BC810</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>843EBDEF0CEEBA5BBC8FC462DC7490B2426E3682C6DA31FF</key>
-			<iv>60E53CC2D5E4900D48A0C5F7EE3BC810</iv>
-			<input>8B94F018A7115B3AC6FB22125648264A</input>
-			<output>4BD7DF7DFD03A24809B751F59FACF417</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>98E40853FA954FF5F7581B1F217732FA4BD967775976C5E8</key>
-			<iv>4BD7DF7DFD03A24809B751F59FACF417</iv>
-			<input>109C734AC21ED2631CDAB5BCF67BF5AE</input>
-			<output>B7A3CF7E58A413C5065E9CFD23C750F9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5419462C5329544A40FBD46179D3213F4D87FB8A7AB19511</key>
-			<iv>B7A3CF7E58A413C5065E9CFD23C750F9</iv>
-			<input>8CA507ACCDB3A793CCFD4E7FA9BC1BBF</input>
-			<output>6285C3D0FD2645192C5DD046D73414CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B58628819840885D227E17B184F5642661DA2BCCAD8581DF</key>
-			<iv>6285C3D0FD2645192C5DD046D73414CE</iv>
-			<input>7DE48BAD03BB9F53E19F6EADCB69DC17</input>
-			<output>583FBCEB09646CEC19D00620E5455FD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>73F7F00EF22ED1B07A41AB5A8D9108CA780A2DEC48C0DE0A</key>
-			<iv>583FBCEB09646CEC19D00620E5455FD5</iv>
-			<input>126D3F2A0BC1B168C671D88F6A6E59ED</input>
-			<output>886A5273055AF7AE37EFB726DC90FD9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>69735F80F0B876DAF22BF92988CBFF644FE59ACA94502394</key>
-			<iv>886A5273055AF7AE37EFB726DC90FD9E</iv>
-			<input>0B4D3F58D83D866A1A84AF8E0296A76A</input>
-			<output>FD068F02BB6C2611EF78CD963EF2F78F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92E5FF32D46494880F2D762B33A7D975A09D575CAAA2D41B</key>
-			<iv>FD068F02BB6C2611EF78CD963EF2F78F</iv>
-			<input>705667CBCC87BF3DFB96A0B224DCE252</input>
-			<output>34713FD3FA07F0B3F94EC0FB17BB465F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A0DF9DCB873A1ADC3B5C49F8C9A029C659D397A7BD199244</key>
-			<iv>34713FD3FA07F0B3F94EC0FB17BB465F</iv>
-			<input>4BF66F55275D6CB3323A62F9535E8E54</input>
-			<output>82C8A179661207B7FE178A266C607074</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2D1604ADAA49C3FBB994E881AFB22E71A7C41D81D179E230</key>
-			<iv>82C8A179661207B7FE178A266C607074</iv>
-			<input>167203BBB933707A8DC999662D73D927</input>
-			<output>DCDBCC8D11C632CB220C6E95B399A1CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7D2C4B0C0D0B001A654F240CBE741CBA85C8731462E043FC</key>
-			<iv>DCDBCC8D11C632CB220C6E95B399A1CC</iv>
-			<input>668F998350BDA831503A4FA1A742C3E1</input>
-			<output>8827EBFCB24470266D5C0BA05D5974A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE3A4CF21186C2C7ED68CFF00C306C9CE89478B43FB93758</key>
-			<iv>8827EBFCB24470266D5C0BA05D5974A4</iv>
-			<input>B8D1D48F3C41094EC31607FE1C8DC2DD</input>
-			<output>61E59DECE1AEFFDEB9B216828953D70F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D0CE372842DC32508C8D521CED9E934251266E36B6EAE057</key>
-			<iv>61E59DECE1AEFFDEB9B216828953D70F</iv>
-			<input>49A4495257D08AA56EF47BDA535AF097</input>
-			<output>ECD04FFB385CCC1D13C312A5C31810DE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E7274C14C4163169605D1DE7D5C25F5F42E57C9375F2F089</key>
-			<iv>ECD04FFB385CCC1D13C312A5C31810DE</iv>
-			<input>3EED6F60FD9050A737E97B3C86CA0339</input>
-			<output>D9C90455AFBF5465F89752FB6F60BDFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>71E35A00CAFB898BB99419B27A7D0B3ABA722E681A924D76</key>
-			<iv>D9C90455AFBF5465F89752FB6F60BDFF</iv>
-			<input>5CE6E7F07945191396C416140EEDB8E2</input>
-			<output>F6E795B326CFD6CCC0E230E4FE770878</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>79DFA388989B29204F738C015CB2DDF67A901E8CE4E5450E</key>
-			<iv>F6E795B326CFD6CCC0E230E4FE770878</iv>
-			<input>314A5784B7909F89083CF9885260A0AB</input>
-			<output>6B3A00F05F79F25E4E9EDA81034A9B7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>75F6D5983AE6D7AC24498CF103CB2FA8340EC40DE7AFDE75</key>
-			<iv>6B3A00F05F79F25E4E9EDA81034A9B7B</iv>
-			<input>DEC42B1A6184FDF80C297610A27DFE8C</input>
-			<output>6A19BEA8826427E309BD55BCBBE246B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E47EEE65549BF1634E50325981AF084B3DB391B15C4D98C1</key>
-			<iv>6A19BEA8826427E309BD55BCBBE246B4</iv>
-			<input>63C46CFF49FF13B291883BFD6E7D26CF</input>
-			<output>738C0B0E580C0B1ED488DDE8502CB754</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6DBE45547556F403DDC3957D9A30355E93B4C590C612F95</key>
-			<iv>738C0B0E580C0B1ED488DDE8502CB754</iv>
-			<input>E951F5C902BD351502A50A3013CE9E23</input>
-			<output>389E33F3DAB3FAB7B2ACB853C0150B8D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EBA5A1BDF9FC558905420AA40310F9E25B97F40ACC742418</key>
-			<iv>389E33F3DAB3FAB7B2ACB853C0150B8D</iv>
-			<input>54EFC45B4036B60D0D7E45E8BEA93AC9</input>
-			<output>EACAE8A4B5CCBDB28ED2162670DBD4B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B570945030615F75EF88E200B6DC4450D545E22CBCAFF0A9</key>
-			<iv>EACAE8A4B5CCBDB28ED2162670DBD4B1</iv>
-			<input>7F3BA6FE23AE45665ED535EDC99D0AFC</input>
-			<output>535FEA61623ECD22FA1A95BF95320252</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F332D3DE8556F82EBCD70861D4E289722F5F7793299DF2FB</key>
-			<iv>535FEA61623ECD22FA1A95BF95320252</iv>
-			<input>8FEB6943B22437D34642478EB537A75B</input>
-			<output>CD23D928E1D3221E4D3C51670C071276</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1402D325D7EBA90871F4D1493531AB6C626326F4259AE08D</key>
-			<iv>CD23D928E1D3221E4D3C51670C071276</iv>
-			<input>8B01EE4509B58B49E73000FB52BD5126</input>
-			<output>56DC7F1BE2CC26A369B3BCA71BF8FAB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>389C95DC5BF411B62728AE52D7FD8DCF0BD09A533E621A35</key>
-			<iv>56DC7F1BE2CC26A369B3BCA71BF8FAB8</iv>
-			<input>9BFE561402B07B4C2C9E46F98C1FB8BE</input>
-			<output>A059CFB443009F0ACD8E5051BD16C837</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>89180FBFF0A12019877161E694FD12C5C65ECA028374D202</key>
-			<iv>A059CFB443009F0ACD8E5051BD16C837</iv>
-			<input>C8D55810C7A22E30B1849A63AB5531AF</input>
-			<output>62CEB7D9A6D23B40CFD75990D1040BA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>08BE01CF1E620DBEE5BFD63F322F2985098993925270D9A6</key>
-			<iv>62CEB7D9A6D23B40CFD75990D1040BA4</iv>
-			<input>F888764A970B03BC81A60E70EEC32DA7</input>
-			<output>F6D89003ABBF003AF013EB221AF17F99</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EB9AC53FC544ADE1367463C999029BFF99A78B04881A63F</key>
-			<iv>F6D89003ABBF003AF013EB221AF17F99</iv>
-			<input>26A25CFC1E699D8B5607AD9CE2364760</input>
-			<output>74C9E920DC16396E89774B82E7803EF5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D8FAD6E8CDC96CEF67AEAF1C458610D170ED3332AF0198CA</key>
-			<iv>74C9E920DC16396E89774B82E7803EF5</iv>
-			<input>76AFDD045A30FAA486437ABB319D2631</input>
-			<output>A5B997689B88AAC0611C2963C8C1B7CE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7E774E64A5F209B2C2173874DE0EBA1111F11A5167C02F04</key>
-			<iv>A5B997689B88AAC0611C2963C8C1B7CE</iv>
-			<input>ABF525144D3415DEA68D988C683B655D</input>
-			<output>7A2F39D97547C3CD336577E41C0483ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0406C21AE6E015E0B83801ADAB4979DC22946DB57BC4ACE9</key>
-			<iv>7A2F39D97547C3CD336577E41C0483ED</iv>
-			<input>E0C2466426630D1B7A718C7E43121C52</input>
-			<output>67899F7D0890E90383C05A7984604241</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D9249A4AFDF40BEADFB19ED0A3D990DFA15437CCFFA4EEA8</key>
-			<iv>67899F7D0890E90383C05A7984604241</iv>
-			<input>07E55341FCD016D7DD2258501B141E0A</input>
-			<output>7B1CBCD270B09E9A1D15714D8366D174</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B2242464CD4D2448A4AD2202D3690E45BC4146817CC23FDC</key>
-			<iv>7B1CBCD270B09E9A1D15714D8366D174</iv>
-			<input>25C6E62F44ABFF406B00BE2E30B92FA2</input>
-			<output>C86E27E5CA4461CE656D893A16477966</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>602CDF824C043C836CC305E7192D6F8BD92CCFBB6A8546BA</key>
-			<iv>C86E27E5CA4461CE656D893A16477966</iv>
-			<input>3F9D262E375F057BD208FBE6814918CB</input>
-			<output>8129054CF746CB79112942AE35142E4D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>73F82C9EE4B4D0E8EDEA00ABEE6BA4F2C8058D155F9168F7</key>
-			<iv>8129054CF746CB79112942AE35142E4D</iv>
-			<input>7BC798EAC4C17B2D13D4F31CA8B0EC6B</input>
-			<output>36F21910B1677AF19586E55E360FB8DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E5FC538A60CC29A3DB1819BB5F0CDE035D83684B699ED02A</key>
-			<iv>36F21910B1677AF19586E55E360FB8DD</iv>
-			<input>D3E39037253E5BAA96047F148478F94B</input>
-			<output>BA7CE80E0853D264368EE61D8E71EEBE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D9381EF81441B6C16164F1B5575F0C676B0D8E56E7EF3E94</key>
-			<iv>BA7CE80E0853D264368EE61D8E71EEBE</iv>
-			<input>DE4FFDFADB81FABB3CC44D72748D9F62</input>
-			<output>971AD82D1F46F1087B37103B4BE5DD8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A0BF8B4740D929C9F67E29984819FD6F103A9E6DAC0AE318</key>
-			<iv>971AD82D1F46F1087B37103B4BE5DD8C</iv>
-			<input>FE6355B5D860522B798795BF54989F08</input>
-			<output>D17268155EE586F352BB031929441700</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>477A0AB591FFEC5C270C418D16FC7B9C42819D74854EF418</key>
-			<iv>D17268155EE586F352BB031929441700</iv>
-			<input>166A50EEE05F4A39E7C581F2D126C595</input>
-			<output>2CD84FB5B587BE8B04638A9EDBA17AE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>50005B4C4B11BFB20BD40E38A37BC51746E217EA5EEF8EFA</key>
-			<iv>2CD84FB5B587BE8B04638A9EDBA17AE2</iv>
-			<input>1296DC2C1741EB2A177A51F9DAEE53EE</input>
-			<output>8C2A5A31951FB2D9E8D35CD3C007B8B3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1E88DDBA5D849DF87FE5409366477CEAE314B399EE83649</key>
-			<iv>8C2A5A31951FB2D9E8D35CD3C007B8B3</iv>
-			<input>57C5E1A070E3C2AEB1E8D697EEC9F66D</input>
-			<output>AA9E935BA264C9FD0C07072AF8499CD7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D465F0FB195068CF2D60C7529400BE33A2364C1366A1AA9E</key>
-			<iv>AA9E935BA264C9FD0C07072AF8499CD7</iv>
-			<input>77D0522670E00BD7358D7D20BC882110</input>
-			<output>A22DF6CE12C75FB99F5159A1E3E4249F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4DEB1B5E6398E4AD8F4D319C86C7E18A3D6715B285458E01</key>
-			<iv>A22DF6CE12C75FB99F5159A1E3E4249F</iv>
-			<input>D6F96D22896A2574998EEBA57AC88C62</input>
-			<output>B356102A9158C569469E61093146B9F0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D73E5CA946860BDD3C1B21B6179F24E37BF974BBB40337F1</key>
-			<iv>B356102A9158C569469E61093146B9F0</iv>
-			<input>2E72F61FC21F57A09AD547F7251EEF70</input>
-			<output>AB2BABFB88D3C3ACE4CBA81E0E250AD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6B592CE635873DE197308A4D9F4CE74F9F32DCA5BA263D22</key>
-			<iv>AB2BABFB88D3C3ACE4CBA81E0E250AD3</iv>
-			<input>39B02C01155705C9BC67704F7301363C</input>
-			<output>8A4AC90E9095479F3C02DE7B08C01F1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1026EE98CAC684081D7A43430FD9A0D0A33002DEB2E6223E</key>
-			<iv>8A4AC90E9095479F3C02DE7B08C01F1C</iv>
-			<input>14F49DBECEE88DBB7B7FC27EFF41B9E9</input>
-			<output>62E4E3C43938D014D90C4A1D8CD09639</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>20972278E7C0FFC17F9EA08736E170C47A3C48C33E36B407</key>
-			<iv>62E4E3C43938D014D90C4A1D8CD09639</iv>
-			<input>56EFB0EA336A674930B1CCE02D067BC9</input>
-			<output>5E8EB865BFC1999D57A67280E37CA129</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2BEE1A1965A7F17C211018E28920E9592D9A3A43DD4A152E</key>
-			<iv>5E8EB865BFC1999D57A67280E37CA129</iv>
-			<input>9CF6F073F2F0C7CB0B79386182670EBD</input>
-			<output>D3B98A4562FAB47ED3D09C55E75EE51B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB85E491647FD6ACF2A992A7EBDA5D27FE4AA6163A14F035</key>
-			<iv>D3B98A4562FAB47ED3D09C55E75EE51B</iv>
-			<input>61964EF472752F21C06BFE8801D827D0</input>
-			<output>CF3D65AEEDD747416AF436A3B909828F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E94E6286941EC36D3D94F709060D1A6694BE90B5831D72BA</key>
-			<iv>CF3D65AEEDD747416AF436A3B909828F</iv>
-			<input>6C0B536EA1099A4202CB8617F06115C1</input>
-			<output>5DB0625B34C01C47490B5200E8A205FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F5D756E568CA6BA06024955232CD0621DDB5C2B56BBF7746</key>
-			<iv>5DB0625B34C01C47490B5200E8A205FC</iv>
-			<input>08D5CD9945D190AB1C993463FCD4A8CD</input>
-			<output>771B5C66F79E262FAAC6F92F128669CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>462C74E6E222DE77173FC934C553200E77733B9A79391E8D</key>
-			<iv>771B5C66F79E262FAAC6F92F128669CB</iv>
-			<input>5628EC55D7AB7634B3FB22038AE8B5D7</input>
-			<output>31C436E7CA7343A93AA0B74A38CCDAC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5062F2489F4C68FE26FBFFD30F2063A74DD38CD041F5C44D</key>
-			<iv>31C436E7CA7343A93AA0B74A38CCDAC0</iv>
-			<input>F279C45DBD75C458164E86AE7D6EB689</input>
-			<output>845320B41FD6F1D4DBB36D19D8A4A268</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5A27EC509FED17B6A2A8DF6710F692739660E1C999516625</key>
-			<iv>845320B41FD6F1D4DBB36D19D8A4A268</iv>
-			<input>7C0CB5E4FFE703260A451E1800A17F48</input>
-			<output>D8F9FB52BE1B342D6FBBB8A7FCDEFD89</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E925EC8E99BF11E97A512435AEEDA65EF9DB596E658F9BAC</key>
-			<iv>D8F9FB52BE1B342D6FBBB8A7FCDEFD89</iv>
-			<input>187F3648643AF8E6B30200DE0652065F</input>
-			<output>240647A32D765031C79D8893CC19EBA9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5574034BCE64FADD5E576396839BF66F3E46D1FDA9967005</key>
-			<iv>240647A32D765031C79D8893CC19EBA9</iv>
-			<input>AF808097E0C68C8FBC51EFC557DBEB34</input>
-			<output>2A3805A7D773F9C00635779752C9CCE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D842A9983BBDAA5E746F663154E80FAF3873A66AFB5FBCE2</key>
-			<iv>2A3805A7D773F9C00635779752C9CCE7</iv>
-			<input>D44486CCC61C68588D36AAD3F5D95083</input>
-			<output>2219F0C7A805BEC4A4931F84CBFFC598</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD622302BD70E2CD567696F6FCEDB16B9CE0B9EE30A0797A</key>
-			<iv>2219F0C7A805BEC4A4931F84CBFFC598</iv>
-			<input>67DA1BC4F2BC2F3315208A9A86CD4893</input>
-			<output>8B1F4353CF6969888BBD6654AB65C2A8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80A1D0CA7667F291DD69D5A53384D8E3175DDFBA9BC5BBD2</key>
-			<iv>8B1F4353CF6969888BBD6654AB65C2A8</iv>
-			<input>D114FDA8E61BEAC44DC3F3C8CB17105C</input>
-			<output>B6F0C0F016A1FA033C37D1128D9B2EF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2C9B755C3B8B44416B991555252522E02B6A0EA8165E9521</key>
-			<iv>B6F0C0F016A1FA033C37D1128D9B2EF3</iv>
-			<input>738DBCE3EE7E70EAAC3AA5964DECB6D0</input>
-			<output>14FB0A67CB0729CA25152581D8C3FEEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5D05BDFBF482E4D37F621F32EE220B2A0E7F2B29CE9D6BCE</key>
-			<iv>14FB0A67CB0729CA25152581D8C3FEEF</iv>
-			<input>D3186497981F294B719EC8A7CF09A092</input>
-			<output>14C988C52C7ED50EBD10219F1F58C213</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9E044D195FA8557C6BAB97F7C25CDE24B36F0AB6D1C5A9DD</key>
-			<iv>14C988C52C7ED50EBD10219F1F58C213</iv>
-			<input>C062585284FDE540C301F0E2AB2AB1AF</input>
-			<output>1FE7E153E69F95F102624ACEB9067FA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2B116B6F1FD581C6744C76A424C34BD5B10D407868C3D67C</key>
-			<iv>1FE7E153E69F95F102624ACEB9067FA1</iv>
-			<input>F18294D40CAA674DB5152676407DD4BA</input>
-			<output>AB43B2C61C9F23B96EFE293C6730A98F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EAF1AFBDD2CEDB9ADF0FC462385C686CDFF369440FF37FF3</key>
-			<iv>AB43B2C61C9F23B96EFE293C6730A98F</iv>
-			<input>7D465730C5422413C1E0C4D2CD1B5A5C</input>
-			<output>B1413F447CA81C678287EE2366544547</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4FA6C7DA7A84D4CB6E4EFB2644F4740B5D74876769A73AB4</key>
-			<iv>B1413F447CA81C678287EE2366544547</iv>
-			<input>C7BFA1BFA26828F7A5576867A84A0F51</input>
-			<output>7AE90F988557F3A41BBDB4B69C5FF56A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C9B0E3C7CEF4003014A7F4BEC1A387AF46C933D1F5F8CFDE</key>
-			<iv>7AE90F988557F3A41BBDB4B69C5FF56A</iv>
-			<input>5173C32806105AD18616241DB470D4FB</input>
-			<output>F2EF675645D284F042FAEBE87AE3ECAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DB855274F6CC030BE64893E88471035F0433D8398F1B2370</key>
-			<iv>F2EF675645D284F042FAEBE87AE3ECAE</iv>
-			<input>6DF6B7F917B2F8431235B1B33838033B</input>
-			<output>30D4F068BC2FDEC79CF81A4FA641A495</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F37DBF11472A4F87D69C6380385EDD9898CBC276295A87E5</key>
-			<iv>30D4F068BC2FDEC79CF81A4FA641A495</iv>
-			<input>F4C98D268B7D175728F8ED65B1E64C8C</input>
-			<output>0CEB234560B935E5B08C7EA2AA4A962D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A2F5A0827B2F861DA7740C558E7E87D2847BCD4831011C8</key>
-			<iv>0CEB234560B935E5B08C7EA2AA4A962D</iv>
-			<input>9873E312B815DC81E952E5196098B7E6</input>
-			<output>7BED84EFC02836F6D165AD27DEEF2B21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9C815F2A4EC42D02A19AC42A98CFDE8BF92211F35DFF3AE9</key>
-			<iv>7BED84EFC02836F6D165AD27DEEF2B21</iv>
-			<input>D8765DE55131DC4186AE05226976D563</input>
-			<output>C36FEDCB97DA734243A20C49D5942DD1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9A12CC40F3C185AA62F529E10F15ADC9BA801DBA886B1738</key>
-			<iv>C36FEDCB97DA734243A20C49D5942DD1</iv>
-			<input>18B252CEB124BD110693936ABD05A8A8</input>
-			<output>94C9A6BDB97522FACEE2E869C3C48FB0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F08C23DDC110ED40F63C8F5CB6608F337462F5D34BAF9888</key>
-			<iv>94C9A6BDB97522FACEE2E869C3C48FB0</iv>
-			<input>154FF810E3F0CE586A9EEF9D32D168EA</input>
-			<output>AFC8D15F80F19F942FCA22DA0DF79937</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B1224FF7293C5DC559F45E03369110A75BA8D709465801BF</key>
-			<iv>AFC8D15F80F19F942FCA22DA0DF79937</iv>
-			<input>259A6B069CA3273C41AE6C2AE82CB085</input>
-			<output>5AADC1716B2ED4FC7CA9825A32EA2FB1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D29A829813CC5B4103599F725DBFC45B2701555374B22E0E</key>
-			<iv>5AADC1716B2ED4FC7CA9825A32EA2FB1</iv>
-			<input>CB78C574D9B1B9EF63B8CD6F3AF00684</input>
-			<output>EACB8D3001640F340DFB459CD8D162BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1049116DD39F7B30E99212425CDBCB6F2AFA10CFAC634CB3</key>
-			<iv>EACB8D3001640F340DFB459CD8D162BD</iv>
-			<input>DF461D135DE19FA2C2D393F5C0532071</input>
-			<output>9115EB33739C04AAE22765621A8852C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A129CBBF89658D977887F9712F47CFC5C8DD75ADB6EB1E76</key>
-			<iv>9115EB33739C04AAE22765621A8852C5</iv>
-			<input>E32AF908A190B95FB160DAD25AFAF6A7</input>
-			<output>B171D8AC24C6873B54F42D5DAC51ED34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE7226D88DFA48DFC9F621DD0B8148FE9C2958F01ABAF342</key>
-			<iv>B171D8AC24C6873B54F42D5DAC51ED34</iv>
-			<input>0A669BB00E2123B54F5BED67049FC548</input>
-			<output>CFFC81B70593A36D022248D1CBE7FC58</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C907918503B2C1C0060AA06A0E12EB939E0B1021D15D0F1A</key>
-			<iv>CFFC81B70593A36D022248D1CBE7FC58</iv>
-			<input>E9B1E6FA006D4CEE2775B75D8E48891F</input>
-			<output>0B3B02FC8A8D677B8077D7FDF9EB0396</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E468A0560DB602C10D31A296849F8CE81E7CC7DC28B60C8C</key>
-			<iv>0B3B02FC8A8D677B8077D7FDF9EB0396</iv>
-			<input>AA3626C69662AE442D6F31D30E04C301</input>
-			<output>2C78C31D4B2EBAEF54CB6D04C4375196</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB8BCD80D3E35CCB2149618BCFB136074AB7AAD8EC815D1A</key>
-			<iv>2C78C31D4B2EBAEF54CB6D04C4375196</iv>
-			<input>5017BD9EB52514180FE36DD6DE555E0A</input>
-			<output>67D2DD54A0881186DFA6A608C036CE61</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7065D92686BA37E9469BBCDF6F39278195110CD02CB7937B</key>
-			<iv>67D2DD54A0881186DFA6A608C036CE61</iv>
-			<input>6CBC1C2DAA3A7F7B9BEE14A655596B22</input>
-			<output>62163C88A40E7CFF7522A3DC32F30BCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0B4AE9D6C9A5A92248D8057CB375B7EE033AF0C1E4498B4</key>
-			<iv>62163C88A40E7CFF7522A3DC32F30BCF</iv>
-			<input>0F6C44EE5E2587A790D177BBEA206D7B</input>
-			<output>B84A631DE451F109C48785DE3D4099C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DDCDB4F73AA0C8789CC7E34A2F66AA7724B42AD223040176</key>
-			<iv>B84A631DE451F109C48785DE3D4099C2</iv>
-			<input>EE1EA5C5340C2F263D791A6A563A92EA</input>
-			<output>D438E983DB81DA9341CE1AC45F4E7E52</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>813604E941CBDF6448FF0AC9F4E770E4657A30167C4A7F24</key>
-			<iv>D438E983DB81DA9341CE1AC45F4E7E52</iv>
-			<input>08E1F94874432DBD5CFBB01E7B6B171C</input>
-			<output>0E1C069CB75D4EDF4243D1E6D7175425</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D64EB9DE5A3B546B46E30C5543BA3E3B2739E1F0AB5D2B01</key>
-			<iv>0E1C069CB75D4EDF4243D1E6D7175425</iv>
-			<input>CFCDC1C0EFE678FB5778BD371BF08B0F</input>
-			<output>CBC0ED542E26A1943926EF7897A79E97</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D1659785D1D551948D23E1016D9C9FAF1E1F0E883CFAB596</key>
-			<iv>CBC0ED542E26A1943926EF7897A79E97</iv>
-			<input>1FEA178A348CAE8B072B2E5B8BEE05FF</input>
-			<output>C743A7B60EB7C24867DA82AFF15ED18A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>05786C3E1FBE51864A6046B7632B5DE779C58C27CDA4641C</key>
-			<iv>C743A7B60EB7C24867DA82AFF15ED18A</iv>
-			<input>3A4EF6696CD26875D41DFBBBCE6B0012</input>
-			<output>EA23014227CF7B563AEFF86DB947FAC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CE1E5D5BF32BF0CAA04347F544E426B1432A744A74E39ED8</key>
-			<iv>EA23014227CF7B563AEFF86DB947FAC4</iv>
-			<input>DFDF9B4032986E90CB663165EC95A14C</input>
-			<output>EAF762B60A106C03B76742E69CEE385A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F8EAC01B3F7E925A4AB425434EF44AB2F44D36ACE80DA682</key>
-			<iv>EAF762B60A106C03B76742E69CEE385A</iv>
-			<input>2BDC6EAB1D86311D36F49D40CC556290</input>
-			<output>E6CC0491C3509240ED848AE304CC3385</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF5AE8B244244B4BAC7821D28DA4D8F219C9BC4FECC19507</key>
-			<iv>E6CC0491C3509240ED848AE304CC3385</iv>
-			<input>81D4E28E02717AB347B028A97B5AD911</input>
-			<output>11EE9D22AC798AB5FEF6C6188845F425</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C6538235111334FBD96BCF021DD5247E73F7A5764846122</key>
-			<iv>11EE9D22AC798AB5FEF6C6188845F425</iv>
-			<input>DDE402413BB09DFBE33FD09115357804</input>
-			<output>3F054911089500FD2CD0645DBFE2A8D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FAC914FA6B6CA1AB8293F5E1294852BACBEF1E0ADB66C9F1</key>
-			<iv>3F054911089500FD2CD0645DBFE2A8D3</iv>
-			<input>345343E023AC39FFA6AC2CD93A7D92E4</input>
-			<output>7538E78DE8FC09D203010C61422E6B5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1E62F54271EA4374F7AB126CC1B45B68C8EE126B9948A2AB</key>
-			<iv>7538E78DE8FC09D203010C61422E6B5A</iv>
-			<input>0EC4357C476EB76AE4ABE1B81A86E2DF</input>
-			<output>3A4D0093A2B7FF807BAA6A815538507E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5AD3B884BE5653BBCDE612FF6303A4E8B34478EACC70F2D5</key>
-			<iv>3A4D0093A2B7FF807BAA6A815538507E</iv>
-			<input>F59FD86893B7DF7244B14DC6CFBC10CF</input>
-			<output>2C2FD7DF94FDDC2CA1C05EF5878583FF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B9039E1678902ECCE1C9C520F7FE78C41284261F4BF5712A</key>
-			<iv>2C2FD7DF94FDDC2CA1C05EF5878583FF</iv>
-			<input>4600E6CCD65B575AE3D02692C6C67D77</input>
-			<output>59C9FA2E4A2227C3E5B831899A3CCBFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>394A8245256D72B8B8003F0EBDDC5F07F73C1796D1C9BAD7</key>
-			<iv>59C9FA2E4A2227C3E5B831899A3CCBFD</iv>
-			<input>3030D8E24F7BEA0580491C535DFD5C74</input>
-			<output>DEAFC4A07A3FB5D5AA09FF6A2515AB4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2496931DFCFF2E7166AFFBAEC7E3EAD25D35E8FCF4DC119D</key>
-			<iv>DEAFC4A07A3FB5D5AA09FF6A2515AB4A</iv>
-			<input>63CD1CC241B267791DDC1158D9925CC9</input>
-			<output>B1B0AED275FCE241B5726E943B37C130</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53CBA419E5CED1C8D71F557CB21F0893E8478668CFEBD0AD</key>
-			<iv>B1B0AED275FCE241B5726E943B37C130</iv>
-			<input>85F4E06A05C8704A775D37041931FFB9</input>
-			<output>B0DFD3EF3AF538791E69AF59CAA7B8CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DFB0E5440EB582F667C0869388EA30EAF62E2931054C6861</key>
-			<iv>B0DFD3EF3AF538791E69AF59CAA7B8CC</iv>
-			<input>B7BDA6C504797C8B8C7B415DEB7B533E</input>
-			<output>220F810B0D5A9ED8794932D0BF6150D6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B26A70894070BC9B45CF079885B0AE328F671BE1BA2D38B7</key>
-			<iv>220F810B0D5A9ED8794932D0BF6150D6</iv>
-			<input>0113567BFAC19EB86DDA95CD4EC53E6D</input>
-			<output>56C77682CA1A041B312061F3FB9A1A59</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>36EDA74B7133D5871308711A4FAAAA29BE477A1241B722EE</key>
-			<iv>56C77682CA1A041B312061F3FB9A1A59</iv>
-			<input>4D39AD87258968FA8487D7C23143691C</input>
-			<output>4F18208E63B2D84CC7A0707617DD7B63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F7589312CE997AFE5C1051942C18726579E70A64566A598D</key>
-			<iv>4F18208E63B2D84CC7A0707617DD7B63</iv>
-			<input>1B82F5C849E0F965C1B53459BFAAAF79</input>
-			<output>85CE0310DEFB36474B38C4347D7EEE8B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F770FC7B1E183E31D9DE5284F2E3442232DFCE502B14B706</key>
-			<iv>85CE0310DEFB36474B38C4347D7EEE8B</iv>
-			<input>7B56EBC47E780FB000286F69D08144CF</input>
-			<output>CB5AE674DB1426618F577BBD63309EA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>79AD3040CCC9FD521284B4F029F76243BD88B5ED482429A2</key>
-			<iv>CB5AE674DB1426618F577BBD63309EA4</iv>
-			<input>47A5B213BC3DF61B8EDDCC3BD2D1C363</input>
-			<output>1E26AB2D8B156913995FCAC1ABD99D68</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>10BB9597F823B61F0CA21FDDA2E20B5024D77F2CE3FDB4CA</key>
-			<iv>1E26AB2D8B156913995FCAC1ABD99D68</iv>
-			<input>D31FC11C9FD6E7F86916A5D734EA4B4D</input>
-			<output>84E0E24F155E5EFCA9AE9C5F2F26BD25</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1264A2AD33800FF8842FD92B7BC55AC8D79E373CCDB09EF</key>
-			<iv>84E0E24F155E5EFCA9AE9C5F2F26BD25</iv>
-			<input>F77FE11AE4BEB403F19DDFBD2B1BB6E0</input>
-			<output>B41973B0D807A43A822EB57555B818D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A19ABDD25ED272693C5B8E226FBBF1960F5756069963113B</key>
-			<iv>B41973B0D807A43A822EB57555B818D4</iv>
-			<input>FECAAA8EA9C1883640BCF7F88DEA7296</input>
-			<output>949634E68FB9086AE623EAF5E867D4A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD904ECCC94F64D0A8CDBAC4E002F9FCE974BCF37104C59E</key>
-			<iv>949634E68FB9086AE623EAF5E867D4A5</iv>
-			<input>E8A413C2ADB97D387C0AF31E979D16B9</input>
-			<output>96BE2B618F8A961E5DC892F429A8B6FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1B83C20396D7D0D33E7391A56F886FE2B4BC2E0758AC7362</key>
-			<iv>96BE2B618F8A961E5DC892F429A8B6FC</iv>
-			<input>1408434BF0C3432BC6138CCF5F98B403</input>
-			<output>C0A9596F56E48F459D2C405F47DCA44C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B04C71DBEA60DB15FEDAC8CA396CE0A729906E581F70D72E</key>
-			<iv>C0A9596F56E48F459D2C405F47DCA44C</iv>
-			<input>5E7F070C7EE8A852ABCFB3D87CB70BC6</input>
-			<output>A4739C93911C72C959E89544500843BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9BFC8026BC1D965B5AA95459A870926E7078FB1C4F789493</key>
-			<iv>A4739C93911C72C959E89544500843BD</iv>
-			<input>718C23D1F537A6E72BB0F1FD567D4D4E</input>
-			<output>4D581200B1E446CC3AD306138BF2898B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FEA9DF8F4FECB3ED17F146591994D4A24AABFD0FC48A1D18</key>
-			<iv>4D581200B1E446CC3AD306138BF2898B</iv>
-			<input>E4DD231D871795E065555FA9F3F125B6</input>
-			<output>E53EFC19D8048073167B1473C5EBA6D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62DF036D6F96D937F2CFBA40C19054D15CD0E97C0161BBC1</key>
-			<iv>E53EFC19D8048073167B1473C5EBA6D9</iv>
-			<input>9AB809114F10C3FD9C76DCE2207A6ADA</input>
-			<output>BDB0C3D9732DE5813C4C72CF01FF5194</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CFEF04F0343587004F7F7999B2BDB150609C9BB3009EEA55</key>
-			<iv>BDB0C3D9732DE5813C4C72CF01FF5194</iv>
-			<input>B4CFE094F8B4EEE5AD30079D5BA35E37</input>
-			<output>D00B5B980D8B10DF3D7D4C0BE5975C1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CBF2C475C11FA6B89F742201BF36A18F5DE1D7B8E509B649</key>
-			<iv>D00B5B980D8B10DF3D7D4C0BE5975C1C</iv>
-			<input>34B39728291953DC041DC085F52A21B8</input>
-			<output>ADF5CDFDCC23AD8AD111454B2DB69013</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C96820A08056F7C23281EFFC73150C058CF092F3C8BF265A</key>
-			<iv>ADF5CDFDCC23AD8AD111454B2DB69013</iv>
-			<input>4C8152CCAA0A23AC029AE4D54149517A</input>
-			<output>F070979F68BAEBBD6CE8CE8A549C0E12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>61A6BBDB58B4C9D4C2F178631BAFE7B8E0185C799C232848</key>
-			<iv>F070979F68BAEBBD6CE8CE8A549C0E12</iv>
-			<input>0B6AF20EF8550A1BA8CE9B7BD8E23E16</input>
-			<output>8A75D276384A4F468B459466A304D418</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D3EC560DE8B1BBEE4884AA1523E5A8FE6B5DC81F3F27FC50</key>
-			<iv>8A75D276384A4F468B459466A304D418</iv>
-			<input>259A18BABFD09145B24AEDD6B005723A</input>
-			<output>B7C04F66EB771CBD97F948098E23C655</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>16FE806749FDDF8CFF44E573C892B443FCA48016B1043A05</key>
-			<iv>B7C04F66EB771CBD97F948098E23C655</iv>
-			<input>E00B5E4B3D9E64D0C512D66AA14C6462</input>
-			<output>29FB08289BD19BCC0FEB0F433D5CACEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9CC345922C8912D5D6BFED5B53432F8FF34F8F558C5896EB</key>
-			<iv>29FB08289BD19BCC0FEB0F433D5CACEE</iv>
-			<input>07BAA266554EAE0C8A3DC5F56574CD59</input>
-			<output>495C245E2F3CC52499B9C1AD7C4484BA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7DDDCF7DE759FDEC9FE3C9057C7FEAAB6AF64EF8F01C1251</key>
-			<iv>495C245E2F3CC52499B9C1AD7C4484BA</iv>
-			<input>2E5360D5563EB7D4E11E8AEFCBD0EF39</input>
-			<output>68267051421D3AFA19A2E43D501B940B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4BA2EAD4106DD4B7F7C5B9543E62D0517354AAC5A007865A</key>
-			<iv>68267051421D3AFA19A2E43D501B940B</iv>
-			<input>050EBC6942F92D95367F25A9F734295B</input>
-			<output>1781558A2A8B7C29AC82D6610B67E3CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CFCCD4ECD20E051CE044ECDE14E9AC78DFD67CA4AB606595</key>
-			<iv>1781558A2A8B7C29AC82D6610B67E3CF</iv>
-			<input>1AC90B21EB197E26846E3E38C263D1AB</input>
-			<output>BF5FE87A2E882A64493850EC3A0E93A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C9EA5F992C77DD9C5F1B04A43A61861C96EE2C48916EF630</key>
-			<iv>BF5FE87A2E882A64493850EC3A0E93A5</iv>
-			<input>58F997704D085DC506268B75FE79D880</input>
-			<output>8F43A961964E3452094E8E71295177CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1136648F9E0A53C3D058ADC5AC2FB24E9FA0A239B83F81FD</key>
-			<iv>8F43A961964E3452094E8E71295177CD</iv>
-			<input>086041AB29E423EFD8DC3B16B27D8E5F</input>
-			<output>BF69230BAB6200B7828DC04A13B88E83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>47040E2D6DFBE3006F318ECE074DB2F91D2D6273AB870F7E</key>
-			<iv>BF69230BAB6200B7828DC04A13B88E83</iv>
-			<input>57865A8650D3202056326AA2F3F1B0C3</input>
-			<output>A012FAEE65E2C4F0AC22CB63AB75E35D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>868F8310E79C0473CF23742062AF7609B10FA91000F2EC23</key>
-			<iv>A012FAEE65E2C4F0AC22CB63AB75E35D</iv>
-			<input>F3ABB47DAE94B82EC18B8D3D8A67E773</input>
-			<output>F35BBD3C516F86384DA3BB6B5CCC8B37</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C71ADCE480714DA3C78C91C33C0F031FCAC127B5C3E6714</key>
-			<iv>F35BBD3C516F86384DA3BB6B5CCC8B37</iv>
-			<input>CDB3E57FA6DDFF9FDAFE2EDEAF9B10A9</input>
-			<output>627A15E65B37C2B9575E8A781271AE64</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B603092BC5FD004F5E02DCFA68F73288ABF298034E4FC970</key>
-			<iv>627A15E65B37C2B9575E8A781271AE64</iv>
-			<input>7E04F9A0F723DF00EA72A4E58DFA1495</input>
-			<output>15427D27E783A5476345C83F3E8A3319</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4DB5A9F825C5E8C24B40A1DD8F7497CFC8B7503C70C5FA69</key>
-			<iv>15427D27E783A5476345C83F3E8A3319</iv>
-			<input>842B94BE25E8747BFBB6A0D3E038E88D</input>
-			<output>35812AFD1A90B0B7D52B45EAD9CAF083</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D4F2CCC0734F9ACD7EC18B2095E427781D9C15D6A90F0AEA</key>
-			<iv>35812AFD1A90B0B7D52B45EAD9CAF083</iv>
-			<input>3FAB7D4C741B8CD499476538568A720F</input>
-			<output>C1A59CD3D9E6650F0D16947D26BFC20D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CB28A8313E133469BF6417F34C024277108A81AB8FB0C8E7</key>
-			<iv>C1A59CD3D9E6650F0D16947D26BFC20D</iv>
-			<input>37AC888DCE5CDFD31FDA64F14D5CAEA4</input>
-			<output>CB0313E9A046711866CA65702A45CDB6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C5BFEB8246ABAF467467041AEC44336F7640E4DBA5F50551</key>
-			<iv>CB0313E9A046711866CA65702A45CDB6</iv>
-			<input>326C9E3EB49138ED0E9743B378B89B2F</input>
-			<output>ACE8FC6C6ABBC8124FE35C7976585DF6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>110891F8FDF0F254D88FF87686FFFB7D39A3B8A2D3AD58A7</key>
-			<iv>ACE8FC6C6ABBC8124FE35C7976585DF6</iv>
-			<input>964239EB84C57F61D4B77A7ABB5B5D12</input>
-			<output>0762EF13B80A8B77D04AF797B67D5AA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EFF558976586AC91DFED17653EF5700AE9E94F3565D00201</key>
-			<iv>0762EF13B80A8B77D04AF797B67D5AA6</iv>
-			<input>5ECA17ADFE3C2C21FEFDC96F98765EC5</input>
-			<output>B60CC9CD9DE93E2A6FB0B59369B1628E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4494A36EABE3555E69E1DEA8A31C4E208659FAA60C61608F</key>
-			<iv>B60CC9CD9DE93E2A6FB0B59369B1628E</iv>
-			<input>7A659E803888296BAB61FBF9CE65F9CF</input>
-			<output>73258A43C7DA66FFE4DC9384FC7A60C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1780249B48B8F7561AC454EB64C628DF62856922F01B004E</key>
-			<iv>73258A43C7DA66FFE4DC9384FC7A60C1</iv>
-			<input>8D9C3DCF612320B4531487F5E35BA208</input>
-			<output>F0F5D51C06F2D900CC4BE8D3512CA4B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9FF03D1E23BD9959EA3181F76234F1DFAECE81F1A137A4F8</key>
-			<iv>F0F5D51C06F2D900CC4BE8D3512CA4B6</iv>
-			<input>F002AEC878B80A0B887019856B056E0F</input>
-			<output>E1321C52A51D9345296A0EF2A9DC9CC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6042967162EDA50B0B039DA5C729629A87A48F0308EB383D</key>
-			<iv>E1321C52A51D9345296A0EF2A9DC9CC5</iv>
-			<input>C5EA4A519D9BAF8FFFB2AB6F41503C52</input>
-			<output>ED79D8FC9C60B583E29D0A65A6A5F321</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>250C416206B9D0A9E67A45595B49D71965398566AE4ECB1C</key>
-			<iv>ED79D8FC9C60B583E29D0A65A6A5F321</iv>
-			<input>34D771B44B3943DE454ED713645475A2</input>
-			<output>7A08F9096109535C262407EB323EF7BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6357BC1B7B12F1C09C72BC503A408445431D828D9C703CA0</key>
-			<iv>7A08F9096109535C262407EB323EF7BC</iv>
-			<input>60A1EEAE2B16841A465BFD797DAB2169</input>
-			<output>24C7F1A39F8B2F03C256F5C59B69C31A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18BF29D147A9675BB8B54DF3A5CBAB46814B77480719FFBA</key>
-			<iv>24C7F1A39F8B2F03C256F5C59B69C31A</iv>
-			<input>BFD7B314F959298B7BE895CA3CBB969B</input>
-			<output>7DDA5DF3CC7C69AA490FB597888396B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8B13C48FBABCD19C56F100069B7C2ECC844C2DF8F9A6908</key>
-			<iv>7DDA5DF3CC7C69AA490FB597888396B2</iv>
-			<input>23F8A60BD2354901F00E1599BC02AA42</input>
-			<output>04CEB4BE252293A822C77B9C4C27822B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF275C4D9FC54BC0C1A1A4BE4C955144EA83B943C3BDEB23</key>
-			<iv>04CEB4BE252293A822C77B9C4C27822B</iv>
-			<input>2182C0577EAA3C2A57966005646E86D9</input>
-			<output>0F24034642E351984620BB2647F5D649</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>40B459144A6415C2CE85A7F80E7600DCACA3026584483D6A</key>
-			<iv>0F24034642E351984620BB2647F5D649</iv>
-			<input>F59318D1D3D9A9E0FF930559D5A15E02</input>
-			<output>DB98808C46668D79AB059C5554CEEB1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D5A01AB42D709E6A151D277448108DA507A69E30D086D670</key>
-			<iv>DB98808C46668D79AB059C5554CEEB1A</iv>
-			<input>49CF142E621D1A8D951443A067148BA8</input>
-			<output>15C32FE5E9BCA5F8D09EA2E4D145FE3D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8191AB3C11B4B72700DE0891A1AC285DD7383CD401C3284D</key>
-			<iv>15C32FE5E9BCA5F8D09EA2E4D145FE3D</iv>
-			<input>5C1E9B721987B8BF5431B1883CC4294D</input>
-			<output>AA7CA217D0514CA4F20C50293121E8D8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>69D24875B8A5B5D1AAA2AA8671FD64F925346CFD30E2C095</key>
-			<iv>AA7CA217D0514CA4F20C50293121E8D8</iv>
-			<input>8239553D8FB88E17E843E349A91102F6</input>
-			<output>C4068B901CB07904F843BF6F3CDC4FF8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>12BAE3B5B2C03E746EA421166D4D1DFDDD77D3920C3E8F6D</key>
-			<iv>C4068B901CB07904F843BF6F3CDC4FF8</iv>
-			<input>80D797C671D3BFF67B68ABC00A658BA5</input>
-			<output>9F835417C4D622DB52651897DC23E1C3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A0CFD7FA1284652F1277501A99B3F268F12CB05D01D6EAE</key>
-			<iv>9F835417C4D622DB52651897DC23E1C3</iv>
-			<input>C36513D78FBBFDCC08B61ECA13E87826</input>
-			<output>0156C998E85BE92F0EF998442204EB19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7829D1FE113103B0F071BC9941C0D60981EB5341F21985B7</key>
-			<iv>0156C998E85BE92F0EF998442204EB19</iv>
-			<input>000894F1AF39A67562252C81B01945E2</input>
-			<output>6A554057C0A3EB723B693258BC5E899D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D719D37FC9087D2F9A24FCCE81633D7BBA8261194E470C2A</key>
-			<iv>6A554057C0A3EB723B693258BC5E899D</iv>
-			<input>B92413276BF142D0AF300281D8397E9F</input>
-			<output>395F80E405813D97576954A23C77C2CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>39E173517A321A5AA37B7C2A84E200ECEDEB35BB7230CEE0</key>
-			<iv>395F80E405813D97576954A23C77C2CA</iv>
-			<input>AA95F2BD255DBE23EEF8A02EB33A6775</input>
-			<output>1B1BC5D3DABD536E91177EF1BF2B7E39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE1FB67D907C597BB860B9F95E5F53827CFC4B4ACD1BB0D9</key>
-			<iv>1B1BC5D3DABD536E91177EF1BF2B7E39</iv>
-			<input>985E81E0BF5FF6EFD7FEC52CEA4E4321</input>
-			<output>20F42326749CC7CCD54188DEA46F4EC1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>41D333EC5E537B8098949ADF2AC3944EA9BDC3946974FE18</key>
-			<iv>20F42326749CC7CCD54188DEA46F4EC1</iv>
-			<input>901FD7D22F220608AFCC8591CE2F22FB</input>
-			<output>AFFC6F2668097B58A0CFF619A3FDD1CB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6E392EF75572C6A3768F5F942CAEF160972358DCA892FD3</key>
-			<iv>AFFC6F2668097B58A0CFF619A3FDD1CB</iv>
-			<input>45AEB51360C50AB1B730A1032B0457EA</input>
-			<output>1B75CF440CE8521069599B7889F21C1D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>47C82CF46472D3732C1D3ABD4E22BD06602BAEF5437B33CE</key>
-			<iv>1B75CF440CE8521069599B7889F21C1D</iv>
-			<input>7E931056CC33D22CB12BBE1B1125FF19</input>
-			<output>F6079ADBAA8D28F371F0156B170FB7BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DDA62A9922B04902DA1AA066E4AF95F511DBBB9E54748473</key>
-			<iv>F6079ADBAA8D28F371F0156B170FB7BD</iv>
-			<input>2BE3DA337C9187109A6E066D46C29A71</input>
-			<output>7D2FC16B26971DDC20C6F7510C47B352</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>570C8CA5236A2E65A735610DC2388829311D4CCF58333721</key>
-			<iv>7D2FC16B26971DDC20C6F7510C47B352</iv>
-			<input>43596064590570F88AAAA63C01DA6767</input>
-			<output>5FBA845FB25FE6AE015E4E8A228ED645</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6CEA158ED663A4B7F88FE55270676E87304302457ABDE164</key>
-			<iv>5FBA845FB25FE6AE015E4E8A228ED645</iv>
-			<input>1E265F0AA9A20C603BE6992BF5098AD2</input>
-			<output>A729E250D736A43966DD0D9C461ECEC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AACCE3387C0DF35D5FA60702A751CABE569E0FD93CA32FA4</key>
-			<iv>A729E250D736A43966DD0D9C461ECEC0</iv>
-			<input>B08AAE113CCE6226C626F6B6AA6E57EA</input>
-			<output>A8192E964A74A6ABDB463ECFA483A1E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>207F19ABDA13F728F7BF2994ED256C158DD8311698208E47</key>
-			<iv>A8192E964A74A6ABDB463ECFA483A1E3</iv>
-			<input>858CF92E6B1793448AB3FA93A61E0475</input>
-			<output>060C7CCCD58E6348518161C7878AA71B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AB05AD81CF07091AF1B3555838AB0F5DDC5950D11FAA295C</key>
-			<iv>060C7CCCD58E6348518161C7878AA71B</iv>
-			<input>424D175035503C728B7AB42A1514FE32</input>
-			<output>8ECAA12830B0C5B4C6950E69AFD31B66</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3A8E1CC01464AF9B7F79F470081BCAE91ACC5EB8B079323A</key>
-			<iv>8ECAA12830B0C5B4C6950E69AFD31B66</iv>
-			<input>6E5A94391F1FE5A9918BB141DB63A681</input>
-			<output>65C3A891192324A7FA3C882B2C09CB8D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8004AB13CF38B3ED1ABA5CE11138EE4EE0F0D6939C70F9B7</key>
-			<iv>65C3A891192324A7FA3C882B2C09CB8D</iv>
-			<input>584E219335CA4642BA8AB7D3DB5C1C76</input>
-			<output>F29F8735A403414621F2100AF38A500C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D37BB962CFC53E77E825DBD4B53BAF08C102C6996FFAA9BB</key>
-			<iv>F29F8735A403414621F2100AF38A500C</iv>
-			<input>CCB996C23C627D4D537F127100FD8D9A</input>
-			<output>9C6A7655E25E9231E46C0D3B57C7FCAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C23B3C983C79179A744FAD8157653D39256ECBA2383D5510</key>
-			<iv>9C6A7655E25E9231E46C0D3B57C7FCAB</iv>
-			<input>5D727E12D3932F56114085FAF3BC29ED</input>
-			<output>6C5AA7364755AF599AB6F86EC8B24C52</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4462CD1DD817170C18150AB710309260BFD833CCF08F1942</key>
-			<iv>6C5AA7364755AF599AB6F86EC8B24C52</iv>
-			<input>D7A99C8F3BC37AD08659F185E46E0096</input>
-			<output>821D7EAC8FD041C0C8CF1011661FBB9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1BA52BEF2B010D169A08741B9FE0D3A0771723DD9690A2DC</key>
-			<iv>821D7EAC8FD041C0C8CF1011661FBB9E</iv>
-			<input>704F3525510FCC745FC7E6F2F3161A1A</input>
-			<output>44591D71D64FC38010E402874853E9BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C6A6818229CC65E6DE51696A49AF102067F3215ADEC34B60</key>
-			<iv>44591D71D64FC38010E402874853E9BC</iv>
-			<input>5D5769AE155C9F43DD03AA6D02CD68F0</input>
-			<output>E5647FF6C843543E484FC13B58A345B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>41F27DD5905B299C3B35169C81EC441E2FBCE06186600ED9</key>
-			<iv>E5647FF6C843543E484FC13B58A345B9</iv>
-			<input>ADF29030DFDFCCEE8754FC57B9974C7A</input>
-			<output>E6EA42E2F046D3ED75081A50770563D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3A8018855EDC80D2DDDF547E71AA97F35AB4FA31F1656D08</key>
-			<iv>E6EA42E2F046D3ED75081A50770563D1</iv>
-			<input>096F74717D5583477B726550CE87A94E</input>
-			<output>D75682FE37396887659E87895F1C6441</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6C94C2634142DA310A89D6804693FF743F2A7DB8AE790949</key>
-			<iv>D75682FE37396887659E87895F1C6441</iv>
-			<input>F1B527DD4935FBDE5614DAE61F9E5AE3</input>
-			<output>15755CFE84E113AA751E4D5BB098ABC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4BA407D7C6426C641FFC8A7EC272ECDE4A3430E31EE1A28E</key>
-			<iv>15755CFE84E113AA751E4D5BB098ABC7</iv>
-			<input>7C4433DCC314DBD72730C5B48700B655</input>
-			<output>B048F209CE1B1FAEC33392D2D8F326A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A56FD7BCEEA55474AFB478770C69F3708907A231C612842F</key>
-			<iv>B048F209CE1B1FAEC33392D2D8F326A1</iv>
-			<input>D40C7CD8D80C8C6CEECBD06B28E73810</input>
-			<output>8E1F4830F94004C286C39D0EC014A963</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0730B7B664CFD1E321AB3047F529F7B20FC43F3F06062D4C</key>
-			<iv>8E1F4830F94004C286C39D0EC014A963</iv>
-			<input>B16772FE8C8A573FA25F600A8A6A8597</input>
-			<output>3FB92771D2BE2D33C40AB0409998B229</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0A08E43B13C57EB41E1217362797DA81CBCE8F7F9F9E9F65</key>
-			<iv>3FB92771D2BE2D33C40AB0409998B229</iv>
-			<input>D4883476825EA2D30D38538D770AAF57</input>
-			<output>190106DE79836016C57A16BBBA6893D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>195B7E1B67872B0D071311E85E14BA970EB499C425F60CB7</key>
-			<iv>190106DE79836016C57A16BBBA6893D2</iv>
-			<input>3B8F4F140FDFFB6B13539A20744255B9</input>
-			<output>C06398537B4F534203D57184543E6516</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE0C4A8A9B581D16C77089BB255BE9D50D61E84071C869A1</key>
-			<iv>C06398537B4F534203D57184543E6516</iv>
-			<input>E50D127AE258061DA7573491FCDF361B</input>
-			<output>FF615CCC9F2D3DBB3074C835ECE4224E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>662A224DAB1233C83811D577BA76D46E3D1520759D2C4BEF</key>
-			<iv>FF615CCC9F2D3DBB3074C835ECE4224E</iv>
-			<input>347C976D20470968D82668C7304A2EDE</input>
-			<output>B5FB1BCCBC838B87FDB10FEFE6CDC45B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4F3B47D9CC8BA798DEACEBB06F55FE9C0A42F9A7BE18FB4</key>
-			<iv>B5FB1BCCBC838B87FDB10FEFE6CDC45B</iv>
-			<input>BC276D1002C5DD8292D9963037DA89B1</input>
-			<output>151F88A44A76568FAC756011B827778D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7EA3C03193B737DE98F5461F4C8309666CD14F8BC3C6F839</key>
-			<iv>151F88A44A76568FAC756011B827778D</iv>
-			<input>BCD9054596EE644E8A50744C0F7F8DA7</input>
-			<output>C1B0B6FDD717881442496794A2C890F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C4D94D5C4169EE4B5945F0E29B9481722E98281F610E68CB</key>
-			<iv>C1B0B6FDD717881442496794A2C890F2</iv>
-			<input>3D7F68D3014F3BEDBA7A8D6DD2DED995</input>
-			<output>181100A04881DCF9813E4A22C6C1BB3B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A9A9483D9FC46DD34154F042D3155D8BAFA6623DA7CFD3F0</key>
-			<iv>181100A04881DCF9813E4A22C6C1BB3B</iv>
-			<input>0FE2E2A97DFFB4966D700561DEAD8398</input>
-			<output>AA4BEC4007C38C7B86B6F9EED33E5EB1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5F08A3C09F4AE90BEB1F1C02D4D6D1F029109BD374F18D41</key>
-			<iv>AA4BEC4007C38C7B86B6F9EED33E5EB1</iv>
-			<input>C2392264CE43C57AF6A1EBFD008E84D8</input>
-			<output>A0756CCDA72462CD89DF9990C0FE6676</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6A1A4F2D25DFC9F94B6A70CF73F2B33DA0CF0243B40FEB37</key>
-			<iv>A0756CCDA72462CD89DF9990C0FE6676</iv>
-			<input>A6650A3432CCA74A3512ECEDBA9520F2</input>
-			<output>F5044AECC6F35C99FCDBA26DD15E1474</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B475174A46D0CDC2BE6E3A23B501EFA45C14A02E6551FF43</key>
-			<iv>F5044AECC6F35C99FCDBA26DD15E1474</iv>
-			<input>07967DE17DEB720CDE6F5867630F043B</input>
-			<output>60645B559E7321D7FA8A3F925CFC0FA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8DBB9D8A4A2E7E61DE0A61762B72CE73A69E9FBC39ADF0E7</key>
-			<iv>60645B559E7321D7FA8A3F925CFC0FA4</iv>
-			<input>D8D3FD2077545DD039CE8AC00CFEB3A3</input>
-			<output>C4C6FD53A2572D643AA631FB85B84D0B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>97D34E4B3B9E081A1ACC9C258925E3179C38AE47BC15BDEC</key>
-			<iv>C4C6FD53A2572D643AA631FB85B84D0B</iv>
-			<input>F31D8F3C8AC67E081A68D3C171B0767B</input>
-			<output>E1A0E460E2D1483FE954F26F45CCE7A0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5372C72A4ABF72D9FB6C78456BF4AB28756C5C28F9D95A4C</key>
-			<iv>E1A0E460E2D1483FE954F26F45CCE7A0</iv>
-			<input>422C5429CE7BD811C4A1896171217AC3</input>
-			<output>2695923CFB2141F05A0F144FF021BD36</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8CA6DB8A8758322DDF9EA7990D5EAD82F63486709F8E77A</key>
-			<iv>2695923CFB2141F05A0F144FF021BD36</iv>
-			<input>780771C65FCB907BFBB8AA92E2CAF1FB</input>
-			<output>A9820B527F71E95CC1F53033149FB26F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62ABF1F4178F3C73747BE12BEFA40384EE9678541D675515</key>
-			<iv>A9820B527F71E95CC1F53033149FB26F</iv>
-			<input>CCC14BD8DF1CA8A4CA619C4CBFFABF51</input>
-			<output>2BAD4E8CD7D6420D36DC2F8E77DCA072</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C79B767D31D9F0FC5FD6AFA738724189D84A57DA6ABBF567</key>
-			<iv>2BAD4E8CD7D6420D36DC2F8E77DCA072</iv>
-			<input>1EFF63C71B10DCC7A53087892656CC8F</input>
-			<output>C21303AAB04E2CAF1893396DD405B265</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1F3C7FF71340DEEC9DC5AC0D883C6D26C0D96EB7BEBE4702</key>
-			<iv>C21303AAB04E2CAF1893396DD405B265</iv>
-			<input>209270B7768E5553D8A7098A22992E10</input>
-			<output>B220025B5307C9D5D1EEB4B427E7263F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>867CB381E6D532B32FE5AE56DB3BA4F31137DA039959613D</key>
-			<iv>B220025B5307C9D5D1EEB4B427E7263F</iv>
-			<input>8546A6C9B4CEF0229940CC76F595EC5F</input>
-			<output>B925C660EBE409050DA369E58C601F4D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>33B33F93622E509296C0683630DFADF61C94B3E615397E70</key>
-			<iv>B925C660EBE409050DA369E58C601F4D</iv>
-			<input>1F4930242C2951C4B5CF8C1284FB6221</input>
-			<output>67DA7B4BEAB2152D21C54F389F9282D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8EC3394AF44DD34F11A137DDA6DB8DB3D51FCDE8AABFCA4</key>
-			<iv>67DA7B4BEAB2152D21C54F389F9282D4</iv>
-			<input>41611AE93BE61306DB5F0C07CD6A8DA6</input>
-			<output>4C116D3ED0B021129CCD1764D132A72D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92F61F4CB5794268BD0B7E430ADD99C9A19CEBBA5B995B89</key>
-			<iv>4C116D3ED0B021129CCD1764D132A72D</iv>
-			<input>E7B1E63FBD5B4CA77A1A2CD81A3D9F5C</input>
-			<output>FE1C3096C14AF2A4DC840207BFFFC0AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>08DC826B4DDBAC4D43174ED5CB976B6D7D18E9BDE4669B26</key>
-			<iv>FE1C3096C14AF2A4DC840207BFFFC0AF</iv>
-			<input>9A0D034B1931FD599A2A9D27F8A2EE25</input>
-			<output>ED500812A10CC6C4EED0836871F85AA9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>486EBC43A876FF2AAE4746C76A9BADA993C86AD5959EC18F</key>
-			<iv>ED500812A10CC6C4EED0836871F85AA9</iv>
-			<input>8237641B58069AFD40B23E28E5AD5367</input>
-			<output>0AD90C1C13E7C1318057A417C0B9B97C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F340D2CAC4645595A49E4ADB797C6C98139FCEC2552778F3</key>
-			<iv>0AD90C1C13E7C1318057A417C0B9B97C</iv>
-			<input>905119E1F11E4B04BB2E6E896C12AABF</input>
-			<output>B260FFA5806A4A6D8845FA6146A565ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF326741BD1EE2FF16FEB57EF91626F59BDA34A313821D1E</key>
-			<iv>B260FFA5806A4A6D8845FA6146A565ED</iv>
-			<input>4F639233904531162C72B58B797AB76A</input>
-			<output>2D27A1A3968E30EBCA463C8709D0FD83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D4C684692E05983C3BD914DD6F98161E519C08241A52E09D</key>
-			<iv>2D27A1A3968E30EBCA463C8709D0FD83</iv>
-			<input>428B700FB3CD18790BF4E328931B7AC3</input>
-			<output>D350CCF3B440006C9F18E99DD5B69920</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9DD5275FFDCD5D2DE889D82EDBD81672CE84E1B9CFE479BD</key>
-			<iv>D350CCF3B440006C9F18E99DD5B69920</iv>
-			<input>97F4A6256A9E22FB4913A336D3C8C511</input>
-			<output>F5A0571EB7E4719B862EBC47141EA319</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0A3B329A4973D7A21D298F306C3C67E948AA5DFEDBFADAA4</key>
-			<iv>F5A0571EB7E4719B862EBC47141EA319</iv>
-			<input>E355F7EBA4DAC16B97EE15C5B4BE8A8F</input>
-			<output>4F18730073D3E78CAD356441F1317B2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3BB3A19EF4EB8A755231FC301FEF8065E59F39BF2ACBA189</key>
-			<iv>4F18730073D3E78CAD356441F1317B2D</iv>
-			<input>A20B3B6C41E88E9D31889304BD985DD7</input>
-			<output>AEAECB17B9009AAF1E4E9CC02653194B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4B9DDD2F821CE4D1FC9F3727A6EF1ACAFBD1A57F0C98B8C2</key>
-			<iv>AEAECB17B9009AAF1E4E9CC02653194B</iv>
-			<input>5D2E4A96F9BB4AD4702E7CB176F76EA4</input>
-			<output>26851709960A42D5711EBDC7D40535FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D7273499C5BA2842DA1A202E30E5581F8ACF18B8D89D8D3E</key>
-			<iv>26851709960A42D5711EBDC7D40535FC</iv>
-			<input>202534EA0A1952A19CBAE9B647A6CC93</input>
-			<output>FF8BFFB98EDA7E54664AE879551B5497</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7870FF6B66070AB02591DF97BE3F264BEC85F0C18D86D9A9</key>
-			<iv>FF8BFFB98EDA7E54664AE879551B5497</iv>
-			<input>365CFE282B9508CFAF57CBF2A3BD22F2</input>
-			<output>D0809C84A97221E6F8DCB483B38EC7E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4E6DFDF4A081200F5114313174D07AD145944423E081E48</key>
-			<iv>D0809C84A97221E6F8DCB483B38EC7E1</iv>
-			<input>915323F59134AB838C9620B42C0F18B0</input>
-			<output>DC8A24B8DECF81E0412DBF10127119EC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>336A7C81A4BE3FE9299B67ABC982864D5574FB522C7907A4</key>
-			<iv>DC8A24B8DECF81E0412DBF10127119EC</iv>
-			<input>0FC4387E49F666B8C78CA35EEEB62DE9</input>
-			<output>84E370DF6CA478BA85FC0874393CE442</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F8ADC39E17CDDEB0AD781774A526FEF7D088F3261545E3E6</key>
-			<iv>84E370DF6CA478BA85FC0874393CE442</iv>
-			<input>34BFEFD3E43D8EE0CBC7BF1FB373E159</input>
-			<output>2C109A8363D1D0FB69CA77ABFA922F05</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2B26D271208BD64F81688DF7C6F72E0CB942848DEFD7CCE3</key>
-			<iv>2C109A8363D1D0FB69CA77ABFA922F05</iv>
-			<input>D28D86D5199E7E30D38B11EF374608FF</input>
-			<output>F1749EFE66D339BC99AE4D9F63C90490</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ACB8D3E6F5A45F0C701C1309A02417B020ECC9128C1EC873</key>
-			<iv>F1749EFE66D339BC99AE4D9F63C90490</iv>
-			<input>2ADAFA1911C5E9BD879E0197D52F8943</input>
-			<output>3B2A7C4278E1F071BFA29A6B0BFF4A15</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CCEE75264DD770C44B366F4BD8C5E7C19F4E537987E18266</key>
-			<iv>3B2A7C4278E1F071BFA29A6B0BFF4A15</iv>
-			<input>84E244B62DF08DC76056A6C0B8732FC8</input>
-			<output>A35F83A5EE0B1C3B9DAD76DEAED96D72</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F8F9239CDB5CC963E869ECEE36CEFBFA02E325A72938EF14</key>
-			<iv>A35F83A5EE0B1C3B9DAD76DEAED96D72</iv>
-			<input>F0B652F296CF162B341756BA968BB9A7</input>
-			<output>D5867FFE2FB75E309D3345611B25E3B0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>509A10ABA5EAF2963DEF93101979A5CA9FD060C6321D0CA4</key>
-			<iv>D5867FFE2FB75E309D3345611B25E3B0</iv>
-			<input>C47D42AE34131463A86333377EB63BF5</input>
-			<output>6E136F01638AFBE3554218431DF44E7E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9B52C39C38F16CCE53FCFC117AF35E29CA9278852FE942DA</key>
-			<iv>6E136F01638AFBE3554218431DF44E7E</iv>
-			<input>78E05783EAEBE1BDCBC8D3379D1B9E58</input>
-			<output>FB6ACD3D0CF805374AD07EF5C038EBF6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2044F086923D5E43A896312C760B5B1E80420670EFD1A92C</key>
-			<iv>FB6ACD3D0CF805374AD07EF5C038EBF6</iv>
-			<input>02415B8E4D915492BB16331AAACC328D</input>
-			<output>0086C26DA11540FF5F485D7B238FD98C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>12CE4C4109606CD7A810F341D71E1BE1DF0A5B0BCC5E70A0</key>
-			<iv>0086C26DA11540FF5F485D7B238FD98C</iv>
-			<input>0A2988237132B0B3328ABCC79B5D3294</input>
-			<output>F2E94C71A2AE0FCB096D8259B931CF8D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21BBCDA7FBC5229C5AF9BF3075B0142AD667D952756FBF2D</key>
-			<iv>F2E94C71A2AE0FCB096D8259B931CF8D</iv>
-			<input>4234B6C7F1CE98A3337581E6F2A54E4B</input>
-			<output>3B52E7834263C6790763706943741FD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BB451732881A996161AB58B337D3D253D104A93B361BA0F5</key>
-			<iv>3B52E7834263C6790763706943741FD8</iv>
-			<input>F8509FB57E14501F9AFEDA9573DFBBFD</input>
-			<output>93FCA9F122CB707213D0CD72D8E6BF74</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>857D076E9A127A84F257F1421518A221C2D46449EEFD1F81</key>
-			<iv>93FCA9F122CB707213D0CD72D8E6BF74</iv>
-			<input>AA4D07DFAD030BE03E38105C1208E3E5</input>
-			<output>50717568D21862AECFAA898337405C96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1BCFD020D63709E0A226842AC700C08F0D7EEDCAD9BD4317</key>
-			<iv>50717568D21862AECFAA898337405C96</iv>
-			<input>7B488D7BBB2D538E9EB2D74E4C257364</input>
-			<output>0338D74260CB6CBB1B220DE7E4CC0BCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CCDDF5D0BBCE202DA11E5368A7CBAC34165CE02D3D7148D8</key>
-			<iv>0338D74260CB6CBB1B220DE7E4CC0BCF</iv>
-			<input>16E01F8B3E94AC26D71225F06DF929CD</input>
-			<output>698AD17BB2F5F06C0465BEE34A7DCEDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B7F556BC9BB4DC49C8948213153E5C5812395ECE770C8605</key>
-			<iv>698AD17BB2F5F06C0465BEE34A7DCEDD</iv>
-			<input>3ED0C80AFDEFE8BF7B28A36C207AFC64</input>
-			<output>E20129557F795C2B1CC32A5494824A4B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4B00D75969C3549C2A95AB466A4700730EFA749AE38ECC4E</key>
-			<iv>E20129557F795C2B1CC32A5494824A4B</iv>
-			<input>20BE0CD6C2244384FCF581E5F27788D5</input>
-			<output>C2F9DD55E91F4796636FEC9745410087</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EDCC5155BA684A4E86C7613835847E56D95980DA6CFCCC9</key>
-			<iv>C2F9DD55E91F4796636FEC9745410087</iv>
-			<input>B2DF53DF1139FB9915DC124C3265D038</input>
-			<output>015D51CD3568EB4EC210B58FFA89A409</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21BA26AC6880AACDE93127DEB630ACABAF852D825C4668C0</key>
-			<iv>015D51CD3568EB4EC210B58FFA89A409</iv>
-			<input>401094B8B47CBDC87F66E3B933262E69</input>
-			<output>2987D39C19E6997957BDD0CAF010F778</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BBA7ABC0A20CCBDEC0B6F442AFD635D2F838FD48AC569FB8</key>
-			<iv>2987D39C19E6997957BDD0CAF010F778</iv>
-			<input>EFC30498827AAD9A9A1D8D6CCA8C6113</input>
-			<output>E01AA987C9520EF8EBF53E97371D056B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5322D81BAA29410320AC5DC566843B2A13CDC3DF9B4B9AD3</key>
-			<iv>E01AA987C9520EF8EBF53E97371D056B</iv>
-			<input>685D6F660D40105CE88573DB08258ADD</input>
-			<output>D1265ABFCFA75FC65E94983BFF75CD48</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19DF73EBF1CEF669F18A077AA92364EC4D595BE4643E579B</key>
-			<iv>D1265ABFCFA75FC65E94983BFF75CD48</iv>
-			<input>DD6E090E9981E5F24AFDABF05BE7B76A</input>
-			<output>605FDD1CA95B8FE1A5E26DBA10241914</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F7D1D0CA3DAA851891D5DA660078EB0DE8BB365E741A4E8F</key>
-			<iv>605FDD1CA95B8FE1A5E26DBA10241914</iv>
-			<input>9F8442EE8B5A325FEE0EA321CC647371</input>
-			<output>76D67121FDEAEB6B81DBB29565F71E8E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FFFF200EA04824E9E703AB47FD920066696084CB11ED5001</key>
-			<iv>76D67121FDEAEB6B81DBB29565F71E8E</iv>
-			<input>5AF386509F0C8BAA082EF0C49DE2A1F1</input>
-			<output>7E1D833DC8D73228B7DFDE918E31E5E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A7D40B689490FC7991E287A3545324EDEBF5A5A9FDCB5E6</key>
-			<iv>7E1D833DC8D73228B7DFDE918E31E5E7</iv>
-			<input>02AB05F508ACDD21D58260B829012B2E</input>
-			<output>D6CA06D415EA5D750B5D06C252645A43</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>134154161A39E2CF4FD42EAE20AF6F3BD5E25C98CDB8EFA5</key>
-			<iv>D6CA06D415EA5D750B5D06C252645A43</iv>
-			<input>E63873AE14DD3BA8393C14A09370ED08</input>
-			<output>BFEA32E77BC1607921C54027C01C3EDF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AD8AF90935A6B455F03E1C495B6E0F42F4271CBF0DA4D17A</key>
-			<iv>BFEA32E77BC1607921C54027C01C3EDF</iv>
-			<input>BAD47B1FBF949870BECBAD1F2F9F569A</input>
-			<output>A86FFC9A91C79AFE47899B3934F3E05E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D88A2E828514CEC25851E0D3CAA995BCB3AE878639573124</key>
-			<iv>A86FFC9A91C79AFE47899B3934F3E05E</iv>
-			<input>2A2115074A9767747500D78BB0B27A97</input>
-			<output>507ED155CC3ED3B1922BBC166812A7FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2CDDF1A577A3C86C082F31860697460D21853B90514596DA</key>
-			<iv>507ED155CC3ED3B1922BBC166812A7FE</iv>
-			<input>308D27178ABA22BCF457DF27F2B706AE</input>
-			<output>87F4EEA7CD2438F3EDCB650824A2D638</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2B9D006908018D648FDBDF21CBB37EFECC4E5E9875E740E2</key>
-			<iv>87F4EEA7CD2438F3EDCB650824A2D638</iv>
-			<input>28F6C452D061E3DB0740F1CC7FA24508</input>
-			<output>DBA57DDA73A4E987EA32EF113877E908</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FC69838410D06425547EA2FBB8179779267CB1894D90A9EA</key>
-			<iv>DBA57DDA73A4E987EA32EF113877E908</iv>
-			<input>91CFB50FFBE97D8AD7F483ED18D1E941</input>
-			<output>1720ED3E3B685A19CDA66BD09BD4DA5F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>541AAB6191E2C51F435E4FC5837FCD60EBDADA59D64473B5</key>
-			<iv>1720ED3E3B685A19CDA66BD09BD4DA5F</iv>
-			<input>78FF980C48FAEBA0A87328E58132A13A</input>
-			<output>ED2E260103CAA77598FD195D02B484C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>761B0A3F50E2ACC1AE7069C480B56A157327C304D4F0F77D</key>
-			<iv>ED2E260103CAA77598FD195D02B484C8</iv>
-			<input>8C01554039D8F8EE2201A15EC10069DE</input>
-			<output>A9F0E16716B3AC14E06F18F5AEECB541</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>70056CD35CF430D5078088A39606C6019348DBF17A1C423C</key>
-			<iv>A9F0E16716B3AC14E06F18F5AEECB541</iv>
-			<input>C139651464D1614B061E66EC0C169C14</input>
-			<output>A41DDF008E0D52B627982D4196C3069E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE1932746487B7BEA39D57A3180B94B7B4D0F6B0ECDF44A2</key>
-			<iv>A41DDF008E0D52B627982D4196C3069E</iv>
-			<input>C617572884721A3D9E1C5EA73873876B</input>
-			<output>44E5304E35A21660C450FAF84D87B13B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>13D43E4526F8243FE77867ED2DA982D770800C48A158F599</key>
-			<iv>44E5304E35A21660C450FAF84D87B13B</iv>
-			<input>9C72E08DD264D6B7FDCD0C31427F9381</input>
-			<output>173B2C7A54A1A3CF3D39DCB68DA1C539</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7CB72DE2CAED4080F0434B97790821184DB9D0FE2CF930A0</key>
-			<iv>173B2C7A54A1A3CF3D39DCB68DA1C539</iv>
-			<input>4DF3764F679E29446F6313A7EC1564BF</input>
-			<output>F1A167A3EB8F3FAB9F9B1570475ED15A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A7E6340A1278A3E801E22C3492871EB3D222C58E6BA7E1FA</key>
-			<iv>F1A167A3EB8F3FAB9F9B1570475ED15A</iv>
-			<input>2ED419EA11AAF8F3DB5119E8D895E368</input>
-			<output>2C5C5B10E285FE6C7E4750D2F9C1BD23</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4B535B4D088F09192DBE77247002E0DFAC65955C92665CD9</key>
-			<iv>2C5C5B10E285FE6C7E4750D2F9C1BD23</iv>
-			<input>A3E9EA99771D0C02ECB56F471AF7AAF1</input>
-			<output>A12B4A15DBFAE2E7D4A7A792CD3C121A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2F0E7BAD76DC0A718C953D31ABF8023878C232CE5F5A4EC3</key>
-			<iv>A12B4A15DBFAE2E7D4A7A792CD3C121A</iv>
-			<input>1CC105D2604628B7645D20E07E530368</input>
-			<output>65CE700B785D901C5E5E08F7E74BB296</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6111C386DE35C954E95B4D3AD3A59224269C3A39B811FC55</key>
-			<iv>65CE700B785D901C5E5E08F7E74BB296</iv>
-			<input>F902717AF7F0794E4E1FB82BA8E9C325</input>
-			<output>E7F3BD1056C504285FFC7F65B395DCAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3B8F85E6FD28C4610EA8F02A8560960C7960455C0B8420FB</key>
-			<iv>E7F3BD1056C504285FFC7F65B395DCAE</iv>
-			<input>20A5529420D6D4C35A9E4660231D0D35</input>
-			<output>6CC36458ADECCA8B7198FD272A8C76C8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D404C97E089F240B626B9472288C5C8708F8B87B21085633</key>
-			<iv>6CC36458ADECCA8B7198FD272A8C76C8</iv>
-			<input>1094639F6723C9B0EF8B4C98F5B7E06A</input>
-			<output>D01C3C1E036D804563F04926ED203146</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4779B44770085E18B277A86C2BE1DCC26B08F15DCC286775</key>
-			<iv>D01C3C1E036D804563F04926ED203146</iv>
-			<input>A482437681DFE307937D7D3978977A13</input>
-			<output>319D579DE9E55C8A3B2097EE8C93375F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>22362304D7417BB483EAFFF1C2048048502866B340BB502A</key>
-			<iv>319D579DE9E55C8A3B2097EE8C93375F</iv>
-			<input>7AF0C8274B5C243B654F9743A74925AC</input>
-			<output>5F722165B8B422E088814B77A6B4D8E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>06FDA49350C16FEADC98DE947AB0A2A8D8A92DC4E60F88CE</key>
-			<iv>5F722165B8B422E088814B77A6B4D8E4</iv>
-			<input>A37964FA3E8145EF24CB87978780145E</input>
-			<output>C0417773DFD3FC83C2CE12D388F5DD8F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>366245F8CBC490611CD9A9E7A5635E2B1A673F176EFA5541</key>
-			<iv>C0417773DFD3FC83C2CE12D388F5DD8F</iv>
-			<input>5D7E1E14F7BD7DB6309FE16B9B05FF8B</input>
-			<output>2EAE64B58C18AC7ADD2EE62896AB708D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A1BB8A9F9BE8F1383277CD52297BF251C749D93FF85125CC</key>
-			<iv>2EAE64B58C18AC7ADD2EE62896AB708D</iv>
-			<input>3ADC6991BF15554F97D9CF67502C6159</input>
-			<output>069FC966F8A985AD41617CB0148D2B96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7AB228E4114C14AB34E80434D1D277FC8628A58FECDC0E5A</key>
-			<iv>069FC966F8A985AD41617CB0148D2B96</iv>
-			<input>4405B80CCE92FD71DB09A27B8AA4E593</input>
-			<output>13459A0239A33BC41424A5D03C6B2864</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>78D1BC27E5CBBB1D27AD9E36E8714C38920C005FD0B7263E</key>
-			<iv>13459A0239A33BC41424A5D03C6B2864</iv>
-			<input>B9BAA861988616CD026394C3F487AFB6</input>
-			<output>08DA968A2BAEB9B763EB42BF555A2BFA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F53B033A22EA1D7B2F7708BCC3DFF58FF1E742E085ED0DC4</key>
-			<iv>08DA968A2BAEB9B763EB42BF555A2BFA</iv>
-			<input>30654265AD0FB24E8DEABF1DC721A666</input>
-			<output>E8412BDC1E75AC8E2C28552E2195795E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4928B51AF5C2408CC7362360DDAA5901DDCF17CEA478749A</key>
-			<iv>E8412BDC1E75AC8E2C28552E2195795E</iv>
-			<input>EEB05E487EEB907FBC13B620D7285DF7</input>
-			<output>E01839F95680D27E048383236D59EE85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C4DB91EAFC4C26D7272E1A998B2A8B7FD94C94EDC9219A1F</key>
-			<iv>E01839F95680D27E048383236D59EE85</iv>
-			<input>BA0160229D7471FE8DF324F0098E665B</input>
-			<output>D41902E6BE946CEB1612CFEE2F33F7CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B550731E659834A1F337187F35BEE794CF5E5B03E6126DD2</key>
-			<iv>D41902E6BE946CEB1612CFEE2F33F7CD</iv>
-			<input>7DC970AFAF99BA6C718BE2F499D41276</input>
-			<output>326C3523173D62E9E145592E7A774311</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5F87F6C2402B2352C15B2D5C2283857D2E1B022D9C652EC3</key>
-			<iv>326C3523173D62E9E145592E7A774311</iv>
-			<input>24ED6DAE1B24CC2BEAD785DC25B317F3</input>
-			<output>DDAE8AFF94604FFA82AE4FFB06953C01</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3636C04061996CD01CF5A7A3B6E3CA87ACB54DD69AF012C2</key>
-			<iv>DDAE8AFF94604FFA82AE4FFB06953C01</iv>
-			<input>98E262805B8D9FD169B1368221B24F82</input>
-			<output>0D75DCFA4941BCE658DB2C71CB270BE7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64B9A0DE7DDA73C011807B59FFA27661F46E61A751D71925</key>
-			<iv>0D75DCFA4941BCE658DB2C71CB270BE7</iv>
-			<input>2BC34C226D41D8CE528F609E1C431F10</input>
-			<output>D70ED1DCDB9420E4B4A0D2A7C5148DE3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F64196479D35F74BC68EAA852436568540CEB30094C394C6</key>
-			<iv>D70ED1DCDB9420E4B4A0D2A7C5148DE3</iv>
-			<input>1015CB1E4569986C92F83699E0EF848B</input>
-			<output>524314DCCF2ADE5F8C3D241824C2BA73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>686AB32115A2884C94CDBE59EB1C88DACCF39718B0012EB5</key>
-			<iv>524314DCCF2ADE5F8C3D241824C2BA73</iv>
-			<input>FB8B49053F724B7D9E2B256688977F07</input>
-			<output>7C579324F7251EDF95BDE2320104ACA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>34DD68E6F442F6D9E89A2D7D1C399605594E752AB1058213</key>
-			<iv>7C579324F7251EDF95BDE2320104ACA6</iv>
-			<input>A3B71504A8DAA3515CB7DBC7E1E07E95</input>
-			<output>921A66278A6D1E61D4B509F199F8FE55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19C9F40A858DD9EA7A804B5A965488648DFB7CDB28FD7C46</key>
-			<iv>921A66278A6D1E61D4B509F199F8FE55</iv>
-			<input>B0B651905E1B38FB2D149CEC71CF2F33</input>
-			<output>F2C37CF94514C902A0E438159C2C9F5F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B68812FC7D4E40D6884337A3D34041662D1F44CEB4D1E319</key>
-			<iv>F2C37CF94514C902A0E438159C2C9F5F</iv>
-			<input>7DE03F498839F8DAAF41E6F6F8C3993C</input>
-			<output>4596A25A85D06BCC74F686F8F1E8C203</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2836F982CA563379CDD595F956902AAA59E9C2364539211A</key>
-			<iv>4596A25A85D06BCC74F686F8F1E8C203</iv>
-			<input>D5425E42151014ED9EBEEB7EB71873AF</input>
-			<output>0BA46EFA61FB07430C51D7CE267E1F47</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC8C7F9051C98892C671FB03376B2DE955B815F863473E5D</key>
-			<iv>0BA46EFA61FB07430C51D7CE267E1F47</iv>
-			<input>5D060EEC179C1B9E94BA86129B9FBBEB</input>
-			<output>49F7D7D7BAB7795A4E74A854C8C1AC53</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E661F49B22BC92358F862CD48DDC54B31BCCBDACAB86920E</key>
-			<iv>49F7D7D7BAB7795A4E74A854C8C1AC53</iv>
-			<input>C598926A437A27A45AED8B0B73751AA7</input>
-			<output>0EB97E32AEC4CE3959197C5B72C1ABC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E625AB8664BCF057813F52E623189A8A42D5C1F7D94739CB</key>
-			<iv>0EB97E32AEC4CE3959197C5B72C1ABC5</iv>
-			<input>B7272C4D712F9CF500445F1D46006262</input>
-			<output>DA9F53564E69AED610BCCAD13C00A241</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>75FC1D46AFD886915BA001B06D71345C52690B26E5479B8A</key>
-			<iv>DA9F53564E69AED610BCCAD13C00A241</iv>
-			<input>FE7513CF9353BBF093D9B6C0CB6476C6</input>
-			<output>7F61B6F9B7C14EB6179F2DA597EC1183</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F92D3201DA84422024C1B749DAB07AEA45F6268372AB8A09</key>
-			<iv>7F61B6F9B7C14EB6179F2DA597EC1183</iv>
-			<input>4E4D3DF58D7D9C338CD12F47755CC4B1</input>
-			<output>F9216373C300AA9BE96BD8C98F9716B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>680384A1E522C848DDE0D43A19B0D071AC9DFE4AFD3C9CBE</key>
-			<iv>F9216373C300AA9BE96BD8C98F9716B7</iv>
-			<input>1A7B30192D54142E912EB6A03FA68A68</input>
-			<output>8512BA1B57BC04EF3C021DB1EC3CA9C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE3B85BD09EC93B858F26E214E0CD49E909FE3FB11003578</key>
-			<iv>8512BA1B57BC04EF3C021DB1EC3CA9C6</iv>
-			<input>86587FF85D73F77FB638011CECCE5BF0</input>
-			<output>FA582C37D4063D61428C886A9FD54C84</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C574CA7322F443FBA2AA42169A0AE9FFD2136B918ED579FC</key>
-			<iv>FA582C37D4063D61428C886A9FD54C84</iv>
-			<input>3A7425A8B7BC3A941B4F4FCE2B18D043</input>
-			<output>7571B4D46CBC671964AB5BDE9C843DCF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>078109812EFBA9DBD7DBF6C2F6B68EE6B6B8304F12514433</key>
-			<iv>7571B4D46CBC671964AB5BDE9C843DCF</iv>
-			<input>5224060F0848F028C2F5C3F20C0FEA20</input>
-			<output>DA9EB72D65D492FE88B819674B8433C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5BF7FA2E15A87C850D4541EF93621C183E00292859D577F2</key>
-			<iv>DA9EB72D65D492FE88B819674B8433C1</iv>
-			<input>2622B2A19CBBAD065C76F3AF3B53D55E</input>
-			<output>C66EF470CEDDD499AE6214E75DE9051B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECBE2377CAF0C9E9CB2BB59F5DBFC88190623DCF043C72E9</key>
-			<iv>C66EF470CEDDD499AE6214E75DE9051B</iv>
-			<input>833F22A76D51E360B749D959DF58B56C</input>
-			<output>57407E3DEFFF753E879619424FCE5713</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4EAB83DA78D60CB09C6BCBA2B240BDBF17F4248D4BF225FA</key>
-			<iv>57407E3DEFFF753E879619424FCE5713</iv>
-			<input>25781A534FB9192CA215A0ADB226C559</input>
-			<output>644D89381439E7BBED7DC344CBF4C886</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C4977EF1F6271D6CF826429AA6795A04FA89E7C98006ED7C</key>
-			<iv>644D89381439E7BBED7DC344CBF4C886</iv>
-			<input>E8EDD9AA25A8C5B08A3CFD2B8EF111DC</input>
-			<output>CA4B2680D0EE8E28818BE8DE8D625ADC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80212F6D11C6DAE2326D641A7697D42C7B020F170D64B7A0</key>
-			<iv>CA4B2680D0EE8E28818BE8DE8D625ADC</iv>
-			<input>8F667EEDB79E930644B6519CE7E1C78E</input>
-			<output>5497F477AD5E65BB748A781533F1BCEF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A05DF1DF7E0393A566FA906DDBC9B1970F8877023E950B4F</key>
-			<iv>5497F477AD5E65BB748A781533F1BCEF</iv>
-			<input>099FDB76E6D21788207CDEB26FC54947</input>
-			<output>C8C541B359BF1B53441C4EFFFD2F65AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3970F236F800D18BAE3FD1DE8276AAC44B9439FDC3BA6EE0</key>
-			<iv>C8C541B359BF1B53441C4EFFFD2F65AF</iv>
-			<input>C79FA2079ECCEBCD992D03E98603422E</input>
-			<output>E59765A861DE0168161EA1360B5966A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ED3BFA3E4C9453C4BA8B476E3A8ABAC5D8A98CBC8E30849</key>
-			<iv>E59765A861DE0168161EA1360B5966A9</iv>
-			<input>AFBCD48F06709730B7A34D951CC994B7</input>
-			<output>5A65435BD1B4DB742E8AFF8C402927FC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A3F01E56E45895B11CDF72D321C70D87300674788CA2FB5</key>
-			<iv>5A65435BD1B4DB742E8AFF8C402927FC</iv>
-			<input>CF684F64B8CCD2EDA4ECBE468A8CCC67</input>
-			<output>551AF68D50D23408F47214C0B18E6C8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CA12AC8D17941E6244D701A062CE44D0877273873944433F</key>
-			<iv>551AF68D50D23408F47214C0B18E6C8A</iv>
-			<input>561072AC144854C1E02DAD6879D19739</input>
-			<output>ADFF035C89E040A4C3CCE190D6CB7283</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D1CA1B08A51B5086E92802FCEB2E047444BE9217EF8F31BC</key>
-			<iv>ADFF035C89E040A4C3CCE190D6CB7283</iv>
-			<input>827ADE7D0F329D9A1BD8B785B28F4EE4</input>
-			<output>425F5596D3FD37243EE59D6FC1F5ADCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>54EC325FE63AA470AB77576A38D333507A5B0F782E7A9C70</key>
-			<iv>425F5596D3FD37243EE59D6FC1F5ADCC</iv>
-			<input>4AAF21E64F8DBDB0852629574321F4F6</input>
-			<output>D85520FE860C9F320CDC8192A900F499</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5B4612BC35BFC12473227794BEDFAC6276878EEA877A68E9</key>
-			<iv>D85520FE860C9F320CDC8192A900F499</iv>
-			<input>0D046A402A1860C70FAA20E3D3856554</input>
-			<output>11C20F3ACED79B37402B2F04886D4CC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5052384CE705101562E078AE7008375536ACA1EE0F17242E</key>
-			<iv>11C20F3ACED79B37402B2F04886D4CC7</iv>
-			<input>7546E6521BBBFAFE0B142AF0D2BAD131</input>
-			<output>BCDA339266E3AFB779AF17CE34218BE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F7ECFB2AA4FC6DE2DE3A4B3C16EB98E24F03B6203B36AFCB</key>
-			<iv>BCDA339266E3AFB779AF17CE34218BE5</iv>
-			<input>85DF7958789E9090A7BEC36643F97DF7</input>
-			<output>300D46EAB6466314BB00DBC869C77F4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1E27229506EC9555EE370DD6A0ADFBF6F4036DE852F1D085</key>
-			<iv>300D46EAB6466314BB00DBC869C77F4E</iv>
-			<input>C6CED700614467A0E9CBD9BFA210F8B7</input>
-			<output>51735C075A14FE95D4A02F527A9474D3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>857F653E1E811CABBF4451D1FAB9056320A342BA2865A456</key>
-			<iv>51735C075A14FE95D4A02F527A9474D3</iv>
-			<input>53D436401D6811B19B5847AB186D89FE</input>
-			<output>827017531E56980C4357549D0E70114F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1BCE612F3A5262223D344682E4EF9D6F63F416272615B519</key>
-			<iv>827017531E56980C4357549D0E70114F</iv>
-			<input>4C1BD17FFD65AB2C9EB1041124D37E89</input>
-			<output>751BCA9516123906561FB8AF2208CEE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C7034EC27524FC3482F8C17F2FDA46935EBAE88041D7BF8</key>
-			<iv>751BCA9516123906561FB8AF2208CEE1</iv>
-			<input>7C23D6E77039F35267BE55C31D002DE1</input>
-			<output>82CAFBBE859FA80B2A8E58CEC074B01A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7F31EEE0447BB53CCAE577A977620C621F65F646C469CBE2</key>
-			<iv>82CAFBBE859FA80B2A8E58CEC074B01A</iv>
-			<input>B91FF7759419BBB10341DA0C6329FAFF</input>
-			<output>B7614376C9BAFC92E17E39D2BDF1F2EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E705144BCE40FC987D8434DFBED8F0F0FE1BCF947998390D</key>
-			<iv>B7614376C9BAFC92E17E39D2BDF1F2EF</iv>
-			<input>72B3472217AC80979834FAAB8A3B49A4</input>
-			<output>A63BA38FDDFE99D28BA447871BBA6211</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15C813D2D9AD1494DBBF97506326692275BF881362225B1C</key>
-			<iv>A63BA38FDDFE99D28BA447871BBA6211</iv>
-			<input>349F8E5FAE004B51F2CD079917EDE80C</input>
-			<output>C87E448872E619419766CB46787F2581</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B12B790C217821DA13C1D3D811C07063E2D943551A5D7E9D</key>
-			<iv>C87E448872E619419766CB46787F2581</iv>
-			<input>EC474C794E3C8322A4E36ADEF8D5354E</input>
-			<output>73DD478F7F41857F7A5DE7EDF3F1AF7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1CFA6A54B3E572DC601C94576E81F51C9884A4B8E9ACD1E6</key>
-			<iv>73DD478F7F41857F7A5DE7EDF3F1AF7B</iv>
-			<input>48F8361EF11F94C1ADD11358929D5306</input>
-			<output>8B85DE2CBE5C96CBDFE16064079754D9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6718C10E683F4D73EB994A7BD0DD63D74765C4DCEE3B853F</key>
-			<iv>8B85DE2CBE5C96CBDFE16064079754D9</iv>
-			<input>59BFDA108542EDDB7BE2AB5ADBDA3FAF</input>
-			<output>56FF53384CED780F604F86EC0CE26B26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>704ED4F1E96776A2BD6619439C301BD8272A4230E2D9EE19</key>
-			<iv>56FF53384CED780F604F86EC0CE26B26</iv>
-			<input>468FDBDB8BC26B5A175615FF81583BD1</input>
-			<output>7B0C2436262A262C5FAFC3A9B786DB00</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>67AFB86317B622B2C66A3D75BA1A3DF478858199555F3519</key>
-			<iv>7B0C2436262A262C5FAFC3A9B786DB00</iv>
-			<input>768BE978E5E8CA6E17E16C92FED15410</input>
-			<output>D32206D5D1521AB667516391810F5719</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0BF4E0C32EA3D69615483BA06B4827421FD4E208D4506200</key>
-			<iv>D32206D5D1521AB667516391810F5719</iv>
-			<input>1943C5D93D10A0E36C5B58A03915F424</input>
-			<output>6BCE2BEC0D5A0DA9051AF2B34A873694</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>924D1C527572A2EF7E86104C66122AEB1ACE10BB9ED75494</key>
-			<iv>6BCE2BEC0D5A0DA9051AF2B34A873694</iv>
-			<input>E3020D099D0841C299B9FC915BD17479</input>
-			<output>3BEBA6BA0762BF5FAA4D26B70071B4A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CFA41DB53F2F8766456DB6F6617095B4B083360C9EA6E03D</key>
-			<iv>3BEBA6BA0762BF5FAA4D26B70071B4A9</iv>
-			<input>31F7316F0D1012CD5DE901E74A5D2589</input>
-			<output>C4253CED7F88DF97596B08A15BAEF533</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2B9D43008C1537281488A1B1EF84A23E9E83EADC508150E</key>
-			<iv>C4253CED7F88DF97596B08A15BAEF533</iv>
-			<input>00365D6755A898E62D1DC98537EED414</input>
-			<output>2D4EB6BA84D1C0C978EA20C1693BB75C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>43EA75DFD5B35CCBAC063CA19A298AEA91021E6CAC33A252</key>
-			<iv>2D4EB6BA84D1C0C978EA20C1693BB75C</iv>
-			<input>599279C68B67A988A153A1EFDD720FB9</input>
-			<output>03698CC5E133AD8855B847C124FD2778</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8F2C76FCFBD8060DAF6FB0647B1A2762C4BA59AD88CE852A</key>
-			<iv>03698CC5E133AD8855B847C124FD2778</iv>
-			<input>47EFAF7E090B94B5CCC603232E6B5AC6</input>
-			<output>8D44C11C25ADE5631E05FAAECCA70AF7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E02084775A2E1A4E222B71785EB7C201DABFA30344698FDD</key>
-			<iv>8D44C11C25ADE5631E05FAAECCA70AF7</iv>
-			<input>394EC624EBC0D79E6F0CF28BA1F61C43</input>
-			<output>5EB407847213D5E950C66787B140BC35</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D8208A70940589F47C9F76FC2CA417E88A79C484F52933E8</key>
-			<iv>5EB407847213D5E950C66787B140BC35</iv>
-			<input>F28816D227AC09F538000E07CE2B93BA</input>
-			<output>2D4FBD74A027526BADC8C2A433963C22</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>858193C76AFE48D951D0CB888C83458327B10620C6BF0FCA</key>
-			<iv>2D4FBD74A027526BADC8C2A433963C22</iv>
-			<input>FBAA6C644F8E08885DA119B7FEFBC12D</input>
-			<output>FA2DAE761EBBFDE4B77CBCD2381165DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DA9A9F800056FC6EABFD65FE9238B86790CDBAF2FEAE6A11</key>
-			<iv>FA2DAE761EBBFDE4B77CBCD2381165DB</iv>
-			<input>F66A574C26D0F15C5F1B0C476AA8B4B7</input>
-			<output>DB18F5B16BF19C2BCCA36091A302BF38</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BD2AB07F036032AB70E5904FF9C9244C5C6EDA635DACD529</key>
-			<iv>DB18F5B16BF19C2BCCA36091A302BF38</iv>
-			<input>04B0C1A19C6D38B467B02FFF0336CEC5</input>
-			<output>D3F01581B21DF4E470EE595CAB44912C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7EF57F6BDE41D79CA31585CE4BD4D0A82C80833FF6E84405</key>
-			<iv>D3F01581B21DF4E470EE595CAB44912C</iv>
-			<input>83BF32E0F3F3CEE7C3DFCF14DD21E537</input>
-			<output>10C69B9A04E0851B63D85D025BBACA29</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>22057A9912BB6B76B3D31E544F3455B34F58DE3DAD528E2C</key>
-			<iv>10C69B9A04E0851B63D85D025BBACA29</iv>
-			<input>150ACC96322893CC5CF005F2CCFABCEA</input>
-			<output>2743FE5769DDA5D591318E200AF672D0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>742A2117B51176E69490E00326E9F066DE69501DA7A4FCFC</key>
-			<iv>2743FE5769DDA5D591318E200AF672D0</iv>
-			<input>93246C1A26F66DAF562F5B8EA7AA1D90</input>
-			<output>5CA8FC8DB4A20B2CA8AB86B1B40DA1A1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C09F8C3B20BE749C8381C8E924BFB4A76C2D6AC13A95D5D</key>
-			<iv>5CA8FC8DB4A20B2CA8AB86B1B40DA1A1</iv>
-			<input>D91806E0F3451C374823D9D4071A91AF</input>
-			<output>25701E4C6685C98333566EB75498AEB7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD0386F2D0D1E8FFED4802C2F4CE32C94594B81B4731F3EA</key>
-			<iv>25701E4C6685C98333566EB75498AEB7</iv>
-			<input>701A5D7027053688E10A7E3162DA0FB6</input>
-			<output>E4A5889FC49B62F767F61F1D2810801A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BB9A1FA7287B0D3D09ED8A5D3055503E2262A7066F2173F0</key>
-			<iv>E4A5889FC49B62F767F61F1D2810801A</iv>
-			<input>A110B0A38255279B66999955F8AAE5C2</input>
-			<output>F1A9BDA2045F3EAE2AB9CEE2AD352270</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21B561DC3C44B5A5F84437FF340A6E9008DB69E4C2145180</key>
-			<iv>F1A9BDA2045F3EAE2AB9CEE2AD352270</iv>
-			<input>1562CF8420963B479A2F7E7B143FB898</input>
-			<output>E7E2BA657D3482A4825D643B8C01B52E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>60A0FA1F5FA435401FA68D9A493EEC348A860DDF4E15E4AE</key>
-			<iv>E7E2BA657D3482A4825D643B8C01B52E</iv>
-			<input>930490633BC4EDC941159BC363E080E5</input>
-			<output>2FDBCD145EB8620594834B0D63BBD137</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7DD1686F811E4017307D408E17868E311E0546D22DAE3599</key>
-			<iv>2FDBCD145EB8620594834B0D63BBD137</iv>
-			<input>4BB1C43F4ABC51CD1D719270DEBA7557</input>
-			<output>B703658AD9FFCDE05E2C7E252990402E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18203DC5AAA632F5877E2504CE7943D1402938F7043E75B7</key>
-			<iv>B703658AD9FFCDE05E2C7E252990402E</iv>
-			<input>47931942F275F05E65F155AA2BB872E2</input>
-			<output>5B79CB7FA90D3BB5A979A4588D4DE434</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F6D532CBAF42FCDDC07EE7B67747864E9509CAF89739183</key>
-			<iv>5B79CB7FA90D3BB5A979A4588D4DE434</iv>
-			<input>E3A36DF4EB896B4D874D6EE910521D38</input>
-			<output>61BF460521E67B3CAC638F3298EF9310</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ED4F97BC99036E83BDB8A87E469203584533139D119C0293</key>
-			<iv>61BF460521E67B3CAC638F3298EF9310</iv>
-			<input>55EABDF72CCB5D737222C49023F7414E</input>
-			<output>8A27D87B53B2FB8BBAFF7851AF1D51F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1B9A7291D885F8E379F70051520F8D3FFCC6BCCBE815361</key>
-			<iv>8A27D87B53B2FB8BBAFF7851AF1D51F2</iv>
-			<input>D30271EA236E948F0CF63095848B310D</input>
-			<output>15075FDCBD2D6FC15B9A3841A2D58C34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>976B101EE3E10E0822982FD9A80D9712A456538D1C54DF55</key>
-			<iv>15075FDCBD2D6FC15B9A3841A2D58C34</iv>
-			<input>879EED3434159D8076D2B737FE695186</input>
-			<output>6896582462983FAAE443078F9768B339</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A7A3277BF5F605FC4A0E77FDCA95A8B8401554028B3C6C6C</key>
-			<iv>6896582462983FAAE443078F9768B339</iv>
-			<input>89DDABE96D1069ED30C8376516170BF4</input>
-			<output>96FE6B921416B667AA5B34D2D2E25747</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD57026B1D4E32A8DCF01C6FDE831EDFEA4E60D059DE3B2B</key>
-			<iv>96FE6B921416B667AA5B34D2D2E25747</iv>
-			<input>8144C8BB09FC72827AF42510E8B83754</input>
-			<output>EEDC3677AB7B57829F6D733F8090DA8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B4D1BDF297DC0574322C2A1875F8495D752313EFD94EE1A1</key>
-			<iv>EEDC3677AB7B57829F6D733F8090DA8A</iv>
-			<input>510F7A55799B39786986BF998A9237DC</input>
-			<output>BA50C94440C04A8C0899D42658E25437</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>AES CBC MonteCarlo Enc 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>FE3C53653E2F45B56FCD88B2CC898FF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B2493DE29713367D9FAA93469F8EF596FE3C53653E2F45B56FCD88B2CC898FF0</key>
-			<iv>FE3C53653E2F45B56FCD88B2CC898FF0</iv>
-			<input>B2493DE29713367D9FAA93469F8EF596</input>
-			<output>7CE2ABAF8BEF23C4816DC8CE842048A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>33A36646FE56F70DC0C51A3117E639F182DEF8CAB5C06671EEA0407C48A9C757</key>
-			<iv>7CE2ABAF8BEF23C4816DC8CE842048A7</iv>
-			<input>81EA5BA46945C1705F6F89778868CC67</input>
-			<output>50CD14A12C6852D39654C816BFAF9AC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D6A3DACE75B104CA8A303A32670BF3AD213EC6B99A834A278F4886AF7065D95</key>
-			<iv>50CD14A12C6852D39654C816BFAF9AC2</iv>
-			<input>3EC95BEA190DE74168661992319686CB</input>
-			<output>3F411DAD0E339FE281637133BF46BD13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A53BE0709BF686A7DB7C3848D81AB66BED52F1C6979BAB40F997F9594840E086</key>
-			<iv>3F411DAD0E339FE281637133BF46BD13</iv>
-			<input>A851DDDC7CAD96EB73DF3BEBFE6A0951</input>
-			<output>5BA2C7663A4061719A7CCC2AF2A3EE8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECF3490CB7717A5236A3A94811BEBF13B6F036A0ADDBCA3163EB3573BAE30E0C</key>
-			<iv>5BA2C7663A4061719A7CCC2AF2A3EE8A</iv>
-			<input>49C8A97C2C87FCF5EDDF9100C9A40978</input>
-			<output>F105031CE7E5111317745C64F4F6D150</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CE8A062A2A9F9EDE2EFB43A8602BB47847F535BC4A3EDB22749F69174E15DF5C</key>
-			<iv>F105031CE7E5111317745C64F4F6D150</iv>
-			<input>22794F269DEEE48C1858EAE071950B6B</input>
-			<output>C8F030398A873550A34386D9A153D833</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2BE39545B8FC27444178BF0004C7F1048F050585C0B9EE72D7DCEFCEEF46076F</key>
-			<iv>C8F030398A873550A34386D9A153D833</iv>
-			<input>E569936F9263B99A6F83FCA864EC457C</input>
-			<output>519CF42C0BBFCBD79679089BC5E963B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80E9C0F78F99E309935C0A69B961D787DE99F1A9CB0625A541A5E7552AAF64DB</key>
-			<iv>519CF42C0BBFCBD79679089BC5E963B4</iv>
-			<input>AB0A55B23765C44DD224B569BDA62683</input>
-			<output>64AC8FEA3B83584E9B7379B48F88B7A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48DDBDA704BA7702960820A0D2CA485CBA357E43F0857DEBDAD69EE1A527D37F</key>
-			<iv>64AC8FEA3B83584E9B7379B48F88B7A4</iv>
-			<input>C8347D508B23940B05542AC96BAB9FDB</input>
-			<output>2B1F53F35A308673E9B1E004C32B2080</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D26C4C6BE601D63BDDE6F1A49B5124CB912A2DB0AAB5FB9833677EE5660CF3FF</key>
-			<iv>2B1F53F35A308673E9B1E004C32B2080</iv>
-			<input>9AB1F1CCE2BBA1394BEED104499B6C97</input>
-			<output>0DAE66B5741FE38E544D9EC4E90ABDAF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D241355DB8FC5F23D0D207F72E290F189C844B05DEAA1816672AE0218F064E50</key>
-			<iv>0DAE66B5741FE38E544D9EC4E90ABDAF</iv>
-			<input>002D79365EFD89180D34F653B5782BD3</input>
-			<output>D00122636CC0D9D62E614EAF0963C448</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1BC3268A0B674A05B2FC6E18460231564C856966B26AC1C0494BAE8E86658A18</key>
-			<iv>D00122636CC0D9D62E614EAF0963C448</iv>
-			<input>C98213D7B39B1526622E69EF682B3E4E</input>
-			<output>30EF014D1766651C524B3CC82F0140C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>50BE5951A5C2403C52425897C442A8457C6A682BA50CA4DC1B009246A964CADE</key>
-			<iv>30EF014D1766651C524B3CC82F0140C6</iv>
-			<input>4B7D7FDBAEA50A39E0BE368F82409913</input>
-			<output>BAD488702B447FABEC2074E1DD37E631</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C007EE52430FF98EDD206C94ED349DE6C6BEE05B8E48DB77F720E6A774532CEF</key>
-			<iv>BAD488702B447FABEC2074E1DD37E631</iv>
-			<input>90B9B703E6CDB9B28F623403297635A3</input>
-			<output>EC3862EB60E7D8D0827645BD690F71B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AE37C1DBEBF9B269E8D10CC4F046F9FC2A8682B0EEAF03A77556A31A1D5C5D57</key>
-			<iv>EC3862EB60E7D8D0827645BD690F71B8</iv>
-			<input>6E302F89A8F64BE735F160501D72641A</input>
-			<output>6073D1F25F3697C1E07384C67D71D8AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>86E8B9050AB24200E3757B67F08761534AF55342B1999466952527DC602D85F9</key>
-			<iv>6073D1F25F3697C1E07384C67D71D8AE</iv>
-			<input>28DF78DEE14BF0690BA477A300C198AF</input>
-			<output>90EF55AB8837792F82CF0F002E36F8DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE93EA10BB6DC2B0A6D3919561CE5AE4DA1A06E939AEED4917EA28DC4E1B7D22</key>
-			<iv>90EF55AB8837792F82CF0F002E36F8DB</iv>
-			<input>587B5315B1DF80B045A6EAF291493BB7</input>
-			<output>063783CB1A2137732D10CA6233C5CE93</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D147E3727A1FEB2C6F36AB9DF772E97DC2D8522238FDA3A3AFAE2BE7DDEB3B1</key>
-			<iv>063783CB1A2137732D10CA6233C5CE93</iv>
-			<input>E38794279CCC3C026020FB2CBEB97473</input>
-			<output>79C5CEEE64BFD33948D2E08EBE25B7E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>34586C52923969647663A0D69436D7D1A5E84BCC4730090372280230C3FB0458</key>
-			<iv>79C5CEEE64BFD33948D2E08EBE25B7E9</iv>
-			<input>094C1265B59897D6B090CA6F4B41F946</input>
-			<output>87DFB65D575F56670DB739C988FD7DE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53724BF79612A7F0237927604619DD592237FD91106F5F647F9F3BF94B0679BD</key>
-			<iv>87DFB65D575F56670DB739C988FD7DE5</iv>
-			<input>672A27A5042BCE94551A87B6D22F0A88</input>
-			<output>643F46BC77A5FE2434753B9C38142583</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8FBC30746F29985FFFA43C8BD3C4FC664608BB2D67CAA1404BEA006573125C3E</key>
-			<iv>643F46BC77A5FE2434753B9C38142583</iv>
-			<input>DCCE7B83F93B3FAFDCDD1BEB95DD213F</input>
-			<output>FD774BD6874EA7C0D790A5015440B664</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9A61A910701A4A42873549F78D3D9FD1BB7FF0FBE08406809C7AA5642752EA5A</key>
-			<iv>FD774BD6874EA7C0D790A5015440B664</iv>
-			<input>15DD99641F33D21D7891757C5EF963B7</input>
-			<output>BFCEF4403428F5C96C24C249962371D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D98738F6DF30113AF69A7A61C1582EE04B104BBD4ACF349F05E672DB1719B8E</key>
-			<iv>BFCEF4403428F5C96C24C249962371D4</iv>
-			<input>17F9DA9F1DE94B51285CEE5191281D3F</input>
-			<output>CC79F35C41F0E6C0EB03472B1D13029E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>976C27F1A15FF6780043636FC4777090C8C8F7E7955C15891B5D2006AC629910</key>
-			<iv>CC79F35C41F0E6C0EB03472B1D13029E</iv>
-			<input>1AF4547ECCACF76BAF2AC4C9D862F27E</input>
-			<output>0629B80F94FBC2C1984985B9F3B85BDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8934C533DED166F58D65C9E60A906A5CEE14FE801A7D7488314A5BF5FDAC2CD</key>
-			<iv>0629B80F94FBC2C1984985B9F3B85BDD</iv>
-			<input>7FFF6BA29CB2E01758953FF1A4DE7635</input>
-			<output>F2A70F4ED1A836696841D523F2650B55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8116688C16D2C26D162C4D813FB267103C4640A6D00FE121EB55709CADBFC998</key>
-			<iv>F2A70F4ED1A836696841D523F2650B55</iv>
-			<input>698524DF2B3FD4024EFA111F5F1B61B5</input>
-			<output>A9B5565EB9B5D5DAC52BE0F449FBE11A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5A7062E77C6D20563AFD0BFDAAE04BE995F316F869BA34FB2E7E9068E4442882</key>
-			<iv>A9B5565EB9B5D5DAC52BE0F449FBE11A</iv>
-			<input>DB660A6B6ABFE23B2CD1467C95522CF9</input>
-			<output>E47F675379D4CE3DDABA0F906BE014B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4DDC0A5938F4A3DC1AF8D3AFD3DF6198718C71AB106EFAC6F4C49FF88FA43C30</key>
-			<iv>E47F675379D4CE3DDABA0F906BE014B2</iv>
-			<input>17AC68BE4499838A2005D852793F2A71</input>
-			<output>7B95AB0E030C70B7940ECDAEFCA570A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E287EFC66626600AF3453F68BE53E5250A19DAA513628A7160CA525673014C95</key>
-			<iv>7B95AB0E030C70B7940ECDAEFCA570A5</iv>
-			<input>AF5BE59F5ED2C3D6E9BDECC76D8C84BD</input>
-			<output>E854E5DE0C42D57B869C29FC8D5AFFF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7F3415A538F60B24A58447E1D38805B3E24D3F7B1F205F0AE6567BAAFE5BB366</key>
-			<iv>E854E5DE0C42D57B869C29FC8D5AFFF3</iv>
-			<input>9DB3FA635ED06B2E56C178896DDBE096</input>
-			<output>4E55EDEDC35CDEAB3BFB2B5D39871625</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59E5F5ECC5693DA07046636094970E8CAC18D296DC7C81A1DDAD50F7C7DCA543</key>
-			<iv>4E55EDEDC35CDEAB3BFB2B5D39871625</iv>
-			<input>26D1E049FD9F3684D5C22481471F0B3F</input>
-			<output>3355C2CC762E58FA941E0004209CA710</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0B62CF7EA869036A529E9D184574CD609F4D105AAA52D95B49B350F3E7400253</key>
-			<iv>3355C2CC762E58FA941E0004209CA710</iv>
-			<input>52873A926D003ECA22D8FE78D1E3C3EC</input>
-			<output>9B86680D69D38870268D42E78EDA2B50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CEDC9CCC4DC42CB055EDC50597EE24DF04CB7857C381512B6F3E1214699A2903</key>
-			<iv>9B86680D69D38870268D42E78EDA2B50</iv>
-			<input>C5BE53B2E5AD2FDA0773581DD29AE9BF</input>
-			<output>05DD4896F08EEAA6A53FA7BCF183F538</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CA30B422016C86247D75B618D19247AC011630C1330FBB8DCA01B5A89819DC3B</key>
-			<iv>05DD4896F08EEAA6A53FA7BCF183F538</iv>
-			<input>04EC28EE4CA8AA942898731D467C6373</input>
-			<output>F81E56F4390D65C7959348A6FBD8A94E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B7096A2EC0259DA21ACA6DBE637A9F15F90866350A02DE4A5F92FD0E63C17575</key>
-			<iv>F81E56F4390D65C7959348A6FBD8A94E</iv>
-			<input>7D39DE0CC1491B8667BFDBA6B2E8D8B9</input>
-			<output>4364CA2D90FA256084DF8E2FCDC62AB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>436C0894D4436149EE685F0061BDF3AEBA6CAC189AF8FB2ADB4D7321AE075FC6</key>
-			<iv>4364CA2D90FA256084DF8E2FCDC62AB3</iv>
-			<input>F46562BA1466FCEBF4A232BE02C76CBB</input>
-			<output>0991DE19A5ABE5F7E8AE24120789B9AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>44E1636AFF962EC4F1C446A89B9393C6B3FD72013F531EDD33E35733A98EE66D</key>
-			<iv>0991DE19A5ABE5F7E8AE24120789B9AB</iv>
-			<input>078D6BFE2BD54F8D1FAC19A8FA2E6068</input>
-			<output>0F4EF4FA608671AC5F71063CF6C1EBDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>44289918A9E99F859FC2F604FE38B86EBCB386FB5FD56F716C92510F5F4F0DB3</key>
-			<iv>0F4EF4FA608671AC5F71063CF6C1EBDE</iv>
-			<input>00C9FA72567FB1416E06B0AC65AB2BA8</input>
-			<output>2D6A2A1CC9D208C16236BBC9451EC5E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE5907C77B0939D20575F27427A2C3FE91D9ACE7960767B00EA4EAC61A51C852</key>
-			<iv>2D6A2A1CC9D208C16236BBC9451EC5E1</iv>
-			<input>FA719EDFD2E0A6579AB70470D99A7B90</input>
-			<output>237A8DFBA42708BBF7E540766F2059F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD97125720F2002207AC44C456CDDF0DB2A3211C32206F0BF941AAB0757191A3</key>
-			<iv>237A8DFBA42708BBF7E540766F2059F1</iv>
-			<input>73CE15905BFB39F002D9B6B0716F1CF3</input>
-			<output>2D1AB5CF3E9C27ADA9FB45F15007A7BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>123F64F2A28C80C2F6E000F69C8E5A639FB994D30CBC48A650BAEF4125763618</key>
-			<iv>2D1AB5CF3E9C27ADA9FB45F15007A7BB</iv>
-			<input>DFA876A5827E80E0F14C4432CA43856E</input>
-			<output>7039C9AF1E10FE99A91483EA578AE6DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6CD69C4F5AD7CB5E9E4574F6A48FDB28EF805D7C12ACB63FF9AE6CAB72FCD0C5</key>
-			<iv>7039C9AF1E10FE99A91483EA578AE6DD</iv>
-			<input>7EE9F8BDF85B4B9C68A574003801814B</input>
-			<output>116DD8566366A19EEAF2F3E744B3EF9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C73969C7D6D057003E2E215D94978792FEED852A71CA17A1135C9F4C364F3F59</key>
-			<iv>116DD8566366A19EEAF2F3E744B3EF9C</iv>
-			<input>ABEFF5888C079C5EA06B55AB30185CBA</input>
-			<output>648A801EF27E77D964BB751A32B8CFE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0960DD6E807F3D0B5DF057D0D1E6DCC9A67053483B4607877E7EA5604F7F0B1</key>
-			<iv>648A801EF27E77D964BB751A32B8CFE8</iv>
-			<input>27AF64113ED7A4D08BF124209989EA5E</input>
-			<output>D18AE728717C535049868FA6F1B4294E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>466AE043435C6CCA67FF1C5D4B4175DA4BEDE21CF2C833283E6165F0F543D9FF</key>
-			<iv>D18AE728717C535049868FA6F1B4294E</iv>
-			<input>A6FCED95AB5B9F1AD2201920465F1816</input>
-			<output>169B55360728DA8F582C488F2569411F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>27E1BC4931601D667CD807454D58B2BB5D76B72AF5E0E9A7664D2D7FD02A98E0</key>
-			<iv>169B55360728DA8F582C488F2569411F</iv>
-			<input>618B5C0A723C71AC1B271B180619C761</input>
-			<output>67DADCF7C31CA394F46F18AB1AEA022E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2D4EB1F3A709F0A4CA5E2CD47F8F10123AAC6BDD36FC4A33922235D4CAC09ACE</key>
-			<iv>67DADCF7C31CA394F46F18AB1AEA022E</iv>
-			<input>0AAF0DBA9669EDC2B6862B9132D7A2A9</input>
-			<output>A5D49BDF099335166BBFDCBE29C90B80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A90CE470EB8C9400B056307D53452BE9F78F0023F6F7F25F99DE96AE309914E</key>
-			<iv>A5D49BDF099335166BBFDCBE29C90B80</iv>
-			<input>07DE7FB4A9B139E4C15B4FD3AABB42AC</input>
-			<output>5AFC238F19E369E77278593C6E20A946</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90B696E9A0792BFF7BF21BE373731CB5C584D38D268C16C28BE5B0568D293808</key>
-			<iv>5AFC238F19E369E77278593C6E20A946</iv>
-			<input>BA2658AEAEC1E2BF70F778E4A6474E0B</input>
-			<output>2861A363922099D0F0B2A5AD2A5F421E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4FE5C563B7DB98C6B9CCA52F313FBAFCEDE570EEB4AC8F127B5715FBA7767A16</key>
-			<iv>2861A363922099D0F0B2A5AD2A5F421E</iv>
-			<input>DF53538A17A2B339C23EBECC424CA649</input>
-			<output>D76E51B6EA5F74D0116C4D16EDD0DFAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EBF784D98E40372429819EE23BE85B723A8B21585EF3FBC26A3B58ED4AA6A5BA</key>
-			<iv>D76E51B6EA5F74D0116C4D16EDD0DFAC</iv>
-			<input>A41241BA399BAFE2904D3BCD0AD7E18E</input>
-			<output>6214F5E50EC99F40B86951CE395C8315</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C01A5093C6A29CEED72D14D903BD17E8589FD4BD503A6482D252092373FA26AF</key>
-			<iv>6214F5E50EC99F40B86951CE395C8315</iv>
-			<input>2BEDD44A48E2ABCAFEAC8A3B38554C9A</input>
-			<output>6CFC2188E40E806BBE277988B924627E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8C3A10380B6D4D1CEFABF57F3C695193463F535B434E4E96C7570ABCADE44D1</key>
-			<iv>6CFC2188E40E806BBE277988B924627E</iv>
-			<input>68D9F1904614483F19D7AB8EF07B82F1</input>
-			<output>B98E851902AEC129FD1607DECA9E0669</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B828711ABA1D06408099944287112DE58DED702CB69A25C091637775004042B8</key>
-			<iv>B98E851902AEC129FD1607DECA9E0669</iv>
-			<input>10EBD0193AABD2914E632B1574D7B8FC</input>
-			<output>DBDA9DB56E6FF915D67D7DEE541DD6A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3B0E9FE343D665ABB3706243EF023C765637ED99D8F5DCD5471E0A9B545D941B</key>
-			<iv>DBDA9DB56E6FF915D67D7DEE541DD6A3</iv>
-			<input>8326EEF9F9CB63EB33E9F60168131193</input>
-			<output>399802CE3FF3878A73C7D85E19FDD54B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9270D72D972B46C8E630FBD1AA67FBED6FAFEF57E7065B5F34D9D2C54DA04150</key>
-			<iv>399802CE3FF3878A73C7D85E19FDD54B</iv>
-			<input>A97E48CED4FD2363554099924565C79B</input>
-			<output>40FABA067414961FD964EC91196943E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>017211AC512541BFBDD0292385AA20862F5555519312CD40EDBD3E5454C902B3</key>
-			<iv>40FABA067414961FD964EC91196943E3</iv>
-			<input>9302C681C60E07775BE0D2F22FCDDB6B</input>
-			<output>6BF1125E581341510FD02B9450886B17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AC2652A877F924710178641D20B239B944A4470FCB018C11E26D15C0044169A4</key>
-			<iv>6BF1125E581341510FD02B9450886B17</iv>
-			<input>AD54430426DC65CEBCA84D3EA518193F</input>
-			<output>74871D2EF6D1F29181B0A2530885EEC8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0BF012A9F0CB194C1F00893D4803E10130235A213DD07E8063DDB7930CC4876C</key>
-			<iv>74871D2EF6D1F29181B0A2530885EEC8</iv>
-			<input>A7D6400187323D3D1E78ED2068B1D8B8</input>
-			<output>2A2DC9F5CB47C94D430ECAAAB1D0811E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D22EEEA013E327509E84630166331DB1A0E93D4F697B7CD20D37D39BD140672</key>
-			<iv>2A2DC9F5CB47C94D430ECAAAB1D0811E</iv>
-			<input>86D2FC43F1F52B3916E8CF0D5E60D0DA</input>
-			<output>BC318E32957CE6577CD06E2D3166CD1F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1C4909D11840D978FD7232D0FBC0E6A3A63F1DE663EB519A5C0313148C72CB6D</key>
-			<iv>BC318E32957CE6577CD06E2D3166CD1F</iv>
-			<input>916BE73B197EEB0DF49A74E0EDA3D778</input>
-			<output>E9858DBB1B5145ABB598ADE882346DDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD2ED3C6FCE0034F19259D57A35B60CF4FBA905D78BA1431E99BBEFC0E46A6B6</key>
-			<iv>E9858DBB1B5145ABB598ADE882346DDB</iv>
-			<input>C167DA17E4A0DA37E457AF87589B866C</input>
-			<output>1E04B15BBF727BEAC33C0C26141636DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>81C434CDF7EABAA49252EC86DFE15FBA51BE2106C7C86FDB2AA7B2DA1A50906B</key>
-			<iv>1E04B15BBF727BEAC33C0C26141636DD</iv>
-			<input>5CEAE70B0B0AB9EB8B7771D17CBA3F75</input>
-			<output>EB21AED731D594017F5729262A1E23B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AEF6BF8323CAE4C2270CC5E51B0A3BFFBA9F8FD1F61DFBDA55F09BFC304EB3DF</key>
-			<iv>EB21AED731D594017F5729262A1E23B4</iv>
-			<input>2F328B4ED4205E66B55E2963C4EB6445</input>
-			<output>EB73CFADA0ACB98B37091CB81489CC7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC3BD548867FA82FF80EF67B38016A1E51EC407C56B1425162F9874424C77FA3</key>
-			<iv>EB73CFADA0ACB98B37091CB81489CC7C</iv>
-			<input>12CD6ACBA5B54CEDDF02339E230B51E1</input>
-			<output>1FEEF226D6759E8813B98A5D43B2F22A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1F5760C694DBE5688A0241B5517B4B14E02B25A80C4DCD971400D1967758D89</key>
-			<iv>1FEEF226D6759E8813B98A5D43B2F22A</iv>
-			<input>5DCEA344EF32167970AED2606D16DEAF</input>
-			<output>9C591D087F0F45C8AE3DEC9C455FE200</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ABF2D79C472D0159FA9AE646D0C0FC9CD25BAF52FFCB9911DF7DE185222A6F89</key>
-			<iv>9C591D087F0F45C8AE3DEC9C455FE200</iv>
-			<input>4A07A1902E60BF0F723AC25D85D7482D</input>
-			<output>62C4F4D7E4AC5ABC03BECA3CA56DA4FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E58A351A4DD79A2ED6D386E11A8563F2B09F5B851B67C3ADDCC32BB98747CB74</key>
-			<iv>62C4F4D7E4AC5ABC03BECA3CA56DA4FD</iv>
-			<input>4E78E2860AFA9B772C4960A7CA459F6E</input>
-			<output>AD8557C0D04675CC312C7A106D5C8B83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BCF7BB1010AF5CEB05E06339689067E31D1A0C45CB21B661EDEF51A9EA1B40F7</key>
-			<iv>AD8557C0D04675CC312C7A106D5C8B83</iv>
-			<input>597D8E0A5D78C6C5D333E5D872150411</input>
-			<output>80159F4F5E0C2DC07D3CD3C52A1A8E6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>328BB8EB86055D2BB52A02E40BB5D2C39D0F930A952D9BA190D3826CC001CE9A</key>
-			<iv>80159F4F5E0C2DC07D3CD3C52A1A8E6D</iv>
-			<input>8E7C03FB96AA01C0B0CA61DD6325B520</input>
-			<output>F58A2EE5A5BDE8CA0A96F4F4B64BE737</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F192AE51D926A2B68C38EA4E48A0590F6885BDEF3090736B9A457698764A29AD</key>
-			<iv>F58A2EE5A5BDE8CA0A96F4F4B64BE737</iv>
-			<input>C31916BA5F23FF9D3912E8AA43158BCC</input>
-			<output>B4C0DD55013AEFE12D94F31B861134CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EE48E38C2C805E2AACC89AD8682E552DC4560BA31AA9C8AB7D18583F05B1D61</key>
-			<iv>B4C0DD55013AEFE12D94F31B861134CC</iv>
-			<input>AF7620691BEEA75426F463E3CE22BC5D</input>
-			<output>FD8B06AEF9B3C25D11B950A6648276BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F425B9BF4D114251736EE7FCDB430B6721CE6614C8195ED7A668D52594D96BDA</key>
-			<iv>FD8B06AEF9B3C25D11B950A6648276BB</iv>
-			<input>AAC137878FD947B3D9A26E515DC1EE35</input>
-			<output>31BE8DF4A8A749FBF11AB07D8479A10B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>61A2D5337BCB827887F884AD98C67BEA1070EBE060BE172C5772655810A0CAD1</key>
-			<iv>31BE8DF4A8A749FBF11AB07D8479A10B</iv>
-			<input>95876C8C36DAC029F49663514385708D</input>
-			<output>E9A2EF0C882781788D50033B79FE181F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E930B2277AC4475FB0A94519F60DE552F9D204ECE8999654DA226663695ED2CE</key>
-			<iv>E9A2EF0C882781788D50033B79FE181F</iv>
-			<input>88926714010FC5273751C1B46ECB9EB8</input>
-			<output>17FFCD5A010709A2737570E038D63B27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B944CE978DF68F8FBFF0A5EA62AAC299EE2DC9B6E99E9FF6A95716835188E9E9</key>
-			<iv>17FFCD5A010709A2737570E038D63B27</iv>
-			<input>50747CB0F732C8D00F59E0F394A727CB</input>
-			<output>E12B89FA1B1DD3B29F02219FD3D7D3D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E2D7FCEB557462267BED2CCA8B48CD70F06404CF2834C443655371C825F3A3B</key>
-			<iv>E12B89FA1B1DD3B29F02219FD3D7D3D2</iv>
-			<input>B769B15938A1C9ADD84E7726CA1E4E4E</input>
-			<output>75AE99B6022B08E36FB88A6F4D7698BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8046D73D60912221694B2AFE703EDB167AA8D9FAF0A844A759EDBD73CF29A284</key>
-			<iv>75AE99B6022B08E36FB88A6F4D7698BF</iv>
-			<input>8E6BA8F3D5C664030EF5F832D88A57C1</input>
-			<output>CF32DCE11FDB098A6435315342796064</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>20716D6975C32231968BF76725144CBAB59A051BEF734D2D3DD88C208D50C2E0</key>
-			<iv>CF32DCE11FDB098A6435315342796064</iv>
-			<input>A037BA5415520010FFC0DD99552A97AC</input>
-			<output>80F12B261317C66F21AC811230848468</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AD5A2011E425AFFD57E7191336D37D25356B2E3DFC648B421C740D32BDD44688</key>
-			<iv>80F12B261317C66F21AC811230848468</iv>
-			<input>8D2B4D7891E68DCCC16CEE7413C7319F</input>
-			<output>F2C6B70C19A5748C6D2B5DE41544854F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>49D4228508C789105CF457D10FA56048C7AD9931E5C1FFCE715F50D6A890C3C7</key>
-			<iv>F2C6B70C19A5748C6D2B5DE41544854F</iv>
-			<input>E48E0294ECE226ED0B134EC239761D6D</input>
-			<output>A31FB3535978DAA555DD617FAB27A97A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>67CE710A3E778CB4A37D1F2274D4462D64B22A62BCB9256B248231A903B76ABD</key>
-			<iv>A31FB3535978DAA555DD617FAB27A97A</iv>
-			<input>2E1A538F36B005A4FF8948F37B712665</input>
-			<output>97336ECFAE89015E0B5A7D1C154C71BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A87C517EF43CACC6D41EEB661DD1142CF38144AD123024352FD84CB516FB1B02</key>
-			<iv>97336ECFAE89015E0B5A7D1C154C71BF</iv>
-			<input>CFB22074CA4B20727763F44469055201</input>
-			<output>466CD227A6A9D5FC3C0579064530FCE0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D73F926A5B5DD8F5B82DE8F77E0E0697B5ED968AB499F1C913DD35B353CBE7E2</key>
-			<iv>466CD227A6A9D5FC3C0579064530FCE0</iv>
-			<input>7F43C314AF6174336C33039163DF12BB</input>
-			<output>4F444B4554E965A113DC0097AA8FAD7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A19BE1C42A13B85B754834E9808DF4BFAA9DDCFE070946800013524F9444A98</key>
-			<iv>4F444B4554E965A113DC0097AA8FAD7A</iv>
-			<input>AD262C7619FCE3700F796BB9E606D9DC</input>
-			<output>F7078ABE7617867274CBBEDA1082B987</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D256675EDBF987B5CA86C21DE177C6A00DAE57719667121A74CA8BFEE9C6F31F</key>
-			<iv>F7078ABE7617867274CBBEDA1082B987</iv>
-			<input>A84FD9429958BC307DD24153797F19EB</input>
-			<output>676ACAB66B04597F1A33FF462BD5E0EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C025616AB6F89BB1B90AA0E8F63FF1CC6AC49DC7FD634B656EF974B8C21313F1</key>
-			<iv>676ACAB66B04597F1A33FF462BD5E0EE</iv>
-			<input>127306346D011C04738C62F51748376C</input>
-			<output>BF66B8DD1E540A4FED759FDB9A44B439</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A437D44D93C25B3233FB168D63751A5D5A2251AE337412A838CEB635857A7C8</key>
-			<iv>BF66B8DD1E540A4FED759FDB9A44B439</iv>
-			<input>EA661C2E6FC4BE029A3511802008A069</input>
-			<output>EC8DBB5B3FE245180856B312D3052A87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>838278123F0261D1F287C9FF94CA4A55392F9E41DCD504328BDA58718B528D4F</key>
-			<iv>EC8DBB5B3FE245180856B312D3052A87</iv>
-			<input>A9C10556E63E4462D1B8789742FD1BF0</input>
-			<output>02E1E60312BB371912C35E3EBC6EA755</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64F3A47C8C7CFA9FF2AC88637C598E6A3BCE7842CE6E332B9919064F373C2A1A</key>
-			<iv>02E1E60312BB371912C35E3EBC6EA755</iv>
-			<input>E771DC6EB37E9B4E002B419CE893C43F</input>
-			<output>73D7499EBB38716D71CCB737CFFFA3FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>585ABE6B779F22400FC2AC3B55B39E91481931DC75564246E8D5B178F8C389E1</key>
-			<iv>73D7499EBB38716D71CCB737CFFFA3FB</iv>
-			<input>3CA91A17FBE3D8DFFD6E245829EA10FB</input>
-			<output>CEE7721855B7381D369ECC1C9337BB02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7BC1E883465CBBB9BA624FF99308259386FE43C420E17A5BDE4B7D646BF432E3</key>
-			<iv>CEE7721855B7381D369ECC1C9337BB02</iv>
-			<input>239B56E831C399F9B5A0E3C2C6BBBB02</input>
-			<output>B6F48D369383974D163E4F17FDFC59EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>70032AF50BB5E080D4AA7722CEDC7DA9300ACEF2B362ED16C875327396086B0C</key>
-			<iv>B6F48D369383974D163E4F17FDFC59EF</iv>
-			<input>0BC2C2764DE95B396EC838DB5DD4583A</input>
-			<output>E8372DA404126C63190626D95583629D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C61B59BDA2FF51D4F4F740578466EA9D83DE356B7708175D17314AAC38B0991</key>
-			<iv>E8372DA404126C63190626D95583629D</iv>
-			<input>2C629F6ED19A159D9BE50327B69A1300</input>
-			<output>F717B53E51665D0854C895EA1D1D7E77</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59A35E82B9C8D8FF25CFC5BAD979A9052F2A5668E616DC7D85BB8140DE9677E6</key>
-			<iv>F717B53E51665D0854C895EA1D1D7E77</iv>
-			<input>05C2EB1963E72DE26A80B1BFA13FC7AC</input>
-			<output>7D3EE90EEF7C16872F98296977AA9557</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5BC419836F7C4F57957E13E39B2181455214BF66096ACAFAAA23A829A93CE2B1</key>
-			<iv>7D3EE90EEF7C16872F98296977AA9557</iv>
-			<input>02674701D6B497A8B0B1D65942582840</input>
-			<output>6DCD0C4B5633078FDEA9AE24781CB212</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6D2BB67584AA2FAAE1D0DAD8C9C60253FD9B32D5F59CD75748A060DD12050A3</key>
-			<iv>6DCD0C4B5633078FDEA9AE24781CB212</iv>
-			<input>BD16A2E43736EDAD3B631E4E17BDE160</input>
-			<output>6515251260A73AE868E992B6D49579C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>57637851C3C08A2923EBD2FEA27472DC5ACC963F3FFEF79D1C6394BB05B52966</key>
-			<iv>6515251260A73AE868E992B6D49579C5</iv>
-			<input>B1B1C3369B8A28D38DF6DF532EE812F9</input>
-			<output>1A40C2C15F03867E81F951B545396BB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E08E94110F1E64554848AB1966299B7D408C54FE60FD71E39D9AC50E408C42D2</key>
-			<iv>1A40C2C15F03867E81F951B545396BB4</iv>
-			<input>B7EDEC40CCDEEE7C6BA379E7C45DE9A1</input>
-			<output>DD331F336D669EFD37106099EA51010D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>17F2544156745EC108BF97DA806752C39DBF4BCD0D9BEF1EAA8AA597AADD43DF</key>
-			<iv>DD331F336D669EFD37106099EA51010D</iv>
-			<input>F77CC050596A3A9440F73CC3E64EC9BE</input>
-			<output>0EF37EC0B6071874FF68926D98A0EEAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C97ABFF115E20A6C72A6206DB63EC0FD934C350DBB9CF76A55E237FA327DAD74</key>
-			<iv>0EF37EC0B6071874FF68926D98A0EEAB</iv>
-			<input>DE88EBB0439654AD7A19B7B73659923E</input>
-			<output>DA1DAEB42178A7657A40BD72A06CEDDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>77AB469FBC999BB2922D460413E2012049519BB99AE4500F2FA28A88921140A8</key>
-			<iv>DA1DAEB42178A7657A40BD72A06CEDDC</iv>
-			<input>BED1F96EA97B91DEE08B6669A5DCC1DD</input>
-			<output>E78523134FC8EAA77CC85E0EEC60FCD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4F88FA6F4053B3A15094ED532C2F47DCAED4B8AAD52CBAA8536AD4867E71BC7B</key>
-			<iv>E78523134FC8EAA77CC85E0EEC60FCD3</iv>
-			<input>3823BCF0FCCA2813C2B9AB573FCD46FC</input>
-			<output>BC540D1838D7AD8E8B1C44B96684DD31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D178E105443700CFEE007AB3BAA71E4C1280B5B2EDFB1726D876903F18F5614A</key>
-			<iv>BC540D1838D7AD8E8B1C44B96684DD31</iv>
-			<input>9EF01B6A0464B36EBE9497E096885990</input>
-			<output>6C6B95A5D8F4E7F1A5864DDBFCDCEED8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8F6A589BA0ED1A67FE426368A7E523047EEB2017350FF0D77DF0DDE4E4298F92</key>
-			<iv>6C6B95A5D8F4E7F1A5864DDBFCDCEED8</iv>
-			<input>5E12B99EE4DA1AA8104219DB1D423D48</input>
-			<output>B58C92AE19B332621E7A4E5512C88596</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>147895B157BF16B87C32AAA17480A886CB67B2B92CBCC2B5638A93B1F6E10A04</key>
-			<iv>B58C92AE19B332621E7A4E5512C88596</iv>
-			<input>9B12CD2AF7520CDF8270C9C9D3658B82</input>
-			<output>4D1D90F007BB5099C382E69C9CD1F7E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4C8441FCEBBD595999864A6CC37F7EDB867A22492B07922CA008752D6A30FDE1</key>
-			<iv>4D1D90F007BB5099C382E69C9CD1F7E5</iv>
-			<input>58FCD44DBC024FE1E5B4E0CDB7FFD65D</input>
-			<output>7F59920056EC32FA48F8A9CCCFFE437A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD922EEA60F0F136A799C650F5D4B030F923B0497DEBA0D6E8F0DCE1A5CEBE9B</key>
-			<iv>7F59920056EC32FA48F8A9CCCFFE437A</iv>
-			<input>81166F168B4DA86F3E1F8C3C36ABCEEB</input>
-			<output>A546F57E48A783694577D59F7FD01D9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90DE3ECB26E68BDD3C4B7AB9B9CDE6195C654537354C23BFAD87097EDA1EA305</key>
-			<iv>A546F57E48A783694577D59F7FD01D9E</iv>
-			<input>5D4C102146167AEB9BD2BCE94C195629</input>
-			<output>6342B8CB1E493F916585FF1BBFC42AB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ADF1869FEA15122394E1F6FF6B51E5DE3F27FDFC2B051C2EC802F66565DA89B6</key>
-			<iv>6342B8CB1E493F916585FF1BBFC42AB3</iv>
-			<input>3D2FB854CCF399FEA8AA8C46D29C03C7</input>
-			<output>052AEDF54016429320B04243E308ECFE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF52D7982845CBAEB4E56592906B63943A0D10096B135EBDE8B2B42686D26548</key>
-			<iv>052AEDF54016429320B04243E308ECFE</iv>
-			<input>72A35107C250D98D2004936DFB3A864A</input>
-			<output>EE147A64DC2E31222A3A14B133769ACE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5D6B5899612FF15825029DEB0B37CB4ED4196A6DB73D6F9FC288A097B5A4FF86</key>
-			<iv>EE147A64DC2E31222A3A14B133769ACE</iv>
-			<input>82398F01496A3AF691E7F8799B5CA8DA</input>
-			<output>8330EF868E72D33172D7DEC7B440056C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FC23917C478894C9490A6585CCB8A716572985EB394FBCAEB05F7E5001E4FAEA</key>
-			<iv>8330EF868E72D33172D7DEC7B440056C</iv>
-			<input>A148C9E526A765916C08F86EC78F6C58</input>
-			<output>DC83E3727C4E9754A82BFCFFD924ACB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BCD556FA7AFA27F9675F45922924DFA68BAA669945012BFA187482AFD8C05659</key>
-			<iv>DC83E3727C4E9754A82BFCFFD924ACB3</iv>
-			<input>40F6C7863D72B3302E552017E59C78B0</input>
-			<output>C0B97D9320DC3E893953E1D93859D3E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A0F23A11C85F008CFEC20F76BD6751054B131B0A65DD157321276376E09985BD</key>
-			<iv>C0B97D9320DC3E893953E1D93859D3E4</iv>
-			<input>1C276CEBB2A52775999D4AE494438EA3</input>
-			<output>8C28875C39211D01A084A59BA71D0C31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2BB58C8FE9FE5BAEC5DB3F6A7EB98187C73B9C565CFC087281A3C6ED4784898C</key>
-			<iv>8C28875C39211D01A084A59BA71D0C31</iv>
-			<input>8B47B69E21A15B223B19301CC3DED082</input>
-			<output>7865E390E8019259A117669082ED5CCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6035A1AC1F0C1871EA06773DEA40B5C5BF5E7FC6B4FD9A2B20B4A07DC569D540</key>
-			<iv>7865E390E8019259A117669082ED5CCC</iv>
-			<input>4B802D23F6F243DF2FDD485794F93442</input>
-			<output>DC7BA7C54217B8DEE966C0672DBE79CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CCA70BB373BA65736D25078BB99980F66325D803F6EA22F5C9D2601AE8D7AC8D</key>
-			<iv>DC7BA7C54217B8DEE966C0672DBE79CD</iv>
-			<input>AC92AA1F6CB67D02872370B653D93533</input>
-			<output>CBB60FB6BE7240A2037CDA46DAAAC4E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6D9E4347ABCE875CDFB026A9B1CE767A893D7B548986257CAAEBA5C327D6869</key>
-			<iv>CBB60FB6BE7240A2037CDA46DAAAC4E4</iv>
-			<input>2A7EEF8709068D06A0DE05E122856791</input>
-			<output>3B0863884DCFFDAAE439E3BCFC2E0491</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90C0678C9B9796FACBD3A9E8E40A46E6939BB43D05579FFD2E9759E0CE536CF8</key>
-			<iv>3B0863884DCFFDAAE439E3BCFC2E0491</iv>
-			<input>761983B8E12B7E8F0628AB827F16A181</input>
-			<output>1407CDBD04CA6450D15A276B0E45D500</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A3505D86BF4B95AEC0F720B4CBDF4985879C7980019DFBADFFCD7E8BC016B9F8</key>
-			<iv>1407CDBD04CA6450D15A276B0E45D500</iv>
-			<input>33903A0A24DC03540B24895C2FD50F63</input>
-			<output>94B64DF8376EAF94F24EB0457DF81418</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EAD741BA44D8637A4D49A089E4A122F2132A347836F354390D83CECEBDEEADE0</key>
-			<iv>94B64DF8376EAF94F24EB0457DF81418</iv>
-			<input>49871C3CFB93F6D48DBE803D2F7E6B77</input>
-			<output>6E2DE304D4A21A218291FD9B59FED9BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>278551B22B73239BF36E61370FFF43EA7D07D77CE2514E188F123355E410745F</key>
-			<iv>6E2DE304D4A21A218291FD9B59FED9BF</iv>
-			<input>CD5210086FAB40E1BE27C1BEEB5E6118</input>
-			<output>72A1E7B22D6B8B8C38C4CCD545466879</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C7046CA82928EA5AE1E6998399A090BB0FA630CECF3AC594B7D6FF80A1561C26</key>
-			<iv>72A1E7B22D6B8B8C38C4CCD545466879</iv>
-			<input>E0813D1A025BC9C11288F8B4965FD351</input>
-			<output>F5F1B011C644D119625733433C3DBB40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>82AF7079A309A3B1367E4DC8EE90B8C5FA5780DF097E148DD581CCC39D6BA766</key>
-			<iv>F5F1B011C644D119625733433C3DBB40</iv>
-			<input>45AB1CD18A2149EBD798D44B7730287E</input>
-			<output>FDD90319FC2878AE4E23CE63C6660D1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB439411E1412BA8D6DB9F3052753D3F078E83C6F5566C239BA202A05B0DAA7C</key>
-			<iv>FDD90319FC2878AE4E23CE63C6660D1A</iv>
-			<input>69ECE46842488819E0A5D2F8BCE585FA</input>
-			<output>0B3948AEFD674622289CB41E3F668A5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2FDF3EB8C01693C7FB990CE6D7F56E10CB7CB6808312A01B33EB6BE646B2020</key>
-			<iv>0B3948AEFD674622289CB41E3F668A5C</iv>
-			<input>29BE67FA6D404294A9620FFE3F0A6BDE</input>
-			<output>9F5BF60EB5CCF9D9F3A20DA569209636</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECF0B5C32A3163495086894AB263166D93EC3D66BDFDD3D8409CBB1B0D4BB616</key>
-			<iv>9F5BF60EB5CCF9D9F3A20DA569209636</iv>
-			<input>2E0D4628A6300A752F3F1984DF1C408C</input>
-			<output>3FED40A5796B3D1FF8805E5EF8922511</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>259CAA194EE9BE90B2B1E7654CBDCD03AC017DC3C496EEC7B81CE545F5D99307</key>
-			<iv>3FED40A5796B3D1FF8805E5EF8922511</iv>
-			<input>C96C1FDA64D8DDD9E2376E2FFEDEDB6E</input>
-			<output>2973A39E09EF5F4F42B29E6730ECC127</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FAAB18CE5FA7895BAA9EC69A55F690208572DE5DCD79B188FAAE7B22C5355220</key>
-			<iv>2973A39E09EF5F4F42B29E6730ECC127</iv>
-			<input>DF37B2D7114E37CB182F21FF194B5D23</input>
-			<output>F8C4C1A86B0665E2124CFFA9128FFEFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3806BAB3764E794DF526A17BCE0112877DB61FF5A67FD46AE8E2848BD7BAACDD</key>
-			<iv>F8C4C1A86B0665E2124CFFA9128FFEFD</iv>
-			<input>C2ADA27D29E9F0165FB867E19BF782A7</input>
-			<output>90996F6629A41FC86A9520DD33AE5B3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B7F781357E024140C3797D01C286E72BED2F70938FDBCBA28277A456E414F7E2</key>
-			<iv>90996F6629A41FC86A9520DD33AE5B3F</iv>
-			<input>8FF13B86084C380D365FDC7A0C87F5AC</input>
-			<output>9DAFB2F259BFD18945A0A6EFF9A81A75</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B67D37A8E281AFD015C38A72F5662BEE7080C261D6641A2BC7D702B91DBCED97</key>
-			<iv>9DAFB2F259BFD18945A0A6EFF9A81A75</iv>
-			<input>018AB69D9C83EE90D6BAF77337E0CCC5</input>
-			<output>C89F523289AE2A7C8F796C2252CB0597</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A47B97F34FB4A8F219ED7A59EFE40080B81F90535FCA305748AE6E9B4F77E800</key>
-			<iv>C89F523289AE2A7C8F796C2252CB0597</iv>
-			<input>1206A05BAD3507220C2EF02B1A822B6E</input>
-			<output>3AACC4E5DE152BB1730C6D10C9A81A0A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8EBBFDA61B6BC6735953F8E448B5E0282B354B681DF1BE63BA2038B86DFF20A</key>
-			<iv>3AACC4E5DE152BB1730C6D10C9A81A0A</iv>
-			<input>4C9028292E0214952C7845D7AB6F5E82</input>
-			<output>1E315BFFFDC3DA42438E683263B496DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE950FF3D603DECEE18F4ACF99A623589C820F497C1CC1A4782C6BB9E56B64D7</key>
-			<iv>1E315BFFFDC3DA42438E683263B496DD</iv>
-			<input>067EB029B7B562A9D41A7541DD2D7D5A</input>
-			<output>9B021A44CD9FF920DFE1EC97B3EE8AE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E073E1149A4A605E041167F3739F17240780150DB1833884A7CD872E5685EE33</key>
-			<iv>9B021A44CD9FF920DFE1EC97B3EE8AE4</iv>
-			<input>0EE6EEE74C49BE90E59E2D3CEA39347C</input>
-			<output>4F62EE03D7A8337ECB3DCC0EA5444C2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF449E4B7DFA404D3F18C0266725F67248E2FB0E662B0BFA6CF04B20F3C1A21E</key>
-			<iv>4F62EE03D7A8337ECB3DCC0EA5444C2D</iv>
-			<input>5F377F5FE7B020133B09A7D514BAE156</input>
-			<output>AC8767B1E15D6D1ECACCCBF2D0FAB043</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3AB2898399D0F8467B37A5C916D9117AE4659CBF877666E4A63C80D2233B125D</key>
-			<iv>AC8767B1E15D6D1ECACCCBF2D0FAB043</iv>
-			<input>85F617C8E42AB80B442F65EF71FCE708</input>
-			<output>9CA6E27F1966AE133CB7B98C2B13C1DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>06A09B6D5A6BCA82B26D0625F2A89FA178C37EC09E10C8F79A8B395E0828D387</key>
-			<iv>9CA6E27F1966AE133CB7B98C2B13C1DA</iv>
-			<input>3C1212EEC3BB32C4C95AA3ECE4718EDB</input>
-			<output>B7A6788E6D9886047D1450B093F5B6FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>79A26263675E11BE581DDEA79A20CAACCF65064EF3884EF3E79F69EE9BDD6579</key>
-			<iv>B7A6788E6D9886047D1450B093F5B6FE</iv>
-			<input>7F02F90E3D35DB3CEA70D8826888550D</input>
-			<output>5C1785DC27BC301DEAFAEF325A4CCBFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21DEF781026D9ACB4108C6F9847C635F93728392D4347EEE0D6586DCC191AE84</key>
-			<iv>5C1785DC27BC301DEAFAEF325A4CCBFD</iv>
-			<input>587C95E265338B751915185E1E5CA9F3</input>
-			<output>9577E8F6DF5921C4B518974A2F1FCF07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB000BAA170733EA4D077BDD7DA1623506056B640B6D5F2AB87D1196EE8E6183</key>
-			<iv>9577E8F6DF5921C4B518974A2F1FCF07</iv>
-			<input>CADEFC2B156AA9210C0FBD24F9DD016A</input>
-			<output>09F8E3DA7C5E39F2F13C2B72001D1D56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D56A1025AB5F7B5F943B3AECAF87A2800FFD88BE773366D849413AE4EE937CD5</key>
-			<iv>09F8E3DA7C5E39F2F13C2B72001D1D56</iv>
-			<input>3E6A1B8FBC5848B5D93C4131D226C0B5</input>
-			<output>7344F33968E177F3864908F02915739A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>876077EA9BDB2134098B73CAD4411D997CB97B871FD2112BCF083214C7860F4F</key>
-			<iv>7344F33968E177F3864908F02915739A</iv>
-			<input>520A67CF30845A6B9DB049267BC6BF19</input>
-			<output>EC286360EF2A54CE894ED06ACF39970C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA9943761AD545F47EBCF5CD4584C3B3909118E7F0F845E54646E27E08BF9843</key>
-			<iv>EC286360EF2A54CE894ED06ACF39970C</iv>
-			<input>2DF9349C810E64C07737860791C5DE2A</input>
-			<output>89F4BE70D36A05C84FD2124F6A69786B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C285D3FD07EF5F6664B1F4C4CA771E31965A6972392402D0994F03162D6E028</key>
-			<iv>89F4BE70D36A05C84FD2124F6A69786B</iv>
-			<input>F6B11E49CAABB00218F7EA810923B250</input>
-			<output>9A65E99C06E0744056365C4A26CD001F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F28851656D77922A55655DBE4610993683004F0B2572346D5FA2AC7B441BE037</key>
-			<iv>9A65E99C06E0744056365C4A26CD001F</iv>
-			<input>AEA00C5ABD0967DC332E42F20AB7E8D5</input>
-			<output>566ECB7B317C81CF87BC483B4B6CF417</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62428DD3F6B04C564CA6D9DA9A9A64B3D56E8470140EB5A2D81EE4400F771420</key>
-			<iv>566ECB7B317C81CF87BC483B4B6CF417</iv>
-			<input>90CADCB69BC7DE7C19C38464DC8AFD85</input>
-			<output>16E3F727D2D4CC2E88C2A4B0DFEF34AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>78A68A0EC33E2C0198538C1EA591AF46C38D7357C6DA798C50DC40F0D098208F</key>
-			<iv>16E3F727D2D4CC2E88C2A4B0DFEF34AF</iv>
-			<input>1AE407DD358E6057D4F555C43F0BCBF5</input>
-			<output>6F6606018F5491FC43864FC29B572551</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4EFBCF71F7A0DA7564DAF1F0488AA933ACEB7556498EE870135A0F324BCF05DE</key>
-			<iv>6F6606018F5491FC43864FC29B572551</iv>
-			<input>365D457F349EF674FC897DEEED1B0675</input>
-			<output>BC07194E716B4D78F64E14B6E5762439</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A4BBF15395604071DF929A4922A129DD10EC6C1838E5A508E5141B84AEB921E7</key>
-			<iv>BC07194E716B4D78F64E14B6E5762439</iv>
-			<input>EA403E2262C09A04BB486BB96A2B80EE</input>
-			<output>BF1994171481FB4F84AB092F437EA9C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>665F10926596E8F5691ACE10AA5075AEAFF5F80F2C645E4761BF12ABEDC78820</key>
-			<iv>BF1994171481FB4F84AB092F437EA9C7</iv>
-			<input>C2E4E1C1F0F6A884B688545988F15C73</input>
-			<output>254FE05D25B67D3BF6C2688F46A7FAD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15F4BA29EBAAF160AC95507FDA03D7D58ABA185209D2237C977D7A24AB6072F8</key>
-			<iv>254FE05D25B67D3BF6C2688F46A7FAD8</iv>
-			<input>73ABAABB8E3C1995C58F9E6F7053A27B</input>
-			<output>A03B8DB2C1C9B6C574A8499C6E5869CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>96A760AB52E1D6A5ACFCA016E98D0BA12A8195E0C81B95B9E3D533B8C5381B37</key>
-			<iv>A03B8DB2C1C9B6C574A8499C6E5869CF</iv>
-			<input>8353DA82B94B27C50069F069338EDC74</input>
-			<output>088F141F097F659145DE8E1EDB2300B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C06F9EE0327C811CEE3CC3B2B492620220E81FFC164F028A60BBDA61E1B1B82</key>
-			<iv>088F141F097F659145DE8E1EDB2300B5</iv>
-			<input>EAA1994551C61EB4621F6C2DC2C42D81</input>
-			<output>43703327BFDAF109F6F9C5969D3C7649</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F8AC1E3014DD99D1A440A693CB73B51617EB2D87EBE012150F2783083276DCB</key>
-			<iv>43703327BFDAF109F6F9C5969D3C7649</iv>
-			<input>738C380D026A118CD4A7C65217FE1D71</input>
-			<output>BDAC873D0A674CDA98105DC3070F7BE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E595998ABEF32CABDD4A441B4042BF8BDCD235E574D94DFBC8E225F38428162F</key>
-			<iv>BDAC873D0A674CDA98105DC3070F7BE4</iv>
-			<input>EA1F5869BFBEF536C70E4E727CF584DA</input>
-			<output>A1A89122CF532FBC69E74A70F1E7346F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FBA3999F7BF540184E9BE7715CA8C0497D7AA4C7BB8A6247A1056F8375CF2240</key>
-			<iv>A1A89122CF532FBC69E74A70F1E7346F</iv>
-			<input>1E360015C5066CB393D1A36A1CEA7FC2</input>
-			<output>68C2A6FF8EABE7EA05E5DD6093C00129</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>65AF7CB5F5CEF75FEF0BF5F746D7DD7D15B80238352185ADA4E0B2E3E60F2369</key>
-			<iv>68C2A6FF8EABE7EA05E5DD6093C00129</iv>
-			<input>9E0CE52A8E3BB747A19012861A7F1D34</input>
-			<output>1EA92E63C6926082B04F69E658CFA478</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7D3BA807729873EB2021AC1817B2C7D30B112C5BF3B3E52F14AFDB05BEC08711</key>
-			<iv>1EA92E63C6926082B04F69E658CFA478</iv>
-			<input>1894D4B2875684B4CF2A59EF51651AAE</input>
-			<output>45A943F0B6430ABA20C562469AE98A6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5ECAEF5BF4EC899C7BFAEE2F50B864924EB86FAB45F0EF95346AB94324290D7C</key>
-			<iv>45A943F0B6430ABA20C562469AE98A6D</iv>
-			<input>23F1475C8674FA775BDB4237470AA341</input>
-			<output>6CDF579A8429606CC9BC56D010845954</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D394BD1C8C1D1F8A67A3BA16530662A22673831C1D98FF9FDD6EF9334AD5428</key>
-			<iv>6CDF579A8429606CC9BC56D010845954</iv>
-			<input>D3F3A48A3C2D5864DD80D58E358802B8</input>
-			<output>96E9E19694DB9931AC09A7B6296FEAA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9ABEC4725C717368463710CB2D45774DB48ED9A7550216C851DF48251DC2BE80</key>
-			<iv>96E9E19694DB9931AC09A7B6296FEAA8</iv>
-			<input>17878FA394B0A290E04D2B6A48751167</input>
-			<output>176C9B9B32A539F35BDFB21B38C42134</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3CA1E23510949D81242F16DE0E9B2B3AA3E2423C67A72F3B0A00FA3E25069FB4</key>
-			<iv>176C9B9B32A539F35BDFB21B38C42134</iv>
-			<input>A61F26474CE5EEE96218061523DE5C77</input>
-			<output>06004480169FB7B6D4DBA7453A85E54D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A72AA0C7EAA3113480EF57A83C272D7A5E206BC7138988DDEDB5D7B1F837AF9</key>
-			<iv>06004480169FB7B6D4DBA7453A85E54D</iv>
-			<input>16D348396E3EAC926C21E3A48D5959ED</input>
-			<output>FF2F4F6E32133CE8C70252937FE5BDA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90C0C8FC5B65BE92E643956293A70AF35ACD49D2432BA46519D90FE86066C75F</key>
-			<iv>FF2F4F6E32133CE8C70252937FE5BDA6</iv>
-			<input>BAB262F025CF8F81AE4D601810657824</input>
-			<output>0972CCC79C412DB6FBC5918B8E6EAB7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0AF49BAC4BD146E83C884327FFB682353BF8515DF6A89D3E21C9E63EE086C23</key>
-			<iv>0972CCC79C412DB6FBC5918B8E6EAB7C</iv>
-			<input>706F81469FD8AAFC658B1150EC5C62D0</input>
-			<output>2D8C668310308FCF7B3E325F50AA89E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E5C29451893B7B94249E89469E58DEAD7E33E396CF5A061C9922AC3CBEA2E5C6</key>
-			<iv>2D8C668310308FCF7B3E325F50AA89E5</iv>
-			<input>056DDDEB4D866FFAA7560D74E1A3B68E</input>
-			<output>8342DD95F1040E763C82E36F8F74822F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A9AD7CAFA46AE63362069120B502D33FD713E033E5E086AA5A04F5331D667E9</key>
-			<iv>8342DD95F1040E763C82E36F8F74822F</iv>
-			<input>AF58439B737DD5F712BEE0549508F39E</input>
-			<output>8CA83627884D9B7A62F096BD37C14EFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21AEFC00E7CC2942F319630702ECCC6B71D90824B6139310C750D9EE06172916</key>
-			<iv>8CA83627884D9B7A62F096BD37C14EFF</iv>
-			<input>6B342BCA1D8A8721C5390A1509BCE158</input>
-			<output>13073AB95C0C0587372564189A4C176F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7E615F002723795F6E37182ECC0C429E62DE329DEA1F9697F075BDF69C5B3E79</key>
-			<iv>13073AB95C0C0587372564189A4C176F</iv>
-			<input>5FCFA300C0EF501D9D2E7B29CEE08EF5</input>
-			<output>247A01C6A7072F64CB463E6580DA222E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2A25232803E901B35080B5CA64DEC2646A4335B4D18B9F33B3383931C811C57</key>
-			<iv>247A01C6A7072F64CB463E6580DA222E</iv>
-			<input>BCC30D32A71DE9445B3F13726A41AEB8</input>
-			<output>562355D078402DA76B0CCAAC2BE63DAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>46C06B83AD1C5CD849C53A11C05137141087668B35589454503F493F376721F9</key>
-			<iv>562355D078402DA76B0CCAAC2BE63DAE</iv>
-			<input>846239B12D22CCC37CCD314D661CDB32</input>
-			<output>841B1644CCE1BF9DB0D537733047DB7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CB3AD5FB9E07D380841D712E7A71FC15949C70CFF9B92BC9E0EA7E4C0720FA86</key>
-			<iv>841B1644CCE1BF9DB0D537733047DB7F</iv>
-			<input>8DFABE78331B8F58CDD84B3FBA20CB01</input>
-			<output>DE34C065627DB86A2D0AE89FB31BDA86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>240CFC15D60F6AE4A53D2C25BD71DD6E4AA8B0AA9BC493A3CDE096D3B43B2000</key>
-			<iv>DE34C065627DB86A2D0AE89FB31BDA86</iv>
-			<input>EF3629EE4808B96421205D0BC700217B</input>
-			<output>38DD744B95756614261178685FBF097F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FAA7CBA4AAAD9576591C12233960F1C87275C4E10EB1F5B7EBF1EEBBEB84297F</key>
-			<iv>38DD744B95756614261178685FBF097F</iv>
-			<input>DEAB37B17CA2FF92FC213E0684112CA6</input>
-			<output>DC1CF4E4633355111AD09BE1C6BC1E39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>29E0D33A81FFDCE220D1587C36C5EB09AE6930056D82A0A6F121755A2D383746</key>
-			<iv>DC1CF4E4633355111AD09BE1C6BC1E39</iv>
-			<input>D347189E2B52499479CD4A5F0FA51AC1</input>
-			<output>2A5DC4E8C16753D202B638E5003AF83D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>956C5751C5B439990A006DB1B52336E78434F4EDACE5F374F3974DBF2D02CF7B</key>
-			<iv>2A5DC4E8C16753D202B638E5003AF83D</iv>
-			<input>BC8C846B444BE57B2AD135CD83E6DDEE</input>
-			<output>70F5676DC7646EA8F8A913AE6AD21949</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8AD9D44BC9018FD05B103360575592FEF4C193806B819DDC0B3E5E1147D0D632</key>
-			<iv>70F5676DC7646EA8F8A913AE6AD21949</iv>
-			<input>1FB5831A0CB5B64951105ED1E276A419</input>
-			<output>C44DA6A603A1E9C02F18123D5CAD5291</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DA77F2DA5CD7148B15FE8CA898C9A25E308C35266820741C24264C2C1B7D84A3</key>
-			<iv>C44DA6A603A1E9C02F18123D5CAD5291</iv>
-			<input>50AE269195D69B5B4EEEBFC8CF9C30A0</input>
-			<output>53C2D89EC4D5867DC79168D21C9B8755</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A4FD6AED6825A2A0C2114460F029EDA634EEDB8ACF5F261E3B724FE07E603F6</key>
-			<iv>53C2D89EC4D5867DC79168D21C9B8755</iv>
-			<input>903824748A554EA119DF98EE97CB3C84</input>
-			<output>79B9DABE5171A614CAFDEA11637A1800</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>29102930967275801BD019D6766FDA1A1AF73706FD845475294ACEEF649C1BF6</key>
-			<iv>79B9DABE5171A614CAFDEA11637A1800</iv>
-			<input>635FFF9E40F02FAA17F10D90796D44C0</input>
-			<output>8AB92FA5EA50F1185112FE4D8D2FCC21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4ABA34B232C18EAD6D367320651C374904E18A317D4A56D785830A2E9B3D7D7</key>
-			<iv>8AB92FA5EA50F1185112FE4D8D2FCC21</iv>
-			<input>DDBB8A7BB55E6D6ACD037EE4703E196E</input>
-			<output>FB97C84040732D7B308C5959059D90A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FB140F98A79F5D5D68B80301CB7B640E6BD9D0E357A7881648D469FBEC2E477E</key>
-			<iv>FB97C84040732D7B308C5959059D90A9</iv>
-			<input>0FBFACD384B345B7BE6B6433CD2AA77A</input>
-			<output>D0D0119D500519BF5B4770C494B41680</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC98221C0792D22B6EB258E57DB0D8B0BB09C17E07A291A91393193F789A51FE</key>
-			<iv>D0D0119D500519BF5B4770C494B41680</iv>
-			<input>478C2D84A00D8F76060A5BE4B6CBBCBE</input>
-			<output>94842399FC93828D30979DAD9210B827</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C92F345AC3CB803EA91C123F97E7005A2F8DE2E7FB31132423048492EA8AE9D9</key>
-			<iv>94842399FC93828D30979DAD9210B827</iv>
-			<input>75B71646C4595215C7AE4ADAEA57D8EA</input>
-			<output>5BDB886E7A7DBBA8679704F13F44B981</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3EACAF51FEA9A9886D0B9D1B6BA8436574566A89814CA88C44938063D5CE5058</key>
-			<iv>5BDB886E7A7DBBA8679704F13F44B981</iv>
-			<input>F7839B0B3D6229B6C4178F24FC4F433F</input>
-			<output>A2DA893257EE0F732A80FC52887A0788</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>72E26FEDC250C5FED59FE29C966B61FAD68CE3BBD6A2A7FF6E137C315DB457D0</key>
-			<iv>A2DA893257EE0F732A80FC52887A0788</iv>
-			<input>4C4EC0BC3CF96C76B8947F87FDC3229F</input>
-			<output>2F7877481B1162B01616C9F3268B4C44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>901C1268AD3582E6A9FA4C5CBB99D07EF9F494F3CDB3C54F7805B5C27B3F1B94</key>
-			<iv>2F7877481B1162B01616C9F3268B4C44</iv>
-			<input>E2FE7D856F6547187C65AEC02DF2B184</input>
-			<output>9FFA4AF8D0F096CC40A9F879076211E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EAF814EC49F2254E4933FAF977D7BEEC660EDE0B1D43538338AC4DBB7C5D0A74</key>
-			<iv>9FFA4AF8D0F096CC40A9F879076211E0</iv>
-			<input>7AE40684E4C7A7A8E0C9B6A5CC4E6E92</input>
-			<output>886097F5BC20C157A605CBEFCA5663D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ED70BBA192093A0C9AD62E86C27091FEE6E49FEA16392D49EA98654B60B69A3</key>
-			<iv>886097F5BC20C157A605CBEFCA5663D7</iv>
-			<input>642F1F5650D2B6EE809E98111BF0B7F3</input>
-			<output>00DBBB84F52B3C9B28325161072753B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18280464C9E683CFFF9B75A5FD74EE96EEB5F27A5448AE4FB69BD735B12C3A15</key>
-			<iv>00DBBB84F52B3C9B28325161072753B6</iv>
-			<input>96FF0FDED0C6106F3636174D9153E789</input>
-			<output>714A27832B326F0A8FA745012DE4D936</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F464EE1298B09059016082CCC5ABC0129FFFD5F97F7AC145393C92349CC8E323</key>
-			<iv>714A27832B326F0A8FA745012DE4D936</iv>
-			<input>EC4CEA7651561396FEFBF76938DF2E84</input>
-			<output>5DE8A5CDBA7A6111A646AA17CA5324D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE7301D63C482593ABB33CF4A57F1101C2177034C500A0549F7A3823569BC7F7</key>
-			<iv>5DE8A5CDBA7A6111A646AA17CA5324D4</iv>
-			<input>1A17EFC4A4F8B5CAAAD3BE3860D4D113</input>
-			<output>EA197ECF36E63616EBB0D9D7C1BD9A22</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>10528506D50D143EAC40D83731DD55F0280E0EFBF3E6964274CAE1F497265DD5</key>
-			<iv>EA197ECF36E63616EBB0D9D7C1BD9A22</iv>
-			<input>FE2184D0E94531AD07F3E4C394A244F1</input>
-			<output>798349D56EC37993B0E131F8E3F64860</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>438E1B672254504B972927644802ED36518D472E9D25EFD1C42BD00C74D015B5</key>
-			<iv>798349D56EC37993B0E131F8E3F64860</iv>
-			<input>53DC9E61F75944753B69FF5379DFB8C6</input>
-			<output>545E4CD72E74F5A91B29DDBA60BCEB5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7E32F16A4E2E125A95FF9963C6F9796105D30BF9B3511A78DF020DB6146CFEEF</key>
-			<iv>545E4CD72E74F5A91B29DDBA60BCEB5A</iv>
-			<input>3DBCEA0D6C7A421102D6BE078EFB9457</input>
-			<output>084142F2C892DCF8A37A509DF0D669BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B1BEC1C124A0941D0BA6C75239C17E250D92490B7BC3C6807C785D2BE4BA9753</key>
-			<iv>084142F2C892DCF8A37A509DF0D669BC</iv>
-			<input>CF8C30AB6A8E86479E595E31FF380744</input>
-			<output>0A96C326C9D642F1F84C8772BCF8EB4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80D7A5A2AE29B42143046D45B6B6B36C07048A2DB21584718434DA5958427C19</key>
-			<iv>0A96C326C9D642F1F84C8772BCF8EB4A</iv>
-			<input>316964638A89203C48A2AA178F77CD49</input>
-			<output>273916ED09A517CE5C6A294D82E78980</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4D1C892DF27868BBB0FE803145C1D731203D9CC0BBB093BFD85EF314DAA5F599</key>
-			<iv>273916ED09A517CE5C6A294D82E78980</iv>
-			<input>CDCB2C8F5C51DC9AF3FAED74F377645D</input>
-			<output>7183A7C83964ECFB2A1E44FFCFEBB7C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8C9B28041ECD5149A51207ACE38F0D0351BE3B0882D47F44F240B7EB154E4258</key>
-			<iv>7183A7C83964ECFB2A1E44FFCFEBB7C1</iv>
-			<input>C187A129ECB539F215EC879DA64EDA32</input>
-			<output>6015DF395D795DECA0A2F833E3614000</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FF175C7C745BB06E51EEDAA4F2C61E0F31ABE431DFAD22A852E24FD8F62F0258</key>
-			<iv>6015DF395D795DECA0A2F833E3614000</iv>
-			<input>738C74786A96E127F4FCDD081149130C</input>
-			<output>B6B466B56B0E994E672072C273BA067D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0C84C64E1BB3B86E9AF5A8405D950B3A871F8284B4A3BBE635C23D1A85950425</key>
-			<iv>B6B466B56B0E994E672072C273BA067D</iv>
-			<input>F3939A326FE80800CB1B72E4AF531535</input>
-			<output>C8566E37DF2E2958DDD5D2DB49889BA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5FF4C2A08B85338172D2779BF789DA234F49ECB36B8D92BEE817EFC1CC1D9F8D</key>
-			<iv>C8566E37DF2E2958DDD5D2DB49889BA8</iv>
-			<input>537004EE90368BEFE827DFDBAA1CD119</input>
-			<output>C4A8D14DB86637E94AF515764BC7DF44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BD81DE1813AEC9BAFDDC90E4A563CB338BE13DFED3EBA557A2E2FAB787DA40C9</key>
-			<iv>C4A8D14DB86637E94AF515764BC7DF44</iv>
-			<input>E2751CB8982BFA3B8F0EE77F52EA1110</input>
-			<output>5707495E4CBA3727FBA5D7F4F61AF35C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AE1B09CB7D99BAC0A71B3E83815F10A2DCE674A09F51927059472D4371C0B395</key>
-			<iv>5707495E4CBA3727FBA5D7F4F61AF35C</iv>
-			<input>139AD7D36E37737A5AC7AE67243CDB91</input>
-			<output>C770CD182DFF66E4D6A7BFEFE2820AE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4F7491F03447293C42DE8393E7AD91741B96B9B8B2AEF4948FE092AC9342B974</key>
-			<iv>C770CD182DFF66E4D6A7BFEFE2820AE1</iv>
-			<input>E16F983B49DE93FCE5C5BD1066F281D6</input>
-			<output>E2044134ACD21D5AD026671BDC0CB2E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A747EF80608CED4309800CA0B1C73081F992F88C1E7CE9CE5FC6F5B74F4E0B90</key>
-			<iv>E2044134ACD21D5AD026671BDC0CB2E4</iv>
-			<input>E8337E7054CBC47F4B5E8F33566AA1F5</input>
-			<output>303CF7780126AD06B5272A8350639C93</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E5EBF5E471F2CA9F38492F604438B9C0C9AE0FF41F5A44C8EAE1DF341F2D9703</key>
-			<iv>303CF7780126AD06B5272A8350639C93</iv>
-			<input>42AC1A64117E27DC31C923C0F5FF8941</input>
-			<output>DACCD42953603A1321CAD9C236454598</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B5E5C9211A5C43F2267B4A2411FC2CC21362DBDD4C3A7EDBCB2B06F62968D29B</key>
-			<iv>DACCD42953603A1321CAD9C236454598</iv>
-			<input>500E3CC56BAE896D1E32654455C49502</input>
-			<output>F9AB4D1D8255E83B330031EBE2ECE5C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D78453D63A2DD8D08BF5F250F2581CFEAC996C0CE6F96E0F82B371DCB84375D</key>
-			<iv>F9AB4D1D8255E83B330031EBE2ECE5C6</iv>
-			<input>389D8C1C79FE9E7F2EC415011ED9AD0D</input>
-			<output>0F28E2D4CC948D36E18F80184A594841</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2E921775036404FD9939EE83C9585481E5E1741402FB1BD619A4B70581DD7F1C</key>
-			<iv>0F28E2D4CC948D36E18F80184A594841</iv>
-			<input>A3EA524860C6D9709186B1A6C67DD54E</input>
-			<output>A4756EAB45BCF716A52038C729E420C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F86FEF42701B1D779BD46BE515680FC41941ABF4747ECC0BC848FC2A8395FDA</key>
-			<iv>A4756EAB45BCF716A52038C729E420C6</iv>
-			<input>B114E9812465B52AE084A83D980ED47D</input>
-			<output>9834425E009006673E777E3552E83D20</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2212046FFD03BA552089FBF7B2F3EF32D9A058E147D7EAA782F3F1F7FAD162FA</key>
-			<iv>9834425E009006673E777E3552E83D20</iv>
-			<input>BD94FA9BDA020B825934BD49E3A56FCE</input>
-			<output>AEA572D530A3694EAFF6DFDE30B80D5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F73BB21F916D8011751AFDDDCD130A6477052A34777483E92D052E29CA696FA0</key>
-			<iv>AEA572D530A3694EAFF6DFDE30B80D5A</iv>
-			<input>D529B6706C6E3A445593062A7FE0E556</input>
-			<output>86394E06B621147758CAB012852035A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE44A367A3CDDFED7DBD980BF731B4E5F13C6432C155979E75CF9E3B4F495A06</key>
-			<iv>86394E06B621147758CAB012852035A6</iv>
-			<input>197F117832A05FFC08A765D63A22BE81</input>
-			<output>3CBC18C1AC02C0A7595199E08F1F552B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1558BABB3DCD830F693E7950F736BCADCD807CF36D5757392C9E07DBC0560F2D</key>
-			<iv>3CBC18C1AC02C0A7595199E08F1F552B</iv>
-			<input>FB1C19DC9E005CE21483E15B00070848</input>
-			<output>5A9CFD8BFE10CF7FBD0F9A3FAF6C117B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D083F58141F5E5AF3D5479739D55780D971C81789347984691919DE46F3A1E56</key>
-			<iv>5A9CFD8BFE10CF7FBD0F9A3FAF6C117B</iv>
-			<input>C5DB4F3A7C3866A0546A00236A63C4A0</input>
-			<output>61A437D4E2F1C3779F1EBE906C5D2C12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C60824F2DDC67623D270974E9F87BD27F6B8B6AC71B65B310E8F237403673244</key>
-			<iv>61A437D4E2F1C3779F1EBE906C5D2C12</iv>
-			<input>168BD1739C33938CEF24EE3D02D2C52A</input>
-			<output>FC675EE1B12B47410A20CFAC23FD20EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F73A715AD84DB0A6F55AD584922001920ADFE84DC09D1C7004AFECD8209A12AA</key>
-			<iv>FC675EE1B12B47410A20CFAC23FD20EE</iv>
-			<input>313255A8058BC685272A42CA0DA7BCB5</input>
-			<output>82E3FB6189716D94C8E9D30E1ECCABC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6ABBDCE21E2ECECBCAA3473897A2E178883C132C49EC71E4CC463FD63E56B96E</key>
-			<iv>82E3FB6189716D94C8E9D30E1ECCABC4</iv>
-			<input>9D81ADB8C6637E6D3FF992BC0582E0EA</input>
-			<output>BD84DCE4994B505EED71596B454BDF85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D4F68CDB9B53B08E22DDDFE4FD5FCC035B8CFC8D0A721BA213766BD7B1D66EB</key>
-			<iv>BD84DCE4994B505EED71596B454BDF85</iv>
-			<input>67F4B42FA79BF5C3288E9AC6D8771DB8</input>
-			<output>1B3AA490C6E874BA77CE55D71789616C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D8E3121698DD7E9D1835EFF5FA02DB22E826B58164F550056F9336A6C940787</key>
-			<iv>1B3AA490C6E874BA77CE55D71789616C</iv>
-			<input>30C159ECD038ECE133AE83011075D172</input>
-			<output>D6EE171B39B5E40535FBF5A7CB4C6953</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A5B2249CA785F0DB58FF5B07CCCFCDEF86C7C432FFAB1056302C6CDA7D86ED4</key>
-			<iv>D6EE171B39B5E40535FBF5A7CB4C6953</iv>
-			<input>27D51368A3F588E4640CAB4F236CD16C</input>
-			<output>8691BE10D13B4C08246938750EE33643</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48AD5DEF217F83DC5039ECD1191ABE3A7EFDC253FEC1FD0D476BFEB8A93B5897</key>
-			<iv>8691BE10D13B4C08246938750EE33643</iv>
-			<input>52F67FA6EB07DCD1E5B6196165D642E4</input>
-			<output>E40AD0EE818639E37349E1132B138D63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FEB84B0B264A8A6FB8D4DE065DA68A479AF712BD7F47C4EE34221FAB8228D5F4</key>
-			<iv>E40AD0EE818639E37349E1132B138D63</iv>
-			<input>B61516E4073509B3E8ED32D744BC347D</input>
-			<output>6E40A22767A39C978F279D40B447099D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2FE79FCC3C959901BAAEE8C55B71D01FF4B7B09A18E45879BB0582EB366FDC69</key>
-			<iv>6E40A22767A39C978F279D40B447099D</iv>
-			<input>D15FD4C71ADF136E027A36C306D75A58</input>
-			<output>C2DE8C5200F6FCBF1A4D6178909DF110</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C3EB1424EFD0ACDF3670C4943CB2CF5936693CC81812A4C6A148E393A6F22D79</key>
-			<iv>C2DE8C5200F6FCBF1A4D6178909DF110</iv>
-			<input>EC0C8BE8D34535DE8CDE2C5167C31F46</input>
-			<output>104CBECB1134CAE09B2FE8C5CE2E0901</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF9F70702DA816906F3907575DF4D3032625820309266E263A670B5668DC2478</key>
-			<iv>104CBECB1134CAE09B2FE8C5CE2E0901</iv>
-			<input>1C746454C278BA4F5949C3C361461C5A</input>
-			<output>65287F66F01AC054B1051D700EDDBF2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6C4CE3006A43EFBE18C5FF305F32C37430DFD65F93CAE728B62162666019B53</key>
-			<iv>65287F66F01AC054B1051D700EDDBF2B</iv>
-			<input>295BBE402B0C286B8EB558A45807FF34</input>
-			<output>4933D44FD414225CB1E6951240D28150</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3963CE7465D89FBE550649326262DB450A3E292A2D288C2E3A84833426D31A03</key>
-			<iv>4933D44FD414225CB1E6951240D28150</iv>
-			<input>CFA70044637CA145B48A16C16791F772</input>
-			<output>3733351F76DE0E07581F84600E38EFDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42468662273D8CB3EFAB19DBC802888B3D0D1C355BF68229629B075428EBF5DE</key>
-			<iv>3733351F76DE0E07581F84600E38EFDD</iv>
-			<input>7B25481642E5130DBAAD50E9AA6053CE</input>
-			<output>F16F22EB9CCD854591AE2FC28E1D4B59</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2B3E5EA6573FC8ABE4E890FA4F5502DCC623EDEC73B076CF3352896A6F6BE87</key>
-			<iv>F16F22EB9CCD854591AE2FC28E1D4B59</iv>
-			<input>A0F56388424E703951E590D46CF7D8A6</input>
-			<output>1D607C6E9BAD454DD5DE785F2A78F990</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FDB55AF96E09AF677AA4737992E13C9ED10242B05C96422126EB50C98C8E4717</key>
-			<iv>1D607C6E9BAD454DD5DE785F2A78F990</iv>
-			<input>1F06BF130B7A53EDC4EAFA7636146CB3</input>
-			<output>7B16B6A8F88E05F6A9A036A67CB8A2B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E546D74518CF4AA64B399EA321C570CAAA14F418A41847D78F4B666FF036E5A1</key>
-			<iv>7B16B6A8F88E05F6A9A036A67CB8A2B6</iv>
-			<input>18F38DBC76C6E5C1319DEDDAB3244C54</input>
-			<output>63AD66FCF9D52195CD0339443F554311</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2F9B91A24BEF0E503DC576E4F8D32C16C9B992E45DCD664242485F2BCF63A6B0</key>
-			<iv>63AD66FCF9D52195CD0339443F554311</iv>
-			<input>CADD46E7532044F676FCE847D9165CDC</input>
-			<output>6293FBB897D8F0C60171BEA3072CA512</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>97B7DF112EFFE9279D5EDF932889D84BAB2A695CCA1596844339E188C84F03A2</key>
-			<iv>6293FBB897D8F0C60171BEA3072CA512</iv>
-			<input>B82C4EB36510E777A09BA977D05AF45D</input>
-			<output>9555D7F244448C80E965CE6AB7EF0F7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>39F26B429FE4111DAA984F03112B339F3E7FBEAE8E511A04AA5C2FE27FA00CD9</key>
-			<iv>9555D7F244448C80E965CE6AB7EF0F7B</iv>
-			<input>AE45B453B11BF83A37C6909039A2EBD4</input>
-			<output>FA242C9DB2984E9EFA8CD98AE7C29D6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64C6D001CB3C8AFC24A72DA11D172727C45B92333CC9549A50D0F668986291B6</key>
-			<iv>FA242C9DB2984E9EFA8CD98AE7C29D6F</iv>
-			<input>5D34BB4354D89BE18E3F62A20C3C14B8</input>
-			<output>2998B59B0441F068D7F3FCE7AEAA6FD9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FE56E2EB2434CA49D46A684DBCE2426CEDC327A83888A4F287230A8F36C8FE6F</key>
-			<iv>2998B59B0441F068D7F3FCE7AEAA6FD9</iv>
-			<input>9A9032EAEF0840B5F0CD45ECA1F5654B</input>
-			<output>A3F77BBA27BA88F33D4330EB2CC0EFBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F9B3CAD0EDFA9C429F3A005C78FE9F84E345C121F322C01BA603A641A0811D5</key>
-			<iv>A3F77BBA27BA88F33D4330EB2CC0EFBA</iv>
-			<input>F1CDDE462AEB638DFD99C8487B6DAB94</input>
-			<output>9C751C64BCB82229ABA5130353455CCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1725A4C019FB909FB1DE2ACA00E9A33DD2414076A38A0E2811C52967494D4D1E</key>
-			<iv>9C751C64BCB82229ABA5130353455CCB</iv>
-			<input>18BE986D1724395B982D8ACFC7664AC5</input>
-			<output>540DE482B7170E925FA4B429F6BCD458</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2A619367235AA4611A72FD4FAF68FB3864CA4F4149D00BA4E619D4EBFF19946</key>
-			<iv>540DE482B7170E925FA4B429F6BCD458</iv>
-			<input>F583BDF66BCE3AD9A079051EFA1F2C8E</input>
-			<output>6AADE1E1A12F5C83AF434CAD95B29678</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8629FB2CC8C06A07EC910681499E917FECE14515B5B25C39E122D1E32A430F3E</key>
-			<iv>6AADE1E1A12F5C83AF434CAD95B29678</iv>
-			<input>648FE21ABAF5C041FD362955B3681ECC</input>
-			<output>11308758A1C2075FEAECD260867CA343</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EDD76C395D2A0D3D547CFB394B439EAFDD1C24D14705B660BCE0383AC3FAC7D</key>
-			<iv>11308758A1C2075FEAECD260867CA343</iv>
-			<input>D8F48DEF5D12CAD439D6C932DD2AA895</input>
-			<output>14C9A904A3909A8FF44D88E22F8626DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AF3FA8D6034564D7151C3933C7986CFCE9186B49B7E0C1E9FF838B6183B98AA2</key>
-			<iv>14C9A904A3909A8FF44D88E22F8626DF</iv>
-			<input>F1E2DE159697C404C05BF680532C5516</input>
-			<output>A042D7F391A37E5A3EDB3022400EC797</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ACC720216DBDBDB4C213FE65E575A09495ABCBA2643BFB3C158BB43C3B74D35</key>
-			<iv>A042D7F391A37E5A3EDB3022400EC797</iv>
-			<input>25F3DAD4159EBF0C593D06D599CF36F5</input>
-			<output>439FEF326223A65F7A555C6231178190</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F2882A52603203A71895A5870CCF7EE40AC55388446019ECBB0DE721F2A0CCA5</key>
-			<iv>439FEF326223A65F7A555C6231178190</iv>
-			<input>7844585076E9D87C54B49A61529824ED</input>
-			<output>6FE1286C19AA3BC802F1C6C7B58DB4C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>57EFB10BFC21E28397A9D5E5A533D35B65247BE45DCA2224B9FC21E6472D7861</key>
-			<iv>6FE1286C19AA3BC802F1C6C7B58DB4C4</iv>
-			<input>A5679B599C13E1248F3C7062A9FCADBF</input>
-			<output>C38D763981392FF038573CA341DD8EA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19328A5147BC2E7C5149DA257487D734A6A90DDDDCF30DD481AB1D4506F0F6C0</key>
-			<iv>C38D763981392FF038573CA341DD8EA1</iv>
-			<input>4EDD3B5ABB9DCCFFC6E00FC0D1B4046F</input>
-			<output>5FD553A2848C683B138D50F2741B124D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ED66DE43FE0F966850EF6754E21B69A0F97C5E7F587F65EF92264DB772EBE48D</key>
-			<iv>5FD553A2848C683B138D50F2741B124D</iv>
-			<input>F4545412B9B3B81401A6BD71969CBE94</input>
-			<output>910CDCBE38068A51185A879FF2B45B9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E53D9016DE7DF4E2377968864B6F69F8687082C16079EFBE8A7CCA28805FBF11</key>
-			<iv>910CDCBE38068A51185A879FF2B45B9C</iv>
-			<input>085B4E552072628A67960FD2A9740058</input>
-			<output>E0A0E68A14893501D75BC42B8EFC6F96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C88C4383E2D16541765E5DB85957C59188D0644B74F0DABF5D270E030EA3D087</key>
-			<iv>E0A0E68A14893501D75BC42B8EFC6F96</iv>
-			<input>2DB1D3953CAC91A34127353E1238AC69</input>
-			<output>A66DD21DA627347F962A0AB7DCA887ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6F01CC5C22DE71C7C2D5B429AA756A392EBDB656D2D7EEC0CB0D04B4D20B576A</key>
-			<iv>A66DD21DA627347F962A0AB7DCA887ED</iv>
-			<input>A78D8FDFC00F1486B48BE991F322AFA8</input>
-			<output>87551BC7A6B6D9B76239CB8A31FF1993</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DAC405506CD3779FC2400B459B7C6B6EA9E8AD9174613777A934CF3EE3F44EF9</key>
-			<iv>87551BC7A6B6D9B76239CB8A31FF1993</iv>
-			<input>B5C5C90C4E0D06580095BF6C31090157</input>
-			<output>B909B206A041F33EB3AC7ED481DFBA21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E482333E6FBAA8427A2E30D56069E0B810E11F97D420C4491A98B1EA622BF4D8</key>
-			<iv>B909B206A041F33EB3AC7ED481DFBA21</iv>
-			<input>3E46366E0369DFDDB86E3B90FB158BD6</input>
-			<output>DE5E71F446794D3402400C96FBFEB93F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>176CAD69CD20690B95DA40B95C43AC54CEBF6E639259897D18D8BD7C99D54DE7</key>
-			<iv>DE5E71F446794D3402400C96FBFEB93F</iv>
-			<input>F3EE9E57A29AC149EFF4706C3C2A4CEC</input>
-			<output>175A7C580A99E985A2FD2F185D9BAADB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FA4DD79A64960C8264624CDF215B54A1D9E5123B98C060F8BA259264C44EE73C</key>
-			<iv>175A7C580A99E985A2FD2F185D9BAADB</iv>
-			<input>ED217AF3A9B66589F1B80C667D18F8F5</input>
-			<output>413EB5D166C1D196F0239FF34D184013</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>49855C1008EAF59432518A9F3807A0B398DBA7EAFE01B16E4A060D978956A72F</key>
-			<iv>413EB5D166C1D196F0239FF34D184013</iv>
-			<input>B3C88B8A6C7CF9165633C640195CF412</input>
-			<output>69A3A63C580336296FF826600C754747</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>849D231AE9F90F233F328BE6EE0AC180F17801D6A602874725FE2BF78523E068</key>
-			<iv>69A3A63C580336296FF826600C754747</iv>
-			<input>CD187F0AE113FAB70D630179D60D6133</input>
-			<output>B9AF0CA2B502C2DEB66834BD729AA528</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>40E3F7EA3E7CFBDBF57935DBB124CF7F48D70D741300459993961F4AF7B94540</key>
-			<iv>B9AF0CA2B502C2DEB66834BD729AA528</iv>
-			<input>C47ED4F0D785F4F8CA4BBE3D5F2E0EFF</input>
-			<output>99E16968796AB521FC460A8DF6744FA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4FDF8D16B85E527490FBE95EA34138D6D136641C6A6AF0B86FD015C701CD0AE8</key>
-			<iv>99E16968796AB521FC460A8DF6744FA8</iv>
-			<input>0F3C7AFC8622A9AF6582DC851265F7A9</input>
-			<output>7B871B0153657949D1FE7259E16791B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6AD7099EA6DC50F5CC836C3EB934CF92AAB17F1D390F89F1BE2E679EE0AA9B5F</key>
-			<iv>7B871B0153657949D1FE7259E16791B7</iv>
-			<input>250884881E8202815C7885601A75F744</input>
-			<output>8D6B80EAC01BF7E204A79DD14BFDB71A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0860DD776AD2014ED90D0837A5A298B627DAFFF7F9147E13BA89FA4FAB572C45</key>
-			<iv>8D6B80EAC01BF7E204A79DD14BFDB71A</iv>
-			<input>62B7D4E9CC0E51BB158E64091C965724</input>
-			<output>DAD6A83408559AD3003C6995DC099303</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9E8757199D96CA08B9C3CEF817E902B8FD0C57C3F141E4C0BAB593DA775EBF46</key>
-			<iv>DAD6A83408559AD3003C6995DC099303</iv>
-			<input>96E78A6EF744CB4660CEC6CFB24B9A0E</input>
-			<output>AA6EF32AFC8AA6ADCDE86D86CC59AFB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>483AD9696154B929F35016B648F5952B5762A4E90DCB426D775DFE5CBB0710F2</key>
-			<iv>AA6EF32AFC8AA6ADCDE86D86CC59AFB4</iv>
-			<input>D6BD8E70FCC273214A93D84E5F1C9793</input>
-			<output>713F9516A55FBFA4AE8155EC12A3AB5D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>027B7F5F83B26099A4CE8FCC1AB84529265D31FFA894FDC9D9DCABB0A9A4BBAF</key>
-			<iv>713F9516A55FBFA4AE8155EC12A3AB5D</iv>
-			<input>4A41A636E2E6D9B0579E997A524DD002</input>
-			<output>B2E4BEAF6DB84214E379B89697191379</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D7AEFAD28855BB04A9604527F8376CAF94B98F50C52CBFDD3AA513263EBDA8D6</key>
-			<iv>B2E4BEAF6DB84214E379B89697191379</iv>
-			<input>D5D5858D0BE7DB9D0DAECAEBE28F2986</input>
-			<output>9FE3B8941D9F85B1400CC45B7BDE8E9F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B5EBE7CB901F69E61EC6F011E6A46A2E0B5A37C4D8B33A6C7AA9D77D45632649</key>
-			<iv>9FE3B8941D9F85B1400CC45B7BDE8E9F</iv>
-			<input>62451D19184AD2E2B7A6B5361E930681</input>
-			<output>E9ABFC5563B4AD1718EF4A91F7D60913</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>571805B63BC20F5784AF56FDB71CBCD7E2F1CB91BB07977B62469DECB2B52F5A</key>
-			<iv>E9ABFC5563B4AD1718EF4A91F7D60913</iv>
-			<input>E2F3E27DABDD66B19A69A6EC51B8D6F9</input>
-			<output>D825DC1C8C73A84BDFEFD9799D9E3960</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9EED79D9ABB11094FB4475ED2EC042133AD4178D37743F30BDA944952F2B163A</key>
-			<iv>D825DC1C8C73A84BDFEFD9799D9E3960</iv>
-			<input>C9F57C6F90731FC37FEB231099DCFEC4</input>
-			<output>7D0DC4C31259FD0A46D2D2282F1FE22E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EF905E20846E064A3B3281FD2BD59AB647D9D34E252DC23AFB7B96BD0034F414</key>
-			<iv>7D0DC4C31259FD0A46D2D2282F1FE22E</iv>
-			<input>717D27F92FDF16DEC076F4100515D8A5</input>
-			<output>93FAFC16EFF504A9D2B791A272A78135</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8F219C67ACF0F1C745FA0ABBADE96015D4232F58CAD8C69329CC071F72937521</key>
-			<iv>93FAFC16EFF504A9D2B791A272A78135</iv>
-			<input>60B1C247289EF78D7EC88B46863CFAA3</input>
-			<output>EF387517F8C781A79700C8196DCA6F1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48C6408FD8FA84D30DD53B83B31C425D3B1B5A4F321F4734BECCCF061F591A3B</key>
-			<iv>EF387517F8C781A79700C8196DCA6F1A</iv>
-			<input>C7E7DCE8740A7514482F31381EF52248</input>
-			<output>A6166002C7239645D55494BB64840B26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1C9EB0648715CA5738A4FD27A63693A09D0D3A4DF53CD1716B985BBD7BDD111D</key>
-			<iv>A6166002C7239645D55494BB64840B26</iv>
-			<input>5458F0EB5FEF4E843571C6A4152AD1FD</input>
-			<output>FB35646B2008AD29AFF508B94179F223</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4AA2E4BAC74E8CD9AEA969550D27877866385E26D5347C58C46D53043AA4E33E</key>
-			<iv>FB35646B2008AD29AFF508B94179F223</iv>
-			<input>563C54DE405B468E960D9472AB1114D8</input>
-			<output>59C1692D4598AD622B6586A06892E11D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B9F5A3BAAA0C2F6EA5E835F6E6E5D50E3FF9370B90ACD13AEF08D5A452360223</key>
-			<iv>59C1692D4598AD622B6586A06892E11D</iv>
-			<input>F35747006D42A3B70B415CA3EBC25276</input>
-			<output>3131E251A6A4AC7226A1809553198AB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EF46814F8656D3D8ABAF3B08EFEBC3150EC8D55A36087D48C9A95531012F889B</key>
-			<iv>3131E251A6A4AC7226A1809553198AB8</iv>
-			<input>56B322F52C5AFCB60E470EFE090E161B</input>
-			<output>2E30D8D5B7B636307A6D354FBED41A2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3DFBE0FE20F0421CAABD62E2CDB0E60F20F80D8F81BE4B78B3C4607EBFFB92B6</key>
-			<iv>2E30D8D5B7B636307A6D354FBED41A2D</iv>
-			<input>D2BD61B1A6A691C4011259EA225B251A</input>
-			<output>6D791952F9416FC09B78517A2FFE986F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5197CF05753D155C5B08A5EB51B82F2D4D8114DD78FF24B828BC310490050AD9</key>
-			<iv>6D791952F9416FC09B78517A2FFE986F</iv>
-			<input>6C6C2FFB55CD5740F1B5C7099C08C922</input>
-			<output>37A8E0B9375AD5669A396D980D68D0F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B3EFE2F914264AAAB7C7FD9C4843619E7A29F4644FA5F1DEB2855C9C9D6DDA2A</key>
-			<iv>37A8E0B9375AD5669A396D980D68D0F3</iv>
-			<input>E2782DFC611B5FF6ECCF587719FB4EB3</input>
-			<output>BC65630DB71EE8DA2194E5DFBC48360E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CAAB7758FF4AFF39A98C2202A26165CFC64C9769F8BB19049311B9432125EC24</key>
-			<iv>BC65630DB71EE8DA2194E5DFBC48360E</iv>
-			<input>794495A1EB6CB5931E4BDF9EEA220451</input>
-			<output>9C47136C1B510BFCEFA7F6659BDA08C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC38852E17544DB004372C4A3AA3DFDB5A0B8405E3EA12F87CB64F26BAFFE4E6</key>
-			<iv>9C47136C1B510BFCEFA7F6659BDA08C2</iv>
-			<input>0693F276E81EB289ADBB0E4898C2BA14</input>
-			<output>68AC57D13EC53C250FEBFC64B1992B1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>108FE55553F353DFABD421E15A18C9F532A7D3D4DD2F2EDD735DB3420B66CFFA</key>
-			<iv>68AC57D13EC53C250FEBFC64B1992B1C</iv>
-			<input>DCB7607B44A71E6FAFE30DAB60BB162E</input>
-			<output>9A8C11E031E57B77138A3637784D1D71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C432EA6E854DE8C191C6F0ED4A2BF1D7A82BC234ECCA55AA60D78575732BD28B</key>
-			<iv>9A8C11E031E57B77138A3637784D1D71</iv>
-			<input>D4BD0F3BD6BEBB1E3A12D10C10333822</input>
-			<output>3BBB1E76A491A5AA145ED931BB886333</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>980941D5FEFD458061B1B443E39818299390DC42485BF00074895C44C8A3B1B8</key>
-			<iv>3BBB1E76A491A5AA145ED931BB886333</iv>
-			<input>5C3BABBB7BB0AD41F07744AEA9B3E9FE</input>
-			<output>F79F1B46F57BDD36B58DDA33619D3920</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B4FF33FB094612B6A3438A285C3AEA41640FC704BD202D36C1048677A93E8898</key>
-			<iv>F79F1B46F57BDD36B58DDA33619D3920</iv>
-			<input>2CF6722EF7BB5736C2F23E6BBFA2F268</input>
-			<output>F1C3ED72D0B6D917DD6F8AE86CFD8CBF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC81027596771F9C591BE6C61762B1E795CC2A766D96F4211C6B0C9FC5C30427</key>
-			<iv>F1C3ED72D0B6D917DD6F8AE86CFD8CBF</iv>
-			<input>087E318E9F310D2AFA586CEE4B585BA6</input>
-			<output>EAF1AACEEB9F9BE0E880911BFEEAC2AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D41458000DDED43B83DAA81B1D7FFB597F3D80B886096FC1F4EB9D843B29C68B</key>
-			<iv>EAF1AACEEB9F9BE0E880911BFEEAC2AC</iv>
-			<input>68955A759BA9CBA7DAC14EDD0A1D4ABE</input>
-			<output>7B35179E67E9B40346F7DE6356EDC98F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FACDC2B3BA9E125B2A734DE75F99F48C04089726E1E0DBC2B21C43E76DC40F04</key>
-			<iv>7B35179E67E9B40346F7DE6356EDC98F</iv>
-			<input>2ED99AB3B740C660A9A9E5FC42E60FD5</input>
-			<output>0EDE849D7E56B296B12C1EDF37436A8D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E73022253439EB4464CE0B205BBB0F1F0AD613BB9FB6695403305D385A876589</key>
-			<iv>0EDE849D7E56B296B12C1EDF37436A8D</iv>
-			<input>1DFDE0968EA7F91F4EBD46C70422FB93</input>
-			<output>D02F1EAF3CF6A6B681BAF8ECB921FFC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F3671205266DC4F7C771EBA74265F36DAF90D14A340CFE2828AA5D4E3A69A4D</key>
-			<iv>D02F1EAF3CF6A6B681BAF8ECB921FFC4</iv>
-			<input>78065305665F370B18B9159A2F9D5029</input>
-			<output>E365BE1A125C6930DFDCBB33E6937EC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>111A3E012C9D5CB2967E8BD22907D6F7399CB30EB11CA6D25D561EE70535E488</key>
-			<iv>E365BE1A125C6930DFDCBB33E6937EC5</iv>
-			<input>8E2C4F217EFB80FDEA0995685D2189C1</input>
-			<output>C5B24EEC5CDD17AA56838B09EC4AB725</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15DA3EE4EE9A560B05493FFC971713A5FC2EFDE2EDC1B1780BD595EEE97F53AD</key>
-			<iv>C5B24EEC5CDD17AA56838B09EC4AB725</iv>
-			<input>04C000E5C2070AB99337B42EBE10C552</input>
-			<output>4D8A43CD28BBCB86953FA55A409BF130</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2C8B30484D954192818342F3766C1415B1A4BE2FC57A7AFE9EEA30B4A9E4A29D</key>
-			<iv>4D8A43CD28BBCB86953FA55A409BF130</iv>
-			<input>39510EACA30F179984CA7D0FE17B07B0</input>
-			<output>A524A6329E6DCE041F72459234ECDE78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F162BAD5F298EE0B0164CFED6A7AC271480181D5B17B4FA819875269D087CE5</key>
-			<iv>A524A6329E6DCE041F72459234ECDE78</iv>
-			<input>239D1BE512BCCF7231950E0DA0CBB832</input>
-			<output>90BBC5130D1C06182F737FE7F0FCD00D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62744CA02B6684D05A91F2049D403480843BDD0E560BB2E2AEEB0AC16DF4ACE8</key>
-			<iv>90BBC5130D1C06182F737FE7F0FCD00D</iv>
-			<input>6D62670D744F0A30EA87BEFA4BE798A7</input>
-			<output>35F293EDDEC8D9446A4ACD34602839B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21F5373DA5D6BF15BC163383F62EA92FB1C94EE388C36BA6C4A1C7F50DDC955D</key>
-			<iv>35F293EDDEC8D9446A4ACD34602839B5</iv>
-			<input>43817B9D8EB03BC5E687C1876B6E9DAF</input>
-			<output>E45CF478D7C84325143165F58B041A13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4CF4A508B4DF37A831916353620DC1F45595BA9B5F0B2883D090A20086D88F4E</key>
-			<iv>E45CF478D7C84325143165F58B041A13</iv>
-			<input>6D019235110988BD8D8750D0942368DB</input>
-			<output>964983C30745D7EEA1BD5E287DAC466C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>35C99C004D01E89F94A9B3BC79C492D7C3DC3958584EFF6D712DFC28FB74C922</key>
-			<iv>964983C30745D7EEA1BD5E287DAC466C</iv>
-			<input>793D3908F9DEDF37A538D0EF1BC95323</input>
-			<output>6834813D8403A963AD36C1A18CA605C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F185723D6A2D2A6F9F4B9194A444AA2AABE8B865DC4D560EDC1B3D8977D2CCE2</key>
-			<iv>6834813D8403A963AD36C1A18CA605C0</iv>
-			<input>C44CEE3D272CC2F00BE22228DD8038FD</input>
-			<output>61F35AA76E1E0EC2D5E4F4F432B68260</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B571B0BC6CFD2BA23611FB9A900A31FACA1BE2C2B25358CC09FFC97D45644E82</key>
-			<iv>61F35AA76E1E0EC2D5E4F4F432B68260</iv>
-			<input>44F4C28106D001CDA95A6A0E344E9BD0</input>
-			<output>DD081A96602E6665B860466B8D14050E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A5757156C596DE633D0D8908011C3771713F854D27D3EA9B19F8F16C8704B8C</key>
-			<iv>DD081A96602E6665B860466B8D14050E</iv>
-			<input>9F26E7A900A4464405C1230A101BF28D</input>
-			<output>5BF18EA3D7F3ED1D941EA1B995313B98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DA008B517FA48E908A72B8525CC31AEF4CE276F7058ED3B425812EAF5D417014</key>
-			<iv>5BF18EA3D7F3ED1D941EA1B995313B98</iv>
-			<input>F057DC4413FDE376B9A260C2DCD2D998</input>
-			<output>74C361B6A13013E9ABF6841601513539</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E313244DC22AC16C1D59AC494AA728D738211741A4BEC05D8E77AAB95C10452D</key>
-			<iv>74C361B6A13013E9ABF6841601513539</iv>
-			<input>3913AF1CBD8E4FFC972B141B16643238</input>
-			<output>9937614570FD404D5B39BA43D3A20602</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92A7173E943CBA80AF56203552625E8AA1167604D4438010D54E10FA8FB2432F</key>
-			<iv>9937614570FD404D5B39BA43D3A20602</iv>
-			<input>71B4337356167BECB20F8C7C18C5765D</input>
-			<output>726FCDDF8E6738B51D767828EBDFC71E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>242C75C141A58DC403020E52421BB347D379BBDB5A24B8A5C83868D2646D8431</key>
-			<iv>726FCDDF8E6738B51D767828EBDFC71E</iv>
-			<input>B68B62FFD5993744AC542E671079EDCD</input>
-			<output>78F735344BF10EED47969F1C02ECBF8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5247008C3EB79AA67E5D2E0B95D0AC3AAB8E8EEF11D5B6488FAEF7CE66813BBD</key>
-			<iv>78F735344BF10EED47969F1C02ECBF8C</iv>
-			<input>766B754D7F1217627D5F2059D7CB1F7D</input>
-			<output>7D6A6CA54B084105DF6A778A4913BB04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>06E7C1A6C8BC6A3355A86F61B41E70C6D6E4E24A5ADDF74D50C480442F9280B9</key>
-			<iv>7D6A6CA54B084105DF6A778A4913BB04</iv>
-			<input>54A0C12AF60BF0952BF5416A21CEDCFC</input>
-			<output>11F0A303D6C0ED5E18F40248AF1A794B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D7722746B58D494BE9B97F586CA4BB0AC71441498C1D1A134830820C8088F9F2</key>
-			<iv>11F0A303D6C0ED5E18F40248AF1A794B</iv>
-			<input>D195E6E07D312378BC111039D8BACBCC</input>
-			<output>2A715E8AC7101415E65EBF34CC4CD786</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>98B1E5954DE8000B6FFFE98D918B6237ED651FC34B0D0E06AE6E3D384CC42E74</key>
-			<iv>2A715E8AC7101415E65EBF34CC4CD786</iv>
-			<input>4FC3C2D3F8654940864696D5FD2FD93D</input>
-			<output>965E8AF93D390E424C9F4F1FBF9D98A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74B910207ACD1D7C801724D53ED6BBC47B3B953A76340044E2F17227F359B6D1</key>
-			<iv>965E8AF93D390E424C9F4F1FBF9D98A5</iv>
-			<input>EC08F5B537251D77EFE8CD58AF5DD9F3</input>
-			<output>294782DD29C65B6C445C5D92F50E6D19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3E1AD36FDCC33F6B3425B5D52717845E527C17E75FF25B28A6AD2FB50657DBC8</key>
-			<iv>294782DD29C65B6C445C5D92F50E6D19</iv>
-			<input>4AA3C34FA60E2217B432910019C13F9A</input>
-			<output>E22098E7EDBEECC49FA8E31B76E925CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE9F93FE153DF61370F6709F8265DCCDB05C8F00B24CB7EC3905CCAE70BEFE02</key>
-			<iv>E22098E7EDBEECC49FA8E31B76E925CA</iv>
-			<input>80854091C9FEC97844D3C54AA5725893</input>
-			<output>24E80C1F59A4EA36044358E0C0D4F29D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A790F593CFA1643BD2EB3A1AAB8176A294B4831FEBE85DDA3D46944EB06A0C9F</key>
-			<iv>24E80C1F59A4EA36044358E0C0D4F29D</iv>
-			<input>190F666DDA9C9228A21D4A8529E4AA6F</input>
-			<output>63CF21803941B521532FF36F9FBFC7BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0CF6F000352B4B583E4AEE707D111DC9F77BA29FD2A9E8FB6E6967212FD5CB22</key>
-			<iv>63CF21803941B521532FF36F9FBFC7BD</iv>
-			<input>AB660593FA8A2F63ECA1D46AD6906B6B</input>
-			<output>250941C1D45C82B0D9C381293CDD833A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1F875BCF1967857990EC97864B1EA9F8D272E35E06F56A4BB7AAE60813084818</key>
-			<iv>250941C1D45C82B0D9C381293CDD833A</iv>
-			<input>1371ABCF2C4CCE21AEA679F6360FB431</input>
-			<output>8303B962DAFC4A225C0FD6EA60D29CF4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42FE25BF51418FE7A7C7A1828219E1DB51715A3CDC092069EBA530E273DAD4EC</key>
-			<iv>8303B962DAFC4A225C0FD6EA60D29CF4</iv>
-			<input>5D797E7048260A9E372B3604C9074823</input>
-			<output>29E2DB359FAB42C0A83A4059A059CB51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6C821A4893FE0EAC88FC1F98BD44AD0A7893810943A262A9439F70BBD3831FBD</key>
-			<iv>29E2DB359FAB42C0A83A4059A059CB51</iv>
-			<input>2E7C3FF7C2BF814B2F3BBE1A3F5D4CD1</input>
-			<output>02BDB7EC18279FA9B7788D95FEB4000E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>411670D389D0A04859FDC26DE5AAD1297A2E36E55B85FD00F4E7FD2E2D371FB3</key>
-			<iv>02BDB7EC18279FA9B7788D95FEB4000E</iv>
-			<input>2D946A9B1A2EAEE4D101DDF558EE7C23</input>
-			<output>3960A92A34967F13B754F2265A6F68C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>851BCD18F6043DE625BBEA33E1E860E3434E9FCF6F13821343B30F0877587772</key>
-			<iv>3960A92A34967F13B754F2265A6F68C1</iv>
-			<input>C40DBDCB7FD49DAE7C46285E0442B1CA</input>
-			<output>EF396AB8613AC6083932734D38869458</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1944F363F3143A380F26BD4831A6BD9EAC77F5770E29441B7A817C454FDEE32A</key>
-			<iv>EF396AB8613AC6083932734D38869458</iv>
-			<input>9C5F3E7B051007DE2A9D577BD04EDD7D</input>
-			<output>CB73B8D257CC1A8235E48DA0E6AECC4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2F3C203F591C78914E31BA1E083AB9867044DA559E55E994F65F1E5A9702F64</key>
-			<iv>CB73B8D257CC1A8235E48DA0E6AECC4E</iv>
-			<input>DBB731600685FDB11BC5A6E9D1251606</input>
-			<output>3B0B12757B5D1B6E0130FCC306E9DBAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0DCB66B972631AFBB1DA22F1418EE1C45C0F5FD022B845F74E550D26AF99F4CE</key>
-			<iv>3B0B12757B5D1B6E0130FCC306E9DBAA</iv>
-			<input>CF38A4BA87F2DD72A5393950A10D4A5C</input>
-			<output>CCEF4079CE8FAF0E6B8CD4C8751059E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8FF976D3C735506D86A3540664F1C40590E01FA9EC37EAF925D9D9EEDA89AD2F</key>
-			<iv>CCEF4079CE8FAF0E6B8CD4C8751059E1</iv>
-			<input>8232106AB5564A96377976F7257F25C1</input>
-			<output>D835D2FA5583D9B2C16424960163DF7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3499925B26E4F846CAA230EC069F127F48D5CD53B9B4334BE4BDFD78DBEA7250</key>
-			<iv>D835D2FA5583D9B2C16424960163DF7F</iv>
-			<input>BB60E488E1D1A82B4C0164EA626ED67A</input>
-			<output>4634485DB5D9C40FA2F6EF36E477F0B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A133EEC3DD747FE38A3370F8927A3C70EE1850E0C6DF744464B124E3F9D82E7</key>
-			<iv>4634485DB5D9C40FA2F6EF36E477F0B7</iv>
-			<input>4E8AACB71B33BFB8F20107E38FB8B1B8</input>
-			<output>AE30CD2A5D84CEF10B9C15EE1FE20CEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F573665345317BAB5F14881777A0D789A0D1482451E939B54DD707A0207F8E0C</key>
-			<iv>AE30CD2A5D84CEF10B9C15EE1FE20CEB</iv>
-			<input>8F6058BF78E63C5567B7BF18FE87744E</input>
-			<output>B3926CDE5BFB1363DCCA28CDA2DC4CD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FEFB661FA786BF2DA1B70FD7D06B86E8134324FA0A122AD6911D2F6D82A3C2D4</key>
-			<iv>B3926CDE5BFB1363DCCA28CDA2DC4CD8</iv>
-			<input>0B88004CE2B7C486FEA387C0A7CB5161</input>
-			<output>633388FA9EAE0DB2036F63CB2E21C266</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BFC495DFBA60078708D992724C9201577070AC0094BC276492724CA6AC8200B2</key>
-			<iv>633388FA9EAE0DB2036F63CB2E21C266</iv>
-			<input>413FF3C01DE6B8AAA96E9DA59CF987BF</input>
-			<output>54ACB838D247D26A1544B2E42F18CF3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB0113E4FFE1201B59EAE94706B2571F24DC143846FBF50E8736FE42839ACF8D</key>
-			<iv>54ACB838D247D26A1544B2E42F18CF3F</iv>
-			<input>54C5863B4581279C51337B354A205648</input>
-			<output>B9210B8A8639CA5C94A1CF1169F89DDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E1D5F7873FD6440227C5529AEB4C7999DFD1FB2C0C23F5213973153EA625256</key>
-			<iv>B9210B8A8639CA5C94A1CF1169F89DDB</iv>
-			<input>E51C4C9C8C1C445B7B96BC6EA8069086</input>
-			<output>8990488561B43B03CF9FE631E2E7D5E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8B2759471137DBF37906B394EFEF96D2146D5737A1760451DC08D762088587B1</key>
-			<iv>8990488561B43B03CF9FE631E2E7D5E7</iv>
-			<input>853A063F62CABFB35B7AE6BD415B514B</input>
-			<output>9DCE77D8CCC0F041FA717C28474E9A30</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D4B29E8D6F39CA01BC01CE73E2834C689A320EF6DB6F4102679AB4A4FCB1D81</key>
-			<iv>9DCE77D8CCC0F041FA717C28474E9A30</iv>
-			<input>866C70AFC7C4475362C6AF73D1C7A214</input>
-			<output>E1DA174FE5848D21735E55B91CA48A9B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>55228F6FF93B7DE9304CD75991C133A5687937A0883279315527FEF3536F971A</key>
-			<iv>E1DA174FE5848D21735E55B91CA48A9B</iv>
-			<input>5869A6872FC8E1492B8CCBBEAFE90763</input>
-			<output>C578F53AD69AD508711E674F8DD2A843</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>35CA943437046860F72A1F8554127676AD01C29A5EA8AC39243999BCDEBD3F59</key>
-			<iv>C578F53AD69AD508711E674F8DD2A843</iv>
-			<input>60E81B5BCE3F1589C766C8DCC5D345D3</input>
-			<output>177A50196260D3F0A3F97423899EBEE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B8C3B8414C112FC2E2E848733D5CF69CBA7B92833CC87FC987C0ED9F572381BB</key>
-			<iv>177A50196260D3F0A3F97423899EBEE2</iv>
-			<input>8D092C757B1547A215C257F6694E80EA</input>
-			<output>6B03A799C51C7D0A9D3C9929617E69B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E82B651AE5740119104FE3284CE780E4D178351AF9D402C31AFC74B6365DE80A</key>
-			<iv>6B03A799C51C7D0A9D3C9929617E69B1</iv>
-			<input>50E8DD5BA9652EDBF2A7AB5B71BB7678</input>
-			<output>8D4C7C1157422E7B6DDA47C5C2C246F4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C0B660F2B78F768812AC671D3107AD85C34490BAE962CB877263373F49FAEFE</key>
-			<iv>8D4C7C1157422E7B6DDA47C5C2C246F4</iv>
-			<input>D4200315CE0CF671916525599FF7FA3C</input>
-			<output>787B3C51094569BC1F139102964DF5AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A197B59C700A4786E840733047964FD4244F755AA7D345046835A27162D25B51</key>
-			<iv>787B3C51094569BC1F139102964DF5AF</iv>
-			<input>9D9CD3935B72B0EE696AB5419486350C</input>
-			<output>AE02945B4E63AC35B6AC2DFA2DF3CEBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00E75C4B909D44A94FA20EDA6C3628418A4DE101E9B0E931DE998F8B4F2195EB</key>
-			<iv>AE02945B4E63AC35B6AC2DFA2DF3CEBA</iv>
-			<input>A170E9D7E097032FA7E27DEA2BA06795</input>
-			<output>AC4AACD3597FE73F519F7CEDAFE6E000</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4626BE31853C15DE412EF2A42328D47326074DD2B0CF0E0E8F06F366E0C775EB</key>
-			<iv>AC4AACD3597FE73F519F7CEDAFE6E000</iv>
-			<input>46C1E27A15A151770E8CFC7E4F1EFC32</input>
-			<output>5EB8B35708A135E041603BA323663F34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1733A037E76437411F49821D948A098978BFFE85B86E3BEECE66C8C5C3A14ADF</key>
-			<iv>5EB8B35708A135E041603BA323663F34</iv>
-			<input>51151E066258229F5E6770B9B7A2DDFA</input>
-			<output>6674FB922570377334A4F22D13E95BD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8474275A2E4D5E5448EB8D34B65EE7081ECB05179D1E0C9DFAC23AE8D0481107</key>
-			<iv>6674FB922570377334A4F22D13E95BD8</iv>
-			<input>9347876DC929691557A20F2922D4EE81</input>
-			<output>F0E3F09C0350C0172E449A01F24AB828</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>765AA3F4014B8475CF832DE6128F7F2DEE28F58B9E4ECC8AD486A0E92202A92F</key>
-			<iv>F0E3F09C0350C0172E449A01F24AB828</iv>
-			<input>F22E84AE2F06DA218768A0D2A4D19825</input>
-			<output>CC156010299679ADEE9CC000FD5C90E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD3D3AFC83B7EEBC58CE35B35719B587223D959BB7D8B5273A1A60E9DF5E39CA</key>
-			<iv>CC156010299679ADEE9CC000FD5C90E5</iv>
-			<input>AB67990882FC6AC9974D18554596CAAA</input>
-			<output>80354EDEA10038E903C4896313236CE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4764BB8C98BCF3FD4A21A370AE5432BBA208DB4516D88DCE39DEE98ACC7D552F</key>
-			<iv>80354EDEA10038E903C4896313236CE5</iv>
-			<input>9A5981701B0B1D4112EF96C3F94D873C</input>
-			<output>15140DC26F383EB99425FB51D445CC98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF729AB7D09BC85489F8AD373EBDDA70B71CD68779E0B377ADFB12DB183899B7</key>
-			<iv>15140DC26F383EB99425FB51D445CC98</iv>
-			<input>9816213B48273BA9C3D90E4790E9E8CB</input>
-			<output>163465787010C97D3C2023D803F62556</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A945B0C5997C596B5155A6BCA5055127A128B3FF09F07A0A91DB31031BCEBCE1</key>
-			<iv>163465787010C97D3C2023D803F62556</iv>
-			<input>76372A7249E7913FD8AD0B8B9BB88B57</input>
-			<output>23E861D557EE72534C8B729240E3A54F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E1C166F2B947D14D0C7E6ABD280A31E82C0D22A5E1E0859DD5043915B2D19AE</key>
-			<iv>23E861D557EE72534C8B729240E3A54F</iv>
-			<input>A759A6AAB2E8247F819240177785F239</input>
-			<output>652CA6A199D7DBC37936FCD70636989F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>208A37149072011877E3E85B3DC7F4A7E7EC748BC7C9D39AA466BF465D1B8131</key>
-			<iv>652CA6A199D7DBC37936FCD70636989F</iv>
-			<input>2E96217BBBE67C0CA7240EF0EF4757B9</input>
-			<output>7C29D6F4788553E3C50A48027478A98F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8FFCB194C077EEED66632AEBE01652E9BC5A27FBF4C8079616CF744296328BE</key>
-			<iv>7C29D6F4788553E3C50A48027478A98F</iv>
-			<input>8875FC0DDC757FF6A185DAF583C69189</input>
-			<output>7B886FC819D625B224F2516901788E88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3716969BDDBF04FF4010D4667CCA994AE04DCDB7A69AA5CB459EA62D281BA636</key>
-			<iv>7B886FC819D625B224F2516901788E88</iv>
-			<input>9FE95D8291B87A119676E6C8C2CBFC64</input>
-			<output>3EAB925C025F379153CE2C7191026976</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>991D0D313717C7AC62537C8572DE094BDEE65FEBA4C5925A16508A5CB919CF40</key>
-			<iv>3EAB925C025F379153CE2C7191026976</iv>
-			<input>AE0B9BAAEAA8C3532243A8E30E149001</input>
-			<output>B9904B8BDF431FDDB9166086C9D3E24C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>315772BB82A3DD286FE5891934B19434677614607B868D87AF46EADA70CA2D0C</key>
-			<iv>B9904B8BDF431FDDB9166086C9D3E24C</iv>
-			<input>A84A7F8AB5B41A840DB6F59C466F9D7F</input>
-			<output>3C7029336ECCA5D352DB9D0C060D3830</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C99E4E6A8C1D42A9E431FF8B2A8ACA615B063D53154A2854FD9D77D676C7153C</key>
-			<iv>3C7029336ECCA5D352DB9D0C060D3830</iv>
-			<input>F8C93CD10EBE9F818BD476921E3B5E55</input>
-			<output>4AF4290AA79EB96435D2D3FC745033D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>55317B8B407B7D089ED2CEF7BE80E99111F21459B2D49130C84FA42A029726EB</key>
-			<iv>4AF4290AA79EB96435D2D3FC745033D7</iv>
-			<input>9CAF35E1CC663FA17AE3317C940A23F0</input>
-			<output>BFCA0B6B31AAD81F1BDC743B48B7CCA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6EAE6D8B06AA25493BA3608357D71404AE381F32837E492FD393D0114A20EA4F</key>
-			<iv>BFCA0B6B31AAD81F1BDC743B48B7CCA4</iv>
-			<input>3B9F160046D15841A571AE74E957FD95</input>
-			<output>89C1D565569A12A68B2E808AB5CFA2E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3245D7C1F5571A1329E1B2303F8A689D27F9CA57D5E45B8958BD509BFFEF48AC</key>
-			<iv>89C1D565569A12A68B2E808AB5CFA2E3</iv>
-			<input>5CEBBA4AF3FD3F5A1242D2B3685D7C99</input>
-			<output>EC8EEAED7894646B1D1A5E058ED41178</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1DE05811428569D3F89CF1C01AF434AFCB7720BAAD703FE245A70E9E713B59D4</key>
-			<iv>EC8EEAED7894646B1D1A5E058ED41178</iv>
-			<input>2FA58FD0B7D273C0D17D43F0257E5C32</input>
-			<output>92802F392579C66AD72D2E85776720E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0A8FB6D844AB0B73C05A121085E07FFE59F70F838809F988928A201B065C793C</key>
-			<iv>92802F392579C66AD72D2E85776720E8</iv>
-			<input>176FEEC9062E62A038C6E3D09F144B51</input>
-			<output>461DBCF9894F5319FE772F6529FBCEC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4E6818B3BBEF69FA7ABEC1EBE2E54CDC1FEAB37A0146AA916CFD0F7E2FA7B7FC</key>
-			<iv>461DBCF9894F5319FE772F6529FBCEC0</iv>
-			<input>44E7AE6BFF446289BAE4D3FB67053322</input>
-			<output>794CA9DC41BAE95D415A6D1119582763</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A1EABB13924B188441724141F1C88A966A61AA640FC43CC2DA7626F36FF909F</key>
-			<iv>794CA9DC41BAE95D415A6D1119582763</iv>
-			<input>0476B30282CBD8723EA9E5FFFDF9C475</input>
-			<output>B761EAF5CC07651BD33D8BF93913EAE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FFE4E48F8D96710A1BE7DBE36F4905CDD1C7F0538CFB26D7FE9AE9960FEC7A77</key>
-			<iv>B761EAF5CC07651BD33D8BF93913EAE8</iv>
-			<input>B5FA4F3EB4B2C0825FF0FFF770558D64</input>
-			<output>0B5146EB77161E60D6D1E2FAEAE80694</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A4F383AF4BB2DC6588E75EE82C7D9CFDA96B6B8FBED38B7284B0B6CE5047CE3</key>
-			<iv>0B5146EB77161E60D6D1E2FAEAE80694</iv>
-			<input>85ABDCB5792D5CCC4369AE0DED8EDC02</input>
-			<output>07635064CE85F6AE17961AF1F2B44469</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EFFE7F8BBBEC8BEC83FA199102763BEDDDF5E6DC3568CE193FDD119D17B0388A</key>
-			<iv>07635064CE85F6AE17961AF1F2B44469</iv>
-			<input>95B147B14F57A62ADB746C7F80B1E222</input>
-			<output>3A9CD5F30C421FF333BA2C2F0A7AD07D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1DF51B7A35E11E2AF79E8C59094A1ECFE769332F392AD1EA0C673DB21DCAE8F7</key>
-			<iv>3A9CD5F30C421FF333BA2C2F0A7AD07D</iv>
-			<input>F20B64F18E0D95C6746495C80B3C2522</input>
-			<output>F60032C249CF561CB02421DA189A57D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC09FFE72A10AE27FE14934A6628AB83116901ED70E587F6BC431C680550BF26</key>
-			<iv>F60032C249CF561CB02421DA189A57D1</iv>
-			<input>D1FCE49D1FF1B00D098A1F136F62B54C</input>
-			<output>EAD5844B160C08F9CDAA15FD5936EF26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09C84CA0DA0B9FD79D3090E690BAB419FBBC85A666E98F0F71E909955C665000</key>
-			<iv>EAD5844B160C08F9CDAA15FD5936EF26</iv>
-			<input>C5C1B347F01B31F0632403ACF6921F9A</input>
-			<output>26AD72F011133FD4CED8F38A1ABE7D73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74FA53C172A2003EC5933F486FCC7BBFDD11F75677FAB0DBBF31FA1F46D82D73</key>
-			<iv>26AD72F011133FD4CED8F38A1ABE7D73</iv>
-			<input>7D321F61A8A99FE958A3AFAEFF76CFA6</input>
-			<output>F115FBC0D3F386527176D1DF6AD4B38A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E5BA209B7BC28D184E73BD37F35C1312C040C96A4093689CE472BC02C0C9EF9</key>
-			<iv>F115FBC0D3F386527176D1DF6AD4B38A</iv>
-			<input>7AA1F1C8C51E28EF4174049B10F9BA8E</input>
-			<output>27ED0BA04734E70317BF58E11B0DD051</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9404D9139B6597D1F7C7519713C6CBC80BE90736E33DD18AD9F8732137014EA8</key>
-			<iv>27ED0BA04734E70317BF58E11B0DD051</iv>
-			<input>9A5F7B1A2CD9BF0073206A446CF30AF9</input>
-			<output>24080A577426F8F270A13F3A5F3DB546</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E72476BC679C8DCBAB92BBA5D48BF6D32FE10D61971B2978A9594C1B683CFBEE</key>
-			<iv>24080A577426F8F270A13F3A5F3DB546</iv>
-			<input>7320AFAFFCF91A1A5C55EA32C74D3D1B</input>
-			<output>A754CC0464E35B387435790505F2DCE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4548DE389CCAD4A65B02A9B5FE90930188B5C165F3F87240DD6C351E6DCE270B</key>
-			<iv>A754CC0464E35B387435790505F2DCE5</iv>
-			<input>A26CA884FB56596DF09012102A1B65D2</input>
-			<output>D9AED2566884E97D081EADB45780AA7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2E54365B503140D0EC9074DFA05F4B2C511B13339B7C9B3DD57298AA3A4E8D76</key>
-			<iv>D9AED2566884E97D081EADB45780AA7D</iv>
-			<input>6B1CE863CCFB9476B792DD6A5ECFD82D</input>
-			<output>9FA221E082CAD838AB4B210A8794BD8F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C9FB092B8A96465076E14C575E9A8F0CEB932D319B643057E39B9A0BDDA30F9</key>
-			<iv>9FA221E082CAD838AB4B210A8794BD8F</iv>
-			<input>52CB86C9E89824B5EBFE601AD5B6E3DC</input>
-			<output>AAEA6DE5734CF14BED503512EB071C2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90AB85A18F2B0255D4F43AF5E98DAA7E64535F366AFAB24E93698CB256DD2CD3</key>
-			<iv>AAEA6DE5734CF14BED503512EB071C2A</iv>
-			<input>EC34353337826630D39A2E309C64028E</input>
-			<output>1359A157B415EB63E038AB7354E6B0F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9135D4D54A1CE6BBF4F23AFDE23F537C770AFE61DEEF592D735127C1023B9C21</key>
-			<iv>1359A157B415EB63E038AB7354E6B0F2</iv>
-			<input>019E5174C537E4EE200600080BB2F902</input>
-			<output>0764EBDBFAE8FD447244408A5153CC3B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4B5F1BC60EF5DCE83474A3970EB2ABA8706E15BA2407A4690115674B5368501A</key>
-			<iv>0764EBDBFAE8FD447244408A5153CC3B</iv>
-			<input>DA6ACF1344E93A53C086996AEC8DF8D4</input>
-			<output>A31F69E0055E8D4162AC06C088925FBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9DD8E8D75BE2E4D1BC70B30DAE0B375FD3717C5A2159292863B9618BDBFA0FA0</key>
-			<iv>A31F69E0055E8D4162AC06C088925FBA</iv>
-			<input>D687F311551738398804109AA0B99CF7</input>
-			<output>EB84AC035534CDF1698E660F529E0EC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A2B2FC8446B4C2575CFE584A490680238F5D059746DE4D90A37078489640167</key>
-			<iv>EB84AC035534CDF1698E660F529E0EC7</iv>
-			<input>D7F3C71F1F89A8F4C9BF56890A9B5F5D</input>
-			<output>9236D37A28C2CF29237127173B93C5D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9BE42576823EEAADB34657A5CBB44B21AAC303235CAF2BF029462093B2F7C4B2</key>
-			<iv>9236D37A28C2CF29237127173B93C5D5</iv>
-			<input>D1CF0ABEC655A688C689B2216F242323</input>
-			<output>86C122CFA62B1356FEE33FECF598ACC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5DFC1838B052E95A948D0AC31736CBE62C0221ECFA8438A6D7A51F7F476F687B</key>
-			<iv>86C122CFA62B1356FEE33FECF598ACC9</iv>
-			<input>C6183D4E326C03F727CB5D66DC8280C7</input>
-			<output>8A9926125B1CA354B1D7A9FED0850FEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2B12FA914EE7674EADED81C47A67A1B4A69B07FEA1989BF26672B68197EA6795</key>
-			<iv>8A9926125B1CA354B1D7A9FED0850FEE</iv>
-			<input>76EEE2A9FEB58E1439608B076D516A52</input>
-			<output>AD99A2A427BFF7A17C375DB38764EBFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>10607DE088CB92382089EF99B7C054280B02A55A86276C531A45EB32108E8C69</key>
-			<iv>AD99A2A427BFF7A17C375DB38764EBFC</iv>
-			<input>3B728771C62CF5768D646E5DCDA7F59C</input>
-			<output>0E141FD7D6928E7B7885638B6334947C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>605ECCB38F9FFD9DAB2DB523313FFADB0516BA8D50B5E22862C088B973BA1815</key>
-			<iv>0E141FD7D6928E7B7885638B6334947C</iv>
-			<input>703EB15307546FA58BA45ABA86FFAEF3</input>
-			<output>996CB8723B08B99A4959072DC8A73292</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C6371257BDA461F3A4D2F1ED5DD4B0B69C7A02FF6BBD5BB22B998F94BB1D2A87</key>
-			<iv>996CB8723B08B99A4959072DC8A73292</iv>
-			<input>A669DEE4323B9C6E0FFF44CE6CEB4A6D</input>
-			<output>72966BAA5E4D7FA9129088F2C072E301</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DDD8877C25005F9B8336823CBF4D4B1DEEEC695535F0241B390907667B6FC986</key>
-			<iv>72966BAA5E4D7FA9129088F2C072E301</iv>
-			<input>1BEF952B98A43E6827E473D1E299FBAB</input>
-			<output>32C321C999A2D68EA4517D332C785FC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00882DCBC6CFDED1A2ED7D9892F494A5DC2F489CAC52F2959D587A5557179642</key>
-			<iv>32C321C999A2D68EA4517D332C785FC4</iv>
-			<input>DD50AAB7E3CF814A21DBFFA42DB9DFB8</input>
-			<output>391D95DD63982E0A9AF3980A234DB5B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>234B9097BD6519EFE106103720AC937DE532DD41CFCADC9F07ABE25F745A23FB</key>
-			<iv>391D95DD63982E0A9AF3980A234DB5B9</iv>
-			<input>23C3BD5C7BAAC73E43EB6DAFB25807D8</input>
-			<output>D3A279EE1BABABA71DB01DC35EBA879D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AFF7D52D959CC7E41F1F3FF3CA2425053690A4AFD46177381A1BFF9C2AE0A466</key>
-			<iv>D3A279EE1BABABA71DB01DC35EBA879D</iv>
-			<input>8CBC45BA28F9DE0BFE192FC4EA88B678</input>
-			<output>B4696871EE3A9D035BC32308DA5A5DA7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B557440CEEB6E4EF54F6CD1B222246AC82F9CCDE3A5BEA3B41D8DC94F0BAF9C1</key>
-			<iv>B4696871EE3A9D035BC32308DA5A5DA7</iv>
-			<input>1AA091217B2A230B4BE9F2E8E80663A9</input>
-			<output>C5047AFD7884E0124928229AA6E72F67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF64C071FAAD2C48CB269C03563FA06147FDB62342DF0A2908F0FE0E565DD6A6</key>
-			<iv>C5047AFD7884E0124928229AA6E72F67</iv>
-			<input>0A33847D141BC8A79FD05118741DE6CD</input>
-			<output>240D684E6BAD3FD4E41D58DB871E93CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6945509258A1584398F5438DFD679DB63F0DE6D297235FDECEDA6D5D143456B</key>
-			<iv>240D684E6BAD3FD4E41D58DB871E93CD</iv>
-			<input>49F09578DF2739CCF2A9C83B89E9D9BA</input>
-			<output>F66917F0C3C67774F9263062F918DDD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8E48107D59287ABBA374E7CE5BC28E89599C99DEAB4428915CB96B7285B98BE</key>
-			<iv>F66917F0C3C67774F9263062F918DDD5</iv>
-			<input>5E70D40EF018922F83B81A443A6A5133</input>
-			<output>85C42456F11D0191BC4B4DD4EA0406EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E4F367569F4F9114AFE937A0190C9738105DEDCB1BA94318A980DB63C25F9E50</key>
-			<iv>85C42456F11D0191BC4B4DD4EA0406EE</iv>
-			<input>4C17E6514ADD16BF15DE79DCFCB0BFD0</input>
-			<output>D48B6C87A25C71113947569411C2186A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>987ED2D586DA9AB08C584BBEA0478953C4D6814CB9F5320990C78DF7D39D863A</key>
-			<iv>D48B6C87A25C71113947569411C2186A</iv>
-			<input>7C8DB58319950BA423B17C1EB94B1E6B</input>
-			<output>AB6957C2F3D360593E9096F3A392A701</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3DF2BF13B7FF97CA13567A890E11C9796FBFD68E4A265250AE571B04700F213B</key>
-			<iv>AB6957C2F3D360593E9096F3A392A701</iv>
-			<input>A58C6DC631250D7A9F0E3137AE56402A</input>
-			<output>C0FEFFF07506A0B4CD7B8B0CF25D3664</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptCBC256.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6800 +0,0 @@
-<action>
-	<actionname>AES CBC MonteCarlo Enc 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>FE3C53653E2F45B56FCD88B2CC898FF0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B2493DE29713367D9FAA93469F8EF596FE3C53653E2F45B56FCD88B2CC898FF0</key>
-			<iv>FE3C53653E2F45B56FCD88B2CC898FF0</iv>
-			<input>B2493DE29713367D9FAA93469F8EF596</input>
-			<output>7CE2ABAF8BEF23C4816DC8CE842048A7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>33A36646FE56F70DC0C51A3117E639F182DEF8CAB5C06671EEA0407C48A9C757</key>
-			<iv>7CE2ABAF8BEF23C4816DC8CE842048A7</iv>
-			<input>81EA5BA46945C1705F6F89778868CC67</input>
-			<output>50CD14A12C6852D39654C816BFAF9AC2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D6A3DACE75B104CA8A303A32670BF3AD213EC6B99A834A278F4886AF7065D95</key>
-			<iv>50CD14A12C6852D39654C816BFAF9AC2</iv>
-			<input>3EC95BEA190DE74168661992319686CB</input>
-			<output>3F411DAD0E339FE281637133BF46BD13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A53BE0709BF686A7DB7C3848D81AB66BED52F1C6979BAB40F997F9594840E086</key>
-			<iv>3F411DAD0E339FE281637133BF46BD13</iv>
-			<input>A851DDDC7CAD96EB73DF3BEBFE6A0951</input>
-			<output>5BA2C7663A4061719A7CCC2AF2A3EE8A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECF3490CB7717A5236A3A94811BEBF13B6F036A0ADDBCA3163EB3573BAE30E0C</key>
-			<iv>5BA2C7663A4061719A7CCC2AF2A3EE8A</iv>
-			<input>49C8A97C2C87FCF5EDDF9100C9A40978</input>
-			<output>F105031CE7E5111317745C64F4F6D150</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CE8A062A2A9F9EDE2EFB43A8602BB47847F535BC4A3EDB22749F69174E15DF5C</key>
-			<iv>F105031CE7E5111317745C64F4F6D150</iv>
-			<input>22794F269DEEE48C1858EAE071950B6B</input>
-			<output>C8F030398A873550A34386D9A153D833</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2BE39545B8FC27444178BF0004C7F1048F050585C0B9EE72D7DCEFCEEF46076F</key>
-			<iv>C8F030398A873550A34386D9A153D833</iv>
-			<input>E569936F9263B99A6F83FCA864EC457C</input>
-			<output>519CF42C0BBFCBD79679089BC5E963B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80E9C0F78F99E309935C0A69B961D787DE99F1A9CB0625A541A5E7552AAF64DB</key>
-			<iv>519CF42C0BBFCBD79679089BC5E963B4</iv>
-			<input>AB0A55B23765C44DD224B569BDA62683</input>
-			<output>64AC8FEA3B83584E9B7379B48F88B7A4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48DDBDA704BA7702960820A0D2CA485CBA357E43F0857DEBDAD69EE1A527D37F</key>
-			<iv>64AC8FEA3B83584E9B7379B48F88B7A4</iv>
-			<input>C8347D508B23940B05542AC96BAB9FDB</input>
-			<output>2B1F53F35A308673E9B1E004C32B2080</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D26C4C6BE601D63BDDE6F1A49B5124CB912A2DB0AAB5FB9833677EE5660CF3FF</key>
-			<iv>2B1F53F35A308673E9B1E004C32B2080</iv>
-			<input>9AB1F1CCE2BBA1394BEED104499B6C97</input>
-			<output>0DAE66B5741FE38E544D9EC4E90ABDAF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D241355DB8FC5F23D0D207F72E290F189C844B05DEAA1816672AE0218F064E50</key>
-			<iv>0DAE66B5741FE38E544D9EC4E90ABDAF</iv>
-			<input>002D79365EFD89180D34F653B5782BD3</input>
-			<output>D00122636CC0D9D62E614EAF0963C448</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1BC3268A0B674A05B2FC6E18460231564C856966B26AC1C0494BAE8E86658A18</key>
-			<iv>D00122636CC0D9D62E614EAF0963C448</iv>
-			<input>C98213D7B39B1526622E69EF682B3E4E</input>
-			<output>30EF014D1766651C524B3CC82F0140C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>50BE5951A5C2403C52425897C442A8457C6A682BA50CA4DC1B009246A964CADE</key>
-			<iv>30EF014D1766651C524B3CC82F0140C6</iv>
-			<input>4B7D7FDBAEA50A39E0BE368F82409913</input>
-			<output>BAD488702B447FABEC2074E1DD37E631</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C007EE52430FF98EDD206C94ED349DE6C6BEE05B8E48DB77F720E6A774532CEF</key>
-			<iv>BAD488702B447FABEC2074E1DD37E631</iv>
-			<input>90B9B703E6CDB9B28F623403297635A3</input>
-			<output>EC3862EB60E7D8D0827645BD690F71B8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AE37C1DBEBF9B269E8D10CC4F046F9FC2A8682B0EEAF03A77556A31A1D5C5D57</key>
-			<iv>EC3862EB60E7D8D0827645BD690F71B8</iv>
-			<input>6E302F89A8F64BE735F160501D72641A</input>
-			<output>6073D1F25F3697C1E07384C67D71D8AE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>86E8B9050AB24200E3757B67F08761534AF55342B1999466952527DC602D85F9</key>
-			<iv>6073D1F25F3697C1E07384C67D71D8AE</iv>
-			<input>28DF78DEE14BF0690BA477A300C198AF</input>
-			<output>90EF55AB8837792F82CF0F002E36F8DB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DE93EA10BB6DC2B0A6D3919561CE5AE4DA1A06E939AEED4917EA28DC4E1B7D22</key>
-			<iv>90EF55AB8837792F82CF0F002E36F8DB</iv>
-			<input>587B5315B1DF80B045A6EAF291493BB7</input>
-			<output>063783CB1A2137732D10CA6233C5CE93</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D147E3727A1FEB2C6F36AB9DF772E97DC2D8522238FDA3A3AFAE2BE7DDEB3B1</key>
-			<iv>063783CB1A2137732D10CA6233C5CE93</iv>
-			<input>E38794279CCC3C026020FB2CBEB97473</input>
-			<output>79C5CEEE64BFD33948D2E08EBE25B7E9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>34586C52923969647663A0D69436D7D1A5E84BCC4730090372280230C3FB0458</key>
-			<iv>79C5CEEE64BFD33948D2E08EBE25B7E9</iv>
-			<input>094C1265B59897D6B090CA6F4B41F946</input>
-			<output>87DFB65D575F56670DB739C988FD7DE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>53724BF79612A7F0237927604619DD592237FD91106F5F647F9F3BF94B0679BD</key>
-			<iv>87DFB65D575F56670DB739C988FD7DE5</iv>
-			<input>672A27A5042BCE94551A87B6D22F0A88</input>
-			<output>643F46BC77A5FE2434753B9C38142583</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8FBC30746F29985FFFA43C8BD3C4FC664608BB2D67CAA1404BEA006573125C3E</key>
-			<iv>643F46BC77A5FE2434753B9C38142583</iv>
-			<input>DCCE7B83F93B3FAFDCDD1BEB95DD213F</input>
-			<output>FD774BD6874EA7C0D790A5015440B664</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9A61A910701A4A42873549F78D3D9FD1BB7FF0FBE08406809C7AA5642752EA5A</key>
-			<iv>FD774BD6874EA7C0D790A5015440B664</iv>
-			<input>15DD99641F33D21D7891757C5EF963B7</input>
-			<output>BFCEF4403428F5C96C24C249962371D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D98738F6DF30113AF69A7A61C1582EE04B104BBD4ACF349F05E672DB1719B8E</key>
-			<iv>BFCEF4403428F5C96C24C249962371D4</iv>
-			<input>17F9DA9F1DE94B51285CEE5191281D3F</input>
-			<output>CC79F35C41F0E6C0EB03472B1D13029E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>976C27F1A15FF6780043636FC4777090C8C8F7E7955C15891B5D2006AC629910</key>
-			<iv>CC79F35C41F0E6C0EB03472B1D13029E</iv>
-			<input>1AF4547ECCACF76BAF2AC4C9D862F27E</input>
-			<output>0629B80F94FBC2C1984985B9F3B85BDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8934C533DED166F58D65C9E60A906A5CEE14FE801A7D7488314A5BF5FDAC2CD</key>
-			<iv>0629B80F94FBC2C1984985B9F3B85BDD</iv>
-			<input>7FFF6BA29CB2E01758953FF1A4DE7635</input>
-			<output>F2A70F4ED1A836696841D523F2650B55</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8116688C16D2C26D162C4D813FB267103C4640A6D00FE121EB55709CADBFC998</key>
-			<iv>F2A70F4ED1A836696841D523F2650B55</iv>
-			<input>698524DF2B3FD4024EFA111F5F1B61B5</input>
-			<output>A9B5565EB9B5D5DAC52BE0F449FBE11A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5A7062E77C6D20563AFD0BFDAAE04BE995F316F869BA34FB2E7E9068E4442882</key>
-			<iv>A9B5565EB9B5D5DAC52BE0F449FBE11A</iv>
-			<input>DB660A6B6ABFE23B2CD1467C95522CF9</input>
-			<output>E47F675379D4CE3DDABA0F906BE014B2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4DDC0A5938F4A3DC1AF8D3AFD3DF6198718C71AB106EFAC6F4C49FF88FA43C30</key>
-			<iv>E47F675379D4CE3DDABA0F906BE014B2</iv>
-			<input>17AC68BE4499838A2005D852793F2A71</input>
-			<output>7B95AB0E030C70B7940ECDAEFCA570A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E287EFC66626600AF3453F68BE53E5250A19DAA513628A7160CA525673014C95</key>
-			<iv>7B95AB0E030C70B7940ECDAEFCA570A5</iv>
-			<input>AF5BE59F5ED2C3D6E9BDECC76D8C84BD</input>
-			<output>E854E5DE0C42D57B869C29FC8D5AFFF3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7F3415A538F60B24A58447E1D38805B3E24D3F7B1F205F0AE6567BAAFE5BB366</key>
-			<iv>E854E5DE0C42D57B869C29FC8D5AFFF3</iv>
-			<input>9DB3FA635ED06B2E56C178896DDBE096</input>
-			<output>4E55EDEDC35CDEAB3BFB2B5D39871625</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59E5F5ECC5693DA07046636094970E8CAC18D296DC7C81A1DDAD50F7C7DCA543</key>
-			<iv>4E55EDEDC35CDEAB3BFB2B5D39871625</iv>
-			<input>26D1E049FD9F3684D5C22481471F0B3F</input>
-			<output>3355C2CC762E58FA941E0004209CA710</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0B62CF7EA869036A529E9D184574CD609F4D105AAA52D95B49B350F3E7400253</key>
-			<iv>3355C2CC762E58FA941E0004209CA710</iv>
-			<input>52873A926D003ECA22D8FE78D1E3C3EC</input>
-			<output>9B86680D69D38870268D42E78EDA2B50</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CEDC9CCC4DC42CB055EDC50597EE24DF04CB7857C381512B6F3E1214699A2903</key>
-			<iv>9B86680D69D38870268D42E78EDA2B50</iv>
-			<input>C5BE53B2E5AD2FDA0773581DD29AE9BF</input>
-			<output>05DD4896F08EEAA6A53FA7BCF183F538</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CA30B422016C86247D75B618D19247AC011630C1330FBB8DCA01B5A89819DC3B</key>
-			<iv>05DD4896F08EEAA6A53FA7BCF183F538</iv>
-			<input>04EC28EE4CA8AA942898731D467C6373</input>
-			<output>F81E56F4390D65C7959348A6FBD8A94E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B7096A2EC0259DA21ACA6DBE637A9F15F90866350A02DE4A5F92FD0E63C17575</key>
-			<iv>F81E56F4390D65C7959348A6FBD8A94E</iv>
-			<input>7D39DE0CC1491B8667BFDBA6B2E8D8B9</input>
-			<output>4364CA2D90FA256084DF8E2FCDC62AB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>436C0894D4436149EE685F0061BDF3AEBA6CAC189AF8FB2ADB4D7321AE075FC6</key>
-			<iv>4364CA2D90FA256084DF8E2FCDC62AB3</iv>
-			<input>F46562BA1466FCEBF4A232BE02C76CBB</input>
-			<output>0991DE19A5ABE5F7E8AE24120789B9AB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>44E1636AFF962EC4F1C446A89B9393C6B3FD72013F531EDD33E35733A98EE66D</key>
-			<iv>0991DE19A5ABE5F7E8AE24120789B9AB</iv>
-			<input>078D6BFE2BD54F8D1FAC19A8FA2E6068</input>
-			<output>0F4EF4FA608671AC5F71063CF6C1EBDE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>44289918A9E99F859FC2F604FE38B86EBCB386FB5FD56F716C92510F5F4F0DB3</key>
-			<iv>0F4EF4FA608671AC5F71063CF6C1EBDE</iv>
-			<input>00C9FA72567FB1416E06B0AC65AB2BA8</input>
-			<output>2D6A2A1CC9D208C16236BBC9451EC5E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE5907C77B0939D20575F27427A2C3FE91D9ACE7960767B00EA4EAC61A51C852</key>
-			<iv>2D6A2A1CC9D208C16236BBC9451EC5E1</iv>
-			<input>FA719EDFD2E0A6579AB70470D99A7B90</input>
-			<output>237A8DFBA42708BBF7E540766F2059F1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD97125720F2002207AC44C456CDDF0DB2A3211C32206F0BF941AAB0757191A3</key>
-			<iv>237A8DFBA42708BBF7E540766F2059F1</iv>
-			<input>73CE15905BFB39F002D9B6B0716F1CF3</input>
-			<output>2D1AB5CF3E9C27ADA9FB45F15007A7BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>123F64F2A28C80C2F6E000F69C8E5A639FB994D30CBC48A650BAEF4125763618</key>
-			<iv>2D1AB5CF3E9C27ADA9FB45F15007A7BB</iv>
-			<input>DFA876A5827E80E0F14C4432CA43856E</input>
-			<output>7039C9AF1E10FE99A91483EA578AE6DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6CD69C4F5AD7CB5E9E4574F6A48FDB28EF805D7C12ACB63FF9AE6CAB72FCD0C5</key>
-			<iv>7039C9AF1E10FE99A91483EA578AE6DD</iv>
-			<input>7EE9F8BDF85B4B9C68A574003801814B</input>
-			<output>116DD8566366A19EEAF2F3E744B3EF9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C73969C7D6D057003E2E215D94978792FEED852A71CA17A1135C9F4C364F3F59</key>
-			<iv>116DD8566366A19EEAF2F3E744B3EF9C</iv>
-			<input>ABEFF5888C079C5EA06B55AB30185CBA</input>
-			<output>648A801EF27E77D964BB751A32B8CFE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0960DD6E807F3D0B5DF057D0D1E6DCC9A67053483B4607877E7EA5604F7F0B1</key>
-			<iv>648A801EF27E77D964BB751A32B8CFE8</iv>
-			<input>27AF64113ED7A4D08BF124209989EA5E</input>
-			<output>D18AE728717C535049868FA6F1B4294E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>466AE043435C6CCA67FF1C5D4B4175DA4BEDE21CF2C833283E6165F0F543D9FF</key>
-			<iv>D18AE728717C535049868FA6F1B4294E</iv>
-			<input>A6FCED95AB5B9F1AD2201920465F1816</input>
-			<output>169B55360728DA8F582C488F2569411F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>27E1BC4931601D667CD807454D58B2BB5D76B72AF5E0E9A7664D2D7FD02A98E0</key>
-			<iv>169B55360728DA8F582C488F2569411F</iv>
-			<input>618B5C0A723C71AC1B271B180619C761</input>
-			<output>67DADCF7C31CA394F46F18AB1AEA022E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2D4EB1F3A709F0A4CA5E2CD47F8F10123AAC6BDD36FC4A33922235D4CAC09ACE</key>
-			<iv>67DADCF7C31CA394F46F18AB1AEA022E</iv>
-			<input>0AAF0DBA9669EDC2B6862B9132D7A2A9</input>
-			<output>A5D49BDF099335166BBFDCBE29C90B80</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A90CE470EB8C9400B056307D53452BE9F78F0023F6F7F25F99DE96AE309914E</key>
-			<iv>A5D49BDF099335166BBFDCBE29C90B80</iv>
-			<input>07DE7FB4A9B139E4C15B4FD3AABB42AC</input>
-			<output>5AFC238F19E369E77278593C6E20A946</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90B696E9A0792BFF7BF21BE373731CB5C584D38D268C16C28BE5B0568D293808</key>
-			<iv>5AFC238F19E369E77278593C6E20A946</iv>
-			<input>BA2658AEAEC1E2BF70F778E4A6474E0B</input>
-			<output>2861A363922099D0F0B2A5AD2A5F421E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4FE5C563B7DB98C6B9CCA52F313FBAFCEDE570EEB4AC8F127B5715FBA7767A16</key>
-			<iv>2861A363922099D0F0B2A5AD2A5F421E</iv>
-			<input>DF53538A17A2B339C23EBECC424CA649</input>
-			<output>D76E51B6EA5F74D0116C4D16EDD0DFAC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EBF784D98E40372429819EE23BE85B723A8B21585EF3FBC26A3B58ED4AA6A5BA</key>
-			<iv>D76E51B6EA5F74D0116C4D16EDD0DFAC</iv>
-			<input>A41241BA399BAFE2904D3BCD0AD7E18E</input>
-			<output>6214F5E50EC99F40B86951CE395C8315</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C01A5093C6A29CEED72D14D903BD17E8589FD4BD503A6482D252092373FA26AF</key>
-			<iv>6214F5E50EC99F40B86951CE395C8315</iv>
-			<input>2BEDD44A48E2ABCAFEAC8A3B38554C9A</input>
-			<output>6CFC2188E40E806BBE277988B924627E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8C3A10380B6D4D1CEFABF57F3C695193463F535B434E4E96C7570ABCADE44D1</key>
-			<iv>6CFC2188E40E806BBE277988B924627E</iv>
-			<input>68D9F1904614483F19D7AB8EF07B82F1</input>
-			<output>B98E851902AEC129FD1607DECA9E0669</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B828711ABA1D06408099944287112DE58DED702CB69A25C091637775004042B8</key>
-			<iv>B98E851902AEC129FD1607DECA9E0669</iv>
-			<input>10EBD0193AABD2914E632B1574D7B8FC</input>
-			<output>DBDA9DB56E6FF915D67D7DEE541DD6A3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3B0E9FE343D665ABB3706243EF023C765637ED99D8F5DCD5471E0A9B545D941B</key>
-			<iv>DBDA9DB56E6FF915D67D7DEE541DD6A3</iv>
-			<input>8326EEF9F9CB63EB33E9F60168131193</input>
-			<output>399802CE3FF3878A73C7D85E19FDD54B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9270D72D972B46C8E630FBD1AA67FBED6FAFEF57E7065B5F34D9D2C54DA04150</key>
-			<iv>399802CE3FF3878A73C7D85E19FDD54B</iv>
-			<input>A97E48CED4FD2363554099924565C79B</input>
-			<output>40FABA067414961FD964EC91196943E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>017211AC512541BFBDD0292385AA20862F5555519312CD40EDBD3E5454C902B3</key>
-			<iv>40FABA067414961FD964EC91196943E3</iv>
-			<input>9302C681C60E07775BE0D2F22FCDDB6B</input>
-			<output>6BF1125E581341510FD02B9450886B17</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AC2652A877F924710178641D20B239B944A4470FCB018C11E26D15C0044169A4</key>
-			<iv>6BF1125E581341510FD02B9450886B17</iv>
-			<input>AD54430426DC65CEBCA84D3EA518193F</input>
-			<output>74871D2EF6D1F29181B0A2530885EEC8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0BF012A9F0CB194C1F00893D4803E10130235A213DD07E8063DDB7930CC4876C</key>
-			<iv>74871D2EF6D1F29181B0A2530885EEC8</iv>
-			<input>A7D6400187323D3D1E78ED2068B1D8B8</input>
-			<output>2A2DC9F5CB47C94D430ECAAAB1D0811E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D22EEEA013E327509E84630166331DB1A0E93D4F697B7CD20D37D39BD140672</key>
-			<iv>2A2DC9F5CB47C94D430ECAAAB1D0811E</iv>
-			<input>86D2FC43F1F52B3916E8CF0D5E60D0DA</input>
-			<output>BC318E32957CE6577CD06E2D3166CD1F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1C4909D11840D978FD7232D0FBC0E6A3A63F1DE663EB519A5C0313148C72CB6D</key>
-			<iv>BC318E32957CE6577CD06E2D3166CD1F</iv>
-			<input>916BE73B197EEB0DF49A74E0EDA3D778</input>
-			<output>E9858DBB1B5145ABB598ADE882346DDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD2ED3C6FCE0034F19259D57A35B60CF4FBA905D78BA1431E99BBEFC0E46A6B6</key>
-			<iv>E9858DBB1B5145ABB598ADE882346DDB</iv>
-			<input>C167DA17E4A0DA37E457AF87589B866C</input>
-			<output>1E04B15BBF727BEAC33C0C26141636DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>81C434CDF7EABAA49252EC86DFE15FBA51BE2106C7C86FDB2AA7B2DA1A50906B</key>
-			<iv>1E04B15BBF727BEAC33C0C26141636DD</iv>
-			<input>5CEAE70B0B0AB9EB8B7771D17CBA3F75</input>
-			<output>EB21AED731D594017F5729262A1E23B4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AEF6BF8323CAE4C2270CC5E51B0A3BFFBA9F8FD1F61DFBDA55F09BFC304EB3DF</key>
-			<iv>EB21AED731D594017F5729262A1E23B4</iv>
-			<input>2F328B4ED4205E66B55E2963C4EB6445</input>
-			<output>EB73CFADA0ACB98B37091CB81489CC7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC3BD548867FA82FF80EF67B38016A1E51EC407C56B1425162F9874424C77FA3</key>
-			<iv>EB73CFADA0ACB98B37091CB81489CC7C</iv>
-			<input>12CD6ACBA5B54CEDDF02339E230B51E1</input>
-			<output>1FEEF226D6759E8813B98A5D43B2F22A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E1F5760C694DBE5688A0241B5517B4B14E02B25A80C4DCD971400D1967758D89</key>
-			<iv>1FEEF226D6759E8813B98A5D43B2F22A</iv>
-			<input>5DCEA344EF32167970AED2606D16DEAF</input>
-			<output>9C591D087F0F45C8AE3DEC9C455FE200</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ABF2D79C472D0159FA9AE646D0C0FC9CD25BAF52FFCB9911DF7DE185222A6F89</key>
-			<iv>9C591D087F0F45C8AE3DEC9C455FE200</iv>
-			<input>4A07A1902E60BF0F723AC25D85D7482D</input>
-			<output>62C4F4D7E4AC5ABC03BECA3CA56DA4FD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E58A351A4DD79A2ED6D386E11A8563F2B09F5B851B67C3ADDCC32BB98747CB74</key>
-			<iv>62C4F4D7E4AC5ABC03BECA3CA56DA4FD</iv>
-			<input>4E78E2860AFA9B772C4960A7CA459F6E</input>
-			<output>AD8557C0D04675CC312C7A106D5C8B83</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BCF7BB1010AF5CEB05E06339689067E31D1A0C45CB21B661EDEF51A9EA1B40F7</key>
-			<iv>AD8557C0D04675CC312C7A106D5C8B83</iv>
-			<input>597D8E0A5D78C6C5D333E5D872150411</input>
-			<output>80159F4F5E0C2DC07D3CD3C52A1A8E6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>328BB8EB86055D2BB52A02E40BB5D2C39D0F930A952D9BA190D3826CC001CE9A</key>
-			<iv>80159F4F5E0C2DC07D3CD3C52A1A8E6D</iv>
-			<input>8E7C03FB96AA01C0B0CA61DD6325B520</input>
-			<output>F58A2EE5A5BDE8CA0A96F4F4B64BE737</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F192AE51D926A2B68C38EA4E48A0590F6885BDEF3090736B9A457698764A29AD</key>
-			<iv>F58A2EE5A5BDE8CA0A96F4F4B64BE737</iv>
-			<input>C31916BA5F23FF9D3912E8AA43158BCC</input>
-			<output>B4C0DD55013AEFE12D94F31B861134CC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EE48E38C2C805E2AACC89AD8682E552DC4560BA31AA9C8AB7D18583F05B1D61</key>
-			<iv>B4C0DD55013AEFE12D94F31B861134CC</iv>
-			<input>AF7620691BEEA75426F463E3CE22BC5D</input>
-			<output>FD8B06AEF9B3C25D11B950A6648276BB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F425B9BF4D114251736EE7FCDB430B6721CE6614C8195ED7A668D52594D96BDA</key>
-			<iv>FD8B06AEF9B3C25D11B950A6648276BB</iv>
-			<input>AAC137878FD947B3D9A26E515DC1EE35</input>
-			<output>31BE8DF4A8A749FBF11AB07D8479A10B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>61A2D5337BCB827887F884AD98C67BEA1070EBE060BE172C5772655810A0CAD1</key>
-			<iv>31BE8DF4A8A749FBF11AB07D8479A10B</iv>
-			<input>95876C8C36DAC029F49663514385708D</input>
-			<output>E9A2EF0C882781788D50033B79FE181F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E930B2277AC4475FB0A94519F60DE552F9D204ECE8999654DA226663695ED2CE</key>
-			<iv>E9A2EF0C882781788D50033B79FE181F</iv>
-			<input>88926714010FC5273751C1B46ECB9EB8</input>
-			<output>17FFCD5A010709A2737570E038D63B27</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B944CE978DF68F8FBFF0A5EA62AAC299EE2DC9B6E99E9FF6A95716835188E9E9</key>
-			<iv>17FFCD5A010709A2737570E038D63B27</iv>
-			<input>50747CB0F732C8D00F59E0F394A727CB</input>
-			<output>E12B89FA1B1DD3B29F02219FD3D7D3D2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E2D7FCEB557462267BED2CCA8B48CD70F06404CF2834C443655371C825F3A3B</key>
-			<iv>E12B89FA1B1DD3B29F02219FD3D7D3D2</iv>
-			<input>B769B15938A1C9ADD84E7726CA1E4E4E</input>
-			<output>75AE99B6022B08E36FB88A6F4D7698BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8046D73D60912221694B2AFE703EDB167AA8D9FAF0A844A759EDBD73CF29A284</key>
-			<iv>75AE99B6022B08E36FB88A6F4D7698BF</iv>
-			<input>8E6BA8F3D5C664030EF5F832D88A57C1</input>
-			<output>CF32DCE11FDB098A6435315342796064</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>20716D6975C32231968BF76725144CBAB59A051BEF734D2D3DD88C208D50C2E0</key>
-			<iv>CF32DCE11FDB098A6435315342796064</iv>
-			<input>A037BA5415520010FFC0DD99552A97AC</input>
-			<output>80F12B261317C66F21AC811230848468</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AD5A2011E425AFFD57E7191336D37D25356B2E3DFC648B421C740D32BDD44688</key>
-			<iv>80F12B261317C66F21AC811230848468</iv>
-			<input>8D2B4D7891E68DCCC16CEE7413C7319F</input>
-			<output>F2C6B70C19A5748C6D2B5DE41544854F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>49D4228508C789105CF457D10FA56048C7AD9931E5C1FFCE715F50D6A890C3C7</key>
-			<iv>F2C6B70C19A5748C6D2B5DE41544854F</iv>
-			<input>E48E0294ECE226ED0B134EC239761D6D</input>
-			<output>A31FB3535978DAA555DD617FAB27A97A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>67CE710A3E778CB4A37D1F2274D4462D64B22A62BCB9256B248231A903B76ABD</key>
-			<iv>A31FB3535978DAA555DD617FAB27A97A</iv>
-			<input>2E1A538F36B005A4FF8948F37B712665</input>
-			<output>97336ECFAE89015E0B5A7D1C154C71BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A87C517EF43CACC6D41EEB661DD1142CF38144AD123024352FD84CB516FB1B02</key>
-			<iv>97336ECFAE89015E0B5A7D1C154C71BF</iv>
-			<input>CFB22074CA4B20727763F44469055201</input>
-			<output>466CD227A6A9D5FC3C0579064530FCE0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D73F926A5B5DD8F5B82DE8F77E0E0697B5ED968AB499F1C913DD35B353CBE7E2</key>
-			<iv>466CD227A6A9D5FC3C0579064530FCE0</iv>
-			<input>7F43C314AF6174336C33039163DF12BB</input>
-			<output>4F444B4554E965A113DC0097AA8FAD7A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A19BE1C42A13B85B754834E9808DF4BFAA9DDCFE070946800013524F9444A98</key>
-			<iv>4F444B4554E965A113DC0097AA8FAD7A</iv>
-			<input>AD262C7619FCE3700F796BB9E606D9DC</input>
-			<output>F7078ABE7617867274CBBEDA1082B987</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D256675EDBF987B5CA86C21DE177C6A00DAE57719667121A74CA8BFEE9C6F31F</key>
-			<iv>F7078ABE7617867274CBBEDA1082B987</iv>
-			<input>A84FD9429958BC307DD24153797F19EB</input>
-			<output>676ACAB66B04597F1A33FF462BD5E0EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C025616AB6F89BB1B90AA0E8F63FF1CC6AC49DC7FD634B656EF974B8C21313F1</key>
-			<iv>676ACAB66B04597F1A33FF462BD5E0EE</iv>
-			<input>127306346D011C04738C62F51748376C</input>
-			<output>BF66B8DD1E540A4FED759FDB9A44B439</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A437D44D93C25B3233FB168D63751A5D5A2251AE337412A838CEB635857A7C8</key>
-			<iv>BF66B8DD1E540A4FED759FDB9A44B439</iv>
-			<input>EA661C2E6FC4BE029A3511802008A069</input>
-			<output>EC8DBB5B3FE245180856B312D3052A87</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>838278123F0261D1F287C9FF94CA4A55392F9E41DCD504328BDA58718B528D4F</key>
-			<iv>EC8DBB5B3FE245180856B312D3052A87</iv>
-			<input>A9C10556E63E4462D1B8789742FD1BF0</input>
-			<output>02E1E60312BB371912C35E3EBC6EA755</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64F3A47C8C7CFA9FF2AC88637C598E6A3BCE7842CE6E332B9919064F373C2A1A</key>
-			<iv>02E1E60312BB371912C35E3EBC6EA755</iv>
-			<input>E771DC6EB37E9B4E002B419CE893C43F</input>
-			<output>73D7499EBB38716D71CCB737CFFFA3FB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>585ABE6B779F22400FC2AC3B55B39E91481931DC75564246E8D5B178F8C389E1</key>
-			<iv>73D7499EBB38716D71CCB737CFFFA3FB</iv>
-			<input>3CA91A17FBE3D8DFFD6E245829EA10FB</input>
-			<output>CEE7721855B7381D369ECC1C9337BB02</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7BC1E883465CBBB9BA624FF99308259386FE43C420E17A5BDE4B7D646BF432E3</key>
-			<iv>CEE7721855B7381D369ECC1C9337BB02</iv>
-			<input>239B56E831C399F9B5A0E3C2C6BBBB02</input>
-			<output>B6F48D369383974D163E4F17FDFC59EF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>70032AF50BB5E080D4AA7722CEDC7DA9300ACEF2B362ED16C875327396086B0C</key>
-			<iv>B6F48D369383974D163E4F17FDFC59EF</iv>
-			<input>0BC2C2764DE95B396EC838DB5DD4583A</input>
-			<output>E8372DA404126C63190626D95583629D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C61B59BDA2FF51D4F4F740578466EA9D83DE356B7708175D17314AAC38B0991</key>
-			<iv>E8372DA404126C63190626D95583629D</iv>
-			<input>2C629F6ED19A159D9BE50327B69A1300</input>
-			<output>F717B53E51665D0854C895EA1D1D7E77</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>59A35E82B9C8D8FF25CFC5BAD979A9052F2A5668E616DC7D85BB8140DE9677E6</key>
-			<iv>F717B53E51665D0854C895EA1D1D7E77</iv>
-			<input>05C2EB1963E72DE26A80B1BFA13FC7AC</input>
-			<output>7D3EE90EEF7C16872F98296977AA9557</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5BC419836F7C4F57957E13E39B2181455214BF66096ACAFAAA23A829A93CE2B1</key>
-			<iv>7D3EE90EEF7C16872F98296977AA9557</iv>
-			<input>02674701D6B497A8B0B1D65942582840</input>
-			<output>6DCD0C4B5633078FDEA9AE24781CB212</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6D2BB67584AA2FAAE1D0DAD8C9C60253FD9B32D5F59CD75748A060DD12050A3</key>
-			<iv>6DCD0C4B5633078FDEA9AE24781CB212</iv>
-			<input>BD16A2E43736EDAD3B631E4E17BDE160</input>
-			<output>6515251260A73AE868E992B6D49579C5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>57637851C3C08A2923EBD2FEA27472DC5ACC963F3FFEF79D1C6394BB05B52966</key>
-			<iv>6515251260A73AE868E992B6D49579C5</iv>
-			<input>B1B1C3369B8A28D38DF6DF532EE812F9</input>
-			<output>1A40C2C15F03867E81F951B545396BB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E08E94110F1E64554848AB1966299B7D408C54FE60FD71E39D9AC50E408C42D2</key>
-			<iv>1A40C2C15F03867E81F951B545396BB4</iv>
-			<input>B7EDEC40CCDEEE7C6BA379E7C45DE9A1</input>
-			<output>DD331F336D669EFD37106099EA51010D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>17F2544156745EC108BF97DA806752C39DBF4BCD0D9BEF1EAA8AA597AADD43DF</key>
-			<iv>DD331F336D669EFD37106099EA51010D</iv>
-			<input>F77CC050596A3A9440F73CC3E64EC9BE</input>
-			<output>0EF37EC0B6071874FF68926D98A0EEAB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C97ABFF115E20A6C72A6206DB63EC0FD934C350DBB9CF76A55E237FA327DAD74</key>
-			<iv>0EF37EC0B6071874FF68926D98A0EEAB</iv>
-			<input>DE88EBB0439654AD7A19B7B73659923E</input>
-			<output>DA1DAEB42178A7657A40BD72A06CEDDC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>77AB469FBC999BB2922D460413E2012049519BB99AE4500F2FA28A88921140A8</key>
-			<iv>DA1DAEB42178A7657A40BD72A06CEDDC</iv>
-			<input>BED1F96EA97B91DEE08B6669A5DCC1DD</input>
-			<output>E78523134FC8EAA77CC85E0EEC60FCD3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4F88FA6F4053B3A15094ED532C2F47DCAED4B8AAD52CBAA8536AD4867E71BC7B</key>
-			<iv>E78523134FC8EAA77CC85E0EEC60FCD3</iv>
-			<input>3823BCF0FCCA2813C2B9AB573FCD46FC</input>
-			<output>BC540D1838D7AD8E8B1C44B96684DD31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D178E105443700CFEE007AB3BAA71E4C1280B5B2EDFB1726D876903F18F5614A</key>
-			<iv>BC540D1838D7AD8E8B1C44B96684DD31</iv>
-			<input>9EF01B6A0464B36EBE9497E096885990</input>
-			<output>6C6B95A5D8F4E7F1A5864DDBFCDCEED8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8F6A589BA0ED1A67FE426368A7E523047EEB2017350FF0D77DF0DDE4E4298F92</key>
-			<iv>6C6B95A5D8F4E7F1A5864DDBFCDCEED8</iv>
-			<input>5E12B99EE4DA1AA8104219DB1D423D48</input>
-			<output>B58C92AE19B332621E7A4E5512C88596</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>147895B157BF16B87C32AAA17480A886CB67B2B92CBCC2B5638A93B1F6E10A04</key>
-			<iv>B58C92AE19B332621E7A4E5512C88596</iv>
-			<input>9B12CD2AF7520CDF8270C9C9D3658B82</input>
-			<output>4D1D90F007BB5099C382E69C9CD1F7E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4C8441FCEBBD595999864A6CC37F7EDB867A22492B07922CA008752D6A30FDE1</key>
-			<iv>4D1D90F007BB5099C382E69C9CD1F7E5</iv>
-			<input>58FCD44DBC024FE1E5B4E0CDB7FFD65D</input>
-			<output>7F59920056EC32FA48F8A9CCCFFE437A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CD922EEA60F0F136A799C650F5D4B030F923B0497DEBA0D6E8F0DCE1A5CEBE9B</key>
-			<iv>7F59920056EC32FA48F8A9CCCFFE437A</iv>
-			<input>81166F168B4DA86F3E1F8C3C36ABCEEB</input>
-			<output>A546F57E48A783694577D59F7FD01D9E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90DE3ECB26E68BDD3C4B7AB9B9CDE6195C654537354C23BFAD87097EDA1EA305</key>
-			<iv>A546F57E48A783694577D59F7FD01D9E</iv>
-			<input>5D4C102146167AEB9BD2BCE94C195629</input>
-			<output>6342B8CB1E493F916585FF1BBFC42AB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ADF1869FEA15122394E1F6FF6B51E5DE3F27FDFC2B051C2EC802F66565DA89B6</key>
-			<iv>6342B8CB1E493F916585FF1BBFC42AB3</iv>
-			<input>3D2FB854CCF399FEA8AA8C46D29C03C7</input>
-			<output>052AEDF54016429320B04243E308ECFE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF52D7982845CBAEB4E56592906B63943A0D10096B135EBDE8B2B42686D26548</key>
-			<iv>052AEDF54016429320B04243E308ECFE</iv>
-			<input>72A35107C250D98D2004936DFB3A864A</input>
-			<output>EE147A64DC2E31222A3A14B133769ACE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5D6B5899612FF15825029DEB0B37CB4ED4196A6DB73D6F9FC288A097B5A4FF86</key>
-			<iv>EE147A64DC2E31222A3A14B133769ACE</iv>
-			<input>82398F01496A3AF691E7F8799B5CA8DA</input>
-			<output>8330EF868E72D33172D7DEC7B440056C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FC23917C478894C9490A6585CCB8A716572985EB394FBCAEB05F7E5001E4FAEA</key>
-			<iv>8330EF868E72D33172D7DEC7B440056C</iv>
-			<input>A148C9E526A765916C08F86EC78F6C58</input>
-			<output>DC83E3727C4E9754A82BFCFFD924ACB3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BCD556FA7AFA27F9675F45922924DFA68BAA669945012BFA187482AFD8C05659</key>
-			<iv>DC83E3727C4E9754A82BFCFFD924ACB3</iv>
-			<input>40F6C7863D72B3302E552017E59C78B0</input>
-			<output>C0B97D9320DC3E893953E1D93859D3E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A0F23A11C85F008CFEC20F76BD6751054B131B0A65DD157321276376E09985BD</key>
-			<iv>C0B97D9320DC3E893953E1D93859D3E4</iv>
-			<input>1C276CEBB2A52775999D4AE494438EA3</input>
-			<output>8C28875C39211D01A084A59BA71D0C31</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2BB58C8FE9FE5BAEC5DB3F6A7EB98187C73B9C565CFC087281A3C6ED4784898C</key>
-			<iv>8C28875C39211D01A084A59BA71D0C31</iv>
-			<input>8B47B69E21A15B223B19301CC3DED082</input>
-			<output>7865E390E8019259A117669082ED5CCC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6035A1AC1F0C1871EA06773DEA40B5C5BF5E7FC6B4FD9A2B20B4A07DC569D540</key>
-			<iv>7865E390E8019259A117669082ED5CCC</iv>
-			<input>4B802D23F6F243DF2FDD485794F93442</input>
-			<output>DC7BA7C54217B8DEE966C0672DBE79CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CCA70BB373BA65736D25078BB99980F66325D803F6EA22F5C9D2601AE8D7AC8D</key>
-			<iv>DC7BA7C54217B8DEE966C0672DBE79CD</iv>
-			<input>AC92AA1F6CB67D02872370B653D93533</input>
-			<output>CBB60FB6BE7240A2037CDA46DAAAC4E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E6D9E4347ABCE875CDFB026A9B1CE767A893D7B548986257CAAEBA5C327D6869</key>
-			<iv>CBB60FB6BE7240A2037CDA46DAAAC4E4</iv>
-			<input>2A7EEF8709068D06A0DE05E122856791</input>
-			<output>3B0863884DCFFDAAE439E3BCFC2E0491</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90C0678C9B9796FACBD3A9E8E40A46E6939BB43D05579FFD2E9759E0CE536CF8</key>
-			<iv>3B0863884DCFFDAAE439E3BCFC2E0491</iv>
-			<input>761983B8E12B7E8F0628AB827F16A181</input>
-			<output>1407CDBD04CA6450D15A276B0E45D500</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A3505D86BF4B95AEC0F720B4CBDF4985879C7980019DFBADFFCD7E8BC016B9F8</key>
-			<iv>1407CDBD04CA6450D15A276B0E45D500</iv>
-			<input>33903A0A24DC03540B24895C2FD50F63</input>
-			<output>94B64DF8376EAF94F24EB0457DF81418</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EAD741BA44D8637A4D49A089E4A122F2132A347836F354390D83CECEBDEEADE0</key>
-			<iv>94B64DF8376EAF94F24EB0457DF81418</iv>
-			<input>49871C3CFB93F6D48DBE803D2F7E6B77</input>
-			<output>6E2DE304D4A21A218291FD9B59FED9BF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>278551B22B73239BF36E61370FFF43EA7D07D77CE2514E188F123355E410745F</key>
-			<iv>6E2DE304D4A21A218291FD9B59FED9BF</iv>
-			<input>CD5210086FAB40E1BE27C1BEEB5E6118</input>
-			<output>72A1E7B22D6B8B8C38C4CCD545466879</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C7046CA82928EA5AE1E6998399A090BB0FA630CECF3AC594B7D6FF80A1561C26</key>
-			<iv>72A1E7B22D6B8B8C38C4CCD545466879</iv>
-			<input>E0813D1A025BC9C11288F8B4965FD351</input>
-			<output>F5F1B011C644D119625733433C3DBB40</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>82AF7079A309A3B1367E4DC8EE90B8C5FA5780DF097E148DD581CCC39D6BA766</key>
-			<iv>F5F1B011C644D119625733433C3DBB40</iv>
-			<input>45AB1CD18A2149EBD798D44B7730287E</input>
-			<output>FDD90319FC2878AE4E23CE63C6660D1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB439411E1412BA8D6DB9F3052753D3F078E83C6F5566C239BA202A05B0DAA7C</key>
-			<iv>FDD90319FC2878AE4E23CE63C6660D1A</iv>
-			<input>69ECE46842488819E0A5D2F8BCE585FA</input>
-			<output>0B3948AEFD674622289CB41E3F668A5C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2FDF3EB8C01693C7FB990CE6D7F56E10CB7CB6808312A01B33EB6BE646B2020</key>
-			<iv>0B3948AEFD674622289CB41E3F668A5C</iv>
-			<input>29BE67FA6D404294A9620FFE3F0A6BDE</input>
-			<output>9F5BF60EB5CCF9D9F3A20DA569209636</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ECF0B5C32A3163495086894AB263166D93EC3D66BDFDD3D8409CBB1B0D4BB616</key>
-			<iv>9F5BF60EB5CCF9D9F3A20DA569209636</iv>
-			<input>2E0D4628A6300A752F3F1984DF1C408C</input>
-			<output>3FED40A5796B3D1FF8805E5EF8922511</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>259CAA194EE9BE90B2B1E7654CBDCD03AC017DC3C496EEC7B81CE545F5D99307</key>
-			<iv>3FED40A5796B3D1FF8805E5EF8922511</iv>
-			<input>C96C1FDA64D8DDD9E2376E2FFEDEDB6E</input>
-			<output>2973A39E09EF5F4F42B29E6730ECC127</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FAAB18CE5FA7895BAA9EC69A55F690208572DE5DCD79B188FAAE7B22C5355220</key>
-			<iv>2973A39E09EF5F4F42B29E6730ECC127</iv>
-			<input>DF37B2D7114E37CB182F21FF194B5D23</input>
-			<output>F8C4C1A86B0665E2124CFFA9128FFEFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3806BAB3764E794DF526A17BCE0112877DB61FF5A67FD46AE8E2848BD7BAACDD</key>
-			<iv>F8C4C1A86B0665E2124CFFA9128FFEFD</iv>
-			<input>C2ADA27D29E9F0165FB867E19BF782A7</input>
-			<output>90996F6629A41FC86A9520DD33AE5B3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B7F781357E024140C3797D01C286E72BED2F70938FDBCBA28277A456E414F7E2</key>
-			<iv>90996F6629A41FC86A9520DD33AE5B3F</iv>
-			<input>8FF13B86084C380D365FDC7A0C87F5AC</input>
-			<output>9DAFB2F259BFD18945A0A6EFF9A81A75</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B67D37A8E281AFD015C38A72F5662BEE7080C261D6641A2BC7D702B91DBCED97</key>
-			<iv>9DAFB2F259BFD18945A0A6EFF9A81A75</iv>
-			<input>018AB69D9C83EE90D6BAF77337E0CCC5</input>
-			<output>C89F523289AE2A7C8F796C2252CB0597</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A47B97F34FB4A8F219ED7A59EFE40080B81F90535FCA305748AE6E9B4F77E800</key>
-			<iv>C89F523289AE2A7C8F796C2252CB0597</iv>
-			<input>1206A05BAD3507220C2EF02B1A822B6E</input>
-			<output>3AACC4E5DE152BB1730C6D10C9A81A0A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E8EBBFDA61B6BC6735953F8E448B5E0282B354B681DF1BE63BA2038B86DFF20A</key>
-			<iv>3AACC4E5DE152BB1730C6D10C9A81A0A</iv>
-			<input>4C9028292E0214952C7845D7AB6F5E82</input>
-			<output>1E315BFFFDC3DA42438E683263B496DD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE950FF3D603DECEE18F4ACF99A623589C820F497C1CC1A4782C6BB9E56B64D7</key>
-			<iv>1E315BFFFDC3DA42438E683263B496DD</iv>
-			<input>067EB029B7B562A9D41A7541DD2D7D5A</input>
-			<output>9B021A44CD9FF920DFE1EC97B3EE8AE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E073E1149A4A605E041167F3739F17240780150DB1833884A7CD872E5685EE33</key>
-			<iv>9B021A44CD9FF920DFE1EC97B3EE8AE4</iv>
-			<input>0EE6EEE74C49BE90E59E2D3CEA39347C</input>
-			<output>4F62EE03D7A8337ECB3DCC0EA5444C2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF449E4B7DFA404D3F18C0266725F67248E2FB0E662B0BFA6CF04B20F3C1A21E</key>
-			<iv>4F62EE03D7A8337ECB3DCC0EA5444C2D</iv>
-			<input>5F377F5FE7B020133B09A7D514BAE156</input>
-			<output>AC8767B1E15D6D1ECACCCBF2D0FAB043</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3AB2898399D0F8467B37A5C916D9117AE4659CBF877666E4A63C80D2233B125D</key>
-			<iv>AC8767B1E15D6D1ECACCCBF2D0FAB043</iv>
-			<input>85F617C8E42AB80B442F65EF71FCE708</input>
-			<output>9CA6E27F1966AE133CB7B98C2B13C1DA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>06A09B6D5A6BCA82B26D0625F2A89FA178C37EC09E10C8F79A8B395E0828D387</key>
-			<iv>9CA6E27F1966AE133CB7B98C2B13C1DA</iv>
-			<input>3C1212EEC3BB32C4C95AA3ECE4718EDB</input>
-			<output>B7A6788E6D9886047D1450B093F5B6FE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>79A26263675E11BE581DDEA79A20CAACCF65064EF3884EF3E79F69EE9BDD6579</key>
-			<iv>B7A6788E6D9886047D1450B093F5B6FE</iv>
-			<input>7F02F90E3D35DB3CEA70D8826888550D</input>
-			<output>5C1785DC27BC301DEAFAEF325A4CCBFD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21DEF781026D9ACB4108C6F9847C635F93728392D4347EEE0D6586DCC191AE84</key>
-			<iv>5C1785DC27BC301DEAFAEF325A4CCBFD</iv>
-			<input>587C95E265338B751915185E1E5CA9F3</input>
-			<output>9577E8F6DF5921C4B518974A2F1FCF07</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB000BAA170733EA4D077BDD7DA1623506056B640B6D5F2AB87D1196EE8E6183</key>
-			<iv>9577E8F6DF5921C4B518974A2F1FCF07</iv>
-			<input>CADEFC2B156AA9210C0FBD24F9DD016A</input>
-			<output>09F8E3DA7C5E39F2F13C2B72001D1D56</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D56A1025AB5F7B5F943B3AECAF87A2800FFD88BE773366D849413AE4EE937CD5</key>
-			<iv>09F8E3DA7C5E39F2F13C2B72001D1D56</iv>
-			<input>3E6A1B8FBC5848B5D93C4131D226C0B5</input>
-			<output>7344F33968E177F3864908F02915739A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>876077EA9BDB2134098B73CAD4411D997CB97B871FD2112BCF083214C7860F4F</key>
-			<iv>7344F33968E177F3864908F02915739A</iv>
-			<input>520A67CF30845A6B9DB049267BC6BF19</input>
-			<output>EC286360EF2A54CE894ED06ACF39970C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AA9943761AD545F47EBCF5CD4584C3B3909118E7F0F845E54646E27E08BF9843</key>
-			<iv>EC286360EF2A54CE894ED06ACF39970C</iv>
-			<input>2DF9349C810E64C07737860791C5DE2A</input>
-			<output>89F4BE70D36A05C84FD2124F6A69786B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5C285D3FD07EF5F6664B1F4C4CA771E31965A6972392402D0994F03162D6E028</key>
-			<iv>89F4BE70D36A05C84FD2124F6A69786B</iv>
-			<input>F6B11E49CAABB00218F7EA810923B250</input>
-			<output>9A65E99C06E0744056365C4A26CD001F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F28851656D77922A55655DBE4610993683004F0B2572346D5FA2AC7B441BE037</key>
-			<iv>9A65E99C06E0744056365C4A26CD001F</iv>
-			<input>AEA00C5ABD0967DC332E42F20AB7E8D5</input>
-			<output>566ECB7B317C81CF87BC483B4B6CF417</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62428DD3F6B04C564CA6D9DA9A9A64B3D56E8470140EB5A2D81EE4400F771420</key>
-			<iv>566ECB7B317C81CF87BC483B4B6CF417</iv>
-			<input>90CADCB69BC7DE7C19C38464DC8AFD85</input>
-			<output>16E3F727D2D4CC2E88C2A4B0DFEF34AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>78A68A0EC33E2C0198538C1EA591AF46C38D7357C6DA798C50DC40F0D098208F</key>
-			<iv>16E3F727D2D4CC2E88C2A4B0DFEF34AF</iv>
-			<input>1AE407DD358E6057D4F555C43F0BCBF5</input>
-			<output>6F6606018F5491FC43864FC29B572551</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4EFBCF71F7A0DA7564DAF1F0488AA933ACEB7556498EE870135A0F324BCF05DE</key>
-			<iv>6F6606018F5491FC43864FC29B572551</iv>
-			<input>365D457F349EF674FC897DEEED1B0675</input>
-			<output>BC07194E716B4D78F64E14B6E5762439</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A4BBF15395604071DF929A4922A129DD10EC6C1838E5A508E5141B84AEB921E7</key>
-			<iv>BC07194E716B4D78F64E14B6E5762439</iv>
-			<input>EA403E2262C09A04BB486BB96A2B80EE</input>
-			<output>BF1994171481FB4F84AB092F437EA9C7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>665F10926596E8F5691ACE10AA5075AEAFF5F80F2C645E4761BF12ABEDC78820</key>
-			<iv>BF1994171481FB4F84AB092F437EA9C7</iv>
-			<input>C2E4E1C1F0F6A884B688545988F15C73</input>
-			<output>254FE05D25B67D3BF6C2688F46A7FAD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15F4BA29EBAAF160AC95507FDA03D7D58ABA185209D2237C977D7A24AB6072F8</key>
-			<iv>254FE05D25B67D3BF6C2688F46A7FAD8</iv>
-			<input>73ABAABB8E3C1995C58F9E6F7053A27B</input>
-			<output>A03B8DB2C1C9B6C574A8499C6E5869CF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>96A760AB52E1D6A5ACFCA016E98D0BA12A8195E0C81B95B9E3D533B8C5381B37</key>
-			<iv>A03B8DB2C1C9B6C574A8499C6E5869CF</iv>
-			<input>8353DA82B94B27C50069F069338EDC74</input>
-			<output>088F141F097F659145DE8E1EDB2300B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C06F9EE0327C811CEE3CC3B2B492620220E81FFC164F028A60BBDA61E1B1B82</key>
-			<iv>088F141F097F659145DE8E1EDB2300B5</iv>
-			<input>EAA1994551C61EB4621F6C2DC2C42D81</input>
-			<output>43703327BFDAF109F6F9C5969D3C7649</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F8AC1E3014DD99D1A440A693CB73B51617EB2D87EBE012150F2783083276DCB</key>
-			<iv>43703327BFDAF109F6F9C5969D3C7649</iv>
-			<input>738C380D026A118CD4A7C65217FE1D71</input>
-			<output>BDAC873D0A674CDA98105DC3070F7BE4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E595998ABEF32CABDD4A441B4042BF8BDCD235E574D94DFBC8E225F38428162F</key>
-			<iv>BDAC873D0A674CDA98105DC3070F7BE4</iv>
-			<input>EA1F5869BFBEF536C70E4E727CF584DA</input>
-			<output>A1A89122CF532FBC69E74A70F1E7346F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FBA3999F7BF540184E9BE7715CA8C0497D7AA4C7BB8A6247A1056F8375CF2240</key>
-			<iv>A1A89122CF532FBC69E74A70F1E7346F</iv>
-			<input>1E360015C5066CB393D1A36A1CEA7FC2</input>
-			<output>68C2A6FF8EABE7EA05E5DD6093C00129</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>65AF7CB5F5CEF75FEF0BF5F746D7DD7D15B80238352185ADA4E0B2E3E60F2369</key>
-			<iv>68C2A6FF8EABE7EA05E5DD6093C00129</iv>
-			<input>9E0CE52A8E3BB747A19012861A7F1D34</input>
-			<output>1EA92E63C6926082B04F69E658CFA478</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7D3BA807729873EB2021AC1817B2C7D30B112C5BF3B3E52F14AFDB05BEC08711</key>
-			<iv>1EA92E63C6926082B04F69E658CFA478</iv>
-			<input>1894D4B2875684B4CF2A59EF51651AAE</input>
-			<output>45A943F0B6430ABA20C562469AE98A6D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5ECAEF5BF4EC899C7BFAEE2F50B864924EB86FAB45F0EF95346AB94324290D7C</key>
-			<iv>45A943F0B6430ABA20C562469AE98A6D</iv>
-			<input>23F1475C8674FA775BDB4237470AA341</input>
-			<output>6CDF579A8429606CC9BC56D010845954</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D394BD1C8C1D1F8A67A3BA16530662A22673831C1D98FF9FDD6EF9334AD5428</key>
-			<iv>6CDF579A8429606CC9BC56D010845954</iv>
-			<input>D3F3A48A3C2D5864DD80D58E358802B8</input>
-			<output>96E9E19694DB9931AC09A7B6296FEAA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9ABEC4725C717368463710CB2D45774DB48ED9A7550216C851DF48251DC2BE80</key>
-			<iv>96E9E19694DB9931AC09A7B6296FEAA8</iv>
-			<input>17878FA394B0A290E04D2B6A48751167</input>
-			<output>176C9B9B32A539F35BDFB21B38C42134</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3CA1E23510949D81242F16DE0E9B2B3AA3E2423C67A72F3B0A00FA3E25069FB4</key>
-			<iv>176C9B9B32A539F35BDFB21B38C42134</iv>
-			<input>A61F26474CE5EEE96218061523DE5C77</input>
-			<output>06004480169FB7B6D4DBA7453A85E54D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A72AA0C7EAA3113480EF57A83C272D7A5E206BC7138988DDEDB5D7B1F837AF9</key>
-			<iv>06004480169FB7B6D4DBA7453A85E54D</iv>
-			<input>16D348396E3EAC926C21E3A48D5959ED</input>
-			<output>FF2F4F6E32133CE8C70252937FE5BDA6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90C0C8FC5B65BE92E643956293A70AF35ACD49D2432BA46519D90FE86066C75F</key>
-			<iv>FF2F4F6E32133CE8C70252937FE5BDA6</iv>
-			<input>BAB262F025CF8F81AE4D601810657824</input>
-			<output>0972CCC79C412DB6FBC5918B8E6EAB7C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E0AF49BAC4BD146E83C884327FFB682353BF8515DF6A89D3E21C9E63EE086C23</key>
-			<iv>0972CCC79C412DB6FBC5918B8E6EAB7C</iv>
-			<input>706F81469FD8AAFC658B1150EC5C62D0</input>
-			<output>2D8C668310308FCF7B3E325F50AA89E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E5C29451893B7B94249E89469E58DEAD7E33E396CF5A061C9922AC3CBEA2E5C6</key>
-			<iv>2D8C668310308FCF7B3E325F50AA89E5</iv>
-			<input>056DDDEB4D866FFAA7560D74E1A3B68E</input>
-			<output>8342DD95F1040E763C82E36F8F74822F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A9AD7CAFA46AE63362069120B502D33FD713E033E5E086AA5A04F5331D667E9</key>
-			<iv>8342DD95F1040E763C82E36F8F74822F</iv>
-			<input>AF58439B737DD5F712BEE0549508F39E</input>
-			<output>8CA83627884D9B7A62F096BD37C14EFF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21AEFC00E7CC2942F319630702ECCC6B71D90824B6139310C750D9EE06172916</key>
-			<iv>8CA83627884D9B7A62F096BD37C14EFF</iv>
-			<input>6B342BCA1D8A8721C5390A1509BCE158</input>
-			<output>13073AB95C0C0587372564189A4C176F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7E615F002723795F6E37182ECC0C429E62DE329DEA1F9697F075BDF69C5B3E79</key>
-			<iv>13073AB95C0C0587372564189A4C176F</iv>
-			<input>5FCFA300C0EF501D9D2E7B29CEE08EF5</input>
-			<output>247A01C6A7072F64CB463E6580DA222E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2A25232803E901B35080B5CA64DEC2646A4335B4D18B9F33B3383931C811C57</key>
-			<iv>247A01C6A7072F64CB463E6580DA222E</iv>
-			<input>BCC30D32A71DE9445B3F13726A41AEB8</input>
-			<output>562355D078402DA76B0CCAAC2BE63DAE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>46C06B83AD1C5CD849C53A11C05137141087668B35589454503F493F376721F9</key>
-			<iv>562355D078402DA76B0CCAAC2BE63DAE</iv>
-			<input>846239B12D22CCC37CCD314D661CDB32</input>
-			<output>841B1644CCE1BF9DB0D537733047DB7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CB3AD5FB9E07D380841D712E7A71FC15949C70CFF9B92BC9E0EA7E4C0720FA86</key>
-			<iv>841B1644CCE1BF9DB0D537733047DB7F</iv>
-			<input>8DFABE78331B8F58CDD84B3FBA20CB01</input>
-			<output>DE34C065627DB86A2D0AE89FB31BDA86</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>240CFC15D60F6AE4A53D2C25BD71DD6E4AA8B0AA9BC493A3CDE096D3B43B2000</key>
-			<iv>DE34C065627DB86A2D0AE89FB31BDA86</iv>
-			<input>EF3629EE4808B96421205D0BC700217B</input>
-			<output>38DD744B95756614261178685FBF097F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FAA7CBA4AAAD9576591C12233960F1C87275C4E10EB1F5B7EBF1EEBBEB84297F</key>
-			<iv>38DD744B95756614261178685FBF097F</iv>
-			<input>DEAB37B17CA2FF92FC213E0684112CA6</input>
-			<output>DC1CF4E4633355111AD09BE1C6BC1E39</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>29E0D33A81FFDCE220D1587C36C5EB09AE6930056D82A0A6F121755A2D383746</key>
-			<iv>DC1CF4E4633355111AD09BE1C6BC1E39</iv>
-			<input>D347189E2B52499479CD4A5F0FA51AC1</input>
-			<output>2A5DC4E8C16753D202B638E5003AF83D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>956C5751C5B439990A006DB1B52336E78434F4EDACE5F374F3974DBF2D02CF7B</key>
-			<iv>2A5DC4E8C16753D202B638E5003AF83D</iv>
-			<input>BC8C846B444BE57B2AD135CD83E6DDEE</input>
-			<output>70F5676DC7646EA8F8A913AE6AD21949</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8AD9D44BC9018FD05B103360575592FEF4C193806B819DDC0B3E5E1147D0D632</key>
-			<iv>70F5676DC7646EA8F8A913AE6AD21949</iv>
-			<input>1FB5831A0CB5B64951105ED1E276A419</input>
-			<output>C44DA6A603A1E9C02F18123D5CAD5291</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DA77F2DA5CD7148B15FE8CA898C9A25E308C35266820741C24264C2C1B7D84A3</key>
-			<iv>C44DA6A603A1E9C02F18123D5CAD5291</iv>
-			<input>50AE269195D69B5B4EEEBFC8CF9C30A0</input>
-			<output>53C2D89EC4D5867DC79168D21C9B8755</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A4FD6AED6825A2A0C2114460F029EDA634EEDB8ACF5F261E3B724FE07E603F6</key>
-			<iv>53C2D89EC4D5867DC79168D21C9B8755</iv>
-			<input>903824748A554EA119DF98EE97CB3C84</input>
-			<output>79B9DABE5171A614CAFDEA11637A1800</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>29102930967275801BD019D6766FDA1A1AF73706FD845475294ACEEF649C1BF6</key>
-			<iv>79B9DABE5171A614CAFDEA11637A1800</iv>
-			<input>635FFF9E40F02FAA17F10D90796D44C0</input>
-			<output>8AB92FA5EA50F1185112FE4D8D2FCC21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F4ABA34B232C18EAD6D367320651C374904E18A317D4A56D785830A2E9B3D7D7</key>
-			<iv>8AB92FA5EA50F1185112FE4D8D2FCC21</iv>
-			<input>DDBB8A7BB55E6D6ACD037EE4703E196E</input>
-			<output>FB97C84040732D7B308C5959059D90A9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FB140F98A79F5D5D68B80301CB7B640E6BD9D0E357A7881648D469FBEC2E477E</key>
-			<iv>FB97C84040732D7B308C5959059D90A9</iv>
-			<input>0FBFACD384B345B7BE6B6433CD2AA77A</input>
-			<output>D0D0119D500519BF5B4770C494B41680</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC98221C0792D22B6EB258E57DB0D8B0BB09C17E07A291A91393193F789A51FE</key>
-			<iv>D0D0119D500519BF5B4770C494B41680</iv>
-			<input>478C2D84A00D8F76060A5BE4B6CBBCBE</input>
-			<output>94842399FC93828D30979DAD9210B827</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C92F345AC3CB803EA91C123F97E7005A2F8DE2E7FB31132423048492EA8AE9D9</key>
-			<iv>94842399FC93828D30979DAD9210B827</iv>
-			<input>75B71646C4595215C7AE4ADAEA57D8EA</input>
-			<output>5BDB886E7A7DBBA8679704F13F44B981</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3EACAF51FEA9A9886D0B9D1B6BA8436574566A89814CA88C44938063D5CE5058</key>
-			<iv>5BDB886E7A7DBBA8679704F13F44B981</iv>
-			<input>F7839B0B3D6229B6C4178F24FC4F433F</input>
-			<output>A2DA893257EE0F732A80FC52887A0788</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>72E26FEDC250C5FED59FE29C966B61FAD68CE3BBD6A2A7FF6E137C315DB457D0</key>
-			<iv>A2DA893257EE0F732A80FC52887A0788</iv>
-			<input>4C4EC0BC3CF96C76B8947F87FDC3229F</input>
-			<output>2F7877481B1162B01616C9F3268B4C44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>901C1268AD3582E6A9FA4C5CBB99D07EF9F494F3CDB3C54F7805B5C27B3F1B94</key>
-			<iv>2F7877481B1162B01616C9F3268B4C44</iv>
-			<input>E2FE7D856F6547187C65AEC02DF2B184</input>
-			<output>9FFA4AF8D0F096CC40A9F879076211E0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EAF814EC49F2254E4933FAF977D7BEEC660EDE0B1D43538338AC4DBB7C5D0A74</key>
-			<iv>9FFA4AF8D0F096CC40A9F879076211E0</iv>
-			<input>7AE40684E4C7A7A8E0C9B6A5CC4E6E92</input>
-			<output>886097F5BC20C157A605CBEFCA5663D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ED70BBA192093A0C9AD62E86C27091FEE6E49FEA16392D49EA98654B60B69A3</key>
-			<iv>886097F5BC20C157A605CBEFCA5663D7</iv>
-			<input>642F1F5650D2B6EE809E98111BF0B7F3</input>
-			<output>00DBBB84F52B3C9B28325161072753B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>18280464C9E683CFFF9B75A5FD74EE96EEB5F27A5448AE4FB69BD735B12C3A15</key>
-			<iv>00DBBB84F52B3C9B28325161072753B6</iv>
-			<input>96FF0FDED0C6106F3636174D9153E789</input>
-			<output>714A27832B326F0A8FA745012DE4D936</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F464EE1298B09059016082CCC5ABC0129FFFD5F97F7AC145393C92349CC8E323</key>
-			<iv>714A27832B326F0A8FA745012DE4D936</iv>
-			<input>EC4CEA7651561396FEFBF76938DF2E84</input>
-			<output>5DE8A5CDBA7A6111A646AA17CA5324D4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE7301D63C482593ABB33CF4A57F1101C2177034C500A0549F7A3823569BC7F7</key>
-			<iv>5DE8A5CDBA7A6111A646AA17CA5324D4</iv>
-			<input>1A17EFC4A4F8B5CAAAD3BE3860D4D113</input>
-			<output>EA197ECF36E63616EBB0D9D7C1BD9A22</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>10528506D50D143EAC40D83731DD55F0280E0EFBF3E6964274CAE1F497265DD5</key>
-			<iv>EA197ECF36E63616EBB0D9D7C1BD9A22</iv>
-			<input>FE2184D0E94531AD07F3E4C394A244F1</input>
-			<output>798349D56EC37993B0E131F8E3F64860</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>438E1B672254504B972927644802ED36518D472E9D25EFD1C42BD00C74D015B5</key>
-			<iv>798349D56EC37993B0E131F8E3F64860</iv>
-			<input>53DC9E61F75944753B69FF5379DFB8C6</input>
-			<output>545E4CD72E74F5A91B29DDBA60BCEB5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7E32F16A4E2E125A95FF9963C6F9796105D30BF9B3511A78DF020DB6146CFEEF</key>
-			<iv>545E4CD72E74F5A91B29DDBA60BCEB5A</iv>
-			<input>3DBCEA0D6C7A421102D6BE078EFB9457</input>
-			<output>084142F2C892DCF8A37A509DF0D669BC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B1BEC1C124A0941D0BA6C75239C17E250D92490B7BC3C6807C785D2BE4BA9753</key>
-			<iv>084142F2C892DCF8A37A509DF0D669BC</iv>
-			<input>CF8C30AB6A8E86479E595E31FF380744</input>
-			<output>0A96C326C9D642F1F84C8772BCF8EB4A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>80D7A5A2AE29B42143046D45B6B6B36C07048A2DB21584718434DA5958427C19</key>
-			<iv>0A96C326C9D642F1F84C8772BCF8EB4A</iv>
-			<input>316964638A89203C48A2AA178F77CD49</input>
-			<output>273916ED09A517CE5C6A294D82E78980</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4D1C892DF27868BBB0FE803145C1D731203D9CC0BBB093BFD85EF314DAA5F599</key>
-			<iv>273916ED09A517CE5C6A294D82E78980</iv>
-			<input>CDCB2C8F5C51DC9AF3FAED74F377645D</input>
-			<output>7183A7C83964ECFB2A1E44FFCFEBB7C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8C9B28041ECD5149A51207ACE38F0D0351BE3B0882D47F44F240B7EB154E4258</key>
-			<iv>7183A7C83964ECFB2A1E44FFCFEBB7C1</iv>
-			<input>C187A129ECB539F215EC879DA64EDA32</input>
-			<output>6015DF395D795DECA0A2F833E3614000</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FF175C7C745BB06E51EEDAA4F2C61E0F31ABE431DFAD22A852E24FD8F62F0258</key>
-			<iv>6015DF395D795DECA0A2F833E3614000</iv>
-			<input>738C74786A96E127F4FCDD081149130C</input>
-			<output>B6B466B56B0E994E672072C273BA067D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0C84C64E1BB3B86E9AF5A8405D950B3A871F8284B4A3BBE635C23D1A85950425</key>
-			<iv>B6B466B56B0E994E672072C273BA067D</iv>
-			<input>F3939A326FE80800CB1B72E4AF531535</input>
-			<output>C8566E37DF2E2958DDD5D2DB49889BA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5FF4C2A08B85338172D2779BF789DA234F49ECB36B8D92BEE817EFC1CC1D9F8D</key>
-			<iv>C8566E37DF2E2958DDD5D2DB49889BA8</iv>
-			<input>537004EE90368BEFE827DFDBAA1CD119</input>
-			<output>C4A8D14DB86637E94AF515764BC7DF44</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BD81DE1813AEC9BAFDDC90E4A563CB338BE13DFED3EBA557A2E2FAB787DA40C9</key>
-			<iv>C4A8D14DB86637E94AF515764BC7DF44</iv>
-			<input>E2751CB8982BFA3B8F0EE77F52EA1110</input>
-			<output>5707495E4CBA3727FBA5D7F4F61AF35C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AE1B09CB7D99BAC0A71B3E83815F10A2DCE674A09F51927059472D4371C0B395</key>
-			<iv>5707495E4CBA3727FBA5D7F4F61AF35C</iv>
-			<input>139AD7D36E37737A5AC7AE67243CDB91</input>
-			<output>C770CD182DFF66E4D6A7BFEFE2820AE1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4F7491F03447293C42DE8393E7AD91741B96B9B8B2AEF4948FE092AC9342B974</key>
-			<iv>C770CD182DFF66E4D6A7BFEFE2820AE1</iv>
-			<input>E16F983B49DE93FCE5C5BD1066F281D6</input>
-			<output>E2044134ACD21D5AD026671BDC0CB2E4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A747EF80608CED4309800CA0B1C73081F992F88C1E7CE9CE5FC6F5B74F4E0B90</key>
-			<iv>E2044134ACD21D5AD026671BDC0CB2E4</iv>
-			<input>E8337E7054CBC47F4B5E8F33566AA1F5</input>
-			<output>303CF7780126AD06B5272A8350639C93</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E5EBF5E471F2CA9F38492F604438B9C0C9AE0FF41F5A44C8EAE1DF341F2D9703</key>
-			<iv>303CF7780126AD06B5272A8350639C93</iv>
-			<input>42AC1A64117E27DC31C923C0F5FF8941</input>
-			<output>DACCD42953603A1321CAD9C236454598</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B5E5C9211A5C43F2267B4A2411FC2CC21362DBDD4C3A7EDBCB2B06F62968D29B</key>
-			<iv>DACCD42953603A1321CAD9C236454598</iv>
-			<input>500E3CC56BAE896D1E32654455C49502</input>
-			<output>F9AB4D1D8255E83B330031EBE2ECE5C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8D78453D63A2DD8D08BF5F250F2581CFEAC996C0CE6F96E0F82B371DCB84375D</key>
-			<iv>F9AB4D1D8255E83B330031EBE2ECE5C6</iv>
-			<input>389D8C1C79FE9E7F2EC415011ED9AD0D</input>
-			<output>0F28E2D4CC948D36E18F80184A594841</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2E921775036404FD9939EE83C9585481E5E1741402FB1BD619A4B70581DD7F1C</key>
-			<iv>0F28E2D4CC948D36E18F80184A594841</iv>
-			<input>A3EA524860C6D9709186B1A6C67DD54E</input>
-			<output>A4756EAB45BCF716A52038C729E420C6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F86FEF42701B1D779BD46BE515680FC41941ABF4747ECC0BC848FC2A8395FDA</key>
-			<iv>A4756EAB45BCF716A52038C729E420C6</iv>
-			<input>B114E9812465B52AE084A83D980ED47D</input>
-			<output>9834425E009006673E777E3552E83D20</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2212046FFD03BA552089FBF7B2F3EF32D9A058E147D7EAA782F3F1F7FAD162FA</key>
-			<iv>9834425E009006673E777E3552E83D20</iv>
-			<input>BD94FA9BDA020B825934BD49E3A56FCE</input>
-			<output>AEA572D530A3694EAFF6DFDE30B80D5A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F73BB21F916D8011751AFDDDCD130A6477052A34777483E92D052E29CA696FA0</key>
-			<iv>AEA572D530A3694EAFF6DFDE30B80D5A</iv>
-			<input>D529B6706C6E3A445593062A7FE0E556</input>
-			<output>86394E06B621147758CAB012852035A6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EE44A367A3CDDFED7DBD980BF731B4E5F13C6432C155979E75CF9E3B4F495A06</key>
-			<iv>86394E06B621147758CAB012852035A6</iv>
-			<input>197F117832A05FFC08A765D63A22BE81</input>
-			<output>3CBC18C1AC02C0A7595199E08F1F552B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1558BABB3DCD830F693E7950F736BCADCD807CF36D5757392C9E07DBC0560F2D</key>
-			<iv>3CBC18C1AC02C0A7595199E08F1F552B</iv>
-			<input>FB1C19DC9E005CE21483E15B00070848</input>
-			<output>5A9CFD8BFE10CF7FBD0F9A3FAF6C117B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D083F58141F5E5AF3D5479739D55780D971C81789347984691919DE46F3A1E56</key>
-			<iv>5A9CFD8BFE10CF7FBD0F9A3FAF6C117B</iv>
-			<input>C5DB4F3A7C3866A0546A00236A63C4A0</input>
-			<output>61A437D4E2F1C3779F1EBE906C5D2C12</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C60824F2DDC67623D270974E9F87BD27F6B8B6AC71B65B310E8F237403673244</key>
-			<iv>61A437D4E2F1C3779F1EBE906C5D2C12</iv>
-			<input>168BD1739C33938CEF24EE3D02D2C52A</input>
-			<output>FC675EE1B12B47410A20CFAC23FD20EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F73A715AD84DB0A6F55AD584922001920ADFE84DC09D1C7004AFECD8209A12AA</key>
-			<iv>FC675EE1B12B47410A20CFAC23FD20EE</iv>
-			<input>313255A8058BC685272A42CA0DA7BCB5</input>
-			<output>82E3FB6189716D94C8E9D30E1ECCABC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6ABBDCE21E2ECECBCAA3473897A2E178883C132C49EC71E4CC463FD63E56B96E</key>
-			<iv>82E3FB6189716D94C8E9D30E1ECCABC4</iv>
-			<input>9D81ADB8C6637E6D3FF992BC0582E0EA</input>
-			<output>BD84DCE4994B505EED71596B454BDF85</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D4F68CDB9B53B08E22DDDFE4FD5FCC035B8CFC8D0A721BA213766BD7B1D66EB</key>
-			<iv>BD84DCE4994B505EED71596B454BDF85</iv>
-			<input>67F4B42FA79BF5C3288E9AC6D8771DB8</input>
-			<output>1B3AA490C6E874BA77CE55D71789616C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3D8E3121698DD7E9D1835EFF5FA02DB22E826B58164F550056F9336A6C940787</key>
-			<iv>1B3AA490C6E874BA77CE55D71789616C</iv>
-			<input>30C159ECD038ECE133AE83011075D172</input>
-			<output>D6EE171B39B5E40535FBF5A7CB4C6953</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1A5B2249CA785F0DB58FF5B07CCCFCDEF86C7C432FFAB1056302C6CDA7D86ED4</key>
-			<iv>D6EE171B39B5E40535FBF5A7CB4C6953</iv>
-			<input>27D51368A3F588E4640CAB4F236CD16C</input>
-			<output>8691BE10D13B4C08246938750EE33643</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48AD5DEF217F83DC5039ECD1191ABE3A7EFDC253FEC1FD0D476BFEB8A93B5897</key>
-			<iv>8691BE10D13B4C08246938750EE33643</iv>
-			<input>52F67FA6EB07DCD1E5B6196165D642E4</input>
-			<output>E40AD0EE818639E37349E1132B138D63</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FEB84B0B264A8A6FB8D4DE065DA68A479AF712BD7F47C4EE34221FAB8228D5F4</key>
-			<iv>E40AD0EE818639E37349E1132B138D63</iv>
-			<input>B61516E4073509B3E8ED32D744BC347D</input>
-			<output>6E40A22767A39C978F279D40B447099D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2FE79FCC3C959901BAAEE8C55B71D01FF4B7B09A18E45879BB0582EB366FDC69</key>
-			<iv>6E40A22767A39C978F279D40B447099D</iv>
-			<input>D15FD4C71ADF136E027A36C306D75A58</input>
-			<output>C2DE8C5200F6FCBF1A4D6178909DF110</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C3EB1424EFD0ACDF3670C4943CB2CF5936693CC81812A4C6A148E393A6F22D79</key>
-			<iv>C2DE8C5200F6FCBF1A4D6178909DF110</iv>
-			<input>EC0C8BE8D34535DE8CDE2C5167C31F46</input>
-			<output>104CBECB1134CAE09B2FE8C5CE2E0901</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF9F70702DA816906F3907575DF4D3032625820309266E263A670B5668DC2478</key>
-			<iv>104CBECB1134CAE09B2FE8C5CE2E0901</iv>
-			<input>1C746454C278BA4F5949C3C361461C5A</input>
-			<output>65287F66F01AC054B1051D700EDDBF2B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6C4CE3006A43EFBE18C5FF305F32C37430DFD65F93CAE728B62162666019B53</key>
-			<iv>65287F66F01AC054B1051D700EDDBF2B</iv>
-			<input>295BBE402B0C286B8EB558A45807FF34</input>
-			<output>4933D44FD414225CB1E6951240D28150</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3963CE7465D89FBE550649326262DB450A3E292A2D288C2E3A84833426D31A03</key>
-			<iv>4933D44FD414225CB1E6951240D28150</iv>
-			<input>CFA70044637CA145B48A16C16791F772</input>
-			<output>3733351F76DE0E07581F84600E38EFDD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42468662273D8CB3EFAB19DBC802888B3D0D1C355BF68229629B075428EBF5DE</key>
-			<iv>3733351F76DE0E07581F84600E38EFDD</iv>
-			<input>7B25481642E5130DBAAD50E9AA6053CE</input>
-			<output>F16F22EB9CCD854591AE2FC28E1D4B59</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2B3E5EA6573FC8ABE4E890FA4F5502DCC623EDEC73B076CF3352896A6F6BE87</key>
-			<iv>F16F22EB9CCD854591AE2FC28E1D4B59</iv>
-			<input>A0F56388424E703951E590D46CF7D8A6</input>
-			<output>1D607C6E9BAD454DD5DE785F2A78F990</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FDB55AF96E09AF677AA4737992E13C9ED10242B05C96422126EB50C98C8E4717</key>
-			<iv>1D607C6E9BAD454DD5DE785F2A78F990</iv>
-			<input>1F06BF130B7A53EDC4EAFA7636146CB3</input>
-			<output>7B16B6A8F88E05F6A9A036A67CB8A2B6</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E546D74518CF4AA64B399EA321C570CAAA14F418A41847D78F4B666FF036E5A1</key>
-			<iv>7B16B6A8F88E05F6A9A036A67CB8A2B6</iv>
-			<input>18F38DBC76C6E5C1319DEDDAB3244C54</input>
-			<output>63AD66FCF9D52195CD0339443F554311</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2F9B91A24BEF0E503DC576E4F8D32C16C9B992E45DCD664242485F2BCF63A6B0</key>
-			<iv>63AD66FCF9D52195CD0339443F554311</iv>
-			<input>CADD46E7532044F676FCE847D9165CDC</input>
-			<output>6293FBB897D8F0C60171BEA3072CA512</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>97B7DF112EFFE9279D5EDF932889D84BAB2A695CCA1596844339E188C84F03A2</key>
-			<iv>6293FBB897D8F0C60171BEA3072CA512</iv>
-			<input>B82C4EB36510E777A09BA977D05AF45D</input>
-			<output>9555D7F244448C80E965CE6AB7EF0F7B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>39F26B429FE4111DAA984F03112B339F3E7FBEAE8E511A04AA5C2FE27FA00CD9</key>
-			<iv>9555D7F244448C80E965CE6AB7EF0F7B</iv>
-			<input>AE45B453B11BF83A37C6909039A2EBD4</input>
-			<output>FA242C9DB2984E9EFA8CD98AE7C29D6F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>64C6D001CB3C8AFC24A72DA11D172727C45B92333CC9549A50D0F668986291B6</key>
-			<iv>FA242C9DB2984E9EFA8CD98AE7C29D6F</iv>
-			<input>5D34BB4354D89BE18E3F62A20C3C14B8</input>
-			<output>2998B59B0441F068D7F3FCE7AEAA6FD9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FE56E2EB2434CA49D46A684DBCE2426CEDC327A83888A4F287230A8F36C8FE6F</key>
-			<iv>2998B59B0441F068D7F3FCE7AEAA6FD9</iv>
-			<input>9A9032EAEF0840B5F0CD45ECA1F5654B</input>
-			<output>A3F77BBA27BA88F33D4330EB2CC0EFBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F9B3CAD0EDFA9C429F3A005C78FE9F84E345C121F322C01BA603A641A0811D5</key>
-			<iv>A3F77BBA27BA88F33D4330EB2CC0EFBA</iv>
-			<input>F1CDDE462AEB638DFD99C8487B6DAB94</input>
-			<output>9C751C64BCB82229ABA5130353455CCB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1725A4C019FB909FB1DE2ACA00E9A33DD2414076A38A0E2811C52967494D4D1E</key>
-			<iv>9C751C64BCB82229ABA5130353455CCB</iv>
-			<input>18BE986D1724395B982D8ACFC7664AC5</input>
-			<output>540DE482B7170E925FA4B429F6BCD458</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E2A619367235AA4611A72FD4FAF68FB3864CA4F4149D00BA4E619D4EBFF19946</key>
-			<iv>540DE482B7170E925FA4B429F6BCD458</iv>
-			<input>F583BDF66BCE3AD9A079051EFA1F2C8E</input>
-			<output>6AADE1E1A12F5C83AF434CAD95B29678</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8629FB2CC8C06A07EC910681499E917FECE14515B5B25C39E122D1E32A430F3E</key>
-			<iv>6AADE1E1A12F5C83AF434CAD95B29678</iv>
-			<input>648FE21ABAF5C041FD362955B3681ECC</input>
-			<output>11308758A1C2075FEAECD260867CA343</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5EDD76C395D2A0D3D547CFB394B439EAFDD1C24D14705B660BCE0383AC3FAC7D</key>
-			<iv>11308758A1C2075FEAECD260867CA343</iv>
-			<input>D8F48DEF5D12CAD439D6C932DD2AA895</input>
-			<output>14C9A904A3909A8FF44D88E22F8626DF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AF3FA8D6034564D7151C3933C7986CFCE9186B49B7E0C1E9FF838B6183B98AA2</key>
-			<iv>14C9A904A3909A8FF44D88E22F8626DF</iv>
-			<input>F1E2DE159697C404C05BF680532C5516</input>
-			<output>A042D7F391A37E5A3EDB3022400EC797</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8ACC720216DBDBDB4C213FE65E575A09495ABCBA2643BFB3C158BB43C3B74D35</key>
-			<iv>A042D7F391A37E5A3EDB3022400EC797</iv>
-			<input>25F3DAD4159EBF0C593D06D599CF36F5</input>
-			<output>439FEF326223A65F7A555C6231178190</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F2882A52603203A71895A5870CCF7EE40AC55388446019ECBB0DE721F2A0CCA5</key>
-			<iv>439FEF326223A65F7A555C6231178190</iv>
-			<input>7844585076E9D87C54B49A61529824ED</input>
-			<output>6FE1286C19AA3BC802F1C6C7B58DB4C4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>57EFB10BFC21E28397A9D5E5A533D35B65247BE45DCA2224B9FC21E6472D7861</key>
-			<iv>6FE1286C19AA3BC802F1C6C7B58DB4C4</iv>
-			<input>A5679B599C13E1248F3C7062A9FCADBF</input>
-			<output>C38D763981392FF038573CA341DD8EA1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>19328A5147BC2E7C5149DA257487D734A6A90DDDDCF30DD481AB1D4506F0F6C0</key>
-			<iv>C38D763981392FF038573CA341DD8EA1</iv>
-			<input>4EDD3B5ABB9DCCFFC6E00FC0D1B4046F</input>
-			<output>5FD553A2848C683B138D50F2741B124D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>ED66DE43FE0F966850EF6754E21B69A0F97C5E7F587F65EF92264DB772EBE48D</key>
-			<iv>5FD553A2848C683B138D50F2741B124D</iv>
-			<input>F4545412B9B3B81401A6BD71969CBE94</input>
-			<output>910CDCBE38068A51185A879FF2B45B9C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E53D9016DE7DF4E2377968864B6F69F8687082C16079EFBE8A7CCA28805FBF11</key>
-			<iv>910CDCBE38068A51185A879FF2B45B9C</iv>
-			<input>085B4E552072628A67960FD2A9740058</input>
-			<output>E0A0E68A14893501D75BC42B8EFC6F96</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C88C4383E2D16541765E5DB85957C59188D0644B74F0DABF5D270E030EA3D087</key>
-			<iv>E0A0E68A14893501D75BC42B8EFC6F96</iv>
-			<input>2DB1D3953CAC91A34127353E1238AC69</input>
-			<output>A66DD21DA627347F962A0AB7DCA887ED</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6F01CC5C22DE71C7C2D5B429AA756A392EBDB656D2D7EEC0CB0D04B4D20B576A</key>
-			<iv>A66DD21DA627347F962A0AB7DCA887ED</iv>
-			<input>A78D8FDFC00F1486B48BE991F322AFA8</input>
-			<output>87551BC7A6B6D9B76239CB8A31FF1993</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DAC405506CD3779FC2400B459B7C6B6EA9E8AD9174613777A934CF3EE3F44EF9</key>
-			<iv>87551BC7A6B6D9B76239CB8A31FF1993</iv>
-			<input>B5C5C90C4E0D06580095BF6C31090157</input>
-			<output>B909B206A041F33EB3AC7ED481DFBA21</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E482333E6FBAA8427A2E30D56069E0B810E11F97D420C4491A98B1EA622BF4D8</key>
-			<iv>B909B206A041F33EB3AC7ED481DFBA21</iv>
-			<input>3E46366E0369DFDDB86E3B90FB158BD6</input>
-			<output>DE5E71F446794D3402400C96FBFEB93F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>176CAD69CD20690B95DA40B95C43AC54CEBF6E639259897D18D8BD7C99D54DE7</key>
-			<iv>DE5E71F446794D3402400C96FBFEB93F</iv>
-			<input>F3EE9E57A29AC149EFF4706C3C2A4CEC</input>
-			<output>175A7C580A99E985A2FD2F185D9BAADB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FA4DD79A64960C8264624CDF215B54A1D9E5123B98C060F8BA259264C44EE73C</key>
-			<iv>175A7C580A99E985A2FD2F185D9BAADB</iv>
-			<input>ED217AF3A9B66589F1B80C667D18F8F5</input>
-			<output>413EB5D166C1D196F0239FF34D184013</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>49855C1008EAF59432518A9F3807A0B398DBA7EAFE01B16E4A060D978956A72F</key>
-			<iv>413EB5D166C1D196F0239FF34D184013</iv>
-			<input>B3C88B8A6C7CF9165633C640195CF412</input>
-			<output>69A3A63C580336296FF826600C754747</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>849D231AE9F90F233F328BE6EE0AC180F17801D6A602874725FE2BF78523E068</key>
-			<iv>69A3A63C580336296FF826600C754747</iv>
-			<input>CD187F0AE113FAB70D630179D60D6133</input>
-			<output>B9AF0CA2B502C2DEB66834BD729AA528</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>40E3F7EA3E7CFBDBF57935DBB124CF7F48D70D741300459993961F4AF7B94540</key>
-			<iv>B9AF0CA2B502C2DEB66834BD729AA528</iv>
-			<input>C47ED4F0D785F4F8CA4BBE3D5F2E0EFF</input>
-			<output>99E16968796AB521FC460A8DF6744FA8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4FDF8D16B85E527490FBE95EA34138D6D136641C6A6AF0B86FD015C701CD0AE8</key>
-			<iv>99E16968796AB521FC460A8DF6744FA8</iv>
-			<input>0F3C7AFC8622A9AF6582DC851265F7A9</input>
-			<output>7B871B0153657949D1FE7259E16791B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6AD7099EA6DC50F5CC836C3EB934CF92AAB17F1D390F89F1BE2E679EE0AA9B5F</key>
-			<iv>7B871B0153657949D1FE7259E16791B7</iv>
-			<input>250884881E8202815C7885601A75F744</input>
-			<output>8D6B80EAC01BF7E204A79DD14BFDB71A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0860DD776AD2014ED90D0837A5A298B627DAFFF7F9147E13BA89FA4FAB572C45</key>
-			<iv>8D6B80EAC01BF7E204A79DD14BFDB71A</iv>
-			<input>62B7D4E9CC0E51BB158E64091C965724</input>
-			<output>DAD6A83408559AD3003C6995DC099303</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9E8757199D96CA08B9C3CEF817E902B8FD0C57C3F141E4C0BAB593DA775EBF46</key>
-			<iv>DAD6A83408559AD3003C6995DC099303</iv>
-			<input>96E78A6EF744CB4660CEC6CFB24B9A0E</input>
-			<output>AA6EF32AFC8AA6ADCDE86D86CC59AFB4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>483AD9696154B929F35016B648F5952B5762A4E90DCB426D775DFE5CBB0710F2</key>
-			<iv>AA6EF32AFC8AA6ADCDE86D86CC59AFB4</iv>
-			<input>D6BD8E70FCC273214A93D84E5F1C9793</input>
-			<output>713F9516A55FBFA4AE8155EC12A3AB5D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>027B7F5F83B26099A4CE8FCC1AB84529265D31FFA894FDC9D9DCABB0A9A4BBAF</key>
-			<iv>713F9516A55FBFA4AE8155EC12A3AB5D</iv>
-			<input>4A41A636E2E6D9B0579E997A524DD002</input>
-			<output>B2E4BEAF6DB84214E379B89697191379</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D7AEFAD28855BB04A9604527F8376CAF94B98F50C52CBFDD3AA513263EBDA8D6</key>
-			<iv>B2E4BEAF6DB84214E379B89697191379</iv>
-			<input>D5D5858D0BE7DB9D0DAECAEBE28F2986</input>
-			<output>9FE3B8941D9F85B1400CC45B7BDE8E9F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B5EBE7CB901F69E61EC6F011E6A46A2E0B5A37C4D8B33A6C7AA9D77D45632649</key>
-			<iv>9FE3B8941D9F85B1400CC45B7BDE8E9F</iv>
-			<input>62451D19184AD2E2B7A6B5361E930681</input>
-			<output>E9ABFC5563B4AD1718EF4A91F7D60913</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>571805B63BC20F5784AF56FDB71CBCD7E2F1CB91BB07977B62469DECB2B52F5A</key>
-			<iv>E9ABFC5563B4AD1718EF4A91F7D60913</iv>
-			<input>E2F3E27DABDD66B19A69A6EC51B8D6F9</input>
-			<output>D825DC1C8C73A84BDFEFD9799D9E3960</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9EED79D9ABB11094FB4475ED2EC042133AD4178D37743F30BDA944952F2B163A</key>
-			<iv>D825DC1C8C73A84BDFEFD9799D9E3960</iv>
-			<input>C9F57C6F90731FC37FEB231099DCFEC4</input>
-			<output>7D0DC4C31259FD0A46D2D2282F1FE22E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EF905E20846E064A3B3281FD2BD59AB647D9D34E252DC23AFB7B96BD0034F414</key>
-			<iv>7D0DC4C31259FD0A46D2D2282F1FE22E</iv>
-			<input>717D27F92FDF16DEC076F4100515D8A5</input>
-			<output>93FAFC16EFF504A9D2B791A272A78135</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8F219C67ACF0F1C745FA0ABBADE96015D4232F58CAD8C69329CC071F72937521</key>
-			<iv>93FAFC16EFF504A9D2B791A272A78135</iv>
-			<input>60B1C247289EF78D7EC88B46863CFAA3</input>
-			<output>EF387517F8C781A79700C8196DCA6F1A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>48C6408FD8FA84D30DD53B83B31C425D3B1B5A4F321F4734BECCCF061F591A3B</key>
-			<iv>EF387517F8C781A79700C8196DCA6F1A</iv>
-			<input>C7E7DCE8740A7514482F31381EF52248</input>
-			<output>A6166002C7239645D55494BB64840B26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1C9EB0648715CA5738A4FD27A63693A09D0D3A4DF53CD1716B985BBD7BDD111D</key>
-			<iv>A6166002C7239645D55494BB64840B26</iv>
-			<input>5458F0EB5FEF4E843571C6A4152AD1FD</input>
-			<output>FB35646B2008AD29AFF508B94179F223</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4AA2E4BAC74E8CD9AEA969550D27877866385E26D5347C58C46D53043AA4E33E</key>
-			<iv>FB35646B2008AD29AFF508B94179F223</iv>
-			<input>563C54DE405B468E960D9472AB1114D8</input>
-			<output>59C1692D4598AD622B6586A06892E11D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B9F5A3BAAA0C2F6EA5E835F6E6E5D50E3FF9370B90ACD13AEF08D5A452360223</key>
-			<iv>59C1692D4598AD622B6586A06892E11D</iv>
-			<input>F35747006D42A3B70B415CA3EBC25276</input>
-			<output>3131E251A6A4AC7226A1809553198AB8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EF46814F8656D3D8ABAF3B08EFEBC3150EC8D55A36087D48C9A95531012F889B</key>
-			<iv>3131E251A6A4AC7226A1809553198AB8</iv>
-			<input>56B322F52C5AFCB60E470EFE090E161B</input>
-			<output>2E30D8D5B7B636307A6D354FBED41A2D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3DFBE0FE20F0421CAABD62E2CDB0E60F20F80D8F81BE4B78B3C4607EBFFB92B6</key>
-			<iv>2E30D8D5B7B636307A6D354FBED41A2D</iv>
-			<input>D2BD61B1A6A691C4011259EA225B251A</input>
-			<output>6D791952F9416FC09B78517A2FFE986F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5197CF05753D155C5B08A5EB51B82F2D4D8114DD78FF24B828BC310490050AD9</key>
-			<iv>6D791952F9416FC09B78517A2FFE986F</iv>
-			<input>6C6C2FFB55CD5740F1B5C7099C08C922</input>
-			<output>37A8E0B9375AD5669A396D980D68D0F3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B3EFE2F914264AAAB7C7FD9C4843619E7A29F4644FA5F1DEB2855C9C9D6DDA2A</key>
-			<iv>37A8E0B9375AD5669A396D980D68D0F3</iv>
-			<input>E2782DFC611B5FF6ECCF587719FB4EB3</input>
-			<output>BC65630DB71EE8DA2194E5DFBC48360E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CAAB7758FF4AFF39A98C2202A26165CFC64C9769F8BB19049311B9432125EC24</key>
-			<iv>BC65630DB71EE8DA2194E5DFBC48360E</iv>
-			<input>794495A1EB6CB5931E4BDF9EEA220451</input>
-			<output>9C47136C1B510BFCEFA7F6659BDA08C2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC38852E17544DB004372C4A3AA3DFDB5A0B8405E3EA12F87CB64F26BAFFE4E6</key>
-			<iv>9C47136C1B510BFCEFA7F6659BDA08C2</iv>
-			<input>0693F276E81EB289ADBB0E4898C2BA14</input>
-			<output>68AC57D13EC53C250FEBFC64B1992B1C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>108FE55553F353DFABD421E15A18C9F532A7D3D4DD2F2EDD735DB3420B66CFFA</key>
-			<iv>68AC57D13EC53C250FEBFC64B1992B1C</iv>
-			<input>DCB7607B44A71E6FAFE30DAB60BB162E</input>
-			<output>9A8C11E031E57B77138A3637784D1D71</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C432EA6E854DE8C191C6F0ED4A2BF1D7A82BC234ECCA55AA60D78575732BD28B</key>
-			<iv>9A8C11E031E57B77138A3637784D1D71</iv>
-			<input>D4BD0F3BD6BEBB1E3A12D10C10333822</input>
-			<output>3BBB1E76A491A5AA145ED931BB886333</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>980941D5FEFD458061B1B443E39818299390DC42485BF00074895C44C8A3B1B8</key>
-			<iv>3BBB1E76A491A5AA145ED931BB886333</iv>
-			<input>5C3BABBB7BB0AD41F07744AEA9B3E9FE</input>
-			<output>F79F1B46F57BDD36B58DDA33619D3920</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B4FF33FB094612B6A3438A285C3AEA41640FC704BD202D36C1048677A93E8898</key>
-			<iv>F79F1B46F57BDD36B58DDA33619D3920</iv>
-			<input>2CF6722EF7BB5736C2F23E6BBFA2F268</input>
-			<output>F1C3ED72D0B6D917DD6F8AE86CFD8CBF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BC81027596771F9C591BE6C61762B1E795CC2A766D96F4211C6B0C9FC5C30427</key>
-			<iv>F1C3ED72D0B6D917DD6F8AE86CFD8CBF</iv>
-			<input>087E318E9F310D2AFA586CEE4B585BA6</input>
-			<output>EAF1AACEEB9F9BE0E880911BFEEAC2AC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D41458000DDED43B83DAA81B1D7FFB597F3D80B886096FC1F4EB9D843B29C68B</key>
-			<iv>EAF1AACEEB9F9BE0E880911BFEEAC2AC</iv>
-			<input>68955A759BA9CBA7DAC14EDD0A1D4ABE</input>
-			<output>7B35179E67E9B40346F7DE6356EDC98F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FACDC2B3BA9E125B2A734DE75F99F48C04089726E1E0DBC2B21C43E76DC40F04</key>
-			<iv>7B35179E67E9B40346F7DE6356EDC98F</iv>
-			<input>2ED99AB3B740C660A9A9E5FC42E60FD5</input>
-			<output>0EDE849D7E56B296B12C1EDF37436A8D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E73022253439EB4464CE0B205BBB0F1F0AD613BB9FB6695403305D385A876589</key>
-			<iv>0EDE849D7E56B296B12C1EDF37436A8D</iv>
-			<input>1DFDE0968EA7F91F4EBD46C70422FB93</input>
-			<output>D02F1EAF3CF6A6B681BAF8ECB921FFC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9F3671205266DC4F7C771EBA74265F36DAF90D14A340CFE2828AA5D4E3A69A4D</key>
-			<iv>D02F1EAF3CF6A6B681BAF8ECB921FFC4</iv>
-			<input>78065305665F370B18B9159A2F9D5029</input>
-			<output>E365BE1A125C6930DFDCBB33E6937EC5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>111A3E012C9D5CB2967E8BD22907D6F7399CB30EB11CA6D25D561EE70535E488</key>
-			<iv>E365BE1A125C6930DFDCBB33E6937EC5</iv>
-			<input>8E2C4F217EFB80FDEA0995685D2189C1</input>
-			<output>C5B24EEC5CDD17AA56838B09EC4AB725</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>15DA3EE4EE9A560B05493FFC971713A5FC2EFDE2EDC1B1780BD595EEE97F53AD</key>
-			<iv>C5B24EEC5CDD17AA56838B09EC4AB725</iv>
-			<input>04C000E5C2070AB99337B42EBE10C552</input>
-			<output>4D8A43CD28BBCB86953FA55A409BF130</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2C8B30484D954192818342F3766C1415B1A4BE2FC57A7AFE9EEA30B4A9E4A29D</key>
-			<iv>4D8A43CD28BBCB86953FA55A409BF130</iv>
-			<input>39510EACA30F179984CA7D0FE17B07B0</input>
-			<output>A524A6329E6DCE041F72459234ECDE78</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0F162BAD5F298EE0B0164CFED6A7AC271480181D5B17B4FA819875269D087CE5</key>
-			<iv>A524A6329E6DCE041F72459234ECDE78</iv>
-			<input>239D1BE512BCCF7231950E0DA0CBB832</input>
-			<output>90BBC5130D1C06182F737FE7F0FCD00D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>62744CA02B6684D05A91F2049D403480843BDD0E560BB2E2AEEB0AC16DF4ACE8</key>
-			<iv>90BBC5130D1C06182F737FE7F0FCD00D</iv>
-			<input>6D62670D744F0A30EA87BEFA4BE798A7</input>
-			<output>35F293EDDEC8D9446A4ACD34602839B5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>21F5373DA5D6BF15BC163383F62EA92FB1C94EE388C36BA6C4A1C7F50DDC955D</key>
-			<iv>35F293EDDEC8D9446A4ACD34602839B5</iv>
-			<input>43817B9D8EB03BC5E687C1876B6E9DAF</input>
-			<output>E45CF478D7C84325143165F58B041A13</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4CF4A508B4DF37A831916353620DC1F45595BA9B5F0B2883D090A20086D88F4E</key>
-			<iv>E45CF478D7C84325143165F58B041A13</iv>
-			<input>6D019235110988BD8D8750D0942368DB</input>
-			<output>964983C30745D7EEA1BD5E287DAC466C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>35C99C004D01E89F94A9B3BC79C492D7C3DC3958584EFF6D712DFC28FB74C922</key>
-			<iv>964983C30745D7EEA1BD5E287DAC466C</iv>
-			<input>793D3908F9DEDF37A538D0EF1BC95323</input>
-			<output>6834813D8403A963AD36C1A18CA605C0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F185723D6A2D2A6F9F4B9194A444AA2AABE8B865DC4D560EDC1B3D8977D2CCE2</key>
-			<iv>6834813D8403A963AD36C1A18CA605C0</iv>
-			<input>C44CEE3D272CC2F00BE22228DD8038FD</input>
-			<output>61F35AA76E1E0EC2D5E4F4F432B68260</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B571B0BC6CFD2BA23611FB9A900A31FACA1BE2C2B25358CC09FFC97D45644E82</key>
-			<iv>61F35AA76E1E0EC2D5E4F4F432B68260</iv>
-			<input>44F4C28106D001CDA95A6A0E344E9BD0</input>
-			<output>DD081A96602E6665B860466B8D14050E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2A5757156C596DE633D0D8908011C3771713F854D27D3EA9B19F8F16C8704B8C</key>
-			<iv>DD081A96602E6665B860466B8D14050E</iv>
-			<input>9F26E7A900A4464405C1230A101BF28D</input>
-			<output>5BF18EA3D7F3ED1D941EA1B995313B98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DA008B517FA48E908A72B8525CC31AEF4CE276F7058ED3B425812EAF5D417014</key>
-			<iv>5BF18EA3D7F3ED1D941EA1B995313B98</iv>
-			<input>F057DC4413FDE376B9A260C2DCD2D998</input>
-			<output>74C361B6A13013E9ABF6841601513539</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E313244DC22AC16C1D59AC494AA728D738211741A4BEC05D8E77AAB95C10452D</key>
-			<iv>74C361B6A13013E9ABF6841601513539</iv>
-			<input>3913AF1CBD8E4FFC972B141B16643238</input>
-			<output>9937614570FD404D5B39BA43D3A20602</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>92A7173E943CBA80AF56203552625E8AA1167604D4438010D54E10FA8FB2432F</key>
-			<iv>9937614570FD404D5B39BA43D3A20602</iv>
-			<input>71B4337356167BECB20F8C7C18C5765D</input>
-			<output>726FCDDF8E6738B51D767828EBDFC71E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>242C75C141A58DC403020E52421BB347D379BBDB5A24B8A5C83868D2646D8431</key>
-			<iv>726FCDDF8E6738B51D767828EBDFC71E</iv>
-			<input>B68B62FFD5993744AC542E671079EDCD</input>
-			<output>78F735344BF10EED47969F1C02ECBF8C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5247008C3EB79AA67E5D2E0B95D0AC3AAB8E8EEF11D5B6488FAEF7CE66813BBD</key>
-			<iv>78F735344BF10EED47969F1C02ECBF8C</iv>
-			<input>766B754D7F1217627D5F2059D7CB1F7D</input>
-			<output>7D6A6CA54B084105DF6A778A4913BB04</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>06E7C1A6C8BC6A3355A86F61B41E70C6D6E4E24A5ADDF74D50C480442F9280B9</key>
-			<iv>7D6A6CA54B084105DF6A778A4913BB04</iv>
-			<input>54A0C12AF60BF0952BF5416A21CEDCFC</input>
-			<output>11F0A303D6C0ED5E18F40248AF1A794B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>D7722746B58D494BE9B97F586CA4BB0AC71441498C1D1A134830820C8088F9F2</key>
-			<iv>11F0A303D6C0ED5E18F40248AF1A794B</iv>
-			<input>D195E6E07D312378BC111039D8BACBCC</input>
-			<output>2A715E8AC7101415E65EBF34CC4CD786</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>98B1E5954DE8000B6FFFE98D918B6237ED651FC34B0D0E06AE6E3D384CC42E74</key>
-			<iv>2A715E8AC7101415E65EBF34CC4CD786</iv>
-			<input>4FC3C2D3F8654940864696D5FD2FD93D</input>
-			<output>965E8AF93D390E424C9F4F1FBF9D98A5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74B910207ACD1D7C801724D53ED6BBC47B3B953A76340044E2F17227F359B6D1</key>
-			<iv>965E8AF93D390E424C9F4F1FBF9D98A5</iv>
-			<input>EC08F5B537251D77EFE8CD58AF5DD9F3</input>
-			<output>294782DD29C65B6C445C5D92F50E6D19</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3E1AD36FDCC33F6B3425B5D52717845E527C17E75FF25B28A6AD2FB50657DBC8</key>
-			<iv>294782DD29C65B6C445C5D92F50E6D19</iv>
-			<input>4AA3C34FA60E2217B432910019C13F9A</input>
-			<output>E22098E7EDBEECC49FA8E31B76E925CA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BE9F93FE153DF61370F6709F8265DCCDB05C8F00B24CB7EC3905CCAE70BEFE02</key>
-			<iv>E22098E7EDBEECC49FA8E31B76E925CA</iv>
-			<input>80854091C9FEC97844D3C54AA5725893</input>
-			<output>24E80C1F59A4EA36044358E0C0D4F29D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A790F593CFA1643BD2EB3A1AAB8176A294B4831FEBE85DDA3D46944EB06A0C9F</key>
-			<iv>24E80C1F59A4EA36044358E0C0D4F29D</iv>
-			<input>190F666DDA9C9228A21D4A8529E4AA6F</input>
-			<output>63CF21803941B521532FF36F9FBFC7BD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0CF6F000352B4B583E4AEE707D111DC9F77BA29FD2A9E8FB6E6967212FD5CB22</key>
-			<iv>63CF21803941B521532FF36F9FBFC7BD</iv>
-			<input>AB660593FA8A2F63ECA1D46AD6906B6B</input>
-			<output>250941C1D45C82B0D9C381293CDD833A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1F875BCF1967857990EC97864B1EA9F8D272E35E06F56A4BB7AAE60813084818</key>
-			<iv>250941C1D45C82B0D9C381293CDD833A</iv>
-			<input>1371ABCF2C4CCE21AEA679F6360FB431</input>
-			<output>8303B962DAFC4A225C0FD6EA60D29CF4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>42FE25BF51418FE7A7C7A1828219E1DB51715A3CDC092069EBA530E273DAD4EC</key>
-			<iv>8303B962DAFC4A225C0FD6EA60D29CF4</iv>
-			<input>5D797E7048260A9E372B3604C9074823</input>
-			<output>29E2DB359FAB42C0A83A4059A059CB51</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6C821A4893FE0EAC88FC1F98BD44AD0A7893810943A262A9439F70BBD3831FBD</key>
-			<iv>29E2DB359FAB42C0A83A4059A059CB51</iv>
-			<input>2E7C3FF7C2BF814B2F3BBE1A3F5D4CD1</input>
-			<output>02BDB7EC18279FA9B7788D95FEB4000E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>411670D389D0A04859FDC26DE5AAD1297A2E36E55B85FD00F4E7FD2E2D371FB3</key>
-			<iv>02BDB7EC18279FA9B7788D95FEB4000E</iv>
-			<input>2D946A9B1A2EAEE4D101DDF558EE7C23</input>
-			<output>3960A92A34967F13B754F2265A6F68C1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>851BCD18F6043DE625BBEA33E1E860E3434E9FCF6F13821343B30F0877587772</key>
-			<iv>3960A92A34967F13B754F2265A6F68C1</iv>
-			<input>C40DBDCB7FD49DAE7C46285E0442B1CA</input>
-			<output>EF396AB8613AC6083932734D38869458</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1944F363F3143A380F26BD4831A6BD9EAC77F5770E29441B7A817C454FDEE32A</key>
-			<iv>EF396AB8613AC6083932734D38869458</iv>
-			<input>9C5F3E7B051007DE2A9D577BD04EDD7D</input>
-			<output>CB73B8D257CC1A8235E48DA0E6AECC4E</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C2F3C203F591C78914E31BA1E083AB9867044DA559E55E994F65F1E5A9702F64</key>
-			<iv>CB73B8D257CC1A8235E48DA0E6AECC4E</iv>
-			<input>DBB731600685FDB11BC5A6E9D1251606</input>
-			<output>3B0B12757B5D1B6E0130FCC306E9DBAA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0DCB66B972631AFBB1DA22F1418EE1C45C0F5FD022B845F74E550D26AF99F4CE</key>
-			<iv>3B0B12757B5D1B6E0130FCC306E9DBAA</iv>
-			<input>CF38A4BA87F2DD72A5393950A10D4A5C</input>
-			<output>CCEF4079CE8FAF0E6B8CD4C8751059E1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8FF976D3C735506D86A3540664F1C40590E01FA9EC37EAF925D9D9EEDA89AD2F</key>
-			<iv>CCEF4079CE8FAF0E6B8CD4C8751059E1</iv>
-			<input>8232106AB5564A96377976F7257F25C1</input>
-			<output>D835D2FA5583D9B2C16424960163DF7F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3499925B26E4F846CAA230EC069F127F48D5CD53B9B4334BE4BDFD78DBEA7250</key>
-			<iv>D835D2FA5583D9B2C16424960163DF7F</iv>
-			<input>BB60E488E1D1A82B4C0164EA626ED67A</input>
-			<output>4634485DB5D9C40FA2F6EF36E477F0B7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A133EEC3DD747FE38A3370F8927A3C70EE1850E0C6DF744464B124E3F9D82E7</key>
-			<iv>4634485DB5D9C40FA2F6EF36E477F0B7</iv>
-			<input>4E8AACB71B33BFB8F20107E38FB8B1B8</input>
-			<output>AE30CD2A5D84CEF10B9C15EE1FE20CEB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F573665345317BAB5F14881777A0D789A0D1482451E939B54DD707A0207F8E0C</key>
-			<iv>AE30CD2A5D84CEF10B9C15EE1FE20CEB</iv>
-			<input>8F6058BF78E63C5567B7BF18FE87744E</input>
-			<output>B3926CDE5BFB1363DCCA28CDA2DC4CD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FEFB661FA786BF2DA1B70FD7D06B86E8134324FA0A122AD6911D2F6D82A3C2D4</key>
-			<iv>B3926CDE5BFB1363DCCA28CDA2DC4CD8</iv>
-			<input>0B88004CE2B7C486FEA387C0A7CB5161</input>
-			<output>633388FA9EAE0DB2036F63CB2E21C266</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BFC495DFBA60078708D992724C9201577070AC0094BC276492724CA6AC8200B2</key>
-			<iv>633388FA9EAE0DB2036F63CB2E21C266</iv>
-			<input>413FF3C01DE6B8AAA96E9DA59CF987BF</input>
-			<output>54ACB838D247D26A1544B2E42F18CF3F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EB0113E4FFE1201B59EAE94706B2571F24DC143846FBF50E8736FE42839ACF8D</key>
-			<iv>54ACB838D247D26A1544B2E42F18CF3F</iv>
-			<input>54C5863B4581279C51337B354A205648</input>
-			<output>B9210B8A8639CA5C94A1CF1169F89DDB</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E1D5F7873FD6440227C5529AEB4C7999DFD1FB2C0C23F5213973153EA625256</key>
-			<iv>B9210B8A8639CA5C94A1CF1169F89DDB</iv>
-			<input>E51C4C9C8C1C445B7B96BC6EA8069086</input>
-			<output>8990488561B43B03CF9FE631E2E7D5E7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8B2759471137DBF37906B394EFEF96D2146D5737A1760451DC08D762088587B1</key>
-			<iv>8990488561B43B03CF9FE631E2E7D5E7</iv>
-			<input>853A063F62CABFB35B7AE6BD415B514B</input>
-			<output>9DCE77D8CCC0F041FA717C28474E9A30</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0D4B29E8D6F39CA01BC01CE73E2834C689A320EF6DB6F4102679AB4A4FCB1D81</key>
-			<iv>9DCE77D8CCC0F041FA717C28474E9A30</iv>
-			<input>866C70AFC7C4475362C6AF73D1C7A214</input>
-			<output>E1DA174FE5848D21735E55B91CA48A9B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>55228F6FF93B7DE9304CD75991C133A5687937A0883279315527FEF3536F971A</key>
-			<iv>E1DA174FE5848D21735E55B91CA48A9B</iv>
-			<input>5869A6872FC8E1492B8CCBBEAFE90763</input>
-			<output>C578F53AD69AD508711E674F8DD2A843</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>35CA943437046860F72A1F8554127676AD01C29A5EA8AC39243999BCDEBD3F59</key>
-			<iv>C578F53AD69AD508711E674F8DD2A843</iv>
-			<input>60E81B5BCE3F1589C766C8DCC5D345D3</input>
-			<output>177A50196260D3F0A3F97423899EBEE2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B8C3B8414C112FC2E2E848733D5CF69CBA7B92833CC87FC987C0ED9F572381BB</key>
-			<iv>177A50196260D3F0A3F97423899EBEE2</iv>
-			<input>8D092C757B1547A215C257F6694E80EA</input>
-			<output>6B03A799C51C7D0A9D3C9929617E69B1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E82B651AE5740119104FE3284CE780E4D178351AF9D402C31AFC74B6365DE80A</key>
-			<iv>6B03A799C51C7D0A9D3C9929617E69B1</iv>
-			<input>50E8DD5BA9652EDBF2A7AB5B71BB7678</input>
-			<output>8D4C7C1157422E7B6DDA47C5C2C246F4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3C0B660F2B78F768812AC671D3107AD85C34490BAE962CB877263373F49FAEFE</key>
-			<iv>8D4C7C1157422E7B6DDA47C5C2C246F4</iv>
-			<input>D4200315CE0CF671916525599FF7FA3C</input>
-			<output>787B3C51094569BC1F139102964DF5AF</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A197B59C700A4786E840733047964FD4244F755AA7D345046835A27162D25B51</key>
-			<iv>787B3C51094569BC1F139102964DF5AF</iv>
-			<input>9D9CD3935B72B0EE696AB5419486350C</input>
-			<output>AE02945B4E63AC35B6AC2DFA2DF3CEBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00E75C4B909D44A94FA20EDA6C3628418A4DE101E9B0E931DE998F8B4F2195EB</key>
-			<iv>AE02945B4E63AC35B6AC2DFA2DF3CEBA</iv>
-			<input>A170E9D7E097032FA7E27DEA2BA06795</input>
-			<output>AC4AACD3597FE73F519F7CEDAFE6E000</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4626BE31853C15DE412EF2A42328D47326074DD2B0CF0E0E8F06F366E0C775EB</key>
-			<iv>AC4AACD3597FE73F519F7CEDAFE6E000</iv>
-			<input>46C1E27A15A151770E8CFC7E4F1EFC32</input>
-			<output>5EB8B35708A135E041603BA323663F34</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1733A037E76437411F49821D948A098978BFFE85B86E3BEECE66C8C5C3A14ADF</key>
-			<iv>5EB8B35708A135E041603BA323663F34</iv>
-			<input>51151E066258229F5E6770B9B7A2DDFA</input>
-			<output>6674FB922570377334A4F22D13E95BD8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>8474275A2E4D5E5448EB8D34B65EE7081ECB05179D1E0C9DFAC23AE8D0481107</key>
-			<iv>6674FB922570377334A4F22D13E95BD8</iv>
-			<input>9347876DC929691557A20F2922D4EE81</input>
-			<output>F0E3F09C0350C0172E449A01F24AB828</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>765AA3F4014B8475CF832DE6128F7F2DEE28F58B9E4ECC8AD486A0E92202A92F</key>
-			<iv>F0E3F09C0350C0172E449A01F24AB828</iv>
-			<input>F22E84AE2F06DA218768A0D2A4D19825</input>
-			<output>CC156010299679ADEE9CC000FD5C90E5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DD3D3AFC83B7EEBC58CE35B35719B587223D959BB7D8B5273A1A60E9DF5E39CA</key>
-			<iv>CC156010299679ADEE9CC000FD5C90E5</iv>
-			<input>AB67990882FC6AC9974D18554596CAAA</input>
-			<output>80354EDEA10038E903C4896313236CE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4764BB8C98BCF3FD4A21A370AE5432BBA208DB4516D88DCE39DEE98ACC7D552F</key>
-			<iv>80354EDEA10038E903C4896313236CE5</iv>
-			<input>9A5981701B0B1D4112EF96C3F94D873C</input>
-			<output>15140DC26F383EB99425FB51D445CC98</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DF729AB7D09BC85489F8AD373EBDDA70B71CD68779E0B377ADFB12DB183899B7</key>
-			<iv>15140DC26F383EB99425FB51D445CC98</iv>
-			<input>9816213B48273BA9C3D90E4790E9E8CB</input>
-			<output>163465787010C97D3C2023D803F62556</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A945B0C5997C596B5155A6BCA5055127A128B3FF09F07A0A91DB31031BCEBCE1</key>
-			<iv>163465787010C97D3C2023D803F62556</iv>
-			<input>76372A7249E7913FD8AD0B8B9BB88B57</input>
-			<output>23E861D557EE72534C8B729240E3A54F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E1C166F2B947D14D0C7E6ABD280A31E82C0D22A5E1E0859DD5043915B2D19AE</key>
-			<iv>23E861D557EE72534C8B729240E3A54F</iv>
-			<input>A759A6AAB2E8247F819240177785F239</input>
-			<output>652CA6A199D7DBC37936FCD70636989F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>208A37149072011877E3E85B3DC7F4A7E7EC748BC7C9D39AA466BF465D1B8131</key>
-			<iv>652CA6A199D7DBC37936FCD70636989F</iv>
-			<input>2E96217BBBE67C0CA7240EF0EF4757B9</input>
-			<output>7C29D6F4788553E3C50A48027478A98F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8FFCB194C077EEED66632AEBE01652E9BC5A27FBF4C8079616CF744296328BE</key>
-			<iv>7C29D6F4788553E3C50A48027478A98F</iv>
-			<input>8875FC0DDC757FF6A185DAF583C69189</input>
-			<output>7B886FC819D625B224F2516901788E88</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3716969BDDBF04FF4010D4667CCA994AE04DCDB7A69AA5CB459EA62D281BA636</key>
-			<iv>7B886FC819D625B224F2516901788E88</iv>
-			<input>9FE95D8291B87A119676E6C8C2CBFC64</input>
-			<output>3EAB925C025F379153CE2C7191026976</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>991D0D313717C7AC62537C8572DE094BDEE65FEBA4C5925A16508A5CB919CF40</key>
-			<iv>3EAB925C025F379153CE2C7191026976</iv>
-			<input>AE0B9BAAEAA8C3532243A8E30E149001</input>
-			<output>B9904B8BDF431FDDB9166086C9D3E24C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>315772BB82A3DD286FE5891934B19434677614607B868D87AF46EADA70CA2D0C</key>
-			<iv>B9904B8BDF431FDDB9166086C9D3E24C</iv>
-			<input>A84A7F8AB5B41A840DB6F59C466F9D7F</input>
-			<output>3C7029336ECCA5D352DB9D0C060D3830</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C99E4E6A8C1D42A9E431FF8B2A8ACA615B063D53154A2854FD9D77D676C7153C</key>
-			<iv>3C7029336ECCA5D352DB9D0C060D3830</iv>
-			<input>F8C93CD10EBE9F818BD476921E3B5E55</input>
-			<output>4AF4290AA79EB96435D2D3FC745033D7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>55317B8B407B7D089ED2CEF7BE80E99111F21459B2D49130C84FA42A029726EB</key>
-			<iv>4AF4290AA79EB96435D2D3FC745033D7</iv>
-			<input>9CAF35E1CC663FA17AE3317C940A23F0</input>
-			<output>BFCA0B6B31AAD81F1BDC743B48B7CCA4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>6EAE6D8B06AA25493BA3608357D71404AE381F32837E492FD393D0114A20EA4F</key>
-			<iv>BFCA0B6B31AAD81F1BDC743B48B7CCA4</iv>
-			<input>3B9F160046D15841A571AE74E957FD95</input>
-			<output>89C1D565569A12A68B2E808AB5CFA2E3</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3245D7C1F5571A1329E1B2303F8A689D27F9CA57D5E45B8958BD509BFFEF48AC</key>
-			<iv>89C1D565569A12A68B2E808AB5CFA2E3</iv>
-			<input>5CEBBA4AF3FD3F5A1242D2B3685D7C99</input>
-			<output>EC8EEAED7894646B1D1A5E058ED41178</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1DE05811428569D3F89CF1C01AF434AFCB7720BAAD703FE245A70E9E713B59D4</key>
-			<iv>EC8EEAED7894646B1D1A5E058ED41178</iv>
-			<input>2FA58FD0B7D273C0D17D43F0257E5C32</input>
-			<output>92802F392579C66AD72D2E85776720E8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0A8FB6D844AB0B73C05A121085E07FFE59F70F838809F988928A201B065C793C</key>
-			<iv>92802F392579C66AD72D2E85776720E8</iv>
-			<input>176FEEC9062E62A038C6E3D09F144B51</input>
-			<output>461DBCF9894F5319FE772F6529FBCEC0</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4E6818B3BBEF69FA7ABEC1EBE2E54CDC1FEAB37A0146AA916CFD0F7E2FA7B7FC</key>
-			<iv>461DBCF9894F5319FE772F6529FBCEC0</iv>
-			<input>44E7AE6BFF446289BAE4D3FB67053322</input>
-			<output>794CA9DC41BAE95D415A6D1119582763</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A1EABB13924B188441724141F1C88A966A61AA640FC43CC2DA7626F36FF909F</key>
-			<iv>794CA9DC41BAE95D415A6D1119582763</iv>
-			<input>0476B30282CBD8723EA9E5FFFDF9C475</input>
-			<output>B761EAF5CC07651BD33D8BF93913EAE8</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>FFE4E48F8D96710A1BE7DBE36F4905CDD1C7F0538CFB26D7FE9AE9960FEC7A77</key>
-			<iv>B761EAF5CC07651BD33D8BF93913EAE8</iv>
-			<input>B5FA4F3EB4B2C0825FF0FFF770558D64</input>
-			<output>0B5146EB77161E60D6D1E2FAEAE80694</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7A4F383AF4BB2DC6588E75EE82C7D9CFDA96B6B8FBED38B7284B0B6CE5047CE3</key>
-			<iv>0B5146EB77161E60D6D1E2FAEAE80694</iv>
-			<input>85ABDCB5792D5CCC4369AE0DED8EDC02</input>
-			<output>07635064CE85F6AE17961AF1F2B44469</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>EFFE7F8BBBEC8BEC83FA199102763BEDDDF5E6DC3568CE193FDD119D17B0388A</key>
-			<iv>07635064CE85F6AE17961AF1F2B44469</iv>
-			<input>95B147B14F57A62ADB746C7F80B1E222</input>
-			<output>3A9CD5F30C421FF333BA2C2F0A7AD07D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>1DF51B7A35E11E2AF79E8C59094A1ECFE769332F392AD1EA0C673DB21DCAE8F7</key>
-			<iv>3A9CD5F30C421FF333BA2C2F0A7AD07D</iv>
-			<input>F20B64F18E0D95C6746495C80B3C2522</input>
-			<output>F60032C249CF561CB02421DA189A57D1</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>CC09FFE72A10AE27FE14934A6628AB83116901ED70E587F6BC431C680550BF26</key>
-			<iv>F60032C249CF561CB02421DA189A57D1</iv>
-			<input>D1FCE49D1FF1B00D098A1F136F62B54C</input>
-			<output>EAD5844B160C08F9CDAA15FD5936EF26</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>09C84CA0DA0B9FD79D3090E690BAB419FBBC85A666E98F0F71E909955C665000</key>
-			<iv>EAD5844B160C08F9CDAA15FD5936EF26</iv>
-			<input>C5C1B347F01B31F0632403ACF6921F9A</input>
-			<output>26AD72F011133FD4CED8F38A1ABE7D73</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>74FA53C172A2003EC5933F486FCC7BBFDD11F75677FAB0DBBF31FA1F46D82D73</key>
-			<iv>26AD72F011133FD4CED8F38A1ABE7D73</iv>
-			<input>7D321F61A8A99FE958A3AFAEFF76CFA6</input>
-			<output>F115FBC0D3F386527176D1DF6AD4B38A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>0E5BA209B7BC28D184E73BD37F35C1312C040C96A4093689CE472BC02C0C9EF9</key>
-			<iv>F115FBC0D3F386527176D1DF6AD4B38A</iv>
-			<input>7AA1F1C8C51E28EF4174049B10F9BA8E</input>
-			<output>27ED0BA04734E70317BF58E11B0DD051</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9404D9139B6597D1F7C7519713C6CBC80BE90736E33DD18AD9F8732137014EA8</key>
-			<iv>27ED0BA04734E70317BF58E11B0DD051</iv>
-			<input>9A5F7B1A2CD9BF0073206A446CF30AF9</input>
-			<output>24080A577426F8F270A13F3A5F3DB546</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E72476BC679C8DCBAB92BBA5D48BF6D32FE10D61971B2978A9594C1B683CFBEE</key>
-			<iv>24080A577426F8F270A13F3A5F3DB546</iv>
-			<input>7320AFAFFCF91A1A5C55EA32C74D3D1B</input>
-			<output>A754CC0464E35B387435790505F2DCE5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4548DE389CCAD4A65B02A9B5FE90930188B5C165F3F87240DD6C351E6DCE270B</key>
-			<iv>A754CC0464E35B387435790505F2DCE5</iv>
-			<input>A26CA884FB56596DF09012102A1B65D2</input>
-			<output>D9AED2566884E97D081EADB45780AA7D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2E54365B503140D0EC9074DFA05F4B2C511B13339B7C9B3DD57298AA3A4E8D76</key>
-			<iv>D9AED2566884E97D081EADB45780AA7D</iv>
-			<input>6B1CE863CCFB9476B792DD6A5ECFD82D</input>
-			<output>9FA221E082CAD838AB4B210A8794BD8F</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>7C9FB092B8A96465076E14C575E9A8F0CEB932D319B643057E39B9A0BDDA30F9</key>
-			<iv>9FA221E082CAD838AB4B210A8794BD8F</iv>
-			<input>52CB86C9E89824B5EBFE601AD5B6E3DC</input>
-			<output>AAEA6DE5734CF14BED503512EB071C2A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>90AB85A18F2B0255D4F43AF5E98DAA7E64535F366AFAB24E93698CB256DD2CD3</key>
-			<iv>AAEA6DE5734CF14BED503512EB071C2A</iv>
-			<input>EC34353337826630D39A2E309C64028E</input>
-			<output>1359A157B415EB63E038AB7354E6B0F2</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9135D4D54A1CE6BBF4F23AFDE23F537C770AFE61DEEF592D735127C1023B9C21</key>
-			<iv>1359A157B415EB63E038AB7354E6B0F2</iv>
-			<input>019E5174C537E4EE200600080BB2F902</input>
-			<output>0764EBDBFAE8FD447244408A5153CC3B</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4B5F1BC60EF5DCE83474A3970EB2ABA8706E15BA2407A4690115674B5368501A</key>
-			<iv>0764EBDBFAE8FD447244408A5153CC3B</iv>
-			<input>DA6ACF1344E93A53C086996AEC8DF8D4</input>
-			<output>A31F69E0055E8D4162AC06C088925FBA</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9DD8E8D75BE2E4D1BC70B30DAE0B375FD3717C5A2159292863B9618BDBFA0FA0</key>
-			<iv>A31F69E0055E8D4162AC06C088925FBA</iv>
-			<input>D687F311551738398804109AA0B99CF7</input>
-			<output>EB84AC035534CDF1698E660F529E0EC7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>4A2B2FC8446B4C2575CFE584A490680238F5D059746DE4D90A37078489640167</key>
-			<iv>EB84AC035534CDF1698E660F529E0EC7</iv>
-			<input>D7F3C71F1F89A8F4C9BF56890A9B5F5D</input>
-			<output>9236D37A28C2CF29237127173B93C5D5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>9BE42576823EEAADB34657A5CBB44B21AAC303235CAF2BF029462093B2F7C4B2</key>
-			<iv>9236D37A28C2CF29237127173B93C5D5</iv>
-			<input>D1CF0ABEC655A688C689B2216F242323</input>
-			<output>86C122CFA62B1356FEE33FECF598ACC9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>5DFC1838B052E95A948D0AC31736CBE62C0221ECFA8438A6D7A51F7F476F687B</key>
-			<iv>86C122CFA62B1356FEE33FECF598ACC9</iv>
-			<input>C6183D4E326C03F727CB5D66DC8280C7</input>
-			<output>8A9926125B1CA354B1D7A9FED0850FEE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>2B12FA914EE7674EADED81C47A67A1B4A69B07FEA1989BF26672B68197EA6795</key>
-			<iv>8A9926125B1CA354B1D7A9FED0850FEE</iv>
-			<input>76EEE2A9FEB58E1439608B076D516A52</input>
-			<output>AD99A2A427BFF7A17C375DB38764EBFC</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>10607DE088CB92382089EF99B7C054280B02A55A86276C531A45EB32108E8C69</key>
-			<iv>AD99A2A427BFF7A17C375DB38764EBFC</iv>
-			<input>3B728771C62CF5768D646E5DCDA7F59C</input>
-			<output>0E141FD7D6928E7B7885638B6334947C</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>605ECCB38F9FFD9DAB2DB523313FFADB0516BA8D50B5E22862C088B973BA1815</key>
-			<iv>0E141FD7D6928E7B7885638B6334947C</iv>
-			<input>703EB15307546FA58BA45ABA86FFAEF3</input>
-			<output>996CB8723B08B99A4959072DC8A73292</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>C6371257BDA461F3A4D2F1ED5DD4B0B69C7A02FF6BBD5BB22B998F94BB1D2A87</key>
-			<iv>996CB8723B08B99A4959072DC8A73292</iv>
-			<input>A669DEE4323B9C6E0FFF44CE6CEB4A6D</input>
-			<output>72966BAA5E4D7FA9129088F2C072E301</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>DDD8877C25005F9B8336823CBF4D4B1DEEEC695535F0241B390907667B6FC986</key>
-			<iv>72966BAA5E4D7FA9129088F2C072E301</iv>
-			<input>1BEF952B98A43E6827E473D1E299FBAB</input>
-			<output>32C321C999A2D68EA4517D332C785FC4</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00882DCBC6CFDED1A2ED7D9892F494A5DC2F489CAC52F2959D587A5557179642</key>
-			<iv>32C321C999A2D68EA4517D332C785FC4</iv>
-			<input>DD50AAB7E3CF814A21DBFFA42DB9DFB8</input>
-			<output>391D95DD63982E0A9AF3980A234DB5B9</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>234B9097BD6519EFE106103720AC937DE532DD41CFCADC9F07ABE25F745A23FB</key>
-			<iv>391D95DD63982E0A9AF3980A234DB5B9</iv>
-			<input>23C3BD5C7BAAC73E43EB6DAFB25807D8</input>
-			<output>D3A279EE1BABABA71DB01DC35EBA879D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>AFF7D52D959CC7E41F1F3FF3CA2425053690A4AFD46177381A1BFF9C2AE0A466</key>
-			<iv>D3A279EE1BABABA71DB01DC35EBA879D</iv>
-			<input>8CBC45BA28F9DE0BFE192FC4EA88B678</input>
-			<output>B4696871EE3A9D035BC32308DA5A5DA7</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>B557440CEEB6E4EF54F6CD1B222246AC82F9CCDE3A5BEA3B41D8DC94F0BAF9C1</key>
-			<iv>B4696871EE3A9D035BC32308DA5A5DA7</iv>
-			<input>1AA091217B2A230B4BE9F2E8E80663A9</input>
-			<output>C5047AFD7884E0124928229AA6E72F67</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>BF64C071FAAD2C48CB269C03563FA06147FDB62342DF0A2908F0FE0E565DD6A6</key>
-			<iv>C5047AFD7884E0124928229AA6E72F67</iv>
-			<input>0A33847D141BC8A79FD05118741DE6CD</input>
-			<output>240D684E6BAD3FD4E41D58DB871E93CD</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>F6945509258A1584398F5438DFD679DB63F0DE6D297235FDECEDA6D5D143456B</key>
-			<iv>240D684E6BAD3FD4E41D58DB871E93CD</iv>
-			<input>49F09578DF2739CCF2A9C83B89E9D9BA</input>
-			<output>F66917F0C3C67774F9263062F918DDD5</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>A8E48107D59287ABBA374E7CE5BC28E89599C99DEAB4428915CB96B7285B98BE</key>
-			<iv>F66917F0C3C67774F9263062F918DDD5</iv>
-			<input>5E70D40EF018922F83B81A443A6A5133</input>
-			<output>85C42456F11D0191BC4B4DD4EA0406EE</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>E4F367569F4F9114AFE937A0190C9738105DEDCB1BA94318A980DB63C25F9E50</key>
-			<iv>85C42456F11D0191BC4B4DD4EA0406EE</iv>
-			<input>4C17E6514ADD16BF15DE79DCFCB0BFD0</input>
-			<output>D48B6C87A25C71113947569411C2186A</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>987ED2D586DA9AB08C584BBEA0478953C4D6814CB9F5320990C78DF7D39D863A</key>
-			<iv>D48B6C87A25C71113947569411C2186A</iv>
-			<input>7C8DB58319950BA423B17C1EB94B1E6B</input>
-			<output>AB6957C2F3D360593E9096F3A392A701</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>3DF2BF13B7FF97CA13567A890E11C9796FBFD68E4A265250AE571B04700F213B</key>
-			<iv>AB6957C2F3D360593E9096F3A392A701</iv>
-			<input>A58C6DC631250D7A9F0E3137AE56402A</input>
-			<output>C0FEFFF07506A0B4CD7B8B0CF25D3664</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
\ No newline at end of file
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB128.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6400 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo ENC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>C34C052CC0DA8D73451AFE5F03BE297F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C34C052CC0DA8D73451AFE5F03BE297F</key>
-			<input>C34C052CC0DA8D73451AFE5F03BE297F</input>
-			<output>0AC15A9AFBB24D54AD99E987208272E2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C98D5FB63B68C027E88317D8233C5B9D</key>
-			<input>0AC15A9AFBB24D54AD99E987208272E2</input>
-			<output>A3D43BFFA65D0E80092F67A314857870<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6A5964499D35CEA7E1AC707B37B923ED</key>
-			<input>A3D43BFFA65D0E80092F67A314857870</input>
-			<output>355F697E8B868B65B25A04E18D782AFA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5F060D3716B345C253F6749ABAC10917</key>
-			<input>355F697E8B868B65B25A04E18D782AFA</input>
-			<output>ACC863637868E3E068D2FD6E3508454A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F3CE6E546EDBA6223B2489F48FC94C5D</key>
-			<input>ACC863637868E3E068D2FD6E3508454A</input>
-			<output>665F9F12A824F3D52A1C71D6210D5470<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9591F146C6FF55F71138F822AEC4182D</key>
-			<input>665F9F12A824F3D52A1C71D6210D5470</input>
-			<output>9B27361DBC8E5618E8E98036F5AD40B0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0EB6C75B7A7103EFF9D178145B69589D</key>
-			<input>9B27361DBC8E5618E8E98036F5AD40B0</input>
-			<output>21D9BD7EBA0163A293F2D56C316CBD36<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F6F7A25C070604D6A23AD786A05E5AB</key>
-			<input>21D9BD7EBA0163A293F2D56C316CBD36</input>
-			<output>3E8037A9988E28FF81F2A7154ACD91BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>11EF4D8C58FE48B2EBD10A6D20C87415</key>
-			<input>3E8037A9988E28FF81F2A7154ACD91BE</input>
-			<output>014EE14F1AA8C0D4A47A72F197F4DCB0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>10A1ACC3425688664FAB789CB73CA8A5</key>
-			<input>014EE14F1AA8C0D4A47A72F197F4DCB0</input>
-			<output>0B542083DBC03A96AA00C1A5AE58C9F1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1BF58C409996B2F0E5ABB93919646154</key>
-			<input>0B542083DBC03A96AA00C1A5AE58C9F1</input>
-			<output>7340B59E1E3BB9211CE167F2DEBDB090<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>68B539DE87AD0BD1F94ADECBC7D9D1C4</key>
-			<input>7340B59E1E3BB9211CE167F2DEBDB090</input>
-			<output>67E05F75135BA834CBCDCFF068541BBE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F5566AB94F6A3E53287113BAF8DCA7A</key>
-			<input>67E05F75135BA834CBCDCFF068541BBE</input>
-			<output>8BD5553105C3507B0A07FDB351B25B4F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8480339A9135F39E3880EC88FE3F9135</key>
-			<input>8BD5553105C3507B0A07FDB351B25B4F</input>
-			<output>649F061F95C0A79BD3066EFFE5B27CAB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E01F358504F55405EB8682771B8DED9E</key>
-			<input>649F061F95C0A79BD3066EFFE5B27CAB</input>
-			<output>697F4EB0603340E90FE91C27B6D9CEAA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>89607B3564C614ECE46F9E50AD542334</key>
-			<input>697F4EB0603340E90FE91C27B6D9CEAA</input>
-			<output>A8CBBA624FA28A7F8637324E1E20CB9C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>21ABC1572B649E936258AC1EB374E8A8</key>
-			<input>A8CBBA624FA28A7F8637324E1E20CB9C</input>
-			<output>73B852132DE715872A40EB25B1133C00<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5213934406838B144818473B0267D4A8</key>
-			<input>73B852132DE715872A40EB25B1133C00</input>
-			<output>1328A1C2F386BB3E4D4BE0942B8249A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>413B3286F505302A0553A7AF29E59D0A</key>
-			<input>1328A1C2F386BB3E4D4BE0942B8249A2</input>
-			<output>06F72DEA0067F543AA8C342CC9191745<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>47CC1F6CF562C569AFDF9383E0FC8A4F</key>
-			<input>06F72DEA0067F543AA8C342CC9191745</input>
-			<output>110B6011B60C94382C2321BFCAA62A1C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>56C77F7D436E515183FCB23C2A5AA053</key>
-			<input>110B6011B60C94382C2321BFCAA62A1C</input>
-			<output>80C90EF6794361DFA400EFE922F45A59<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D60E718B3A2D308E27FC5DD508AEFA0A</key>
-			<input>80C90EF6794361DFA400EFE922F45A59</input>
-			<output>F8DF0AC62EE229245DB1F300F2E5B143<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2ED17B4D14CF19AA7A4DAED5FA4B4B49</key>
-			<input>F8DF0AC62EE229245DB1F300F2E5B143</input>
-			<output>45390146539E773B502E84A0C29AD5B0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6BE87A0B47516E912A632A7538D19EF9</key>
-			<input>45390146539E773B502E84A0C29AD5B0</input>
-			<output>B07721757865838BDFC2329998B5174F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DB9F5B7E3F34ED1AF5A118ECA06489B6</key>
-			<input>B07721757865838BDFC2329998B5174F</input>
-			<output>B83F3B7A9FFBA35DF1D6661A0F8AD0F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>63A06004A0CF4E4704777EF6AFEE5942</key>
-			<input>B83F3B7A9FFBA35DF1D6661A0F8AD0F4</input>
-			<output>7098C99B1B245DE623B78F1B07D08EBE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1338A99FBBEB13A127C0F1EDA83ED7FC</key>
-			<input>7098C99B1B245DE623B78F1B07D08EBE</input>
-			<output>58A095EF9268B923920238486D0B13E1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4B983C702983AA82B5C2C9A5C535C41D</key>
-			<input>58A095EF9268B923920238486D0B13E1</input>
-			<output>97DD8052CE0D87715075A42942C120ED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DC45BC22E78E2DF3E5B76D8C87F4E4F0</key>
-			<input>97DD8052CE0D87715075A42942C120ED</input>
-			<output>F480B5A67DAFCB9524DC21453AF66FAF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>28C509849A21E666C16B4CC9BD028B5F</key>
-			<input>F480B5A67DAFCB9524DC21453AF66FAF</input>
-			<output>71CE64CE8C98367F2F12E6851AC70FF3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>590B6D4A16B9D019EE79AA4CA7C584AC</key>
-			<input>71CE64CE8C98367F2F12E6851AC70FF3</input>
-			<output>81C3AA693CC1C647399701DA17D5FDD5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D8C8C7232A78165ED7EEAB96B0107979</key>
-			<input>81C3AA693CC1C647399701DA17D5FDD5</input>
-			<output>5BB93103F6DDF0415592EE2217704D41<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8371F620DCA5E61F827C45B4A7603438</key>
-			<input>5BB93103F6DDF0415592EE2217704D41</input>
-			<output>87B8B17FF9079829AB5C47E055FFCEE3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>04C9475F25A27E3629200254F29FFADB</key>
-			<input>87B8B17FF9079829AB5C47E055FFCEE3</input>
-			<output>615FE7D34154F42D6CE9D647904295E0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6596A08C64F68A1B45C9D41362DD6F3B</key>
-			<input>615FE7D34154F42D6CE9D647904295E0</input>
-			<output>A60C213CDF9B54DF9041948F98585CE2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C39A81B0BB6DDEC4D588409CFA8533D9</key>
-			<input>A60C213CDF9B54DF9041948F98585CE2</input>
-			<output>FB126C61071EB9167B6FF28E5244E624<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3888EDD1BC7367D2AEE7B212A8C1D5FD</key>
-			<input>FB126C61071EB9167B6FF28E5244E624</input>
-			<output>8A79CE45F030B91B53D1591D10FF1B02<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B2F123944C43DEC9FD36EB0FB83ECEFF</key>
-			<input>8A79CE45F030B91B53D1591D10FF1B02</input>
-			<output>BE20190BAE15162F43E93F67A580192B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0CD13A9FE256C8E6BEDFD4681DBED7D4</key>
-			<input>BE20190BAE15162F43E93F67A580192B</input>
-			<output>0107D3E3511F91545D02B498A9E3C318<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0DD6E97CB34959B2E3DD60F0B45D14CC</key>
-			<input>0107D3E3511F91545D02B498A9E3C318</input>
-			<output>2A832A1205D6B5FCF1B20126EE59DD9D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2755C36EB69FEC4E126F61D65A04C951</key>
-			<input>2A832A1205D6B5FCF1B20126EE59DD9D</input>
-			<output>F362782F550DCBFC49CEF15C3A0ABA7A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D437BB41E39227B25BA1908A600E732B</key>
-			<input>F362782F550DCBFC49CEF15C3A0ABA7A</input>
-			<output>51A8A0C6434A3BE8C939B6DDD56EAA53<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>859F1B87A0D81C5A92982657B560D978</key>
-			<input>51A8A0C6434A3BE8C939B6DDD56EAA53</input>
-			<output>89D3F1086F3D96C18A76C61F25A52221<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0C4CEA8FCFE58A9B18EEE04890C5FB59</key>
-			<input>89D3F1086F3D96C18A76C61F25A52221</input>
-			<output>A5F7E0A5FA70DDB718EF970F50EB7B86<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A9BB0A2A3595572C00017747C02E80DF</key>
-			<input>A5F7E0A5FA70DDB718EF970F50EB7B86</input>
-			<output>7BB64305538E71AFBF993B5BD23D5523<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D20D492F661B2683BF984C1C1213D5FC</key>
-			<input>7BB64305538E71AFBF993B5BD23D5523</input>
-			<output>E6BF8F5338568603EC668C6D15331FA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>34B2C67C5E4DA08053FEC0710720CA59</key>
-			<input>E6BF8F5338568603EC668C6D15331FA5</input>
-			<output>27644649FCDF52085CDB20E3DEE1E2F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>13D68035A292F2880F25E092D9C128AF</key>
-			<input>27644649FCDF52085CDB20E3DEE1E2F6</input>
-			<output>7629AACAED7F49938373C83410AD1744<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>65FF2AFF4FEDBB1B8C5628A6C96C3FEB</key>
-			<input>7629AACAED7F49938373C83410AD1744</input>
-			<output>D440FC6E9A65819934FAF8641C05A17C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B1BFD691D5883A82B8ACD0C2D5699E97</key>
-			<input>D440FC6E9A65819934FAF8641C05A17C</input>
-			<output>FBEE29FEFD725E1852B58502D3076C46<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4A51FF6F28FA649AEA1955C0066EF2D1</key>
-			<input>FBEE29FEFD725E1852B58502D3076C46</input>
-			<output>E345A47A6C89BE4350CDD8C9D319529D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A9145B154473DAD9BAD48D09D577A04C</key>
-			<input>E345A47A6C89BE4350CDD8C9D319529D</input>
-			<output>1C6A7CBAF21E483B6025DB6DA573C5C6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B57E27AFB66D92E2DAF156647004658A</key>
-			<input>1C6A7CBAF21E483B6025DB6DA573C5C6</input>
-			<output>2B05F4D8EB50D851A013798753B65A1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9E7BD3775D3D4AB37AE22FE323B23F95</key>
-			<input>2B05F4D8EB50D851A013798753B65A1F</input>
-			<output>CEFE04978228A0DBCCE9EE42B21DD34A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5085D7E0DF15EA68B60BC1A191AFECDF</key>
-			<input>CEFE04978228A0DBCCE9EE42B21DD34A</input>
-			<output>7B41DF8CD85B61EA800536648DBDA2AE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2BC4086C074E8B82360EF7C51C124E71</key>
-			<input>7B41DF8CD85B61EA800536648DBDA2AE</input>
-			<output>08688872151D18CD19E2FC14B9E4C962<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>23AC801E1253934F2FEC0BD1A5F68713</key>
-			<input>08688872151D18CD19E2FC14B9E4C962</input>
-			<output>F08C88BE5E748C4D82D2E7D7813A33AF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D32008A04C271F02AD3EEC0624CCB4BC</key>
-			<input>F08C88BE5E748C4D82D2E7D7813A33AF</input>
-			<output>319B7D38AB1AC3AEA0A0490C341F4F20<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E2BB7598E73DDCAC0D9EA50A10D3FB9C</key>
-			<input>319B7D38AB1AC3AEA0A0490C341F4F20</input>
-			<output>EE70748772E8D88B2717D78F31F0EA86<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0CCB011F95D504272A8972852123111A</key>
-			<input>EE70748772E8D88B2717D78F31F0EA86</input>
-			<output>A3A5DC791EA1BBB9D7A2B292572DFD5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AF6EDD668B74BF9EFD2BC017760EEC46</key>
-			<input>A3A5DC791EA1BBB9D7A2B292572DFD5C</input>
-			<output>255692B06B3A18498BCAF99F7B3EE374<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8A384FD6E04EA7D776E139880D300F32</key>
-			<input>255692B06B3A18498BCAF99F7B3EE374</input>
-			<output>500E492232891293875F50279B5DC5C3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DA3606F4D2C7B544F1BE69AF966DCAF1</key>
-			<input>500E492232891293875F50279B5DC5C3</input>
-			<output>57C3FCCE9B5BA3BC19BBF7BB9B37A9AC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8DF5FA3A499C16F8E8059E140D5A635D</key>
-			<input>57C3FCCE9B5BA3BC19BBF7BB9B37A9AC</input>
-			<output>BF06FDFDB687C8B24FB0E2A6D6D37EA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>32F307C7FF1BDE4AA7B57CB2DB891DF8</key>
-			<input>BF06FDFDB687C8B24FB0E2A6D6D37EA5</input>
-			<output>6D459ED545CF3C6FF2746411CD9B3E31<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5FB69912BAD4E22555C118A3161223C9</key>
-			<input>6D459ED545CF3C6FF2746411CD9B3E31</input>
-			<output>C74E0704A9D9EC2D90F75B34FC95CD32<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>98F89E16130D0E08C5364397EA87EEFB</key>
-			<input>C74E0704A9D9EC2D90F75B34FC95CD32</input>
-			<output>0453D4FBC2D7F8E0AD0AD90F98D1EC5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9CAB4AEDD1DAF6E8683C9A98725602A7</key>
-			<input>0453D4FBC2D7F8E0AD0AD90F98D1EC5C</input>
-			<output>5BBA052D6C39DC1E9553B7646CB7344B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C7114FC0BDE32AF6FD6F2DFC1EE136EC</key>
-			<input>5BBA052D6C39DC1E9553B7646CB7344B</input>
-			<output>9870FFE04984426501ECB55FFBB363CB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5F61B020F4676893FC8398A3E5525527</key>
-			<input>9870FFE04984426501ECB55FFBB363CB</input>
-			<output>1363D65F7C943FC4512E41A717D3704D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4C02667F88F35757ADADD904F281256A</key>
-			<input>1363D65F7C943FC4512E41A717D3704D</input>
-			<output>664762AED6BC5FB74A646A928837FC83<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2A4504D15E4F08E0E7C9B3967AB6D9E9</key>
-			<input>664762AED6BC5FB74A646A928837FC83</input>
-			<output>655CB6BAB4B0532273689E4DC9234C42<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4F19B26BEAFF5BC294A12DDBB39595AB</key>
-			<input>655CB6BAB4B0532273689E4DC9234C42</input>
-			<output>E8AAE0E0B9D2BE6259AEBC478DC90FD9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A7B3528B532DE5A0CD0F919C3E5C9A72</key>
-			<input>E8AAE0E0B9D2BE6259AEBC478DC90FD9</input>
-			<output>FECACAF43DD920FA3078256C6A587741<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5979987F6EF4C55AFD77B4F05404ED33</key>
-			<input>FECACAF43DD920FA3078256C6A587741</input>
-			<output>11F3F56529B8B172D87A4C86BB90F3B6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>488A6D1A474C7428250DF876EF941E85</key>
-			<input>11F3F56529B8B172D87A4C86BB90F3B6</input>
-			<output>B44340D44F1ABA37CB09FE57FC771A9E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FCC92DCE0856CE1FEE04062113E3041B</key>
-			<input>B44340D44F1ABA37CB09FE57FC771A9E</input>
-			<output>C49F12B88C34A0D696FE283B01D5710C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>38563F7684626EC978FA2E1A12367517</key>
-			<input>C49F12B88C34A0D696FE283B01D5710C</input>
-			<output>58D6D2D36C14DDBDA7604AB740918D76<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6080EDA5E876B374DF9A64AD52A7F861</key>
-			<input>58D6D2D36C14DDBDA7604AB740918D76</input>
-			<output>21F735F77B0EAD7551CE06900A568EB3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4177D85293781E018E54623D58F176D2</key>
-			<input>21F735F77B0EAD7551CE06900A568EB3</input>
-			<output>FE2E9BDB393BF6D1BBF108B8AC3B6818<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BF594389AA43E8D035A56A85F4CA1ECA</key>
-			<input>FE2E9BDB393BF6D1BBF108B8AC3B6818</input>
-			<output>FECFCD3722C6C8E6608258341220E739<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>41968EBE88852036552732B1E6EAF9F3</key>
-			<input>FECFCD3722C6C8E6608258341220E739</input>
-			<output>10A8BB234C9D9A22DEC7887E931F85BD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>513E359DC418BA148BE0BACF75F57C4E</key>
-			<input>10A8BB234C9D9A22DEC7887E931F85BD</input>
-			<output>767EB7DBA70BC7094DF7A5BDD233EB5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2740824663137D1DC6171F72A7C69712</key>
-			<input>767EB7DBA70BC7094DF7A5BDD233EB5C</input>
-			<output>FCD7184F3F4DB7CA182225B9A358209D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DB979A095C5ECAD7DE353ACB049EB78F</key>
-			<input>FCD7184F3F4DB7CA182225B9A358209D</input>
-			<output>A5CD025AEBF0380EAC66EF034806179F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7E5A9853B7AEF2D97253D5C84C98A010</key>
-			<input>A5CD025AEBF0380EAC66EF034806179F</input>
-			<output>FE46F4A72C7031FE8D900152CD20B95F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>801C6CF49BDEC327FFC3D49A81B8194F</key>
-			<input>FE46F4A72C7031FE8D900152CD20B95F</input>
-			<output>CF1ACB502A4B608C61364891E34F93A0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4F06A7A4B195A3AB9EF59C0B62F78AEF</key>
-			<input>CF1ACB502A4B608C61364891E34F93A0</input>
-			<output>95AB1367FF6C03DE87FFA282A3E52200<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DAADB4C34EF9A075190A3E89C112A8EF</key>
-			<input>95AB1367FF6C03DE87FFA282A3E52200</input>
-			<output>762B6393252B347F55AF3E4CA16F2FC9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AC86D7506BD2940A4CA500C5607D8726</key>
-			<input>762B6393252B347F55AF3E4CA16F2FC9</input>
-			<output>A63491A22E23AD921ADAB9CC0DA20521<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0AB246F245F13998567FB9096DDF8207</key>
-			<input>A63491A22E23AD921ADAB9CC0DA20521</input>
-			<output>C0852A5E7CEEAFB5FA87C440B598BFD6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CA376CAC391F962DACF87D49D8473DD1</key>
-			<input>C0852A5E7CEEAFB5FA87C440B598BFD6</input>
-			<output>485747C528B08033169E991E98E4CBB5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>82602B6911AF161EBA66E45740A3F664</key>
-			<input>485747C528B08033169E991E98E4CBB5</input>
-			<output>415B95B222161A8C9ED20CF99C26848C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C33BBEDB33B90C9224B4E8AEDC8572E8</key>
-			<input>415B95B222161A8C9ED20CF99C26848C</input>
-			<output>7E673E6348C38CD40C9B11F4C9F3E3A0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BD5C80B87B7A8046282FF95A15769148</key>
-			<input>7E673E6348C38CD40C9B11F4C9F3E3A0</input>
-			<output>B88508E55279AFF0D848C38DBEC76B2C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>05D9885D29032FB6F0673AD7ABB1FA64</key>
-			<input>B88508E55279AFF0D848C38DBEC76B2C</input>
-			<output>3902B5DC34E815BA50A53DB9C8FFAA92<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3CDB3D811DEB3A0CA0C2076E634E50F6</key>
-			<input>3902B5DC34E815BA50A53DB9C8FFAA92</input>
-			<output>FEF57F51360547EA6B88085B8656A1D0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C22E42D02BEE7DE6CB4A0F35E518F126</key>
-			<input>FEF57F51360547EA6B88085B8656A1D0</input>
-			<output>94D052E1F097106A5B714ADD0EF79E64<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>56FE1031DB796D8C903B45E8EBEF6F42</key>
-			<input>94D052E1F097106A5B714ADD0EF79E64</input>
-			<output>7FD3EF411360E5270F63A8BACCCC74C0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>292DFF70C81988AB9F58ED5227231B82</key>
-			<input>7FD3EF411360E5270F63A8BACCCC74C0</input>
-			<output>F572692DE6EFBC2309B947D1A75BE009<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DC5F965D2EF6348896E1AA838078FB8B</key>
-			<input>F572692DE6EFBC2309B947D1A75BE009</input>
-			<output>BFD3233C513448C283C05311B8085B5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>638CB5617FC27C4A1521F9923870A0D7</key>
-			<input>BFD3233C513448C283C05311B8085B5C</input>
-			<output>078739F570071AA1A96A1F00F31E05FD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>640B8C940FC566EBBC4BE692CB6EA52A</key>
-			<input>078739F570071AA1A96A1F00F31E05FD</input>
-			<output>947CA236277CDD0AC13C194B99E8CF16<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F0772EA228B9BBE17D77FFD952866A3C</key>
-			<input>947CA236277CDD0AC13C194B99E8CF16</input>
-			<output>34DE5F2D355BC4ACE54AD0CB8C008CB8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C4A9718F1DE27F4D983D2F12DE86E684</key>
-			<input>34DE5F2D355BC4ACE54AD0CB8C008CB8</input>
-			<output>E5729CBD84C89B914F35412F902A2CA3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>21DBED32992AE4DCD7086E3D4EACCA27</key>
-			<input>E5729CBD84C89B914F35412F902A2CA3</input>
-			<output>EB326D6ABAFC93EADBEC9B05CE4AAF0C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CAE9805823D677360CE4F53880E6652B</key>
-			<input>EB326D6ABAFC93EADBEC9B05CE4AAF0C</input>
-			<output>9F088089F8D8E8E28A9A2A1FF50F2ED3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>55E100D1DB0E9FD4867EDF2775E94BF8</key>
-			<input>9F088089F8D8E8E28A9A2A1FF50F2ED3</input>
-			<output>C8D2BF3D6ADB57F478656D4808142160<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9D33BFECB1D5C820FE1BB26F7DFD6A98</key>
-			<input>C8D2BF3D6ADB57F478656D4808142160</input>
-			<output>062016811215B9DBDD3C794A15FBEBBA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9B13A96DA3C071FB2327CB2568068122</key>
-			<input>062016811215B9DBDD3C794A15FBEBBA</input>
-			<output>71F9F04E9AED1C302E5ED2AD36B5C7F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EAEA5923392D6DCB0D7919885EB346D7</key>
-			<input>71F9F04E9AED1C302E5ED2AD36B5C7F5</input>
-			<output>253982568F6C3FDFDE173E46B614989C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CFD3DB75B6415214D36E27CEE8A7DE4B</key>
-			<input>253982568F6C3FDFDE173E46B614989C</input>
-			<output>6D51D51276A6FA9C933E4D4496D0455E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A2820E67C0E7A88840506A8A7E779B15</key>
-			<input>6D51D51276A6FA9C933E4D4496D0455E</input>
-			<output>B9A6924F773CE826BBBC6DDBFA4E146A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1B249C28B7DB40AEFBEC075184398F7F</key>
-			<input>B9A6924F773CE826BBBC6DDBFA4E146A</input>
-			<output>474943C523162BC81186779A07144BC6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5C6DDFED94CD6B66EA6A70CB832DC4B9</key>
-			<input>474943C523162BC81186779A07144BC6</input>
-			<output>20128A092B99B4BC212B1107C3BA1DF9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7C7F55E4BF54DFDACB4161CC4097D940</key>
-			<input>20128A092B99B4BC212B1107C3BA1DF9</input>
-			<output>90330B8FB5A50E958250A953EF5145C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EC4C5E6B0AF1D14F4911C89FAFC69C87</key>
-			<input>90330B8FB5A50E958250A953EF5145C7</input>
-			<output>C1B788D0EB2C8C7B9E020CC2BEACD595<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2DFBD6BBE1DD5D34D713C45D116A4912</key>
-			<input>C1B788D0EB2C8C7B9E020CC2BEACD595</input>
-			<output>EF87960DABBE82F6CFA8045CE4A9EED0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C27C40B64A63DFC218BBC001F5C3A7C2</key>
-			<input>EF87960DABBE82F6CFA8045CE4A9EED0</input>
-			<output>405C8408D5027DF90CBE3159701D161A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8220C4BE9F61A23B1405F15885DEB1D8</key>
-			<input>405C8408D5027DF90CBE3159701D161A</input>
-			<output>FCAB7F88E85D6573A98D23D684A5A5F3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7E8BBB36773CC748BD88D28E017B142B</key>
-			<input>FCAB7F88E85D6573A98D23D684A5A5F3</input>
-			<output>191E6F1EECBF5149F4D49446E97D8820<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6795D4289B839601495C46C8E8069C0B</key>
-			<input>191E6F1EECBF5149F4D49446E97D8820</input>
-			<output>C77128F53D48594194EFBA67E46C6B23<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A0E4FCDDA6CBCF40DDB3FCAF0C6AF728</key>
-			<input>C77128F53D48594194EFBA67E46C6B23</input>
-			<output>DFB898170571450CC5E2244AE4D3AF43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7F5C64CAA3BA8A4C1851D8E5E8B9586B</key>
-			<input>DFB898170571450CC5E2244AE4D3AF43</input>
-			<output>3BD1633B5053609A3B42CC098F9F5D87<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>448D07F1F3E9EAD6231314EC672605EC</key>
-			<input>3BD1633B5053609A3B42CC098F9F5D87</input>
-			<output>AC15B23F205AEB10470F853BA18361E0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E898B5CED3B301C6641C91D7C6A5640C</key>
-			<input>AC15B23F205AEB10470F853BA18361E0</input>
-			<output>2DA73BA6E01B1ADFBEEAFA2E37942078<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C53F8E6833A81B19DAF66BF9F1314474</key>
-			<input>2DA73BA6E01B1ADFBEEAFA2E37942078</input>
-			<output>C5B3D7089173958B32340B88D35B738B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>008C5960A2DB8E92E8C26071226A37FF</key>
-			<input>C5B3D7089173958B32340B88D35B738B</input>
-			<output>8318BAA96569F3ADCD30C08D54494392<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8394E3C9C7B27D3F25F2A0FC7623746D</key>
-			<input>8318BAA96569F3ADCD30C08D54494392</input>
-			<output>4F6F2A06A1A344B261084563BCCC5A5A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CCFBC9CF6611398D44FAE59FCAEF2E37</key>
-			<input>4F6F2A06A1A344B261084563BCCC5A5A</input>
-			<output>07EC18166362BF049A48D146A63FF378<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CB17D1D905738689DEB234D96CD0DD4F</key>
-			<input>07EC18166362BF049A48D146A63FF378</input>
-			<output>81CB17ABAC28A3ED135442454C212646<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4ADCC672A95B2564CDE6769C20F1FB09</key>
-			<input>81CB17ABAC28A3ED135442454C212646</input>
-			<output>C1CBDE45E27B9B1198CE93A51E38D9C5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8B1718374B20BE755528E5393EC922CC</key>
-			<input>C1CBDE45E27B9B1198CE93A51E38D9C5</input>
-			<output>8E4EB89DDFEE065784556FA0B426954A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0559A0AA94CEB822D17D8A998AEFB786</key>
-			<input>8E4EB89DDFEE065784556FA0B426954A</input>
-			<output>6A966414CC6FE52F957E9DE7012EC4BD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6FCFC4BE58A15D0D4403177E8BC1733B</key>
-			<input>6A966414CC6FE52F957E9DE7012EC4BD</input>
-			<output>7C88474D963BFDFE61F052F51D1796EF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>134783F3CE9AA0F325F3458B96D6E5D4</key>
-			<input>7C88474D963BFDFE61F052F51D1796EF</input>
-			<output>6269F5DA04B09D442DDCB46001573AE9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>712E7629CA2A3DB7082FF1EB9781DF3D</key>
-			<input>6269F5DA04B09D442DDCB46001573AE9</input>
-			<output>FBD2965ACE0B360A12EF39873A8F3805<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8AFCE07304210BBD1AC0C86CAD0EE738</key>
-			<input>FBD2965ACE0B360A12EF39873A8F3805</input>
-			<output>5B46EF12C9BE55DCD5571D82E5BC6FF1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D1BA0F61CD9F5E61CF97D5EE48B288C9</key>
-			<input>5B46EF12C9BE55DCD5571D82E5BC6FF1</input>
-			<output>403DEFDB60876F3161CF02F319F5EA9A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9187E0BAAD183150AE58D71D51476253</key>
-			<input>403DEFDB60876F3161CF02F319F5EA9A</input>
-			<output>70FD321C583C1B54ED6AD3A79721E84A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E17AD2A6F5242A04433204BAC6668A19</key>
-			<input>70FD321C583C1B54ED6AD3A79721E84A</input>
-			<output>32AE26E948D563782532AC711BFAB644<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3D4F44FBDF1497C6600A8CBDD9C3C5D</key>
-			<input>32AE26E948D563782532AC711BFAB644</input>
-			<output>ECF948F5EBB98E4C7286046E0F7AF127<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3F2DBCBA5648C7301486ACA5D2E6CD7A</key>
-			<input>ECF948F5EBB98E4C7286046E0F7AF127</input>
-			<output>818F87EFA0B5E4098E737AD44DB537BA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BEA23B55F6FD23399AF5D6719F53FAC0</key>
-			<input>818F87EFA0B5E4098E737AD44DB537BA</input>
-			<output>029F170737413F1BFBE02C292D506E44<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BC3D2C52C1BC1C226115FA58B2039484</key>
-			<input>029F170737413F1BFBE02C292D506E44</input>
-			<output>77A7C520912761121373E35FD3B5AF0F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CB9AE972509B7D307266190761B63B8B</key>
-			<input>77A7C520912761121373E35FD3B5AF0F</input>
-			<output>D407B965C368E1F77195ED446BEEBA73<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1F9D501793F39CC703F3F4430A5881F8</key>
-			<input>D407B965C368E1F77195ED446BEEBA73</input>
-			<output>D1F304E0B3614A4840F128AA364BA6A3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE6E54F72092D68F4302DCE93C13275B</key>
-			<input>D1F304E0B3614A4840F128AA364BA6A3</input>
-			<output>69B748543EE72474D0CC301BDBD50A6C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A7D91CA31E75F2FB93CEECF2E7C62D37</key>
-			<input>69B748543EE72474D0CC301BDBD50A6C</input>
-			<output>BA471D91DBC6D27EBA7B510E67830C3F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1D9E0132C5B3208529B5BDFC80452108</key>
-			<input>BA471D91DBC6D27EBA7B510E67830C3F</input>
-			<output>7C0CF396D078E01A741613B1E1D7A9CB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6192F2A415CBC09F5DA3AE4D619288C3</key>
-			<input>7C0CF396D078E01A741613B1E1D7A9CB</input>
-			<output>6F670A289398F49C75ACBBE9EAC2ABFC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0EF5F88C86533403280F15A48B50233F</key>
-			<input>6F670A289398F49C75ACBBE9EAC2ABFC</input>
-			<output>C392EF479528BF1B02296E6C894E4FDD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CD6717CB137B8B182A267BC8021E6CE2</key>
-			<input>C392EF479528BF1B02296E6C894E4FDD</input>
-			<output>C4226C8C98D5F137A4C6A239E04B0FB3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>09457B478BAE7A2F8EE0D9F1E2556351</key>
-			<input>C4226C8C98D5F137A4C6A239E04B0FB3</input>
-			<output>2382714FC945AD4A1E03858B63973B9E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2AC70A0842EBD76590E35C7A81C258CF</key>
-			<input>2382714FC945AD4A1E03858B63973B9E</input>
-			<output>E41F350AC9320A8A23E27C0349978168<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CED83F028BD9DDEFB3012079C855D9A7</key>
-			<input>E41F350AC9320A8A23E27C0349978168</input>
-			<output>7E9137997CB7676F3D0141797C6F31A8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B049089BF76EBA808E006100B43AE80F</key>
-			<input>7E9137997CB7676F3D0141797C6F31A8</input>
-			<output>4BF7EBC15369A757981EE4A0B7F55706<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FBBEE35AA4071DD7161E85A003CFBF09</key>
-			<input>4BF7EBC15369A757981EE4A0B7F55706</input>
-			<output>EC677E86A8D2A5935D33D6471A58A781<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>17D99DDC0CD5B8444B2D53E719971888</key>
-			<input>EC677E86A8D2A5935D33D6471A58A781</input>
-			<output>F31066D48884BC9B37F218FCF385344B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E4C9FB08845104DF7CDF4B1BEA122CC3</key>
-			<input>F31066D48884BC9B37F218FCF385344B</input>
-			<output>51CFEA4E482A7B7BCF4D31DA5CED4370<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B5061146CC7B7FA4B3927AC1B6FF6FB3</key>
-			<input>51CFEA4E482A7B7BCF4D31DA5CED4370</input>
-			<output>89F3CD1590669A16F8460991BFD3CF5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3CF5DC535C1DE5B24BD47350092CA0EF</key>
-			<input>89F3CD1590669A16F8460991BFD3CF5C</input>
-			<output>9930DA8E5DBC1F6C87B0B41BD386E2E0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5C506DD01A1FADECC64C74BDAAA420F</key>
-			<input>9930DA8E5DBC1F6C87B0B41BD386E2E0</input>
-			<output>41A8CB583E5B9D2BA7CDA3763B6529C0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E46DCD853FFA67F56BA9643DE1CF6BCF</key>
-			<input>41A8CB583E5B9D2BA7CDA3763B6529C0</input>
-			<output>53479DCFB0C69624B42B9C272B0A1A85<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B72A504A8F3CF1D1DF82F81ACAC5714A</key>
-			<input>53479DCFB0C69624B42B9C272B0A1A85</input>
-			<output>E72F27AE86E913EF55309120358BAD35<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>500577E409D5E23E8AB2693AFF4EDC7F</key>
-			<input>E72F27AE86E913EF55309120358BAD35</input>
-			<output>9B1EF901BACC70819DBC627C7CDC8CD9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CB1B8EE5B31992BF170E0B46839250A6</key>
-			<input>9B1EF901BACC70819DBC627C7CDC8CD9</input>
-			<output>9546C7B789345E4C32EE84BCE8E78C7E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E5D49523A2DCCF325E08FFA6B75DCD8</key>
-			<input>9546C7B789345E4C32EE84BCE8E78C7E</input>
-			<output>33700B93E03CE8202BAC7E64E3255108<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6D2D42C1DA1124D30E4CF19E88508DD0</key>
-			<input>33700B93E03CE8202BAC7E64E3255108</input>
-			<output>44246615BCA5C0A8DCB7E63729398F0A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>290924D466B4E47BD2FB17A9A16902DA</key>
-			<input>44246615BCA5C0A8DCB7E63729398F0A</input>
-			<output>3215FC55FEE5A30BFA11F8EBBC912652<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1B1CD8819851477028EAEF421DF82488</key>
-			<input>3215FC55FEE5A30BFA11F8EBBC912652</input>
-			<output>796C9136407BC4F484B253DAEB206912<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>627049B7D82A8384AC58BC98F6D84D9A</key>
-			<input>796C9136407BC4F484B253DAEB206912</input>
-			<output>B18977B404F0671C10AA979389408CCA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3F93E03DCDAE498BCF22B0B7F98C150</key>
-			<input>B18977B404F0671C10AA979389408CCA</input>
-			<output>B2592621EE947D4ED9AD4295E0675F93<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>61A01822324E99D6655F699E9FFF9EC3</key>
-			<input>B2592621EE947D4ED9AD4295E0675F93</input>
-			<output>62D3B7E28765DA8F83EBE19C97293C0A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0373AFC0B52B4359E6B4880208D6A2C9</key>
-			<input>62D3B7E28765DA8F83EBE19C97293C0A</input>
-			<output>F417D650D6B7631542CFF8F95FC81C9B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F7647990639C204CA47B70FB571EBE52</key>
-			<input>F417D650D6B7631542CFF8F95FC81C9B</input>
-			<output>700A5DE153D6B438FFF7BA902DEC32FF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>876E2471304A94745B8CCA6B7AF28CAD</key>
-			<input>700A5DE153D6B438FFF7BA902DEC32FF</input>
-			<output>67DC08A48F1EC7E32121B8693BB23621<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E0B22CD5BF5453977AAD72024140BA8C</key>
-			<input>67DC08A48F1EC7E32121B8693BB23621</input>
-			<output>90038BB156A7F7992E260E9CBFAC0D82<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>70B1A764E9F3A40E548B7C9EFEECB70E</key>
-			<input>90038BB156A7F7992E260E9CBFAC0D82</input>
-			<output>C6BB1407C2D037BF238BEC772BA95352<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B60AB3632B2393B1770090E9D545E45C</key>
-			<input>C6BB1407C2D037BF238BEC772BA95352</input>
-			<output>8C3D249574FF74F84053977219D69F5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3A3797F65FDCE7493753079BCC937B02</key>
-			<input>8C3D249574FF74F84053977219D69F5E</input>
-			<output>131F7FC5A1528AD5DCB167AFAA8BFD47<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2928E833FE8E6D9CEBE2603466188645</key>
-			<input>131F7FC5A1528AD5DCB167AFAA8BFD47</input>
-			<output>6E68AE6FDF2C10B42B85486D3EFBCEB9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4740465C21A27D28C067285958E348FC</key>
-			<input>6E68AE6FDF2C10B42B85486D3EFBCEB9</input>
-			<output>26808ABFA3967D742D64A26CADF8DD70<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>61C0CCE38234005CED038A35F51B958C</key>
-			<input>26808ABFA3967D742D64A26CADF8DD70</input>
-			<output>8BBCBA5E4C219D000A2F6B701CDA09C3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EA7C76BDCE159D5CE72CE145E9C19C4F</key>
-			<input>8BBCBA5E4C219D000A2F6B701CDA09C3</input>
-			<output>5D707BB328BEFF51C8C1D984C1608AA0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B70C0D0EE6AB620D2FED38C128A116EF</key>
-			<input>5D707BB328BEFF51C8C1D984C1608AA0</input>
-			<output>8D0A485482B914FC282C2DA9F7147D0C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3A06455A641276F107C11568DFB56BE3</key>
-			<input>8D0A485482B914FC282C2DA9F7147D0C</input>
-			<output>C5678BC12445627CBAA94177F070F736<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF61CE9B4057148DBD68541F2FC59CD5</key>
-			<input>C5678BC12445627CBAA94177F070F736</input>
-			<output>EB9B50846E92C20CD6EDBA7A3A260684<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>14FA9E1F2EC5D6816B85EE6515E39A51</key>
-			<input>EB9B50846E92C20CD6EDBA7A3A260684</input>
-			<output>E2178B471A3F72A271013C4CBE41FA1C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F6ED155834FAA4231A84D229ABA2604D</key>
-			<input>E2178B471A3F72A271013C4CBE41FA1C</input>
-			<output>C10C8084A17D90339E5ED8C638B902A4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>37E195DC9587341084DA0AEF931B62E9</key>
-			<input>C10C8084A17D90339E5ED8C638B902A4</input>
-			<output>03C839CCF269548279F30A1F45C30556<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3429AC1067EE6092FD2900F0D6D867BF</key>
-			<input>03C839CCF269548279F30A1F45C30556</input>
-			<output>1C5DC5C94B5C7E332D4122A0A4FACD96<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>287469D92CB21EA1D06822507222AA29</key>
-			<input>1C5DC5C94B5C7E332D4122A0A4FACD96</input>
-			<output>E7292B7D15E9311F242FACFAFC0B0B81<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF5D42A4395B2FBEF4478EAA8E29A1A8</key>
-			<input>E7292B7D15E9311F242FACFAFC0B0B81</input>
-			<output>EA6DF86EEE09613104DB81B97B949AEC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2530BACAD7524E8FF09C0F13F5BD3B44</key>
-			<input>EA6DF86EEE09613104DB81B97B949AEC</input>
-			<output>8FBCCDEBA43FE3FFDE4C3C279BDD4A27<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AA8C7721736DAD702ED033346E607163</key>
-			<input>8FBCCDEBA43FE3FFDE4C3C279BDD4A27</input>
-			<output>985971BE962C63B0F50D1004963E9BED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>32D5069FE541CEC0DBDD2330F85EEA8E</key>
-			<input>985971BE962C63B0F50D1004963E9BED</input>
-			<output>F2CC0FF4B6D2F88766F1B8BE370FE463<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C019096B53933647BD2C9B8ECF510EED</key>
-			<input>F2CC0FF4B6D2F88766F1B8BE370FE463</input>
-			<output>FE33F823B7B97FC017B35B6E22415D3E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3E2AF148E42A4987AA9FC0E0ED1053D3</key>
-			<input>FE33F823B7B97FC017B35B6E22415D3E</input>
-			<output>465D804A6053EC2580B59F0CD645C060<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>787771028479A5A22A2A5FEC3B5593B3</key>
-			<input>465D804A6053EC2580B59F0CD645C060</input>
-			<output>DE05AD28693E3D471B8F39BAD1803C0E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A672DC2AED4798E531A56656EAD5AFBD</key>
-			<input>DE05AD28693E3D471B8F39BAD1803C0E</input>
-			<output>61EB397D55A2FC3D78974C8A10200AC6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C799E557B8E564D849322ADCFAF5A57B</key>
-			<input>61EB397D55A2FC3D78974C8A10200AC6</input>
-			<output>BD95D742D81AD795AA4E10FB41F54294<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7A0C321560FFB34DE37C3A27BB00E7EF</key>
-			<input>BD95D742D81AD795AA4E10FB41F54294</input>
-			<output>F43A1E8C6E057E68414D23DA6932DE2C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8E362C990EFACD25A23119FDD23239C3</key>
-			<input>F43A1E8C6E057E68414D23DA6932DE2C</input>
-			<output>8EBB208032245988E851148B34B92F0E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>008D0C193CDE94AD4A600D76E68B16CD</key>
-			<input>8EBB208032245988E851148B34B92F0E</input>
-			<output>2F18B4B14A360E06C50C89A4E6FE6C17<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F95B8A876E89AAB8F6C84D200757ADA</key>
-			<input>2F18B4B14A360E06C50C89A4E6FE6C17</input>
-			<output>681E131FA7EA5EBE10B59D3F16009582<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>478BABB7D102C4159FD919ED1675EF58</key>
-			<input>681E131FA7EA5EBE10B59D3F16009582</input>
-			<output>376FA31CC9D18E756E96715D61403C5D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>70E408AB18D34A60F14F68B07735D305</key>
-			<input>376FA31CC9D18E756E96715D61403C5D</input>
-			<output>519E87E4A1AC61C376842F028D1BD75F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>217A8F4FB97F2BA387CB47B2FA2E045A</key>
-			<input>519E87E4A1AC61C376842F028D1BD75F</input>
-			<output>BFAED9E9964967342808C6C332E02204<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9ED456A62F364C97AFC38171C8CE265E</key>
-			<input>BFAED9E9964967342808C6C332E02204</input>
-			<output>5A9F55C61A03D6A3196FFD6879CBCA02<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C44B036035359A34B6AC7C19B105EC5C</key>
-			<input>5A9F55C61A03D6A3196FFD6879CBCA02</input>
-			<output>0FD872478223CDE765A62036EDD6F42F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CB937127B71657D3D30A5C2F5CD31873</key>
-			<input>0FD872478223CDE765A62036EDD6F42F</input>
-			<output>965ED2AF7D26CDA8A8B7E7B2F1ADA768<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5DCDA388CA309A7B7BBDBB9DAD7EBF1B</key>
-			<input>965ED2AF7D26CDA8A8B7E7B2F1ADA768</input>
-			<output>05599B8D42D92457605A69200C6DC0AA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5894380588E9BE2C1BE7D2BDA1137FB1</key>
-			<input>05599B8D42D92457605A69200C6DC0AA</input>
-			<output>3436A49EE590788F625A6FB44BF72FA3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6CA29C9B6D79C6A379BDBD09EAE45012</key>
-			<input>3436A49EE590788F625A6FB44BF72FA3</input>
-			<output>DB181195EFF35E307167BADA138A837A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B7BA8D0E828A989308DA07D3F96ED368</key>
-			<input>DB181195EFF35E307167BADA138A837A</input>
-			<output>45E06B534233447E3CB696C1DD179477<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F25AE65DC0B9DCED346C91122479471F</key>
-			<input>45E06B534233447E3CB696C1DD179477</input>
-			<output>D2EDC4E2B4EDD671D984E8AA5BABAAD7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>20B722BF74540A9CEDE879B87FD2EDC8</key>
-			<input>D2EDC4E2B4EDD671D984E8AA5BABAAD7</input>
-			<output>DB92F4E9F2DD6A61E20A79CFC82CD061<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FB25D656868960FD0FE20077B7FE3DA9</key>
-			<input>DB92F4E9F2DD6A61E20A79CFC82CD061</input>
-			<output>79383629DF124FD94A1C36BECB711747<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>821DE07F599B2F2445FE36C97C8F2AEE</key>
-			<input>79383629DF124FD94A1C36BECB711747</input>
-			<output>3F3F592FB3DB51CF08B70E6F2174AB43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BD22B950EA407EEB4D4938A65DFB81AD</key>
-			<input>3F3F592FB3DB51CF08B70E6F2174AB43</input>
-			<output>D34FDA2917E9697118502CB7A6CAE07C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6E6D6379FDA9179A55191411FB3161D1</key>
-			<input>D34FDA2917E9697118502CB7A6CAE07C</input>
-			<output>24D2C38E5C52A404DBE0D8BB6DA44AEE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4ABFA0F7A1FBB39E8EF9CCAA96952B3F</key>
-			<input>24D2C38E5C52A404DBE0D8BB6DA44AEE</input>
-			<output>2ED6A7503B3547C04E0B7B709218CD4A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>646907A79ACEF45EC0F2B7DA048DE675</key>
-			<input>2ED6A7503B3547C04E0B7B709218CD4A</input>
-			<output>4F11BE7A8B5D1A04AB82F60000BC7B50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2B78B9DD1193EE5A6B7041DA04319D25</key>
-			<input>4F11BE7A8B5D1A04AB82F60000BC7B50</input>
-			<output>B98B51B76B262CB9ED157567A05770AF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>92F3E86A7AB5C2E3866534BDA466ED8A</key>
-			<input>B98B51B76B262CB9ED157567A05770AF</input>
-			<output>D6CA5483F89D5AA01DBCFEBE30C26F5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4439BCE9822898439BD9CA0394A482D4</key>
-			<input>D6CA5483F89D5AA01DBCFEBE30C26F5E</input>
-			<output>7706922EBA53937E287084C8FDFEB33F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>333F2EC7387B0B3DB3A94ECB695A31EB</key>
-			<input>7706922EBA53937E287084C8FDFEB33F</input>
-			<output>0F2DA3B8BFCB1046CA94EC9322320BF9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C128D7F87B01B7B793DA2584B683A12</key>
-			<input>0F2DA3B8BFCB1046CA94EC9322320BF9</input>
-			<output>29CAD5CDC5A2834A5D533335FED2EA81<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>15D858B242129831246E916DB5BAD093</key>
-			<input>29CAD5CDC5A2834A5D533335FED2EA81</input>
-			<output>A48A2D319552BF02E84E4662E75884DB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B1527583D7402733CC20D70F52E25448</key>
-			<input>A48A2D319552BF02E84E4662E75884DB</input>
-			<output>334560ECD22BB9F660BC4FFAB13891C9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8217156F056B9EC5AC9C98F5E3DAC581</key>
-			<input>334560ECD22BB9F660BC4FFAB13891C9</input>
-			<output>DAAEB8436205DFB6688D9DE0A21A6B9D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>58B9AD2C676E4173C411051541C0AE1C</key>
-			<input>DAAEB8436205DFB6688D9DE0A21A6B9D</input>
-			<output>E38798615C2158872704125A7CFC6540<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB3E354D3B4F19F4E315174F3D3CCB5C</key>
-			<input>E38798615C2158872704125A7CFC6540</input>
-			<output>BACB9EA5499A093F6595E8D1D5CF7E50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>01F5ABE872D510CB8680FF9EE8F3B50C</key>
-			<input>BACB9EA5499A093F6595E8D1D5CF7E50</input>
-			<output>813B0D4AC4C2B8371A1A132927D24F62<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>80CEA6A2B617A8FC9C9AECB7CF21FA6E</key>
-			<input>813B0D4AC4C2B8371A1A132927D24F62</input>
-			<output>D1AD1AE650B377520EE19370D9E968A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5163BC44E6A4DFAE927B7FC716C892C7</key>
-			<input>D1AD1AE650B377520EE19370D9E968A9</input>
-			<output>3CEC25102A51A5A4C26E7391590D54ED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6D8F9954CCF57A0A50150C564FC5C62A</key>
-			<input>3CEC25102A51A5A4C26E7391590D54ED</input>
-			<output>505FD54017E89E9FAA6376E399F2FF09<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3DD04C14DB1DE495FA767AB5D6373923</key>
-			<input>505FD54017E89E9FAA6376E399F2FF09</input>
-			<output>1B45550B4E3AB908A2CC72FFFB38701A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2695191F95275D9D58BA084A2D0F4939</key>
-			<input>1B45550B4E3AB908A2CC72FFFB38701A</input>
-			<output>E2469D9D2F91E3AA88DC7970C94E7237<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C4D38482BAB6BE37D066713AE4413B0E</key>
-			<input>E2469D9D2F91E3AA88DC7970C94E7237</input>
-			<output>9352C72F2B5093D1AF52BA959963F59B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>578143AD91E62DE67F34CBAF7D22CE95</key>
-			<input>9352C72F2B5093D1AF52BA959963F59B</input>
-			<output>F26DE32F035B270BA42075574056564E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5ECA08292BD0AEDDB14BEF83D7498DB</key>
-			<input>F26DE32F035B270BA42075574056564E</input>
-			<output>6AC08B3D91FC31A34B3A81F7C300587E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF2C2BBF03413B4E902E3F0FFE74C0A5</key>
-			<input>6AC08B3D91FC31A34B3A81F7C300587E</input>
-			<output>E5E6455304C3B5E2349E2372D6E4B0B8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2ACA6EEC07828EACA4B01C7D2890701D</key>
-			<input>E5E6455304C3B5E2349E2372D6E4B0B8</input>
-			<output>90524F27C63CCA1E4CA9674381786C30<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BA9821CBC1BE44B2E8197B3EA9E81C2D</key>
-			<input>90524F27C63CCA1E4CA9674381786C30</input>
-			<output>44625D68290415039E2C6C05B4954896<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FEFA7CA3E8BA51B17635173B1D7D54BB</key>
-			<input>44625D68290415039E2C6C05B4954896</input>
-			<output>EC401B0D3780FDB4A3952706B07F6CEF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>12BA67AEDF3AAC05D5A0303DAD023854</key>
-			<input>EC401B0D3780FDB4A3952706B07F6CEF</input>
-			<output>DCEDC88021F6FD1C61C08DAABF0E73BA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE57AF2EFECC5119B460BD97120C4BEE</key>
-			<input>DCEDC88021F6FD1C61C08DAABF0E73BA</input>
-			<output>C15C85D8161B97DD61EB8B514CDCFFD5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F0B2AF6E8D7C6C4D58B36C65ED0B43B</key>
-			<input>C15C85D8161B97DD61EB8B514CDCFFD5</input>
-			<output>B68B65E041C84433DEA4D9E15E9F98AB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B9804F16A91F82F70B2FEF27004F2C90</key>
-			<input>B68B65E041C84433DEA4D9E15E9F98AB</input>
-			<output>8122505A5B6F8D985A8D9D7E9E2FF4F3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>38A21F4CF2700F6F51A272599E60D863</key>
-			<input>8122505A5B6F8D985A8D9D7E9E2FF4F3</input>
-			<output>8F72F8FFA71D24C900D2BBE8784B9C48<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B7D0E7B3556D2BA65170C9B1E62B442B</key>
-			<input>8F72F8FFA71D24C900D2BBE8784B9C48</input>
-			<output>1D541D794774264680CF3689365CD845<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AA84FACA12190DE0D1BFFF38D0779C6E</key>
-			<input>1D541D794774264680CF3689365CD845</input>
-			<output>CBAE9336C5C1F038176B5123CC205BF7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>612A69FCD7D8FDD8C6D4AE1B1C57C799</key>
-			<input>CBAE9336C5C1F038176B5123CC205BF7</input>
-			<output>C4CE2DC1BAE3028392BD8A005A360F56<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5E4443D6D3BFF5B5469241B4661C8CF</key>
-			<input>C4CE2DC1BAE3028392BD8A005A360F56</input>
-			<output>549B7075DE975B759A6DAE7D761CDC01<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F17F3448B3ACA42ECE048A66307D14CE</key>
-			<input>549B7075DE975B759A6DAE7D761CDC01</input>
-			<output>2338FFEEE2A391B2DAFD1EBB0ECF19E3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D247CBA6510F359C14F994DD3EB20D2D</key>
-			<input>2338FFEEE2A391B2DAFD1EBB0ECF19E3</input>
-			<output>B27705C512C6849DE6012A490F834F36<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6030CE6343C9B101F2F8BE943131421B</key>
-			<input>B27705C512C6849DE6012A490F834F36</input>
-			<output>33A239E0426921192F8C89C6FBCDD23C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5392F78301A09018DD743752CAFC9027</key>
-			<input>33A239E0426921192F8C89C6FBCDD23C</input>
-			<output>90CCBE46338C7E9FB25409F82BF81234<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C35E49C5322CEE876F203EAAE1048213</key>
-			<input>90CCBE46338C7E9FB25409F82BF81234</input>
-			<output>873D1CAF1F2C2A56BEE419FE8A01489F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4463556A2D00C4D1D1C427546B05CA8C</key>
-			<input>873D1CAF1F2C2A56BEE419FE8A01489F</input>
-			<output>1E9ED35EB85ADD9AB88B6D85299FD8E7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5AFD8634955A194B694F4AD1429A126B</key>
-			<input>1E9ED35EB85ADD9AB88B6D85299FD8E7</input>
-			<output>36871F8BD629B27EEDE04E086FC539C4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6C7A99BF4373AB3584AF04D92D5F2BAF</key>
-			<input>36871F8BD629B27EEDE04E086FC539C4</input>
-			<output>10D10983F98D799235E8142BD67C1FD2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7CAB903CBAFED2A7B14710F2FB23347D</key>
-			<input>10D10983F98D799235E8142BD67C1FD2</input>
-			<output>193CEDEEE0410DE79F1B2FC077B14199<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>65977DD25ABFDF402E5C3F328C9275E4</key>
-			<input>193CEDEEE0410DE79F1B2FC077B14199</input>
-			<output>1EC99AD6EEF155B6B5F61452D2E73A7D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7B5EE704B44E8AF69BAA2B605E754F99</key>
-			<input>1EC99AD6EEF155B6B5F61452D2E73A7D</input>
-			<output>92DA7D1858210C87B32C6FEA1CC6A0E6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E9849A1CEC6F86712886448A42B3EF7F</key>
-			<input>92DA7D1858210C87B32C6FEA1CC6A0E6</input>
-			<output>A06C4ACCA35DE95CFAD365349969271D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>49E8D0D04F326F2DD25521BEDBDAC862</key>
-			<input>A06C4ACCA35DE95CFAD365349969271D</input>
-			<output>4B892CB63A35A3DED0F43BA4309CBB2E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0261FC667507CCF302A11A1AEB46734C</key>
-			<input>4B892CB63A35A3DED0F43BA4309CBB2E</input>
-			<output>E05F73446706A68A5099088279B58064<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E23E8F2212016A795238129892F3F328</key>
-			<input>E05F73446706A68A5099088279B58064</input>
-			<output>542D8314299AF433EC549EBFFCF2B3D9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B6130C363B9B9E4ABE6C8C276E0140F1</key>
-			<input>542D8314299AF433EC549EBFFCF2B3D9</input>
-			<output>4935A91590E8A70D9F75489F6D5B70E7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF26A523AB7339472119C4B8035A3016</key>
-			<input>4935A91590E8A70D9F75489F6D5B70E7</input>
-			<output>C3A4940C6EC7D0E2F11C3CF60AB2C31D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C82312FC5B4E9A5D005F84E09E8F30B</key>
-			<input>C3A4940C6EC7D0E2F11C3CF60AB2C31D</input>
-			<output>F109AC488D917B5FC28BA28C9720A46F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CD8B9D67482592FA128E5AC29EC85764</key>
-			<input>F109AC488D917B5FC28BA28C9720A46F</input>
-			<output>65234934641FA21D8C3A3804D09208F3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A8A8D4532C3A30E79EB462C64E5A5F97</key>
-			<input>65234934641FA21D8C3A3804D09208F3</input>
-			<output>DE015A71CB9C9A3B11C2C9B744B6B5ED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>76A98E22E7A6AADC8F76AB710AECEA7A</key>
-			<input>DE015A71CB9C9A3B11C2C9B744B6B5ED</input>
-			<output>973D0C12D7826B45CC7824EF09D82BAB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E19482303024C199430E8F9E0334C1D1</key>
-			<input>973D0C12D7826B45CC7824EF09D82BAB</input>
-			<output>EBD2D23B9D08F63385A0D21FF76FAC33<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0A46500BAD2C37AAC6AE5D81F45B6DE2</key>
-			<input>EBD2D23B9D08F63385A0D21FF76FAC33</input>
-			<output>A7A460A555E4C4E53457AE00FC0D9BA8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>ADE230AEF8C8F34FF2F9F3810856F64A</key>
-			<input>A7A460A555E4C4E53457AE00FC0D9BA8</input>
-			<output>56F0329103B5238E03C781E2AB0E7A2D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FB12023FFB7DD0C1F13E7263A3588C67</key>
-			<input>56F0329103B5238E03C781E2AB0E7A2D</input>
-			<output>0D5710472E980CF439109BAC3EAB19A8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F6451278D5E5DC35C82EE9CF9DF395CF</key>
-			<input>0D5710472E980CF439109BAC3EAB19A8</input>
-			<output>063CB786AD88ECADC4EAC8FE39A84286<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F079A5FE786D30980CC42131A45BD749</key>
-			<input>063CB786AD88ECADC4EAC8FE39A84286</input>
-			<output>825BD1E57F0E16D744C2A69233C8654B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7222741B0763264F480687A39793B202</key>
-			<input>825BD1E57F0E16D744C2A69233C8654B</input>
-			<output>8EA54322F26DC051F831A5CBBD07A73C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FC873739F50EE61EB03722682A94153E</key>
-			<input>8EA54322F26DC051F831A5CBBD07A73C</input>
-			<output>803F3194726F4D5C5BD80D12D1284F0A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7CB806AD8761AB42EBEF2F7AFBBC5A34</key>
-			<input>803F3194726F4D5C5BD80D12D1284F0A</input>
-			<output>5A1D90E682989AB1A84F01422CE69F82<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>26A5964B05F931F343A02E38D75AC5B6</key>
-			<input>5A1D90E682989AB1A84F01422CE69F82</input>
-			<output>3F5AFCD41950EEFBC3D7CEF744F0C060<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>19FF6A9F1CA9DF088077E0CF93AA05D6</key>
-			<input>3F5AFCD41950EEFBC3D7CEF744F0C060</input>
-			<output>2EE3691BD58D7645DA91CD4943F10157<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>371C0384C924A94D5AE62D86D05B0481</key>
-			<input>2EE3691BD58D7645DA91CD4943F10157</input>
-			<output>BEF4B188364E87A9E49855CC68C02A50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>89E8B20CFF6A2EE4BE7E784AB89B2ED1</key>
-			<input>BEF4B188364E87A9E49855CC68C02A50</input>
-			<output>2263387A7A52AB73704774D07EA5AA69<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AB8B8A7685388597CE390C9AC63E84B8</key>
-			<input>2263387A7A52AB73704774D07EA5AA69</input>
-			<output>84E68DA3E9D999016D0B734DAE8C128B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F6D07D56CE11C96A3327FD768B29633</key>
-			<input>84E68DA3E9D999016D0B734DAE8C128B</input>
-			<output>978F5F49D7BA1189F16FC0635231DF5F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B8E2589CBB5B0D1F525DBFB43A83496C</key>
-			<input>978F5F49D7BA1189F16FC0635231DF5F</input>
-			<output>FE59B2F2BDE0AB5E1700A1771EDF8663<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>46BBEA6E06BBA641455D1EC3245CCF0F</key>
-			<input>FE59B2F2BDE0AB5E1700A1771EDF8663</input>
-			<output>A94B982DC50C338E25ABFB4113F904A8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EFF07243C3B795CF60F6E58237A5CBA7</key>
-			<input>A94B982DC50C338E25ABFB4113F904A8</input>
-			<output>79A5BB282D8247192AC9F8A3DB431EA1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9655C96BEE35D2D64A3F1D21ECE6D506</key>
-			<input>79A5BB282D8247192AC9F8A3DB431EA1</input>
-			<output>FC339DA0D4593CD79D407CD6F1E1E7ED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6A6654CB3A6CEE01D77F61F71D0732EB</key>
-			<input>FC339DA0D4593CD79D407CD6F1E1E7ED</input>
-			<output>08EAB51652B85C6E9BC07B718E57E144<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>628CE1DD68D4B26F4CBF1A869350D3AF</key>
-			<input>08EAB51652B85C6E9BC07B718E57E144</input>
-			<output>9EA63934609F947AAA926443D0D5BEFA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FC2AD8E9084B2615E62D7EC543856D55</key>
-			<input>9EA63934609F947AAA926443D0D5BEFA</input>
-			<output>7FE121C45E158FF1F527BAFDDBEAE223<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>83CBF92D565EA9E4130AC438986F8F76</key>
-			<input>7FE121C45E158FF1F527BAFDDBEAE223</input>
-			<output>B1B70D5AD08BE5DCB8126D8700F25969<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>327CF47786D54C38AB18A9BF989DD61F</key>
-			<input>B1B70D5AD08BE5DCB8126D8700F25969</input>
-			<output>389812FA2D4A6419380A2AC8961CCDA6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0AE4E68DAB9F2821931283770E811BB9</key>
-			<input>389812FA2D4A6419380A2AC8961CCDA6</input>
-			<output>CEF20323EE53A2BA576F4DF86A7AC078<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C416E5AE45CC8A9BC47DCE8F64FBDBC1</key>
-			<input>CEF20323EE53A2BA576F4DF86A7AC078</input>
-			<output>A65611BF1901C940B883D746F1694278<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6240F4115CCD43DB7CFE19C9959299B9</key>
-			<input>A65611BF1901C940B883D746F1694278</input>
-			<output>7E43C2A99D11C656351B96CECD400E75<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1C0336B8C1DC858D49E58F0758D297CC</key>
-			<input>7E43C2A99D11C656351B96CECD400E75</input>
-			<output>7DE74D06851AD329C60DD1934C34CBE4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>61E47BBE44C656A48FE85E9414E65C28</key>
-			<input>7DE74D06851AD329C60DD1934C34CBE4</input>
-			<output>A99B66FE5825C895DCC6BE718AB8BE34<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C87F1D401CE39E31532EE0E59E5EE21C</key>
-			<input>A99B66FE5825C895DCC6BE718AB8BE34</input>
-			<output>4752E30DDA44BA393EF197270C111AB7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8F2DFE4DC6A724086DDF77C2924FF8AB</key>
-			<input>4752E30DDA44BA393EF197270C111AB7</input>
-			<output>5A3FC324D12AC30FE5BBE87FC4B655F0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D5123D69178DE70788649FBD56F9AD5B</key>
-			<input>5A3FC324D12AC30FE5BBE87FC4B655F0</input>
-			<output>79061587E9D9FEEF52F753AE9BCDC4B1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AC1428EEFE5419E8DA93CC13CD3469EA</key>
-			<input>79061587E9D9FEEF52F753AE9BCDC4B1</input>
-			<output>86C32E69874EAA0D103581199AFA813A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2AD70687791AB3E5CAA64D0A57CEE8D0</key>
-			<input>86C32E69874EAA0D103581199AFA813A</input>
-			<output>82A924A5928570E29D18DE200F8558DD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A87E2222EB9FC30757BE932A584BB00D</key>
-			<input>82A924A5928570E29D18DE200F8558DD</input>
-			<output>2D3E0ECCC1FEA93736BD205A5217D830<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>85402CEE2A616A306103B3700A5C683D</key>
-			<input>2D3E0ECCC1FEA93736BD205A5217D830</input>
-			<output>52FA0FCF771191A4A4C4E48C7B11DC1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D7BA23215D70FB94C5C757FC714DB422</key>
-			<input>52FA0FCF771191A4A4C4E48C7B11DC1F</input>
-			<output>C2A47519AACA187B97C884D20ED1D825<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>151E5638F7BAE3EF520FD32E7F9C6C07</key>
-			<input>C2A47519AACA187B97C884D20ED1D825</input>
-			<output>66F1D0799F3C473978C189F745695293<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>73EF86416886A4D62ACE5AD93AF53E94</key>
-			<input>66F1D0799F3C473978C189F745695293</input>
-			<output>803361A1428EAC3E134B0726E5CF0754<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F3DCE7E02A0808E839855DFFDF3A39C0</key>
-			<input>803361A1428EAC3E134B0726E5CF0754</input>
-			<output>2CC85CEDEE03D7AB279D766D3F2BADF4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DF14BB0DC40BDF431E182B92E0119434</key>
-			<input>2CC85CEDEE03D7AB279D766D3F2BADF4</input>
-			<output>706626C1CE6731DD4DBA263C4D7EAB67<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AF729DCC0A6CEE9E53A20DAEAD6F3F53</key>
-			<input>706626C1CE6731DD4DBA263C4D7EAB67</input>
-			<output>BD7A59659E3774B85465C91740017628<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1208C4A9945B9A2607C7C4B9ED6E497B</key>
-			<input>BD7A59659E3774B85465C91740017628</input>
-			<output>F1778330059467556D08223682EC32AA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E37F479991CFFD736ACFE68F6F827BD1</key>
-			<input>F1778330059467556D08223682EC32AA</input>
-			<output>7B3C6979DCEE500E3FBB2CF4E17B0A3B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>98432EE04D21AD7D5574CA7B8EF971EA</key>
-			<input>7B3C6979DCEE500E3FBB2CF4E17B0A3B</input>
-			<output>AFEBC6E81B90C3D82ECE26D788AB2412<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>37A8E80856B16EA57BBAECAC065255F8</key>
-			<input>AFEBC6E81B90C3D82ECE26D788AB2412</input>
-			<output>E4087042AB32B9C43128AADACB4F7FA6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3A0984AFD83D7614A924676CD1D2A5E</key>
-			<input>E4087042AB32B9C43128AADACB4F7FA6</input>
-			<output>07E1230BC456A3DCE7DF8A4EF7265BC8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D441BB4139D574BDAD4DCC383A3B7196</key>
-			<input>07E1230BC456A3DCE7DF8A4EF7265BC8</input>
-			<output>88F0C30172B9A0EA8CD657CE6847AC94<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5CB178404B6CD457219B9BF6527CDD02</key>
-			<input>88F0C30172B9A0EA8CD657CE6847AC94</input>
-			<output>710FE26B2DAB5A12D147D6446732B272<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2DBE9A2B66C78E45F0DC4DB2354E6F70</key>
-			<input>710FE26B2DAB5A12D147D6446732B272</input>
-			<output>9C30630A9ADF9B4EBF099452AB75D14A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B18EF921FC18150B4FD5D9E09E3BBE3A</key>
-			<input>9C30630A9ADF9B4EBF099452AB75D14A</input>
-			<output>77526DA4D9AE9FD4347AAC10EA4728AA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C6DC948525B68ADF7BAF75F0747C9690</key>
-			<input>77526DA4D9AE9FD4347AAC10EA4728AA</input>
-			<output>A9EDBD1A190BC67AC91D27BB7F5A1BD1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6F31299F3CBD4CA5B2B2524B0B268D41</key>
-			<input>A9EDBD1A190BC67AC91D27BB7F5A1BD1</input>
-			<output>B8700A2BAEABCB0C67251C26F82ACEF7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D74123B4921687A9D5974E6DF30C43B6</key>
-			<input>B8700A2BAEABCB0C67251C26F82ACEF7</input>
-			<output>FF5F30BA14A8C49276B040B00864BE29<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>281E130E86BE433BA3270EDDFB68FD9F</key>
-			<input>FF5F30BA14A8C49276B040B00864BE29</input>
-			<output>B448E87BE1E1A41FF94353F6018929C8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9C56FB75675FE7245A645D2BFAE1D457</key>
-			<input>B448E87BE1E1A41FF94353F6018929C8</input>
-			<output>9F59D422CB9265C17732E0B16DEF352A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>030F2F57ACCD82E52D56BD9A970EE17D</key>
-			<input>9F59D422CB9265C17732E0B16DEF352A</input>
-			<output>06FD7DB54E62FAC3C511F4DE5C1E93B9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>05F252E2E2AF7826E8474944CB1072C4</key>
-			<input>06FD7DB54E62FAC3C511F4DE5C1E93B9</input>
-			<output>0DDA3E4AD600F8D3EA6B06AE465DF3BC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>08286CA834AF80F5022C4FEA8D4D8178</key>
-			<input>0DDA3E4AD600F8D3EA6B06AE465DF3BC</input>
-			<output>17305FA95D26FB72995165DA8A07FCDF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1F18330169897B879B7D2A30074A7DA7</key>
-			<input>17305FA95D26FB72995165DA8A07FCDF</input>
-			<output>12B56FEBEE2773A2258FC6E0F9115728<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0DAD5CEA87AE0825BEF2ECD0FE5B2A8F</key>
-			<input>12B56FEBEE2773A2258FC6E0F9115728</input>
-			<output>36440D1A561E8F77B89DF6EA3D8EC7F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3BE951F0D1B08752066F1A3AC3D5ED7A</key>
-			<input>36440D1A561E8F77B89DF6EA3D8EC7F5</input>
-			<output>752C4D620413C0F4A313CF37EB34CFDD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4EC51C92D5A347A6A57CD50D28E122A7</key>
-			<input>752C4D620413C0F4A313CF37EB34CFDD</input>
-			<output>B2A282D0B6A9EB8B7B7C962675AEC843<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FC679E42630AAC2DDE00432B5D4FEAE4</key>
-			<input>B2A282D0B6A9EB8B7B7C962675AEC843</input>
-			<output>D0C3D785B5507C1460DDC44B123ED5FE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2CA449C7D65AD039BEDD87604F713F1A</key>
-			<input>D0C3D785B5507C1460DDC44B123ED5FE</input>
-			<output>4DAE52B77F8001CBAB8D1949E73DD578<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>610A1B70A9DAD1F215509E29A84CEA62</key>
-			<input>4DAE52B77F8001CBAB8D1949E73DD578</input>
-			<output>29AA82197E8158D88FFFE5BEAFC0C967<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>48A09969D75B892A9AAF7B97078C2305</key>
-			<input>29AA82197E8158D88FFFE5BEAFC0C967</input>
-			<output>58C665AA97945F7D3AA23BE8B8DDA20D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1066FCC340CFD657A00D407FBF518108</key>
-			<input>58C665AA97945F7D3AA23BE8B8DDA20D</input>
-			<output>5A104A7093DB3308EB4009829B5E26B1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4A76B6B3D314E55F4B4D49FD240FA7B9</key>
-			<input>5A104A7093DB3308EB4009829B5E26B1</input>
-			<output>8C8EA0BEE4640F6BB6D906A7A6EA3810<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C6F8160D3770EA34FD944F5A82E59FA9</key>
-			<input>8C8EA0BEE4640F6BB6D906A7A6EA3810</input>
-			<output>1517ED0B6D4EC3B85479AB28DF48BFDB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3EFFB065A3E298CA9EDE4725DAD2072</key>
-			<input>1517ED0B6D4EC3B85479AB28DF48BFDB</input>
-			<output>9546CCBB8094E65E464C38E0809552E3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>46A937BDDAAACFD2EFA1DC92DD387291</key>
-			<input>9546CCBB8094E65E464C38E0809552E3</input>
-			<output>7D5AD8DEDB92F80D2B28C3458843AE84<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3BF3EF63013837DFC4891FD7557BDC15</key>
-			<input>7D5AD8DEDB92F80D2B28C3458843AE84</input>
-			<output>E62676E27ED61D0FD7DFE170E0938361<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DDD599817FEE2AD01356FEA7B5E85F74</key>
-			<input>E62676E27ED61D0FD7DFE170E0938361</input>
-			<output>DA9865198B9463681C66FB96C2C1DAA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>074DFC98F47A49B80F300531772985D1</key>
-			<input>DA9865198B9463681C66FB96C2C1DAA5</input>
-			<output>62CD9DAA9487F34AF168E6E20A0684CF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6580613260FDBAF2FE58E3D37D2F011E</key>
-			<input>62CD9DAA9487F34AF168E6E20A0684CF</input>
-			<output>10BA978FDABA586691946145BE246D3C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>753AF6BDBA47E2946FCC8296C30B6C22</key>
-			<input>10BA978FDABA586691946145BE246D3C</input>
-			<output>13443CF524213B08776D7F5169B79C0F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>667ECA489E66D99C18A1FDC7AABCF02D</key>
-			<input>13443CF524213B08776D7F5169B79C0F</input>
-			<output>6507336876ED4F6DB3E35D6CF5A89A2B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0379F920E88B96F1AB42A0AB5F146A06</key>
-			<input>6507336876ED4F6DB3E35D6CF5A89A2B</input>
-			<output>B84902B5CBBC6DB8111CA45BC5F99991<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB30FB952337FB49BA5E04F09AEDF397</key>
-			<input>B84902B5CBBC6DB8111CA45BC5F99991</input>
-			<output>20973140A999B8AD9982B9B706F7C32E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9BA7CAD58AAE43E423DCBD479C1A30B9</key>
-			<input>20973140A999B8AD9982B9B706F7C32E</input>
-			<output>EE7FF1177C5E080AA03854A2A819565E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>75D83BC2F6F04BEE83E4E9E5340366E7</key>
-			<input>EE7FF1177C5E080AA03854A2A819565E</input>
-			<output>7A4F74EC2181269AC17D0E48A4DA2A88<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F974F2ED7716D744299E7AD90D94C6F</key>
-			<input>7A4F74EC2181269AC17D0E48A4DA2A88</input>
-			<output>5B7A7751F0FD91E203A14CE518838DD7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>54ED387F278CFC964138AB48885AC1B8</key>
-			<input>5B7A7751F0FD91E203A14CE518838DD7</input>
-			<output>71319FDDBACB038354A37A41F1910F94<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>25DCA7A29D47FF15159BD10979CBCE2C</key>
-			<input>71319FDDBACB038354A37A41F1910F94</input>
-			<output>81AC58FD503FC3AA78199168AE2C9085<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A470FF5FCD783CBF6D824061D7E75EA9</key>
-			<input>81AC58FD503FC3AA78199168AE2C9085</input>
-			<output>1F668F512038142C1155B950B0B040EC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB16700EED4028937CD7F93167571E45</key>
-			<input>1F668F512038142C1155B950B0B040EC</input>
-			<output>6B27D7791E9B14A5AC3D9582DBDBD929<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D031A777F3DB3C36D0EA6CB3BC8CC76C</key>
-			<input>6B27D7791E9B14A5AC3D9582DBDBD929</input>
-			<output>9B7151FDC4E135EE93DAB2D9EB74D59C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4B40F68A373A09D84330DE6A57F812F0</key>
-			<input>9B7151FDC4E135EE93DAB2D9EB74D59C</input>
-			<output>1F199945BCFA624B1AD3DCBBD95291B2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>54596FCF8BC06B9359E302D18EAA8342</key>
-			<input>1F199945BCFA624B1AD3DCBBD95291B2</input>
-			<output>E2C82FA8FE98F26283A6E0B75D0A58C6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B6914067755899F1DA45E266D3A0DB84</key>
-			<input>E2C82FA8FE98F26283A6E0B75D0A58C6</input>
-			<output>5A240FFB99C3594C273B51CACF01B28B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>ECB54F9CEC9BC0BDFD7EB3AC1CA1690F</key>
-			<input>5A240FFB99C3594C273B51CACF01B28B</input>
-			<output>D01847391534848FB102CA85C97749B1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3CAD08A5F9AF44324C7C7929D5D620BE</key>
-			<input>D01847391534848FB102CA85C97749B1</input>
-			<output>DC5CF60EBDF4A8DDDDF997E7ACA67515<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E0F1FEAB445BECEF9185EECE797055AB</key>
-			<input>DC5CF60EBDF4A8DDDDF997E7ACA67515</input>
-			<output>749E3815FE305B307D9F4DB6A7E4658C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>946FC6BEBA6BB7DFEC1AA378DE943027</key>
-			<input>749E3815FE305B307D9F4DB6A7E4658C</input>
-			<output>8152C1E676A4FC8B0CD093FEB4B51615<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>153D0758CCCF4B54E0CA30866A212632</key>
-			<input>8152C1E676A4FC8B0CD093FEB4B51615</input>
-			<output>0847044668710F6E5C93DD248AC921BA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1D7A031EA4BE443ABC59EDA2E0E80788</key>
-			<input>0847044668710F6E5C93DD248AC921BA</input>
-			<output>1D6C3EFB413A59AB40F34CEFBFF25C17<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>00163DE5E5841D91FCAAA14D5F1A5B9F</key>
-			<input>1D6C3EFB413A59AB40F34CEFBFF25C17</input>
-			<output>5D7C206A79D61868FFE7AA28044996D3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5D6A1D8F9C5205F9034D0B655B53CD4C</key>
-			<input>5D7C206A79D61868FFE7AA28044996D3</input>
-			<output>78B4DE3B84D5D1010245CA3077A41BAC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>25DEC3B41887D4F80108C1552CF7D6E0</key>
-			<input>78B4DE3B84D5D1010245CA3077A41BAC</input>
-			<output>9E003AACEDECDBB077BDE832465F40C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BBDEF918F56B0F4876B529676AA89627</key>
-			<input>9E003AACEDECDBB077BDE832465F40C7</input>
-			<output>EEFF9E6C73E6DC5432AA446385AA1499<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>55216774868DD31C441F6D04EF0282BE</key>
-			<input>EEFF9E6C73E6DC5432AA446385AA1499</input>
-			<output>03252A19E37D9F040C56E4D712982798<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>56044D6D65F04C18484989D3FD9AA526</key>
-			<input>03252A19E37D9F040C56E4D712982798</input>
-			<output>CF59A752BA0E14BE23AFD09437B39C65<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>995DEA3FDFFE58A66BE65947CA293943</key>
-			<input>CF59A752BA0E14BE23AFD09437B39C65</input>
-			<output>8B08FB7974A77167DFB234F57C8DFFE1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>12551146AB5929C1B4546DB2B6A4C6A2</key>
-			<input>8B08FB7974A77167DFB234F57C8DFFE1</input>
-			<output>DD2A93C1106CFDAE4A1684EE02C82FE2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF7F8287BB35D46FFE42E95CB46CE940</key>
-			<input>DD2A93C1106CFDAE4A1684EE02C82FE2</input>
-			<output>38696128584F60636354E9F802590391<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F716E3AFE37AB40C9D1600A4B635EAD1</key>
-			<input>38696128584F60636354E9F802590391</input>
-			<output>7E552E3AD28729F642D590E3C289D598<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8943CD9531FD9DFADFC3904774BC3F49</key>
-			<input>7E552E3AD28729F642D590E3C289D598</input>
-			<output>17A40392AA00D7B5A6E9F59007E60C22<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9EE7CE079BFD4A4F792A65D7735A336B</key>
-			<input>17A40392AA00D7B5A6E9F59007E60C22</input>
-			<output>A048D6755C2AD24DD8833DDCEB145BA6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3EAF1872C7D79802A1A9580B984E68CD</key>
-			<input>A048D6755C2AD24DD8833DDCEB145BA6</input>
-			<output>2F1CCE852396986EC4B2852E5F684CD2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>11B3D6F7E441006C651BDD25C726241F</key>
-			<input>2F1CCE852396986EC4B2852E5F684CD2</input>
-			<output>2C28BD1E98DA63B95C0C81202BBCFE39<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3D9B6BE97C9B63D539175C05EC9ADA26</key>
-			<input>2C28BD1E98DA63B95C0C81202BBCFE39</input>
-			<output>6AE097A8E685B58BA2309B59D6A9EB2B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>577BFC419A1ED65E9B27C75C3A33310D</key>
-			<input>6AE097A8E685B58BA2309B59D6A9EB2B</input>
-			<output>6EFC01751753999843A9BB6749097E0C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3987FD348D4D4FC6D88E7C3B733A4F01</key>
-			<input>6EFC01751753999843A9BB6749097E0C</input>
-			<output>6B6B75F78016052E4F89C73EA826D2F2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>52EC88C30D5B4AE89707BB05DB1C9DF3</key>
-			<input>6B6B75F78016052E4F89C73EA826D2F2</input>
-			<output>1E9890E8F0AABCBFB8C4EDAEA0F563EF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4C74182BFDF1F6572FC356AB7BE9FE1C</key>
-			<input>1E9890E8F0AABCBFB8C4EDAEA0F563EF</input>
-			<output>143ED9FE6FD7DFB822C31DE8A3E868A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>584AC1D5922629EF0D004B43D80196B5</key>
-			<input>143ED9FE6FD7DFB822C31DE8A3E868A9</input>
-			<output>9C2834AA5C95F2874DC6B267C0469E14<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C462F57FCEB3DB6840C6F924184708A1</key>
-			<input>9C2834AA5C95F2874DC6B267C0469E14</input>
-			<output>0720377F673352693EE2EF76D4FCFB0F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C342C200A98089017E241652CCBBF3AE</key>
-			<input>0720377F673352693EE2EF76D4FCFB0F</input>
-			<output>E83ED303F4B0ABF675C7BBC470B924FE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2B7C11035D3022F70BE3AD96BC02D750</key>
-			<input>E83ED303F4B0ABF675C7BBC470B924FE</input>
-			<output>D87ADD68CBCAEA46DFFF99AE3723BC94<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F306CC6B96FAC8B1D41C34388B216BC4</key>
-			<input>D87ADD68CBCAEA46DFFF99AE3723BC94</input>
-			<output>2C290AE7C65B6E5BBAA32DE577DBA343<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DF2FC68C50A1A6EA6EBF19DDFCFAC887</key>
-			<input>2C290AE7C65B6E5BBAA32DE577DBA343</input>
-			<output>A04377ABE259B0D0B5BA2D40A501971B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB192.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6400 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo ENC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>F3F6752AE8D7831138F041560631B114<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AAFE47EE82411A2BF3F6752AE8D7831138F041560631B114</key>
-			<input>F3F6752AE8D7831138F041560631B114</input>
-			<output>77BA00ED5412DFF27C8ED91F3C376172<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A92B07597B52873C844C75C7BCC55CE3447E98493A06D066</key>
-			<input>77BA00ED5412DFF27C8ED91F3C376172</input>
-			<output>2D92DE893574463412BD7D121A94952F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5FD632DA76165EDBA9DEAB4E89B11AD756C3E55B20924549</key>
-			<input>2D92DE893574463412BD7D121A94952F</input>
-			<output>96650F835912F5E748422727802C6CE1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>984A4BEC5D3474103FBBA4CDD0A3EF301E81C27CA0BE29A8</key>
-			<input>96650F835912F5E748422727802C6CE1</input>
-			<output>5FCCD4B5F125ADC5B85A56DB32283732<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6B7EDEEAC755885F60777078218642F5A6DB94A792961E9A</key>
-			<input>5FCCD4B5F125ADC5B85A56DB32283732</input>
-			<output>EA5B1DAE2E4F9FD254A2CC28E128EB9B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CA5585D8C9727F208A2C6DD60FC9DD27F279588F73BEF501</key>
-			<input>EA5B1DAE2E4F9FD254A2CC28E128EB9B</input>
-			<output>BB87C0FF5DB4B2A593B93398407F823A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BADA7C0D4A0CDD4631ABAD29527D6F8261C06B1733C1773B</key>
-			<input>BB87C0FF5DB4B2A593B93398407F823A</input>
-			<output>D5AF7D56281F86E3E079BE6B9465DBB4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF98AB620A203FFCE404D07F7A62E96181B9D57CA7A4AC8F</key>
-			<input>D5AF7D56281F86E3E079BE6B9465DBB4</input>
-			<output>511331CCA62B067CAC47475800EE33CD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1186A7F46656EA07B517E1B3DC49EF1D2DFE9224A74A9F42</key>
-			<input>511331CCA62B067CAC47475800EE33CD</input>
-			<output>64ACDC3579D7871644DD585C582AF3A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>313ADFF9712EABE4D1BB3D86A59E680B6923CA78FF606CE0</key>
-			<input>64ACDC3579D7871644DD585C582AF3A2</input>
-			<output>EA3C45FB8A6E548DAB14BAE07966246C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DDABAC02BE6C40493B87787D2FF03C86C23770988606488C</key>
-			<input>EA3C45FB8A6E548DAB14BAE07966246C</input>
-			<output>6BC276C465C9ADBE900049A5B58D2DCB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9A9F7E267C2BFCD150450EB94A3991385237393D338B6547</key>
-			<input>6BC276C465C9ADBE900049A5B58D2DCB</input>
-			<output>E2F0FFA8D6DF327CA0FB80A325B21931<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>80246B9FB6224226B2B5F1119CE6A344F2CCB99E16397C76</key>
-			<input>E2F0FFA8D6DF327CA0FB80A325B21931</input>
-			<output>ACEE4C9B8A00A7760DD9CD2F6C6DFA8C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>60CDC3E8265B71E81E5BBD8A16E60432FF1574B17A5486FA</key>
-			<input>ACEE4C9B8A00A7760DD9CD2F6C6DFA8C</input>
-			<output>9579E43690FD2800FED810F7442D366B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9DEC584DB87D63F48B2259BC861B2C3201CD64463E79B091</key>
-			<input>9579E43690FD2800FED810F7442D366B</input>
-			<output>72D4D064851A050D415FC94E3FBB6A1C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BBC1ED636907611EF9F689D80301293F4092AD0801C2DA8D</key>
-			<input>72D4D064851A050D415FC94E3FBB6A1C</input>
-			<output>0CCC3B9B35CE3584D7B78C14905BEE55<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AE398529289F7994F53AB24336CF1CBB9725211C919934D8</key>
-			<input>0CCC3B9B35CE3584D7B78C14905BEE55</input>
-			<output>66B6A61BF7BCC6392B8FEC12152E5363<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4617E60BD8AF29D5938C1458C173DA82BCAACD0E84B767BB</key>
-			<input>66B6A61BF7BCC6392B8FEC12152E5363</input>
-			<output>6C2247EA3BC566A84A30BF0B30AB4EEC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6B762D1391AA17CBFFAE53B2FAB6BC2AF69A7205B41C2957</key>
-			<input>6C2247EA3BC566A84A30BF0B30AB4EEC</input>
-			<output>C16FBCDFAE34E839BA449D697452550D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>374499A8C09A60DA3EC1EF6D548254134CDEEF6CC04E7C5A</key>
-			<input>C16FBCDFAE34E839BA449D697452550D</input>
-			<output>C8B704B4AFE68AF5C91A810F2873F13F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>09DCC638DD59F37CF676EBD9FB64DEE685C46E63E83D8D65</key>
-			<input>C8B704B4AFE68AF5C91A810F2873F13F</input>
-			<output>FC9C31036B26234ED1CBA46E0BE944EE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE2CEB8869D7EC160AEADADA9042FDA8540FCA0DE3D4C98B</key>
-			<input>FC9C31036B26234ED1CBA46E0BE944EE</input>
-			<output>DCF13203AD179CD008779F189EBC78F0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>505FBECF6B0B083CD61BE8D93D5561785C7855157D68B17B</key>
-			<input>DCF13203AD179CD008779F189EBC78F0</input>
-			<output>24AEB937E259D44D352FF39C1A8A79E0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1D1649FDB7484DD2F2B551EEDF0CB5356957A68967E2C89B</key>
-			<input>24AEB937E259D44D352FF39C1A8A79E0</input>
-			<output>19016D033872CB7694A712A84DBC43F2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9BE41771C0F74BDEEBB43CEDE77E7E43FDF0B4212A5E8B69</key>
-			<input>19016D033872CB7694A712A84DBC43F2</input>
-			<output>0536107FEA26AB6A4FE2667EF7FCF16A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF3619AED9A1F724EE822C920D58D529B212D25FDDA27A03</key>
-			<input>0536107FEA26AB6A4FE2667EF7FCF16A</input>
-			<output>5D35213390FCA53AD422DC2ED4BF674D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>59D2F5AF4BB6F28BB3B70DA19DA4701366300E71091D1D4E</key>
-			<input>5D35213390FCA53AD422DC2ED4BF674D</input>
-			<output>04A6F9B1AE64AD03659C4E375A690852<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C8384D35CAF0074EB711F41033C0DD1003AC40465374151C</key>
-			<input>04A6F9B1AE64AD03659C4E375A690852</input>
-			<output>18AB347EFC2F8F93655E16732BB509DE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>910CE58F963B684EAFBAC06ECFEF528366F2563578C11CC2</key>
-			<input>18AB347EFC2F8F93655E16732BB509DE</input>
-			<output>F6037C06C71793BD14A4FC89A05D918F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5D1EF94FBA1E098459B9BC6808F8C13E7256AABCD89C8D4D</key>
-			<input>F6037C06C71793BD14A4FC89A05D918F</input>
-			<output>75094DD9B2FDDAC96B49CAB676057288<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>61FDA8DA3EF8949C2CB0F1B1BA051BF7191F600AAE99FFC5</key>
-			<input>75094DD9B2FDDAC96B49CAB676057288</input>
-			<output>346F9F9E70C05B53DCDAF736FE59749D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5C383CCC2DCAE66A18DF6E2FCAC540A4C5C5973C50C08B58</key>
-			<input>346F9F9E70C05B53DCDAF736FE59749D</input>
-			<output>1DB82CC8EF5B736AAEFD1F1B9CE5B67D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1EC7FDBB8AE4FF05056742E7259E33CE6B388827CC253D25</key>
-			<input>1DB82CC8EF5B736AAEFD1F1B9CE5B67D</input>
-			<output>31B5E80D946AE577268973AF865151EB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FFE21FDAB07E755034D2AAEAB1F4D6B94DB1FB884A746CCE</key>
-			<input>31B5E80D946AE577268973AF865151EB</input>
-			<output>9FD63EB3EC6A15FC149A4F058EDA7080<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7EC4053A63B2353BAB0494595D9EC345592BB48DC4AE1C4E</key>
-			<input>9FD63EB3EC6A15FC149A4F058EDA7080</input>
-			<output>41730A9E9D197435AC36902C57B16588<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FB6D2FAFD47FE8D1EA779EC7C087B770F51D24A1931F79C6</key>
-			<input>41730A9E9D197435AC36902C57B16588</input>
-			<output>08AD282171F0772F85C0A43E8BACEC74<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9531B1BBE0863D44E2DAB6E6B177C05F70DD809F18B395B2</key>
-			<input>08AD282171F0772F85C0A43E8BACEC74</input>
-			<output>8561E508FA237E4170CECD3A8352CFA4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0AB0CF2D1CA2957A67BB53EE4B54BE1E00134DA59BE15A16</key>
-			<input>8561E508FA237E4170CECD3A8352CFA4</input>
-			<output>4470EFA3C3172EBF64A064F59AE364A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>291FD5C38E400CFA23CBBC4D884390A164B3295001023EBF</key>
-			<input>4470EFA3C3172EBF64A064F59AE364A9</input>
-			<output>FCC5636DFE9E45CB7761DD14A1CF4773<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>114E4DEF0447E1D5DF0EDF2076DDD56A13D2F444A0CD79CC</key>
-			<input>FCC5636DFE9E45CB7761DD14A1CF4773</input>
-			<output>2130BA8736D4933678C3B536AEDBC500<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0C19F74860652278FE3E65A74009465C6B1141720E16BCCC</key>
-			<input>2130BA8736D4933678C3B536AEDBC500</input>
-			<output>1725EECBA8F9A542E9956168390C82C2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EF9E7E57576D8A3EE91B8B6CE8F0E31E8284201A371A3E0E</key>
-			<input>1725EECBA8F9A542E9956168390C82C2</input>
-			<output>60912D3EEDC962D68A29AED73DDAA24D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE6464925302B9F4898AA652053981C808AD8ECD0AC09C43</key>
-			<input>60912D3EEDC962D68A29AED73DDAA24D</input>
-			<output>43A8B490BBC75DC8D2D2F060C8672E9E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8657F15C75C74469CA2212C2BEFEDC00DA7F7EADC2A7B2DD</key>
-			<input>43A8B490BBC75DC8D2D2F060C8672E9E</input>
-			<output>67D856AF692A4BA7DEC7C8C14A37BD50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2D566517DCC2D4EBADFA446DD7D497A704B8B66C88900F8D</key>
-			<input>67D856AF692A4BA7DEC7C8C14A37BD50</input>
-			<output>293C5A05F31E863C6CA26DB8018751CA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>826DFA3FD5229B9B84C61E6824CA119B681ADBD489175E47</key>
-			<input>293C5A05F31E863C6CA26DB8018751CA</input>
-			<output>9421BF2E7727F49C252D644B952C76C4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5A13E0D1C01D7CF10E7A14653EDE5074D37BF9F1C3B2883</key>
-			<input>9421BF2E7727F49C252D644B952C76C4</input>
-			<output>CEE8F6FCF7CAF1C5EA9F746C10BD405B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>923D8EE015266BA8DE0F57BAA42714C2A7A8CBF30C8668D8</key>
-			<input>CEE8F6FCF7CAF1C5EA9F746C10BD405B</input>
-			<output>403220B81E6E0837ACCEDA5ACB3730BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B41FA03C1181401A9E3D7702BA491CF50B6611A9C7B15866</key>
-			<input>403220B81E6E0837ACCEDA5ACB3730BE</input>
-			<output>8C5D05679F78F853CF83CB8E5BBEBA44<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>00B6D7172075472F126072652531E4A6C4E5DA279C0FE222</key>
-			<input>8C5D05679F78F853CF83CB8E5BBEBA44</input>
-			<output>6F9C74C0BB40608AAD1A1202FCAF62EB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BEB1F890B29E8EFE7DFC06A59E71842C69FFC82560A080C9</key>
-			<input>6F9C74C0BB40608AAD1A1202FCAF62EB</input>
-			<output>B812DB4E295951BB04B1636A9CE91DDB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9455ABC4AC495686C5EEDDEBB728D5976D4EAB4FFC499D12</key>
-			<input>B812DB4E295951BB04B1636A9CE91DDB</input>
-			<output>B164574EAECAD5A06FFB4F3E6C607D61<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E9CCB2A3541F810748A8AA519E2003702B5E4719029E073</key>
-			<input>B164574EAECAD5A06FFB4F3E6C607D61</input>
-			<output>1433D23C1500EDBA0EFFD03D96E18F20<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F4817B9409F1F1D160B958990CE2ED8D0C4A344C06C86F53</key>
-			<input>1433D23C1500EDBA0EFFD03D96E18F20</input>
-			<output>B81C889B6FAF5DA800AEBA561992853B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>49F7CD1535080039D8A5D002634DB0250CE48E1A1F5AEA68</key>
-			<input>B81C889B6FAF5DA800AEBA561992853B</input>
-			<output>5B558B7C5916CF14FA5BC9266CFE875F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FCD5479474EA721783F05B7E3A5B7F31F6BF473C73A46D37</key>
-			<input>5B558B7C5916CF14FA5BC9266CFE875F</input>
-			<output>49BE310D74A9980E9A78B0A8BB3BA1AB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6A68208CC7D6782ECA4E6A734EF2E73F6CC7F794C89FCC9C</key>
-			<input>49BE310D74A9980E9A78B0A8BB3BA1AB</input>
-			<output>7BD5BABAD7F1EEAA56E17BF9B6678DC8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>38DE1A69C03EF9C1B19BD0C9990309953A268C6D7EF84154</key>
-			<input>7BD5BABAD7F1EEAA56E17BF9B6678DC8</input>
-			<output>62448A767C344E7E7CDB02112F475EFE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>02634EC657B436A8D3DF5ABFE53747EB46FD8E7C51BF1FAA</key>
-			<input>62448A767C344E7E7CDB02112F475EFE</input>
-			<output>F490A20D8B5C53E34C4CF5B7B72A4591<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DCDAAB8CBD526850274FF8B26E6B14080AB17BCBE6955A3B</key>
-			<input>F490A20D8B5C53E34C4CF5B7B72A4591</input>
-			<output>ACFFD7CD5C01B183AB92DBB62DC088F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>51EB6B7172C22A248BB02F7F326AA58BA123A07DCB55D2CD</key>
-			<input>ACFFD7CD5C01B183AB92DBB62DC088F6</input>
-			<output>0BEDDFA8E7A1AC84E3E164A59D599BAB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4796B5FA7B22626B805DF0D7D5CB090F42C2C4D8560C4966</key>
-			<input>0BEDDFA8E7A1AC84E3E164A59D599BAB</input>
-			<output>9CC82E2B6B96254345C1FDBAD667275E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D8E112F9657BD2BF1C95DEFCBE5D2C4C07033962806B6E38</key>
-			<input>9CC82E2B6B96254345C1FDBAD667275E</input>
-			<output>75926F4D3503411CD3C059DA4FFABD62<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A19B892107C4F8F86907B1B18B5E6D50D4C360B8CF91D35A</key>
-			<input>75926F4D3503411CD3C059DA4FFABD62</input>
-			<output>1073561CF6BA28EC57F4B7E5073D27FA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AEFE35F52D8D54A27974E7AD7DE445BC8337D75DC8ACF4A0</key>
-			<input>1073561CF6BA28EC57F4B7E5073D27FA</input>
-			<output>83E161BA51E6F3A4588C94F7A24BA81F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E41A6382F88A350FA9586172C02B618DBBB43AA6AE75CBF</key>
-			<input>83E161BA51E6F3A4588C94F7A24BA81F</input>
-			<output>BD693B4C49378F17322D175932B87111<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A2D760EE839234F147FCBD5B6535390FE99654F3585F2DAE</key>
-			<input>BD693B4C49378F17322D175932B87111</input>
-			<output>101A83CF8487BEDD2C93180BB5024EC9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F463C72AF8E4B5357E63E94E1B287D2C5054CF8ED5D6367</key>
-			<input>101A83CF8487BEDD2C93180BB5024EC9</input>
-			<output>757949BE62D3328D09E2F45DF2AD095A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C3C0A16686A5D66B229F772A8361B55FCCE7B8A51FF06A3D</key>
-			<input>757949BE62D3328D09E2F45DF2AD095A</input>
-			<output>63EBBF9E15BECEC1A0885BECB3D06BF8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3A0B55738CF3B3E94174C8B496DF7B9E6C6FE349AC2001C5</key>
-			<input>63EBBF9E15BECEC1A0885BECB3D06BF8</input>
-			<output>E176B5C7AFCE06E8ED0C63A4CF7E3034<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>450F848D964934DAA0027D7339117D76816380ED635E31F1</key>
-			<input>E176B5C7AFCE06E8ED0C63A4CF7E3034</input>
-			<output>97B91F0A898E5B3A77A0883140D477BC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F3AF781D6EA3529237BB6279B09F264CF6C308DC238A464D</key>
-			<input>97B91F0A898E5B3A77A0883140D477BC</input>
-			<output>346AD1C470309DFE6CB08DCC24E17470<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4E43AB584BF1F8C603D1B3BDC0AFBBB29A738510076B323D</key>
-			<input>346AD1C470309DFE6CB08DCC24E17470</input>
-			<output>F8B462FB7D758B3AF2CDF7D9244B738F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5A1F023E8F0987B4FB65D146BDDA308868BE72C9232041B2</key>
-			<input>F8B462FB7D758B3AF2CDF7D9244B738F</input>
-			<output>B44D090FD0B7F762146FF6301C6DBF54<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FFC4BB75031165DA4F28D8496D6DC7EA7CD184F93F4DFEE6</key>
-			<input>B44D090FD0B7F762146FF6301C6DBF54</input>
-			<output>15CB042313710F2CD1C3409B5F3AF419<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8107240E1FB855765AE3DC6A7E1CC8C6AD12C46260770AFF</key>
-			<input>15CB042313710F2CD1C3409B5F3AF419</input>
-			<output>0AB01B03F415A58D52CF7A1E40856275<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4493743ADE27D1D85053C7698A096D4BFFDDBE7C20F2688A</key>
-			<input>0AB01B03F415A58D52CF7A1E40856275</input>
-			<output>05BE037C28719B4C4EEBEA329FAC63D5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F582EC062155016255EDC415A278F607B136544EBF5E0B5F</key>
-			<input>05BE037C28719B4C4EEBEA329FAC63D5</input>
-			<output>74C3C4F42B3F575C6B8D5BAD9AF0191F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8FAF8EEAA5E2D76B212E00E18947A15BDABB0FE325AE1240</key>
-			<input>74C3C4F42B3F575C6B8D5BAD9AF0191F</input>
-			<output>92CB4A3DF34E6711FB56391F26D949AD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1CAD393CC06BC104B3E54ADC7A09C64A21ED36FC03775BED</key>
-			<input>92CB4A3DF34E6711FB56391F26D949AD</input>
-			<output>3754BB3D8C3D7370EDBA842CDF17D5C0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E3AB53BB36BDFBBB84B1F1E1F634B53ACC57B2D0DC608E2D</key>
-			<input>3754BB3D8C3D7370EDBA842CDF17D5C0</input>
-			<output>94EAC7FD54D228619791BCCBF9F633F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>480B1D923E853259105B361CA2E69D5B5BC60E1B2596BDD9</key>
-			<input>94EAC7FD54D228619791BCCBF9F633F4</input>
-			<output>CAB29222355968E9CF492D5BF08B0999<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D8F6791107FB3D26DAE9A43E97BFF5B2948F2340D51DB440</key>
-			<input>CAB29222355968E9CF492D5BF08B0999</input>
-			<output>00837C78B88005288DB39452F1EB8F13<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6521B6B771FE24B2DA6AD8462F3FF09A193CB71224F63B53</key>
-			<input>00837C78B88005288DB39452F1EB8F13</input>
-			<output>2082F77D48A63E223A79217CD4516854<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9D9F3198682E2476FAE82F3B6799CEB82345966EF0A75307</key>
-			<input>2082F77D48A63E223A79217CD4516854</input>
-			<output>C5074D4B3F455346B078DAFBC1327AB6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>61832291235DC7C33FEF627058DC9DFE933D4C95319529B1</key>
-			<input>C5074D4B3F455346B078DAFBC1327AB6</input>
-			<output>72EE56572A2B7CEC53FC4E4FC0293D63<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5C2877854338D45D4D01342772F7E112C0C102DAF1BC14D2</key>
-			<input>72EE56572A2B7CEC53FC4E4FC0293D63</input>
-			<output>7350039161DF9E8E45B360E6139E4226<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A8225CF65297BA953E5137B613287F9C8572623CE22256F4</key>
-			<input>7350039161DF9E8E45B360E6139E4226</input>
-			<output>4339288215BE1BB87E31AF8FB35DEDC1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>51649B52A8458F4B7D681F3406966424FB43CDB3517FBB35</key>
-			<input>4339288215BE1BB87E31AF8FB35DEDC1</input>
-			<output>4D7AB61CC2C930CBB0DF43EEE92EBA1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>750E4E7E9183E2FF3012A928C45F54EF4B9C8E5DB851012A</key>
-			<input>4D7AB61CC2C930CBB0DF43EEE92EBA1F</input>
-			<output>1090FE663EA77DC2EC30E8F89E662918<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B65FBDF702246E442082574EFAF8292DA7AC66A526372832</key>
-			<input>1090FE663EA77DC2EC30E8F89E662918</input>
-			<output>14307A2CC40BDFB0413DF10F961337CA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7BEC3480AA0A44FF34B22D623EF3F69DE69197AAB0241FF8</key>
-			<input>14307A2CC40BDFB0413DF10F961337CA</input>
-			<output>8F378E272D82DE8E63EC418912EF8642<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>63921E8700657D6ABB85A34513712813857DD623A2CB99BA</key>
-			<input>8F378E272D82DE8E63EC418912EF8642</input>
-			<output>3947DDC00E3C4D958E508DF58AB4982A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>754B2E8355FABCAF82C27E851D4D65860B2D5BD6287F0190</key>
-			<input>3947DDC00E3C4D958E508DF58AB4982A</input>
-			<output>492DB375B3CC640DD8FEDBAF2C943535<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E8F8C2450F8597B3CBEFCDF0AE81018BD3D3807904EB34A5</key>
-			<input>492DB375B3CC640DD8FEDBAF2C943535</input>
-			<output>D74BD4118D448B674935B80E4B1BFB93<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>34A2C5B010AE479A1CA419E123C58AEC9AE638774FF0CF36</key>
-			<input>D74BD4118D448B674935B80E4B1BFB93</input>
-			<output>E9742B41295BC3ED3AA66E80E8718665<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0E11D08AA9EC81A4F5D032A00A9E4901A04056F7A7814953</key>
-			<input>E9742B41295BC3ED3AA66E80E8718665</input>
-			<output>5FB17BFE146B410F90EC922B1385D0E4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B15779E61FD27B02AA61495E1EF5080E30ACC4DCB40499B7</key>
-			<input>5FB17BFE146B410F90EC922B1385D0E4</input>
-			<output>1B0CCF643F19DDBC0E3ED0EEAE83ACC1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>861B580225193DD5B16D863A21ECD5B23E9214321A873576</key>
-			<input>1B0CCF643F19DDBC0E3ED0EEAE83ACC1</input>
-			<output>B3A7D434E30DC0CDEE4D17BBC27B855E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B6DF2A8726C31D6E02CA520EC2E1157FD0DF0389D8FCB028</key>
-			<input>B3A7D434E30DC0CDEE4D17BBC27B855E</input>
-			<output>57DE2345D91E26A2AB7CA88AEA23A84F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6976D3780B5F01E25514714B1BFF33DD7BA3AB0332DF1867</key>
-			<input>57DE2345D91E26A2AB7CA88AEA23A84F</input>
-			<output>7B03541D239B569FEE7ABD8980F1BD05<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>734CAC477A2727542E1725563864654295D9168AB22EA562</key>
-			<input>7B03541D239B569FEE7ABD8980F1BD05</input>
-			<output>5CB7E72B2E6CFF8C18AEB026FE40C2FA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B59171BEBC7BFB8672A0C27D16089ACE8D77A6AC4C6E6798</key>
-			<input>5CB7E72B2E6CFF8C18AEB026FE40C2FA</input>
-			<output>50B9186306DA92FE785D6EB9223E43A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E460BA8A2F82DBB72219DA1E10D20830F52AC8156E502431</key>
-			<input>50B9186306DA92FE785D6EB9223E43A9</input>
-			<output>B3D8CE8B04B99CF2F82571E1588C358B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE7C790CD4B34C4791C11495146B94C20D0FB9F436DC11BA</key>
-			<input>B3D8CE8B04B99CF2F82571E1588C358B</input>
-			<output>9845F0A5681A40A6DC3D9BCA639FE786<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>699FE59B482743180984E4307C71D464D132223E5543F63C</key>
-			<input>9845F0A5681A40A6DC3D9BCA639FE786</input>
-			<output>C7EBF5CEAAD5652563A8550020EC7070<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FEBE2836F5099F53CE6F11FED6A4B141B29A773E75AF864C</key>
-			<input>C7EBF5CEAAD5652563A8550020EC7070</input>
-			<output>DE94A376634FE9856A84E2EE6EED86E8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22BCFFB0740FC30510FBB288B5EB58C4D81E95D01B4200A4</key>
-			<input>DE94A376634FE9856A84E2EE6EED86E8</input>
-			<output>64B9917E23328A4FE1F8FDB8AE43E7F3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E8491AFDF41F0DFB744223F696D9D28B39E66868B501E757</key>
-			<input>64B9917E23328A4FE1F8FDB8AE43E7F3</input>
-			<output>2C59820184ABC99E82A7F51D4E3A86A8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3BE5F390D72ABE6A581BA1F712721B15BB419D75FB3B61FF</key>
-			<input>2C59820184ABC99E82A7F51D4E3A86A8</input>
-			<output>387ACD0BAD539773287C209A0876581F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B7388762F772C83560616CFCBF218C66933DBDEFF34D39E0</key>
-			<input>387ACD0BAD539773287C209A0876581F</input>
-			<output>F12D3E1F21AFB9CACAB541EFB7334438<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FBD600191276FA5C914C52E39E8E35AC5988FC00447E7DD8</key>
-			<input>F12D3E1F21AFB9CACAB541EFB7334438</input>
-			<output>68D2FA1BB635D9D35E4BF440335CBD80<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E2B19106450AA2FF99EA8F828BBEC7F07C308407722C058</key>
-			<input>68D2FA1BB635D9D35E4BF440335CBD80</input>
-			<output>4532507D5E0227054CB36CBD3C489D53<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C0B60F65BAD77DA4BCACF88576B9CB7A4B7064FD4B6A5D0B</key>
-			<input>4532507D5E0227054CB36CBD3C489D53</input>
-			<output>6DB8FD7DE7924B7E92CF27BC0AD11D16<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>451836B53318CC33D11405F8912B8004D9BF434141BB401D</key>
-			<input>6DB8FD7DE7924B7E92CF27BC0AD11D16</input>
-			<output>A3D5F6A8D4372B66F8D3DD9FF945DECA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0E57235F9B527C5172C1F350451CAB62216C9EDEB8FE9ED7</key>
-			<input>A3D5F6A8D4372B66F8D3DD9FF945DECA</input>
-			<output>BEDFF233AD31EEB9943EEBF52F66AABF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB7E1C438E5F36A3CC1E0163E82D45DBB552752B97983468</key>
-			<input>BEDFF233AD31EEB9943EEBF52F66AABF</input>
-			<output>4531EDEC06570582755199A0C4745EA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DE70EC87811AFD32892FEC8FEE7A4059C003EC8B53EC6ACD</key>
-			<input>4531EDEC06570582755199A0C4745EA5</input>
-			<output>F3189383C202A472CE238571D187F8EB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CA2AE67397E9238A7A377F0C2C78E42B0E2069FA826B9226</key>
-			<input>F3189383C202A472CE238571D187F8EB</input>
-			<output>B48952CBAC43D0114985A9035DFF0382<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>335EF040D622E95BCEBE2DC7803B343A47A5C0F9DF9491A4</key>
-			<input>B48952CBAC43D0114985A9035DFF0382</input>
-			<output>9B71302FDFBC47DF6276AB73D4D0D8B3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>683CC10DFBC6C09C55CF1DE85F8773E525D36B8A0B444917</key>
-			<input>9B71302FDFBC47DF6276AB73D4D0D8B3</input>
-			<output>69EED4A0C5428005199DF12B338393E2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B86C9A2F1A978E123C21C9489AC5F3E03C4E9AA138C7DAF5</key>
-			<input>69EED4A0C5428005199DF12B338393E2</input>
-			<output>D0C2ACA653E6D7D80D32F445B0DD2347<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EF7E3DCDF05FFA86ECE365EEC9232438317C6EE4881AF9B2</key>
-			<input>D0C2ACA653E6D7D80D32F445B0DD2347</input>
-			<output>F373D4DBD7ADAFEF582621EC8C7CD2A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B8059C7A6BA2273E1F90B1351E8E8BD7695A4F0804662B10</key>
-			<input>F373D4DBD7ADAFEF582621EC8C7CD2A2</input>
-			<output>0AD37AFC8C929513F9BDB976E69C7CF3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F5C9ECCBB672D46F1543CBC9921C1EC490E7F67EE2FA57E3</key>
-			<input>0AD37AFC8C929513F9BDB976E69C7CF3</input>
-			<output>E80B118DFB34F11DB344B6AE34EDEBC8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AA67DC18543A7A88FD48DA446928EFD923A340D0D617BC2B</key>
-			<input>E80B118DFB34F11DB344B6AE34EDEBC8</input>
-			<output>628D5C42DDEBA9AE4983F51D339366B4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BF0C30A039C0FEE89FC58606B4C346776A20B5CDE584DA9F</key>
-			<input>628D5C42DDEBA9AE4983F51D339366B4</input>
-			<output>1BE2A5A8CCA8E065557F6982AF3E056F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A219F6B8E2FF1AA3842723AE786BA6123F5FDC4F4ABADFF0</key>
-			<input>1BE2A5A8CCA8E065557F6982AF3E056F</input>
-			<output>5E1187D78AEB34780F07905A84D2EBBA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>851DDD078D4B7802DA36A479F280926A30584C15CE68344A</key>
-			<input>5E1187D78AEB34780F07905A84D2EBBA</input>
-			<output>31EE3AC2EC79D14EBCA71E760326CD74<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E6741084FEDEEFFEEBD89EBB1EF943248CFF5263CD4EF93E</key>
-			<input>31EE3AC2EC79D14EBCA71E760326CD74</input>
-			<output>298E3A00F280BBF8364CF8D6D44CF54E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8A41136FE9DB1FB5C256A4BBEC79F8DCBAB3AAB519020C70</key>
-			<input>298E3A00F280BBF8364CF8D6D44CF54E</input>
-			<output>39B7A0416C1F9B19C7B99A1F6A70258C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E1F1B622EB8BC9B1FBE104FA806663C57D0A30AA737229FC</key>
-			<input>39B7A0416C1F9B19C7B99A1F6A70258C</input>
-			<output>B1655FA9AB2C4956E2C56F7A6C421BE5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0EE0B7E1AF7093694A845B532B4A2A939FCF5FD01F303219</key>
-			<input>B1655FA9AB2C4956E2C56F7A6C421BE5</input>
-			<output>1AD9CBB1A28F7A2A6CBC7EC98EF483FC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>180A2BD07F77D34E505D90E289C550B9F373211991C4B1E5</key>
-			<input>1AD9CBB1A28F7A2A6CBC7EC98EF483FC</input>
-			<output>6363BE57D6D587EE3ABA9FE81F3D3A10<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>848B7408CAACF02E333E2EB55F10D757C9C9BEF18EF98BF5</key>
-			<input>6363BE57D6D587EE3ABA9FE81F3D3A10</input>
-			<output>05618580D7915AA7398EF4DB7D1F1DE3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E581D7B4F84F2860365FAB3588818DF0F0474A2AF3E69616</key>
-			<input>05618580D7915AA7398EF4DB7D1F1DE3</input>
-			<output>F8D0118087404FD729F96CA6551338AD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6C81D6873EFFF763CE8FBAB50FC1C227D9BE268CA6F5AEBB</key>
-			<input>F8D0118087404FD729F96CA6551338AD</input>
-			<output>784913B38D32A7395D73AF1378A0DC56<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D971137D872F606EB6C6A90682F3651E84CD899FDE5572ED</key>
-			<input>784913B38D32A7395D73AF1378A0DC56</input>
-			<output>D07C418BD183457B6683AE99C457FC0B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>196BBA79E35EEC7966BAE88D53702065E24E27061A028EE6</key>
-			<input>D07C418BD183457B6683AE99C457FC0B</input>
-			<output>5595D16DF7668779825BC135D1408013<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6F140EC274635FA2332F39E0A416A71C6015E633CB420EF5</key>
-			<input>5595D16DF7668779825BC135D1408013</input>
-			<output>1AB9F5075E063403FEFD976044C89C95<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>926F3A2AA0BD8C952996CCE7FA10931F9EE871538F8A9260</key>
-			<input>1AB9F5075E063403FEFD976044C89C95</input>
-			<output>6DF413E53FCEDA296D7ABA796179D600<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>740F74BF0E0C38154462DF02C5DE4936F392CB2AEEF34460</key>
-			<input>6DF413E53FCEDA296D7ABA796179D600</input>
-			<output>0D0F499B0D51948A9CCBC4B6531A05F7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2500C9B63042B24B496D9699C88FDDBC6F590F9CBDE94197</key>
-			<input>0D0F499B0D51948A9CCBC4B6531A05F7</input>
-			<output>85833A1072B6A0ED932D4D89D53A785A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FCB377C07622271FCCEEAC89BA397D51FC74421568D339CD</key>
-			<input>85833A1072B6A0ED932D4D89D53A785A</input>
-			<output>545EDE1A4B737F1E51CBDAE311E91D5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB108ABE391C394E98B07293F14A024FADBF98F6793A2491</key>
-			<input>545EDE1A4B737F1E51CBDAE311E91D5C</input>
-			<output>DA8CC635CF1450685DDAAA5A56BC3BD9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>34F8623EC93A6C2A423CB4A63E5E5227F06532AC2F861F48</key>
-			<input>DA8CC635CF1450685DDAAA5A56BC3BD9</input>
-			<output>FE73162BF90B52DEE7D0EA9D73F8444D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E3CB25583365D5EBC4FA28DC75500F917B5D8315C7E5B05</key>
-			<input>FE73162BF90B52DEE7D0EA9D73F8444D</input>
-			<output>BC75D12F66C232E1979D0F6C3E1ED8F1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EABE655116470AE1003A73A2A19732188028D75D626083F4</key>
-			<input>BC75D12F66C232E1979D0F6C3E1ED8F1</input>
-			<output>661A3FA0530BF47C266D609FE01DAF48<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>97A1B8E97CF217C366204C02F29CC664A645B7C2827D2CBC</key>
-			<input>661A3FA0530BF47C266D609FE01DAF48</input>
-			<output>791144514CF8E4CC15BC6ADE3291F9CD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5189DC6F535B5A091F310853BE6422A8B3F9DD1CB0ECD571</key>
-			<input>791144514CF8E4CC15BC6ADE3291F9CD</input>
-			<output>4369FDB3626F399A6526C476373A52D4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>21CD36EDB27428AB5C58F5E0DC0B1B32D6DF196A87D687A5</key>
-			<input>4369FDB3626F399A6526C476373A52D4</input>
-			<output>4C8869494C044703CFDD09F83B2208AA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>85C08C7D4667AE3710D09CA9900F5C3119021092BCF48F0F</key>
-			<input>4C8869494C044703CFDD09F83B2208AA</input>
-			<output>06BC45BDB38A7028CB2D189E9E0C3046<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>807182BD7E1F29BE166CD91423852C19D22F080C22F8BF49</key>
-			<input>06BC45BDB38A7028CB2D189E9E0C3046</input>
-			<output>74AFD5F37F8F0712710585FB8DB22FF8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1AF15D0DE00CEF3F62C30CE75C0A2B0BA32A8DF7AF4A90B1</key>
-			<input>74AFD5F37F8F0712710585FB8DB22FF8</input>
-			<output>B1A4EE894A12794E0C1A286DDBC01CFD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E0732BA619DCF2F5D367E26E16185245AF30A59A748A8C4C</key>
-			<input>B1A4EE894A12794E0C1A286DDBC01CFD</input>
-			<output>0EA90279135DFFC7F58DB959F9E8BFE1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AE8779E669BFF77EDDCEE0170545AD825ABD1CC38D6233AD</key>
-			<input>0EA90279135DFFC7F58DB959F9E8BFE1</input>
-			<output>3717C67E520D87778350E62525C01730<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>79D13142BE9066A2EAD9266957482AF5D9EDFAE6A8A2249D</key>
-			<input>3717C67E520D87778350E62525C01730</input>
-			<output>A8F96DA7AE81EF8810A317AB4C9B82A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>597D70828E56003942204BCEF9C9C57DC94EED4DE439A634</key>
-			<input>A8F96DA7AE81EF8810A317AB4C9B82A9</input>
-			<output>8C373A065986BAC9E345475F5D83FBCF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>96C8CF3884D5DA18CE1771C8A04F7FB42A0BAA12B9BA5DFB</key>
-			<input>8C373A065986BAC9E345475F5D83FBCF</input>
-			<output>8E4D562CBEDC360EFB25B857DD4C4FF2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5A0A29B58F17F9F9405A27E41E9349BAD12E124564F61209</key>
-			<input>8E4D562CBEDC360EFB25B857DD4C4FF2</input>
-			<output>192CCD79E3B4C8F5617D1F55B789B7A3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>29A4692EDE3EAABE5976EA9DFD27814FB0530D10D37FA5AA</key>
-			<input>192CCD79E3B4C8F5617D1F55B789B7A3</input>
-			<output>8A5F181E1748C98121D1C22204591B23<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E5CA30210E78677D329F283EA6F48CE9182CF32D726BE89</key>
-			<input>8A5F181E1748C98121D1C22204591B23</input>
-			<output>14512A4997094A0536594E63ACC5EF4A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7DA5F9C99B68DFB0C778D8CA7D6602CBA7DB81517BE351C3</key>
-			<input>14512A4997094A0536594E63ACC5EF4A</input>
-			<output>F91BA751D5E2ADC074FC6CC14476DE67<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>658144C57CCFDAD83E637F9BA884AF0BD327ED903F958FA4</key>
-			<input>F91BA751D5E2ADC074FC6CC14476DE67</input>
-			<output>5F7FED22BABA25D48C95C4E2CAEDB3F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>13C5D7A44396F6FD611C92B9123E8ADF5FB22972F5783C50</key>
-			<input>5F7FED22BABA25D48C95C4E2CAEDB3F4</input>
-			<output>0FCFB3CB93B2E7FDF7E156486929BD17<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>99DBAC1D5D268DB06ED32172818C6D22A8537F3A9C518147</key>
-			<input>0FCFB3CB93B2E7FDF7E156486929BD17</input>
-			<output>3E16265A02271FF68AE6310A6BFDEE60<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A8876A49E2F1CC5250C5072883AB72D422B54E30F7AC6F27</key>
-			<input>3E16265A02271FF68AE6310A6BFDEE60</input>
-			<output>1657BF722B57D083D8864B6447317E05<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0A615A71BC2BE3E94692B85AA8FCA257FA330554B09D1122</key>
-			<input>1657BF722B57D083D8864B6447317E05</input>
-			<output>018B742E941E27C547451B9E41F245F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6AE11571E3D54C4B4719CC743CE28592BD761ECAF16F54D7</key>
-			<input>018B742E941E27C547451B9E41F245F5</input>
-			<output>8C5BB61774502B6A9C44BEE8D6C44A63<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DCE75079013F0865CB427A6348B2AEF82132A02227AB1EB4</key>
-			<input>8C5BB61774502B6A9C44BEE8D6C44A63</input>
-			<output>361D3B51C751298194CB1AA32C0A86EE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E73232D50D457866FD5F41328FE38779B5F9BA810BA1985A</key>
-			<input>361D3B51C751298194CB1AA32C0A86EE</input>
-			<output>7B734F34DD4F332CBE5CFC7659C390BF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BEEF9073227655EB862C0E0652ACB4550BA546F7526208E5</key>
-			<input>7B734F34DD4F332CBE5CFC7659C390BF</input>
-			<output>63CCC9CE5DADA5B5AC68870E6C675943<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E9078C198526C1DE5E0C7C80F0111E0A7CDC1F93E0551A6</key>
-			<input>63CCC9CE5DADA5B5AC68870E6C675943</input>
-			<output>7BBC6F7B62807CBE1C93CADB5E6CAE0A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AD26AC70784FF1B99E5CA8B36D816D5EBB5E0B226069FFAC</key>
-			<input>7BBC6F7B62807CBE1C93CADB5E6CAE0A</input>
-			<output>E95B0C766EF9049163D3A249E196DDB8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E17835A277F1D1EE7707A4C5037869CFD88DA96B81FF2214</key>
-			<input>E95B0C766EF9049163D3A249E196DDB8</input>
-			<output>968263CBCDB4582FC9CDFD0C9FD0B4F0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22F9EB31E67C62DBE185C70ECECC31E0114054671E2F96E4</key>
-			<input>968263CBCDB4582FC9CDFD0C9FD0B4F0</input>
-			<output>9F573A339DFA07B844E4034718A4FE88<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0FEC8766966A42DA7ED2FD3D5336365855A45720068B686C</key>
-			<input>9F573A339DFA07B844E4034718A4FE88</input>
-			<output>A0809BA3A742C0EB1BDA613B7472F56A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>98E655519C9A8A95DE52669EF474F6B34E7E361B72F99D06</key>
-			<input>A0809BA3A742C0EB1BDA613B7472F56A</input>
-			<output>9BF1D85440818035FA6AC36E5A5F00A7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A8D37BE0EB386F8045A3BECAB4F57686B414F57528A69DA1</key>
-			<input>9BF1D85440818035FA6AC36E5A5F00A7</input>
-			<output>924E309AC04A655C50980360914E9830<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7D89F156EA181E92D7ED8E5074BF13DAE48CF615B9E80591</key>
-			<input>924E309AC04A655C50980360914E9830</input>
-			<output>427819CDAE419A046D4586FF5A784A1C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B028A265666F69629595979DDAFE89DE89C970EAE3904F8D</key>
-			<input>427819CDAE419A046D4586FF5A784A1C</input>
-			<output>D8B51EEC0A6A6D17F1E476C922AD8548<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DF20B45B990C5E734D208971D094E4C9782D0623C13DCAC5</key>
-			<input>D8B51EEC0A6A6D17F1E476C922AD8548</input>
-			<output>7823F1BBA96105168195CDAC34AB5315<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AF4C64F7E4AA6DE2350378CA79F5E1DFF9B8CB8FF59699D0</key>
-			<input>7823F1BBA96105168195CDAC34AB5315</input>
-			<output>85DD0256BC29EAA867DB77C1A049574D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4047F74604E37A00B0DE7A9CC5DC0B779E63BC4E55DFCE9D</key>
-			<input>85DD0256BC29EAA867DB77C1A049574D</input>
-			<output>64C1880D34408CB1A92BBA354941D5B6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9C3BF36E47110C08D41FF291F19C87C63748067B1C9E1B2B</key>
-			<input>64C1880D34408CB1A92BBA354941D5B6</input>
-			<output>25B80866FE3198C775F64C412E734348<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FAE7368F99242159F1A7FAF70FAD1F0142BE4A3A32ED5863</key>
-			<input>25B80866FE3198C775F64C412E734348</input>
-			<output>8D3D7E9A195363C96334C48120BC343A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5F48BD86A9C4DC897C9A846D16FE7CC8218A8EBB12516C59</key>
-			<input>8D3D7E9A195363C96334C48120BC343A</input>
-			<output>E886EEA0F2D556D693DC94FFC588D1F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B7406993C120EA20941C6ACDE42B2A1EB2561A44D7D9BDAD</key>
-			<input>E886EEA0F2D556D693DC94FFC588D1F4</input>
-			<output>76CB89CBB935D422DED9784D4548A84F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4DB740C3FA55F4ABE2D7E3065D1EFE3C6C8F6209929115E2</key>
-			<input>76CB89CBB935D422DED9784D4548A84F</input>
-			<output>93D7AC7B18A1196D5C166203C44A43D3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>353A0293DEFB648071004F7D45BFE7513099000A56DB5631</key>
-			<input>93D7AC7B18A1196D5C166203C44A43D3</input>
-			<output>8982BD77485524EE9E49769591E922CE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F6FC1F7E838CD8A7F882F20A0DEAC3BFAED0769FC73274FF</key>
-			<input>8982BD77485524EE9E49769591E922CE</input>
-			<output>89012A1E3F7669C76C5F5F4987108662<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A1AA84E01EBC3E837183D814329CAA78C28F29D64022F29D</key>
-			<input>89012A1E3F7669C76C5F5F4987108662</input>
-			<output>139E37ADA17990054AF8EF5B717E884B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C631229E9871F2AC621DEFB993E53A7D8877C68D315C7AD6</key>
-			<input>139E37ADA17990054AF8EF5B717E884B</input>
-			<output>CEC8F9C90B2E393BDA4602C2A83F953C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>824604723CD82F95ACD5167098CB03465231C44F9963EFEA</key>
-			<input>CEC8F9C90B2E393BDA4602C2A83F953C</input>
-			<output>2A2E1344AE4C6BA40568E170BF67FD74<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2B17489FA71F683B86FB0534368768E25759253F2604129E</key>
-			<input>2A2E1344AE4C6BA40568E170BF67FD74</input>
-			<output>7402AC6982DBB0BED678746E4523556C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DA9C0CF5A89D3D94F2F9A95DB45CD85C81215151632747F2</key>
-			<input>7402AC6982DBB0BED678746E4523556C</input>
-			<output>36A36B5B55F950F00B9F3E31156BFD65<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>543619886B56830BC45AC206E1A588AC8ABE6F60764CBA97</key>
-			<input>36A36B5B55F950F00B9F3E31156BFD65</input>
-			<output>D7B36A117E824A49A5944C37BEE27F06<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9494630598E7618213E9A8179F27C2E52F2A2357C8AEC591</key>
-			<input>D7B36A117E824A49A5944C37BEE27F06</input>
-			<output>2D60BC0BC950EEE7E36D50E971CF68D0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B0328218DF523A0C3E89141C56772C02CC4773BEB961AD41</key>
-			<input>2D60BC0BC950EEE7E36D50E971CF68D0</input>
-			<output>49A4643E535F45A1ABDEF41ABABBE268<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E3FD7ACD8EF334D772D7022052869A3679987A403DA4F29</key>
-			<input>49A4643E535F45A1ABDEF41ABABBE268</input>
-			<output>D5EEB5CC40AF8612708BAABE85685E4C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A232D0267D606002A2C3C5EE4587EFB117122D1A86B21165</key>
-			<input>D5EEB5CC40AF8612708BAABE85685E4C</input>
-			<output>3F5B875DE202C5441165FE5C5CA2D258<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>844ED6FAFA342BFE9D9842B3A7852AF50677D346DA10C33D</key>
-			<input>3F5B875DE202C5441165FE5C5CA2D258</input>
-			<output>9B5F0210E0EC623C6ACF1C0BC06EBF51<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>109F8CEC689E0F5306C740A3476948C96CB8CF4D1A7E7C6C</key>
-			<input>9B5F0210E0EC623C6ACF1C0BC06EBF51</input>
-			<output>E57015FAB0006446E544704DB6629059<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D9ABCBAC4B271B04E3B75559F7692C8F89FCBF00AC1CEC35</key>
-			<input>E57015FAB0006446E544704DB6629059</input>
-			<output>85F0DF6B1ED933E87F6A9F609D516346<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>09915869AE1F57F766478A32E9B01F67F6962060314D8F73</key>
-			<input>85F0DF6B1ED933E87F6A9F609D516346</input>
-			<output>471B931539C155478A1D4B9BA50DCE43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BFB70AA6C4F05C1D215C1927D0714A207C8B6BFB94404130</key>
-			<input>471B931539C155478A1D4B9BA50DCE43</input>
-			<output>9AC55C1CC77E7B59CC9204898A38CEA7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>660972D79B056F14BB99453B170F3179B0196F721E788F97</key>
-			<input>9AC55C1CC77E7B59CC9204898A38CEA7</input>
-			<output>19B00FEB13145F9F356173B42184D516<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F09576EB17FB1A07A2294AD0041B6EE685781CC63FFC5A81</key>
-			<input>19B00FEB13145F9F356173B42184D516</input>
-			<output>5F1379E25F6DD8653B73F58E738D6243<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8D170BBC5E3662BEFD3A33325B76B683BE0BE9484C7138C2</key>
-			<input>5F1379E25F6DD8653B73F58E738D6243</input>
-			<output>AEF55C09E7AD76CC9BA7B83874A0A86B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1A7BD2572D3CDB8C53CF6F3BBCDBC04F25AC517038D190A9</key>
-			<input>AEF55C09E7AD76CC9BA7B83874A0A86B</input>
-			<output>6BEF52E6D86DC15D2A03B5CB3EBAB130<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B4BC0603F59BE3D038203DDD64B601120FAFE4BB066B2199</key>
-			<input>6BEF52E6D86DC15D2A03B5CB3EBAB130</input>
-			<output>FDC093FFED096B7812E77E23AD9C7C71<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C00A0DDA74D55250C5E0AE2289BF6A6A1D489A98ABF75DE8</key>
-			<input>FDC093FFED096B7812E77E23AD9C7C71</input>
-			<output>072625CB0C022827E195DE8AB4FE7E0C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6534CBAB46880CE0C2C68BE985BD424DFCDD44121F0923E4</key>
-			<input>072625CB0C022827E195DE8AB4FE7E0C</input>
-			<output>11AA47C5557437AEE8A8BE31A849A047<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C204AFE794D81224D36CCC2CD0C975E31475FA23B74083A3</key>
-			<input>11AA47C5557437AEE8A8BE31A849A047</input>
-			<output>4C91B3031567DFFC22829CBC3C419B6D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>01A4820CC4D281B99FFD7F2FC5AEAA1F36F7669F8B0118CE</key>
-			<input>4C91B3031567DFFC22829CBC3C419B6D</input>
-			<output>54C0F95B0179CB753917A2592F58BD77<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B5C1DD77446C8FD1CB3D8674C4D7616A0FE0C4C6A459A5B9</key>
-			<input>54C0F95B0179CB753917A2592F58BD77</input>
-			<output>A2A19A98250E432131F9EF4AE473677F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9FDC1167AC2D1A51699C1CECE1D9224B3E192B8C402AC2C6</key>
-			<input>A2A19A98250E432131F9EF4AE473677F</input>
-			<output>9B5780CA9669A92688F54887E303F2D3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C734A73F4A32D311F2CB9C2677B08B6DB6EC630BA3293015</key>
-			<input>9B5780CA9669A92688F54887E303F2D3</input>
-			<output>F1750745D1E74E41A07B99482ECABAAA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1612B86730F487EF03BE9B63A657C52C1697FA438DE38ABF</key>
-			<input>F1750745D1E74E41A07B99482ECABAAA</input>
-			<output>30F510DBDDAEC6FC0D2504C11DF23CFA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D52E3B50F72B085D334B8BB87BF903D01BB2FE829011B645</key>
-			<input>30F510DBDDAEC6FC0D2504C11DF23CFA</input>
-			<output>64998C3018185D722477A2DBFB84ABB8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7F9F2A23D320792E57D2078863E15EA23FC55C596B951DFD</key>
-			<input>64998C3018185D722477A2DBFB84ABB8</input>
-			<output>9293A4FF9ED5D57D81BB8A63381BF66A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B529B6E7080E0AE4C541A377FD348BDFBE7ED63A538EEB97</key>
-			<input>9293A4FF9ED5D57D81BB8A63381BF66A</input>
-			<output>A389ABCF609B41F28CC3188B2C126915<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5C4C3A89459F79566C808B89DAFCA2D32BDCEB17F9C8282</key>
-			<input>A389ABCF609B41F28CC3188B2C126915</input>
-			<output>5F4BC60608A3DF788631EBB66763E7DF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F59456291C6CF0C83983CEBE950C1555B48C250718FF655D</key>
-			<input>5F4BC60608A3DF788631EBB66763E7DF</input>
-			<output>EFDE2113118EDFD5A15D4DFA1C1E79B4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9A4CD87E44EA7DEED65DEFAD8482CA8015D168FD04E11CE9</key>
-			<input>EFDE2113118EDFD5A15D4DFA1C1E79B4</input>
-			<output>2526BA56DA8A9F9A5799A9D2BE96AEBA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A19D5DFAEC1C9B9DF37B55FB5E08551A4248C12FBA77B253</key>
-			<input>2526BA56DA8A9F9A5799A9D2BE96AEBA</input>
-			<output>83F237712EF89A7B1E84D69DEFC9B9B9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C48B0103470544867089628A70F0CF615CCC17B255BE0BEA</key>
-			<input>83F237712EF89A7B1E84D69DEFC9B9B9</input>
-			<output>13B7E26895FEEFE2356306D8D822DDD3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B366B0FE6BB3DB17633E80E2E50E208369AF116A8D9CD639</key>
-			<input>13B7E26895FEEFE2356306D8D822DDD3</input>
-			<output>BF8C47559B230A3311543BEAA90D4DA1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BE5A735484B72645DCB2C7B77E2D2AB078FB2A8024919B98</key>
-			<input>BF8C47559B230A3311543BEAA90D4DA1</input>
-			<output>D3C9AFCED64F46AC74FFF73302DE10EB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1DFD852FE9F131840F7B6879A8626C1C0C04DDB3264F8B73</key>
-			<input>D3C9AFCED64F46AC74FFF73302DE10EB</input>
-			<output>004386EABD8F3C60971D34B5A5F220F8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BB9831D80259A5A40F38EE9315ED507C9B19E90683BDAB8B</key>
-			<input>004386EABD8F3C60971D34B5A5F220F8</input>
-			<output>119A244F6A3ED1947A764CFE96568213<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>93B0F09E78E610741EA2CADC7FD381E8E16FA5F815EB2998</key>
-			<input>119A244F6A3ED1947A764CFE96568213</input>
-			<output>4C8D061BD62737E674DDCACEFC37DA11<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>43E5036A09590404522FCCC7A9F4B60E95B26F36E9DCF389</key>
-			<input>4C8D061BD62737E674DDCACEFC37DA11</input>
-			<output>7B5EFE44536B5AB9CF75A457BB8C2417<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>869CF7BF36FBB5D829713283FA9FECB75AC7CB615250D79E</key>
-			<input>7B5EFE44536B5AB9CF75A457BB8C2417</input>
-			<output>25771915A1C0F8149634963E1C91BD26<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C9BD373897A760E30C062B965B5F14A3CCF35D5F4EC16AB8</key>
-			<input>25771915A1C0F8149634963E1C91BD26</input>
-			<output>8BB2BC7E7BAAEA1AAF7A9E285BEEB8F1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D2EE543EACA1592687B497E820F5FEB96389C377152FD249</key>
-			<input>8BB2BC7E7BAAEA1AAF7A9E285BEEB8F1</input>
-			<output>05556B6AB68D2DABCDB32FB724D44F57<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9583438F7194754F82E1FC829678D312AE3AECC031FB9D1E</key>
-			<input>05556B6AB68D2DABCDB32FB724D44F57</input>
-			<output>A4CE8197B0EAE6AD57D5A0630D0CABD0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5B96A3EFB2EF0C7262F7D15269235BFF9EF4CA33CF736CE</key>
-			<input>A4CE8197B0EAE6AD57D5A0630D0CABD0</input>
-			<output>8E40F09865AA8EA114EA7F36E11815C3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8E7A04E47969F5DBA86F8D8D4338BB1EED053395DDEF230D</key>
-			<input>8E40F09865AA8EA114EA7F36E11815C3</input>
-			<output>194A76947319ED92D96D292684C29B5A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E52197304B446A01B125FB193021568C34681AB3592DB857</key>
-			<input>194A76947319ED92D96D292684C29B5A</input>
-			<output>93526BBB6405BDEA68AC01F1C807EBF7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DA4552EC2C076DC3227790A25424EB665CC41B42912A53A0</key>
-			<input>93526BBB6405BDEA68AC01F1C807EBF7</input>
-			<output>59860971F900B739B36CB97D35B082D1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E7329ED9491CA8227BF199D3AD245C5FEFA8A23FA49AD171</key>
-			<input>59860971F900B739B36CB97D35B082D1</input>
-			<output>92F430D5B1F35B469ECDDFDCB2A110F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1ADC19560D9AEF09E905A9061CD7071971657DE3163BC184</key>
-			<input>92F430D5B1F35B469ECDDFDCB2A110F5</input>
-			<output>F81D2505FD9A569A71502B23894DA535<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6ED932F2BEBD486911188C03E14D5183003556C09F7664B1</key>
-			<input>F81D2505FD9A569A71502B23894DA535</input>
-			<output>93BACD72A0E761D34E8603FC44F6BA5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F0A52339F0C68F5782A2417141AA30504EB3553CDB80DEEF</key>
-			<input>93BACD72A0E761D34E8603FC44F6BA5E</input>
-			<output>631DB808708B5EBB54A2DE6B62519235<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0B262E7EA7109C03E1BFF97931216EEB1A118B57B9D14CDA</key>
-			<input>631DB808708B5EBB54A2DE6B62519235</input>
-			<output>C402023DA5F2F230FEEACE1C5F8B5390<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E7EB042CA0EA74F25BDFB4494D39CDBE4FB454BE65A1F4A</key>
-			<input>C402023DA5F2F230FEEACE1C5F8B5390</input>
-			<output>CAD88E79E0AB4A3B324F6D3ABBEA211C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>215E3E970705BE3DEF65753D7478D6E0D6B428715DB03E56</key>
-			<input>CAD88E79E0AB4A3B324F6D3ABBEA211C</input>
-			<output>1B2303C4FEB78105B5BF35BC1C5C2FF9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>512CE443B55593D9F44676F98ACF57E5630B1DCD41EC11AF</key>
-			<input>1B2303C4FEB78105B5BF35BC1C5C2FF9</input>
-			<output>06CAE1EED611AF829C83216697F8AEFA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>533251960972B2BFF28C97175CDEF867FF883CABD614BF55</key>
-			<input>06CAE1EED611AF829C83216697F8AEFA</input>
-			<output>170194A7E4E85B0A339BF86460E5ABC6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B484A158FBC3D31FE58D03B0B836A36DCC13C4CFB6F11493</key>
-			<input>170194A7E4E85B0A339BF86460E5ABC6</input>
-			<output>AF7014D972F55B0CD759CAFBC0D9483B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C470759A6962C1934AFD1769CAC3F8611B4A0E3476285CA8</key>
-			<input>AF7014D972F55B0CD759CAFBC0D9483B</input>
-			<output>E8BD547419DADD980682B701CCEF3C7E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D27A5BF9DD3B6F61A240431DD31925F91DC8B935BAC760D6</key>
-			<input>E8BD547419DADD980682B701CCEF3C7E</input>
-			<output>E8F9CFAA891A471EBBC5806F03E0E18A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>041C2FF776BAF2334AB98CB75A0362E7A60D395AB927815C</key>
-			<input>E8F9CFAA891A471EBBC5806F03E0E18A</input>
-			<output>F90F888C03CEBFC9A807DF2100488B24<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9BB4307835C91BA4B3B6043B59CDDD2E0E0AE67BB96F0A78</key>
-			<input>F90F888C03CEBFC9A807DF2100488B24</input>
-			<output>7874C642B44810334C2CF572DA0DEF68<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>56E742B84F293B68CBC2C279ED85CD1D422613096362E510</key>
-			<input>7874C642B44810334C2CF572DA0DEF68</input>
-			<output>064513BBD5E667B651B93502E86B6C43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>66E28C26E01570FCCD87D1C23863AAAB139F260B8B098953</key>
-			<input>064513BBD5E667B651B93502E86B6C43</input>
-			<output>D461A03D7D8669BBC32430D00D437E59<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5674831937969B7619E671FF45E5C310D0BB16DB864AF70A</key>
-			<input>D461A03D7D8669BBC32430D00D437E59</input>
-			<output>0A07F858DBD1909FF970C95ED7287FB3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D45BCD0FF3E14A7013E189A79E34538F29CBDF85516288B9</key>
-			<input>0A07F858DBD1909FF970C95ED7287FB3</input>
-			<output>C2E45D29C1DF02CB4D768682ADD73E6B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>40F81EBEF03AAAABD105D48E5FEB514464BD5907FCB5B6D2</key>
-			<input>C2E45D29C1DF02CB4D768682ADD73E6B</input>
-			<output>01E21E496061DAC195F24F6D1CF22B8A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>99C8875EE8221C3FD0E7CAC73F8A8B85F14F166AE0479D58</key>
-			<input>01E21E496061DAC195F24F6D1CF22B8A</input>
-			<output>71D1C35E1126F6907CDB5414B8C97E84<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F1582613B3466D7FA13609992EAC7D158D94427E588EE3DC</key>
-			<input>71D1C35E1126F6907CDB5414B8C97E84</input>
-			<output>8B7BBAF63C993D4BBB098A22D00C5608<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4679A2F69656CFD32A4DB36F1235405E369DC85C8882B5D4</key>
-			<input>8B7BBAF63C993D4BBB098A22D00C5608</input>
-			<output>651B19F5C1B67FC52151E7C5F1246485<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A404FC3490DFC7244F56AA9AD3833F9B17CC2F9979A6D151</key>
-			<input>651B19F5C1B67FC52151E7C5F1246485</input>
-			<output>158F0AE36B5585868DFB998520318FEB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F7DCCA4394981F2D5AD9A079B8D6BA1D9A37B61C59975EBA</key>
-			<input>158F0AE36B5585868DFB998520318FEB</input>
-			<output>B62EC94231405F3FB0D160FBFF2DE27E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1F38711C9B6BD060ECF7693B8996E5222AE6D6E7A6BABCC4</key>
-			<input>B62EC94231405F3FB0D160FBFF2DE27E</input>
-			<output>464AFFA35373CEE71523FF0AFBFB1F51<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6B846AAC0C448654AABD9698DAE52BC53FC529ED5D41A395</key>
-			<input>464AFFA35373CEE71523FF0AFBFB1F51</input>
-			<output>C729EA9A05D5482491CE31DBBC03CE24<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BD539A9B4001B6876D947C02DF3063E1AE0B1836E1426DB1</key>
-			<input>C729EA9A05D5482491CE31DBBC03CE24</input>
-			<output>C755C048ADAD22A628B077163097415F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>18B524EEF606589DAAC1BC4A729D414786BB6F20D1D52CEE</key>
-			<input>C755C048ADAD22A628B077163097415F</input>
-			<output>2DADB8F8FC76D8C997627449E44D14B2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C2C6A047706E3DD876C04B28EEB998E11D91B693598385C</key>
-			<input>2DADB8F8FC76D8C997627449E44D14B2</input>
-			<output>2D7109526C2F1B5D08DD356B163498D7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>40593D776B6C5920AA1D0DE0E2C482D319042E0223ACA08B</key>
-			<input>2D7109526C2F1B5D08DD356B163498D7</input>
-			<output>D9C1D988ABD5C892B2E5BA7BF4F584D3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>72B53E4711B3DE9873DCD46849114A41ABE19479D7592458</key>
-			<input>D9C1D988ABD5C892B2E5BA7BF4F584D3</input>
-			<output>0A32E78440A8AE4A3FF74B20A3F5F7DE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C0BEF126899B305B79EE33EC09B9E40B9416DF5974ACD386</key>
-			<input>0A32E78440A8AE4A3FF74B20A3F5F7DE</input>
-			<output>E7AA36688851D8E4E08E9EFE6987C571<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D16257EFEE63CC399E44058481E83CEF749841A71D2B16F7</key>
-			<input>E7AA36688851D8E4E08E9EFE6987C571</input>
-			<output>0E3E2E99FFA84F8A69CAA897017DD09C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3509E5A7A66648B9907A2B1D7E4073651D52E9301C56C66B</key>
-			<input>0E3E2E99FFA84F8A69CAA897017DD09C</input>
-			<output>96766B7F6E78537994466BDC62607C85<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>46BC3EB6FA22C8AC060C40621038201C891482EC7E36BAEE</key>
-			<input>96766B7F6E78537994466BDC62607C85</input>
-			<output>AA42980BBABA21DACE6D9FCD28A5B0BA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>26FC66C5E5C6E585AC4ED869AA8201C647791D2156930A54</key>
-			<input>AA42980BBABA21DACE6D9FCD28A5B0BA</input>
-			<output>EC057F10222EC91403E1B6CEFCE3556A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>91FBDF7B24B0FEB4404BA77988ACC8D24498ABEFAA705F3E</key>
-			<input>EC057F10222EC91403E1B6CEFCE3556A</input>
-			<output>E6E91EC6B977C3547D08F717F6702E80<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5BD8360BB35CE209A6A2B9BF31DB0B8639905CF85C0071BE</key>
-			<input>E6E91EC6B977C3547D08F717F6702E80</input>
-			<output>DF9BE6A5A61CC4B66C76447202CBFADA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E58D0EFAB72342BD79395F1A97C7CF3055E6188A5ECB8B64</key>
-			<input>DF9BE6A5A61CC4B66C76447202CBFADA</input>
-			<output>8466FA526E1038CC14A2EC6D85FC4EDF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7EB51DD43B05BB26FD5FA548F9D7F7FC4144F4E7DB37C5BB</key>
-			<input>8466FA526E1038CC14A2EC6D85FC4EDF</input>
-			<output>5C5A965E386B16D50F3487D54C04AA6B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8F4BEBA429FE57C4A1053316C1BCE1294E70733297336FD0</key>
-			<input>5C5A965E386B16D50F3487D54C04AA6B</input>
-			<output>BCD57B57FAA6E3F81660113345CD24F9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4A5DA421D27E62821DD048413B1A02D158106201D2FE4B29</key>
-			<input>BCD57B57FAA6E3F81660113345CD24F9</input>
-			<output>7450D38B3A6D8C4987EE3F7F71C68FFC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>77934AE2BB39BC4469809BCA01778E98DFFE5D7EA338C4D5</key>
-			<input>7450D38B3A6D8C4987EE3F7F71C68FFC</input>
-			<output>A6D1D5A31BAB1CE9F027376539B2AAE2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2C6FD4455E96F2F6CF514E691ADC92712FD96A1B9A8A6E37</key>
-			<input>A6D1D5A31BAB1CE9F027376539B2AAE2</input>
-			<output>10894E2E6275D172259D4C23332508B9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2608AB9AA8CED631DFD8004778A943030A442638A9AF668E</key>
-			<input>10894E2E6275D172259D4C23332508B9</input>
-			<output>53C2AB8E42B4EF7FF659D3FB251453C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>68840BD9639AC3128C1AABC93A1DAC7CFC1DF5C38CBB3549</key>
-			<input>53C2AB8E42B4EF7FF659D3FB251453C7</input>
-			<output>3A9C38D026561B83B0F3E7B566C66CD2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EFCDF07C0E70D051B68693191C4BB7FF4CEE1276EA7D599B</key>
-			<input>3A9C38D026561B83B0F3E7B566C66CD2</input>
-			<output>B9F7E495B96BE7C0307D8F7A53200193<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>87DFC62793B45EF60F71778CA520503F7C939D0CB95D5808</key>
-			<input>B9F7E495B96BE7C0307D8F7A53200193</input>
-			<output>2425FE8AAA7ED06A5FFEC11D7B289891<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5FD78DA64A9F50142B5489060F5E8055236D5C11C275C099</key>
-			<input>2425FE8AAA7ED06A5FFEC11D7B289891</input>
-			<output>93BC83BCF69DBB256C27AF250FDEFAEB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>81C88579E065FD16B8E80ABAF9C33B704F4AF334CDAB3A72</key>
-			<input>93BC83BCF69DBB256C27AF250FDEFAEB</input>
-			<output>A1AF953D4BD1A474B1173D4686EBB8CF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DEE7FFE9A3814D2B19479F87B2129F04FE5DCE724B4082BD</key>
-			<input>A1AF953D4BD1A474B1173D4686EBB8CF</input>
-			<output>00AAC1CD74952011A03714A6BB091653<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8331CC8136829F1E19ED5E4AC687BF155E6ADAD4F04994EE</key>
-			<input>00AAC1CD74952011A03714A6BB091653</input>
-			<output>00B92CBFFC3589CEB3ECAA7D221C3F0B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF862EBFECC11E93195472F53AB236DBED8670A9D255ABE5</key>
-			<input>00B92CBFFC3589CEB3ECAA7D221C3F0B</input>
-			<output>2E07858E94AD300A35448EFA848A767A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>18B8678C5497708E3753F77BAE1F06D1D8C2FE5356DFDD9F</key>
-			<input>2E07858E94AD300A35448EFA848A767A</input>
-			<output>B02F0C98F3B7BB7807F35F6DFD925238<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C90D1E18331CA38F877CFBE35DA8BDA9DF31A13EAB4D8FA7</key>
-			<input>B02F0C98F3B7BB7807F35F6DFD925238</input>
-			<output>EAACC8624146D29129ED8B904E89F04A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A08AD721EE869F2E6DD033811CEE6F38F6DC2AAEE5C47FED</key>
-			<input>EAACC8624146D29129ED8B904E89F04A</input>
-			<output>8949A5A4289B65A32C5116E8A4B55A50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CED3055CB1AC48CAE499962534750A9BDA8D3C46417125BD</key>
-			<input>8949A5A4289B65A32C5116E8A4B55A50</input>
-			<output>B632C5FD8EB9676B5504A8BA13E63E2D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AD1DA883EFFC2F3052AB53D8BACC6DF08F8994FC52971B90</key>
-			<input>B632C5FD8EB9676B5504A8BA13E63E2D</input>
-			<output>EF28A1297C07A575686B3429AC9B62D1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>007F57339EC932CCBD83F2F1C6CBC885E7E2A0D5FE0C7941</key>
-			<input>EF28A1297C07A575686B3429AC9B62D1</input>
-			<output>C99F15E4000944120D1C3DD283D99BFF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3688FDD4FD7822F2741CE715C6C28C97EAFE9D077DD5E2BE</key>
-			<input>C99F15E4000944120D1C3DD283D99BFF</input>
-			<output>0AC0219E2BD43F9F19F3A0997FCB9FCD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AB54BF259C6F5CEE7EDCC68BED16B308F30D3D9E021E7D73</key>
-			<input>0AC0219E2BD43F9F19F3A0997FCB9FCD</input>
-			<output>E27242BC80823BDC09C33C1BDB2EA3BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9C88F101B483F8399CAE84376D9488D4FACE0185D930DECD</key>
-			<input>E27242BC80823BDC09C33C1BDB2EA3BE</input>
-			<output>7ABF9BD872F54E12FB7F0B11A6D10472<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>971A26707E5B8BC2E6111FEF1F61C6C601B10A947FE1DABF</key>
-			<input>7ABF9BD872F54E12FB7F0B11A6D10472</input>
-			<output>336653E5166F1B4146DBEAED74D72BB7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1FFD085658F88F24D5774C0A090EDD87476AE0790B36F108</key>
-			<input>336653E5166F1B4146DBEAED74D72BB7</input>
-			<output>4849136D0509CE6C404E5685FBEEE9B8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>411DF55702805FE69D3E5F670C0713EB0724B6FCF0D818B0</key>
-			<input>4849136D0509CE6C404E5685FBEEE9B8</input>
-			<output>6CF8DCFD53E2ED214A449398D8BF0F6C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>504BFF39E24E870FF1C6839A5FE5FECA4D602564286717DC</key>
-			<input>6CF8DCFD53E2ED214A449398D8BF0F6C</input>
-			<output>9C8326B89B3054A46ECA3BB76BC2F292<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E4F4B55125D2D1056D45A522C4D5AA6E23AA1ED343A5E54E</key>
-			<input>9C8326B89B3054A46ECA3BB76BC2F292</input>
-			<output>C85479C9E038BA5495F67D6E8B2BEB64<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F2E9B605207E0FD4A511DCEB24ED103AB65C63BDC88E0E2A</key>
-			<input>C85479C9E038BA5495F67D6E8B2BEB64</input>
-			<output>145607ACFFA06C08AB958DCB7BC0BDBC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CC0D3F478519145BB147DB47DB4D7C321DC9EE76B34EB396</key>
-			<input>145607ACFFA06C08AB958DCB7BC0BDBC</input>
-			<output>ED7EE0DA132D9964BE5E7B2581C3C270<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EB3AFCDD9AAB59705C393B9DC860E556A3979553328D71E6</key>
-			<input>ED7EE0DA132D9964BE5E7B2581C3C270</input>
-			<output>6B576FD09F34ED38774AA383BB88B385<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>866ECC1B3691532D376E544D5754086ED4DD36D08905C263</key>
-			<input>6B576FD09F34ED38774AA383BB88B385</input>
-			<output>E540518151453A18C29BE22B5DE84D5B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2B3BF12A0A10E6F9D22E05CC061132761646D4FBD4ED8F38</key>
-			<input>E540518151453A18C29BE22B5DE84D5B</input>
-			<output>7865DE74099D486ECB584BE7890F3078<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C6EA741634001E0AA4BDBB80F8C7A18DD1E9F1C5DE2BF40</key>
-			<input>7865DE74099D486ECB584BE7890F3078</input>
-			<output>5226B72FA16653187980D265EB6C7C6D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A32E19E0F06CB649F86D6C97AEEA2900A49E4D79B68EC32D</key>
-			<input>5226B72FA16653187980D265EB6C7C6D</input>
-			<output>CA0D39D92B042BECABF7A14115B3A307<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E48451707115D4A03260554E85EE02EC0F69EC38A33D602A</key>
-			<input>CA0D39D92B042BECABF7A14115B3A307</input>
-			<output>EC1658D60F1D94EF514FA8EDADAB3C1D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>89A589616229672BDE760D988AF396035E2644D50E965C37</key>
-			<input>EC1658D60F1D94EF514FA8EDADAB3C1D</input>
-			<output>F278CD13BF2C6A1F2D9A9F0C1113205D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6013E84EFD076E402C0EC08B35DFFC1C73BCDBD91F857C6A</key>
-			<input>F278CD13BF2C6A1F2D9A9F0C1113205D</input>
-			<output>0B1A35F604DDB043BCD0573DC0850AF0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>68BCE1DC00C592E22714F57D31024C5FCF6C8CE4DF00769A</key>
-			<input>0B1A35F604DDB043BCD0573DC0850AF0</input>
-			<output>EAC4FE6F8A04871AC434322CB06308E3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1BE682363F216340CDD00B12BB06CB450B58BEC86F637E79</key>
-			<input>EAC4FE6F8A04871AC434322CB06308E3</input>
-			<output>64B6BA31C6B15BE040DC2C0A07FFE60F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2082C6C0D49B4DECA966B1237DB790A54B8492C2689C9876</key>
-			<input>64B6BA31C6B15BE040DC2C0A07FFE60F</input>
-			<output>5ECDC37FEA4176145C6A308F91659D43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>23668EEA68987F8CF7AB725C97F6E6B117EEA24DF9F90535</key>
-			<input>5ECDC37FEA4176145C6A308F91659D43</input>
-			<output>BB25C81945A062A7D53531593D9910F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>10B544566773DD5F4C8EBA45D2568416C2DB9314C46015C3</key>
-			<input>BB25C81945A062A7D53531593D9910F6</input>
-			<output>48D98FFFC4E378D42CFC785B53DFC38D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7F96DD27E1C0B7B7045735BA16B5FCC2EE27EB4F97BFD64E</key>
-			<input>48D98FFFC4E378D42CFC785B53DFC38D</input>
-			<output>7DCE20BAE8345CB68103461B4AFA9F09<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A73354FC47570B2679991500FE81A0746F24AD54DD454947</key>
-			<input>7DCE20BAE8345CB68103461B4AFA9F09</input>
-			<output>099B315B4DD55CAB5D02163154DA521C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>92A57B873A1D292F7002245BB354FCDF3226BB65899F1B5B</key>
-			<input>099B315B4DD55CAB5D02163154DA521C</input>
-			<output>37207C17099989D3EA0D13DBD6DF7FEF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7048AF52E1763E8E4722584CBACD750CD82BA8BE5F4064B4</key>
-			<input>37207C17099989D3EA0D13DBD6DF7FEF</input>
-			<output>7CE37081A6751A1518F03B70FBC1479D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>24E37AF6A4BC72403BC128CD1CB86F19C0DB93CEA4812329</key>
-			<input>7CE37081A6751A1518F03B70FBC1479D</input>
-			<output>201BBD8456F70ED0BB4E19A7AE36F1A6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>17E541A643CB8EE01BDA95494A4F61C97B958A690AB7D28F</key>
-			<input>201BBD8456F70ED0BB4E19A7AE36F1A6</input>
-			<output>3384168E4F022049B0E3AD6899B71DC9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>31D5A160B61690A0285E83C7054D4180CB7627019300CF46</key>
-			<input>3384168E4F022049B0E3AD6899B71DC9</input>
-			<output>C83AA6AE617CB17E2977D394EBC4AD19<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6EBA775B83D704AAE06425696431F0FEE201F49578C4625F</key>
-			<input>C83AA6AE617CB17E2977D394EBC4AD19</input>
-			<output>8AC467890AF8E729C7A86A471ADEB378<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C1237F715488582E6AA042E06EC917D725A99ED2621AD127</key>
-			<input>8AC467890AF8E729C7A86A471ADEB378</input>
-			<output>B89CE4F733A9D67C8E504BC4BC2F7664<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0A9E4BDAD3E856F1D23CA6175D60C1ABABF9D516DE35A743</key>
-			<input>B89CE4F733A9D67C8E504BC4BC2F7664</input>
-			<output>47B421469B794A5188255ACE84D89721<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4BE367B885F7AF9195888751C6198BFA23DC8FD85AED3062</key>
-			<input>47B421469B794A5188255ACE84D89721</input>
-			<output>B6B09DBF9E62C60951368C9C8B63A860<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CDFB62995E4C5D4E23381AEE587B4DF372EA0344D18E9802</key>
-			<input>B6B09DBF9E62C60951368C9C8B63A860</input>
-			<output>68933B4BD0BC23EB3178347DFE68E7F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8887EBF40DE51F064BAB21A588C76E18439237392FE67FF4</key>
-			<input>68933B4BD0BC23EB3178347DFE68E7F6</input>
-			<output>C6F16CDDF00C982A927609B559B0BCBD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>221D949B8CA9F4C48D5A4D7878CBF632D1E43E8C7656C349</key>
-			<input>C6F16CDDF00C982A927609B559B0BCBD</input>
-			<output>CBEE831F7623E3214E72AF57706525C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3D35666DACEFF3C846B4CE670EE815139F9691DB0633E68E</key>
-			<input>CBEE831F7623E3214E72AF57706525C7</input>
-			<output>DFE0297AE9B69F0AD69D6189C1447333<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>43370C9C958216DC9954E71DE75E8A19490BF052C77795BD</key>
-			<input>DFE0297AE9B69F0AD69D6189C1447333</input>
-			<output>59C3B4D6055B9F73064B715CD5213C99<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DF43233D68EE5C4AC09753CBE205156A4F40810E1256A924</key>
-			<input>59C3B4D6055B9F73064B715CD5213C99</input>
-			<output>5373F13BB16B3653FCC138FC9A9E8A47<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>472E0A65B06B4F4693E4A2F0536E2339B381B9F288C82363</key>
-			<input>5373F13BB16B3653FCC138FC9A9E8A47</input>
-			<output>9C7514B7FEDF2DC26B0C2C1954745077<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1409E4DF955583A00F91B647ADB10EFBD88D95EBDCBC7314</key>
-			<input>9C7514B7FEDF2DC26B0C2C1954745077</input>
-			<output>2480D7C35D6B0207D84A9CEFA1C2CFDC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>458552CAB6B1A8AC2B116184F0DA0CFC00C709047D7EBCC8</key>
-			<input>2480D7C35D6B0207D84A9CEFA1C2CFDC</input>
-			<output>46DE3E51F1355FA76652C8DA3642409B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2065D6F033E1EE2E6DCF5FD501EF535B6695C1DE4B3CFC53</key>
-			<input>46DE3E51F1355FA76652C8DA3642409B</input>
-			<output>13F328173D057A64DA3917468528DB4F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6D30053E2C95BC5A7E3C77C23CEA293FBCACD698CE14271C</key>
-			<input>13F328173D057A64DA3917468528DB4F</input>
-			<output>33D71B6CD0A68B685C89C9F2D70FDFCE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>59D69C2D25BFB6A34DEB6CAEEC4CA257E0251F6A191BF8D2</key>
-			<input>33D71B6CD0A68B685C89C9F2D70FDFCE</input>
-			<output>8E9F57B5E945CD7DFC2B9FCD5AF96DFB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F41ABD021E5C144EC3743B1B05096F2A1C0E80A743E29529</key>
-			<input>8E9F57B5E945CD7DFC2B9FCD5AF96DFB</input>
-			<output>71295B41B9E5872E1BD4D5C3C4C62D71<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>41C1194732CD4654B25D605ABCECE80407DA55648724B858</key>
-			<input>71295B41B9E5872E1BD4D5C3C4C62D71</input>
-			<output>E704FBBAA917788CE906A54B2A56A232<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AF58932371569CE655599BE015FB9088EEDCF02FAD721A6A</key>
-			<input>E704FBBAA917788CE906A54B2A56A232</input>
-			<output>8DBA56CF3E019B8EA80CCB772551CA5B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B1E68A05A144F4FAD8E3CD2F2BFA0B0646D03B588823D031</key>
-			<input>8DBA56CF3E019B8EA80CCB772551CA5B</input>
-			<output>18F8A23F785AFEFC4ECD527AC6DBE609<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>456D39FF40B1622BC01B6F1053A0F5FA081D69224EF83638</key>
-			<input>18F8A23F785AFEFC4ECD527AC6DBE609</input>
-			<output>073F93A707D6B9A82E99990CB13BD00E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1FF446993B6927C6C724FCB754764C522684F02EFFC3E636</key>
-			<input>073F93A707D6B9A82E99990CB13BD00E</input>
-			<output>76723E1239356EDC37FB5E1EAFDF4678<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0DED89E36C3B06B9B156C2A56D43228E117FAE30501CA04E</key>
-			<input>76723E1239356EDC37FB5E1EAFDF4678</input>
-			<output>1B57D35B4E2484D3945B82D59114A531<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E433448EB970D64FAA0111FE2367A65D85242CE5C108057F</key>
-			<input>1B57D35B4E2484D3945B82D59114A531</input>
-			<output>4466DCB75F6B83885EE32D9FD533A902<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3751EC4737F029E3EE67CD497C0C25D5DBC7017A143BAC7D</key>
-			<input>4466DCB75F6B83885EE32D9FD533A902</input>
-			<output>A8B62B9FCAA9331A3282899DB475AADE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6C1042FACD259CC346D1E6D6B6A516CFE94588E7A04E06A3</key>
-			<input>A8B62B9FCAA9331A3282899DB475AADE</input>
-			<output>DFE1CB42B29F119E44F37F60A8C2BD7C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>640D2DB3E708999A99302D94043A0751ADB6F787088CBBDF</key>
-			<input>DFE1CB42B29F119E44F37F60A8C2BD7C</input>
-			<output>891B211EE1BEA05AD7BA478FDFEBC507<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C434FF9BD02BDF6C102B0C8AE584A70B7A0CB008D7677ED8</key>
-			<input>891B211EE1BEA05AD7BA478FDFEBC507</input>
-			<output>16ABB92A1E0F433250C551F84AE177CF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22A76DAFC8A7748E0680B5A0FB8BE4392AC9E1F09D860917</key>
-			<input>16ABB92A1E0F433250C551F84AE177CF</input>
-			<output>1A2F4BF6ED0CADB7FA3FC52F3C6AF191<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5DDEDF839CF5C0D11CAFFE561687498ED0F624DFA1ECF886</key>
-			<input>1A2F4BF6ED0CADB7FA3FC52F3C6AF191</input>
-			<output>16AE687EE38FB85C0F70E20F5585F750<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>13D0157C6A30C26C0A019628F508F1D2DF86C6D0F4690FD6</key>
-			<input>16AE687EE38FB85C0F70E20F5585F750</input>
-			<output>6CD2D70F641B2A7814014177C4880107<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6DBFF188E61696C966D341279113DBAACB8787A730E10ED1</key>
-			<input>6CD2D70F641B2A7814014177C4880107</input>
-			<output>8CAD28041AE53AA64CE0173DBD9046C2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>44A13B269C44F018EA7E69238BF6E10C8767909A8D714813</key>
-			<input>8CAD28041AE53AA64CE0173DBD9046C2</input>
-			<output>FC8D4274BA1EF15CC39E750DD1848F7B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B7A8311B81A3B82C16F32B5731E8105044F9E5975CF5C768</key>
-			<input>FC8D4274BA1EF15CC39E750DD1848F7B</input>
-			<output>01CBDAEAADE486CF655401D8F7F7E84E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A3AC668823C917DE1738F1BD9C0C969F21ADE44FAB022F26</key>
-			<input>01CBDAEAADE486CF655401D8F7F7E84E</input>
-			<output>494C3219700E06EE9C4DCB61EF932FDF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>05CC07DC3CBB1A4B5E74C3A4EC029071BDE02F2E449100F9</key>
-			<input>494C3219700E06EE9C4DCB61EF932FDF</input>
-			<output>BB0E7D5CD93B1839DF5CAED7996F9560<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8768468EFC3CE954E57ABEF83539884862BC81F9DDFE9599</key>
-			<input>BB0E7D5CD93B1839DF5CAED7996F9560</input>
-			<output>CC1F9A504A67C24621ED127C63AE2A36<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>470E251F98662CEC296524A87F5E4A0E43519385BE50BFAF</key>
-			<input>CC1F9A504A67C24621ED127C63AE2A36</input>
-			<output>A48D3751956B71F925680073B35BC0A3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>533C67C061CE6B9E8DE813F9EA353BF7663993F60D0B7F0C</key>
-			<input>A48D3751956B71F925680073B35BC0A3</input>
-			<output>80143AC021E94718146EBC7808A9DDD8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0303563B9274349D0DFC2939CBDC7CEF72572F8E05A2A2D4</key>
-			<input>80143AC021E94718146EBC7808A9DDD8</input>
-			<output>B90AC6ADEE1B60228096D022EE5C681B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E7D3A52CC112BDCB4F6EF9425C71CCDF2C1FFACEBFECACF</key>
-			<input>B90AC6ADEE1B60228096D022EE5C681B</input>
-			<output>CB8553B21250642107E824E8FB27CAEA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>750A36009059323E7F73BC26379778ECF529DB4410D90025</key>
-			<input>CB8553B21250642107E824E8FB27CAEA</input>
-			<output>9C86DA9646FCFEA7E778A5498F50E01E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6876C614C460B02CE3F566B0716B864B12517E0D9F89E03B</key>
-			<input>9C86DA9646FCFEA7E778A5498F50E01E</input>
-			<output>1481357AD5690762FD6F3809F1E5F219<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7CE6B00F6B651FAEF77453CAA4028129EF3E46046E6C1222</key>
-			<input>1481357AD5690762FD6F3809F1E5F219</input>
-			<output>39B64998D4370E0CB47C1DC23EDCDD03<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C3F72A84EF6F4A0CCEC21A5270358F255B425BC650B0CF21</key>
-			<input>39B64998D4370E0CB47C1DC23EDCDD03</input>
-			<output>EB1BA96272D7BB044A3381439BA4CD5B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C670185A26E7DA4A25D9B33002E234211171DA85CB14027A</key>
-			<input>EB1BA96272D7BB044A3381439BA4CD5B</input>
-			<output>F87EC3D7F55DA25790718E461BA2E194<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>72ECF820AC459D8DDDA770E7F7BF9676810054C3D0B6E3EE</key>
-			<input>F87EC3D7F55DA25790718E461BA2E194</input>
-			<output>AD7EA1621AD7FBA975D6BB0AB9AED116<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CE4ECAD1C7D17D1170D9D185ED686DDFF4D6EFC9691832F8</key>
-			<input>AD7EA1621AD7FBA975D6BB0AB9AED116</input>
-			<output>473B6484F6EAE1FC837A2710AE8D462F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3273752C9A8682F237E2B5011B828C2377ACC8D9C79574D7</key>
-			<input>473B6484F6EAE1FC837A2710AE8D462F</input>
-			<output>0E3634529E49692762F4D80333738045<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8C2CFBB98A4E5E3839D4815385CBE504155810DAF4E6F492</key>
-			<input>0E3634529E49692762F4D80333738045</input>
-			<output>F8EFEBD78C115CC620F25AB66038F2A0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0416DBCAFA0850D8C13B6A8409DAB9C235AA4A6C94DE0632</key>
-			<input>F8EFEBD78C115CC620F25AB66038F2A0</input>
-			<output>B4442C38E3B8E87D8AAE2C17A5571CE9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7A7815A748696E99757F46BCEA6251BFBF04667B31891ADB</key>
-			<input>B4442C38E3B8E87D8AAE2C17A5571CE9</input>
-			<output>576A20E194015AB069D769FCA7D842FC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3848903CD019B4572215665D7E630B0FD6D30F8796515827</key>
-			<input>576A20E194015AB069D769FCA7D842FC</input>
-			<output>E253D9FB4075B021DF452B3AD51204D6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3E468D281DF03284C046BFA63E16BB2E099624BD43435CF1</key>
-			<input>E253D9FB4075B021DF452B3AD51204D6</input>
-			<output>D9454AE62207E70A34F13B0063498A8F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>860E4E60B132A8851903F5401C115C243D671FBD200AD67E</key>
-			<input>D9454AE62207E70A34F13B0063498A8F</input>
-			<output>A21F7DA8A298670D631F677D23504757<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>27B82EDF5FFD15DDBB1C88E8BE893B295E7878C0035A9129</key>
-			<input>A21F7DA8A298670D631F677D23504757</input>
-			<output>1D239EFBABD09A029FE11C59A385C909<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>631BCB74800FD13AA63F16131559A12BC1996499A0DF5820</key>
-			<input>1D239EFBABD09A029FE11C59A385C909</input>
-			<output>C87EB2AB019AFA608BE99CE77717B333<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EE1326871289985E6E41A4B814C35B4B4A70F87ED7C8EB13</key>
-			<input>C87EB2AB019AFA608BE99CE77717B333</input>
-			<output>528DBF70307431E33815D1AA44C30FA8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F1D72A84C2FE044F3CCC1BC824B76AA8726529D4930BE4BB</key>
-			<input>528DBF70307431E33815D1AA44C30FA8</input>
-			<output>6C8014B427ED6331A5C174CF2846B70A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A1610602C8DD2836504C0F7C035A0999D7A45D1BBB4D53B1</key>
-			<input>6C8014B427ED6331A5C174CF2846B70A</input>
-			<output>3DF4C4BE003A13030E73026F7027ADB1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B2418E725A1435DD6DB8CBC203601A9AD9D75F74CB6AFE00</key>
-			<input>3DF4C4BE003A13030E73026F7027ADB1</input>
-			<output>39C50365300DCC5B47F827054879C642<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>761AF29E74671706547DC8A7336DD6C19E2F787183133842</key>
-			<input>39C50365300DCC5B47F827054879C642</input>
-			<output>847F488B3CEC2E1E4E1C6B9F37E4F631<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C912116E7B47169AD002802C0F81F8DFD03313EEB4F7CE73</key>
-			<input>847F488B3CEC2E1E4E1C6B9F37E4F631</input>
-			<output>9A581179C883C5E057CC560A3DF6CD34<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B08B1226353C6BD34A5A9155C7023D3F87FF45E489010347</key>
-			<input>9A581179C883C5E057CC560A3DF6CD34</input>
-			<output>799B437C3EF3663EFBD6F186EDFDF21A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1ECAE821E161A2C833C1D229F9F15B017C29B46264FCF15D</key>
-			<input>799B437C3EF3663EFBD6F186EDFDF21A</input>
-			<output>138A858B14FE28D9A47C76BB3FAE9AA1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3AD2B951E451EEA8204B57A2ED0F73D8D855C2D95B526BFC</key>
-			<input>138A858B14FE28D9A47C76BB3FAE9AA1</input>
-			<output>5E35BC76C5AC8765A6C396DFE5689579<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>791E5F91477E986E7E7EEBD428A3F4BD7E965406BE3AFE85</key>
-			<input>5E35BC76C5AC8765A6C396DFE5689579</input>
-			<output>53F8361BF47A82EF27492322BA6F57AD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>194A170B3D4FA6E62D86DDCFDCD9765259DF77240455A928</key>
-			<input>53F8361BF47A82EF27492322BA6F57AD</input>
-			<output>FF626D77AE144C11480610EC1ABB5028<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C9DC82F000187721D2E4B0B872CD3A4311D967C81EEEF900</key>
-			<input>FF626D77AE144C11480610EC1ABB5028</input>
-			<output>4E46F8C5092B29E29A971A0CD1F610FB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/AESMonteCarloEncryptECB256.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6402 +0,0 @@
-<action>
-	<actionname>AES ECB MonteCarlo ENC 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0000000000000000000000000000000000000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>8B79EECC93A0EE5DFF30B4EA21636DA4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AD3965683E6FA98B5F38AC26653679288B79EECC93A0EE5DFF30B4EA21636DA4</key>
-			<input>8B79EECC93A0EE5DFF30B4EA21636DA4</input>
-			<output>C737317FE0846F132B23C8C2A672CE22<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 2</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>28E79E2AFC5F7745FCCABE2F6257C2EF4C4EDFB37324814ED4137C288711A386</key>
-			<input>C737317FE0846F132B23C8C2A672CE22</input>
-			<output>E58B82BFBA53C0040DC610C642121168<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 3</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0721E93EACF9DC6C870D8133376B7C0DA9C55D0CC977414AD9D56CEEC503B2EE</key>
-			<input>E58B82BFBA53C0040DC610C642121168</input>
-			<output>10B296ABB40504995DB71DDA0B7E26FB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 4</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0ECE1E210ADA32EBC497AD50F516602EB977CBA77D7245D384627134CE7D9415</key>
-			<input>10B296ABB40504995DB71DDA0B7E26FB</input>
-			<output>B7198D8E88BAA25234C18517E99BB70D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 5</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D31313ACD90A9BB7D6596DEAB752003F0E6E4629F5C8E781B0A3F42327E62318</key>
-			<input>B7198D8E88BAA25234C18517E99BB70D</input>
-			<output>6125097DB5738C64513E125872EA436C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 6</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>488B6A78D9AA23FEA7289E250928BDE36F4B4F5440BB6BE5E19DE67B550C6074</key>
-			<input>6125097DB5738C64513E125872EA436C</input>
-			<output>07FF2ED24B522F1E31D46E94BE5C505B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 7</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>03DDD56B142AD3B0E4FFD2BAC6568E5468B461860BE944FBD04988EFEB50302F</key>
-			<input>07FF2ED24B522F1E31D46E94BE5C505B</input>
-			<output>EB3C1E3328F840B110E934B0129F2F23<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 8</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>20F9D92C65B2F00183464197B23BE5AF83887FB52311044AC0A0BC5FF9CF1F0C</key>
-			<input>EB3C1E3328F840B110E934B0129F2F23</input>
-			<output>107CB7B403DC3F6F09EC30EC1718D183<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 9</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>79CF0BCF8EFE3DE82E27778923D1AA1993F4C80120CD3B25C94C8CB3EED7CE8F</key>
-			<input>107CB7B403DC3F6F09EC30EC1718D183</input>
-			<output>CE9DB77B1FAE0CFEC5341FA5AF4CDE8A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 10</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F50ADABA26525BFA7BF6EEF2402450785D697F7A3F6337DB0C789316419B1005</key>
-			<input>CE9DB77B1FAE0CFEC5341FA5AF4CDE8A</input>
-			<output>157B5946862DA3E9A1A83E45857E207D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 11</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3B6947995411D0AE50645129D13BACC04812263CB94E9432ADD0AD53C4E53078</key>
-			<input>157B5946862DA3E9A1A83E45857E207D</input>
-			<output>4AE3583491DF78918CAB3AC241286855<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 12</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AAD12F02F5E5681D16236B668EF2C46702F17E082891ECA3217B979185CD582D</key>
-			<input>4AE3583491DF78918CAB3AC241286855</input>
-			<output>05400C32DC84F1AB486A9BADB1415B50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 13</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EA02EB82D4B2112DD3BD64C1C908CEC307B1723AF4151D0869110C3C348C037D</key>
-			<input>05400C32DC84F1AB486A9BADB1415B50</input>
-			<output>E4C0781A2EA68D142504739731EF396E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 14</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D51A1846DFEB738F0AF138F74C968DCCE3710A20DAB3901C4C157FAB05633A13</key>
-			<input>E4C0781A2EA68D142504739731EF396E</input>
-			<output>44CC8A9C84E6AD66BD24F1EE1F925EC3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 15</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B6401DFC35AF21E53CD254431CC639E9A7BD80BC5E553D7AF1318E451AF164D0</key>
-			<input>44CC8A9C84E6AD66BD24F1EE1F925EC3</input>
-			<output>20AF5FDDF65856D1A60ADC03567AE163<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 16</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D1D2E8B5644910077B3EDB245F029C0D8712DF61A80D6BAB573B52464C8B85B3</key>
-			<input>20AF5FDDF65856D1A60ADC03567AE163</input>
-			<output>CEB74DD6FBEAFDCEE54930D58AF22ACA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 17</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9F932DC2AB83FA5153E7081E7360ABB449A592B753E79665B2726293C679AF79</key>
-			<input>CEB74DD6FBEAFDCEE54930D58AF22ACA</input>
-			<output>72FB3F7BBBDBA9C036C94531A32E937D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 18</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>06AABCA83922297791C9D07AEB639BDD3B5EADCCE83C3FA584BB27A265573C04</key>
-			<input>72FB3F7BBBDBA9C036C94531A32E937D</input>
-			<output>299B26D5D6DFA2C20824D8A84E98A244<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 19</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6124BC71768DE5E9C14D37915D90F1AE12C58B193EE39D678C9FFF0A2BCF9E40</key>
-			<input>299B26D5D6DFA2C20824D8A84E98A244</input>
-			<output>0A35C0D4170BDE0258D79B668C7C98F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 20</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>282B067BD441670E11E576F26C4EA67D18F04BCD29E84365D448646CA7B306B4</key>
-			<input>0A35C0D4170BDE0258D79B668C7C98F4</input>
-			<output>F4E3E981FFC8B50FC9146B85A22E71D4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 21</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2864E2A3986F99C55EC21C225E3498ECEC13A24CD620F66A1D5C0FE9059D7760</key>
-			<input>F4E3E981FFC8B50FC9146B85A22E71D4</input>
-			<output>130ACF4CEAFE3277DF057D4D170582ED<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 22</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>600FD4DFD03132B0DB7B2432DBE027C2FF196D003CDEC41DC25972A41298F58D</key>
-			<input>130ACF4CEAFE3277DF057D4D170582ED</input>
-			<output>50001D54F2EA5EAA3BE2206F3845D9A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 23</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C1CBE3A1679D6C1913EABE3400993100AF197054CE349AB7F9BB52CB2ADD2C24</key>
-			<input>50001D54F2EA5EAA3BE2206F3845D9A9</input>
-			<output>69F3EE4B230B2DB2492FE0E36B949154<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 24</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7C6C63E14606A0B09254A531CACB45A0C6EA9E1FED3FB705B094B2284149BD70</key>
-			<input>69F3EE4B230B2DB2492FE0E36B949154</input>
-			<output>CEEE40F3D2FD9A5521F44AD3AB55198D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 25</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22BB6E21BCA0450240DB117B028837AF0804DEEC3FC22D509160F8FBEA1CA4FD</key>
-			<input>CEEE40F3D2FD9A5521F44AD3AB55198D</input>
-			<output>1FA1F1AE7BF2A8C66A6ED6D5F276846B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 26</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7364D9AE40CBB0CCA6640B7E542DBA2617A52F4244308596FB0E2E2E186A2096</key>
-			<input>1FA1F1AE7BF2A8C66A6ED6D5F276846B</input>
-			<output>6D5BD8391C73507D57B902AB3D58D228<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 27</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A2D8BF7602FCD22755ADA9979B2DD33B7AFEF77B5843D5EBACB72C852532F2BE</key>
-			<input>6D5BD8391C73507D57B902AB3D58D228</input>
-			<output>15ACD05539318363F275C857FBC5D86C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 28</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3AD56A33CE89D8D3510C4152DEE734126F52272E617256885EC2E4D2DEF72AD2</key>
-			<input>15ACD05539318363F275C857FBC5D86C</input>
-			<output>B54F8D944301A899A2A88440FE8AB631<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 29</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>13ED08137C66C2000D3FE9E167387864DA1DAABA2273FE11FC6A6092207D9CE3</key>
-			<input>B54F8D944301A899A2A88440FE8AB631</input>
-			<output>23B4BF936BF383325F0DAF0548E32851<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 30</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C2C53CCDB4721F44B6C057BF758361AF9A9152949807D23A367CF97689EB4B2</key>
-			<input>23B4BF936BF383325F0DAF0548E32851</input>
-			<output>8B4984C6F39C7FD543B4A8629EAC6740<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 31</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>95E744B66044529E2DC2B06BF84FF3D672E091EFBA1C02F6E0D367F5F632D3F2</key>
-			<input>8B4984C6F39C7FD543B4A8629EAC6740</input>
-			<output>108834058381578E8AA7988E03942230<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 32</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E7715B09238876A93F9858D9548CBEA56268A5EA399D55786A74FF7BF5A6F1C2</key>
-			<input>108834058381578E8AA7988E03942230</input>
-			<output>EE3974A2ECEA5A1E6FC09535323BFF29<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 33</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>08F25145082684F576933E4DF5C63DFE8C51D148D5770F6605B46A4EC79D0EEB</key>
-			<input>EE3974A2ECEA5A1E6FC09535323BFF29</input>
-			<output>1AC80F42E3529BCA587D4EA828BD3631<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 34</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>93D63C9069B415595934FA66C76A9CD09699DE0A362594AC5DC924E6EF2038DA</key>
-			<input>1AC80F42E3529BCA587D4EA828BD3631</input>
-			<output>E196DF1E8A0DE844EBD3FD84B307EEB6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 35</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F5E4A3907A7BC56AAC2CB6F6871674C770F0114BC287CE8B61AD9625C27D66C</key>
-			<input>E196DF1E8A0DE844EBD3FD84B307EEB6</input>
-			<output>917AC29C88967EE5C792E72B046A4399<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 36</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B935C42A3A93D1E45E94CBE1E232A135E675C38834BE020D71883E49584D95F5</key>
-			<input>917AC29C88967EE5C792E72B046A4399</input>
-			<output>9CE3D545895005F3EC432699F17FFDA2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 37</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CC3C0DCF9E6E91BE48B7F7AE251D1CB37A9616CDBDEE07FE9DCB18D0A9326857</key>
-			<input>9CE3D545895005F3EC432699F17FFDA2</input>
-			<output>089F0D41397E27B04D3268834ADF932C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 38</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>29AB63D0AB0E237BA75D250BC67E362472091B8C8490204ED0F97053E3EDFB7B</key>
-			<input>089F0D41397E27B04D3268834ADF932C</input>
-			<output>9C364B0CC209389C00824505226B8989<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 39</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7FB99ABACCC92D9C8B17CC0066F02F39EE3F5080469918D2D07B3556C18672F2</key>
-			<input>9C364B0CC209389C00824505226B8989</input>
-			<output>767FB14493BE17A29839FBF115B9B38B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 40</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DB08EEBD184AEEB002302A3C41E5595B9840E1C4D5270F704842CEA7D43FC179</key>
-			<input>767FB14493BE17A29839FBF115B9B38B</input>
-			<output>CBEC5B7FB05D673C19EBF0F4B647CDB5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 41</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F7C517C27F319857F1D9DA5D29B6B76353ACBABB657A684C51A93E5362780CCC</key>
-			<input>CBEC5B7FB05D673C19EBF0F4B647CDB5</input>
-			<output>9721CB9555EF079ADD547D8DE09CC0C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 42</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>47D5164E15743853C8B0E55ED3A965D6C48D712E30956FD68CFD43DE82E4CC0B</key>
-			<input>9721CB9555EF079ADD547D8DE09CC0C7</input>
-			<output>5B16109122E874A08A2A48D5B5753256<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 43</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>152E7EF1B0FAD417DA84B4FA0AB560DB9F9B61BF127D1B7606D70B0B3791FE5D</key>
-			<input>5B16109122E874A08A2A48D5B5753256</input>
-			<output>198A9B7C41C225334176614A16F1D7CB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 44</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>81BB271A9F0CE56E452C9FBE4CF09FF88611FAC353BF3E4547A16A4121602996</key>
-			<input>198A9B7C41C225334176614A16F1D7CB</input>
-			<output>56E255DB999AFA713020C4E987F4433B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 45</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A654ABA71B351BCBFD1CB03B5F88CE1AD0F3AF18CA25C4347781AEA8A6946AAD</key>
-			<input>56E255DB999AFA713020C4E987F4433B</input>
-			<output>7BF8470233D197839D4FC1B365E79C8D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 46</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C700B39660C3C72E15E278B2D22DD528AB0BE81AF9F453B7EACE6F1BC373F620</key>
-			<input>7BF8470233D197839D4FC1B365E79C8D</input>
-			<output>D7CDF94CBBE5E7EF7E47E4CE9BD5E073<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 47</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C49B1589810F1915998C8C79CA2382D87CC611564211B45894898BD558A61653</key>
-			<input>D7CDF94CBBE5E7EF7E47E4CE9BD5E073</input>
-			<output>A5617B71AF28E732A0B69BFA3B90F291<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 48</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D37A9390FD2C8D4D01704352BAFC2EE2D9A76A27ED39536A343F102F6336E4C2</key>
-			<input>A5617B71AF28E732A0B69BFA3B90F291</input>
-			<output>156D08F6A2AC3F7202DBEE15D53C8BCD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 49</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E4E2958608635DF83B8E39FD503356D5CCCA62D14F956C1836E4FE3AB60A6F0F</key>
-			<input>156D08F6A2AC3F7202DBEE15D53C8BCD</input>
-			<output>1790CB4B9B4E01F4CA3AAB588A3B7A51<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 50</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B0F77AF53FB1FAF66A421093111DC925DB5AA99AD4DB6DECFCDE55623C31155E</key>
-			<input>1790CB4B9B4E01F4CA3AAB588A3B7A51</input>
-			<output>5E2DC515FE9BAE8F16188DC052C63A80<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 51</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>487CA8ECBA3E2CAF61A16285005F01F685776C8F2A40C363EAC6D8A26EF72FDE</key>
-			<input>5E2DC515FE9BAE8F16188DC052C63A80</input>
-			<output>A625E46D2DA293F536D25C9207090AA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 52</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>410909F6119DDA628537B825D24E8DF9235288E207E25096DC14843069FE257B</key>
-			<input>A625E46D2DA293F536D25C9207090AA5</input>
-			<output>FEFCF38ABD12EAAD37F3AE73BC4B4A8C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 53</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F1027D98B61D2F383BCF60A83D317D03DDAE7B68BAF0BA3BEBE72A43D5B56FF7</key>
-			<input>FEFCF38ABD12EAAD37F3AE73BC4B4A8C</input>
-			<output>76D8221C2AAD44D226C769875A93CDA8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 54</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DDA104019F122286887545C85F6B09B1AB765974905DFEE9CD2043C48F26A25F</key>
-			<input>76D8221C2AAD44D226C769875A93CDA8</input>
-			<output>DE7FBEB010089D7EE0A1BD18F3461AEE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 55</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>46CE686778BA955831B63F2ACFE397747509E7C4805563972D81FEDC7C60B8B1</key>
-			<input>DE7FBEB010089D7EE0A1BD18F3461AEE</input>
-			<output>A8B0824BD1FC52D92AFA0B4B23ABDEBD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 56</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EF1408D365E549B808DADADE3D4CBCDADDB9658F51A9314E077BF5975FCB660C</key>
-			<input>A8B0824BD1FC52D92AFA0B4B23ABDEBD</input>
-			<output>93AC85EE8DE4091894F0E1800A0DF443<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 57</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8E8FC86B7F82A57799FE32DD1C748C8D4E15E061DC4D3856938B141755C6924F</key>
-			<input>93AC85EE8DE4091894F0E1800A0DF443</input>
-			<output>0FAE963D9B74341316D7EA8862D0766F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 58</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3900458ABB1ACCE0707A49565D27C4C41BB765C47390C45855CFE9F3716E420</key>
-			<input>0FAE963D9B74341316D7EA8862D0766F</input>
-			<output>37930DFBC771510D0BBDCBFAB2A5852F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 59</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C55EE2F5633DE3E7EF3710C6C143AA7076287BA780485D488EE1356585B3610F</key>
-			<input>37930DFBC771510D0BBDCBFAB2A5852F</input>
-			<output>9C3B82D06CB9378F6CBBF6325B456A8B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 60</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AA16073435B24614EB1E9AE81FD921F0EA13F977ECF16AC7E25AC357DEF60B84</key>
-			<input>9C3B82D06CB9378F6CBBF6325B456A8B</input>
-			<output>2DB135F2599323714B4D0E66562FAF48<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 61</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>033F102BFB13F9F84A4E9FC0C6F52AC8C7A2CC85B56249B6A917CD3188D9A4CC</key>
-			<input>2DB135F2599323714B4D0E66562FAF48</input>
-			<output>130D64DC60EE70F07F6A68F26A9B5E19<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 62</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>60D36FD89196DB13031E829B54615707D4AFA859D58C3946D67DA5C3E242FAD5</key>
-			<input>130D64DC60EE70F07F6A68F26A9B5E19</input>
-			<output>E4E5C4A1E2A0DC99EEC583E311824371<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 63</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>532BC273D1843EB5CC1DE01D28684454304A6CF8372CE5DF38B82620F3C0B9A4</key>
-			<input>E4E5C4A1E2A0DC99EEC583E311824371</input>
-			<output>72CCE240749A6BFD0A93CDCBE2589B41<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 64</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DAE91111E43D9DF4A0F44C27A6B1AB0842868EB843B68E22322BEBEB119822E5</key>
-			<input>72CCE240749A6BFD0A93CDCBE2589B41</input>
-			<output>300F85629B48F47444D2AA51EBAAD16C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 65</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5C7C95B43BEA70F20A5C490F9A9F716372890BDAD8FE7A5676F941BAFA32F389</key>
-			<input>300F85629B48F47444D2AA51EBAAD16C</input>
-			<output>89278608A583E1243704B39AB9C0F30C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 66</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5B64FDB468399A031D5745325331C2E8FBAE8DD27D7D9B7241FDF22043F20085</key>
-			<input>89278608A583E1243704B39AB9C0F30C</input>
-			<output>71B74D5FAA4558A59F3BC91AA564579A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 67</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0166230CCF036B4B22C63D36F71C3CF58A19C08DD738C3D7DEC63B3AE696571F</key>
-			<input>71B74D5FAA4558A59F3BC91AA564579A</input>
-			<output>7B433C70951E4BD140FF7A0CBF367429<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 68</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D7A12389D7DD5DE963841B344315ADF9F15AFCFD422688069E39413659A02336</key>
-			<input>7B433C70951E4BD140FF7A0CBF367429</input>
-			<output>B0BE67EBCD672549AF03D323AF026FFF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 69</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A3EC2E92C58FE150F708C6FAEB1F459E41E49B168F41AD4F313A9215F6A24CC9</key>
-			<input>B0BE67EBCD672549AF03D323AF026FFF</input>
-			<output>99A829A7C5C7CD6A44C7EABA9A5421C7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 70</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CC3F7485BF8460CB1EA0AA3C20553644D84CB2B14A86602575FD78AF6CF66D0E</key>
-			<input>99A829A7C5C7CD6A44C7EABA9A5421C7</input>
-			<output>76E1A70AF79F89CFE68EAF15DC0E9BC5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 71</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>17DC64F06B3A2941A21AE58E2FFAB363AEAD15BBBD19E9EA9373D7BAB0F8F6CB</key>
-			<input>76E1A70AF79F89CFE68EAF15DC0E9BC5</input>
-			<output>DB0805B5DCC1CA2CA7489C8E1237E7A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 72</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DC7128E894C9DA167D0ACED5888F846275A5100E61D823C6343B4B34A2CF1169</key>
-			<input>DB0805B5DCC1CA2CA7489C8E1237E7A2</input>
-			<output>935D409B87A85A2CFCC09DE3D2A9A294<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 73</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8073895C9316D299F4F32C602F2F2616E6F85095E67079EAC8FBD6D77066B3FD</key>
-			<input>935D409B87A85A2CFCC09DE3D2A9A294</input>
-			<output>F22B73EFF24249CBCB31BDC7C126B735<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 74</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>99E16793433652800ABAD7000638560914D3237A1432302103CA6B10B14004C8</key>
-			<input>F22B73EFF24249CBCB31BDC7C126B735</input>
-			<output>A16A380AE9B3F2B0AE39BB0E24BF7C0A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 75</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8F77C5E97DA567CC447B52F45175BC74B5B91B70FD81C291ADF3D01E95FF78C2</key>
-			<input>A16A380AE9B3F2B0AE39BB0E24BF7C0A</input>
-			<output>9CF088DE60AE87687481C9F217E86A7C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 76</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DA1B3C2C424D2BC6A1C7A3D18D41C3F5294993AE9D2F45F9D97219EC821712BE</key>
-			<input>9CF088DE60AE87687481C9F217E86A7C</input>
-			<output>1C8B68951E65E32E77F1A31571351C1B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 77</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3D64F3D4BF8F585917273805AA43DCD735C2FB3B834AA6D7AE83BAF9F3220EA5</key>
-			<input>1C8B68951E65E32E77F1A31571351C1B</input>
-			<output>4AD3F3B0C15D810F0EA0FF62C6B2D0FE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 78</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>51D61FB1B31EB55C7AA2D918E7BE32A97F11088B421727D8A023459B3590DE5B</key>
-			<input>4AD3F3B0C15D810F0EA0FF62C6B2D0FE</input>
-			<output>0DFCF7CA661572E050C522AE554A4BF8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 79</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B93510F7689FB9856194CF629EF63AAA72EDFF4124025538F0E6673560DA95A3</key>
-			<input>0DFCF7CA661572E050C522AE554A4BF8</input>
-			<output>7C185A5A68675DAC7A16C8DDE4B8CF8B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 80</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8496679D7598A1B91D2F221CF958F90B0EF5A51B4C6508948AF0AFE884625A28</key>
-			<input>7C185A5A68675DAC7A16C8DDE4B8CF8B</input>
-			<output>88FDDDA7BC2B09E48598A94474C64DC7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 81</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F27BCC0F919566675B129C526A4DC796860878BCF04E01700F6806ACF0A417EF</key>
-			<input>88FDDDA7BC2B09E48598A94474C64DC7</input>
-			<output>35C5C98C9C774D0BE9EFFB55C90B2F9C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 82</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>05F12B58DBF5602D31CFD0EB10313502B3CDB1306C394C7BE687FDF939AF3873</key>
-			<input>35C5C98C9C774D0BE9EFFB55C90B2F9C</input>
-			<output>C3374B5C81646AC881F0F924C22A723B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 83</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FD05BE617555BC8184C2F46911C46B9E70FAFA6CED5D26B3677704DDFB854A48</key>
-			<input>C3374B5C81646AC881F0F924C22A723B</input>
-			<output>0CE756792AF27525A088700DB66D4399<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 84</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3831345DFA5ADDF7CE8B5F76B5E1EBDE7C1DAC15C7AF5396C7FF74D04DE809D1</key>
-			<input>0CE756792AF27525A088700DB66D4399</input>
-			<output>401CD076E03C108A7FD79651407923E9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 85</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B101FDD95C23BE560262D355E09FC39B3C017C632793431CB828E2810D912A38</key>
-			<input>401CD076E03C108A7FD79651407923E9</input>
-			<output>88614E46C416E5164F2A63CDA9DD7B89<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 86</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0B53859962A79D216E395830E36F8D45B4603225E385A60AF702814CA44C51B1</key>
-			<input>88614E46C416E5164F2A63CDA9DD7B89</input>
-			<output>7411856C8F14A2E5F6C5F1830302A66F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 87</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FE07E3B8961C2A1B3E34A50F8CFA1A45C071B7496C9104EF01C770CFA74EF7DE</key>
-			<input>7411856C8F14A2E5F6C5F1830302A66F</input>
-			<output>B0A815E93EBAC7A68F8BB420C8A5692D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 88</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9F2E0D3DB033B1929009D6C4C460B24F70D9A2A0522BC3498E4CC4EF6FEB9EF3</key>
-			<input>B0A815E93EBAC7A68F8BB420C8A5692D</input>
-			<output>AA6D27BB26275F5CB3EC3D6A8AFB80BF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 89</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E903EF160161E1CA79A26D28FE32175DAB4851B740C9C153DA0F985E5101E4C</key>
-			<input>AA6D27BB26275F5CB3EC3D6A8AFB80BF</input>
-			<output>EAF7941A7E5D3907B6F52C1106EED2CE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 90</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>60284EF35A9246CC32002028E4969309304311010A51A5128B55D594E3FECC82</key>
-			<input>EAF7941A7E5D3907B6F52C1106EED2CE</input>
-			<output>1178DD3DBDB1810E360E6FE09AA0D75C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 91</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>300CB519F3203AD4589749651BD99AC7213BCC3CB7E0241CBD5BBA74795E1BDE</key>
-			<input>1178DD3DBDB1810E360E6FE09AA0D75C</input>
-			<output>584B48263DE541E93B29C6E570D4A6F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 92</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F79EA55D0E3EAF1D0DBD364A7D64E2A7970841A8A0565F586727C91098ABD2A</key>
-			<input>584B48263DE541E93B29C6E570D4A6F4</input>
-			<output>7B2EC27F2F1BC24EAD4FC0AA0519685C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 93</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8B46F59BF2C4B226523C203E8FD3936D025E4665A51EA7BB2B3DBC3B0C93D576</key>
-			<input>7B2EC27F2F1BC24EAD4FC0AA0519685C</input>
-			<output>13404D003576493EBB36C07C6D16A1B6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 94</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C7E75C30B0CE770A0075E3EBEB244811111E0B659068EE85900B7C47618574C0</key>
-			<input>13404D003576493EBB36C07C6D16A1B6</input>
-			<output>A083421A139DF68C8F863B337F3408BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 95</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A957F876769BE9005DCEE4B7514FAC62B19D497F83F518091F8D47741EB17C7E</key>
-			<input>A083421A139DF68C8F863B337F3408BE</input>
-			<output>BF86650C9ECBD6C14B420FBE6B6E488B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 96</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FD4DE7532652D17C5ACCEA759C52A95C0E1B2C731D3ECEC854CF48CA75DF34F5</key>
-			<input>BF86650C9ECBD6C14B420FBE6B6E488B</input>
-			<output>75CEFAE872574AB6F26B0CAF6F08D858<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 97</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>54DBCDC0A57363DE6B3A032607E968C27BD5D69B6F69847EA6A444651AD7ECAD</key>
-			<input>75CEFAE872574AB6F26B0CAF6F08D858</input>
-			<output>8A3F9C96598883E9D3760C8A8FE406C6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 98</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AC10312E365401908F2C8AE371CB8C90F1EA4A0D36E1079775D248EF9533EA6B</key>
-			<input>8A3F9C96598883E9D3760C8A8FE406C6</input>
-			<output>B8B372C0CC6D164F340DF26B8F832DF8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 99</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>64265CF02043C966C01DF5255F8D2867495938CDFA8C11D841DFBA841AB0C793</key>
-			<input>B8B372C0CC6D164F340DF26B8F832DF8</input>
-			<output>A7F6267A6F0CEB0EF7D07959EE065760<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 100</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF6B88FB273B247B8D64B5A323EF5760EEAF1EB79580FAD6B60FC3DDF4B690F3</key>
-			<input>A7F6267A6F0CEB0EF7D07959EE065760</input>
-			<output>AD96ADAC9B786AB78B1B46D9E026C935<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 101</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4C8EEA35A90CB46AF32235997D2ADBBE4339B31B0EF890613D148504149059C6</key>
-			<input>AD96ADAC9B786AB78B1B46D9E026C935</input>
-			<output>FC7BAC9A5F64571AABF4B0A451C8D88D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 102</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0DD6D30191FABEC371CF0BA223BECF19BF421F81519CC77B96E035A04558814B</key>
-			<input>FC7BAC9A5F64571AABF4B0A451C8D88D</input>
-			<output>2B56E363834F27090FAC8061507A4787<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 103</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2E69324E634312611C33F695A137AFE49414FCE2D2D3E072994CB5C11522C6CC</key>
-			<input>2B56E363834F27090FAC8061507A4787</input>
-			<output>FD37886E30CEFA28F8E8A5662A9EC5DC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 104</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8AFAC0C1507472CCB28B37CA88B7139D6923748CE21D1A5A61A410A73FBC0310</key>
-			<input>FD37886E30CEFA28F8E8A5662A9EC5DC</input>
-			<output>F7F36142C000D5162F789C392971FCE7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 105</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7DC5DA2A80219692F9F26C5934826DF29ED015CE221DCF4C4EDC8C9E16CDFFF7</key>
-			<input>F7F36142C000D5162F789C392971FCE7</input>
-			<output>D560607A0F0BE8320F2CEE56B155163F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 106</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3CC9AE3E3EB90B511C6D8CD74419D6944BB075B42D16277E41F062C8A798E9C8</key>
-			<input>D560607A0F0BE8320F2CEE56B155163F</input>
-			<output>708133FEB47A226A616900D46FA85037<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 107</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8B84B7F96F9B3184D5B6402ECAE344CB3B31464A996C05142099621CC830B9FF</key>
-			<input>708133FEB47A226A616900D46FA85037</input>
-			<output>1B2ED9348FC7A4E4AD8BFCE2A148D1AD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 108</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>655CB7606D17582441247D23E222ECCF201F9F7E16ABA1F08D129EFE69786852</key>
-			<input>1B2ED9348FC7A4E4AD8BFCE2A148D1AD</input>
-			<output>B2B726C8605A6F5CBA97F04E85A1F985<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 109</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E0BA77DAAD3E3502AB9A6CEBEC654D0492A8B9B676F1CEAC37856EB0ECD991D7</key>
-			<input>B2B726C8605A6F5CBA97F04E85A1F985</input>
-			<output>CD7F53BB4AEB364A1D8630E0B5C4A6A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 110</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1470D5E493B0E8212F02D4419C46A8CD5FD7EA0D3C1AF8E62A035E50591D3775</key>
-			<input>CD7F53BB4AEB364A1D8630E0B5C4A6A2</input>
-			<output>57271A960FE2170BA3F1987E694BBD16<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 111</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>415408E88421573F93FDBE25DD4B90C208F0F09B33F8EFED89F2C62E30568A63</key>
-			<input>57271A960FE2170BA3F1987E694BBD16</input>
-			<output>E9D47C3E926475FFDB783624C3ADB17B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 112</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>40B3017DC81EEE4BF652AE8BB8CEED1DE1248CA5A19C9A12528AF00AF3FB3B18</key>
-			<input>E9D47C3E926475FFDB783624C3ADB17B</input>
-			<output>D78F96812BB55723E04BE8818C262485<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 113</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9EABE9B3608ACE61684BAD3F3FED5C9736AB1A248A29CD31B2C1188B7FDD1F9D</key>
-			<input>D78F96812BB55723E04BE8818C262485</input>
-			<output>E2092227E1A3D2E525942090DA0A3F3E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 114</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B095E4F38E060016EBC4C42D3A4EFBD6D4A238036B8A1FD49755381BA5D720A3</key>
-			<input>E2092227E1A3D2E525942090DA0A3F3E</input>
-			<output>95E9EE1F56A65FF85B752FC300F525AE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 115</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9B2841F44291552EA04DE13E4E78011B414BD61C3D2C402CCC2017D8A522050D</key>
-			<input>95E9EE1F56A65FF85B752FC300F525AE</input>
-			<output>32D8465F2E11A04F8984FEE8E710CD25<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 116</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>67D8B10D0DDB61932E610EB077F0D85F73939043133DE06345A4E9304232C828</key>
-			<input>32D8465F2E11A04F8984FEE8E710CD25</input>
-			<output>2D9803ECFB95B2591FE56B3CBB4307F2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 117</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B0C80A38EDE23A549EF08E5DC3CEA2F25E0B93AFE8A8523A5A41820CF971CFDA</key>
-			<input>2D9803ECFB95B2591FE56B3CBB4307F2</input>
-			<output>4B19F9BCAFD471BF9014ADA19891E4E6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 118</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>85C6DF29F9AEBA6087E3746BA5CF6C1515126A13477C2385CA552FAD61E02B3C</key>
-			<input>4B19F9BCAFD471BF9014ADA19891E4E6</input>
-			<output>53159BC4FBD06FD03ABAC028A536C4A0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 119</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2D42BE0B33D92ECC40DF48CF0AE0CB764607F1D7BCAC4C55F0EFEF85C4D6EF9C</key>
-			<input>53159BC4FBD06FD03ABAC028A536C4A0</input>
-			<output>BCDB1347ACD50D0084D588D4540420E3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 120</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>338A4DC6E729E6FCF71095BB4E6F52FEFADCE29010794155743A675190D2CF7F</key>
-			<input>BCDB1347ACD50D0084D588D4540420E3</input>
-			<output>E12DC82E79554E1202DA471C3221A554<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 121</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>47597486437CBCD33FC195C56FF972BB1BF12ABE692C0F4776E0204DA2F36A2B</key>
-			<input>E12DC82E79554E1202DA471C3221A554</input>
-			<output>23A43E9D6F7C5A6C842233CCEC120EB9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 122</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CEE8CF713EBF0C609E3429E5183014BB385514230650552BF2C213814EE16492</key>
-			<input>23A43E9D6F7C5A6C842233CCEC120EB9</input>
-			<output>9F3F4349BF98D3CC00DB167F0FFDC7AB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 123</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C9B3A1CAFA0D4F0DA942C17FFB75E333A76A576AB9C886E7F21905FE411CA339</key>
-			<input>9F3F4349BF98D3CC00DB167F0FFDC7AB</input>
-			<output>C4D8B8EBEF311C11FE2404220EA65E99<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 124</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8360E6F464B61C4BAE31D3A72422128463B2EF8156F99AF60C3D01DC4FBAFDA0</key>
-			<input>C4D8B8EBEF311C11FE2404220EA65E99</input>
-			<output>47E3318C721E6C094763F0A18042911D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 125</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>926B00B9767D0CAD5331CD6F0343C4A92451DE0D24E7F6FF4B5EF17DCFF86CBD</key>
-			<input>47E3318C721E6C094763F0A18042911D</input>
-			<output>D709FA9A1415B0FAC71B4CF52504791F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 126</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3F4349126EF6A51FD196742CB461D01EF358249730F246058C45BD88EAFC15A2</key>
-			<input>D709FA9A1415B0FAC71B4CF52504791F</input>
-			<output>7937DD067DDB85F200A492E5824DA23C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 127</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4420ADF6906CFBF8421524E88517327C8A6FF9914D29C3F78CE12F6D68B1B79E</key>
-			<input>7937DD067DDB85F200A492E5824DA23C</input>
-			<output>B68617F1372847206BA088D7100334A4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 128</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>125BEB5234B89A376ABBB2185F24BDDE3CE9EE607A0184D7E741A7BA78B2833A</key>
-			<input>B68617F1372847206BA088D7100334A4</input>
-			<output>390938BA9F2264484DE63D8003C15369<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 129</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A457831AB172D88111E87C3955D0C0F205E0D6DAE523E09FAAA79A3A7B73D053</key>
-			<input>390938BA9F2264484DE63D8003C15369</input>
-			<output>A69ED32FD728337A5C25FBC2230DC788<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 130</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CC7ED4183BFAE0FA0F9DD348B8E194F2A37E05F5320BD3E5F68261F8587E17DB</key>
-			<input>A69ED32FD728337A5C25FBC2230DC788</input>
-			<output>EDB9D6099202FE4AE51EEC725478FB47<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 131</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>686AB4F5C19296AED306ADEA4FD52D1A4EC7D3FCA0092DAF139C8D8A0C06EC9C</key>
-			<input>EDB9D6099202FE4AE51EEC725478FB47</input>
-			<output>61059EA3BF0C953762CB37E50ED7081F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 132</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8115329FADEBA92AB2827BD7701A01442FC24D5F1F05B8987157BA6F02D1E483</key>
-			<input>61059EA3BF0C953762CB37E50ED7081F</input>
-			<output>A683E36EF7CCDABDBCA683C2D6560D25<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 133</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>49254E8904EED2766A6A1A615B63B97C8941AE31E8C96225CDF139ADD487E9A6</key>
-			<input>A683E36EF7CCDABDBCA683C2D6560D25</input>
-			<output>8EF424771561BFEC0058C7CAA5876EF6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 134</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>259194CE8701581012F5592B61BCA99507B58A46FDA8DDC9CDA9FE6771008750</key>
-			<input>8EF424771561BFEC0058C7CAA5876EF6</input>
-			<output>79AC024A7BA5FFE143D40D34F2E587A6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 135</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CA0427FE28C77D0CA25D6851CCFE58C47E19880C860D22288E7DF35383E500F6</key>
-			<input>79AC024A7BA5FFE143D40D34F2E587A6</input>
-			<output>2258AB9F0E254CE21EB9B7F6EA690671<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 136</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DA9A4B566C9F670DF850F891A5274CC95C41239388286ECA90C444A5698C0687</key>
-			<input>2258AB9F0E254CE21EB9B7F6EA690671</input>
-			<output>55ACB73E8A45BF964BD040C799724DAD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 137</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9F177A6A6B524C75DB5CC0DBB6AD733209ED94AD026DD15CDB140462F0FE4B2A</key>
-			<input>55ACB73E8A45BF964BD040C799724DAD</input>
-			<output>3E904B15F2E5DDC934DABC25259CB3CF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 138</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2AD96F6874C1BA6A82C5EE80A9A2E8E5377DDFB8F0880C95EFCEB847D562F8E5</key>
-			<input>3E904B15F2E5DDC934DABC25259CB3CF</input>
-			<output>3ACFF8D5B701A5BD1355DDA705D269CB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 139</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>ADD59DF57CC01DE988C6D81E65B1D00E0DB2276D4789A928FC9B65E0D0B0912E</key>
-			<input>3ACFF8D5B701A5BD1355DDA705D269CB</input>
-			<output>3EF4AC14CC954FB4A9A808C7C00A2F1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 140</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3EBE43C4E9C96B37133F6AF8910A25F33468B798B1CE69C55336D2710BABE31</key>
-			<input>3EF4AC14CC954FB4A9A808C7C00A2F1F</input>
-			<output>61C50D5C736AEDCF03C06FC310CC19D9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 141</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FA45F434377F2E217C4A5B7A7526CC1952838625F8760B5356F302E40076A7E8</key>
-			<input>61C50D5C736AEDCF03C06FC310CC19D9</input>
-			<output>2BF543C6548ED0344262640AD95F95C9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 142</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>71EAD73C81ED5AE731D19B0B2B42F0E87976C5E3ACF8DB67149166EED9293221</key>
-			<input>2BF543C6548ED0344262640AD95F95C9</input>
-			<output>F8C1DBDD20317FEB1625634A451931B5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 143</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3FD0019D000111D4300D2CEF39F53C0D81B71E3E8CC9A48C02B405A49C300394</key>
-			<input>F8C1DBDD20317FEB1625634A451931B5</input>
-			<output>DEDB54735B8B90C8EEC66EAECFB13ED6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 144</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>070976B2D3AA1E737BC24A8A794A21BE5F6C4A4DD7423444EC726B0A53813D42</key>
-			<input>DEDB54735B8B90C8EEC66EAECFB13ED6</input>
-			<output>75941A1ADA444115961E058E2D6C6396<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 145</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>81AC2B7F073D0D06BA8A43D3381D3A3F2AF850570D0675517A6C6E847EED5ED4</key>
-			<input>75941A1ADA444115961E058E2D6C6396</input>
-			<output>7C66BE2B0354A6549E10489AF7A83424<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 146</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>37BDD1946BB9B5616115F015E9162F5B569EEE7C0E52D305E47C261E89456AF0</key>
-			<input>7C66BE2B0354A6549E10489AF7A83424</input>
-			<output>F589769555BDEFD0B29E6A65313BD2E1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 147</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF27BD543BB4EED052B808D1EE350D35A31798E95BEF3CD556E24C7BB87EB811</key>
-			<input>F589769555BDEFD0B29E6A65313BD2E1</input>
-			<output>9B3215F70FBCC5ED9CC0D6D7E1E56F11<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 148</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>43321308251C33234CCD9ED19E5E74AF38258D1E5453F938CA229AAC599BD700</key>
-			<input>9B3215F70FBCC5ED9CC0D6D7E1E56F11</input>
-			<output>705CCB60E0A6E997578DCC804D49D265<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 149</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F2152160EAD144776BA6BDED0AC49CD24879467EB4F510AF9DAF562C14D20565</key>
-			<input>705CCB60E0A6E997578DCC804D49D265</input>
-			<output>3DA4CEC68D47E55ECF21A1C5CDAFE4E6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 150</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>593B7EDAE946A5269EF33D088D1B297675DD88B839B2F5F1528EF7E9D97DE183</key>
-			<input>3DA4CEC68D47E55ECF21A1C5CDAFE4E6</input>
-			<output>32299EDBED49B66271107CA1822F179E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 151</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>852E4554AD1459CE81DBA17D18DA96C447F41663D4FB4393239E8B485B52F61D</key>
-			<input>32299EDBED49B66271107CA1822F179E</input>
-			<output>45856FD2080FA9BBFA0857BCF7381823<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 152</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1D8F910508F9C08DB4DE4D5C465310F4027179B1DCF4EA28D996DCF4AC6AEE3E</key>
-			<input>45856FD2080FA9BBFA0857BCF7381823</input>
-			<output>6A8C18595AF5D1E46F9F168C31566BAF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 153</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1A42C028C1ABA740D95A47ABD7B4F40D68FD61E886013BCCB609CA789D3C8591</key>
-			<input>6A8C18595AF5D1E46F9F168C31566BAF</input>
-			<output>71A41A6B6BF9FB906B0617DCB76B4BA5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 154</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C408CB08BCAF34B2BCE6EF787A96D5219597B83EDF8C05CDD0FDDA42A57CE34</key>
-			<input>71A41A6B6BF9FB906B0617DCB76B4BA5</input>
-			<output>9105B8FC516E0B19AEDD003979F8C298<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 155</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>804516E36B1B5E046B15CBE1D3F26EE9885CC37FBC96CB4573D2DD9D53AF0CAC</key>
-			<input>9105B8FC516E0B19AEDD003979F8C298</input>
-			<output>27ACD01CC0403AD6DB45C7DF3E515EDE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 156</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CD8199690660BD4DBA38CE522D1A12CEAFF013637CD6F193A8971A426DFE5272</key>
-			<input>27ACD01CC0403AD6DB45C7DF3E515EDE</input>
-			<output>86E2A23AC567C5F05F15A318E38360A7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 157</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0AD8BB3D5B2A538DF0BDD50EB74CC1BA2912B159B9B13463F782B95A8E7D32D5</key>
-			<input>86E2A23AC567C5F05F15A318E38360A7</input>
-			<output>CB03EDA81BF211B5FE03D4A0879E9EDD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 158</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>081040B60AE9E733243F4C39013EEDB5E2115CF1A24325D609816DFA09E3AC08</key>
-			<input>CB03EDA81BF211B5FE03D4A0879E9EDD</input>
-			<output>6F1AD4AD727348DD593459E0D7661813<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 159</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A51E29D20BB0963DF854C898299E114A8D0B885CD0306D0B50B5341ADE85B41B</key>
-			<input>6F1AD4AD727348DD593459E0D7661813</input>
-			<output>236B421E3103D4C17297D3F5C8BA1D17<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 160</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>49D4EB9964431F42F0FC6494A47A50CCAE60CA42E133B9CA2222E7EF163FA90C</key>
-			<input>236B421E3103D4C17297D3F5C8BA1D17</input>
-			<output>118AE5A5597E8DB200B26DBE11AC4BC8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 161</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F3F7298BE444450A0A07A4B73897720BFEA2FE7B84D347822908A510793E2C4</key>
-			<input>118AE5A5597E8DB200B26DBE11AC4BC8</input>
-			<output>DF02587F25CC4C59E6AECE98BCAACCB8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 162</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7E30984A4C0B18D2F791858B83FC960960E877989D817821C43E44C9BB392E7C</key>
-			<input>DF02587F25CC4C59E6AECE98BCAACCB8</input>
-			<output>3DA0F35FDAEF499ADBF602939FC748D4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 163</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>360A7168E056892E5BF0127EA3B58CAF5D4884C7476E31BB1FC8465A24FE66A8</key>
-			<input>3DA0F35FDAEF499ADBF602939FC748D4</input>
-			<output>FE462F878CEEDDDAA00855B85A81A14B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 164</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A75B3537E0EB98FC0F41C9E1306F6667A30EAB40CB80EC61BFC013E27E7FC7E3</key>
-			<input>FE462F878CEEDDDAA00855B85A81A14B</input>
-			<output>47EA8AC561D7A9F99F64F41A9AD46E5C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 165</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>219E71FC6D23A5103DE4DA9C5EDFA0AEE4E42185AA57459820A4E7F8E4ABA9BF</key>
-			<input>47EA8AC561D7A9F99F64F41A9AD46E5C</input>
-			<output>650FAE7F29A098D787F60CC3C0D77580<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 166</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>038A888C6EA4E9502A15110832AE0DF081EB8FFA83F7DD4FA752EB3B247CDC3F</key>
-			<input>650FAE7F29A098D787F60CC3C0D77580</input>
-			<output>0334BF8CA2835C71F2A283736D54E933<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 167</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>714967419F9129B9649A13A9DA3291A582DF30762174813E55F068484928350C</key>
-			<input>0334BF8CA2835C71F2A283736D54E933</input>
-			<output>1B3A09B325F3D833A3C83D941832B204<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 168</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BCDB12EAF8D3C95F821C0DD324FD36BB99E539C50487590DF63855DC511A8708</key>
-			<input>1B3A09B325F3D833A3C83D941832B204</input>
-			<output>CF980ED2619858290881314B7F0B9516<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 169</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B8FA32AE829E8AF3EF543A407E2D61BA567D3717651F0124FEB964972E11121E</key>
-			<input>CF980ED2619858290881314B7F0B9516</input>
-			<output>98FF5ADA0739122DBBD241847D4A318D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 170</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D62592634F0ABD21AC98887A88845E2ECE826DCD62261309456B2513535B2393</key>
-			<input>98FF5ADA0739122DBBD241847D4A318D</input>
-			<output>1824306B9F54BE4CE3F94F037B4B8569<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 171</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>77005AE2FA1AD6D77D36566B9E988345D6A65DA6FD72AD45A6926A102810A6FA</key>
-			<input>1824306B9F54BE4CE3F94F037B4B8569</input>
-			<output>25BA57B9035625DD268492282535960C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 172</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BE766696DC4458442056D89C96CAFDF0F31C0A1FFE2488988016F8380D2530F6</key>
-			<input>25BA57B9035625DD268492282535960C</input>
-			<output>26AEAD4ED08CA78CE2A3358F36DA0E3F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 173</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1E1D3EBC714EE191EDB2A02B64EF2C23D5B2A7512EA82F1462B5CDB73BFF3EC9</key>
-			<input>26AEAD4ED08CA78CE2A3358F36DA0E3F</input>
-			<output>10AB48E0CB1D72D82794E35DBDEF88F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 174</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D3EAD2DA40B4C94B506A0ED75210023BC519EFB1E5B55DCC45212EEA8610B63F</key>
-			<input>10AB48E0CB1D72D82794E35DBDEF88F6</input>
-			<output>878BCAC367294B227533E1451F654960<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 175</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>87D0B5D4A1314054EC37B67B4245BA8C42922572829C16EE3012CFAF9975FF5F</key>
-			<input>878BCAC367294B227533E1451F654960</input>
-			<output>98CC3311EC8E8B75944503734DEAC00D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 176</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EF3FA3235BB42B1326DE67088C68E2BDDA5E16636E129D9BA457CCDCD49F3F52</key>
-			<input>98CC3311EC8E8B75944503734DEAC00D</input>
-			<output>DAF5FB711E259B498918871933A2E1FD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 177</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2EBBBB1B070658DD43299478725AA88F00ABED12703706D22D4F4BC5E73DDEAF</key>
-			<input>DAF5FB711E259B498918871933A2E1FD</input>
-			<output>AACC545DEE8FF1F5C7A91A2EE3D25C1B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 178</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E15D1FC214F23FF93886D219B4DFCD45AA67B94F9EB8F727EAE651EB04EF82B4</key>
-			<input>AACC545DEE8FF1F5C7A91A2EE3D25C1B</input>
-			<output>B844B67FBFD12E2712CCB66EBB4F7691<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 179</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CC3335B792121DE55FA04A4D6FEE57B012230F302169D900F82AE785BFA0F425</key>
-			<input>B844B67FBFD12E2712CCB66EBB4F7691</input>
-			<output>3E00C548BAEE6150FAA5B67986331FD5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 180</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>18DB585F810069C584251CA1E04A58382C23CA789B87B850028F51FC3993EBF0</key>
-			<input>3E00C548BAEE6150FAA5B67986331FD5</input>
-			<output>EB23DEEA8449E8FA0D828C12B98437AE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 181</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DFE08CA44B0BC4F51C43BE3631E20735C70014921FCE50AA0F0DDDEE8017DC5E</key>
-			<input>EB23DEEA8449E8FA0D828C12B98437AE</input>
-			<output>35BBE35CFC1D8FC40BC52F20D3FB35D5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 182</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0F7DCC456D50A31AC9351794BFE6DD57F2BBF7CEE3D3DF6E04C8F2CE53ECE98B</key>
-			<input>35BBE35CFC1D8FC40BC52F20D3FB35D5</input>
-			<output>DFFE7AEEAAF4762C7EB52453B1F61AD8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 183</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D34FDEB3F04FB4563BC0FD204E8D459F2D458D204927A9427A7DD69DE21AF353</key>
-			<input>DFFE7AEEAAF4762C7EB52453B1F61AD8</input>
-			<output>C648DAF9EBFB4BC6166B15BF067E107F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 184</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5E90B747C9976A3F5050B0C51F116A81EB0D57D9A2DCE2846C16C322E464E32C</key>
-			<input>C648DAF9EBFB4BC6166B15BF067E107F</input>
-			<output>057258D07CAEE57807C396FAE651855A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 185</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>52D3686BC0CD56B9DFF3A69F5073F30AEE7F0F09DE7207FC6BD555D802356676</key>
-			<input>057258D07CAEE57807C396FAE651855A</input>
-			<output>B1109BE49E6E0F4C4190D8E0D717E8D0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 186</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>39C89286B658E006FBF97BAB1C4874025F6F94ED401C08B02A458D38D5228EA6</key>
-			<input>B1109BE49E6E0F4C4190D8E0D717E8D0</input>
-			<output>4DDE60FEEE40402058C988092603AB53<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 187</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>562C9A004CBF05A4CA97994D48C0874C12B1F413AE5C4890728C0531F32125F5</key>
-			<input>4DDE60FEEE40402058C988092603AB53</input>
-			<output>3B18CBF83791E93D661EB269CFEAB1BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 188</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F95206C4D3862E01A4DFE3676A2F297C29A93FEB99CDA1AD1492B7583CCB944B</key>
-			<input>3B18CBF83791E93D661EB269CFEAB1BE</input>
-			<output>0A3204DEE28B65E849136960949E4E5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 189</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FEFDBE4294E46E22074E77B6BB7F964B239B3B357B46C4455D81DE38A855DA15</key>
-			<input>0A3204DEE28B65E849136960949E4E5E</input>
-			<output>6C47ECB8B1478F0BBEDEF3A05A439776<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 190</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>05858C957F861410187DD8CC2EE48E364FDCD78DCA014B4EE35F2D98F2164D63</key>
-			<input>6C47ECB8B1478F0BBEDEF3A05A439776</input>
-			<output>881188C2834B0496CB97F15F7A5C332A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 191</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A51CABC6D50BF9043E95CE2BC511D26DC7CD5F4F494A4FD828C8DCC7884A7E49</key>
-			<input>881188C2834B0496CB97F15F7A5C332A</input>
-			<output>1FAE86251E2F615E3BFCAC545013CD12<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 192</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4EE1F6812CC35A16AA63F1CB39669ED7D863D96A57652E8613347093D859B35B</key>
-			<input>1FAE86251E2F615E3BFCAC545013CD12</input>
-			<output>6017C6764080CB6D2BAC24C0F1BFF8F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 193</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F4F31D57DD72E6BF842D3834372AA60CB8741F1C17E5E5EB3898545329E64BAE</key>
-			<input>6017C6764080CB6D2BAC24C0F1BFF8F5</input>
-			<output>10C8548253FB2BCD5D6F87CB28FAE7E7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 194</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9DBB357DC99A95C240E750F1970C5C65A8BC4B9E441ECE2665F7D398011CAC49</key>
-			<input>10C8548253FB2BCD5D6F87CB28FAE7E7</input>
-			<output>20E253845A3DD51FFC16141FDAA20749<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 195</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A814CD8766E0BFFBD8530589D6202BE0885E181A1E231B3999E1C787DBBEAB00</key>
-			<input>20E253845A3DD51FFC16141FDAA20749</input>
-			<output>9383323218D891F9DCE7578FCD6A54A5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 196</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C516C26E23E38C2B87346F759D8AEF881BDD2A2806FB8AC04506900816D4FFA5</key>
-			<input>9383323218D891F9DCE7578FCD6A54A5</input>
-			<output>9CFF8002D46EAFAAC7B035A788A37CF5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 197</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9301F8120939D0E70C97F614F61F18648722AA2AD295256A82B6A5AF9E778350</key>
-			<input>9CFF8002D46EAFAAC7B035A788A37CF5</input>
-			<output>90C9F34994D5DA86406C7E82EDDD1009<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 198</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>82B163831972D2CEF8F1780AA6B0707A17EB59634640FFECC2DADB2D73AA9359</key>
-			<input>90C9F34994D5DA86406C7E82EDDD1009</input>
-			<output>C8B5021EE84635EB7E7D0F5DBE967FD0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 199</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F99FF8714EE5D822E0E25C499D7C96ACDF5E5B7DAE06CA07BCA7D470CD3CEC89</key>
-			<input>C8B5021EE84635EB7E7D0F5DBE967FD0</input>
-			<output>15CCB3C950764E24CA714707034DF9A7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 200</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3529E6B83266BD558B7F33FC00AE4904CA92E8B4FE70842376D69377CE71152E</key>
-			<input>15CCB3C950764E24CA714707034DF9A7</input>
-			<output>5FDA0EF6A2172D5DAA8E842F061A2E44<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 201</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2D77F95D8B556740CD9E2CC546CA45C99548E6425C67A97EDC581758C86B3B6A</key>
-			<input>5FDA0EF6A2172D5DAA8E842F061A2E44</input>
-			<output>808781D0D10B3A02333E0A53E159287F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 202</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>79298FD5F3C4B6378403CFAD05C3C96E15CF67928D6C937CEF661D0B29321315</key>
-			<input>808781D0D10B3A02333E0A53E159287F</input>
-			<output>CC760400725FCFD37E757D99C6361B93<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 203</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>69535F335F6AEBF452407F3F1C203410D9B96392FF335CAF91136092EF040886</key>
-			<input>CC760400725FCFD37E757D99C6361B93</input>
-			<output>247D3A6BB4C883C142C4000B085C3B79<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 204</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1A4F8FD7BD8DBCFB3677C708CDDDC7C4FDC459F94BFBDF6ED3D76099E75833FF</key>
-			<input>247D3A6BB4C883C142C4000B085C3B79</input>
-			<output>47E4C802C61E6A1706BAE95AF75CA70D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 205</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A573989455A11CAD1E8642CD774806B1BA2091FB8DE5B579D56D89C3100494F2</key>
-			<input>47E4C802C61E6A1706BAE95AF75CA70D</input>
-			<output>4297101350A5CE6C435FAD2725C22E46<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 206</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8D52414DD5600AA0CACD5AD399FD1B37F8B781E8DD407B15963224E435C6BAB4</key>
-			<input>4297101350A5CE6C435FAD2725C22E46</input>
-			<output>BEC56BF1F3B6BE60C0F4CB7AE77BF0F5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 207</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>49D4DF2FB3B561817F2BA6599B66C9244672EA192EF6C57556C6EF9ED2BD4A41</key>
-			<input>BEC56BF1F3B6BE60C0F4CB7AE77BF0F5</input>
-			<output>5B590F24D329BB6ED981938A4CDB9907<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 208</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>68BD5721E2A51A184CDBAC3A035670701D2BE53DFDDF7E1B8F477C149E66D346</key>
-			<input>5B590F24D329BB6ED981938A4CDB9907</input>
-			<output>A8A15DBB79BB9B1131EF39C1E3FCFC9C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 209</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2CC71F1B9BE892100E8A340E61D0A128B58AB8868464E50ABEA845D57D9A2FDA</key>
-			<input>A8A15DBB79BB9B1131EF39C1E3FCFC9C</input>
-			<output>E8CBAB9E98D2866E779512AAC2FA2EA0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 210</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EEF45CE1BB444A6BA5A029363FB9D4DB5D4113181CB66364C93D577FBF60017A</key>
-			<input>E8CBAB9E98D2866E779512AAC2FA2EA0</input>
-			<output>7E4896F0A48A25FFE950B74B96F5F40E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 211</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>151FE809785C11F8F19F31EA0246B416230985E8B83C469B206DE0342995F574</key>
-			<input>7E4896F0A48A25FFE950B74B96F5F40E</input>
-			<output>E1C642B54B89822E73A695C851BC8EBE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 212</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>14FE470CD366C580F124EA924B918BF5C2CFC75DF3B5C4B553CB75FC78297BCA</key>
-			<input>E1C642B54B89822E73A695C851BC8EBE</input>
-			<output>5FA2C6A2303ED7219984F30B78BE6B96<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 213</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>92E61F4C495462354EF612492557D6AB9D6D01FFC38B1394CA4F86F70097105C</key>
-			<input>5FA2C6A2303ED7219984F30B78BE6B96</input>
-			<output>3791959FBF178682A711623C2F91616C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 214</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6C0B6F23AC7526204C451A8ADE54D404AAFC94607C9C95166D5EE4CB2F067130</key>
-			<input>3791959FBF178682A711623C2F91616C</input>
-			<output>E14FCACD5FD26FC2710776EE82317ABC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 215</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0DAE926E4172586817730DB9FDF2CE0B4BB35EAD234EFAD41C599225AD370B8C</key>
-			<input>E14FCACD5FD26FC2710776EE82317ABC</input>
-			<output>E576499EAF5365E7FE3B4961D9C74419<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 216</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DCD553F2977BD114B61F724ABC6AFE8EAEC517338C1D9F33E262DB4474F04F95</key>
-			<input>E576499EAF5365E7FE3B4961D9C74419</input>
-			<output>38567558119E72929F2932E6C289095E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 217</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6333DA8D5B655B5B5AABBCAF0B010BE89693626B9D83EDA17D4BE9A2B67946CB</key>
-			<input>38567558119E72929F2932E6C289095E</input>
-			<output>D20AD648F558E5507CC5C905E92CC268<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 218</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F9010180B464FBB8AD7C9D5E41B1E09A4499B42368DB08F1018E20A75F5584A3</key>
-			<input>D20AD648F558E5507CC5C905E92CC268</input>
-			<output>00C719F3757DDD2D2E64C3F2666FB2CB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 219</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8CE68ED02B4FFD9720B3D16FAE92D164445EADD01DA6D5DC2FEAE355393A3668</key>
-			<input>00C719F3757DDD2D2E64C3F2666FB2CB</input>
-			<output>AEEAB9F50456CA3233A964219D2E7816<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 220</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>57E26BA4DBD3549051B0D9436EB38D4FEAB4142519F01FEE1C438774A4144E7E</key>
-			<input>AEEAB9F50456CA3233A964219D2E7816</input>
-			<output>3F02C97E127FD697AFD58BC66941F654<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 221</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4D0BC4A8796407C939797EF19D0CE7E3D5B6DD5B0B8FC979B3960CB2CD55B82A</key>
-			<input>3F02C97E127FD697AFD58BC66941F654</input>
-			<output>BC4C0DDBCF0003B7814EEF1ABD22B6A8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 222</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9C1FD1789544D2F3FF84574A216767CD69FAD080C48FCACE32D8E3A870770E82</key>
-			<input>BC4C0DDBCF0003B7814EEF1ABD22B6A8</input>
-			<output>D125D8C2920ADD3EA00103DC695A0D9D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 223</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>ADBE97F99DBE61213892D9849B81B3FBB8DF0842568517F092D9E074192D031F</key>
-			<input>D125D8C2920ADD3EA00103DC695A0D9D</input>
-			<output>C0C57598639BA69E13C82E3AF24777C5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 224</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A14DC5CF6CD0BD9AC9499317C509CCB4781A7DDA351EB16E8111CE4EEB6A74DA</key>
-			<input>C0C57598639BA69E13C82E3AF24777C5</input>
-			<output>81E3B8F6A691BC30AA66AD70F0358881<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 225</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0EC479D8681AC8CA455D64A4BB34C86DF9F9C52C938F0D5E2B77633E1B5FFC5B</key>
-			<input>81E3B8F6A691BC30AA66AD70F0358881</input>
-			<output>3CD03908D4ABA4B9885BCB1AC89D16C3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 226</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E74102D814426E659732B303E6D44DB7C529FC244724A9E7A32CA824D3C2EA98</key>
-			<input>3CD03908D4ABA4B9885BCB1AC89D16C3</input>
-			<output>61662DD8EE676E17AE5CF2BABDC54A67<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 227</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EE4034F1A2EF16D7D848BB005CDA5E99A44FD1FCA943C7F00D705A9E6E07A0FF</key>
-			<input>61662DD8EE676E17AE5CF2BABDC54A67</input>
-			<output>4E637432B0FF54FD665A902725B977EB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 228</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>45E8F2DF7FC6E49FB0AF3B73788A1065EA2CA5CE19BC930D6B2ACAB94BBED714</key>
-			<input>4E637432B0FF54FD665A902725B977EB</input>
-			<output>E53D1440407503B66530EEEEBBC9182B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 229</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0BEBC981186DEF84C01688CA16A061E00F11B18E59C990BB0E1A2457F077CF3F</key>
-			<input>E53D1440407503B66530EEEEBBC9182B</input>
-			<output>12134ADF5BB16D867B4EE9CE87EBE36D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 230</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6FADFDB92B0F888514730F17A37A81B61D02FB510278FD3D7554CD99779C2C52</key>
-			<input>12134ADF5BB16D867B4EE9CE87EBE36D</input>
-			<output>310EACEF26A3EB5E4511437145DC30F9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 231</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A565724F25EE29346543964864A0FFAA2C0C57BE24DB166330458EE832401CAB</key>
-			<input>310EACEF26A3EB5E4511437145DC30F9</input>
-			<output>6848E5A618419EC6BACD9CD40BB42083<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 232</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1FAEBFE13AC7545DC742ED60241BC2E84444B2183C9A88A58A88123C39F43C28</key>
-			<input>6848E5A618419EC6BACD9CD40BB42083</input>
-			<output>C64DA25E7CB1A004E31CD37F9D4E1112<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 233</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A8EE2725373C48BAD9C0009C53C298A982091046402B28A16994C143A4BA2D3A</key>
-			<input>C64DA25E7CB1A004E31CD37F9D4E1112</input>
-			<output>D02E6AE8FDD0C5813669080AA7B82527<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 234</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0770874A41ED1396940D75E6A5A09F5352277AAEBDFBED205FFDC9490302081D</key>
-			<input>D02E6AE8FDD0C5813669080AA7B82527</input>
-			<output>5DDFBC75FE48D88E7D6F307E4A008BC7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 235</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D7D098F85AB45E754629D2AB7DA2226C0FF8C6DB43B335AE2292F937490283DA</key>
-			<input>5DDFBC75FE48D88E7D6F307E4A008BC7</input>
-			<output>E216C9AC28239E97237930079739ECE0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 236</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5D6FAFF37EE7400691E504578251ECB1EDEE0F776B90AB3901EBC930DE3B6F3A</key>
-			<input>E216C9AC28239E97237930079739ECE0</input>
-			<output>8D126659360D03548879000642E78029<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 237</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D75C5C64D94D0BC8566F568278B502D560FC692E5D9DA86D8992C9369CDCEF13</key>
-			<input>8D126659360D03548879000642E78029</input>
-			<output>9EA4C85D0F07AD618A2EBEBBE50D72B6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 238</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D42BD9CDCD8BDA71E64817A2755C97C0FE58A173529A050C03BC778D79D19DA5</key>
-			<input>9EA4C85D0F07AD618A2EBEBBE50D72B6</input>
-			<output>1F525901AF1D94BA6CA3C7244E2CD885<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 239</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>32DD1758D2EFC602EE85C58A66D0B080E10AF872FD8791B66F1FB0A937FD4520</key>
-			<input>1F525901AF1D94BA6CA3C7244E2CD885</input>
-			<output>E131C071BFA21FCE21D18DB87B522903<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 240</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BEC98C02D74E088458A668D0B6DDCF13003B380342258E784ECE3D114CAF6C23</key>
-			<input>E131C071BFA21FCE21D18DB87B522903</input>
-			<output>51F1B72C99C869BF73A6637D3A2E2278<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 241</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D368F7BE25A6A0C9AD2004E764F43A3551CA8F2FDBEDE7C73D685E6C76814E5B</key>
-			<input>51F1B72C99C869BF73A6637D3A2E2278</input>
-			<output>0965CDD7A134672036F0C69774CFD380<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 242</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E5A7E12124540DBB4147A55C276A35B958AF42F87AD980E70B9898FB024E9DDB</key>
-			<input>0965CDD7A134672036F0C69774CFD380</input>
-			<output>52ECEB721073FBF3D1BD5808351BEC5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 243</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7D9702E2C8906805A580D5D85B03BBC60A43A98A6AAA7B14DA25C0F337557185</key>
-			<input>52ECEB721073FBF3D1BD5808351BEC5E</input>
-			<output>493CE4E2B090DA3A2354C9DA7DB44D39<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 244</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8EFA5EC96F3AEF51AB38F4CCD969E5D5437F4D68DA3AA12EF97109294AE13CBC</key>
-			<input>493CE4E2B090DA3A2354C9DA7DB44D39</input>
-			<output>DA64246FF65969995F9A4E8AE7C805CF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 245</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>19C97957444E9931293047A647D7A19A991B69072C63C8B7A6EB47A3AD293973</key>
-			<input>DA64246FF65969995F9A4E8AE7C805CF</input>
-			<output>CF85EBD76908CD8F8D3177E53DA3AD5E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 246</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7BDB3ED45BD78C131611FD9D54B8E9D2569E82D0456B05382BDA3046908A942D</key>
-			<input>CF85EBD76908CD8F8D3177E53DA3AD5E</input>
-			<output>45E1FDEFC98E62A841BD1D8D8236CEEF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 247</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>19961521A42D96238D44F651E7E7D463137F7F3F8CE567906A672DCB12BC5AC2</key>
-			<input>45E1FDEFC98E62A841BD1D8D8236CEEF</input>
-			<output>E056EF7B711A9CBDED8878EF74AF1671<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 248</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>343360636E697E607319D4DCBC12B543F3299044FDFFFB2D87EF552466134CB3</key>
-			<input>E056EF7B711A9CBDED8878EF74AF1671</input>
-			<output>E4EFF77C6C3273393BE4814A16C3DF4A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 249</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B63D4D3D099F8E68F6A041D2EB1B1C1417C6673891CD8814BC0BD46E70D093F9</key>
-			<input>E4EFF77C6C3273393BE4814A16C3DF4A</input>
-			<output>EC562E353DF8BA76699B01A6ACC8AD52<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 250</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EF500379EDE772968F1499F07B0B09CFFB90490DAC353262D590D5C8DC183EAB</key>
-			<input>EC562E353DF8BA76699B01A6ACC8AD52</input>
-			<output>4473050ADC687112AACB86AA73CB6C6D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 251</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EA5CD4EDD99E64018AD3104026F0F528BFE34C07705D43707F5B5362AFD352C6</key>
-			<input>4473050ADC687112AACB86AA73CB6C6D</input>
-			<output>6561A82EE86E4F18DF6965312F0C0984<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 252</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2ABF9529FC88D85FF68CF6D72B9A9CB5DA82E42998330C68A032365380DF5B42</key>
-			<input>6561A82EE86E4F18DF6965312F0C0984</input>
-			<output>47590CE1C90F3AC2C68B272B4A667F61<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 253</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A485B647790DBFF76F16C42A39F5F5559DDBE8C8513C36AA66B91178CAB92423</key>
-			<input>47590CE1C90F3AC2C68B272B4A667F61</input>
-			<output>4ED731A36BCB2672A810633E432D8922<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 254</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F0D0E858B597595A06458FF6C2259127D30CD96B3AF710D8CEA972468994AD01</key>
-			<input>4ED731A36BCB2672A810633E432D8922</input>
-			<output>4AC2F0D5F52762F77DB5D9EF53B76642<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 255</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EDDE80556ECA4CC51EFB33E23C43C04399CE29BECFD0722FB31CABA9DA23CB43</key>
-			<input>4AC2F0D5F52762F77DB5D9EF53B76642</input>
-			<output>A574FBE71E359A57D57A24A388FDF6EE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 256</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3C7C248C9FCE1D060D5B0664C0FF3F6B3CBAD259D1E5E87866668F0A52DE3DAD</key>
-			<input>A574FBE71E359A57D57A24A388FDF6EE</input>
-			<output>CCC3A011108469A7987F336C209BB84E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 257</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D43727570A809BE0D9EB78760FE4CDA9F0797248C16181DFFE19BC66724585E3</key>
-			<input>CCC3A011108469A7987F336C209BB84E</input>
-			<output>686357D3013977390164834D4E5324DC<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 258</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F060E361977E544B98779AB55886D57981A259BC058F6E6FF7D3F2B3C16A13F</key>
-			<input>686357D3013977390164834D4E5324DC</input>
-			<output>DDDAD6FBDBF7C7BE7EBF3F036009A270<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 259</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A3630C05DC65905D37AFDB315B2AA4D945C0F3601BAF315881C200285C1F034F</key>
-			<input>DDDAD6FBDBF7C7BE7EBF3F036009A270</input>
-			<output>237124FEDF28B4201B6D1584B93D5F7C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 260</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3E6ADAAEF53A36294CDEA0D94BE742C166B1D79EC48785789AAF15ACE5225C33</key>
-			<input>237124FEDF28B4201B6D1584B93D5F7C</input>
-			<output>D1A9DDFB5662934AAD98B2861E50A871<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 261</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>234615019E03C466AEA186112C4EB523B7180A6592E516323737A72AFB72F442</key>
-			<input>D1A9DDFB5662934AAD98B2861E50A871</input>
-			<output>CA18344F4C7A0F068398CA8137C056DD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 262</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22ED93581611798050E94CC70F6090BF7D003E2ADE9F1934B4AF6DABCCB2A29F</key>
-			<input>CA18344F4C7A0F068398CA8137C056DD</input>
-			<output>91FA4D62D10E852D9EDA42FAC8C34557<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 263</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A5981D9A37D6D3D948391D1D462B6DCFECFA73480F919C192A752F510471E7C8</key>
-			<input>91FA4D62D10E852D9EDA42FAC8C34557</input>
-			<output>B956221510135066B2B2552C4CB37642<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 264</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BF2E4397D0E93DFFA38D69B30F33835B55AC515D1F82CC7F98C77A7D48C2918A</key>
-			<input>B956221510135066B2B2552C4CB37642</input>
-			<output>300CFCEAFED28E622CD08222D3A3B0B0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 265</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>55432143B807A628001F8D062CE0157265A0ADB7E150421DB417F85F9B61213A</key>
-			<input>300CFCEAFED28E622CD08222D3A3B0B0</input>
-			<output>26681BCFDC630A21A684C60EF6A23747<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 266</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2966A6CB3BA9028583813B91FD72748D43C8B6783D33483C12933E516DC3167D</key>
-			<input>26681BCFDC630A21A684C60EF6A23747</input>
-			<output>8EDD4B1B458D16841AD4525C01A8397E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 267</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1A22288AC28060F8E4B20C2AE0C82AEACD15FD6378BE5EB808476C0D6C6B2F03</key>
-			<input>8EDD4B1B458D16841AD4525C01A8397E</input>
-			<output>BFDE412A7CAF0326AD1727996056A61C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 268</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C882E880508E92FF709E9BD4A555B30A72CBBC4904115D9EA5504B940C3D891F</key>
-			<input>BFDE412A7CAF0326AD1727996056A61C</input>
-			<output>88C039A0B395C5D08848C64DFC150C57<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 269</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>298B3829EE60112C926E1FD583C9A2DEFA0B85E9B784984E2D188DD9F0288548</key>
-			<input>88C039A0B395C5D08848C64DFC150C57</input>
-			<output>ACDF23F2CB73FD8D3D814A79E3C94126<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 270</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2F2A3D0DDB2DBA8B8E3FF8A9DE765FE356D4A61B7CF765C31099C7A013E1C46E</key>
-			<input>ACDF23F2CB73FD8D3D814A79E3C94126</input>
-			<output>A8BE26FE8780972650D5F384B744AC44<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 271</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F8CC20E8296CD38F1EF8BB2777EE1200FE6A80E5FB77F2E5404C3424A4A5682A</key>
-			<input>A8BE26FE8780972650D5F384B744AC44</input>
-			<output>B5557CC20F64FCC576A6EC7BE324CE43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 272</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>678B5341F1BC13DB366B36D59ADADC7C4B3FFC27F4130E2036EAD85F4781A669</key>
-			<input>B5557CC20F64FCC576A6EC7BE324CE43</input>
-			<output>B59281EFF9C8D19E5D9C053CBE1F2F33<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 273</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E4701C9009693E38C455CE186A4B87DFFEAD7DC80DDBDFBE6B76DD63F99E895A</key>
-			<input>B59281EFF9C8D19E5D9C053CBE1F2F33</input>
-			<output>7E8B1D4BFF81C5B9AA1FCA81DF8DE64F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 274</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C1F886CBCBF2BD920A0E68F30FCB8FCE80266083F25A1A07C16917E226136F15</key>
-			<input>7E8B1D4BFF81C5B9AA1FCA81DF8DE64F</input>
-			<output>20841B35C77A109B528A1135E17D36EE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 275</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F05D61A9441B3C741D9D7489F2EE4A5EA0A27BB635200A9C93E306D7C76E59FB</key>
-			<input>20841B35C77A109B528A1135E17D36EE</input>
-			<output>C3195DC001FA1AD7C253DD3FE4A4BC7D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 276</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0C8E70943252DD5DC9819A9FDB375B3F63BB267634DA104B51B0DBE823CAE586</key>
-			<input>C3195DC001FA1AD7C253DD3FE4A4BC7D</input>
-			<output>7E06BD1B3440DB4CA73AF1A05B33AD3F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 277</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>84F1B5CF1AD11205E98ECD317AD670A11DBD9B6D009ACB07F68A2A4878F948B9</key>
-			<input>7E06BD1B3440DB4CA73AF1A05B33AD3F</input>
-			<output>6224DBD71C1DC35A5C62777D2EA32C3E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 278</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E3465353AED687EF62CD1DA8D7DA3EEB7F9940BA1C87085DAAE85D35565A6487</key>
-			<input>6224DBD71C1DC35A5C62777D2EA32C3E</input>
-			<output>1E4E51CD7BA1F7467AC69755F8894EF4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 279</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>31F715D1FFA116F58AB70E4A3EEF6E9561D711776726FF1BD02ECA60AED32A73</key>
-			<input>1E4E51CD7BA1F7467AC69755F8894EF4</input>
-			<output>4AB8AFEACB2A1B1AE9E74D647266E234<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 280</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>487B6847CA14B04D429C81278332273F2B6FBE9DAC0CE40139C98704DCB5C847</key>
-			<input>4AB8AFEACB2A1B1AE9E74D647266E234</input>
-			<output>64C0BBA15382C142BBEE84B86B7D0BA0<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 281</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D1C9CA26B21945011B044EA6E29C9AD54FAF053CFF8E2543822703BCB7C8C3E7</key>
-			<input>64C0BBA15382C142BBEE84B86B7D0BA0</input>
-			<output>F82292AF614648EC6C1E9A1027167410<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 282</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3F585C00E187BE1B0C9E09781C9548A8B78D97939EC86DAFEE3999AC90DEB7F7</key>
-			<input>F82292AF614648EC6C1E9A1027167410</input>
-			<output>31C38ED5F207B412A14A51632D8805CE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 283</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>340B8C115BAFF387400CD8F0EE8F8F6F864E19466CCFD9BD4F73C8CFBD56B239</key>
-			<input>31C38ED5F207B412A14A51632D8805CE</input>
-			<output>3FC4CC8F4245BBBC5939A0C0A24A14DE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 284</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EA8EACF07402225D6C5181A8802DA515B98AD5C92E8A6201164A680F1F1CA6E7</key>
-			<input>3FC4CC8F4245BBBC5939A0C0A24A14DE</input>
-			<output>23A98FA41D6C3D4CD9CFB9737A6D7872<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 285</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>56EF7B73BF04F5F463E4D0EA0F6FC4DA9A235A6D33E65F4DCF85D17C6571DE95</key>
-			<input>23A98FA41D6C3D4CD9CFB9737A6D7872</input>
-			<output>82CC2D376B2772B7B988BEA17EFBB3D2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 286</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C425E380DA91C34B73CE922C59B13C8818EF775A58C12DFA760D6FDD1B8A6D47</key>
-			<input>82CC2D376B2772B7B988BEA17EFBB3D2</input>
-			<output>5330F6218D528A32B24085EA496A05A9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 287</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>EA66C7FF9FCD2F9E76BCC5C6387E133E4BDF817BD593A7C8C44DEA3752E068EE</key>
-			<input>5330F6218D528A32B24085EA496A05A9</input>
-			<output>7C1E082C2C89C90AD91AE81DF73F1F5F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 288</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C89CF336490832FB54BB536813AEE6EA37C18957F91A6EC21D57022AA5DF77B1</key>
-			<input>7C1E082C2C89C90AD91AE81DF73F1F5F</input>
-			<output>2AB33673B654E2C49D6736D65A5F45C8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 289</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7CC5409A9AE1F997774C3FEB74A6E9061D72BF244F4E8C06803034FCFF803279</key>
-			<input>2AB33673B654E2C49D6736D65A5F45C8</input>
-			<output>21BA6CADDCA5E0BE779D1A2651794C81<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 290</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E5E1873FDEE9DC066AF79C0E6027D0703CC8D38993EB6CB8F7AD2EDAAEF97EF8</key>
-			<input>21BA6CADDCA5E0BE779D1A2651794C81</input>
-			<output>8E2AF8BA54CF04812AE786C180FCFCA8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 291</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>844AA67914DE1C11677B5526D5B12765B2E22B33C7246839DD4AA81B2E058250</key>
-			<input>8E2AF8BA54CF04812AE786C180FCFCA8</input>
-			<output>E48A7CD35CA33B1D919B8A83ADF4C6BE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 292</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FE3248768ACB0AF9DBD639AF7B7EB944566857E09B8753244CD1229883F144EE</key>
-			<input>E48A7CD35CA33B1D919B8A83ADF4C6BE</input>
-			<output>C377A76CF43C27784CC54079744413D1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 293</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>709E7BC30A7DE8FADC071B3D04338FCA951FF08C6FBB745C001462E1F7B5573F</key>
-			<input>C377A76CF43C27784CC54079744413D1</input>
-			<output>01D8083A9EA403A4754EF82CA29CDD5B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 294</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>448B1AEC2F68D202679183D85C4A6D2194C7F8B6F11F77F8755A9ACD55298A64</key>
-			<input>01D8083A9EA403A4754EF82CA29CDD5B</input>
-			<output>46ADC32EFF2C3EFF40B468E845EFC2E4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 295</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>529401616FA6193014D6A10BEF1A816FD26A3B980E33490735EEF22510C64880</key>
-			<input>46ADC32EFF2C3EFF40B468E845EFC2E4</input>
-			<output>FCC6594B1BBF40E28BE798ABC00163F1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 296</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>15A5E8BAF02EF91390AB7D35742CC5C12EAC62D3158C09E5BE096A8ED0C72B71</key>
-			<input>FCC6594B1BBF40E28BE798ABC00163F1</input>
-			<output>28D35B6E1140738ED1DF20FE11003B1E<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 297</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>589C04ECDF2B884807919A2018A93080067F39BD04CC7A6B6FD64A70C1C7106F</key>
-			<input>28D35B6E1140738ED1DF20FE11003B1E</input>
-			<output>3354C7962E19FB043FD4CD7B2C99E195<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 298</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A6987BEB541098C7173475B34568F36B352BFE2B2AD5816F5002870BED5EF1FA</key>
-			<input>3354C7962E19FB043FD4CD7B2C99E195</input>
-			<output>EB76F282C9F10F507FACFCDEEC8BBBB8<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 299</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>3732B395057761A8A2624F52354668CFDE5D0CA9E3248E3F2FAE7BD501D54A42</key>
-			<input>EB76F282C9F10F507FACFCDEEC8BBBB8</input>
-			<output>77A4DAE8406992C5018D6B0310195E0C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 300</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E24C9F98F43E840AE04ED4928133F65AA9F9D641A34D1CFA2E2310D611CC144E</key>
-			<input>77A4DAE8406992C5018D6B0310195E0C</input>
-			<output>655DEC1062EDB50B8B31A66071E236A2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 301</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8BA207CA6E2B720810E66CCAB597E8DACCA43A51C1A0A9F1A512B6B6602E22EC</key>
-			<input>655DEC1062EDB50B8B31A66071E236A2</input>
-			<output>28A22A069D8FF3DE359860B0A5B6FD1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 302</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22C629C84758D553AFE4876AA739A1F0E40610575C2F5A2F908AD606C598DFF3</key>
-			<input>28A22A069D8FF3DE359860B0A5B6FD1F</input>
-			<output>95DD88B4AFD0680E221C70422ADFFCD1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 303</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F86A3C799AAB6884220196BF07E1643D71DB98E3F3FF3221B296A644EF472322</key>
-			<input>95DD88B4AFD0680E221C70422ADFFCD1</input>
-			<output>323475C634FD6845BAA9F371F29DC363<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 304</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>83412E9600B279F76C93F171C469AD1943EFED25C7025A64083F55351DDAE041</key>
-			<input>323475C634FD6845BAA9F371F29DC363</input>
-			<output>61276AD535F9E73FCFB53DBF2D5D1F62<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 305</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>01AD15137C4A572322660716B6B4EDCD22C887F0F2FBBD5BC78A688A3087FF23</key>
-			<input>61276AD535F9E73FCFB53DBF2D5D1F62</input>
-			<output>105ECB04A5CA32FC93987569A7CB46D7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 306</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1CC639BA56CA0DF23E64BB3395C08BB332964CF457318FA754121DE3974CB9F4</key>
-			<input>105ECB04A5CA32FC93987569A7CB46D7</input>
-			<output>831DBB3F4BBD4343B94D54AA2B3E0620<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 307</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>25ABCF5B8DB1A7CCB1FA49936E0AB3C8B18BF7CB1C8CCCE4ED5F4949BC72BFD4</key>
-			<input>831DBB3F4BBD4343B94D54AA2B3E0620</input>
-			<output>40B9D9C6201E639DC9A04E500BCD7F61<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 308</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>75B34E0F371C4527732F22CF35AD923BF1322E0D3C92AF7924FF0719B7BFC0B5</key>
-			<input>40B9D9C6201E639DC9A04E500BCD7F61</input>
-			<output>A159BB0C751148C14D561E0407A9F6DB<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 309</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1EB6E3491B431B7EFFCCC965C9041274506B95014983E7B869A9191DB016366E</key>
-			<input>A159BB0C751148C14D561E0407A9F6DB</input>
-			<output>2012E67815334AC48E5309DD129E0476<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 310</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F0BDAFB216613A6FB3819D08B17EFDC1707973795CB0AD7CE7FA10C0A2883218</key>
-			<input>2012E67815334AC48E5309DD129E0476</input>
-			<output>53E415BC0C9013F83B77298395FC9FEF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 311</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9C5A3B9C862E07159AB06D5B7FB585C5239D66C55020BE84DC8D39433774ADF7</key>
-			<input>53E415BC0C9013F83B77298395FC9FEF</input>
-			<output>2B1EEAA13373494A2A56C15FD5ECA103<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 312</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9764AC349B8222394160F4896BA6761808838C646353F7CEF6DBF81CE2980CF4</key>
-			<input>2B1EEAA13373494A2A56C15FD5ECA103</input>
-			<output>2A00E873782853DC842427A03C30A81A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 313</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>42A1614569C4DE66D6336BC082B3B9DD228364171B7BA41272FFDFBCDEA8A4EE</key>
-			<input>2A00E873782853DC842427A03C30A81A</input>
-			<output>5FEB74E489C4C8121A15C2BCF51046A5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 314</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CED80BE0859A5863CFE41F0F2CE9F65B7D6810F392BF6C0068EA1D002BB8E24B</key>
-			<input>5FEB74E489C4C8121A15C2BCF51046A5</input>
-			<output>948214D5DB68997C37A48927AA97B89A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 315</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>178DAF533EBB695D5E57401E5345C3E8E9EA042649D7F57C5F4E9427812F5AD1</key>
-			<input>948214D5DB68997C37A48927AA97B89A</input>
-			<output>AB8F3BB9917E4D1C8F1F2EDDB7070530<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 316</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>66F4B8B5A0BD877514FDB4CD2DD04D8C42653F9FD8A9B860D051BAFA36285FE1</key>
-			<input>AB8F3BB9917E4D1C8F1F2EDDB7070530</input>
-			<output>CB5FB11C6DB1AB6BC189F0F3FB47A2A5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 317</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9753278CFCEE8B059ECF573A2E0D65D6893A8E83B518130B11D84A09CD6FFD44</key>
-			<input>CB5FB11C6DB1AB6BC189F0F3FB47A2A5</input>
-			<output>F0CE65E6C5C263182E6C253F26460A1B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 318</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>121A860A5B53C56E536DE56566F31E2079F4EB6570DA70133FB46F36EB29F75F</key>
-			<input>F0CE65E6C5C263182E6C253F26460A1B</input>
-			<output>9AA17B0F532814CA74FF0A046F377C48<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 319</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>88F5E58E9522495BF7B68430946F7C0FE355906A23F264D94B4B6532841E8B17</key>
-			<input>9AA17B0F532814CA74FF0A046F377C48</input>
-			<output>52CAAEF16E55858487AEDBDBA822002D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 320</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D9A3D3547F215D44D80C6A5D3548D4D2B19F3E9B4DA7E15DCCE5BEE92C3C8B3A</key>
-			<input>52CAAEF16E55858487AEDBDBA822002D</input>
-			<output>2599545FD15C7F59A6F02CDCB95E6589<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 321</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6ACE86543B0F981C2D0FCB1408A42C3294066AC49CFB9E046A1592359562EEB3</key>
-			<input>2599545FD15C7F59A6F02CDCB95E6589</input>
-			<output>DC7A68313CE3E1963D31E5149CDBE22A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 322</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E9D6D08194DAFBB7B491124515118FA6487C02F5A0187F925724772109B90C99</key>
-			<input>DC7A68313CE3E1963D31E5149CDBE22A</input>
-			<output>333B588A7354CB3229E43780AFE4738D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 323</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>762FC93CEED1EE9C6EF702A4E3BBABD67B475A7FD34CB4A07EC040A1A65D7F14</key>
-			<input>333B588A7354CB3229E43780AFE4738D</input>
-			<output>41727DC0D18725AFD2EF8FF51EAE1C2C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 324</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FF4EC1DF818E820424CFE5D09EE2E5423A3527BF02CB910FAC2FCF54B8F36338</key>
-			<input>41727DC0D18725AFD2EF8FF51EAE1C2C</input>
-			<output>A7236B16D9937C84F37BF9D79D0251F9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 325</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>59BDAB706DEA2EC52AE05A2E4382A4169D164CA9DB58ED8B5F54368325F132C1</key>
-			<input>A7236B16D9937C84F37BF9D79D0251F9</input>
-			<output>B81D30EFDB86688F1DCA616EC771B9FD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 326</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4C008516CD614B6588A526FFE33C055B250B7C4600DE8504429E57EDE2808B3C</key>
-			<input>B81D30EFDB86688F1DCA616EC771B9FD</input>
-			<output>A5AD142C8F078ABF419B7CF5C86C9F83<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 327</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DB65698F99E4A27019ABE194A89E9BC680A6686A8FD90FBB03052B182AEC14BF</key>
-			<input>A5AD142C8F078ABF419B7CF5C86C9F83</input>
-			<output>861B59E3B61A5D02F0D70DFF40EF7FF2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 328</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0790C16C53A7826B4B309DDF99B5239006BD318939C352B9F3D226E76A036B4D</key>
-			<input>861B59E3B61A5D02F0D70DFF40EF7FF2</input>
-			<output>B0F4C2C4D0D282BE3128AD78D34B1FA6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 329</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>AFE168F089E676A806DD191003777E6DB649F34DE911D007C2FA8B9FB94874EB</key>
-			<input>B0F4C2C4D0D282BE3128AD78D34B1FA6</input>
-			<output>9DFCF5727851ADE8C37A9AA3AA77B20D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 330</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F261CDF199D9EF436C1A08EB9755A2112BB5063F91407DEF0180113C133FC6E6</key>
-			<input>9DFCF5727851ADE8C37A9AA3AA77B20D</input>
-			<output>9268DBA972B72C9DEF15CF9B8041F23B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 331</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E0D6DCF3BA840720688456A43E849C5CB9DDDD96E3F75172EE95DEA7937E34DD</key>
-			<input>9268DBA972B72C9DEF15CF9B8041F23B</input>
-			<output>D45A8B321CB6D8F28167C857BC2900BF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 332</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B77CF3A880C2E9E66D0C98A4D88555F46D8756A4FF4189806FF216F02F573462</key>
-			<input>D45A8B321CB6D8F28167C857BC2900BF</input>
-			<output>0124FE2D8BCB81E1286A18D2BABEA919<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 333</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7729E55EFA6B249E0207E06AAF6F09206CA3A889748A086147980E2295E99D7B</key>
-			<input>0124FE2D8BCB81E1286A18D2BABEA919</input>
-			<output>A1BB0D975A50BE8BD8C2973D4BA7BF42<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 334</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>102384784C54539084BC7181AA95F184CD18A51E2EDAB6EA9F5A991FDE4E2239</key>
-			<input>A1BB0D975A50BE8BD8C2973D4BA7BF42</input>
-			<output>15302D5DBFD8E407EADDE9896B42CB13<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 335</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9FF48EF1068BFC07DA38F7790D7418D2D8288843910252ED75877096B50CE92A</key>
-			<input>15302D5DBFD8E407EADDE9896B42CB13</input>
-			<output>90D93B8F802CFAD3F6E682DD704B5F43<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 336</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>84477EB9007ECDF8D1C4A6A976C76AB848F1B3CC112EA83E8361F24BC547B669</key>
-			<input>90D93B8F802CFAD3F6E682DD704B5F43</input>
-			<output>2DD7E0B91C5DDF0FD118F4CDD836A212<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 337</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F1CE87DE930567CE29DF313D8778358D652653750D737731527906861D71147B</key>
-			<input>2DD7E0B91C5DDF0FD118F4CDD836A212</input>
-			<output>AC9D307EFF44703D6FDA621FFF8D077C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 338</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>22D31C8F64CFB23620A70E7CD4A486D3C9BB630BF237070C3DA36499E2FC1307</key>
-			<input>AC9D307EFF44703D6FDA621FFF8D077C</input>
-			<output>CC6772DE3B27CB1DB3E5A804843EB6FF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 339</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FC9057D2D2D28BFAC4D5E3654717188205DC11D5C910CC118E46CC9D66C2A5F8</key>
-			<input>CC6772DE3B27CB1DB3E5A804843EB6FF</input>
-			<output>BDB021550FE0744090EAFEEBCF422061<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 340</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1EA032190E7E4CC45D2E1E138429658AB86C3080C6F0B8511EAC3276A9808599</key>
-			<input>BDB021550FE0744090EAFEEBCF422061</input>
-			<output>C6E21F9A1305C3969F2D70C11D58A1A7<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 341</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>B633EDA212B952785755700FBDC91CA57E8E2F1AD5F57BC7818142B7B4D8243E</key>
-			<input>C6E21F9A1305C3969F2D70C11D58A1A7</input>
-			<output>01BC936B7063CA9D28DB1FFCCB9C2048<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 342</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>94A06984520AB40D74568F0D5286AEE37F32BC71A596B15AA95A5D4B7F440476</key>
-			<input>01BC936B7063CA9D28DB1FFCCB9C2048</input>
-			<output>88279D100DFA68CEBD9949F19C3333F4<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 343</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>96A3BD621155F71A9EFB8E35F95238ACF7152161A86CD99414C314BAE3773782</key>
-			<input>88279D100DFA68CEBD9949F19C3333F4</input>
-			<output>41574A686596D4741BF5DE52B5183260<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 344</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>185312E4301E5AADC373CEB3EBA66FB7B6426B09CDFA0DE00F36CAE8566F05E2</key>
-			<input>41574A686596D4741BF5DE52B5183260</input>
-			<output>BD9F5087C32A66A4797C7EE87355FF4A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 345</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BC5D60D256DCA48E88E52F05C349431A0BDD3B8E0ED06B44764AB400253AFAA8</key>
-			<input>BD9F5087C32A66A4797C7EE87355FF4A</input>
-			<output>A88BC3FAF87D6C1D3F98A2884EF1D4DA<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 346</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1485A9209167A6FA2ECD2CE6AA03DBA5A356F874F6AD075949D216886BCB2E72</key>
-			<input>A88BC3FAF87D6C1D3F98A2884EF1D4DA</input>
-			<output>E514E6E34A050EB917F2382EDF92353A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 347</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2B62B0E29763FF09F53A2006B990E97746421E97BCA809E05E202EA6B4591B48</key>
-			<input>E514E6E34A050EB917F2382EDF92353A</input>
-			<output>142EEBE72E0F56ABE5D67FCC28F957F6<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 348</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FC13067E362B7C9C39AA73B85F32011C526CF57092A75F4BBBF6516A9CA04CBE</key>
-			<input>142EEBE72E0F56ABE5D67FCC28F957F6</input>
-			<output>24FDB7A03FE8A9288BFAA5AC2527D015<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 349</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>8AC3B473244989EA74025FE98269BC17769142D0AD4FF663300CF4C6B9879CAB</key>
-			<input>24FDB7A03FE8A9288BFAA5AC2527D015</input>
-			<output>649095ABA5F4006B7B89D20F10A37AE9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 350</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>FD0F4205DBFF0160203898EF02E9088E1201D77B08BBF6084B8526C9A924E642</key>
-			<input>649095ABA5F4006B7B89D20F10A37AE9</input>
-			<output>F5428E8BDDDC31FC8EF67BC7DB3201D3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 351</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>701AF95194FB0918BC2CA79AFD507336E74359F0D567C7F4C5735D0E7216E791</key>
-			<input>F5428E8BDDDC31FC8EF67BC7DB3201D3</input>
-			<output>A56B2014A4929373DC1F6FD5C0AC138C<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 352</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>633D0E72722E6443D4E219086D221939422879E471F55487196C32DBB2BAF41D</key>
-			<input>A56B2014A4929373DC1F6FD5C0AC138C</input>
-			<output>F35F9CD43144B358843A48B4D1C41882<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 353</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>DCA79BA0184EC0A22A875E5057CA967AB177E53040B1E7DF9D567A6F637EEC9F</key>
-			<input>F35F9CD43144B358843A48B4D1C41882</input>
-			<output>A572C1F98330A1C1FA91DFD5A5B76AB9<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 354</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A3D0FE4C3C1A1CE19CF66CF80135553D140524C9C381461E67C7A5BAC6C98626</key>
-			<input>A572C1F98330A1C1FA91DFD5A5B76AB9</input>
-			<output>23C56E065427F0409504053DD8A994CD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 355</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>175C8D4085802768D20875CDBE6EFE2437C04ACF97A6B65EF2C3A0871E6012EB</key>
-			<input>23C56E065427F0409504053DD8A994CD</input>
-			<output>7E666724C1CAC0A582325381E9C98D73<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 356</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>800EE65CA3DE8643371DA10FB0605AB649A62DEB566C76FB70F1F306F7A99F98</key>
-			<input>7E666724C1CAC0A582325381E9C98D73</input>
-			<output>B6C18D730A074196884CADF151CAC890<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 357</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F526E578E8978822944644B146154425FF67A0985C6B376DF8BD5EF7A6635708</key>
-			<input>B6C18D730A074196884CADF151CAC890</input>
-			<output>0068BB370419CD39748559C2DE206817<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 358</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7D144850BE03306F41A642442890EA20FF0F1BAF5872FA548C38073578433F1F</key>
-			<input>0068BB370419CD39748559C2DE206817</input>
-			<output>56852D240F01729C4EAD0B1FFC3EDA1F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 359</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>33B2189E3774B1A066BE522C07550F88A98A368B577388C8C2950C2A847DE500</key>
-			<input>56852D240F01729C4EAD0B1FFC3EDA1F</input>
-			<output>458633A84E1F5737E9668A37388CF3C2<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 360</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CF53C76250347B0CC5CAC660D52199B1EC0C0523196CDFFF2BF3861DBCF116C2</key>
-			<input>458633A84E1F5737E9668A37388CF3C2</input>
-			<output>F96E181E03350F27106C8D24403A49DD<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 361</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>618676C1702531077565060B5DA0570B15621D3D1A59D0D83B9F0B39FCCB5F1F</key>
-			<input>F96E181E03350F27106C8D24403A49DD</input>
-			<output>B515584E252F703A4EB55E81EDA58E30<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 362</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D2C8CF9645CD741F67263845150FE649A07745733F76A0E2752A55B8116ED12F</key>
-			<input>B515584E252F703A4EB55E81EDA58E30</input>
-			<output>54E7D10C236785AFE0A93B3971D6F237<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 363</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D0847F41C7940023491C2F83D02F8271F490947F1C11254D95836E8160B82318</key>
-			<input>54E7D10C236785AFE0A93B3971D6F237</input>
-			<output>937DFDE10E96030A0A8823EA3EF31B98<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 364</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>17502FC3077EFD420D2268CE0FF26F4667ED699E128726479F0B4D6B5E4B3880</key>
-			<input>937DFDE10E96030A0A8823EA3EF31B98</input>
-			<output>93FDF0392A3391C74DBE4229792C9630<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 365</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4D6AA08A6C7EB7CA9CBE7AF4500C229EF41099A738B4B780D2B50F422767AEB0</key>
-			<input>93FDF0392A3391C74DBE4229792C9630</input>
-			<output>B9F80E1476658E6CE7FADBA215298958<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 366</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D8820A50934290C146AFE477D9D4A0224DE897B34ED139EC354FD4E0324E27E8</key>
-			<input>B9F80E1476658E6CE7FADBA215298958</input>
-			<output>87ACDCD1F1332B9961CC5E18F9009A39<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 367</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>50E8959452DD52247A6F21A0C7BEDEB8CA444B62BFE2127554838AF8CB4EBDD1</key>
-			<input>87ACDCD1F1332B9961CC5E18F9009A39</input>
-			<output>3DD6249971FEC0FB4432236078D98D53<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 368</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>7A1973C5B90748596A54C709D1598DA5F7926FFBCE1CD28E10B1A998B3973082</key>
-			<input>3DD6249971FEC0FB4432236078D98D53</input>
-			<output>D540F8BDE3442D17E88B524D00618309<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 369</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>F9C08719A452CA931A62C5BD8F1D669D22D297462D58FF99F83AFBD5B3F6B38B</key>
-			<input>D540F8BDE3442D17E88B524D00618309</input>
-			<output>7BB18B2DA9ED188BCE3B18C02C9B3F3B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 370</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5EBA35F7E58381DBE29EC4A1D9B5B9AD59631C6B84B5E7123601E3159F6D8CB0</key>
-			<input>7BB18B2DA9ED188BCE3B18C02C9B3F3B</input>
-			<output>9A7380BAA169495B0FC29BB002D70E48<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 371</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>E442442FE32FA6BDA63AF0A6AC5D5AB2C3109CD125DCAE4939C378A59DBA82F8</key>
-			<input>9A7380BAA169495B0FC29BB002D70E48</input>
-			<output>88F3FE65298F7498A788E4196F13FC80<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 372</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>39079A8713E148703212A6F7FFD1B04D4BE362B40C53DAD19E4B9CBCF2A97E78</key>
-			<input>88F3FE65298F7498A788E4196F13FC80</input>
-			<output>A5E6361FBA6418CD9B2F50992B50A557<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 373</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>A99A33F38B36E3EE4DEE59F8A4282A84EE0554ABB637C21C0564CC25D9F9DB2F</key>
-			<input>A5E6361FBA6418CD9B2F50992B50A557</input>
-			<output>B1430F431ACC1C498FABF2D33B63CC67<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 374</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>BC09FAC540F44949F3B8EDFE2444CA725F465BE8ACFBDE558ACF3EF6E29A1748</key>
-			<input>B1430F431ACC1C498FABF2D33B63CC67</input>
-			<output>A90D76642D8D7899DD4A85EB92C89382<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 375</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D26C1D07B51073C609030DC782FFAE93F64B2D8C8176A6CC5785BB1D705284CA</key>
-			<input>A90D76642D8D7899DD4A85EB92C89382</input>
-			<output>57522F39211100EF248D4A34E35CE4CE<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 376</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2D7ADCD18F615F814B8D8B07CE48B4A1A11902B5A067A6237308F129930E6004</key>
-			<input>57522F39211100EF248D4A34E35CE4CE</input>
-			<output>87AED1E0C9F067C5F3F6D3D3BBCDE872<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 377</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>CA206C3442FAEFF3CB1292C675F52C2426B7D3556997C1E680FE22FA28C38876</key>
-			<input>87AED1E0C9F067C5F3F6D3D3BBCDE872</input>
-			<output>05798F53DFAE4A78D7BEEC24BE775B55<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 378</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>6ECC5BC346B18446D77FFBC44CCB0B1823CE5C06B6398B9E5740CEDE96B4D323</key>
-			<input>05798F53DFAE4A78D7BEEC24BE775B55</input>
-			<output>7677CE104395FFA15B51F81DAFBCAB1A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 379</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2E52C8E239CF1E959AB831307034FEF755B99216F5AC743F0C1136C339087839</key>
-			<input>7677CE104395FFA15B51F81DAFBCAB1A</input>
-			<output>760DE53561246F944B3E6279B39373F1<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 380</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>79B65B7D435E2134A1AB9A1CC1F08A8423B4772394881BAB472F54BA8A9B0BC8</key>
-			<input>760DE53561246F944B3E6279B39373F1</input>
-			<output>5B61CC978A9C808767C272432765EC0B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 381</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9EF57B89E7B8127348A9EF05E93DCC8D78D5BBB41E149B2C20ED26F9ADFEE7C3</key>
-			<input>5B61CC978A9C808767C272432765EC0B</input>
-			<output>902CDF3BD5E869E9CCFF8F2A454E1D42<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 382</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>15BB7B6BC685E4865BFA134C59CFC9C5E8F9648FCBFCF2C5EC12A9D3E8B0FA81</key>
-			<input>902CDF3BD5E869E9CCFF8F2A454E1D42</input>
-			<output>38264937B9372C316478BDF7AE578900<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 383</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>735D93C1DDD54986ACC6C2B0DFCC5E8AD0DF2DB872CBDEF4886A142446E77381</key>
-			<input>38264937B9372C316478BDF7AE578900</input>
-			<output>3BFE31D3E909E6EC3112F88DB8FFCA45<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 384</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>675B0E7FC5BCC3AF319B1D55C1F62CCAEB211C6B9BC23818B978ECA9FE18B9C4</key>
-			<input>3BFE31D3E909E6EC3112F88DB8FFCA45</input>
-			<output>2BFD5F6532BC1D2A8DA34481F9228B84<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 385</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0AB242F9783E75D04E98733E63458F53C0DC430EA97E253234DBA828073A3240</key>
-			<input>2BFD5F6532BC1D2A8DA34481F9228B84</input>
-			<output>161481003108BAEFCC02BFD335C6A89F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 386</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>58457CB82A24222839CF20D837F168A8D6C8C20E98769FDDF8D917FB32FC9ADF</key>
-			<input>161481003108BAEFCC02BFD335C6A89F</input>
-			<output>8A50E98A1165C1B6137231E519EC137B<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 387</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>C2C52CEA5654AAC9BD60FA04068094EF5C982B8489135E6BEBAB261E2B1089A4</key>
-			<input>8A50E98A1165C1B6137231E519EC137B</input>
-			<output>24ACAA0F045F5A6765D3B468550585B5<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 388</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>816757A434D81AA348E0B2F4FC44F4387834818B8D4C040C8E7892767E150C11</key>
-			<input>24ACAA0F045F5A6765D3B468550585B5</input>
-			<output>9993F9CBDAD9CA98C74CCBDB3E079F50<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 389</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>647A9F1E43B08FD15EFC17342EB8970AE1A778405795CE94493459AD40129341</key>
-			<input>9993F9CBDAD9CA98C74CCBDB3E079F50</input>
-			<output>F676785AEF58297C28035E8E065829FF<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 390</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>4BB8B5020862EA9228B663DEDB39336717D1001AB8CDE7E861370723464ABABE</key>
-			<input>F676785AEF58297C28035E8E065829FF</input>
-			<output>ED16C74BD4252F7B72AA37D11E198508<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 391</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>5392AAED87CE40891A69F4690A8743FBFAC7C7516CE8C893139D30F258533FB6</key>
-			<input>ED16C74BD4252F7B72AA37D11E198508</input>
-			<output>3BE7B6A9E197598146E98B7A501A2226<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 392</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>9D8BABE9C12E6BA3A18EB23A92205456C12071F88D7F91125574BB8808491D90</key>
-			<input>3BE7B6A9E197598146E98B7A501A2226</input>
-			<output>CC1163A3D9AF3307ED740591AB66BD81<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 393</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>231B451E506AC98FF993A3C7AD9C37F70D31125B54D0A215B800BE19A32FA011</key>
-			<input>CC1163A3D9AF3307ED740591AB66BD81</input>
-			<output>43FB8B2B44C740956111DA816616771D<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 394</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>1699C517EE1713D02C6EA0957E4A00CE4ECA99701017E280D9116498C539D70C</key>
-			<input>43FB8B2B44C740956111DA816616771D</input>
-			<output>A511AEA01DB8E7E16E7C53931625BEC3<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 395</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>2624CE7970CC5DAFAC73C881FDD5F6EBEBDB37D00DAF0561B76D370BD31C69CF</key>
-			<input>A511AEA01DB8E7E16E7C53931625BEC3</input>
-			<output>82EF6D2A1FF1DBCDF39DC04BE523229F<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 396</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>60C9931E19ED0D095F8DF75AEA56689769345AFA125EDEAC44F0F740363F4B50</key>
-			<input>82EF6D2A1FF1DBCDF39DC04BE523229F</input>
-			<output>A595C8AAAAAD80DD4F40693FF2D89A19<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 397</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>D461E3605B0AD0E87F5A078ECFE25934CCA19250B8F35E710BB09E7FC4E7D149</key>
-			<input>A595C8AAAAAD80DD4F40693FF2D89A19</input>
-			<output>57B18DFEAD129795C3BB8D6C06764729<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 398</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>0BE3FC6C21764F1C15782D52D92919A09B101FAE15E1C9E4C80B1313C2919660</key>
-			<input>57B18DFEAD129795C3BB8D6C06764729</input>
-			<output>6F8606BBA6CC03A5D0A64FE21E277B60<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB MonteCarlo ENC 399</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_ECB</ciphertype>
-			<key>982D617A0F737342E99123A5A573D266F4961915B32DCA4118AD5CF1DCB6ED00</key>
-			<input>6F8606BBA6CC03A5D0A64FE21E277B60</input>
-			<output>1F6763DF807A7E70960D4CD3118E601A<output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-
--- a/crypto/weakcrypto/test/tsymmetric/scripts/symmetricOOMtests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,350 +0,0 @@
-<action>
-	<actionname>None</actionname>
-	<actiontype>startmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>3DES CBC Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES ECB Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Incremental Buffering Test 0</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>AESECB</ciphertype>
-			<key>01010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>RC4</ciphertype>
-			<key>01010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>DES ECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>8000000000000000</input>
-			<output>95F8A5E5DD31D900</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>2000000000000000</input>
-			<output>2E8653104F3834EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>1000000000000000</input>
-			<output>4BD388FF6CD81D4F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>61A8A244ADACCCF0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>88BCA90E90875A7F</input>
-			<output>B0E5CDDD09CB4581</output>
-			<iv>456789ABCDEF0123</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<input>9017E9CEB5ECDD634860A86C1BB51663A5244CED6125B0359DAE984EDE35C86D</input>
-			<output>1400000C12C873074727389C1041B96E3BF94260A8772A294823ACA42EF21651</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>022F0FFA3CB41D904C9D8A5EB98FC953</key>
-			<input>1400000CED47F2AC3869DAEA1E2A05F51BAACEA8885D0FECCAE2A4E9A9419C6B</input>
-			<output>09B6024ACDDAB55A0CE3D306A70467D39F1190C27280664153F7B713B0F61AC2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 1 -- oh the humour</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<input>6284093818384927</input>
-			<output>6284093818384927</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 2 -- oh the humour</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<input>984908728230972B34</input>
-			<output>984908728230972B34</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>AES ECB KAT VK 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<input>00000000000000000000000000000000</input>
-			<output>0EDD33D3C621E546455BD8BA1418BEC8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB KAT VT 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<input>80000000000000000000000000000000</input>
-			<output>3AD78E726C1EC02B7EBFE92B23D9EC34</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AESECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>00010203050607080A0B0C0D0F101112</key>
-			<input>506812A45F08C889B97F5980038B8359</input>
-			<output>D8F532538289EF7D06B506A4FD5BE9C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Dec 1</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESDEC_CBC</ciphertype>
-			<key>FACA37E0B0C85373DF706E73F7C9AF86</key>
-			<iv>52D0C29FF8793A519BD6A8289FC80E6A</iv>
-			<input>FACA37E0B0C85373DF706E73F7C9AF86</input>
-			<output>F5372F9735C5685F1DA362AF6ECB2940</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES CBC MonteCarlo Enc 0</actionname>
-	<actiontype>MonteCarlo</actiontype>
-	<actionbody>
-		<MonteCarlo>
-			<ciphertype>AESENC_CBC</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<iv>00000000000000000000000000000000</iv>
-			<input>00000000000000000000000000000000</input>
-			<output>8A05FC5E095AF4848A08D328D3688E3D</output>
-			<result>ETrue</result>
-		</MonteCarlo>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>None</actionname>
-	<actiontype>stopmemfailure</actiontype>
-	<actionbody></actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
\ No newline at end of file
--- a/crypto/weakcrypto/test/tsymmetric/scripts/tsymmetricperformancetests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1389 +0,0 @@
-// Start of performance testing
-//
-// The <randDataSize> tags indicate the size in bytes of the 
-// random input data to be generated for the cipher in each test case.
-//
-<action>
-	<actionname>DES ECB Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>8</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>8</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>16</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>32</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>64</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>128</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>256</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>512</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>1024</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>2048</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<randDataSize>4096</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>8</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>8</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>16</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>32</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>64</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>128</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>256</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>512</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>1024</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>2048</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<randDataSize>4096</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>8</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>8</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>16</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>32</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>64</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>128</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>256</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>512</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>1024</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>2048</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<randDataSize>4096</randDataSize>
-			<iv>0000000000000000</iv>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>AESECB</ciphertype>
-			<key>80000000000000000000000000000000</key>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>8</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 0 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>8</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 1 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>16</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 2 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>32</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 3 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>64</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 4 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>128</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 5 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>256</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 6 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>512</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 7 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>1024</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 8 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>2048</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 9 (Performance)</actionname>
-	<actiontype>Performance</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<randDataSize>4096</randDataSize>
-			<iterations>1</iterations>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
--- a/crypto/weakcrypto/test/tsymmetric/scripts/tsymmetrictests.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14235 +0,0 @@
-<action>
-	<actionname>3DES CBC Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES CBC Incremental Buffering Test 2</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>01234567890123456789012345678901</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES CBC Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES ECB Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES ECB Incremental Buffering Test 2</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>01234567890123456789012345678901</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3DES ECB Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Incremental Buffering Test 2</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>01234567890123456789012345678901</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Incremental Buffering Test 0</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>AESECB</ciphertype>
-			<key>01010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>AESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>AES ECB Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>AESECB</ciphertype>
-			<key>0101010101010101010101010101010101010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>RC4</ciphertype>
-			<key>01010101010101010101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Incremental Buffering Test 2</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>RC4</ciphertype>
-			<key>01010101010101010101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>RC4</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<input>0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Incremental Buffering Test 1</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Incremental Buffering Test 2</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>01234567890123456789012345678901</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Incremental Buffering Test 3</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>8000000000000000</input>
-			<output>95F8A5E5DD31D900</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>4000000000000000</input>
-			<output>DD7F121CA5015619</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>2000000000000000</input>
-			<output>2E8653104F3834EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>1000000000000000</input>
-			<output>4BD388FF6CD81D4F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0800000000000000</input>
-			<output>20B9E767B2FB1456</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0400000000000000</input>
-			<output>55579380D77138EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0200000000000000</input>
-			<output>6CC5DEFAAF04512F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0100000000000000</input>
-			<output>0D9F279BA5D87260</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0080000000000000</input>
-			<output>D9031B0271BD5A0A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0040000000000000</input>
-			<output>424250B37C3DD951</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0020000000000000</input>
-			<output>B8061B7ECD9A21E5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0010000000000000</input>
-			<output>F15D0F286B65BD28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0008000000000000</input>
-			<output>ADD0CC8D6E5DEBA1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0004000000000000</input>
-			<output>E6D5F82752AD63D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0002000000000000</input>
-			<output>ECBFE3BD3F591A5E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0001000000000000</input>
-			<output>F356834379D165CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000800000000000</input>
-			<output>2B9F982F20037FA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000400000000000</input>
-			<output>889DE068A16F0BE6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000200000000000</input>
-			<output>E19E275D846A1298</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000100000000000</input>
-			<output>329A8ED523D71AEC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000080000000000</input>
-			<output>E7FCE22557D23C97</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000040000000000</input>
-			<output>12A9F5817FF2D65D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000020000000000</input>
-			<output>A484C3AD38DC9C19</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000010000000000</input>
-			<output>FBE00A8A1EF8AD72</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000008000000000</input>
-			<output>750D079407521363</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000004000000000</input>
-			<output>64FEED9C724C2FAF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000002000000000</input>
-			<output>F02B263B328E2B60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000001000000000</input>
-			<output>9D64555A9A10B852</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000800000000</input>
-			<output>D106FF0BED5255D7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000400000000</input>
-			<output>E1652C6B138C64A5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000200000000</input>
-			<output>E428581186EC8F46</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000100000000</input>
-			<output>AEB5F5EDE22D1A36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000080000000</input>
-			<output>E943D7568AEC0C5C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000040000000</input>
-			<output>DF98C8276F54B04B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000020000000</input>
-			<output>B160E4680F6C696F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000010000000</input>
-			<output>FA0752B07D9C4AB8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000008000000</input>
-			<output>CA3A2B036DBC8502</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000004000000</input>
-			<output>5E0905517BB59BCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000002000000</input>
-			<output>814EEB3B91D90726</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000001000000</input>
-			<output>4D49DB1532919C9F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000800000</input>
-			<output>25EB5FC3F8CF0621</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000400000</input>
-			<output>AB6A20C0620D1C6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000200000</input>
-			<output>79E90DBC98F92CCA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000100000</input>
-			<output>866ECEDD8072BB0E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000080000</input>
-			<output>8B54536F2F3E64A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000040000</input>
-			<output>EA51D3975595B86B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000020000</input>
-			<output>CAFFC6AC4542DE31</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000010000</input>
-			<output>8DD45A2DDF90796C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000008000</input>
-			<output>1029D55E880EC2D0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000004000</input>
-			<output>5D86CB23639DBEA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000002000</input>
-			<output>1D1CA853AE7C0C5F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000001000</input>
-			<output>CE332329248F3228</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000800</input>
-			<output>8405D1ABE24FB942</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000400</input>
-			<output>E643D78090CA4207</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000200</input>
-			<output>48221B9937748A23</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000100</input>
-			<output>DD7C0BBD61FAFD54</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000080</input>
-			<output>2FBC291A570DB5C4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000040</input>
-			<output>E07C30D7E4E26E12</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000020</input>
-			<output>0953E2258E8E90A1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000010</input>
-			<output>5B711BC4CEEBF2EE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000008</input>
-			<output>CC083F1E6D9E85F6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000004</input>
-			<output>D2FD8867D50D2DFE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000002</input>
-			<output>06E7EA22CE92708F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000001</input>
-			<output>166B40B44ABA4BD6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>8001010101010101</key>
-			<input>0000000000000000</input>
-			<output>95A8D72813DAA94D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>4001010101010101</key>
-			<input>0000000000000000</input>
-			<output>0EEC1487DD8C26D5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>2001010101010101</key>
-			<input>0000000000000000</input>
-			<output>7AD16FFB79C45926</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1001010101010101</key>
-			<input>0000000000000000</input>
-			<output>D3746294CA6A6CF3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0801010101010101</key>
-			<input>0000000000000000</input>
-			<output>809F5F873C1FD761</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0401010101010101</key>
-			<input>0000000000000000</input>
-			<output>C02FAFFEC989D1FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0201010101010101</key>
-			<input>0000000000000000</input>
-			<output>4615AA1D33E72F10</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0180010101010101</key>
-			<input>0000000000000000</input>
-			<output>2055123350C00858</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0140010101010101</key>
-			<input>0000000000000000</input>
-			<output>DF3B99D6577397C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0120010101010101</key>
-			<input>0000000000000000</input>
-			<output>31FE17369B5288C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0110010101010101</key>
-			<input>0000000000000000</input>
-			<output>DFDD3CC64DAE1642</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0108010101010101</key>
-			<input>0000000000000000</input>
-			<output>178C83CE2B399D94</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0104010101010101</key>
-			<input>0000000000000000</input>
-			<output>50F636324A9B7F80</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0102010101010101</key>
-			<input>0000000000000000</input>
-			<output>A8468EE3BC18F06D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101800101010101</key>
-			<input>0000000000000000</input>
-			<output>A2DC9E92FD3CDE92</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101400101010101</key>
-			<input>0000000000000000</input>
-			<output>CAC09F797D031287</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101200101010101</key>
-			<input>0000000000000000</input>
-			<output>90BA680B22AEB525</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101100101010101</key>
-			<input>0000000000000000</input>
-			<output>CE7A24F350E280B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101080101010101</key>
-			<input>0000000000000000</input>
-			<output>882BFF0AA01A0B87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101040101010101</key>
-			<input>0000000000000000</input>
-			<output>25610288924511C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101020101010101</key>
-			<input>0000000000000000</input>
-			<output>C71516C29C75D170</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101018001010101</key>
-			<input>0000000000000000</input>
-			<output>5199C29A52C9F059</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101014001010101</key>
-			<input>0000000000000000</input>
-			<output>C22F0A294A71F29F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101012001010101</key>
-			<input>0000000000000000</input>
-			<output>EE371483714C02EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101011001010101</key>
-			<input>0000000000000000</input>
-			<output>A81FBD448F9E522F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010801010101</key>
-			<input>0000000000000000</input>
-			<output>4F644C92E192DFED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010401010101</key>
-			<input>0000000000000000</input>
-			<output>1AFA9A66A6DF92AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010201010101</key>
-			<input>0000000000000000</input>
-			<output>B3C1CC715CB879D8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010180010101</key>
-			<input>0000000000000000</input>
-			<output>19D032E64AB0BD8B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010140010101</key>
-			<input>0000000000000000</input>
-			<output>3CFAA7A7DC8720DC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010120010101</key>
-			<input>0000000000000000</input>
-			<output>B7265F7F447AC6F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010110010101</key>
-			<input>0000000000000000</input>
-			<output>9DB73B3C0D163F54</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010108010101</key>
-			<input>0000000000000000</input>
-			<output>8181B65BABF4A975</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010104010101</key>
-			<input>0000000000000000</input>
-			<output>93C9B64042EAA240</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010102010101</key>
-			<input>0000000000000000</input>
-			<output>5570530829705592</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101800101</key>
-			<input>0000000000000000</input>
-			<output>8638809E878787A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101400101</key>
-			<input>0000000000000000</input>
-			<output>41B9A79AF79AC208</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101200101</key>
-			<input>0000000000000000</input>
-			<output>7A9BE42F2009A892</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101100101</key>
-			<input>0000000000000000</input>
-			<output>29038D56BA6D2745</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101080101</key>
-			<input>0000000000000000</input>
-			<output>5495C6ABF1E5DF51</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101040101</key>
-			<input>0000000000000000</input>
-			<output>AE13DBD561488933</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101020101</key>
-			<input>0000000000000000</input>
-			<output>024D1FFA8904E389</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101018001</key>
-			<input>0000000000000000</input>
-			<output>D1399712F99BF02E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101014001</key>
-			<input>0000000000000000</input>
-			<output>14C1D7C1CFFEC79E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101012001</key>
-			<input>0000000000000000</input>
-			<output>1DE5279DAE3BED6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101011001</key>
-			<input>0000000000000000</input>
-			<output>E941A33F85501303</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010801</key>
-			<input>0000000000000000</input>
-			<output>DA99DBBC9A03F379</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010401</key>
-			<input>0000000000000000</input>
-			<output>B7FC92F91D8E92E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010201</key>
-			<input>0000000000000000</input>
-			<output>AE8E5CAA3CA04E85</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010180</key>
-			<input>0000000000000000</input>
-			<output>9CC62DF43B6EED74</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010140</key>
-			<input>0000000000000000</input>
-			<output>D863DBB5C59A91A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010120</key>
-			<input>0000000000000000</input>
-			<output>A1AB2190545B91D7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010110</key>
-			<input>0000000000000000</input>
-			<output>0875041E64C570F7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010108</key>
-			<input>0000000000000000</input>
-			<output>5A594528BEBEF1CC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010104</key>
-			<input>0000000000000000</input>
-			<output>FCDB3291DE21F0C0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0101010101010102</key>
-			<input>0000000000000000</input>
-			<output>869EFD7F9F265A09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1046913489980131</key>
-			<input>0000000000000000</input>
-			<output>88D55E54F54C97B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007103489988020</key>
-			<input>0000000000000000</input>
-			<output>0C0CC00C83EA48FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10071034C8980120</key>
-			<input>0000000000000000</input>
-			<output>83BC8EF3A6570183</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1046103489988020</key>
-			<input>0000000000000000</input>
-			<output>DF725DCAD94EA2E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1086911519190101</key>
-			<input>0000000000000000</input>
-			<output>E652B53B550BE8B0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1086911519580101</key>
-			<input>0000000000000000</input>
-			<output>AF527120C485CBB0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>5107B01519580101</key>
-			<input>0000000000000000</input>
-			<output>0F04CE393DB926D5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007B01519190101</key>
-			<input>0000000000000000</input>
-			<output>C9F00FFC74079067</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>3107915498080101</key>
-			<input>0000000000000000</input>
-			<output>7CFD82A593252B4E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>3107919498080101</key>
-			<input>0000000000000000</input>
-			<output>CB49A2F9E91363E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10079115B9080140</key>
-			<input>0000000000000000</input>
-			<output>00B588BE70D23F56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>3107911598080140</key>
-			<input>0000000000000000</input>
-			<output>406A9A6AB43399AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007D01589980101</key>
-			<input>0000000000000000</input>
-			<output>6CB773611DCA9ADA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>9107911589980101</key>
-			<input>0000000000000000</input>
-			<output>67FD21C17DBB5D70</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>9107D01589190101</key>
-			<input>0000000000000000</input>
-			<output>9592CB4110430787</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007D01598980120</key>
-			<input>0000000000000000</input>
-			<output>A6B7FF68A318DDD3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007940498190101</key>
-			<input>0000000000000000</input>
-			<output>4D102196C914CA16</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0107910491190401</key>
-			<input>0000000000000000</input>
-			<output>2DFA9F4573594965</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0107910491190101</key>
-			<input>0000000000000000</input>
-			<output>B46604816C0E0774</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0107940491190401</key>
-			<input>0000000000000000</input>
-			<output>6E7E6221A4F34E87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>19079210981A0101</key>
-			<input>0000000000000000</input>
-			<output>AA85E74643233199</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007911998190801</key>
-			<input>0000000000000000</input>
-			<output>2E5A19DB4D1962D6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10079119981A0801</key>
-			<input>0000000000000000</input>
-			<output>23A866A809D30894</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1007921098190101</key>
-			<input>0000000000000000</input>
-			<output>D812D961F017D320</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>100791159819010B</key>
-			<input>0000000000000000</input>
-			<output>055605816E58608F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1004801598190101</key>
-			<input>0000000000000000</input>
-			<output>ABD88E8B1B7716F1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1004801598190102</key>
-			<input>0000000000000000</input>
-			<output>537AC95BE69DA1E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1004801598190108</key>
-			<input>0000000000000000</input>
-			<output>AED0F6AE3C25CDD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1002911598100104</key>
-			<input>0000000000000000</input>
-			<output>B3E35A5EE53E7B8D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1002911598190104</key>
-			<input>0000000000000000</input>
-			<output>61C79C71921A2EF8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1002911598100201</key>
-			<input>0000000000000000</input>
-			<output>E2F5728F0995013C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1002911698100101</key>
-			<input>0000000000000000</input>
-			<output>1AEAC39A61F0A464</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>7CA110454A1A6E57</key>
-			<input>01A1D6D039776742</input>
-			<output>690F5B0D9A26939B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0131D9619DC1376E</key>
-			<input>5CD54CA83DEF57DA</input>
-			<output>7A389D10354BD271</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>07A1133E4A0B2686</key>
-			<input>0248D43806F67172</input>
-			<output>868EBB51CAB4599A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>3849674C2602319E</key>
-			<input>51454B582DDF440A</input>
-			<output>7178876E01F19B2A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>04B915BA43FEB5B6</key>
-			<input>42FD443059577FA2</input>
-			<output>AF37FB421F8C4095</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0113B970FD34F2CE</key>
-			<input>059B5E0851CF143A</input>
-			<output>86A560F10EC6D85B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>0170F175468FB5E6</key>
-			<input>0756D8E0774761D2</input>
-			<output>0CD3DA020021DC09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>43297FAD38E373FE</key>
-			<input>762514B829BF486A</input>
-			<output>EA676B2CB7DB2B7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>07A7137045DA2A16</key>
-			<input>3BDD119049372802</input>
-			<output>DFD64A815CAF1A0F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>04689104C2FD3B2F</key>
-			<input>26955F6835AF609A</input>
-			<output>5C513C9C4886C088</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>37D06BB516CB7546</key>
-			<input>164D5E404F275232</input>
-			<output>0A2AEEAE3FF4AB77</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1F08260D1AC2465E</key>
-			<input>6B056E18759F5CCA</input>
-			<output>EF1BF03E5DFA575A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>584023641ABA6176</key>
-			<input>004BD6EF09176062</input>
-			<output>88BF0DB6D70DEE56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>025816164629B007</key>
-			<input>480D39006EE762F2</input>
-			<output>A1F9915541020B56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>49793EBC79B3258F</key>
-			<input>437540C8698F3CFA</input>
-			<output>6FBF1CAFCFFD0556</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>4FB05E1515AB73A7</key>
-			<input>072D43A077075292</input>
-			<output>2F22E49BAB7CA1AC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>49E95D6D4CA229BF</key>
-			<input>02FE55778117F12A</input>
-			<output>5A6B612CC26CCE4A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>018310DC409B26D6</key>
-			<input>1D9D5C5018F728C2</input>
-			<output>5F4C038ED12B2E41</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>1C587F1C13924FEF</key>
-			<input>305532286D6F295A</input>
-			<output>63FAC0D034D9F793</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>8000000000000000</input>
-			<output>95F8A5E5DD31D900</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>4000000000000000</input>
-			<output>DD7F121CA5015619</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>2000000000000000</input>
-			<output>2E8653104F3834EA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>1000000000000000</input>
-			<output>4BD388FF6CD81D4F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0800000000000000</input>
-			<output>20B9E767B2FB1456</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0400000000000000</input>
-			<output>55579380D77138EF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0200000000000000</input>
-			<output>6CC5DEFAAF04512F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0100000000000000</input>
-			<output>0D9F279BA5D87260</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0080000000000000</input>
-			<output>D9031B0271BD5A0A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0040000000000000</input>
-			<output>424250B37C3DD951</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0020000000000000</input>
-			<output>B8061B7ECD9A21E5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0010000000000000</input>
-			<output>F15D0F286B65BD28</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0008000000000000</input>
-			<output>ADD0CC8D6E5DEBA1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0004000000000000</input>
-			<output>E6D5F82752AD63D1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0002000000000000</input>
-			<output>ECBFE3BD3F591A5E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0001000000000000</input>
-			<output>F356834379D165CD</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000800000000000</input>
-			<output>2B9F982F20037FA9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000400000000000</input>
-			<output>889DE068A16F0BE6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000200000000000</input>
-			<output>E19E275D846A1298</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000100000000000</input>
-			<output>329A8ED523D71AEC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000080000000000</input>
-			<output>E7FCE22557D23C97</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000040000000000</input>
-			<output>12A9F5817FF2D65D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000020000000000</input>
-			<output>A484C3AD38DC9C19</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000010000000000</input>
-			<output>FBE00A8A1EF8AD72</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000008000000000</input>
-			<output>750D079407521363</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000004000000000</input>
-			<output>64FEED9C724C2FAF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000002000000000</input>
-			<output>F02B263B328E2B60</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000001000000000</input>
-			<output>9D64555A9A10B852</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000800000000</input>
-			<output>D106FF0BED5255D7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000400000000</input>
-			<output>E1652C6B138C64A5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000200000000</input>
-			<output>E428581186EC8F46</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000100000000</input>
-			<output>AEB5F5EDE22D1A36</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000080000000</input>
-			<output>E943D7568AEC0C5C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000040000000</input>
-			<output>DF98C8276F54B04B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000020000000</input>
-			<output>B160E4680F6C696F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000010000000</input>
-			<output>FA0752B07D9C4AB8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000008000000</input>
-			<output>CA3A2B036DBC8502</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000004000000</input>
-			<output>5E0905517BB59BCF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000002000000</input>
-			<output>814EEB3B91D90726</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000001000000</input>
-			<output>4D49DB1532919C9F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000800000</input>
-			<output>25EB5FC3F8CF0621</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000400000</input>
-			<output>AB6A20C0620D1C6F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000200000</input>
-			<output>79E90DBC98F92CCA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000100000</input>
-			<output>866ECEDD8072BB0E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000080000</input>
-			<output>8B54536F2F3E64A8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000040000</input>
-			<output>EA51D3975595B86B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000020000</input>
-			<output>CAFFC6AC4542DE31</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000010000</input>
-			<output>8DD45A2DDF90796C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000008000</input>
-			<output>1029D55E880EC2D0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000004000</input>
-			<output>5D86CB23639DBEA9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000002000</input>
-			<output>1D1CA853AE7C0C5F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000001000</input>
-			<output>CE332329248F3228</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000800</input>
-			<output>8405D1ABE24FB942</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000400</input>
-			<output>E643D78090CA4207</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000200</input>
-			<output>48221B9937748A23</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000100</input>
-			<output>DD7C0BBD61FAFD54</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000080</input>
-			<output>2FBC291A570DB5C4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000040</input>
-			<output>E07C30D7E4E26E12</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000020</input>
-			<output>0953E2258E8E90A1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000010</input>
-			<output>5B711BC4CEEBF2EE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000008</input>
-			<output>CC083F1E6D9E85F6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000004</input>
-			<output>D2FD8867D50D2DFE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000002</input>
-			<output>06E7EA22CE92708F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010101</key>
-			<input>0000000000000001</input>
-			<output>166B40B44ABA4BD6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>8001010101010101</key>
-			<input>0000000000000000</input>
-			<output>95A8D72813DAA94D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>4001010101010101</key>
-			<input>0000000000000000</input>
-			<output>0EEC1487DD8C26D5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>2001010101010101</key>
-			<input>0000000000000000</input>
-			<output>7AD16FFB79C45926</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1001010101010101</key>
-			<input>0000000000000000</input>
-			<output>D3746294CA6A6CF3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0801010101010101</key>
-			<input>0000000000000000</input>
-			<output>809F5F873C1FD761</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0401010101010101</key>
-			<input>0000000000000000</input>
-			<output>C02FAFFEC989D1FC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0201010101010101</key>
-			<input>0000000000000000</input>
-			<output>4615AA1D33E72F10</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0180010101010101</key>
-			<input>0000000000000000</input>
-			<output>2055123350C00858</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0140010101010101</key>
-			<input>0000000000000000</input>
-			<output>DF3B99D6577397C8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0120010101010101</key>
-			<input>0000000000000000</input>
-			<output>31FE17369B5288C9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0110010101010101</key>
-			<input>0000000000000000</input>
-			<output>DFDD3CC64DAE1642</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0108010101010101</key>
-			<input>0000000000000000</input>
-			<output>178C83CE2B399D94</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0104010101010101</key>
-			<input>0000000000000000</input>
-			<output>50F636324A9B7F80</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0102010101010101</key>
-			<input>0000000000000000</input>
-			<output>A8468EE3BC18F06D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101800101010101</key>
-			<input>0000000000000000</input>
-			<output>A2DC9E92FD3CDE92</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101400101010101</key>
-			<input>0000000000000000</input>
-			<output>CAC09F797D031287</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101200101010101</key>
-			<input>0000000000000000</input>
-			<output>90BA680B22AEB525</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101100101010101</key>
-			<input>0000000000000000</input>
-			<output>CE7A24F350E280B6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101080101010101</key>
-			<input>0000000000000000</input>
-			<output>882BFF0AA01A0B87</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101040101010101</key>
-			<input>0000000000000000</input>
-			<output>25610288924511C2</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101020101010101</key>
-			<input>0000000000000000</input>
-			<output>C71516C29C75D170</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101018001010101</key>
-			<input>0000000000000000</input>
-			<output>5199C29A52C9F059</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101014001010101</key>
-			<input>0000000000000000</input>
-			<output>C22F0A294A71F29F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101012001010101</key>
-			<input>0000000000000000</input>
-			<output>EE371483714C02EA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101011001010101</key>
-			<input>0000000000000000</input>
-			<output>A81FBD448F9E522F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010801010101</key>
-			<input>0000000000000000</input>
-			<output>4F644C92E192DFED</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010401010101</key>
-			<input>0000000000000000</input>
-			<output>1AFA9A66A6DF92AE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010201010101</key>
-			<input>0000000000000000</input>
-			<output>B3C1CC715CB879D8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010180010101</key>
-			<input>0000000000000000</input>
-			<output>19D032E64AB0BD8B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010140010101</key>
-			<input>0000000000000000</input>
-			<output>3CFAA7A7DC8720DC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010120010101</key>
-			<input>0000000000000000</input>
-			<output>B7265F7F447AC6F3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010110010101</key>
-			<input>0000000000000000</input>
-			<output>9DB73B3C0D163F54</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010108010101</key>
-			<input>0000000000000000</input>
-			<output>8181B65BABF4A975</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010104010101</key>
-			<input>0000000000000000</input>
-			<output>93C9B64042EAA240</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010102010101</key>
-			<input>0000000000000000</input>
-			<output>5570530829705592</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101800101</key>
-			<input>0000000000000000</input>
-			<output>8638809E878787A0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101400101</key>
-			<input>0000000000000000</input>
-			<output>41B9A79AF79AC208</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101200101</key>
-			<input>0000000000000000</input>
-			<output>7A9BE42F2009A892</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101100101</key>
-			<input>0000000000000000</input>
-			<output>29038D56BA6D2745</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101080101</key>
-			<input>0000000000000000</input>
-			<output>5495C6ABF1E5DF51</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101040101</key>
-			<input>0000000000000000</input>
-			<output>AE13DBD561488933</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101020101</key>
-			<input>0000000000000000</input>
-			<output>024D1FFA8904E389</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101018001</key>
-			<input>0000000000000000</input>
-			<output>D1399712F99BF02E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101014001</key>
-			<input>0000000000000000</input>
-			<output>14C1D7C1CFFEC79E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101012001</key>
-			<input>0000000000000000</input>
-			<output>1DE5279DAE3BED6F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101011001</key>
-			<input>0000000000000000</input>
-			<output>E941A33F85501303</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010801</key>
-			<input>0000000000000000</input>
-			<output>DA99DBBC9A03F379</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010401</key>
-			<input>0000000000000000</input>
-			<output>B7FC92F91D8E92E9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010201</key>
-			<input>0000000000000000</input>
-			<output>AE8E5CAA3CA04E85</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010180</key>
-			<input>0000000000000000</input>
-			<output>9CC62DF43B6EED74</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010140</key>
-			<input>0000000000000000</input>
-			<output>D863DBB5C59A91A0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010120</key>
-			<input>0000000000000000</input>
-			<output>A1AB2190545B91D7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010110</key>
-			<input>0000000000000000</input>
-			<output>0875041E64C570F7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010108</key>
-			<input>0000000000000000</input>
-			<output>5A594528BEBEF1CC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010104</key>
-			<input>0000000000000000</input>
-			<output>FCDB3291DE21F0C0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0101010101010102</key>
-			<input>0000000000000000</input>
-			<output>869EFD7F9F265A09</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1046913489980131</key>
-			<input>0000000000000000</input>
-			<output>88D55E54F54C97B4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007103489988020</key>
-			<input>0000000000000000</input>
-			<output>0C0CC00C83EA48FD</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10071034C8980120</key>
-			<input>0000000000000000</input>
-			<output>83BC8EF3A6570183</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1046103489988020</key>
-			<input>0000000000000000</input>
-			<output>DF725DCAD94EA2E9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1086911519190101</key>
-			<input>0000000000000000</input>
-			<output>E652B53B550BE8B0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1086911519580101</key>
-			<input>0000000000000000</input>
-			<output>AF527120C485CBB0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>5107B01519580101</key>
-			<input>0000000000000000</input>
-			<output>0F04CE393DB926D5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007B01519190101</key>
-			<input>0000000000000000</input>
-			<output>C9F00FFC74079067</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>3107915498080101</key>
-			<input>0000000000000000</input>
-			<output>7CFD82A593252B4E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>3107919498080101</key>
-			<input>0000000000000000</input>
-			<output>CB49A2F9E91363E3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10079115B9080140</key>
-			<input>0000000000000000</input>
-			<output>00B588BE70D23F56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>3107911598080140</key>
-			<input>0000000000000000</input>
-			<output>406A9A6AB43399AE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007D01589980101</key>
-			<input>0000000000000000</input>
-			<output>6CB773611DCA9ADA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>9107911589980101</key>
-			<input>0000000000000000</input>
-			<output>67FD21C17DBB5D70</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>9107D01589190101</key>
-			<input>0000000000000000</input>
-			<output>9592CB4110430787</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007D01598980120</key>
-			<input>0000000000000000</input>
-			<output>A6B7FF68A318DDD3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007940498190101</key>
-			<input>0000000000000000</input>
-			<output>4D102196C914CA16</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0107910491190401</key>
-			<input>0000000000000000</input>
-			<output>2DFA9F4573594965</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0107910491190101</key>
-			<input>0000000000000000</input>
-			<output>B46604816C0E0774</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0107940491190401</key>
-			<input>0000000000000000</input>
-			<output>6E7E6221A4F34E87</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>19079210981A0101</key>
-			<input>0000000000000000</input>
-			<output>AA85E74643233199</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007911998190801</key>
-			<input>0000000000000000</input>
-			<output>2E5A19DB4D1962D6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10079119981A0801</key>
-			<input>0000000000000000</input>
-			<output>23A866A809D30894</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1007921098190101</key>
-			<input>0000000000000000</input>
-			<output>D812D961F017D320</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>100791159819010B</key>
-			<input>0000000000000000</input>
-			<output>055605816E58608F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1004801598190101</key>
-			<input>0000000000000000</input>
-			<output>ABD88E8B1B7716F1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1004801598190102</key>
-			<input>0000000000000000</input>
-			<output>537AC95BE69DA1E1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1004801598190108</key>
-			<input>0000000000000000</input>
-			<output>AED0F6AE3C25CDD8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1002911598100104</key>
-			<input>0000000000000000</input>
-			<output>B3E35A5EE53E7B8D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1002911598190104</key>
-			<input>0000000000000000</input>
-			<output>61C79C71921A2EF8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1002911598100201</key>
-			<input>0000000000000000</input>
-			<output>E2F5728F0995013C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1002911698100101</key>
-			<input>0000000000000000</input>
-			<output>1AEAC39A61F0A464</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>7CA110454A1A6E57</key>
-			<input>01A1D6D039776742</input>
-			<output>690F5B0D9A26939B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0131D9619DC1376E</key>
-			<input>5CD54CA83DEF57DA</input>
-			<output>7A389D10354BD271</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>07A1133E4A0B2686</key>
-			<input>0248D43806F67172</input>
-			<output>868EBB51CAB4599A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>3849674C2602319E</key>
-			<input>51454B582DDF440A</input>
-			<output>7178876E01F19B2A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>04B915BA43FEB5B6</key>
-			<input>42FD443059577FA2</input>
-			<output>AF37FB421F8C4095</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0113B970FD34F2CE</key>
-			<input>059B5E0851CF143A</input>
-			<output>86A560F10EC6D85B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>0170F175468FB5E6</key>
-			<input>0756D8E0774761D2</input>
-			<output>0CD3DA020021DC09</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>43297FAD38E373FE</key>
-			<input>762514B829BF486A</input>
-			<output>EA676B2CB7DB2B7A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>07A7137045DA2A16</key>
-			<input>3BDD119049372802</input>
-			<output>DFD64A815CAF1A0F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>04689104C2FD3B2F</key>
-			<input>26955F6835AF609A</input>
-			<output>5C513C9C4886C088</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>37D06BB516CB7546</key>
-			<input>164D5E404F275232</input>
-			<output>0A2AEEAE3FF4AB77</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1F08260D1AC2465E</key>
-			<input>6B056E18759F5CCA</input>
-			<output>EF1BF03E5DFA575A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>584023641ABA6176</key>
-			<input>004BD6EF09176062</input>
-			<output>88BF0DB6D70DEE56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>025816164629B007</key>
-			<input>480D39006EE762F2</input>
-			<output>A1F9915541020B56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>49793EBC79B3258F</key>
-			<input>437540C8698F3CFA</input>
-			<output>6FBF1CAFCFFD0556</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>4FB05E1515AB73A7</key>
-			<input>072D43A077075292</input>
-			<output>2F22E49BAB7CA1AC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>49E95D6D4CA229BF</key>
-			<input>02FE55778117F12A</input>
-			<output>5A6B612CC26CCE4A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>018310DC409B26D6</key>
-			<input>1D9D5C5018F728C2</input>
-			<output>5F4C038ED12B2E41</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>1C587F1C13924FEF</key>
-			<input>305532286D6F295A</input>
-			<output>63FAC0D034D9F793</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>8000000000000000</input>
-			<output>95F8A5E5DD31D900</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>4000000000000000</input>
-			<output>DD7F121CA5015619</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>2000000000000000</input>
-			<output>2E8653104F3834EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>1000000000000000</input>
-			<output>4BD388FF6CD81D4F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0800000000000000</input>
-			<output>20B9E767B2FB1456</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0400000000000000</input>
-			<output>55579380D77138EF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0200000000000000</input>
-			<output>6CC5DEFAAF04512F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0100000000000000</input>
-			<output>0D9F279BA5D87260</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0080000000000000</input>
-			<output>D9031B0271BD5A0A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0040000000000000</input>
-			<output>424250B37C3DD951</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0020000000000000</input>
-			<output>B8061B7ECD9A21E5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0010000000000000</input>
-			<output>F15D0F286B65BD28</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0008000000000000</input>
-			<output>ADD0CC8D6E5DEBA1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0004000000000000</input>
-			<output>E6D5F82752AD63D1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0002000000000000</input>
-			<output>ECBFE3BD3F591A5E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0001000000000000</input>
-			<output>F356834379D165CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000800000000000</input>
-			<output>2B9F982F20037FA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000400000000000</input>
-			<output>889DE068A16F0BE6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000200000000000</input>
-			<output>E19E275D846A1298</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000100000000000</input>
-			<output>329A8ED523D71AEC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000080000000000</input>
-			<output>E7FCE22557D23C97</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000040000000000</input>
-			<output>12A9F5817FF2D65D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000020000000000</input>
-			<output>A484C3AD38DC9C19</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000010000000000</input>
-			<output>FBE00A8A1EF8AD72</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000008000000000</input>
-			<output>750D079407521363</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000004000000000</input>
-			<output>64FEED9C724C2FAF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000002000000000</input>
-			<output>F02B263B328E2B60</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000001000000000</input>
-			<output>9D64555A9A10B852</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000800000000</input>
-			<output>D106FF0BED5255D7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000400000000</input>
-			<output>E1652C6B138C64A5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000200000000</input>
-			<output>E428581186EC8F46</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000100000000</input>
-			<output>AEB5F5EDE22D1A36</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000080000000</input>
-			<output>E943D7568AEC0C5C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000040000000</input>
-			<output>DF98C8276F54B04B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000020000000</input>
-			<output>B160E4680F6C696F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000010000000</input>
-			<output>FA0752B07D9C4AB8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000008000000</input>
-			<output>CA3A2B036DBC8502</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000004000000</input>
-			<output>5E0905517BB59BCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000002000000</input>
-			<output>814EEB3B91D90726</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000001000000</input>
-			<output>4D49DB1532919C9F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000800000</input>
-			<output>25EB5FC3F8CF0621</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000400000</input>
-			<output>AB6A20C0620D1C6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000200000</input>
-			<output>79E90DBC98F92CCA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000100000</input>
-			<output>866ECEDD8072BB0E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000080000</input>
-			<output>8B54536F2F3E64A8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000040000</input>
-			<output>EA51D3975595B86B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000020000</input>
-			<output>CAFFC6AC4542DE31</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000010000</input>
-			<output>8DD45A2DDF90796C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000008000</input>
-			<output>1029D55E880EC2D0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000004000</input>
-			<output>5D86CB23639DBEA9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000002000</input>
-			<output>1D1CA853AE7C0C5F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000001000</input>
-			<output>CE332329248F3228</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000800</input>
-			<output>8405D1ABE24FB942</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000400</input>
-			<output>E643D78090CA4207</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000200</input>
-			<output>48221B9937748A23</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000100</input>
-			<output>DD7C0BBD61FAFD54</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000080</input>
-			<output>2FBC291A570DB5C4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000040</input>
-			<output>E07C30D7E4E26E12</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000020</input>
-			<output>0953E2258E8E90A1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000010</input>
-			<output>5B711BC4CEEBF2EE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000008</input>
-			<output>CC083F1E6D9E85F6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000004</input>
-			<output>D2FD8867D50D2DFE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000002</input>
-			<output>06E7EA22CE92708F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000001</input>
-			<output>166B40B44ABA4BD6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>800101010101010180010101010101018001010101010101</key>
-			<input>0000000000000000</input>
-			<output>95A8D72813DAA94D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>400101010101010140010101010101014001010101010101</key>
-			<input>0000000000000000</input>
-			<output>0EEC1487DD8C26D5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>200101010101010120010101010101012001010101010101</key>
-			<input>0000000000000000</input>
-			<output>7AD16FFB79C45926</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100101010101010110010101010101011001010101010101</key>
-			<input>0000000000000000</input>
-			<output>D3746294CA6A6CF3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>080101010101010108010101010101010801010101010101</key>
-			<input>0000000000000000</input>
-			<output>809F5F873C1FD761</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>040101010101010104010101010101010401010101010101</key>
-			<input>0000000000000000</input>
-			<output>C02FAFFEC989D1FC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>020101010101010102010101010101010201010101010101</key>
-			<input>0000000000000000</input>
-			<output>4615AA1D33E72F10</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>018001010101010101800101010101010180010101010101</key>
-			<input>0000000000000000</input>
-			<output>2055123350C00858</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>014001010101010101400101010101010140010101010101</key>
-			<input>0000000000000000</input>
-			<output>DF3B99D6577397C8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>012001010101010101200101010101010120010101010101</key>
-			<input>0000000000000000</input>
-			<output>31FE17369B5288C9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>011001010101010101100101010101010110010101010101</key>
-			<input>0000000000000000</input>
-			<output>DFDD3CC64DAE1642</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010801010101010101080101010101010108010101010101</key>
-			<input>0000000000000000</input>
-			<output>178C83CE2B399D94</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010401010101010101040101010101010104010101010101</key>
-			<input>0000000000000000</input>
-			<output>50F636324A9B7F80</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010201010101010101020101010101010102010101010101</key>
-			<input>0000000000000000</input>
-			<output>A8468EE3BC18F06D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010180010101010101018001010101010101800101010101</key>
-			<input>0000000000000000</input>
-			<output>A2DC9E92FD3CDE92</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010140010101010101014001010101010101400101010101</key>
-			<input>0000000000000000</input>
-			<output>CAC09F797D031287</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010120010101010101012001010101010101200101010101</key>
-			<input>0000000000000000</input>
-			<output>90BA680B22AEB525</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010110010101010101011001010101010101100101010101</key>
-			<input>0000000000000000</input>
-			<output>CE7A24F350E280B6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010108010101010101010801010101010101080101010101</key>
-			<input>0000000000000000</input>
-			<output>882BFF0AA01A0B87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010104010101010101010401010101010101040101010101</key>
-			<input>0000000000000000</input>
-			<output>25610288924511C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010102010101010101010201010101010101020101010101</key>
-			<input>0000000000000000</input>
-			<output>C71516C29C75D170</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101800101010101010180010101010101018001010101</key>
-			<input>0000000000000000</input>
-			<output>5199C29A52C9F059</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101400101010101010140010101010101014001010101</key>
-			<input>0000000000000000</input>
-			<output>C22F0A294A71F29F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101200101010101010120010101010101012001010101</key>
-			<input>0000000000000000</input>
-			<output>EE371483714C02EA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101100101010101010110010101010101011001010101</key>
-			<input>0000000000000000</input>
-			<output>A81FBD448F9E522F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101080101010101010108010101010101010801010101</key>
-			<input>0000000000000000</input>
-			<output>4F644C92E192DFED</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101040101010101010104010101010101010401010101</key>
-			<input>0000000000000000</input>
-			<output>1AFA9A66A6DF92AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101020101010101010102010101010101010201010101</key>
-			<input>0000000000000000</input>
-			<output>B3C1CC715CB879D8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101018001010101010101800101010101010180010101</key>
-			<input>0000000000000000</input>
-			<output>19D032E64AB0BD8B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101014001010101010101400101010101010140010101</key>
-			<input>0000000000000000</input>
-			<output>3CFAA7A7DC8720DC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101012001010101010101200101010101010120010101</key>
-			<input>0000000000000000</input>
-			<output>B7265F7F447AC6F3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101011001010101010101100101010101010110010101</key>
-			<input>0000000000000000</input>
-			<output>9DB73B3C0D163F54</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010801010101010101080101010101010108010101</key>
-			<input>0000000000000000</input>
-			<output>8181B65BABF4A975</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010401010101010101040101010101010104010101</key>
-			<input>0000000000000000</input>
-			<output>93C9B64042EAA240</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010201010101010101020101010101010102010101</key>
-			<input>0000000000000000</input>
-			<output>5570530829705592</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010180010101010101018001010101010101800101</key>
-			<input>0000000000000000</input>
-			<output>8638809E878787A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010140010101010101014001010101010101400101</key>
-			<input>0000000000000000</input>
-			<output>41B9A79AF79AC208</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010120010101010101012001010101010101200101</key>
-			<input>0000000000000000</input>
-			<output>7A9BE42F2009A892</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010110010101010101011001010101010101100101</key>
-			<input>0000000000000000</input>
-			<output>29038D56BA6D2745</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010108010101010101010801010101010101080101</key>
-			<input>0000000000000000</input>
-			<output>5495C6ABF1E5DF51</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010104010101010101010401010101010101040101</key>
-			<input>0000000000000000</input>
-			<output>AE13DBD561488933</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010102010101010101010201010101010101020101</key>
-			<input>0000000000000000</input>
-			<output>024D1FFA8904E389</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101800101010101010180010101010101018001</key>
-			<input>0000000000000000</input>
-			<output>D1399712F99BF02E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101400101010101010140010101010101014001</key>
-			<input>0000000000000000</input>
-			<output>14C1D7C1CFFEC79E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101200101010101010120010101010101012001</key>
-			<input>0000000000000000</input>
-			<output>1DE5279DAE3BED6F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101100101010101010110010101010101011001</key>
-			<input>0000000000000000</input>
-			<output>E941A33F85501303</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101080101010101010108010101010101010801</key>
-			<input>0000000000000000</input>
-			<output>DA99DBBC9A03F379</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101040101010101010104010101010101010401</key>
-			<input>0000000000000000</input>
-			<output>B7FC92F91D8E92E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101020101010101010102010101010101010201</key>
-			<input>0000000000000000</input>
-			<output>AE8E5CAA3CA04E85</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101018001010101010101800101010101010180</key>
-			<input>0000000000000000</input>
-			<output>9CC62DF43B6EED74</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101014001010101010101400101010101010140</key>
-			<input>0000000000000000</input>
-			<output>D863DBB5C59A91A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101012001010101010101200101010101010120</key>
-			<input>0000000000000000</input>
-			<output>A1AB2190545B91D7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101011001010101010101100101010101010110</key>
-			<input>0000000000000000</input>
-			<output>0875041E64C570F7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010801010101010101080101010101010108</key>
-			<input>0000000000000000</input>
-			<output>5A594528BEBEF1CC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010401010101010101040101010101010104</key>
-			<input>0000000000000000</input>
-			<output>FCDB3291DE21F0C0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010101010101010201010101010101020101010101010102</key>
-			<input>0000000000000000</input>
-			<output>869EFD7F9F265A09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>104691348998013110469134899801311046913489980131</key>
-			<input>0000000000000000</input>
-			<output>88D55E54F54C97B4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100710348998802010071034899880201007103489988020</key>
-			<input>0000000000000000</input>
-			<output>0C0CC00C83EA48FD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10071034C898012010071034C898012010071034C8980120</key>
-			<input>0000000000000000</input>
-			<output>83BC8EF3A6570183</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>104610348998802010461034899880201046103489988020</key>
-			<input>0000000000000000</input>
-			<output>DF725DCAD94EA2E9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>108691151919010110869115191901011086911519190101</key>
-			<input>0000000000000000</input>
-			<output>E652B53B550BE8B0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>108691151958010110869115195801011086911519580101</key>
-			<input>0000000000000000</input>
-			<output>AF527120C485CBB0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>5107B015195801015107B015195801015107B01519580101</key>
-			<input>0000000000000000</input>
-			<output>0F04CE393DB926D5</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>1007B015191901011007B015191901011007B01519190101</key>
-			<input>0000000000000000</input>
-			<output>C9F00FFC74079067</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>310791549808010131079154980801013107915498080101</key>
-			<input>0000000000000000</input>
-			<output>7CFD82A593252B4E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>310791949808010131079194980801013107919498080101</key>
-			<input>0000000000000000</input>
-			<output>CB49A2F9E91363E3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10079115B908014010079115B908014010079115B9080140</key>
-			<input>0000000000000000</input>
-			<output>00B588BE70D23F56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>310791159808014031079115980801403107911598080140</key>
-			<input>0000000000000000</input>
-			<output>406A9A6AB43399AE</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>1007D015899801011007D015899801011007D01589980101</key>
-			<input>0000000000000000</input>
-			<output>6CB773611DCA9ADA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>910791158998010191079115899801019107911589980101</key>
-			<input>0000000000000000</input>
-			<output>67FD21C17DBB5D70</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>9107D015891901019107D015891901019107D01589190101</key>
-			<input>0000000000000000</input>
-			<output>9592CB4110430787</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>1007D015989801201007D015989801201007D01598980120</key>
-			<input>0000000000000000</input>
-			<output>A6B7FF68A318DDD3</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100794049819010110079404981901011007940498190101</key>
-			<input>0000000000000000</input>
-			<output>4D102196C914CA16</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010791049119040101079104911904010107910491190401</key>
-			<input>0000000000000000</input>
-			<output>2DFA9F4573594965</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010791049119010101079104911901010107910491190101</key>
-			<input>0000000000000000</input>
-			<output>B46604816C0E0774</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>010794049119040101079404911904010107940491190401</key>
-			<input>0000000000000000</input>
-			<output>6E7E6221A4F34E87</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>19079210981A010119079210981A010119079210981A0101</key>
-			<input>0000000000000000</input>
-			<output>AA85E74643233199</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100791199819080110079119981908011007911998190801</key>
-			<input>0000000000000000</input>
-			<output>2E5A19DB4D1962D6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10079119981A080110079119981A080110079119981A0801</key>
-			<input>0000000000000000</input>
-			<output>23A866A809D30894</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100792109819010110079210981901011007921098190101</key>
-			<input>0000000000000000</input>
-			<output>D812D961F017D320</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100791159819010B100791159819010B100791159819010B</key>
-			<input>0000000000000000</input>
-			<output>055605816E58608F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100480159819010110048015981901011004801598190101</key>
-			<input>0000000000000000</input>
-			<output>ABD88E8B1B7716F1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100480159819010210048015981901021004801598190102</key>
-			<input>0000000000000000</input>
-			<output>537AC95BE69DA1E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100480159819010810048015981901081004801598190108</key>
-			<input>0000000000000000</input>
-			<output>AED0F6AE3C25CDD8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100291159810010410029115981001041002911598100104</key>
-			<input>0000000000000000</input>
-			<output>B3E35A5EE53E7B8D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100291159819010410029115981901041002911598190104</key>
-			<input>0000000000000000</input>
-			<output>61C79C71921A2EF8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100291159810020110029115981002011002911598100201</key>
-			<input>0000000000000000</input>
-			<output>E2F5728F0995013C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>100291169810010110029116981001011002911698100101</key>
-			<input>0000000000000000</input>
-			<output>1AEAC39A61F0A464</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>7CA110454A1A6E577CA110454A1A6E577CA110454A1A6E57</key>
-			<input>01A1D6D039776742</input>
-			<output>690F5B0D9A26939B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>0131D9619DC1376E0131D9619DC1376E0131D9619DC1376E</key>
-			<input>5CD54CA83DEF57DA</input>
-			<output>7A389D10354BD271</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>07A1133E4A0B268607A1133E4A0B268607A1133E4A0B2686</key>
-			<input>0248D43806F67172</input>
-			<output>868EBB51CAB4599A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>3849674C2602319E3849674C2602319E3849674C2602319E</key>
-			<input>51454B582DDF440A</input>
-			<output>7178876E01F19B2A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>04B915BA43FEB5B604B915BA43FEB5B604B915BA43FEB5B6</key>
-			<input>42FD443059577FA2</input>
-			<output>AF37FB421F8C4095</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>0113B970FD34F2CE0113B970FD34F2CE0113B970FD34F2CE</key>
-			<input>059B5E0851CF143A</input>
-			<output>86A560F10EC6D85B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>0170F175468FB5E60170F175468FB5E60170F175468FB5E6</key>
-			<input>0756D8E0774761D2</input>
-			<output>0CD3DA020021DC09</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>43297FAD38E373FE43297FAD38E373FE43297FAD38E373FE</key>
-			<input>762514B829BF486A</input>
-			<output>EA676B2CB7DB2B7A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>07A7137045DA2A1607A7137045DA2A1607A7137045DA2A16</key>
-			<input>3BDD119049372802</input>
-			<output>DFD64A815CAF1A0F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>04689104C2FD3B2F04689104C2FD3B2F04689104C2FD3B2F</key>
-			<input>26955F6835AF609A</input>
-			<output>5C513C9C4886C088</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>37D06BB516CB754637D06BB516CB754637D06BB516CB7546</key>
-			<input>164D5E404F275232</input>
-			<output>0A2AEEAE3FF4AB77</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>1F08260D1AC2465E1F08260D1AC2465E1F08260D1AC2465E</key>
-			<input>6B056E18759F5CCA</input>
-			<output>EF1BF03E5DFA575A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>584023641ABA6176584023641ABA6176584023641ABA6176</key>
-			<input>004BD6EF09176062</input>
-			<output>88BF0DB6D70DEE56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>025816164629B007025816164629B007025816164629B007</key>
-			<input>480D39006EE762F2</input>
-			<output>A1F9915541020B56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>49793EBC79B3258F49793EBC79B3258F49793EBC79B3258F</key>
-			<input>437540C8698F3CFA</input>
-			<output>6FBF1CAFCFFD0556</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>4FB05E1515AB73A74FB05E1515AB73A74FB05E1515AB73A7</key>
-			<input>072D43A077075292</input>
-			<output>2F22E49BAB7CA1AC</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>49E95D6D4CA229BF49E95D6D4CA229BF49E95D6D4CA229BF</key>
-			<input>02FE55778117F12A</input>
-			<output>5A6B612CC26CCE4A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>018310DC409B26D6018310DC409B26D6018310DC409B26D6</key>
-			<input>1D9D5C5018F728C2</input>
-			<output>5F4C038ED12B2E41</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>1C587F1C13924FEF1C587F1C13924FEF1C587F1C13924FEF</key>
-			<input>305532286D6F295A</input>
-			<output>63FAC0D034D9F793</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 172</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>0123456789ABCDEF23456789ABCDEF01456789ABCDEF0123</key>
-			<input>4E6F77206973207468652074696D6520666F7220616C6C20</input>
-			<output>314F8327FA7A09A84362760CC13BA7DAFF55C5F80FAAAC45</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>8000000000000000</input>
-			<output>95F8A5E5DD31D900</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>4000000000000000</input>
-			<output>DD7F121CA5015619</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>2000000000000000</input>
-			<output>2E8653104F3834EA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>1000000000000000</input>
-			<output>4BD388FF6CD81D4F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0800000000000000</input>
-			<output>20B9E767B2FB1456</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0400000000000000</input>
-			<output>55579380D77138EF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0200000000000000</input>
-			<output>6CC5DEFAAF04512F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0100000000000000</input>
-			<output>0D9F279BA5D87260</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0080000000000000</input>
-			<output>D9031B0271BD5A0A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0040000000000000</input>
-			<output>424250B37C3DD951</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0020000000000000</input>
-			<output>B8061B7ECD9A21E5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0010000000000000</input>
-			<output>F15D0F286B65BD28</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0008000000000000</input>
-			<output>ADD0CC8D6E5DEBA1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0004000000000000</input>
-			<output>E6D5F82752AD63D1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0002000000000000</input>
-			<output>ECBFE3BD3F591A5E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0001000000000000</input>
-			<output>F356834379D165CD</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000800000000000</input>
-			<output>2B9F982F20037FA9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000400000000000</input>
-			<output>889DE068A16F0BE6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000200000000000</input>
-			<output>E19E275D846A1298</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000100000000000</input>
-			<output>329A8ED523D71AEC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000080000000000</input>
-			<output>E7FCE22557D23C97</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000040000000000</input>
-			<output>12A9F5817FF2D65D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000020000000000</input>
-			<output>A484C3AD38DC9C19</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000010000000000</input>
-			<output>FBE00A8A1EF8AD72</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000008000000000</input>
-			<output>750D079407521363</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000004000000000</input>
-			<output>64FEED9C724C2FAF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000002000000000</input>
-			<output>F02B263B328E2B60</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000001000000000</input>
-			<output>9D64555A9A10B852</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000800000000</input>
-			<output>D106FF0BED5255D7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000400000000</input>
-			<output>E1652C6B138C64A5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000200000000</input>
-			<output>E428581186EC8F46</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000100000000</input>
-			<output>AEB5F5EDE22D1A36</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000080000000</input>
-			<output>E943D7568AEC0C5C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000040000000</input>
-			<output>DF98C8276F54B04B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000020000000</input>
-			<output>B160E4680F6C696F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000010000000</input>
-			<output>FA0752B07D9C4AB8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000008000000</input>
-			<output>CA3A2B036DBC8502</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000004000000</input>
-			<output>5E0905517BB59BCF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000002000000</input>
-			<output>814EEB3B91D90726</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000001000000</input>
-			<output>4D49DB1532919C9F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000800000</input>
-			<output>25EB5FC3F8CF0621</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000400000</input>
-			<output>AB6A20C0620D1C6F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000200000</input>
-			<output>79E90DBC98F92CCA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000100000</input>
-			<output>866ECEDD8072BB0E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000080000</input>
-			<output>8B54536F2F3E64A8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000040000</input>
-			<output>EA51D3975595B86B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000020000</input>
-			<output>CAFFC6AC4542DE31</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000010000</input>
-			<output>8DD45A2DDF90796C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000008000</input>
-			<output>1029D55E880EC2D0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000004000</input>
-			<output>5D86CB23639DBEA9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000002000</input>
-			<output>1D1CA853AE7C0C5F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000001000</input>
-			<output>CE332329248F3228</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000800</input>
-			<output>8405D1ABE24FB942</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000400</input>
-			<output>E643D78090CA4207</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000200</input>
-			<output>48221B9937748A23</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000100</input>
-			<output>DD7C0BBD61FAFD54</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000080</input>
-			<output>2FBC291A570DB5C4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000040</input>
-			<output>E07C30D7E4E26E12</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000020</input>
-			<output>0953E2258E8E90A1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000010</input>
-			<output>5B711BC4CEEBF2EE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 61</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000008</input>
-			<output>CC083F1E6D9E85F6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 62</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000004</input>
-			<output>D2FD8867D50D2DFE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 63</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000002</input>
-			<output>06E7EA22CE92708F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 64</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010101010101010101010101010101010101</key>
-			<input>0000000000000001</input>
-			<output>166B40B44ABA4BD6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 65</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>800101010101010180010101010101018001010101010101</key>
-			<input>0000000000000000</input>
-			<output>95A8D72813DAA94D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 66</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>400101010101010140010101010101014001010101010101</key>
-			<input>0000000000000000</input>
-			<output>0EEC1487DD8C26D5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 67</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>200101010101010120010101010101012001010101010101</key>
-			<input>0000000000000000</input>
-			<output>7AD16FFB79C45926</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 68</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100101010101010110010101010101011001010101010101</key>
-			<input>0000000000000000</input>
-			<output>D3746294CA6A6CF3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 69</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>080101010101010108010101010101010801010101010101</key>
-			<input>0000000000000000</input>
-			<output>809F5F873C1FD761</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 70</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>040101010101010104010101010101010401010101010101</key>
-			<input>0000000000000000</input>
-			<output>C02FAFFEC989D1FC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 71</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>020101010101010102010101010101010201010101010101</key>
-			<input>0000000000000000</input>
-			<output>4615AA1D33E72F10</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 72</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>018001010101010101800101010101010180010101010101</key>
-			<input>0000000000000000</input>
-			<output>2055123350C00858</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 73</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>014001010101010101400101010101010140010101010101</key>
-			<input>0000000000000000</input>
-			<output>DF3B99D6577397C8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 74</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>012001010101010101200101010101010120010101010101</key>
-			<input>0000000000000000</input>
-			<output>31FE17369B5288C9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 75</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>011001010101010101100101010101010110010101010101</key>
-			<input>0000000000000000</input>
-			<output>DFDD3CC64DAE1642</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 76</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010801010101010101080101010101010108010101010101</key>
-			<input>0000000000000000</input>
-			<output>178C83CE2B399D94</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 77</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010401010101010101040101010101010104010101010101</key>
-			<input>0000000000000000</input>
-			<output>50F636324A9B7F80</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 78</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010201010101010101020101010101010102010101010101</key>
-			<input>0000000000000000</input>
-			<output>A8468EE3BC18F06D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 79</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010180010101010101018001010101010101800101010101</key>
-			<input>0000000000000000</input>
-			<output>A2DC9E92FD3CDE92</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 80</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010140010101010101014001010101010101400101010101</key>
-			<input>0000000000000000</input>
-			<output>CAC09F797D031287</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 81</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010120010101010101012001010101010101200101010101</key>
-			<input>0000000000000000</input>
-			<output>90BA680B22AEB525</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 82</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010110010101010101011001010101010101100101010101</key>
-			<input>0000000000000000</input>
-			<output>CE7A24F350E280B6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 83</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010108010101010101010801010101010101080101010101</key>
-			<input>0000000000000000</input>
-			<output>882BFF0AA01A0B87</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 84</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010104010101010101010401010101010101040101010101</key>
-			<input>0000000000000000</input>
-			<output>25610288924511C2</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 85</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010102010101010101010201010101010101020101010101</key>
-			<input>0000000000000000</input>
-			<output>C71516C29C75D170</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 86</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101800101010101010180010101010101018001010101</key>
-			<input>0000000000000000</input>
-			<output>5199C29A52C9F059</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 87</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101400101010101010140010101010101014001010101</key>
-			<input>0000000000000000</input>
-			<output>C22F0A294A71F29F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 88</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101200101010101010120010101010101012001010101</key>
-			<input>0000000000000000</input>
-			<output>EE371483714C02EA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 89</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101100101010101010110010101010101011001010101</key>
-			<input>0000000000000000</input>
-			<output>A81FBD448F9E522F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 90</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101080101010101010108010101010101010801010101</key>
-			<input>0000000000000000</input>
-			<output>4F644C92E192DFED</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 91</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101040101010101010104010101010101010401010101</key>
-			<input>0000000000000000</input>
-			<output>1AFA9A66A6DF92AE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 92</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101020101010101010102010101010101010201010101</key>
-			<input>0000000000000000</input>
-			<output>B3C1CC715CB879D8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 93</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101018001010101010101800101010101010180010101</key>
-			<input>0000000000000000</input>
-			<output>19D032E64AB0BD8B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 94</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101014001010101010101400101010101010140010101</key>
-			<input>0000000000000000</input>
-			<output>3CFAA7A7DC8720DC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 95</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101012001010101010101200101010101010120010101</key>
-			<input>0000000000000000</input>
-			<output>B7265F7F447AC6F3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 96</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101011001010101010101100101010101010110010101</key>
-			<input>0000000000000000</input>
-			<output>9DB73B3C0D163F54</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 97</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010801010101010101080101010101010108010101</key>
-			<input>0000000000000000</input>
-			<output>8181B65BABF4A975</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 98</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010401010101010101040101010101010104010101</key>
-			<input>0000000000000000</input>
-			<output>93C9B64042EAA240</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 99</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010201010101010101020101010101010102010101</key>
-			<input>0000000000000000</input>
-			<output>5570530829705592</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 100</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010180010101010101018001010101010101800101</key>
-			<input>0000000000000000</input>
-			<output>8638809E878787A0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 101</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010140010101010101014001010101010101400101</key>
-			<input>0000000000000000</input>
-			<output>41B9A79AF79AC208</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 102</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010120010101010101012001010101010101200101</key>
-			<input>0000000000000000</input>
-			<output>7A9BE42F2009A892</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 103</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010110010101010101011001010101010101100101</key>
-			<input>0000000000000000</input>
-			<output>29038D56BA6D2745</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 104</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010108010101010101010801010101010101080101</key>
-			<input>0000000000000000</input>
-			<output>5495C6ABF1E5DF51</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 105</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010104010101010101010401010101010101040101</key>
-			<input>0000000000000000</input>
-			<output>AE13DBD561488933</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 106</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010102010101010101010201010101010101020101</key>
-			<input>0000000000000000</input>
-			<output>024D1FFA8904E389</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 107</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101800101010101010180010101010101018001</key>
-			<input>0000000000000000</input>
-			<output>D1399712F99BF02E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 108</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101400101010101010140010101010101014001</key>
-			<input>0000000000000000</input>
-			<output>14C1D7C1CFFEC79E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 109</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101200101010101010120010101010101012001</key>
-			<input>0000000000000000</input>
-			<output>1DE5279DAE3BED6F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 110</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101100101010101010110010101010101011001</key>
-			<input>0000000000000000</input>
-			<output>E941A33F85501303</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 111</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101080101010101010108010101010101010801</key>
-			<input>0000000000000000</input>
-			<output>DA99DBBC9A03F379</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 112</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101040101010101010104010101010101010401</key>
-			<input>0000000000000000</input>
-			<output>B7FC92F91D8E92E9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 113</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101020101010101010102010101010101010201</key>
-			<input>0000000000000000</input>
-			<output>AE8E5CAA3CA04E85</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 114</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101018001010101010101800101010101010180</key>
-			<input>0000000000000000</input>
-			<output>9CC62DF43B6EED74</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 115</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101014001010101010101400101010101010140</key>
-			<input>0000000000000000</input>
-			<output>D863DBB5C59A91A0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 116</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101012001010101010101200101010101010120</key>
-			<input>0000000000000000</input>
-			<output>A1AB2190545B91D7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 117</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101011001010101010101100101010101010110</key>
-			<input>0000000000000000</input>
-			<output>0875041E64C570F7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 118</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010801010101010101080101010101010108</key>
-			<input>0000000000000000</input>
-			<output>5A594528BEBEF1CC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 119</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010401010101010101040101010101010104</key>
-			<input>0000000000000000</input>
-			<output>FCDB3291DE21F0C0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 120</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010101010101010201010101010101020101010101010102</key>
-			<input>0000000000000000</input>
-			<output>869EFD7F9F265A09</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 121</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>104691348998013110469134899801311046913489980131</key>
-			<input>0000000000000000</input>
-			<output>88D55E54F54C97B4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 122</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100710348998802010071034899880201007103489988020</key>
-			<input>0000000000000000</input>
-			<output>0C0CC00C83EA48FD</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 123</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10071034C898012010071034C898012010071034C8980120</key>
-			<input>0000000000000000</input>
-			<output>83BC8EF3A6570183</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 124</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>104610348998802010461034899880201046103489988020</key>
-			<input>0000000000000000</input>
-			<output>DF725DCAD94EA2E9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 125</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>108691151919010110869115191901011086911519190101</key>
-			<input>0000000000000000</input>
-			<output>E652B53B550BE8B0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 126</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>108691151958010110869115195801011086911519580101</key>
-			<input>0000000000000000</input>
-			<output>AF527120C485CBB0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 127</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>5107B015195801015107B015195801015107B01519580101</key>
-			<input>0000000000000000</input>
-			<output>0F04CE393DB926D5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 128</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>1007B015191901011007B015191901011007B01519190101</key>
-			<input>0000000000000000</input>
-			<output>C9F00FFC74079067</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 129</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>310791549808010131079154980801013107915498080101</key>
-			<input>0000000000000000</input>
-			<output>7CFD82A593252B4E</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 130</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>310791949808010131079194980801013107919498080101</key>
-			<input>0000000000000000</input>
-			<output>CB49A2F9E91363E3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 131</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10079115B908014010079115B908014010079115B9080140</key>
-			<input>0000000000000000</input>
-			<output>00B588BE70D23F56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 132</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>310791159808014031079115980801403107911598080140</key>
-			<input>0000000000000000</input>
-			<output>406A9A6AB43399AE</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 133</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>1007D015899801011007D015899801011007D01589980101</key>
-			<input>0000000000000000</input>
-			<output>6CB773611DCA9ADA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 134</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>910791158998010191079115899801019107911589980101</key>
-			<input>0000000000000000</input>
-			<output>67FD21C17DBB5D70</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 135</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>9107D015891901019107D015891901019107D01589190101</key>
-			<input>0000000000000000</input>
-			<output>9592CB4110430787</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 136</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>1007D015989801201007D015989801201007D01598980120</key>
-			<input>0000000000000000</input>
-			<output>A6B7FF68A318DDD3</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 137</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100794049819010110079404981901011007940498190101</key>
-			<input>0000000000000000</input>
-			<output>4D102196C914CA16</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 138</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010791049119040101079104911904010107910491190401</key>
-			<input>0000000000000000</input>
-			<output>2DFA9F4573594965</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 139</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010791049119010101079104911901010107910491190101</key>
-			<input>0000000000000000</input>
-			<output>B46604816C0E0774</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 140</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>010794049119040101079404911904010107940491190401</key>
-			<input>0000000000000000</input>
-			<output>6E7E6221A4F34E87</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 141</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>19079210981A010119079210981A010119079210981A0101</key>
-			<input>0000000000000000</input>
-			<output>AA85E74643233199</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 142</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100791199819080110079119981908011007911998190801</key>
-			<input>0000000000000000</input>
-			<output>2E5A19DB4D1962D6</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 143</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10079119981A080110079119981A080110079119981A0801</key>
-			<input>0000000000000000</input>
-			<output>23A866A809D30894</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 144</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100792109819010110079210981901011007921098190101</key>
-			<input>0000000000000000</input>
-			<output>D812D961F017D320</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 145</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100791159819010B100791159819010B100791159819010B</key>
-			<input>0000000000000000</input>
-			<output>055605816E58608F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 146</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100480159819010110048015981901011004801598190101</key>
-			<input>0000000000000000</input>
-			<output>ABD88E8B1B7716F1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 147</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100480159819010210048015981901021004801598190102</key>
-			<input>0000000000000000</input>
-			<output>537AC95BE69DA1E1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 148</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100480159819010810048015981901081004801598190108</key>
-			<input>0000000000000000</input>
-			<output>AED0F6AE3C25CDD8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 149</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100291159810010410029115981001041002911598100104</key>
-			<input>0000000000000000</input>
-			<output>B3E35A5EE53E7B8D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 150</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100291159819010410029115981901041002911598190104</key>
-			<input>0000000000000000</input>
-			<output>61C79C71921A2EF8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 151</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100291159810020110029115981002011002911598100201</key>
-			<input>0000000000000000</input>
-			<output>E2F5728F0995013C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 152</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>100291169810010110029116981001011002911698100101</key>
-			<input>0000000000000000</input>
-			<output>1AEAC39A61F0A464</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 153</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>7CA110454A1A6E577CA110454A1A6E577CA110454A1A6E57</key>
-			<input>01A1D6D039776742</input>
-			<output>690F5B0D9A26939B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 154</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0131D9619DC1376E0131D9619DC1376E0131D9619DC1376E</key>
-			<input>5CD54CA83DEF57DA</input>
-			<output>7A389D10354BD271</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 155</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>07A1133E4A0B268607A1133E4A0B268607A1133E4A0B2686</key>
-			<input>0248D43806F67172</input>
-			<output>868EBB51CAB4599A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 156</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>3849674C2602319E3849674C2602319E3849674C2602319E</key>
-			<input>51454B582DDF440A</input>
-			<output>7178876E01F19B2A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 157</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>04B915BA43FEB5B604B915BA43FEB5B604B915BA43FEB5B6</key>
-			<input>42FD443059577FA2</input>
-			<output>AF37FB421F8C4095</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 158</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0113B970FD34F2CE0113B970FD34F2CE0113B970FD34F2CE</key>
-			<input>059B5E0851CF143A</input>
-			<output>86A560F10EC6D85B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 159</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0170F175468FB5E60170F175468FB5E60170F175468FB5E6</key>
-			<input>0756D8E0774761D2</input>
-			<output>0CD3DA020021DC09</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 160</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>43297FAD38E373FE43297FAD38E373FE43297FAD38E373FE</key>
-			<input>762514B829BF486A</input>
-			<output>EA676B2CB7DB2B7A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 161</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>07A7137045DA2A1607A7137045DA2A1607A7137045DA2A16</key>
-			<input>3BDD119049372802</input>
-			<output>DFD64A815CAF1A0F</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 162</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>04689104C2FD3B2F04689104C2FD3B2F04689104C2FD3B2F</key>
-			<input>26955F6835AF609A</input>
-			<output>5C513C9C4886C088</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 163</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>37D06BB516CB754637D06BB516CB754637D06BB516CB7546</key>
-			<input>164D5E404F275232</input>
-			<output>0A2AEEAE3FF4AB77</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 164</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>1F08260D1AC2465E1F08260D1AC2465E1F08260D1AC2465E</key>
-			<input>6B056E18759F5CCA</input>
-			<output>EF1BF03E5DFA575A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 165</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>584023641ABA6176584023641ABA6176584023641ABA6176</key>
-			<input>004BD6EF09176062</input>
-			<output>88BF0DB6D70DEE56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 166</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>025816164629B007025816164629B007025816164629B007</key>
-			<input>480D39006EE762F2</input>
-			<output>A1F9915541020B56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 167</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>49793EBC79B3258F49793EBC79B3258F49793EBC79B3258F</key>
-			<input>437540C8698F3CFA</input>
-			<output>6FBF1CAFCFFD0556</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 168</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>4FB05E1515AB73A74FB05E1515AB73A74FB05E1515AB73A7</key>
-			<input>072D43A077075292</input>
-			<output>2F22E49BAB7CA1AC</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 169</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>49E95D6D4CA229BF49E95D6D4CA229BF49E95D6D4CA229BF</key>
-			<input>02FE55778117F12A</input>
-			<output>5A6B612CC26CCE4A</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 170</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>018310DC409B26D6018310DC409B26D6018310DC409B26D6</key>
-			<input>1D9D5C5018F728C2</input>
-			<output>5F4C038ED12B2E41</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 171</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>1C587F1C13924FEF1C587F1C13924FEF1C587F1C13924FEF</key>
-			<input>305532286D6F295A</input>
-			<output>63FAC0D034D9F793</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 172</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF23456789ABCDEF01456789ABCDEF0123</key>
-			<input>4E6F77206973207468652074696D6520666F7220616C6C20</input>
-			<output>F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176</output>
-			<iv>1234567890ABCDEF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 173</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>112233445566778811223344556677881122334455667788</key>
-			<input>000102030405060708091011121314151617181920212223</input>
-			<output>4C0CE7EA6E1FD7C57284B9D5DE41E8AA00E1F61DD4537842</output>
-			<iv>0011223344556677</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 174</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>112233445566778811223344556677881122334455667788</key>
-			<input>000102030405060708091011121314151617181920212223</input>
-			<output>3BD6E1D301A382E0F6DC9868C7A019EC470F379D9928148D</output>
-			<iv>7766554433221100</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 175</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>7CA110454A1A6E577CA110454A1A6E57FEDCBA9876543210</key>
-			<input>0123456789ABCDEF</input>
-			<output>ED39D950FA74BCC4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 176</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>7CA110454A1A6E57FEDCBA9876543210FEDCBA9876543210</key>
-			<input>01A1D6D039776742</input>
-			<output>690F5B0D9A26939B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 177</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF23456789ABCDEF01456789ABCDEF0123</key>
-			<input>4E6F77206973207468652074696D6520666F7220616C6C20</input>
-			<output>F3C0FF026C023089656FBB169DEF7EDB30BA36075D6F0176</output>
-			<iv>1234567890ABCDEF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 178</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>6789ABCDEF012345</input>
-			<output>FC624960B90F7A7D</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 179</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>6789ABCDEF012345</input>
-			<output>FC624960B90F7A7D</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 180</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>6789ABCDEF0123450808080808080808</input>
-			<output>FC624960B90F7A7D2551005F74269110</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 181</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>010203040506070809101112131415160808080808080808</input>
-			<output>67D89FDD4DB55CDFE7886E07EBD3B3DF47D8B20E93909B58</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 182</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910111213141501</input>
-			<output>67D89FDD4DB55CDFF52A136D17A87E8F</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 183</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910111213140202</input>
-			<output>67D89FDD4DB55CDF9FF22B5301F5BA69</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 184</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910111213030303</input>
-			<output>67D89FDD4DB55CDF7AC916277CC636EF</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 185</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910111204040404</input>
-			<output>67D89FDD4DB55CDFE204DB2A32A7B8C8</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 186</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910110505050505</input>
-			<output>67D89FDD4DB55CDF287F784D76357583</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 187</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080910060606060606</input>
-			<output>67D89FDD4DB55CDF4C58EA5623CD0B5B</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 188</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080907070707070707</input>
-			<output>67D89FDD4DB55CDFD784A16124DF7747</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 189</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>01020304050607080808080808080808</input>
-			<output>67D89FDD4DB55CDF9A19483ADB5C2975</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 190</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102030405060701</input>
-			<output>977C3A184FA1E78D</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 191</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102030405060202</input>
-			<output>D1AEE6C6FAE1828B</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 192</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102030405030303</input>
-			<output>A5EF9A711DE975CA</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 193</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102030404040404</input>
-			<output>A429C178F9A65553</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 194</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102030505050505</input>
-			<output>B53A1C038D1B89CD</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 195</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0102060606060606</input>
-			<output>0D00D9D7CA3C98A4</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 196</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0107070707070707</input>
-			<output>C3F1BA84FB6E4664</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 197</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF</key>
-			<input>0808080808080808</input>
-			<output>D470869B58D76FAD</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>61A8A244ADACCCF0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88BCA90E90875A</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>6CCF4308974C267F</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88BCA90E90875A7F0F79C384627BAFB2</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>1A807D272BBE5DB1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>EBB773F993278EFF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1122334455667788</input>
-			<output>560788C117EC3BF0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>FFFFFFFFFFFFFFFF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>278B27E42E2F0D49</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>3000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1000000000000001</input>
-			<output>30649EDF9BE7D2C2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>1111111111111111</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1111111111111111</input>
-			<output>08BA6FFA24CD2448</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1111111111111111</input>
-			<output>83919A5CBDDA91E8</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>1111111111111111</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>715D05DCBAD0A52D</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>FEDCBA9876543210</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>AFF61F28ADB8F992</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>7CA110454A1A6E57</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01A1D6D039776742</input>
-			<output>E6C72BD91A8317DA</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0131D9619DC1376E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>5CD54CA83DEF57DA</input>
-			<output>5DEC877636C097F4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>07A1133E4A0B2686</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0248D43806F67172</input>
-			<output>F6A678D160B219E1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>3849674C2602319E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>51454B582DDF440A</input>
-			<output>F10947AADA21CC24</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>04B915BA43FEB5B6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>42FD443059577FA2</input>
-			<output>2F999B72BFE16FA7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0113B970FD34F2CE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>059B5E0851CF143A</input>
-			<output>35783A7937FC0786</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0170F175468FB5E6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0756D8E0774761D2</input>
-			<output>4BE2541E1F1E9AE9</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>43297FAD38E373FE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>762514B829BF486A</input>
-			<output>0D827AB91CBE6B81</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>07A7137045DA2A16</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>3BDD119049372802</input>
-			<output>0E4D330B57B01F64</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>04689104C2FD3B2F</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>26955F6835AF609A</input>
-			<output>0F89859336A2BB56</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>37D06BB516CB7546</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>164D5E404F275232</input>
-			<output>CC22A66F79417445</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>1F08260D1AC2465E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>6B056E18759F5CCA</input>
-			<output>9A9FA77A5CE073A0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>584023641ABA6176</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>004BD6EF09176062</input>
-			<output>D896266223671934</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>025816164629B007</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>480D39006EE762F2</input>
-			<output>4DF89CF7EE3D5B40</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>49793EBC79B3258F</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>437540C8698F3CFA</input>
-			<output>141F405CA84C25C4</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>4FB05E1515AB73A7</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>072D43A077075292</input>
-			<output>3F0558B19B018711</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>49E95D6D4CA229BF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>02FE55778117F12A</input>
-			<output>585FE24017619CCF</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>018310DC409B26D6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1D9D5C5018F728C2</input>
-			<output>7963042382F61893</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>1C587F1C13924FEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>305532286D6F295A</input>
-			<output>B3073BCAE8912B3B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0101010101010101</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>927B508FF3609651</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>1F1F1F1F0E0E0E0E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>D8E4684DCE864C3B</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>E0FEE0FEF1FEF1FE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>AF317F8DB5F2B33C</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>0770C3EB6DC04678</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>FFFFFFFFFFFFFFFF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>A3A112654F81C5CD</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>A9F36E0F75C4D4E7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>FEDCBA9876543210</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>285155EE09767F79</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 37 ***NEW*** from test spec</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88BCA90E90875A7F0F79C384627BAFB2</key>
-			<effectiveKeyLength>128</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>2269552AB0F85CA6</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 38 ***NEW*** from test spec</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584C42FCEB0BE255DAF1E</key>
-			<effectiveKeyLength>129</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>5B78D3A43DFFF1F1</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 39 - from openssl test code</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<effectiveKeyLength>1024</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>1C198A838DF028B7</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 40 - from openssl test code</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>00000000000000000000000000000001</key>
-			<effectiveKeyLength>1024</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>21829C78A9F9C074</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 41 - from openssl test code</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>00000000000000000000000000000000</key>
-			<effectiveKeyLength>1024</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>13DB3517D321869E</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 42 - from openssl test code</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>000102030405060708090A0B0C0D0E0F</key>
-			<effectiveKeyLength>1024</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>50DC0162BD757F31</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>EBB773F993278EFF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1110010110010100</input>
-			<output>83919A5CBDDA91E8</output>
-			<iv>0001101001101011</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 2</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0001101001101011</input>
-			<output>83919A5CBDDA91E8</output>
-			<iv>1110010110010100</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 3</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>88BCA90E90875A7F</input>
-			<output>B0E5CDDD09CB4581</output>
-			<iv>456789ABCDEF0123</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 4</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0F79C384627BAFB2</input>
-			<output>B20420ABB639D2BE</output>
-			<iv>B0E5CDDD09CB4581</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 5</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>16F80A6F85920584</input>
-			<output>0BB613FC9B702A66</output>
-			<iv>B20420ABB639D2BE</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 6</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>88BCA90E90875A7F0F79C384627BAFB216F80A6F85920584</input>
-			<output>B0E5CDDD09CB4581B20420ABB639D2BE0BB613FC9B702A66</output>
-			<iv>456789ABCDEF0123</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 7</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1122334455667788</input>
-			<output>560788C117EC3BF0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 8</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1122334455667788AA11223344556677</input>
-			<output>560788C117EC3BF028D552DB234B64C5</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 9</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1122334455667788AA1122334455667788AA112233445566</input>
-			<output>560788C117EC3BF028D552DB234B64C58E0C5D57AF03D760</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 10</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>FFFFFFFFFFFFFFFF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>278B27E42E2F0D49</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 11</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>3000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1000000000000001</input>
-			<output>30649EDF9BE7D2C2</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 12</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>1111111111111111</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1111111111111111</input>
-			<output>08BA6FFA24CD2448</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 13</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1111111111111111</input>
-			<output>83919A5CBDDA91E8</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 14</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>1111111111111111</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>715D05DCBAD0A52D</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 15</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>FEDCBA9876543210</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>AFF61F28ADB8F992</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 16</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>7CA110454A1A6E57</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01A1D6D039776742</input>
-			<output>E6C72BD91A8317DA</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 17</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0131D9619DC1376E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>5CD54CA83DEF57DA</input>
-			<output>5DEC877636C097F4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 18</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>07A1133E4A0B2686</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0248D43806F67172</input>
-			<output>F6A678D160B219E1</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 19</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>3849674C2602319E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>51454B582DDF440A</input>
-			<output>F10947AADA21CC24</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 20</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>04B915BA43FEB5B6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>42FD443059577FA2</input>
-			<output>2F999B72BFE16FA7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 21</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0113B970FD34F2CE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>059B5E0851CF143A</input>
-			<output>35783A7937FC0786</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 22</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0170F175468FB5E6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0756D8E0774761D2</input>
-			<output>4BE2541E1F1E9AE9</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 23</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>43297FAD38E373FE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>762514B829BF486A</input>
-			<output>0D827AB91CBE6B81</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 24</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>07A7137045DA2A16</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>3BDD119049372802</input>
-			<output>0E4D330B57B01F64</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 25</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>04689104C2FD3B2F</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>26955F6835AF609A</input>
-			<output>0F89859336A2BB56</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 26</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>37D06BB516CB7546</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>164D5E404F275232</input>
-			<output>CC22A66F79417445</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 27</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>1F08260D1AC2465E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>6B056E18759F5CCA</input>
-			<output>9A9FA77A5CE073A0</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 28</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>584023641ABA6176</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>004BD6EF09176062</input>
-			<output>D896266223671934</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 29</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>025816164629B007</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>480D39006EE762F2</input>
-			<output>4DF89CF7EE3D5B40</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 30</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>49793EBC79B3258F</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>437540C8698F3CFA</input>
-			<output>141F405CA84C25C4</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 31</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>4FB05E1515AB73A7</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>072D43A077075292</input>
-			<output>3F0558B19B018711</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 32</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>49E95D6D4CA229BF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>02FE55778117F12A</input>
-			<output>585FE24017619CCF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 33</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>018310DC409B26D6</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>1D9D5C5018F728C2</input>
-			<output>7963042382F61893</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 34</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>1C587F1C13924FEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>305532286D6F295A</input>
-			<output>B3073BCAE8912B3B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 35</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0101010101010101</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>927B508FF3609651</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 36</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>1F1F1F1F0E0E0E0E</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>D8E4684DCE864C3B</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 37</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>E0FEE0FEF1FEF1FE</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0123456789ABCDEF</input>
-			<output>AF317F8DB5F2B33C</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 38</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>0770C3EB6DC04678</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 39</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>FFFFFFFFFFFFFFFF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>A3A112654F81C5CD</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 40</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>A9F36E0F75C4D4E7</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 41</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>FEDCBA9876543210</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>FFFFFFFFFFFFFFFF</input>
-			<output>285155EE09767F79</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 42</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>6789ABCDEF012345</input>
-			<output>8AB9812A157EFA87</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 43</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>6789ABCDEF0123450808080808080808</input>
-			<output>8AB9812A157EFA8791CF42833556FB07</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 44</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>010203040506070809101112131415160808080808080808</input>
-			<output>2DEF62E545A755DEABB588A36AF7E2A11F65064B843373D0</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 45</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910111213141501</input>
-			<output>2DEF62E545A755DE377B2C5382276EC1</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 46</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910111213140202</input>
-			<output>2DEF62E545A755DE558B258C5E98416A</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 47</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910111213030303</input>
-			<output>2DEF62E545A755DE61202489EE7BA71D</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 48</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910111204040404</input>
-			<output>2DEF62E545A755DEE88E29056AE9DA70</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 49</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910110505050505</input>
-			<output>2DEF62E545A755DE3C07D96F3A786265</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 50</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080910060606060606</input>
-			<output>2DEF62E545A755DEB44C5090B8835C81</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 51</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080907070707070707</input>
-			<output>2DEF62E545A755DECC05EF7692F2C516</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 52</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>01020304050607080808080808080808</input>
-			<output>2DEF62E545A755DEC6D72BD46DB0B596</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 53</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102030405060701</input>
-			<output>BC833CE2076E664D</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 54</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102030405060202</input>
-			<output>3A6906738CCCC62F</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 55</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102030405030303</input>
-			<output>8C7CDFD20A4A6E28</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 56</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102030404040404</input>
-			<output>7BC7D4549A008837</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 57</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102030505050505</input>
-			<output>EB777B0CDB21B583</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 58</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0102060606060606</input>
-			<output>AD39A96DCDFA9702</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 59</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0107070707070707</input>
-			<output>7C57FF01CCB66C58</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 60</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0808080808080808</input>
-			<output>2F9C162C976D4D2E</output>
-			<iv>00000000EFAB23EF</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 0</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<input>9017E9CEB5ECDD634860A86C1BB51663A5244CED6125B0359DAE984EDE35C86D</input>
-			<output>1400000C12C873074727389C1041B96E3BF94260A8772A294823ACA42EF21651</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 1</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>022F0FFA3CB41D904C9D8A5EB98FC953</key>
-			<input>1400000CED47F2AC3869DAEA1E2A05F51BAACEA8885D0FECCAE2A4E9A9419C6B</input>
-			<output>09B6024ACDDAB55A0CE3D306A70467D39F1190C27280664153F7B713B0F61AC2</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 2 -- http://www.columbia.edu/~ariel/ssleay/rrc4.html</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<input>0123456789ABCDEF</input>
-			<output>75B7878099E0C596</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 3 -- http://www.columbia.edu/~ariel/ssleay/rrc4.html</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<input>0000000000000000</input>
-			<output>7494C2E7104B0879</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 4 -- http://www.columbia.edu/~ariel/ssleay/rrc4.html</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>0000000000000000</key>
-			<input>0000000000000000</input>
-			<output>DE188941A3375D3A</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 5 -- http://www.columbia.edu/~ariel/ssleay/rrc4.html</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>EF012345</key>
-			<input>00000000000000000000</input>
-			<output>D6A141A7EC3C38DFBD61</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 6 -- http://www.columbia.edu/~ariel/ssleay/rrc4.html</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>EF012345</key>
-			<input>D6A141A7EC3C38DFBD61</input>
-			<output>00000000000000000000</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 7 -- from cryptopp</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>0123456789ABCDEF</key>
-			<input>0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101</input>
-			<output>7595C3E6114A09780C4AD452338E1FFD9A1BE9498F813D76533449B6778DCAD8C78A8D2BA9AC66085D0E53D59C26C2D1C490C1EBBE0CE66D1B6B1B13B6B919B847C25A91447A95E75E4EF16779CDE8BF0A95850E32AF9689444FD377108F98FDCBD4E726567500990BCC7E0CA3C4AAA304A387D20F3B8FBBCD42A1BD311D7A4303DDA5AB078896AE80C18B0AF66DFF319616EB784E495AD2CE90D7F772A81747B65F62093B1E0DB9E5BA532FAFEC47508323E671327DF9444432CB7367CEC82F5D44C0D00B67D650A075CD4B70DEDD77EB9B10231B6B5B741347396D62897421D43DF9B42E446E358E9C11A9B2184ECBEF0CD8E7A877EF968F1390EC9B3D35A5585CB009290E2FCDE7B5EC66D9084BE44055A619D9DD7FC3166F9487F7CB272912426445998514C15D53A18C864CE3A2B7555793988126520EACF2E3066E230C91BEE4DD5304F5FD0405B35BD99C73135D3D9BC335EE049EF69B3867BF2D7BD1EAA595D8BFC0066FF8D31509EB0C6CAA006C807A623EF84C3D33C195D23EE320C40DE0558157C822D4B8C569D849AED59D4E0FD7F379586B4B7FF684ED6A189F7486D49B9C4BAD9BA24B96ABF924372C8A8FFFB10D55354900A77A3DB5F205E1B99FCD8660863A159AD4ABE40FA48934163DDDE542A6585540FD683CBFD8C00F12129A284DEACC4CDEFE58BE7137541C047126C8D49E2755AB181AB7E940B0C0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-
-<action>
-	<actionname>Null Vector Test 1 -- oh the humour</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<input>6284093818384927</input>
-			<output>6284093818384927</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 2 -- oh the humour</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<input>984908728230972B34</input>
-			<output>984908728230972B34</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-//Start of OOM testing
-//This section contains a copy of the first vector for each cipher type
-<action>
-    <actionname>OOM start</actionname>
-    <actiontype>startmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-<action>
-	<actionname>DES ECB Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESECB</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>DESCBC</ciphertype>
-			<key>10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES ECB Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESECB</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>3 DES CBC Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>3DESCBC</ciphertype>
-			<key>10316E028C8F3B4A10316E028C8F3B4A10316E028C8F3B4A</key>
-			<input>0000000000000000</input>
-			<output>82DCBAFBDEAB6602</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 ECB Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2ECB</ciphertype>
-			<key>88</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>61A8A244ADACCCF0</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC2 CBC Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC2CBC</ciphertype>
-			<key>0000000000000000</key>
-			<effectiveKeyLength>64</effectiveKeyLength>
-			<input>0000000000000000</input>
-			<output>EBB773F993278EFF</output>
-			<iv>0000000000000000</iv>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>RC4 Vector Test 0 (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>RC4</ciphertype>
-			<key>70E40040838C10495A4B31551D2A18EF</key>
-			<input>9017E9CEB5ECDD634860A86C1BB51663A5244CED6125B0359DAE984EDE35C86D</input>
-			<output>1400000C12C873074727389C1041B96E3BF94260A8772A294823ACA42EF21651</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>Null Vector Test 1 -- oh the humour (OOM)</actionname>
-	<actiontype>Vector</actiontype>
-	<actionbody>
-		<vector>
-			<ciphertype>NULL</ciphertype>
-			<input>6284093818384927</input>
-			<output>6284093818384927</output>
-			<result>ETrue</result>
-		</vector>
-	</actionbody>
-	<actionresult>
-		<return>KErrNone</return>
-	</actionresult>
-</action>
-<action>
-    <actionname>OOM end</actionname>
-    <actiontype>stopmemfailure</actiontype>
-    <actionbody></actionbody>
-    <actionresult>
-        <return>KErrNone</return>
-    </actionresult>
-</action>
-<action>
-	<actionname>DES ECB Weak Key Test</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESECB_WKT</ciphertype>
-			<key>0101010101010101</key>
-			<input>012345678901234567</input>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrWeakKey</return>
-	</actionresult>
-</action>
-<action>
-	<actionname>DES CBC Weak Key Test</actionname>
-	<actiontype>Incremental</actiontype>
-	<actionbody>
-		<incremental>
-			<ciphertype>DESCBC_WKT</ciphertype>
-			<key>E01FE01FF10EF10E</key>
-			<input>012345678901234567</input>
-			<iv>8877665544332211</iv>
-		</incremental>
-	</actionbody>
-	<actionresult>
-		<return>KErrWeakKey</return>
-	</actionresult>
-</action>
\ No newline at end of file
--- a/crypto/weakcrypto/test/tsymmetric/tactionincremental.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,253 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionincremental.h"
-#include "symmetric.h"
-#include "des.h"
-
-CTestAction* CActionIncremental::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionIncremental::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionIncremental::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionIncremental* self = new(ELeave) CActionIncremental(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionIncremental::~CActionIncremental()
-{
-}
-
-CActionIncremental::CActionIncremental(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)						 
-: CCryptoTestAction(aFs, aConsole, aOut)
-{}
-
-void CActionIncremental::DoPerformPostrequisiteL()
-{
-	delete iEncryptor;
-	delete iDecryptor;
-}
-
-void CActionIncremental::DoPerformPrerequisiteL()
-{
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 incremental = Input::ParseElement(*iBody, KIncrementalStart, KIncrementalEnd, pos, err);
-
-	DoInputParseL(incremental);
-
-	CBlockTransformation* encryptor = NULL;
-	CBlockTransformation* decryptor = NULL;
-
-	iEncryptor =0;
-	iDecryptor =0;
-
-	switch (iCipherType)
-	{
-		case (EDESECB):
-		{
-			//If the test is weak key test
-			if(iExpectedWeakResult == KErrWeakKey)
-				{
-				//we expect to leave with KErrWeakKey reason
-				if(CDES::IsWeakKey(iKey->Des()))
-					{
-					User::Leave(KErrWeakKey);
-					}
-				else //test is unsuccessful, leave with a different reason
-					{
-					User::Leave(KErrGeneral);
-					}	
-				}
-			encryptor = CDESEncryptor::NewLC(iKey->Des());
-			decryptor = CDESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (EDESCBC):
-		{
-			CBlockTransformation* desEncryptor = NULL;
-			CBlockTransformation* desDecryptor = NULL;
-			
-			if(iExpectedWeakResult == KErrWeakKey)
-				{
-				if(CDES::IsWeakKey(iKey->Des()))
-					{
-					User::Leave(KErrWeakKey);
-					}
-				else
-					{
-					User::Leave(KErrGeneral);
-					}	
-				}
-			desEncryptor = CDESEncryptor::NewLC(iKey->Des());
-			desDecryptor = CDESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(desEncryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(desDecryptor, iIV->Des());		
-			CleanupStack::Pop(3);
-		}
-		break;
-		case (E3DESECB):
-		{
-			encryptor = C3DESEncryptor::NewLC(iKey->Des());
-			decryptor = C3DESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (E3DESCBC):
-		{
-			CBlockTransformation* the3DESencryptor = NULL;
-			CBlockTransformation* the3DESdecryptor = NULL;
-
-			the3DESencryptor = C3DESEncryptor::NewLC(iKey->Des());
-			the3DESdecryptor = C3DESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(the3DESencryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(the3DESdecryptor, iIV->Des());		
-			CleanupStack::Pop(3);
-		}
-		break;
-		case (EAESECB):
-		{
-			encryptor = CAESEncryptor::NewLC(iKey->Des());
-			decryptor = CAESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC2ECB):
-		{
-			encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			decryptor = CRC2Decryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC2CBC):
-		{
-			encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			decryptor = CRC2Decryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC4):
-		{
-			iEncryptor = CARC4::NewL(*iKey, 0); 
-			iDecryptor = CARC4::NewL(*iKey, 0); 
-		}
-		break;
-		case (ECipherNull):
-		{
-			iEncryptor = CNullCipher::NewL(); 
-			iDecryptor = CNullCipher::NewL(); 
-		}
-		break;	
-		default:
-			ASSERT(0);
-			User::Leave(KErrNotSupported);
-	}
-
-	CleanupStack::PushL(encryptor);
-	CleanupStack::PushL(decryptor);
-	if(!iEncryptor && !iDecryptor)
-		{
-		CPaddingSSLv3* dPadding = CPaddingSSLv3::NewLC(decryptor->BlockSize());
-		CPaddingSSLv3* ePadding = CPaddingSSLv3::NewLC(encryptor->BlockSize());
-		iEncryptor = CBufferedEncryptor::NewL(encryptor, ePadding);
-		CleanupStack::Pop(ePadding);
-		iDecryptor = CBufferedDecryptor::NewL(decryptor, dPadding);
-		CleanupStack::Pop(dPadding);
-		}
-
-	CleanupStack::Pop(2, encryptor);
-
-	iEResult = HBufC8::NewMaxL(iEncryptor->MaxFinalOutputLength(iInput->Length()));
-	iDResult = HBufC8::NewMaxL(iDecryptor->MaxFinalOutputLength(iEResult->Size()));
-}
-
-void CActionIncremental::DoPerformActionL()
-	{
-	TRAPD(res, DoDoPerformActionL())
-	if(res == KErrNoMemory)
-		{
-		iEncryptor->Reset();
-		iDecryptor->Reset();
-		}
-	}
-
-void CActionIncremental::DoDoPerformActionL()
-{
-	__UHEAP_MARK;
-	iResult = ETrue;
-	TPtr8 eResultActual = iEResult->Des();
-	eResultActual.FillZ(eResultActual.MaxLength());
-	eResultActual.SetLength(0);
-
-	TPtr8 dResultActual = iDResult->Des();
-	dResultActual.FillZ(dResultActual.MaxLength());
-	dResultActual.SetLength(0);
-
-	TInt len = iInput->Length();
-	for(TInt i=1; i<len; i++)
-	{
-		TInt j = 0;
-		for(; j+i<len; j+=i)
-		{//	encryption in blocks of size i
-			iEncryptor->Process(iInput->Mid(j,i), eResultActual);
-		}
-	
-		iEncryptor->ProcessFinalL(iInput->Mid(j), eResultActual);
-		
-		j=0;
-		for(; (j+(len-i))<len; j+=(len-i))
-		{//	Decryption in blocks of size (len - i)
-			iDecryptor->Process(eResultActual.Mid(j, len-i), dResultActual);
-		}
-		
-		iDecryptor->ProcessFinalL(eResultActual.Mid(j), dResultActual);
-		
-		if(dResultActual != *iInput)
-		{
-			iResult = EFalse;
-		}
-		
-		eResultActual.FillZ(eResultActual.MaxLength());
-		dResultActual.FillZ(dResultActual.MaxLength());
-		eResultActual.SetLength(0);
-		dResultActual.SetLength(0);
-	}
-	__UHEAP_MARKEND;
-
-}
-
--- a/crypto/weakcrypto/test/tsymmetric/tactionincremental.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONINCREMENTAL_H__
-#define __TACTIONINCREMENTAL_H__
-
-#include "cryptotestaction.h"
-#include "padding.h"
-#include <symmetric.h>
-
-class CActionIncremental : public CCryptoTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionIncremental();	
-protected:
-	CActionIncremental(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoDoPerformActionL();
-	virtual void DoPerformPrerequisiteL();
-	virtual void DoPerformPostrequisiteL();
-private:
-	CSymmetricCipher* iEncryptor;
-	CSymmetricCipher* iDecryptor;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tsymmetric/tactionmontecarlo.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,261 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionmontecarlo.h"
-#include "bufferedtransformation.h"
-#include "rijndael.h"
-#include "cbcmode.h"
-#include "padding.h"
-
-const TInt KAESBlockSizeBytes = 16;	//	128 bits
-
-CTestAction* CActionMonteCarlo::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CActionMonteCarlo::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CActionMonteCarlo::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CActionMonteCarlo* self = new(ELeave) CActionMonteCarlo(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionMonteCarlo::~CActionMonteCarlo()
-{
-	delete iEncrypt;
-	delete iDecrypt;
-}
-
-CActionMonteCarlo::CActionMonteCarlo(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CCryptoTestAction(aFs, aConsole, aOut)
-{}
-
-
-void CActionMonteCarlo::DoPerformPrerequisiteL()
-{
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 monteCarlo = Input::ParseElement(*iBody, KMonteCarloStart, KMonteCarloEnd, pos, err);
-
-	DoInputParseL(monteCarlo);
-
-	CBlockTransformation* encryptor = NULL;
-	CBlockTransformation* decryptor = NULL;
-
-	switch (iCipherType)
-	{
-		case (EAESMonteCarloEncryptECB):
-		{
-			encryptor = CAESEncryptor::NewLC(iKey->Des());
-		}
-		break;
-		case (EAESMonteCarloDecryptECB):
-		{
-			decryptor = CAESDecryptor::NewLC(iKey->Des());
-		}
-		break;
-		case (EAESMonteCarloEncryptCBC):
-		{
-			CBlockTransformation* aesEncryptor = NULL;		
-			aesEncryptor = CAESEncryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(aesEncryptor, iIV->Des());
-			CleanupStack::Pop(aesEncryptor);
-			CleanupStack::PushL(encryptor);		
-		}
-		break;
-		case (EAESMonteCarloDecryptCBC):
-		{
-			CBlockTransformation* aesDecryptor = NULL;		
-			aesDecryptor = CAESDecryptor::NewLC(iKey->Des());
-			
-			decryptor = CModeCBCDecryptor::NewL(aesDecryptor, iIV->Des());
-			CleanupStack::Pop(aesDecryptor);
-			CleanupStack::PushL(decryptor);		
-		}
-		break;
-		default:
-		{
-			ASSERT(0);
-			User::Leave(KErrNotSupported);
-		}
-	}
-	
-
-	CPaddingSSLv3* padding = 0;
-	if (encryptor)
-		{
-		padding = CPaddingSSLv3::NewLC(encryptor->BlockSize());
-		iEncrypt = CBufferedEncryptor::NewL(encryptor, padding);	
-		iEResult = HBufC8::NewMaxL(iEncrypt->MaxOutputLength(iInput->Length()));
-		}
-	else if (decryptor)
-		{
-		padding = CPaddingSSLv3::NewLC(decryptor->BlockSize());
-		iDecrypt = CBufferedDecryptor::NewL(decryptor, padding);
-		iDResult = HBufC8::NewMaxL(iDecrypt->MaxOutputLength(iInput->Size()));
-		}
-
-	CleanupStack::Pop(2);	//	padding, encryptor/decryptor
-
-}
-
-
-void CActionMonteCarlo::DoPerformActionL()
-{
-	iResult = EFalse;
-
-	__ASSERT_DEBUG(iInput->Size()==KAESBlockSizeBytes, User::Panic(_L("tsymmetric"), KErrNotSupported));
-	
-	if (iCipherType==EAESMonteCarloEncryptECB)
-		DoAESEncryptECB();
-	else if (iCipherType==EAESMonteCarloDecryptECB)
-		DoAESDecryptECB();	
-	else if (iCipherType==EAESMonteCarloEncryptCBC)
-		DoAESEncryptCBC();
-	else if (iCipherType==EAESMonteCarloDecryptCBC)
-		DoAESDecryptCBC();
-	else
-		User::Leave(KErrNotSupported);
-}
-
-void CActionMonteCarlo::DoAESEncryptECB()
-{
-	TPtr8 theEncryptResult(iEResult->Des());
-	theEncryptResult.FillZ(theEncryptResult.MaxLength());
-	theEncryptResult.SetLength(0);
-
-	TInt index = 0;
-	TPtr8 theInput(iInput->Des());
-	for (; index < KMonteCarloIterations; index++)
-	{
-		iEncrypt->Process(theInput, theEncryptResult);	
-		theInput.Copy(theEncryptResult);
-		theEncryptResult.FillZ(theEncryptResult.MaxLength());
-		theEncryptResult.SetLength(0);
-	}
-	
-	if (*iOutput==*iEResult)
-	{	
-		iResult = ETrue;
-	}
-}
-
-void CActionMonteCarlo::DoAESDecryptECB()
-{
-	TPtr8 theDecryptResult(iDResult->Des());
-	theDecryptResult.FillZ(theDecryptResult.MaxLength());
-	theDecryptResult.SetLength(0);
-
-	TInt index = 0;
-	TPtr8 theInput(iInput->Des());
-	for (; index < KMonteCarloIterations; index++)
-	{
-		iDecrypt->Process(theInput, theDecryptResult);	
-		theInput.Copy(theDecryptResult);
-		theDecryptResult.FillZ(theDecryptResult.MaxLength());
-		theDecryptResult.SetLength(0);
-	}
-	
-	if (*iOutput==*iInput)
-	{	
-		iResult = ETrue;
-	}
-}
-
-void CActionMonteCarlo::DoAESEncryptCBC()
-    {	
-	TPtr8 theEncryptResult(iEResult->Des());
-	theEncryptResult.FillZ(theEncryptResult.MaxLength());
-	theEncryptResult.SetLength(0);
-
-	TInt index = 0;
-	TPtr8 theInput(iInput->Des());
-
-	TBuf8<KAESBlockSizeBytes> nextBuf;
-	nextBuf.FillZ(KAESBlockSizeBytes);
-
-    for (; index < KMonteCarloIterations-1; index++)
-	    {
-	    iEncrypt->Process(theInput, theEncryptResult);	
-
-	    if (index==0)
-		theInput.Copy(*iIV);	//	First loop, use the original IV as next PT block
-		else	
-		theInput.Copy(nextBuf);	//	Use previous CT block as next PT block
-		
-	    //	 Save CT block for next loop when it'll become the PT block	
-		nextBuf.Copy(theEncryptResult);
-	    //	 Reset for next encryption	
-		theEncryptResult.FillZ(theEncryptResult.MaxLength());
-		theEncryptResult.SetLength(0);
-	    }
-	
-    iEncrypt->Process(theInput, theEncryptResult);	
-	
-	if  (theEncryptResult.Compare(*iOutput)==KErrNone)
-	    {	
-	    iResult = ETrue;
-	    }
-
-    }
-
-void CActionMonteCarlo::DoAESDecryptCBC()
-    {
-	TPtr8 theDecryptResult(iDResult->Des());
-	theDecryptResult.FillZ(theDecryptResult.MaxLength());
-	theDecryptResult.SetLength(0);
-
-	TInt index = 0;
-    TPtr8 theInput(iInput->Des());
-
-    for (; index < KMonteCarloIterations-1; index++)
-	    {
-	    iDecrypt->Process(theInput, theDecryptResult);	
-		
-		//	Use previous PT block as next CT block
-	 	theInput.Copy(theDecryptResult);
-
-	    //  Reset for next decryption	
-		theDecryptResult.FillZ(theDecryptResult.MaxLength());
-		theDecryptResult.SetLength(0);
-	    }
-	
-    // Last loop	
-    iDecrypt->Process(theInput, theDecryptResult);	
-
-	if (theDecryptResult.Compare(*iOutput)==KErrNone)
- 	   {	
-	   iResult = ETrue;
-	   }
-
-    }
--- a/crypto/weakcrypto/test/tsymmetric/tactionmontecarlo.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONMONTECARLO_H__
-#define __TACTIONMONTECARLO_H__
-
-#include "cryptotestaction.h"
-
-class CBufferedEncryptor;	//	Forward declare
-class CBufferedDecryptor;	//	Forward declare
-
-const TInt KMonteCarloIterations = 10000;
-
-class CActionMonteCarlo : public CCryptoTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionMonteCarlo();
-protected:
-	CActionMonteCarlo(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-protected:
-	virtual void DoPerformPrerequisiteL();
-	virtual void DoPerformActionL();
-protected:
-	void DoAESEncryptECB();
-	void DoAESDecryptECB();
-	void DoAESEncryptCBC();
-	void DoAESDecryptCBC();
-protected:
-	CBufferedEncryptor* iEncrypt;
-	CBufferedDecryptor* iDecrypt;
-};
-
-#endif	//	__TACTIONMONTECARLO_H__
--- a/crypto/weakcrypto/test/tsymmetric/tactionvector.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,264 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tactionvector.h"
-#include "symmetric.h"
-
-CTestAction* CActionVector::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-{
-	CTestAction* self = CActionVector::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-}
-
-CTestAction* CActionVector::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-{
-	CActionVector* self = new(ELeave) CActionVector(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CActionVector::~CActionVector()
-{
-	delete iEncryptor;
-	delete iDecryptor;
-}
-
-CActionVector::CActionVector(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-:	CCryptoTestAction(aFs, aConsole, aOut)
-{}
-
-
-void CActionVector::DoPerformPrerequisiteL()
-{
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 vector = Input::ParseElement(*iBody, KVectorStart, KVectorEnd, pos, err);
-
-	DoInputParseL(vector);
-
-	CBlockTransformation* encryptor = NULL;
-	CBlockTransformation* decryptor = NULL;
-	iEncryptor = 0;
-	iDecryptor = 0;
-
-	switch (iCipherType)
-	{
-		case (EDESECB):
-		{
-			encryptor = CDESEncryptor::NewLC(iKey->Des());
-			decryptor = CDESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case(EDESCBC):
-		{
-			CBlockTransformation* desEncryptor = NULL;
-			CBlockTransformation* desDecryptor = NULL;
-
-			desEncryptor = CDESEncryptor::NewLC(iKey->Des());
-			desDecryptor = CDESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(desEncryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(desDecryptor, iIV->Des());		
-
-			CleanupStack::Pop(3, desEncryptor);
-		}
-		break;
-		case (E3DESECB):
-		{
-			encryptor = C3DESEncryptor::NewLC(iKey->Des());
-			decryptor = C3DESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (E3DESCBC):
-		{
-			CBlockTransformation* the3DESencryptor = NULL;
-			CBlockTransformation* the3DESdecryptor = NULL;
-
-			the3DESencryptor = C3DESEncryptor::NewLC(iKey->Des());
-			the3DESdecryptor = C3DESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(the3DESencryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(the3DESdecryptor, iIV->Des());		
-
-			CleanupStack::Pop(3, the3DESencryptor);
-		}
-		break;
-		case (EAESECB):
-		{
-			encryptor = CAESEncryptor::NewLC(iKey->Des());
-			decryptor = CAESDecryptor::NewL(iKey->Des());
-			
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC2ECB):
-		{
-			encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			decryptor = CRC2Decryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC2CBC):
-		{
-			CBlockTransformation* theRC2encryptor = NULL;
-			CBlockTransformation* theRC2decryptor = NULL;
-
-			theRC2encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			theRC2decryptor = CRC2Decryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			
-			encryptor = CModeCBCEncryptor::NewL(theRC2encryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(theRC2decryptor, iIV->Des());		
-
-			CleanupStack::Pop(3, theRC2encryptor);
-		}
-		break;
-		case (ERC4):
-		{
-			iEncryptor = CARC4::NewL(*iKey,0);
-			iDecryptor = CARC4::NewL(*iKey,0);
-		}
-		break;
-		case (ECipherNull):
-		{
-			iEncryptor = CNullCipher::NewL();
-			iDecryptor = CNullCipher::NewL();
-		}
-		break;
-			
-		default:
-		{
-			ASSERT(0);
-			User::Leave(KErrNotSupported);
-		}
-	}
-	
-	CleanupStack::PushL(encryptor);
-	CleanupStack::PushL(decryptor);
-
-	if(!iEncryptor && !iDecryptor)
-		{
-		CPaddingSSLv3* dPadding = CPaddingSSLv3::NewLC(decryptor->BlockSize());
-		CPaddingSSLv3* ePadding = CPaddingSSLv3::NewLC(encryptor->BlockSize());
-		iEncryptor = CBufferedEncryptor::NewL(encryptor, ePadding);	
-		CleanupStack::Pop(ePadding);
-		iDecryptor = CBufferedDecryptor::NewL(decryptor, dPadding);
-		CleanupStack::Pop(dPadding);
-		}
-
-	iEResult = HBufC8::NewMaxL(iEncryptor->MaxOutputLength(iInput->Length()));
-	iDResult = HBufC8::NewMaxL(iDecryptor->MaxOutputLength(iEResult->Size()));
-
-	CleanupStack::Pop(2, encryptor);
-}
-
-void CActionVector::DoPerformActionL()
-{
-//	First perform the test blockwise (ie passing in one block at a time)	
-	TUint blockSize = iEncryptor->BlockSize();
-	TUint index = 0;
-	while (index <= (iInput->Size() - blockSize)) 
-	{
-		TPtr8 theEncryptResult((TUint8*)&(iEResult->operator[](index)), blockSize, blockSize);
-		theEncryptResult.FillZ(theEncryptResult.MaxLength());
-		theEncryptResult.SetLength(0);
-
-		TPtrC8 theEncryptInput(iInput->Mid(index, blockSize));	
-		iEncryptor->Process(theEncryptInput, theEncryptResult);
-
-		if (iOutput->Mid(index, blockSize) == theEncryptResult)
-			iResult = ETrue;
-		else
-			break;	//	No point doing any more
-	
-		index+=blockSize;
-	}
-	
-	if (*iOutput==*iEResult)
-	{
-		iResult = ETrue;
-
-		index = 0;
-		while (index <= (iEResult->Size()- blockSize))
-		{
-			TPtr8 theDecryptResult((TUint8*)&(iDResult->operator[](index)), blockSize, blockSize);
-			theDecryptResult.FillZ(theDecryptResult.MaxLength());
-			theDecryptResult.SetLength(0);
-
-			TPtrC8 theDecryptInput(iEResult->Mid(index, blockSize));
-			iDecryptor->Process(theDecryptInput, theDecryptResult);
-			
-			if(iInput->Mid(index, blockSize) != theDecryptResult)
-			{
-				iResult = EFalse;
-				break;	//	No point doing any more
-			}
-		
-			index+=blockSize;
-		}
-	
-		if (*iInput!=*iDResult)
-		iResult = EFalse;	
-	}
-	
-	
-	iEncryptor->Reset();
-	iDecryptor->Reset();
-//	Now, if input is longer than a single block, repeat passing all the data
-	if ((TUint)iInput->Size() > blockSize)
-	{
-		TPtr8 theEncryptResult(iEResult->Des());
-		theEncryptResult.FillZ(theEncryptResult.MaxLength());
-		theEncryptResult.SetLength(0);
-
-		TPtrC8 theInput(*iInput);
-		iEncryptor->Process(theInput, theEncryptResult);
-
-		if (*iOutput!=*iEResult)
-		{
-			iResult = EFalse;
-		}
-		else
-		{
-			TPtr8 theDecryptResult(iDResult->Des());
-			theDecryptResult.FillZ(theDecryptResult.MaxLength());
-			theDecryptResult.SetLength(0);
-
-			iDecryptor->Process(*iEResult, theDecryptResult);
-			if (*iInput!=*iDResult)
-				iResult = EFalse;
-		}
-	}
-}
-
--- a/crypto/weakcrypto/test/tsymmetric/tactionvector.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TACTIONVECTOR_H__
-#define __TACTIONVECTOR_H__
-
-#include "cryptotestaction.h"
-#include <symmetric.h>
-
-class CBufferedEncryptor;	//	Forward declare
-class CBufferedDecryptor;	//	Forward declare
-
-class CActionVector : public CCryptoTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CActionVector();
-protected:
-	CActionVector(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-	void RunTest(void);
-	void TestPerformance(void);
-protected:
-	virtual void DoPerformActionL();
-	virtual void DoPerformPrerequisiteL();
-protected:
-	CSymmetricCipher* iEncryptor;
-	CSymmetricCipher* iDecryptor;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tsymmetric/tperformancetest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,632 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "tperformancetest.h"
-#include "symmetric.h"
-#include <t_output.h>
-
-#ifndef _DEBUG
-_LIT(KPerfEFormat, "\tPerformance (encryption) : %f us/iteration (%i iterations in %iL us)\r\n");
-_LIT(KPerfDFormat, "\tPerformance (decryption) : %f us/iteration (%i iterations in %iL us)\r\n");
-_LIT(KTotalFormat, "\tPerformance (total) : %f us/iteration (%i iterations in %iL us)\r\n");
-_LIT(KPerfThroughput, "\tThroughput (total): %f MB/s\r\n");
-_LIT(KPerfThroughputAfterSetup, "\tThroughput after setup: %f MB/s\r\n");
-_LIT(KPerfEncryptorCreate, "\tPerformance (encryptor create) : %f us/iteration (%i iterations in %iL us)\r\n");
-_LIT(KPerfDecryptorCreate, "\tPerformance (decryptor create) : %f us/iteration (%i iterations in %iL us)\r\n");
-_LIT(KDataSize,"\tData input size : %i B\r\n");
-#endif
-
-CTestAction* CPerformanceTest::NewL(RFs& aFs,
-									   CConsoleBase& aConsole,
-									   Output& aOut, 
-									   const TTestActionSpec& aTestActionSpec)
-	{
-	CTestAction* self = CPerformanceTest::NewLC(aFs, aConsole,
-		aOut, aTestActionSpec);
-	CleanupStack::Pop();
-	return self;
-	}
-
-CTestAction* CPerformanceTest::NewLC(RFs& aFs,
-										CConsoleBase& aConsole,
-										Output& aOut, 
-										const TTestActionSpec& aTestActionSpec)
-	{
-	CPerformanceTest* self = new(ELeave) CPerformanceTest(aFs, aConsole, aOut);
-	CleanupStack::PushL(self);
-	self->ConstructL(aTestActionSpec);
-	return self;
-	}
-
-CPerformanceTest::~CPerformanceTest()
-{
-	delete iEncryptor;
-	delete iDecryptor;
-}
-
-CPerformanceTest::CPerformanceTest(RFs& aFs, 
-								 CConsoleBase& aConsole,
-								 Output& aOut)
-								 
-: CCryptoTestAction(aFs, aConsole, aOut)
-{}
-
-void CPerformanceTest::DoPerformPrerequisiteL()
-{
-#ifndef _DEBUG
-	TInt err = KErrNone;
-	TInt pos = 0;
-	TPtrC8 vector = Input::ParseElement(*iBody, KVectorStart, KVectorEnd, pos, err);
-
-	DoInputParseL(vector);
-
-	CBlockTransformation* encryptor = 0;
-	CBlockTransformation* decryptor = 0;
-
-	switch (iCipherType)
-	{
-		case (EDESECB):
-		{//	Time the length of time it takes to set up the key schedule,
-		//	save it and add to encrypt time, to be consistent with old API
-		//	for comparison purposes (old API does both set up and encrypt/decrypt
-		//	in a single operation).
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-			
-			encryptor = CDESEncryptor::NewL(iKey->Des());
-			iEncryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				encryptor->Reset();
-				iEncryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			delete encryptor;
-			
-			decryptor = CDESDecryptor::NewL(iKey->Des());
-			
-			diff = 0;
-			iDecryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			delete decryptor;
-
-			encryptor = CDESEncryptor::NewLC(iKey->Des());
-			decryptor = CDESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case(EDESCBC):
-		{
-			CBlockTransformation* desEncryptor = NULL;
-			CBlockTransformation* desDecryptor = NULL;
-
-			desEncryptor = CDESEncryptor::NewLC(iKey->Des());								
-			encryptor = CModeCBCEncryptor::NewL(desEncryptor, iIV->Des());				
-			
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			CleanupStack::Pop(1);
-			delete encryptor;
-
-			desDecryptor = CDESDecryptor::NewLC(iKey->Des());
-			decryptor = CModeCBCDecryptor::NewL(desDecryptor, iIV->Des());
-			
-			diff = 0;
-			iDecryptIterations = 0;
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			CleanupStack::Pop(1);
-			delete decryptor;				
-
-			desEncryptor = CDESEncryptor::NewLC(iKey->Des());
-			desDecryptor = CDESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(desEncryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(desDecryptor, iIV->Des());					
-			CleanupStack::Pop(3);
-		}
-		break;
-		case (E3DESECB):
-		{
-			encryptor = C3DESEncryptor::NewL(iKey->Des());
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			delete encryptor;
-
-			diff = 0;
-			iDecryptIterations = 0;
-			decryptor = C3DESDecryptor::NewL(iKey->Des());
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			delete decryptor;
-
-			encryptor = C3DESEncryptor::NewLC(iKey->Des());
-			decryptor = C3DESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (E3DESCBC):
-		{
-			CBlockTransformation* the3DESencryptor = NULL;
-			CBlockTransformation* the3DESdecryptor = NULL;
-
-			the3DESencryptor = C3DESEncryptor::NewLC(iKey->Des());
-			encryptor = CModeCBCEncryptor::NewL(the3DESencryptor, iIV->Des());
-
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			CleanupStack::Pop(1);
-			delete encryptor;				
-
-			the3DESdecryptor = C3DESDecryptor::NewLC(iKey->Des());
-			decryptor = CModeCBCDecryptor::NewL(the3DESdecryptor, iIV->Des());		
-
-			diff = 0;
-			iDecryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			CleanupStack::Pop(1);
-			delete decryptor;
-
-			the3DESencryptor = C3DESEncryptor::NewLC(iKey->Des());
-			the3DESdecryptor = C3DESDecryptor::NewLC(iKey->Des());
-			
-			encryptor = CModeCBCEncryptor::NewL(the3DESencryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(the3DESdecryptor, iIV->Des());		
-			CleanupStack::Pop(3);
-		}
-		break;
-		case (EAESECB):
-		{
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			encryptor = CAESEncryptor::NewL(iKey->Des());
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			delete encryptor;
-
-			diff = 0;
-			iDecryptIterations = 0;
-			decryptor = CAESDecryptor::NewL(iKey->Des());
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			delete decryptor;
-			
-			encryptor = CAESEncryptor::NewLC(iKey->Des());
-			decryptor = CAESDecryptor::NewL(iKey->Des());
-			CleanupStack::Pop(encryptor);
-		}
-		break;	
-		case (ERC2ECB):
-		{
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			encryptor = CRC2Encryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			delete encryptor;
-			
-			diff = 0;
-			decryptor = CRC2Decryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			iDecryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			delete decryptor;
-
-			encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			decryptor = CRC2Decryptor::NewL(iKey->Des(), iEffectiveKeyLen);
-			CleanupStack::Pop(encryptor);
-		}
-		break;
-		case (ERC2CBC):
-		{
-			CBlockTransformation* theRC2encryptor = NULL;
-			CBlockTransformation* theRC2decryptor = NULL;
-
-			theRC2encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			encryptor = CModeCBCEncryptor::NewL(theRC2encryptor, iIV->Des());
-
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				encryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			CleanupStack::Pop(1);
-			delete encryptor;
-
-			diff = 0;
-			iDecryptIterations = 0;
-			theRC2decryptor = CRC2Decryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			decryptor = CModeCBCDecryptor::NewL(theRC2decryptor, iIV->Des());		
-			startTime.UniversalTime();
-			while (diff < iterationTime)
-				{
-				decryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			CleanupStack::Pop(1);
-			delete decryptor;
-
-			theRC2encryptor = CRC2Encryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			theRC2decryptor = CRC2Decryptor::NewLC(iKey->Des(), iEffectiveKeyLen);
-			
-			encryptor = CModeCBCEncryptor::NewL(theRC2encryptor, iIV->Des());
-			CleanupStack::PushL(encryptor);
-			decryptor = CModeCBCDecryptor::NewL(theRC2decryptor, iIV->Des());		
-			CleanupStack::Pop(3);
-		}
-		break;
-		case (ERC4):
-		{
-			iEncryptor = CARC4::NewL(*iKey);
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				iEncryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-
-			diff = 0;			
-			iDecryptIterations = 0;
-			iDecryptor = CARC4::NewL(*iKey);
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iDecryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-		}
-		break;
-		case (ECipherNull):
-		{
-			iEncryptor = CNullCipher::NewL();
-			TTime startTime;
-			TTime endTime;
-			TTimeIntervalSeconds diff(0);
-			const TTimeIntervalSeconds iterationTime(iIterationTime);
-
-			iEncryptIterations = 0;
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iEncryptIterations++;
-				iEncryptor->Reset();
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iEncryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-			
-			diff = 0;
-			iDecryptIterations = 0;
-			iDecryptor = CNullCipher::NewL();
-			startTime.UniversalTime();	
-			while (diff < iterationTime)
-				{
-				iDecryptor->Reset();
-				iDecryptIterations++;
-				endTime.UniversalTime();
-				endTime.SecondsFrom(startTime, diff);
-				}
-			endTime.UniversalTime();
-			iDecryptorCreateTime = endTime.MicroSecondsFrom(startTime);
-		}
-		break;
-			
-		default:
-		{
-			ASSERT(0);
-			User::Leave(KErrNotSupported);
-		}
-	}
-	
-	if( encryptor && decryptor )
-		{
-		CleanupStack::PushL(encryptor);
-		CleanupStack::PushL(decryptor);
-		
-		CPaddingSSLv3* ePadding = CPaddingSSLv3::NewLC(encryptor->BlockSize());
-		iEncryptor = CBufferedEncryptor::NewL(encryptor, ePadding);	
-		CleanupStack::Pop(ePadding);	
-		
-		CPaddingSSLv3* dPadding = CPaddingSSLv3::NewLC(decryptor->BlockSize());
-		iDecryptor = CBufferedDecryptor::NewL(decryptor, dPadding);
-		CleanupStack::Pop(dPadding);
-		CleanupStack::Pop(decryptor);
-		CleanupStack::Pop(encryptor);
-		}
-
-	// clear the default input and output fields and fill with random data
-	// since for performance testing we do not care about validating
-	// correct output
-	delete iInput;	
-	iInput = NULL;
-	iInput = HBufC8::NewMaxL(iRandDataSize);
-	TPtr8 tempPtr = iInput->Des();
-	TRandom::Random(tempPtr);	
-	TBuf<128> tempbuf;
-	tempbuf.Format(KDataSize, (iInput->Length()));
-	iOut.writeString(tempbuf);	
-	delete iOutput;
-	iOutput = NULL;
-	iOutput = HBufC8::NewMaxL(iRandDataSize);
-	TPtr8 tempPtr2 = iOutput->Des();
-	TRandom::Random(tempPtr2);	
-		
-	iEResult = HBufC8::NewMaxL(iEncryptor->MaxOutputLength(iInput->Length()));
-	iDResult = HBufC8::NewMaxL(iDecryptor->MaxOutputLength(iEResult->Size()));
-#endif
-}
-
-void CPerformanceTest::DoPerformActionL()
-{
-	iResult = ETrue;
-#ifndef _DEBUG
-	TBuf<128> buf;
-	TReal rate = I64REAL(iEncryptorCreateTime.Int64()) / iEncryptIterations;
-	buf.Format(KPerfEncryptorCreate, rate, iEncryptIterations, iEncryptorCreateTime.Int64());
-	iOut.writeString(buf);
-
-	TTime startTime;
-	TTime endTime;
-	TTimeIntervalSeconds diff(0);
-	const TTimeIntervalSeconds iterationTime(iIterationTime);
-	
-	iEncryptIterations = 0;
-	startTime.UniversalTime();
-	while (diff < iterationTime)
-		{
-		TPtr8 iEResultTemp(iEResult->Des());
-		iEResultTemp.Zero();
-
-		iEncryptor->Process(*iInput, iEResultTemp);
-		iEncryptIterations++;
-		endTime.UniversalTime();
-		endTime.SecondsFrom(startTime, diff);
-		}
-	endTime.UniversalTime();
-
-	TTimeIntervalMicroSeconds time = endTime.MicroSecondsFrom(startTime);
-	rate = I64REAL(time.Int64()) / iEncryptIterations;
-	buf.Format(KPerfEFormat, rate, iEncryptIterations, time.Int64());
-	iOut.writeString(buf);
-
-	rate = (static_cast<TReal>(iEncryptIterations) * iInput->Size() * 1000 * 1000) / (I64REAL(time.Int64()) * 1024 * 1024);	// Throughput in MB/s
-	buf.FillZ();
-	buf.Zero();
-	buf.Format(KPerfThroughputAfterSetup, rate);
-	iOut.writeString(buf);
-
-	TInt64 totalEncryptTime = time.Int64();
-	totalEncryptTime+=iEncryptorCreateTime.Int64();
-	rate = I64REAL(totalEncryptTime) / iEncryptIterations;
-	buf.FillZ();
-	buf.Zero();
-	buf.Format(KTotalFormat, rate, iEncryptIterations, totalEncryptTime);
-	iOut.writeString(buf);
-
-	rate = (static_cast<TReal>(iEncryptIterations) * iInput->Size() * 1000 * 1000) / (I64REAL(totalEncryptTime) * 1024 * 1024);	// Throughput in MB/s
-	buf.Zero();
-	buf.Format(KPerfThroughput, rate);
-	iOut.writeString(buf);
-
-//	Test decryption
-	rate = I64REAL(iDecryptorCreateTime.Int64()) / iDecryptIterations;
-	buf.Format(KPerfDecryptorCreate, rate, iDecryptIterations, iDecryptorCreateTime.Int64());
-	iOut.writeString(buf);
-	
-	diff = 0;
-	iDecryptIterations = 0;
-	startTime.UniversalTime();	
-	while (diff < iterationTime)
-		{
-		TPtr8 iDResultTemp(iDResult->Des());
-		iDResultTemp.Zero();
-		iDecryptor->Process(*iOutput, iDResultTemp);
-		iDecryptIterations++;
-		endTime.UniversalTime();
-		endTime.SecondsFrom(startTime, diff);
-		}
-	endTime.UniversalTime();
-
-	time = endTime.MicroSecondsFrom(startTime);	
-	rate = I64REAL(time.Int64()) / iDecryptIterations;
-	buf.FillZ();
-	buf.Zero();
-	buf.Format(KPerfDFormat, rate, iDecryptIterations, time.Int64());
-	iOut.writeString(buf);
-
-	rate = (static_cast<TReal>(iDecryptIterations) * iInput->Size() * 1000 * 1000) / (I64REAL(time.Int64()) * 1024 * 1024);	// Throughput in MB/s
-	buf.Zero();
-	buf.Format(KPerfThroughputAfterSetup, rate);
-	iOut.writeString(buf);
-
-	TInt64 totalDecryptTime = time.Int64();
-	totalDecryptTime+=iDecryptorCreateTime.Int64();
-	rate = I64REAL(totalDecryptTime) / iDecryptIterations;
-	buf.FillZ();
-	buf.Zero();
-	buf.Format(KTotalFormat, rate, iDecryptIterations, totalDecryptTime);
-	iOut.writeString(buf);
-	
-	rate = (static_cast<TReal>(iDecryptIterations) * iInput->Size() * 1000 * 1000) / (I64REAL(totalDecryptTime) * 1024 * 1024);	// Throughput in MB/s
-	buf.Zero();
-	buf.Format(KPerfThroughput, rate);
-	iOut.writeString(buf);
-	
-#endif
-}
-
--- a/crypto/weakcrypto/test/tsymmetric/tperformancetest.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-/*
-* Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#ifndef __TPERFORMANCETEST_H__
-#define __TPERFORMANCETEST_H__
-
-#include "cryptotestaction.h"
-
-class CSymmetricCipher;
-
-class CPerformanceTest : public CCryptoTestAction
-{
-public:
-	static CTestAction* NewL(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	static CTestAction* NewLC(RFs& aFs, CConsoleBase& aConsole,
-		Output& aOut, const TTestActionSpec& aTestActionSpec);
-	virtual ~CPerformanceTest();
-protected:
-	CPerformanceTest(RFs& aFs, CConsoleBase& aConsole, Output& aOut);
-protected:
-	void DoPerformActionL();
-	void DoPerformPrerequisiteL();	
-protected:
-	CSymmetricCipher* iEncryptor;
-	CSymmetricCipher* iDecryptor;
-};
-
-#endif
--- a/crypto/weakcrypto/test/tsymmetric/tsymmetricmain.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,133 +0,0 @@
-/*
-* Copyright (c) 1998-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32base.h>
-#include "t_testhandler.h"
-#include "t_testsetup.h"
-#include "tscripttests.h"
-#include "tactionvector.h"
-#include "tperformancetest.h"
-#include "tactionincremental.h"
-#include "tactionmontecarlo.h"
-
-LOCAL_D void callExampleL() // initialize and call example code under cleanup stack
-{
-    START_SCRIPT_LIST
-	SCRIPT_ITEM(CActionVector,_L8("Vector")),
-	SCRIPT_ITEM(CPerformanceTest,_L8("Performance")),
-	SCRIPT_ITEM(CActionIncremental,_L8("Incremental")),
-	SCRIPT_ITEM(CActionMonteCarlo, _L8("MonteCarlo"))
-	END_SCRIPT_LIST
-	
-	TDriveUnit sysDrive (RFs::GetSystemDrive());
-	TDriveName sysDriveName (sysDrive.Name());
-	TBuf<64> scriptFile (sysDriveName);
-	scriptFile.Append(_L("\\tsymmetric\\tsymmetrictests.txt"));
-	
-	TBuf<64> logFile (sysDriveName);
-	logFile.Append(_L("\\tsymmetric\\tsymmetrictests.log"));
-	
-	
-//	RC2, RC4, DES, 3DES (ECB and CBC modes)
-/*	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\symmetricOOMtests.txt"),
-		_L("c:\\tsymmetric\\symmetricOOMtests.log"));*/
-	CTestSetup::CreateAndRunTestsL(theTestTypes, scriptFile, logFile);
-
-//	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\tsymmetricperformancetests.txt"),
-//		_L("c:\\tsymmetric\\tsymmetricperformancetests.log"));
-
-//	There are so many other test scripts because it is impossible to put all the test
-//	data in one big script.  The test framework just falls over with out of memory because
-//	it attempts to create all test objects at the start of the test.  All these tests
-//	are (of course) necessary hence they've been split.  Either run the top level build
-//	and test script or, if running this test specifically, uncomment the following and it'll run them
-//	all one after the other	
-//	AES (ECB) using Rijndael vectors for all table values	
-/*	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECBVectorsScript.txt"),
-		_L("c:\\tsymmetric\\aesecb_vectors.log"));
-
-//	AES (ECB) KAT using variable text, known key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECB_KAT_VT.txt"),
-		_L("c:\\tsymmetric\\aesecb_kat_vt.log"));
- 
-//	AES (ECB) KAT using variable key, known text
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESECB_KAT_VK.txt"),
-		_L("c:\\tsymmetric\\aesecb_kat_vk.log"));
-
-//	AES Monte Carlo tests (ECB encrypt) with 128 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB128.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptECB128.log"));
-
-//	AES Monte Carlo tests (ECB encrypt) with 192 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB192.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptECB192.log"));
-
-//	AES Monte Carlo tests (ECB encrypt) with 256 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptECB256.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptECB256.log"));
-
-//	AES Monte Carlo tests (ECB decrypt) with 128 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB128.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptECB128.log"));
-
-//	AES Monte Carlo tests (ECB decrypt) with 192 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB192.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptECB192.log"));
-
-//	AES Monte Carlo tests (ECB decrypt) with 256 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptECB256.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptECB256.log"));
-
-//	AES Monte Carlo tests (CBC encrypt) with 128 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC128.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptCBC128.log"));
-
-//	AES Monte Carlo tests (CBC encrypt) with 192 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC192.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptCBC192.log"));
-
-//	AES Monte Carlo tests (CBC encrypt) with 256 bit key	
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloEncryptCBC256.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_encryptCBC256.log"));
-
-//	AES Monte Carlo tests (CBC decrypt) with 128 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC128.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptCBC128.log"));
-
-//	AES Monte Carlo tests (CBC decrypt) with 192 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC192.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptCBC192.log"));
-
-//	AES Monte Carlo tests (CBC decrypt) with 256 bit key
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\AESMonteCarloDecryptCBC256.txt"),
-		_L("c:\\tsymmetric\\aesmontecarlo_decryptCBC256.log"));
-
-	CTestSetup::CreateAndRunTestsL(theTestTypes, _L("c:\\tsymmetric\\symmetricOOMtests.txt"),
-		_L("c:\\tsymmetric\\symmetricOOMtests.log"));
-*/}
-
-GLDEF_C TInt E32Main() // main function called by E32
-    {
-	__UHEAP_MARK;
-	CTrapCleanup* cleanup = CTrapCleanup::New(); // get clean-up stack
-	TRAPD(error, callExampleL());
-	__ASSERT_ALWAYS(!error,User::Panic(_L("tsymmetric"),error));
-	delete cleanup; // destroy clean-up stack
-	__UHEAP_MARKEND;
-	return 0;
-    }
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/group/ABLD.BAT	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,15 @@
+@ECHO OFF
+
+REM Bldmake-generated batch file - ABLD.BAT
+REM ** DO NOT EDIT **
+
+perl -S abld.pl "\sf\os\security\crypto\weakcryptospi\group\\" %1 %2 %3 %4 %5 %6 %7 %8 %9
+if errorlevel==1 goto CheckPerl
+goto End
+
+:CheckPerl
+perl -v >NUL
+if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?
+goto End
+
+:End
--- a/crypto/weakcryptospi/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -53,25 +53,32 @@
 ../inc/spi/macplugin.h					SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/macplugin.h)
 #endif
 
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/spi/rulecharacteristics.h		/epoc32/include/rulecharacteristics.h
+#endif
+#endif
+
+
 
 // Now, the export control measures do not apply for the below set of headers. Hence, they can be exported.
-../inc/spi/asymmetriccipherplugin.h		      SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/asymmetriccipherplugin.h)
-../inc/spi/cryptosymmetriccipherapi.h			  SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptosymmetriccipherapi.h)
-../inc/spi/cryptoasymmetriccipherapi.h	    SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptoasymmetriccipherapi.h)
-../inc/spi/cryptosignatureapi.h							SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptosignatureapi.h)
-../inc/spi/cryptokeypairgeneratorapi.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptokeypairgeneratorapi.h)
-../inc/spi/keys.h														SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptospi/keys.h)
-../inc/spi/keypair.h												SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keypair.h)
-../inc/spi/keypairgeneratorplugin.h					SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keypairgeneratorplugin.h)
-../inc/spi/signerplugin.h										SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/signerplugin.h)
-../inc/spi/symmetriccipherplugin.h					SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/symmetriccipherplugin.h)
-../inc/spi/verifierplugin.h									SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/verifierplugin.h)
-../inc/spi/cryptokeyagreementapi.h					SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptokeyagreementapi.h)
-../inc/spi/keyagreementplugin.h							SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keyagreementplugin.h)
+../inc/spi/asymmetriccipherplugin.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/asymmetriccipherplugin.h)
+../inc/spi/cryptosymmetriccipherapi.h	SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptosymmetriccipherapi.h)
+../inc/spi/cryptoasymmetriccipherapi.h	SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptoasymmetriccipherapi.h)
+../inc/spi/cryptosignatureapi.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptosignatureapi.h)
+../inc/spi/cryptokeypairgeneratorapi.h	SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptokeypairgeneratorapi.h)
+../inc/spi/keys.h					SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptospi/keys.h)
+../inc/spi/keypair.h				SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keypair.h)
+../inc/spi/keypairgeneratorplugin.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keypairgeneratorplugin.h)
+../inc/spi/signerplugin.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/signerplugin.h)
+../inc/spi/symmetriccipherplugin.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/symmetriccipherplugin.h)
+../inc/spi/verifierplugin.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/verifierplugin.h)
+../inc/spi/cryptokeyagreementapi.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/cryptokeyagreementapi.h)
+../inc/spi/keyagreementplugin.h		SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cryptospi/keyagreementplugin.h)
 
 
 // Cryptospi error codes.
-../inc/spi/cryptospi_errs.h               	SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptospi/cryptospi_errs.h)
+../inc/spi/cryptospi_errs.h               SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptospi/cryptospi_errs.h)
 
 
 ../inc/cryptopanic.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptopanic.h)
@@ -269,4 +276,3 @@
 #ifdef SYMBIAN_SDP_IPSEC_VOIP_SUPPORT
 #include "../examples/bld.inf"
 #endif
-
--- a/crypto/weakcryptospi/group/random.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/group/random.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -33,7 +33,6 @@
 SOURCEPATH	../source/random
 SOURCE          random.cpp threadrandom.cpp randomshim.cpp
 
-USERINCLUDE	../inc
 USERINCLUDE ../../../cryptomgmtlibs/securityutils/inc
 USERINCLUDE	../../../cryptoplugins/cryptospiplugins/source/softwarecrypto
 OS_LAYER_SYSTEMINCLUDE
--- a/crypto/weakcryptospi/group/tcryptospi.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/group/tcryptospi.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -105,10 +105,6 @@
 SOURCE			symmetric_mac_incremental_with_copy_step.cpp
 #endif
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-SOURCE			dummyecccipherloadstep.cpp
-SOURCE			dummyeccsignerloadstep.cpp
-#endif
 
 USERINCLUDE     ..
 USERINCLUDE     ../test/tcryptospi/src
--- a/crypto/weakcryptospi/inc/cryptotests.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/inc/cryptotests.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -24,14 +24,8 @@
 #include "pkcs5kdftests.iby"
 #include "paddingtests.iby"
 #include "tcryptospi.iby"
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
 #include "cryptospi_testplugins.iby"
-#endif
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-#include "cryptospi_testwmdrmplugins.iby"
-#endif
 
 file=ABI_DIR\BUILD_DIR\tsymmetric.exe	System\Programs\tsymmetric.exe
 file=ABI_DIR\BUILD_DIR\tasymmetric.exe	System\Programs\tasymmetric.exe
@@ -117,9 +111,6 @@
 data = ZDRIVE\tbigint\tprimefailuretests.ini		tbigint\tprimefailuretests.ini
 data = ZDRIVE\tbigint\tprimegen.ini             tbigint\tprimegen.ini
 
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
-
 #if !defined(SMP)
 // Proof of concept KMS (Key Management Server)
 // Add them to the Core image (core.img) only. As rofs1.img does not support the device, and extension.
@@ -139,7 +130,6 @@
 file=ABI_DIR\BUILD_DIR\kmsclient.dll		sys\bin\kmsclient.dll
 
 file=ABI_DIR\BUILD_DIR\kmstest.exe			sys\bin\kmstest.exe
-#endif
 
 #endif
 // End of cryptotests.iby 
--- a/crypto/weakcryptospi/inc/spi/cryptospidef.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/inc/spi/cryptospidef.h	Wed Sep 01 12:40:57 2010 +0100
@@ -641,78 +641,6 @@
 	const TUid KExtractableKeyUid={KExtractableKey};
 	const TUid KNonExtractableKeyUid={KNonExtractableKey};
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	/**
-	 * The UID below is not specific to ECC. This should be used 
-	 * as a CKey key param, whenever the user of CryptoSPI just has
-	 * the handle and not the actual key with him. The SPI plugin 
-	 * should search for this ID and invoke the right apis for 
-	 * getting access to keys.
-	 */
-    const TInt32 KPassedHandleToKey = 0x20025161;
-    const TUid KPassedHandleToKeyUid = {KPassedHandleToKey};
-
-#ifdef SYMBIAN_ENABLE_SDP_ECC
-    /**
-    UIDs related to Ecc (which is Asymmetric Cipher)
-    */
-    const TInt32 KAlgorithmCipherEcc = 0x20024482;
-    const TInt32 KAlgorithmSignerEcc = 0x20024483;
-    const TInt32 KAlgorithmVerifierEcc = 0x20024486;
-    const TInt32 KAlgorithmECCKeyPairGenerator = 0x20024487;
-
-    const TUid KEccCipherUid = {KAlgorithmCipherEcc};
-    const TUid KEccSignerUid = {KAlgorithmSignerEcc};
-    const TUid KEccVerifierUid = {KAlgorithmVerifierEcc};
-    const TUid KEccKeyPairGeneratorUid = {KAlgorithmECCKeyPairGenerator};
-
-    /**
-    UIDs related to ECC keys
-    */
-    const TInt32 KEccKeyType = 0x20025160;
-    const TInt32 KEccPublicKey = 0x20024484;
-    const TInt32 KEccPrivateKey = 0x20024485;
-
-    const TUid KEccKeyTypeUid = {KEccKeyType};
-    const TUid KEccPublicKeyUid = {KEccPublicKey};
-    const TUid KEccPrivateKeyUid = {KEccPrivateKey};
-
-    /**
-    UIDs related to ECC key params
-    */
-    const TInt32 KEccFiniteFieldFP = 0x20025151;
-    const TInt32 KEccFiniteFieldF2M = 0x20025152;
-    const TInt32 KEccKeyGenerationSeed = 0x20025153;
-    const TInt32 KEccKeyParameterP = 0x20025154;
-    const TInt32 KEccKeyParameterA = 0x20025155;
-    const TInt32 KEccKeyParameterB = 0x20025156;
-    const TInt32 KEccKeyParameterG = 0x20025157;
-    const TInt32 KEccKeyParameterN = 0x20025158;
-    const TInt32 KEccKeyParameterH = 0x20025159;
-    const TInt32 KEccKeyParameterM = 0x2002515A;
-    const TInt32 KEccKeyParameterF = 0x2002515B;
-    const TInt32 KEccKeyParameterD = 0x2002515C;
-    const TInt32 KEccKeyParameterQ = 0x2002515D;
-    const TInt32 KEccSignatureParameterR = 0x2002515E;
-    const TInt32 KEccSignatureParameterS = 0x2002515F;
-
-    const TUid KEccFiniteFieldFPUid = {KEccFiniteFieldFP};
-    const TUid KEccFiniteFieldF2MUid = {KEccFiniteFieldF2M};
-    const TUid KEccKeyGenerationSeedUid = {KEccKeyGenerationSeed};
-    const TUid KEccKeyParameterPUid = {KEccKeyParameterP};
-    const TUid KEccKeyParameterAUid = {KEccKeyParameterA};
-    const TUid KEccKeyParameterBUid = {KEccKeyParameterB};
-    const TUid KEccKeyParameterGUid = {KEccKeyParameterG};
-    const TUid KEccKeyParameterNUid = {KEccKeyParameterN};
-    const TUid KEccKeyParameterHUid = {KEccKeyParameterH};
-    const TUid KEccKeyParameterMUid = {KEccKeyParameterM};
-    const TUid KEccKeyParameterFUid = {KEccKeyParameterF};
-    const TUid KEccKeyParameterDUid = {KEccKeyParameterD};
-    const TUid KEccKeyParameterQUid = {KEccKeyParameterQ};
-    const TUid KEccSignatureParameterRUid = {KEccSignatureParameterR};
-    const TUid KEccSignatureParameterSUid = {KEccSignatureParameterS};
-#endif //SYMBIAN_ENABLE_SDP_ECC
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	}
 
 
--- a/crypto/weakcryptospi/inc/tcryptospi.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/inc/tcryptospi.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -33,9 +33,6 @@
 data = ZRESOURCE\cryptospi\plug-ins.txt5 		resource\cryptospi\plug-ins.txt5
 data = ZRESOURCE\cryptospi\plug-ins.txt6 		resource\cryptospi\plug-ins.txt6
 data = ZRESOURCE\cryptospi\plug-ins.txt7 		resource\cryptospi\plug-ins.txt7
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-data = ZRESOURCE\cryptospi\tecchw-plug-ins.txt 		resource\cryptospi\tecchw-plug-ins.txt
-#endif
 
 data = ZDRIVE/testdata/tcryptospi/scripts/tcryptospi.script						\testdata\tcryptospi\scripts\tcryptospi.script
 data = ZDRIVE/testdata/tcryptospi/scripts/te_SymmetricCipherTestCases.script			\testdata\tcryptospi\scripts\te_SymmetricCipherTestCases.script
@@ -49,10 +46,6 @@
 data = ZDRIVE/testdata/tcryptospi/scripts/te_PluginCharsTestCases.script			\testdata\tcryptospi\scripts\te_PluginCharsTestCases.script
 data = ZDRIVE/testdata/tcryptospi/scripts/te_RuleSelectionTestCases.script			\testdata\tcryptospi\scripts\te_RuleSelectionTestCases.script
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-data = ZDRIVE/testdata/tcryptospi/scripts/te_dummyeccciphertestcases.script			\testdata\tcryptospi\scripts\te_dummyeccciphertestcases.script
-#endif
-
 data = ZDRIVE/testdata/tcryptospi/configs/SymmetricCipherPositiveObjectLoad.ini					\testdata\tcryptospi\configs\SymmetricCipherPositiveObjectLoad.ini
 data = ZDRIVE/testdata/tcryptospi/configs/SymmetricCipherEncryptedDataCheck.ini					\testdata\tcryptospi\configs\SymmetricCipherEncryptedDataCheck.ini
 data = ZDRIVE/testdata/tcryptospi/configs/SymmetricCipherEncryptDecrypt.ini						\testdata\tcryptospi\configs\SymmetricCipherEncryptDecrypt.ini
@@ -109,10 +102,6 @@
 data = ZDRIVE/testdata/tcryptospi/configs/ruleselection_matrix.ini				\testdata\tcryptospi\configs\ruleselection_matrix.ini
 data = ZDRIVE/testdata/tcryptospi/configs/ruleselection_extended.ini				\testdata\tcryptospi\configs\ruleselection_extended.ini
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-data = ZDRIVE/testdata/tcryptospi/configs/dummyeccciphertestcases.ini				\testdata\tcryptospi\configs\dummyeccciphertestcases.ini
-#endif
-
 data = ZDRIVE/testdata/tcryptospi/data/key64bit.txt							\testdata\tcryptospi\data\key64bit.txt
 data = ZDRIVE/testdata/tcryptospi/data/key128bit.txt							\testdata\tcryptospi\data\key128bit.txt
 data = ZDRIVE/testdata/tcryptospi/data/key192bit.txt							\testdata\tcryptospi\data\key192bit.txt
--- a/crypto/weakcryptospi/source/bigint/stackinteger.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/source/bigint/stackinteger.h	Wed Sep 01 12:40:57 2010 +0100
@@ -35,7 +35,7 @@
  * allocated memory.
  * If you are not sure which integer you want, you want an RInteger.
  * @internalComponent
- * @released
+ * @prototype
  * @see RInteger
  */
 template <TUint W=2> 
--- a/crypto/weakcryptospi/source/spi/cryptospiutil.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/source/spi/cryptospiutil.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -85,25 +85,21 @@
 
 TInt CryptoSpiUtil::RetrieveCharacteristicsL(TInt32 aInterface, RDesReadStream& aStream, RBuf8& aBuf, TInt& aCount)
 	{
-	// first we are only trying to retrieve the length of the buffer
-	TBuf8<sizeof(TInt32)> buf;
+	TBuf8<KMaxFileName> buf;
 	TInt testResult = RProperty::Get(KCryptoSpiPropertyCat, aInterface, buf);
 	if (testResult==KErrNotFound)
 		{
 		//run the exe to Publish the properties
 		RunCryptoSpiPropertySetupExe();
-		// testresult would be checked outside the loop
 		testResult = RProperty::Get(KCryptoSpiPropertyCat, aInterface, buf);
+		if (testResult==KErrNotFound)
+			{
+			//Error
+			User::Leave(testResult);
+			}
 		}
 	
-	// overflow will occur as we are only retrieving the length first.
-	// any other error we should leave
-	if(testResult != KErrOverflow)
-		{
-		User::LeaveIfError(testResult);
-		}
-	
-	//read the length
+	//Try to read the length first
 	RDesReadStream rStream(buf);
 	TInt32 len=rStream.ReadInt32L();
 	
--- a/crypto/weakcryptospi/test/kms/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/kms/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -22,6 +22,13 @@
 
 PRJ_TESTEXPORTS
 
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+exported_include/keyhandle.h /epoc32/include/keyhandle.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+exported_include/kmsclient.h /epoc32/include/kmsclient.h
+#endif
+
 PRJ_TESTMMPFILES
 
 // kmsldd/kmsldd
--- a/crypto/weakcryptospi/test/tasymmetric/script_gen/keys.c	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tasymmetric/script_gen/keys.c	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -23,7 +23,7 @@
  @file
 */
 
-#include "keys.h"
+#include <cryptospi/keys.h>
 
 RSA* key1;    /* modulus is 64 bytes */
 RSA* key2;    /* modulus is 50 bytes */
--- a/crypto/weakcryptospi/test/tasymmetric/script_gen/rsa_test.c	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tasymmetric/script_gen/rsa_test.c	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2005-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -32,7 +32,7 @@
 #include <openssl/rsa.h>
 
 #include "utils.h"
-#include "keys.h"
+#include <cryptospi/keys.h>
 
 void printPublicKey(RSA* key)
     {    
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tasymmetric/scripts/performance testing strategy.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,20 @@
+RSA Performance tests
+
+keybits = 512, 1024, 2048
+
+test vectors (need to get some extras for larger keys)
+------------------------------------------------------
+encrypt 
+standard decrypt
+CRT decrypt
+
+standard sign
+CRT sign
+verify
+
+forward-backward self-test
+--------------------------
+encrypt & CRT decrypt FB supplied input
+encrypt & standard decrypt FB supplied input
+sign & verify FB supplied input
+CRT sign & verify FB supplied input
\ No newline at end of file
--- a/crypto/weakcryptospi/test/tcryptospi/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -42,9 +42,6 @@
 ./plug-ins.txt5 z:/resource/cryptospi/plug-ins.txt5
 ./plug-ins.txt6 z:/resource/cryptospi/plug-ins.txt6
 ./plug-ins.txt7 z:/resource/cryptospi/plug-ins.txt7
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-./tecchw-plug-ins.txt z:/resource/cryptospi/tecchw-plug-ins.txt
-#endif
 
 // Script Files
 ../scripts/te_symmetricciphertestcases.script		/epoc32/winscw/c/testdata/tcryptospi/scripts/te_symmetricciphertestcases.script
@@ -67,9 +64,7 @@
 ../scripts/te_ruleselectiontestcases.script			/epoc32/winscw/c/testdata/tcryptospi/scripts/te_ruleselectiontestcases.script
 #endif
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../scripts/te_dummyeccciphertestcases.script				/epoc32/winscw/c/testdata/tcryptospi/scripts/te_dummyeccciphertestcases.script
-#endif
+
 //***********************************************************************************************************************
 
 // Symmetric Step Configuration Files
@@ -154,9 +149,6 @@
 ../testdata/ruleselection_matrix.ini						/epoc32/winscw/c/testdata/tcryptospi/configs/ruleselection_matrix.ini
 #endif
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../testdata/dummyeccciphertestcases.ini						/epoc32/winscw/c/testdata/tcryptospi/configs/dummyeccciphertestcases.ini
-#endif
 //***********************************************************************************************************************
 
 // Asymmetric and Symmetric Data Files
@@ -262,7 +254,3 @@
 ../testdata/nistsp800-38atestvectors/ctr-aes256ciphertext.ctr	/epoc32/winscw/c/testdata/tcryptospi/data/nistsp800-38atestvectors/ctr-aes256ciphertext.ctr
 
 // Copy Batch files
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../scripts/batchfiles/pre_dummyeccplugin.bat					/epoc32/winscw/c/testdata/tcryptospi/scripts/batchfiles/pre_dummyeccplugin.bat
-../scripts/batchfiles/post_dummyeccplugin.bat					/epoc32/winscw/c/testdata/tcryptospi/scripts/batchfiles/post_dummyeccplugin.bat
-#endif
\ No newline at end of file
Binary file crypto/weakcryptospi/test/tcryptospi/group/tecchw-plug-ins.txt has changed
--- a/crypto/weakcryptospi/test/tcryptospi/scripts/batchfiles/post_dummyeccplugin.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-del \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt
-copy \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt.backup \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt
-del \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt.backup
-del \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt
-copy \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt.backup \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt
-del \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt.backup
\ No newline at end of file
--- a/crypto/weakcryptospi/test/tcryptospi/scripts/batchfiles/pre_dummyeccplugin.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-copy \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt.backup
-copy \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\tecchw-plug-ins.txt \epoc32\RELEASE\WINSCW\UDEB\z\resource\cryptospi\plug-ins.txt
-copy \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt.backup
-copy \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\tecchw-plug-ins.txt \epoc32\RELEASE\WINSCW\UREL\z\resource\cryptospi\plug-ins.txt
\ No newline at end of file
--- a/crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi.script	Wed Sep 01 12:40:57 2010 +0100
@@ -21,27 +21,27 @@
 //
 
 //Symmetric Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_SymmetricCipherTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_SymmetricCipherTestCases.script
 
 //Asymmertric Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_ASymmetricCipherTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_ASymmetricCipherTestCases.script
 
 //Hash and Hmac Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_HashHmacTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_HashHmacTestCases.script
 
 //Random Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_RandomTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_RandomTestCases.script
 
 //Key Exchange, Generation, Signer and Verifier Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_MiscellaneousTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_MiscellaneousTestCases.script
 
 //Plug-in Load Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_pluginloadtestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_pluginloadtestcases.script
 
 //Plug-in Characteristics
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_plugincharstestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_plugincharstestcases.script
 
 //Plug-in Rule Based Selection
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_ruleselectiontestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_ruleselectiontestcases.script
 
 PRINT Complate_Te_CryptoSpi_Tests
--- a/crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi_v2.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/scripts/tcryptospi_v2.script	Wed Sep 01 12:40:57 2010 +0100
@@ -21,33 +21,33 @@
 //
 
 //Symmetric Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_SymmetricCipherTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_SymmetricCipherTestCases.script
 
 //Asymmertric Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_ASymmetricCipherTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_ASymmetricCipherTestCases.script
 
 //Hash Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_HashHmacTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_HashHmacTestCases.script
 
 //Hash Test Cases use the new CreateHashL()
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_hash_test_cases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_hash_test_cases.script
 
 //Mac Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_mac_test_cases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_mac_test_cases.script
 
 //Random Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_RandomTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_RandomTestCases.script
 
 //Key Exchange, Generation, Signer and Verifier Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_MiscellaneousTestCases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_MiscellaneousTestCases.script
 
 //Plug-in Load Test Cases
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_pluginloadtestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_pluginloadtestcases.script
 
 //Plug-in Characteristics
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_plugincharstestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_plugincharstestcases.script
 
 //Plug-in Rule Based Selection
-RUN_SCRIPT z:\testdata\tcryptospi\scripts\te_ruleselectiontestcases.script
+RUN_SCRIPT c:\testdata\tcryptospi\scripts\te_ruleselectiontestcases.script
 
 PRINT Complate_Te_CryptoSpi_Tests
--- a/crypto/weakcryptospi/test/tcryptospi/scripts/te_dummyeccciphertestcases.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Run all te_DummyEccCipherTestCases
-//
-
-//
-LOAD_SUITE Te_CryptoSpi
-//
-//! @SYMTestCaseID 	SEC-CRYPTOSPI-PREQ2086-0001
-//! @SYMTestCaseDesc	DummyEccCipherLoad
-
-START_TESTCASE SEC-CRYPTOSPI-PREQ2086-0001
-RUN_TEST_STEP 100 Te_CryptoSpi DummyEccCipherLoadStep c:\testdata\tcryptospi\configs\DummyEccCipherTestCases.ini Cipher0001
-END_TESTCASE SEC-CRYPTOSPI-PREQ2086-0001
-
-//
-//! @SYMTestCaseID 	SEC-CRYPTOSPI-PREQ2086-0002
-//! @SYMTestCaseDesc	DummyEccSignerLoad
-
-START_TESTCASE SEC-CRYPTOSPI-PREQ2086-0002
-RUN_TEST_STEP 100 Te_CryptoSpi DummyEccSignerLoadStep c:\testdata\tcryptospi\configs\DummyEccCipherTestCases.ini Signer0001
-END_TESTCASE SEC-CRYPTOSPI-PREQ2086-0002
-
-PRINT Complete_te_DummyEccCipherTestCases
--- a/crypto/weakcryptospi/test/tcryptospi/src/dummyecccipherloadstep.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/src/dummyecccipherloadstep.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiconversion.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiconversion.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -140,10 +140,6 @@
 	else if (*this==_L("KMacInterface")) return KMacInterfaceUid;
 	else if (*this==_L("KMacModeType")) return KMacModeTypeUid;
 #endif
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    else if (*this==_L("KAlgorithmCipherEcc")) return KEccCipherUid;
-    else if (*this==_L("KAlgorithmSignerEcc")) return KEccSignerUid;
-#endif
 	else
 		{
 		User::Panic(*this,KErrNotFound);
--- a/crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/crypto/weakcryptospi/test/tcryptospi/src/te_cryptospiserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -105,10 +105,6 @@
 
 #include "ruleselectcommonstep.h"
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-#include "dummyecccipherloadstep.h"
-#include "dummyeccsignerloadstep.h"
-#endif
 //#include "pluginruleselectstep.h"
 
 _LIT(KServerName,"Te_CryptoSpi");
@@ -335,12 +331,5 @@
 	else if(aStepName == KRuleSelectCommonStep)
 		testStep = new CRuleSelectCommonStep();		
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    else if(aStepName == KDummyEccCipherLoadStep)
-        testStep = new CDummyEccCipherLoadStep();
-	else if(aStepName == KDummyEccSignerLoadStep)
-	        testStep = new CDummyEccSignerLoadStep();
-#endif
-	
 	return testStep;
 	}
--- a/crypto/weakcryptospi/test/tcryptospi/testdata/dummyeccciphertestcases.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-[Cipher0001]
-AlgorithmUid			=KAlgorithmCipherEcc
-PaddingMode			=KPaddingModeNone
-
-[Signer0001]
-Key					="dummy"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/README	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,23 @@
+Rijndael
+Joan Daemen
+
+Test values: Known Answer Tests and Monte Carlo Tests
+-----------------------------------------------------------
+
+This disk contains the following files:
+
+README: 	This file.
+
+cbc_d_m.txt:	Test values for the CBC decryption MCT.
+cbc_e_m.txt:	Test values for the CBC encryption MCT.
+ecb_d_m.txt:	Test values for the ECB decryption MCT.
+ecb_e_m.txt:	Test values for the ECB encryption MCT.
+ecb_vk.txt:	Test values for the Variable Key KAT.
+ecb_vt.txt:	Test values for the Variable Text KAT.
+ecb_iv.txt:	Test values for the Intermediate Values KAT.
+ecb_iv.readme:	Detailed information about the Intermediate Values KAT.
+ecb_tbl.txt:	Test values for the Table KAT.
+
+duplicata/*:	To improve error-robustness, all the files of the root
+		directory are mirrored in this directory.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/cbc_d_m.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,7224 @@
+
+=========================
+
+FILENAME:  "cbc_d_m.txt"
+
+Cipher Block Chaining (CBC) Mode - DECRYPTION
+Monte Carlo Test
+
+Algorithm Name: Rijndael
+Principal Submitter: <as stated on the submission cover sheet>
+
+==========
+
+KEYSIZE=128
+
+I=0
+KEY=00000000000000000000000000000000
+IV=00000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=FACA37E0B0C85373DF706E73F7C9AF86
+
+I=1
+KEY=FACA37E0B0C85373DF706E73F7C9AF86
+IV=52D0C29FF8793A519BD6A8289FC80E6A
+CT=FACA37E0B0C85373DF706E73F7C9AF86
+PT=F5372F9735C5685F1DA362AF6ECB2940
+
+I=2
+KEY=0FFD1877850D3B2CC2D30CDC990286C6
+IV=DD74BB1AC6F0F866C7992C61F59D5594
+CT=F5372F9735C5685F1DA362AF6ECB2940
+PT=5496A4C29C7670F61B5D5DF6181F5947
+
+I=3
+KEY=5B6BBCB5197B4BDAD98E512A811DDF81
+IV=3795C88134F7C011433397D1443FEB3A
+CT=5496A4C29C7670F61B5D5DF6181F5947
+PT=940CC5A2AF4F1F8D1862B47BCF63E4CA
+
+I=4
+KEY=CF677917B6345457C1ECE5514E7E3B4B
+IV=0FC1413900225B47AF9E139E1650EA23
+CT=940CC5A2AF4F1F8D1862B47BCF63E4CA
+PT=08832415D97820DE305A58A9AD111A9E
+
+I=5
+KEY=C7E45D026F4C7489F1B6BDF8E36F21D5
+IV=3032F64674FA243D61DF8C16313D81F3
+CT=08832415D97820DE305A58A9AD111A9E
+PT=BD4089775FD1BDB0A6C4F36D1DDAA93E
+
+I=6
+KEY=7AA4D475309DC93957724E95FEB588EB
+IV=47D7F440B43888F173AE5A492F1A99F8
+CT=BD4089775FD1BDB0A6C4F36D1DDAA93E
+PT=AB9955F74612859267D61FEA85A75ADC
+
+I=7
+KEY=D13D8182768F4CAB30A4517F7B12D237
+IV=6D9E57242195D27771D1C7A748378AB0
+CT=AB9955F74612859267D61FEA85A75ADC
+PT=168F213FB678D8A46D0E55EFD1C49BB3
+
+I=8
+KEY=C7B2A0BDC0F7940F5DAA0490AAD64984
+IV=1B98968FB5ABD95930525C1257DEB364
+CT=168F213FB678D8A46D0E55EFD1C49BB3
+PT=3C4CEECFF9560501C5D8C901D87C8E7B
+
+I=9
+KEY=FBFE4E7239A1910E9872CD9172AAC7FF
+IV=35EB7B6D3F63AAE927C5346C9C2CB91D
+CT=3C4CEECFF9560501C5D8C901D87C8E7B
+PT=9D206BE0CC60296BF3A486A8C69778EF
+
+I=10
+KEY=66DE2592F5C1B8656BD64B39B43DBF10
+IV=226646B36D8E9B9279F94378CCBF8FBA
+CT=9D206BE0CC60296BF3A486A8C69778EF
+PT=9DA7B8094BD0F0BEA26848C84B8E083C
+
+I=11
+KEY=FB799D9BBE1148DBC9BE03F1FFB3B72C
+IV=3E3A2B0E1C70A19BCD7222708AA94F26
+CT=9DA7B8094BD0F0BEA26848C84B8E083C
+PT=6A93B2F318C14C2D3E58455B86A4F5D7
+
+I=12
+KEY=91EA2F68A6D004F6F7E646AA791742FB
+IV=1F256942B3CD691858A20664BB24545E
+CT=6A93B2F318C14C2D3E58455B86A4F5D7
+PT=4A19AC6C6FEB654D3675A2BE32E5A820
+
+I=13
+KEY=DBF38304C93B61BBC193E4144BF2EADB
+IV=631F2EDE05C1C950BCE67DF53BA53ED6
+CT=4A19AC6C6FEB654D3675A2BE32E5A820
+PT=799EAB8E9C864A13490FD6B089F764C5
+
+I=14
+KEY=A26D288A55BD2BA8889C32A4C2058E1E
+IV=F6AD064E0DBF4AF4AA5165E1FE0E86FA
+CT=799EAB8E9C864A13490FD6B089F764C5
+PT=2FA3F38CA1216C6D911C1779F333413E
+
+I=15
+KEY=8DCEDB06F49C47C5198025DD3136CF20
+IV=DA039AC5F4EDCD84472B23CFA1252EC3
+CT=2FA3F38CA1216C6D911C1779F333413E
+PT=2FC703AD6A7DAF8B0BDDD8586C1D67D0
+
+I=16
+KEY=A209D8AB9EE1E84E125DFD855D2BA8F0
+IV=341B5FDA8AB434461A7B7A87EF0C530C
+CT=2FC703AD6A7DAF8B0BDDD8586C1D67D0
+PT=54723CABFBE32DEEDFEBF4292A5710FA
+
+I=17
+KEY=F67BE4006502C5A0CDB609AC777CB80A
+IV=2C42AD577B0BE057555C3FCB6FC0089E
+CT=54723CABFBE32DEEDFEBF4292A5710FA
+PT=6B1E2A8C1A9CBB95D1B34AAFE15A78D3
+
+I=18
+KEY=9D65CE8C7F9E7E351C0543039626C0D9
+IV=E5E06583A834BF16118ED5FA401A2D6F
+CT=6B1E2A8C1A9CBB95D1B34AAFE15A78D3
+PT=F4E57BFAB65375B3AD49CD78814F0C16
+
+I=19
+KEY=6980B576C9CD0B86B14C8E7B1769CCCF
+IV=71E59389FF6F992225B32960593F9362
+CT=F4E57BFAB65375B3AD49CD78814F0C16
+PT=90A31B5934FCF6822526C973114BD953
+
+I=20
+KEY=F923AE2FFD31FD04946A47080622159C
+IV=2A4B31492B9BAEC402C255978BB96D40
+CT=90A31B5934FCF6822526C973114BD953
+PT=61F88BA8D438A0FD23F0101465C7FD4E
+
+I=21
+KEY=98DB258729095DF9B79A571C63E5E8D2
+IV=607640CEA12DCF7F188B2B65C7F4153D
+CT=61F88BA8D438A0FD23F0101465C7FD4E
+PT=F62D206DF53F41CA898F3A8EB6A843FF
+
+I=22
+KEY=6EF605EADC361C333E156D92D54DAB2D
+IV=D69C32E12303361B465BE9A484BCA723
+CT=F62D206DF53F41CA898F3A8EB6A843FF
+PT=364BC3F9FDA5FB1AEEA7691550A58320
+
+I=23
+KEY=58BDC6132193E729D0B2048785E8280D
+IV=C207B8347B8DB8BC6845827BB6986B0E
+CT=364BC3F9FDA5FB1AEEA7691550A58320
+PT=DAA6386A073CD1653E9A9DB0A97970BA
+
+I=24
+KEY=821BFE7926AF364CEE2899372C9158B7
+IV=6C5D2B186393280253D6922A8421C3A9
+CT=DAA6386A073CD1653E9A9DB0A97970BA
+PT=AAF74F0E0A0141A811853AE8B120BC00
+
+I=25
+KEY=28ECB1772CAE77E4FFADA3DF9DB1E4B7
+IV=3CB62EF0E649027DDDB76206D0F4D355
+CT=AAF74F0E0A0141A811853AE8B120BC00
+PT=22A0F9611447C1A85F397DD79E3206F9
+
+I=26
+KEY=0A4C481638E9B64CA094DE080383E24E
+IV=C4320FA90686AE0F9E979CBF1391F6D6
+CT=22A0F9611447C1A85F397DD79E3206F9
+PT=1871ABDEAA7E057E76D41ED9191FAC39
+
+I=27
+KEY=123DE3C89297B332D640C0D11A9C4E77
+IV=FBFD18AADF7C5E8E96EB976A535BF312
+CT=1871ABDEAA7E057E76D41ED9191FAC39
+PT=BF52994F41B1DEF78C6A057642C52D89
+
+I=28
+KEY=AD6F7A87D3266DC55A2AC5A7585963FE
+IV=C195141578ADF4C92113C8A9A63FF072
+CT=BF52994F41B1DEF78C6A057642C52D89
+PT=3EAFB00E3B4A0E6DF74743A7EDAD0FE4
+
+I=29
+KEY=93C0CA89E86C63A8AD6D8600B5F46C1A
+IV=D1C4E98C4A9AC79B7CCBC052ACF78913
+CT=3EAFB00E3B4A0E6DF74743A7EDAD0FE4
+PT=4393544AB2387A93496D683C2B8970C7
+
+I=30
+KEY=D0539EC35A54193BE400EE3C9E7D1CDD
+IV=80517C6341DAF4DCBCCAE452F3040147
+CT=4393544AB2387A93496D683C2B8970C7
+PT=51DAC594293708A918E9EFC04F7F2F1C
+
+I=31
+KEY=81895B5773631192FCE901FCD10233C1
+IV=69DE50406B4E3E8A94C1367E1E3D5464
+CT=51DAC594293708A918E9EFC04F7F2F1C
+PT=035B64F06C8166000C82BF15CC88446D
+
+I=32
+KEY=82D23FA71FE27792F06BBEE91D8A77AC
+IV=8EA2E38145BBD79881B7EB31B8818A21
+CT=035B64F06C8166000C82BF15CC88446D
+PT=F3EFFA770A21741551F309E1967CC2E4
+
+I=33
+KEY=713DC5D015C30387A198B7088BF6B548
+IV=0DCAA309668E11509828152553FF2306
+CT=F3EFFA770A21741551F309E1967CC2E4
+PT=62BA0548E7AD136BEB4E38AECD7942D9
+
+I=34
+KEY=1387C098F26E10EC4AD68FA6468FF791
+IV=D031FCA5F3C88926CC3BDDC448537B69
+CT=62BA0548E7AD136BEB4E38AECD7942D9
+PT=38E3D4C7AF0C3E494F1D580AC5430634
+
+I=35
+KEY=2B64145F5D622EA505CBD7AC83CCF1A5
+IV=6FFA5A45EDA60294B0224EEB8C36C455
+CT=38E3D4C7AF0C3E494F1D580AC5430634
+PT=2231EB6A6588CBCB56B930B7F1CF9E04
+
+I=36
+KEY=0955FF3538EAE56E5372E71B72036FA1
+IV=B5375674631ECC3334A318993CB81F9A
+CT=2231EB6A6588CBCB56B930B7F1CF9E04
+PT=59692274C130D6820287EA10F7E64602
+
+I=37
+KEY=503CDD41F9DA33EC51F50D0B85E529A3
+IV=A93D6E028B5C2BD17A29C6CA1617A0A2
+CT=59692274C130D6820287EA10F7E64602
+PT=5975A95327DE7749EA8DEDC580E5E8C7
+
+I=38
+KEY=09497412DE0444A5BB78E0CE0500C164
+IV=26E00CB161145FCD00C39BC4FB1E5CBB
+CT=5975A95327DE7749EA8DEDC580E5E8C7
+PT=D1F7E36BC8FF4439820CB617E745A9CC
+
+I=39
+KEY=D8BE977916FB009C397456D9E24568A8
+IV=72E78D9E15C8FBA864C6C40CEBB190B8
+CT=D1F7E36BC8FF4439820CB617E745A9CC
+PT=76FB4F20C902E9AA89854440631092B5
+
+I=40
+KEY=AE45D859DFF9E936B0F112998155FA1D
+IV=4B6C585FEF52490EA62BAAD08FAA3DCF
+CT=76FB4F20C902E9AA89854440631092B5
+PT=6D7D4487DCD624B2FC5002DFE7D2D347
+
+I=41
+KEY=C3389CDE032FCD844CA110466687295A
+IV=E94FD23A598DDE077CD1DAEE97FDADD9
+CT=6D7D4487DCD624B2FC5002DFE7D2D347
+PT=7297F8F85B21E1A5CB902DCC5F6738F9
+
+I=42
+KEY=B1AF6426580E2C2187313D8A39E011A3
+IV=86E495D31EEFCBC30064414FBD78FAE5
+CT=7297F8F85B21E1A5CB902DCC5F6738F9
+PT=4A6978AACC6968931FB1B83D53D31FEF
+
+I=43
+KEY=FBC61C8C946744B2988085B76A330E4C
+IV=6BA7664AB5ED4F7956D6C3FAA7C42961
+CT=4A6978AACC6968931FB1B83D53D31FEF
+PT=6B63FAAF9DB43A2B6025F29B1D6A331C
+
+I=44
+KEY=90A5E62309D37E99F8A5772C77593D50
+IV=37D17D1702EA34A3C75376AA0F9D24AD
+CT=6B63FAAF9DB43A2B6025F29B1D6A331C
+PT=8317A07BEE0BF16B88D7D197884AC6CF
+
+I=45
+KEY=13B24658E7D88FF27072A6BBFF13FB9F
+IV=29B89B238062495C260AF44C63AA809F
+CT=8317A07BEE0BF16B88D7D197884AC6CF
+PT=0443BFEBCA7C85CBD0CB66AB9D75425D
+
+I=46
+KEY=17F1F9B32DA40A39A0B9C0106266B9C2
+IV=08CF82854AE07429C4A866AA727CEA2E
+CT=0443BFEBCA7C85CBD0CB66AB9D75425D
+PT=6B1EB033CB844F9BDD96BA2C67D139C7
+
+I=47
+KEY=7CEF4980E62045A27D2F7A3C05B78005
+IV=05579F3E0017EBF6083756DC0A50A2E9
+CT=6B1EB033CB844F9BDD96BA2C67D139C7
+PT=E7904CBFB41EBE4178B4D633AFC9B311
+
+I=48
+KEY=9B7F053F523EFBE3059BAC0FAA7E3314
+IV=E6B2CB0CE57E02A230DCD16C08614823
+CT=E7904CBFB41EBE4178B4D633AFC9B311
+PT=96EAAA148F05FAD1F0FC06E135EC5DF8
+
+I=49
+KEY=0D95AF2BDD3B0132F567AAEE9F926EEC
+IV=4268294B10AD58BE9E570A9485963682
+CT=96EAAA148F05FAD1F0FC06E135EC5DF8
+PT=9F2F712F62DE747EE479A0A74384B196
+
+I=50
+KEY=92BADE04BFE5754C111E0A49DC16DF7A
+IV=A5C558F5D4658089CD9FB295EDAE64DB
+CT=9F2F712F62DE747EE479A0A74384B196
+PT=9CF7F00094C4E2D96D752C2312FC135E
+
+I=51
+KEY=0E4D2E042B2197957C6B266ACEEACC24
+IV=1CE301F294BDF4C906E5F0A6FA7C22BB
+CT=9CF7F00094C4E2D96D752C2312FC135E
+PT=ABA58D548DB6E9BE977FDDC85E16C2DE
+
+I=52
+KEY=A5E8A350A6977E2BEB14FBA290FC0EFA
+IV=66C1FF1E4B52A3542B48306EC33F171D
+CT=ABA58D548DB6E9BE977FDDC85E16C2DE
+PT=802948E1A5177FBE97ABA26B996FDF1B
+
+I=53
+KEY=25C1EBB1038001957CBF59C90993D1E1
+IV=197A546DEB2E19E17507276B9ED95135
+CT=802948E1A5177FBE97ABA26B996FDF1B
+PT=67D931C0946ECDF2F8E41000726D1A56
+
+I=54
+KEY=4218DA7197EECC67845B49C97BFECBB7
+IV=D11DA3CE92ADA0686F7BF12A4796D9F7
+CT=67D931C0946ECDF2F8E41000726D1A56
+PT=386C68821385E8CFCDD5678FE2AA89F8
+
+I=55
+KEY=7A74B2F3846B24A8498E2E469954424F
+IV=4DDE413EBC3F30E2F3A9F48DA1258DAF
+CT=386C68821385E8CFCDD5678FE2AA89F8
+PT=1638C741EFE3B1CC45C7754783350825
+
+I=56
+KEY=6C4C75B26B8895640C495B011A614A6A
+IV=5B4F013B085E3A04A16A409E8C3BB270
+CT=1638C741EFE3B1CC45C7754783350825
+PT=91AB00C3828D3DF72BEC487EF4652567
+
+I=57
+KEY=FDE77571E905A89327A5137FEE046F0D
+IV=98074F522144682FF1498C61581F8B0E
+CT=91AB00C3828D3DF72BEC487EF4652567
+PT=BC5BA874D2F3039837528993FB275EBA
+
+I=58
+KEY=41BCDD053BF6AB0B10F79AEC152331B7
+IV=B65C1A6F80CA024B92176D57061ECDFE
+CT=BC5BA874D2F3039837528993FB275EBA
+PT=B7DE1BEE1867F4DC3F974E0D8B416DB0
+
+I=59
+KEY=F662C6EB23915FD72F60D4E19E625C07
+IV=7268C08FA807D83C9830F54A59F32662
+CT=B7DE1BEE1867F4DC3F974E0D8B416DB0
+PT=19769B9EB30B8DE5FD640ACE78F01F0A
+
+I=60
+KEY=EF145D75909AD232D204DE2FE692430D
+IV=B260792BAB22BAAB6CCF3AE1DD3A0F85
+CT=19769B9EB30B8DE5FD640ACE78F01F0A
+PT=2079F2C0A0DE164CD41FCE29D8CE3178
+
+I=61
+KEY=CF6DAFB53044C47E061B10063E5C7275
+IV=6ABCE7B41E112B91B8E6BC0DBE37600C
+CT=2079F2C0A0DE164CD41FCE29D8CE3178
+PT=0D3A678FAB06E743A9134C103B39B61D
+
+I=62
+KEY=C257C83A9B42233DAF085C160565C468
+IV=CEB1E776DBEF46BF8B949C0AF0EBEAD2
+CT=0D3A678FAB06E743A9134C103B39B61D
+PT=80339ADB34BCDE3384D66170373AEEAC
+
+I=63
+KEY=426452E1AFFEFD0E2BDE3D66325F2AC4
+IV=EAAC373FCA05E610C1C5D4437AFD5631
+CT=80339ADB34BCDE3384D66170373AEEAC
+PT=38D52D75E5783A08FBFE622633D6CF47
+
+I=64
+KEY=7AB17F944A86C706D0205F400189E583
+IV=2A25ED6933CAAA95569ADA1AC7480942
+CT=38D52D75E5783A08FBFE622633D6CF47
+PT=3204F1EACBB520A69F0939F45BC82041
+
+I=65
+KEY=48B58E7E8133E7A04F2966B45A41C5C2
+IV=9C6819799DAF61111ACC3C0ECEB0F8BF
+CT=3204F1EACBB520A69F0939F45BC82041
+PT=16BD33EE541798BEE114E9D7F9141A9C
+
+I=66
+KEY=5E08BD90D5247F1EAE3D8F63A355DF5E
+IV=C181F4DF1EE0E13BF76044A3DA5E3BC4
+CT=16BD33EE541798BEE114E9D7F9141A9C
+PT=A0A68CF016C6AD8DAC4D5634EAADEBE5
+
+I=67
+KEY=FEAE3160C3E2D2930270D95749F834BB
+IV=2A4EE2CD011AF421616789DB790354FD
+CT=A0A68CF016C6AD8DAC4D5634EAADEBE5
+PT=FCE7D92FD0B3A1C7920558F653E1019B
+
+I=68
+KEY=0249E84F13517354907581A11A193520
+IV=A7F7E2B701F34F308C0F28514DFAA15F
+CT=FCE7D92FD0B3A1C7920558F653E1019B
+PT=F16A084B2DE16D5E3E5405665DE3C623
+
+I=69
+KEY=F323E0043EB01E0AAE2184C747FAF303
+IV=6D319828AAA75DFE99BEEDD21B983C7D
+CT=F16A084B2DE16D5E3E5405665DE3C623
+PT=CE20AE629887DF02064F2D9DB092E1DB
+
+I=70
+KEY=3D034E66A637C108A86EA95AF76812D8
+IV=9484E76149F41901AF8AFD3152C56506
+CT=CE20AE629887DF02064F2D9DB092E1DB
+PT=B457A655282213C1B7C5C2A206C7FCB9
+
+I=71
+KEY=8954E8338E15D2C91FAB6BF8F1AFEE61
+IV=329E089DC915BD71B1F8D0713BFC4F97
+CT=B457A655282213C1B7C5C2A206C7FCB9
+PT=A89B8F7541FFF719A3C7DE1577CE1C3F
+
+I=72
+KEY=21CF6746CFEA25D0BC6CB5ED8661F25E
+IV=FA381CAC5777234E6DF8A28A4E6671D8
+CT=A89B8F7541FFF719A3C7DE1577CE1C3F
+PT=C4E73D25647350527C1F93F6C1D90296
+
+I=73
+KEY=E5285A63AB997582C073261B47B8F0C8
+IV=082ACF3D2661514F0E00BDABC9015946
+CT=C4E73D25647350527C1F93F6C1D90296
+PT=34BF6DECECFE1C9AE3AA34B6DB3741EF
+
+I=74
+KEY=D197378F4767691823D912AD9C8FB127
+IV=3E56B658F899B6DBBA4EAF6E629F3555
+CT=34BF6DECECFE1C9AE3AA34B6DB3741EF
+PT=FD86C78538176DC5D48BE2EC6B89D581
+
+I=75
+KEY=2C11F00A7F7004DDF752F041F70664A6
+IV=765B823193F2738E6CACBB0154C941B1
+CT=FD86C78538176DC5D48BE2EC6B89D581
+PT=524E035AB9DEB29E467B9586A90F3A42
+
+I=76
+KEY=7E5FF350C6AEB643B12965C75E095EE4
+IV=DE2B3EC0A3FF29EC67BBE1B124E9451A
+CT=524E035AB9DEB29E467B9586A90F3A42
+PT=83DE1E768EED94BA09E623845A057834
+
+I=77
+KEY=FD81ED26484322F9B8CF4643040C26D0
+IV=A5CF4D996D8460E71DDA938461BB884B
+CT=83DE1E768EED94BA09E623845A057834
+PT=D8381D17B9BCF942F408DBB2B7B2D6B7
+
+I=78
+KEY=25B9F031F1FFDBBB4CC79DF1B3BEF067
+IV=899696B8EDC4E8B60489742A2559C909
+CT=D8381D17B9BCF942F408DBB2B7B2D6B7
+PT=BF1D8175015D0A0341427DE1F7DDE379
+
+I=79
+KEY=9AA47144F0A2D1B80D85E0104463131E
+IV=AD76D13B2F2A3F938F5C810A38A83D09
+CT=BF1D8175015D0A0341427DE1F7DDE379
+PT=58114DEFF8CFF10F06B390EB01B13394
+
+I=80
+KEY=C2B53CAB086D20B70B3670FB45D2208A
+IV=9EC540C144AB57D4E5A9185F55E71E50
+CT=58114DEFF8CFF10F06B390EB01B13394
+PT=53E72B9603CE221F0160791DF51F6B3E
+
+I=81
+KEY=9152173D0BA302A80A5609E6B0CD4BB4
+IV=B780257238CA60FD998819B2D04CEB92
+CT=53E72B9603CE221F0160791DF51F6B3E
+PT=AF0238554AAFFB0FB5DFAC35E3CE8F4C
+
+I=82
+KEY=3E502F68410CF9A7BF89A5D35303C4F8
+IV=3509BC884089ADEB90137A39AEA75CFC
+CT=AF0238554AAFFB0FB5DFAC35E3CE8F4C
+PT=20844D3F4F637B974D38B7E5F1C84205
+
+I=83
+KEY=1ED462570E6F8230F2B11236A2CB86FD
+IV=52BAB07EB72804630E4BD769F0172FDA
+CT=20844D3F4F637B974D38B7E5F1C84205
+PT=68404E006D2F16572EDFAE636A62C537
+
+I=84
+KEY=76942C5763409467DC6EBC55C8A943CA
+IV=E4B417D85F36F3A25CF04AB05157F247
+CT=68404E006D2F16572EDFAE636A62C537
+PT=13C8DF4117D4EA3645F1825700F8FFA5
+
+I=85
+KEY=655CF31674947E51999F3E02C851BC6F
+IV=3FE0683442B6B5DF515209DE16F8FD4B
+CT=13C8DF4117D4EA3645F1825700F8FFA5
+PT=42307D929439F2723202A5206D640431
+
+I=86
+KEY=276C8E84E0AD8C23AB9D9B22A535B85E
+IV=33FAD11D9D4057E7ED989F1520450C32
+CT=42307D929439F2723202A5206D640431
+PT=5ED8AF875ACF37BE8FAAC16D4AB8072B
+
+I=87
+KEY=79B42103BA62BB9D24375A4FEF8DBF75
+IV=807852E5AD0EB5E0C3A2AAF18DFB14F9
+CT=5ED8AF875ACF37BE8FAAC16D4AB8072B
+PT=79C950A45ECDC8B676A5CFF324A81DA8
+
+I=88
+KEY=007D71A7E4AF732B529295BCCB25A2DD
+IV=516BC35B52C26C99E21C0147CB7DD99E
+CT=79C950A45ECDC8B676A5CFF324A81DA8
+PT=595C3DDCFBD90661A3A70B94C470A26B
+
+I=89
+KEY=59214C7B1F76754AF1359E280F5500B6
+IV=FDABDD4BD60725F5E640629416F417D3
+CT=595C3DDCFBD90661A3A70B94C470A26B
+PT=7957CF3989083D25B54C6890EC58DB0C
+
+I=90
+KEY=20768342967E486F4479F6B8E30DDBBA
+IV=CADFADF417898DE3786D5DF869396611
+CT=7957CF3989083D25B54C6890EC58DB0C
+PT=6C1E8DF34FC80DD2ECA00A1EDC5FC239
+
+I=91
+KEY=4C680EB1D9B645BDA8D9FCA63F521983
+IV=A7DF9FA44AA2B49B9E26C6148CCAF36F
+CT=6C1E8DF34FC80DD2ECA00A1EDC5FC239
+PT=72B5A426C9DC3B336756FB10B00626CE
+
+I=92
+KEY=3EDDAA97106A7E8ECF8F07B68F543F4D
+IV=50FF574915D407A97A74CC399DE2D901
+CT=72B5A426C9DC3B336756FB10B00626CE
+PT=194826159D7FAB9166D64F1DD6F627B0
+
+I=93
+KEY=27958C828D15D51FA95948AB59A218FD
+IV=A1E3BC848C019B6FC3F7072F9A866C52
+CT=194826159D7FAB9166D64F1DD6F627B0
+PT=0186B2316FC29104D3549C49F92AE414
+
+I=94
+KEY=26133EB3E2D7441B7A0DD4E2A088FCE9
+IV=4DBA42F1031AE32016524C7F86781528
+CT=0186B2316FC29104D3549C49F92AE414
+PT=373384DB7383D3A4914C0141BB104B81
+
+I=95
+KEY=1120BA68915497BFEB41D5A31B98B768
+IV=FFCB87107AC596D71BA807902D524247
+CT=373384DB7383D3A4914C0141BB104B81
+PT=25465CE5FA2AD65D75586064A18516A8
+
+I=96
+KEY=3466E68D6B7E41E29E19B5C7BA1DA1C0
+IV=55879596C3F0A295FA00CFEF1B056248
+CT=25465CE5FA2AD65D75586064A18516A8
+PT=2311A52CEC4A16B5F4FCA613BC0BDB83
+
+I=97
+KEY=177743A1873457576AE513D406167A43
+IV=B1A7DABF3D2384BF8754B829659B3989
+CT=2311A52CEC4A16B5F4FCA613BC0BDB83
+PT=357F4BF62308CD5C48F34E9E644DD515
+
+I=98
+KEY=22080857A43C9A0B22165D4A625BAF56
+IV=72BF477FE8CF428CFA856323E18B3135
+CT=357F4BF62308CD5C48F34E9E644DD515
+PT=17758539D1896B92BFB811D30C9BA134
+
+I=99
+KEY=357D8D6E75B5F1999DAE4C996EC00E62
+IV=4CBA048DFA50910EC94FE5D6AA5DD502
+CT=17758539D1896B92BFB811D30C9BA134
+PT=372B6DCEE44D18D3791C4E8FB0A91971
+
+I=100
+KEY=0256E0A091F8E94AE4B20216DE691713
+IV=86F4F670CA3B191B860D6C8A9A35A872
+CT=372B6DCEE44D18D3791C4E8FB0A91971
+PT=66D3FABC4885C1F4897D9160C152D570
+
+I=101
+KEY=64851A1CD97D28BE6DCF93761F3BC263
+IV=08490B2E8588FE564F0112D76D6108E9
+CT=66D3FABC4885C1F4897D9160C152D570
+PT=926278E71894F32B5E2A5A1F5FA695E7
+
+I=102
+KEY=F6E762FBC1E9DB9533E5C969409D5784
+IV=D3A2E4AFFDD8A7CC1498EF0E812087B7
+CT=926278E71894F32B5E2A5A1F5FA695E7
+PT=A455F5D65D91563D9C15E6B745F29531
+
+I=103
+KEY=52B2972D9C788DA8AFF02FDE056FC2B5
+IV=6CB8822EA67C247A6A0CBAD830B3562C
+CT=A455F5D65D91563D9C15E6B745F29531
+PT=4544371A5E3A8E7AD9885AECD3868AF3
+
+I=104
+KEY=17F6A037C24203D276787532D6E94846
+IV=93E3CAD8BE023F6451ADAA525988A974
+CT=4544371A5E3A8E7AD9885AECD3868AF3
+PT=8473F4F1D77AC1F46706EBD108CB48A5
+
+I=105
+KEY=938554C61538C226117E9EE3DE2200E3
+IV=A7E7B354606EF4C1D00BF4F128CCE966
+CT=8473F4F1D77AC1F46706EBD108CB48A5
+PT=787ADE453DCE2FA7F6F24CD33C9A5CDC
+
+I=106
+KEY=EBFF8A8328F6ED81E78CD230E2B85C3F
+IV=97A2CF706C1871B502D15B028C5F0D80
+CT=787ADE453DCE2FA7F6F24CD33C9A5CDC
+PT=E6A7E5B65DC124FBE1C1FFFE18A34D8A
+
+I=107
+KEY=0D586F357537C97A064D2DCEFA1B11B5
+IV=9BBDCAF2A3CC7FC5BF6285631A4636FD
+CT=E6A7E5B65DC124FBE1C1FFFE18A34D8A
+PT=6A391E9F475546720836312BBEB0B3A9
+
+I=108
+KEY=676171AA32628F080E7B1CE544ABA21C
+IV=603EEDE91F925A2228537E8BDD26C96B
+CT=6A391E9F475546720836312BBEB0B3A9
+PT=D75086BA446563AAB1873FDEBE611D67
+
+I=109
+KEY=B031F7107607ECA2BFFC233BFACABF7B
+IV=546B8CA37AACE2BC2C85014F2ACD6315
+CT=D75086BA446563AAB1873FDEBE611D67
+PT=63A4D826625CBD9F10083E62330BCFBC
+
+I=110
+KEY=D3952F36145B513DAFF41D59C9C170C7
+IV=BC2E6E9DD10152C8281B798F711A9334
+CT=63A4D826625CBD9F10083E62330BCFBC
+PT=41275EFDFC86B5BDCCCDCA2BBFA5B90D
+
+I=111
+KEY=92B271CBE8DDE4806339D7727664C9CA
+IV=D940A8D1B3448AA9148C7F6DFC266B00
+CT=41275EFDFC86B5BDCCCDCA2BBFA5B90D
+PT=56AC1BCB285044710D26EFC42A0ABA56
+
+I=112
+KEY=C41E6A00C08DA0F16E1F38B65C6E739C
+IV=214238FF5F4D01F3A6694EC80E15BCF7
+CT=56AC1BCB285044710D26EFC42A0ABA56
+PT=5AF2877973AB9787E42202AC0C6E7538
+
+I=113
+KEY=9EECED79B32637768A3D3A1A500006A4
+IV=561B4934904E327F3B3639CED6C7A995
+CT=5AF2877973AB9787E42202AC0C6E7538
+PT=787F52F6D9CD9085D782B95FD68F70F8
+
+I=114
+KEY=E693BF8F6AEBA7F35DBF8345868F765C
+IV=06B93FB1A99BD387A091509B8C6D3482
+CT=787F52F6D9CD9085D782B95FD68F70F8
+PT=E7B1DB917C92E488C6B02AC4C42AFD79
+
+I=115
+KEY=0122641E1679437B9B0FA98142A58B25
+IV=1D57A61FED51218BD8C1357CE58F21EB
+CT=E7B1DB917C92E488C6B02AC4C42AFD79
+PT=2FBAB770D511EACA849F654DE429DE84
+
+I=116
+KEY=2E98D36EC368A9B11F90CCCCA68C55A1
+IV=CB311C43EC32D59941CEF81BB9CF4E57
+CT=2FBAB770D511EACA849F654DE429DE84
+PT=A8FE17AEA961C2A450DD5EAABAA19613
+
+I=117
+KEY=8666C4C06A096B154F4D92661C2DC3B2
+IV=B9D7B74D62DD89A01EE3093A5C2A0470
+CT=A8FE17AEA961C2A450DD5EAABAA19613
+PT=D9E598A4DBAF82BDF9474BE13B997FF5
+
+I=118
+KEY=5F835C64B1A6E9A8B60AD98727B4BC47
+IV=6398D8A38C38A9B54DCF18C0D76758BA
+CT=D9E598A4DBAF82BDF9474BE13B997FF5
+PT=291DB2BC325CD7A94032E7C1208921A5
+
+I=119
+KEY=769EEED883FA3E01F6383E46073D9DE2
+IV=4774C7E1BB97117BCA26A897B9302EFA
+CT=291DB2BC325CD7A94032E7C1208921A5
+PT=DFC55866F85055F06E752E04AAC4C36A
+
+I=120
+KEY=A95BB6BE7BAA6BF1984D1042ADF95E88
+IV=BDA0616700CD2817FE4425F6F541E8C1
+CT=DFC55866F85055F06E752E04AAC4C36A
+PT=7CACB3A88E7114F7737B05D0FB3AF7F3
+
+I=121
+KEY=D5F70516F5DB7F06EB36159256C3A97B
+IV=1EF4836BD363B89EE73911B14EBE9262
+CT=7CACB3A88E7114F7737B05D0FB3AF7F3
+PT=3282F1F6B3C04E325FB13E85D18CDBBC
+
+I=122
+KEY=E775F4E0461B3134B4872B17874F72C7
+IV=E35D47CEDBD30701A64FE504C6BC4199
+CT=3282F1F6B3C04E325FB13E85D18CDBBC
+PT=BFB9748A3C825CDA3EA5D001F6AD305F
+
+I=123
+KEY=58CC806A7A996DEE8A22FB1671E24298
+IV=7A3676377E0B4F815B4B8C9A98DCAB4D
+CT=BFB9748A3C825CDA3EA5D001F6AD305F
+PT=B33787380A4C3BD5B32EC335916F9229
+
+I=124
+KEY=EBFB075270D5563B390C3823E08DD0B1
+IV=B3E40B27DBF6D985D4F57BD4D2899DC8
+CT=B33787380A4C3BD5B32EC335916F9229
+PT=BCD5E40A3B4885ACA82BEC952BA8A973
+
+I=125
+KEY=572EE3584B9DD3979127D4B6CB2579C2
+IV=897608FE3238F80CD24192CC64F4F695
+CT=BCD5E40A3B4885ACA82BEC952BA8A973
+PT=793E22E0B01FFE63E89C84A0D0FE1216
+
+I=126
+KEY=2E10C1B8FB822DF479BB50161BDB6BD4
+IV=D84401CF83566FEA8FB859C446C22632
+CT=793E22E0B01FFE63E89C84A0D0FE1216
+PT=96858A96FEB19712B10A44FBF8E633D9
+
+I=127
+KEY=B8954B2E0533BAE6C8B114EDE33D580D
+IV=7210E127BFB706EF9CD24139C0927E01
+CT=96858A96FEB19712B10A44FBF8E633D9
+PT=28A34CC75A215117331D6B88387E16F8
+
+I=128
+KEY=903607E95F12EBF1FBAC7F65DB434EF5
+IV=744B8DD281919F79FC529DA15AA0F18F
+CT=28A34CC75A215117331D6B88387E16F8
+PT=43FE41DC9FFB88F93ADC43D41BA3E4B2
+
+I=129
+KEY=D3C84635C0E96308C1703CB1C0E0AA47
+IV=5C7379A90F1E47F88C7424E8CD31E55D
+CT=43FE41DC9FFB88F93ADC43D41BA3E4B2
+PT=66D6D0E84CEB8672D38DDE557CCCFFF6
+
+I=130
+KEY=B51E96DD8C02E57A12FDE2E4BC2C55B1
+IV=529B92CD068415627C4BE49874347F98
+CT=66D6D0E84CEB8672D38DDE557CCCFFF6
+PT=F817D013CB041CA41B6D611ED261FAE9
+
+I=131
+KEY=4D0946CE4706F9DE099083FA6E4DAF58
+IV=9B4452DD48C3EECEFDB6A6CFAE670117
+CT=F817D013CB041CA41B6D611ED261FAE9
+PT=56420C70CC459A131CD531EDC39ED6E9
+
+I=132
+KEY=1B4B4ABE8B4363CD1545B217ADD379B1
+IV=264ABBC30CC98DA3C06B935B1364A317
+CT=56420C70CC459A131CD531EDC39ED6E9
+PT=650DA8C4CB11E4ABFE8841D20443BB04
+
+I=133
+KEY=7E46E27A40528766EBCDF3C5A990C2B5
+IV=DBABF7B18568FED50C69DA0C9AA5395D
+CT=650DA8C4CB11E4ABFE8841D20443BB04
+PT=94E6CE02AE253F3BE4A59775CAB7B11B
+
+I=134
+KEY=EAA02C78EE77B85D0F6864B0632773AE
+IV=F0D2E456CE063CB68988C1C397038480
+CT=94E6CE02AE253F3BE4A59775CAB7B11B
+PT=124F09DAC6A45E6077DCECE971B24ED1
+
+I=135
+KEY=F8EF25A228D3E63D78B4885912953D7F
+IV=C19A6D2D35E606E552580B002023C966
+CT=124F09DAC6A45E6077DCECE971B24ED1
+PT=AAD649FD1168DFCB431A7216571ED4C1
+
+I=136
+KEY=52396C5F39BB39F63BAEFA4F458BE9BE
+IV=DF1A307B1D25BC2751ECDC791EC51B16
+CT=AAD649FD1168DFCB431A7216571ED4C1
+PT=992749C940CBBB0944F5248E8D65268C
+
+I=137
+KEY=CB1E2596797082FF7F5BDEC1C8EECF32
+IV=D8B0466FC4344C6BF4E57584E5F48A36
+CT=992749C940CBBB0944F5248E8D65268C
+PT=FF16B9246C325A3B96250875A9D5C4BE
+
+I=138
+KEY=34089CB21542D8C4E97ED6B4613B0B8C
+IV=B8C3E4ECF57631CE1EEA74AD99545BA2
+CT=FF16B9246C325A3B96250875A9D5C4BE
+PT=72EDB906165FE6A19E02435AC6457C9A
+
+I=139
+KEY=46E525B4031D3E65777C95EEA77E7716
+IV=9C4F78D05257C64D752C576B5BB16245
+CT=72EDB906165FE6A19E02435AC6457C9A
+PT=0C2F00362B8733D343DCAF884A6BFD46
+
+I=140
+KEY=4ACA2582289A0DB634A03A66ED158A50
+IV=C51122198D2FD566ACA1BD07C28BCC7A
+CT=0C2F00362B8733D343DCAF884A6BFD46
+PT=C7F5C00F42695CF7870240DA73D487F7
+
+I=141
+KEY=8D3FE58D6AF35141B3A27ABC9EC10DA7
+IV=14769B7962371925822C42F0411BDC65
+CT=C7F5C00F42695CF7870240DA73D487F7
+PT=F4BC8A4310A4CD2F396F43B81BD060EB
+
+I=142
+KEY=79836FCE7A579C6E8ACD390485116D4C
+IV=CDA4414DF23427B937D586C1A8164479
+CT=F4BC8A4310A4CD2F396F43B81BD060EB
+PT=1B996A525174C35466103BCBD53ECB9C
+
+I=143
+KEY=621A059C2B235F3AECDD02CF502FA6D0
+IV=1DA9E7C02BE868E118E4B9BF5928BFCF
+CT=1B996A525174C35466103BCBD53ECB9C
+PT=2B4EC5CB9DE50257B5901C6D49B5EB54
+
+I=144
+KEY=4954C057B6C65D6D594D1EA2199A4D84
+IV=55433149AA93215BF53CB8FE66CD683A
+CT=2B4EC5CB9DE50257B5901C6D49B5EB54
+PT=5A5B9ACA3BDA951DC4C4DFB7DD15AD18
+
+I=145
+KEY=130F5A9D8D1CC8709D89C115C48FE09C
+IV=695C69EA8C4257D2758364AFF6387DA0
+CT=5A5B9ACA3BDA951DC4C4DFB7DD15AD18
+PT=5BB08593BA52E94F07CB14FF564AF299
+
+I=146
+KEY=48BFDF0E374E213F9A42D5EA92C51205
+IV=665463164601CD0045C684729CDD5E7D
+CT=5BB08593BA52E94F07CB14FF564AF299
+PT=DB1840467889551150026A90E3FC272F
+
+I=147
+KEY=93A79F484FC7742ECA40BF7A7139352A
+IV=355C4B87A682712460C80ABA630F7BE8
+CT=DB1840467889551150026A90E3FC272F
+PT=9F7BD8EF96A1ECC75B4E3031E65FE8FC
+
+I=148
+KEY=0CDC47A7D96698E9910E8F4B9766DDD6
+IV=FBF20FEC0A9E9B530DD3745955A1960C
+CT=9F7BD8EF96A1ECC75B4E3031E65FE8FC
+PT=DCF003E1DDD4B52F5B680568B42EEECF
+
+I=149
+KEY=D02C444604B22DC6CA668A2323483319
+IV=04EADC638E309466B9500B1C3A308856
+CT=DCF003E1DDD4B52F5B680568B42EEECF
+PT=DDD2F2AEFEF4A4641747699170DF0129
+
+I=150
+KEY=0DFEB6E8FA4689A2DD21E3B253973230
+IV=FB521123E5BB45F1AC7083C382B95E10
+CT=DDD2F2AEFEF4A4641747699170DF0129
+PT=7D6C54E4369E965513DE1E95E8A37433
+
+I=151
+KEY=7092E20CCCD81FF7CEFFFD27BB344603
+IV=0E71300101915AEE97563493B4B2EFB9
+CT=7D6C54E4369E965513DE1E95E8A37433
+PT=B7F5C4275EF7D3A23E8E9A4BC2BCA700
+
+I=152
+KEY=C767262B922FCC55F071676C7988E103
+IV=8BBC970D4E24F6F1A92859BBAE70B757
+CT=B7F5C4275EF7D3A23E8E9A4BC2BCA700
+PT=679FA9A8AB3EE2F0663D4DC95FEC3847
+
+I=153
+KEY=A0F88F8339112EA5964C2AA52664D944
+IV=B8D28B6903859465F996A0DF491DDAAA
+CT=679FA9A8AB3EE2F0663D4DC95FEC3847
+PT=914DCEAC5B00940A415C2144DAA1EF03
+
+I=154
+KEY=31B5412F6211BAAFD7100BE1FCC53647
+IV=06E1FF99E63E0EDDA1D95682B541D026
+CT=914DCEAC5B00940A415C2144DAA1EF03
+PT=A718031A531395DA071B828A10A2B9DC
+
+I=155
+KEY=96AD423531022F75D00B896BEC678F9B
+IV=F18546028693CC0A72E218460AC932E9
+CT=A718031A531395DA071B828A10A2B9DC
+PT=19D996B9FF549029D800CF977C0E0A88
+
+I=156
+KEY=8F74D48CCE56BF5C080B46FC90698513
+IV=7E98DAFA8DE35537A0B0AA8FA32E01DF
+CT=19D996B9FF549029D800CF977C0E0A88
+PT=6A7D514FBE9963987E0EE5DD22FDC8BD
+
+I=157
+KEY=E50985C370CFDCC47605A321B2944DAE
+IV=071F44277D12AD6E653FB747C11BEFB7
+CT=6A7D514FBE9963987E0EE5DD22FDC8BD
+PT=AB07C464DF72DF58411A7CBF906F43A6
+
+I=158
+KEY=4E0E41A7AFBD039C371FDF9E22FB0E08
+IV=BDA8979A0DE78999AE0659D2744BC21B
+CT=AB07C464DF72DF58411A7CBF906F43A6
+PT=A8ABC34FF51FD998427A7837BB0F22BB
+
+I=159
+KEY=E6A582E85AA2DA047565A7A999F42CB3
+IV=3CA763C4375A6C70F072B52C42A02560
+CT=A8ABC34FF51FD998427A7837BB0F22BB
+PT=9E82A41AB2A2748695663075C5BF1C09
+
+I=160
+KEY=782726F2E800AE82E00397DC5C4B30BA
+IV=B1DD4DC8715CA0B8BA3426395B61ABA4
+CT=9E82A41AB2A2748695663075C5BF1C09
+PT=3C891AEFC6645F3C23A2E3A2E1A522EF
+
+I=161
+KEY=44AE3C1D2E64F1BEC3A1747EBDEE1255
+IV=932F28E3FC0F85A0E703AD6079A68CC0
+CT=3C891AEFC6645F3C23A2E3A2E1A522EF
+PT=D4FDD9C3D36E80E0AFA95ABEC2E62FB9
+
+I=162
+KEY=9053E5DEFD0A715E6C082EC07F083DEC
+IV=1AD1530DE6274BBA3A097004D85DF8FA
+CT=D4FDD9C3D36E80E0AFA95ABEC2E62FB9
+PT=9FACBB106FBF34D9B25A83AD4F45AA38
+
+I=163
+KEY=0FFF5ECE92B54587DE52AD6D304D97D4
+IV=8412EAA361AB8193AD529FA36944FE3D
+CT=9FACBB106FBF34D9B25A83AD4F45AA38
+PT=E95628B6A14326AC153B228C0DD25063
+
+I=164
+KEY=E6A9767833F6632BCB698FE13D9FC7B7
+IV=9F1D906FD25CCCA7565D82CDA44B4A57
+CT=E95628B6A14326AC153B228C0DD25063
+PT=7B1ECD07E452D593D00E326F8FD9F2B5
+
+I=165
+KEY=9DB7BB7FD7A4B6B81B67BD8EB2463502
+IV=9C91B12734A86451492400EE5759C190
+CT=7B1ECD07E452D593D00E326F8FD9F2B5
+PT=A99874C1ECA463D335B37179348AEF4F
+
+I=166
+KEY=342FCFBE3B00D56B2ED4CCF786CCDA4D
+IV=9060C6E8E2B51E5F1000860ECB5A608C
+CT=A99874C1ECA463D335B37179348AEF4F
+PT=F9296E658C3048C58FE6404AB6E0186C
+
+I=167
+KEY=CD06A1DBB7309DAEA1328CBD302CC221
+IV=ADCB427405EDF8078622AFC6C731D3EF
+CT=F9296E658C3048C58FE6404AB6E0186C
+PT=8D3A4ABFB8F57AEBB1284B78BFDD240D
+
+I=168
+KEY=403CEB640FC5E745101AC7C58FF1E62C
+IV=4CED30477756892A49FE6358700F5DE7
+CT=8D3A4ABFB8F57AEBB1284B78BFDD240D
+PT=7C71310D5241B8B461847FA7E2B4D506
+
+I=169
+KEY=3C4DDA695D845FF1719EB8626D45332A
+IV=52A3B8E21588368AA3AD2131B283B34C
+CT=7C71310D5241B8B461847FA7E2B4D506
+PT=380A1E2925FC8061FBC69B08B4C7C6C8
+
+I=170
+KEY=0447C4407878DF908A58236AD982F5E2
+IV=B7AD265DF50ABD77C1D1D02BAF06CEBD
+CT=380A1E2925FC8061FBC69B08B4C7C6C8
+PT=6931E262570F27732A75629A384492CA
+
+I=171
+KEY=6D7626222F77F8E3A02D41F0E1C66728
+IV=DD7D3CA7F6CE54775836734B10685A99
+CT=6931E262570F27732A75629A384492CA
+PT=336D0AB3F9A793469C544E98CFDC8AD6
+
+I=172
+KEY=5E1B2C91D6D06BA53C790F682E1AEDFE
+IV=54087C05437049FBAFC9BF6C56AD16CC
+CT=336D0AB3F9A793469C544E98CFDC8AD6
+PT=0098A640F1D04E5557F748B80215082A
+
+I=173
+KEY=5E838AD1270025F06B8E47D02C0FE5D4
+IV=DD13A93C7FAEF14820D6A168AF9969DB
+CT=0098A640F1D04E5557F748B80215082A
+PT=48660EDDC3ACAC1A814AE088650DE007
+
+I=174
+KEY=16E5840CE4AC89EAEAC4A758490205D3
+IV=589C43A680F7AE6E15DE25FD50F18BED
+CT=48660EDDC3ACAC1A814AE088650DE007
+PT=047740C48160A14563C0049316C7B78E
+
+I=175
+KEY=1292C4C865CC28AF8904A3CB5FC5B25D
+IV=22DB095AF8268D37AC536FDA3A81B7C2
+CT=047740C48160A14563C0049316C7B78E
+PT=D9679ABB1AED1524E8DA2ECA89172853
+
+I=176
+KEY=CBF55E737F213D8B61DE8D01D6D29A0E
+IV=77FDCCC9BAB3B7E81D7B9D14540ED3A7
+CT=D9679ABB1AED1524E8DA2ECA89172853
+PT=C774AD9EF683A59747AB41DA044471C4
+
+I=177
+KEY=0C81F3ED89A2981C2675CCDBD296EBCA
+IV=2E266970512C0F6D404367978C70B5C6
+CT=C774AD9EF683A59747AB41DA044471C4
+PT=927C98AFDE6F108268A306A1A818EE89
+
+I=178
+KEY=9EFD6B4257CD889E4ED6CA7A7A8E0543
+IV=E2B0A0F146E931136932D8188B7DC980
+CT=927C98AFDE6F108268A306A1A818EE89
+PT=D3C11AF1EF255D65EAAEE5B5C5BF3CD9
+
+I=179
+KEY=4D3C71B3B8E8D5FBA4782FCFBF31399A
+IV=ABA118A590A8A69D41D20ED13F7DA4C9
+CT=D3C11AF1EF255D65EAAEE5B5C5BF3CD9
+PT=760B1C47EB476A246CE41163B7425C7B
+
+I=180
+KEY=3B376DF453AFBFDFC89C3EAC087365E1
+IV=8A395FFEE93FF820FBC086932216324F
+CT=760B1C47EB476A246CE41163B7425C7B
+PT=4EEAE25D1654A461D6A56896EDFFEAB7
+
+I=181
+KEY=75DD8FA945FB1BBE1E39563AE58C8F56
+IV=82D68DE458D38127E2A17DA736BC1651
+CT=4EEAE25D1654A461D6A56896EDFFEAB7
+PT=BD7ABD27F3515B9FD337ADADBA5E9EC9
+
+I=182
+KEY=C8A7328EB6AA4021CD0EFB975FD2119F
+IV=95757C38F4CB26C29DF174FD8B1F35E8
+CT=BD7ABD27F3515B9FD337ADADBA5E9EC9
+PT=E32EF56DE91CC21C158822BDB841A02C
+
+I=183
+KEY=2B89C7E35FB6823DD886D92AE793B1B3
+IV=AFFB434005E300E99E815A8E5B46E159
+CT=E32EF56DE91CC21C158822BDB841A02C
+PT=578B7692D68BD4D65A159C9CCDC81F64
+
+I=184
+KEY=7C02B171893D56EB829345B62A5BAED7
+IV=15E783551969F275EF25A429F68BA0DB
+CT=578B7692D68BD4D65A159C9CCDC81F64
+PT=0F70D77F31DE8F0010628377C8E4A1C3
+
+I=185
+KEY=7372660EB8E3D9EB92F1C6C1E2BF0F14
+IV=078B6E3FC7C79D52A5C49847A7C5D0BB
+CT=0F70D77F31DE8F0010628377C8E4A1C3
+PT=A4F29F6A50A4A15789D4647774C96997
+
+I=186
+KEY=D780F964E84778BC1B25A2B696766683
+IV=C9B2C903F131856C0D8218146479513A
+CT=A4F29F6A50A4A15789D4647774C96997
+PT=7AD4F764911F8F1E8C9356F00B1468EE
+
+I=187
+KEY=AD540E007958F7A297B6F4469D620E6D
+IV=780DAD9DBA12DDC713ECF44057B8B56E
+CT=7AD4F764911F8F1E8C9356F00B1468EE
+PT=A00EAFD28A95C7F39137773F28F9A0D3
+
+I=188
+KEY=0D5AA1D2F3CD305106818379B59BAEBE
+IV=6643BF26488FB21BCDAA7D4FABAA5BC3
+CT=A00EAFD28A95C7F39137773F28F9A0D3
+PT=FC884EEEB73B2F66C97D742A441B0463
+
+I=189
+KEY=F1D2EF3C44F61F37CFFCF753F180AADD
+IV=7B707442550BF1FA4C1B74F0DC3237FC
+CT=FC884EEEB73B2F66C97D742A441B0463
+PT=9C260AA82C6902B068495B4844507F7D
+
+I=190
+KEY=6DF4E594689F1D87A7B5AC1BB5D0D5A0
+IV=8329E8DE2980225DA61158BF467B1D79
+CT=9C260AA82C6902B068495B4844507F7D
+PT=1C12FEAA35AD2DD21DE6411C3A3BB6D5
+
+I=191
+KEY=71E61B3E5D323055BA53ED078FEB6375
+IV=EFD514D7CF3FAC49DBB5BB3505B9B18F
+CT=1C12FEAA35AD2DD21DE6411C3A3BB6D5
+PT=15F26D34E8E1037A5A2393CEA5DB396B
+
+I=192
+KEY=6414760AB5D3332FE0707EC92A305A1E
+IV=9EFC37C295552B965B29A23AC2788D8B
+CT=15F26D34E8E1037A5A2393CEA5DB396B
+PT=76F0C79955566A0A091AA46E0C59455E
+
+I=193
+KEY=12E4B193E0855925E96ADAA726691F40
+IV=5BA54E33128A7526A9130E632BE00D65
+CT=76F0C79955566A0A091AA46E0C59455E
+PT=1EA06231EBEEB995E2F94B88A4004333
+
+I=194
+KEY=0C44D3A20B6BE0B00B93912F82695C73
+IV=9B1C6FA42510E530D2282BF8C5516DCE
+CT=1EA06231EBEEB995E2F94B88A4004333
+PT=16C36348884B32AC1CB1DE2D3C158981
+
+I=195
+KEY=1A87B0EA8320D21C17224F02BE7CD5F2
+IV=F755F641EED4C828DCBECC327D93F4AF
+CT=16C36348884B32AC1CB1DE2D3C158981
+PT=6581A3FB5F61C6C1904F35E787BF552D
+
+I=196
+KEY=7F061311DC4114DD876D7AE539C380DF
+IV=5D799F356C1672707716C47DA4384C01
+CT=6581A3FB5F61C6C1904F35E787BF552D
+PT=0BA11F8EE845E03641928825B3344994
+
+I=197
+KEY=74A70C9F3404F4EBC6FFF2C08AF7C94B
+IV=89A5592031795CEAECF1C1F274813818
+CT=0BA11F8EE845E03641928825B3344994
+PT=1CF907A6C8A33C7806819EB97B854588
+
+I=198
+KEY=685E0B39FCA7C893C07E6C79F1728CC3
+IV=BBE87558AF456066B9CE3EBB8729D554
+CT=1CF907A6C8A33C7806819EB97B854588
+PT=722BB2E53CE7846F40B5EA18AF1430B0
+
+I=199
+KEY=1A75B9DCC0404CFC80CB86615E66BC73
+IV=2CC42E6DA36883482ACB5D9D92823186
+CT=722BB2E53CE7846F40B5EA18AF1430B0
+PT=E667D6A95E9C56BB56E4436CC1B69874
+
+I=200
+KEY=FC126F759EDC1A47D62FC50D9FD02407
+IV=F18DD0388BF5692B7394BAFDC4854308
+CT=E667D6A95E9C56BB56E4436CC1B69874
+PT=3C9A76798C468470EEBC5F7B915879A3
+
+I=201
+KEY=C088190C129A9E3738939A760E885DA4
+IV=8262D8603FE0F4AE8BF5795690992F1C
+CT=3C9A76798C468470EEBC5F7B915879A3
+PT=3CAFB994BDEF76370D8A5129B63BECDB
+
+I=202
+KEY=FC27A098AF75E8003519CB5FB8B3B17F
+IV=AB090F7A86CFD9A7C1BD8869BBB4D27B
+CT=3CAFB994BDEF76370D8A5129B63BECDB
+PT=50D037733D2C3242024BD322ADDF01CB
+
+I=203
+KEY=ACF797EB9259DA423752187D156CB0B4
+IV=3581D6724722C3892C712B2AA1066824
+CT=50D037733D2C3242024BD322ADDF01CB
+PT=0D7CB755305EF09692FCED530CCC1336
+
+I=204
+KEY=A18B20BEA2072AD4A5AEF52E19A0A382
+IV=9D0DAD6448895ECBE05F8DC73E014E3C
+CT=0D7CB755305EF09692FCED530CCC1336
+PT=D66389E01F44C60B26BCF3F9B39DAB55
+
+I=205
+KEY=77E8A95EBD43ECDF831206D7AA3D08D7
+IV=7BDC3CD62CD79C7E6CB8FAE104175DE4
+CT=D66389E01F44C60B26BCF3F9B39DAB55
+PT=CC9F59409D636BE5C555AC2841650CD7
+
+I=206
+KEY=BB77F01E2020873A4647AAFFEB580400
+IV=A4FBE42983B236097E40C1E244B14748
+CT=CC9F59409D636BE5C555AC2841650CD7
+PT=34804672FCEF79481269B1D254DDCAF9
+
+I=207
+KEY=8FF7B66CDCCFFE72542E1B2DBF85CEF9
+IV=700B37E771E88E5DCD9C81D6FD16B995
+CT=34804672FCEF79481269B1D254DDCAF9
+PT=62FC00FDF1F6BF44FFBEB5BED5589A64
+
+I=208
+KEY=ED0BB6912D394136AB90AE936ADD549D
+IV=F3A9954079382ACD97C3EC198522AE69
+CT=62FC00FDF1F6BF44FFBEB5BED5589A64
+PT=F7901904A02544E064400A2625121C4C
+
+I=209
+KEY=1A9BAF958D1C05D6CFD0A4B54FCF48D1
+IV=3799F5DEF76C56F8B0A69889B85760AA
+CT=F7901904A02544E064400A2625121C4C
+PT=A915D55AE8E14497F2693A55F83041F5
+
+I=210
+KEY=B38E7ACF65FD41413DB99EE0B7FF0924
+IV=5421F3F4CDD3C6F9BF38184BC61904AA
+CT=A915D55AE8E14497F2693A55F83041F5
+PT=66EA0D0968631F3BDA46921078E495C1
+
+I=211
+KEY=D56477C60D9E5E7AE7FF0CF0CF1B9CE5
+IV=3B87243EE38BD474E4CBF34A7C592CFC
+CT=66EA0D0968631F3BDA46921078E495C1
+PT=283826367D00718849A6539EE8CAD8BF
+
+I=212
+KEY=FD5C51F0709E2FF2AE595F6E27D1445A
+IV=0FB53077D2BC27C544CD400A28212291
+CT=283826367D00718849A6539EE8CAD8BF
+PT=B15EA2718FB406D457C8B96530EDC014
+
+I=213
+KEY=4C02F381FF2A2926F991E60B173C844E
+IV=8BFE654E422E9BCCE7F1357053E1130C
+CT=B15EA2718FB406D457C8B96530EDC014
+PT=44238CE0F1765C7983BF408D5ECFA2BA
+
+I=214
+KEY=08217F610E5C755F7A2EA68649F326F4
+IV=86841D597FA91F54CBAD3C57FC1FC492
+CT=44238CE0F1765C7983BF408D5ECFA2BA
+PT=BB6408099CA64F1216D204865449E967
+
+I=215
+KEY=B345776892FA3A4D6CFCA2001DBACF93
+IV=849198CEA19F4AD76013D172867A0D20
+CT=BB6408099CA64F1216D204865449E967
+PT=B7E109C6813E686ADA396DDB277AD960
+
+I=216
+KEY=04A47EAE13C45227B6C5CFDB3AC016F3
+IV=9C5E0182124701DA958CF68E1B9F8CC1
+CT=B7E109C6813E686ADA396DDB277AD960
+PT=65C77CB822CA10AE1F95B91F0A3F6436
+
+I=217
+KEY=61630216310E4289A95076C430FF72C5
+IV=2BB9026F793A64A325E02B922E3A51DD
+CT=65C77CB822CA10AE1F95B91F0A3F6436
+PT=48E9DB9FC3F883AD28A0299561444197
+
+I=218
+KEY=298AD989F2F6C12481F05F5151BB3352
+IV=6BE0B03639C858D8F2CAE00EFE8FECCA
+CT=48E9DB9FC3F883AD28A0299561444197
+PT=02B277AB327BCB5C91831BD376DC5211
+
+I=219
+KEY=2B38AE22C08D0A781073448227676143
+IV=ADC033E3EEC3705031D2FB24205823A2
+CT=02B277AB327BCB5C91831BD376DC5211
+PT=FE288D6703CF6AB1635483305A82F192
+
+I=220
+KEY=D5102345C34260C97327C7B27DE590D1
+IV=F637C38CB5DF86458225143E157B9415
+CT=FE288D6703CF6AB1635483305A82F192
+PT=B07BF02F795D13D972D5D6E556E8BA37
+
+I=221
+KEY=656BD36ABA1F731001F211572B0D2AE6
+IV=824B7BBB3A339BF045C3CFEA9FD842B9
+CT=B07BF02F795D13D972D5D6E556E8BA37
+PT=D4661C2E102C6644724DA54BE291215D
+
+I=222
+KEY=B10DCF44AA33155473BFB41CC99C0BBB
+IV=21FA242B2B9FFF0C7DC6B712A38A333B
+CT=D4661C2E102C6644724DA54BE291215D
+PT=F7EDEE448559A6ACD68815B6EEAF6E38
+
+I=223
+KEY=46E021002F6AB3F8A537A1AA27336583
+IV=390906ECE51C92800D620E1CD1FD3574
+CT=F7EDEE448559A6ACD68815B6EEAF6E38
+PT=07257C91424F65E6752470A6960DF6D9
+
+I=224
+KEY=41C55D916D25D61ED013D10CB13E935A
+IV=918A010EC2B106DE32A220315999DF7D
+CT=07257C91424F65E6752470A6960DF6D9
+PT=CCB4F3FCFFDEE9E93DD3AB4CC2DB870E
+
+I=225
+KEY=8D71AE6D92FB3FF7EDC07A4073E51454
+IV=7CF6B4948C4E04ED235F2CC96B0A6B49
+CT=CCB4F3FCFFDEE9E93DD3AB4CC2DB870E
+PT=C455220E8C8847FF2592074A53104105
+
+I=226
+KEY=49248C631E737808C8527D0A20F55551
+IV=4839E74C868786D0A109603CF98F1100
+CT=C455220E8C8847FF2592074A53104105
+PT=B4D0F5B4C15D7AD556ED4964A94C898F
+
+I=227
+KEY=FDF479D7DF2E02DD9EBF346E89B9DCDE
+IV=5C6D9649E47FAA8A2DCAFB317B6BC0EA
+CT=B4D0F5B4C15D7AD556ED4964A94C898F
+PT=B515D2904555793DDC142618DCFF8464
+
+I=228
+KEY=48E1AB479A7B7BE042AB1276554658BA
+IV=E3573B4137C13BBA6CDD10D71042B8F6
+CT=B515D2904555793DDC142618DCFF8464
+PT=2C272D6589E2E6EE09067882795E9FB9
+
+I=229
+KEY=64C6862213999D0E4BAD6AF42C18C703
+IV=08E335104FC5D18E2C11EF34B805F060
+CT=2C272D6589E2E6EE09067882795E9FB9
+PT=B38E39322245C4A2E170EBF36D764AD5
+
+I=230
+KEY=D748BF1031DC59ACAADD8107416E8DD6
+IV=E134D0DEA38A23983766DA18DADA70E0
+CT=B38E39322245C4A2E170EBF36D764AD5
+PT=E7556255602B48D7CAC710A004FFFD2E
+
+I=231
+KEY=301DDD4551F7117B601A91A7459170F8
+IV=301C2808833418F45D5F97FB09A99504
+CT=E7556255602B48D7CAC710A004FFFD2E
+PT=D4356D51B1C486AAC8BCF2F65312758C
+
+I=232
+KEY=E428B014E03397D1A8A6635116830574
+IV=264D556FA9A9D73510F562BBF983A4F7
+CT=D4356D51B1C486AAC8BCF2F65312758C
+PT=B4D003D6C542B576A3EAEC8F1B017F5B
+
+I=233
+KEY=50F8B3C2257122A70B4C8FDE0D827A2F
+IV=8821647AD3E9E529909E60D0F75DA400
+CT=B4D003D6C542B576A3EAEC8F1B017F5B
+PT=10056819F314FF21114BE6209AB5508C
+
+I=234
+KEY=40FDDBDBD665DD861A0769FE97372AA3
+IV=CBD574F4DB1EFEE4E2EC9485D1192E04
+CT=10056819F314FF21114BE6209AB5508C
+PT=6E7AA061FE85B6F8972CB0E793BE0CB0
+
+I=235
+KEY=2E877BBA28E06B7E8D2BD91904892613
+IV=4F98EE1501681EC0E7834FE941DF6C6B
+CT=6E7AA061FE85B6F8972CB0E793BE0CB0
+PT=45E0C0014219D77686E82E74E60608CA
+
+I=236
+KEY=6B67BBBB6AF9BC080BC3F76DE28F2ED9
+IV=1D34CAB2FF836A7E6568823784519170
+CT=45E0C0014219D77686E82E74E60608CA
+PT=ACF686F9D6723EAFDBFE512AB3A8C6B1
+
+I=237
+KEY=C7913D42BC8B82A7D03DA6475127E868
+IV=BEA74B4435F9F79D39B8CCE1F090D4B8
+CT=ACF686F9D6723EAFDBFE512AB3A8C6B1
+PT=F11FE34D158D40DEA10033BCE0253F30
+
+I=238
+KEY=368EDE0FA906C279713D95FBB102D758
+IV=DF30EE5D8CA298BE630DDE4B6D8AD7AA
+CT=F11FE34D158D40DEA10033BCE0253F30
+PT=4E970ACAB8B19C942C85FAA7825C5E67
+
+I=239
+KEY=7819D4C511B75EED5DB86F5C335E893F
+IV=DC3CCC928C02710EE91391032A3B557D
+CT=4E970ACAB8B19C942C85FAA7825C5E67
+PT=0FF6C292507CF135036E04A391210466
+
+I=240
+KEY=77EF165741CBAFD85ED66BFFA27F8D59
+IV=7CC57A486E05E36F852278450C03D39F
+CT=0FF6C292507CF135036E04A391210466
+PT=BBEF94C8179E7A124492A252507D58E7
+
+I=241
+KEY=CC00829F5655D5CA1A44C9ADF202D5BE
+IV=BBB92F65197F8D6B388191E78E90A858
+CT=BBEF94C8179E7A124492A252507D58E7
+PT=BAF11150DD418ED7C28072A718815954
+
+I=242
+KEY=76F193CF8B145B1DD8C4BB0AEA838CEA
+IV=99DA5A29F934BE23EB74B6DE4E8CC740
+CT=BAF11150DD418ED7C28072A718815954
+PT=A935099B91A35655C850939D2FED1569
+
+I=243
+KEY=DFC49A541AB70D4810942897C56E9983
+IV=92401B7E92A49FA5A6905E51E49D51C2
+CT=A935099B91A35655C850939D2FED1569
+PT=F60E1B5D10CDA17FC762798B86B8708D
+
+I=244
+KEY=29CA81090A7AAC37D7F6511C43D6E90E
+IV=C2A57521674EB0FB3E46DE2CC1DCF419
+CT=F60E1B5D10CDA17FC762798B86B8708D
+PT=0B976079B61F46E7F3CCCD17E23D872F
+
+I=245
+KEY=225DE170BC65EAD0243A9C0BA1EB6E21
+IV=66970AE807FED1E3581496C9FBE5FF50
+CT=0B976079B61F46E7F3CCCD17E23D872F
+PT=FB44F0094A5FC03BD0A27391E58D0AA3
+
+I=246
+KEY=D9191179F63A2AEBF498EF9A44666482
+IV=ED7B2ED1AFF7DB9B514D6E4DFAEA484B
+CT=FB44F0094A5FC03BD0A27391E58D0AA3
+PT=41A534A69AD25FEB39BB9F754F15D8FE
+
+I=247
+KEY=98BC25DF6CE87500CD2370EF0B73BC7C
+IV=B7E8C7F08BCE1CF1CC2568E18C18C92B
+CT=41A534A69AD25FEB39BB9F754F15D8FE
+PT=022B28D4F7355E14F99F654B6C35BC16
+
+I=248
+KEY=9A970D0B9BDD2B1434BC15A46746006A
+IV=F2EF32464FC7E5F3D397C259CB963B7F
+CT=022B28D4F7355E14F99F654B6C35BC16
+PT=28F18EA03ADEB36C40FD8FBC590EC6C8
+
+I=249
+KEY=B26683ABA103987874419A183E48C6A2
+IV=687E822CCFC5800E88E59ED7DEC1409D
+CT=28F18EA03ADEB36C40FD8FBC590EC6C8
+PT=661F9AEA300100333D64FCDD1212C663
+
+I=250
+KEY=D47919419102984B492566C52C5A00C1
+IV=3922BB08EE1B4CC75881D1D6F66B8EE0
+CT=661F9AEA300100333D64FCDD1212C663
+PT=11C4D360F585EDF544D5479AE1ABDBE6
+
+I=251
+KEY=C5BDCA21648775BE0DF0215FCDF1DB27
+IV=9B7C0D7D0EA8CAD77B331F2E0CA1E639
+CT=11C4D360F585EDF544D5479AE1ABDBE6
+PT=2E4695733B01CC78993E6EB464784223
+
+I=252
+KEY=EBFB5F525F86B9C694CE4FEBA9899904
+IV=A2BF273F12FE1F4B2F56A86CAFD9C5BF
+CT=2E4695733B01CC78993E6EB464784223
+PT=1CC514E9F4B13FFEF3B076DAC8C62877
+
+I=253
+KEY=F73E4BBBAB378638677E3931614FB173
+IV=1D4960EBE667AC5DE5ED767183838846
+CT=1CC514E9F4B13FFEF3B076DAC8C62877
+PT=3B1A7D179DDED66A37F3053B8B231EEA
+
+I=254
+KEY=CC2436AC36E95052508D3C0AEA6CAF99
+IV=974643FDFDB695A44B7EF8676A2B87DD
+CT=3B1A7D179DDED66A37F3053B8B231EEA
+PT=620A4E7A25E8D05779C0FB8CEBA55A74
+
+I=255
+KEY=AE2E78D613018005294DC78601C9F5ED
+IV=C9A1D92DB7D553DCAEB3BB81B489257A
+CT=620A4E7A25E8D05779C0FB8CEBA55A74
+PT=93508503278ECECE65D67B5F50962C4E
+
+I=256
+KEY=3D7EFDD5348F4ECB4C9BBCD9515FD9A3
+IV=108E736F1DCD178A8648F6AA6D527732
+CT=93508503278ECECE65D67B5F50962C4E
+PT=EA9E953D8B62FFAFF9FAFB97F614D65C
+
+I=257
+KEY=D7E068E8BFEDB164B561474EA74B0FFF
+IV=B893A94302C0DAFB19D7B6656085DCA9
+CT=EA9E953D8B62FFAFF9FAFB97F614D65C
+PT=1452ED26E774029EF30D272F8548C2F8
+
+I=258
+KEY=C3B285CE5899B3FA466C60612203CD07
+IV=668FF6719E5A29A99876227EEDE5818F
+CT=1452ED26E774029EF30D272F8548C2F8
+PT=4083167E5ED1A1A449C1825B84F321E1
+
+I=259
+KEY=833193B00648125E0FADE23AA6F0ECE6
+IV=9F6375A022543AB8303368A235813F02
+CT=4083167E5ED1A1A449C1825B84F321E1
+PT=9206639D076685FD2078F9B984B7A03F
+
+I=260
+KEY=1137F02D012E97A32FD51B8322474CD9
+IV=1B95128E90B110AED9D543D2A996271F
+CT=9206639D076685FD2078F9B984B7A03F
+PT=AAA3F2BD0126DFD5007DD2835CCB0109
+
+I=261
+KEY=BB940290000848762FA8C9007E8C4DD0
+IV=BB2E26A9CDEF9D1B2940EFFBA1971A5D
+CT=AAA3F2BD0126DFD5007DD2835CCB0109
+PT=B58BB3761519C1726D75AE96313FB7DE
+
+I=262
+KEY=0E1FB1E61511890442DD67964FB3FA0E
+IV=68D3EC37EE43E3F24072F69F2DFA768D
+CT=B58BB3761519C1726D75AE96313FB7DE
+PT=4558CD47C012B7293396D7EDFE3CEA85
+
+I=263
+KEY=4B477CA1D5033E2D714BB07BB18F108B
+IV=F7E107DBF4DDBF7974B699536A4E2803
+CT=4558CD47C012B7293396D7EDFE3CEA85
+PT=6F43B6B28AEF5DD1B66279ACAAB9A589
+
+I=264
+KEY=2404CA135FEC63FCC729C9D71B36B502
+IV=B3E6DA8DE5DDF7ED6F832D1306A1C04A
+CT=6F43B6B28AEF5DD1B66279ACAAB9A589
+PT=1BA743E148BC164C4C8324D665B5A3BD
+
+I=265
+KEY=3FA389F2175075B08BAAED017E8316BF
+IV=8BBBB56B39893C8F286561EF6E47E66A
+CT=1BA743E148BC164C4C8324D665B5A3BD
+PT=49A40365092DD1360D916AAEAFD03FC1
+
+I=266
+KEY=76078A971E7DA486863B87AFD153297E
+IV=48BA08703A306F772E78F660173A26B3
+CT=49A40365092DD1360D916AAEAFD03FC1
+PT=DF7DEB5968D683AAA274B0D5D3F9AA03
+
+I=267
+KEY=A97A61CE76AB272C244F377A02AA837D
+IV=0C7832F9CDF65DADA7FA809B8DE709C3
+CT=DF7DEB5968D683AAA274B0D5D3F9AA03
+PT=69689E97E9B166DA53E25BDFBCAF4A97
+
+I=268
+KEY=C012FF599F1A41F677AD6CA5BE05C9EA
+IV=05BC03F59CD8C5FAE4A7240E6168CF41
+CT=69689E97E9B166DA53E25BDFBCAF4A97
+PT=5F87DC71EF2918F75A94E43007FF50E6
+
+I=269
+KEY=9F952328703359012D398895B9FA990C
+IV=4233E654802B55155E158B650B64718E
+CT=5F87DC71EF2918F75A94E43007FF50E6
+PT=4F170790775A6A147E99D251C401969A
+
+I=270
+KEY=D08224B80769331553A05AC47DFB0F96
+IV=4AEAE53003D5085F5963CC36C4589941
+CT=4F170790775A6A147E99D251C401969A
+PT=E566D46360EF38E5CFF0C2E7E7E0D679
+
+I=271
+KEY=35E4F0DB67860BF09C5098239A1BD9EF
+IV=F6CBFF51F6E59B7AAA9EB1261707429A
+CT=E566D46360EF38E5CFF0C2E7E7E0D679
+PT=F7189C4B9E1048ED66D9B7CCD089C5F9
+
+I=272
+KEY=C2FC6C90F996431DFA892FEF4A921C16
+IV=0A05A4BFBBCC8B3E218C123A95FFF475
+CT=F7189C4B9E1048ED66D9B7CCD089C5F9
+PT=68FB0909789DBFA672BEEF5DF0017B63
+
+I=273
+KEY=AA076599810BFCBB8837C0B2BA936775
+IV=DF1A3AF147E72C2CEAE5D8713D52F572
+CT=68FB0909789DBFA672BEEF5DF0017B63
+PT=AF2784590089186BED3A48ADC1B68562
+
+I=274
+KEY=0520E1C08182E4D0650D881F7B25E217
+IV=BFDC5ECF596F5F3CFFEAAF4B961209FA
+CT=AF2784590089186BED3A48ADC1B68562
+PT=E8C29D3C129AB8FA797EFDCE4CE4D4F2
+
+I=275
+KEY=EDE27CFC93185C2A1C7375D137C136E5
+IV=49195E71516D5117C26814F98FD94C31
+CT=E8C29D3C129AB8FA797EFDCE4CE4D4F2
+PT=6ACF2AE12C38DB520F49E6C90D4B8F03
+
+I=276
+KEY=872D561DBF208778133A93183A8AB9E6
+IV=E4FA7788D6E7AFBD08884BFCFA74D30C
+CT=6ACF2AE12C38DB520F49E6C90D4B8F03
+PT=78FEA3B57D6176C44CE753FB01416CA6
+
+I=277
+KEY=FFD3F5A8C241F1BC5FDDC0E33BCBD540
+IV=08E333F43615229D95E7C425A04EA2B7
+CT=78FEA3B57D6176C44CE753FB01416CA6
+PT=5030D7131ABBD7AC323BA31B602B776E
+
+I=278
+KEY=AFE322BBD8FA26106DE663F85BE0A22E
+IV=64BDE35106D9A66A4216EA20F6C52D06
+CT=5030D7131ABBD7AC323BA31B602B776E
+PT=14B32E8BD3BD9D82613E32536E6A9F91
+
+I=279
+KEY=BB500C300B47BB920CD851AB358A3DBF
+IV=8FB9E6BDCD50610E97CF731216CFE698
+CT=14B32E8BD3BD9D82613E32536E6A9F91
+PT=1F22542AFCE63AA92CCDAF45F8DAEEF0
+
+I=280
+KEY=A472581AF7A1813B2015FEEECD50D34F
+IV=E18B3C5EDA8CDA9E94A376CEEF687D9F
+CT=1F22542AFCE63AA92CCDAF45F8DAEEF0
+PT=FC986510E3ED40994D1C33201D0EDB27
+
+I=281
+KEY=58EA3D0A144CC1A26D09CDCED05E0868
+IV=D1828C9DDB263064AD259A2360B3DFBA
+CT=FC986510E3ED40994D1C33201D0EDB27
+PT=06C1CE557C9AC5D40560CF2D40DCC47C
+
+I=282
+KEY=5E2BF35F68D60476686902E39082CC14
+IV=3454FD0698CC8CD949970509C23E50F6
+CT=06C1CE557C9AC5D40560CF2D40DCC47C
+PT=4287FA420FD9AFCAB7E290273BDF4054
+
+I=283
+KEY=1CAC091D670FABBCDF8B92C4AB5D8C40
+IV=C2F0C044A975ADBD20DE56858A074886
+CT=4287FA420FD9AFCAB7E290273BDF4054
+PT=447AFDD3ACF0DEEB0385799789FBAFF0
+
+I=284
+KEY=58D6F4CECBFF7557DC0EEB5322A623B0
+IV=299C337821B0779A7ADC3A04316A6373
+CT=447AFDD3ACF0DEEB0385799789FBAFF0
+PT=BA0BBC980827E87EEA51E66C92C96B31
+
+I=285
+KEY=E2DD4856C3D89D29365F0D3FB06F4881
+IV=2368291AD179C3C143E636898EB3E104
+CT=BA0BBC980827E87EEA51E66C92C96B31
+PT=77A6131415B251049423FFFB1F3A8A3A
+
+I=286
+KEY=957B5B42D66ACC2DA27CF2C4AF55C2BB
+IV=14300EA81B57E102AEDD97CCD466E18A
+CT=77A6131415B251049423FFFB1F3A8A3A
+PT=A7AEC0CC599D56347A72D934DDAC7899
+
+I=287
+KEY=32D59B8E8FF79A19D80E2BF072F9BA22
+IV=FD62415C90DACCD22EC364877DB0CB24
+CT=A7AEC0CC599D56347A72D934DDAC7899
+PT=1B1100FCB9F85D8CCFDEC5865083B44D
+
+I=288
+KEY=29C49B72360FC79517D0EE76227A0E6F
+IV=6CB24892D26E43E63819C372D5EB4F6D
+CT=1B1100FCB9F85D8CCFDEC5865083B44D
+PT=33E9BBD018604F301C2543878FCCCA5C
+
+I=289
+KEY=1A2D20A22E6F88A50BF5ADF1ADB6C433
+IV=50D84A03998B897D1AE217FEA9A955C4
+CT=33E9BBD018604F301C2543878FCCCA5C
+PT=07163D652DB035C091830042D6047DF3
+
+I=290
+KEY=1D3B1DC703DFBD659A76ADB37BB2B9C0
+IV=092DF26C855F07690836203E3E1790D0
+CT=07163D652DB035C091830042D6047DF3
+PT=AD6647AF8EFCD4F3B2ECDB4D6FFFC1EB
+
+I=291
+KEY=B05D5A688D236996289A76FE144D782B
+IV=68634C941957E3F58F71BE37D7C5C78B
+CT=AD6647AF8EFCD4F3B2ECDB4D6FFFC1EB
+PT=D2B51122154D10F67D2C07BD75D5E8E2
+
+I=292
+KEY=62E84B4A986E796055B67143619890C9
+IV=3C85044F6438FAA021BB7985A63A959D
+CT=D2B51122154D10F67D2C07BD75D5E8E2
+PT=4131E9296FECD2DF35EDFBF0CBD0E54B
+
+I=293
+KEY=23D9A263F782ABBF605B8AB3AA487582
+IV=46D47F3F12B6ADD5580CE8CE7C7359CD
+CT=4131E9296FECD2DF35EDFBF0CBD0E54B
+PT=5AEA3E73A6EC0D9D683A3526AC1C0E58
+
+I=294
+KEY=79339C10516EA6220861BF9506547BDA
+IV=D3C58B190FDA0838C770C2185C553D97
+CT=5AEA3E73A6EC0D9D683A3526AC1C0E58
+PT=A21B17CB4588C30CAD6DF25A5E83E273
+
+I=295
+KEY=DB288BDB14E6652EA50C4DCF58D799A9
+IV=870E7F0E3109712E84C58BEC0E7032F6
+CT=A21B17CB4588C30CAD6DF25A5E83E273
+PT=0021FF3BB8336E607B8DE10117005230
+
+I=296
+KEY=DB0974E0ACD50B4EDE81ACCE4FD7CB99
+IV=2FC82B298A60FC40DA3EFD4E800DB063
+CT=0021FF3BB8336E607B8DE10117005230
+PT=2EFA32680ECD84891B447393F7C1AC88
+
+I=297
+KEY=F5F34688A2188FC7C5C5DF5DB8166711
+IV=E1B86C9FC466B72BE40F65973FC41FC4
+CT=2EFA32680ECD84891B447393F7C1AC88
+PT=722117C1EE83FBA840EFEE86A930579F
+
+I=298
+KEY=87D251494C9B746F852A31DB1126308E
+IV=48E347A705B6E322153BFE567931346F
+CT=722117C1EE83FBA840EFEE86A930579F
+PT=A684344231EC4C03726A0DC20EADA36D
+
+I=299
+KEY=2156650B7D77386CF7403C191F8B93E3
+IV=4CD618E5F959FC4C66602263F6C5C652
+CT=A684344231EC4C03726A0DC20EADA36D
+PT=F40BFBEAC1C1BD1621FBAE1B605BD092
+
+I=300
+KEY=D55D9EE1BCB6857AD6BB92027FD04371
+IV=5A41E8952E6B1C551C4691DE9C0A4B6D
+CT=F40BFBEAC1C1BD1621FBAE1B605BD092
+PT=6ECDBFB3947C7E81C7BD4BE93B603728
+
+I=301
+KEY=BB90215228CAFBFB1106D9EB44B07459
+IV=52E2726B0855F993E1075077B3AB1E77
+CT=6ECDBFB3947C7E81C7BD4BE93B603728
+PT=71E051375A3B974FE523DA47862E24AE
+
+I=302
+KEY=CA70706572F16CB4F42503ACC29E50F7
+IV=76B6637161FBE4760FCE90E9868B441A
+CT=71E051375A3B974FE523DA47862E24AE
+PT=CC6CFBCF9A62A3AE55F6B040673B25B3
+
+I=303
+KEY=061C8BAAE893CF1AA1D3B3ECA5A57544
+IV=5563B0C2350A4ED76EE0C322480884FB
+CT=CC6CFBCF9A62A3AE55F6B040673B25B3
+PT=DA71B26C4EE3FB1FD413FD0757B379E6
+
+I=304
+KEY=DC6D39C6A670340575C04EEBF2160CA2
+IV=45C1C5DAF8DE9170C01E554DD36C564E
+CT=DA71B26C4EE3FB1FD413FD0757B379E6
+PT=BCD4BC394FFB46207EF0A8EC9883BD55
+
+I=305
+KEY=60B985FFE98B72250B30E6076A95B1F7
+IV=38E5B69E6D82A760BFD65CBAACC56F8A
+CT=BCD4BC394FFB46207EF0A8EC9883BD55
+PT=FD997E7A7B77E5DF637182399779AF75
+
+I=306
+KEY=9D20FB8592FC97FA6841643EFDEC1E82
+IV=8EB39B261910419E43B178DCD6803572
+CT=FD997E7A7B77E5DF637182399779AF75
+PT=71749C51136457B604CD8B4C193928A8
+
+I=307
+KEY=EC5467D48198C04C6C8CEF72E4D5362A
+IV=6DFA447305215066A0B5671E5AB80951
+CT=71749C51136457B604CD8B4C193928A8
+PT=DF48D76E54B4264304B0EC036DFDADDE
+
+I=308
+KEY=331CB0BAD52CE60F683C037189289BF4
+IV=8C2B316ECA96DB57322853E07BE47AB3
+CT=DF48D76E54B4264304B0EC036DFDADDE
+PT=5E2BD374B9856C573A4DEBF1B8F453EC
+
+I=309
+KEY=6D3763CE6CA98A585271E88031DCC818
+IV=E541AC59CFDBEA97D1AE5221F849838E
+CT=5E2BD374B9856C573A4DEBF1B8F453EC
+PT=D7F97B76A8D3076D343A22459EC4765D
+
+I=310
+KEY=BACE18B8C47A8D35664BCAC5AF18BE45
+IV=B359889A22B9502571E4817C47BC5348
+CT=D7F97B76A8D3076D343A22459EC4765D
+PT=E24F05EEE812BD3389AC0AAC4172F5C6
+
+I=311
+KEY=58811D562C683006EFE7C069EE6A4B83
+IV=33F8D881A783051987103096B6C734C3
+CT=E24F05EEE812BD3389AC0AAC4172F5C6
+PT=A2AB44CC9C41A8748201DA6F9429AB39
+
+I=312
+KEY=FA2A599AB02998726DE61A067A43E0BA
+IV=2028704442AE252BCF1D081C5EE2D80B
+CT=A2AB44CC9C41A8748201DA6F9429AB39
+PT=E8FA100D1D28186196BAF990A80109AA
+
+I=313
+KEY=12D04997AD018013FB5CE396D242E910
+IV=6384E3612062BC6850C94C3B14934A6F
+CT=E8FA100D1D28186196BAF990A80109AA
+PT=683AEF47A8990E2F8AAD8813789069B1
+
+I=314
+KEY=7AEAA6D005988E3C71F16B85AAD280A1
+IV=12F78728F3B0EFAC7D304257E47ED5C8
+CT=683AEF47A8990E2F8AAD8813789069B1
+PT=F3121C95A5BACDEAEFA87C4EE40B6C6D
+
+I=315
+KEY=89F8BA45A02243D69E5917CB4ED9ECCC
+IV=FE654BC69677E13383C4206BFB7896A6
+CT=F3121C95A5BACDEAEFA87C4EE40B6C6D
+PT=AE9701378E128847A2669B516795D586
+
+I=316
+KEY=276FBB722E30CB913C3F8C9A294C394A
+IV=E79D5C468BCBA36A79B74F32F28FA635
+CT=AE9701378E128847A2669B516795D586
+PT=D97D988A40C5B323794F160FE8639262
+
+I=317
+KEY=FE1223F86EF578B245709A95C12FAB28
+IV=4F3055450C627AD4712E042666AC0812
+CT=D97D988A40C5B323794F160FE8639262
+PT=32381BA55D5C0C91D683D57593772496
+
+I=318
+KEY=CC2A385D33A9742393F34FE052588FBE
+IV=172165B468B83B62B41A2B4310461193
+CT=32381BA55D5C0C91D683D57593772496
+PT=4D555F31A60F1007B96FBB458B06A619
+
+I=319
+KEY=817F676C95A664242A9CF4A5D95E29A7
+IV=5D5EEBEA67DCD5F7851619F1BAA6414E
+CT=4D555F31A60F1007B96FBB458B06A619
+PT=23D1AC0F18C20FCE7E5CC4619F8376D5
+
+I=320
+KEY=A2AECB638D646BEA54C030C446DD5F72
+IV=54154B82B5820D5892DABD15B403345D
+CT=23D1AC0F18C20FCE7E5CC4619F8376D5
+PT=2E55905A38F818CC04D8A792D2007332
+
+I=321
+KEY=8CFB5B39B59C73265018975694DD2C40
+IV=AC47D7619A587DC8213B749918FCFEA8
+CT=2E55905A38F818CC04D8A792D2007332
+PT=010F3396885F8F6BF15170B8E6D221BD
+
+I=322
+KEY=8DF468AF3DC3FC4DA149E7EE720F0DFD
+IV=6CE249D2E89C61ACD029AA3C122427D1
+CT=010F3396885F8F6BF15170B8E6D221BD
+PT=4DB3972D9851B8A4B3150A43210D36F0
+
+I=323
+KEY=C047FF82A59244E9125CEDAD53023B0D
+IV=07A578889914E113C1C4DE01DC4B1DE4
+CT=4DB3972D9851B8A4B3150A43210D36F0
+PT=84F64CFFD705E82704FF3DA4FC074B34
+
+I=324
+KEY=44B1B37D7297ACCE16A3D009AF057039
+IV=CE73ADCD7BCF1807C084276EDD765256
+CT=84F64CFFD705E82704FF3DA4FC074B34
+PT=5964DF8E8D656846EE574635787F7B18
+
+I=325
+KEY=1DD56CF3FFF2C488F8F4963CD77A0B21
+IV=679903574013011E62CC5798B9633607
+CT=5964DF8E8D656846EE574635787F7B18
+PT=E28E7E3AA93802BEEFE258F38F5D2E5C
+
+I=326
+KEY=FF5B12C956CAC6361716CECF5827257D
+IV=678D8583A022C60BCE2C227627A548B2
+CT=E28E7E3AA93802BEEFE258F38F5D2E5C
+PT=D297684A7C50765C413BFA37B5E1E256
+
+I=327
+KEY=2DCC7A832A9AB06A562D34F8EDC6C72B
+IV=4EF9AACC21733B65B4DD0B1F105D4037
+CT=D297684A7C50765C413BFA37B5E1E256
+PT=9EF5F9A2B14B090A201DE74E4CF714C8
+
+I=328
+KEY=B33983219BD1B9607630D3B6A131D3E3
+IV=5CC41FCC9EC19619BA06D10BBC6E1F5F
+CT=9EF5F9A2B14B090A201DE74E4CF714C8
+PT=81EF000CF6CA737E0F449927E66F6392
+
+I=329
+KEY=32D6832D6D1BCA1E79744A91475EB071
+IV=6DE60CE2986CF80C5D588FA1F9A8C3A0
+CT=81EF000CF6CA737E0F449927E66F6392
+PT=3BE177EE9F8F7BE3BCE0FAA70C0A5025
+
+I=330
+KEY=0937F4C3F294B1FDC594B0364B54E054
+IV=BE2F86A52BEED4497790D6134CF0D64E
+CT=3BE177EE9F8F7BE3BCE0FAA70C0A5025
+PT=DD313134DB126529F349808B3E766795
+
+I=331
+KEY=D406C5F72986D4D436DD30BD752287C1
+IV=A89E52478FDEF91AF151097CED84579C
+CT=DD313134DB126529F349808B3E766795
+PT=330203EA36484C8E091F00CD2255E599
+
+I=332
+KEY=E704C61D1FCE985A3FC2307057776258
+IV=1AEF7BA63A3E3B6D2EB8EB1980D3E581
+CT=330203EA36484C8E091F00CD2255E599
+PT=E28A47CDB7DB0351006C1D9FB227FCEF
+
+I=333
+KEY=058E81D0A8159B0B3FAE2DEFE5509EB7
+IV=F67C7FCF8C5AA1574A165D8CBE694BF4
+CT=E28A47CDB7DB0351006C1D9FB227FCEF
+PT=ACF869797690853BE142BB7BAC735FC8
+
+I=334
+KEY=A976E8A9DE851E30DEEC96944923C17F
+IV=636F181C4735E700897928BFC60A43EB
+CT=ACF869797690853BE142BB7BAC735FC8
+PT=60FF9BF36809DAEB94F823FC6458B26A
+
+I=335
+KEY=C989735AB68CC4DB4A14B5682D7B7315
+IV=0829C0EE6B170C490C7A73401761CEAA
+CT=60FF9BF36809DAEB94F823FC6458B26A
+PT=17630CBEAB904F7996301515F24A1F27
+
+I=336
+KEY=DEEA7FE41D1C8BA2DC24A07DDF316C32
+IV=A4E0624D86F1098D2DD4D0408897ACED
+CT=17630CBEAB904F7996301515F24A1F27
+PT=A1E35C3E2FA1B1DB11DB96E7DD58AB37
+
+I=337
+KEY=7F0923DA32BD3A79CDFF369A0269C705
+IV=D3639A296FF168ED773785CFCACD1015
+CT=A1E35C3E2FA1B1DB11DB96E7DD58AB37
+PT=14F5408460708A69A22A2023B01969CE
+
+I=338
+KEY=6BFC635E52CDB0106FD516B9B270AECB
+IV=37CD0428A0C08CC6AABAAA05D8830557
+CT=14F5408460708A69A22A2023B01969CE
+PT=516991CA6530D20AB121394F51288880
+
+I=339
+KEY=3A95F29437FD621ADEF42FF6E358264B
+IV=FB52F5A95F2E3665D44F0AEACB88B108
+CT=516991CA6530D20AB121394F51288880
+PT=FB0C32B66729736F8E5EC8C92D80FDC5
+
+I=340
+KEY=C199C02250D4117550AAE73FCED8DB8E
+IV=403B43C740215D94E8FBAE22846D3B0A
+CT=FB0C32B66729736F8E5EC8C92D80FDC5
+PT=C243054D022E7E9EFC21F965C71D63EB
+
+I=341
+KEY=03DAC56F52FA6FEBAC8B1E5A09C5B865
+IV=663796B211E7F6E05B4A107B16A904B0
+CT=C243054D022E7E9EFC21F965C71D63EB
+PT=6CA56F6792355B2A7A60A4467A85F71E
+
+I=342
+KEY=6F7FAA08C0CF34C1D6EBBA1C73404F7B
+IV=A23B73DF1477EC98202135164C6EF1AB
+CT=6CA56F6792355B2A7A60A4467A85F71E
+PT=BC590C8B427B013F873B2F5F8D66D5D1
+
+I=343
+KEY=D326A68382B435FE51D09543FE269AAA
+IV=E84DF462C62D594AAD94C33C446E18FC
+CT=BC590C8B427B013F873B2F5F8D66D5D1
+PT=D37CAA9BEA300FF6219349DBA25DA0A6
+
+I=344
+KEY=005A0C1868843A087043DC985C7B3A0C
+IV=9AAD322884EBE93D0FA084E144600174
+CT=D37CAA9BEA300FF6219349DBA25DA0A6
+PT=AE50C328AFFC39A103C767C1FD337449
+
+I=345
+KEY=AE0ACF30C77803A97384BB59A1484E45
+IV=9CEE91362FB0D50ABCEB58EF49EC3614
+CT=AE50C328AFFC39A103C767C1FD337449
+PT=882939453C6E156CD023B468EDD16C95
+
+I=346
+KEY=2623F675FB1616C5A3A70F314C9922D0
+IV=5626126CC424BF26D92C822442E4221E
+CT=882939453C6E156CD023B468EDD16C95
+PT=B9A97FE0DEF66604F6CE928AAB532EC2
+
+I=347
+KEY=9F8A899525E070C155699DBBE7CA0C12
+IV=E5BB374C14E36FD0C2D5F9191C967EC7
+CT=B9A97FE0DEF66604F6CE928AAB532EC2
+PT=6ED0FF2FE8DA900A33AE20F7C1C2E457
+
+I=348
+KEY=F15A76BACD3AE0CB66C7BD4C2608E845
+IV=4493B9F0FF63D392273302B6932C8F77
+CT=6ED0FF2FE8DA900A33AE20F7C1C2E457
+PT=B7583A56BED55067A520B4F5E5C1528F
+
+I=349
+KEY=46024CEC73EFB0ACC3E709B9C3C9BACA
+IV=12E2BFD3EAB69E5132E3CDF8BAFBD45E
+CT=B7583A56BED55067A520B4F5E5C1528F
+PT=28874485575E292B0C83E1B568019BF0
+
+I=350
+KEY=6E85086924B19987CF64E80CABC8213A
+IV=3CEFDC726C919CA265CD6C28A05DE542
+CT=28874485575E292B0C83E1B568019BF0
+PT=A35D16BBB96BF3F9E06D96EDA9BB44BB
+
+I=351
+KEY=CDD81ED29DDA6A7E2F097EE102736581
+IV=4AE79901700F018D1E5D95A9FAD762F2
+CT=A35D16BBB96BF3F9E06D96EDA9BB44BB
+PT=367E6880D369D482E7E64CFCD1BCC870
+
+I=352
+KEY=FBA676524EB3BEFCC8EF321DD3CFADF1
+IV=52EEDB058A8E1FE7C651D484F86F941F
+CT=367E6880D369D482E7E64CFCD1BCC870
+PT=32B33E97C94953392A738A964DB121FC
+
+I=353
+KEY=C91548C587FAEDC5E29CB88B9E7E8C0D
+IV=B3704291187E9D55901DD237EC1E2F24
+CT=32B33E97C94953392A738A964DB121FC
+PT=965A9A0C0287AB8535436E95CC9BFB99
+
+I=354
+KEY=5F4FD2C9857D4640D7DFD61E52E57794
+IV=B3878FC256FA4F9ED0BA05FF51C0CE2A
+CT=965A9A0C0287AB8535436E95CC9BFB99
+PT=367A5C93099ACF72353DAC320A3B766E
+
+I=355
+KEY=69358E5A8CE78932E2E27A2C58DE01FA
+IV=774EA78AECAF5A1D7CC1785DE91CAB01
+CT=367A5C93099ACF72353DAC320A3B766E
+PT=116EDEB1D0E6F8D1BB58AF648429B792
+
+I=356
+KEY=785B50EB5C0171E359BAD548DCF7B668
+IV=FB1EC4218C5F733A54DEA7F753F45D68
+CT=116EDEB1D0E6F8D1BB58AF648429B792
+PT=EF3C679822E3A906F380CD07EBE65F09
+
+I=357
+KEY=976737737EE2D8E5AA3A184F3711E961
+IV=8BBE09AFE41C5A78EBA0524212AC570F
+CT=EF3C679822E3A906F380CD07EBE65F09
+PT=291B066A30A3B11681D414A4BB5311D5
+
+I=358
+KEY=BE7C31194E4169F32BEE0CEB8C42F8B4
+IV=4E8F651C06778A964AA7D43999E41FD6
+CT=291B066A30A3B11681D414A4BB5311D5
+PT=764F8FD22FE0BD98852F259EA6DC6F7C
+
+I=359
+KEY=C833BECB61A1D46BAEC129752A9E97C8
+IV=E90A35007EE7F001D1F5982BF2477C82
+CT=764F8FD22FE0BD98852F259EA6DC6F7C
+PT=66016373A6B1A3797A1B2D2B19B73126
+
+I=360
+KEY=AE32DDB8C7107712D4DA045E3329A6EE
+IV=46FF289808B1AF6B290CB5AF05747085
+CT=66016373A6B1A3797A1B2D2B19B73126
+PT=3367064ECF5CA978001887DBDE40DE5A
+
+I=361
+KEY=9D55DBF6084CDE6AD4C28385ED6978B4
+IV=9BAC8819E1CA613CFAA730FBC2034168
+CT=3367064ECF5CA978001887DBDE40DE5A
+PT=5C4F01D47C9DA94DE95FC26763CC1146
+
+I=362
+KEY=C11ADA2274D177273D9D41E28EA569F2
+IV=A5CE34A846E1D0A737963C49FAD6378E
+CT=5C4F01D47C9DA94DE95FC26763CC1146
+PT=D41D854E42863F161E76A2397020C321
+
+I=363
+KEY=15075F6C3657483123EBE3DBFE85AAD3
+IV=2CC823722DD3E8F15035875ED43513E2
+CT=D41D854E42863F161E76A2397020C321
+PT=1C542DC0B54A053471AF583C909AB3C4
+
+I=364
+KEY=095372AC831D4D055244BBE76E1F1917
+IV=9799D03B6AD46BECD981279B35DF707C
+CT=1C542DC0B54A053471AF583C909AB3C4
+PT=958D0254D7AFE1E678A9844DF4F4D18D
+
+I=365
+KEY=9CDE70F854B2ACE32AED3FAA9AEBC89A
+IV=E0E401C7BA5E319F0D60AB765CBEE176
+CT=958D0254D7AFE1E678A9844DF4F4D18D
+PT=C54888169B30587E732BD7213EE5B1A3
+
+I=366
+KEY=5996F8EECF82F49D59C6E88BA40E7939
+IV=711DA6521732E6868111DCC1C835F9DF
+CT=C54888169B30587E732BD7213EE5B1A3
+PT=446F234FCADA809A8B2E167A86C9EB36
+
+I=367
+KEY=1DF9DBA105587407D2E8FEF122C7920F
+IV=B7008BC907C546A56743C292185C2B02
+CT=446F234FCADA809A8B2E167A86C9EB36
+PT=6AD93BC7E18B48810664CD1C528BA6C4
+
+I=368
+KEY=7720E066E4D33C86D48C33ED704C34CB
+IV=4D7DD98183E56F71D72DB76187FC5F95
+CT=6AD93BC7E18B48810664CD1C528BA6C4
+PT=0D75BD2B8683FB819EB7F71E2E0836A7
+
+I=369
+KEY=7A555D4D6250C7074A3BC4F35E44026C
+IV=F4DCFB73BBE7EB5348D56F81BCBC0971
+CT=0D75BD2B8683FB819EB7F71E2E0836A7
+PT=8CBE14862E93FE011A4F45518C7258FA
+
+I=370
+KEY=F6EB49CB4CC33906507481A2D2365A96
+IV=5432FBF1480AA398F09CA5AF375FA394
+CT=8CBE14862E93FE011A4F45518C7258FA
+PT=4026D669905762F0790B6497646A2D4D
+
+I=371
+KEY=B6CD9FA2DC945BF6297FE535B65C77DB
+IV=CA462DC9F029A8311CA45A4116DADC1D
+CT=4026D669905762F0790B6497646A2D4D
+PT=A8CD2E187CF274756E5736D420853435
+
+I=372
+KEY=1E00B1BAA0662F834728D3E196D943EE
+IV=4FC9E7688352F4700C5F380BFD1F4FB2
+CT=A8CD2E187CF274756E5736D420853435
+PT=A99410B60322340E279C87D3D26793AA
+
+I=373
+KEY=B794A10CA3441B8D60B4543244BED044
+IV=4D90B1A30EB7E957FAE3DC8C132F4F42
+CT=A99410B60322340E279C87D3D26793AA
+PT=D136F990196C667EC35E3A0492C39968
+
+I=374
+KEY=66A2589CBA287DF3A3EA6E36D67D492C
+IV=6FAD87F358F0C702C5E9E599093219ED
+CT=D136F990196C667EC35E3A0492C39968
+PT=8CE49C1BAACAB69432DDA2FF4250C7B2
+
+I=375
+KEY=EA46C48710E2CB679137CCC9942D8E9E
+IV=2B6FF495B7E482360E31949C7C9B2E2B
+CT=8CE49C1BAACAB69432DDA2FF4250C7B2
+PT=7942B80F57EA24FA200451B37899F9E2
+
+I=376
+KEY=93047C884708EF9DB1339D7AECB4777C
+IV=21FDC4C9B03A1A9A3F87FF9AAC80FAAE
+CT=7942B80F57EA24FA200451B37899F9E2
+PT=DE156D56E199FDBB2600DBF9FC254003
+
+I=377
+KEY=4D1111DEA6911226973346831091377F
+IV=387612E399C62916B394A9FC6BC0F059
+CT=DE156D56E199FDBB2600DBF9FC254003
+PT=C302C494D910640271695324E64B0992
+
+I=378
+KEY=8E13D54A7F817624E65A15A7F6DA3EED
+IV=34BCABDE4646BCC05CAF7E61CBF1F8D2
+CT=C302C494D910640271695324E64B0992
+PT=110CE84E5B81867CE4FCCD1BBB5FD792
+
+I=379
+KEY=9F1F3D042400F05802A6D8BC4D85E97F
+IV=C7898DA9ABF2A3D364C228A83525B04F
+CT=110CE84E5B81867CE4FCCD1BBB5FD792
+PT=7B94C0E4849AD65291F0F7BD464C544C
+
+I=380
+KEY=E48BFDE0A09A260A93562F010BC9BD33
+IV=00E079EEBC47AF3ED3796DBF4A2B55FC
+CT=7B94C0E4849AD65291F0F7BD464C544C
+PT=D6518596BB53E44452393BD4440D805C
+
+I=381
+KEY=32DA78761BC9C24EC16F14D54FC43D6F
+IV=03E168F8AF2303593E0F936648D253DC
+CT=D6518596BB53E44452393BD4440D805C
+PT=0C4B51FB33380BB215F29F3FCE7CA0DA
+
+I=382
+KEY=3E91298D28F1C9FCD49D8BEA81B89DB5
+IV=15E1ECD59BC092C974FA4738C66D9604
+CT=0C4B51FB33380BB215F29F3FCE7CA0DA
+PT=3FC98D86A558B711807930AAA391C9BF
+
+I=383
+KEY=0158A40B8DA97EED54E4BB402229540A
+IV=303BD4A407015A9E899816E0FABF288D
+CT=3FC98D86A558B711807930AAA391C9BF
+PT=85D77D90C312FE938F6C1983014BD572
+
+I=384
+KEY=848FD99B4EBB807EDB88A2C323628178
+IV=E018FA96FD433CFD162E8E67D4F37015
+CT=85D77D90C312FE938F6C1983014BD572
+PT=4F49C1740EA88B5767CE36C95158DD63
+
+I=385
+KEY=CBC618EF40130B29BC46940A723A5C1B
+IV=84013D3E2AA0C77650644CD6862096A7
+CT=4F49C1740EA88B5767CE36C95158DD63
+PT=E6F1409ABA890AC3A50FC4AAD82E1872
+
+I=386
+KEY=2D375875FA9A01EA194950A0AA144469
+IV=8BFD137593BFF254414349F1147B9BFF
+CT=E6F1409ABA890AC3A50FC4AAD82E1872
+PT=66F6E29696CFDC72EE905636614D2A72
+
+I=387
+KEY=4BC1BAE36C55DD98F7D90696CB596E1B
+IV=8EC295602FB66C4A2DCA65F66B07E010
+CT=66F6E29696CFDC72EE905636614D2A72
+PT=553B45792AE0625B357C4B68A4BB767F
+
+I=388
+KEY=1EFAFF9A46B5BFC3C2A54DFE6FE21864
+IV=5999E221475D06295451E52FF88F9F97
+CT=553B45792AE0625B357C4B68A4BB767F
+PT=FAB6F53166BFDB89DF68D46D423C243E
+
+I=389
+KEY=E44C0AAB200A644A1DCD99932DDE3C5A
+IV=49D1944CBD7BE00C671B8E996F9A3EB9
+CT=FAB6F53166BFDB89DF68D46D423C243E
+PT=308DDB3FE0415C46AE450C78FC5F2558
+
+I=390
+KEY=D4C1D194C04B380CB38895EBD1811902
+IV=9785FEE180794318514967B4199CFB93
+CT=308DDB3FE0415C46AE450C78FC5F2558
+PT=6659969D1BD493A3851E75981BACCCB0
+
+I=391
+KEY=B2984709DB9FABAF3696E073CA2DD5B2
+IV=4FD1DAE14DB75AC0E6C94388805AC3B5
+CT=6659969D1BD493A3851E75981BACCCB0
+PT=B56B950D84DCA131FD8A5E2601037B36
+
+I=392
+KEY=07F3D2045F430A9ECB1CBE55CB2EAE84
+IV=3ED415E7DDDADD2DC7F0376E6CA42EFE
+CT=B56B950D84DCA131FD8A5E2601037B36
+PT=8648F40FA13018563E6F1A799D9FCD91
+
+I=393
+KEY=81BB260BFE7312C8F573A42C56B16315
+IV=FEAF76717C0905A601509BD68C6D08E5
+CT=8648F40FA13018563E6F1A799D9FCD91
+PT=66DE6D7A74B36C7EE2737DA526F5C8CD
+
+I=394
+KEY=E7654B718AC07EB61700D9897044ABD8
+IV=2B808C340320DD64AB9278A9D9A3E247
+CT=66DE6D7A74B36C7EE2737DA526F5C8CD
+PT=9BB0D29CDA21452F60B5897186F3FAFB
+
+I=395
+KEY=7CD599ED50E13B9977B550F8F6B75123
+IV=D2EB48117E2E9FB2058800DE1A442799
+CT=9BB0D29CDA21452F60B5897186F3FAFB
+PT=489CDC3A2C1AE7510E03AE36D5EAB0E5
+
+I=396
+KEY=344945D77CFBDCC879B6FECE235DE1C6
+IV=427765E0671AA6D32634447687E9B209
+CT=489CDC3A2C1AE7510E03AE36D5EAB0E5
+PT=1D65D0E1235AE47DBCC2C65B59892C4C
+
+I=397
+KEY=292C95365FA138B5C57438957AD4CD8A
+IV=D75E9F074D965FE902287B3BB1483315
+CT=1D65D0E1235AE47DBCC2C65B59892C4C
+PT=E75B7AE5A8C3B93F15D0E3EBD04E1B4B
+
+I=398
+KEY=CE77EFD3F762818AD0A4DB7EAA9AD6C1
+IV=5455FD9A01E04E48CA777CF8185697ED
+CT=E75B7AE5A8C3B93F15D0E3EBD04E1B4B
+PT=11F4A35F6C225A9DF1CA6BAF92E11B07
+
+I=399
+KEY=DF834C8C9B40DB17216EB0D1387BCDC6
+IV=3C608F664492626B2208DC92E819411A
+CT=11F4A35F6C225A9DF1CA6BAF92E11B07
+PT=9B8FB71E035CEFF9CBFA1346E5ACEFE0
+
+==========
+
+KEYSIZE=192
+
+I=0
+KEY=000000000000000000000000000000000000000000000000
+IV=00000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=5DF678DD17BA4E75B61768C6ADEF7C7B
+
+I=1
+KEY=8AB601AF30C47B225DF678DD17BA4E75B61768C6ADEF7C7B
+IV=3B243F1A9BA094EE8AB601AF30C47B22
+CT=5DF678DD17BA4E75B61768C6ADEF7C7B
+PT=F9604074F8FA45AC71959888DD056F9F
+
+I=2
+KEY=D443B8E25A882D05A49638A9EF400BD9C782F04E70EA13E4
+IV=467E32A79443B0735EF5B94D6A4C5627
+CT=F9604074F8FA45AC71959888DD056F9F
+PT=98A957EA6DBE623B7E08F919812A3898
+
+I=3
+KEY=5742DCD38C8FD46D3C3F6F4382FE69E2B98A0957F1C02B7C
+IV=B9E1062EEDD9A1ED83016431D607F968
+CT=98A957EA6DBE623B7E08F919812A3898
+PT=AD6D29D6482764BB4BC27A87AE5CD877
+
+I=4
+KEY=B33625F7872DE4A191524695CAD90D59F24873D05F9CF30B
+IV=BD1AAC94D2D39445E474F9240BA230CC
+CT=AD6D29D6482764BB4BC27A87AE5CD877
+PT=DA5EB591FDC48F0D9E4EBD373E5717A3
+
+I=5
+KEY=35DA9F0A5DB187964B0CF304371D82546C06CEE761CBE4A8
+IV=4782561ED717916986ECBAFDDA9C6337
+CT=DA5EB591FDC48F0D9E4EBD373E5717A3
+PT=3F6E771434E26D4FA5A57CEF9DEE05D6
+
+I=6
+KEY=A8182E4F8FD8C7987462841003FFEF1BC9A3B208FC25E17E
+IV=093273C6E96EA5399DC2B145D269400E
+CT=3F6E771434E26D4FA5A57CEF9DEE05D6
+PT=F8FBFC8CBDD4AA8E8DA58DEA7F2F344C
+
+I=7
+KEY=71A581F408C35DA48C99789CBE2B459544063FE2830AD532
+IV=3900E8650CA62A25D9BDAFBB871B9A3C
+CT=F8FBFC8CBDD4AA8E8DA58DEA7F2F344C
+PT=B969AA871D3B35C260D8B36C7E9E8913
+
+I=8
+KEY=BCD0E4B5F0B7FB5035F0D21BA310705724DE8C8EFD945C21
+IV=0E2BCF13C2A18FF5CD756541F874A6F4
+CT=B969AA871D3B35C260D8B36C7E9E8913
+PT=6205EECCDD965D45339A2DFE85F52AD7
+
+I=9
+KEY=A2796321044D9F5557F53CD77E862D121744A170786176F6
+IV=8B935AB4C17D24D21EA98794F4FA6405
+CT=6205EECCDD965D45339A2DFE85F52AD7
+PT=6BC27204DA1B9BC27E463D0E71557D99
+
+I=10
+KEY=AD4506295D5309603C374ED3A49DB6D069029C7E09340B6F
+IV=A9AF68AB4EFDB7770F3C6508591E9635
+CT=6BC27204DA1B9BC27E463D0E71557D99
+PT=DB1576A8F1BD88F73E6938E72F9C6DCD
+
+I=11
+KEY=61ECB6C8660E5E20E722387B55203E27576BA49926A866A2
+IV=DF83746D72419F65CCA9B0E13B5D5740
+CT=DB1576A8F1BD88F73E6938E72F9C6DCD
+PT=150D14977B15FD304890D7B9C4F8536E
+
+I=12
+KEY=03679C91B6C57828F22F2CEC2E35C3171FFB7320E25035CC
+IV=59D101131EA2FD7F628B2A59D0CB2608
+CT=150D14977B15FD304890D7B9C4F8536E
+PT=7AE22B73B412A81D0BCF422C68DA37F8
+
+I=13
+KEY=9A087B9DBC37B12988CD079F9A276B0A1434310C8A8A0234
+IV=F26F03A3C84A49F0996FE70C0AF2C901
+CT=7AE22B73B412A81D0BCF422C68DA37F8
+PT=2D1584CE9B85E7264228A8AFF8FAFF01
+
+I=14
+KEY=07489932E5335B38A5D8835101A28C2C561C99A37270FD35
+IV=E76AB1C798119F5D9D40E2AF5904EA11
+CT=2D1584CE9B85E7264228A8AFF8FAFF01
+PT=C1067030225453E808F1FF324C44BE7F
+
+I=15
+KEY=DC3726E33013BC9964DEF36123F6DFC45EED66913E34434A
+IV=55010D6199E792E3DB7FBFD1D520E7A1
+CT=C1067030225453E808F1FF324C44BE7F
+PT=3AD7DBD96BB69D63BE39B9A16574AC74
+
+I=16
+KEY=EDD4EC10B074A36C5E0928B8484042A7E0D4DF305B40EF3E
+IV=18C6FE6D0A2FDD7E31E3CAF380671FF5
+CT=3AD7DBD96BB69D63BE39B9A16574AC74
+PT=3D5D82A4C06B9DDCCC8A6B8BF228482F
+
+I=17
+KEY=23824573BD3CE30D6354AA1C882BDF7B2C5EB4BBA968A711
+IV=E1DEAECBCFC06BCCCE56A9630D484061
+CT=3D5D82A4C06B9DDCCC8A6B8BF228482F
+PT=C0E5F9618F2FAB97EA82F8164DC89860
+
+I=18
+KEY=AAA43BC528933502A3B1537D070474ECC6DC4CADE4A03F71
+IV=2CE22FDF7E87B7CC89267EB695AFD60F
+CT=C0E5F9618F2FAB97EA82F8164DC89860
+PT=6942155FC9EF8F7CFE37CD6FED03CECF
+
+I=19
+KEY=A2686C442D636D31CAF34622CEEBFB9038EB81C209A3F1BE
+IV=B7772CF7B44B856308CC578105F05833
+CT=6942155FC9EF8F7CFE37CD6FED03CECF
+PT=6BA4C261F5173862A6789FB026099571
+
+I=20
+KEY=29F645A446D84EACA15784433BFCC3F29E931E722FAA64CF
+IV=15CA23A60D99FFF68B9E29E06BBB239D
+CT=6BA4C261F5173862A6789FB026099571
+PT=AA9E8C6497CAC6B0C8CC92F8DFE7B455
+
+I=21
+KEY=5E9165527010387F0BC90827AC360542565F8C8AF04DD09A
+IV=53193227307BBE49776720F636C876D3
+CT=AA9E8C6497CAC6B0C8CC92F8DFE7B455
+PT=7DA426C712E7F2F35087D6AA31CF56AB
+
+I=22
+KEY=92DC0EEE09F5169E766D2EE0BED1F7B106D85A20C1828631
+IV=85A3D20949963F95CC4D6BBC79E52EE1
+CT=7DA426C712E7F2F35087D6AA31CF56AB
+PT=09B9FF5E5833B6CE0010C3D0C4A84C19
+
+I=23
+KEY=C45B938E7C18B4107FD4D1BEE6E2417F06C899F0052ACA28
+IV=292A007187D730B956879D6075EDA28E
+CT=09B9FF5E5833B6CE0010C3D0C4A84C19
+PT=178F7AC0FF63C33683A001F5C4171316
+
+I=24
+KEY=03D99546E931B761685BAB7E1981824985689805C13DD93E
+IV=A8D8CD3B96215FCDC78206C895290371
+CT=178F7AC0FF63C33683A001F5C4171316
+PT=C39B82763CF6901170902BE6DC1B9305
+
+I=25
+KEY=B52384CAC0B230F5ABC0290825771258F5F8B3E31D264A3B
+IV=451968C3AA8D0319B6FA118C29838794
+CT=C39B82763CF6901170902BE6DC1B9305
+PT=85D827F61EC17FD00B10356292C863E2
+
+I=26
+KEY=DCF617A990AC4CBB2E180EFE3BB66D88FEE886818FEE29D9
+IV=575103DAEFD233E269D59363501E7C4E
+CT=85D827F61EC17FD00B10356292C863E2
+PT=535BAC956D5CAB917E1A1BC28E82F28F
+
+I=27
+KEY=14D0FCAFFD961CFD7D43A26B56EAC61980F29D43016CDB56
+IV=7DE780ACCF9F1896C826EB066D3A5046
+CT=535BAC956D5CAB917E1A1BC28E82F28F
+PT=7E73E89F187EA6D5F5A3044A19C85941
+
+I=28
+KEY=AF5BFBC086F1392203304AF44E9460CC7551990918A48217
+IV=633F0251217DECEDBB8B076F7B6725DF
+CT=7E73E89F187EA6D5F5A3044A19C85941
+PT=B0976DFD4F0620203AC4ED89D395BAFF
+
+I=29
+KEY=79FFB93DCF243047B3A72709019240EC4F957480CB3138E8
+IV=C1AAE3E35613DAADD6A442FD49D50965
+CT=B0976DFD4F0620203AC4ED89D395BAFF
+PT=5ECB838EC7F9F2E7ADBD719599F829B9
+
+I=30
+KEY=681F54ADA7685555ED6CA487C66BB20BE228051552C91151
+IV=4F00D9CD31BE1CC611E0ED90684C6512
+CT=5ECB838EC7F9F2E7ADBD719599F829B9
+PT=8DDA96BD88D3D756306D249ABF99F5F9
+
+I=31
+KEY=8663BEBF11817A3060B6323A4EB8655DD245218FED50E4A8
+IV=7CC24DC4B003DE90EE7CEA12B6E92F65
+CT=8DDA96BD88D3D756306D249ABF99F5F9
+PT=479E96E558540B71508FEF3173A6FC68
+
+I=32
+KEY=831519BE48B0021A2728A4DF16EC6E2C82CACEBE9EF618C0
+IV=59FFA792DC8618070576A7015931782A
+CT=479E96E558540B71508FEF3173A6FC68
+PT=080EA053745BEEBDBC5F7D964EEBD2F7
+
+I=33
+KEY=AFC20AF72699543A2F26048C62B780913E95B328D01DCA37
+IV=4E5BDD875324CAC02CD713496E295620
+CT=080EA053745BEEBDBC5F7D964EEBD2F7
+PT=B5A58D345C0260A9E274E2E593B76C44
+
+I=34
+KEY=46AEAF002B9A297E9A8389B83EB5E038DCE151CD43AAA673
+IV=C67419FDA89E68B1E96CA5F70D037D44
+CT=B5A58D345C0260A9E274E2E593B76C44
+PT=5200F2D475CA388841CB0DD02C7EB7F6
+
+I=35
+KEY=1598E4DD7DA3D7B0C8837B6C4B7FD8B09D2A5C1D6FD41185
+IV=9F5C74A1FE2DFF2153364BDD5639FECE
+CT=5200F2D475CA388841CB0DD02C7EB7F6
+PT=B2639C2D26BF2CAF2371CA3A4F3D3476
+
+I=36
+KEY=FE63AA4A158B41AE7AE0E7416DC0F41FBE5B962720E925F3
+IV=2DC59704D531C890EBFB4E976828961E
+CT=B2639C2D26BF2CAF2371CA3A4F3D3476
+PT=C758ADC41E334CCBF34C40E2AEAA3852
+
+I=37
+KEY=86B214FA7F89CE06BDB84A8573F3B8D44D17D6C58E431DA1
+IV=D0982ADEECE45CCC78D1BEB06A028FA8
+CT=C758ADC41E334CCBF34C40E2AEAA3852
+PT=F8E0AA1E780F18A50371CBCB1B63E83F
+
+I=38
+KEY=C0C34A59DC653DCE4558E09B0BFCA0714E661D0E9520F59E
+IV=A252B0F29766A24B46715EA3A3ECF3C8
+CT=F8E0AA1E780F18A50371CBCB1B63E83F
+PT=554B524391A7A1679210CFC0152A65CE
+
+I=39
+KEY=3CF3D7DDFFF704231013B2D89A5B0116DC76D2CE800A9050
+IV=42EE716B821C18FCFC309D84239239ED
+CT=554B524391A7A1679210CFC0152A65CE
+PT=3273E6C51751407B7E4ECDED7970746D
+
+I=40
+KEY=7FCC684C43B958F02260541D8D0A416DA2381F23F97AE43D
+IV=A4FCB2B8AB7158B9433FBF91BC4E5CD3
+CT=3273E6C51751407B7E4ECDED7970746D
+PT=D90B75848AC14ACA3CAD9AF2A15F315F
+
+I=41
+KEY=240724B451241314FB6B219907CB0BA79E9585D15825D562
+IV=5C4FA1918B04D5F85BCB4CF8129D4BE4
+CT=D90B75848AC14ACA3CAD9AF2A15F315F
+PT=753C59B87C45B21D527527C6C2DDEB0D
+
+I=42
+KEY=F0BEECC2DB5D16F98E5778217B8EB9BACCE0A2179AF83E6F
+IV=4E41A4AB69AEE73FD4B9C8768A7905ED
+CT=753C59B87C45B21D527527C6C2DDEB0D
+PT=156E851810ADB0BF2D28B6150D32CAC7
+
+I=43
+KEY=C2FB954C95633B5B9B39FD396B230905E1C8140297CAF4A8
+IV=983906FA7F156CF33245798E4E3E2DA2
+CT=156E851810ADB0BF2D28B6150D32CAC7
+PT=26E671DACE32070A601796207BD045B5
+
+I=44
+KEY=BF0BD4C6DDBE22DABDDF8CE3A5110E0F81DF8222EC1AB11D
+IV=B3188D29356783AF7DF0418A48DD1981
+CT=26E671DACE32070A601796207BD045B5
+PT=ADAD9072859250A8590F6F54C24E5A77
+
+I=45
+KEY=2E4F07AD61768CC010721C9120835EA7D8D0ED762E54EB6A
+IV=639F27016A9D99B99144D36BBCC8AE1A
+CT=ADAD9072859250A8590F6F54C24E5A77
+PT=AC8AD3933D51D5D71CA90FB73A53F6AD
+
+I=46
+KEY=9963998A6F982462BCF8CF021DD28B70C479E2C114071DC7
+IV=B2A3ACB0CE942F13B72C9E270EEEA8A2
+CT=AC8AD3933D51D5D71CA90FB73A53F6AD
+PT=7319F2825648168F07D525618DA9979A
+
+I=47
+KEY=417FD42690AAE310CFE13D804B9A9DFFC3ACC7A099AE8A5D
+IV=EBB0EF7CE1ACF152D81C4DACFF32C772
+CT=7319F2825648168F07D525618DA9979A
+PT=4FC19392439D6CBE6699419355E0590B
+
+I=48
+KEY=30CD3A2A0910C7268020AE120807F141A5358633CC4ED356
+IV=4DCACE79E4C3ADFE71B2EE0C99BA2436
+CT=4FC19392439D6CBE6699419355E0590B
+PT=047FF92A523900A3C46D906163927DDD
+
+I=49
+KEY=F13EE3ACC9C19E4C845F57385A3EF1E261581652AFDCAE8B
+IV=E260680204844E6FC1F3D986C0D1596A
+CT=047FF92A523900A3C46D906163927DDD
+PT=2DAE78D178D069918CCC11D675E09655
+
+I=50
+KEY=91556C720DC982D5A9F12FE922EE9873ED940784DA3C38DE
+IV=A4E4973E74B61315606B8FDEC4081C99
+CT=2DAE78D178D069918CCC11D675E09655
+PT=6315A6A029ED7FC5AB3CD38D8DAE561A
+
+I=51
+KEY=9120A23E63AF3BC2CAE489490B03E7B646A8D40957926EC4
+IV=C02DA24531C794BD0075CE4C6E66B917
+CT=6315A6A029ED7FC5AB3CD38D8DAE561A
+PT=65A796C69B769E59D34AD19803F117C6
+
+I=52
+KEY=5C6847E25C66145DAF431F8F907579EF95E2059154637902
+IV=0D72A6B0F3959C89CD48E5DC3FC92F9F
+CT=65A796C69B769E59D34AD19803F117C6
+PT=70770D19D03DF488FB627F460A225F39
+
+I=53
+KEY=F5ECA4C905FF0EC2DF34129640488D676E807AD75E41263B
+IV=2F60424B5062D978A984E32B59991A9F
+CT=70770D19D03DF488FB627F460A225F39
+PT=C8A66A2CD18286D2148230BAB7D81E11
+
+I=54
+KEY=FF86E251C5EC6129179278BA91CA0BB57A024A6DE999382A
+IV=CC7330AE077936B10A6A4698C0136FEB
+CT=C8A66A2CD18286D2148230BAB7D81E11
+PT=FC0B47BA3E51927A632F457A919818DC
+
+I=55
+KEY=5C0A7344D6FD6983EB993F00AF9B99CF192D0F17780120F6
+IV=CA119AEE5576E06EA38C9115131108AA
+CT=FC0B47BA3E51927A632F457A919818DC
+PT=AEEDB360C58C4CDC7ACE87AA1A4B785B
+
+I=56
+KEY=426948BD499E8A9845748C606A17D51363E388BD624A58AD
+IV=920C491DE39D52501E633BF99F63E31B
+CT=AEEDB360C58C4CDC7ACE87AA1A4B785B
+PT=737ECC4294FF69495DC37DC795EC13CE
+
+I=57
+KEY=F8AD0E545AA212E6360A4022FEE8BC5A3E20F57AF7A64B63
+IV=B975B70450A41A2DBAC446E9133C987E
+CT=737ECC4294FF69495DC37DC795EC13CE
+PT=3E7CDC26CCC69E02D08248224A22961E
+
+I=58
+KEY=C2834233A26DCD8A08769C04322E2258EEA2BD58BD84DD7D
+IV=A88326DC57AB80FC3A2E4C67F8CFDF6C
+CT=3E7CDC26CCC69E02D08248224A22961E
+PT=88177B6502254344A364023BCAD29E79
+
+I=59
+KEY=962D892D6CDED6798061E761300B611C4DC6BF6377564304
+IV=D95CFF470B1796D754AECB1ECEB31BF3
+CT=88177B6502254344A364023BCAD29E79
+PT=A10FA825EB6DA0E242D9A381F607472D
+
+I=60
+KEY=3ADA98C76065214A216E4F44DB66C1FE0F1F1CE281510429
+IV=FBD25798351AF35DACF711EA0CBBF733
+CT=A10FA825EB6DA0E242D9A381F607472D
+PT=6B5EE3A222DF46560A12E91C006D303F
+
+I=61
+KEY=C6AB975CF71B6DDF4A30ACE6F9B987A8050DF5FE813C3416
+IV=6CDB3875008754DAFC710F9B977E4C95
+CT=6B5EE3A222DF46560A12E91C006D303F
+PT=A0047B92A93ACF32138A818B6E32B3EE
+
+I=62
+KEY=FFD0E16A5C955EBAEA34D7745083489A16877475EF0E87F8
+IV=F7061CA37B11E445397B7636AB8E3365
+CT=A0047B92A93ACF32138A818B6E32B3EE
+PT=1707FC063700E98FF5FDA98A07A8A1C7
+
+I=63
+KEY=AA71EC7061FA246CFD332B726783A115E37ADDFFE8A6263F
+IV=1853E27FC0689E6755A10D1A3D6F7AD6
+CT=1707FC063700E98FF5FDA98A07A8A1C7
+PT=06320FA4C0E2F42B364B991243FA053D
+
+I=64
+KEY=D8685685696CBF5CFB0124D6A761553ED53144EDAB5C2302
+IV=E19A3BEC7EBCA3C87219BAF508969B30
+CT=06320FA4C0E2F42B364B991243FA053D
+PT=BB70503E9715D653710C0630211755A7
+
+I=65
+KEY=28C2AFFA406EF763407174E83074836DA43D42DD8A4B76A5
+IV=5F3BCA36562AFA82F0AAF97F2902483F
+CT=BB70503E9715D653710C0630211755A7
+PT=D632FEF42560770DF318C570AFC85285
+
+I=66
+KEY=260B8E0723E9AF3D96438A1C1514F460572587AD25832420
+IV=328A42D3898A81C20EC921FD6387585E
+CT=D632FEF42560770DF318C570AFC85285
+PT=B1C847FFF455D002E55FCFAF4A4F69A4
+
+I=67
+KEY=F39D3CD6A68DC6BC278BCDE3E1412462B27A48026FCC4D84
+IV=C89E7B4C1BAED0FAD596B2D185646981
+CT=B1C847FFF455D002E55FCFAF4A4F69A4
+PT=9C484252E1FE52CD2DFCCAA3E0118F07
+
+I=68
+KEY=61A9714C87B94F27BBC38FB100BF76AF9F8682A18FDDC283
+IV=56B7D716EC6F9A6D92344D9A2134899B
+CT=9C484252E1FE52CD2DFCCAA3E0118F07
+PT=85A142323B9877E86F3A5874EA613E87
+
+I=69
+KEY=B504BE17C673E81F3E62CD833B270147F0BCDAD565BCFC04
+IV=BEF2C82884510475D4ADCF5B41CAA738
+CT=85A142323B9877E86F3A5874EA613E87
+PT=53D0EF74268F55C1B6CA84415E5A2F6F
+
+I=70
+KEY=1A63CC27BE45C5106DB222F71DA8548646765E943BE6D36B
+IV=CC958CC3874510F0AF67723078362D0F
+CT=53D0EF74268F55C1B6CA84415E5A2F6F
+PT=7B7DB0F3EFAD244FFCC6991452001DF6
+
+I=71
+KEY=4B17520C49F46EAF16CF9204F20570C9BAB0C78069E6CE9D
+IV=48D7C0690532AFCC51749E2BF7B1ABBF
+CT=7B7DB0F3EFAD244FFCC6991452001DF6
+PT=DD0661DCA2BE8C20E95B3A84CCACDB10
+
+I=72
+KEY=1ADE412393310021CBC9F3D850BBFCE953EBFD04A54A158D
+IV=4B96B2D0CCADFF7D51C9132FDAC56E8E
+CT=DD0661DCA2BE8C20E95B3A84CCACDB10
+PT=E505435777F3781121A4A374684E3268
+
+I=73
+KEY=493467065AE405B82ECCB08F274884F8724F5E70CD0427E5
+IV=1E8116EB95B94AFC53EA2625C9D50599
+CT=E505435777F3781121A4A374684E3268
+PT=EF4B4E997DA0DCCBDBB36C020D03E8B5
+
+I=74
+KEY=4C94816DF6EBDEF5C187FE165AE85833A9FC3272C007CF50
+IV=29094410F6017E5805A0E66BAC0FDB4D
+CT=EF4B4E997DA0DCCBDBB36C020D03E8B5
+PT=FA9BAB377C654ED894024BEBDCED2FA0
+
+I=75
+KEY=697A0BC179C07A633B1C5521268D16EB3DFE79991CEAE0F0
+IV=83DD12597A405FB725EE8AAC8F2BA496
+CT=FA9BAB377C654ED894024BEBDCED2FA0
+PT=DD1FDA63382552D007F6F8E995820640
+
+I=76
+KEY=D40786ED2A6C15E8E6038F421EA8443B3A0881708968E6B0
+IV=2F3AE5594D9CCEDCBD7D8D2C53AC6F8B
+CT=DD1FDA63382552D007F6F8E995820640
+PT=C5FF0EB50BA651F436D0566385860ADA
+
+I=77
+KEY=9D47680C0159F69A23FC81F7150E15CF0CD8D7130CEEEC6A
+IV=1BCFAD6802C41B9A4940EEE12B35E372
+CT=C5FF0EB50BA651F436D0566385860ADA
+PT=67AE61A77D77CBFD48C080B21313BBAB
+
+I=78
+KEY=86E61E031542D2DB4452E0506879DE32441857A11FFD57C1
+IV=3DF4DA1F65C739511BA1760F141B2441
+CT=67AE61A77D77CBFD48C080B21313BBAB
+PT=68C8512217CB9C3BBF28011FA5BED044
+
+I=79
+KEY=4F93757DE614CB1D2C9AB1727FB24209FB3056BEBA438785
+IV=B2C15424EF4E4637C9756B7EF35619C6
+CT=68C8512217CB9C3BBF28011FA5BED044
+PT=233898C850826172965695499748A1B0
+
+I=80
+KEY=C56E54BBB54B22CC0FA229BA2F30237B6D66C3F72D0B2635
+IV=DC2FF5992D9383EF8AFD21C6535FE9D1
+CT=233898C850826172965695499748A1B0
+PT=70069F5E963A820D640B40697BD24716
+
+I=81
+KEY=A1EF05CB5AAE7A977FA4B6E4B90AA176096D839E56D96123
+IV=EE8CB982124A394C64815170EFE5585B
+CT=70069F5E963A820D640B40697BD24716
+PT=B136CA2EF42A9CFF53410554B28A8F65
+
+I=82
+KEY=ACEC084A8CED2F4FCE927CCA4D203D895A2C86CAE453EE46
+IV=515D8B6C167EC8570D030D81D64355D8
+CT=B136CA2EF42A9CFF53410554B28A8F65
+PT=123600CD1B5A664430413021DDC8CBBE
+
+I=83
+KEY=8325A9391B4E106ADCA47C07567A5BCD6A6DB6EB399B25F8
+IV=5A55A24EC8154E532FC9A17397A33F25
+CT=123600CD1B5A664430413021DDC8CBBE
+PT=8ECCA03E10D415557C4E7D92DDBFD791
+
+I=84
+KEY=DB877966BE0E84575268DC3946AE4E981623CB79E424F269
+IV=659705F3774E141758A2D05FA540943D
+CT=8ECCA03E10D415557C4E7D92DDBFD791
+PT=CB70B675AC6BF92237F1C479516E7E6A
+
+I=85
+KEY=59027658DEC2B5DE99186A4CEAC5B7BA21D20F00B54A8C03
+IV=C9B803CE2D57D26F82850F3E60CC3189
+CT=CB70B675AC6BF92237F1C479516E7E6A
+PT=5D99D06E9BEB82AB1CE22201E8467DBC
+
+I=86
+KEY=652E430F984201E0C481BA22712E35113D302D015D0CF1BF
+IV=1838FACBEAC13CF73C2C35574680B43E
+CT=5D99D06E9BEB82AB1CE22201E8467DBC
+PT=11D7AED0B552D62677DEB874BF7CF8ED
+
+I=87
+KEY=8377A2C11B73082DD55614F2C47CE3374AEE9575E2700952
+IV=068170C7E11427DFE659E1CE833109CD
+CT=11D7AED0B552D62677DEB874BF7CF8ED
+PT=74B108D32ABE8401D22F2C3FB008F670
+
+I=88
+KEY=7B89A5C45B0A22BBA1E71C21EEC2673698C1B94A5278FF22
+IV=5283DAD6FA2B605DF8FE070540792A96
+CT=74B108D32ABE8401D22F2C3FB008F670
+PT=7883BD8C4DA81C21C4A5847AD801B7AE
+
+I=89
+KEY=101261A4D23FDA13D964A1ADA36A7B175C643D308A79488C
+IV=E2ED92DE4829CB526B9BC4608935F8A8
+CT=7883BD8C4DA81C21C4A5847AD801B7AE
+PT=C865B27C21F6F6E681759C318607D2B9
+
+I=90
+KEY=E6A6A13B7A64EB51110113D1829C8DF1DD11A1010C7E9A35
+IV=AB325AD4F1FF1C52F6B4C09FA85B3142
+CT=C865B27C21F6F6E681759C318607D2B9
+PT=E31D7AC0E8ADB302BC6C23A0B1D693ED
+
+I=91
+KEY=64D366C4F61E139BF21C69116A313EF3617D82A1BDA809D8
+IV=A5201D1770A12A898275C7FF8C7AF8CA
+CT=E31D7AC0E8ADB302BC6C23A0B1D693ED
+PT=CAE6A97EE64228EEEF02E135944C5C62
+
+I=92
+KEY=B006CEF05093DE2238FAC06F8C73161D8E7F639429E455BA
+IV=62BD7E3EA22E26BAD4D5A834A68DCDB9
+CT=CAE6A97EE64228EEEF02E135944C5C62
+PT=B7AEF117099F799BB0752C7260A2DFB5
+
+I=93
+KEY=160AFF18C06B6C4A8F54317885EC6F863E0A4FE649468A0F
+IV=AEBB967838133F64A60C31E890F8B268
+CT=B7AEF117099F799BB0752C7260A2DFB5
+PT=81CCC6EDAD41D9C7986D4E175C71551D
+
+I=94
+KEY=21112CBE896259CE0E98F79528ADB641A66701F11537DF12
+IV=B695BBE7FA331039371BD3A649093584
+CT=81CCC6EDAD41D9C7986D4E175C71551D
+PT=9039E01C6485040A2EDAF4C27FE93870
+
+I=95
+KEY=60272333C1B4CCC39EA117894C28B24B88BDF5336ADEE762
+IV=4EE830907337D60241360F8D48D6950D
+CT=9039E01C6485040A2EDAF4C27FE93870
+PT=44D359DBE4BE436D5133CD81B72DB5C7
+
+I=96
+KEY=25C676A781511A98DA724E52A896F126D98E38B2DDF352A5
+IV=38491C9FD517260445E1559440E5D65B
+CT=44D359DBE4BE436D5133CD81B72DB5C7
+PT=7B47F95ED30563BE218E40DB4EAAE836
+
+I=97
+KEY=59A7B7512B5DC429A135B70C7B939298F80078699359BA93
+IV=1FD8B8BA8B0492E67C61C1F6AA0CDEB1
+CT=7B47F95ED30563BE218E40DB4EAAE836
+PT=C417F6A6824B165D4C26D631F77E45AC
+
+I=98
+KEY=82E6CF234BC0AA10652241AAF9D884C5B426AE586427FF3F
+IV=5FB017B65FE4AF34DB417872609D6E39
+CT=C417F6A6824B165D4C26D631F77E45AC
+PT=41EC9A06B318A4D06636ED5403F46CB7
+
+I=99
+KEY=82D69A1D747CF6E024CEDBAC4AC02015D210430C67D39388
+IV=1CC1F56321366F420030553E3FBC5CF0
+CT=41EC9A06B318A4D06636ED5403F46CB7
+PT=38E467F81D919F0A1704E9F5CDF4D5FC
+
+I=100
+KEY=29EFCA26B9C67E141C2ABC545751BF1FC514AAF9AA274674
+IV=A83BDBF4326AE806AB39503BCDBA88F4
+CT=38E467F81D919F0A1704E9F5CDF4D5FC
+PT=A08359A20D6F405018F8180A3E8D0FD1
+
+I=101
+KEY=AB20AC8C3C5DA5BEBCA9E5F65A3EFF4FDDECB2F394AA49A5
+IV=A14B10E1A998B04E82CF66AA859BDBAA
+CT=A08359A20D6F405018F8180A3E8D0FD1
+PT=A16C303138057144A3ECA63E7398DC93
+
+I=102
+KEY=86C5E861B9CEAF041DC5D5C7623B8E0B7E0014CDE7329536
+IV=181D943EA950561D2DE544ED85930ABA
+CT=A16C303138057144A3ECA63E7398DC93
+PT=EA1A2E30D890D01979D2BCE1EBE6C922
+
+I=103
+KEY=90321C401E4B6B30F7DFFBF7BAAB5E1207D2A82C0CD45C14
+IV=12BDB944D898BC5A16F7F421A785C434
+CT=EA1A2E30D890D01979D2BCE1EBE6C922
+PT=C0D620FCF33031DAD617ADBE8F6D13AC
+
+I=104
+KEY=84964C3B41FE8E4F3709DB0B499B6FC8D1C5059283B94FB8
+IV=0615AD27B29C55F814A4507B5FB5E57F
+CT=C0D620FCF33031DAD617ADBE8F6D13AC
+PT=EC4B9AEDBE44C4B74B693D08AA1D175A
+
+I=105
+KEY=6C6361F2C87BC168DB4241E6F7DFAB7F9AAC389A29A458E2
+IV=E79F33FFCD79681CE8F52DC989854F27
+CT=EC4B9AEDBE44C4B74B693D08AA1D175A
+PT=F34D426225ADEC3BD2580BF21EF24B3E
+
+I=106
+KEY=FDA3FB79F1A16865280F0384D272474448F43368375613DC
+IV=1DFE18B10032D35F91C09A8B39DAA90D
+CT=F34D426225ADEC3BD2580BF21EF24B3E
+PT=E14841B0D0CC1E698DE8053B9F1621E1
+
+I=107
+KEY=562D3BF792909255C947423402BE592DC51C3653A840323D
+IV=247A46C43AE54F1FAB8EC08E6331FA30
+CT=E14841B0D0CC1E698DE8053B9F1621E1
+PT=D21381B5032426EC3582BBD23739E04E
+
+I=108
+KEY=9D375E6E32C30A801B54C381019A7FC1F09E8D819F79D273
+IV=E05018C26DC38BBDCB1A6599A05398D5
+CT=D21381B5032426EC3582BBD23739E04E
+PT=82034FF505FE67B94373770348A934E5
+
+I=109
+KEY=7D1A900B515478DB99578C7404641878B3EDFA82D7D0E696
+IV=498AEA38AB55250CE02DCE656397725B
+CT=82034FF505FE67B94373770348A934E5
+PT=018B5B1787138D222F6B39C1291ECD2C
+
+I=110
+KEY=E74B55A39F67C54298DCD7638377955A9C86C343FECE2BBA
+IV=DD89DF396236F9A59A51C5A8CE33BD99
+CT=018B5B1787138D222F6B39C1291ECD2C
+PT=CABCB7EA14E821726602272A46CEB825
+
+I=111
+KEY=D3FFFE0F27D9200352606089979FB428FA84E469B800939F
+IV=A707D154BAC28BDC34B4ABACB8BEE541
+CT=CABCB7EA14E821726602272A46CEB825
+PT=0840D09DF2B14ED4B340D32101D68A54
+
+I=112
+KEY=485EC313821A37095A20B014652EFAFC49C43748B9D619CB
+IV=ADEF6A8A49BF208B9BA13D1CA5C3170A
+CT=0840D09DF2B14ED4B340D32101D68A54
+PT=5EB0166FB04AF38F9EA60929FD641844
+
+I=113
+KEY=E841074638A154D90490A67BD5640973D7623E6144B2018F
+IV=B1956D86A4F79E40A01FC455BABB63D0
+CT=5EB0166FB04AF38F9EA60929FD641844
+PT=2ECBDAFBD0336A436D89FC12944750EC
+
+I=114
+KEY=17E86798DB7A64E42A5B7C8005576330BAEBC273D0F55163
+IV=0AFFE19CA1425218FFA960DEE3DB303D
+CT=2ECBDAFBD0336A436D89FC12944750EC
+PT=A326D8C07EF7A21302A3C6A9C67C371A
+
+I=115
+KEY=D1A6F2AB7C130A60897DA4407BA0C123B84804DA16896679
+IV=6F630069CD0333BDC64E9533A7696E84
+CT=A326D8C07EF7A21302A3C6A9C67C371A
+PT=6D06DDFB9B12A71298E32318F582EF72
+
+I=116
+KEY=C7D58104581CB5C5E47B79BBE0B2663120AB27C2E30B890B
+IV=80E47BA8410247C5167373AF240FBFA5
+CT=6D06DDFB9B12A71298E32318F582EF72
+PT=E1391A50F140E255A9B2E628F25B9B1D
+
+I=117
+KEY=00D8EEC433F7D68E054263EB11F284648919C1EA11501216
+IV=96F652822C5D4496C70D6FC06BEB634B
+CT=E1391A50F140E255A9B2E628F25B9B1D
+PT=1418A2DC8D6DBA4942932D6944011D8A
+
+I=118
+KEY=71D444358CCCF986115AC1379C9F3E2DCB8AEC8355510F9C
+IV=410374DE0D8A79FA710CAAF1BF3B2F08
+CT=1418A2DC8D6DBA4942932D6944011D8A
+PT=A70A2C48CF5786868844274B8C493C56
+
+I=119
+KEY=B9FD9626EC74A129B650ED7F53C8B8AB43CECBC8D91833CA
+IV=8362FAE290801C25C829D21360B858AF
+CT=A70A2C48CF5786868844274B8C493C56
+PT=3484BA42558B199E8477B8F8280CDE91
+
+I=120
+KEY=94CAEE912A7B443582D4573D0643A135C7B97330F114ED5B
+IV=F6ABE3F0A7FFC9E02D3778B7C60FE51C
+CT=3484BA42558B199E8477B8F8280CDE91
+PT=5D79433F85C7D4C258487080E340F049
+
+I=121
+KEY=1D2F762CF08FAE0ADFAD1402838475F79FF103B012541D12
+IV=A0C57652FBF9107C89E598BDDAF4EA3F
+CT=5D79433F85C7D4C258487080E340F049
+PT=C51891EA2E68BC60E84912A91F470201
+
+I=122
+KEY=9E691D03A3AEB6491AB585E8ADECC99777B811190D131F13
+IV=8426C338234DB9E183466B2F53211843
+CT=C51891EA2E68BC60E84912A91F470201
+PT=F946FD67DD7F92A7A6B93B4F71F70243
+
+I=123
+KEY=61EA6FD274C07ADDE3F3788F70935B30D1012A567CE41D50
+IV=2C2AF70B07E9E6F9FF8372D1D76ECC94
+CT=F946FD67DD7F92A7A6B93B4F71F70243
+PT=B4CB0EFF14F8CDC693CC8E7DCEE8E0B0
+
+I=124
+KEY=84F27E5BF8B55DA657387670646B96F642CDA42BB20CFDE0
+IV=693782638B439464E51811898C75277B
+CT=B4CB0EFF14F8CDC693CC8E7DCEE8E0B0
+PT=EF6DDB56AAE9CFFE128FB3776DD94D20
+
+I=125
+KEY=5B1111EADAECDD73B855AD26CE8259085042175CDFD5B0C0
+IV=A14AAEF7A1BF063BDFE36FB1225980D5
+CT=EF6DDB56AAE9CFFE128FB3776DD94D20
+PT=4ACC6AF28293A647093AE788BA778835
+
+I=126
+KEY=A924DC707FB16DF1F299C7D44C11FF4F5978F0D465A238F5
+IV=3F7E73BFA24B0C02F235CD9AA55DB082
+CT=4ACC6AF28293A647093AE788BA778835
+PT=5A7989DC61AD6B66B3E83A29168BEDB9
+
+I=127
+KEY=164FBEF9EBAEEF03A8E04E082DBC9429EA90CAFD7329D54C
+IV=2FB4F1A000B78156BF6B6289941F82F2
+CT=5A7989DC61AD6B66B3E83A29168BEDB9
+PT=246A94AB8488B39C52DE68E8CA5AE0D2
+
+I=128
+KEY=B1F4A368B64A78EC8C8ADAA3A93427B5B84EA215B973359E
+IV=5D178EC8305B804FA7BB1D915DE497EF
+CT=246A94AB8488B39C52DE68E8CA5AE0D2
+PT=F7C758F8DC8FC0891907EBBF299F70B8
+
+I=129
+KEY=9161A39C256814AA7B4D825B75BBE73CA14949AA90EC4526
+IV=C87E61A9434EB29F209500F493226C46
+CT=F7C758F8DC8FC0891907EBBF299F70B8
+PT=E2D82C5506BEFA7D7BF032E4C72141CF
+
+I=130
+KEY=0BFDA1B2CF4B15199995AE0E73051D41DAB97B4E57CD04E9
+IV=5D00992780D9832B9A9C022EEA2301B3
+CT=E2D82C5506BEFA7D7BF032E4C72141CF
+PT=F3A0DF1793FC88117E87478FD9E5A1A8
+
+I=131
+KEY=F8F5F6016FECDCAF6A357119E0F99550A43E3CC18E28A541
+IV=2800EECA83EB078CF30857B3A0A7C9B6
+CT=F3A0DF1793FC88117E87478FD9E5A1A8
+PT=BEB572C53E9985218ED9012BAB4A9F5B
+
+I=132
+KEY=84F3E0D153E140D6D48003DCDE6010712AE73DEA25623A1A
+IV=E2BEAF80F4A1DDA27C0616D03C0D9C79
+CT=BEB572C53E9985218ED9012BAB4A9F5B
+PT=7F4B21C4B7466149CB890B77AC538752
+
+I=133
+KEY=B69E5A72FE9B1B85ABCB221869267138E16E369D8931BD48
+IV=FE0A667B9B2BDD29326DBAA3AD7A5B53
+CT=7F4B21C4B7466149CB890B77AC538752
+PT=4B239C8F83F0A10DC6A3497CC3CF9C8E
+
+I=134
+KEY=0BCF87D2538E0EADE0E8BE97EAD6D03527CD7FE14AFE21C6
+IV=878250C5EA7834CFBD51DDA0AD151528
+CT=4B239C8F83F0A10DC6A3497CC3CF9C8E
+PT=89F2B4B8C5AB2988CDEA61F4D4A1BCD4
+
+I=135
+KEY=97A4FDCD2E0C993E691A0A2F2F7DF9BDEA271E159E5F9D12
+IV=95E34D44C3E2FE319C6B7A1F7D829793
+CT=89F2B4B8C5AB2988CDEA61F4D4A1BCD4
+PT=C622E28004842564F193C0E58AB40FCB
+
+I=136
+KEY=38F0A45980CEF0B9AF38E8AF2BF9DCD91BB4DEF014EB92D9
+IV=1BC195727D154539AF545994AEC26987
+CT=C622E28004842564F193C0E58AB40FCB
+PT=DF360FBC1607BCC1E6EE9088AEE62EC7
+
+I=137
+KEY=6638E0333D7A6765700EE7133DFE6018FD5A4E78BA0DBC1E
+IV=F0AB65A69AA4486A5EC8446ABDB497DC
+CT=DF360FBC1607BCC1E6EE9088AEE62EC7
+PT=9A8E5BFE223FA9D747164FC1C98B9CDC
+
+I=138
+KEY=5103611D32D7A1EFEA80BCED1FC1C9CFBA4C01B9738620C2
+IV=A6617B5DA41B2A32373B812E0FADC68A
+CT=9A8E5BFE223FA9D747164FC1C98B9CDC
+PT=F0143DD4EC3A85F9FA4D5579BD7268A1
+
+I=139
+KEY=64FD310AF27CF98C1A948139F3FB4C36400154C0CEF44863
+IV=EBCB744B477F25E635FE5017C0AB5863
+CT=F0143DD4EC3A85F9FA4D5579BD7268A1
+PT=C5C1FED629BF81EE343E4DAEE6BC4D44
+
+I=140
+KEY=9390B012FA7D48D9DF557FEFDA44CDD8743F196E28480527
+IV=7AF352D33C08F3FEF76D81180801B155
+CT=C5C1FED629BF81EE343E4DAEE6BC4D44
+PT=26C4460F0B79E16263C38C240C276E5C
+
+I=141
+KEY=F578E5DF6818CB58F99139E0D13D2CBA17FC954A246F6B7B
+IV=05DA148A4EB4D12966E855CD92658381
+CT=26C4460F0B79E16263C38C240C276E5C
+PT=E0E249ADB3A39EE2BB48959426874123
+
+I=142
+KEY=F23F67282BAFE10E1973704D629EB258ACB400DE02E82A58
+IV=7748B1652DE54EF9074782F743B72A56
+CT=E0E249ADB3A39EE2BB48959426874123
+PT=C2299AAE24C941DC44E5D492BC492FED
+
+I=143
+KEY=5CAC16BD99EC5067DB5AEAE34657F384E851D44CBEA105B5
+IV=4F599B9C20378305AE937195B243B169
+CT=C2299AAE24C941DC44E5D492BC492FED
+PT=780DA1D6FD961DA4756375A15B8BA620
+
+I=144
+KEY=9FF7C1766F7F6F9FA3574B35BBC1EE209D32A1EDE52AA395
+IV=044A8C7FFE220414C35BD7CBF6933FF8
+CT=780DA1D6FD961DA4756375A15B8BA620
+PT=E63FE8BE6566E9ECCCDBEC442BCCCBD5
+
+I=145
+KEY=3EA408C4CD15E6F24568A38BDEA707CC51E94DA9CEE66840
+IV=05DE81CD5892F1FEA153C9B2A26A896D
+CT=E63FE8BE6566E9ECCCDBEC442BCCCBD5
+PT=19F5E5DDDF0F6FABA9B16B732C6058B8
+
+I=146
+KEY=29FF0DD567A810385C9D465601A86867F85826DAE28630F8
+IV=0A2A8BF3BE53E2B5175B0511AABDF6CA
+CT=19F5E5DDDF0F6FABA9B16B732C6058B8
+PT=41FCD9F8972431F43669863F37B4A18C
+
+I=147
+KEY=842E4C2F46849E731D619FAE968C5993CE31A0E5D5329174
+IV=1EABD419CA4C0D0BADD141FA212C8E4B
+CT=41FCD9F8972431F43669863F37B4A18C
+PT=9857CFE1CFE1046F88DF3EB8ECC92E40
+
+I=148
+KEY=8EE3344CCB9DE2038536504F596D5DFC46EE9E5D39FBBF34
+IV=FA266CF1AF82A2250ACD78638D197C70
+CT=9857CFE1CFE1046F88DF3EB8ECC92E40
+PT=DE4C55865FB82BDA1FC0D024791C1B22
+
+I=149
+KEY=DEEEC86215A6098D5B7A05C906D57626592E4E7940E7A416
+IV=F9B4CFCA36A1B0AB500DFC2EDE3BEB8E
+CT=DE4C55865FB82BDA1FC0D024791C1B22
+PT=077F866BF30097D12650855C71B7DB9C
+
+I=150
+KEY=50872D11A2E463D65C0583A2F5D5E1F77F7ECB2531507F8A
+IV=53D4E4CE2C06FCC38E69E573B7426A5B
+CT=077F866BF30097D12650855C71B7DB9C
+PT=670BBCB81CDE03B883D9B784124F5851
+
+I=151
+KEY=7DE3AF7C8550901C3B0E3F1AE90BE24FFCA77CA1231F27DB
+IV=C26330B1219C4B4A2D64826D27B4F3CA
+CT=670BBCB81CDE03B883D9B784124F5851
+PT=D6141C300F5E5119E1B5F4BBF415A6DD
+
+I=152
+KEY=BB126D64220A8DB9ED1A232AE655B3561D12881AD70A8106
+IV=74D773D0F053239CC6F1C218A75A1DA5
+CT=D6141C300F5E5119E1B5F4BBF415A6DD
+PT=8F742130206F1047FE9CAAE4F2C31B19
+
+I=153
+KEY=9845C3A02214A55D626E021AC63AA311E38E22FE25C99A1F
+IV=7EC0B4E8BD4BD3EB2357AEC4001E28E4
+CT=8F742130206F1047FE9CAAE4F2C31B19
+PT=47D0D28AF3164CC77FBAB5C015CAC1C9
+
+I=154
+KEY=BBC47FAB874E0ED425BED090352CEFD69C34973E30035BD6
+IV=833EC00D894BD8502381BC0BA55AAB89
+CT=47D0D28AF3164CC77FBAB5C015CAC1C9
+PT=3202B04CFC260747BF839FF754A01E26
+
+I=155
+KEY=BCC028DA5F286DE017BC60DCC90AE89123B708C964A345F0
+IV=8BCC8079D2175F4407045771D8666334
+CT=3202B04CFC260747BF839FF754A01E26
+PT=75E9FBADAD8885FB2398427EE94C5899
+
+I=156
+KEY=352B0CD3E3BA0EB462559B7164826D6A002F4AB78DEF1D69
+IV=0B159F18C1F33EA389EB2409BC926354
+CT=75E9FBADAD8885FB2398427EE94C5899
+PT=90DA906982058C84D2E75B5DAE0EA756
+
+I=157
+KEY=6F32D4393B37EA77F28F0B18E687E1EED2C811EA23E1BA3F
+IV=2F5C35DA76038E4F5A19D8EAD88DE4C3
+CT=90DA906982058C84D2E75B5DAE0EA756
+PT=705C22072FDFB807A49BAE0FD4D254AF
+
+I=158
+KEY=5740616769DDF57482D3291FC95859E97653BFE5F733EE90
+IV=B276B0CE56828D683872B55E52EA1F03
+CT=705C22072FDFB807A49BAE0FD4D254AF
+PT=A966EE217CF2BDBC17A0BB55AE769FEB
+
+I=159
+KEY=C9E379BDBC05CC402BB5C73EB5AAE45561F304B05945717B
+IV=E1F41EF2147CB5CE9EA318DAD5D83934
+CT=A966EE217CF2BDBC17A0BB55AE769FEB
+PT=239D761F1F0437935464C4959546B6BB
+
+I=160
+KEY=7B2C4F503FCC91AE0828B121AAAED3C63597C025CC03C7C0
+IV=6F90097C7822030DB2CF36ED83C95DEE
+CT=239D761F1F0437935464C4959546B6BB
+PT=499477B6476BA58CAEF81290ABDD46C4
+
+I=161
+KEY=42BC1C4F29D1801D41BCC697EDC5764A9B6FD2B567DE8104
+IV=1571EE53AE1ACAEF3990531F161D11B3
+CT=499477B6476BA58CAEF81290ABDD46C4
+PT=ACC1FB947EB4C7F115871859CD254D96
+
+I=162
+KEY=9BE24C041BF4DEECED7D3D039371B1BB8EE8CAECAAFBCC92
+IV=E24F4DBEF2122A73D95E504B32255EF1
+CT=ACC1FB947EB4C7F115871859CD254D96
+PT=85DC9D7ADF342B0733CF9812CFD58F0A
+
+I=163
+KEY=83BEBEB5727649F268A1A0794C459ABCBD2752FE652E4398
+IV=AF0690E77B1F140B185CF2B16982971E
+CT=85DC9D7ADF342B0733CF9812CFD58F0A
+PT=7ED8B4DCBD1D13BEA5C819E99ECF75AA
+
+I=164
+KEY=7020802D561D88AD167914A5F158890218EF4B17FBE13632
+IV=F0AC93D8DDD31D5BF39E3E98246BC15F
+CT=7ED8B4DCBD1D13BEA5C819E99ECF75AA
+PT=C81F0464C2DE212229370C7A4ED2E890
+
+I=165
+KEY=39F8EA2D638410ABDE6610C13386A82031D8476DB533DEA2
+IV=FD6338FAE6F6B00B49D86A0035999806
+CT=C81F0464C2DE212229370C7A4ED2E890
+PT=23A0FA99C632BCC62A035A09514C3EBA
+
+I=166
+KEY=52FA33F30EFD8D0FFDC6EA58F5B414E61BDB1D64E47FE018
+IV=04C6E0136D8E04C16B02D9DE6D799DA4
+CT=23A0FA99C632BCC62A035A09514C3EBA
+PT=9F7F1081AE4B6AD51D395D764D2D5B68
+
+I=167
+KEY=95C21BD9257B233A62B9FAD95BFF7E3306E24012A952BB70
+IV=72410E03AAE65889C738282A2B86AE35
+CT=9F7F1081AE4B6AD51D395D764D2D5B68
+PT=5F088092968BF4AF04BF862A6721DF2B
+
+I=168
+KEY=058F749326AE1DD53DB17A4BCD748A9C025DC638CE73645B
+IV=D678325E266D12D7904D6F4A03D53EEF
+CT=5F088092968BF4AF04BF862A6721DF2B
+PT=15670F60D1D70E129418AC14A425DD70
+
+I=169
+KEY=23D2D59C5EF4AF3D28D6752B1CA3848E96456A2C6A56B92B
+IV=BB7B672A91E9A61A265DA10F785AB2E8
+CT=15670F60D1D70E129418AC14A425DD70
+PT=3273AC9D250F729AE790A941739C79BF
+
+I=170
+KEY=E11B1F94517914C81AA5D9B639ACF61471D5C36D19CAC094
+IV=AB84F623EFA11728C2C9CA080F8DBBF5
+CT=3273AC9D250F729AE790A941739C79BF
+PT=9B135880CB56A8E6CF3A364CC6E02175
+
+I=171
+KEY=66F867085DBE626581B68136F2FA5EF2BEEFF521DF2AE1E1
+IV=01ED899C8DC9C09E87E3789C0CC776AD
+CT=9B135880CB56A8E6CF3A364CC6E02175
+PT=681D6FC5447CCFE1152156CFF6172B6A
+
+I=172
+KEY=98505FCD27DAB39EE9ABEEF3B6869113ABCEA3EE293DCA8B
+IV=A58C8285C31035B1FEA838C57A64D1FB
+CT=681D6FC5447CCFE1152156CFF6172B6A
+PT=6E30DF3FBD67A5FD491E315EF3A268A0
+
+I=173
+KEY=9F904A41C19B57A9879B31CC0BE134EEE2D092B0DA9FA22B
+IV=6F46DCB3A84FD96907C0158CE641E437
+CT=6E30DF3FBD67A5FD491E315EF3A268A0
+PT=5B4980E24D8F9CABE017991326FBBE95
+
+I=174
+KEY=A330D5A6779731D6DCD2B12E466EA84502C70BA3FC641CBE
+IV=C5BDAB77E0CA95463CA09FE7B60C667F
+CT=5B4980E24D8F9CABE017991326FBBE95
+PT=7324530BF94BD80D286C9BE2FE4113D3
+
+I=175
+KEY=20F008DE76D7968AAFF6E225BF2570482AAB904102250F6D
+IV=32F5EC4AEBB997C583C0DD780140A75C
+CT=7324530BF94BD80D286C9BE2FE4113D3
+PT=B163425AB21DF6AFBD2C7000E777E902
+
+I=176
+KEY=0F48153B232E71F41E95A07F0D3886E79787E041E552E66F
+IV=3D1854E0C481B28E2FB81DE555F9E77E
+CT=B163425AB21DF6AFBD2C7000E777E902
+PT=EB1A6C86C3811E3081325F35BA7F2DCA
+
+I=177
+KEY=96EE2134FD40CA34F58FCCF9CEB998D716B5BF745F2DCBA5
+IV=8629366A8B8E266499A6340FDE6EBBC0
+CT=EB1A6C86C3811E3081325F35BA7F2DCA
+PT=E9675AF0035C3F8E9D5E58D0652BF5C7
+
+I=178
+KEY=BF754C828BFE309B1CE89609CDE5A7598BEBE7A43A063E62
+IV=566D5FCEC3FF7D43299B6DB676BEFAAF
+CT=E9675AF0035C3F8E9D5E58D0652BF5C7
+PT=24B4DA85EEFAA123948C6B5E0E07EB08
+
+I=179
+KEY=F0223B4AF5C885B4385C4C8C231F067A1F678CFA3401D56A
+IV=67B98EC651B057104F5777C87E36B52F
+CT=24B4DA85EEFAA123948C6B5E0E07EB08
+PT=753CFEBBB9E623453B8BB2976B8D7BD4
+
+I=180
+KEY=04665169E091DEF74D60B2379AF9253F24EC3E6D5F8CAEBE
+IV=BC3806A9E56A1DACF4446A2315595B43
+CT=753CFEBBB9E623453B8BB2976B8D7BD4
+PT=6949284723B4F795D530B366FAE70876
+
+I=181
+KEY=9CABB1CFD4E46F8324299A70B94DD2AAF1DC8D0BA56BA6C8
+IV=8C864563BB8D45A098CDE0A63475B174
+CT=6949284723B4F795D530B366FAE70876
+PT=D43FED9A25C62349787F0336BFFBBFEB
+
+I=182
+KEY=4407065E88AE79D9F01677EA9C8BF1E389A38E3D1A901923
+IV=539CC5888B34198FD8ACB7915C4A165A
+CT=D43FED9A25C62349787F0336BFFBBFEB
+PT=030733E175916579F582A778B261DA1C
+
+I=183
+KEY=84D1EE80E8FA54DEF311440BE91A949A7C212945A8F1C33F
+IV=78306F4F56DEF759C0D6E8DE60542D07
+CT=030733E175916579F582A778B261DA1C
+PT=F7B1ABE4B4AE3CB726F9A88B06D4552A
+
+I=184
+KEY=E885BEA6176A75D804A0EFEF5DB4A82D5AD881CEAE259615
+IV=3AC80B78F744208A6C545026FF902106
+CT=F7B1ABE4B4AE3CB726F9A88B06D4552A
+PT=DA984A2C346A4B758E066EB509079168
+
+I=185
+KEY=2E0317B2DB3F9893DE38A5C369DEE358D4DEEF7BA722077D
+IV=FC74E03B1068A6FEC686A914CC55ED4B
+CT=DA984A2C346A4B758E066EB509079168
+PT=21F473636EF27B91F29BB1CE67908763
+
+I=186
+KEY=850E1B37E1F7DD89FFCCD6A0072C98C926455EB5C0B2801E
+IV=7DFD76EE7EF97796AB0D0C853AC8451A
+CT=21F473636EF27B91F29BB1CE67908763
+PT=9EEF6E211CC8EDBD3C4FBE3E14B13C70
+
+I=187
+KEY=655D365D66CAA5C36123B8811BE475741A0AE08BD403BC6E
+IV=33318C04CC0B3CBDE0532D6A873D784A
+CT=9EEF6E211CC8EDBD3C4FBE3E14B13C70
+PT=8AB49333CA7B2E58E7B24536BB34DEE7
+
+I=188
+KEY=BE3C315647F981DCEB972BB2D19F5B2CFDB8A5BD6F376289
+IV=79D06A0D66B5C2B1DB61070B2133241F
+CT=8AB49333CA7B2E58E7B24536BB34DEE7
+PT=323D1E775FD729005DA7A2853A855ED4
+
+I=189
+KEY=3126E544A65724C4D9AA35C58E48722CA01F073855B23C5D
+IV=CC5C9D95685AF1228F1AD412E1AEA518
+CT=323D1E775FD729005DA7A2853A855ED4
+PT=E283016FEDADEBA2BEC7ADB5A8DEA8B9
+
+I=190
+KEY=BCF052AFAFA4852D3B2934AA63E5998E1ED8AA8DFD6C94E4
+IV=2753144E0A26D9FE8DD6B7EB09F3A1E9
+CT=E283016FEDADEBA2BEC7ADB5A8DEA8B9
+PT=9A9BB977D53BBD47550DC60A49AFA0FA
+
+I=191
+KEY=ECB724A85CBC7B58A1B28DDDB6DE24C94BD56C87B4C3341E
+IV=27F910046A94AA3B50477607F318FE75
+CT=9A9BB977D53BBD47550DC60A49AFA0FA
+PT=AF4C7AC3B02C1B077E8F97B59AE52A21
+
+I=192
+KEY=BCA9E9794F9004AB0EFEF71E06F23FCE355AFB322E261E3F
+IV=8AF06705FE272571501ECDD1132C7FF3
+CT=AF4C7AC3B02C1B077E8F97B59AE52A21
+PT=A97DEE2A64DFA7C198B6A4F21E80F7DF
+
+I=193
+KEY=10DCC14B9A309E25A7831934622D980FADEC5FC030A6E9E0
+IV=B04E1C6FC657B8AEAC752832D5A09A8E
+CT=A97DEE2A64DFA7C198B6A4F21E80F7DF
+PT=34E8228A24C7A16F9ED3F4B9A94AA70D
+
+I=194
+KEY=9CB6EE6AAEFAFBED936B3BBE46EA3960333FAB7999EC4EED
+IV=6A966EBB8F80A1608C6A2F2134CA65C8
+CT=34E8228A24C7A16F9ED3F4B9A94AA70D
+PT=99E6CA896906CBAA9B8D01155D1DB162
+
+I=195
+KEY=461916712E8BD6F10A8DF1372FECF2CAA8B2AA6CC4F1FF8F
+IV=EAF849974783FAA7DAAFF81B80712D1C
+CT=99E6CA896906CBAA9B8D01155D1DB162
+PT=6009B53EB4690C1F1F10639F1FD7640A
+
+I=196
+KEY=5B9B91A966F9CE146A8444099B85FED5B7A2C9F3DB269B85
+IV=3FB045D182F781EB1D8287D8487218E5
+CT=6009B53EB4690C1F1F10639F1FD7640A
+PT=88ED4BC34A27F4C4B480B99857EBF541
+
+I=197
+KEY=404F7D8B0E966F02E2690FCAD1A20A110322706B8CCD6EC4
+IV=49C0F4571BAEBE4C1BD4EC22686FA116
+CT=88ED4BC34A27F4C4B480B99857EBF541
+PT=B88F0E3E01FEDF97766AC6B762D2EBC3
+
+I=198
+KEY=CB2EA99F330A3A865AE601F4D05CD5867548B6DCEE1F8507
+IV=2518DA0D88C02EC38B61D4143D9C5584
+CT=B88F0E3E01FEDF97766AC6B762D2EBC3
+PT=C1C167FF37E89937DCB8D79C9BC9EC74
+
+I=199
+KEY=913C795CF72CD1219B27660BE7B44CB1A9F0614075D66973
+IV=37769A59390261FB5A12D0C3C426EBA7
+CT=C1C167FF37E89937DCB8D79C9BC9EC74
+PT=64D912270A1E60192CDAAD8168219E56
+
+I=200
+KEY=05F19DF919E44144FFFE742CEDAA2CA8852ACCC11DF7F725
+IV=63E9D4D1BDD7FEAD94CDE4A5EEC89065
+CT=64D912270A1E60192CDAAD8168219E56
+PT=C9AD2DBB1C686A67A3E21A5659576A2B
+
+I=201
+KEY=099D0DCE5E4E194236535997F1C246CF26C8D69744A09D0E
+IV=A01E3F917EF4652F0C6C903747AA5806
+CT=C9AD2DBB1C686A67A3E21A5659576A2B
+PT=244C740B4B136C6C480D0147163868D1
+
+I=202
+KEY=EA1F242E9C75C712121F2D9CBAD12AA36EC5D7D05298F5DF
+IV=C9D2288C473BCB3EE38229E0C23BDE50
+CT=244C740B4B136C6C480D0147163868D1
+PT=A6B125A9C570CC3ECBB5D302ADB96E34
+
+I=203
+KEY=CD5D7C91FBDC81A1B4AE08357FA1E69DA57004D2FF219BEB
+IV=871F525F8ED73B7F274258BF67A946B3
+CT=A6B125A9C570CC3ECBB5D302ADB96E34
+PT=0F9862A4A21E1FB365135C07577FB3EE
+
+I=204
+KEY=F7D9B8C22BDC8005BB366A91DDBFF92EC06358D5A85E2805
+IV=01BB0A9A8737C19D3A84C453D00001A4
+CT=0F9862A4A21E1FB365135C07577FB3EE
+PT=D833DB436E1751B882D03FADF683690B
+
+I=205
+KEY=83F81E3CED72F22F6305B1D2B3A8A89642B367785EDD410E
+IV=80E0E7001CCA60CA7421A6FEC6AE722A
+CT=D833DB436E1751B882D03FADF683690B
+PT=0AE2C64D2C577C420F26F2F48AA58D62
+
+I=206
+KEY=63310E5F2F8F0E0769E7779F9FFFD4D44D95958CD478CC6C
+IV=57E54995CDC9417DE0C91063C2FDFC28
+CT=0AE2C64D2C577C420F26F2F48AA58D62
+PT=B0E2976AA3891A2C71AFEB063E3C4383
+
+I=207
+KEY=F3AE2989B3980DC9D905E0F53C76CEF83C3A7E8AEA448FEF
+IV=999DD6C2B1C528E2909F27D69C1703CE
+CT=B0E2976AA3891A2C71AFEB063E3C4383
+PT=16F8A305177ECDBA15403FE5D8EEF60D
+
+I=208
+KEY=52CF17D8DEA4CE5ACFFD43F02B080342297A416F32AA79E2
+IV=C9F5BC961057F845A1613E516D3CC393
+CT=16F8A305177ECDBA15403FE5D8EEF60D
+PT=A607A3EE165E82711B30B44CF4E0C4CF
+
+I=209
+KEY=E22ADE79E75FE58E69FAE01E3D568133324AF523C64ABD2D
+IV=E153F25DD207351AB0E5C9A139FB2BD4
+CT=A607A3EE165E82711B30B44CF4E0C4CF
+PT=5191CDD0D077AD6BE956AF8E8E39FECA
+
+I=210
+KEY=38C58EA4EA1E8D4C386B2DCEED212C58DB1C5AAD487343E7
+IV=F55357187F06B142DAEF50DD0D4168C2
+CT=5191CDD0D077AD6BE956AF8E8E39FECA
+PT=F63A42508522E5F09C31F160298E8E6F
+
+I=211
+KEY=8C29CD4F1330EF25CE516F9E6803C9A8472DABCD61FDCD88
+IV=2CBD520E6F6F89C7B4EC43EBF92E6269
+CT=F63A42508522E5F09C31F160298E8E6F
+PT=E58ED2EA8671DC5D527CDE01C6D9655D
+
+I=212
+KEY=3650C9671F38CD752BDFBD74EE7215F5155175CCA724A8D5
+IV=73CA969AECA5574BBA7904280C082250
+CT=E58ED2EA8671DC5D527CDE01C6D9655D
+PT=5FFCACC68357B6709F5B10D48C65EA40
+
+I=213
+KEY=6F68A078A75FF5A1742311B26D25A3858A0A65182B414295
+IV=DEA2D7D8F9FE3E7D5938691FB86738D4
+CT=5FFCACC68357B6709F5B10D48C65EA40
+PT=10BBA695F25C1F9412DB80F59F937F84
+
+I=214
+KEY=9E08E5F9EEC5A7606498B7279F79BC1198D1E5EDB4D23D11
+IV=20E4DE61513233E5F1604581499A52C1
+CT=10BBA695F25C1F9412DB80F59F937F84
+PT=36CAF539734BCAF8250595E5E5DB3E94
+
+I=215
+KEY=F72A5636B3A2D23B5252421EEC3276E9BDD4700851090385
+IV=9DEBE05128A2A1A06922B3CF5D67755B
+CT=36CAF539734BCAF8250595E5E5DB3E94
+PT=C64074C9A34850C6FD1B12CD8AE9EF30
+
+I=216
+KEY=D74FABF587AB10AA941236D74F7A262F40CF62C5DBE0ECB5
+IV=DEF3A637247B78C02065FDC33409C291
+CT=C64074C9A34850C6FD1B12CD8AE9EF30
+PT=DF663CE4199BC64ACB9B6F99D69EC679
+
+I=217
+KEY=8D12BAEA80612A284B740A3356E1E0658B540D5C0D7E2ACC
+IV=7D9C0365E66F1A355A5D111F07CA3A82
+CT=DF663CE4199BC64ACB9B6F99D69EC679
+PT=CD1BCBDCE7F8C008177E25B83604EE83
+
+I=218
+KEY=57B4196767474175866FC1EFB119206D9C2A28E43B7AC44F
+IV=41846FA05FC28ABCDAA6A38DE7266B5D
+CT=CD1BCBDCE7F8C008177E25B83604EE83
+PT=CD7E96FE44368C4AD22E9D4F6BE3C2C2
+
+I=219
+KEY=CBA15BF34D728F0E4B115711F52FAC274E04B5AB5099068D
+IV=873A6522E20108C09C1542942A35CE7B
+CT=CD7E96FE44368C4AD22E9D4F6BE3C2C2
+PT=BCC88D6EAF2E41D9AA6E7C91DADCF92E
+
+I=220
+KEY=D3071140E7C7E244F7D9DA7F5A01EDFEE46AC93A8A45FFA3
+IV=A50F782EA949C2A718A64AB3AAB56D4A
+CT=BCC88D6EAF2E41D9AA6E7C91DADCF92E
+PT=1FFD3EC8E0D0AD8F3D23961703C0C445
+
+I=221
+KEY=3F44AB6E12394D24E824E4B7BAD14071D9495F2D89853BE6
+IV=501500DC8A97D00BEC43BA2EF5FEAF60
+CT=1FFD3EC8E0D0AD8F3D23961703C0C445
+PT=1D3D85A9A4BF101E12CC79640D716AC6
+
+I=222
+KEY=D6B97A7D0CEBEA71F519611E1E6E506FCB85264984F45120
+IV=84933D2D2F1F6C13E9FDD1131ED2A755
+CT=1D3D85A9A4BF101E12CC79640D716AC6
+PT=A2228D0483F9CF74CAA301FD30D7DB68
+
+I=223
+KEY=E86CCBF22BAF7B31573BEC1A9D979F1B012627B4B4238A48
+IV=4AE5BFEB7168981E3ED5B18F27449140
+CT=A2228D0483F9CF74CAA301FD30D7DB68
+PT=D43E1D2C7447B7C08BCA25F8371AEECF
+
+I=224
+KEY=0279786975DB97998305F136E9D028DB8AEC024C83396487
+IV=2FC19D77503C0296EA15B39B5E74ECA8
+CT=D43E1D2C7447B7C08BCA25F8371AEECF
+PT=4F97B6C0B7D10763CD5CE3A45855FEC0
+
+I=225
+KEY=7F842708B71AD43BCC9247F65E012FB847B0E1E8DB6C9A47
+IV=BAC3ED277430C4537DFD5F61C2C143A2
+CT=4F97B6C0B7D10763CD5CE3A45855FEC0
+PT=067B1521895AE654CA0C20492A9714B8
+
+I=226
+KEY=2FA21F709793A1C7CAE952D7D75BC9EC8DBCC1A1F1FB8EFF
+IV=66014BDC0AD70ABB50263878208975FC
+CT=067B1521895AE654CA0C20492A9714B8
+PT=E07E7A1D3F39E45E3A755A82EE3C2EBC
+
+I=227
+KEY=671468BAD93EDBD32A9728CAE8622DB2B7C99B231FC7A043
+IV=47BFF88E3EC2E8DC48B677CA4EAD7A14
+CT=E07E7A1D3F39E45E3A755A82EE3C2EBC
+PT=0933D51670E8918147A56816B838BC74
+
+I=228
+KEY=9749A2F6B448445023A4FDDC988ABC33F06CF335A7FF1C37
+IV=58F8C33F4725EED2F05DCA4C6D769F83
+CT=0933D51670E8918147A56816B838BC74
+PT=E90570CDFC2CDCC99826780CA7CD7A1C
+
+I=229
+KEY=C43D753C2489B403CAA18D1164A660FA684A8B390032662B
+IV=C4027E5BF29E96A65374D7CA90C1F053
+CT=E90570CDFC2CDCC99826780CA7CD7A1C
+PT=65B6C303491459554CDDA630AAB36C12
+
+I=230
+KEY=32F2C804DF89C908AF174E122DB239AF24972D09AA810A39
+IV=51DE94724DCE9B10F6CFBD38FB007D0B
+CT=65B6C303491459554CDDA630AAB36C12
+PT=A0B1694685785EFBDD6DB8E4FC312BC4
+
+I=231
+KEY=9431549183D690920FA62754A8CA6754F9FA95ED56B021FD
+IV=5CBDC9F06F45D2F5A6C39C955C5F599A
+CT=A0B1694685785EFBDD6DB8E4FC312BC4
+PT=C271A8F639D1A293F4B8899428F618C2
+
+I=232
+KEY=0AA1211F2A2134DACDD78FA2911BC5C70D421C797E46393F
+IV=E52D7ACAF5DFAF799E90758EA9F7A448
+CT=C271A8F639D1A293F4B8899428F618C2
+PT=AB7968C2A1859D5AEBFAEB201910B672
+
+I=233
+KEY=88BFBDDC6D21FC0E66AEE760309E589DE6B8F75967568F4D
+IV=15AF9C49191BF995821E9CC34700C8D4
+CT=AB7968C2A1859D5AEBFAEB201910B672
+PT=59D394BB9C41BE21C050A9DF2DD94C2B
+
+I=234
+KEY=05AB922FA8B6F5FF3F7D73DBACDFE6BC26E85E864A8FC366
+IV=0FB568270892E7A98D142FF3C59709F1
+CT=59D394BB9C41BE21C050A9DF2DD94C2B
+PT=43F89BAE0DCCB0EAF30411E6239A753C
+
+I=235
+KEY=7A7ED7932DED53767C85E875A1135656D5EC4F606915B65A
+IV=48F1E1DAEE9C16CD7FD545BC855BA689
+CT=43F89BAE0DCCB0EAF30411E6239A753C
+PT=8196A2F49E2508443F86B294D71A5D5E
+
+I=236
+KEY=8955F595C21BF3AAFD134A813F365E12EA6AFDF4BE0FEB04
+IV=B3DEB1ED557CB477F32B2206EFF6A0DC
+CT=8196A2F49E2508443F86B294D71A5D5E
+PT=5ED45F8741E7FC5C77CAACA9D3DFA26D
+
+I=237
+KEY=09205C9C2A528A5BA3C715067ED1A24E9DA0515D6DD04969
+IV=3742941BC0992AAC8075A909E84979F1
+CT=5ED45F8741E7FC5C77CAACA9D3DFA26D
+PT=F60C9F9616A03B40655CB733EE1C3B68
+
+I=238
+KEY=46DAA0A9A034745355CB8A906871990EF8FCE66E83CC7201
+IV=A3E1EA7D9E5BA6CE4FFAFC358A66FE08
+CT=F60C9F9616A03B40655CB733EE1C3B68
+PT=E73F7E14A3A245B1E594F659D996ED06
+
+I=239
+KEY=DA145A69C9D459E1B2F4F484CBD3DCBF1D6810375A5A9F07
+IV=F5D4EB0EAB3486D29CCEFAC069E02DB2
+CT=E73F7E14A3A245B1E594F659D996ED06
+PT=52651C2039168170765B235D85BF6CEC
+
+I=240
+KEY=61CD045E05969B9FE091E8A4F2C55DCF6B33336ADFE5F3EB
+IV=F7162437A85A186ABBD95E37CC42C27E
+CT=52651C2039168170765B235D85BF6CEC
+PT=665C920C4BB95B5C716D60AE9C30DB1B
+
+I=241
+KEY=BDF9F289D095660D86CD7AA8B97C06931A5E53C443D528F0
+IV=ADD7416105DB0CF0DC34F6D7D503FD92
+CT=665C920C4BB95B5C716D60AE9C30DB1B
+PT=F6E1D36CF7D41F70885587A85B897EA2
+
+I=242
+KEY=4CBAF7692571D8C5702CA9C44EA819E3920BD46C185C5652
+IV=9FBF3815905FCD9FF14305E0F5E4BEC8
+CT=F6E1D36CF7D41F70885587A85B897EA2
+PT=137DB7F20F98671E37F55E401D0482E2
+
+I=243
+KEY=CEBF572BB09CC72963511E3641307EFDA5FE8A2C0558D4B0
+IV=0C3951BDCA9582CA8205A04295ED1FEC
+CT=137DB7F20F98671E37F55E401D0482E2
+PT=72125C79A48573158496EFCC5CA552D4
+
+I=244
+KEY=0D8978CF8179CBBF1143424FE5B50DE8216865E059FD8664
+IV=898422AB0DB951B1C3362FE431E50C96
+CT=72125C79A48573158496EFCC5CA552D4
+PT=6B12016832DE435A963FFFA857824CF7
+
+I=245
+KEY=180D2DA794FEAF777A514327D76B4EB2B7579A480E7FCA93
+IV=0B47A508EAD8008015845568158764C8
+CT=6B12016832DE435A963FFFA857824CF7
+PT=18693A241FB5687CF3A793B9B7EE4B15
+
+I=246
+KEY=3D6C36453DCA611462387903C8DE26CE44F009F1B9918186
+IV=857CC19C3E72C1AD25611BE2A934CE63
+CT=18693A241FB5687CF3A793B9B7EE4B15
+PT=4E04BD363AFC26BDDD3D98892A7C705A
+
+I=247
+KEY=8B626E8D8E075BCE2C3CC435F222007399CD917893EDF1DC
+IV=6E4FCD034F6E2AF5B60E58C8B3CD3ADA
+CT=4E04BD363AFC26BDDD3D98892A7C705A
+PT=06FB2C371C3F54518AA0A2766CE1CCF3
+
+I=248
+KEY=A5ECEB5BAE22C2E72AC7E802EE1D5422136D330EFF0C3D2F
+IV=4A23E1EFBB43855E2E8E85D620259929
+CT=06FB2C371C3F54518AA0A2766CE1CCF3
+PT=D7DE2C298EB1EF273A6386986BDEC555
+
+I=249
+KEY=B25537EEFD5BDA7AFD19C42B60ACBB05290EB59694D2F87A
+IV=9034BBDBF74A369E17B9DCB55379189D
+CT=D7DE2C298EB1EF273A6386986BDEC555
+PT=0F4A1CEA83DA845DEC063ADFF173F424
+
+I=250
+KEY=39FEF1C45697DABCF253D8C1E3763F58C5088F4965A10C5E
+IV=2B5EF64E50A2CF5F8BABC62AABCC00C6
+CT=0F4A1CEA83DA845DEC063ADFF173F424
+PT=CE27F8AF55009D3658D166B960CA12D6
+
+I=251
+KEY=5657BBA1106032F13C74206EB676A26E9DD9E9F0056B1E88
+IV=CE96953F749BBFD66FA94A6546F7E84D
+CT=CE27F8AF55009D3658D166B960CA12D6
+PT=BF1458E052637EFC0EEF352621606029
+
+I=252
+KEY=A1BC53DEFD62921A8360788EE415DC929336DCD6240B7EA1
+IV=B944FC42142E4940F7EBE87FED02A0EB
+CT=BF1458E052637EFC0EEF352621606029
+PT=E4D96706DB5B0DA8FA429BB65BFBE4D8
+
+I=253
+KEY=DAC8C0328BA4104167B91F883F4ED13A697447607FF09A79
+IV=A8D8E3A3BB687ECC7B7493EC76C6825B
+CT=E4D96706DB5B0DA8FA429BB65BFBE4D8
+PT=1B11FF1367FE94F7759D1BEC40B8FDCC
+
+I=254
+KEY=03AE3AA5E62CA4927CA8E09B58B045CD1CE95C8C3F4867B5
+IV=35D7DB1466E14E3ED966FA976D88B4D3
+CT=1B11FF1367FE94F7759D1BEC40B8FDCC
+PT=0989D688C947C616AC13B63892E35E74
+
+I=255
+KEY=EAD5A60BB601C1147521361391F783DBB0FAEAB4ADAB39C1
+IV=59BA56CC11EFA9A2E97B9CAE502D6586
+CT=0989D688C947C616AC13B63892E35E74
+PT=978C150575871FB2C8847AA0CB092108
+
+I=256
+KEY=C608EE8A971A0383E2AD2316E4709C69787E901466A218C9
+IV=253A79448D79B0B72CDD4881211BC297
+CT=978C150575871FB2C8847AA0CB092108
+PT=D08629CCCF6B869B10768DE9E2984B2E
+
+I=257
+KEY=D8EB4FC4230D3E39322B0ADA2B1B1AF268081DFD843A53E7
+IV=E9A7FDB26A37B6601EE3A14EB4173DBA
+CT=D08629CCCF6B869B10768DE9E2984B2E
+PT=E320AECF3803401AB95E09EB50A6EDA5
+
+I=258
+KEY=E3F18E12233B5A30D10BA41513185AE8D1561416D49CBE42
+IV=4C6B62E3E6658BE73B1AC1D600366409
+CT=E320AECF3803401AB95E09EB50A6EDA5
+PT=D29E97683C9989C75D5D73EAADC23EE2
+
+I=259
+KEY=7D9DEAA58D97A2FC0395337D2F81D32F8C0B67FC795E80A0
+IV=414A2961119CE4D79E6C64B7AEACF8CC
+CT=D29E97683C9989C75D5D73EAADC23EE2
+PT=8D859D878DF32FDD26AF4984D48A1BD2
+
+I=260
+KEY=E4A19E3554E8D73B8E10AEFAA272FCF2AAA42E78ADD49B72
+IV=9DF8066FCF854065993C7490D97F75C7
+CT=8D859D878DF32FDD26AF4984D48A1BD2
+PT=7B524B71439722F0555D4681F7EEAAC9
+
+I=261
+KEY=0C93CDDA4435E903F542E58BE1E5DE02FFF968F95A3A31BB
+IV=9529BF1B1ACEEDA5E83253EF10DD3E38
+CT=7B524B71439722F0555D4681F7EEAAC9
+PT=8C8ECC9829F06F73497EA90D48CD7FC5
+
+I=262
+KEY=637747C6EF7B72B579CC2913C815B171B687C1F412F74E7E
+IV=ADC9666D259469516FE48A1CAB4E9BB6
+CT=8C8ECC9829F06F73497EA90D48CD7FC5
+PT=6E416C2563212821F0D8E7D75297B11F
+
+I=263
+KEY=7E4BB22E1A7C4E25178D4536AB349950465F26234060FF61
+IV=C3BE9A54FDDA99731D3CF5E8F5073C90
+CT=6E416C2563212821F0D8E7D75297B11F
+PT=EFC73DFA5FB87EA16284E25D22360C2F
+
+I=264
+KEY=62B7D329DC5EA208F84A78CCF48CE7F124DBC47E6256F34E
+IV=E2145312DF24CBDB1CFC6107C622EC2D
+CT=EFC73DFA5FB87EA16284E25D22360C2F
+PT=1191FC5E2EFA9F19004C7D00E1F4D8B1
+
+I=265
+KEY=039B0E1DE399831EE9DB8492DA7678E82497B97E83A22BFF
+IV=0931D0D100EEB87D612CDD343FC72116
+CT=1191FC5E2EFA9F19004C7D00E1F4D8B1
+PT=717B1B902086B97296B7E97BC01C259E
+
+I=266
+KEY=CB02B3C8CA4A0C9498A09F02FAF0C19AB220500543BE0E61
+IV=65D0C1DFC85C7FB9C899BDD529D38F8A
+CT=717B1B902086B97296B7E97BC01C259E
+PT=569097DA8C43871CC5A55AC150ABCD31
+
+I=267
+KEY=5FFAEE959D35C247CE3008D876B3468677850AC41315C350
+IV=7A4A448600ACA08994F85D5D577FCED3
+CT=569097DA8C43871CC5A55AC150ABCD31
+PT=4046F3DF53DFC1B56400501F08200FE0
+
+I=268
+KEY=0CA33FAAA4B25FEB8E76FB07256C873313855ADB1B35CCB0
+IV=C83E2121AA25A5295359D13F39879DAC
+CT=4046F3DF53DFC1B56400501F08200FE0
+PT=87C5362AAF3F31B05C92189E38FD9C66
+
+I=269
+KEY=5B782B675EE9A8A509B3CD2D8A53B6834F17424523C850D6
+IV=567E0CD5EAFC699457DB14CDFA5BF74E
+CT=87C5362AAF3F31B05C92189E38FD9C66
+PT=03A5CD79734810F4D9559FDC97A4B1A1
+
+I=270
+KEY=B069B5DCAADA727F0A160054F91BA6779642DD99B46CE177
+IV=5397ED8A6DF7641EEB119EBBF433DADA
+CT=03A5CD79734810F4D9559FDC97A4B1A1
+PT=1B1ECDDFD726C66594DF7B050F6758FF
+
+I=271
+KEY=52477DE5EFBAE2621108CD8B2E3D6012029DA69CBB0BB988
+IV=52151355DA4369C8E22EC8394560901D
+CT=1B1ECDDFD726C66594DF7B050F6758FF
+PT=26E9A7A560DD36D9767A51DA06301BBD
+
+I=272
+KEY=6E59FF11BED37F8837E16A2E4EE056CB74E7F746BD3BA235
+IV=FB1A5F8FA1C3D1F43C1E82F451699DEA
+CT=26E9A7A560DD36D9767A51DA06301BBD
+PT=C2FAB5CDDB329F2EA1E1459251A3CB1B
+
+I=273
+KEY=504DE2EC58CE17BBF51BDFE395D2C9E5D506B2D4EC98692E
+IV=6BCD90C4D648AB783E141DFDE61D6833
+CT=C2FAB5CDDB329F2EA1E1459251A3CB1B
+PT=4293D0A26E81DBE9FED6113B1954D59F
+
+I=274
+KEY=CC6C6C4150E763AAB7880F41FB53120C2BD0A3EFF5CCBCB1
+IV=0F61DAA62B7E95A79C218EAD08297411
+CT=4293D0A26E81DBE9FED6113B1954D59F
+PT=5DC81F054088DB9B3D1F8AD4BACC2039
+
+I=275
+KEY=BD3B4967A596578FEA401044BBDBC99716CF293B4F009C88
+IV=0C6435697122955071572526F5713425
+CT=5DC81F054088DB9B3D1F8AD4BACC2039
+PT=B6FB950586C671E968FFC709B79E8AF8
+
+I=276
+KEY=9A08B753E07CD6535CBB85413D1DB87E7E30EE32F89E1670
+IV=377A670B7487B3EB2733FE3445EA81DC
+CT=B6FB950586C671E968FFC709B79E8AF8
+PT=ED69B1E52F5F095EFF0AC73A76039B65
+
+I=277
+KEY=E5FAA83242346B4EB1D234A41242B120813A29088E9D8D15
+IV=DBEEED8784AD80B57FF21F61A248BD1D
+CT=ED69B1E52F5F095EFF0AC73A76039B65
+PT=FBC0C9A6FBC2CCD02BF5A009B43FE903
+
+I=278
+KEY=44770F6B1653E2754A12FD02E9807DF0AACF89013AA26416
+IV=7D9B061A6209E0FAA18DA7595467893B
+CT=FBC0C9A6FBC2CCD02BF5A009B43FE903
+PT=ADBE2B6C2C979C90E019991C5E81F69E
+
+I=279
+KEY=89A3B49BBE885D34E7ACD66EC517E1604AD6101D64239288
+IV=5495C29E4DDA4E26CDD4BBF0A8DBBF41
+CT=ADBE2B6C2C979C90E019991C5E81F69E
+PT=E382D6611C0B2591BE9B7B6BC66D479D
+
+I=280
+KEY=457D838277C2797B042E000FD91CC4F1F44D6B76A24ED515
+IV=0303BB8A65CCE419CCDE3719C94A244F
+CT=E382D6611C0B2591BE9B7B6BC66D479D
+PT=7A39D5BFC7ADB6B7539A1AA45A31A7E5
+
+I=281
+KEY=814AD70FBAF9D8AA7E17D5B01EB17246A7D771D2F87F72F0
+IV=550BD125E57ADE94C437548DCD3BA1D1
+CT=7A39D5BFC7ADB6B7539A1AA45A31A7E5
+PT=3CB8FF426FF48FA93EFAEDC559833C86
+
+I=282
+KEY=89599F584B46337342AF2AF27145FDEF992D9C17A1FC4E76
+IV=45800DE7659A8FD008134857F1BFEBD9
+CT=3CB8FF426FF48FA93EFAEDC559833C86
+PT=2F5C7660310DE65B1C5254E2176A15CA
+
+I=283
+KEY=8EF84BDE14C7412B6DF35C9240481BB4857FC8F5B6965BBC
+IV=5142FFEADEC300C107A1D4865F817258
+CT=2F5C7660310DE65B1C5254E2176A15CA
+PT=7A3056742CF8CFDE9CBEAE32607E8DE3
+
+I=284
+KEY=F076085EE3EA165617C30AE66CB0D46A19C166C7D6E8D65F
+IV=02FBB83EDCB092957E8E4380F72D577D
+CT=7A3056742CF8CFDE9CBEAE32607E8DE3
+PT=B2B7B7551B2A1D59601003C6EDD70A78
+
+I=285
+KEY=7D74D286D9CEC1C3A574BDB3779AC93379D165013B3FDC27
+IV=890E42EAA4C59B078D02DAD83A24D795
+CT=B2B7B7551B2A1D59601003C6EDD70A78
+PT=8B617CCD9B1289F485167DC13126795C
+
+I=286
+KEY=8BA3AA3C04001B9D2E15C17EEC8840C7FCC718C00A19A57B
+IV=F96182D81751ECCAF6D778BADDCEDA5E
+CT=8B617CCD9B1289F485167DC13126795C
+PT=D4800EE4A5E29A18C655AD5CE23063F9
+
+I=287
+KEY=E51B3BF1DF7B0D54FA95CF9A496ADADF3A92B59CE829C682
+IV=46297563D303DF226EB891CDDB7B16C9
+CT=D4800EE4A5E29A18C655AD5CE23063F9
+PT=4A6008072DCEB7602BF120F0984FF1D6
+
+I=288
+KEY=82091A039C558D36B0F5C79D64A46DBF1163956C70663754
+IV=28E82D15BAC860EA671221F2432E8062
+CT=4A6008072DCEB7602BF120F0984FF1D6
+PT=B05CD61BC646851726441B147FBB1AD3
+
+I=289
+KEY=C503B4B113DE349700A91186A2E2E8A837278E780FDD2D87
+IV=342F9FDEEEBE130A470AAEB28F8BB9A1
+CT=B05CD61BC646851726441B147FBB1AD3
+PT=33E1834199EE6CD5C6F950D4823B2337
+
+I=290
+KEY=4B06065B748AFB69334892C73B0C847DF1DEDEAC8DE60EB0
+IV=02928C43C0FF24968E05B2EA6754CFFE
+CT=33E1834199EE6CD5C6F950D4823B2337
+PT=BA0BD1FFA54258361D3A8BD9F3C689E4
+
+I=291
+KEY=AD0B10216B5D496B894343389E4EDC4BECE455757E208754
+IV=50DC56062E88C9CAE60D167A1FD7B202
+CT=BA0BD1FFA54258361D3A8BD9F3C689E4
+PT=4911046D8F1D2BCF54F22B5A83AF5AE1
+
+I=292
+KEY=AF6CC229A2618121C05247551153F784B8167E2FFD8FDDB5
+IV=A7CC6A2B280A9DE80267D208C93CC84A
+CT=4911046D8F1D2BCF54F22B5A83AF5AE1
+PT=254CA1983D7B794911B455E857CE902B
+
+I=293
+KEY=66413E8C7D11836FE51EE6CD2C288ECDA9A22BC7AA414D9E
+IV=D01066ADC643A032C92DFCA5DF70024E
+CT=254CA1983D7B794911B455E857CE902B
+PT=B0A100E60D0404D123D10AE78E9CFFCB
+
+I=294
+KEY=D13AF271F9C3337455BFE62B212C8A1C8A73212024DDB255
+IV=20D00A218F07ECEDB77BCCFD84D2B01B
+CT=B0A100E60D0404D123D10AE78E9CFFCB
+PT=D4CD0CC7D2EBAB050108E94365D34FAA
+
+I=295
+KEY=8B3C7094C3AD8B018172EAECF3C721198B7BC863410EFDFF
+IV=EC5F46869A00FFC25A0682E53A6EB875
+CT=D4CD0CC7D2EBAB050108E94365D34FAA
+PT=DF913CC34675469401CCA41DB50BFBA4
+
+I=296
+KEY=7DCF9D4559C3EA3A5EE3D62FB5B2678D8AB76C7EF405065B
+IV=8718728B7105A417F6F3EDD19A6E613B
+CT=DF913CC34675469401CCA41DB50BFBA4
+PT=5B09F0AF91EA41851A232543E97A6ED4
+
+I=297
+KEY=C3E6C2A9975117B605EA2680245826089094493D1D7F688F
+IV=21D001128A401EBFBE295FECCE92FD8C
+CT=5B09F0AF91EA41851A232543E97A6ED4
+PT=8544DFD1E46D14FF1B0E9CF43A7E9EB6
+
+I=298
+KEY=54C6D7971066FDD380AEF951C03532F78B9AD5C92701F639
+IV=F861E1C66C3F21779720153E8737EA65
+CT=8544DFD1E46D14FF1B0E9CF43A7E9EB6
+PT=586696A67E355CCDC41AD16D87786773
+
+I=299
+KEY=B47A128050D1FC84D8C86FF7BE006E3A4F8004A4A079914A
+IV=55A87D49D3640887E0BCC51740B70157
+CT=586696A67E355CCDC41AD16D87786773
+PT=6C7FF8D2F033B33C729C556E0731ACFF
+
+I=300
+KEY=C66EA18D75351D93B4B797254E33DD063D1C51CAA7483DB5
+IV=7224A11A5D122A607214B30D25E4E117
+CT=6C7FF8D2F033B33C729C556E0731ACFF
+PT=BC031D9B497C64B15EE143CF4D2130B1
+
+I=301
+KEY=00432A82295B2C6708B48ABE074FB9B763FD1205EA690D04
+IV=61D8239BE618CC39C62D8B0F5C6E31F4
+CT=BC031D9B497C64B15EE143CF4D2130B1
+PT=325D14CCDE09311A8069C5522FD050FD
+
+I=302
+KEY=E03B01935511FA7E3AE99E72D94688ADE394D757C5B95DF9
+IV=339B83266B282A96E0782B117C4AD619
+CT=325D14CCDE09311A8069C5522FD050FD
+PT=FA25D0913004A26A3232F743ACC7677E
+
+I=303
+KEY=47F79639F27D47E9C0CC4EE3E9422AC7D1A62014697E3A87
+IV=C5F60E2EC86A0971A7CC97AAA76CBD97
+CT=FA25D0913004A26A3232F743ACC7677E
+PT=61AA67B567F1CE94326B4711F8115727
+
+I=304
+KEY=EE86C028A3B01E7EA16629568EB3E453E3CD6705916F6DA0
+IV=4037462A5B08A27FA971561151CD5997
+CT=61AA67B567F1CE94326B4711F8115727
+PT=35D0FD8AFF6CBDF34065CED4796D9D27
+
+I=305
+KEY=EE88DBE9CCC930CB94B6D4DC71DF59A0A3A8A9D1E802F087
+IV=20CB619D26A05953000E1BC16F792EB5
+CT=35D0FD8AFF6CBDF34065CED4796D9D27
+PT=DD69B839EAE7D0DF79F5D06140D54325
+
+I=306
+KEY=C77ADB703861D01649DF6CE59B38897FDA5D79B0A8D7B3A2
+IV=16CFCF6A4F3272EA29F20099F4A8E0DD
+CT=DD69B839EAE7D0DF79F5D06140D54325
+PT=CA93E79E612893AA0D979ABDF5CA788A
+
+I=307
+KEY=3F486F048B5D9716834C8B7BFA101AD5D7CAE30D5D1DCB28
+IV=58332C3A8F187A96F832B474B33C4700
+CT=CA93E79E612893AA0D979ABDF5CA788A
+PT=39974A1C62DF12F62EC9F75704B0EFA8
+
+I=308
+KEY=B9022C8EA2C6FEF4BADBC16798CF0823F903145A59AD2480
+IV=3C09D97EFC480CD6864A438A299B69E2
+CT=39974A1C62DF12F62EC9F75704B0EFA8
+PT=B840EFC34BCD941BF551E437D633BB3A
+
+I=309
+KEY=D22317E3BB60B9FA029B2EA4D3029C380C52F06D8F9E9FBA
+IV=C755A4CF1FAD90046B213B6D19A6470E
+CT=B840EFC34BCD941BF551E437D633BB3A
+PT=979F6217FD73CAB73A1DE1FACF68542C
+
+I=310
+KEY=E196EBBFCDA64F7095044CB32E71568F364F119740F6CB96
+IV=D342A7B4EF6CB49F33B5FC5C76C6F68A
+CT=979F6217FD73CAB73A1DE1FACF68542C
+PT=A290A25CFBCB1BEE137AFB860BB2CF29
+
+I=311
+KEY=B756B878A99088B83794EEEFD5BA4D612535EA114B4404BF
+IV=D92C9835E799541056C053C76436C7C8
+CT=A290A25CFBCB1BEE137AFB860BB2CF29
+PT=7E99249836CA5167C88BD3431C78C2E0
+
+I=312
+KEY=2515F524203B507E490DCA77E3701C06EDBE3952573CC65F
+IV=FD7219F6C131C4BD92434D5C89ABD8C6
+CT=7E99249836CA5167C88BD3431C78C2E0
+PT=5B7DAB9C2148A2B7ACCE4723D1D63B3F
+
+I=313
+KEY=28A33899811FE9B7127061EBC238BEB141707E7186EAFD60
+IV=F6B29A78141D8F8A0DB6CDBDA124B9C9
+CT=5B7DAB9C2148A2B7ACCE4723D1D63B3F
+PT=12BAE3836257C52B88ECEEAAE8DE3B80
+
+I=314
+KEY=85C6089FEF19163500CA8268A06F7B9AC99C90DB6E34C6E0
+IV=AE11E9BE14B4ECB1AD6530066E06FF82
+CT=12BAE3836257C52B88ECEEAAE8DE3B80
+PT=71C5D9F8747D428DE30736C4DD33E3E5
+
+I=315
+KEY=86665ED5DA56FE90710F5B90D41239172A9BA61FB3072505
+IV=2CBAA91201D1980B03A0564A354FE8A5
+CT=71C5D9F8747D428DE30736C4DD33E3E5
+PT=D824A3FB80554CCD519D730D25EED2AF
+
+I=316
+KEY=F6D0840D75423D5CA92BF86B544775DA7B06D51296E9F7AA
+IV=66AA086063C3768C70B6DAD8AF14C3CC
+CT=D824A3FB80554CCD519D730D25EED2AF
+PT=C974BCBE88ACA9D29312192BE52885BD
+
+I=317
+KEY=56F2FDAAB52A8691605F44D5DCEBDC08E814CC3973C17217
+IV=14D16CCEDE70F435A02279A7C068BBCD
+CT=C974BCBE88ACA9D29312192BE52885BD
+PT=23B74C4B5E661FA157F571F4C13AA3AE
+
+I=318
+KEY=676109782F02525643E8089E828DC3A9BFE1BDCDB2FBD1B9
+IV=46BB517768227D1D3193F4D29A28D4C7
+CT=23B74C4B5E661FA157F571F4C13AA3AE
+PT=BDF2A1A79D553C85F5867B2BD5259A82
+
+I=319
+KEY=D21B20B085B317EDFE1AA9391FD8FF2C4A67C6E667DE4B3B
+IV=054B26F10A7F2D69B57A29C8AAB145BB
+CT=BDF2A1A79D553C85F5867B2BD5259A82
+PT=1E02970BE31FEE63C9BCCC79FB41F670
+
+I=320
+KEY=3CF3F93D44647FB7E0183E32FCC7114F83DB0A9F9C9FBD4B
+IV=C44342FC579F9083EEE8D98DC1D7685A
+CT=1E02970BE31FEE63C9BCCC79FB41F670
+PT=70F71372F64174D7C8757F043812439F
+
+I=321
+KEY=2C83CB76D99E054E90EF2D400A8665984BAE759BA48DFED4
+IV=884B46D9FBE7D99C1070324B9DFA7AF9
+CT=70F71372F64174D7C8757F043812439F
+PT=46B20E91579B5CC0ADE9327478DF25FA
+
+I=322
+KEY=0ADEA18FAA36E94BD65D23D15D1D3958E64747EFDC52DB2E
+IV=F256BC3206E11E9C265D6AF973A8EC05
+CT=46B20E91579B5CC0ADE9327478DF25FA
+PT=51FE245369F67740615E159E28C2D56C
+
+I=323
+KEY=E0C00F8BFD4ADCD087A3078234EB4E1887195271F4900E42
+IV=836F6756B9EC572DEA1EAE04577C359B
+CT=51FE245369F67740615E159E28C2D56C
+PT=58A1B407358C1F9783A05C0A43D5B4FB
+
+I=324
+KEY=EEA0B17E70A6FC53DF02B3850167518F04B90E7BB745BAB9
+IV=0E584BF6D72F08310E60BEF58DEC2083
+CT=58A1B407358C1F9783A05C0A43D5B4FB
+PT=6212DD8752996CC4D747790D5F2BC7E7
+
+I=325
+KEY=B6E49EEA07D03112BD106E0253FE3D4BD3FE7776E86E7D5E
+IV=2BA760FB0CC14D1858442F947776CD41
+CT=6212DD8752996CC4D747790D5F2BC7E7
+PT=DB16C25BDE0B95F4EC7B34FA2096E6A6
+
+I=326
+KEY=F64DCEBA5E71D73E6606AC598DF5A8BF3F85438CC8F89BF8
+IV=674AA4866EE9988E40A9505059A1E62C
+CT=DB16C25BDE0B95F4EC7B34FA2096E6A6
+PT=BB98BBB3289F3B5A96C5D3DA92F8CD0F
+
+I=327
+KEY=23CBCCA3D63DABB8DD9E17EAA56A93E5A94090565A0056F7
+IV=E3D676539CBD9676D5860219884C7C86
+CT=BB98BBB3289F3B5A96C5D3DA92F8CD0F
+PT=324C1661B1E289EA3DAC27AF14E026C5
+
+I=328
+KEY=D6F7C4A098C4E809EFD2018B14881A0F94ECB7F94EE07032
+IV=E7FB3F340E160FB5F53C08034EF943B1
+CT=324C1661B1E289EA3DAC27AF14E026C5
+PT=6EDA104789445C38F66EC2562F95FBDB
+
+I=329
+KEY=4B795FAB98879223810811CC9DCC4637628275AF61758BE9
+IV=C5E830814D72E9449D8E9B0B00437A2A
+CT=6EDA104789445C38F66EC2562F95FBDB
+PT=C834C54858181891C7D654A7502C0B60
+
+I=330
+KEY=AA317465E376BAF2493CD484C5D45EA6A554210831598089
+IV=2388FCCDB47CB5DBE1482BCE7BF128D1
+CT=C834C54858181891C7D654A7502C0B60
+PT=9C5F5599557D176050BBAC4258B87F66
+
+I=331
+KEY=B601C39C0E5F02DED563811D90A949C6F5EF8D4A69E1FFEF
+IV=10C2528D377387311C30B7F9ED29B82C
+CT=9C5F5599557D176050BBAC4258B87F66
+PT=ED5F51A6AFA843D467E21F6C68992273
+
+I=332
+KEY=44A1FE3F8349D500383CD0BB3F010A12920D92260178DD9C
+IV=9E73D9FB1D2471E8F2A03DA38D16D7DE
+CT=ED5F51A6AFA843D467E21F6C68992273
+PT=D7A5F18382F892264008F75707254D95
+
+I=333
+KEY=568F031D75B9B48FEF992138BDF99834D2056571065D9009
+IV=DEC9B60FA5A91887122EFD22F6F0618F
+CT=D7A5F18382F892264008F75707254D95
+PT=D13A34D9F57884ECEE2FA1A412584BE4
+
+I=334
+KEY=72CFCCE9FE5EB48A3EA315E148811CD83C2AC4D51405DBED
+IV=75C70261D0C49D692440CFF48BE70005
+CT=D13A34D9F57884ECEE2FA1A412584BE4
+PT=064D550098F0813D145A2AA296064CCF
+
+I=335
+KEY=58448186BD1ED1FC38EE40E1D0719DE52870EE7782039722
+IV=754A1B79A75BD3B32A8B4D6F43406576
+CT=064D550098F0813D145A2AA296064CCF
+PT=D7CD7D2B23E42F7A9808D48C28982743
+
+I=336
+KEY=6FF7BCC770079D57EF233DCAF395B29FB0783AFBAA9BB061
+IV=25EE1F4D8F257C6437B33D41CD194CAB
+CT=D7CD7D2B23E42F7A9808D48C28982743
+PT=6F55D4C7A13F08A1D936C5F0177040CA
+
+I=337
+KEY=7ECBB104AA3505E58076E90D52AABA3E694EFF0BBDEBF0AB
+IV=E21F1527B69B89C8113C0DC3DA3298B2
+CT=6F55D4C7A13F08A1D936C5F0177040CA
+PT=7F061908571CDDBC1F8F82A31A3AF1F9
+
+I=338
+KEY=135D99B5F2482FFAFF70F00505B6678276C17DA8A7D10152
+IV=5DA54CDB26A0DC2D6D9628B1587D2A1F
+CT=7F061908571CDDBC1F8F82A31A3AF1F9
+PT=30AB085953DE3E8027DE0C8A185A7D02
+
+I=339
+KEY=3C76458A987B66F0CFDBF85C56685902511F7122BF8B7C50
+IV=E0614E072D2563DD2F2BDC3F6A33490A
+CT=30AB085953DE3E8027DE0C8A185A7D02
+PT=92C915E98AEBF6265C43A66AC5B40787
+
+I=340
+KEY=EBD41B4484EA67A05D12EDB5DC83AF240D5CD7487A3F7BD7
+IV=6EA27DF02FA0A9A9D7A25ECE1C910150
+CT=92C915E98AEBF6265C43A66AC5B40787
+PT=E9AC0996F97FFBA0F7C860A089CDF99F
+
+I=341
+KEY=85B6BBBC8E2243D3B4BEE42325FC5484FA94B7E8F3F28248
+IV=46D915F802932C936E62A0F80AC82473
+CT=E9AC0996F97FFBA0F7C860A089CDF99F
+PT=BA1D082EDB28E255CB37AFEDB497D43A
+
+I=342
+KEY=BDA8736E56DDB34F0EA3EC0DFED4B6D131A3180547655672
+IV=0A7B9BCBE89E4CDE381EC8D2D8FFF09C
+CT=BA1D082EDB28E255CB37AFEDB497D43A
+PT=63298FE15A14C4A4E582C57772A0581E
+
+I=343
+KEY=9B5DC0C3B097B7CE6D8A63ECA4C07275D421DD7235C50E6C
+IV=81F4666446CB470526F5B3ADE64A0481
+CT=63298FE15A14C4A4E582C57772A0581E
+PT=AE79390C6789DFCF7110BA93281E9895
+
+I=344
+KEY=E64DDC6A55048E35C3F35AE0C349ADBAA53167E11DDB96F9
+IV=DB4439803A1ACA807D101CA9E59339FB
+CT=AE79390C6789DFCF7110BA93281E9895
+PT=2C9DF2ED511595756E5CF6D33442D3A3
+
+I=345
+KEY=9C75AC9CBA0918CDEF6EA80D925C38CFCB6D91322999455A
+IV=B73DBACA0C10AD0A7A3870F6EF0D96F8
+CT=2C9DF2ED511595756E5CF6D33442D3A3
+PT=90FDAEAEDC379128B73515CB2AAC9B7A
+
+I=346
+KEY=A045744F6BB9205F7F9306A34E6BA9E77C5884F90335DE20
+IV=356BBCDD4EBDA8F93C30D8D3D1B03892
+CT=90FDAEAEDC379128B73515CB2AAC9B7A
+PT=E66EA385E1F20791090CA24ADB250AFC
+
+I=347
+KEY=48E94FAC40CFC94B99FDA526AF99AE76755426B3D810D4DC
+IV=ABAF17EBE3658829E8AC3BE32B76E914
+CT=E66EA385E1F20791090CA24ADB250AFC
+PT=A17C6802F4322D97C6966B523B54CF88
+
+I=348
+KEY=3FC9CD7847FF49D73881CD245BAB83E1B3C24DE1E3441B54
+IV=7D25F4EE8B874E2D772082D40730809C
+CT=A17C6802F4322D97C6966B523B54CF88
+PT=CBEC825D143BF30C58B608B58ABFB618
+
+I=349
+KEY=D4464B5CD3CFAD06F36D4F794F9070EDEB74455469FBAD4C
+IV=93D0E88641960F8EEB8F86249430E4D1
+CT=CBEC825D143BF30C58B608B58ABFB618
+PT=D7A8E224DAA4DB7629790D3D4D5A8560
+
+I=350
+KEY=73DD2DA38114D0BD24C5AD5D9534AB9BC20D486924A1282C
+IV=3E6B8F8084BAA391A79B66FF52DB7DBB
+CT=D7A8E224DAA4DB7629790D3D4D5A8560
+PT=EB7EAD5CF27BA091DEF8D7839EFD7C90
+
+I=351
+KEY=CDA609EB23BB90EBCFBB0001674F0B0A1CF59FEABA5C54BC
+IV=8EEE61573B01F1E4BE7B2448A2AF4056
+CT=EB7EAD5CF27BA091DEF8D7839EFD7C90
+PT=2EFA41B666ECBBB1D699C1FB8CA9E175
+
+I=352
+KEY=768FCC098B8F48FFE14141B701A3B0BBCA6C5E1136F5B5C9
+IV=60BC671273707E17BB29C5E2A834D814
+CT=2EFA41B666ECBBB1D699C1FB8CA9E175
+PT=44D7245914CF3BF73831D4225BD32FDD
+
+I=353
+KEY=91F2FFA6BB520FD1A59665EE156C8B4CF25D8A336D269A14
+IV=21187FBCFC5E01BEE77D33AF30DD472E
+CT=44D7245914CF3BF73831D4225BD32FDD
+PT=E9FA049C77C326A4F03D2C9E740DE4A1
+
+I=354
+KEY=2FC9C39B5DBC560E4C6C617262AFADE80260A6AD192B7EB5
+IV=72912E59A0095846BE3B3C3DE6EE59DF
+CT=E9FA049C77C326A4F03D2C9E740DE4A1
+PT=9A62281465C72FDAA73E00E343A99BC3
+
+I=355
+KEY=F401ED3768BC72D4D60E496607688232A55EA64E5A82E576
+IV=88022668FE843060DBC82EAC350024DA
+CT=9A62281465C72FDAA73E00E343A99BC3
+PT=FAD9ADA4B98A4141A2857F93F6F71DEB
+
+I=356
+KEY=1AD741BDF8A18D8E2CD7E4C2BEE2C37307DBD9DDAC75F89D
+IV=F98FECC470C84631EED6AC8A901DFF5A
+CT=FAD9ADA4B98A4141A2857F93F6F71DEB
+PT=630453171FEE434834490229830E1C1A
+
+I=357
+KEY=24F7B99681335EAD4FD3B7D5A10C803B3392DBF42F7BE487
+IV=5D69B4D81847DABD3E20F82B7992D323
+CT=630453171FEE434834490229830E1C1A
+PT=DE613189001598BA6AE67F259F9FD349
+
+I=358
+KEY=60E401E96083FF2291B2865CA11918815974A4D1B0E437CE
+IV=AADE84AD4127FCDA4413B87FE1B0A18F
+CT=DE613189001598BA6AE67F259F9FD349
+PT=CA18925634072DEC80F2F724A0F24235
+
+I=359
+KEY=66831E7F4FC51DB95BAA140A951E356DD98653F5101675FB
+IV=1C1E2F698C5DD62006671F962F46E29B
+CT=CA18925634072DEC80F2F724A0F24235
+PT=B289F06551C56B77F5CDF7B321E0E8E3
+
+I=360
+KEY=48FB1A5B41F634D5E923E46FC4DB5E1A2C4BA44631F69D18
+IV=6A872620ED13A14B2E7804240E33296C
+CT=B289F06551C56B77F5CDF7B321E0E8E3
+PT=13B1F93DD388A192D6FB836C90E0E022
+
+I=361
+KEY=F13FA6E33170F596FA921D521753FF88FAB0272AA1167D3A
+IV=40BF714207DA180BB9C4BCB87086C143
+CT=13B1F93DD388A192D6FB836C90E0E022
+PT=298B7B19A27EA1BE9574588A5885F64B
+
+I=362
+KEY=CE171639A4DDA77DD319664BB52D5E366FC47FA0F9938B71
+IV=8FB32729166E154F3F28B0DA95AD52EB
+CT=298B7B19A27EA1BE9574588A5885F64B
+PT=11FA000C73485654A8918360DF3C1F5E
+
+I=363
+KEY=9322B0E9AE4D6B20C2E36647C6650862C755FCC026AF942F
+IV=809DE75B169C56BE5D35A6D00A90CC5D
+CT=11FA000C73485654A8918360DF3C1F5E
+PT=05533E642958E2F6F29BB1848BE225CB
+
+I=364
+KEY=21B86D89874D627FC7B05823EF3DEA9435CE4D44AD4DB1E4
+IV=81CF24C876471695B29ADD602900095F
+CT=05533E642958E2F6F29BB1848BE225CB
+PT=613DB485B9565B4889887282A3C8CFB5
+
+I=365
+KEY=6E5AD95BDDA04D12A68DECA6566BB1DCBC463FC60E857E51
+IV=7E3AC16D28733BD84FE2B4D25AED2F6D
+CT=613DB485B9565B4889887282A3C8CFB5
+PT=0CDDDA3B3375430B601BA1CCBD567284
+
+I=366
+KEY=807937B80E55E814AA50369D651EF2D7DC5D9E0AB3D30CD5
+IV=C49324EE3A928684EE23EEE3D3F5A506
+CT=0CDDDA3B3375430B601BA1CCBD567284
+PT=C47A6E22A123AB6397F9C2AFFA6D45AB
+
+I=367
+KEY=20B3595EFE3D3DA76E2A58BFC43D59B44BA45CA549BE497E
+IV=B188E4D3A2AC3F42A0CA6EE6F068D5B3
+CT=C47A6E22A123AB6397F9C2AFFA6D45AB
+PT=71592AFCA1FEEE8AB6D6CEF22C14A21D
+
+I=368
+KEY=A97EAD081EDF66D11F73724365C3B73EFD72925765AAEB63
+IV=0DFF90FA3722469289CDF456E0E25B76
+CT=71592AFCA1FEEE8AB6D6CEF22C14A21D
+PT=F4E0C4BCF8B386CF1BD457BD1FB65646
+
+I=369
+KEY=DA90448D67D59E3CEB93B6FF9D7031F1E6A6C5EA7A1CBD25
+IV=154DB6488872217073EEE985790AF8ED
+CT=F4E0C4BCF8B386CF1BD457BD1FB65646
+PT=9ED1119909322C280FE92B7840792605
+
+I=370
+KEY=CF62D3016C8507F17542A76694421DD9E94FEE923A659B20
+IV=ED45F0A7D33FC08515F2978C0B5099CD
+CT=9ED1119909322C280FE92B7840792605
+PT=F812615F1BE701E74FCEEFC288303C7C
+
+I=371
+KEY=C2681849C663E45A8D50C6398FA51C3EA6810150B255A75C
+IV=19E09027253115100D0ACB48AAE6E3AB
+CT=F812615F1BE701E74FCEEFC288303C7C
+PT=25897C51C5FEDBFDC630BF8E9F3B2875
+
+I=372
+KEY=F47C452077541CEEA8D9BA684A5BC7C360B1BEDE2D6E8F29
+IV=2C2EE28C518163DF36145D69B137F8B4
+CT=25897C51C5FEDBFDC630BF8E9F3B2875
+PT=9929E5E9F0CA00D0E02022E2FCFAFC3F
+
+I=373
+KEY=F7BF8679C8D86E2C31F05F81BA91C71380919C3CD1947316
+IV=FCF0C5D85049463103C3C359BF8C72C2
+CT=9929E5E9F0CA00D0E02022E2FCFAFC3F
+PT=3B603A3FDAA669E7C965708C9789E329
+
+I=374
+KEY=9312EDA0B14017910A9065BE6037AEF449F4ECB0461D903F
+IV=364CDACF5762B18864AD6BD9799879BD
+CT=3B603A3FDAA669E7C965708C9789E329
+PT=AC33F7B1A778C36617668C98E20B318A
+
+I=375
+KEY=D5BC989407D78D82A6A3920FC74F6D925E926028A416A1B5
+IV=5FB00506C71711D046AE7534B6979A13
+CT=AC33F7B1A778C36617668C98E20B318A
+PT=B408AF5509EF45E0AEDF12570FAE3651
+
+I=376
+KEY=6BBB14591C12578112AB3D5ACEA02872F04D727FABB897E4
+IV=D41F58F192CF60D6BE078CCD1BC5DA03
+CT=B408AF5509EF45E0AEDF12570FAE3651
+PT=39EB055E027AC0DEA5992B7BA3753AB5
+
+I=377
+KEY=3F71566EA7D07EBF2B403804CCDAE8AC55D4590408CDAD51
+IV=7E495DEC2224696554CA4237BBC2293E
+CT=39EB055E027AC0DEA5992B7BA3753AB5
+PT=832B01D2AD4F0EE077244CF9B6ABE31C
+
+I=378
+KEY=0BDC563CE47527D1A86B39D66195E64C22F015FDBE664E4D
+IV=4FE13E98163C3F7734AD005243A5596E
+CT=832B01D2AD4F0EE077244CF9B6ABE31C
+PT=926EB7E17FA4262D1D390D83CDAC6FB2
+
+I=379
+KEY=07D4D606747858B63A058E371E31C0613FC9187E73CA21FF
+IV=12D459160DCFFEFE0C08803A900D7F67
+CT=926EB7E17FA4262D1D390D83CDAC6FB2
+PT=DBFBC3313F86C26BA54B9F69BA93C665
+
+I=380
+KEY=84BE014D4BFA8ACCE1FE4D0621B7020A9A828717C959E79A
+IV=179322B7D19F3A38836AD74B3F82D27A
+CT=DBFBC3313F86C26BA54B9F69BA93C665
+PT=39B00A1A655B298F56271B2BDBA6B16B
+
+I=381
+KEY=A921F537F5F324CAD84E471C44EC2B85CCA59C3C12FF56F1
+IV=D4B03D3AB6FF79D22D9FF47ABE09AE06
+CT=39B00A1A655B298F56271B2BDBA6B16B
+PT=7C5DABBF7C7951808DCD35DB2617B763
+
+I=382
+KEY=3BB6AACEEEC21A9FA413ECA338957A054168A9E734E8E192
+IV=5C92A3C4C3C8567792975FF91B313E55
+CT=7C5DABBF7C7951808DCD35DB2617B763
+PT=BD88FB3B815415503D4F9264AFEA7887
+
+I=383
+KEY=008F402C3524BCA8199B1798B9C16F557C273B839B029915
+IV=08360D06E31B3AA43B39EAE2DBE6A637
+CT=BD88FB3B815415503D4F9264AFEA7887
+PT=B2813AFBC477618F4C6A436C97AA26F2
+
+I=384
+KEY=8AB9F9FC4EE8B2D4AB1A2D637DB60EDA304D78EF0CA8BFE7
+IV=DCF7EF19F68916268A36B9D07BCC0E7C
+CT=B2813AFBC477618F4C6A436C97AA26F2
+PT=1E96D52E46B1D73EB00778B203946F28
+
+I=385
+KEY=CA9D4CE917399619B58CF84D3B07D9E4804A005D0F3CD0CF
+IV=63A112DB63DDECB54024B51559D124CD
+CT=1E96D52E46B1D73EB00778B203946F28
+PT=C03D770FE4B1733C5E59DD68F0060D5A
+
+I=386
+KEY=1D8268F833FC772575B18F42DFB6AAD8DE13DD35FF3ADD95
+IV=8B7AC769F85BA650D71F241124C5E13C
+CT=C03D770FE4B1733C5E59DD68F0060D5A
+PT=6495A8A3667DEDE2CAB58BA3B2F7034E
+
+I=387
+KEY=CCCEE884786AF28A112427E1B9CB473A14A656964DCDDEDB
+IV=280C5BD88E3B88ACD14C807C4B9685AF
+CT=6495A8A3667DEDE2CAB58BA3B2F7034E
+PT=4CC3C2AC85EBD619E708988C9FEC60C6
+
+I=388
+KEY=8B85284B2B06874D5DE7E54D3C209123F3AECE1AD221BE1D
+IV=62E112946391FEFB474BC0CF536C75C7
+CT=4CC3C2AC85EBD619E708988C9FEC60C6
+PT=1522371FD5D53919F52CD97258CEBDA7
+
+I=389
+KEY=B2EBBE81CF234A7E48C5D252E9F5A83A068217688AEF03BA
+IV=8A936BAE971C0C9F396E96CAE425CD33
+CT=1522371FD5D53919F52CD97258CEBDA7
+PT=4AA882DCB39AA79E8439E9ECE9F4F3BD
+
+I=390
+KEY=043B9FDDEC299802026D508E5A6F0FA482BBFE84631BF007
+IV=6FA7FCDBA3B1BCA5B6D0215C230AD27C
+CT=4AA882DCB39AA79E8439E9ECE9F4F3BD
+PT=28C1E45D8D01AD148FA7D7C4F41ACE04
+
+I=391
+KEY=1074F9BD3FFD4EAF2AACB4D3D76EA2B00D1C294097013E03
+IV=1210BAF1D69B23FE144F6660D3D4D6AD
+CT=28C1E45D8D01AD148FA7D7C4F41ACE04
+PT=3ABE04FC59C3BDF9D7721902DEFCB439
+
+I=392
+KEY=D97F3440E3684D291012B02F8EAD1F49DA6E304249FD8A3A
+IV=C271800852E147D5C90BCDFDDC950386
+CT=3ABE04FC59C3BDF9D7721902DEFCB439
+PT=3A563A6A047E16123B289B047BB54C4E
+
+I=393
+KEY=49A10E68A38B02F42A448A458AD3095BE146AB463248C674
+IV=9DB6856C7E01CF3690DE3A2840E34FDD
+CT=3A563A6A047E16123B289B047BB54C4E
+PT=F8CB54B8D16274E9A20C0F026866E52F
+
+I=394
+KEY=9DD96DCFD4A1B11FD28FDEFD5BB17DB2434AA4445A2E235B
+IV=233C069312D97A03D47863A7772AB3EB
+CT=F8CB54B8D16274E9A20C0F026866E52F
+PT=0302D25C39BF21F67F1AF2E1951D40F9
+
+I=395
+KEY=746E55928D7E549DD18D0CA1620E5C443C5056A5CF3363A2
+IV=B6086C5FEEE9A078E9B7385D59DFE582
+CT=0302D25C39BF21F67F1AF2E1951D40F9
+PT=721192A3A5140DD63D93E0D6ACC4A4B8
+
+I=396
+KEY=7E6FC505EAAB07E4A39C9E02C71A519201C3B67363F7C71A
+IV=9828A03F0ADCE33E0A01909767D55379
+CT=721192A3A5140DD63D93E0D6ACC4A4B8
+PT=1C0F7440EF41FF18E263392741AD9D8B
+
+I=397
+KEY=D13AD442CAE026C3BF93EA42285BAE8AE3A08F54225A5A91
+IV=4FC707A846B4469AAF551147204B2127
+CT=1C0F7440EF41FF18E263392741AD9D8B
+PT=442F978615AC3983AA5ABEA81AD1ACA6
+
+I=398
+KEY=043A4EFFCD44EEB1FBBC7DC43DF7970949FA31FC388BF637
+IV=05D58B4A88A961AFD5009ABD07A4C872
+CT=442F978615AC3983AA5ABEA81AD1ACA6
+PT=E75C29413A33AA1210F36AADEC02FCEE
+
+I=399
+KEY=81492E2C6296C9341CE0548507C43D1B59095B51D4890AD9
+IV=D89794EAA1791507857360D3AFD22785
+CT=E75C29413A33AA1210F36AADEC02FCEE
+PT=6342BFDDD2F6610350458B6695463484
+
+==========
+
+KEYSIZE=256
+
+I=0
+KEY=0000000000000000000000000000000000000000000000000000000000000000
+IV=00000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=4804E1818FE6297519A3E88C57310413
+
+I=1
+KEY=098E3797788EA3BCD5477BF1660373944804E1818FE6297519A3E88C57310413
+IV=098E3797788EA3BCD5477BF166037394
+CT=4804E1818FE6297519A3E88C57310413
+PT=D36C27EBB8FA0BC9FA368DF850FD45FB
+
+I=2
+KEY=D949E143F98BDE24BD40A256F9E369339B68C66A371C22BCE395657407CC41E8
+IV=D0C7D6D481057D986807D9A79FE01AA7
+CT=D36C27EBB8FA0BC9FA368DF850FD45FB
+PT=EBCB4DC84155682856D94B442BC597EE
+
+I=3
+KEY=296352DA0158E197EBC80771EC1ECC7D70A38BA276494A94B54C2E302C09D606
+IV=F02AB399F8D33FB35688A52715FDA54E
+CT=EBCB4DC84155682856D94B442BC597EE
+PT=23AA6A6B4BE8C04E19707CA330804C4E
+
+I=4
+KEY=5D3E9E2EA4DEDDB65A58DADB5B9679BC5309E1C93DA18ADAAC3C52931C899A48
+IV=745DCCF4A5863C21B190DDAAB788B5C1
+CT=23AA6A6B4BE8C04E19707CA330804C4E
+PT=9B1AA0F33416484BA68740E821F95CD3
+
+I=5
+KEY=E35024184CCA14687DB19E13093D2A31C813413A09B7C2910ABB127B3D70C69B
+IV=BE6EBA36E814C9DE27E944C852AB538D
+CT=9B1AA0F33416484BA68740E821F95CD3
+PT=8A8C6ADF453CB7A2FC4F3690FF7C6F23
+
+I=6
+KEY=FDC6EB83FF93BA06DE2D09CB33F05406429F2BE54C8B7533F6F424EBC20CA9B8
+IV=1E96CF9BB359AE6EA39C97D83ACD7E37
+CT=8A8C6ADF453CB7A2FC4F3690FF7C6F23
+PT=B104182A3D85B857FB342BD06063E989
+
+I=7
+KEY=7177668BAC9407FB2835524D58F1311EF39B33CF710ECD640DC00F3BA26F4031
+IV=8CB18D085307BDFDF6185B866B016518
+CT=B104182A3D85B857FB342BD06063E989
+PT=68AD7EB507FAEE8FF54E5B7EB4314208
+
+I=8
+KEY=790AE8470B39A60E9F32F4025B2251849B364D7A76F423EBF88E5445165E0239
+IV=087D8ECCA7ADA1F5B707A64F03D3609A
+CT=68AD7EB507FAEE8FF54E5B7EB4314208
+PT=99736D55B2730FDBC4FCD9128A3E6F06
+
+I=9
+KEY=4EAF05AC15913059B6B0E43EFA7ADC1C0245202FC4872C303C728D579C606D3F
+IV=37A5EDEB1EA896572982103CA1588D98
+CT=99736D55B2730FDBC4FCD9128A3E6F06
+PT=DF326CEE98EE253C855D171D93AA9455
+
+I=10
+KEY=55EE1CCDBA5A04040F4212DFBF6ABC89DD774CC15C69090CB92F9A4A0FCAF96A
+IV=1B411961AFCB345DB9F2F6E145106095
+CT=DF326CEE98EE253C855D171D93AA9455
+PT=B4E41BD5257CD7AF0A6F020BEE5F4067
+
+I=11
+KEY=6190A91725B7D4E8DD42F3F3B4E42E14699357147915DEA3B3409841E195B90D
+IV=347EB5DA9FEDD0ECD200E12C0B8E929D
+CT=B4E41BD5257CD7AF0A6F020BEE5F4067
+PT=3608F41CA4C677E74F48B113D9B336B0
+
+I=12
+KEY=0A93E973CCBAC75C9C0AA05502A43E945F9BA308DDD3A944FC08295238268FBD
+IV=6B034064E90D13B4414853A6B6401080
+CT=3608F41CA4C677E74F48B113D9B336B0
+PT=FB54DBB9C0C7176C4C9E1E4E6688B570
+
+I=13
+KEY=584CCAEDD52F491A935D892AD132F75AA4CF78B11D14BE28B096371C5EAE3ACD
+IV=52DF239E19958E460F57297FD396C9CE
+CT=FB54DBB9C0C7176C4C9E1E4E6688B570
+PT=F40A6A6AE95E9D163D88AAE9A2D359BC
+
+I=14
+KEY=0DD784E96CAB96D702DD3972E95317FD50C512DBF44A233E8D1E9DF5FC7D6371
+IV=559B4E04B984DFCD9180B0583861E0A7
+CT=F40A6A6AE95E9D163D88AAE9A2D359BC
+PT=0FE04B8BB249E49E24FEB6FFE106121C
+
+I=15
+KEY=2BC3A4EBD80215F0130EC1F76821BC515F2559504603C7A0A9E02B0A1D7B716D
+IV=26142002B4A9832711D3F8858172ABAC
+CT=0FE04B8BB249E49E24FEB6FFE106121C
+PT=EBA4EF8D541919A0D0947359344D61C9
+
+I=16
+KEY=0B5856BE9A78457868F7CF9C9C58EF7AB481B6DD121ADE0079745853293610A4
+IV=209BF255427A50887BF90E6BF479532B
+CT=EBA4EF8D541919A0D0947359344D61C9
+PT=06484C36A29BD3CA7CBAB7FBEA47313B
+
+I=17
+KEY=C004F13C83AA1FD5C2A592D27B47C437B2C9FAEBB0810DCA05CEEFA8C371219F
+IV=CB5CA78219D25AADAA525D4EE71F2B4D
+CT=06484C36A29BD3CA7CBAB7FBEA47313B
+PT=376157B7DB3B027980C5EF0E88B3F9EF
+
+I=18
+KEY=AD89203CAD17908C4F44F3FD2D61505385A8AD5C6BBA0FB3850B00A64BC2D870
+IV=6D8DD1002EBD8F598DE1612F56269464
+CT=376157B7DB3B027980C5EF0E88B3F9EF
+PT=756783C2F0EE73BBD81B908F660AA6F7
+
+I=19
+KEY=FBE990A6247EABC0CD5090DF0C566E01F0CF2E9E9B547C085D1090292DC87E87
+IV=5660B09A89693B4C8214632221373E52
+CT=756783C2F0EE73BBD81B908F660AA6F7
+PT=6CC64B773ECDFA9749DB33197F7EA0AB
+
+I=20
+KEY=FEC46AD20DA3E667B26D79B11A82A40F9C0965E9A599869F14CBA33052B6DE2C
+IV=052DFA7429DD4DA77F3DE96E16D4CA0E
+CT=6CC64B773ECDFA9749DB33197F7EA0AB
+PT=9230E4DCA927E2F8E617A2EBC4F11477
+
+I=21
+KEY=F4396B035E4E1BD914877124D1CD4B370E3981350CBE6467F2DC01DB9647CA5B
+IV=0AFD01D153EDFDBEA6EA0895CB4FEF38
+CT=9230E4DCA927E2F8E617A2EBC4F11477
+PT=6ACD9F3939A86EE4236A3C060D2F5C3C
+
+I=22
+KEY=49C90E620094D6A85E75BD886FAFE79264F41E0C35160A83D1B63DDD9B689667
+IV=BDF065615EDACD714AF2CCACBE62ACA5
+CT=6ACD9F3939A86EE4236A3C060D2F5C3C
+PT=E5F4F050827F69B60B417063AC1060E4
+
+I=23
+KEY=1AED4D36938AB2D5D884EF2F106D2CEF8100EE5CB7696335DAF74DBE3778F683
+IV=53244354931E647D86F152A77FC2CB7D
+CT=E5F4F050827F69B60B417063AC1060E4
+PT=5CE4B0B3C32700B6B887E05A88EE0239
+
+I=24
+KEY=EF14B937F6E0F19AC8ADBD208DD60EE5DDE45EEF744E63836270ADE4BF96F4BA
+IV=F5F9F401656A434F1029520F9DBB220A
+CT=5CE4B0B3C32700B6B887E05A88EE0239
+PT=4794284E2BB56A47332E84AD7A2006A2
+
+I=25
+KEY=182581A233332DDCD43C25AF9AA3AD7F9A7076A15FFB09C4515E2949C5B6F218
+IV=F7313895C5D3DC461C91988F1775A39A
+CT=4794284E2BB56A47332E84AD7A2006A2
+PT=C8AE2CAA7C257508C3AB75BE28D2602F
+
+I=26
+KEY=ABE7FE236E28332AE7A74A9EA03B97A952DE5A0B23DE7CCC92F55CF7ED649237
+IV=B3C27F815D1B1EF6339B6F313A983AD6
+CT=C8AE2CAA7C257508C3AB75BE28D2602F
+PT=A9FD4B9D4833B647FF60F8013C3B5B9D
+
+I=27
+KEY=08248BDC5F9186DCD65DA6344A10C57EFB2311966BEDCA8B6D95A4F6D15FC9AA
+IV=A3C375FF31B9B5F631FAECAAEA2B52D7
+CT=A9FD4B9D4833B647FF60F8013C3B5B9D
+PT=C871D7B4C0167DCFDD79AF1DEAC49D4F
+
+I=28
+KEY=BF29FB1B11AA7DB8742FF06458C384853352C622ABFBB744B0EC0BEB3B9B54E5
+IV=B70D70C74E3BFB64A272565012D341FB
+CT=C871D7B4C0167DCFDD79AF1DEAC49D4F
+PT=E2DE7BAC726C404FC7BA5099E39409CA
+
+I=29
+KEY=1810253DDF0CC5ECE2381FB4C2BEEDCCD18CBD8ED997F70B77565B72D80F5D2F
+IV=A739DE26CEA6B8549617EFD09A7D6949
+CT=E2DE7BAC726C404FC7BA5099E39409CA
+PT=D4A8257110EF7FFE2A1F026B28D7483A
+
+I=30
+KEY=F343D1EC9AEB200B65DB4AA369F6A47E052498FFC97888F55D495919F0D81515
+IV=EB53F4D145E7E5E787E35517AB4849B2
+CT=D4A8257110EF7FFE2A1F026B28D7483A
+PT=9EA25895CFEAEAD224095C4687726D06
+
+I=31
+KEY=86A93B0F219E1FFEBC0E4BA0334046AA9B86C06A069262277940055F77AA7813
+IV=75EAEAE3BB753FF5D9D501035AB6E2D4
+CT=9EA25895CFEAEAD224095C4687726D06
+PT=5C5DD66E7AD197DA86844D53C8ACEA0E
+
+I=32
+KEY=2278C61356CB0A951DAE3B6DC76868C9C7DB16047C43F5FDFFC4480CBF06921D
+IV=A4D1FD1C7755156BA1A070CDF4282E63
+CT=5C5DD66E7AD197DA86844D53C8ACEA0E
+PT=011959D35C8FE620E1C49D1804912F26
+
+I=33
+KEY=E1972A31ACF850A22CBC592AF6CAF6F0C6C24FD720CC13DD1E00D514BB97BD3B
+IV=C3EFEC22FA335A373112624731A29E39
+CT=011959D35C8FE620E1C49D1804912F26
+PT=895DDA7BB43DC3060B41DA70CAE4D2ED
+
+I=34
+KEY=BB4A76B5E8FD3820CC5D4A44F527E6704F9F95AC94F1D0DB15410F6471736FD6
+IV=5ADD5C8444056882E0E1136E03ED1080
+CT=895DDA7BB43DC3060B41DA70CAE4D2ED
+PT=94E8BBC942B4127A0A8EBEC59319CF57
+
+I=35
+KEY=4D98C60F0FA316B2DA3D11CFB3B9FE0CDB772E65D645C2A11FCFB1A1E26AA081
+IV=F6D2B0BAE75E2E9216605B8B469E187C
+CT=94E8BBC942B4127A0A8EBEC59319CF57
+PT=274FE85E229321D4A6B2E9D4F0D3830F
+
+I=36
+KEY=A9FC5AC4A7B3550BC34E4BA94C0D328BFC38C63BF4D6E375B97D587512B9238E
+IV=E4649CCBA81043B919735A66FFB4CC87
+CT=274FE85E229321D4A6B2E9D4F0D3830F
+PT=256AC08E72D79B0CB7457B26769AC226
+
+I=37
+KEY=1C44DEF03398188AC1B2EF6A6E91A33FD95206B5860178790E3823536423E1A8
+IV=B5B88434942B4D8102FCA4C3229C91B4
+CT=256AC08E72D79B0CB7457B26769AC226
+PT=366D17A14CA0FC192DBB731C1C305874
+
+I=38
+KEY=3D80B92C01F9721032366B20D97DC097EF3F1114CAA184602383504F7813B9DC
+IV=21C467DC32616A9AF384844AB7EC63A8
+CT=366D17A14CA0FC192DBB731C1C305874
+PT=000B4A6054663874ECAE310144BA9377
+
+I=39
+KEY=48DD38DC16A4CE76338C95A866C1C795EF345B749EC7BC14CF2D614E3CA92AAB
+IV=755D81F0175DBC6601BAFE88BFBC0702
+CT=000B4A6054663874ECAE310144BA9377
+PT=32B32D65566626D794FB296CA816B0A8
+
+I=40
+KEY=C62EFA02F23FE796799BF9151FBFD8D7DD877611C8A19AC35BD6482294BF9A03
+IV=8EF3C2DEE49B29E04A176CBD797E1F42
+CT=32B32D65566626D794FB296CA816B0A8
+PT=D743A090101B1BAF5B83E8C06517E193
+
+I=41
+KEY=91400A96EEADA906ABD4C3F6863CE4750AC4D681D8BA816C0055A0E2F1A87B90
+IV=576EF0941C924E90D24F3AE399833CA2
+CT=D743A090101B1BAF5B83E8C06517E193
+PT=2DE61760BEE8F811B3FEB44D2C566DB0
+
+I=42
+KEY=9983EAD4BF987E39644D7D0963F93DB62722C1E16652797DB3AB14AFDDFE1620
+IV=08C3E0425135D73FCF99BEFFE5C5D9C3
+CT=2DE61760BEE8F811B3FEB44D2C566DB0
+PT=E97598EFFED4128DCCCDD7A04D8405E1
+
+I=43
+KEY=B72929D2D02A00D36E7C3BD11CDB9FA4CE57590E98866BF07F66C30F907A13C1
+IV=2EAAC3066FB27EEA0A3146D87F22A212
+CT=E97598EFFED4128DCCCDD7A04D8405E1
+PT=5983276B92B95898302385F5156B6201
+
+I=44
+KEY=CC9928E45F7885515986E0D431F3288E97D47E650A3F33684F4546FA851171C0
+IV=7BB001368F52858237FADB052D28B72A
+CT=5983276B92B95898302385F5156B6201
+PT=ABDEFF06E04995FD2C5472D05056A0A3
+
+I=45
+KEY=59A2D8FCED30176B73FF5642BCE4A9163C0A8163EA76A6956311342AD547D163
+IV=953BF018B248923A2A79B6968D178198
+CT=ABDEFF06E04995FD2C5472D05056A0A3
+PT=E4210D117B05F3EADC8AF75D1A80B823
+
+I=46
+KEY=FFCCE373B679DE040165054D9EECA460D82B8C729173557FBF9BC377CFC76940
+IV=A66E3B8F5B49C96F729A530F22080D76
+CT=E4210D117B05F3EADC8AF75D1A80B823
+PT=4786111E1B0F2CA78E43CC0D154BC1EA
+
+I=47
+KEY=36E29D3C942DBC6A12B53088632260649FAD9D6C8A7C79D831D80F7ADA8CA8AA
+IV=C92E7E4F2254626E13D035C5FDCEC404
+CT=4786111E1B0F2CA78E43CC0D154BC1EA
+PT=122DC3B40007BA36BC7E7EE808911DAE
+
+I=48
+KEY=3692660415E53226D2758E60FD6E3F5F8D805ED88A7BC3EE8DA67192D21DB504
+IV=0070FB3881C88E4CC0C0BEE89E4C5F3B
+CT=122DC3B40007BA36BC7E7EE808911DAE
+PT=5E443EC882C1B938C2A4C412D3A92FDF
+
+I=49
+KEY=E3C167B38A29EDFBDC37A50F434C7056D3C4601008BA7AD64F02B58001B49ADB
+IV=D55301B79FCCDFDD0E422B6FBE224F09
+CT=5E443EC882C1B938C2A4C412D3A92FDF
+PT=14A8F43BA8829B134D6BD110E6D43F92
+
+I=50
+KEY=8AD38A575E425D347C5B5BFB08A5173CC76C942BA038E1C502696490E760A549
+IV=6912EDE4D46BB0CFA06CFEF44BE9676A
+CT=14A8F43BA8829B134D6BD110E6D43F92
+PT=025982911796C2FE34C89157BF2959BD
+
+I=51
+KEY=AE4ABA37DD2C3C5109B13C3DD9FCB67EC53516BAB7AE233B36A1F5C75849FCF4
+IV=24993060836E616575EA67C6D159A142
+CT=025982911796C2FE34C89157BF2959BD
+PT=BC658642A8EEBEC6DBE2A76BCD70799B
+
+I=52
+KEY=31AC934C58BF87AD1EE4357BBE315175795090F81F409DFDED4352AC9539856F
+IV=9FE6297B8593BBFC1755094667CDE70B
+CT=BC658642A8EEBEC6DBE2A76BCD70799B
+PT=132CE1CC36EFE58A4A53534B962D2D70
+
+I=53
+KEY=79F7C18CA600203D404363908749B22F6A7C713429AF7877A71001E70314A81F
+IV=485B52C0FEBFA7905EA756EB3978E35A
+CT=132CE1CC36EFE58A4A53534B962D2D70
+PT=8D2BA39F08ED00BEB51543C0FCCFA57C
+
+I=54
+KEY=162A4089A1E46EAB5C9592BF1F98BCC2E757D2AB214278C912054227FFDB0D63
+IV=6FDD810507E44E961CD6F12F98D10EED
+CT=8D2BA39F08ED00BEB51543C0FCCFA57C
+PT=2E8D05A8A3066094025FE07F3A53A94E
+
+I=55
+KEY=DB5F33F93F2B795EDA54095937B79E4CC9DAD7038244185D105AA258C588A42D
+IV=CD7573709ECF17F586C19BE6282F228E
+CT=2E8D05A8A3066094025FE07F3A53A94E
+PT=D39EC2261C53AD45F91627E1B1F62D22
+
+I=56
+KEY=CCA770427DF8CF5350864D4E86E6D8891A4415259E17B518E94C85B9747E890F
+IV=17F843BB42D3B60D8AD24417B15146C5
+CT=D39EC2261C53AD45F91627E1B1F62D22
+PT=F517DC01890C3D300520B6CE343B7F94
+
+I=57
+KEY=25F53E7CC6590220E9426296568DE496EF53C924171B8828EC6C33774045F69B
+IV=E9524E3EBBA1CD73B9C42FD8D06B3C1F
+CT=F517DC01890C3D300520B6CE343B7F94
+PT=ECBCCBB21AC2D07E3ECACD26D42E4444
+
+I=58
+KEY=6D4A92C82C6C3D44CED65D76BB33B23E03EF02960DD95856D2A6FE51946BB2DF
+IV=48BFACB4EA353F6427943FE0EDBE56A8
+CT=ECBCCBB21AC2D07E3ECACD26D42E4444
+PT=6FF7C241A5FF025FAA8C4DAF5E0950AE
+
+I=59
+KEY=A3D0AB0A0F8EDF232D111458D3B8B1C66C18C0D7A8265A09782AB3FECA62E271
+IV=CE9A39C223E2E267E3C7492E688B03F8
+CT=6FF7C241A5FF025FAA8C4DAF5E0950AE
+PT=3B7E4B74F021F9E995627DE42B03D7D8
+
+I=60
+KEY=A8E2D59CF188CDA75C80FA49889F7EE357668BA35807A3E0ED48CE1AE16135A9
+IV=0B327E96FE0612847191EE115B27CF25
+CT=3B7E4B74F021F9E995627DE42B03D7D8
+PT=6759C15ED1049A51953E814C2445F3C6
+
+I=61
+KEY=092010B28BD3C8E59D09CE85169190BB303F4AFD890339B178764F56C524C66F
+IV=A1C2C52E7A5B0542C18934CC9E0EEE58
+CT=6759C15ED1049A51953E814C2445F3C6
+PT=05F681CB7984491E2CE5B1025F860BEB
+
+I=62
+KEY=538E3068E1059FE89C27D5F19405274835C9CB36F08770AF5493FE549AA2CD84
+IV=5AAE20DA6AD6570D012E1B748294B7F3
+CT=05F681CB7984491E2CE5B1025F860BEB
+PT=E046F5B143CEEAC44EF520F2C3BFA96E
+
+I=63
+KEY=78B5D2551099875910844A17ABBACD64D58F3E87B3499A6B1A66DEA6591D64EA
+IV=2B3BE23DF19C18B18CA39FE63FBFEA2C
+CT=E046F5B143CEEAC44EF520F2C3BFA96E
+PT=0F508DD1BCC6C520A81AE7EC75361179
+
+I=64
+KEY=8D6E7E66F496C358A369EF7C49D117A3DADFB3560F8F5F4BB27C394A2C2B7593
+IV=F5DBAC33E40F4401B3EDA56BE26BDAC7
+CT=0F508DD1BCC6C520A81AE7EC75361179
+PT=BAE114FFF19FD11336D454BF0FF6954D
+
+I=65
+KEY=781164DD6F90037E9896672FD24F1AF6603EA7A9FE108E5884A86DF523DDE0DE
+IV=F57F1ABB9B06C0263BFF88539B9E0D55
+CT=BAE114FFF19FD11336D454BF0FF6954D
+PT=FE73CE62C227459729E8FDC9116EC6BB
+
+I=66
+KEY=9268D6C0E8DE5AFBCCE137EADE6293E49E4D69CB3C37CBCFAD40903C32B32665
+IV=EA79B21D874E5985547750C50C2D8912
+CT=FE73CE62C227459729E8FDC9116EC6BB
+PT=B13971219C12C12A8308213759196B0D
+
+I=67
+KEY=701EB5AEF8262D8634B53AF1768ED68E2F7418EAA0250AE52E48B10B6BAA4D68
+IV=E276636E10F8777DF8540D1BA8EC456A
+CT=B13971219C12C12A8308213759196B0D
+PT=4F5A36173C16ED45F5D36B9D1AED84FF
+
+I=68
+KEY=40D027792516E1FE962F63B9C939677C602E2EFD9C33E7A0DB9BDA967147C997
+IV=30CE92D7DD30CC78A29A5948BFB7B1F2
+CT=4F5A36173C16ED45F5D36B9D1AED84FF
+PT=9FB89D6FEFE606058FE40B5492643596
+
+I=69
+KEY=CAAFC0DD2E4FC86AC19B40BC34F14630FF96B39273D5E1A5547FD1C2E323FC01
+IV=8A7FE7A40B59299457B42305FDC8214C
+CT=9FB89D6FEFE606058FE40B5492643596
+PT=F6D0717F197CBAE383B55117FCBE07AC
+
+I=70
+KEY=CE03D67B6DAB9CFAA0C20129475620230946C2ED6AA95B46D7CA80D51F9DFBAD
+IV=04AC16A643E454906159419573A76613
+CT=F6D0717F197CBAE383B55117FCBE07AC
+PT=7747114FF82F8C7568BE51912CFDB51A
+
+I=71
+KEY=DDCEDD32E5F0D26F7707DAE453288B537E01D3A29286D733BF74D14433604EB7
+IV=13CD0B49885B4E95D7C5DBCD147EAB70
+CT=7747114FF82F8C7568BE51912CFDB51A
+PT=E75313A8DFA7EB0AD1664B14D2DBE284
+
+I=72
+KEY=6B032958C3379BD4BEC22CD4271EB4589952C00A4D213C396E129A50E1BBAC33
+IV=B6CDF46A26C749BBC9C5F63074363F0B
+CT=E75313A8DFA7EB0AD1664B14D2DBE284
+PT=42FEDBDC4F0BD11DA42163D76E952DC7
+
+I=73
+KEY=1710F6CF86EDB5F1364F19CA676ED69BDBAC1BD6022AED24CA33F9878F2E81F4
+IV=7C13DF9745DA2E25888D351E407062C3
+CT=42FEDBDC4F0BD11DA42163D76E952DC7
+PT=6E0166BA404B3AEFACCA8E972F087EA5
+
+I=74
+KEY=9D9711F138D0C2D1003E2C99BB0F0447B5AD7D6C4261D7CB66F97710A026FF51
+IV=8A87E73EBE3D772036713553DC61D2DC
+CT=6E0166BA404B3AEFACCA8E972F087EA5
+PT=644A1DCFCA2EC01C3E8911768837D99E
+
+I=75
+KEY=1BD7E446FADA5507ECE26BBB635045E7D1E760A3884F17D758706666281126CF
+IV=8640F5B7C20A97D6ECDC4722D85F41A0
+CT=644A1DCFCA2EC01C3E8911768837D99E
+PT=4E69AE75BD37DB8024DBD1A11D6D414E
+
+I=76
+KEY=3454FD4B259FB4C086288ADAFF6464CD9F8ECED63578CC577CABB7C7357C6781
+IV=2F83190DDF45E1C76ACAE1619C34212A
+CT=4E69AE75BD37DB8024DBD1A11D6D414E
+PT=F63964784AD35374EAFC933AC11A48B6
+
+I=77
+KEY=97EFD593918FB16F2D6889C118C5ED4469B7AAAE7FAB9F23965724FDF4662F37
+IV=A3BB28D8B41005AFAB40031BE7A18989
+CT=F63964784AD35374EAFC933AC11A48B6
+PT=51CBF7F67A22DA909567D67F1919ECEF
+
+I=78
+KEY=481E90BC31903905C08D0E5AEF79A514387C5D58058945B30330F282ED7FC3D8
+IV=DFF1452FA01F886AEDE5879BF7BC4850
+CT=51CBF7F67A22DA909567D67F1919ECEF
+PT=9AE181DE8DB65E7E242926091A17D0B1
+
+I=79
+KEY=35A4F86146CED63BDCB485B0AE4C205AA29DDC86883F1BCD2719D48BF7681369
+IV=7DBA68DD775EEF3E1C398BEA4135854E
+CT=9AE181DE8DB65E7E242926091A17D0B1
+PT=47E15B5AC96A7FDB805F3B8862D9055F
+
+I=80
+KEY=5ECF20C5884FDF95C2B7C17D40CD6923E57C87DC41556416A746EF0395B11636
+IV=6B6BD8A4CE8109AE1E0344CDEE814979
+CT=47E15B5AC96A7FDB805F3B8862D9055F
+PT=1806C474A1ECE5D8183E725804FB92C3
+
+I=81
+KEY=AC473047ADF97E75C100CBBD73FA0892FD7A43A8E0B981CEBF789D5B914A84F5
+IV=F288108225B6A1E003B70AC0333761B1
+CT=1806C474A1ECE5D8183E725804FB92C3
+PT=0A0615424DAD4EFC25EC43B13C672727
+
+I=82
+KEY=6620AE39484EDD0EC21A3E3F659537DDF77C56EAAD14CF329A94DEEAAD2DA3D2
+IV=CA679E7EE5B7A37B031AF582166F3F4F
+CT=0A0615424DAD4EFC25EC43B13C672727
+PT=551639A520D0D043CAD42CB02900D5EF
+
+I=83
+KEY=04D696BB056CC59492B376CB3A0286EAA26A6F4F8DC41F715040F25A842D763D
+IV=62F638824D22189A50A948F45F97B137
+CT=551639A520D0D043CAD42CB02900D5EF
+PT=DF906B0E72FEACC9B45381B992E23A5A
+
+I=84
+KEY=0AED1F2A6660BDBA660E00137E38C1C97DFA0441FF3AB3B8E41373E316CF4C67
+IV=0E3B8991630C782EF4BD76D8443A4723
+CT=DF906B0E72FEACC9B45381B992E23A5A
+PT=D477C6287D05C0F83B27B1FD91F5F908
+
+I=85
+KEY=E0A51B848A913A860FD2C39941C8C3A1A98DC269823F7340DF34C21E873AB56F
+IV=EA4804AEECF1873C69DCC38A3FF00268
+CT=D477C6287D05C0F83B27B1FD91F5F908
+PT=6AB7E109C085B0BA7C8A8B76482F9C80
+
+I=86
+KEY=A8B0500EC0292EF668A03E8293E235BAC33A236042BAC3FAA3BE4968CF1529EF
+IV=48154B8A4AB814706772FD1BD22AF61B
+CT=6AB7E109C085B0BA7C8A8B76482F9C80
+PT=71A31000A5763A0C79B6353E39FFBE84
+
+I=87
+KEY=34C53C34901B693F4611F20F1DD5125EB2993360E7CCF9F6DA087C56F6EA976B
+IV=9C756C3A503247C92EB1CC8D8E3727E4
+CT=71A31000A5763A0C79B6353E39FFBE84
+PT=B5B377EBEBC0B32A5A0C7E2A2504C32A
+
+I=88
+KEY=A13850B9164EF60EB77E06819605AC01072A448B0C0C4ADC8004027CD3EE5441
+IV=95FD6C8D86559F31F16FF48E8BD0BE5F
+CT=B5B377EBEBC0B32A5A0C7E2A2504C32A
+PT=B74459D1E7C5CF9106C362572FE9C917
+
+I=89
+KEY=37261F6D588FF9028A23319CE02DDA71B06E1D5AEBC9854D86C7602BFC079D56
+IV=961E4FD44EC10F0C3D5D371D76287670
+CT=B74459D1E7C5CF9106C362572FE9C917
+PT=5777A0854A6E00DB0B6B199BDD35447A
+
+I=90
+KEY=085A7B276E58B9175204A87D74B9E78AE719BDDFA1A785968DAC79B02132D92C
+IV=3F7C644A36D74015D82799E194943DFB
+CT=5777A0854A6E00DB0B6B199BDD35447A
+PT=01CC73B6EE44403DFED2C91D6F0DC441
+
+I=91
+KEY=61DC99DD0C1470F511D79DCC2541002AE6D5CE694FE3C5AB737EB0AD4E3F1D6D
+IV=6986E2FA624CC9E243D335B151F8E7A0
+CT=01CC73B6EE44403DFED2C91D6F0DC441
+PT=8993161CF3E75DE836BB2C1955581DB6
+
+I=92
+KEY=AEB68207F1E4395794BA7E28CE9BF7996F46D875BC04984345C59CB41B6700DB
+IV=CF6A1BDAFDF049A2856DE3E4EBDAF7B3
+CT=8993161CF3E75DE836BB2C1955581DB6
+PT=2A4D6929ED3A66E71EFC40F1840CD649
+
+I=93
+KEY=DBF8A8AED7B6D7BCFD1B5BEEC3F01AC0450BB15C513EFEA45B39DC459F6BD692
+IV=754E2AA92652EEEB69A125C60D6BED59
+CT=2A4D6929ED3A66E71EFC40F1840CD649
+PT=596CE09B1176A9FB5A9973086A0E4C12
+
+I=94
+KEY=1A61C7F2FB652E256190C0896F800CD61C6751C74048575F01A0AF4DF5659A80
+IV=C1996F5C2CD3F9999C8B9B67AC701616
+CT=596CE09B1176A9FB5A9973086A0E4C12
+PT=B57AC41360C13F6831689C311BD0ED2C
+
+I=95
+KEY=FC3828E6A9487698231D11C10C353F2DA91D95D42089683730C8337CEEB577AC
+IV=E659EF14522D58BD428DD14863B533FB
+CT=B57AC41360C13F6831689C311BD0ED2C
+PT=F58AA69EEBF25943C728FA26524DE154
+
+I=96
+KEY=9D16CAD42D19D1A3B9CB12566745B2765C97334ACB7B3174F7E0C95ABCF896F8
+IV=612EE2328451A73B9AD603976B708D5B
+CT=F58AA69EEBF25943C728FA26524DE154
+PT=4A678FED6C5E5898A47F2DFE9DF71DF2
+
+I=97
+KEY=D9A8554717435E69EFD4A617CA70B0D216F0BCA7A72569EC539FE4A4210F8B0A
+IV=44BE9F933A5A8FCA561FB441AD3502A4
+CT=4A678FED6C5E5898A47F2DFE9DF71DF2
+PT=38011537A04E6C4A81510899741F2FFC
+
+I=98
+KEY=AA9D9A7B4E187F8D78AAEE11967A20A42EF1A990076B05A6D2CEEC3D5510A4F6
+IV=7335CF3C595B21E4977E48065C0A9076
+CT=38011537A04E6C4A81510899741F2FFC
+PT=6472060F536BC5F83A3C247F63C3580E
+
+I=99
+KEY=90A5D8CD93F0AE068E8DC72CA5DD6E184A83AF9F5400C05EE8F2C84236D3FCF8
+IV=3A3842B6DDE8D18BF627293D33A74EBC
+CT=6472060F536BC5F83A3C247F63C3580E
+PT=08B99B59D0584DAC0412796871FE3F27
+
+I=100
+KEY=489520777A18D5BF65B85AAEA29DB3D8423A34C684588DF2ECE0B12A472DC3DF
+IV=D830F8BAE9E87BB9EB359D820740DDC0
+CT=08B99B59D0584DAC0412796871FE3F27
+PT=E8B8579DF9E918B3D24C18E17068AD66
+
+I=101
+KEY=69542EE000ACEEFB5E0EB471F3CD0927AA82635B7DB195413EACA9CB37456EB9
+IV=21C10E977AB43B443BB6EEDF5150BAFF
+CT=E8B8579DF9E918B3D24C18E17068AD66
+PT=9B6C3234993F6900B3E572B5A43CA644
+
+I=102
+KEY=E88C863186548F35DF6EFB48743B7C1831EE516FE48EFC418D49DB7E9379C8FD
+IV=81D8A8D186F861CE81604F3987F6753F
+CT=9B6C3234993F6900B3E572B5A43CA644
+PT=E0A2962A02698489813292D33D02D0AB
+
+I=103
+KEY=C9DD7904D060B79B83F97A1FC93E50DED14CC745E6E778C80C7B49ADAE7B1856
+IV=2151FF35563438AE5C978157BD052CC6
+CT=E0A2962A02698489813292D33D02D0AB
+PT=10C80B22D8EC54B855E103D6B76C03BC
+
+I=104
+KEY=D208B7A87003A507561FA5C7422A85C5C184CC673E0B2C70599A4A7B19171BEA
+IV=1BD5CEACA063129CD5E6DFD88B14D51B
+CT=10C80B22D8EC54B855E103D6B76C03BC
+PT=CE88B76CC2223EB68BA9B5852C1921DB
+
+I=105
+KEY=27B0E1BF8EA57E8AD51BC3FA278369780F0C7B0BFC2912C6D233FFFE350E3A31
+IV=F5B85617FEA6DB8D8304663D65A9ECBD
+CT=CE88B76CC2223EB68BA9B5852C1921DB
+PT=00401EEE034A193C86A23152AF4B767E
+
+I=106
+KEY=45E37A710D9E754EE90B7C1DBB894DC20F4C65E5FF630BFA5491CEAC9A454C4F
+IV=62539BCE833B0BC43C10BFE79C0A24BA
+CT=00401EEE034A193C86A23152AF4B767E
+PT=CEF1DC8A618BF71C68720E6EEDE31EEF
+
+I=107
+KEY=B432E78F49D50B045C8B598EEA3D4142C1BDB96F9EE8FCE63CE3C0C277A652A0
+IV=F1D19DFE444B7E4AB580259351B40C80
+CT=CEF1DC8A618BF71C68720E6EEDE31EEF
+PT=EF8FB3790627F31E5CBF21B31FF942DE
+
+I=108
+KEY=F5CE9C0AF13DA60D32912620673AEE572E320A1698CF0FF8605CE171685F107E
+IV=41FC7B85B8E8AD096E1A7FAE8D07AF15
+CT=EF8FB3790627F31E5CBF21B31FF942DE
+PT=2EF1C697D948D712AA177855B0D56650
+
+I=109
+KEY=DA14D71084F47D87385EF58128C7517F00C3CC814187D8EACA4B9924D88A762E
+IV=2FDA4B1A75C9DB8A0ACFD3A14FFDBF28
+CT=2EF1C697D948D712AA177855B0D56650
+PT=0A20E82375680D134FE05AC74E3A0217
+
+I=110
+KEY=B68F8C980984E2508E9706117256A4A70AE324A234EFD5F985ABC3E396B07439
+IV=6C9B5B888D709FD7B6C9F3905A91F5D8
+CT=0A20E82375680D134FE05AC74E3A0217
+PT=46AF886AB871A3DABDEB32F1738E180B
+
+I=111
+KEY=078A8955ECB2F6ACB249E2DB36B660794C4CACC88C9E76233840F112E53E6C32
+IV=B10505CDE53614FC3CDEE4CA44E0C4DE
+CT=46AF886AB871A3DABDEB32F1738E180B
+PT=79949181E3D20A3042C1E7BDAE73330B
+
+I=112
+KEY=7CB2A8360EE65417A979D9B5D4A32D2935D83D496F4C7C137A8116AF4B4D5F39
+IV=7B382163E254A2BB1B303B6EE2154D50
+CT=79949181E3D20A3042C1E7BDAE73330B
+PT=12C5E55F6EA47BC44392AE9FB888C1FB
+
+I=113
+KEY=E5835F97C4FF1B007D695DD0E72324A9271DD81601E807D73913B830F3C59EC2
+IV=9931F7A1CA194F17D410846533800980
+CT=12C5E55F6EA47BC44392AE9FB888C1FB
+PT=FCA15AB64A01FA6E89FE41F72A67D9E8
+
+I=114
+KEY=50932FF04CCCE411AA0541726C1C4CD7DBBC82A04BE9FDB9B0EDF9C7D9A2472A
+IV=B51070678833FF11D76C1CA28B3F687E
+CT=FCA15AB64A01FA6E89FE41F72A67D9E8
+PT=7B75EC39F707C3C90691BE561AD5CAC6
+
+I=115
+KEY=ECAEC5FD6AF5F7DF2587C1A40CB046ADA0C96E99BCEE3E70B67C4791C3778DEC
+IV=BC3DEA0D263913CE8F8280D660AC0A7A
+CT=7B75EC39F707C3C90691BE561AD5CAC6
+PT=1D3D15FFA0B69EFA8E146301411DFA49
+
+I=116
+KEY=82F88C3850CC3D111C2125F34840A9A2BDF47B661C58A08A38682490826A77A5
+IV=6E5649C53A39CACE39A6E45744F0EF0F
+CT=1D3D15FFA0B69EFA8E146301411DFA49
+PT=34AFB3D6F0BD9ACB6954BB96B1067F9E
+
+I=117
+KEY=702FEC9E7F0D2369FF35D4B7A1269AD3895BC8B0ECE53A41513C9F06336C083B
+IV=F2D760A62FC11E78E314F144E9663371
+CT=34AFB3D6F0BD9ACB6954BB96B1067F9E
+PT=899E4C8192661CCA7C73CDFBC3DCA2F3
+
+I=118
+KEY=A1DF98E4585C1A4C15C42AD0782C925000C584317E83268B2D4F52FDF0B0AAC8
+IV=D1F0747A27513925EAF1FE67D90A0883
+CT=899E4C8192661CCA7C73CDFBC3DCA2F3
+PT=3097C0413291E217FB0E3A8A2D908C12
+
+I=119
+KEY=9F9082177BF33D8AF6131018E1EFD49F305244704C12C49CD6416877DD2026DA
+IV=3E4F1AF323AF27C6E3D73AC899C346CF
+CT=3097C0413291E217FB0E3A8A2D908C12
+PT=6C71968295905F881F95DC8BA481CA72
+
+I=120
+KEY=B7E5B267EDBFFD4DB4526BA2A1978C105C23D2F2D9829B14C9D4B4FC79A1ECA8
+IV=28753070964CC0C742417BBA4078588F
+CT=6C71968295905F881F95DC8BA481CA72
+PT=96D0AB98DBD0CB94A68FC41BEF0B418D
+
+I=121
+KEY=127FAA6C94663FA9008A1FB7A419C036CAF3796A025250806F5B70E796AAAD25
+IV=A59A180B79D9C2E4B4D87415058E4C26
+CT=96D0AB98DBD0CB94A68FC41BEF0B418D
+PT=9E3E4428A911FB328A9F89D7D5E527DB
+
+I=122
+KEY=1B9493F07E7E5F07473E6997AE15CCDC54CD3D42AB43ABB2E5C4F930434F8AFE
+IV=09EB399CEA1860AE47B476200A0C0CEA
+CT=9E3E4428A911FB328A9F89D7D5E527DB
+PT=0DB5EF3481A9945BAF2E499B5CDE8DDC
+
+I=123
+KEY=7B2B8201EEF1601C44006A6D7E06EE355978D2762AEA3FE94AEAB0AB1F910722
+IV=60BF11F1908F3F1B033E03FAD01322E9
+CT=0DB5EF3481A9945BAF2E499B5CDE8DDC
+PT=C0569DD7DCAE99859D3987B04FFD8CF0
+
+I=124
+KEY=B2D7FEE25A564FA00CEDC8E05BAC7F7D992E4FA1F644A66CD7D3371B506C8BD2
+IV=C9FC7CE3B4A72FBC48EDA28D25AA9148
+CT=C0569DD7DCAE99859D3987B04FFD8CF0
+PT=D8AF74B5BB8E632299D32E8DD4DDA012
+
+I=125
+KEY=5A06C176A290538BC549CAA8041539A941813B144DCAC54E4E00199684B12BC0
+IV=E8D13F94F8C61C2BC9A402485FB946D4
+CT=D8AF74B5BB8E632299D32E8DD4DDA012
+PT=0821FB911EDE8CDCD97DDAEDCCDB7B1C
+
+I=126
+KEY=1318D23A3A966D16FDEEE300571F3A8549A0C08553144992977DC37B486A50DC
+IV=491E134C98063E9D38A729A8530A032C
+CT=0821FB911EDE8CDCD97DDAEDCCDB7B1C
+PT=BCB2831AF3721C020FC1D683C19AEBEA
+
+I=127
+KEY=D6D24AA79B3CA4434CCE2B1470B4FE18F512439FA066559098BC15F889F0BB36
+IV=C5CA989DA1AAC955B120C81427ABC49D
+CT=BCB2831AF3721C020FC1D683C19AEBEA
+PT=BE869BB3C18EB622CCAC81B6F5B62CC4
+
+I=128
+KEY=5F62348BCD9ADB23A19E683400D968404B94D82C61E8E3B25410944E7C4697F2
+IV=89B07E2C56A67F60ED504320706D9658
+CT=BE869BB3C18EB622CCAC81B6F5B62CC4
+PT=C8D3EDD549FEA614B4F2348F82DE5531
+
+I=129
+KEY=A64795E417B7C9344185F6B0C66C096B834735F9281645A6E0E2A0C1FE98C2C3
+IV=F925A16FDA2D1217E01B9E84C6B5612B
+CT=C8D3EDD549FEA614B4F2348F82DE5531
+PT=4049BDBD9C302D8F2E06F10D34317784
+
+I=130
+KEY=CD1F9AB35436014B0CF7ECE9FF98C2BDC30E8844B4266829CEE451CCCAA9B547
+IV=6B580F574381C87F4D721A5939F4CBD6
+CT=4049BDBD9C302D8F2E06F10D34317784
+PT=E1338EA5C5462E8C458E5546FA60324D
+
+I=131
+KEY=78F7558C14BB5100CE93CD49C22BE2D9223D06E1716046A58B6A048A30C9870A
+IV=B5E8CF3F408D504BC26421A03DB32064
+CT=E1338EA5C5462E8C458E5546FA60324D
+PT=055984AA929F4D45F5812DC719D4EF24
+
+I=132
+KEY=2DBC5092C4C7AB427576EBA2855E00562764824BE3FF0BE07EEB294D291D682E
+IV=554B051ED07CFA42BBE526EB4775E28F
+CT=055984AA929F4D45F5812DC719D4EF24
+PT=ABC519C4290C69D98BF7AC2A56767202
+
+I=133
+KEY=68FA1D8FE36FC5B48A7486FBB34A7B598CA19B8FCAF36239F51C85677F6B1A2C
+IV=45464D1D27A86EF6FF026D5936147B0F
+CT=ABC519C4290C69D98BF7AC2A56767202
+PT=C825E44799B1739A1F4CB406BBEABEDD
+
+I=134
+KEY=A2302849850FD33D4048B898DB6C7B0244847FC8534211A3EA503161C481A4F1
+IV=CACA35C666601689CA3C3E636826005B
+CT=C825E44799B1739A1F4CB406BBEABEDD
+PT=D24EE8D56CE09AFE1061B4016ADD61F7
+
+I=135
+KEY=9B2E669EA4BB938072E6E97B0ACF834E96CA971D3FA28B5DFA318560AE5CC506
+IV=391E4ED721B440BD32AE51E3D1A3F84C
+CT=D24EE8D56CE09AFE1061B4016ADD61F7
+PT=50FECB118EABF93BB97102E9212C883D
+
+I=136
+KEY=A07C5EBAC9D0F862AD525C76460B4BA9C6345C0CB1097266434087898F704D3B
+IV=3B5238246D6B6BE2DFB4B50D4CC4C8E7
+CT=50FECB118EABF93BB97102E9212C883D
+PT=C370C26BD3805211A4679399DFA4DDCB
+
+I=137
+KEY=414C776222058D6285574741B2B4D11D05449E6762892077E727141050D490F0
+IV=E13029D8EBD5750028051B37F4BF9AB4
+CT=C370C26BD3805211A4679399DFA4DDCB
+PT=79715A04DF9216268C77A152CA96C2F6
+
+I=138
+KEY=5E54A416470FE8BA263C0FC88FD884297C35C463BD1B36516B50B5429A425206
+IV=1F18D374650A65D8A36B48893D6C5534
+CT=79715A04DF9216268C77A152CA96C2F6
+PT=06DF18B5FAF35F03FE22E39CAE430655
+
+I=139
+KEY=98C55CFFB53FA72345EF936283F64BB17AEADCD647E86952957256DE34015453
+IV=C691F8E9F2304F9963D39CAA0C2ECF98
+CT=06DF18B5FAF35F03FE22E39CAE430655
+PT=1AED42EB32C4BAEAF9946818AA00C324
+
+I=140
+KEY=B8332B1EE5D6A4E1BBFA20AEAE22330560079E3D752CD3B86CE63EC69E019777
+IV=20F677E150E903C2FE15B3CC2DD478B4
+CT=1AED42EB32C4BAEAF9946818AA00C324
+PT=D276B6A6D480165A944572EF76D4B3E8
+
+I=141
+KEY=6E50753A2A0814A778FA2BC773C6A7A2B271289BA1ACC5E2F8A34C29E8D5249F
+IV=D6635E24CFDEB046C3000B69DDE494A7
+CT=D276B6A6D480165A944572EF76D4B3E8
+PT=BA46F59DFADC6CA2CBB7D80E33D7B24B
+
+I=142
+KEY=D8E1763EAD728AB8AA2284964BE586880837DD065B70A94033149427DB0296D4
+IV=B6B10304877A9E1FD2D8AF513823212A
+CT=BA46F59DFADC6CA2CBB7D80E33D7B24B
+PT=FC9B9F7B5120E1D8B2DD58D211EFF053
+
+I=143
+KEY=458CB146C73342F9D5EE4364C400E8E5F4AC427D0A50489881C9CCF5CAED6687
+IV=9D6DC7786A41C8417FCCC7F28FE56E6D
+CT=FC9B9F7B5120E1D8B2DD58D211EFF053
+PT=6AD8BCAEFF6F0BF9F360FF601C9B7A43
+
+I=144
+KEY=F1FBE00DA1F634ACACB6E2F4F15C11179E74FED3F53F436172A93395D6761CC4
+IV=B477514B66C576557958A190355CF9F2
+CT=6AD8BCAEFF6F0BF9F360FF601C9B7A43
+PT=BB6E45D060E186323AC2B50CFB988856
+
+I=145
+KEY=3FBC35054FFF43657936BB676A5C5D1F251ABB0395DEC553486B86992DEE9492
+IV=CE47D508EE0977C9D58059939B004C08
+CT=BB6E45D060E186323AC2B50CFB988856
+PT=31B6157397933EE35DEE5B40FE7237BB
+
+I=146
+KEY=D49B4E96F8FC2D91FBED3985C53BEB8314ACAE70024DFBB01585DDD9D39CA329
+IV=EB277B93B7036EF482DB82E2AF67B69C
+CT=31B6157397933EE35DEE5B40FE7237BB
+PT=EFEB82ED91C5C60FB8F910542804B57B
+
+I=147
+KEY=8D4ABC926827F066B4391FF4B3D6EC99FB472C9D93883DBFAD7CCD8DFB981652
+IV=59D1F20490DBDDF74FD4267176ED071A
+CT=EFEB82ED91C5C60FB8F910542804B57B
+PT=E30D071737AB9991F000302502BE84A6
+
+I=148
+KEY=086A14365F781B2FAF533B1534F458D2184A2B8AA423A42E5D7CFDA8F92692F4
+IV=8520A8A4375FEB491B6A24E18722B44B
+CT=E30D071737AB9991F000302502BE84A6
+PT=856AF9DF9A9FE5038B75C98E0E1C720F
+
+I=149
+KEY=A64DE8CF2DF04ADB60E88C769F7025BC9D20D2553EBC412DD6093426F73AE0FB
+IV=AE27FCF9728851F4CFBBB763AB847D6E
+CT=856AF9DF9A9FE5038B75C98E0E1C720F
+PT=D84910F298F91E081480A912B1AF32D6
+
+I=150
+KEY=C52575277A0BD189E2F746FC51CA77844569C2A7A6455F25C2899D344695D22D
+IV=63689DE857FB9B52821FCA8ACEBA5238
+CT=D84910F298F91E081480A912B1AF32D6
+PT=57E4A4A2D639D414ED7F82583B4FFA52
+
+I=151
+KEY=CB9A5219490F7EE31B030ECE521C589B128D6605707C8B312FF61F6C7DDA287F
+IV=0EBF273E3304AF6AF9F4483203D62F1F
+CT=57E4A4A2D639D414ED7F82583B4FFA52
+PT=1CECC8218392F2047C0B70BEBFCC5846
+
+I=152
+KEY=AA6412AAC8FC309E6BCDFFD1DA01B6470E61AE24F3EE793553FD6FD2C2167039
+IV=61FE40B381F34E7D70CEF11F881DEEDC
+CT=1CECC8218392F2047C0B70BEBFCC5846
+PT=EC2B86A04DB2B4F41830E5EA035531E3
+
+I=153
+KEY=EFF5BC892E47F4C7EA859969255AC665E24A2884BE5CCDC14BCD8A38C14341DA
+IV=4591AE23E6BBC459814866B8FF5B7022
+CT=EC2B86A04DB2B4F41830E5EA035531E3
+PT=8A1A8EE6E08F61E99FC37AC177881C8A
+
+I=154
+KEY=D62E9405D7402765E30FDAD7A29B2E716850A6625ED3AC28D40EF0F9B6CB5D50
+IV=39DB288CF907D3A2098A43BE87C1E814
+CT=8A1A8EE6E08F61E99FC37AC177881C8A
+PT=F21583AC8C5F03C19A1A9B856C97D6E0
+
+I=155
+KEY=D49F229B7DB6973EDE6BD14AB20234379A4525CED28CAFE94E146B7CDA5C8BB0
+IV=02B1B69EAAF6B05B3D640B9D10991A46
+CT=F21583AC8C5F03C19A1A9B856C97D6E0
+PT=323191D5997CF0424B7F5501CBD55B17
+
+I=156
+KEY=08B1021CD316864EF5B370CBF891FD27A874B41B4BF05FAB056B3E7D1189D0A7
+IV=DC2E2087AEA011702BD8A1814A93C910
+CT=323191D5997CF0424B7F5501CBD55B17
+PT=B2BBCC6E54CB33319536A81174B0D73B
+
+I=157
+KEY=786AE1D89ECC32C8883D984E7DC5FD0A1ACF78751F3B6C9A905D966C6539079C
+IV=70DBE3C44DDAB4867D8EE8858554002D
+CT=B2BBCC6E54CB33319536A81174B0D73B
+PT=6E4ADDA6895734D891F328C6D0C71467
+
+I=158
+KEY=E6C7441B75AF8701E29376287A126CB07485A5D3966C584201AEBEAAB5FE13FB
+IV=9EADA5C3EB63B5C96AAEEE6607D791BA
+CT=6E4ADDA6895734D891F328C6D0C71467
+PT=8BED3D2AAB5271F90EE5335520E87AA2
+
+I=159
+KEY=22D515400072783951742ACDF2FA6DC8FF6898F93D3E29BB0F4B8DFF95166959
+IV=C412515B75DDFF38B3E75CE588E80178
+CT=8BED3D2AAB5271F90EE5335520E87AA2
+PT=D3059CA1B293AA1F52D459643C5FAB5C
+
+I=160
+KEY=D6E6A383AF38A1CD2889A5F79A23CE512C6D04588FAD83A45D9FD49BA949C205
+IV=F433B6C3AF4AD9F479FD8F3A68D9A399
+CT=D3059CA1B293AA1F52D459643C5FAB5C
+PT=C20D8580ACA043B0ED2F409EEA42C0F0
+
+I=161
+KEY=AA95A47ADECB61AAD1A05DA0CE6B17BDEE6081D8230DC014B0B09405430B02F5
+IV=7C7307F971F3C067F929F8575448D9EC
+CT=C20D8580ACA043B0ED2F409EEA42C0F0
+PT=61C0D0081F176C53DE83B70608201EE6
+
+I=162
+KEY=168A56A528A70354AD74C59A8AF33A508FA051D03C1AAC476E3323034B2B1C13
+IV=BC1FF2DFF66C62FE7CD4983A44982DED
+CT=61C0D0081F176C53DE83B70608201EE6
+PT=C016536FEFC08B69867AB2946FFBE011
+
+I=163
+KEY=92157F38953622D8C0E191DAC4179A6A4FB602BFD3DA272EE849919724D0FC02
+IV=849F299DBD91218C6D9554404EE4A03A
+CT=C016536FEFC08B69867AB2946FFBE011
+PT=6923FF03C812710270438F67EF2F42D1
+
+I=164
+KEY=CCB6779947D31DF17182FB54555B49422695FDBC1BC8562C980A1EF0CBFFBED3
+IV=5EA308A1D2E53F29B1636A8E914CD328
+CT=6923FF03C812710270438F67EF2F42D1
+PT=0D1674014AD9DC2150E073E2FCF006A8
+
+I=165
+KEY=22AA52C07B42CFEB5E75687D395D86092B8389BD51118A0DC8EA6D12370FB87B
+IV=EE1C25593C91D21A2FF793296C06CF4B
+CT=0D1674014AD9DC2150E073E2FCF006A8
+PT=6399A65CC66E9318F2CEE1103B8FFB90
+
+I=166
+KEY=527EF084271AC57F5D33F2E7C7BE1FF1481A2FE1977F19153A248C020C8043EB
+IV=70D4A2445C580A9403469A9AFEE399F8
+CT=6399A65CC66E9318F2CEE1103B8FFB90
+PT=511CBDD6CFA31788A43C765301D6BAAB
+
+I=167
+KEY=D826E762C9EA31B6F4415B3AE5ED888B1906923758DC0E9D9E18FA510D56F940
+IV=8A5817E6EEF0F4C9A972A9DD2253977A
+CT=511CBDD6CFA31788A43C765301D6BAAB
+PT=B04E78AB18AE3F5B825087D9D5794BD7
+
+I=168
+KEY=B4C2DEE60A738C428B187EC3A3A4A982A948EA9C407231C61C487D88D82FB297
+IV=6CE43984C399BDF47F5925F946492109
+CT=B04E78AB18AE3F5B825087D9D5794BD7
+PT=6B013F9A972D82BD5A87DA6C1DD5FD0F
+
+I=169
+KEY=C4A41F8C4B26391F6C0D629C6B052BD8C249D506D75FB37B46CFA7E4C5FA4F98
+IV=7066C16A4155B55DE7151C5FC8A1825A
+CT=6B013F9A972D82BD5A87DA6C1DD5FD0F
+PT=9005F8243C6486F63590E7508503719C
+
+I=170
+KEY=91A18F2681FCACE1C80DC772BD0F2628524C2D22EB3B358D735F40B440F93E04
+IV=550590AACADA95FEA400A5EED60A0DF0
+CT=9005F8243C6486F63590E7508503719C
+PT=39DEEEC3D3AEEBBF4B573462B375B5E4
+
+I=171
+KEY=E8FF0EE1269AFDCA213F69757C84704D6B92C3E13895DE32380874D6F38C8BE0
+IV=795E81C7A766512BE932AE07C18B5665
+CT=39DEEEC3D3AEEBBF4B573462B375B5E4
+PT=1910F8E7C3D863784058CB35D674AEEB
+
+I=172
+KEY=F00751EFCCECA0ECA3C252F396B4078E72823B06FB4DBD4A7850BFE325F8250B
+IV=18F85F0EEA765D2682FD3B86EA3077C3
+CT=1910F8E7C3D863784058CB35D674AEEB
+PT=4A71250E55629D3C5CC62B18B4B67653
+
+I=173
+KEY=383A1B81E82B8174A9B9F0AF9EA498A338F31E08AE2F2076249694FB914E5358
+IV=C83D4A6E24C721980A7BA25C08109F2D
+CT=4A71250E55629D3C5CC62B18B4B67653
+PT=19CBB63FBB92C7A10B676DBB5EB29060
+
+I=174
+KEY=A6695341053BD5B1E15A6CD73DEF84E12138A83715BDE7D72FF1F940CFFCC338
+IV=9E5348C0ED1054C548E39C78A34B1C42
+CT=19CBB63FBB92C7A10B676DBB5EB29060
+PT=18BA0A45E67D2CFEC691203FC2509837
+
+I=175
+KEY=71B4C384EF619E5D6CADBFC7D53564913982A272F3C0CB29E960D97F0DAC5B0F
+IV=D7DD90C5EA5A4BEC8DF7D310E8DAE070
+CT=18BA0A45E67D2CFEC691203FC2509837
+PT=7699C8550933C30D630AC16D8DA6F13D
+
+I=176
+KEY=7D0527970FD45C35817091A317A2EAB04F1B6A27FAF308248A6A1812800AAA32
+IV=0CB1E413E0B5C268EDDD2E64C2978E21
+CT=7699C8550933C30D630AC16D8DA6F13D
+PT=78FE8EEC14618ED34F63E8671434ADA7
+
+I=177
+KEY=204ECE43E91409C515077FACC37C4DF837E5E4CBEE9286F7C509F075943E0795
+IV=5D4BE9D4E6C055F09477EE0FD4DEA748
+CT=78FE8EEC14618ED34F63E8671434ADA7
+PT=0907F75149A74B49F302D2C08CF18AF5
+
+I=178
+KEY=8E80DC69B6CC0F0D7F1F0BE6E9F178AD3EE2139AA735CDBE360B22B518CF8D60
+IV=AECE122A5FD806C86A18744A2A8D3555
+CT=0907F75149A74B49F302D2C08CF18AF5
+PT=FE24023BCABCD83E6212FA53E7320D92
+
+I=179
+KEY=5152CCE87D9CCC930D7B376C4F1B334BC0C611A16D8915805419D8E6FFFD80F2
+IV=DFD21081CB50C39E72643C8AA6EA4BE6
+CT=FE24023BCABCD83E6212FA53E7320D92
+PT=9526CDED534CB3366306F8C731F87CD6
+
+I=180
+KEY=00C9D78F67F1B63181ADE21A02675C6755E0DC4C3EC5A6B6371F2021CE05FC24
+IV=519B1B671A6D7AA28CD6D5764D7C6F2C
+CT=9526CDED534CB3366306F8C731F87CD6
+PT=801F005EA2E9287FFD8D9B01BE8E2205
+
+I=181
+KEY=442603CF6A012BDB23086BD7EFD7396ED5FFDC129C2C8EC9CA92BB20708BDE21
+IV=44EFD4400DF09DEAA2A589CDEDB06509
+CT=801F005EA2E9287FFD8D9B01BE8E2205
+PT=7558994ACE0299E34EB586B832C98560
+
+I=182
+KEY=B153C7C49983077FB0C79C30266A487AA0A74558522E172A84273D9842425B41
+IV=F575C40BF3822CA493CFF7E7C9BD7114
+CT=7558994ACE0299E34EB586B832C98560
+PT=324273A52FFBFBCAC5401CFCD3075C98
+
+I=183
+KEY=0E038D82F7FAD738824EF9FEB6F6627692E536FD7DD5ECE041672164914507D9
+IV=BF504A466E79D047328965CE909C2A0C
+CT=324273A52FFBFBCAC5401CFCD3075C98
+PT=509E651E053E85340A5B545AA0E40A71
+
+I=184
+KEY=B2237D5D0E16B5F9A8FD7274F4CA1206C27B53E378EB69D44B3C753E31A10DA8
+IV=BC20F0DFF9EC62C12AB38B8A423C7070
+CT=509E651E053E85340A5B545AA0E40A71
+PT=1716AB4DCAB205D62EF356E4C565BA70
+
+I=185
+KEY=CBE25CF8F3CAB9849F44F330AD8B17E1D56DF8AEB2596C0265CF23DAF4C4B7D8
+IV=79C121A5FDDC0C7D37B98144594105E7
+CT=1716AB4DCAB205D62EF356E4C565BA70
+PT=093CA7764E7F6828EF210E89D3D01C73
+
+I=186
+KEY=2BF3C06B0CAE728C8A6134634D5DEAF1DC515FD8FC26042A8AEE2D532714ABAB
+IV=E0119C93FF64CB081525C753E0D6FD10
+CT=093CA7764E7F6828EF210E89D3D01C73
+PT=86F8B39DB10EB8B3CFED4C98BBBFFAE1
+
+I=187
+KEY=A2C742CFF575CA98D3261BE7DA99E3935AA9EC454D28BC99450361CB9CAB514A
+IV=893482A4F9DBB81459472F8497C40962
+CT=86F8B39DB10EB8B3CFED4C98BBBFFAE1
+PT=8BF9C14617B3CE1511ABBD484439D041
+
+I=188
+KEY=F8AB8BAD8F2C5A54ED4C80AD094A36D4D1502D035A9B728C54A8DC83D892810B
+IV=5A6CC9627A5990CC3E6A9B4AD3D3D547
+CT=8BF9C14617B3CE1511ABBD484439D041
+PT=C41B937B1D5E10D982C7850685997862
+
+I=189
+KEY=4DBA6859C8D681253E8F6278BE76D87D154BBE7847C56255D66F59855D0BF969
+IV=B511E3F447FADB71D3C3E2D5B73CEEA9
+CT=C41B937B1D5E10D982C7850685997862
+PT=467114F3F33C8BA65AA76C297E9DA11C
+
+I=190
+KEY=2738E652A9F41B48B443B487B2AF6D7C533AAA8BB4F9E9F38CC835AC23965875
+IV=6A828E0B61229A6D8ACCD6FF0CD9B501
+CT=467114F3F33C8BA65AA76C297E9DA11C
+PT=CB9D772C72BC5BB3E18087CABADDE5B2
+
+I=191
+KEY=A1C138E8AFAA19465AE9BD1968C19E8798A7DDA7C645B2406D48B266994BBDC7
+IV=86F9DEBA065E020EEEAA099EDA6EF3FB
+CT=CB9D772C72BC5BB3E18087CABADDE5B2
+PT=678837A26F65190F44107C19A01F97E6
+
+I=192
+KEY=CD73AF62C6130630324F71F35042BC9AFF2FEA05A920AB4F2958CE7F39542A21
+IV=6CB2978A69B91F7668A6CCEA3883221D
+CT=678837A26F65190F44107C19A01F97E6
+PT=E395804E9F2D61447B5207AA438F7D98
+
+I=193
+KEY=F076EAF59DAC3F3975E9CBED6697A21B1CBA6A4B360DCA0B520AC9D57ADB57B9
+IV=3D0545975BBF390947A6BA1E36D51E81
+CT=E395804E9F2D61447B5207AA438F7D98
+PT=CA6E3E780C170E950306FEE08CAB46D9
+
+I=194
+KEY=87DD7A9906E626E1AC55611A52EBC196D6D454333A1AC49E510C3735F6701160
+IV=77AB906C9B4A19D8D9BCAAF7347C638D
+CT=CA6E3E780C170E950306FEE08CAB46D9
+PT=419B7C538E827E431B2C2BA5AEB95373
+
+I=195
+KEY=C8D569C710030750FDA3A48E748BED26974F2860B498BADD4A201C9058C94213
+IV=4F08135E16E521B151F6C59426602CB0
+CT=419B7C538E827E431B2C2BA5AEB95373
+PT=1D6607B51B0DA629C62D00CB20870FEA
+
+I=196
+KEY=A3A22E3CED89316BC747E3326CB53C448A292FD5AF951CF48C0D1C5B784E4DF9
+IV=6B7747FBFD8A363B3AE447BC183ED162
+CT=1D6607B51B0DA629C62D00CB20870FEA
+PT=58169D0006C9031C7CCE502F086B0CD6
+
+I=197
+KEY=DDB2F456CFE201D5E1DD9EFC6593813FD23FB2D5A95C1FE8F0C34C747025412F
+IV=7E10DA6A226B30BE269A7DCE0926BD7B
+CT=58169D0006C9031C7CCE502F086B0CD6
+PT=8001E1BDAE24A2A9ABE102C2BEB4AD70
+
+I=198
+KEY=A990048427C8E19BABE1D0BB5D6A83CA523E53680778BD415B224EB6CE91EC5F
+IV=7422F0D2E82AE04E4A3C4E4738F902F5
+CT=8001E1BDAE24A2A9ABE102C2BEB4AD70
+PT=EA143E99846F5DF1C1A2AD0565D3AE45
+
+I=199
+KEY=5074E20E5B70B571A7155A3AAFE3AF2AB82A6DF18317E0B09A80E3B3AB42421A
+IV=F9E4E68A7CB854EA0CF48A81F2892CE0
+CT=EA143E99846F5DF1C1A2AD0565D3AE45
+PT=C1EBFE1B00D813BB5AC9E4B007977B19
+
+I=200
+KEY=50315F6BF520F26A044751215225348179C193EA83CFF30BC0490703ACD53903
+IV=0045BD65AE50471BA3520B1BFDC69BAB
+CT=C1EBFE1B00D813BB5AC9E4B007977B19
+PT=3476AA08CB11F13D8DD858CF10472D03
+
+I=201
+KEY=03D2536F9830D74A9B2AEDD1508CE4764DB739E248DE02364D915FCCBC921400
+IV=53E30C046D1025209F6DBCF002A9D0F7
+CT=3476AA08CB11F13D8DD858CF10472D03
+PT=C79BED3BB201F29B65CDF5709654317C
+
+I=202
+KEY=4AC2173AD99E09ECCB4A647AF96C26F98A2CD4D9FADFF0AD285CAABC2AC6257C
+IV=4910445541AEDEA6506089ABA9E0C28F
+CT=C79BED3BB201F29B65CDF5709654317C
+PT=E5E144D56A2FF95D644D51E73AEAE922
+
+I=203
+KEY=9F46778CA9C15CB9978C0DF359056F3D6FCD900C90F009F04C11FB5B102CCC5E
+IV=D58460B6705F55555CC66989A06949C4
+CT=E5E144D56A2FF95D644D51E73AEAE922
+PT=38582F30FDE74A162CCD85955C2E48FC
+
+I=204
+KEY=63038F8EA2934D0C65F181BE92B9664A5795BF3C6D1743E660DC7ECE4C0284A2
+IV=FC45F8020B5211B5F27D8C4DCBBC0977
+CT=38582F30FDE74A162CCD85955C2E48FC
+PT=266E808D7E9206C9294F0349D1CEF1DA
+
+I=205
+KEY=D43CC15DCAB5047B8C67D61F1735C6A471FB3FB11385452F49937D879DCC7578
+IV=B73F4ED368264977E99657A1858CA0EE
+CT=266E808D7E9206C9294F0349D1CEF1DA
+PT=8E3D1F7DC678C32352782D52E4CD44D5
+
+I=206
+KEY=9979232A388E0E6C766279CFE7E047B4FFC620CCD5FD860C1BEB50D5790131AD
+IV=4D45E277F23B0A17FA05AFD0F0D58110
+CT=8E3D1F7DC678C32352782D52E4CD44D5
+PT=DDC8075418E2A649D4E78144528682F9
+
+I=207
+KEY=43479EA72BF3B417CF224B15749043C5220E2798CD1F2045CF0CD1912B87B354
+IV=DA3EBD8D137DBA7BB94032DA93700471
+CT=DDC8075418E2A649D4E78144528682F9
+PT=4096B4F51C77C8A00A5308D8C3175B6A
+
+I=208
+KEY=7AE39630885C3ACDCF915625141DF45A6298936DD168E8E5C55FD949E890E83E
+IV=39A40897A3AF8EDA00B31D30608DB79F
+CT=4096B4F51C77C8A00A5308D8C3175B6A
+PT=60D0385ECE913BEC6760BAA0BCCDE853
+
+I=209
+KEY=82496ADB8A91DAE80C249D2BD8F00C990248AB331FF9D309A23F63E9545D006D
+IV=F8AAFCEB02CDE025C3B5CB0ECCEDF8C3
+CT=60D0385ECE913BEC6760BAA0BCCDE853
+PT=79A86909141C27366744FC614808705B
+
+I=210
+KEY=EF7FEE5E3FDAC015E8016A7A9D3EB8677BE0C23A0BE5F43FC57B9F881C557036
+IV=6D368485B54B1AFDE425F75145CEB4FE
+CT=79A86909141C27366744FC614808705B
+PT=9817CE82A9D821189878991B32360409
+
+I=211
+KEY=A400D423453A59F64968E8B80140AAF6E3F70CB8A23DD5275D0306932E63743F
+IV=4B7F3A7D7AE099E3A16982C29C7E1291
+CT=9817CE82A9D821189878991B32360409
+PT=C3259E5D4A3E82FDC862E862E4449DA2
+
+I=212
+KEY=B9280C8996C8BEC6888CB4D9D1E76B0620D292E5E80357DA9561EEF1CA27E99D
+IV=1D28D8AAD3F2E730C1E45C61D0A7C1F0
+CT=C3259E5D4A3E82FDC862E862E4449DA2
+PT=F035078B9A3E45B4ED561F001DB21E47
+
+I=213
+KEY=9686D9BB259CD14FA7D58C9789932385D0E7956E723D126E7837F1F1D795F7DA
+IV=2FAED532B3546F892F59384E58744883
+CT=F035078B9A3E45B4ED561F001DB21E47
+PT=596B9F7F2122A11C599626B16B6AC340
+
+I=214
+KEY=736E847DDC4C794A3AA2E22C1AF85EF1898C0A11531FB37221A1D740BCFF349A
+IV=E5E85DC6F9D0A8059D776EBB936B7D74
+CT=596B9F7F2122A11C599626B16B6AC340
+PT=800FCC5CE3B08CFFDD70FB5270DED220
+
+I=215
+KEY=728D3E35CD653621D41E591530770B370983C64DB0AF3F8DFCD12C12CC21E6BA
+IV=01E3BA4811294F6BEEBCBB392A8F55C6
+CT=800FCC5CE3B08CFFDD70FB5270DED220
+PT=5515A58EB0013D2EE561BD2826761209
+
+I=216
+KEY=929F6FD8250BAD33FAE4ED108843A2645C9663C300AE02A319B0913AEA57F4B3
+IV=E01251EDE86E9B122EFAB405B834A953
+CT=5515A58EB0013D2EE561BD2826761209
+PT=8B7B3AB73287CEAAA0098D41F0B3A28B
+
+I=217
+KEY=3F54C218B02F6097C3F31A05F5CCB8C4D7ED59743229CC09B9B91C7B1AE45638
+IV=ADCBADC09524CDA43917F7157D8F1AA0
+CT=8B7B3AB73287CEAAA0098D41F0B3A28B
+PT=90CDCF132600F622D1339197B441A4C0
+
+I=218
+KEY=2F60AEE4E6A6F7109193112BC756D7F24720966714293A2B688A8DECAEA5F2F8
+IV=10346CFC5689978752600B2E329A6F36
+CT=90CDCF132600F622D1339197B441A4C0
+PT=EA089BEC0DEE1305828522B8AD4F5A99
+
+I=219
+KEY=33623A9F86F3AF456D92076B132E46A3AD280D8B19C7292EEA0FAF5403EAA861
+IV=1C02947B60555855FC011640D4789151
+CT=EA089BEC0DEE1305828522B8AD4F5A99
+PT=339C14562AE38F84BE0FB1569C234287
+
+I=220
+KEY=6291ED0B63ED8C18A713DDCBFCA054E19EB419DD3324A6AA54001E029FC9EAE6
+IV=51F3D794E51E235DCA81DAA0EF8E1242
+CT=339C14562AE38F84BE0FB1569C234287
+PT=31050E95B1F08B9139EF7F8D42110978
+
+I=221
+KEY=7BEF1BE3E67AA478C5D9F50350D221CCAFB1174882D42D3B6DEF618FDDD8E39E
+IV=197EF6E88597286062CA28C8AC72752D
+CT=31050E95B1F08B9139EF7F8D42110978
+PT=18DE66E3B58C9ABAB99987826AF0D0AF
+
+I=222
+KEY=3DEB69283844069B400C2E7127B8CD2EB76F71AB3758B781D476E60DB7283331
+IV=460472CBDE3EA2E385D5DB72776AECE2
+CT=18DE66E3B58C9ABAB99987826AF0D0AF
+PT=B75D11E28C94DB969FE009B984DA956B
+
+I=223
+KEY=754C5BEC642540EC8BAD0778773CA8E700326049BBCC6C174B96EFB433F2A65A
+IV=48A732C45C614677CBA12909508465C9
+CT=B75D11E28C94DB969FE009B984DA956B
+PT=7CEEE835FC734108785B367A28C62058
+
+I=224
+KEY=01B0A659138DEE7CF1EFA11DD0A209247CDC887C47BF2D1F33CDD9CE1B348602
+IV=74FCFDB577A8AE907A42A665A79EA1C3
+CT=7CEEE835FC734108785B367A28C62058
+PT=F1E848F6C257D6D56B4FBCA36900614C
+
+I=225
+KEY=F9531CEDC3C5C76A90195BF1E5FB5ED98D34C08A85E8FBCA5882656D7234E74E
+IV=F8E3BAB4D048291661F6FAEC355957FD
+CT=F1E848F6C257D6D56B4FBCA36900614C
+PT=7B06A193C8B84977E56B382D424D2A78
+
+I=226
+KEY=D409DB9768430BCA0E2B68BA1CFE93A5F63261194D50B2BDBDE95D403079CD36
+IV=2D5AC77AAB86CCA09E32334BF905CD7C
+CT=7B06A193C8B84977E56B382D424D2A78
+PT=413356E3367ACBDD88ADA6DF5E09FFC6
+
+I=227
+KEY=8425B50A014625BA114ABAC1585C3F68B70137FA7B2A79603544FB9F6E7032F0
+IV=502C6E9D69052E701F61D27B44A2ACCD
+CT=413356E3367ACBDD88ADA6DF5E09FFC6
+PT=13B524E8AEBFE32CC9559B500D9E9A82
+
+I=228
+KEY=3ED2EEDFF8C12697C9CEB18B8DC86798A4B41312D5959A4CFC1160CF63EEA872
+IV=BAF75BD5F987032DD8840B4AD59458F0
+CT=13B524E8AEBFE32CC9559B500D9E9A82
+PT=91775D8DF510277669BC11697965AE99
+
+I=229
+KEY=B3C35FF0F6B2DDCF5522A35E75040BB135C34E9F2085BD3A95AD71A61A8B06EB
+IV=8D11B12F0E73FB589CEC12D5F8CC6C29
+CT=91775D8DF510277669BC11697965AE99
+PT=0AA5B5A593FED4CE1FD66736774649D2
+
+I=230
+KEY=5581EEED032A31D6F8077BEED79ABB1E3F66FB3AB37B69F48A7B16906DCD4F39
+IV=E642B11DF598EC19AD25D8B0A29EB0AF
+CT=0AA5B5A593FED4CE1FD66736774649D2
+PT=3DB595E23D32347092E5D94A8376DB5D
+
+I=231
+KEY=2337ABB014AD70D3E290033BD6FC75D702D36ED88E495D84189ECFDAEEBB9464
+IV=76B6455D178741051A9778D50166CEC9
+CT=3DB595E23D32347092E5D94A8376DB5D
+PT=2AF2DEC9D2D4F0BA81D1FC88E421C034
+
+I=232
+KEY=7C8A43D8CA68E782BBD49C18477683052821B0115C9DAD3E994F33520A9A5450
+IV=5FBDE868DEC5975159449F23918AF6D2
+CT=2AF2DEC9D2D4F0BA81D1FC88E421C034
+PT=8AF90FCCBEDCDF709AEE93FEF45C03EC
+
+I=233
+KEY=37FDC789E91F58F691931C86C4505926A2D8BFDDE241724E03A1A0ACFEC657BC
+IV=4B7784512377BF742A47809E8326DA23
+CT=8AF90FCCBEDCDF709AEE93FEF45C03EC
+PT=8E98DF785A601DF26465D9A0D163D650
+
+I=234
+KEY=57C30D92BD234BE693F15534768970FC2C4060A5B8216FBC67C4790C2FA581EC
+IV=603ECA1B543C1310026249B2B2D929DA
+CT=8E98DF785A601DF26465D9A0D163D650
+PT=21D3EAC95A088A548E5C0E56001BD103
+
+I=235
+KEY=1F9A07E73DB0530F84B6DB88C5EA0AFD0D938A6CE229E5E8E998775A2FBE50EF
+IV=48590A75809318E917478EBCB3637A01
+CT=21D3EAC95A088A548E5C0E56001BD103
+PT=48A8853D9E4E4A6351E5F5734911D569
+
+I=236
+KEY=219E87740C05905A3DAC677C78C5E6D4453B0F517C67AF8BB87D822966AF8586
+IV=3E04809331B5C355B91ABCF4BD2FEC29
+CT=48A8853D9E4E4A6351E5F5734911D569
+PT=C75ECB64A655DC6803FC976A1CAE78A9
+
+I=237
+KEY=D445B2CF4C6B8AF073FCDFF8907C4B278265C435DA3273E3BB8115437A01FD2F
+IV=F5DB35BB406E1AAA4E50B884E8B9ADF3
+CT=C75ECB64A655DC6803FC976A1CAE78A9
+PT=F063E6C6A62D07B1CA90594CB9041DE4
+
+I=238
+KEY=3DECAA3153A9658A2CAA5578AF2C55CD720622F37C1F745271114C0FC305E0CB
+IV=E9A918FE1FC2EF7A5F568A803F501EEA
+CT=F063E6C6A62D07B1CA90594CB9041DE4
+PT=45F375DDBA20D20CB6C5EAB28AA85D06
+
+I=239
+KEY=31766034845DF8A1AEDFC70CE3CD5B1D37F5572EC63FA65EC7D4A6BD49ADBDCD
+IV=0C9ACA05D7F49D2B827592744CE10ED0
+CT=45F375DDBA20D20CB6C5EAB28AA85D06
+PT=5D117AAC285D5A6948390FDAFBDACAD5
+
+I=240
+KEY=BF17727E1D5DCA94C9CCA8E11DFBF22A6AE42D82EE62FC378FEDA967B2777718
+IV=8E61124A9900323567136FEDFE36A937
+CT=5D117AAC285D5A6948390FDAFBDACAD5
+PT=C8B61B172D930641A88E9E13236E11F9
+
+I=241
+KEY=B82DB30F4271245293FC4CB6A0C10D4FA2523695C3F1FA7627633774911966E1
+IV=073AC1715F2CEEC65A30E457BD3AFF65
+CT=C8B61B172D930641A88E9E13236E11F9
+PT=FE05708E08F8568BB55175CEEF9E0433
+
+I=242
+KEY=28AE9BD5E181AC41CF2F9B4710DD160C5C57461BCB09ACFD923242BA7E8762D2
+IV=908328DAA3F088135CD3D7F1B01C1B43
+CT=FE05708E08F8568BB55175CEEF9E0433
+PT=D7DB71EAC2EF31AE105227E34134AD3C
+
+I=243
+KEY=437D385B59B4AB247A5BCFC0C0F8596F8B8C37F109E69D53826065593FB3CFEE
+IV=6BD3A38EB8350765B5745487D0254F63
+CT=D7DB71EAC2EF31AE105227E34134AD3C
+PT=ECD51D08C870983992708FC1FDFA9D15
+
+I=244
+KEY=4EF45D9C1FCA58D42D9E7E2E9C7D0B8F67592AF9C196056A1010EA98C24952FB
+IV=0D8965C7467EF3F057C5B1EE5C8552E0
+CT=ECD51D08C870983992708FC1FDFA9D15
+PT=F436BA32E9D089248AC47E40AA6B4BAC
+
+I=245
+KEY=D3F16D0CF75471A24F273B3E8EF0A3A0936F90CB28468C4E9AD494D868221957
+IV=9D053090E89E297662B94510128DA82F
+CT=F436BA32E9D089248AC47E40AA6B4BAC
+PT=F43E89C3DBD391B5778B30A36A9E42F3
+
+I=246
+KEY=953E7AB7369425A4F396D764F3EA047F67511908F3951DFBED5FA47B02BC5BA4
+IV=46CF17BBC1C05406BCB1EC5A7D1AA7DF
+CT=F43E89C3DBD391B5778B30A36A9E42F3
+PT=B12ABB428A29703B929EFDB0031694D1
+
+I=247
+KEY=C8DDFEFD3C72822B72C78757EE8EF856D67BA24A79BC6DC07FC159CB01AACF75
+IV=5DE3844A0AE6A78F815150331D64FC29
+CT=B12ABB428A29703B929EFDB0031694D1
+PT=79F19D2BD0A025D2D9822A28F5304446
+
+I=248
+KEY=870A25E9511D3F1BCFA941DA41FD00C0AF8A3F61A91C4812A64373E3F49A8B33
+IV=4FD7DB146D6FBD30BD6EC68DAF73F896
+CT=79F19D2BD0A025D2D9822A28F5304446
+PT=C52D5EF8D7A1353F5C1FF7BA33F9ED97
+
+I=249
+KEY=178B86564949AE1A0CE50E61F4D3F8776AA761997EBD7D2DFA5C8459C76366A4
+IV=9081A3BF18549101C34C4FBBB52EF8B7
+CT=C52D5EF8D7A1353F5C1FF7BA33F9ED97
+PT=82FAB7DF4BE409880B8F66210DE8D2E5
+
+I=250
+KEY=C3F845809E635052F94076E1F3026779E85DD646355974A5F1D3E278CA8BB441
+IV=D473C3D6D72AFE48F5A5788007D19F0E
+CT=82FAB7DF4BE409880B8F66210DE8D2E5
+PT=52C05722F125348666DFCF0F2D052530
+
+I=251
+KEY=34AE823E21F4C45784F2E125CF5039FCBA9D8164C47C4023970C2D77E78E9171
+IV=F756C7BEBF9794057DB297C43C525E85
+CT=52C05722F125348666DFCF0F2D052530
+PT=DE7FAAF4A10D4D5404847FA080C1DC1C
+
+I=252
+KEY=9D1EEFC6B62427F5A2CBB2047AB0E41B64E22B9065710D77938852D7674F4D6D
+IV=A9B06DF897D0E3A226395321B5E0DDE7
+CT=DE7FAAF4A10D4D5404847FA080C1DC1C
+PT=49327927599012EE87FF64F45AC9A9AE
+
+I=253
+KEY=2C7B21A79BE0B5B0E4DCC427DE8D91572DD052B73CE11F99147736233D86E4C3
+IV=B165CE612DC4924546177623A43D754C
+CT=49327927599012EE87FF64F45AC9A9AE
+PT=6E11B9F592DD99CD94F8999D9476F4CF
+
+I=254
+KEY=F4A72FB6D161B9E15A41576C5A7CBF3F43C1EB42AE3C8654808FAFBEA9F0100C
+IV=D8DC0E114A810C51BE9D934B84F12E68
+CT=6E11B9F592DD99CD94F8999D9476F4CF
+PT=108AC1FE3E008D1C3058917157003E2C
+
+I=255
+KEY=2E5FE97C58B060C9BACA9E9CC14CFC89534B2ABC903C0B48B0D73ECFFEF02E20
+IV=DAF8C6CA89D1D928E08BC9F09B3043B6
+CT=108AC1FE3E008D1C3058917157003E2C
+PT=B315EF45A3BD77688AD0976EF5DCA26B
+
+I=256
+KEY=9D763A80B96B112E1DAEA50A98C0B6F7E05EC5F933817C203A07A9A10B2C8C4B
+IV=B329D3FCE1DB71E7A7643B96598C4A7E
+CT=B315EF45A3BD77688AD0976EF5DCA26B
+PT=7BF8DABED803049DF8D1F34ED00536F7
+
+I=257
+KEY=DF5F07523E7E305B48AAD9C205AE826C9BA61F47EB8278BDC2D65AEFDB29BABC
+IV=42293DD28715217555047CC89D6E349B
+CT=7BF8DABED803049DF8D1F34ED00536F7
+PT=E55FE84DF3137D16E74DC01A1BFDA4A7
+
+I=258
+KEY=80CF537EC8836ADD0FB72F35B2EF703D7EF9F70A189105AB259B9AF5C0D41E1B
+IV=5F90542CF6FD5A86471DF6F7B741F251
+CT=E55FE84DF3137D16E74DC01A1BFDA4A7
+PT=6019F9DA2DFDCDCB14C2C6CE5B34432D
+
+I=259
+KEY=4469D3622A022CFB7614C9C9EB36E6031EE00ED0356CC86031595C3B9BE05D36
+IV=C4A6801CE281462679A3E6FC59D9963E
+CT=6019F9DA2DFDCDCB14C2C6CE5B34432D
+PT=6D2788861A8F9526D1EC8A6A8AFBA629
+
+I=260
+KEY=DED804546FA6B0BCD8C9FD9119616F9873C786562FE35D46E0B5D651111BFB1F
+IV=9AB1D73645A49C47AEDD3458F257899B
+CT=6D2788861A8F9526D1EC8A6A8AFBA629
+PT=81D5CDEA70E433A2A341FFB13ECCEC54
+
+I=261
+KEY=24FD3D900606EEF8F31156D30EA094ADF2124BBC5F076EE443F429E02FD7174B
+IV=FA2539C469A05E442BD8AB4217C1FB35
+CT=81D5CDEA70E433A2A341FFB13ECCEC54
+PT=F74B4869E92F918A95B508E382A83FA6
+
+I=262
+KEY=C24CA269EAADDFBA060AAF15C2265DE6055903D5B628FF6ED6412103AD7F28ED
+IV=E6B19FF9ECAB3142F51BF9C6CC86C94B
+CT=F74B4869E92F918A95B508E382A83FA6
+PT=EF3293511A17D0E089A8F88E396B4F31
+
+I=263
+KEY=789C94E8D2B6D6FD022ED678F42E796CEA6B9084AC3F2F8E5FE9D98D941467DC
+IV=BAD03681381B09470424796D3608248A
+CT=EF3293511A17D0E089A8F88E396B4F31
+PT=0D70FCE243309D716D8FA672A11EBCB8
+
+I=264
+KEY=B8DFB47D720C26AE22AD6C87785CCB97E71B6C66EF0FB2FF32667FFF350ADB64
+IV=C0432095A0BAF0532083BAFF8C72B2FB
+CT=0D70FCE243309D716D8FA672A11EBCB8
+PT=831365AB30D062F2B1C051A9EA03AEEB
+
+I=265
+KEY=938BCEFF0FD9AEC61CF2B0509A645A19640809CDDFDFD00D83A62E56DF09758F
+IV=2B547A827DD588683E5FDCD7E238918E
+CT=831365AB30D062F2B1C051A9EA03AEEB
+PT=EFE7E9DC254FF4AA70ABF327566A5448
+
+I=266
+KEY=BBF0C86D05BF543EC3B9A9240833187F8BEFE011FA9024A7F30DDD71896321C7
+IV=287B06920A66FAF8DF4B197492574266
+CT=EFE7E9DC254FF4AA70ABF327566A5448
+PT=2D41BEE483BD2BAD16026AD7AA5ABA07
+
+I=267
+KEY=B744A9326EC1D56CBFF51D969D075C7DA6AE5EF5792D0F0AE50FB7A623399BC0
+IV=0CB4615F6B7E81527C4CB4B295344402
+CT=2D41BEE483BD2BAD16026AD7AA5ABA07
+PT=079460C9B745A53999932C5ECFE6A37B
+
+I=268
+KEY=AE49C59DD393E9EC9030AEDAD7FC61FEA13A3E3CCE68AA337C9C9BF8ECDF38BB
+IV=190D6CAFBD523C802FC5B34C4AFB3D83
+CT=079460C9B745A53999932C5ECFE6A37B
+PT=CE7C5851D0437368FEDC7E39270A7430
+
+I=269
+KEY=8176855633B6FB2445BDDC2FD8D299576F46666D1E2BD95B8240E5C1CBD54C8B
+IV=2F3F40CBE02512C8D58D72F50F2EF8A9
+CT=CE7C5851D0437368FEDC7E39270A7430
+PT=A0C3F2D688E4370AD2F08C09B28DBCC1
+
+I=270
+KEY=050E71C47B278C5825DE84513A732D11CF8594BB96CFEE5150B069C87958F04A
+IV=8478F4924891777C6063587EE2A1B446
+CT=A0C3F2D688E4370AD2F08C09B28DBCC1
+PT=BE472E609ABB030B96739A959EDBDD21
+
+I=271
+KEY=502E4BDCF449E96CB16D5B6C097D20CC71C2BADB0C74ED5AC6C3F35DE7832D6B
+IV=55203A188F6E653494B3DF3D330E0DDD
+CT=BE472E609ABB030B96739A959EDBDD21
+PT=FE4227D6AC71519FA0F2078433DF69CA
+
+I=272
+KEY=C3DDDE6B2E80381010569BC093561F628F809D0DA005BCC56631F4D9D45C44A1
+IV=93F395B7DAC9D17CA13BC0AC9A2B3FAE
+CT=FE4227D6AC71519FA0F2078433DF69CA
+PT=3F8439C7648C5C2B5877643C536E14F9
+
+I=273
+KEY=1CC65CB104317D620D729EDEB4C4B512B004A4CAC489E0EE3E4690E587325058
+IV=DF1B82DA2AB145721D24051E2792AA70
+CT=3F8439C7648C5C2B5877643C536E14F9
+PT=E189B969BF38C8A2F38BF3F12267B5B4
+
+I=274
+KEY=D121C8556039F07E231F9E88DE60572B518D1DA37BB1284CCDCD6314A555E5EC
+IV=CDE794E464088D1C2E6D00566AA4E239
+CT=E189B969BF38C8A2F38BF3F12267B5B4
+PT=EF15CCEC56DCD62681FC7564A1095ECD
+
+I=275
+KEY=C87070F4AA767BE043B29FE3AF258C91BE98D14F2D6DFE6A4C311670045CBB21
+IV=1951B8A1CA4F8B9E60AD016B7145DBBA
+CT=EF15CCEC56DCD62681FC7564A1095ECD
+PT=BD38CD579A7124DD0814DB21FC0E7D96
+
+I=276
+KEY=08167C643CA7CAD8729B17EB91918AC103A01C18B71CDAB74425CD51F852C6B7
+IV=C0660C9096D1B138312988083EB40650
+CT=BD38CD579A7124DD0814DB21FC0E7D96
+PT=565F580B61E456544D8D553948AD95FD
+
+I=277
+KEY=55BB77ED49C419EEA418365F2750857355FF4413D6F88CE309A89868B0FF534A
+IV=5DAD0B897563D336D68321B4B6C10FB2
+CT=565F580B61E456544D8D553948AD95FD
+PT=1AA68EAC78C2B5BFF996F0B58C56432F
+
+I=278
+KEY=8FEC3C85819F24EE1DA186AB212A19D44F59CABFAE3A395CF03E68DD3CA91065
+IV=DA574B68C85B3D00B9B9B0F4067A9CA7
+CT=1AA68EAC78C2B5BFF996F0B58C56432F
+PT=65660FBF6C166604D9E717671488D734
+
+I=279
+KEY=D1D19B25C23EA5923D45493905B867D12A3FC500C22C5F5829D97FBA2821C751
+IV=5E3DA7A043A1817C20E4CF9224927E05
+CT=65660FBF6C166604D9E717671488D734
+PT=477CBD97B467AA1AAB738E294092FAA3
+
+I=280
+KEY=E1972BE045093EC4475DCE6351CDEDCB6D437897764BF54282AAF19368B33DF2
+IV=3046B0C587379B567A18875A54758A1A
+CT=477CBD97B467AA1AAB738E294092FAA3
+PT=C0ED90D90AE11390A275BD03BE00E1D5
+
+I=281
+KEY=6F622A270D77AE65084E2070343E8C7FADAEE84E7CAAE6D220DF4C90D6B3DC27
+IV=8EF501C7487E90A14F13EE1365F361B4
+CT=C0ED90D90AE11390A275BD03BE00E1D5
+PT=296FED9B8CF7C532721A2188DDB1A441
+
+I=282
+KEY=FF7209EA94C0401544991FDB57F77F2084C105D5F05D23E052C56D180B027866
+IV=901023CD99B7EE704CD73FAB63C9F35F
+CT=296FED9B8CF7C532721A2188DDB1A441
+PT=4AE1C2EB8D1CEB5804FA992708150590
+
+I=283
+KEY=73C6F94AD63DE39C289AE20179FDDDD7CE20C73E7D41C8B8563FF43F03177DF6
+IV=8CB4F0A042FDA3896C03FDDA2E0AA2F7
+CT=4AE1C2EB8D1CEB5804FA992708150590
+PT=A4EAC8940C12F9CEAC78DFDC99DF68B4
+
+I=284
+KEY=A7369886016682F6075678509FFB86ED6ACA0FAA71533176FA472BE39AC81542
+IV=D4F061CCD75B616A2FCC9A51E6065B3A
+CT=A4EAC8940C12F9CEAC78DFDC99DF68B4
+PT=70B05A9959E7C4E4545BB3AECCD8B33D
+
+I=285
+KEY=F01B9FF32CE9CA699F69ADBBC209BBD21A7A553328B4F592AE1C984D5610A67F
+IV=572D07752D8F489F983FD5EB5DF23D3F
+CT=70B05A9959E7C4E4545BB3AECCD8B33D
+PT=F4978960F1382713A5A7183B9694DE85
+
+I=286
+KEY=FF05A97961A5CA725CD2E1B2A9D58304EEEDDC53D98CD2810BBB8076C08478FA
+IV=0F1E368A4D4C001BC3BB4C096BDC38D6
+CT=F4978960F1382713A5A7183B9694DE85
+PT=EDCC3B8D26928086F1C6727833405424
+
+I=287
+KEY=AA4DB35CCBD936D13D1B7DB64638B99A0321E7DEFF1E5207FA7DF20EF3C42CDE
+IV=55481A25AA7CFCA361C99C04EFED3A9E
+CT=EDCC3B8D26928086F1C6727833405424
+PT=12A36AC1DA72345291CF206FA04F102F
+
+I=288
+KEY=611E32BF030B7B377AEC338C7FA6D88311828D1F256C66556BB2D261538B3CF1
+IV=CB5381E3C8D24DE647F74E3A399E6119
+CT=12A36AC1DA72345291CF206FA04F102F
+PT=8DA0003E090444453B932F0CDBBFA54E
+
+I=289
+KEY=43E230241EF150AC761C1307C43C3E209C228D212C6822105021FD6D883499BF
+IV=22FC029B1DFA2B9B0CF0208BBB9AE6A3
+CT=8DA0003E090444453B932F0CDBBFA54E
+PT=A3D9F2112895CEA937A2B18ABB589CC0
+
+I=290
+KEY=1FE38E9028DAC8A1E65A04C78BD0E7523FFB7F3004FDECB967834CE7336C057F
+IV=5C01BEB4362B980D904617C04FECD972
+CT=A3D9F2112895CEA937A2B18ABB589CC0
+PT=191EE02B9FED198599B5BC2F36271ABB
+
+I=291
+KEY=5FFD20799D7A7E7A328BD57B13F6E52F26E59F1B9B10F53CFE36F0C8054B1FC4
+IV=401EAEE9B5A0B6DBD4D1D1BC9826027D
+CT=191EE02B9FED198599B5BC2F36271ABB
+PT=EFC32006AE746D1E3F65E6C7ADF32804
+
+I=292
+KEY=EFEFD2A0F1917EB5BFD2337260E11023C926BF1D35649822C153160FA8B837C0
+IV=B012F2D96CEB00CF8D59E6097317F50C
+CT=EFC32006AE746D1E3F65E6C7ADF32804
+PT=F9C49B0BFFA354EEBBE3DE29BF9D2623
+
+I=293
+KEY=7676D792019D370A67526977EC5FDB5B30E22416CAC7CCCC7AB0C826172511E3
+IV=99990532F00C49BFD8805A058CBECB78
+CT=F9C49B0BFFA354EEBBE3DE29BF9D2623
+PT=EAEAE4BFF789E64D80D88CE5BC0E15CC
+
+I=294
+KEY=69202B4EB33EB35987DD82026714F603DA08C0A93D4E2A81FA6844C3AB2B042F
+IV=1F56FCDCB2A38453E08FEB758B4B2D58
+CT=EAEAE4BFF789E64D80D88CE5BC0E15CC
+PT=96C362F59FD2457A5ED68A116B4AA682
+
+I=295
+KEY=DE8B4CC7995B3E061E126157B0C2AF984CCBA25CA29C6FFBA4BECED2C061A2AD
+IV=B7AB67892A658D5F99CFE355D7D6599B
+CT=96C362F59FD2457A5ED68A116B4AA682
+PT=5498BE46DCE840F7B593BE2BC0D252CB
+
+I=296
+KEY=1BFE119E1B63BA06E9A590709A2985D218531C1A7E742F0C112D70F900B3F066
+IV=C5755D5982388400F7B7F1272AEB2A4A
+CT=5498BE46DCE840F7B593BE2BC0D252CB
+PT=697482966F491ACB46E7171A4813D916
+
+I=297
+KEY=9E6361F9775A88FAAD09711E9691798C71279E8C113D35C757CA67E348A02970
+IV=859D70676C3932FC44ACE16E0CB8FC5E
+CT=697482966F491ACB46E7171A4813D916
+PT=A799874DC7721D96DEEFAB5FE1A01A8E
+
+I=298
+KEY=7D1EF621D3ADC4BD4EC1861167FA5B0CD6BE19C1D64F28518925CCBCA90033FE
+IV=E37D97D8A4F74C47E3C8F70FF16B2280
+CT=A799874DC7721D96DEEFAB5FE1A01A8E
+PT=2D19344625CF5E6DE07EE960F4AEC5CF
+
+I=299
+KEY=7DFD0BE692B47C022DC789EF5291D2F5FBA72D87F380763C695B25DC5DAEF631
+IV=00E3FDC74119B8BF63060FFE356B89F9
+CT=2D19344625CF5E6DE07EE960F4AEC5CF
+PT=F80C5143F173AE672DA4DDC8272C13EF
+
+I=300
+KEY=A78C66D30475B93F0A87E6E4A8BFA3AE03AB7CC402F3D85B44FFF8147A82E5DE
+IV=DA716D3596C1C53D27406F0BFA2E715B
+CT=F80C5143F173AE672DA4DDC8272C13EF
+PT=76BDB7A63614A41C9D52718B3514E03C
+
+I=301
+KEY=9542E4B9D92DAF7B463C83DA257422B37516CB6234E77C47D9AD899F4F9605E2
+IV=32CE826ADD5816444CBB653E8DCB811D
+CT=76BDB7A63614A41C9D52718B3514E03C
+PT=93F65B7B961EE6B623A026576FF8890B
+
+I=302
+KEY=6932CD66A25D1DE274C7D5DF540917BFE6E09019A2F99AF1FA0DAFC8206E8CE9
+IV=FC7029DF7B70B29932FB5605717D350C
+CT=93F65B7B961EE6B623A026576FF8890B
+PT=FA5BEB508ABCBCB1B1D56C0E207A032D
+
+I=303
+KEY=595CCC3640445FF5BBF303FF7845AB821CBB7B49284526404BD8C3C600148FC4
+IV=306E0150E2194217CF34D6202C4CBC3D
+CT=FA5BEB508ABCBCB1B1D56C0E207A032D
+PT=BFAEA3EB7C617567EB302D571DBF2811
+
+I=304
+KEY=BF5382311BF88FC9E32D5BADC832BE48A315D8A254245327A0E8EE911DABA7D5
+IV=E60F4E075BBCD03C58DE5852B07715CA
+CT=BFAEA3EB7C617567EB302D571DBF2811
+PT=4B0E63933414184D43B0AA714AA31E02
+
+I=305
+KEY=B50A2FF8FAC6820638CCBA3A0CA6519CE81BBB3160304B6AE35844E05708B9D7
+IV=0A59ADC9E13E0DCFDBE1E197C494EFD4
+CT=4B0E63933414184D43B0AA714AA31E02
+PT=0073CA04B300003AF3C1035C664E0646
+
+I=306
+KEY=1A32AA7CA8B5D83C47F56C5D24EDBD38E8687135D3304B50109947BC3146BF91
+IV=AF38858452735A3A7F39D667284BECA4
+CT=0073CA04B300003AF3C1035C664E0646
+PT=75CFE6D4A4F05D8EBB5C614AC7FB48C8
+
+I=307
+KEY=C321C5381F5A334C8B82DD2F0E4C73AE9DA797E177C016DEABC526F6F6BDF759
+IV=D9136F44B7EFEB70CC77B1722AA1CE96
+CT=75CFE6D4A4F05D8EBB5C614AC7FB48C8
+PT=B0D8DB37DF5C3A87B9E5D562283E8FEE
+
+I=308
+KEY=40879EA19753F0F22B1C1BF438A446532D7F4CD6A89C2C591220F394DE8378B7
+IV=83A65B998809C3BEA09EC6DB36E835FD
+CT=B0D8DB37DF5C3A87B9E5D562283E8FEE
+PT=9C885637CC7666C04B424DD6EF1F3EDB
+
+I=309
+KEY=B6824C9F800B1E7825135F250DB99FC8B1F71AE164EA4A995962BE42319C466C
+IV=F605D23E1758EE8A0E0F44D1351DD99B
+CT=9C885637CC7666C04B424DD6EF1F3EDB
+PT=3E7F4437656E63E0ADC6C764B20FE92D
+
+I=310
+KEY=7FA3CDE5856B1F0D9AE33E9E6ED1532E8F885ED601842979F4A479268393AF41
+IV=C921817A05600175BFF061BB6368CCE6
+CT=3E7F4437656E63E0ADC6C764B20FE92D
+PT=B19CCFDAADEC54C8DD5F4FD53D3C5824
+
+I=311
+KEY=3E3ABA34DB005D9FF2CEF1321BCD018E3E14910CAC687DB129FB36F3BEAFF765
+IV=419977D15E6B4292682DCFAC751C52A0
+CT=B19CCFDAADEC54C8DD5F4FD53D3C5824
+PT=84F7D061322A4042913C0BD14F5F1391
+
+I=312
+KEY=FB474D499955CB1F37FBA309DD55E09DBAE3416D9E423DF3B8C73D22F1F0E4F4
+IV=C57DF77D42559680C535523BC698E113
+CT=84F7D061322A4042913C0BD14F5F1391
+PT=CBCD716DA9C53D7AFFFE65B780926660
+
+I=313
+KEY=7C1D07031362A7439F9DD5272DAD1D9B712E3000378700894739589571628294
+IV=875A4A4A8A376C5CA866762EF0F8FD06
+CT=CBCD716DA9C53D7AFFFE65B780926660
+PT=F605D205704496C5BFCEE88130920CDE
+
+I=314
+KEY=7E9E72A6032523643F0965E8BFCB0793872BE20547C3964CF8F7B01441F08E4A
+IV=028375A510478427A094B0CF92661A08
+CT=F605D205704496C5BFCEE88130920CDE
+PT=CFA8B47DEB5770925EA29484D82CDBB4
+
+I=315
+KEY=518CA0A8C81E9DDCE1060410C69F0ACE48835678AC94E6DEA655249099DC55FE
+IV=2F12D20ECB3BBEB8DE0F61F879540D5D
+CT=CFA8B47DEB5770925EA29484D82CDBB4
+PT=1065AD49D2DD48EB9540F23A69469B92
+
+I=316
+KEY=45E6A5A17D8D1AEA04CD8E184D0A1BF758E6FB317E49AE353315D6AAF09ACE6C
+IV=146A0509B5938736E5CB8A088B951139
+CT=1065AD49D2DD48EB9540F23A69469B92
+PT=DB12EE00C65069CFEA509BA5BD5BB6BC
+
+I=317
+KEY=FC8F8F7F8A440A6CEB920D4311851B3A83F41531B819C7FAD9454D0F4DC178D0
+IV=B9692ADEF7C91086EF5F835B5C8F00CD
+CT=DB12EE00C65069CFEA509BA5BD5BB6BC
+PT=B66316FB3CCC9B262A34C205AE43F42B
+
+I=318
+KEY=42D666DF2C1575E3B346FCBCD208AD9F359703CA84D55CDCF3718F0AE3828CFB
+IV=BE59E9A0A6517F8F58D4F1FFC38DB6A5
+CT=B66316FB3CCC9B262A34C205AE43F42B
+PT=4C851D9BDC164194A6D1FDE274C06D1B
+
+I=319
+KEY=786B9456901DFA9FF85C686DEEDCA02079121E5158C31D4855A072E89742E1E0
+IV=3ABDF289BC088F7C4B1A94D13CD40DBF
+CT=4C851D9BDC164194A6D1FDE274C06D1B
+PT=5507F1EB271BDBC0A6DD8BBAEC843A05
+
+I=320
+KEY=C79B5CD424E592D392FECD3233CEA70B2C15EFBA7FD8C688F37DF9527BC6DBE5
+IV=BFF0C882B4F8684C6AA2A55FDD12072B
+CT=5507F1EB271BDBC0A6DD8BBAEC843A05
+PT=BB10EF7C98DE0255C836D5319B94B166
+
+I=321
+KEY=10ABC5B835E6E6BD02E90B63D22EF9E7970500C6E706C4DD3B4B2C63E0526A83
+IV=D730996C1103746E9017C651E1E05EEC
+CT=BB10EF7C98DE0255C836D5319B94B166
+PT=E8B797AFDC378DB47F172260963A6E2C
+
+I=322
+KEY=75E05AAAB4E6981A20E4177D214B81EA7FB297693B314969445C0E03766804AF
+IV=654B9F1281007EA7220D1C1EF365780D
+CT=E8B797AFDC378DB47F172260963A6E2C
+PT=58ED1CC5A208A0E7340167E79F5DA7C2
+
+I=323
+KEY=A69FECC296D12216128BD1D2C48B373D275F8BAC9939E98E705D69E4E935A36D
+IV=D37FB6682237BA0C326FC6AFE5C0B6D7
+CT=58ED1CC5A208A0E7340167E79F5DA7C2
+PT=FEDA5FB215819B441BE18B0AED27A1FD
+
+I=324
+KEY=7EED1776E603DD6C20F08B4C6B121525D985D41E8CB872CA6BBCE2EE04120290
+IV=D872FBB470D2FF7A327B5A9EAF992218
+CT=FEDA5FB215819B441BE18B0AED27A1FD
+PT=7CD64E29A704F13688DB206F7F337685
+
+I=325
+KEY=D4479A0AF29AF7145EC3FB89FEF8BBA7A5539A372BBC83FCE367C2817B217415
+IV=AAAA8D7C14992A787E3370C595EAAE82
+CT=7CD64E29A704F13688DB206F7F337685
+PT=25D6728244F28F79D1BC707BE94ECA13
+
+I=326
+KEY=7FB45D09003B25EFEB5F68CCB7E09C008085E8B56F4E0C8532DBB2FA926FBE06
+IV=ABF3C703F2A1D2FBB59C9345491827A7
+CT=25D6728244F28F79D1BC707BE94ECA13
+PT=47AF03717893A10D7F40D5A3D9B82534
+
+I=327
+KEY=35EE9428D4EC49EC103EDF32F4FBEE16C72AEBC417DDAD884D9B67594BD79B32
+IV=4A5AC921D4D76C03FB61B7FE431B7216
+CT=47AF03717893A10D7F40D5A3D9B82534
+PT=B6C25C0E4CA560707588321AAF41119C
+
+I=328
+KEY=B12C0149A6EDD2DC3742D10822FEDDF771E8B7CA5B78CDF838135543E4968AAE
+IV=84C2956172019B30277C0E3AD60533E1
+CT=B6C25C0E4CA560707588321AAF41119C
+PT=09137DF5460434E863647B4B50E17A60
+
+I=329
+KEY=CFEC596CE216B14A955E7CBC095C198678FBCA3F1D7CF9105B772E08B477F0CE
+IV=7EC0582544FB6396A21CADB42BA2C471
+CT=09137DF5460434E863647B4B50E17A60
+PT=17A26688B271E9765F41C71CD8CF0C25
+
+I=330
+KEY=35903FF91CC199C048C6C031AA2F4FC96F59ACB7AF0D10660436E9146CB8FCEB
+IV=FA7C6695FED7288ADD98BC8DA373564F
+CT=17A26688B271E9765F41C71CD8CF0C25
+PT=62E3C4D53DECB83FCD5F57D1971D58FB
+
+I=331
+KEY=F262476804B79C1F85FEB875CCD5FC3E0DBA686292E1A859C969BEC5FBA5A410
+IV=C7F27891187605DFCD38784466FAB3F7
+CT=62E3C4D53DECB83FCD5F57D1971D58FB
+PT=3495C5855D819B6FF779FC7AC59BEB53
+
+I=332
+KEY=DC61E5CFC9BAE6B23B894486AD478ADD392FADE7CF6033363E1042BF3E3E4F43
+IV=2E03A2A7CD0D7AADBE77FCF3619276E3
+CT=3495C5855D819B6FF779FC7AC59BEB53
+PT=7440ABE9E1374208CFBCCC18ADC6089F
+
+I=333
+KEY=C9D2E747A1A6D594CCAE434B7605C8FB4D6F060E2E57713EF1AC8EA793F847DC
+IV=15B30288681C3326F72707CDDB424226
+CT=7440ABE9E1374208CFBCCC18ADC6089F
+PT=B6802F0F62A28AF7326CDB2144E8DE87
+
+I=334
+KEY=99FEF610CFFFACBE8C6AD0A2B0C8F8A7FBEF29014CF5FBC9C3C05586D710995B
+IV=502C11576E59792A40C493E9C6CD305C
+CT=B6802F0F62A28AF7326CDB2144E8DE87
+PT=B84D7D91E60C131F6F042D403D85C47B
+
+I=335
+KEY=91EB2713A930B6A53993029D5A056B4143A25490AAF9E8D6ACC478C6EA955D20
+IV=0815D10366CF1A1BB5F9D23FEACD93E6
+CT=B84D7D91E60C131F6F042D403D85C47B
+PT=4DDF64827A16F90B5E6B306E8F227DB7
+
+I=336
+KEY=C15019D3523304CC9231B33C53C7FE1E0E7D3012D0EF11DDF2AF48A865B72097
+IV=50BB3EC0FB03B269ABA2B1A109C2955F
+CT=4DDF64827A16F90B5E6B306E8F227DB7
+PT=FDF6E5B6486E11839EB3A7F5C3898F54
+
+I=337
+KEY=E24B749901384F48B2E740C51175E311F38BD5A49881005E6C1CEF5DA63EAFC3
+IV=231B6D4A530B4B8420D6F3F942B21D0F
+CT=FDF6E5B6486E11839EB3A7F5C3898F54
+PT=841EF37B4AF82CC5EB00E11775079D81
+
+I=338
+KEY=44B7FFFA042DCA1BF276D4911D4B0BE2779526DFD2792C9B871C0E4AD3393242
+IV=A6FC8B6305158553409194540C3EE8F3
+CT=841EF37B4AF82CC5EB00E11775079D81
+PT=1725AF7F70B65FBB060D29B3BCDF0A31
+
+I=339
+KEY=B724B2CD569E436B20594E10576934BF60B089A0A2CF7320811127F96FE63873
+IV=F3934D3752B38970D22F9A814A223F5D
+CT=1725AF7F70B65FBB060D29B3BCDF0A31
+PT=2CCC6D09954E5FE6C6A87E18950EED02
+
+I=340
+KEY=E9EB02E31CABD14DFF231F1F649294044C7CE4A937812CC647B959E1FAE8D571
+IV=5ECFB02E4A359226DF7A510F33FBA0BB
+CT=2CCC6D09954E5FE6C6A87E18950EED02
+PT=C82C82AF68EACE2AF22C3266F898F573
+
+I=341
+KEY=90C8F71B05BE122AFE5D58A7A1AAB666845066065F6BE2ECB5956B8702702002
+IV=7923F5F81915C367017E47B8C5382262
+CT=C82C82AF68EACE2AF22C3266F898F573
+PT=377F6966928959F2D68F3A2BD0EA3735
+
+I=342
+KEY=1BE70B607CF9A9E35DF916C4CC103FEBB32F0F60CDE2BB1E631A51ACD29A1737
+IV=8B2FFC7B7947BBC9A3A44E636DBA898D
+CT=377F6966928959F2D68F3A2BD0EA3735
+PT=3A8CCF4943B9866A9ABBEC0BA46F25DB
+
+I=343
+KEY=631B2C30FEA26433F0CBCD01B1CE974089A3C0298E5B3D74F9A1BDA776F532EC
+IV=78FC2750825BCDD0AD32DBC57DDEA8AB
+CT=3A8CCF4943B9866A9ABBEC0BA46F25DB
+PT=3B767EAB7F0C2D24BBE5565E93DC3E24
+
+I=344
+KEY=8785E70A8CD45A8FE1E4382DC62D563DB2D5BE82F15710504244EBF9E5290CC8
+IV=E49ECB3A72763EBC112FF52C77E3C17D
+CT=3B767EAB7F0C2D24BBE5565E93DC3E24
+PT=619610C6A4A8E9B196E65D2E5D463968
+
+I=345
+KEY=B49BAD1E8EB8B9CF7F32048A81E5BCD3D343AE4455FFF9E1D4A2B6D7B86F35A0
+IV=331E4A14026CE3409ED63CA747C8EAEE
+CT=619610C6A4A8E9B196E65D2E5D463968
+PT=F12AF66580B33C3113C45CF5EFD52F4F
+
+I=346
+KEY=3C92453C6342B6CDC18BFE05241EB5D922695821D54CC5D0C766EA2257BA1AEF
+IV=8809E822EDFA0F02BEB9FA8FA5FB090A
+CT=F12AF66580B33C3113C45CF5EFD52F4F
+PT=A427E0B2CD34285167999A9F18295D26
+
+I=347
+KEY=24A1F21CA68CF23F1674BF5328219987864EB8931878ED81A0FF70BD4F9347C9
+IV=1833B720C5CE44F2D7FF41560C3F2C5E
+CT=A427E0B2CD34285167999A9F18295D26
+PT=85F5855ACB2741070E1C89F904CBDBEA
+
+I=348
+KEY=B5479F4D4A0DBBFFBF86C576009F241403BB3DC9D35FAC86AEE3F9444B589C23
+IV=91E66D51EC8149C0A9F27A2528BEBD93
+CT=85F5855ACB2741070E1C89F904CBDBEA
+PT=295D7A02348A185F5C54113C734E9003
+
+I=349
+KEY=AA9CE82B0B649063C874699C71E8A94E2AE647CBE7D5B4D9F2B7E87838160C20
+IV=1FDB776641692B9C77F2ACEA71778D5A
+CT=295D7A02348A185F5C54113C734E9003
+PT=E466F369B840296AAB1A24ED32A19F51
+
+I=350
+KEY=A2BA72E2906E04C42C0047EF222FFFE6CE80B4A25F959DB359ADCC950AB79371
+IV=08269AC99B0A94A7E4742E7353C756A8
+CT=E466F369B840296AAB1A24ED32A19F51
+PT=099CEB8099DD025E4A57015168F75388
+
+I=351
+KEY=EA9B425CCD937976EB04693F16C4DAC4C71C5F22C6489FED13FACDC46240C0F9
+IV=482130BE5DFD7DB2C7042ED034EB2522
+CT=099CEB8099DD025E4A57015168F75388
+PT=E40CD2C0A7E7CB35C64AEB396338A801
+
+I=352
+KEY=D31BCE56BA19A7CB6057C5F2CCB3786223108DE261AF54D8D5B026FD017868F8
+IV=39808C0A778ADEBD8B53ACCDDA77A2A6
+CT=E40CD2C0A7E7CB35C64AEB396338A801
+PT=12E94732A52D15C624A8E554AB54C9A4
+
+I=353
+KEY=F0CD039C509E0EFF71B18AE3FEEB186D31F9CAD0C482411EF118C3A9AA2CA15C
+IV=23D6CDCAEA87A93411E64F113258600F
+CT=12E94732A52D15C624A8E554AB54C9A4
+PT=241C32C2C0C5C6CBE4BB354C054C68D7
+
+I=354
+KEY=0579BEABF73DD177C1F1F0827DA20BA115E5F812044787D515A3F6E5AF60C98B
+IV=F5B4BD37A7A3DF88B0407A61834913CC
+CT=241C32C2C0C5C6CBE4BB354C054C68D7
+PT=E4EA5643CF19EF64820A1B591DE1C378
+
+I=355
+KEY=99C7C61F7153FFA0F07380D052431667F10FAE51CB5E68B197A9EDBCB2810AF3
+IV=9CBE78B4866E2ED7318270522FE11DC6
+CT=E4EA5643CF19EF64820A1B591DE1C378
+PT=BC86D5465171B667CE837F874D933FF4
+
+I=356
+KEY=C2A65A0A2E71F6E7E2BD9FBB5049F7914D897B179A2FDED6592A923BFF123507
+IV=5B619C155F22094712CE1F6B020AE1F6
+CT=BC86D5465171B667CE837F874D933FF4
+PT=EEB9DC4EBD27720AD3527A1323D85413
+
+I=357
+KEY=B635E7EFD987991CD29414B3EBAB2EA4A330A7592708ACDC8A78E828DCCA6114
+IV=7493BDE5F7F66FFB30298B08BBE2D935
+CT=EEB9DC4EBD27720AD3527A1323D85413
+PT=78591E006B877AC6880834E3F98FD6B0
+
+I=358
+KEY=F5849125E52B6DF3CD8144DDB64178DDDB69B9594C8FD61A0270DCCB2545B7A4
+IV=43B176CA3CACF4EF1F15506E5DEA5679
+CT=78591E006B877AC6880834E3F98FD6B0
+PT=8F9A67CF96F4608D56923CB267855F3F
+
+I=359
+KEY=41885734A072249ADE0091A0AD87F47854F3DE96DA7BB69754E2E07942C0E89B
+IV=B40CC611455949691381D57D1BC68CA5
+CT=8F9A67CF96F4608D56923CB267855F3F
+PT=1B0B8D9118CBECBA2D5AD17A261F9D56
+
+I=360
+KEY=FF1A5B86E3545D9CB01A1222EC99A81C4FF85307C2B05A2D79B8310364DF75CD
+IV=BE920CB2432679066E1A8382411E5C64
+CT=1B0B8D9118CBECBA2D5AD17A261F9D56
+PT=6225E63F0C1A5DE00FD63032908A51F3
+
+I=361
+KEY=836FB4DC9C17E5AD70404B41CC4A043E2DDDB538CEAA07CD766E0131F455243E
+IV=7C75EF5A7F43B831C05A596320D3AC22
+CT=6225E63F0C1A5DE00FD63032908A51F3
+PT=7C66E540C016FB81A345E10331FCAFF3
+
+I=362
+KEY=63CA7D0E2675E43626B5311A7BA7131B51BB50780EBCFC4CD52BE032C5A98BCD
+IV=E0A5C9D2BA62019B56F57A5BB7ED1725
+CT=7C66E540C016FB81A345E10331FCAFF3
+PT=2F010053D3C59BB8ACB5B13B197A4204
+
+I=363
+KEY=6B5C4A2DD70FFF3023B2A775BECF05607EBA502BDD7967F4799E5109DCD3C9C9
+IV=08963723F17A1B060507966FC568167B
+CT=2F010053D3C59BB8ACB5B13B197A4204
+PT=8918E06B8619B43E859171A345E246AE
+
+I=364
+KEY=575661F811B8D8B50980A55848A48949F7A2B0405B60D3CAFC0F20AA99318F67
+IV=3C0A2BD5C6B727852A32022DF66B8C29
+CT=8918E06B8619B43E859171A345E246AE
+PT=60FF920A8495AD880459737525C109D6
+
+I=365
+KEY=5FACBE49DE8F64786918067E7E361681975D224ADFF57E42F85653DFBCF086B1
+IV=08FADFB1CF37BCCD6098A32636929FC8
+CT=60FF920A8495AD880459737525C109D6
+PT=03F09A2C18DB8BAE5CCC93B9165A1D16
+
+I=366
+KEY=9BFDA5803AC1C3004F0B138885DE59FE94ADB866C72EF5ECA49AC066AAAA9BA7
+IV=C4511BC9E44EA778261315F6FBE84F7F
+CT=03F09A2C18DB8BAE5CCC93B9165A1D16
+PT=52CB3AF36047F4D14C2EAEE3C3F8AF2A
+
+I=367
+KEY=614239035D7EF489DE2F88FDB6188EC3C6668295A769013DE8B46E856952348D
+IV=FABF9C8367BF378991249B7533C6D73D
+CT=52CB3AF36047F4D14C2EAEE3C3F8AF2A
+PT=249794B3822BB06708B5D5777D297C40
+
+I=368
+KEY=20BEFE90BA9C7EE9CFB1E569FE354258E2F116262542B15AE001BBF2147B48CD
+IV=41FCC793E7E28A60119E6D94482DCC9B
+CT=249794B3822BB06708B5D5777D297C40
+PT=1836AE59EAE452DAC108618DECD666BD
+
+I=369
+KEY=E11E8BF6DE253E4FBADEDFD44B34BE15FAC7B87FCFA6E3802109DA7FF8AD2E70
+IV=C1A0756664B940A6756F3ABDB501FC4D
+CT=1836AE59EAE452DAC108618DECD666BD
+PT=20EE84DEB0E7B0C83D74CE251AA1615C
+
+I=370
+KEY=D519038D457B4BCD9DD50C8F64FE2F2ADA293CA17F4153481C7D145AE20C4F2C
+IV=3407887B9B5E7582270BD35B2FCA913F
+CT=20EE84DEB0E7B0C83D74CE251AA1615C
+PT=6FA7D3584A2E4B803AC1AC07B09931A2
+
+I=371
+KEY=82F1611CFB9E7AF9F9274C6BF1B96BEBB58EEFF9356F18C826BCB85D52957E8E
+IV=57E86291BEE5313464F240E4954744C1
+CT=6FA7D3584A2E4B803AC1AC07B09931A2
+PT=A7B8F8AC07BAB843F4E7942A6E4A85D5
+
+I=372
+KEY=DFF5A6DE8ADE9AB78CF1E637F44FD3351236175532D5A08BD25B2C773CDFFB5B
+IV=5D04C7C27140E04E75D6AA5C05F6B8DE
+CT=A7B8F8AC07BAB843F4E7942A6E4A85D5
+PT=7F3C3702404E6E013474A0AA0EF85527
+
+I=373
+KEY=9C6A11136F64F462E7C5CB30049CDA056D0A2057729BCE8AE62F8CDD3227AE7C
+IV=439FB7CDE5BA6ED56B342D07F0D30930
+CT=7F3C3702404E6E013474A0AA0EF85527
+PT=7C0C44DC96872DEE0BAC71DDBDCC84E3
+
+I=374
+KEY=2C95624ADD9B1E09F13AE579333B22BB1106648BE41CE364ED83FD008FEB2A9F
+IV=B0FF7359B2FFEA6B16FF2E4937A7F8BE
+CT=7C0C44DC96872DEE0BAC71DDBDCC84E3
+PT=B9E4597C562E9B5C0E6815E64F767CE9
+
+I=375
+KEY=CBB3F14A21E49825990B89E7D07BC386A8E23DF7B2327838E3EBE8E6C09D5676
+IV=E7269300FC7F862C68316C9EE340E13D
+CT=B9E4597C562E9B5C0E6815E64F767CE9
+PT=4B37A1FD978F50BE9EA482CFBEACFA08
+
+I=376
+KEY=65B742FFD29D9B07F3956625AED7382EE3D59C0A25BD28867D4F6A297E31AC7E
+IV=AE04B3B5F37903226A9EEFC27EACFBA8
+CT=4B37A1FD978F50BE9EA482CFBEACFA08
+PT=D3406B71FFC847C364199666A808C43A
+
+I=377
+KEY=6C6A4DE74AF6C443B4F6A1C7DAB4A28E3095F77BDA756F451956FC4FD6396844
+IV=09DD0F18986B5F444763C7E274639AA0
+CT=D3406B71FFC847C364199666A808C43A
+PT=94744ECE39108CB8084DF8A17C49CDCC
+
+I=378
+KEY=AD09E82AFAA9F5168CD9B83F44C096A0A4E1B9B5E365E3FD111B04EEAA70A588
+IV=C163A5CDB05F3155382F19F89E74342E
+CT=94744ECE39108CB8084DF8A17C49CDCC
+PT=45EF43A20D7F174DA1463DDA678BBFFB
+
+I=379
+KEY=DC29CBF4E8B92311A9AA788C437A8EDDE10EFA17EE1AF4B0B05D3934CDFB1A73
+IV=712023DE1210D6072573C0B307BA187D
+CT=45EF43A20D7F174DA1463DDA678BBFFB
+PT=4480FB073AA197507E376C56B824C753
+
+I=380
+KEY=93308B36D3A2E1A952B96FE4687B2DF9A58E0110D4BB63E0CE6A556275DFDD20
+IV=4F1940C23B1BC2B8FB1317682B01A324
+CT=4480FB073AA197507E376C56B824C753
+PT=C8BBB77D206EF37C7C40DB175D105271
+
+I=381
+KEY=9682C995955D18471758C504201E93AC6D35B66DF4D5909CB22A8E7528CF8F51
+IV=05B242A346FFF9EE45E1AAE04865BE55
+CT=C8BBB77D206EF37C7C40DB175D105271
+PT=50C0B9001C716D53470FC9B011191402
+
+I=382
+KEY=60854B33BE79B0E631B1AF9046C46D153DF50F6DE8A4FDCFF52547C539D69B53
+IV=F60782A62B24A8A126E96A9466DAFEB9
+CT=50C0B9001C716D53470FC9B011191402
+PT=8DB5367A34C5E5B93486AB07CA8BB02E
+
+I=383
+KEY=7EE74E63D01F31D44B3860471B0BE50FB0403917DC611876C1A3ECC2F35D2B7D
+IV=1E6205506E6681327A89CFD75DCF881A
+CT=8DB5367A34C5E5B93486AB07CA8BB02E
+PT=4F9B922C88C1750829D9088F16EDB529
+
+I=384
+KEY=A65EE6CE576182F487D2C21C4F8539F3FFDBAB3B54A06D7EE87AE44DE5B09E54
+IV=D8B9A8AD877EB320CCEAA25B548EDCFC
+CT=4F9B922C88C1750829D9088F16EDB529
+PT=05A705F6B55D3ACF3E95E8264FEFFDCC
+
+I=385
+KEY=64F9A7DF5DA898C968746F96692F1892FA7CAECDE1FD57B1D6EF0C6BAA5F6398
+IV=C2A741110AC91A3DEFA6AD8A26AA2161
+CT=05A705F6B55D3ACF3E95E8264FEFFDCC
+PT=D1FB7C1A698990AC81068D08BE1CE91F
+
+I=386
+KEY=019663655974433AD5731BC4388A067D2B87D2D78874C71D57E9816314438A87
+IV=656FC4BA04DCDBF3BD07745251A51EEF
+CT=D1FB7C1A698990AC81068D08BE1CE91F
+PT=A1CD24AAFCEE3A60A025B983D10D8E54
+
+I=387
+KEY=16EF87A84F0627345CED6385A62374778A4AF67D749AFD7DF7CC38E0C54E04D3
+IV=1779E4CD1672640E899E78419EA9720A
+CT=A1CD24AAFCEE3A60A025B983D10D8E54
+PT=B9064D063D2C8D8D935B53CBEF3224E2
+
+I=388
+KEY=80931C61E23BA976FFC9288F74AD876D334CBB7B49B670F064976B2B2A7C2031
+IV=967C9BC9AD3D8E42A3244B0AD28EF31A
+CT=B9064D063D2C8D8D935B53CBEF3224E2
+PT=8AD3B2222D84A4B25DC1311378027207
+
+I=389
+KEY=227ACE0315678DEE433049D8CDFEE2D8B99F09596432D44239565A38527E5236
+IV=A2E9D262F75C2498BCF96157B95365B5
+CT=8AD3B2222D84A4B25DC1311378027207
+PT=3A7FC9D43F1F997FAF4931101C5B5FD4
+
+I=390
+KEY=11799A22D50C53A89EDF396B7C7565AD83E0C08D5B2D4D3D961F6B284E250DE2
+IV=33035421C06BDE46DDEF70B3B18B8775
+CT=3A7FC9D43F1F997FAF4931101C5B5FD4
+PT=930860056FE2FDDC10059D09385C0415
+
+I=391
+KEY=58DE85D9975D5F8A16C47C834568EF1D10E8A08834CFB0E1861AF621767909F7
+IV=49A71FFB42510C22881B45E8391D8AB0
+CT=930860056FE2FDDC10059D09385C0415
+PT=F41CCB823840FF7D16C6990A14E591D9
+
+I=392
+KEY=3C8567CD05AF33761FE05FBDC2596EBFE4F46B0A0C8F4F9C90DC6F2B629C982E
+IV=645BE21492F26CFC0924233E873181A2
+CT=F41CCB823840FF7D16C6990A14E591D9
+PT=82899B698456363C175791B845D5736F
+
+I=393
+KEY=F50F05CBDDFEBE7A656EE5C08CC24FF5667DF06388D979A0878BFE932749EB41
+IV=C98A6206D8518D0C7A8EBA7D4E9B214A
+CT=82899B698456363C175791B845D5736F
+PT=CF85BFDA1DFF5ADFFAF1B3E000B407F3
+
+I=394
+KEY=B44AA91A374D1C5A7BD00557CBD24962A9F84FB99526237F7D7A4D7327FDECB2
+IV=4145ACD1EAB3A2201EBEE09747100697
+CT=CF85BFDA1DFF5ADFFAF1B3E000B407F3
+PT=34EEA75CC20C6EDEE9A5379C3B5CF01A
+
+I=395
+KEY=4C401127C0AFABBEA4C93FD80BA009CC9D16E8E5572A4DA194DF7AEF1CA11CA8
+IV=F80AB83DF7E2B7E4DF193A8FC07240AE
+CT=34EEA75CC20C6EDEE9A5379C3B5CF01A
+PT=27C6392ABE790B448CC9216B3FCF5454
+
+I=396
+KEY=44D59CB8EBCC91362462D1D8FE193270BAD0D1CFE95346E518165B84236E48FC
+IV=08958D9F2B633A8880ABEE00F5B93BBC
+CT=27C6392ABE790B448CC9216B3FCF5454
+PT=2C39AC10C7D51B61D8F437D9BAA24A55
+
+I=397
+KEY=E42795DA2BF8FA7A3B0E83923A5E243196E97DDF2E865D84C0E26C5D99CC02A9
+IV=A0F20962C0346B4C1F6C524AC4471641
+CT=2C39AC10C7D51B61D8F437D9BAA24A55
+PT=F828BC735827C106E61F8FFFE9453A77
+
+I=398
+KEY=7F05DC0CD80178018D3A90E4A0CE63156EC1C1AC76A19C8226FDE3A2708938DE
+IV=9B2249D6F3F9827BB63413769A904724
+CT=F828BC735827C106E61F8FFFE9453A77
+PT=DF8129A79852FEE2A8015A2379A7215B
+
+I=399
+KEY=935560C6072D897477D71AC4C12188D0B140E80BEEF362608EFCB981092E1985
+IV=EC50BCCADF2CF175FAED8A2061EFEBC5
+CT=DF8129A79852FEE2A8015A2379A7215B
+PT=CD6429CF3F81F8B4F82BC627A8283096
+
+==========
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/cbc_e_m.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,7207 @@
+
+KEYSIZE=128
+
+I=0
+KEY=00000000000000000000000000000000
+IV=00000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=8A05FC5E095AF4848A08D328D3688E3D
+
+I=1
+KEY=8A05FC5E095AF4848A08D328D3688E3D
+IV=8A05FC5E095AF4848A08D328D3688E3D
+PT=204F17E2444381F6114FF53934C0BCD3
+CT=192D9B3AA10BB2F7846CCBA0085C657A
+
+I=2
+KEY=93286764A85146730E641888DB34EB47
+ IV=192D9B3AA10BB2F7846CCBA0085C657A
+PT=983BF6F5A6DFBCDAA19370666E83A99A
+CT=40D8DAF6D1FDA0A073B3BD18B7695D2E
+
+I=3
+KEY=D3F0BD9279ACE6D37DD7A5906C5DB669
+IV=40D8DAF6D1FDA0A073B3BD18B7695D2E
+PT=C48CD503A21C8AD0B2483EF15F79571D
+CT=3EDBE80D69A1D2248CA55FC17C4EF3C5
+
+I=4
+KEY=ED2B559F100D34F7F172FA51101345AC
+IV=3EDBE80D69A1D2248CA55FC17C4EF3C5
+PT=6A49A07B90CE830C20BC239646D936C0
+CT=D87891CF573C99EAE4349A70CA099415
+
+I=5
+KEY=3553C4504731AD1D15466021DA1AD1B9
+IV=D87891CF573C99EAE4349A70CA099415
+PT=0ACB9A969946F523317BB932CE1561A4
+CT=24E8F1013F479BBE655DF088C9316BC7
+
+I=6
+KEY=11BB3551787636A3701B90A9132BBA7E
+IV=24E8F1013F479BBE655DF088C9316BC7
+PT=3DFC8683C1D626A26E2513EB747E8B0F
+CT=2C92E80D8D1F70B411C28BD9FDABF21D
+
+I=7
+KEY=3D29DD5CF569461761D91B70EE804863
+IV=2C92E80D8D1F70B411C28BD9FDABF21D
+PT=FAE2D6A36DBD17199F257643C89EB608
+CT=A61810A2798A70A9D2B37E88DEF9AE0F
+
+I=8
+KEY=9B31CDFE8CE336BEB36A65F83079E66C
+IV=A61810A2798A70A9D2B37E88DEF9AE0F
+PT=CB97F090318A6B10F5044EB8333ECDD6
+CT=0034FA480DE6F65D98D30B026118718F
+
+I=9
+KEY=9B0537B68105C0E32BB96EFA516197E3
+IV=0034FA480DE6F65D98D30B026118718F
+PT=1B8030AC682BA677A7A3ACDC7FB33BB6
+CT=BEA24548CBC4A6630C9F1251F2C3DC51
+
+I=10
+KEY=25A772FE4AC1668027267CABA3A24BB2
+IV=BEA24548CBC4A6630C9F1251F2C3DC51
+PT=D0524282C9AC395508CB2991822E8F42
+CT=4F278DD0B06CBFBAA928635E7CA81B68
+
+I=11
+KEY=6A80FF2EFAADD93A8E0E1FF5DF0A50DA
+IV=4F278DD0B06CBFBAA928635E7CA81B68
+PT=49EA900E2F61DF8CDEA7D479F59C4C30
+CT=EDFF930BB183F8DAC2FC0BD01AD65882
+
+I=12
+KEY=877F6C254B2E21E04CF21425C5DC0858
+IV=EDFF930BB183F8DAC2FC0BD01AD65882
+PT=A1BBEB4E44EF725497B8C589192CC900
+CT=A6FE530E9509D48BAF30F601D04DB19D
+
+I=13
+KEY=21813F2BDE27F56BE3C2E2241591B9C5
+IV=A6FE530E9509D48BAF30F601D04DB19D
+PT=4AD71402771A83F41F7E3AC004150CB7
+CT=FF1148A2E07401F7291B418D62618B65
+
+I=14
+KEY=DE9077893E53F49CCAD9A3A977F032A0
+IV=FF1148A2E07401F7291B418D62618B65
+PT=AC47A1FD3490D6E809D40D4BEB8FF639
+CT=4420D4686F7A4D77A72810E89A5E0DF1
+
+I=15
+KEY=9AB0A3E15129B9EB6DF1B341EDAE3F51
+IV=4420D4686F7A4D77A72810E89A5E0DF1
+PT=F22E1865DD87A88238173FC693C382E7
+CT=A4C7DE5DF9E2B6A20A1E22F8D7496ACD
+
+I=16
+KEY=3E777DBCA8CB0F4967EF91B93AE7559C
+IV=A4C7DE5DF9E2B6A20A1E22F8D7496ACD
+PT=929EFB34B1C552221B648A3D2C678EC9
+CT=D93DBCCA25FA4D9D8C37B3F107FCFA3C
+
+I=17
+KEY=E74AC1768D3142D4EBD822483D1BAFA0
+IV=D93DBCCA25FA4D9D8C37B3F107FCFA3C
+PT=771C61ABB1E9BAB6F678336C8193307E
+CT=75F491C2EA85184ACA3C96B769FA9698
+
+I=18
+KEY=92BE50B467B45A9E21E4B4FF54E13938
+IV=75F491C2EA85184ACA3C96B769FA9698
+PT=55E42F98CCED821FE211D29674E77F48
+CT=A9C7536B77265ECBF7AC5ECD1EF5DDE2
+
+I=19
+KEY=3B7903DF10920455D648EA324A14E4DA
+IV=A9C7536B77265ECBF7AC5ECD1EF5DDE2
+PT=56BC0FA54F6F1E04A9A8893D3964EA68
+CT=3C749BF7EFA55CE924D1B33291C2B586
+
+I=20
+KEY=070D9828FF3758BCF2995900DBD6515C
+IV=3C749BF7EFA55CE924D1B33291C2B586
+PT=45D9BBBB1F3BB33EE182F09C90B1661C
+CT=C4708DBAEBD202CDD2054DDCB1AF7BAB
+
+I=21
+KEY=C37D159214E55A71209C14DC6A792AF7
+IV=C4708DBAEBD202CDD2054DDCB1AF7BAB
+PT=37765B154264AD781BBE5F5717DE7038
+CT=87457FD2EE747645576A27F46B00EC30
+
+I=22
+KEY=44386A40FA912C3477F633280179C6C7
+IV=87457FD2EE747645576A27F46B00EC30
+PT=A7150BBC7BE3837E145AB83E554B49DE
+CT=E25743DAD8E627803DA6C5E587C82384
+
+I=23
+KEY=A66F299A22770BB44A50F6CD86B1E543
+IV=E25743DAD8E627803DA6C5E587C82384
+PT=173343A8488146FC9E4B59C2DF42BAF3
+CT=0D0A78CD5E3EB40F92FB55351122E92B
+
+I=24
+KEY=AB6551577C49BFBBD8ABA3F897930C68
+IV=0D0A78CD5E3EB40F92FB55351122E92B
+PT=3B68CFE78B5DEA8F5165A2034D8C2823
+CT=1921B523A2F9B5F53C740D451C9FCE0C
+
+I=25
+KEY=B244E474DEB00A4EE4DFAEBD8B0CC264
+IV=1921B523A2F9B5F53C740D451C9FCE0C
+PT=FDDD484B52C7F3A32F4514BEF5A646E3
+CT=6EAC2BB6EDF35C1267FF4F10700F3CD7
+
+I=26
+KEY=DCE8CFC23343565C8320E1ADFB03FEB3
+IV=6EAC2BB6EDF35C1267FF4F10700F3CD7
+PT=CDAD592E5467AD1FA1B71D8AC050FCE0
+CT=D9624E40A8C9A2C58ABEDBAEB865DC1F
+
+I=27
+KEY=058A81829B8AF499099E3A03436622AC
+IV=D9624E40A8C9A2C58ABEDBAEB865DC1F
+PT=F9E90A4D7A9EF66818004CBC47C8C6EA
+CT=DE15C7322B32738BB493E7FA27AFE6E2
+
+I=28
+KEY=DB9F46B0B0B88712BD0DDDF964C9C44E
+IV=DE15C7322B32738BB493E7FA27AFE6E2
+PT=FE3CC4AE4A13AC8946407CEEE220290B
+CT=5822C79D627AD8A0C4975873D62C5E11
+
+I=29
+KEY=83BD812DD2C25FB2799A858AB2E59A5F
+IV=5822C79D627AD8A0C4975873D62C5E11
+PT=A5106EBD8888CC3A6884AC8E8EA9C97A
+CT=F5AD0473A4228662D9F76E7A5ED4DBDD
+
+I=30
+KEY=7610855E76E0D9D0A06DEBF0EC314182
+IV=F5AD0473A4228662D9F76E7A5ED4DBDD
+PT=4F30B073FB95CD0F0317E749F20E7A7D
+CT=4B39DA1FA331CFEB1D6713054C6E9474
+
+I=31
+KEY=3D295F41D5D1163BBD0AF8F5A05FD5F6
+IV=4B39DA1FA331CFEB1D6713054C6E9474
+PT=4850735E17F01A3B131E1B78B3A6EB96
+CT=32D1BE8640859CFAB16D64CE8795729B
+
+I=32
+KEY=0FF8E1C795548AC10C679C3B27CAA76D
+IV=32D1BE8640859CFAB16D64CE8795729B
+PT=A8C4B9E0069935CB046ACBB49C0B1205
+CT=47DC1150929AA9610938CB0CFE92995E
+
+I=33
+KEY=4824F09707CE23A0055F5737D9583E33
+IV=47DC1150929AA9610938CB0CFE92995E
+PT=13F5DA56D399A7DAA004D0BE76845E68
+CT=BCA6BD8971837B8A81B923E5B2ED0D83
+
+I=34
+KEY=F4824D1E764D582A84E674D26BB533B0
+IV=BCA6BD8971837B8A81B923E5B2ED0D83
+PT=8397C79E02FDFE6B7D47FA0181EA453A
+CT=23D991B7DA5E96966830E7B40B5A2D8A
+
+I=35
+KEY=D75BDCA9AC13CEBCECD6936660EF1E3A
+IV=23D991B7DA5E96966830E7B40B5A2D8A
+PT=18987E5504E23C0F862BCA8DFFC2B07F
+CT=17AA31C49F584DEF77C8E7891B11652B
+
+I=36
+KEY=C0F1ED6D334B83539B1E74EF7BFE7B11
+IV=17AA31C49F584DEF77C8E7891B11652B
+PT=A34D44CC1C6E171D7D48447F87E2F2C1
+CT=DD1F90F66D4062E6823F0F229562D110
+
+I=37
+KEY=1DEE7D9B5E0BE1B519217BCDEE9CAA01
+IV=DD1F90F66D4062E6823F0F229562D110
+PT=C9793582E22B8840BBAA3D7669208CCC
+CT=8F5B876777F7CA903B1D6346AA8BDAE7
+
+I=38
+KEY=92B5FAFC29FC2B25223C188B441770E6
+IV=8F5B876777F7CA903B1D6346AA8BDAE7
+PT=730EACFEE3817A94B88117ABB3F9CDE4
+CT=388780BA989C0A8BB5BD9E4086D91EF7
+
+I=39
+KEY=AA327A46B16021AE978186CBC2CE6E11
+IV=388780BA989C0A8BB5BD9E4086D91EF7
+PT=F004D3A14C6C94FA2D39BE0C71119658
+CT=7F4C33E4F5C055C05DB4B7691061B307
+
+I=40
+KEY=D57E49A244A0746ECA3531A2D2AFDD16
+IV=7F4C33E4F5C055C05DB4B7691061B307
+PT=575F86A5D1637CB86449F8BC0F1573D3
+CT=F6FE1919F174065AB31AC43E0D733A81
+
+I=41
+KEY=238050BBB5D47234792FF59CDFDCE797
+IV=F6FE1919F174065AB31AC43E0D733A81
+PT=14F8E2DB61B05E094CA4C0E9DA7800EE
+CT=4CB876F2DC169F955E639C6C916340A6
+
+I=42
+KEY=6F38264969C2EDA1274C69F04EBFA731
+IV=4CB876F2DC169F955E639C6C916340A6
+PT=F88BA2E4AA4ABDD381778DFD1DA1856F
+CT=AEEB80B469D89E45BC3426B6CCC50440
+
+I=43
+KEY=C1D3A6FD001A73E49B784F46827AA371
+IV=AEEB80B469D89E45BC3426B6CCC50440
+PT=195F74019B65C0F7D724491BDE8C8B88
+CT=2FD7CCDBDB2B2037C104F0A707A11EDA
+
+I=44
+KEY=EE046A26DB3153D35A7CBFE185DBBDAB
+IV=2FD7CCDBDB2B2037C104F0A707A11EDA
+PT=FF51887AB5FEC9C97CB61BB2DE9CDBC6
+CT=8DF7BB99B781C63F4F8B2A7D5DFF2960
+
+I=45
+KEY=63F3D1BF6CB095EC15F7959CD82494CB
+IV=8DF7BB99B781C63F4F8B2A7D5DFF2960
+PT=A35AAB0055E99FA980D59B242B8C6257
+CT=7D96ECC20571E9E85C16E3BDADA374CA
+
+I=46
+KEY=1E653D7D69C17C0449E176217587E001
+IV=7D96ECC20571E9E85C16E3BDADA374CA
+PT=02CC392194874CD531025588C96E2D22
+CT=AA1DC2E69CE582DFA9A1B435854FCBB1
+
+I=47
+KEY=B478FF9BF524FEDBE040C214F0C82BB0
+IV=AA1DC2E69CE582DFA9A1B435854FCBB1
+PT=94CC5DB118EF53C904B0EEC23AC650FD
+CT=DA0CA33BCCE4ABA1936833127D1F5E25
+
+I=48
+KEY=6E745CA039C0557A7328F1068DD77595
+IV=DA0CA33BCCE4ABA1936833127D1F5E25
+PT=52F009E929526E923BE4F43B66876725
+CT=B5E80FF4DADD69BB7493B9F72A752811
+
+I=49
+KEY=DB9C5354E31D3CC107BB48F1A7A25D84
+IV=B5E80FF4DADD69BB7493B9F72A752811
+PT=6B88B42E99E5B4F838064A711B71DE1F
+CT=5CDDCE45516C6D1654647A1A541AC435
+
+I=50
+KEY=87419D11B27151D753DF32EBF3B899B1
+IV=5CDDCE45516C6D1654647A1A541AC435
+PT=9E25CBDD8E2D7D68FF72932E35879175
+CT=3C7E88A9A6462D08ADA5910A3FCE611A
+
+I=51
+KEY=BB3F15B814377CDFFE7AA3E1CC76F8AB
+IV=3C7E88A9A6462D08ADA5910A3FCE611A
+PT=72A4EF1D82A3AC5C1DFDF8C4DCFB9F6E
+CT=E428200E1C3BE9A5141F73590B7473B8
+
+I=52
+KEY=5F1735B6080C957AEA65D0B8C7028B13
+IV=E428200E1C3BE9A5141F73590B7473B8
+PT=7CD8053F2FD743A44CC39F75C1E81075
+CT=AB3B8A79653E884053AFC8C14504AF77
+
+I=53
+KEY=F42CBFCF6D321D3AB9CA187982062464
+IV=AB3B8A79653E884053AFC8C14504AF77
+PT=0731077A8B6854CB90AFFAE3A3B199C4
+CT=53B7DFD6D12DDE7966C62FCC1946A4AC
+
+I=54
+KEY=A79B6019BC1FC343DF0C37B59B4080C8
+IV=53B7DFD6D12DDE7966C62FCC1946A4AC
+PT=E4E26CA1DA697F30E0542763313A79B7
+CT=6DEC201BBB90B66A3B2DFF4FA1DDF7C4
+
+I=55
+KEY=CA774002078F7529E421C8FA3A9D770C
+IV=6DEC201BBB90B66A3B2DFF4FA1DDF7C4
+PT=C2CF11681C4767A78B2F95AFB50CF155
+CT=F535B7CD4135A39E0E344BD2CFA14B83
+
+I=56
+KEY=3F42F7CF46BAD6B7EA158328F53C3C8F
+IV=F535B7CD4135A39E0E344BD2CFA14B83
+PT=606618948C1ED454B9B0F92435381D2D
+CT=209AC483682C48AA197BB64417127656
+
+I=57
+KEY=1FD8334C2E969E1DF36E356CE22E4AD9
+IV=209AC483682C48AA197BB64417127656
+PT=8F8A70AADF2F8BFB5E137F86AC83D32F
+CT=76F5F43A888D7F22D698A73810ED5B15
+
+I=58
+KEY=692DC776A61BE13F25F69254F2C311CC
+IV=76F5F43A888D7F22D698A73810ED5B15
+PT=E9E8AEBF16A5F4E1C26B4A385163E844
+CT=625C62F33C9548F2651FB0A08BF45286
+
+I=59
+KEY=0B71A5859A8EA9CD40E922F47937434A
+IV=625C62F33C9548F2651FB0A08BF45286
+PT=C69CFD36C50EBA06E3B3C4AB7C9B694E
+CT=3931CE6DF783063F26920D4048B00C82
+
+I=60
+KEY=32406BE86D0DAFF2667B2FB431874FC8
+IV=3931CE6DF783063F26920D4048B00C82
+PT=5DFE322DD692BA8DD9CD328A5AF9A3B7
+CT=A3CA3ECE725C84281144052A80EA5176
+
+I=61
+KEY=918A55261F512BDA773F2A9EB16D1EBE
+IV=A3CA3ECE725C84281144052A80EA5176
+PT=4BBD16BF74226F816767A7207C672C9A
+CT=94552690A231354F8F9BEF295E55F142
+
+I=62
+KEY=05DF73B6BD601E95F8A4C5B7EF38EFFC
+IV=94552690A231354F8F9BEF295E55F142
+PT=7055D0C535B2B0501FF6AAEE46E03818
+CT=771908987F00C2D822897E7EEA148F29
+
+I=63
+KEY=72C67B2EC260DC4DDA2DBBC9052C60D5
+IV=771908987F00C2D822897E7EEA148F29
+PT=7336B9D4977BDDA811C0C5EBEA539574
+CT=7AA84598115B181863081AFCC239EDD2
+
+I=64
+KEY=086E3EB6D33BC455B925A135C7158D07
+IV=7AA84598115B181863081AFCC239EDD2
+PT=5296C8546532BAEACBEC9F29916FB6B2
+CT=3D95967035AF639B2D2814DEB9B7F86A
+
+I=65
+KEY=35FBA8C6E694A7CE940DB5EB7EA2756D
+IV=3D95967035AF639B2D2814DEB9B7F86A
+PT=430880F5576C7783BC1336F900DDD037
+CT=4D70AAD2FC9EF403B463A72DB4CFE640
+
+I=66
+KEY=788B02141A0A53CD206E12C6CA6D932D
+IV=4D70AAD2FC9EF403B463A72DB4CFE640
+PT=E489B93778DE0C42FEFB6122ECA46BDC
+CT=165DDB405546934E81CB6B0B89B4A40E
+
+I=67
+KEY=6ED6D9544F4CC083A1A579CD43D93723
+IV=165DDB405546934E81CB6B0B89B4A40E
+PT=8E5481ACD58BFC5D141C1F71CDE91E37
+CT=693775A3661CE9D0E4CB4888431C64A5
+
+I=68
+KEY=07E1ACF729502953456E314500C55386
+IV=693775A3661CE9D0E4CB4888431C64A5
+PT=4AAA5E507EFB9FAD15E5F4C77F46AF89
+CT=C42391D50B1210C67B6AD642745A4DAC
+
+I=69
+KEY=C3C23D22224239953E04E707749F1E2A
+IV=C42391D50B1210C67B6AD642745A4DAC
+PT=4E0748F8716801B099494037485B8BA4
+CT=A4CB7F010AC42B4C3C14F02353F3644A
+
+I=70
+KEY=67094223288612D902101724276C7A60
+IV=A4CB7F010AC42B4C3C14F02353F3644A
+PT=0B7B41D57885DB37A2FC355C8D03FF3C
+CT=1BB0CBD24537B36EB555BE8C0FEC3A1F
+
+I=71
+KEY=7CB989F16DB1A1B7B745A9A82880407F
+IV=1BB0CBD24537B36EB555BE8C0FEC3A1F
+PT=4696F9A564354194142AB7B8630B4279
+CT=18B10BAE39D4FA58F586A067A8E38BC5
+
+I=72
+KEY=6408825F54655BEF42C309CF8063CBBA
+IV=18B10BAE39D4FA58F586A067A8E38BC5
+PT=0B59EBABAB994F2DDB3DE383454BECE8
+CT=C09C6670B93ECD303BA53DE58DD81A64
+
+I=73
+KEY=A494E42FED5B96DF7966342A0DBBD1DE
+IV=C09C6670B93ECD303BA53DE58DD81A64
+PT=2F897F3385E71133CEC8367411E830A3
+CT=45EA7CB9119DF7367294F9FE36D4A09F
+
+I=74
+KEY=E17E9896FCC661E90BF2CDD43B6F7141
+IV=45EA7CB9119DF7367294F9FE36D4A09F
+PT=8CDE9D975B51A098F4CAC93DC58C002F
+CT=02DDD735439A8AE03E976E629A6C992C
+
+I=75
+KEY=E3A34FA3BF5CEB093565A3B6A103E86D
+IV=02DDD735439A8AE03E976E629A6C992C
+PT=1E20571F82C2C6884A6F90A23FD3A925
+CT=B040686B866AE80A88B899031F2F0EE4
+
+I=76
+KEY=53E327C839360303BDDD3AB5BE2CE689
+IV=B040686B866AE80A88B899031F2F0EE4
+PT=0851624711970ADE2F456D5DAFB17E05
+CT=201756BC061706513264A3C489D95A0C
+
+I=77
+KEY=73F471743F2105528FB9997137F5BC85
+IV=201756BC061706513264A3C489D95A0C
+PT=E8B1410DE742136E71F54D31FEAA72EB
+CT=2EF27C31AA488648FCE0F1804D658092
+
+I=78
+KEY=5D060D459569831A735968F17A903C17
+IV=2EF27C31AA488648FCE0F1804D658092
+PT=97E0CA84C9B22C8942C7FC5088EAED04
+CT=7545F1D9C8F5F8B441EDCDAF00462344
+
+I=79
+KEY=2843FC9C5D9C7BAE32B4A55E7AD61F53
+IV=7545F1D9C8F5F8B441EDCDAF00462344
+PT=7B5572C09E998656B55C53748CF77C21
+CT=347875EFD6BD978CD1B2EA949F7E2358
+
+I=80
+KEY=1C3B89738B21EC22E3064FCAE5A83C0B
+IV=347875EFD6BD978CD1B2EA949F7E2358
+PT=A30001AA29D70B0A141B8FC8B9B2E210
+CT=9C956408BA335CCC9F02F31CC45FD5E6
+
+I=81
+KEY=80AEED7B3112B0EE7C04BCD621F7E9ED
+IV=9C956408BA335CCC9F02F31CC45FD5E6
+PT=839783D75859393B215010F63159FA45
+CT=B70E700F4A7ED08618754960B83BD0F2
+
+I=82
+KEY=37A09D747B6C60686471F5B699CC391F
+IV=B70E700F4A7ED08618754960B83BD0F2
+PT=1E3C630BC8C34BF8822686043D14E4D6
+CT=4721B6796F82D47D6EEB9CB11A19605E
+
+I=83
+KEY=70812B0D14EEB4150A9A690783D55941
+IV=4721B6796F82D47D6EEB9CB11A19605E
+PT=CEE1B977E8B75623CC4E2C4F4765FE2A
+CT=3382E1B076680BBBE7C451582016DD11
+
+I=84
+KEY=4303CABD6286BFAEED5E385FA3C38450
+IV=3382E1B076680BBBE7C451582016DD11
+PT=02365457AB60C892A0C34A7067AB7608
+CT=AB581732E06B90AA0C835C1C7B6D18B5
+
+I=85
+KEY=E85BDD8F82ED2F04E1DD6443D8AE9CE5
+IV=AB581732E06B90AA0C835C1C7B6D18B5
+PT=222B7ED84C648C12FFDD6E8E13EEC651
+CT=3E2E592CEEAD3B5E16860E80E406E882
+
+I=86
+KEY=D67584A36C40145AF75B6AC33CA87467
+IV=3E2E592CEEAD3B5E16860E80E406E882
+PT=7D24BD646EEBA44ED27B11DA42D72FF8
+CT=9163F6DBE0D8BB79A154D92E37A07E1C
+
+I=87
+KEY=471672788C98AF23560FB3ED0B080A7B
+IV=9163F6DBE0D8BB79A154D92E37A07E1C
+PT=42B571FFB3275F5A8E26616A3F0E3403
+CT=E1340E61513FE8146F29E111392E2C3A
+
+I=88
+KEY=A6227C19DDA74737392652FC32262641
+IV=E1340E61513FE8146F29E111392E2C3A
+PT=6EFD16D48E03B6E1CD74777ABC891DA8
+CT=3D703B4FD8A8A7F015D0FD47DE0C5A28
+
+I=89
+KEY=9B524756050FE0C72CF6AFBBEC2A7C69
+IV=3D703B4FD8A8A7F015D0FD47DE0C5A28
+PT=7956129687AC95397E14821A17F267DE
+CT=C5C6D2BAABDBE0B82CDFFFE7A92C8344
+
+I=90
+KEY=5E9495ECAED4007F0029505C4506FF2D
+IV=C5C6D2BAABDBE0B82CDFFFE7A92C8344
+PT=AC661770332FE0A45B80791C3A5D1241
+CT=6F7BDE1BD17C5B10064B52EB54EE90B0
+
+I=91
+KEY=31EF4BF77FA85B6F066202B711E86F9D
+IV=6F7BDE1BD17C5B10064B52EB54EE90B0
+PT=1DE0702C81667A979E5E3542DA95C5AD
+CT=DC7E35D5B02AFF4B92C190265E01C0F8
+
+I=92
+KEY=ED917E22CF82A42494A392914FE9AF65
+IV=DC7E35D5B02AFF4B92C190265E01C0F8
+PT=A491CB4321C757FD353B560C0B3EA4D0
+CT=D753F5A6C5D7E17F4024FD8675B23E7F
+
+I=93
+KEY=3AC28B840A55455BD4876F173A5B911A
+IV=D753F5A6C5D7E17F4024FD8675B23E7F
+PT=418FA3B3E9B4E463D04AC3A3361DCA57
+CT=B635529E8080B33E9AD6D79B8203112D
+
+I=94
+KEY=8CF7D91A8AD5F6654E51B88CB8588037
+IV=B635529E8080B33E9AD6D79B8203112D
+PT=C87E4ED505989807D1DBDA4769804EA3
+CT=43E763CD1B9EE4BC474B79C1E0DA2564
+
+I=95
+KEY=CF10BAD7914B12D9091AC14D5882A553
+IV=43E763CD1B9EE4BC474B79C1E0DA2564
+PT=042F084454D0EE01AB00D3921E1BCA06
+CT=C799956FF8A7A05B71123EBC4AA09C0C
+
+I=96
+KEY=08892FB869ECB2827808FFF11222395F
+IV=C799956FF8A7A05B71123EBC4AA09C0C
+PT=9A8E40400C51A438DCE498AD3455DE51
+CT=76679B0E26B1B6CA2A8D90944777C57F
+
+I=97
+KEY=7EEEB4B64F5D044852856F655555FC20
+IV=76679B0E26B1B6CA2A8D90944777C57F
+PT=227E122D3AF18A3CAA973B33B3356CE7
+CT=B2F52396F02D2DFFE36C5F9238AC1EBE
+
+I=98
+KEY=CC1B9720BF7029B7B1E930F76DF9E29E
+IV=B2F52396F02D2DFFE36C5F9238AC1EBE
+PT=0D9CDD97E2FE0E78CF16B1596DC20ABA
+CT=7C8EDD3A079835954238E0FE4872AAE1
+
+I=99
+KEY=B0954A1AB8E81C22F3D1D009258B487F
+IV=7C8EDD3A079835954238E0FE4872AAE1
+PT=925A7ECD233B3B3CCDE2221A03C5F720
+CT=D7C9FD3EF010C8577087591149D5640F
+
+I=100
+KEY=675CB72448F8D475835689186C5E2C70
+IV=D7C9FD3EF010C8577087591149D5640F
+PT=59FEFBE5179F0E7E48F3D97CDA314FF5
+CT=2608CCE6BA917551DEF84FA7BCA9B23C
+
+I=101
+KEY=41547BC2F269A1245DAEC6BFD0F79E4C
+IV=2608CCE6BA917551DEF84FA7BCA9B23C
+PT=7F24A1BA8762294194F76322A6B28A16
+CT=EFF1513B52D5D74D2202898AC99552C4
+
+I=102
+KEY=AEA52AF9A0BC76697FAC4F351962CC88
+IV=EFF1513B52D5D74D2202898AC99552C4
+PT=79B43F27F3E144C4EFBF383698A1EC90
+CT=B4B3B020D44D059666E86D22072916B5
+
+I=103
+KEY=1A169AD974F173FF194422171E4BDA3D
+IV=B4B3B020D44D059666E86D22072916B5
+PT=8BF20B60B4774354857BA2979CD396F9
+CT=6F1A3D43CC2171A808AE8D38396DE1D1
+
+I=104
+KEY=750CA79AB8D0025711EAAF2F27263BEC
+IV=6F1A3D43CC2171A808AE8D38396DE1D1
+PT=74955DDACFB8A5467D069F1EF341248B
+CT=47C23A68DA351C22EBF86FDBD8F723B4
+
+I=105
+KEY=32CE9DF262E51E75FA12C0F4FFD11858
+IV=47C23A68DA351C22EBF86FDBD8F723B4
+PT=25D7A186ED990020E10A23C5CFB1CEF9
+CT=D5F2E2C2CED730479D87E0AF0FEF8A73
+
+I=106
+KEY=E73C7F30AC322E326795205BF03E922B
+IV=D5F2E2C2CED730479D87E0AF0FEF8A73
+PT=13480F2EDCCB62B8F9A7DF98238571FC
+CT=F29A46A7F1B1D1D4F5FE30E569D7A801
+
+I=107
+KEY=15A639975D83FFE6926B10BE99E93A2A
+IV=F29A46A7F1B1D1D4F5FE30E569D7A801
+PT=75E138123B5A98596303ACF9DAEEA714
+CT=9F6E9A13913DF78AC67BD20303AF49B5
+
+I=108
+KEY=8AC8A384CCBE086C5410C2BD9A46739F
+IV=9F6E9A13913DF78AC67BD20303AF49B5
+PT=DBD0AE00FD06761626366EB251412A32
+CT=46AC9F42239B22A163CE0FDEAA103D44
+
+I=109
+KEY=CC643CC6EF252ACD37DECD6330564EDB
+IV=46AC9F42239B22A163CE0FDEAA103D44
+PT=B8768A8AF461C9547D1F982FE90E96B6
+CT=95D7C8F969B0EEB03FEC257043597315
+
+I=110
+KEY=59B3F43F8695C47D0832E813730F3DCE
+IV=95D7C8F969B0EEB03FEC257043597315
+PT=3D20CC8AD484048251C7A81C7E3CA59C
+CT=6B74AF42435BC640A826EC443207574E
+
+I=111
+KEY=32C75B7DC5CE023DA014045741086A80
+IV=6B74AF42435BC640A826EC443207574E
+PT=BF719F78B23BAFD4A50634BCD9361095
+CT=31E3919F36D79FBF61884227110C10FF
+
+I=112
+KEY=0324CAE2F3199D82C19C467050047A7F
+IV=31E3919F36D79FBF61884227110C10FF
+PT=E1D32740BB8B6D67AD3038887899F090
+CT=A1CD90683CE041D6CA20780176FDD5F4
+
+I=113
+KEY=A2E95A8ACFF9DC540BBC3E7126F9AF8B
+IV=A1CD90683CE041D6CA20780176FDD5F4
+PT=3069EA97F092ACDCF41649377B8FCBC8
+CT=7220F866A10DC711DC1D277B4C8F204D
+
+I=114
+KEY=D0C9A2EC6EF41B45D7A1190A6A768FC6
+IV=7220F866A10DC711DC1D277B4C8F204D
+PT=B0563A5E0EE1E2B96F3F7D04EE39EA7C
+CT=CF81CA348B98C532B172F032AE0A6FED
+
+I=115
+KEY=1F4868D8E56CDE7766D3E938C47CE02B
+IV=CF81CA348B98C532B172F032AE0A6FED
+PT=B1B78BD75C30DD4E1E198ACB98B498A6
+CT=99C990D64D27D47ED0C1E7F186AC6674
+
+I=116
+KEY=8681F80EA84B0A09B6120EC942D0865F
+IV=99C990D64D27D47ED0C1E7F186AC6674
+PT=D413E3CC66E9938E4E0CFC1975E38C8C
+CT=30C7DAD86FEF77C43A44A3EF8B116354
+
+I=117
+KEY=B64622D6C7A47DCD8C56AD26C9C1E50B
+IV=30C7DAD86FEF77C43A44A3EF8B116354
+PT=CD85D9334481AE85B8816233CA4AF7DB
+CT=9E717B45239DD908138837154B803654
+
+I=118
+KEY=28375993E439A4C59FDE9A338241D35F
+IV=9E717B45239DD908138837154B803654
+PT=925BA3760D655D5B788802DDE25732BB
+CT=4A6E32C01709EBCCC9BCA43FD5DFDFB3
+
+I=119
+KEY=62596B53F3304F0956623E0C579E0CEC
+IV=4A6E32C01709EBCCC9BCA43FD5DFDFB3
+PT=0AA6264BFCC7BD07FA8F94E1EF739633
+CT=7263392DC9DA868BC0317A6D4AD52553
+
+I=120
+KEY=103A527E3AEAC982965344611D4B29BF
+IV=7263392DC9DA868BC0317A6D4AD52553
+PT=FB385BD8ECE7C4DFE2351D851141888D
+CT=AA49B1DDA3AF4D05D861667E88AD61AB
+
+I=121
+KEY=BA73E3A3994584874E32221F95E64814
+IV=AA49B1DDA3AF4D05D861667E88AD61AB
+PT=510E13E20BB06EAD335F10F2C69831D3
+CT=3AC256A92F69AF35DB05DDCA61CF1EE4
+
+I=122
+KEY=80B1B50AB62C2BB29537FFD5F42956F0
+IV=3AC256A92F69AF35DB05DDCA61CF1EE4
+PT=0A07CAA0EC6CB726F1A38847253BECB6
+CT=037497736381429A5E5A139C44A6C64A
+
+I=123
+KEY=83C52279D5AD6928CB6DEC49B08F90BA
+IV=037497736381429A5E5A139C44A6C64A
+PT=864FEF67C8902757E2CFB28DA2EF3C8D
+CT=5393D7F9F37A5B9F1F82C1BE20435149
+
+I=124
+KEY=D056F58026D732B7D4EF2DF790CCC1F3
+IV=5393D7F9F37A5B9F1F82C1BE20435149
+PT=ED2D2A671677067B30540D4C9D86905F
+CT=2969AC5FB94EC76209C6DF58F6B8AA01
+
+I=125
+KEY=F93F59DF9F99F5D5DD29F2AF66746BF2
+IV=2969AC5FB94EC76209C6DF58F6B8AA01
+PT=67ED14454DAD764C1772BCB1E0527954
+CT=150F94E1940F9D2ACC735F79B0912A06
+
+I=126
+KEY=EC30CD3E0B9668FF115AADD6D6E541F4
+IV=150F94E1940F9D2ACC735F79B0912A06
+PT=517A4852F68370EDD879E32F52FD4D2B
+CT=6EFD8E4E4C096A2033B3DA8A1F0066AF
+
+I=127
+KEY=82CD4370479F02DF22E9775CC9E5275B
+IV=6EFD8E4E4C096A2033B3DA8A1F0066AF
+PT=DBF4CAD912437115658E5BA5E1724739
+CT=899D9126CD85D2D4053AD9EE7156041B
+
+I=128
+KEY=0B50D2568A1AD00B27D3AEB2B8B32340
+IV=899D9126CD85D2D4053AD9EE7156041B
+PT=69B302F96AFCF802AC639EBABC52ECFB
+CT=819E4B8319807088FF306E125E52DAD3
+
+I=129
+KEY=8ACE99D5939AA083D8E3C0A0E6E1F993
+IV=819E4B8319807088FF306E125E52DAD3
+PT=F5CA57371833F0AF98F0EC02DFE518ED
+CT=4DFA3739235D14660DF7D5FDE36F6567
+
+I=130
+KEY=C734AEECB0C7B4E5D514155D058E9CF4
+IV=4DFA3739235D14660DF7D5FDE36F6567
+PT=29BBD9264B9792BED8A8EFA43F943A7D
+CT=4EA36ECCBCCD9FAFD8FB588BD53826A7
+
+I=131
+KEY=8997C0200C0A2B4A0DEF4DD6D0B6BA53
+IV=4EA36ECCBCCD9FAFD8FB588BD53826A7
+PT=149120CFC3D7C671F287AA77A4A3EF97
+CT=0282357C78C8944A5520AF80506DE30D
+
+I=132
+KEY=8B15F55C74C2BF0058CFE25680DB595E
+IV=0282357C78C8944A5520AF80506DE30D
+PT=02C2E0CCB12F5216213D493325F38FC3
+CT=C827C36F654137A2BB127D1782285B10
+
+I=133
+KEY=43323633118388A2E3DD9F4102F3024E
+IV=C827C36F654137A2BB127D1782285B10
+PT=FA1693AD90401791FF9093A562EC66EB
+CT=3723A94BC91032BF8DB599ABEFB784D1
+
+I=134
+KEY=74119F78D893BA1D6E6806EAED44869F
+IV=3723A94BC91032BF8DB599ABEFB784D1
+PT=5410CBE33ABB58AB0B0E86F5817E6F2C
+CT=26A520B5B475632EE8806648BFC028AF
+
+I=135
+KEY=52B4BFCD6CE6D93386E860A25284AE30
+IV=26A520B5B475632EE8806648BFC028AF
+PT=B01A11D200C24F4333029DE3BFF49601
+CT=36D5E00E0A53D7CE1498215AFA686905
+
+I=136
+KEY=64615FC366B50EFD927041F8A8ECC735
+IV=36D5E00E0A53D7CE1498215AFA686905
+PT=252E4460E9A391D54CE9E516663E59AE
+CT=829F0B7B17ED5F2FB7A014A6CD9D8052
+
+I=137
+KEY=E6FE54B8715851D225D0555E65714767
+IV=829F0B7B17ED5F2FB7A014A6CD9D8052
+PT=BCC51A6493F6847BEA8219329F67308D
+CT=BAB1D358D08DA13BEC485051F2EBFE2E
+
+I=138
+KEY=5C4F87E0A1D5F0E9C998050F979AB949
+IV=BAB1D358D08DA13BEC485051F2EBFE2E
+PT=D89236011B3C2338E95322D4716AEE59
+CT=29BA99F8CF8B48134B1330E75BD7254E
+
+I=139
+KEY=75F51E186E5EB8FA828B35E8CC4D9C07
+IV=29BA99F8CF8B48134B1330E75BD7254E
+PT=21D0EB5857C93A0D4D75253E1020C00E
+CT=9D557274FE14AA69673441117A2D7DA2
+
+I=140
+KEY=E8A06C6C904A1293E5BF74F9B660E1A5
+IV=9D557274FE14AA69673441117A2D7DA2
+PT=3C3BB454584C4C7570089B6E631BA035
+CT=543EF50A024E77ACE685BD0BBB47232D
+
+I=141
+KEY=BC9E99669204653F033AC9F20D27C288
+IV=543EF50A024E77ACE685BD0BBB47232D
+PT=8ED890BC903AEAC7C3C685980EDB3370
+CT=884BD68868D89DE9DEDB2D95A8B992FB
+
+I=142
+KEY=34D54FEEFADCF8D6DDE1E467A59E5073
+IV=884BD68868D89DE9DEDB2D95A8B992FB
+PT=684DEBD6DEDE24BD0F4F8AFA47F08AEF
+CT=DB00984CAEB14CF5A1FDE8E8E9C03830
+
+I=143
+KEY=EFD5D7A2546DB4237C1C0C8F4C5E6843
+IV=DB00984CAEB14CF5A1FDE8E8E9C03830
+PT=C42B245443F2695F306455199C7C76FE
+CT=0CA808425E8EBDDD5519130F4900329F
+
+I=144
+KEY=E37DDFE00AE309FE29051F80055E5ADC
+IV=0CA808425E8EBDDD5519130F4900329F
+PT=1655F89334CCB6ED8E140088997BD2D1
+CT=0DAE2F85CD81874DCD7368277D0C386D
+
+I=145
+KEY=EED3F065C7628EB3E47677A7785262B1
+IV=0DAE2F85CD81874DCD7368277D0C386D
+PT=2B7A2DF6E0CAC83837AFDC8B2134E6A6
+CT=E3BF66A6784432E6CE61B769C3CFDB35
+
+I=146
+KEY=0D6C96C3BF26BC552A17C0CEBB9DB984
+IV=E3BF66A6784432E6CE61B769C3CFDB35
+PT=8FED19E77B9690EC8F70272364B4EB74
+CT=473925552401311F24EE4F40B5A3ECB5
+
+I=147
+KEY=4A55B3969B278D4A0EF98F8E0E3E5531
+IV=473925552401311F24EE4F40B5A3ECB5
+PT=032D9AF654037E2586B12CF031E4AB4C
+CT=E9E1E4ACF3F4E25CB8093F6B27665DFF
+
+I=148
+KEY=A3B4573A68D36F16B6F0B0E5295808CE
+IV=E9E1E4ACF3F4E25CB8093F6B27665DFF
+PT=E6EF26B3721F6C772D231584DD480441
+CT=2D9F85D63FED609876DF97F0E6B85564
+
+I=149
+KEY=8E2BD2EC573E0F8EC02F2715CFE05DAA
+IV=2D9F85D63FED609876DF97F0E6B85564
+PT=E641EBC4A734C71669D948F1BEEE675A
+CT=3A61F4BED09FD7A7AED71E9FD53D2EE3
+
+I=150
+KEY=B44A265287A1D8296EF8398A1ADD7349
+IV=3A61F4BED09FD7A7AED71E9FD53D2EE3
+PT=36DB43747CD9215857886A0DE2008509
+CT=6BE2AD95F4A642F3FD73D9543B53D479
+
+I=151
+KEY=DFA88BC773079ADA938BE0DE218EA730
+IV=6BE2AD95F4A642F3FD73D9543B53D479
+PT=58A73313B31B8C1EB3C144C9363EE94B
+CT=BF198D336DF857BFBA069634C25CF45B
+
+I=152
+KEY=60B106F41EFFCD65298D76EAE3D2536B
+IV=BF198D336DF857BFBA069634C25CF45B
+PT=E0974E1BBEFE21422ECED27858535F87
+CT=7945132F6F7EED6B61E1CF9C47E2AB2A
+
+I=153
+KEY=19F415DB7181200E486CB976A430F841
+IV=7945132F6F7EED6B61E1CF9C47E2AB2A
+PT=6F36B63A1A8B426282CA4E61B7E37B3A
+CT=AF441F330C8C199E9776D92A92B02216
+
+I=154
+KEY=B6B00AE87D0D3990DF1A605C3680DA57
+IV=AF441F330C8C199E9776D92A92B02216
+PT=99AD2B814D3A4C0E1C27D4251C55C74A
+CT=F34463A538E46E87B0F24EAA36B674A7
+
+I=155
+KEY=45F4694D45E957176FE82EF60036AEF0
+IV=F34463A538E46E87B0F24EAA36B674A7
+PT=6D05C19E42D0561C198A10FA55F4C870
+CT=5D54D3C72D55015D0149FA1591208824
+
+I=156
+KEY=18A0BA8A68BC564A6EA1D4E3911626D4
+IV=5D54D3C72D55015D0149FA1591208824
+PT=7AA7A04DE8CD21F59BA5369CA175CEC3
+CT=D2EBE35C33210B39CD4F443BB577DBD8
+
+I=157
+KEY=CA4B59D65B9D5D73A3EE90D82461FD0C
+IV=D2EBE35C33210B39CD4F443BB577DBD8
+PT=2DA2A48FE13FA4DD5271A02FB7F98AEC
+CT=2F4AD89C0D915DF978160E9E882AD28E
+
+I=158
+KEY=E501814A560C008ADBF89E46AC4B2F82
+IV=2F4AD89C0D915DF978160E9E882AD28E
+PT=82EB831B9FF9DA7D06553A456133766B
+CT=09A04C7CBED3D60ADB6CFDD012DEED17
+
+I=159
+KEY=ECA1CD36E8DFD68000946396BE95C295
+IV=09A04C7CBED3D60ADB6CFDD012DEED17
+PT=8D4FD1CE8CB9745E9E65182D94F8307A
+CT=193C6FAB40C87C7029983EDD52628400
+
+I=160
+KEY=F59DA29DA817AAF0290C5D4BECF74695
+IV=193C6FAB40C87C7029983EDD52628400
+PT=F06A061082E499E65A5DED0D22323F57
+CT=7166BD655D8128E7B09D37B38478B480
+
+I=161
+KEY=84FB1FF8F596821799916AF8688FF215
+IV=7166BD655D8128E7B09D37B38478B480
+PT=DCEC808551EA98534E1A9EDF457125DA
+CT=5DFAAFB695D34A7AF2D39CD2D01FD4BD
+
+I=162
+KEY=D901B04E6045C86D6B42F62AB89026A8
+IV=5DFAAFB695D34A7AF2D39CD2D01FD4BD
+PT=FAE59C96604D062F49C8C93FA7E4D5FC
+CT=85F63AFC88A1CED4E73B849C295692F2
+
+I=163
+KEY=5CF78AB2E8E406B98C7972B691C6B45A
+IV=85F63AFC88A1CED4E73B849C295692F2
+PT=7FE1EA6A7A525A7E0222D6269F7D6A40
+CT=DC60A8554BF9E783D0E92283EC0D00AF
+
+I=164
+KEY=809722E7A31DE13A5C9050357DCBB4F5
+IV=DC60A8554BF9E783D0E92283EC0D00AF
+PT=89C93828CE30D4CD7025D9F2CF864371
+CT=EF10720E8F10FBABC96BB5F4E5287D12
+
+I=165
+KEY=6F8750E92C0D1A9195FBE5C198E3C9E7
+IV=EF10720E8F10FBABC96BB5F4E5287D12
+PT=A8DEA35D4A712ACE8F38A2CA2CB6BCFB
+CT=EED271733DC7B81AD09C86C8F8D69255
+
+I=166
+KEY=8155219A11CAA28B4567630960355BB2
+IV=EED271733DC7B81AD09C86C8F8D69255
+PT=6720AD239EFECF5785B238D4DA39DD6A
+CT=DC47B1FAC154CB0C39ADF4C92F8C2902
+
+I=167
+KEY=5D129060D09E69877CCA97C04FB972B0
+IV=DC47B1FAC154CB0C39ADF4C92F8C2902
+PT=D41DEA3BC44CC552B5ACCFEEFAF225F5
+CT=AD4828834513730BF275C854D35BF09E
+
+I=168
+KEY=F05AB8E3958D1A8C8EBF5F949CE2822E
+IV=AD4828834513730BF275C854D35BF09E
+PT=5059DA9258A7DE12865E1E2173399BC9
+CT=82CA6B085A452CFDFFBDE5C7B738CDAB
+
+I=169
+KEY=7290D3EBCFC836717102BA532BDA4F85
+IV=82CA6B085A452CFDFFBDE5C7B738CDAB
+PT=9625B8A444C3E4D3554A8C6E33E1B810
+CT=4F44C38189E1011970690D0ED4BCB9C7
+
+I=170
+KEY=3DD4106A46293768016BB75DFF66F642
+IV=4F44C38189E1011970690D0ED4BCB9C7
+PT=373FBCA7529A9FA9AF77295FC55B0BEE
+CT=27BE0578B0F898C04133AA4D3C1A5A7C
+
+I=171
+KEY=1A6A1512F6D1AFA840581D10C37CAC3E
+IV=27BE0578B0F898C04133AA4D3C1A5A7C
+PT=37FC0A286DFFD5A76643D1D45C858F64
+CT=B9C70B34F78F3DA7796C32D0918474A5
+
+I=172
+KEY=A3AD1E26015E920F39342FC052F8D89B
+IV=B9C70B34F78F3DA7796C32D0918474A5
+PT=E1EAC69AA2A8F05B8747E2624D00F4BB
+CT=846985C471F10676E63BCD09C32506F3
+
+I=173
+KEY=27C49BE270AF9479DF0FE2C991DDDE68
+IV=846985C471F10676E63BCD09C32506F3
+PT=6EB0046D9C6854C63447296F4F6D3D21
+CT=F754559746C52113C29AF782E96B6105
+
+I=174
+KEY=D090CE75366AB56A1D95154B78B6BF6D
+IV=F754559746C52113C29AF782E96B6105
+PT=F65269422328F40D8A53F4F14DB88583
+CT=AE6B4EABF8DC479A1E3F8C3F30A4A797
+
+I=175
+KEY=7EFB80DECEB6F2F003AA9974481218FA
+IV=AE6B4EABF8DC479A1E3F8C3F30A4A797
+PT=765B38DC041DEC130A3A294D9F89A16D
+CT=87645926B9D85AC4AB023D2104CC3FA2
+
+I=176
+KEY=F99FD9F8776EA834A8A8A4554CDE2758
+IV=87645926B9D85AC4AB023D2104CC3FA2
+PT=8070950120E0FBE07C70B171364AD173
+CT=0125D51139CE00DB848B8A9AD3FEB90B
+
+I=177
+KEY=F8BA0CE94EA0A8EF2C232ECF9F209E53
+IV=0125D51139CE00DB848B8A9AD3FEB90B
+PT=1EF45DD2CD61667469569CFAD445341C
+CT=E1651756A2C0D132C671D74748244E49
+
+I=178
+KEY=19DF1BBFEC6079DDEA52F988D704D01A
+IV=E1651756A2C0D132C671D74748244E49
+PT=26BEF7E8A3D0AC50DC64B8215CCBC44F
+CT=94049FBD554A6CFFE7927D6EC07D6242
+
+I=179
+KEY=8DDB8402B92A15220DC084E61779B258
+IV=94049FBD554A6CFFE7927D6EC07D6242
+PT=803F34FA967583623D0CA4D76FC56787
+CT=974BBE04952D8F0DD70F4353FEB092EB
+
+I=180
+KEY=1A903A062C079A2FDACFC7B5E9C920B3
+IV=974BBE04952D8F0DD70F4353FEB092EB
+PT=023E5D307CE85244144D59A53DB504E7
+CT=2615B9F94F9024EA616648FF15E3B65F
+
+I=181
+KEY=3C8583FF6397BEC5BBA98F4AFC2A96EC
+IV=2615B9F94F9024EA616648FF15E3B65F
+PT=1A84130B09CE3E7AB1F400B9FE295BEB
+CT=39A2A3B6EFB5EBE805CBAD5817EAEEDA
+
+I=182
+KEY=052720498C22552DBE622212EBC07836
+IV=39A2A3B6EFB5EBE805CBAD5817EAEEDA
+PT=B83609055302D99DE46B7153AE3DFCE2
+CT=93F72B839E2AD731B5E894B56ADADCF4
+
+I=183
+KEY=96D00BCA1208821C0B8AB6A7811AA4C2
+IV=93F72B839E2AD731B5E894B56ADADCF4
+PT=85E69EBDE13C05526EA8AE1D24B487F3
+CT=D0ADA333801DFDBFC2420B73CD2B92A5
+
+I=184
+KEY=467DA8F992157FA3C9C8BDD44C313667
+IV=D0ADA333801DFDBFC2420B73CD2B92A5
+PT=F24782E953B9B1BBF3B925659C99415B
+CT=F59A3D0B65E8F16DC73CCD6C27E8C705
+
+I=185
+KEY=B3E795F2F7FD8ECE0EF470B86BD9F162
+IV=F59A3D0B65E8F16DC73CCD6C27E8C705
+PT=73BE517552E054D78583BEA03B84A245
+CT=7904DBE3A103D936EB4B960C180B0651
+
+I=186
+KEY=CAE34E1156FE57F8E5BFE6B473D2F733
+IV=7904DBE3A103D936EB4B960C180B0651
+PT=91998E9582D8357DD5D8B95A9D85912F
+CT=C2DE0D0145A45DEABD6DE1FD62161EB1
+
+I=187
+KEY=083D4310135A0A1258D2074911C4E982
+IV=C2DE0D0145A45DEABD6DE1FD62161EB1
+PT=2A5D4EC49712B9CF1E2D9C6C5EFACC2A
+CT=974264BDC574C738243DDC008EC4C15A
+
+I=188
+KEY=9F7F27ADD62ECD2A7CEFDB499F0028D8
+IV=974264BDC574C738243DDC008EC4C15A
+PT=F74520C3745B9B9F9D19642AA57451FB
+CT=F4EE51C2ECC32F4806F9C8588880525B
+
+I=189
+KEY=6B91766F3AEDE2627A16131117807A83
+IV=F4EE51C2ECC32F4806F9C8588880525B
+PT=4A7D6FC6712F451F58DF0AC2D517189E
+CT=F4978F5F53AA4C336BEE0C62F432B44F
+
+I=190
+KEY=9F06F9306947AE5111F81F73E3B2CECC
+IV=F4978F5F53AA4C336BEE0C62F432B44F
+PT=00DAD17491C973991FEC296972B691BC
+CT=09DAA53C2E394BF83113BE48E5D0CCA2
+
+I=191
+KEY=96DC5C0C477EE5A920EBA13B0662026E
+IV=09DAA53C2E394BF83113BE48E5D0CCA2
+PT=C00943704C1336F01A1D23FD98BE7E8B
+CT=D0DE529664BF241DBED3168DA5BC1B28
+
+I=192
+KEY=46020E9A23C1C1B49E38B7B6A3DE1946
+IV=D0DE529664BF241DBED3168DA5BC1B28
+PT=A07FAD9770CC32C5680F33A2D67044A4
+CT=F6A44922B3744BE96C46742A79A49CBB
+
+I=193
+KEY=B0A647B890B58A5DF27EC39CDA7A85FD
+IV=F6A44922B3744BE96C46742A79A49CBB
+PT=D5450C670BE84169AD1E62C5ECB8365F
+CT=47D229908D4C1EA34E429C34B7D635F5
+
+I=194
+KEY=F7746E281DF994FEBC3C5FA86DACB008
+IV=47D229908D4C1EA34E429C34B7D635F5
+PT=9E90D30BE92104667A16522237D645A6
+CT=6463AC2096842A0958ACF45370C0626F
+
+I=195
+KEY=9317C2088B7DBEF7E490ABFB1D6CD267
+IV=6463AC2096842A0958ACF45370C0626F
+PT=74382A7BF713DE8E8D17AE389E03C3AC
+CT=ECDCEF7613C362D288AC23D38722DC4C
+
+I=196
+KEY=7FCB2D7E98BEDC256C3C88289A4E0E2B
+IV=ECDCEF7613C362D288AC23D38722DC4C
+PT=DB2EC6F41A72F426D9F5DBC65CEC1C5C
+CT=DFE2DA423ACE2DFB053265E9E9B214E2
+
+I=197
+KEY=A029F73CA270F1DE690EEDC173FC1AC9
+IV=DFE2DA423ACE2DFB053265E9E9B214E2
+PT=35998CB9958DC9DE0550FC3EA722D571
+CT=5EBCA79BF99165D9FFE355D9B24ECB5D
+
+I=198
+KEY=FE9550A75BE1940796EDB818C1B2D194
+IV=5EBCA79BF99165D9FFE355D9B24ECB5D
+PT=9BDA7BC96736FE2140911C98E8E02E1C
+CT=782D3EFD5F599E8D3C85D06128677EC2
+
+I=199
+KEY=86B86E5A04B80A8AAA686879E9D5AF56
+IV=782D3EFD5F599E8D3C85D06128677EC2
+PT=8014C1F398E4DCC7F4E5E09E5FAFB080
+CT=E01AE2D961F31BBAE3DA7429627572AB
+
+I=200
+KEY=66A28C83654B113049B21C508BA0DDFD
+IV=E01AE2D961F31BBAE3DA7429627572AB
+PT=97D66D66D1731EEFF14519620616A10B
+CT=BC41ED9D568D6ED36212C92DEEB40A0E
+
+I=201
+KEY=DAE3611E33C67FE32BA0D57D6514D7F3
+IV=BC41ED9D568D6ED36212C92DEEB40A0E
+PT=F7646B60C237ED24F467141980EB4F00
+CT=CB8DF2D164E5B4AB3193D02E71959F63
+
+I=202
+KEY=116E93CF5723CB481A33055314814890
+IV=CB8DF2D164E5B4AB3193D02E71959F63
+PT=4A3A241B26AC7A1C88AA2FB750DF6E5A
+CT=E396FB47A686ABAA350B84C250E5EAE9
+
+I=203
+KEY=F2F86888F1A560E22F3881914464A279
+IV=E396FB47A686ABAA350B84C250E5EAE9
+PT=A71348309D176A072167C4B1B8A295C0
+CT=29AF21F96564EB591E9A60B1BE88DEC7
+
+I=204
+KEY=DB57497194C18BBB31A2E120FAEC7CBE
+IV=29AF21F96564EB591E9A60B1BE88DEC7
+PT=BC528364EF78D6432177FE0CF1CDECD1
+CT=34CD9D96D4455AE0C15B6B970F1EC905
+
+I=205
+KEY=EF9AD4E74084D15BF0F98AB7F5F2B5BB
+IV=34CD9D96D4455AE0C15B6B970F1EC905
+PT=18972F6992299533EE23AA5824C25892
+CT=2E05E3E2079A055310FD9318590A6F41
+
+I=206
+KEY=C19F3705471ED408E00419AFACF8DAFA
+IV=2E05E3E2079A055310FD9318590A6F41
+PT=5441FF0D0A4062D5D0DF29BF2FDA85B4
+CT=47D4EAECE59C733EEFCB7B9D5BE95A98
+
+I=207
+KEY=864BDDE9A282A7360FCF6232F7118062
+IV=47D4EAECE59C733EEFCB7B9D5BE95A98
+PT=ED3E19B5AB5389AA3A58D97F6604F4C0
+CT=00525B7D5BFC0651AEF6770F6281E6DC
+
+I=208
+KEY=86198694F97EA167A139153D959066BE
+IV=00525B7D5BFC0651AEF6770F6281E6DC
+PT=8BD4869C88A9BD3DCFE89B98B93F6EB3
+CT=AFB2215E6DC04E9467F44227FD4BDB98
+
+I=209
+KEY=29ABA7CA94BEEFF3C6CD571A68DBBD26
+IV=AFB2215E6DC04E9467F44227FD4BDB98
+PT=6E7269FC27BDCC42D64CEF41A612F771
+CT=7B769B90279C95E31D8B3D792FA27FA8
+
+I=210
+KEY=52DD3C5AB3227A10DB466A634779C28E
+IV=7B769B90279C95E31D8B3D792FA27FA8
+PT=E00316E79DC10D179002B1BACC146027
+CT=E3870CDE5CF99B7C4C489AF81153002F
+
+I=211
+KEY=B15A3084EFDBE16C970EF09B562AC2A1
+IV=E3870CDE5CF99B7C4C489AF81153002F
+PT=FB2FC78A79C33225E6EAAA06B76FA793
+CT=4DFC91F8971635348EF35141E8C291F7
+
+I=212
+KEY=FCA6A17C78CDD45819FDA1DABEE85356
+IV=4DFC91F8971635348EF35141E8C291F7
+PT=69C8EE14F21832BB077F1A5414851FFE
+CT=DA51BE36F96AA8C80DED9DB2A701D72F
+
+I=213
+KEY=26F71F4A81A77C9014103C6819E98479
+IV=DA51BE36F96AA8C80DED9DB2A701D72F
+PT=766EC1664D2194E0F89B69861A4A8501
+CT=2ACA6359CD935CA2294F9FB5A50F4993
+
+I=214
+KEY=0C3D7C134C3420323D5FA3DDBCE6CDEA
+IV=2ACA6359CD935CA2294F9FB5A50F4993
+PT=1D95E551169BD538836CC349BC6B1772
+CT=315518F0AC6C1DC9939CB802336DA968
+
+I=215
+KEY=3D6864E3E0583DFBAEC31BDF8F8B6482
+IV=315518F0AC6C1DC9939CB802336DA968
+PT=4F6BFE727AECDAB5A32DF8CFFC43D6A9
+CT=34C3ECD89376B4D771CA0669C2C3E26C
+
+I=216
+KEY=09AB883B732E892CDF091DB64D4886EE
+IV=34C3ECD89376B4D771CA0669C2C3E26C
+PT=AA8B1DA2E015D482EE08FA2B4A2B77B6
+CT=A3F4DD9DDC375C90579C274527612C6E
+
+I=217
+KEY=AA5F55A6AF19D5BC88953AF36A29AA80
+IV=A3F4DD9DDC375C90579C274527612C6E
+PT=2EE6982D9E0AA5FCB61F3E66E52A0D6D
+CT=C45C9E4DE76782E2599BD73B132BFE90
+
+I=218
+KEY=6E03CBEB487E575ED10EEDC879025410
+IV=C45C9E4DE76782E2599BD73B132BFE90
+PT=6E58E5B1EDF1BFABAD643D8223F0FA81
+CT=32221DA62DA2B441B5E66A197A5C69F1
+
+I=219
+KEY=5C21D64D65DCE31F64E887D1035E3DE1
+IV=32221DA62DA2B441B5E66A197A5C69F1
+PT=D5A81DF4B6BE17A531478961D78CAB46
+CT=E1FEB5C31B1671F15DC1F7713E5DD7FE
+
+I=220
+KEY=BDDF638E7ECA92EE392970A03D03EA1F
+IV=E1FEB5C31B1671F15DC1F7713E5DD7FE
+PT=D360948141A1D3ECFF5E8D6BDC022685
+CT=FF07F02135FB458D63EE68C4B1463A99
+
+I=221
+KEY=42D893AF4B31D7635AC718648C45D086
+IV=FF07F02135FB458D63EE68C4B1463A99
+PT=E3C1E44333C9307E90EE2FBA6A7708A5
+CT=1AE4E8466B84B59EECF5E6BEB6140DF2
+
+I=222
+KEY=583C7BE920B562FDB632FEDA3A51DD74
+IV=1AE4E8466B84B59EECF5E6BEB6140DF2
+PT=653AA343CE35F72E2ADB5FFCD2DFCBA8
+CT=3CB44BC123DDCD55B812D265CC5E974E
+
+I=223
+KEY=648830280368AFA80E202CBFF60F4A3A
+IV=3CB44BC123DDCD55B812D265CC5E974E
+PT=E96A66BFE5F0E8083A01664A47226672
+CT=BB6C54E118FA895F2AC4CC036166E390
+
+I=224
+KEY=DFE464C91B9226F724E4E0BC9769A9AA
+IV=BB6C54E118FA895F2AC4CC036166E390
+PT=A5B240D8E5731E1BFA7C4FDFB4EED81F
+CT=DA20870677A6214F26FDACBA81B41882
+
+I=225
+KEY=05C4E3CF6C3407B802194C0616DDB128
+IV=DA20870677A6214F26FDACBA81B41882
+PT=92FF6EAB4A6D1AD3941E6A91D8C9105B
+CT=F079AA86FC9FD361DBA0C21CCD4B0F6C
+
+I=226
+KEY=F5BD494990ABD4D9D9B98E1ADB96BE44
+IV=F079AA86FC9FD361DBA0C21CCD4B0F6C
+PT=DFF005175EF746B83CB00AC13337E248
+CT=B6021E0AA1A921C7BCC3FDAB1C3EA44A
+
+I=227
+KEY=43BF57433102F51E657A73B1C7A81A0E
+IV=B6021E0AA1A921C7BCC3FDAB1C3EA44A
+PT=DDDC1AA804AD13813C6AEA540557C097
+CT=41F0E4AB03801DCE585727B7C41F48BD
+
+I=228
+KEY=024FB3E83282E8D03D2D540603B752B3
+IV=41F0E4AB03801DCE585727B7C41F48BD
+PT=4C6421E5A487C9C452958CAB38AC7098
+CT=6EFDD855BAF2D13437C01097ABB633DE
+
+I=229
+KEY=6CB26BBD887039E40AED4491A801616D
+IV=6EFDD855BAF2D13437C01097ABB633DE
+PT=2A11519D5463F2B96A5E0FCE6E4710D7
+CT=5E8243E5C54A109CCC0BF622A299EF68
+
+I=230
+KEY=323028584D3A2978C6E6B2B30A988E05
+IV=5E8243E5C54A109CCC0BF622A299EF68
+PT=252145DACAD23E8B85AB7637B22C42F2
+CT=2C9A476418F01C589ADC0CA10BF4A183
+
+I=231
+KEY=1EAA6F3C55CA35205C3ABE12016C2F86
+IV=2C9A476418F01C589ADC0CA10BF4A183
+PT=A22C36DC7D00645FEFE8683EA4231787
+CT=DA3A4AC19EF6A0F950E26B00834AFE41
+
+I=232
+KEY=C49025FDCB3C95D90CD8D5128226D1C7
+IV=DA3A4AC19EF6A0F950E26B00834AFE41
+PT=B0DC92D3B4878156B768923286F0433F
+CT=10BBC2A8C8F650FD8EED7CC9F5EAD05D
+
+I=233
+KEY=D42BE75503CAC5248235A9DB77CC019A
+IV=10BBC2A8C8F650FD8EED7CC9F5EAD05D
+PT=83A9338157091D4AECAF60E887AE09F7
+CT=757993A70F78B25F02FA0355E04DE27B
+
+I=234
+KEY=A15274F20CB2777B80CFAA8E9781E3E1
+IV=757993A70F78B25F02FA0355E04DE27B
+PT=9D818ACA2C753E7314F51699D3062031
+CT=E2E74C76C09516135876D54AFC940D80
+
+I=235
+KEY=43B53884CC276168D8B97FC46B15EE61
+IV=E2E74C76C09516135876D54AFC940D80
+PT=BDD36F881F8D1FC56780E291D1359EE1
+CT=22F76A2DB98544549DEA21FFCDC2B943
+
+I=236
+KEY=614252A975A2253C45535E3BA6D75722
+IV=22F76A2DB98544549DEA21FFCDC2B943
+PT=4C9C16802A4BB1202D4FAC9E76C57A43
+CT=166B0FF778D72B6102D6ADF990A70A23
+
+I=237
+KEY=77295D5E0D750E5D4785F3C236705D01
+IV=166B0FF778D72B6102D6ADF990A70A23
+PT=0045ECDDAA51EE6FDB226E2D9471F46C
+CT=D7724DC8A1413BC1B9D6F305794426F0
+
+I=238
+KEY=A05B1096AC34359CFE5300C74F347BF1
+IV=D7724DC8A1413BC1B9D6F305794426F0
+PT=25C55C60290DF3D0DC3274CD2AE0ED21
+CT=41F0196DFE0B1F664A107D12A6FF3D79
+
+I=239
+KEY=E1AB09FB523F2AFAB4437DD5E9CB4688
+IV=41F0196DFE0B1F664A107D12A6FF3D79
+PT=9A44454F7A335C89BEFF1D94D3FDB320
+CT=3F37D7ADFB9933FFBAC1F7D07F31046E
+
+I=240
+KEY=DE9CDE56A9A619050E828A0596FA42E6
+IV=3F37D7ADFB9933FFBAC1F7D07F31046E
+PT=03D7F09054233696BEF84AB8D5B77091
+CT=02D226A748153C27A723F02461FFF913
+
+I=241
+KEY=DC4EF8F1E1B32522A9A17A21F705BBF5
+IV=02D226A748153C27A723F02461FFF913
+PT=D5C82A6F048A2AA0E5CF4F1EDADD68B3
+CT=4BD7486C212E7F78228478BBF0A7AD3D
+
+I=242
+KEY=9799B09DC09D5A5A8B25029A07A216C8
+IV=4BD7486C212E7F78228478BBF0A7AD3D
+PT=936431AD9F800606240C33EAF661D3DA
+CT=3EFE00CA0A96AF4425E683512DAC0164
+
+I=243
+KEY=A967B057CA0BF51EAEC381CB2A0E17AC
+IV=3EFE00CA0A96AF4425E683512DAC0164
+PT=280DC27864BED0D548B5B4F9A7FA38DE
+CT=7023640C8D6B02F6C4C7E007C169C592
+
+I=244
+KEY=D944D45B4760F7E86A0461CCEB67D23E
+IV=7023640C8D6B02F6C4C7E007C169C592
+PT=CD0F58962915E5A514E5D6DA8BB868E8
+CT=D08419A75363E9622FAA09DB589915F1
+
+I=245
+KEY=09C0CDFC14031E8A45AE6817B3FEC7CF
+IV=D08419A75363E9622FAA09DB589915F1
+PT=09A6099FDDDBBC15EE79224B01C49DF0
+CT=6CDD2B0279D9DB3C71329C1BB2C24C2F
+
+I=246
+KEY=651DE6FE6DDAC5B6349CF40C013C8BE0
+IV=6CDD2B0279D9DB3C71329C1BB2C24C2F
+PT=B24B11FD8A6FC6B2703FFBEBC85B6C44
+CT=CCB0F6F32BDE2339A1842A7EDC8C99C7
+
+I=247
+KEY=A9AD100D4604E68F9518DE72DDB01227
+IV=CCB0F6F32BDE2339A1842A7EDC8C99C7
+PT=2E471506C55D1762CDB9EAEF29E23C01
+CT=DAD62227A5F328CC33F054EEB346E3D3
+
+I=248
+KEY=737B322AE3F7CE43A6E88A9C6EF6F1F4
+IV=DAD62227A5F328CC33F054EEB346E3D3
+PT=5598344020E32F9B2C509D06F4E7804A
+CT=18DE226F7CAA4EF2712A223C4709C9E2
+
+I=249
+KEY=6BA510459F5D80B1D7C2A8A029FF3816
+IV=18DE226F7CAA4EF2712A223C4709C9E2
+PT=549A87BE74B62BAC3F0FDC2A878F5669
+CT=DB082C8D70948B6BF08D4848E4DB0231
+
+I=250
+KEY=B0AD3CC8EFC90BDA274FE0E8CD243A27
+IV=DB082C8D70948B6BF08D4848E4DB0231
+PT=08946428BF90FBF0951A35D6FB72A48A
+CT=29CBD3E3F2074514E63A7B2A651AB031
+
+I=251
+KEY=9966EF2B1DCE4ECEC1759BC2A83E8A16
+IV=29CBD3E3F2074514E63A7B2A651AB031
+PT=7EBEC38F7787EE1BDD6A648334FA3076
+CT=0037935821278E879BCBB2FBE4ECC23E
+
+I=252
+KEY=99517C733CE9C0495ABE29394CD24828
+IV=0037935821278E879BCBB2FBE4ECC23E
+PT=01D77828928164A830C249D96AC6F8B4
+CT=47501831F9DF42C234E9FE9169075888
+
+I=253
+KEY=DE016442C536828B6E57D7A825D510A0
+IV=47501831F9DF42C234E9FE9169075888
+PT=608349FF8FFC31B072CFA7DF649E15B8
+CT=BC10B1D412BC05404B2E38A1D75DA421
+
+I=254
+KEY=6211D596D78A87CB2579EF09F288B481
+IV=BC10B1D412BC05404B2E38A1D75DA421
+PT=B16325BD78FC0451216FF476D4CAE293
+CT=6ABD8010E9CBAE61E05A9E30C622B501
+
+I=255
+KEY=08AC55863E4129AAC523713934AA0180
+IV=6ABD8010E9CBAE61E05A9E30C622B501
+PT=E613C244F74C61B078C9E59E06E7AD85
+CT=E896B8BD539C30D9A58E5EF6629B279C
+
+I=256
+KEY=E03AED3B6DDD197360AD2FCF5631261C
+IV=E896B8BD539C30D9A58E5EF6629B279C
+PT=6CFF7A909AAB2C0DC61FB8F11B45E661
+CT=30D15AAA05F56FA2D21E9974FB3FF5DA
+
+I=257
+KEY=D0EBB791682876D1B2B3B6BBAD0ED3C6
+IV=30D15AAA05F56FA2D21E9974FB3FF5DA
+PT=6BFAC8E8FB9C3D5AF813B4DF90AD863B
+CT=43B99F3DA3C1BCCE9038118E2968EFA1
+
+I=258
+KEY=935228ACCBE9CA1F228BA73584663C67
+IV=43B99F3DA3C1BCCE9038118E2968EFA1
+PT=064D09E9F5104602E191DC39F18E6A1A
+CT=EBC5796519BE4E05262A10D56FA0F72D
+
+I=259
+KEY=789751C9D257841A04A1B7E0EBC6CB4A
+IV=EBC5796519BE4E05262A10D56FA0F72D
+PT=C2B528D69ED3028A359D4472D98807A7
+CT=5F2B51DD025E775A63DFE5B9FBF54986
+
+I=260
+KEY=27BC0014D009F340677E5259103382CC
+IV=5F2B51DD025E775A63DFE5B9FBF54986
+PT=D5CF62940967AF7225F79E87136751F5
+CT=F56D88E433CEA445C6E4D6298DFB6C27
+
+I=261
+KEY=D2D188F0E3C75705A19A84709DC8EEEB
+IV=F56D88E433CEA445C6E4D6298DFB6C27
+PT=3BE3171202E762846D2CA00FB2CB141A
+CT=4C168A0129F2D48E249777A366D1AEF1
+
+I=262
+KEY=9EC702F1CA35838B850DF3D3FB19401A
+IV=4C168A0129F2D48E249777A366D1AEF1
+PT=5B82A34141C236FAED7E1A78D3C426C4
+CT=E11FEBEF79E425480442D45A8C105B44
+
+I=263
+KEY=7FD8E91EB3D1A6C3814F278977091B5E
+IV=E11FEBEF79E425480442D45A8C105B44
+PT=86CFADD3F1B368B3A6E57148CA343D38
+CT=5F5F3548BDBB2A5337FBF07DF76526DD
+
+I=264
+KEY=2087DC560E6A8C90B6B4D7F4806C3D83
+IV=5F5F3548BDBB2A5337FBF07DF76526DD
+PT=A4474ACA97100C7A357A66119D678798
+CT=013ADA262021F88617773CF478067EC8
+
+I=265
+KEY=21BD06702E4B7416A1C3EB00F86A434B
+IV=013ADA262021F88617773CF478067EC8
+PT=6D66801C39DB803B5DA5A80E30DB0D89
+CT=F46BE70F65FC5641318292AE0C79E5C5
+
+I=266
+KEY=D5D6E17F4BB72257904179AEF413A68E
+IV=F46BE70F65FC5641318292AE0C79E5C5
+PT=C9499B32D8F47313EB351139DB81AB25
+CT=8573A25F86C7784BF7A0153DF812805C
+
+I=267
+KEY=50A54320CD705A1C67E16C930C0126D2
+IV=8573A25F86C7784BF7A0153DF812805C
+PT=4B09D37A4A57B320C34B1D70F74EB36A
+CT=036913128A2B71CE3D05D52D61E48E86
+
+I=268
+KEY=53CC5032475B2BD25AE4B9BE6DE5A854
+IV=036913128A2B71CE3D05D52D61E48E86
+PT=EA3A92794B204C0345765CEE2A04AF27
+CT=5A53E929182859CC28D4EB1CB9579B71
+
+I=269
+KEY=099FB91B5F73721E723052A2D4B23325
+IV=5A53E929182859CC28D4EB1CB9579B71
+PT=2714E38858426C5631BB2BB4FA289985
+CT=DF4BD734DEC60475D47FE40502439AAE
+
+I=270
+KEY=D6D46E2F81B5766BA64FB6A7D6F1A98B
+IV=DF4BD734DEC60475D47FE40502439AAE
+PT=69AC3FD2273926E2DAD3F5BED9F21491
+CT=EBCCD0B121C4009EA7F038F30F5B6B05
+
+I=271
+KEY=3D18BE9EA07176F501BF8E54D9AAC28E
+IV=EBCCD0B121C4009EA7F038F30F5B6B05
+PT=07520CD471E27BAC35387DB47E706784
+CT=299FE603BBA51BD1582CBD42BC9568EA
+
+I=272
+KEY=1487589D1BD46D2459933316653FAA64
+IV=299FE603BBA51BD1582CBD42BC9568EA
+PT=39598B70B8EB190049823472E3596E42
+CT=68DD98FE52B454F85D6F6A6C742223FA
+
+I=273
+KEY=7C5AC063496039DC04FC597A111D899E
+IV=68DD98FE52B454F85D6F6A6C742223FA
+PT=C7E13ABBBA75F527AB1320DD930B24F1
+CT=906B569E44263A4E6F41A52802D3FC59
+
+I=274
+KEY=EC3196FD0D4603926BBDFC5213CE75C7
+IV=906B569E44263A4E6F41A52802D3FC59
+PT=9F5D8E50F06895D5D7E6D1DAA247D45F
+CT=E5ECBDCC55A9D952BE0F93DFA0FE2C31
+
+I=275
+KEY=09DD2B3158EFDAC0D5B26F8DB33059F6
+IV=E5ECBDCC55A9D952BE0F93DFA0FE2C31
+PT=EC3F35C1E6371F106443BD1446D58A0A
+CT=4837A3D703E80BFE50D742E378956F3A
+
+I=276
+KEY=41EA88E65B07D13E85652D6ECBA536CC
+IV=4837A3D703E80BFE50D742E378956F3A
+PT=7998C3B7B5C94540DFC5BF777D700D48
+CT=DF1564E5E47503A779020D27394571E9
+
+I=277
+KEY=9EFFEC03BF72D299FC672049F2E04725
+IV=DF1564E5E47503A779020D27394571E9
+PT=63BEA75A2440C5D123F335F72137B0B6
+CT=5147239C3F6E4A158989BE96C0275D41
+
+I=278
+KEY=CFB8CF9F801C988C75EE9EDF32C71A64
+IV=5147239C3F6E4A158989BE96C0275D41
+PT=09C656A0DFCF893DDBE5E2B3D88E5F1F
+CT=7E4DEE30DED62EE15CD957530B62559D
+
+I=279
+KEY=B1F521AF5ECAB66D2937C98C39A54FF9
+IV=7E4DEE30DED62EE15CD957530B62559D
+PT=71DC22F489DD422CDE09F01DAA427567
+CT=6F62D6359F07F6BDBB4C02BBE50B273C
+
+I=280
+KEY=DE97F79AC1CD40D0927BCB37DCAE68C5
+IV=6F62D6359F07F6BDBB4C02BBE50B273C
+PT=C2A9BC94CAE48DBEB37B4B506AD4336A
+CT=902D9E9F82DE4E66E42B4FEA79AF4077
+
+I=281
+KEY=4EBA690543130EB6765084DDA50128B2
+IV=902D9E9F82DE4E66E42B4FEA79AF4077
+PT=69EE7E15EEC2EA953A32E1714961BA9E
+CT=72CB5DE8AF6CDC60A00A15CEAF249DBD
+
+I=282
+KEY=3C7134EDEC7FD2D6D65A91130A25B50F
+IV=72CB5DE8AF6CDC60A00A15CEAF249DBD
+PT=4C0A3B88FDFAEFEC38858A927C38AE6A
+CT=68C2BFA5DE837B927BD75C6DE6008595
+
+I=283
+KEY=54B38B4832FCA944AD8DCD7EEC25309A
+IV=68C2BFA5DE837B927BD75C6DE6008595
+PT=CE75CCA2D7B0199EB1DA7E33A0E50AB7
+CT=4FFCCBB31FB1FCC0FCB38F0B557BE67A
+
+I=284
+KEY=1B4F40FB2D4D5584513E4275B95ED6E0
+IV=4FFCCBB31FB1FCC0FCB38F0B557BE67A
+PT=E0ECA2ABC1F389B149E746CFB039539E
+CT=249FB11DF8C0ED1F346F6D69B8FD0470
+
+I=285
+KEY=3FD0F1E6D58DB89B65512F1C01A3D290
+IV=249FB11DF8C0ED1F346F6D69B8FD0470
+PT=BFA871CA5EC16C0B353679782BE04394
+CT=8127E6D8EEC1111518065EDC34CD4B4C
+
+I=286
+KEY=BEF7173E3B4CA98E7D5771C0356E99DC
+IV=8127E6D8EEC1111518065EDC34CD4B4C
+PT=1EF816C565B2F56E772C96AD5C92842D
+CT=C8DC75AE1E2DBD005D94E69D6776C498
+
+I=287
+KEY=762B62902561148E20C3975D52185D44
+IV=C8DC75AE1E2DBD005D94E69D6776C498
+PT=9F2B9873F88EBF21A3BB3DCD853C812E
+CT=861D4FF061E85D44173252244F143692
+
+I=288
+KEY=F0362D60448949CA37F1C5791D0C6BD6
+IV=861D4FF061E85D44173252244F143692
+PT=6CDEA8A806516A1A0E1CBB5AA123862A
+CT=16DA4EE5C5044F66EFCC313754FBCD9E
+
+I=289
+KEY=E6EC6385818D06ACD83DF44E49F7A648
+IV=16DA4EE5C5044F66EFCC313754FBCD9E
+PT=5B637BB469073B5E54EC006F47C4D546
+CT=C2C50037BBBEC252B7D5CF10C38BD665
+
+I=290
+KEY=242963B23A33C4FE6FE83B5E8A7C702D
+IV=C2C50037BBBEC252B7D5CF10C38BD665
+PT=38DADBF2BA4A80A6A190D9E2AA245167
+CT=721222A5A67E96246DA1B9C59B67DDD5
+
+I=291
+KEY=563B41179C4D52DA0249829B111BADF8
+IV=721222A5A67E96246DA1B9C59B67DDD5
+PT=CB52378F6E4E7FCB1891D3BB4D086B9F
+CT=D28B8F54E8BDA9A20965984D5DA27FC9
+
+I=292
+KEY=84B0CE4374F0FB780B2C1AD64CB9D231
+IV=D28B8F54E8BDA9A20965984D5DA27FC9
+PT=E66015A1B848EF190F981DEFEDB98C93
+CT=012C5D9B847C9583B0BE03999D24E277
+
+I=293
+KEY=859C93D8F08C6EFBBB92194FD19D3046
+IV=012C5D9B847C9583B0BE03999D24E277
+PT=F5B2BAD53323A52A2B99CC12782CD6F9
+CT=D1EFB7E7A34F75887038FC4827E894C1
+
+I=294
+KEY=5473243F53C31B73CBAAE507F675A487
+IV=D1EFB7E7A34F75887038FC4827E894C1
+PT=11C0C41C3F547B5D7FC94115327AB3D5
+CT=2CF97D8995AA8FDC4C05205D3D8B757F
+
+I=295
+KEY=788A59B6C66994AF87AFC55ACBFED1F8
+IV=2CF97D8995AA8FDC4C05205D3D8B757F
+PT=3F911029D8B69CA1A323A277090B9C07
+CT=44BB04C6253F3ADD454264EA97490475
+
+I=296
+KEY=3C315D70E356AE72C2EDA1B05CB7D58D
+IV=44BB04C6253F3ADD454264EA97490475
+PT=9D7724EFD1AE76904458EF1360953AA4
+CT=5D6F876E4FDD6921B243EB1F6EF50F82
+
+I=297
+KEY=615EDA1EAC8BC75370AE4AAF3242DA0F
+IV=5D6F876E4FDD6921B243EB1F6EF50F82
+PT=44A26554FE355D95706431B344701B03
+CT=5F3226B39DF230163D2C474F04BAD36E
+
+I=298
+KEY=3E6CFCAD3179F7454D820DE036F80961
+IV=5F3226B39DF230163D2C474F04BAD36E
+PT=5D8B62C8CD3B04451A599989F3165530
+CT=A247CF8E1D8F480DA4155DA846A2B64E
+
+I=299
+KEY=9C2B33232CF6BF48E9975048705ABF2F
+IV=A247CF8E1D8F480DA4155DA846A2B64E
+PT=610D3798E62E9338D5987BAC82D48CD7
+CT=2A92B5AAEA43CFBAA62842DEE7F43A19
+
+I=300
+KEY=B6B98689C6B570F24FBF129697AE8536
+IV=2A92B5AAEA43CFBAA62842DEE7F43A19
+PT=F77943AA429BCCC5253156474E719389
+CT=7D475AFF824080E9C95D4E49D4F5090D
+
+I=301
+KEY=CBFEDC7644F5F01B86E25CDF435B8C3B
+IV=7D475AFF824080E9C95D4E49D4F5090D
+PT=5E6269D157164B2C544D3052E9DB8553
+CT=AD4628B05F5A765E557015B4A41505EA
+
+I=302
+KEY=66B8F4C61BAF8645D392496BE74E89D1
+IV=AD4628B05F5A765E557015B4A41505EA
+PT=77126BD6C08A094981FEC9E2DE91B2BF
+CT=59C24F269E3884A4F8E3F9FB05BF448F
+
+I=303
+KEY=3F7ABBE0859702E12B71B090E2F1CD5E
+IV=59C24F269E3884A4F8E3F9FB05BF448F
+PT=7775F90D2189E91B75AB8AD93C0D44F2
+CT=B72873115D4761B8BAEB5B5892B79DF8
+
+I=304
+KEY=8852C8F1D8D06359919AEBC8704650A6
+IV=B72873115D4761B8BAEB5B5892B79DF8
+PT=03D9C45A2A152ADAA53E1D42AB33555B
+CT=FE0C3F22E6B467DC1C628C928D03DB5B
+
+I=305
+KEY=765EF7D33E6404858DF8675AFD458BFD
+IV=FE0C3F22E6B467DC1C628C928D03DB5B
+PT=279791AC4189634A6066BCDCAA2EF9B4
+CT=7F3ABBA943C8E3EF19C3BA2C98C9685F
+
+I=306
+KEY=09644C7A7DACE76A943BDD76658CE3A2
+IV=7F3ABBA943C8E3EF19C3BA2C98C9685F
+PT=E46E5FB6019BA52524A383A18A89583A
+CT=C96D250343B134241221490AB39931DB
+
+I=307
+KEY=C00969793E1DD34E861A947CD615D279
+IV=C96D250343B134241221490AB39931DB
+PT=A3A544B8982C2F9EA0CD0ABC4D6392E2
+CT=951D54AABDF6F5B70E700C4896EB2685
+
+I=308
+KEY=55143DD383EB26F9886A983440FEF4FC
+IV=951D54AABDF6F5B70E700C4896EB2685
+PT=43FEB2051478A02BA1F054C9E82F0209
+CT=1F90165BE29C6C86D09AD07B1C006CA6
+
+I=309
+KEY=4A842B8861774A7F58F0484F5CFE985A
+IV=1F90165BE29C6C86D09AD07B1C006CA6
+PT=558AD95B25BAB5205FB7E529C96E5B59
+CT=40C0A0427C12AB1F72A7ADF96F82D437
+
+I=310
+KEY=0A448BCA1D65E1602A57E5B6337C4C6D
+IV=40C0A0427C12AB1F72A7ADF96F82D437
+PT=BABA13A1244DEFF5E4A2AB8183775773
+CT=FB08FDF3BF4394BA1A92C45B7F5F3060
+
+I=311
+KEY=F14C7639A22675DA30C521ED4C237C0D
+IV=FB08FDF3BF4394BA1A92C45B7F5F3060
+PT=46E036ECCDBE88931E552E45CBBC2BDC
+CT=311AE8C2B7CB633178874BDEEEE0602F
+
+I=312
+KEY=C0569EFB15ED16EB48426A33A2C31C22
+IV=311AE8C2B7CB633178874BDEEEE0602F
+PT=4D5C919959478AD0D9862BA509233102
+CT=1DC85D9A8877C79698C7D1C1610CBAE9
+
+I=313
+KEY=DD9EC3619D9AD17DD085BBF2C3CFA6CB
+IV=1DC85D9A8877C79698C7D1C1610CBAE9
+PT=D423E31E9FD6E4F4373FA7AD31CC6011
+CT=FC55E7BEA15BD539EDACB202F0218D4A
+
+I=314
+KEY=21CB24DF3CC104443D2909F033EE2B81
+IV=FC55E7BEA15BD539EDACB202F0218D4A
+PT=52C2C696A4343C0F280A3BC8F6AA19EA
+CT=FFD9FECD3A4EC194568A96C5A899E8D2
+
+I=315
+KEY=DE12DA12068FC5D06BA39F359B77C353
+IV=FFD9FECD3A4EC194568A96C5A899E8D2
+PT=3B2266FAB514211E8E33AFA566898083
+CT=DC1A545F354365A0002180BACCE0AD25
+
+I=316
+KEY=02088E4D33CCA0706B821F8F57976E76
+IV=DC1A545F354365A0002180BACCE0AD25
+PT=DC20E6BD8B8AC822CF2B505E580E6A80
+CT=51CF4C11F15B8B565B875F769C2FD37F
+
+I=317
+KEY=53C7C25CC2972B26300540F9CBB8BD09
+IV=51CF4C11F15B8B565B875F769C2FD37F
+PT=67B4C3E2AFC3402901549265186303FB
+CT=A118B7E5B10DAB4DDB449877AB1E6897
+
+I=318
+KEY=F2DF75B9739A806BEB41D88E60A6D59E
+IV=A118B7E5B10DAB4DDB449877AB1E6897
+PT=971952EE322CD68462B4CE8B772BBA48
+CT=A2988AAC94D8A7EFB32B34CC07911F3E
+
+I=319
+KEY=5047FF15E7422784586AEC426737CAA0
+IV=A2988AAC94D8A7EFB32B34CC07911F3E
+PT=64C2665506EDDED98EC55D2CCED7762C
+CT=86AEB7B90565D05293A8D9146880C307
+
+I=320
+KEY=D6E948ACE227F7D6CBC235560FB709A7
+IV=86AEB7B90565D05293A8D9146880C307
+PT=A5E7E411209DD2A34AA8CDA3153A69E4
+CT=27746442FAC1DF26B11A55251AAFD865
+
+I=321
+KEY=F19D2CEE18E628F07AD860731518D1C2
+IV=27746442FAC1DF26B11A55251AAFD865
+PT=83A41EF5F664A909BC47939D7858C221
+CT=619A164C3F2119FFCA3832A5EA958E01
+
+I=322
+KEY=90073AA227C7310FB0E052D6FF8D5FC3
+IV=619A164C3F2119FFCA3832A5EA958E01
+PT=1F5A31EBB2C515728DB07EE3160D03CD
+CT=DEE1692D386EF5A8861BE5D8A4630906
+
+I=323
+KEY=4EE6538F1FA9C4A736FBB70E5BEE56C5
+IV=DEE1692D386EF5A8861BE5D8A4630906
+PT=297B343F5EE6221FB6CC40E0C836B387
+CT=B2BA45B0A776A950C32DD5F302201FC3
+
+I=324
+KEY=FC5C163FB8DF6DF7F5D662FD59CE4906
+IV=B2BA45B0A776A950C32DD5F302201FC3
+PT=CC3601DC94B13116DF3012860A522D2D
+CT=6D141746B23B4E1EF20DFE6C14D6ECE4
+
+I=325
+KEY=914801790AE423E907DB9C914D18A5E2
+IV=6D141746B23B4E1EF20DFE6C14D6ECE4
+PT=FE07DA9A6E8B712B1FDFC3C1CC87146D
+CT=0D80E8F5557A88A271133F8929125C72
+
+I=326
+KEY=9CC8E98C5F9EAB4B76C8A318640AF990
+IV=0D80E8F5557A88A271133F8929125C72
+PT=EBDC0192755A685D6275532E93D33890
+CT=B88A629A8E22A78BAF98C9E623F48134
+
+I=327
+KEY=24428B16D1BC0CC0D9506AFE47FE78A4
+IV=B88A629A8E22A78BAF98C9E623F48134
+PT=78AD3067BE2E9536ADB58DA49D7CA6DA
+CT=0A9C2D318240F4FA4FF91CC5D23A371F
+
+I=328
+KEY=2EDEA62753FCF83A96A9763B95C44FBB
+IV=0A9C2D318240F4FA4FF91CC5D23A371F
+PT=04C72A08CCC36B4211AFE98637C4CEFF
+CT=A42618A89B9E618DDD7A983081E086B9
+
+I=329
+KEY=8AF8BE8FC86299B74BD3EE0B1424C902
+IV=A42618A89B9E618DDD7A983081E086B9
+PT=22D4A346027B8E5FEE1C0C0C45CA7DCB
+CT=7CC4479AE05A295723F27545E1A46B7B
+
+I=330
+KEY=F63CF9152838B0E068219B4EF580A279
+IV=7CC4479AE05A295723F27545E1A46B7B
+PT=05090A5C8F3CD0E7F7EA11B33CDF3C1D
+CT=815BCEB2A29EA2A491C8E39B117790EC
+
+I=331
+KEY=776737A78AA61244F9E978D5E4F73295
+IV=815BCEB2A29EA2A491C8E39B117790EC
+PT=7B40F8A4AC0E4C6BD73A59FFC91CA77D
+CT=E4ED412F3ECDD4B7409BEEAEDC2C755F
+
+I=332
+KEY=938A7688B46BC6F3B972967B38DB47CA
+IV=E4ED412F3ECDD4B7409BEEAEDC2C755F
+PT=047E2E4681A97ED20308F1FE4B132F7B
+CT=10153209AED4115329587180D65A0B97
+
+I=333
+KEY=839F44811ABFD7A0902AE7FBEE814C5D
+IV=10153209AED4115329587180D65A0B97
+PT=32671E6C0D28744AB457587BBB6DD21E
+CT=847F781EDF77A870C4EA99CCC1721917
+
+I=334
+KEY=07E03C9FC5C87FD054C07E372FF3554A
+IV=847F781EDF77A870C4EA99CCC1721917
+PT=EC3159B002B95054F00D57049D91E32B
+CT=05CC06529764F6747FCB2B62569C428C
+
+I=335
+KEY=022C3ACD52AC89A42B0B5555796F17C6
+IV=05CC06529764F6747FCB2B62569C428C
+PT=9A930743113957D10EC643D8D8034C73
+CT=D1C7957073C2A44D9483DD11F3FA2B1E
+
+I=336
+KEY=D3EBAFBD216E2DE9BF8888448A953CD8
+IV=D1C7957073C2A44D9483DD11F3FA2B1E
+PT=2E061A5B483D0D834D3019954E54CF80
+CT=0AC3300C59DB7A76A1E16DC5BF167B70
+
+I=337
+KEY=D9289FB178B5579F1E69E581358347A8
+IV=0AC3300C59DB7A76A1E16DC5BF167B70
+PT=2A6E00DF7820913341D26EF611A7BEC1
+CT=5A5A1BE396D3C56DB0690B92A925D8D8
+
+I=338
+KEY=83728452EE6692F2AE00EE139CA69F70
+IV=5A5A1BE396D3C56DB0690B92A925D8D8
+PT=E871C79BA6132F15C80A85F4BC732E77
+CT=829ABA07496E1269437680257308029D
+
+I=339
+KEY=01E83E55A708809BED766E36EFAE9DED
+IV=829ABA07496E1269437680257308029D
+PT=5955643AB76251E6AF97BC2490D09A72
+CT=3FEDBF80B703D067126EF55B02A41175
+
+I=340
+KEY=3E0581D5100B50FCFF189B6DED0A8C98
+IV=3FEDBF80B703D067126EF55B02A41175
+PT=32BCF86ECA6CCE8F9C1C87AD9FDF8238
+CT=B59D6C5FCA91EDBFE75E795638CAD286
+
+I=341
+KEY=8B98ED8ADA9ABD431846E23BD5C05E1E
+IV=B59D6C5FCA91EDBFE75E795638CAD286
+PT=01A08051FC1D98C1BDAE4CA1D41D91E6
+CT=21CB8EF8BBE6C371A26BFF92701C3D1A
+
+I=342
+KEY=AA536372617C7E32BA2D1DA9A5DC6304
+IV=21CB8EF8BBE6C371A26BFF92701C3D1A
+PT=5F5D891DF8D595D3FEDAEF0174B0A1D1
+CT=23D0FB6489113D3D4AA6470210698391
+
+I=343
+KEY=89839816E86D430FF08B5AABB5B5E095
+IV=23D0FB6489113D3D4AA6470210698391
+PT=54FEAB37EFCD36D28E943DD85E803812
+CT=45F0556ED9A8ED0E1C8B0A0BA648E069
+
+I=344
+KEY=CC73CD7831C5AE01EC0050A013FD00FC
+IV=45F0556ED9A8ED0E1C8B0A0BA648E069
+PT=7AF4BC398ACAD37F526BDE12F3ED59ED
+CT=C41E115EE06FFE5DED10480A1BE5B720
+
+I=345
+KEY=086DDC26D1AA505C011018AA0818B7DC
+IV=C41E115EE06FFE5DED10480A1BE5B720
+PT=CF15E4B6DDF60A4EE0CB6CBFA8AD499B
+CT=1098A41E2C97C9D70626E4D1841F5CC1
+
+I=346
+KEY=18F57838FD3D998B0736FC7B8C07EB1D
+IV=1098A41E2C97C9D70626E4D1841F5CC1
+PT=BAD4050A0013AB8BC556F367AB634D94
+CT=D9B58211EB935246A5E04FCD3BE10B54
+
+I=347
+KEY=C140FA2916AECBCDA2D6B3B6B7E6E049
+IV=D9B58211EB935246A5E04FCD3BE10B54
+PT=CEFF0AF7EF4EA7EF3B0E8BF7FB756E77
+CT=50FAE8C770EF7F9D5FE93B090B9D5C66
+
+I=348
+KEY=91BA12EE6641B450FD3F88BFBC7BBC2F
+IV=50FAE8C770EF7F9D5FE93B090B9D5C66
+PT=3B8C412B4156B413AD06CB181B4C5EAA
+CT=E47249D4B5F24FF415B0E669EBF471B1
+
+I=349
+KEY=75C85B3AD3B3FBA4E88F6ED6578FCD9E
+IV=E47249D4B5F24FF415B0E669EBF471B1
+PT=56C612C5C594CAFB7B1CE8131E786DF0
+CT=6AF057199C217EECB886D940F61B91C5
+
+I=350
+KEY=1F380C234F9285485009B796A1945C5B
+IV=6AF057199C217EECB886D940F61B91C5
+PT=5629EF768743AB63D5B79B511C0A6BEF
+CT=A5A76C330984D34310D021A6C2BDE9BC
+
+I=351
+KEY=BA9F60104616560B40D996306329B5E7
+IV=A5A76C330984D34310D021A6C2BDE9BC
+PT=ED8DF427A02692C09D7AAEF2EDAA1249
+CT=8AAEFBA5DE0AAA41D947E3238B279913
+
+I=352
+KEY=30319BB5981CFC4A999E7513E80E2CF4
+IV=8AAEFBA5DE0AAA41D947E3238B279913
+PT=949339605F30310FC557F2CA4815B034
+CT=9408BCB67EA573E7B5359B67918C16B9
+
+I=353
+KEY=A4392703E6B98FAD2CABEE7479823A4D
+IV=9408BCB67EA573E7B5359B67918C16B9
+PT=03607642CBBCCA2134837AC4BB452682
+CT=90660AF3DD0EAC1B61BB60EB49408586
+
+I=354
+KEY=345F2DF03BB723B64D108E9F30C2BFCB
+IV=90660AF3DD0EAC1B61BB60EB49408586
+PT=DE00E32930E14BD4297F9D789D0C25A1
+CT=1C48AC020174C0D87443229C113E2838
+
+I=355
+KEY=281781F23AC3E36E3953AC0321FC97F3
+IV=1C48AC020174C0D87443229C113E2838
+PT=9CA7A04855F8404176D7D30B594B65AC
+CT=7ACCB3FD4F9C7A5BFB83A969EB6D211A
+
+I=356
+KEY=52DB320F755F9935C2D0056ACA91B6E9
+IV=7ACCB3FD4F9C7A5BFB83A969EB6D211A
+PT=DC0B392E998A347ECB789A51A09F1B1D
+CT=22BED79EF2CAFF83BE8CEE5D7001DE21
+
+I=357
+KEY=7065E591879566B67C5CEB37BA9068C8
+IV=22BED79EF2CAFF83BE8CEE5D7001DE21
+PT=07210334590A9314031D98F7DFBB84B9
+CT=44B16879886BC331407D1E7C7F247A04
+
+I=358
+KEY=34D48DE80FFEA5873C21F54BC5B412CC
+IV=44B16879886BC331407D1E7C7F247A04
+PT=27DDF18405E56989E59ED442C8825DD6
+CT=2787AD57159450916A45C72D0E074D53
+
+I=359
+KEY=135320BF1A6AF51656643266CBB35F9F
+IV=2787AD57159450916A45C72D0E074D53
+PT=4F43202A454BB0F3A9440DA558BEE228
+CT=3C1B83C66CEEEB27644BC66ACC3117E8
+
+I=360
+KEY=2F48A37976841E31322FF40C07824877
+IV=3C1B83C66CEEEB27644BC66ACC3117E8
+PT=28ED6A88BDE4ADEFDA5C0F629109A7A3
+CT=B6009481F8C5D3EE37C645CF238238A1
+
+I=361
+KEY=994837F88E41CDDF05E9B1C3240070D6
+IV=B6009481F8C5D3EE37C645CF238238A1
+PT=48DC5A3700CD4A7A9B066DC0E2667544
+CT=C1A20854601D7A81CAC51E9237BDC030
+
+I=362
+KEY=58EA3FACEE5CB75ECF2CAF5113BDB0E6
+IV=C1A20854601D7A81CAC51E9237BDC030
+PT=1F84C71120B50FDF715B60DB69DECBE0
+CT=663EDB4EFD3F6AC2259A43C926ACE66D
+
+I=363
+KEY=3ED4E4E21363DD9CEAB6EC983511568B
+IV=663EDB4EFD3F6AC2259A43C926ACE66D
+PT=D6F9C59367A57E1DBDC2F4627524BC9A
+CT=CA84A10F987212D75B744A7966ABBABA
+
+I=364
+KEY=F45045ED8B11CF4BB1C2A6E153BAEC31
+IV=CA84A10F987212D75B744A7966ABBABA
+PT=1D8BC84060844CE5C40C716F2190C2BB
+CT=ABAEEB339C4D150E894392444E021710
+
+I=365
+KEY=5FFEAEDE175CDA45388134A51DB8FB21
+IV=ABAEEB339C4D150E894392444E021710
+PT=1300843AABCFB110198F0F0102C0A4D5
+CT=DBA9A1F8EE9AB8300D0273F71EAC5D1C
+
+I=366
+KEY=84570F26F9C66275358347520314A63D
+IV=DBA9A1F8EE9AB8300D0273F71EAC5D1C
+PT=1EA11B05D7DA9D770BA9AB619267B7A3
+CT=4921F1CB4A9AA6594C205D8FF0B2DEC9
+
+I=367
+KEY=CD76FEEDB35CC42C79A31ADDF3A678F4
+IV=4921F1CB4A9AA6594C205D8FF0B2DEC9
+PT=9ABA414156563E88A8CCDB3BD226F66C
+CT=4CF623AC6E145E2D61CAD28BFBF1F1E5
+
+I=368
+KEY=8180DD41DD489A011869C85608578911
+IV=4CF623AC6E145E2D61CAD28BFBF1F1E5
+PT=FEF20625FA0C788DB8A20298F6933F6F
+CT=67C491A5CA1A065980BDECE44B7979F1
+
+I=369
+KEY=E6444CE417529C5898D424B2432EF0E0
+IV=67C491A5CA1A065980BDECE44B7979F1
+PT=79C4A475D0E064D72D48AF6357A0E6A0
+CT=529766CDD1223ED05C055108F91E6526
+
+I=370
+KEY=B4D32A29C670A288C4D175BABA3095C6
+IV=529766CDD1223ED05C055108F91E6526
+PT=0758AA9195AE8684B9FEEBEF8E1226AE
+CT=2AEC009219ECD0499DD729352C220E7D
+
+I=371
+KEY=9E3F2ABBDF9C72C159065C8F96129BBB
+IV=2AEC009219ECD0499DD729352C220E7D
+PT=886713433798AB16E87A8AD3A8CD0C87
+CT=0DE2A7554E343B6FFC6D1ECF4A8AF0DD
+
+I=372
+KEY=93DD8DEE91A849AEA56B4240DC986B66
+IV=0DE2A7554E343B6FFC6D1ECF4A8AF0DD
+PT=984E8BA3DFFB4E9A1244D65BEA7DC594
+CT=8111340B4AF2CD82FF15447143069276
+
+I=373
+KEY=12CCB9E5DB5A842C5A7E06319F9EF910
+IV=8111340B4AF2CD82FF15447143069276
+PT=A4F6C8ACF4F1050D11E42FEF1B6C8B68
+CT=BB4693FA1399583EACB21D2675E6D156
+
+I=374
+KEY=A98A2A1FC8C3DC12F6CC1B17EA782846
+IV=BB4693FA1399583EACB21D2675E6D156
+PT=C5DBE1A937D6EA2FDD9A1A2FD25217B9
+CT=BC01B078339637D796F822B7E58D968D
+
+I=375
+KEY=158B9A67FB55EBC5603439A00FF5BECB
+IV=BC01B078339637D796F822B7E58D968D
+PT=DBD0494B0FE3149F8BCB8A70D344E811
+CT=600C1EFBDCA314A6F9714DEE413B9BD2
+
+I=376
+KEY=7587849C27F6FF639945744E4ECE2519
+IV=600C1EFBDCA314A6F9714DEE413B9BD2
+PT=FCA88DCB484317D7F886E7437BC9E669
+CT=2E3788A647105DD0A286E2EFFD469C99
+
+I=377
+KEY=5BB00C3A60E6A2B33BC396A1B388B980
+IV=2E3788A647105DD0A286E2EFFD469C99
+PT=65AF28E41B3DA5ACE3B2CC9A25EAD28C
+CT=5411E48B57058A52C8560423BCFFBCD2
+
+I=378
+KEY=0FA1E8B137E328E1F39592820F770552
+IV=5411E48B57058A52C8560423BCFFBCD2
+PT=6DD82A9F1CF0A5134A76899B04BE37D5
+CT=C3F69C8ED682BF252D5119D1695126E1
+
+I=379
+KEY=CC57743FE16197C4DEC48B53662623B3
+IV=C3F69C8ED682BF252D5119D1695126E1
+PT=DE729AB3803144FD958D8597396BC8ED
+CT=0941B78975FD2945B4AA81E8C58E3CB2
+
+I=380
+KEY=C516C3B6949CBE816A6E0ABBA3A81F01
+IV=0941B78975FD2945B4AA81E8C58E3CB2
+PT=D8404E7A17254EB40683A8919A9563B4
+CT=BF647E0346C013E138A2F0B06E7BB142
+
+I=381
+KEY=7A72BDB5D25CAD6052CCFA0BCDD3AE43
+IV=BF647E0346C013E138A2F0B06E7BB142
+PT=214089EC2996CE9FA2BBFEFBCAC03509
+CT=AFDA67B9451FF758CC87BBD93C7D4BE4
+
+I=382
+KEY=D5A8DA0C97435A389E4B41D2F1AEE5A7
+IV=AFDA67B9451FF758CC87BBD93C7D4BE4
+PT=9406E9D4FB4592A609BBDB23CE5F9D7F
+CT=B18202E4CA510695540371A8B6523616
+
+I=383
+KEY=642AD8E85D125CADCA48307A47FCD3B1
+IV=B18202E4CA510695540371A8B6523616
+PT=FEE45BE0503B4093747AFCEA9881D30D
+CT=64E149A4A1840F93D675B041ED81D45A
+
+I=384
+KEY=00CB914CFC96533E1C3D803BAA7D07EB
+IV=64E149A4A1840F93D675B041ED81D45A
+PT=880368D5609350167C7826DA30DCFF59
+CT=65A363E9837DFBBDA2688E6F4FBE6C35
+
+I=385
+KEY=6568F2A57FEBA883BE550E54E5C36BDE
+IV=65A363E9837DFBBDA2688E6F4FBE6C35
+PT=29C5940D09A8723B441FC469C909813A
+CT=2A47FDF5BF600891DF4D9E8AA34748BA
+
+I=386
+KEY=4F2F0F50C08BA012611890DE46842364
+IV=2A47FDF5BF600891DF4D9E8AA34748BA
+PT=20AF0FF7BAC0F468C12BD2816A8B1620
+CT=68A637E4B94EC150C84A6EBB005BB79B
+
+I=387
+KEY=278938B479C56142A952FE6546DF94FF
+IV=68A637E4B94EC150C84A6EBB005BB79B
+PT=42906D013A3F0A426B01B489ECA6CAD7
+CT=A090CA02FCD40F01CA0D1A699E30C164
+
+I=388
+KEY=8719F2B685116E43635FE40CD8EF559B
+IV=A090CA02FCD40F01CA0D1A699E30C164
+PT=05A02D4D7D90BCA74ECE791CD865CB88
+CT=F70109F0EBBA56959B3013565E2BDFFC
+
+I=389
+KEY=7018FB466EAB38D6F86FF75A86C48A67
+IV=F70109F0EBBA56959B3013565E2BDFFC
+PT=C373AB7B8F770212F9D5CEF40099086C
+CT=67221CC1F104809B8A5D35431963812D
+
+I=390
+KEY=173AE7879FAFB84D7232C2199FA70B4A
+IV=67221CC1F104809B8A5D35431963812D
+PT=8C59B2A7FD50EC66ABACC0531BE33237
+CT=E06166175F68155DB86E268F3C5524AE
+
+I=391
+KEY=F75B8190C0C7AD10CA5CE496A3F22FE4
+IV=E06166175F68155DB86E268F3C5524AE
+PT=D39790AED2970355A6337AAD2CA4D501
+CT=85E89883242A3B68F4AAF922646EB385
+
+I=392
+KEY=72B31913E4ED96783EF61DB4C79C9C61
+IV=85E89883242A3B68F4AAF922646EB385
+PT=87D4160C7C97476D0884A22B5983AA65
+CT=038C79FDFAA0B4F4AD9DC336F46CACDF
+
+I=393
+KEY=713F60EE1E4D228C936BDE8233F030BE
+IV=038C79FDFAA0B4F4AD9DC336F46CACDF
+PT=3B59088B5ADC77E4B3FC31897C6389B5
+CT=F6C92ECB3332E5E93C9DE29F27F94BB3
+
+I=394
+KEY=87F64E252D7FC765AFF63C1D14097B0D
+IV=F6C92ECB3332E5E93C9DE29F27F94BB3
+PT=68BA9BEBB40B3E35D2E577A2831CF9DB
+CT=7B72342488233DAD5ACF0A8D54EA9E8B
+
+I=395
+KEY=FC847A01A55CFAC8F539369040E3E586
+IV=7B72342488233DAD5ACF0A8D54EA9E8B
+PT=7816251219B8C7F009ADD7A1898D02CF
+CT=45CBA66AD6045917C3E8257D3ECBECDB
+
+I=396
+KEY=B94FDC6B7358A3DF36D113ED7E28095D
+IV=45CBA66AD6045917C3E8257D3ECBECDB
+PT=F542FEAB12E2EA9AE761E58108784E37
+CT=82E289465F5838036B9880C33AEBCB83
+
+I=397
+KEY=3BAD552D2C009BDC5D49932E44C3C2DE
+IV=82E289465F5838036B9880C33AEBCB83
+PT=3B8208791DAE56383CC2BCB44097C9D3
+CT=F02F2B89DE46D01F46AD95C82AF0C20E
+
+I=398
+KEY=CB827EA4F2464BC31BE406E66E3300D0
+IV=F02F2B89DE46D01F46AD95C82AF0C20E
+PT=3F2C0F7A0AEAB04F318C661ABCFED153
+CT=8D4FAF6332578524301ACA22AD86965B
+
+I=399
+KEY=46CDD1C7C011CEE72BFECCC4C3B5968B
+IV=8D4FAF6332578524301ACA22AD86965B
+PT=A27200B51D69AAC22F1C567F8BCEABFA
+CT=2F844CBF78EBA70DA7A49601388F1AB6
+
+KEYSIZE=192
+
+I=0
+KEY=000000000000000000000000000000000000000000000000
+IV=00000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=7BD966D53AD8C1BB85D2ADFAE87BB104
+
+I=1
+KEY=506339DAE3B35BEB7BD966D53AD8C1BB85D2ADFAE87BB104
+IV=7BD966D53AD8C1BB85D2ADFAE87BB104
+PT=0555C410F44C7AA4506339DAE3B35BEB
+CT=869C061BE9CFEAB5D285B0724A9A8970
+
+I=2
+KEY=74D3414C2374367BFD4560CED3172B0E57571D88A2E13874
+IV=869C061BE9CFEAB5D285B0724A9A8970
+PT=C6FB25A188CF7F3F24B07896C0C76D90
+CT=9E58A52B3840DBE16E8063A18220FEE4
+
+I=3
+KEY=DDE2DF4EEC312FA3631DC5E5EB57F0EF39D77E2920C1C690
+IV=9E58A52B3840DBE16E8063A18220FEE4
+PT=84E3D4168A8469A6A9319E02CF4519D8
+CT=730A256C202B9D57F3C0D73AD4B6CBED
+
+I=4
+KEY=9D973AECAF19E9951017E089CB7C6DB8CA17A913F4770D7D
+IV=730A256C202B9D57F3C0D73AD4B6CBED
+PT=E000CE26CD3185B44075E5A24328C636
+CT=E79EF11C5C1FD1AB75280BCFFCFE89D4
+
+I=5
+KEY=7A52007B2C40C9F4F78911959763BC13BF3FA2DC088984A9
+IV=E79EF11C5C1FD1AB75280BCFFCFE89D4
+PT=19D79403BB238816E7C53A9783592061
+CT=65744444724F1052D0B8674EDC8083B5
+
+I=6
+KEY=40D50426A8D09F3292FD55D1E52CAC416F87C592D409071C
+IV=65744444724F1052D0B8674EDC8083B5
+PT=FDFA33685E2B5BBC3A87045D849056C6
+CT=23C6377D3D076491AD93E2B6112289C7
+
+I=7
+KEY=6FD062412FE1AE4EB13B62ACD82BC8D0C2142724C52B8EDB
+IV=23C6377D3D076491AD93E2B6112289C7
+PT=5056DDDEF15831502F0566678731317C
+CT=F13A83088536BF30E5E9018BE57D7D89
+
+I=8
+KEY=EB4DB5F469D0EE9B4001E1A45D1D77E027FD26AF2056F352
+IV=F13A83088536BF30E5E9018BE57D7D89
+PT=0EE535A4A524668F849DD7B5463140D5
+CT=3F496CB19B21C37159528BF345473E6D
+
+I=9
+KEY=AA6E5744B909D9A87F488D15C63CB4917EAFAD5C6511CD3F
+IV=3F496CB19B21C37159528BF345473E6D
+PT=3A11F90EB51C81ED4123E2B0D0D93733
+CT=CF79C1EDEE17A68DC7E673006AEC90D9
+
+I=10
+KEY=64AB0C0C9471B77FB0314CF8282B121CB949DE5C0FFD5DE6
+IV=CF79C1EDEE17A68DC7E673006AEC90D9
+PT=85187E7F91280A5BCEC55B482D786ED7
+CT=92D1757BEBCE6E0406407819AF82353F
+
+I=11
+KEY=9E5720C1DC2E285C22E03983C3E57C18BF09A645A07F68D9
+IV=92D1757BEBCE6E0406407819AF82353F
+PT=45147511BC08EC76FAFC2CCD485F9F23
+CT=8C0228F57523D746E67D27A8E6C426D9
+
+I=12
+KEY=EBBB8245582E4367AEE21176B6C6AB5E597481ED46BB4E00
+IV=8C0228F57523D746E67D27A8E6C426D9
+PT=73B9EEAC644CBB8875ECA28484006B3B
+CT=D0025BF1FC35DD9BDA20F42DF775AF71
+
+I=13
+KEY=5F938EE9CC63C9E87EE04A874AF376C5835475C0B1CEE171
+IV=D0025BF1FC35DD9BDA20F42DF775AF71
+PT=DE2507F01BC8B212B4280CAC944D8A8F
+CT=3FDDD3E04B2CBE79BB07D82182CD3787
+
+I=14
+KEY=B94E2EC5F6E86EDC413D996701DFC8BC3853ADE13303D6F6
+IV=3FDDD3E04B2CBE79BB07D82182CD3787
+PT=90CE32BCC16C20F7E6DDA02C3A8BA734
+CT=F7B491E4C40B60BE8ACF16D68E3ED60F
+
+I=15
+KEY=DE41ABD8C44F5DF6B6890883C5D4A802B29CBB37BD3D00F9
+IV=F7B491E4C40B60BE8ACF16D68E3ED60F
+PT=B7ACCA62BB9974BC670F851D32A7332A
+CT=7ED4055D367CB31A4CF1CC17132E00B5
+
+I=16
+KEY=E2A57C71F23BC4DEC85D0DDEF3A81B18FE6D7720AE13004C
+IV=7ED4055D367CB31A4CF1CC17132E00B5
+PT=1CA59C2384797B803CE4D7A936749928
+CT=8D50A87F14D466323929BB52FA60FA42
+
+I=17
+KEY=2FA1A78B8BCC301C450DA5A1E77C7D2AC744CC725473FA0E
+IV=8D50A87F14D466323929BB52FA60FA42
+PT=0A623319F2A051ACCD04DBFA79F7F4C2
+CT=7C02D378606FC33DFCEF8AA2A000383E
+
+I=18
+KEY=A949CE493892DF58390F76D98713BE173BAB46D0F473C230
+IV=7C02D378606FC33DFCEF8AA2A000383E
+PT=EE8F5FF6A7FF813386E869C2B35EEF44
+CT=CAE55B9CCBB5A68EBF0D2AB55E079FD4
+
+I=19
+KEY=E159445FE4201A6CF3EA2D454CA6189984A66C65AA745DE4
+IV=CAE55B9CCBB5A68EBF0D2AB55E079FD4
+PT=9699456986535C4648108A16DCB2C534
+CT=9056685FBFECC7A6143DB5AC314DAC88
+
+I=20
+KEY=EE4F7BF96BF1163E63BC451AF34ADF3F909BD9C99B39F16C
+IV=9056685FBFECC7A6143DB5AC314DAC88
+PT=16D6C34C3B57AC0A0F163FA68FD10C52
+CT=4D6A5542F0680CE37E88119141F321F5
+
+I=21
+KEY=27F8CEE0120E8A0F2ED610580322D3DCEE13C858DACAD099
+IV=4D6A5542F0680CE37E88119141F321F5
+PT=337839926E36EC77C9B7B51979FF9C31
+CT=78E16D6027F0D190E78825C2F52E5364
+
+I=22
+KEY=0AF4D3D8EB9FF18A56377D3824D2024C099BED9A2FE483FD
+IV=78E16D6027F0D190E78825C2F52E5364
+PT=8F96B66F934467C72D0C1D38F9917B85
+CT=82A81B33F80A105DD7D9CC6DDFECDB96
+
+I=23
+KEY=AD2AFC821170D967D49F660BDCD81211DE4221F7F008586B
+IV=82A81B33F80A105DD7D9CC6DDFECDB96
+PT=E2CB8E6E329C6660A7DE2F5AFAEF28ED
+CT=0BCD68A063BA3540B3E04C885DF45BD0
+
+I=24
+KEY=5B50EE72BD6CE837DF520EABBF6227516DA26D7FADFC03BB
+IV=0BCD68A063BA3540B3E04C885DF45BD0
+PT=31A14C64CD8BCC8FF67A12F0AC1C3150
+CT=DB27EA5834BF572EA50E03E0773C1010
+
+I=25
+KEY=BF4D8A58F54D47620475E4F38BDD707FC8AC6E9FDAC013AB
+IV=DB27EA5834BF572EA50E03E0773C1010
+PT=26755B5C0BE60998E41D642A4821AF55
+CT=655A896243B5E86B2F74299A317A2E4C
+
+I=26
+KEY=8DC190D88B17EAB9612F6D91C8689814E7D84705EBBA3DE7
+IV=655A896243B5E86B2F74299A317A2E4C
+PT=C6920ADCED82F661328C1A807E5AADDB
+CT=9F45472FDBB732C745AD228810392EA2
+
+I=27
+KEY=B44071C6F14CDA97FE6A2ABE13DFAAD3A275658DFB831345
+IV=9F45472FDBB732C745AD228810392EA2
+PT=2178DFA9784E563E3981E11E7A5B302E
+CT=9F985FBF08235845E396BFCE54BCE7C8
+
+I=28
+KEY=A3C12E42B53D829E61F275011BFCF29641E3DA43AF3FF48D
+IV=9F985FBF08235845E396BFCE54BCE7C8
+PT=44977E2274DA25AE17815F8444715809
+CT=033EAF4FAC934D123012279B1663C80B
+
+I=29
+KEY=8FD2B79E25E39C4A62CCDA4EB76FBF8471F1FDD8B95C3C86
+IV=033EAF4FAC934D123012279B1663C80B
+PT=425088D4626CD7972C1399DC90DE1ED4
+CT=A962CB4707B0048BB81F4225EFC85E48
+
+I=30
+KEY=3D68793EF46B8125CBAE1109B0DFBB0FC9EEBFFD569462CE
+IV=A962CB4707B0048BB81F4225EFC85E48
+PT=EF21ED587C272175B2BACEA0D1881D6F
+CT=6F3A0D63A22C003F7F65B09098F667DB
+
+I=31
+KEY=6A4FB651BE9D0BAFA4941C6A12F3BB30B68B0F6DCE620515
+IV=6F3A0D63A22C003F7F65B09098F667DB
+PT=16054E60B460B2D15727CF6F4AF68A8A
+CT=8BB46230FF03665765F2E5AAEA14104F
+
+I=32
+KEY=3F5991D63C15A1822F207E5AEDF0DD67D379EAC72476155A
+IV=8BB46230FF03665765F2E5AAEA14104F
+PT=82D0B12FEA88917F551627878288AA2D
+CT=8E1A664131FAB09E786E111C3C20A7BB
+
+I=33
+KEY=456F69D38929ED82A13A181BDC0A6DF9AB17FBDB1856B2E1
+IV=8E1A664131FAB09E786E111C3C20A7BB
+PT=1384D3B7CAEB528A7A36F805B53C4C00
+CT=92D99BF1D71026D2BF78E32421E34E52
+
+I=34
+KEY=658891F63379484C33E383EA0B1A4B2B146F18FF39B5FCB3
+IV=92D99BF1D71026D2BF78E32421E34E52
+PT=9F60C3117269E88920E7F825BA50A5CE
+CT=7DB6782C68EC5FC75A2A75E4EA7B4071
+
+I=35
+KEY=9193E2EACE8423F64E55FBC663F614EC4E456D1BD3CEBCC2
+IV=7DB6782C68EC5FC75A2A75E4EA7B4071
+PT=232ECA0370EBD920F41B731CFDFD6BBA
+CT=D76A1E73E977533E6D7C74277DAFEB48
+
+I=36
+KEY=F4C34FE273D0FCB5993FE5B58A8147D22339193CAE61578A
+IV=D76A1E73E977533E6D7C74277DAFEB48
+PT=5BCD8C6C4D14321F6550AD08BD54DF43
+CT=4A69E9081DDD43A6061700C7DA8F5E73
+
+I=37
+KEY=DC82C155896C5D5CD3560CBD975C0474252E19FB74EE09F9
+IV=4A69E9081DDD43A6061700C7DA8F5E73
+PT=C914BB961EA890D828418EB7FABCA1E9
+CT=91EE5BE28C27F055258BC3E1F37E2DEC
+
+I=38
+KEY=08F1655EA3656F1C42B8575F1B7BF42100A5DA1A87902415
+IV=91EE5BE28C27F055258BC3E1F37E2DEC
+PT=11804F73D788115CD473A40B2A093240
+CT=86B9BE5AFD2A8A49E2651C314CAE0918
+
+I=39
+KEY=59D7EFD92140A147C401E905E6517E68E2C0C62BCB3E2D0D
+IV=86B9BE5AFD2A8A49E2651C314CAE0918
+PT=6E2A1E436926174E51268A878225CE5B
+CT=C642F5ED78DB76738A89296B1C4A0932
+
+I=40
+KEY=F6E75E7867D0FB4A02431CE89E8A081B6849EF40D774243F
+IV=C642F5ED78DB76738A89296B1C4A0932
+PT=15896B8B864CF068AF30B1A146905A0D
+CT=24288AE027547E499EBADE9260C8F037
+
+I=41
+KEY=9A048C2BC98E15B2266B9608B9DE7652F6F331D2B7BCD408
+IV=24288AE027547E499EBADE9260C8F037
+PT=FF9A330C205DC3006CE3D253AE5EEEF8
+CT=BD9B3D670D24EDDA1EAD1DB06C8A83C7
+
+I=42
+KEY=97E8C017644E9FED9BF0AB6FB4FA9B88E85E2C62DB3657CF
+IV=BD9B3D670D24EDDA1EAD1DB06C8A83C7
+PT=C9A3916C34A7CCD90DEC4C3CADC08A5F
+CT=1FCCBC65C44E4680E1593EE0EEFEA9A9
+
+I=43
+KEY=3A2862113BD3312D843C170A70B4DD080907128235C8FE66
+IV=1FCCBC65C44E4680E1593EE0EEFEA9A9
+PT=EAF9C4A80EE93585ADC0A2065F9DAEC0
+CT=2C0004064936696B10D039D9795BABC7
+
+I=44
+KEY=33FAE356C0C96F17A83C130C3982B46319D72B5B4C9355A1
+IV=2C0004064936696B10D039D9795BABC7
+PT=4181525880CA468909D28147FB1A5E3A
+CT=79F193EB9A9A48464FF007D73E9B4106
+
+I=45
+KEY=2136A7940C9B9FAFD1CD80E7A318FC2556272C8C720814A7
+IV=79F193EB9A9A48464FF007D73E9B4106
+PT=2899D75DFB84950E12CC44C2CC52F0B8
+CT=DA12307CE9A6BA0FCE5A76AE1747E619
+
+I=46
+KEY=0C839679750274320BDFB09B4ABE462A987D5A22654FF2BE
+IV=DA12307CE9A6BA0FCE5A76AE1747E619
+PT=2C71B8623CA5BF292DB531ED7999EB9D
+CT=A59997FA19B58BC71CB05E7140386C94
+
+I=47
+KEY=4D3CDB92797645C1AE462761530BCDED84CD045325779E2A
+IV=A59997FA19B58BC71CB05E7140386C94
+PT=63F4FC202A1B921241BF4DEB0C7431F3
+CT=49E65D7422398035DD1E4EBAD37C699D
+
+I=48
+KEY=38082D7CC27EBABBE7A07A1571324DD859D34AE9F60BF7B7
+IV=49E65D7422398035DD1E4EBAD37C699D
+PT=7F0E2FD5D4B5A0CB7534F6EEBB08FF7A
+CT=64DF24483FC73174FB6482A6E2B895E0
+
+I=49
+KEY=1557398CFBFF31F8837F5E5D4EF57CACA2B7C84F14B36257
+IV=64DF24483FC73174FB6482A6E2B895E0
+PT=0F525FCF2A1E3D612D5F14F039818B43
+CT=028880CC8AA1B92CB807F1102663E658
+
+I=50
+KEY=229C31F1D34A529581F7DE91C454C5801AB0395F32D0840F
+IV=028880CC8AA1B92CB807F1102663E658
+PT=219604B99FF2BE7B37CB087D28B5636D
+CT=FAC8B66D1BA7849392CC235D0276110E
+
+I=51
+KEY=C75DE76D40D536277B3F68FCDFF34113887C1A0230A69501
+IV=FAC8B66D1BA7849392CC235D0276110E
+PT=3319C80C038E565FE5C1D69C939F64B2
+CT=79770F286419EEFD855868EC4ADF3775
+
+I=52
+KEY=5F0B08B451490B27024867D4BBEAAFEE0D2472EE7A79A274
+IV=79770F286419EEFD855868EC4ADF3775
+PT=E173A8580816CAFA9856EFD9119C3D00
+CT=FC0AA487B09DF657DB58DBF83E13E137
+
+I=53
+KEY=E86E8BFBF1D65541FE42C3530B7759B9D67CA916446A4343
+IV=FC0AA487B09DF657DB58DBF83E13E137
+PT=01274C45F202C22CB765834FA09F5E66
+CT=9691EA44FC67CA29E50E7FF7DBC4D0CA
+
+I=54
+KEY=7849550CA6CCD87268D32917F71093903372D6E19FAE9389
+IV=9691EA44FC67CA29E50E7FF7DBC4D0CA
+PT=026BD493499B7BA99027DEF7571A8D33
+CT=5206F7CF45A59FD6444CCBB6B034CF45
+
+I=55
+KEY=52D81D6104DBF6DF3AD5DED8B2B50C46773E1D572F9A5CCC
+IV=5206F7CF45A59FD6444CCBB6B034CF45
+PT=33CA15B3D921E7752A91486DA2172EAD
+CT=F4A41D18E3EF9DE46917BADB1B5EC613
+
+I=56
+KEY=36FB680165ABD632CE71C3C0515A91A21E29A78C34C49ADF
+IV=F4A41D18E3EF9DE46917BADB1B5EC613
+PT=65F3084285AA869464237560617020ED
+CT=6C4154D3245D2546979118A36120A911
+
+I=57
+KEY=6E7548B98AA0640AA23097137507B4E489B8BF2F55E433CE
+IV=6C4154D3245D2546979118A36120A911
+PT=6CF540F502D90886588E20B8EF0BB238
+CT=2A52376A7E494ADEDD53A416F73FE9C0
+
+I=58
+KEY=A0D840A0E3CC1EA58862A0790B4EFE3A54EB1B39A2DBDA0E
+IV=2A52376A7E494ADEDD53A416F73FE9C0
+PT=708AE2375F305572CEAD0819696C7AAF
+CT=7A0EF052184147EA279839380B3DBB32
+
+I=59
+KEY=153CF68E4A1C1FCEF26C502B130FB9D073732201A9E6613C
+IV=7A0EF052184147EA279839380B3DBB32
+PT=A8267215107D3DD0B5E4B62EA9D0016B
+CT=F193B80D57571F94A4F5373149163AA1
+
+I=60
+KEY=E0B0657A66C37D8703FFE8264458A644D7861530E0F05B9D
+IV=F193B80D57571F94A4F5373149163AA1
+PT=EE4B04302CB02990F58C93F42CDF6249
+CT=A28E99815C930AC05ADA4524A7E5968C
+
+I=61
+KEY=94760F8A93926E4DA17171A718CBAC848D5C50144715CD11
+IV=A28E99815C930AC05ADA4524A7E5968C
+PT=34D122B717CBA59174C66AF0F55113CA
+CT=6F9342E7915613450E823EC9A781DAA3
+
+I=62
+KEY=0B352460A1579376CEE23340899DBFC183DE6EDDE09417B2
+IV=6F9342E7915613450E823EC9A781DAA3
+PT=D8689ED21F3EA8E29F432BEA32C5FD3B
+CT=584BB944532A830F7F8DCDBE42E7DBFC
+
+I=63
+KEY=999A5CEB73DFCC1796A98A04DAB73CCEFC53A363A273CC4E
+IV=584BB944532A830F7F8DCDBE42E7DBFC
+PT=4E87F73D46D0C0AF92AF788BD2885F61
+CT=4AC372A4D3273C71F69D50168A9235A1
+
+I=64
+KEY=42C59FFD5AA69C11DC6AF8A0099000BF0ACEF37528E1F9EF
+IV=4AC372A4D3273C71F69D50168A9235A1
+PT=324DC9C2D34E95F9DB5FC31629795006
+CT=60E53CC2D5E4900D48A0C5F7EE3BC810
+
+I=65
+KEY=843EBDEF0CEEBA5BBC8FC462DC7490B2426E3682C6DA31FF
+IV=60E53CC2D5E4900D48A0C5F7EE3BC810
+PT=8B94F018A7115B3AC6FB22125648264A
+CT=4BD7DF7DFD03A24809B751F59FACF417
+
+I=66
+KEY=98E40853FA954FF5F7581B1F217732FA4BD967775976C5E8
+IV=4BD7DF7DFD03A24809B751F59FACF417
+PT=109C734AC21ED2631CDAB5BCF67BF5AE
+CT=B7A3CF7E58A413C5065E9CFD23C750F9
+
+I=67
+KEY=5419462C5329544A40FBD46179D3213F4D87FB8A7AB19511
+IV=B7A3CF7E58A413C5065E9CFD23C750F9
+PT=8CA507ACCDB3A793CCFD4E7FA9BC1BBF
+CT=6285C3D0FD2645192C5DD046D73414CE
+
+I=68
+KEY=B58628819840885D227E17B184F5642661DA2BCCAD8581DF
+IV=6285C3D0FD2645192C5DD046D73414CE
+PT=7DE48BAD03BB9F53E19F6EADCB69DC17
+CT=583FBCEB09646CEC19D00620E5455FD5
+
+I=69
+KEY=73F7F00EF22ED1B07A41AB5A8D9108CA780A2DEC48C0DE0A
+IV=583FBCEB09646CEC19D00620E5455FD5
+PT=126D3F2A0BC1B168C671D88F6A6E59ED
+CT=886A5273055AF7AE37EFB726DC90FD9E
+
+I=70
+KEY=69735F80F0B876DAF22BF92988CBFF644FE59ACA94502394
+IV=886A5273055AF7AE37EFB726DC90FD9E
+PT=0B4D3F58D83D866A1A84AF8E0296A76A
+CT=FD068F02BB6C2611EF78CD963EF2F78F
+
+I=71
+KEY=92E5FF32D46494880F2D762B33A7D975A09D575CAAA2D41B
+IV=FD068F02BB6C2611EF78CD963EF2F78F
+PT=705667CBCC87BF3DFB96A0B224DCE252
+CT=34713FD3FA07F0B3F94EC0FB17BB465F
+
+I=72
+KEY=A0DF9DCB873A1ADC3B5C49F8C9A029C659D397A7BD199244
+IV=34713FD3FA07F0B3F94EC0FB17BB465F
+PT=4BF66F55275D6CB3323A62F9535E8E54
+CT=82C8A179661207B7FE178A266C607074
+
+I=73
+KEY=2D1604ADAA49C3FBB994E881AFB22E71A7C41D81D179E230
+IV=82C8A179661207B7FE178A266C607074
+PT=167203BBB933707A8DC999662D73D927
+CT=DCDBCC8D11C632CB220C6E95B399A1CC
+
+I=74
+KEY=7D2C4B0C0D0B001A654F240CBE741CBA85C8731462E043FC
+IV=DCDBCC8D11C632CB220C6E95B399A1CC
+PT=668F998350BDA831503A4FA1A742C3E1
+CT=8827EBFCB24470266D5C0BA05D5974A4
+
+I=75
+KEY=BE3A4CF21186C2C7ED68CFF00C306C9CE89478B43FB93758
+IV=8827EBFCB24470266D5C0BA05D5974A4
+PT=B8D1D48F3C41094EC31607FE1C8DC2DD
+CT=61E59DECE1AEFFDEB9B216828953D70F
+
+I=76
+KEY=D0CE372842DC32508C8D521CED9E934251266E36B6EAE057
+IV=61E59DECE1AEFFDEB9B216828953D70F
+PT=49A4495257D08AA56EF47BDA535AF097
+CT=ECD04FFB385CCC1D13C312A5C31810DE
+
+I=77
+KEY=E7274C14C4163169605D1DE7D5C25F5F42E57C9375F2F089
+IV=ECD04FFB385CCC1D13C312A5C31810DE
+PT=3EED6F60FD9050A737E97B3C86CA0339
+CT=D9C90455AFBF5465F89752FB6F60BDFF
+
+I=78
+KEY=71E35A00CAFB898BB99419B27A7D0B3ABA722E681A924D76
+IV=D9C90455AFBF5465F89752FB6F60BDFF
+PT=5CE6E7F07945191396C416140EEDB8E2
+CT=F6E795B326CFD6CCC0E230E4FE770878
+
+I=79
+KEY=79DFA388989B29204F738C015CB2DDF67A901E8CE4E5450E
+IV=F6E795B326CFD6CCC0E230E4FE770878
+PT=314A5784B7909F89083CF9885260A0AB
+CT=6B3A00F05F79F25E4E9EDA81034A9B7B
+
+I=80
+KEY=75F6D5983AE6D7AC24498CF103CB2FA8340EC40DE7AFDE75
+IV=6B3A00F05F79F25E4E9EDA81034A9B7B
+PT=DEC42B1A6184FDF80C297610A27DFE8C
+CT=6A19BEA8826427E309BD55BCBBE246B4
+
+I=81
+KEY=E47EEE65549BF1634E50325981AF084B3DB391B15C4D98C1
+IV=6A19BEA8826427E309BD55BCBBE246B4
+PT=63C46CFF49FF13B291883BFD6E7D26CF
+CT=738C0B0E580C0B1ED488DDE8502CB754
+
+I=82
+KEY=E6DBE45547556F403DDC3957D9A30355E93B4C590C612F95
+IV=738C0B0E580C0B1ED488DDE8502CB754
+PT=E951F5C902BD351502A50A3013CE9E23
+CT=389E33F3DAB3FAB7B2ACB853C0150B8D
+
+I=83
+KEY=EBA5A1BDF9FC558905420AA40310F9E25B97F40ACC742418
+IV=389E33F3DAB3FAB7B2ACB853C0150B8D
+PT=54EFC45B4036B60D0D7E45E8BEA93AC9
+CT=EACAE8A4B5CCBDB28ED2162670DBD4B1
+
+I=84
+KEY=B570945030615F75EF88E200B6DC4450D545E22CBCAFF0A9
+IV=EACAE8A4B5CCBDB28ED2162670DBD4B1
+PT=7F3BA6FE23AE45665ED535EDC99D0AFC
+CT=535FEA61623ECD22FA1A95BF95320252
+
+I=85
+KEY=F332D3DE8556F82EBCD70861D4E289722F5F7793299DF2FB
+IV=535FEA61623ECD22FA1A95BF95320252
+PT=8FEB6943B22437D34642478EB537A75B
+CT=CD23D928E1D3221E4D3C51670C071276
+
+I=86
+KEY=1402D325D7EBA90871F4D1493531AB6C626326F4259AE08D
+IV=CD23D928E1D3221E4D3C51670C071276
+PT=8B01EE4509B58B49E73000FB52BD5126
+CT=56DC7F1BE2CC26A369B3BCA71BF8FAB8
+
+I=87
+KEY=389C95DC5BF411B62728AE52D7FD8DCF0BD09A533E621A35
+IV=56DC7F1BE2CC26A369B3BCA71BF8FAB8
+PT=9BFE561402B07B4C2C9E46F98C1FB8BE
+CT=A059CFB443009F0ACD8E5051BD16C837
+
+I=88
+KEY=89180FBFF0A12019877161E694FD12C5C65ECA028374D202
+IV=A059CFB443009F0ACD8E5051BD16C837
+PT=C8D55810C7A22E30B1849A63AB5531AF
+CT=62CEB7D9A6D23B40CFD75990D1040BA4
+
+I=89
+KEY=08BE01CF1E620DBEE5BFD63F322F2985098993925270D9A6
+IV=62CEB7D9A6D23B40CFD75990D1040BA4
+PT=F888764A970B03BC81A60E70EEC32DA7
+CT=F6D89003ABBF003AF013EB221AF17F99
+
+I=90
+KEY=5EB9AC53FC544ADE1367463C999029BFF99A78B04881A63F
+IV=F6D89003ABBF003AF013EB221AF17F99
+PT=26A25CFC1E699D8B5607AD9CE2364760
+CT=74C9E920DC16396E89774B82E7803EF5
+
+I=91
+KEY=D8FAD6E8CDC96CEF67AEAF1C458610D170ED3332AF0198CA
+IV=74C9E920DC16396E89774B82E7803EF5
+PT=76AFDD045A30FAA486437ABB319D2631
+CT=A5B997689B88AAC0611C2963C8C1B7CE
+
+I=92
+KEY=7E774E64A5F209B2C2173874DE0EBA1111F11A5167C02F04
+IV=A5B997689B88AAC0611C2963C8C1B7CE
+PT=ABF525144D3415DEA68D988C683B655D
+CT=7A2F39D97547C3CD336577E41C0483ED
+
+I=93
+KEY=0406C21AE6E015E0B83801ADAB4979DC22946DB57BC4ACE9
+IV=7A2F39D97547C3CD336577E41C0483ED
+PT=E0C2466426630D1B7A718C7E43121C52
+CT=67899F7D0890E90383C05A7984604241
+
+I=94
+KEY=D9249A4AFDF40BEADFB19ED0A3D990DFA15437CCFFA4EEA8
+IV=67899F7D0890E90383C05A7984604241
+PT=07E55341FCD016D7DD2258501B141E0A
+CT=7B1CBCD270B09E9A1D15714D8366D174
+
+I=95
+KEY=B2242464CD4D2448A4AD2202D3690E45BC4146817CC23FDC
+IV=7B1CBCD270B09E9A1D15714D8366D174
+PT=25C6E62F44ABFF406B00BE2E30B92FA2
+CT=C86E27E5CA4461CE656D893A16477966
+
+I=96
+KEY=602CDF824C043C836CC305E7192D6F8BD92CCFBB6A8546BA
+IV=C86E27E5CA4461CE656D893A16477966
+PT=3F9D262E375F057BD208FBE6814918CB
+CT=8129054CF746CB79112942AE35142E4D
+
+I=97
+KEY=73F82C9EE4B4D0E8EDEA00ABEE6BA4F2C8058D155F9168F7
+IV=8129054CF746CB79112942AE35142E4D
+PT=7BC798EAC4C17B2D13D4F31CA8B0EC6B
+CT=36F21910B1677AF19586E55E360FB8DD
+
+I=98
+KEY=E5FC538A60CC29A3DB1819BB5F0CDE035D83684B699ED02A
+IV=36F21910B1677AF19586E55E360FB8DD
+PT=D3E39037253E5BAA96047F148478F94B
+CT=BA7CE80E0853D264368EE61D8E71EEBE
+
+I=99
+KEY=D9381EF81441B6C16164F1B5575F0C676B0D8E56E7EF3E94
+IV=BA7CE80E0853D264368EE61D8E71EEBE
+PT=DE4FFDFADB81FABB3CC44D72748D9F62
+CT=971AD82D1F46F1087B37103B4BE5DD8C
+
+I=100
+KEY=A0BF8B4740D929C9F67E29984819FD6F103A9E6DAC0AE318
+IV=971AD82D1F46F1087B37103B4BE5DD8C
+PT=FE6355B5D860522B798795BF54989F08
+CT=D17268155EE586F352BB031929441700
+
+I=101
+KEY=477A0AB591FFEC5C270C418D16FC7B9C42819D74854EF418
+IV=D17268155EE586F352BB031929441700
+PT=166A50EEE05F4A39E7C581F2D126C595
+CT=2CD84FB5B587BE8B04638A9EDBA17AE2
+
+I=102
+KEY=50005B4C4B11BFB20BD40E38A37BC51746E217EA5EEF8EFA
+IV=2CD84FB5B587BE8B04638A9EDBA17AE2
+PT=1296DC2C1741EB2A177A51F9DAEE53EE
+CT=8C2A5A31951FB2D9E8D35CD3C007B8B3
+
+I=103
+KEY=E1E88DDBA5D849DF87FE5409366477CEAE314B399EE83649
+IV=8C2A5A31951FB2D9E8D35CD3C007B8B3
+PT=57C5E1A070E3C2AEB1E8D697EEC9F66D
+CT=AA9E935BA264C9FD0C07072AF8499CD7
+
+I=104
+KEY=D465F0FB195068CF2D60C7529400BE33A2364C1366A1AA9E
+IV=AA9E935BA264C9FD0C07072AF8499CD7
+PT=77D0522670E00BD7358D7D20BC882110
+CT=A22DF6CE12C75FB99F5159A1E3E4249F
+
+I=105
+KEY=4DEB1B5E6398E4AD8F4D319C86C7E18A3D6715B285458E01
+IV=A22DF6CE12C75FB99F5159A1E3E4249F
+PT=D6F96D22896A2574998EEBA57AC88C62
+CT=B356102A9158C569469E61093146B9F0
+
+I=106
+KEY=D73E5CA946860BDD3C1B21B6179F24E37BF974BBB40337F1
+IV=B356102A9158C569469E61093146B9F0
+PT=2E72F61FC21F57A09AD547F7251EEF70
+CT=AB2BABFB88D3C3ACE4CBA81E0E250AD3
+
+I=107
+KEY=6B592CE635873DE197308A4D9F4CE74F9F32DCA5BA263D22
+IV=AB2BABFB88D3C3ACE4CBA81E0E250AD3
+PT=39B02C01155705C9BC67704F7301363C
+CT=8A4AC90E9095479F3C02DE7B08C01F1C
+
+I=108
+KEY=1026EE98CAC684081D7A43430FD9A0D0A33002DEB2E6223E
+IV=8A4AC90E9095479F3C02DE7B08C01F1C
+PT=14F49DBECEE88DBB7B7FC27EFF41B9E9
+CT=62E4E3C43938D014D90C4A1D8CD09639
+
+I=109
+KEY=20972278E7C0FFC17F9EA08736E170C47A3C48C33E36B407
+IV=62E4E3C43938D014D90C4A1D8CD09639
+PT=56EFB0EA336A674930B1CCE02D067BC9
+CT=5E8EB865BFC1999D57A67280E37CA129
+
+I=110
+KEY=2BEE1A1965A7F17C211018E28920E9592D9A3A43DD4A152E
+IV=5E8EB865BFC1999D57A67280E37CA129
+PT=9CF6F073F2F0C7CB0B79386182670EBD
+CT=D3B98A4562FAB47ED3D09C55E75EE51B
+
+I=111
+KEY=EB85E491647FD6ACF2A992A7EBDA5D27FE4AA6163A14F035
+IV=D3B98A4562FAB47ED3D09C55E75EE51B
+PT=61964EF472752F21C06BFE8801D827D0
+CT=CF3D65AEEDD747416AF436A3B909828F
+
+I=112
+KEY=E94E6286941EC36D3D94F709060D1A6694BE90B5831D72BA
+IV=CF3D65AEEDD747416AF436A3B909828F
+PT=6C0B536EA1099A4202CB8617F06115C1
+CT=5DB0625B34C01C47490B5200E8A205FC
+
+I=113
+KEY=F5D756E568CA6BA06024955232CD0621DDB5C2B56BBF7746
+IV=5DB0625B34C01C47490B5200E8A205FC
+PT=08D5CD9945D190AB1C993463FCD4A8CD
+CT=771B5C66F79E262FAAC6F92F128669CB
+
+I=114
+KEY=462C74E6E222DE77173FC934C553200E77733B9A79391E8D
+IV=771B5C66F79E262FAAC6F92F128669CB
+PT=5628EC55D7AB7634B3FB22038AE8B5D7
+CT=31C436E7CA7343A93AA0B74A38CCDAC0
+
+I=115
+KEY=5062F2489F4C68FE26FBFFD30F2063A74DD38CD041F5C44D
+IV=31C436E7CA7343A93AA0B74A38CCDAC0
+PT=F279C45DBD75C458164E86AE7D6EB689
+CT=845320B41FD6F1D4DBB36D19D8A4A268
+
+I=116
+KEY=5A27EC509FED17B6A2A8DF6710F692739660E1C999516625
+IV=845320B41FD6F1D4DBB36D19D8A4A268
+PT=7C0CB5E4FFE703260A451E1800A17F48
+CT=D8F9FB52BE1B342D6FBBB8A7FCDEFD89
+
+I=117
+KEY=E925EC8E99BF11E97A512435AEEDA65EF9DB596E658F9BAC
+IV=D8F9FB52BE1B342D6FBBB8A7FCDEFD89
+PT=187F3648643AF8E6B30200DE0652065F
+CT=240647A32D765031C79D8893CC19EBA9
+
+I=118
+KEY=5574034BCE64FADD5E576396839BF66F3E46D1FDA9967005
+IV=240647A32D765031C79D8893CC19EBA9
+PT=AF808097E0C68C8FBC51EFC557DBEB34
+CT=2A3805A7D773F9C00635779752C9CCE7
+
+I=119
+KEY=D842A9983BBDAA5E746F663154E80FAF3873A66AFB5FBCE2
+IV=2A3805A7D773F9C00635779752C9CCE7
+PT=D44486CCC61C68588D36AAD3F5D95083
+CT=2219F0C7A805BEC4A4931F84CBFFC598
+
+I=120
+KEY=CD622302BD70E2CD567696F6FCEDB16B9CE0B9EE30A0797A
+IV=2219F0C7A805BEC4A4931F84CBFFC598
+PT=67DA1BC4F2BC2F3315208A9A86CD4893
+CT=8B1F4353CF6969888BBD6654AB65C2A8
+
+I=121
+KEY=80A1D0CA7667F291DD69D5A53384D8E3175DDFBA9BC5BBD2
+IV=8B1F4353CF6969888BBD6654AB65C2A8
+PT=D114FDA8E61BEAC44DC3F3C8CB17105C
+CT=B6F0C0F016A1FA033C37D1128D9B2EF3
+
+I=122
+KEY=2C9B755C3B8B44416B991555252522E02B6A0EA8165E9521
+IV=B6F0C0F016A1FA033C37D1128D9B2EF3
+PT=738DBCE3EE7E70EAAC3AA5964DECB6D0
+CT=14FB0A67CB0729CA25152581D8C3FEEF
+
+I=123
+KEY=5D05BDFBF482E4D37F621F32EE220B2A0E7F2B29CE9D6BCE
+IV=14FB0A67CB0729CA25152581D8C3FEEF
+PT=D3186497981F294B719EC8A7CF09A092
+CT=14C988C52C7ED50EBD10219F1F58C213
+
+I=124
+KEY=9E044D195FA8557C6BAB97F7C25CDE24B36F0AB6D1C5A9DD
+IV=14C988C52C7ED50EBD10219F1F58C213
+PT=C062585284FDE540C301F0E2AB2AB1AF
+CT=1FE7E153E69F95F102624ACEB9067FA1
+
+I=125
+KEY=2B116B6F1FD581C6744C76A424C34BD5B10D407868C3D67C
+IV=1FE7E153E69F95F102624ACEB9067FA1
+PT=F18294D40CAA674DB5152676407DD4BA
+CT=AB43B2C61C9F23B96EFE293C6730A98F
+
+I=126
+KEY=EAF1AFBDD2CEDB9ADF0FC462385C686CDFF369440FF37FF3
+IV=AB43B2C61C9F23B96EFE293C6730A98F
+PT=7D465730C5422413C1E0C4D2CD1B5A5C
+CT=B1413F447CA81C678287EE2366544547
+
+I=127
+KEY=4FA6C7DA7A84D4CB6E4EFB2644F4740B5D74876769A73AB4
+IV=B1413F447CA81C678287EE2366544547
+PT=C7BFA1BFA26828F7A5576867A84A0F51
+CT=7AE90F988557F3A41BBDB4B69C5FF56A
+
+I=128
+KEY=C9B0E3C7CEF4003014A7F4BEC1A387AF46C933D1F5F8CFDE
+IV=7AE90F988557F3A41BBDB4B69C5FF56A
+PT=5173C32806105AD18616241DB470D4FB
+CT=F2EF675645D284F042FAEBE87AE3ECAE
+
+I=129
+KEY=DB855274F6CC030BE64893E88471035F0433D8398F1B2370
+IV=F2EF675645D284F042FAEBE87AE3ECAE
+PT=6DF6B7F917B2F8431235B1B33838033B
+CT=30D4F068BC2FDEC79CF81A4FA641A495
+
+I=130
+KEY=F37DBF11472A4F87D69C6380385EDD9898CBC276295A87E5
+IV=30D4F068BC2FDEC79CF81A4FA641A495
+PT=F4C98D268B7D175728F8ED65B1E64C8C
+CT=0CEB234560B935E5B08C7EA2AA4A962D
+
+I=131
+KEY=1A2F5A0827B2F861DA7740C558E7E87D2847BCD4831011C8
+IV=0CEB234560B935E5B08C7EA2AA4A962D
+PT=9873E312B815DC81E952E5196098B7E6
+CT=7BED84EFC02836F6D165AD27DEEF2B21
+
+I=132
+KEY=9C815F2A4EC42D02A19AC42A98CFDE8BF92211F35DFF3AE9
+IV=7BED84EFC02836F6D165AD27DEEF2B21
+PT=D8765DE55131DC4186AE05226976D563
+CT=C36FEDCB97DA734243A20C49D5942DD1
+
+I=133
+KEY=9A12CC40F3C185AA62F529E10F15ADC9BA801DBA886B1738
+IV=C36FEDCB97DA734243A20C49D5942DD1
+PT=18B252CEB124BD110693936ABD05A8A8
+CT=94C9A6BDB97522FACEE2E869C3C48FB0
+
+I=134
+KEY=F08C23DDC110ED40F63C8F5CB6608F337462F5D34BAF9888
+IV=94C9A6BDB97522FACEE2E869C3C48FB0
+PT=154FF810E3F0CE586A9EEF9D32D168EA
+CT=AFC8D15F80F19F942FCA22DA0DF79937
+
+I=135
+KEY=B1224FF7293C5DC559F45E03369110A75BA8D709465801BF
+IV=AFC8D15F80F19F942FCA22DA0DF79937
+PT=259A6B069CA3273C41AE6C2AE82CB085
+CT=5AADC1716B2ED4FC7CA9825A32EA2FB1
+
+I=136
+KEY=D29A829813CC5B4103599F725DBFC45B2701555374B22E0E
+IV=5AADC1716B2ED4FC7CA9825A32EA2FB1
+PT=CB78C574D9B1B9EF63B8CD6F3AF00684
+CT=EACB8D3001640F340DFB459CD8D162BD
+
+I=137
+KEY=1049116DD39F7B30E99212425CDBCB6F2AFA10CFAC634CB3
+IV=EACB8D3001640F340DFB459CD8D162BD
+PT=DF461D135DE19FA2C2D393F5C0532071
+CT=9115EB33739C04AAE22765621A8852C5
+
+I=138
+KEY=A129CBBF89658D977887F9712F47CFC5C8DD75ADB6EB1E76
+IV=9115EB33739C04AAE22765621A8852C5
+PT=E32AF908A190B95FB160DAD25AFAF6A7
+CT=B171D8AC24C6873B54F42D5DAC51ED34
+
+I=139
+KEY=EE7226D88DFA48DFC9F621DD0B8148FE9C2958F01ABAF342
+IV=B171D8AC24C6873B54F42D5DAC51ED34
+PT=0A669BB00E2123B54F5BED67049FC548
+CT=CFFC81B70593A36D022248D1CBE7FC58
+
+I=140
+KEY=C907918503B2C1C0060AA06A0E12EB939E0B1021D15D0F1A
+IV=CFFC81B70593A36D022248D1CBE7FC58
+PT=E9B1E6FA006D4CEE2775B75D8E48891F
+CT=0B3B02FC8A8D677B8077D7FDF9EB0396
+
+I=141
+KEY=E468A0560DB602C10D31A296849F8CE81E7CC7DC28B60C8C
+IV=0B3B02FC8A8D677B8077D7FDF9EB0396
+PT=AA3626C69662AE442D6F31D30E04C301
+CT=2C78C31D4B2EBAEF54CB6D04C4375196
+
+I=142
+KEY=EB8BCD80D3E35CCB2149618BCFB136074AB7AAD8EC815D1A
+IV=2C78C31D4B2EBAEF54CB6D04C4375196
+PT=5017BD9EB52514180FE36DD6DE555E0A
+CT=67D2DD54A0881186DFA6A608C036CE61
+
+I=143
+KEY=7065D92686BA37E9469BBCDF6F39278195110CD02CB7937B
+IV=67D2DD54A0881186DFA6A608C036CE61
+PT=6CBC1C2DAA3A7F7B9BEE14A655596B22
+CT=62163C88A40E7CFF7522A3DC32F30BCF
+
+I=144
+KEY=E0B4AE9D6C9A5A92248D8057CB375B7EE033AF0C1E4498B4
+IV=62163C88A40E7CFF7522A3DC32F30BCF
+PT=0F6C44EE5E2587A790D177BBEA206D7B
+CT=B84A631DE451F109C48785DE3D4099C2
+
+I=145
+KEY=DDCDB4F73AA0C8789CC7E34A2F66AA7724B42AD223040176
+IV=B84A631DE451F109C48785DE3D4099C2
+PT=EE1EA5C5340C2F263D791A6A563A92EA
+CT=D438E983DB81DA9341CE1AC45F4E7E52
+
+I=146
+KEY=813604E941CBDF6448FF0AC9F4E770E4657A30167C4A7F24
+IV=D438E983DB81DA9341CE1AC45F4E7E52
+PT=08E1F94874432DBD5CFBB01E7B6B171C
+CT=0E1C069CB75D4EDF4243D1E6D7175425
+
+I=147
+KEY=D64EB9DE5A3B546B46E30C5543BA3E3B2739E1F0AB5D2B01
+IV=0E1C069CB75D4EDF4243D1E6D7175425
+PT=CFCDC1C0EFE678FB5778BD371BF08B0F
+CT=CBC0ED542E26A1943926EF7897A79E97
+
+I=148
+KEY=D1659785D1D551948D23E1016D9C9FAF1E1F0E883CFAB596
+IV=CBC0ED542E26A1943926EF7897A79E97
+PT=1FEA178A348CAE8B072B2E5B8BEE05FF
+CT=C743A7B60EB7C24867DA82AFF15ED18A
+
+I=149
+KEY=05786C3E1FBE51864A6046B7632B5DE779C58C27CDA4641C
+IV=C743A7B60EB7C24867DA82AFF15ED18A
+PT=3A4EF6696CD26875D41DFBBBCE6B0012
+CT=EA23014227CF7B563AEFF86DB947FAC4
+
+I=150
+KEY=CE1E5D5BF32BF0CAA04347F544E426B1432A744A74E39ED8
+IV=EA23014227CF7B563AEFF86DB947FAC4
+PT=DFDF9B4032986E90CB663165EC95A14C
+CT=EAF762B60A106C03B76742E69CEE385A
+
+I=151
+KEY=F8EAC01B3F7E925A4AB425434EF44AB2F44D36ACE80DA682
+IV=EAF762B60A106C03B76742E69CEE385A
+PT=2BDC6EAB1D86311D36F49D40CC556290
+CT=E6CC0491C3509240ED848AE304CC3385
+
+I=152
+KEY=BF5AE8B244244B4BAC7821D28DA4D8F219C9BC4FECC19507
+IV=E6CC0491C3509240ED848AE304CC3385
+PT=81D4E28E02717AB347B028A97B5AD911
+CT=11EE9D22AC798AB5FEF6C6188845F425
+
+I=153
+KEY=5C6538235111334FBD96BCF021DD5247E73F7A5764846122
+IV=11EE9D22AC798AB5FEF6C6188845F425
+PT=DDE402413BB09DFBE33FD09115357804
+CT=3F054911089500FD2CD0645DBFE2A8D3
+
+I=154
+KEY=FAC914FA6B6CA1AB8293F5E1294852BACBEF1E0ADB66C9F1
+IV=3F054911089500FD2CD0645DBFE2A8D3
+PT=345343E023AC39FFA6AC2CD93A7D92E4
+CT=7538E78DE8FC09D203010C61422E6B5A
+
+I=155
+KEY=1E62F54271EA4374F7AB126CC1B45B68C8EE126B9948A2AB
+IV=7538E78DE8FC09D203010C61422E6B5A
+PT=0EC4357C476EB76AE4ABE1B81A86E2DF
+CT=3A4D0093A2B7FF807BAA6A815538507E
+
+I=156
+KEY=5AD3B884BE5653BBCDE612FF6303A4E8B34478EACC70F2D5
+IV=3A4D0093A2B7FF807BAA6A815538507E
+PT=F59FD86893B7DF7244B14DC6CFBC10CF
+CT=2C2FD7DF94FDDC2CA1C05EF5878583FF
+
+I=157
+KEY=B9039E1678902ECCE1C9C520F7FE78C41284261F4BF5712A
+IV=2C2FD7DF94FDDC2CA1C05EF5878583FF
+PT=4600E6CCD65B575AE3D02692C6C67D77
+CT=59C9FA2E4A2227C3E5B831899A3CCBFD
+
+I=158
+KEY=394A8245256D72B8B8003F0EBDDC5F07F73C1796D1C9BAD7
+IV=59C9FA2E4A2227C3E5B831899A3CCBFD
+PT=3030D8E24F7BEA0580491C535DFD5C74
+CT=DEAFC4A07A3FB5D5AA09FF6A2515AB4A
+
+I=159
+KEY=2496931DFCFF2E7166AFFBAEC7E3EAD25D35E8FCF4DC119D
+IV=DEAFC4A07A3FB5D5AA09FF6A2515AB4A
+PT=63CD1CC241B267791DDC1158D9925CC9
+CT=B1B0AED275FCE241B5726E943B37C130
+
+I=160
+KEY=53CBA419E5CED1C8D71F557CB21F0893E8478668CFEBD0AD
+IV=B1B0AED275FCE241B5726E943B37C130
+PT=85F4E06A05C8704A775D37041931FFB9
+CT=B0DFD3EF3AF538791E69AF59CAA7B8CC
+
+I=161
+KEY=DFB0E5440EB582F667C0869388EA30EAF62E2931054C6861
+IV=B0DFD3EF3AF538791E69AF59CAA7B8CC
+PT=B7BDA6C504797C8B8C7B415DEB7B533E
+CT=220F810B0D5A9ED8794932D0BF6150D6
+
+I=162
+KEY=B26A70894070BC9B45CF079885B0AE328F671BE1BA2D38B7
+IV=220F810B0D5A9ED8794932D0BF6150D6
+PT=0113567BFAC19EB86DDA95CD4EC53E6D
+CT=56C77682CA1A041B312061F3FB9A1A59
+
+I=163
+KEY=36EDA74B7133D5871308711A4FAAAA29BE477A1241B722EE
+IV=56C77682CA1A041B312061F3FB9A1A59
+PT=4D39AD87258968FA8487D7C23143691C
+CT=4F18208E63B2D84CC7A0707617DD7B63
+
+I=164
+KEY=F7589312CE997AFE5C1051942C18726579E70A64566A598D
+IV=4F18208E63B2D84CC7A0707617DD7B63
+PT=1B82F5C849E0F965C1B53459BFAAAF79
+CT=85CE0310DEFB36474B38C4347D7EEE8B
+
+I=165
+KEY=F770FC7B1E183E31D9DE5284F2E3442232DFCE502B14B706
+IV=85CE0310DEFB36474B38C4347D7EEE8B
+PT=7B56EBC47E780FB000286F69D08144CF
+CT=CB5AE674DB1426618F577BBD63309EA4
+
+I=166
+KEY=79AD3040CCC9FD521284B4F029F76243BD88B5ED482429A2
+IV=CB5AE674DB1426618F577BBD63309EA4
+PT=47A5B213BC3DF61B8EDDCC3BD2D1C363
+CT=1E26AB2D8B156913995FCAC1ABD99D68
+
+I=167
+KEY=10BB9597F823B61F0CA21FDDA2E20B5024D77F2CE3FDB4CA
+IV=1E26AB2D8B156913995FCAC1ABD99D68
+PT=D31FC11C9FD6E7F86916A5D734EA4B4D
+CT=84E0E24F155E5EFCA9AE9C5F2F26BD25
+
+I=168
+KEY=E1264A2AD33800FF8842FD92B7BC55AC8D79E373CCDB09EF
+IV=84E0E24F155E5EFCA9AE9C5F2F26BD25
+PT=F77FE11AE4BEB403F19DDFBD2B1BB6E0
+CT=B41973B0D807A43A822EB57555B818D4
+
+I=169
+KEY=A19ABDD25ED272693C5B8E226FBBF1960F5756069963113B
+IV=B41973B0D807A43A822EB57555B818D4
+PT=FECAAA8EA9C1883640BCF7F88DEA7296
+CT=949634E68FB9086AE623EAF5E867D4A5
+
+I=170
+KEY=DD904ECCC94F64D0A8CDBAC4E002F9FCE974BCF37104C59E
+IV=949634E68FB9086AE623EAF5E867D4A5
+PT=E8A413C2ADB97D387C0AF31E979D16B9
+CT=96BE2B618F8A961E5DC892F429A8B6FC
+
+I=171
+KEY=1B83C20396D7D0D33E7391A56F886FE2B4BC2E0758AC7362
+IV=96BE2B618F8A961E5DC892F429A8B6FC
+PT=1408434BF0C3432BC6138CCF5F98B403
+CT=C0A9596F56E48F459D2C405F47DCA44C
+
+I=172
+KEY=B04C71DBEA60DB15FEDAC8CA396CE0A729906E581F70D72E
+IV=C0A9596F56E48F459D2C405F47DCA44C
+PT=5E7F070C7EE8A852ABCFB3D87CB70BC6
+CT=A4739C93911C72C959E89544500843BD
+
+I=173
+KEY=9BFC8026BC1D965B5AA95459A870926E7078FB1C4F789493
+IV=A4739C93911C72C959E89544500843BD
+PT=718C23D1F537A6E72BB0F1FD567D4D4E
+CT=4D581200B1E446CC3AD306138BF2898B
+
+I=174
+KEY=FEA9DF8F4FECB3ED17F146591994D4A24AABFD0FC48A1D18
+IV=4D581200B1E446CC3AD306138BF2898B
+PT=E4DD231D871795E065555FA9F3F125B6
+CT=E53EFC19D8048073167B1473C5EBA6D9
+
+I=175
+KEY=62DF036D6F96D937F2CFBA40C19054D15CD0E97C0161BBC1
+IV=E53EFC19D8048073167B1473C5EBA6D9
+PT=9AB809114F10C3FD9C76DCE2207A6ADA
+CT=BDB0C3D9732DE5813C4C72CF01FF5194
+
+I=176
+KEY=CFEF04F0343587004F7F7999B2BDB150609C9BB3009EEA55
+IV=BDB0C3D9732DE5813C4C72CF01FF5194
+PT=B4CFE094F8B4EEE5AD30079D5BA35E37
+CT=D00B5B980D8B10DF3D7D4C0BE5975C1C
+
+I=177
+KEY=CBF2C475C11FA6B89F742201BF36A18F5DE1D7B8E509B649
+IV=D00B5B980D8B10DF3D7D4C0BE5975C1C
+PT=34B39728291953DC041DC085F52A21B8
+CT=ADF5CDFDCC23AD8AD111454B2DB69013
+
+I=178
+KEY=C96820A08056F7C23281EFFC73150C058CF092F3C8BF265A
+IV=ADF5CDFDCC23AD8AD111454B2DB69013
+PT=4C8152CCAA0A23AC029AE4D54149517A
+CT=F070979F68BAEBBD6CE8CE8A549C0E12
+
+I=179
+KEY=61A6BBDB58B4C9D4C2F178631BAFE7B8E0185C799C232848
+IV=F070979F68BAEBBD6CE8CE8A549C0E12
+PT=0B6AF20EF8550A1BA8CE9B7BD8E23E16
+CT=8A75D276384A4F468B459466A304D418
+
+I=180
+KEY=D3EC560DE8B1BBEE4884AA1523E5A8FE6B5DC81F3F27FC50
+IV=8A75D276384A4F468B459466A304D418
+PT=259A18BABFD09145B24AEDD6B005723A
+CT=B7C04F66EB771CBD97F948098E23C655
+
+I=181
+KEY=16FE806749FDDF8CFF44E573C892B443FCA48016B1043A05
+IV=B7C04F66EB771CBD97F948098E23C655
+PT=E00B5E4B3D9E64D0C512D66AA14C6462
+CT=29FB08289BD19BCC0FEB0F433D5CACEE
+
+I=182
+KEY=9CC345922C8912D5D6BFED5B53432F8FF34F8F558C5896EB
+IV=29FB08289BD19BCC0FEB0F433D5CACEE
+PT=07BAA266554EAE0C8A3DC5F56574CD59
+CT=495C245E2F3CC52499B9C1AD7C4484BA
+
+I=183
+KEY=7DDDCF7DE759FDEC9FE3C9057C7FEAAB6AF64EF8F01C1251
+IV=495C245E2F3CC52499B9C1AD7C4484BA
+PT=2E5360D5563EB7D4E11E8AEFCBD0EF39
+CT=68267051421D3AFA19A2E43D501B940B
+
+I=184
+KEY=4BA2EAD4106DD4B7F7C5B9543E62D0517354AAC5A007865A
+IV=68267051421D3AFA19A2E43D501B940B
+PT=050EBC6942F92D95367F25A9F734295B
+CT=1781558A2A8B7C29AC82D6610B67E3CF
+
+I=185
+KEY=CFCCD4ECD20E051CE044ECDE14E9AC78DFD67CA4AB606595
+IV=1781558A2A8B7C29AC82D6610B67E3CF
+PT=1AC90B21EB197E26846E3E38C263D1AB
+CT=BF5FE87A2E882A64493850EC3A0E93A5
+
+I=186
+KEY=C9EA5F992C77DD9C5F1B04A43A61861C96EE2C48916EF630
+IV=BF5FE87A2E882A64493850EC3A0E93A5
+PT=58F997704D085DC506268B75FE79D880
+CT=8F43A961964E3452094E8E71295177CD
+
+I=187
+KEY=1136648F9E0A53C3D058ADC5AC2FB24E9FA0A239B83F81FD
+IV=8F43A961964E3452094E8E71295177CD
+PT=086041AB29E423EFD8DC3B16B27D8E5F
+CT=BF69230BAB6200B7828DC04A13B88E83
+
+I=188
+KEY=47040E2D6DFBE3006F318ECE074DB2F91D2D6273AB870F7E
+IV=BF69230BAB6200B7828DC04A13B88E83
+PT=57865A8650D3202056326AA2F3F1B0C3
+CT=A012FAEE65E2C4F0AC22CB63AB75E35D
+
+I=189
+KEY=868F8310E79C0473CF23742062AF7609B10FA91000F2EC23
+IV=A012FAEE65E2C4F0AC22CB63AB75E35D
+PT=F3ABB47DAE94B82EC18B8D3D8A67E773
+CT=F35BBD3C516F86384DA3BB6B5CCC8B37
+
+I=190
+KEY=5C71ADCE480714DA3C78C91C33C0F031FCAC127B5C3E6714
+IV=F35BBD3C516F86384DA3BB6B5CCC8B37
+PT=CDB3E57FA6DDFF9FDAFE2EDEAF9B10A9
+CT=627A15E65B37C2B9575E8A781271AE64
+
+I=191
+KEY=B603092BC5FD004F5E02DCFA68F73288ABF298034E4FC970
+IV=627A15E65B37C2B9575E8A781271AE64
+PT=7E04F9A0F723DF00EA72A4E58DFA1495
+CT=15427D27E783A5476345C83F3E8A3319
+
+I=192
+KEY=4DB5A9F825C5E8C24B40A1DD8F7497CFC8B7503C70C5FA69
+IV=15427D27E783A5476345C83F3E8A3319
+PT=842B94BE25E8747BFBB6A0D3E038E88D
+CT=35812AFD1A90B0B7D52B45EAD9CAF083
+
+I=193
+KEY=D4F2CCC0734F9ACD7EC18B2095E427781D9C15D6A90F0AEA
+IV=35812AFD1A90B0B7D52B45EAD9CAF083
+PT=3FAB7D4C741B8CD499476538568A720F
+CT=C1A59CD3D9E6650F0D16947D26BFC20D
+
+I=194
+KEY=CB28A8313E133469BF6417F34C024277108A81AB8FB0C8E7
+IV=C1A59CD3D9E6650F0D16947D26BFC20D
+PT=37AC888DCE5CDFD31FDA64F14D5CAEA4
+CT=CB0313E9A046711866CA65702A45CDB6
+
+I=195
+KEY=C5BFEB8246ABAF467467041AEC44336F7640E4DBA5F50551
+IV=CB0313E9A046711866CA65702A45CDB6
+PT=326C9E3EB49138ED0E9743B378B89B2F
+CT=ACE8FC6C6ABBC8124FE35C7976585DF6
+
+I=196
+KEY=110891F8FDF0F254D88FF87686FFFB7D39A3B8A2D3AD58A7
+IV=ACE8FC6C6ABBC8124FE35C7976585DF6
+PT=964239EB84C57F61D4B77A7ABB5B5D12
+CT=0762EF13B80A8B77D04AF797B67D5AA6
+
+I=197
+KEY=EFF558976586AC91DFED17653EF5700AE9E94F3565D00201
+IV=0762EF13B80A8B77D04AF797B67D5AA6
+PT=5ECA17ADFE3C2C21FEFDC96F98765EC5
+CT=B60CC9CD9DE93E2A6FB0B59369B1628E
+
+I=198
+KEY=4494A36EABE3555E69E1DEA8A31C4E208659FAA60C61608F
+IV=B60CC9CD9DE93E2A6FB0B59369B1628E
+PT=7A659E803888296BAB61FBF9CE65F9CF
+CT=73258A43C7DA66FFE4DC9384FC7A60C1
+
+I=199
+KEY=1780249B48B8F7561AC454EB64C628DF62856922F01B004E
+IV=73258A43C7DA66FFE4DC9384FC7A60C1
+PT=8D9C3DCF612320B4531487F5E35BA208
+CT=F0F5D51C06F2D900CC4BE8D3512CA4B6
+
+I=200
+KEY=9FF03D1E23BD9959EA3181F76234F1DFAECE81F1A137A4F8
+IV=F0F5D51C06F2D900CC4BE8D3512CA4B6
+PT=F002AEC878B80A0B887019856B056E0F
+CT=E1321C52A51D9345296A0EF2A9DC9CC5
+
+I=201
+KEY=6042967162EDA50B0B039DA5C729629A87A48F0308EB383D
+IV=E1321C52A51D9345296A0EF2A9DC9CC5
+PT=C5EA4A519D9BAF8FFFB2AB6F41503C52
+CT=ED79D8FC9C60B583E29D0A65A6A5F321
+
+I=202
+KEY=250C416206B9D0A9E67A45595B49D71965398566AE4ECB1C
+IV=ED79D8FC9C60B583E29D0A65A6A5F321
+PT=34D771B44B3943DE454ED713645475A2
+CT=7A08F9096109535C262407EB323EF7BC
+
+I=203
+KEY=6357BC1B7B12F1C09C72BC503A408445431D828D9C703CA0
+IV=7A08F9096109535C262407EB323EF7BC
+PT=60A1EEAE2B16841A465BFD797DAB2169
+CT=24C7F1A39F8B2F03C256F5C59B69C31A
+
+I=204
+KEY=18BF29D147A9675BB8B54DF3A5CBAB46814B77480719FFBA
+IV=24C7F1A39F8B2F03C256F5C59B69C31A
+PT=BFD7B314F959298B7BE895CA3CBB969B
+CT=7DDA5DF3CC7C69AA490FB597888396B2
+
+I=205
+KEY=E8B13C48FBABCD19C56F100069B7C2ECC844C2DF8F9A6908
+IV=7DDA5DF3CC7C69AA490FB597888396B2
+PT=23F8A60BD2354901F00E1599BC02AA42
+CT=04CEB4BE252293A822C77B9C4C27822B
+
+I=206
+KEY=BF275C4D9FC54BC0C1A1A4BE4C955144EA83B943C3BDEB23
+IV=04CEB4BE252293A822C77B9C4C27822B
+PT=2182C0577EAA3C2A57966005646E86D9
+CT=0F24034642E351984620BB2647F5D649
+
+I=207
+KEY=40B459144A6415C2CE85A7F80E7600DCACA3026584483D6A
+IV=0F24034642E351984620BB2647F5D649
+PT=F59318D1D3D9A9E0FF930559D5A15E02
+CT=DB98808C46668D79AB059C5554CEEB1A
+
+I=208
+KEY=D5A01AB42D709E6A151D277448108DA507A69E30D086D670
+IV=DB98808C46668D79AB059C5554CEEB1A
+PT=49CF142E621D1A8D951443A067148BA8
+CT=15C32FE5E9BCA5F8D09EA2E4D145FE3D
+
+I=209
+KEY=8191AB3C11B4B72700DE0891A1AC285DD7383CD401C3284D
+IV=15C32FE5E9BCA5F8D09EA2E4D145FE3D
+PT=5C1E9B721987B8BF5431B1883CC4294D
+CT=AA7CA217D0514CA4F20C50293121E8D8
+
+I=210
+KEY=69D24875B8A5B5D1AAA2AA8671FD64F925346CFD30E2C095
+IV=AA7CA217D0514CA4F20C50293121E8D8
+PT=8239553D8FB88E17E843E349A91102F6
+CT=C4068B901CB07904F843BF6F3CDC4FF8
+
+I=211
+KEY=12BAE3B5B2C03E746EA421166D4D1DFDDD77D3920C3E8F6D
+IV=C4068B901CB07904F843BF6F3CDC4FF8
+PT=80D797C671D3BFF67B68ABC00A658BA5
+CT=9F835417C4D622DB52651897DC23E1C3
+
+I=212
+KEY=1A0CFD7FA1284652F1277501A99B3F268F12CB05D01D6EAE
+IV=9F835417C4D622DB52651897DC23E1C3
+PT=C36513D78FBBFDCC08B61ECA13E87826
+CT=0156C998E85BE92F0EF998442204EB19
+
+I=213
+KEY=7829D1FE113103B0F071BC9941C0D60981EB5341F21985B7
+IV=0156C998E85BE92F0EF998442204EB19
+PT=000894F1AF39A67562252C81B01945E2
+CT=6A554057C0A3EB723B693258BC5E899D
+
+I=214
+KEY=D719D37FC9087D2F9A24FCCE81633D7BBA8261194E470C2A
+IV=6A554057C0A3EB723B693258BC5E899D
+PT=B92413276BF142D0AF300281D8397E9F
+CT=395F80E405813D97576954A23C77C2CA
+
+I=215
+KEY=39E173517A321A5AA37B7C2A84E200ECEDEB35BB7230CEE0
+IV=395F80E405813D97576954A23C77C2CA
+PT=AA95F2BD255DBE23EEF8A02EB33A6775
+CT=1B1BC5D3DABD536E91177EF1BF2B7E39
+
+I=216
+KEY=EE1FB67D907C597BB860B9F95E5F53827CFC4B4ACD1BB0D9
+IV=1B1BC5D3DABD536E91177EF1BF2B7E39
+PT=985E81E0BF5FF6EFD7FEC52CEA4E4321
+CT=20F42326749CC7CCD54188DEA46F4EC1
+
+I=217
+KEY=41D333EC5E537B8098949ADF2AC3944EA9BDC3946974FE18
+IV=20F42326749CC7CCD54188DEA46F4EC1
+PT=901FD7D22F220608AFCC8591CE2F22FB
+CT=AFFC6F2668097B58A0CFF619A3FDD1CB
+
+I=218
+KEY=F6E392EF75572C6A3768F5F942CAEF160972358DCA892FD3
+IV=AFFC6F2668097B58A0CFF619A3FDD1CB
+PT=45AEB51360C50AB1B730A1032B0457EA
+CT=1B75CF440CE8521069599B7889F21C1D
+
+I=219
+KEY=47C82CF46472D3732C1D3ABD4E22BD06602BAEF5437B33CE
+IV=1B75CF440CE8521069599B7889F21C1D
+PT=7E931056CC33D22CB12BBE1B1125FF19
+CT=F6079ADBAA8D28F371F0156B170FB7BD
+
+I=220
+KEY=DDA62A9922B04902DA1AA066E4AF95F511DBBB9E54748473
+IV=F6079ADBAA8D28F371F0156B170FB7BD
+PT=2BE3DA337C9187109A6E066D46C29A71
+CT=7D2FC16B26971DDC20C6F7510C47B352
+
+I=221
+KEY=570C8CA5236A2E65A735610DC2388829311D4CCF58333721
+IV=7D2FC16B26971DDC20C6F7510C47B352
+PT=43596064590570F88AAAA63C01DA6767
+CT=5FBA845FB25FE6AE015E4E8A228ED645
+
+I=222
+KEY=6CEA158ED663A4B7F88FE55270676E87304302457ABDE164
+IV=5FBA845FB25FE6AE015E4E8A228ED645
+PT=1E265F0AA9A20C603BE6992BF5098AD2
+CT=A729E250D736A43966DD0D9C461ECEC0
+
+I=223
+KEY=AACCE3387C0DF35D5FA60702A751CABE569E0FD93CA32FA4
+IV=A729E250D736A43966DD0D9C461ECEC0
+PT=B08AAE113CCE6226C626F6B6AA6E57EA
+CT=A8192E964A74A6ABDB463ECFA483A1E3
+
+I=224
+KEY=207F19ABDA13F728F7BF2994ED256C158DD8311698208E47
+IV=A8192E964A74A6ABDB463ECFA483A1E3
+PT=858CF92E6B1793448AB3FA93A61E0475
+CT=060C7CCCD58E6348518161C7878AA71B
+
+I=225
+KEY=AB05AD81CF07091AF1B3555838AB0F5DDC5950D11FAA295C
+IV=060C7CCCD58E6348518161C7878AA71B
+PT=424D175035503C728B7AB42A1514FE32
+CT=8ECAA12830B0C5B4C6950E69AFD31B66
+
+I=226
+KEY=3A8E1CC01464AF9B7F79F470081BCAE91ACC5EB8B079323A
+IV=8ECAA12830B0C5B4C6950E69AFD31B66
+PT=6E5A94391F1FE5A9918BB141DB63A681
+CT=65C3A891192324A7FA3C882B2C09CB8D
+
+I=227
+KEY=8004AB13CF38B3ED1ABA5CE11138EE4EE0F0D6939C70F9B7
+IV=65C3A891192324A7FA3C882B2C09CB8D
+PT=584E219335CA4642BA8AB7D3DB5C1C76
+CT=F29F8735A403414621F2100AF38A500C
+
+I=228
+KEY=D37BB962CFC53E77E825DBD4B53BAF08C102C6996FFAA9BB
+IV=F29F8735A403414621F2100AF38A500C
+PT=CCB996C23C627D4D537F127100FD8D9A
+CT=9C6A7655E25E9231E46C0D3B57C7FCAB
+
+I=229
+KEY=C23B3C983C79179A744FAD8157653D39256ECBA2383D5510
+IV=9C6A7655E25E9231E46C0D3B57C7FCAB
+PT=5D727E12D3932F56114085FAF3BC29ED
+CT=6C5AA7364755AF599AB6F86EC8B24C52
+
+I=230
+KEY=4462CD1DD817170C18150AB710309260BFD833CCF08F1942
+IV=6C5AA7364755AF599AB6F86EC8B24C52
+PT=D7A99C8F3BC37AD08659F185E46E0096
+CT=821D7EAC8FD041C0C8CF1011661FBB9E
+
+I=231
+KEY=1BA52BEF2B010D169A08741B9FE0D3A0771723DD9690A2DC
+IV=821D7EAC8FD041C0C8CF1011661FBB9E
+PT=704F3525510FCC745FC7E6F2F3161A1A
+CT=44591D71D64FC38010E402874853E9BC
+
+I=232
+KEY=C6A6818229CC65E6DE51696A49AF102067F3215ADEC34B60
+IV=44591D71D64FC38010E402874853E9BC
+PT=5D5769AE155C9F43DD03AA6D02CD68F0
+CT=E5647FF6C843543E484FC13B58A345B9
+
+I=233
+KEY=41F27DD5905B299C3B35169C81EC441E2FBCE06186600ED9
+IV=E5647FF6C843543E484FC13B58A345B9
+PT=ADF29030DFDFCCEE8754FC57B9974C7A
+CT=E6EA42E2F046D3ED75081A50770563D1
+
+I=234
+KEY=3A8018855EDC80D2DDDF547E71AA97F35AB4FA31F1656D08
+IV=E6EA42E2F046D3ED75081A50770563D1
+PT=096F74717D5583477B726550CE87A94E
+CT=D75682FE37396887659E87895F1C6441
+
+I=235
+KEY=6C94C2634142DA310A89D6804693FF743F2A7DB8AE790949
+IV=D75682FE37396887659E87895F1C6441
+PT=F1B527DD4935FBDE5614DAE61F9E5AE3
+CT=15755CFE84E113AA751E4D5BB098ABC7
+
+I=236
+KEY=4BA407D7C6426C641FFC8A7EC272ECDE4A3430E31EE1A28E
+IV=15755CFE84E113AA751E4D5BB098ABC7
+PT=7C4433DCC314DBD72730C5B48700B655
+CT=B048F209CE1B1FAEC33392D2D8F326A1
+
+I=237
+KEY=A56FD7BCEEA55474AFB478770C69F3708907A231C612842F
+IV=B048F209CE1B1FAEC33392D2D8F326A1
+PT=D40C7CD8D80C8C6CEECBD06B28E73810
+CT=8E1F4830F94004C286C39D0EC014A963
+
+I=238
+KEY=0730B7B664CFD1E321AB3047F529F7B20FC43F3F06062D4C
+IV=8E1F4830F94004C286C39D0EC014A963
+PT=B16772FE8C8A573FA25F600A8A6A8597
+CT=3FB92771D2BE2D33C40AB0409998B229
+
+I=239
+KEY=0A08E43B13C57EB41E1217362797DA81CBCE8F7F9F9E9F65
+IV=3FB92771D2BE2D33C40AB0409998B229
+PT=D4883476825EA2D30D38538D770AAF57
+CT=190106DE79836016C57A16BBBA6893D2
+
+I=240
+KEY=195B7E1B67872B0D071311E85E14BA970EB499C425F60CB7
+IV=190106DE79836016C57A16BBBA6893D2
+PT=3B8F4F140FDFFB6B13539A20744255B9
+CT=C06398537B4F534203D57184543E6516
+
+I=241
+KEY=BE0C4A8A9B581D16C77089BB255BE9D50D61E84071C869A1
+IV=C06398537B4F534203D57184543E6516
+PT=E50D127AE258061DA7573491FCDF361B
+CT=FF615CCC9F2D3DBB3074C835ECE4224E
+
+I=242
+KEY=662A224DAB1233C83811D577BA76D46E3D1520759D2C4BEF
+IV=FF615CCC9F2D3DBB3074C835ECE4224E
+PT=347C976D20470968D82668C7304A2EDE
+CT=B5FB1BCCBC838B87FDB10FEFE6CDC45B
+
+I=243
+KEY=F4F3B47D9CC8BA798DEACEBB06F55FE9C0A42F9A7BE18FB4
+IV=B5FB1BCCBC838B87FDB10FEFE6CDC45B
+PT=BC276D1002C5DD8292D9963037DA89B1
+CT=151F88A44A76568FAC756011B827778D
+
+I=244
+KEY=7EA3C03193B737DE98F5461F4C8309666CD14F8BC3C6F839
+IV=151F88A44A76568FAC756011B827778D
+PT=BCD9054596EE644E8A50744C0F7F8DA7
+CT=C1B0B6FDD717881442496794A2C890F2
+
+I=245
+KEY=C4D94D5C4169EE4B5945F0E29B9481722E98281F610E68CB
+IV=C1B0B6FDD717881442496794A2C890F2
+PT=3D7F68D3014F3BEDBA7A8D6DD2DED995
+CT=181100A04881DCF9813E4A22C6C1BB3B
+
+I=246
+KEY=A9A9483D9FC46DD34154F042D3155D8BAFA6623DA7CFD3F0
+IV=181100A04881DCF9813E4A22C6C1BB3B
+PT=0FE2E2A97DFFB4966D700561DEAD8398
+CT=AA4BEC4007C38C7B86B6F9EED33E5EB1
+
+I=247
+KEY=5F08A3C09F4AE90BEB1F1C02D4D6D1F029109BD374F18D41
+IV=AA4BEC4007C38C7B86B6F9EED33E5EB1
+PT=C2392264CE43C57AF6A1EBFD008E84D8
+CT=A0756CCDA72462CD89DF9990C0FE6676
+
+I=248
+KEY=6A1A4F2D25DFC9F94B6A70CF73F2B33DA0CF0243B40FEB37
+IV=A0756CCDA72462CD89DF9990C0FE6676
+PT=A6650A3432CCA74A3512ECEDBA9520F2
+CT=F5044AECC6F35C99FCDBA26DD15E1474
+
+I=249
+KEY=B475174A46D0CDC2BE6E3A23B501EFA45C14A02E6551FF43
+IV=F5044AECC6F35C99FCDBA26DD15E1474
+PT=07967DE17DEB720CDE6F5867630F043B
+CT=60645B559E7321D7FA8A3F925CFC0FA4
+
+I=250
+KEY=8DBB9D8A4A2E7E61DE0A61762B72CE73A69E9FBC39ADF0E7
+IV=60645B559E7321D7FA8A3F925CFC0FA4
+PT=D8D3FD2077545DD039CE8AC00CFEB3A3
+CT=C4C6FD53A2572D643AA631FB85B84D0B
+
+I=251
+KEY=97D34E4B3B9E081A1ACC9C258925E3179C38AE47BC15BDEC
+IV=C4C6FD53A2572D643AA631FB85B84D0B
+PT=F31D8F3C8AC67E081A68D3C171B0767B
+CT=E1A0E460E2D1483FE954F26F45CCE7A0
+
+I=252
+KEY=5372C72A4ABF72D9FB6C78456BF4AB28756C5C28F9D95A4C
+IV=E1A0E460E2D1483FE954F26F45CCE7A0
+PT=422C5429CE7BD811C4A1896171217AC3
+CT=2695923CFB2141F05A0F144FF021BD36
+
+I=253
+KEY=A8CA6DB8A8758322DDF9EA7990D5EAD82F63486709F8E77A
+IV=2695923CFB2141F05A0F144FF021BD36
+PT=780771C65FCB907BFBB8AA92E2CAF1FB
+CT=A9820B527F71E95CC1F53033149FB26F
+
+I=254
+KEY=62ABF1F4178F3C73747BE12BEFA40384EE9678541D675515
+IV=A9820B527F71E95CC1F53033149FB26F
+PT=CCC14BD8DF1CA8A4CA619C4CBFFABF51
+CT=2BAD4E8CD7D6420D36DC2F8E77DCA072
+
+I=255
+KEY=C79B767D31D9F0FC5FD6AFA738724189D84A57DA6ABBF567
+IV=2BAD4E8CD7D6420D36DC2F8E77DCA072
+PT=1EFF63C71B10DCC7A53087892656CC8F
+CT=C21303AAB04E2CAF1893396DD405B265
+
+I=256
+KEY=1F3C7FF71340DEEC9DC5AC0D883C6D26C0D96EB7BEBE4702
+IV=C21303AAB04E2CAF1893396DD405B265
+PT=209270B7768E5553D8A7098A22992E10
+CT=B220025B5307C9D5D1EEB4B427E7263F
+
+I=257
+KEY=867CB381E6D532B32FE5AE56DB3BA4F31137DA039959613D
+IV=B220025B5307C9D5D1EEB4B427E7263F
+PT=8546A6C9B4CEF0229940CC76F595EC5F
+CT=B925C660EBE409050DA369E58C601F4D
+
+I=258
+KEY=33B33F93622E509296C0683630DFADF61C94B3E615397E70
+IV=B925C660EBE409050DA369E58C601F4D
+PT=1F4930242C2951C4B5CF8C1284FB6221
+CT=67DA7B4BEAB2152D21C54F389F9282D4
+
+I=259
+KEY=E8EC3394AF44DD34F11A137DDA6DB8DB3D51FCDE8AABFCA4
+IV=67DA7B4BEAB2152D21C54F389F9282D4
+PT=41611AE93BE61306DB5F0C07CD6A8DA6
+CT=4C116D3ED0B021129CCD1764D132A72D
+
+I=260
+KEY=92F61F4CB5794268BD0B7E430ADD99C9A19CEBBA5B995B89
+IV=4C116D3ED0B021129CCD1764D132A72D
+PT=E7B1E63FBD5B4CA77A1A2CD81A3D9F5C
+CT=FE1C3096C14AF2A4DC840207BFFFC0AF
+
+I=261
+KEY=08DC826B4DDBAC4D43174ED5CB976B6D7D18E9BDE4669B26
+IV=FE1C3096C14AF2A4DC840207BFFFC0AF
+PT=9A0D034B1931FD599A2A9D27F8A2EE25
+CT=ED500812A10CC6C4EED0836871F85AA9
+
+I=262
+KEY=486EBC43A876FF2AAE4746C76A9BADA993C86AD5959EC18F
+IV=ED500812A10CC6C4EED0836871F85AA9
+PT=8237641B58069AFD40B23E28E5AD5367
+CT=0AD90C1C13E7C1318057A417C0B9B97C
+
+I=263
+KEY=F340D2CAC4645595A49E4ADB797C6C98139FCEC2552778F3
+IV=0AD90C1C13E7C1318057A417C0B9B97C
+PT=905119E1F11E4B04BB2E6E896C12AABF
+CT=B260FFA5806A4A6D8845FA6146A565ED
+
+I=264
+KEY=DF326741BD1EE2FF16FEB57EF91626F59BDA34A313821D1E
+IV=B260FFA5806A4A6D8845FA6146A565ED
+PT=4F639233904531162C72B58B797AB76A
+CT=2D27A1A3968E30EBCA463C8709D0FD83
+
+I=265
+KEY=D4C684692E05983C3BD914DD6F98161E519C08241A52E09D
+IV=2D27A1A3968E30EBCA463C8709D0FD83
+PT=428B700FB3CD18790BF4E328931B7AC3
+CT=D350CCF3B440006C9F18E99DD5B69920
+
+I=266
+KEY=9DD5275FFDCD5D2DE889D82EDBD81672CE84E1B9CFE479BD
+IV=D350CCF3B440006C9F18E99DD5B69920
+PT=97F4A6256A9E22FB4913A336D3C8C511
+CT=F5A0571EB7E4719B862EBC47141EA319
+
+I=267
+KEY=0A3B329A4973D7A21D298F306C3C67E948AA5DFEDBFADAA4
+IV=F5A0571EB7E4719B862EBC47141EA319
+PT=E355F7EBA4DAC16B97EE15C5B4BE8A8F
+CT=4F18730073D3E78CAD356441F1317B2D
+
+I=268
+KEY=3BB3A19EF4EB8A755231FC301FEF8065E59F39BF2ACBA189
+IV=4F18730073D3E78CAD356441F1317B2D
+PT=A20B3B6C41E88E9D31889304BD985DD7
+CT=AEAECB17B9009AAF1E4E9CC02653194B
+
+I=269
+KEY=4B9DDD2F821CE4D1FC9F3727A6EF1ACAFBD1A57F0C98B8C2
+IV=AEAECB17B9009AAF1E4E9CC02653194B
+PT=5D2E4A96F9BB4AD4702E7CB176F76EA4
+CT=26851709960A42D5711EBDC7D40535FC
+
+I=270
+KEY=D7273499C5BA2842DA1A202E30E5581F8ACF18B8D89D8D3E
+IV=26851709960A42D5711EBDC7D40535FC
+PT=202534EA0A1952A19CBAE9B647A6CC93
+CT=FF8BFFB98EDA7E54664AE879551B5497
+
+I=271
+KEY=7870FF6B66070AB02591DF97BE3F264BEC85F0C18D86D9A9
+IV=FF8BFFB98EDA7E54664AE879551B5497
+PT=365CFE282B9508CFAF57CBF2A3BD22F2
+CT=D0809C84A97221E6F8DCB483B38EC7E1
+
+I=272
+KEY=F4E6DFDF4A081200F5114313174D07AD145944423E081E48
+IV=D0809C84A97221E6F8DCB483B38EC7E1
+PT=915323F59134AB838C9620B42C0F18B0
+CT=DC8A24B8DECF81E0412DBF10127119EC
+
+I=273
+KEY=336A7C81A4BE3FE9299B67ABC982864D5574FB522C7907A4
+IV=DC8A24B8DECF81E0412DBF10127119EC
+PT=0FC4387E49F666B8C78CA35EEEB62DE9
+CT=84E370DF6CA478BA85FC0874393CE442
+
+I=274
+KEY=F8ADC39E17CDDEB0AD781774A526FEF7D088F3261545E3E6
+IV=84E370DF6CA478BA85FC0874393CE442
+PT=34BFEFD3E43D8EE0CBC7BF1FB373E159
+CT=2C109A8363D1D0FB69CA77ABFA922F05
+
+I=275
+KEY=2B26D271208BD64F81688DF7C6F72E0CB942848DEFD7CCE3
+IV=2C109A8363D1D0FB69CA77ABFA922F05
+PT=D28D86D5199E7E30D38B11EF374608FF
+CT=F1749EFE66D339BC99AE4D9F63C90490
+
+I=276
+KEY=ACB8D3E6F5A45F0C701C1309A02417B020ECC9128C1EC873
+IV=F1749EFE66D339BC99AE4D9F63C90490
+PT=2ADAFA1911C5E9BD879E0197D52F8943
+CT=3B2A7C4278E1F071BFA29A6B0BFF4A15
+
+I=277
+KEY=CCEE75264DD770C44B366F4BD8C5E7C19F4E537987E18266
+IV=3B2A7C4278E1F071BFA29A6B0BFF4A15
+PT=84E244B62DF08DC76056A6C0B8732FC8
+CT=A35F83A5EE0B1C3B9DAD76DEAED96D72
+
+I=278
+KEY=F8F9239CDB5CC963E869ECEE36CEFBFA02E325A72938EF14
+IV=A35F83A5EE0B1C3B9DAD76DEAED96D72
+PT=F0B652F296CF162B341756BA968BB9A7
+CT=D5867FFE2FB75E309D3345611B25E3B0
+
+I=279
+KEY=509A10ABA5EAF2963DEF93101979A5CA9FD060C6321D0CA4
+IV=D5867FFE2FB75E309D3345611B25E3B0
+PT=C47D42AE34131463A86333377EB63BF5
+CT=6E136F01638AFBE3554218431DF44E7E
+
+I=280
+KEY=9B52C39C38F16CCE53FCFC117AF35E29CA9278852FE942DA
+IV=6E136F01638AFBE3554218431DF44E7E
+PT=78E05783EAEBE1BDCBC8D3379D1B9E58
+CT=FB6ACD3D0CF805374AD07EF5C038EBF6
+
+I=281
+KEY=2044F086923D5E43A896312C760B5B1E80420670EFD1A92C
+IV=FB6ACD3D0CF805374AD07EF5C038EBF6
+PT=02415B8E4D915492BB16331AAACC328D
+CT=0086C26DA11540FF5F485D7B238FD98C
+
+I=282
+KEY=12CE4C4109606CD7A810F341D71E1BE1DF0A5B0BCC5E70A0
+IV=0086C26DA11540FF5F485D7B238FD98C
+PT=0A2988237132B0B3328ABCC79B5D3294
+CT=F2E94C71A2AE0FCB096D8259B931CF8D
+
+I=283
+KEY=21BBCDA7FBC5229C5AF9BF3075B0142AD667D952756FBF2D
+IV=F2E94C71A2AE0FCB096D8259B931CF8D
+PT=4234B6C7F1CE98A3337581E6F2A54E4B
+CT=3B52E7834263C6790763706943741FD8
+
+I=284
+KEY=BB451732881A996161AB58B337D3D253D104A93B361BA0F5
+IV=3B52E7834263C6790763706943741FD8
+PT=F8509FB57E14501F9AFEDA9573DFBBFD
+CT=93FCA9F122CB707213D0CD72D8E6BF74
+
+I=285
+KEY=857D076E9A127A84F257F1421518A221C2D46449EEFD1F81
+IV=93FCA9F122CB707213D0CD72D8E6BF74
+PT=AA4D07DFAD030BE03E38105C1208E3E5
+CT=50717568D21862AECFAA898337405C96
+
+I=286
+KEY=1BCFD020D63709E0A226842AC700C08F0D7EEDCAD9BD4317
+IV=50717568D21862AECFAA898337405C96
+PT=7B488D7BBB2D538E9EB2D74E4C257364
+CT=0338D74260CB6CBB1B220DE7E4CC0BCF
+
+I=287
+KEY=CCDDF5D0BBCE202DA11E5368A7CBAC34165CE02D3D7148D8
+IV=0338D74260CB6CBB1B220DE7E4CC0BCF
+PT=16E01F8B3E94AC26D71225F06DF929CD
+CT=698AD17BB2F5F06C0465BEE34A7DCEDD
+
+I=288
+KEY=B7F556BC9BB4DC49C8948213153E5C5812395ECE770C8605
+IV=698AD17BB2F5F06C0465BEE34A7DCEDD
+PT=3ED0C80AFDEFE8BF7B28A36C207AFC64
+CT=E20129557F795C2B1CC32A5494824A4B
+
+I=289
+KEY=4B00D75969C3549C2A95AB466A4700730EFA749AE38ECC4E
+IV=E20129557F795C2B1CC32A5494824A4B
+PT=20BE0CD6C2244384FCF581E5F27788D5
+CT=C2F9DD55E91F4796636FEC9745410087
+
+I=290
+KEY=5EDCC5155BA684A4E86C7613835847E56D95980DA6CFCCC9
+IV=C2F9DD55E91F4796636FEC9745410087
+PT=B2DF53DF1139FB9915DC124C3265D038
+CT=015D51CD3568EB4EC210B58FFA89A409
+
+I=291
+KEY=21BA26AC6880AACDE93127DEB630ACABAF852D825C4668C0
+IV=015D51CD3568EB4EC210B58FFA89A409
+PT=401094B8B47CBDC87F66E3B933262E69
+CT=2987D39C19E6997957BDD0CAF010F778
+
+I=292
+KEY=BBA7ABC0A20CCBDEC0B6F442AFD635D2F838FD48AC569FB8
+IV=2987D39C19E6997957BDD0CAF010F778
+PT=EFC30498827AAD9A9A1D8D6CCA8C6113
+CT=E01AA987C9520EF8EBF53E97371D056B
+
+I=293
+KEY=5322D81BAA29410320AC5DC566843B2A13CDC3DF9B4B9AD3
+IV=E01AA987C9520EF8EBF53E97371D056B
+PT=685D6F660D40105CE88573DB08258ADD
+CT=D1265ABFCFA75FC65E94983BFF75CD48
+
+I=294
+KEY=19DF73EBF1CEF669F18A077AA92364EC4D595BE4643E579B
+IV=D1265ABFCFA75FC65E94983BFF75CD48
+PT=DD6E090E9981E5F24AFDABF05BE7B76A
+CT=605FDD1CA95B8FE1A5E26DBA10241914
+
+I=295
+KEY=F7D1D0CA3DAA851891D5DA660078EB0DE8BB365E741A4E8F
+IV=605FDD1CA95B8FE1A5E26DBA10241914
+PT=9F8442EE8B5A325FEE0EA321CC647371
+CT=76D67121FDEAEB6B81DBB29565F71E8E
+
+I=296
+KEY=FFFF200EA04824E9E703AB47FD920066696084CB11ED5001
+IV=76D67121FDEAEB6B81DBB29565F71E8E
+PT=5AF386509F0C8BAA082EF0C49DE2A1F1
+CT=7E1D833DC8D73228B7DFDE918E31E5E7
+
+I=297
+KEY=2A7D40B689490FC7991E287A3545324EDEBF5A5A9FDCB5E6
+IV=7E1D833DC8D73228B7DFDE918E31E5E7
+PT=02AB05F508ACDD21D58260B829012B2E
+CT=D6CA06D415EA5D750B5D06C252645A43
+
+I=298
+KEY=134154161A39E2CF4FD42EAE20AF6F3BD5E25C98CDB8EFA5
+IV=D6CA06D415EA5D750B5D06C252645A43
+PT=E63873AE14DD3BA8393C14A09370ED08
+CT=BFEA32E77BC1607921C54027C01C3EDF
+
+I=299
+KEY=AD8AF90935A6B455F03E1C495B6E0F42F4271CBF0DA4D17A
+IV=BFEA32E77BC1607921C54027C01C3EDF
+PT=BAD47B1FBF949870BECBAD1F2F9F569A
+CT=A86FFC9A91C79AFE47899B3934F3E05E
+
+I=300
+KEY=D88A2E828514CEC25851E0D3CAA995BCB3AE878639573124
+IV=A86FFC9A91C79AFE47899B3934F3E05E
+PT=2A2115074A9767747500D78BB0B27A97
+CT=507ED155CC3ED3B1922BBC166812A7FE
+
+I=301
+KEY=2CDDF1A577A3C86C082F31860697460D21853B90514596DA
+IV=507ED155CC3ED3B1922BBC166812A7FE
+PT=308D27178ABA22BCF457DF27F2B706AE
+CT=87F4EEA7CD2438F3EDCB650824A2D638
+
+I=302
+KEY=2B9D006908018D648FDBDF21CBB37EFECC4E5E9875E740E2
+IV=87F4EEA7CD2438F3EDCB650824A2D638
+PT=28F6C452D061E3DB0740F1CC7FA24508
+CT=DBA57DDA73A4E987EA32EF113877E908
+
+I=303
+KEY=FC69838410D06425547EA2FBB8179779267CB1894D90A9EA
+IV=DBA57DDA73A4E987EA32EF113877E908
+PT=91CFB50FFBE97D8AD7F483ED18D1E941
+CT=1720ED3E3B685A19CDA66BD09BD4DA5F
+
+I=304
+KEY=541AAB6191E2C51F435E4FC5837FCD60EBDADA59D64473B5
+IV=1720ED3E3B685A19CDA66BD09BD4DA5F
+PT=78FF980C48FAEBA0A87328E58132A13A
+CT=ED2E260103CAA77598FD195D02B484C8
+
+I=305
+KEY=761B0A3F50E2ACC1AE7069C480B56A157327C304D4F0F77D
+IV=ED2E260103CAA77598FD195D02B484C8
+PT=8C01554039D8F8EE2201A15EC10069DE
+CT=A9F0E16716B3AC14E06F18F5AEECB541
+
+I=306
+KEY=70056CD35CF430D5078088A39606C6019348DBF17A1C423C
+IV=A9F0E16716B3AC14E06F18F5AEECB541
+PT=C139651464D1614B061E66EC0C169C14
+CT=A41DDF008E0D52B627982D4196C3069E
+
+I=307
+KEY=EE1932746487B7BEA39D57A3180B94B7B4D0F6B0ECDF44A2
+IV=A41DDF008E0D52B627982D4196C3069E
+PT=C617572884721A3D9E1C5EA73873876B
+CT=44E5304E35A21660C450FAF84D87B13B
+
+I=308
+KEY=13D43E4526F8243FE77867ED2DA982D770800C48A158F599
+IV=44E5304E35A21660C450FAF84D87B13B
+PT=9C72E08DD264D6B7FDCD0C31427F9381
+CT=173B2C7A54A1A3CF3D39DCB68DA1C539
+
+I=309
+KEY=7CB72DE2CAED4080F0434B97790821184DB9D0FE2CF930A0
+IV=173B2C7A54A1A3CF3D39DCB68DA1C539
+PT=4DF3764F679E29446F6313A7EC1564BF
+CT=F1A167A3EB8F3FAB9F9B1570475ED15A
+
+I=310
+KEY=A7E6340A1278A3E801E22C3492871EB3D222C58E6BA7E1FA
+IV=F1A167A3EB8F3FAB9F9B1570475ED15A
+PT=2ED419EA11AAF8F3DB5119E8D895E368
+CT=2C5C5B10E285FE6C7E4750D2F9C1BD23
+
+I=311
+KEY=4B535B4D088F09192DBE77247002E0DFAC65955C92665CD9
+IV=2C5C5B10E285FE6C7E4750D2F9C1BD23
+PT=A3E9EA99771D0C02ECB56F471AF7AAF1
+CT=A12B4A15DBFAE2E7D4A7A792CD3C121A
+
+I=312
+KEY=2F0E7BAD76DC0A718C953D31ABF8023878C232CE5F5A4EC3
+IV=A12B4A15DBFAE2E7D4A7A792CD3C121A
+PT=1CC105D2604628B7645D20E07E530368
+CT=65CE700B785D901C5E5E08F7E74BB296
+
+I=313
+KEY=6111C386DE35C954E95B4D3AD3A59224269C3A39B811FC55
+IV=65CE700B785D901C5E5E08F7E74BB296
+PT=F902717AF7F0794E4E1FB82BA8E9C325
+CT=E7F3BD1056C504285FFC7F65B395DCAE
+
+I=314
+KEY=3B8F85E6FD28C4610EA8F02A8560960C7960455C0B8420FB
+IV=E7F3BD1056C504285FFC7F65B395DCAE
+PT=20A5529420D6D4C35A9E4660231D0D35
+CT=6CC36458ADECCA8B7198FD272A8C76C8
+
+I=315
+KEY=D404C97E089F240B626B9472288C5C8708F8B87B21085633
+IV=6CC36458ADECCA8B7198FD272A8C76C8
+PT=1094639F6723C9B0EF8B4C98F5B7E06A
+CT=D01C3C1E036D804563F04926ED203146
+
+I=316
+KEY=4779B44770085E18B277A86C2BE1DCC26B08F15DCC286775
+IV=D01C3C1E036D804563F04926ED203146
+PT=A482437681DFE307937D7D3978977A13
+CT=319D579DE9E55C8A3B2097EE8C93375F
+
+I=317
+KEY=22362304D7417BB483EAFFF1C2048048502866B340BB502A
+IV=319D579DE9E55C8A3B2097EE8C93375F
+PT=7AF0C8274B5C243B654F9743A74925AC
+CT=5F722165B8B422E088814B77A6B4D8E4
+
+I=318
+KEY=06FDA49350C16FEADC98DE947AB0A2A8D8A92DC4E60F88CE
+IV=5F722165B8B422E088814B77A6B4D8E4
+PT=A37964FA3E8145EF24CB87978780145E
+CT=C0417773DFD3FC83C2CE12D388F5DD8F
+
+I=319
+KEY=366245F8CBC490611CD9A9E7A5635E2B1A673F176EFA5541
+IV=C0417773DFD3FC83C2CE12D388F5DD8F
+PT=5D7E1E14F7BD7DB6309FE16B9B05FF8B
+CT=2EAE64B58C18AC7ADD2EE62896AB708D
+
+I=320
+KEY=A1BB8A9F9BE8F1383277CD52297BF251C749D93FF85125CC
+IV=2EAE64B58C18AC7ADD2EE62896AB708D
+PT=3ADC6991BF15554F97D9CF67502C6159
+CT=069FC966F8A985AD41617CB0148D2B96
+
+I=321
+KEY=7AB228E4114C14AB34E80434D1D277FC8628A58FECDC0E5A
+IV=069FC966F8A985AD41617CB0148D2B96
+PT=4405B80CCE92FD71DB09A27B8AA4E593
+CT=13459A0239A33BC41424A5D03C6B2864
+
+I=322
+KEY=78D1BC27E5CBBB1D27AD9E36E8714C38920C005FD0B7263E
+IV=13459A0239A33BC41424A5D03C6B2864
+PT=B9BAA861988616CD026394C3F487AFB6
+CT=08DA968A2BAEB9B763EB42BF555A2BFA
+
+I=323
+KEY=F53B033A22EA1D7B2F7708BCC3DFF58FF1E742E085ED0DC4
+IV=08DA968A2BAEB9B763EB42BF555A2BFA
+PT=30654265AD0FB24E8DEABF1DC721A666
+CT=E8412BDC1E75AC8E2C28552E2195795E
+
+I=324
+KEY=4928B51AF5C2408CC7362360DDAA5901DDCF17CEA478749A
+IV=E8412BDC1E75AC8E2C28552E2195795E
+PT=EEB05E487EEB907FBC13B620D7285DF7
+CT=E01839F95680D27E048383236D59EE85
+
+I=325
+KEY=C4DB91EAFC4C26D7272E1A998B2A8B7FD94C94EDC9219A1F
+IV=E01839F95680D27E048383236D59EE85
+PT=BA0160229D7471FE8DF324F0098E665B
+CT=D41902E6BE946CEB1612CFEE2F33F7CD
+
+I=326
+KEY=B550731E659834A1F337187F35BEE794CF5E5B03E6126DD2
+IV=D41902E6BE946CEB1612CFEE2F33F7CD
+PT=7DC970AFAF99BA6C718BE2F499D41276
+CT=326C3523173D62E9E145592E7A774311
+
+I=327
+KEY=5F87F6C2402B2352C15B2D5C2283857D2E1B022D9C652EC3
+IV=326C3523173D62E9E145592E7A774311
+PT=24ED6DAE1B24CC2BEAD785DC25B317F3
+CT=DDAE8AFF94604FFA82AE4FFB06953C01
+
+I=328
+KEY=3636C04061996CD01CF5A7A3B6E3CA87ACB54DD69AF012C2
+IV=DDAE8AFF94604FFA82AE4FFB06953C01
+PT=98E262805B8D9FD169B1368221B24F82
+CT=0D75DCFA4941BCE658DB2C71CB270BE7
+
+I=329
+KEY=64B9A0DE7DDA73C011807B59FFA27661F46E61A751D71925
+IV=0D75DCFA4941BCE658DB2C71CB270BE7
+PT=2BC34C226D41D8CE528F609E1C431F10
+CT=D70ED1DCDB9420E4B4A0D2A7C5148DE3
+
+I=330
+KEY=F64196479D35F74BC68EAA852436568540CEB30094C394C6
+IV=D70ED1DCDB9420E4B4A0D2A7C5148DE3
+PT=1015CB1E4569986C92F83699E0EF848B
+CT=524314DCCF2ADE5F8C3D241824C2BA73
+
+I=331
+KEY=686AB32115A2884C94CDBE59EB1C88DACCF39718B0012EB5
+IV=524314DCCF2ADE5F8C3D241824C2BA73
+PT=FB8B49053F724B7D9E2B256688977F07
+CT=7C579324F7251EDF95BDE2320104ACA6
+
+I=332
+KEY=34DD68E6F442F6D9E89A2D7D1C399605594E752AB1058213
+IV=7C579324F7251EDF95BDE2320104ACA6
+PT=A3B71504A8DAA3515CB7DBC7E1E07E95
+CT=921A66278A6D1E61D4B509F199F8FE55
+
+I=333
+KEY=19C9F40A858DD9EA7A804B5A965488648DFB7CDB28FD7C46
+IV=921A66278A6D1E61D4B509F199F8FE55
+PT=B0B651905E1B38FB2D149CEC71CF2F33
+CT=F2C37CF94514C902A0E438159C2C9F5F
+
+I=334
+KEY=B68812FC7D4E40D6884337A3D34041662D1F44CEB4D1E319
+IV=F2C37CF94514C902A0E438159C2C9F5F
+PT=7DE03F498839F8DAAF41E6F6F8C3993C
+CT=4596A25A85D06BCC74F686F8F1E8C203
+
+I=335
+KEY=2836F982CA563379CDD595F956902AAA59E9C2364539211A
+IV=4596A25A85D06BCC74F686F8F1E8C203
+PT=D5425E42151014ED9EBEEB7EB71873AF
+CT=0BA46EFA61FB07430C51D7CE267E1F47
+
+I=336
+KEY=BC8C7F9051C98892C671FB03376B2DE955B815F863473E5D
+IV=0BA46EFA61FB07430C51D7CE267E1F47
+PT=5D060EEC179C1B9E94BA86129B9FBBEB
+CT=49F7D7D7BAB7795A4E74A854C8C1AC53
+
+I=337
+KEY=E661F49B22BC92358F862CD48DDC54B31BCCBDACAB86920E
+IV=49F7D7D7BAB7795A4E74A854C8C1AC53
+PT=C598926A437A27A45AED8B0B73751AA7
+CT=0EB97E32AEC4CE3959197C5B72C1ABC5
+
+I=338
+KEY=E625AB8664BCF057813F52E623189A8A42D5C1F7D94739CB
+IV=0EB97E32AEC4CE3959197C5B72C1ABC5
+PT=B7272C4D712F9CF500445F1D46006262
+CT=DA9F53564E69AED610BCCAD13C00A241
+
+I=339
+KEY=75FC1D46AFD886915BA001B06D71345C52690B26E5479B8A
+IV=DA9F53564E69AED610BCCAD13C00A241
+PT=FE7513CF9353BBF093D9B6C0CB6476C6
+CT=7F61B6F9B7C14EB6179F2DA597EC1183
+
+I=340
+KEY=F92D3201DA84422024C1B749DAB07AEA45F6268372AB8A09
+IV=7F61B6F9B7C14EB6179F2DA597EC1183
+PT=4E4D3DF58D7D9C338CD12F47755CC4B1
+CT=F9216373C300AA9BE96BD8C98F9716B7
+
+I=341
+KEY=680384A1E522C848DDE0D43A19B0D071AC9DFE4AFD3C9CBE
+IV=F9216373C300AA9BE96BD8C98F9716B7
+PT=1A7B30192D54142E912EB6A03FA68A68
+CT=8512BA1B57BC04EF3C021DB1EC3CA9C6
+
+I=342
+KEY=DE3B85BD09EC93B858F26E214E0CD49E909FE3FB11003578
+IV=8512BA1B57BC04EF3C021DB1EC3CA9C6
+PT=86587FF85D73F77FB638011CECCE5BF0
+CT=FA582C37D4063D61428C886A9FD54C84
+
+I=343
+KEY=C574CA7322F443FBA2AA42169A0AE9FFD2136B918ED579FC
+IV=FA582C37D4063D61428C886A9FD54C84
+PT=3A7425A8B7BC3A941B4F4FCE2B18D043
+CT=7571B4D46CBC671964AB5BDE9C843DCF
+
+I=344
+KEY=078109812EFBA9DBD7DBF6C2F6B68EE6B6B8304F12514433
+IV=7571B4D46CBC671964AB5BDE9C843DCF
+PT=5224060F0848F028C2F5C3F20C0FEA20
+CT=DA9EB72D65D492FE88B819674B8433C1
+
+I=345
+KEY=5BF7FA2E15A87C850D4541EF93621C183E00292859D577F2
+IV=DA9EB72D65D492FE88B819674B8433C1
+PT=2622B2A19CBBAD065C76F3AF3B53D55E
+CT=C66EF470CEDDD499AE6214E75DE9051B
+
+I=346
+KEY=ECBE2377CAF0C9E9CB2BB59F5DBFC88190623DCF043C72E9
+IV=C66EF470CEDDD499AE6214E75DE9051B
+PT=833F22A76D51E360B749D959DF58B56C
+CT=57407E3DEFFF753E879619424FCE5713
+
+I=347
+KEY=4EAB83DA78D60CB09C6BCBA2B240BDBF17F4248D4BF225FA
+IV=57407E3DEFFF753E879619424FCE5713
+PT=25781A534FB9192CA215A0ADB226C559
+CT=644D89381439E7BBED7DC344CBF4C886
+
+I=348
+KEY=C4977EF1F6271D6CF826429AA6795A04FA89E7C98006ED7C
+IV=644D89381439E7BBED7DC344CBF4C886
+PT=E8EDD9AA25A8C5B08A3CFD2B8EF111DC
+CT=CA4B2680D0EE8E28818BE8DE8D625ADC
+
+I=349
+KEY=80212F6D11C6DAE2326D641A7697D42C7B020F170D64B7A0
+IV=CA4B2680D0EE8E28818BE8DE8D625ADC
+PT=8F667EEDB79E930644B6519CE7E1C78E
+CT=5497F477AD5E65BB748A781533F1BCEF
+
+I=350
+KEY=A05DF1DF7E0393A566FA906DDBC9B1970F8877023E950B4F
+IV=5497F477AD5E65BB748A781533F1BCEF
+PT=099FDB76E6D21788207CDEB26FC54947
+CT=C8C541B359BF1B53441C4EFFFD2F65AF
+
+I=351
+KEY=3970F236F800D18BAE3FD1DE8276AAC44B9439FDC3BA6EE0
+IV=C8C541B359BF1B53441C4EFFFD2F65AF
+PT=C79FA2079ECCEBCD992D03E98603422E
+CT=E59765A861DE0168161EA1360B5966A9
+
+I=352
+KEY=8ED3BFA3E4C9453C4BA8B476E3A8ABAC5D8A98CBC8E30849
+IV=E59765A861DE0168161EA1360B5966A9
+PT=AFBCD48F06709730B7A34D951CC994B7
+CT=5A65435BD1B4DB742E8AFF8C402927FC
+
+I=353
+KEY=2A3F01E56E45895B11CDF72D321C70D87300674788CA2FB5
+IV=5A65435BD1B4DB742E8AFF8C402927FC
+PT=CF684F64B8CCD2EDA4ECBE468A8CCC67
+CT=551AF68D50D23408F47214C0B18E6C8A
+
+I=354
+KEY=CA12AC8D17941E6244D701A062CE44D0877273873944433F
+IV=551AF68D50D23408F47214C0B18E6C8A
+PT=561072AC144854C1E02DAD6879D19739
+CT=ADFF035C89E040A4C3CCE190D6CB7283
+
+I=355
+KEY=D1CA1B08A51B5086E92802FCEB2E047444BE9217EF8F31BC
+IV=ADFF035C89E040A4C3CCE190D6CB7283
+PT=827ADE7D0F329D9A1BD8B785B28F4EE4
+CT=425F5596D3FD37243EE59D6FC1F5ADCC
+
+I=356
+KEY=54EC325FE63AA470AB77576A38D333507A5B0F782E7A9C70
+IV=425F5596D3FD37243EE59D6FC1F5ADCC
+PT=4AAF21E64F8DBDB0852629574321F4F6
+CT=D85520FE860C9F320CDC8192A900F499
+
+I=357
+KEY=5B4612BC35BFC12473227794BEDFAC6276878EEA877A68E9
+IV=D85520FE860C9F320CDC8192A900F499
+PT=0D046A402A1860C70FAA20E3D3856554
+CT=11C20F3ACED79B37402B2F04886D4CC7
+
+I=358
+KEY=5052384CE705101562E078AE7008375536ACA1EE0F17242E
+IV=11C20F3ACED79B37402B2F04886D4CC7
+PT=7546E6521BBBFAFE0B142AF0D2BAD131
+CT=BCDA339266E3AFB779AF17CE34218BE5
+
+I=359
+KEY=F7ECFB2AA4FC6DE2DE3A4B3C16EB98E24F03B6203B36AFCB
+IV=BCDA339266E3AFB779AF17CE34218BE5
+PT=85DF7958789E9090A7BEC36643F97DF7
+CT=300D46EAB6466314BB00DBC869C77F4E
+
+I=360
+KEY=1E27229506EC9555EE370DD6A0ADFBF6F4036DE852F1D085
+IV=300D46EAB6466314BB00DBC869C77F4E
+PT=C6CED700614467A0E9CBD9BFA210F8B7
+CT=51735C075A14FE95D4A02F527A9474D3
+
+I=361
+KEY=857F653E1E811CABBF4451D1FAB9056320A342BA2865A456
+IV=51735C075A14FE95D4A02F527A9474D3
+PT=53D436401D6811B19B5847AB186D89FE
+CT=827017531E56980C4357549D0E70114F
+
+I=362
+KEY=1BCE612F3A5262223D344682E4EF9D6F63F416272615B519
+IV=827017531E56980C4357549D0E70114F
+PT=4C1BD17FFD65AB2C9EB1041124D37E89
+CT=751BCA9516123906561FB8AF2208CEE1
+
+I=363
+KEY=7C7034EC27524FC3482F8C17F2FDA46935EBAE88041D7BF8
+IV=751BCA9516123906561FB8AF2208CEE1
+PT=7C23D6E77039F35267BE55C31D002DE1
+CT=82CAFBBE859FA80B2A8E58CEC074B01A
+
+I=364
+KEY=7F31EEE0447BB53CCAE577A977620C621F65F646C469CBE2
+IV=82CAFBBE859FA80B2A8E58CEC074B01A
+PT=B91FF7759419BBB10341DA0C6329FAFF
+CT=B7614376C9BAFC92E17E39D2BDF1F2EF
+
+I=365
+KEY=E705144BCE40FC987D8434DFBED8F0F0FE1BCF947998390D
+IV=B7614376C9BAFC92E17E39D2BDF1F2EF
+PT=72B3472217AC80979834FAAB8A3B49A4
+CT=A63BA38FDDFE99D28BA447871BBA6211
+
+I=366
+KEY=15C813D2D9AD1494DBBF97506326692275BF881362225B1C
+IV=A63BA38FDDFE99D28BA447871BBA6211
+PT=349F8E5FAE004B51F2CD079917EDE80C
+CT=C87E448872E619419766CB46787F2581
+
+I=367
+KEY=B12B790C217821DA13C1D3D811C07063E2D943551A5D7E9D
+IV=C87E448872E619419766CB46787F2581
+PT=EC474C794E3C8322A4E36ADEF8D5354E
+CT=73DD478F7F41857F7A5DE7EDF3F1AF7B
+
+I=368
+KEY=1CFA6A54B3E572DC601C94576E81F51C9884A4B8E9ACD1E6
+IV=73DD478F7F41857F7A5DE7EDF3F1AF7B
+PT=48F8361EF11F94C1ADD11358929D5306
+CT=8B85DE2CBE5C96CBDFE16064079754D9
+
+I=369
+KEY=6718C10E683F4D73EB994A7BD0DD63D74765C4DCEE3B853F
+IV=8B85DE2CBE5C96CBDFE16064079754D9
+PT=59BFDA108542EDDB7BE2AB5ADBDA3FAF
+CT=56FF53384CED780F604F86EC0CE26B26
+
+I=370
+KEY=704ED4F1E96776A2BD6619439C301BD8272A4230E2D9EE19
+IV=56FF53384CED780F604F86EC0CE26B26
+PT=468FDBDB8BC26B5A175615FF81583BD1
+CT=7B0C2436262A262C5FAFC3A9B786DB00
+
+I=371
+KEY=67AFB86317B622B2C66A3D75BA1A3DF478858199555F3519
+IV=7B0C2436262A262C5FAFC3A9B786DB00
+PT=768BE978E5E8CA6E17E16C92FED15410
+CT=D32206D5D1521AB667516391810F5719
+
+I=372
+KEY=0BF4E0C32EA3D69615483BA06B4827421FD4E208D4506200
+IV=D32206D5D1521AB667516391810F5719
+PT=1943C5D93D10A0E36C5B58A03915F424
+CT=6BCE2BEC0D5A0DA9051AF2B34A873694
+
+I=373
+KEY=924D1C527572A2EF7E86104C66122AEB1ACE10BB9ED75494
+IV=6BCE2BEC0D5A0DA9051AF2B34A873694
+PT=E3020D099D0841C299B9FC915BD17479
+CT=3BEBA6BA0762BF5FAA4D26B70071B4A9
+
+I=374
+KEY=CFA41DB53F2F8766456DB6F6617095B4B083360C9EA6E03D
+IV=3BEBA6BA0762BF5FAA4D26B70071B4A9
+PT=31F7316F0D1012CD5DE901E74A5D2589
+CT=C4253CED7F88DF97596B08A15BAEF533
+
+I=375
+KEY=E2B9D43008C1537281488A1B1EF84A23E9E83EADC508150E
+IV=C4253CED7F88DF97596B08A15BAEF533
+PT=00365D6755A898E62D1DC98537EED414
+CT=2D4EB6BA84D1C0C978EA20C1693BB75C
+
+I=376
+KEY=43EA75DFD5B35CCBAC063CA19A298AEA91021E6CAC33A252
+IV=2D4EB6BA84D1C0C978EA20C1693BB75C
+PT=599279C68B67A988A153A1EFDD720FB9
+CT=03698CC5E133AD8855B847C124FD2778
+
+I=377
+KEY=8F2C76FCFBD8060DAF6FB0647B1A2762C4BA59AD88CE852A
+IV=03698CC5E133AD8855B847C124FD2778
+PT=47EFAF7E090B94B5CCC603232E6B5AC6
+CT=8D44C11C25ADE5631E05FAAECCA70AF7
+
+I=378
+KEY=E02084775A2E1A4E222B71785EB7C201DABFA30344698FDD
+IV=8D44C11C25ADE5631E05FAAECCA70AF7
+PT=394EC624EBC0D79E6F0CF28BA1F61C43
+CT=5EB407847213D5E950C66787B140BC35
+
+I=379
+KEY=D8208A70940589F47C9F76FC2CA417E88A79C484F52933E8
+IV=5EB407847213D5E950C66787B140BC35
+PT=F28816D227AC09F538000E07CE2B93BA
+CT=2D4FBD74A027526BADC8C2A433963C22
+
+I=380
+KEY=858193C76AFE48D951D0CB888C83458327B10620C6BF0FCA
+IV=2D4FBD74A027526BADC8C2A433963C22
+PT=FBAA6C644F8E08885DA119B7FEFBC12D
+CT=FA2DAE761EBBFDE4B77CBCD2381165DB
+
+I=381
+KEY=DA9A9F800056FC6EABFD65FE9238B86790CDBAF2FEAE6A11
+IV=FA2DAE761EBBFDE4B77CBCD2381165DB
+PT=F66A574C26D0F15C5F1B0C476AA8B4B7
+CT=DB18F5B16BF19C2BCCA36091A302BF38
+
+I=382
+KEY=BD2AB07F036032AB70E5904FF9C9244C5C6EDA635DACD529
+IV=DB18F5B16BF19C2BCCA36091A302BF38
+PT=04B0C1A19C6D38B467B02FFF0336CEC5
+CT=D3F01581B21DF4E470EE595CAB44912C
+
+I=383
+KEY=7EF57F6BDE41D79CA31585CE4BD4D0A82C80833FF6E84405
+IV=D3F01581B21DF4E470EE595CAB44912C
+PT=83BF32E0F3F3CEE7C3DFCF14DD21E537
+CT=10C69B9A04E0851B63D85D025BBACA29
+
+I=384
+KEY=22057A9912BB6B76B3D31E544F3455B34F58DE3DAD528E2C
+IV=10C69B9A04E0851B63D85D025BBACA29
+PT=150ACC96322893CC5CF005F2CCFABCEA
+CT=2743FE5769DDA5D591318E200AF672D0
+
+I=385
+KEY=742A2117B51176E69490E00326E9F066DE69501DA7A4FCFC
+IV=2743FE5769DDA5D591318E200AF672D0
+PT=93246C1A26F66DAF562F5B8EA7AA1D90
+CT=5CA8FC8DB4A20B2CA8AB86B1B40DA1A1
+
+I=386
+KEY=3C09F8C3B20BE749C8381C8E924BFB4A76C2D6AC13A95D5D
+IV=5CA8FC8DB4A20B2CA8AB86B1B40DA1A1
+PT=D91806E0F3451C374823D9D4071A91AF
+CT=25701E4C6685C98333566EB75498AEB7
+
+I=387
+KEY=DD0386F2D0D1E8FFED4802C2F4CE32C94594B81B4731F3EA
+IV=25701E4C6685C98333566EB75498AEB7
+PT=701A5D7027053688E10A7E3162DA0FB6
+CT=E4A5889FC49B62F767F61F1D2810801A
+
+I=388
+KEY=BB9A1FA7287B0D3D09ED8A5D3055503E2262A7066F2173F0
+IV=E4A5889FC49B62F767F61F1D2810801A
+PT=A110B0A38255279B66999955F8AAE5C2
+CT=F1A9BDA2045F3EAE2AB9CEE2AD352270
+
+I=389
+KEY=21B561DC3C44B5A5F84437FF340A6E9008DB69E4C2145180
+IV=F1A9BDA2045F3EAE2AB9CEE2AD352270
+PT=1562CF8420963B479A2F7E7B143FB898
+CT=E7E2BA657D3482A4825D643B8C01B52E
+
+I=390
+KEY=60A0FA1F5FA435401FA68D9A493EEC348A860DDF4E15E4AE
+IV=E7E2BA657D3482A4825D643B8C01B52E
+PT=930490633BC4EDC941159BC363E080E5
+CT=2FDBCD145EB8620594834B0D63BBD137
+
+I=391
+KEY=7DD1686F811E4017307D408E17868E311E0546D22DAE3599
+IV=2FDBCD145EB8620594834B0D63BBD137
+PT=4BB1C43F4ABC51CD1D719270DEBA7557
+CT=B703658AD9FFCDE05E2C7E252990402E
+
+I=392
+KEY=18203DC5AAA632F5877E2504CE7943D1402938F7043E75B7
+IV=B703658AD9FFCDE05E2C7E252990402E
+PT=47931942F275F05E65F155AA2BB872E2
+CT=5B79CB7FA90D3BB5A979A4588D4DE434
+
+I=393
+KEY=9F6D532CBAF42FCDDC07EE7B67747864E9509CAF89739183
+IV=5B79CB7FA90D3BB5A979A4588D4DE434
+PT=E3A36DF4EB896B4D874D6EE910521D38
+CT=61BF460521E67B3CAC638F3298EF9310
+
+I=394
+KEY=ED4F97BC99036E83BDB8A87E469203584533139D119C0293
+IV=61BF460521E67B3CAC638F3298EF9310
+PT=55EABDF72CCB5D737222C49023F7414E
+CT=8A27D87B53B2FB8BBAFF7851AF1D51F2
+
+I=395
+KEY=E1B9A7291D885F8E379F70051520F8D3FFCC6BCCBE815361
+IV=8A27D87B53B2FB8BBAFF7851AF1D51F2
+PT=D30271EA236E948F0CF63095848B310D
+CT=15075FDCBD2D6FC15B9A3841A2D58C34
+
+I=396
+KEY=976B101EE3E10E0822982FD9A80D9712A456538D1C54DF55
+IV=15075FDCBD2D6FC15B9A3841A2D58C34
+PT=879EED3434159D8076D2B737FE695186
+CT=6896582462983FAAE443078F9768B339
+
+I=397
+KEY=A7A3277BF5F605FC4A0E77FDCA95A8B8401554028B3C6C6C
+IV=6896582462983FAAE443078F9768B339
+PT=89DDABE96D1069ED30C8376516170BF4
+CT=96FE6B921416B667AA5B34D2D2E25747
+
+I=398
+KEY=DD57026B1D4E32A8DCF01C6FDE831EDFEA4E60D059DE3B2B
+IV=96FE6B921416B667AA5B34D2D2E25747
+PT=8144C8BB09FC72827AF42510E8B83754
+CT=EEDC3677AB7B57829F6D733F8090DA8A
+
+I=399
+KEY=B4D1BDF297DC0574322C2A1875F8495D752313EFD94EE1A1
+IV=EEDC3677AB7B57829F6D733F8090DA8A
+PT=510F7A55799B39786986BF998A9237DC
+CT=BA50C94440C04A8C0899D42658E25437
+
+KEYSIZE=256
+
+I=0
+KEY=0000000000000000000000000000000000000000000000000000000000000000
+IV=00000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=FE3C53653E2F45B56FCD88B2CC898FF0
+
+I=1
+KEY=B2493DE29713367D9FAA93469F8EF596FE3C53653E2F45B56FCD88B2CC898FF0
+IV=FE3C53653E2F45B56FCD88B2CC898FF0
+PT=B2493DE29713367D9FAA93469F8EF596
+CT=7CE2ABAF8BEF23C4816DC8CE842048A7
+
+I=2
+KEY=33A36646FE56F70DC0C51A3117E639F182DEF8CAB5C06671EEA0407C48A9C757
+IV=7CE2ABAF8BEF23C4816DC8CE842048A7
+PT=81EA5BA46945C1705F6F89778868CC67
+CT=50CD14A12C6852D39654C816BFAF9AC2
+
+I=3
+KEY=0D6A3DACE75B104CA8A303A32670BF3AD213EC6B99A834A278F4886AF7065D95
+IV=50CD14A12C6852D39654C816BFAF9AC2
+PT=3EC95BEA190DE74168661992319686CB
+CT=3F411DAD0E339FE281637133BF46BD13
+
+I=4
+KEY=A53BE0709BF686A7DB7C3848D81AB66BED52F1C6979BAB40F997F9594840E086
+IV=3F411DAD0E339FE281637133BF46BD13
+PT=A851DDDC7CAD96EB73DF3BEBFE6A0951
+CT=5BA2C7663A4061719A7CCC2AF2A3EE8A
+
+I=5
+KEY=ECF3490CB7717A5236A3A94811BEBF13B6F036A0ADDBCA3163EB3573BAE30E0C
+IV=5BA2C7663A4061719A7CCC2AF2A3EE8A
+PT=49C8A97C2C87FCF5EDDF9100C9A40978
+CT=F105031CE7E5111317745C64F4F6D150
+
+I=6
+KEY=CE8A062A2A9F9EDE2EFB43A8602BB47847F535BC4A3EDB22749F69174E15DF5C
+IV=F105031CE7E5111317745C64F4F6D150
+PT=22794F269DEEE48C1858EAE071950B6B
+CT=C8F030398A873550A34386D9A153D833
+
+I=7
+KEY=2BE39545B8FC27444178BF0004C7F1048F050585C0B9EE72D7DCEFCEEF46076F
+IV=C8F030398A873550A34386D9A153D833
+PT=E569936F9263B99A6F83FCA864EC457C
+CT=519CF42C0BBFCBD79679089BC5E963B4
+
+I=8
+KEY=80E9C0F78F99E309935C0A69B961D787DE99F1A9CB0625A541A5E7552AAF64DB
+IV=519CF42C0BBFCBD79679089BC5E963B4
+PT=AB0A55B23765C44DD224B569BDA62683
+CT=64AC8FEA3B83584E9B7379B48F88B7A4
+
+I=9
+KEY=48DDBDA704BA7702960820A0D2CA485CBA357E43F0857DEBDAD69EE1A527D37F
+IV=64AC8FEA3B83584E9B7379B48F88B7A4
+PT=C8347D508B23940B05542AC96BAB9FDB
+CT=2B1F53F35A308673E9B1E004C32B2080
+
+I=10
+KEY=D26C4C6BE601D63BDDE6F1A49B5124CB912A2DB0AAB5FB9833677EE5660CF3FF
+IV=2B1F53F35A308673E9B1E004C32B2080
+PT=9AB1F1CCE2BBA1394BEED104499B6C97
+CT=0DAE66B5741FE38E544D9EC4E90ABDAF
+
+I=11
+KEY=D241355DB8FC5F23D0D207F72E290F189C844B05DEAA1816672AE0218F064E50
+IV=0DAE66B5741FE38E544D9EC4E90ABDAF
+PT=002D79365EFD89180D34F653B5782BD3
+CT=D00122636CC0D9D62E614EAF0963C448
+
+I=12
+KEY=1BC3268A0B674A05B2FC6E18460231564C856966B26AC1C0494BAE8E86658A18
+IV=D00122636CC0D9D62E614EAF0963C448
+PT=C98213D7B39B1526622E69EF682B3E4E
+CT=30EF014D1766651C524B3CC82F0140C6
+
+I=13
+KEY=50BE5951A5C2403C52425897C442A8457C6A682BA50CA4DC1B009246A964CADE
+IV=30EF014D1766651C524B3CC82F0140C6
+PT=4B7D7FDBAEA50A39E0BE368F82409913
+CT=BAD488702B447FABEC2074E1DD37E631
+
+I=14
+KEY=C007EE52430FF98EDD206C94ED349DE6C6BEE05B8E48DB77F720E6A774532CEF
+IV=BAD488702B447FABEC2074E1DD37E631
+PT=90B9B703E6CDB9B28F623403297635A3
+CT=EC3862EB60E7D8D0827645BD690F71B8
+
+I=15
+KEY=AE37C1DBEBF9B269E8D10CC4F046F9FC2A8682B0EEAF03A77556A31A1D5C5D57
+IV=EC3862EB60E7D8D0827645BD690F71B8
+PT=6E302F89A8F64BE735F160501D72641A
+CT=6073D1F25F3697C1E07384C67D71D8AE
+
+I=16
+KEY=86E8B9050AB24200E3757B67F08761534AF55342B1999466952527DC602D85F9
+IV=6073D1F25F3697C1E07384C67D71D8AE
+PT=28DF78DEE14BF0690BA477A300C198AF
+CT=90EF55AB8837792F82CF0F002E36F8DB
+
+I=17
+KEY=DE93EA10BB6DC2B0A6D3919561CE5AE4DA1A06E939AEED4917EA28DC4E1B7D22
+IV=90EF55AB8837792F82CF0F002E36F8DB
+PT=587B5315B1DF80B045A6EAF291493BB7
+CT=063783CB1A2137732D10CA6233C5CE93
+
+I=18
+KEY=3D147E3727A1FEB2C6F36AB9DF772E97DC2D8522238FDA3A3AFAE2BE7DDEB3B1
+IV=063783CB1A2137732D10CA6233C5CE93
+PT=E38794279CCC3C026020FB2CBEB97473
+CT=79C5CEEE64BFD33948D2E08EBE25B7E9
+
+I=19
+KEY=34586C52923969647663A0D69436D7D1A5E84BCC4730090372280230C3FB0458
+IV=79C5CEEE64BFD33948D2E08EBE25B7E9
+PT=094C1265B59897D6B090CA6F4B41F946
+CT=87DFB65D575F56670DB739C988FD7DE5
+
+I=20
+KEY=53724BF79612A7F0237927604619DD592237FD91106F5F647F9F3BF94B0679BD
+IV=87DFB65D575F56670DB739C988FD7DE5
+PT=672A27A5042BCE94551A87B6D22F0A88
+CT=643F46BC77A5FE2434753B9C38142583
+
+I=21
+KEY=8FBC30746F29985FFFA43C8BD3C4FC664608BB2D67CAA1404BEA006573125C3E
+IV=643F46BC77A5FE2434753B9C38142583
+PT=DCCE7B83F93B3FAFDCDD1BEB95DD213F
+CT=FD774BD6874EA7C0D790A5015440B664
+
+I=22
+KEY=9A61A910701A4A42873549F78D3D9FD1BB7FF0FBE08406809C7AA5642752EA5A
+IV=FD774BD6874EA7C0D790A5015440B664
+PT=15DD99641F33D21D7891757C5EF963B7
+CT=BFCEF4403428F5C96C24C249962371D4
+
+I=23
+KEY=8D98738F6DF30113AF69A7A61C1582EE04B104BBD4ACF349F05E672DB1719B8E
+IV=BFCEF4403428F5C96C24C249962371D4
+PT=17F9DA9F1DE94B51285CEE5191281D3F
+CT=CC79F35C41F0E6C0EB03472B1D13029E
+
+I=24
+KEY=976C27F1A15FF6780043636FC4777090C8C8F7E7955C15891B5D2006AC629910
+IV=CC79F35C41F0E6C0EB03472B1D13029E
+PT=1AF4547ECCACF76BAF2AC4C9D862F27E
+CT=0629B80F94FBC2C1984985B9F3B85BDD
+
+I=25
+KEY=E8934C533DED166F58D65C9E60A906A5CEE14FE801A7D7488314A5BF5FDAC2CD
+IV=0629B80F94FBC2C1984985B9F3B85BDD
+PT=7FFF6BA29CB2E01758953FF1A4DE7635
+CT=F2A70F4ED1A836696841D523F2650B55
+
+I=26
+KEY=8116688C16D2C26D162C4D813FB267103C4640A6D00FE121EB55709CADBFC998
+IV=F2A70F4ED1A836696841D523F2650B55
+PT=698524DF2B3FD4024EFA111F5F1B61B5
+CT=A9B5565EB9B5D5DAC52BE0F449FBE11A
+
+I=27
+KEY=5A7062E77C6D20563AFD0BFDAAE04BE995F316F869BA34FB2E7E9068E4442882
+IV=A9B5565EB9B5D5DAC52BE0F449FBE11A
+PT=DB660A6B6ABFE23B2CD1467C95522CF9
+CT=E47F675379D4CE3DDABA0F906BE014B2
+
+I=28
+KEY=4DDC0A5938F4A3DC1AF8D3AFD3DF6198718C71AB106EFAC6F4C49FF88FA43C30
+IV=E47F675379D4CE3DDABA0F906BE014B2
+PT=17AC68BE4499838A2005D852793F2A71
+CT=7B95AB0E030C70B7940ECDAEFCA570A5
+
+I=29
+KEY=E287EFC66626600AF3453F68BE53E5250A19DAA513628A7160CA525673014C95
+IV=7B95AB0E030C70B7940ECDAEFCA570A5
+PT=AF5BE59F5ED2C3D6E9BDECC76D8C84BD
+CT=E854E5DE0C42D57B869C29FC8D5AFFF3
+
+I=30
+KEY=7F3415A538F60B24A58447E1D38805B3E24D3F7B1F205F0AE6567BAAFE5BB366
+IV=E854E5DE0C42D57B869C29FC8D5AFFF3
+PT=9DB3FA635ED06B2E56C178896DDBE096
+CT=4E55EDEDC35CDEAB3BFB2B5D39871625
+
+I=31
+KEY=59E5F5ECC5693DA07046636094970E8CAC18D296DC7C81A1DDAD50F7C7DCA543
+IV=4E55EDEDC35CDEAB3BFB2B5D39871625
+PT=26D1E049FD9F3684D5C22481471F0B3F
+CT=3355C2CC762E58FA941E0004209CA710
+
+I=32
+KEY=0B62CF7EA869036A529E9D184574CD609F4D105AAA52D95B49B350F3E7400253
+IV=3355C2CC762E58FA941E0004209CA710
+PT=52873A926D003ECA22D8FE78D1E3C3EC
+CT=9B86680D69D38870268D42E78EDA2B50
+
+I=33
+KEY=CEDC9CCC4DC42CB055EDC50597EE24DF04CB7857C381512B6F3E1214699A2903
+IV=9B86680D69D38870268D42E78EDA2B50
+PT=C5BE53B2E5AD2FDA0773581DD29AE9BF
+CT=05DD4896F08EEAA6A53FA7BCF183F538
+
+I=34
+KEY=CA30B422016C86247D75B618D19247AC011630C1330FBB8DCA01B5A89819DC3B
+IV=05DD4896F08EEAA6A53FA7BCF183F538
+PT=04EC28EE4CA8AA942898731D467C6373
+CT=F81E56F4390D65C7959348A6FBD8A94E
+
+I=35
+KEY=B7096A2EC0259DA21ACA6DBE637A9F15F90866350A02DE4A5F92FD0E63C17575
+IV=F81E56F4390D65C7959348A6FBD8A94E
+PT=7D39DE0CC1491B8667BFDBA6B2E8D8B9
+CT=4364CA2D90FA256084DF8E2FCDC62AB3
+
+I=36
+KEY=436C0894D4436149EE685F0061BDF3AEBA6CAC189AF8FB2ADB4D7321AE075FC6
+IV=4364CA2D90FA256084DF8E2FCDC62AB3
+PT=F46562BA1466FCEBF4A232BE02C76CBB
+CT=0991DE19A5ABE5F7E8AE24120789B9AB
+
+I=37
+KEY=44E1636AFF962EC4F1C446A89B9393C6B3FD72013F531EDD33E35733A98EE66D
+IV=0991DE19A5ABE5F7E8AE24120789B9AB
+PT=078D6BFE2BD54F8D1FAC19A8FA2E6068
+CT=0F4EF4FA608671AC5F71063CF6C1EBDE
+
+I=38
+KEY=44289918A9E99F859FC2F604FE38B86EBCB386FB5FD56F716C92510F5F4F0DB3
+IV=0F4EF4FA608671AC5F71063CF6C1EBDE
+PT=00C9FA72567FB1416E06B0AC65AB2BA8
+CT=2D6A2A1CC9D208C16236BBC9451EC5E1
+
+I=39
+KEY=BE5907C77B0939D20575F27427A2C3FE91D9ACE7960767B00EA4EAC61A51C852
+IV=2D6A2A1CC9D208C16236BBC9451EC5E1
+PT=FA719EDFD2E0A6579AB70470D99A7B90
+CT=237A8DFBA42708BBF7E540766F2059F1
+
+I=40
+KEY=CD97125720F2002207AC44C456CDDF0DB2A3211C32206F0BF941AAB0757191A3
+IV=237A8DFBA42708BBF7E540766F2059F1
+PT=73CE15905BFB39F002D9B6B0716F1CF3
+CT=2D1AB5CF3E9C27ADA9FB45F15007A7BB
+
+I=41
+KEY=123F64F2A28C80C2F6E000F69C8E5A639FB994D30CBC48A650BAEF4125763618
+IV=2D1AB5CF3E9C27ADA9FB45F15007A7BB
+PT=DFA876A5827E80E0F14C4432CA43856E
+CT=7039C9AF1E10FE99A91483EA578AE6DD
+
+I=42
+KEY=6CD69C4F5AD7CB5E9E4574F6A48FDB28EF805D7C12ACB63FF9AE6CAB72FCD0C5
+IV=7039C9AF1E10FE99A91483EA578AE6DD
+PT=7EE9F8BDF85B4B9C68A574003801814B
+CT=116DD8566366A19EEAF2F3E744B3EF9C
+
+I=43
+KEY=C73969C7D6D057003E2E215D94978792FEED852A71CA17A1135C9F4C364F3F59
+IV=116DD8566366A19EEAF2F3E744B3EF9C
+PT=ABEFF5888C079C5EA06B55AB30185CBA
+CT=648A801EF27E77D964BB751A32B8CFE8
+
+I=44
+KEY=E0960DD6E807F3D0B5DF057D0D1E6DCC9A67053483B4607877E7EA5604F7F0B1
+IV=648A801EF27E77D964BB751A32B8CFE8
+PT=27AF64113ED7A4D08BF124209989EA5E
+CT=D18AE728717C535049868FA6F1B4294E
+
+I=45
+KEY=466AE043435C6CCA67FF1C5D4B4175DA4BEDE21CF2C833283E6165F0F543D9FF
+IV=D18AE728717C535049868FA6F1B4294E
+PT=A6FCED95AB5B9F1AD2201920465F1816
+CT=169B55360728DA8F582C488F2569411F
+
+I=46
+KEY=27E1BC4931601D667CD807454D58B2BB5D76B72AF5E0E9A7664D2D7FD02A98E0
+IV=169B55360728DA8F582C488F2569411F
+PT=618B5C0A723C71AC1B271B180619C761
+CT=67DADCF7C31CA394F46F18AB1AEA022E
+
+I=47
+KEY=2D4EB1F3A709F0A4CA5E2CD47F8F10123AAC6BDD36FC4A33922235D4CAC09ACE
+IV=67DADCF7C31CA394F46F18AB1AEA022E
+PT=0AAF0DBA9669EDC2B6862B9132D7A2A9
+CT=A5D49BDF099335166BBFDCBE29C90B80
+
+I=48
+KEY=2A90CE470EB8C9400B056307D53452BE9F78F0023F6F7F25F99DE96AE309914E
+IV=A5D49BDF099335166BBFDCBE29C90B80
+PT=07DE7FB4A9B139E4C15B4FD3AABB42AC
+CT=5AFC238F19E369E77278593C6E20A946
+
+I=49
+KEY=90B696E9A0792BFF7BF21BE373731CB5C584D38D268C16C28BE5B0568D293808
+IV=5AFC238F19E369E77278593C6E20A946
+PT=BA2658AEAEC1E2BF70F778E4A6474E0B
+CT=2861A363922099D0F0B2A5AD2A5F421E
+
+I=50
+KEY=4FE5C563B7DB98C6B9CCA52F313FBAFCEDE570EEB4AC8F127B5715FBA7767A16
+IV=2861A363922099D0F0B2A5AD2A5F421E
+PT=DF53538A17A2B339C23EBECC424CA649
+CT=D76E51B6EA5F74D0116C4D16EDD0DFAC
+
+I=51
+KEY=EBF784D98E40372429819EE23BE85B723A8B21585EF3FBC26A3B58ED4AA6A5BA
+IV=D76E51B6EA5F74D0116C4D16EDD0DFAC
+PT=A41241BA399BAFE2904D3BCD0AD7E18E
+CT=6214F5E50EC99F40B86951CE395C8315
+
+I=52
+KEY=C01A5093C6A29CEED72D14D903BD17E8589FD4BD503A6482D252092373FA26AF
+IV=6214F5E50EC99F40B86951CE395C8315
+PT=2BEDD44A48E2ABCAFEAC8A3B38554C9A
+CT=6CFC2188E40E806BBE277988B924627E
+
+I=53
+KEY=A8C3A10380B6D4D1CEFABF57F3C695193463F535B434E4E96C7570ABCADE44D1
+IV=6CFC2188E40E806BBE277988B924627E
+PT=68D9F1904614483F19D7AB8EF07B82F1
+CT=B98E851902AEC129FD1607DECA9E0669
+
+I=54
+KEY=B828711ABA1D06408099944287112DE58DED702CB69A25C091637775004042B8
+IV=B98E851902AEC129FD1607DECA9E0669
+PT=10EBD0193AABD2914E632B1574D7B8FC
+CT=DBDA9DB56E6FF915D67D7DEE541DD6A3
+
+I=55
+KEY=3B0E9FE343D665ABB3706243EF023C765637ED99D8F5DCD5471E0A9B545D941B
+IV=DBDA9DB56E6FF915D67D7DEE541DD6A3
+PT=8326EEF9F9CB63EB33E9F60168131193
+CT=399802CE3FF3878A73C7D85E19FDD54B
+
+I=56
+KEY=9270D72D972B46C8E630FBD1AA67FBED6FAFEF57E7065B5F34D9D2C54DA04150
+IV=399802CE3FF3878A73C7D85E19FDD54B
+PT=A97E48CED4FD2363554099924565C79B
+CT=40FABA067414961FD964EC91196943E3
+
+I=57
+KEY=017211AC512541BFBDD0292385AA20862F5555519312CD40EDBD3E5454C902B3
+IV=40FABA067414961FD964EC91196943E3
+PT=9302C681C60E07775BE0D2F22FCDDB6B
+CT=6BF1125E581341510FD02B9450886B17
+
+I=58
+KEY=AC2652A877F924710178641D20B239B944A4470FCB018C11E26D15C0044169A4
+IV=6BF1125E581341510FD02B9450886B17
+PT=AD54430426DC65CEBCA84D3EA518193F
+CT=74871D2EF6D1F29181B0A2530885EEC8
+
+I=59
+KEY=0BF012A9F0CB194C1F00893D4803E10130235A213DD07E8063DDB7930CC4876C
+IV=74871D2EF6D1F29181B0A2530885EEC8
+PT=A7D6400187323D3D1E78ED2068B1D8B8
+CT=2A2DC9F5CB47C94D430ECAAAB1D0811E
+
+I=60
+KEY=8D22EEEA013E327509E84630166331DB1A0E93D4F697B7CD20D37D39BD140672
+IV=2A2DC9F5CB47C94D430ECAAAB1D0811E
+PT=86D2FC43F1F52B3916E8CF0D5E60D0DA
+CT=BC318E32957CE6577CD06E2D3166CD1F
+
+I=61
+KEY=1C4909D11840D978FD7232D0FBC0E6A3A63F1DE663EB519A5C0313148C72CB6D
+IV=BC318E32957CE6577CD06E2D3166CD1F
+PT=916BE73B197EEB0DF49A74E0EDA3D778
+CT=E9858DBB1B5145ABB598ADE882346DDB
+
+I=62
+KEY=DD2ED3C6FCE0034F19259D57A35B60CF4FBA905D78BA1431E99BBEFC0E46A6B6
+IV=E9858DBB1B5145ABB598ADE882346DDB
+PT=C167DA17E4A0DA37E457AF87589B866C
+CT=1E04B15BBF727BEAC33C0C26141636DD
+
+I=63
+KEY=81C434CDF7EABAA49252EC86DFE15FBA51BE2106C7C86FDB2AA7B2DA1A50906B
+IV=1E04B15BBF727BEAC33C0C26141636DD
+PT=5CEAE70B0B0AB9EB8B7771D17CBA3F75
+CT=EB21AED731D594017F5729262A1E23B4
+
+I=64
+KEY=AEF6BF8323CAE4C2270CC5E51B0A3BFFBA9F8FD1F61DFBDA55F09BFC304EB3DF
+IV=EB21AED731D594017F5729262A1E23B4
+PT=2F328B4ED4205E66B55E2963C4EB6445
+CT=EB73CFADA0ACB98B37091CB81489CC7C
+
+I=65
+KEY=BC3BD548867FA82FF80EF67B38016A1E51EC407C56B1425162F9874424C77FA3
+IV=EB73CFADA0ACB98B37091CB81489CC7C
+PT=12CD6ACBA5B54CEDDF02339E230B51E1
+CT=1FEEF226D6759E8813B98A5D43B2F22A
+
+I=66
+KEY=E1F5760C694DBE5688A0241B5517B4B14E02B25A80C4DCD971400D1967758D89
+IV=1FEEF226D6759E8813B98A5D43B2F22A
+PT=5DCEA344EF32167970AED2606D16DEAF
+CT=9C591D087F0F45C8AE3DEC9C455FE200
+
+I=67
+KEY=ABF2D79C472D0159FA9AE646D0C0FC9CD25BAF52FFCB9911DF7DE185222A6F89
+IV=9C591D087F0F45C8AE3DEC9C455FE200
+PT=4A07A1902E60BF0F723AC25D85D7482D
+CT=62C4F4D7E4AC5ABC03BECA3CA56DA4FD
+
+I=68
+KEY=E58A351A4DD79A2ED6D386E11A8563F2B09F5B851B67C3ADDCC32BB98747CB74
+IV=62C4F4D7E4AC5ABC03BECA3CA56DA4FD
+PT=4E78E2860AFA9B772C4960A7CA459F6E
+CT=AD8557C0D04675CC312C7A106D5C8B83
+
+I=69
+KEY=BCF7BB1010AF5CEB05E06339689067E31D1A0C45CB21B661EDEF51A9EA1B40F7
+IV=AD8557C0D04675CC312C7A106D5C8B83
+PT=597D8E0A5D78C6C5D333E5D872150411
+CT=80159F4F5E0C2DC07D3CD3C52A1A8E6D
+
+I=70
+KEY=328BB8EB86055D2BB52A02E40BB5D2C39D0F930A952D9BA190D3826CC001CE9A
+IV=80159F4F5E0C2DC07D3CD3C52A1A8E6D
+PT=8E7C03FB96AA01C0B0CA61DD6325B520
+CT=F58A2EE5A5BDE8CA0A96F4F4B64BE737
+
+I=71
+KEY=F192AE51D926A2B68C38EA4E48A0590F6885BDEF3090736B9A457698764A29AD
+IV=F58A2EE5A5BDE8CA0A96F4F4B64BE737
+PT=C31916BA5F23FF9D3912E8AA43158BCC
+CT=B4C0DD55013AEFE12D94F31B861134CC
+
+I=72
+KEY=5EE48E38C2C805E2AACC89AD8682E552DC4560BA31AA9C8AB7D18583F05B1D61
+IV=B4C0DD55013AEFE12D94F31B861134CC
+PT=AF7620691BEEA75426F463E3CE22BC5D
+CT=FD8B06AEF9B3C25D11B950A6648276BB
+
+I=73
+KEY=F425B9BF4D114251736EE7FCDB430B6721CE6614C8195ED7A668D52594D96BDA
+IV=FD8B06AEF9B3C25D11B950A6648276BB
+PT=AAC137878FD947B3D9A26E515DC1EE35
+CT=31BE8DF4A8A749FBF11AB07D8479A10B
+
+I=74
+KEY=61A2D5337BCB827887F884AD98C67BEA1070EBE060BE172C5772655810A0CAD1
+IV=31BE8DF4A8A749FBF11AB07D8479A10B
+PT=95876C8C36DAC029F49663514385708D
+CT=E9A2EF0C882781788D50033B79FE181F
+
+I=75
+KEY=E930B2277AC4475FB0A94519F60DE552F9D204ECE8999654DA226663695ED2CE
+IV=E9A2EF0C882781788D50033B79FE181F
+PT=88926714010FC5273751C1B46ECB9EB8
+CT=17FFCD5A010709A2737570E038D63B27
+
+I=76
+KEY=B944CE978DF68F8FBFF0A5EA62AAC299EE2DC9B6E99E9FF6A95716835188E9E9
+IV=17FFCD5A010709A2737570E038D63B27
+PT=50747CB0F732C8D00F59E0F394A727CB
+CT=E12B89FA1B1DD3B29F02219FD3D7D3D2
+
+I=77
+KEY=0E2D7FCEB557462267BED2CCA8B48CD70F06404CF2834C443655371C825F3A3B
+IV=E12B89FA1B1DD3B29F02219FD3D7D3D2
+PT=B769B15938A1C9ADD84E7726CA1E4E4E
+CT=75AE99B6022B08E36FB88A6F4D7698BF
+
+I=78
+KEY=8046D73D60912221694B2AFE703EDB167AA8D9FAF0A844A759EDBD73CF29A284
+IV=75AE99B6022B08E36FB88A6F4D7698BF
+PT=8E6BA8F3D5C664030EF5F832D88A57C1
+CT=CF32DCE11FDB098A6435315342796064
+
+I=79
+KEY=20716D6975C32231968BF76725144CBAB59A051BEF734D2D3DD88C208D50C2E0
+IV=CF32DCE11FDB098A6435315342796064
+PT=A037BA5415520010FFC0DD99552A97AC
+CT=80F12B261317C66F21AC811230848468
+
+I=80
+KEY=AD5A2011E425AFFD57E7191336D37D25356B2E3DFC648B421C740D32BDD44688
+IV=80F12B261317C66F21AC811230848468
+PT=8D2B4D7891E68DCCC16CEE7413C7319F
+CT=F2C6B70C19A5748C6D2B5DE41544854F
+
+I=81
+KEY=49D4228508C789105CF457D10FA56048C7AD9931E5C1FFCE715F50D6A890C3C7
+IV=F2C6B70C19A5748C6D2B5DE41544854F
+PT=E48E0294ECE226ED0B134EC239761D6D
+CT=A31FB3535978DAA555DD617FAB27A97A
+
+I=82
+KEY=67CE710A3E778CB4A37D1F2274D4462D64B22A62BCB9256B248231A903B76ABD
+IV=A31FB3535978DAA555DD617FAB27A97A
+PT=2E1A538F36B005A4FF8948F37B712665
+CT=97336ECFAE89015E0B5A7D1C154C71BF
+
+I=83
+KEY=A87C517EF43CACC6D41EEB661DD1142CF38144AD123024352FD84CB516FB1B02
+IV=97336ECFAE89015E0B5A7D1C154C71BF
+PT=CFB22074CA4B20727763F44469055201
+CT=466CD227A6A9D5FC3C0579064530FCE0
+
+I=84
+KEY=D73F926A5B5DD8F5B82DE8F77E0E0697B5ED968AB499F1C913DD35B353CBE7E2
+IV=466CD227A6A9D5FC3C0579064530FCE0
+PT=7F43C314AF6174336C33039163DF12BB
+CT=4F444B4554E965A113DC0097AA8FAD7A
+
+I=85
+KEY=7A19BE1C42A13B85B754834E9808DF4BFAA9DDCFE070946800013524F9444A98
+IV=4F444B4554E965A113DC0097AA8FAD7A
+PT=AD262C7619FCE3700F796BB9E606D9DC
+CT=F7078ABE7617867274CBBEDA1082B987
+
+I=86
+KEY=D256675EDBF987B5CA86C21DE177C6A00DAE57719667121A74CA8BFEE9C6F31F
+IV=F7078ABE7617867274CBBEDA1082B987
+PT=A84FD9429958BC307DD24153797F19EB
+CT=676ACAB66B04597F1A33FF462BD5E0EE
+
+I=87
+KEY=C025616AB6F89BB1B90AA0E8F63FF1CC6AC49DC7FD634B656EF974B8C21313F1
+IV=676ACAB66B04597F1A33FF462BD5E0EE
+PT=127306346D011C04738C62F51748376C
+CT=BF66B8DD1E540A4FED759FDB9A44B439
+
+I=88
+KEY=2A437D44D93C25B3233FB168D63751A5D5A2251AE337412A838CEB635857A7C8
+IV=BF66B8DD1E540A4FED759FDB9A44B439
+PT=EA661C2E6FC4BE029A3511802008A069
+CT=EC8DBB5B3FE245180856B312D3052A87
+
+I=89
+KEY=838278123F0261D1F287C9FF94CA4A55392F9E41DCD504328BDA58718B528D4F
+IV=EC8DBB5B3FE245180856B312D3052A87
+PT=A9C10556E63E4462D1B8789742FD1BF0
+CT=02E1E60312BB371912C35E3EBC6EA755
+
+I=90
+KEY=64F3A47C8C7CFA9FF2AC88637C598E6A3BCE7842CE6E332B9919064F373C2A1A
+IV=02E1E60312BB371912C35E3EBC6EA755
+PT=E771DC6EB37E9B4E002B419CE893C43F
+CT=73D7499EBB38716D71CCB737CFFFA3FB
+
+I=91
+KEY=585ABE6B779F22400FC2AC3B55B39E91481931DC75564246E8D5B178F8C389E1
+IV=73D7499EBB38716D71CCB737CFFFA3FB
+PT=3CA91A17FBE3D8DFFD6E245829EA10FB
+CT=CEE7721855B7381D369ECC1C9337BB02
+
+I=92
+KEY=7BC1E883465CBBB9BA624FF99308259386FE43C420E17A5BDE4B7D646BF432E3
+IV=CEE7721855B7381D369ECC1C9337BB02
+PT=239B56E831C399F9B5A0E3C2C6BBBB02
+CT=B6F48D369383974D163E4F17FDFC59EF
+
+I=93
+KEY=70032AF50BB5E080D4AA7722CEDC7DA9300ACEF2B362ED16C875327396086B0C
+IV=B6F48D369383974D163E4F17FDFC59EF
+PT=0BC2C2764DE95B396EC838DB5DD4583A
+CT=E8372DA404126C63190626D95583629D
+
+I=94
+KEY=5C61B59BDA2FF51D4F4F740578466EA9D83DE356B7708175D17314AAC38B0991
+IV=E8372DA404126C63190626D95583629D
+PT=2C629F6ED19A159D9BE50327B69A1300
+CT=F717B53E51665D0854C895EA1D1D7E77
+
+I=95
+KEY=59A35E82B9C8D8FF25CFC5BAD979A9052F2A5668E616DC7D85BB8140DE9677E6
+IV=F717B53E51665D0854C895EA1D1D7E77
+PT=05C2EB1963E72DE26A80B1BFA13FC7AC
+CT=7D3EE90EEF7C16872F98296977AA9557
+
+I=96
+KEY=5BC419836F7C4F57957E13E39B2181455214BF66096ACAFAAA23A829A93CE2B1
+IV=7D3EE90EEF7C16872F98296977AA9557
+PT=02674701D6B497A8B0B1D65942582840
+CT=6DCD0C4B5633078FDEA9AE24781CB212
+
+I=97
+KEY=E6D2BB67584AA2FAAE1D0DAD8C9C60253FD9B32D5F59CD75748A060DD12050A3
+IV=6DCD0C4B5633078FDEA9AE24781CB212
+PT=BD16A2E43736EDAD3B631E4E17BDE160
+CT=6515251260A73AE868E992B6D49579C5
+
+I=98
+KEY=57637851C3C08A2923EBD2FEA27472DC5ACC963F3FFEF79D1C6394BB05B52966
+IV=6515251260A73AE868E992B6D49579C5
+PT=B1B1C3369B8A28D38DF6DF532EE812F9
+CT=1A40C2C15F03867E81F951B545396BB4
+
+I=99
+KEY=E08E94110F1E64554848AB1966299B7D408C54FE60FD71E39D9AC50E408C42D2
+IV=1A40C2C15F03867E81F951B545396BB4
+PT=B7EDEC40CCDEEE7C6BA379E7C45DE9A1
+CT=DD331F336D669EFD37106099EA51010D
+
+I=100
+KEY=17F2544156745EC108BF97DA806752C39DBF4BCD0D9BEF1EAA8AA597AADD43DF
+IV=DD331F336D669EFD37106099EA51010D
+PT=F77CC050596A3A9440F73CC3E64EC9BE
+CT=0EF37EC0B6071874FF68926D98A0EEAB
+
+I=101
+KEY=C97ABFF115E20A6C72A6206DB63EC0FD934C350DBB9CF76A55E237FA327DAD74
+IV=0EF37EC0B6071874FF68926D98A0EEAB
+PT=DE88EBB0439654AD7A19B7B73659923E
+CT=DA1DAEB42178A7657A40BD72A06CEDDC
+
+I=102
+KEY=77AB469FBC999BB2922D460413E2012049519BB99AE4500F2FA28A88921140A8
+IV=DA1DAEB42178A7657A40BD72A06CEDDC
+PT=BED1F96EA97B91DEE08B6669A5DCC1DD
+CT=E78523134FC8EAA77CC85E0EEC60FCD3
+
+I=103
+KEY=4F88FA6F4053B3A15094ED532C2F47DCAED4B8AAD52CBAA8536AD4867E71BC7B
+IV=E78523134FC8EAA77CC85E0EEC60FCD3
+PT=3823BCF0FCCA2813C2B9AB573FCD46FC
+CT=BC540D1838D7AD8E8B1C44B96684DD31
+
+I=104
+KEY=D178E105443700CFEE007AB3BAA71E4C1280B5B2EDFB1726D876903F18F5614A
+IV=BC540D1838D7AD8E8B1C44B96684DD31
+PT=9EF01B6A0464B36EBE9497E096885990
+CT=6C6B95A5D8F4E7F1A5864DDBFCDCEED8
+
+I=105
+KEY=8F6A589BA0ED1A67FE426368A7E523047EEB2017350FF0D77DF0DDE4E4298F92
+IV=6C6B95A5D8F4E7F1A5864DDBFCDCEED8
+PT=5E12B99EE4DA1AA8104219DB1D423D48
+CT=B58C92AE19B332621E7A4E5512C88596
+
+I=106
+KEY=147895B157BF16B87C32AAA17480A886CB67B2B92CBCC2B5638A93B1F6E10A04
+IV=B58C92AE19B332621E7A4E5512C88596
+PT=9B12CD2AF7520CDF8270C9C9D3658B82
+CT=4D1D90F007BB5099C382E69C9CD1F7E5
+
+I=107
+KEY=4C8441FCEBBD595999864A6CC37F7EDB867A22492B07922CA008752D6A30FDE1
+IV=4D1D90F007BB5099C382E69C9CD1F7E5
+PT=58FCD44DBC024FE1E5B4E0CDB7FFD65D
+CT=7F59920056EC32FA48F8A9CCCFFE437A
+
+I=108
+KEY=CD922EEA60F0F136A799C650F5D4B030F923B0497DEBA0D6E8F0DCE1A5CEBE9B
+IV=7F59920056EC32FA48F8A9CCCFFE437A
+PT=81166F168B4DA86F3E1F8C3C36ABCEEB
+CT=A546F57E48A783694577D59F7FD01D9E
+
+I=109
+KEY=90DE3ECB26E68BDD3C4B7AB9B9CDE6195C654537354C23BFAD87097EDA1EA305
+IV=A546F57E48A783694577D59F7FD01D9E
+PT=5D4C102146167AEB9BD2BCE94C195629
+CT=6342B8CB1E493F916585FF1BBFC42AB3
+
+I=110
+KEY=ADF1869FEA15122394E1F6FF6B51E5DE3F27FDFC2B051C2EC802F66565DA89B6
+IV=6342B8CB1E493F916585FF1BBFC42AB3
+PT=3D2FB854CCF399FEA8AA8C46D29C03C7
+CT=052AEDF54016429320B04243E308ECFE
+
+I=111
+KEY=DF52D7982845CBAEB4E56592906B63943A0D10096B135EBDE8B2B42686D26548
+IV=052AEDF54016429320B04243E308ECFE
+PT=72A35107C250D98D2004936DFB3A864A
+CT=EE147A64DC2E31222A3A14B133769ACE
+
+I=112
+KEY=5D6B5899612FF15825029DEB0B37CB4ED4196A6DB73D6F9FC288A097B5A4FF86
+IV=EE147A64DC2E31222A3A14B133769ACE
+PT=82398F01496A3AF691E7F8799B5CA8DA
+CT=8330EF868E72D33172D7DEC7B440056C
+
+I=113
+KEY=FC23917C478894C9490A6585CCB8A716572985EB394FBCAEB05F7E5001E4FAEA
+IV=8330EF868E72D33172D7DEC7B440056C
+PT=A148C9E526A765916C08F86EC78F6C58
+CT=DC83E3727C4E9754A82BFCFFD924ACB3
+
+I=114
+KEY=BCD556FA7AFA27F9675F45922924DFA68BAA669945012BFA187482AFD8C05659
+IV=DC83E3727C4E9754A82BFCFFD924ACB3
+PT=40F6C7863D72B3302E552017E59C78B0
+CT=C0B97D9320DC3E893953E1D93859D3E4
+
+I=115
+KEY=A0F23A11C85F008CFEC20F76BD6751054B131B0A65DD157321276376E09985BD
+IV=C0B97D9320DC3E893953E1D93859D3E4
+PT=1C276CEBB2A52775999D4AE494438EA3
+CT=8C28875C39211D01A084A59BA71D0C31
+
+I=116
+KEY=2BB58C8FE9FE5BAEC5DB3F6A7EB98187C73B9C565CFC087281A3C6ED4784898C
+IV=8C28875C39211D01A084A59BA71D0C31
+PT=8B47B69E21A15B223B19301CC3DED082
+CT=7865E390E8019259A117669082ED5CCC
+
+I=117
+KEY=6035A1AC1F0C1871EA06773DEA40B5C5BF5E7FC6B4FD9A2B20B4A07DC569D540
+IV=7865E390E8019259A117669082ED5CCC
+PT=4B802D23F6F243DF2FDD485794F93442
+CT=DC7BA7C54217B8DEE966C0672DBE79CD
+
+I=118
+KEY=CCA70BB373BA65736D25078BB99980F66325D803F6EA22F5C9D2601AE8D7AC8D
+IV=DC7BA7C54217B8DEE966C0672DBE79CD
+PT=AC92AA1F6CB67D02872370B653D93533
+CT=CBB60FB6BE7240A2037CDA46DAAAC4E4
+
+I=119
+KEY=E6D9E4347ABCE875CDFB026A9B1CE767A893D7B548986257CAAEBA5C327D6869
+IV=CBB60FB6BE7240A2037CDA46DAAAC4E4
+PT=2A7EEF8709068D06A0DE05E122856791
+CT=3B0863884DCFFDAAE439E3BCFC2E0491
+
+I=120
+KEY=90C0678C9B9796FACBD3A9E8E40A46E6939BB43D05579FFD2E9759E0CE536CF8
+IV=3B0863884DCFFDAAE439E3BCFC2E0491
+PT=761983B8E12B7E8F0628AB827F16A181
+CT=1407CDBD04CA6450D15A276B0E45D500
+
+I=121
+KEY=A3505D86BF4B95AEC0F720B4CBDF4985879C7980019DFBADFFCD7E8BC016B9F8
+IV=1407CDBD04CA6450D15A276B0E45D500
+PT=33903A0A24DC03540B24895C2FD50F63
+CT=94B64DF8376EAF94F24EB0457DF81418
+
+I=122
+KEY=EAD741BA44D8637A4D49A089E4A122F2132A347836F354390D83CECEBDEEADE0
+IV=94B64DF8376EAF94F24EB0457DF81418
+PT=49871C3CFB93F6D48DBE803D2F7E6B77
+CT=6E2DE304D4A21A218291FD9B59FED9BF
+
+I=123
+KEY=278551B22B73239BF36E61370FFF43EA7D07D77CE2514E188F123355E410745F
+IV=6E2DE304D4A21A218291FD9B59FED9BF
+PT=CD5210086FAB40E1BE27C1BEEB5E6118
+CT=72A1E7B22D6B8B8C38C4CCD545466879
+
+I=124
+KEY=C7046CA82928EA5AE1E6998399A090BB0FA630CECF3AC594B7D6FF80A1561C26
+IV=72A1E7B22D6B8B8C38C4CCD545466879
+PT=E0813D1A025BC9C11288F8B4965FD351
+CT=F5F1B011C644D119625733433C3DBB40
+
+I=125
+KEY=82AF7079A309A3B1367E4DC8EE90B8C5FA5780DF097E148DD581CCC39D6BA766
+IV=F5F1B011C644D119625733433C3DBB40
+PT=45AB1CD18A2149EBD798D44B7730287E
+CT=FDD90319FC2878AE4E23CE63C6660D1A
+
+I=126
+KEY=EB439411E1412BA8D6DB9F3052753D3F078E83C6F5566C239BA202A05B0DAA7C
+IV=FDD90319FC2878AE4E23CE63C6660D1A
+PT=69ECE46842488819E0A5D2F8BCE585FA
+CT=0B3948AEFD674622289CB41E3F668A5C
+
+I=127
+KEY=C2FDF3EB8C01693C7FB990CE6D7F56E10CB7CB6808312A01B33EB6BE646B2020
+IV=0B3948AEFD674622289CB41E3F668A5C
+PT=29BE67FA6D404294A9620FFE3F0A6BDE
+CT=9F5BF60EB5CCF9D9F3A20DA569209636
+
+I=128
+KEY=ECF0B5C32A3163495086894AB263166D93EC3D66BDFDD3D8409CBB1B0D4BB616
+IV=9F5BF60EB5CCF9D9F3A20DA569209636
+PT=2E0D4628A6300A752F3F1984DF1C408C
+CT=3FED40A5796B3D1FF8805E5EF8922511
+
+I=129
+KEY=259CAA194EE9BE90B2B1E7654CBDCD03AC017DC3C496EEC7B81CE545F5D99307
+IV=3FED40A5796B3D1FF8805E5EF8922511
+PT=C96C1FDA64D8DDD9E2376E2FFEDEDB6E
+CT=2973A39E09EF5F4F42B29E6730ECC127
+
+I=130
+KEY=FAAB18CE5FA7895BAA9EC69A55F690208572DE5DCD79B188FAAE7B22C5355220
+IV=2973A39E09EF5F4F42B29E6730ECC127
+PT=DF37B2D7114E37CB182F21FF194B5D23
+CT=F8C4C1A86B0665E2124CFFA9128FFEFD
+
+I=131
+KEY=3806BAB3764E794DF526A17BCE0112877DB61FF5A67FD46AE8E2848BD7BAACDD
+IV=F8C4C1A86B0665E2124CFFA9128FFEFD
+PT=C2ADA27D29E9F0165FB867E19BF782A7
+CT=90996F6629A41FC86A9520DD33AE5B3F
+
+I=132
+KEY=B7F781357E024140C3797D01C286E72BED2F70938FDBCBA28277A456E414F7E2
+IV=90996F6629A41FC86A9520DD33AE5B3F
+PT=8FF13B86084C380D365FDC7A0C87F5AC
+CT=9DAFB2F259BFD18945A0A6EFF9A81A75
+
+I=133
+KEY=B67D37A8E281AFD015C38A72F5662BEE7080C261D6641A2BC7D702B91DBCED97
+IV=9DAFB2F259BFD18945A0A6EFF9A81A75
+PT=018AB69D9C83EE90D6BAF77337E0CCC5
+CT=C89F523289AE2A7C8F796C2252CB0597
+
+I=134
+KEY=A47B97F34FB4A8F219ED7A59EFE40080B81F90535FCA305748AE6E9B4F77E800
+IV=C89F523289AE2A7C8F796C2252CB0597
+PT=1206A05BAD3507220C2EF02B1A822B6E
+CT=3AACC4E5DE152BB1730C6D10C9A81A0A
+
+I=135
+KEY=E8EBBFDA61B6BC6735953F8E448B5E0282B354B681DF1BE63BA2038B86DFF20A
+IV=3AACC4E5DE152BB1730C6D10C9A81A0A
+PT=4C9028292E0214952C7845D7AB6F5E82
+CT=1E315BFFFDC3DA42438E683263B496DD
+
+I=136
+KEY=EE950FF3D603DECEE18F4ACF99A623589C820F497C1CC1A4782C6BB9E56B64D7
+IV=1E315BFFFDC3DA42438E683263B496DD
+PT=067EB029B7B562A9D41A7541DD2D7D5A
+CT=9B021A44CD9FF920DFE1EC97B3EE8AE4
+
+I=137
+KEY=E073E1149A4A605E041167F3739F17240780150DB1833884A7CD872E5685EE33
+IV=9B021A44CD9FF920DFE1EC97B3EE8AE4
+PT=0EE6EEE74C49BE90E59E2D3CEA39347C
+CT=4F62EE03D7A8337ECB3DCC0EA5444C2D
+
+I=138
+KEY=BF449E4B7DFA404D3F18C0266725F67248E2FB0E662B0BFA6CF04B20F3C1A21E
+IV=4F62EE03D7A8337ECB3DCC0EA5444C2D
+PT=5F377F5FE7B020133B09A7D514BAE156
+CT=AC8767B1E15D6D1ECACCCBF2D0FAB043
+
+I=139
+KEY=3AB2898399D0F8467B37A5C916D9117AE4659CBF877666E4A63C80D2233B125D
+IV=AC8767B1E15D6D1ECACCCBF2D0FAB043
+PT=85F617C8E42AB80B442F65EF71FCE708
+CT=9CA6E27F1966AE133CB7B98C2B13C1DA
+
+I=140
+KEY=06A09B6D5A6BCA82B26D0625F2A89FA178C37EC09E10C8F79A8B395E0828D387
+IV=9CA6E27F1966AE133CB7B98C2B13C1DA
+PT=3C1212EEC3BB32C4C95AA3ECE4718EDB
+CT=B7A6788E6D9886047D1450B093F5B6FE
+
+I=141
+KEY=79A26263675E11BE581DDEA79A20CAACCF65064EF3884EF3E79F69EE9BDD6579
+IV=B7A6788E6D9886047D1450B093F5B6FE
+PT=7F02F90E3D35DB3CEA70D8826888550D
+CT=5C1785DC27BC301DEAFAEF325A4CCBFD
+
+I=142
+KEY=21DEF781026D9ACB4108C6F9847C635F93728392D4347EEE0D6586DCC191AE84
+IV=5C1785DC27BC301DEAFAEF325A4CCBFD
+PT=587C95E265338B751915185E1E5CA9F3
+CT=9577E8F6DF5921C4B518974A2F1FCF07
+
+I=143
+KEY=EB000BAA170733EA4D077BDD7DA1623506056B640B6D5F2AB87D1196EE8E6183
+IV=9577E8F6DF5921C4B518974A2F1FCF07
+PT=CADEFC2B156AA9210C0FBD24F9DD016A
+CT=09F8E3DA7C5E39F2F13C2B72001D1D56
+
+I=144
+KEY=D56A1025AB5F7B5F943B3AECAF87A2800FFD88BE773366D849413AE4EE937CD5
+IV=09F8E3DA7C5E39F2F13C2B72001D1D56
+PT=3E6A1B8FBC5848B5D93C4131D226C0B5
+CT=7344F33968E177F3864908F02915739A
+
+I=145
+KEY=876077EA9BDB2134098B73CAD4411D997CB97B871FD2112BCF083214C7860F4F
+IV=7344F33968E177F3864908F02915739A
+PT=520A67CF30845A6B9DB049267BC6BF19
+CT=EC286360EF2A54CE894ED06ACF39970C
+
+I=146
+KEY=AA9943761AD545F47EBCF5CD4584C3B3909118E7F0F845E54646E27E08BF9843
+IV=EC286360EF2A54CE894ED06ACF39970C
+PT=2DF9349C810E64C07737860791C5DE2A
+CT=89F4BE70D36A05C84FD2124F6A69786B
+
+I=147
+KEY=5C285D3FD07EF5F6664B1F4C4CA771E31965A6972392402D0994F03162D6E028
+IV=89F4BE70D36A05C84FD2124F6A69786B
+PT=F6B11E49CAABB00218F7EA810923B250
+CT=9A65E99C06E0744056365C4A26CD001F
+
+I=148
+KEY=F28851656D77922A55655DBE4610993683004F0B2572346D5FA2AC7B441BE037
+IV=9A65E99C06E0744056365C4A26CD001F
+PT=AEA00C5ABD0967DC332E42F20AB7E8D5
+CT=566ECB7B317C81CF87BC483B4B6CF417
+
+I=149
+KEY=62428DD3F6B04C564CA6D9DA9A9A64B3D56E8470140EB5A2D81EE4400F771420
+IV=566ECB7B317C81CF87BC483B4B6CF417
+PT=90CADCB69BC7DE7C19C38464DC8AFD85
+CT=16E3F727D2D4CC2E88C2A4B0DFEF34AF
+
+I=150
+KEY=78A68A0EC33E2C0198538C1EA591AF46C38D7357C6DA798C50DC40F0D098208F
+IV=16E3F727D2D4CC2E88C2A4B0DFEF34AF
+PT=1AE407DD358E6057D4F555C43F0BCBF5
+CT=6F6606018F5491FC43864FC29B572551
+
+I=151
+KEY=4EFBCF71F7A0DA7564DAF1F0488AA933ACEB7556498EE870135A0F324BCF05DE
+IV=6F6606018F5491FC43864FC29B572551
+PT=365D457F349EF674FC897DEEED1B0675
+CT=BC07194E716B4D78F64E14B6E5762439
+
+I=152
+KEY=A4BBF15395604071DF929A4922A129DD10EC6C1838E5A508E5141B84AEB921E7
+IV=BC07194E716B4D78F64E14B6E5762439
+PT=EA403E2262C09A04BB486BB96A2B80EE
+CT=BF1994171481FB4F84AB092F437EA9C7
+
+I=153
+KEY=665F10926596E8F5691ACE10AA5075AEAFF5F80F2C645E4761BF12ABEDC78820
+IV=BF1994171481FB4F84AB092F437EA9C7
+PT=C2E4E1C1F0F6A884B688545988F15C73
+CT=254FE05D25B67D3BF6C2688F46A7FAD8
+
+I=154
+KEY=15F4BA29EBAAF160AC95507FDA03D7D58ABA185209D2237C977D7A24AB6072F8
+IV=254FE05D25B67D3BF6C2688F46A7FAD8
+PT=73ABAABB8E3C1995C58F9E6F7053A27B
+CT=A03B8DB2C1C9B6C574A8499C6E5869CF
+
+I=155
+KEY=96A760AB52E1D6A5ACFCA016E98D0BA12A8195E0C81B95B9E3D533B8C5381B37
+IV=A03B8DB2C1C9B6C574A8499C6E5869CF
+PT=8353DA82B94B27C50069F069338EDC74
+CT=088F141F097F659145DE8E1EDB2300B5
+
+I=156
+KEY=7C06F9EE0327C811CEE3CC3B2B492620220E81FFC164F028A60BBDA61E1B1B82
+IV=088F141F097F659145DE8E1EDB2300B5
+PT=EAA1994551C61EB4621F6C2DC2C42D81
+CT=43703327BFDAF109F6F9C5969D3C7649
+
+I=157
+KEY=0F8AC1E3014DD99D1A440A693CB73B51617EB2D87EBE012150F2783083276DCB
+IV=43703327BFDAF109F6F9C5969D3C7649
+PT=738C380D026A118CD4A7C65217FE1D71
+CT=BDAC873D0A674CDA98105DC3070F7BE4
+
+I=158
+KEY=E595998ABEF32CABDD4A441B4042BF8BDCD235E574D94DFBC8E225F38428162F
+IV=BDAC873D0A674CDA98105DC3070F7BE4
+PT=EA1F5869BFBEF536C70E4E727CF584DA
+CT=A1A89122CF532FBC69E74A70F1E7346F
+
+I=159
+KEY=FBA3999F7BF540184E9BE7715CA8C0497D7AA4C7BB8A6247A1056F8375CF2240
+IV=A1A89122CF532FBC69E74A70F1E7346F
+PT=1E360015C5066CB393D1A36A1CEA7FC2
+CT=68C2A6FF8EABE7EA05E5DD6093C00129
+
+I=160
+KEY=65AF7CB5F5CEF75FEF0BF5F746D7DD7D15B80238352185ADA4E0B2E3E60F2369
+IV=68C2A6FF8EABE7EA05E5DD6093C00129
+PT=9E0CE52A8E3BB747A19012861A7F1D34
+CT=1EA92E63C6926082B04F69E658CFA478
+
+I=161
+KEY=7D3BA807729873EB2021AC1817B2C7D30B112C5BF3B3E52F14AFDB05BEC08711
+IV=1EA92E63C6926082B04F69E658CFA478
+PT=1894D4B2875684B4CF2A59EF51651AAE
+CT=45A943F0B6430ABA20C562469AE98A6D
+
+I=162
+KEY=5ECAEF5BF4EC899C7BFAEE2F50B864924EB86FAB45F0EF95346AB94324290D7C
+IV=45A943F0B6430ABA20C562469AE98A6D
+PT=23F1475C8674FA775BDB4237470AA341
+CT=6CDF579A8429606CC9BC56D010845954
+
+I=163
+KEY=8D394BD1C8C1D1F8A67A3BA16530662A22673831C1D98FF9FDD6EF9334AD5428
+IV=6CDF579A8429606CC9BC56D010845954
+PT=D3F3A48A3C2D5864DD80D58E358802B8
+CT=96E9E19694DB9931AC09A7B6296FEAA8
+
+I=164
+KEY=9ABEC4725C717368463710CB2D45774DB48ED9A7550216C851DF48251DC2BE80
+IV=96E9E19694DB9931AC09A7B6296FEAA8
+PT=17878FA394B0A290E04D2B6A48751167
+CT=176C9B9B32A539F35BDFB21B38C42134
+
+I=165
+KEY=3CA1E23510949D81242F16DE0E9B2B3AA3E2423C67A72F3B0A00FA3E25069FB4
+IV=176C9B9B32A539F35BDFB21B38C42134
+PT=A61F26474CE5EEE96218061523DE5C77
+CT=06004480169FB7B6D4DBA7453A85E54D
+
+I=166
+KEY=2A72AA0C7EAA3113480EF57A83C272D7A5E206BC7138988DDEDB5D7B1F837AF9
+IV=06004480169FB7B6D4DBA7453A85E54D
+PT=16D348396E3EAC926C21E3A48D5959ED
+CT=FF2F4F6E32133CE8C70252937FE5BDA6
+
+I=167
+KEY=90C0C8FC5B65BE92E643956293A70AF35ACD49D2432BA46519D90FE86066C75F
+IV=FF2F4F6E32133CE8C70252937FE5BDA6
+PT=BAB262F025CF8F81AE4D601810657824
+CT=0972CCC79C412DB6FBC5918B8E6EAB7C
+
+I=168
+KEY=E0AF49BAC4BD146E83C884327FFB682353BF8515DF6A89D3E21C9E63EE086C23
+IV=0972CCC79C412DB6FBC5918B8E6EAB7C
+PT=706F81469FD8AAFC658B1150EC5C62D0
+CT=2D8C668310308FCF7B3E325F50AA89E5
+
+I=169
+KEY=E5C29451893B7B94249E89469E58DEAD7E33E396CF5A061C9922AC3CBEA2E5C6
+IV=2D8C668310308FCF7B3E325F50AA89E5
+PT=056DDDEB4D866FFAA7560D74E1A3B68E
+CT=8342DD95F1040E763C82E36F8F74822F
+
+I=170
+KEY=4A9AD7CAFA46AE63362069120B502D33FD713E033E5E086AA5A04F5331D667E9
+IV=8342DD95F1040E763C82E36F8F74822F
+PT=AF58439B737DD5F712BEE0549508F39E
+CT=8CA83627884D9B7A62F096BD37C14EFF
+
+I=171
+KEY=21AEFC00E7CC2942F319630702ECCC6B71D90824B6139310C750D9EE06172916
+IV=8CA83627884D9B7A62F096BD37C14EFF
+PT=6B342BCA1D8A8721C5390A1509BCE158
+CT=13073AB95C0C0587372564189A4C176F
+
+I=172
+KEY=7E615F002723795F6E37182ECC0C429E62DE329DEA1F9697F075BDF69C5B3E79
+IV=13073AB95C0C0587372564189A4C176F
+PT=5FCFA300C0EF501D9D2E7B29CEE08EF5
+CT=247A01C6A7072F64CB463E6580DA222E
+
+I=173
+KEY=C2A25232803E901B35080B5CA64DEC2646A4335B4D18B9F33B3383931C811C57
+IV=247A01C6A7072F64CB463E6580DA222E
+PT=BCC30D32A71DE9445B3F13726A41AEB8
+CT=562355D078402DA76B0CCAAC2BE63DAE
+
+I=174
+KEY=46C06B83AD1C5CD849C53A11C05137141087668B35589454503F493F376721F9
+IV=562355D078402DA76B0CCAAC2BE63DAE
+PT=846239B12D22CCC37CCD314D661CDB32
+CT=841B1644CCE1BF9DB0D537733047DB7F
+
+I=175
+KEY=CB3AD5FB9E07D380841D712E7A71FC15949C70CFF9B92BC9E0EA7E4C0720FA86
+IV=841B1644CCE1BF9DB0D537733047DB7F
+PT=8DFABE78331B8F58CDD84B3FBA20CB01
+CT=DE34C065627DB86A2D0AE89FB31BDA86
+
+I=176
+KEY=240CFC15D60F6AE4A53D2C25BD71DD6E4AA8B0AA9BC493A3CDE096D3B43B2000
+IV=DE34C065627DB86A2D0AE89FB31BDA86
+PT=EF3629EE4808B96421205D0BC700217B
+CT=38DD744B95756614261178685FBF097F
+
+I=177
+KEY=FAA7CBA4AAAD9576591C12233960F1C87275C4E10EB1F5B7EBF1EEBBEB84297F
+IV=38DD744B95756614261178685FBF097F
+PT=DEAB37B17CA2FF92FC213E0684112CA6
+CT=DC1CF4E4633355111AD09BE1C6BC1E39
+
+I=178
+KEY=29E0D33A81FFDCE220D1587C36C5EB09AE6930056D82A0A6F121755A2D383746
+IV=DC1CF4E4633355111AD09BE1C6BC1E39
+PT=D347189E2B52499479CD4A5F0FA51AC1
+CT=2A5DC4E8C16753D202B638E5003AF83D
+
+I=179
+KEY=956C5751C5B439990A006DB1B52336E78434F4EDACE5F374F3974DBF2D02CF7B
+IV=2A5DC4E8C16753D202B638E5003AF83D
+PT=BC8C846B444BE57B2AD135CD83E6DDEE
+CT=70F5676DC7646EA8F8A913AE6AD21949
+
+I=180
+KEY=8AD9D44BC9018FD05B103360575592FEF4C193806B819DDC0B3E5E1147D0D632
+IV=70F5676DC7646EA8F8A913AE6AD21949
+PT=1FB5831A0CB5B64951105ED1E276A419
+CT=C44DA6A603A1E9C02F18123D5CAD5291
+
+I=181
+KEY=DA77F2DA5CD7148B15FE8CA898C9A25E308C35266820741C24264C2C1B7D84A3
+IV=C44DA6A603A1E9C02F18123D5CAD5291
+PT=50AE269195D69B5B4EEEBFC8CF9C30A0
+CT=53C2D89EC4D5867DC79168D21C9B8755
+
+I=182
+KEY=4A4FD6AED6825A2A0C2114460F029EDA634EEDB8ACF5F261E3B724FE07E603F6
+IV=53C2D89EC4D5867DC79168D21C9B8755
+PT=903824748A554EA119DF98EE97CB3C84
+CT=79B9DABE5171A614CAFDEA11637A1800
+
+I=183
+KEY=29102930967275801BD019D6766FDA1A1AF73706FD845475294ACEEF649C1BF6
+IV=79B9DABE5171A614CAFDEA11637A1800
+PT=635FFF9E40F02FAA17F10D90796D44C0
+CT=8AB92FA5EA50F1185112FE4D8D2FCC21
+
+I=184
+KEY=F4ABA34B232C18EAD6D367320651C374904E18A317D4A56D785830A2E9B3D7D7
+IV=8AB92FA5EA50F1185112FE4D8D2FCC21
+PT=DDBB8A7BB55E6D6ACD037EE4703E196E
+CT=FB97C84040732D7B308C5959059D90A9
+
+I=185
+KEY=FB140F98A79F5D5D68B80301CB7B640E6BD9D0E357A7881648D469FBEC2E477E
+IV=FB97C84040732D7B308C5959059D90A9
+PT=0FBFACD384B345B7BE6B6433CD2AA77A
+CT=D0D0119D500519BF5B4770C494B41680
+
+I=186
+KEY=BC98221C0792D22B6EB258E57DB0D8B0BB09C17E07A291A91393193F789A51FE
+IV=D0D0119D500519BF5B4770C494B41680
+PT=478C2D84A00D8F76060A5BE4B6CBBCBE
+CT=94842399FC93828D30979DAD9210B827
+
+I=187
+KEY=C92F345AC3CB803EA91C123F97E7005A2F8DE2E7FB31132423048492EA8AE9D9
+IV=94842399FC93828D30979DAD9210B827
+PT=75B71646C4595215C7AE4ADAEA57D8EA
+CT=5BDB886E7A7DBBA8679704F13F44B981
+
+I=188
+KEY=3EACAF51FEA9A9886D0B9D1B6BA8436574566A89814CA88C44938063D5CE5058
+IV=5BDB886E7A7DBBA8679704F13F44B981
+PT=F7839B0B3D6229B6C4178F24FC4F433F
+CT=A2DA893257EE0F732A80FC52887A0788
+
+I=189
+KEY=72E26FEDC250C5FED59FE29C966B61FAD68CE3BBD6A2A7FF6E137C315DB457D0
+IV=A2DA893257EE0F732A80FC52887A0788
+PT=4C4EC0BC3CF96C76B8947F87FDC3229F
+CT=2F7877481B1162B01616C9F3268B4C44
+
+I=190
+KEY=901C1268AD3582E6A9FA4C5CBB99D07EF9F494F3CDB3C54F7805B5C27B3F1B94
+IV=2F7877481B1162B01616C9F3268B4C44
+PT=E2FE7D856F6547187C65AEC02DF2B184
+CT=9FFA4AF8D0F096CC40A9F879076211E0
+
+I=191
+KEY=EAF814EC49F2254E4933FAF977D7BEEC660EDE0B1D43538338AC4DBB7C5D0A74
+IV=9FFA4AF8D0F096CC40A9F879076211E0
+PT=7AE40684E4C7A7A8E0C9B6A5CC4E6E92
+CT=886097F5BC20C157A605CBEFCA5663D7
+
+I=192
+KEY=8ED70BBA192093A0C9AD62E86C27091FEE6E49FEA16392D49EA98654B60B69A3
+IV=886097F5BC20C157A605CBEFCA5663D7
+PT=642F1F5650D2B6EE809E98111BF0B7F3
+CT=00DBBB84F52B3C9B28325161072753B6
+
+I=193
+KEY=18280464C9E683CFFF9B75A5FD74EE96EEB5F27A5448AE4FB69BD735B12C3A15
+IV=00DBBB84F52B3C9B28325161072753B6
+PT=96FF0FDED0C6106F3636174D9153E789
+CT=714A27832B326F0A8FA745012DE4D936
+
+I=194
+KEY=F464EE1298B09059016082CCC5ABC0129FFFD5F97F7AC145393C92349CC8E323
+IV=714A27832B326F0A8FA745012DE4D936
+PT=EC4CEA7651561396FEFBF76938DF2E84
+CT=5DE8A5CDBA7A6111A646AA17CA5324D4
+
+I=195
+KEY=EE7301D63C482593ABB33CF4A57F1101C2177034C500A0549F7A3823569BC7F7
+IV=5DE8A5CDBA7A6111A646AA17CA5324D4
+PT=1A17EFC4A4F8B5CAAAD3BE3860D4D113
+CT=EA197ECF36E63616EBB0D9D7C1BD9A22
+
+I=196
+KEY=10528506D50D143EAC40D83731DD55F0280E0EFBF3E6964274CAE1F497265DD5
+IV=EA197ECF36E63616EBB0D9D7C1BD9A22
+PT=FE2184D0E94531AD07F3E4C394A244F1
+CT=798349D56EC37993B0E131F8E3F64860
+
+I=197
+KEY=438E1B672254504B972927644802ED36518D472E9D25EFD1C42BD00C74D015B5
+IV=798349D56EC37993B0E131F8E3F64860
+PT=53DC9E61F75944753B69FF5379DFB8C6
+CT=545E4CD72E74F5A91B29DDBA60BCEB5A
+
+I=198
+KEY=7E32F16A4E2E125A95FF9963C6F9796105D30BF9B3511A78DF020DB6146CFEEF
+IV=545E4CD72E74F5A91B29DDBA60BCEB5A
+PT=3DBCEA0D6C7A421102D6BE078EFB9457
+CT=084142F2C892DCF8A37A509DF0D669BC
+
+I=199
+KEY=B1BEC1C124A0941D0BA6C75239C17E250D92490B7BC3C6807C785D2BE4BA9753
+IV=084142F2C892DCF8A37A509DF0D669BC
+PT=CF8C30AB6A8E86479E595E31FF380744
+CT=0A96C326C9D642F1F84C8772BCF8EB4A
+
+I=200
+KEY=80D7A5A2AE29B42143046D45B6B6B36C07048A2DB21584718434DA5958427C19
+IV=0A96C326C9D642F1F84C8772BCF8EB4A
+PT=316964638A89203C48A2AA178F77CD49
+CT=273916ED09A517CE5C6A294D82E78980
+
+I=201
+KEY=4D1C892DF27868BBB0FE803145C1D731203D9CC0BBB093BFD85EF314DAA5F599
+IV=273916ED09A517CE5C6A294D82E78980
+PT=CDCB2C8F5C51DC9AF3FAED74F377645D
+CT=7183A7C83964ECFB2A1E44FFCFEBB7C1
+
+I=202
+KEY=8C9B28041ECD5149A51207ACE38F0D0351BE3B0882D47F44F240B7EB154E4258
+IV=7183A7C83964ECFB2A1E44FFCFEBB7C1
+PT=C187A129ECB539F215EC879DA64EDA32
+CT=6015DF395D795DECA0A2F833E3614000
+
+I=203
+KEY=FF175C7C745BB06E51EEDAA4F2C61E0F31ABE431DFAD22A852E24FD8F62F0258
+IV=6015DF395D795DECA0A2F833E3614000
+PT=738C74786A96E127F4FCDD081149130C
+CT=B6B466B56B0E994E672072C273BA067D
+
+I=204
+KEY=0C84C64E1BB3B86E9AF5A8405D950B3A871F8284B4A3BBE635C23D1A85950425
+IV=B6B466B56B0E994E672072C273BA067D
+PT=F3939A326FE80800CB1B72E4AF531535
+CT=C8566E37DF2E2958DDD5D2DB49889BA8
+
+I=205
+KEY=5FF4C2A08B85338172D2779BF789DA234F49ECB36B8D92BEE817EFC1CC1D9F8D
+IV=C8566E37DF2E2958DDD5D2DB49889BA8
+PT=537004EE90368BEFE827DFDBAA1CD119
+CT=C4A8D14DB86637E94AF515764BC7DF44
+
+I=206
+KEY=BD81DE1813AEC9BAFDDC90E4A563CB338BE13DFED3EBA557A2E2FAB787DA40C9
+IV=C4A8D14DB86637E94AF515764BC7DF44
+PT=E2751CB8982BFA3B8F0EE77F52EA1110
+CT=5707495E4CBA3727FBA5D7F4F61AF35C
+
+I=207
+KEY=AE1B09CB7D99BAC0A71B3E83815F10A2DCE674A09F51927059472D4371C0B395
+IV=5707495E4CBA3727FBA5D7F4F61AF35C
+PT=139AD7D36E37737A5AC7AE67243CDB91
+CT=C770CD182DFF66E4D6A7BFEFE2820AE1
+
+I=208
+KEY=4F7491F03447293C42DE8393E7AD91741B96B9B8B2AEF4948FE092AC9342B974
+IV=C770CD182DFF66E4D6A7BFEFE2820AE1
+PT=E16F983B49DE93FCE5C5BD1066F281D6
+CT=E2044134ACD21D5AD026671BDC0CB2E4
+
+I=209
+KEY=A747EF80608CED4309800CA0B1C73081F992F88C1E7CE9CE5FC6F5B74F4E0B90
+IV=E2044134ACD21D5AD026671BDC0CB2E4
+PT=E8337E7054CBC47F4B5E8F33566AA1F5
+CT=303CF7780126AD06B5272A8350639C93
+
+I=210
+KEY=E5EBF5E471F2CA9F38492F604438B9C0C9AE0FF41F5A44C8EAE1DF341F2D9703
+IV=303CF7780126AD06B5272A8350639C93
+PT=42AC1A64117E27DC31C923C0F5FF8941
+CT=DACCD42953603A1321CAD9C236454598
+
+I=211
+KEY=B5E5C9211A5C43F2267B4A2411FC2CC21362DBDD4C3A7EDBCB2B06F62968D29B
+IV=DACCD42953603A1321CAD9C236454598
+PT=500E3CC56BAE896D1E32654455C49502
+CT=F9AB4D1D8255E83B330031EBE2ECE5C6
+
+I=212
+KEY=8D78453D63A2DD8D08BF5F250F2581CFEAC996C0CE6F96E0F82B371DCB84375D
+IV=F9AB4D1D8255E83B330031EBE2ECE5C6
+PT=389D8C1C79FE9E7F2EC415011ED9AD0D
+CT=0F28E2D4CC948D36E18F80184A594841
+
+I=213
+KEY=2E921775036404FD9939EE83C9585481E5E1741402FB1BD619A4B70581DD7F1C
+IV=0F28E2D4CC948D36E18F80184A594841
+PT=A3EA524860C6D9709186B1A6C67DD54E
+CT=A4756EAB45BCF716A52038C729E420C6
+
+I=214
+KEY=9F86FEF42701B1D779BD46BE515680FC41941ABF4747ECC0BC848FC2A8395FDA
+IV=A4756EAB45BCF716A52038C729E420C6
+PT=B114E9812465B52AE084A83D980ED47D
+CT=9834425E009006673E777E3552E83D20
+
+I=215
+KEY=2212046FFD03BA552089FBF7B2F3EF32D9A058E147D7EAA782F3F1F7FAD162FA
+IV=9834425E009006673E777E3552E83D20
+PT=BD94FA9BDA020B825934BD49E3A56FCE
+CT=AEA572D530A3694EAFF6DFDE30B80D5A
+
+I=216
+KEY=F73BB21F916D8011751AFDDDCD130A6477052A34777483E92D052E29CA696FA0
+IV=AEA572D530A3694EAFF6DFDE30B80D5A
+PT=D529B6706C6E3A445593062A7FE0E556
+CT=86394E06B621147758CAB012852035A6
+
+I=217
+KEY=EE44A367A3CDDFED7DBD980BF731B4E5F13C6432C155979E75CF9E3B4F495A06
+IV=86394E06B621147758CAB012852035A6
+PT=197F117832A05FFC08A765D63A22BE81
+CT=3CBC18C1AC02C0A7595199E08F1F552B
+
+I=218
+KEY=1558BABB3DCD830F693E7950F736BCADCD807CF36D5757392C9E07DBC0560F2D
+IV=3CBC18C1AC02C0A7595199E08F1F552B
+PT=FB1C19DC9E005CE21483E15B00070848
+CT=5A9CFD8BFE10CF7FBD0F9A3FAF6C117B
+
+I=219
+KEY=D083F58141F5E5AF3D5479739D55780D971C81789347984691919DE46F3A1E56
+IV=5A9CFD8BFE10CF7FBD0F9A3FAF6C117B
+PT=C5DB4F3A7C3866A0546A00236A63C4A0
+CT=61A437D4E2F1C3779F1EBE906C5D2C12
+
+I=220
+KEY=C60824F2DDC67623D270974E9F87BD27F6B8B6AC71B65B310E8F237403673244
+IV=61A437D4E2F1C3779F1EBE906C5D2C12
+PT=168BD1739C33938CEF24EE3D02D2C52A
+CT=FC675EE1B12B47410A20CFAC23FD20EE
+
+I=221
+KEY=F73A715AD84DB0A6F55AD584922001920ADFE84DC09D1C7004AFECD8209A12AA
+IV=FC675EE1B12B47410A20CFAC23FD20EE
+PT=313255A8058BC685272A42CA0DA7BCB5
+CT=82E3FB6189716D94C8E9D30E1ECCABC4
+
+I=222
+KEY=6ABBDCE21E2ECECBCAA3473897A2E178883C132C49EC71E4CC463FD63E56B96E
+IV=82E3FB6189716D94C8E9D30E1ECCABC4
+PT=9D81ADB8C6637E6D3FF992BC0582E0EA
+CT=BD84DCE4994B505EED71596B454BDF85
+
+I=223
+KEY=0D4F68CDB9B53B08E22DDDFE4FD5FCC035B8CFC8D0A721BA213766BD7B1D66EB
+IV=BD84DCE4994B505EED71596B454BDF85
+PT=67F4B42FA79BF5C3288E9AC6D8771DB8
+CT=1B3AA490C6E874BA77CE55D71789616C
+
+I=224
+KEY=3D8E3121698DD7E9D1835EFF5FA02DB22E826B58164F550056F9336A6C940787
+IV=1B3AA490C6E874BA77CE55D71789616C
+PT=30C159ECD038ECE133AE83011075D172
+CT=D6EE171B39B5E40535FBF5A7CB4C6953
+
+I=225
+KEY=1A5B2249CA785F0DB58FF5B07CCCFCDEF86C7C432FFAB1056302C6CDA7D86ED4
+IV=D6EE171B39B5E40535FBF5A7CB4C6953
+PT=27D51368A3F588E4640CAB4F236CD16C
+CT=8691BE10D13B4C08246938750EE33643
+
+I=226
+KEY=48AD5DEF217F83DC5039ECD1191ABE3A7EFDC253FEC1FD0D476BFEB8A93B5897
+IV=8691BE10D13B4C08246938750EE33643
+PT=52F67FA6EB07DCD1E5B6196165D642E4
+CT=E40AD0EE818639E37349E1132B138D63
+
+I=227
+KEY=FEB84B0B264A8A6FB8D4DE065DA68A479AF712BD7F47C4EE34221FAB8228D5F4
+IV=E40AD0EE818639E37349E1132B138D63
+PT=B61516E4073509B3E8ED32D744BC347D
+CT=6E40A22767A39C978F279D40B447099D
+
+I=228
+KEY=2FE79FCC3C959901BAAEE8C55B71D01FF4B7B09A18E45879BB0582EB366FDC69
+IV=6E40A22767A39C978F279D40B447099D
+PT=D15FD4C71ADF136E027A36C306D75A58
+CT=C2DE8C5200F6FCBF1A4D6178909DF110
+
+I=229
+KEY=C3EB1424EFD0ACDF3670C4943CB2CF5936693CC81812A4C6A148E393A6F22D79
+IV=C2DE8C5200F6FCBF1A4D6178909DF110
+PT=EC0C8BE8D34535DE8CDE2C5167C31F46
+CT=104CBECB1134CAE09B2FE8C5CE2E0901
+
+I=230
+KEY=DF9F70702DA816906F3907575DF4D3032625820309266E263A670B5668DC2478
+IV=104CBECB1134CAE09B2FE8C5CE2E0901
+PT=1C746454C278BA4F5949C3C361461C5A
+CT=65287F66F01AC054B1051D700EDDBF2B
+
+I=231
+KEY=F6C4CE3006A43EFBE18C5FF305F32C37430DFD65F93CAE728B62162666019B53
+IV=65287F66F01AC054B1051D700EDDBF2B
+PT=295BBE402B0C286B8EB558A45807FF34
+CT=4933D44FD414225CB1E6951240D28150
+
+I=232
+KEY=3963CE7465D89FBE550649326262DB450A3E292A2D288C2E3A84833426D31A03
+IV=4933D44FD414225CB1E6951240D28150
+PT=CFA70044637CA145B48A16C16791F772
+CT=3733351F76DE0E07581F84600E38EFDD
+
+I=233
+KEY=42468662273D8CB3EFAB19DBC802888B3D0D1C355BF68229629B075428EBF5DE
+IV=3733351F76DE0E07581F84600E38EFDD
+PT=7B25481642E5130DBAAD50E9AA6053CE
+CT=F16F22EB9CCD854591AE2FC28E1D4B59
+
+I=234
+KEY=E2B3E5EA6573FC8ABE4E890FA4F5502DCC623EDEC73B076CF3352896A6F6BE87
+IV=F16F22EB9CCD854591AE2FC28E1D4B59
+PT=A0F56388424E703951E590D46CF7D8A6
+CT=1D607C6E9BAD454DD5DE785F2A78F990
+
+I=235
+KEY=FDB55AF96E09AF677AA4737992E13C9ED10242B05C96422126EB50C98C8E4717
+IV=1D607C6E9BAD454DD5DE785F2A78F990
+PT=1F06BF130B7A53EDC4EAFA7636146CB3
+CT=7B16B6A8F88E05F6A9A036A67CB8A2B6
+
+I=236
+KEY=E546D74518CF4AA64B399EA321C570CAAA14F418A41847D78F4B666FF036E5A1
+IV=7B16B6A8F88E05F6A9A036A67CB8A2B6
+PT=18F38DBC76C6E5C1319DEDDAB3244C54
+CT=63AD66FCF9D52195CD0339443F554311
+
+I=237
+KEY=2F9B91A24BEF0E503DC576E4F8D32C16C9B992E45DCD664242485F2BCF63A6B0
+IV=63AD66FCF9D52195CD0339443F554311
+PT=CADD46E7532044F676FCE847D9165CDC
+CT=6293FBB897D8F0C60171BEA3072CA512
+
+I=238
+KEY=97B7DF112EFFE9279D5EDF932889D84BAB2A695CCA1596844339E188C84F03A2
+IV=6293FBB897D8F0C60171BEA3072CA512
+PT=B82C4EB36510E777A09BA977D05AF45D
+CT=9555D7F244448C80E965CE6AB7EF0F7B
+
+I=239
+KEY=39F26B429FE4111DAA984F03112B339F3E7FBEAE8E511A04AA5C2FE27FA00CD9
+IV=9555D7F244448C80E965CE6AB7EF0F7B
+PT=AE45B453B11BF83A37C6909039A2EBD4
+CT=FA242C9DB2984E9EFA8CD98AE7C29D6F
+
+I=240
+KEY=64C6D001CB3C8AFC24A72DA11D172727C45B92333CC9549A50D0F668986291B6
+IV=FA242C9DB2984E9EFA8CD98AE7C29D6F
+PT=5D34BB4354D89BE18E3F62A20C3C14B8
+CT=2998B59B0441F068D7F3FCE7AEAA6FD9
+
+I=241
+KEY=FE56E2EB2434CA49D46A684DBCE2426CEDC327A83888A4F287230A8F36C8FE6F
+IV=2998B59B0441F068D7F3FCE7AEAA6FD9
+PT=9A9032EAEF0840B5F0CD45ECA1F5654B
+CT=A3F77BBA27BA88F33D4330EB2CC0EFBA
+
+I=242
+KEY=0F9B3CAD0EDFA9C429F3A005C78FE9F84E345C121F322C01BA603A641A0811D5
+IV=A3F77BBA27BA88F33D4330EB2CC0EFBA
+PT=F1CDDE462AEB638DFD99C8487B6DAB94
+CT=9C751C64BCB82229ABA5130353455CCB
+
+I=243
+KEY=1725A4C019FB909FB1DE2ACA00E9A33DD2414076A38A0E2811C52967494D4D1E
+IV=9C751C64BCB82229ABA5130353455CCB
+PT=18BE986D1724395B982D8ACFC7664AC5
+CT=540DE482B7170E925FA4B429F6BCD458
+
+I=244
+KEY=E2A619367235AA4611A72FD4FAF68FB3864CA4F4149D00BA4E619D4EBFF19946
+IV=540DE482B7170E925FA4B429F6BCD458
+PT=F583BDF66BCE3AD9A079051EFA1F2C8E
+CT=6AADE1E1A12F5C83AF434CAD95B29678
+
+I=245
+KEY=8629FB2CC8C06A07EC910681499E917FECE14515B5B25C39E122D1E32A430F3E
+IV=6AADE1E1A12F5C83AF434CAD95B29678
+PT=648FE21ABAF5C041FD362955B3681ECC
+CT=11308758A1C2075FEAECD260867CA343
+
+I=246
+KEY=5EDD76C395D2A0D3D547CFB394B439EAFDD1C24D14705B660BCE0383AC3FAC7D
+IV=11308758A1C2075FEAECD260867CA343
+PT=D8F48DEF5D12CAD439D6C932DD2AA895
+CT=14C9A904A3909A8FF44D88E22F8626DF
+
+I=247
+KEY=AF3FA8D6034564D7151C3933C7986CFCE9186B49B7E0C1E9FF838B6183B98AA2
+IV=14C9A904A3909A8FF44D88E22F8626DF
+PT=F1E2DE159697C404C05BF680532C5516
+CT=A042D7F391A37E5A3EDB3022400EC797
+
+I=248
+KEY=8ACC720216DBDBDB4C213FE65E575A09495ABCBA2643BFB3C158BB43C3B74D35
+IV=A042D7F391A37E5A3EDB3022400EC797
+PT=25F3DAD4159EBF0C593D06D599CF36F5
+CT=439FEF326223A65F7A555C6231178190
+
+I=249
+KEY=F2882A52603203A71895A5870CCF7EE40AC55388446019ECBB0DE721F2A0CCA5
+IV=439FEF326223A65F7A555C6231178190
+PT=7844585076E9D87C54B49A61529824ED
+CT=6FE1286C19AA3BC802F1C6C7B58DB4C4
+
+I=250
+KEY=57EFB10BFC21E28397A9D5E5A533D35B65247BE45DCA2224B9FC21E6472D7861
+IV=6FE1286C19AA3BC802F1C6C7B58DB4C4
+PT=A5679B599C13E1248F3C7062A9FCADBF
+CT=C38D763981392FF038573CA341DD8EA1
+
+I=251
+KEY=19328A5147BC2E7C5149DA257487D734A6A90DDDDCF30DD481AB1D4506F0F6C0
+IV=C38D763981392FF038573CA341DD8EA1
+PT=4EDD3B5ABB9DCCFFC6E00FC0D1B4046F
+CT=5FD553A2848C683B138D50F2741B124D
+
+I=252
+KEY=ED66DE43FE0F966850EF6754E21B69A0F97C5E7F587F65EF92264DB772EBE48D
+IV=5FD553A2848C683B138D50F2741B124D
+PT=F4545412B9B3B81401A6BD71969CBE94
+CT=910CDCBE38068A51185A879FF2B45B9C
+
+I=253
+KEY=E53D9016DE7DF4E2377968864B6F69F8687082C16079EFBE8A7CCA28805FBF11
+IV=910CDCBE38068A51185A879FF2B45B9C
+PT=085B4E552072628A67960FD2A9740058
+CT=E0A0E68A14893501D75BC42B8EFC6F96
+
+I=254
+KEY=C88C4383E2D16541765E5DB85957C59188D0644B74F0DABF5D270E030EA3D087
+IV=E0A0E68A14893501D75BC42B8EFC6F96
+PT=2DB1D3953CAC91A34127353E1238AC69
+CT=A66DD21DA627347F962A0AB7DCA887ED
+
+I=255
+KEY=6F01CC5C22DE71C7C2D5B429AA756A392EBDB656D2D7EEC0CB0D04B4D20B576A
+IV=A66DD21DA627347F962A0AB7DCA887ED
+PT=A78D8FDFC00F1486B48BE991F322AFA8
+CT=87551BC7A6B6D9B76239CB8A31FF1993
+
+I=256
+KEY=DAC405506CD3779FC2400B459B7C6B6EA9E8AD9174613777A934CF3EE3F44EF9
+IV=87551BC7A6B6D9B76239CB8A31FF1993
+PT=B5C5C90C4E0D06580095BF6C31090157
+CT=B909B206A041F33EB3AC7ED481DFBA21
+
+I=257
+KEY=E482333E6FBAA8427A2E30D56069E0B810E11F97D420C4491A98B1EA622BF4D8
+IV=B909B206A041F33EB3AC7ED481DFBA21
+PT=3E46366E0369DFDDB86E3B90FB158BD6
+CT=DE5E71F446794D3402400C96FBFEB93F
+
+I=258
+KEY=176CAD69CD20690B95DA40B95C43AC54CEBF6E639259897D18D8BD7C99D54DE7
+IV=DE5E71F446794D3402400C96FBFEB93F
+PT=F3EE9E57A29AC149EFF4706C3C2A4CEC
+CT=175A7C580A99E985A2FD2F185D9BAADB
+
+I=259
+KEY=FA4DD79A64960C8264624CDF215B54A1D9E5123B98C060F8BA259264C44EE73C
+IV=175A7C580A99E985A2FD2F185D9BAADB
+PT=ED217AF3A9B66589F1B80C667D18F8F5
+CT=413EB5D166C1D196F0239FF34D184013
+
+I=260
+KEY=49855C1008EAF59432518A9F3807A0B398DBA7EAFE01B16E4A060D978956A72F
+IV=413EB5D166C1D196F0239FF34D184013
+PT=B3C88B8A6C7CF9165633C640195CF412
+CT=69A3A63C580336296FF826600C754747
+
+I=261
+KEY=849D231AE9F90F233F328BE6EE0AC180F17801D6A602874725FE2BF78523E068
+IV=69A3A63C580336296FF826600C754747
+PT=CD187F0AE113FAB70D630179D60D6133
+CT=B9AF0CA2B502C2DEB66834BD729AA528
+
+I=262
+KEY=40E3F7EA3E7CFBDBF57935DBB124CF7F48D70D741300459993961F4AF7B94540
+IV=B9AF0CA2B502C2DEB66834BD729AA528
+PT=C47ED4F0D785F4F8CA4BBE3D5F2E0EFF
+CT=99E16968796AB521FC460A8DF6744FA8
+
+I=263
+KEY=4FDF8D16B85E527490FBE95EA34138D6D136641C6A6AF0B86FD015C701CD0AE8
+IV=99E16968796AB521FC460A8DF6744FA8
+PT=0F3C7AFC8622A9AF6582DC851265F7A9
+CT=7B871B0153657949D1FE7259E16791B7
+
+I=264
+KEY=6AD7099EA6DC50F5CC836C3EB934CF92AAB17F1D390F89F1BE2E679EE0AA9B5F
+IV=7B871B0153657949D1FE7259E16791B7
+PT=250884881E8202815C7885601A75F744
+CT=8D6B80EAC01BF7E204A79DD14BFDB71A
+
+I=265
+KEY=0860DD776AD2014ED90D0837A5A298B627DAFFF7F9147E13BA89FA4FAB572C45
+IV=8D6B80EAC01BF7E204A79DD14BFDB71A
+PT=62B7D4E9CC0E51BB158E64091C965724
+CT=DAD6A83408559AD3003C6995DC099303
+
+I=266
+KEY=9E8757199D96CA08B9C3CEF817E902B8FD0C57C3F141E4C0BAB593DA775EBF46
+IV=DAD6A83408559AD3003C6995DC099303
+PT=96E78A6EF744CB4660CEC6CFB24B9A0E
+CT=AA6EF32AFC8AA6ADCDE86D86CC59AFB4
+
+I=267
+KEY=483AD9696154B929F35016B648F5952B5762A4E90DCB426D775DFE5CBB0710F2
+IV=AA6EF32AFC8AA6ADCDE86D86CC59AFB4
+PT=D6BD8E70FCC273214A93D84E5F1C9793
+CT=713F9516A55FBFA4AE8155EC12A3AB5D
+
+I=268
+KEY=027B7F5F83B26099A4CE8FCC1AB84529265D31FFA894FDC9D9DCABB0A9A4BBAF
+IV=713F9516A55FBFA4AE8155EC12A3AB5D
+PT=4A41A636E2E6D9B0579E997A524DD002
+CT=B2E4BEAF6DB84214E379B89697191379
+
+I=269
+KEY=D7AEFAD28855BB04A9604527F8376CAF94B98F50C52CBFDD3AA513263EBDA8D6
+IV=B2E4BEAF6DB84214E379B89697191379
+PT=D5D5858D0BE7DB9D0DAECAEBE28F2986
+CT=9FE3B8941D9F85B1400CC45B7BDE8E9F
+
+I=270
+KEY=B5EBE7CB901F69E61EC6F011E6A46A2E0B5A37C4D8B33A6C7AA9D77D45632649
+IV=9FE3B8941D9F85B1400CC45B7BDE8E9F
+PT=62451D19184AD2E2B7A6B5361E930681
+CT=E9ABFC5563B4AD1718EF4A91F7D60913
+
+I=271
+KEY=571805B63BC20F5784AF56FDB71CBCD7E2F1CB91BB07977B62469DECB2B52F5A
+IV=E9ABFC5563B4AD1718EF4A91F7D60913
+PT=E2F3E27DABDD66B19A69A6EC51B8D6F9
+CT=D825DC1C8C73A84BDFEFD9799D9E3960
+
+I=272
+KEY=9EED79D9ABB11094FB4475ED2EC042133AD4178D37743F30BDA944952F2B163A
+IV=D825DC1C8C73A84BDFEFD9799D9E3960
+PT=C9F57C6F90731FC37FEB231099DCFEC4
+CT=7D0DC4C31259FD0A46D2D2282F1FE22E
+
+I=273
+KEY=EF905E20846E064A3B3281FD2BD59AB647D9D34E252DC23AFB7B96BD0034F414
+IV=7D0DC4C31259FD0A46D2D2282F1FE22E
+PT=717D27F92FDF16DEC076F4100515D8A5
+CT=93FAFC16EFF504A9D2B791A272A78135
+
+I=274
+KEY=8F219C67ACF0F1C745FA0ABBADE96015D4232F58CAD8C69329CC071F72937521
+IV=93FAFC16EFF504A9D2B791A272A78135
+PT=60B1C247289EF78D7EC88B46863CFAA3
+CT=EF387517F8C781A79700C8196DCA6F1A
+
+I=275
+KEY=48C6408FD8FA84D30DD53B83B31C425D3B1B5A4F321F4734BECCCF061F591A3B
+IV=EF387517F8C781A79700C8196DCA6F1A
+PT=C7E7DCE8740A7514482F31381EF52248
+CT=A6166002C7239645D55494BB64840B26
+
+I=276
+KEY=1C9EB0648715CA5738A4FD27A63693A09D0D3A4DF53CD1716B985BBD7BDD111D
+IV=A6166002C7239645D55494BB64840B26
+PT=5458F0EB5FEF4E843571C6A4152AD1FD
+CT=FB35646B2008AD29AFF508B94179F223
+
+I=277
+KEY=4AA2E4BAC74E8CD9AEA969550D27877866385E26D5347C58C46D53043AA4E33E
+IV=FB35646B2008AD29AFF508B94179F223
+PT=563C54DE405B468E960D9472AB1114D8
+CT=59C1692D4598AD622B6586A06892E11D
+
+I=278
+KEY=B9F5A3BAAA0C2F6EA5E835F6E6E5D50E3FF9370B90ACD13AEF08D5A452360223
+IV=59C1692D4598AD622B6586A06892E11D
+PT=F35747006D42A3B70B415CA3EBC25276
+CT=3131E251A6A4AC7226A1809553198AB8
+
+I=279
+KEY=EF46814F8656D3D8ABAF3B08EFEBC3150EC8D55A36087D48C9A95531012F889B
+IV=3131E251A6A4AC7226A1809553198AB8
+PT=56B322F52C5AFCB60E470EFE090E161B
+CT=2E30D8D5B7B636307A6D354FBED41A2D
+
+I=280
+KEY=3DFBE0FE20F0421CAABD62E2CDB0E60F20F80D8F81BE4B78B3C4607EBFFB92B6
+IV=2E30D8D5B7B636307A6D354FBED41A2D
+PT=D2BD61B1A6A691C4011259EA225B251A
+CT=6D791952F9416FC09B78517A2FFE986F
+
+I=281
+KEY=5197CF05753D155C5B08A5EB51B82F2D4D8114DD78FF24B828BC310490050AD9
+IV=6D791952F9416FC09B78517A2FFE986F
+PT=6C6C2FFB55CD5740F1B5C7099C08C922
+CT=37A8E0B9375AD5669A396D980D68D0F3
+
+I=282
+KEY=B3EFE2F914264AAAB7C7FD9C4843619E7A29F4644FA5F1DEB2855C9C9D6DDA2A
+IV=37A8E0B9375AD5669A396D980D68D0F3
+PT=E2782DFC611B5FF6ECCF587719FB4EB3
+CT=BC65630DB71EE8DA2194E5DFBC48360E
+
+I=283
+KEY=CAAB7758FF4AFF39A98C2202A26165CFC64C9769F8BB19049311B9432125EC24
+IV=BC65630DB71EE8DA2194E5DFBC48360E
+PT=794495A1EB6CB5931E4BDF9EEA220451
+CT=9C47136C1B510BFCEFA7F6659BDA08C2
+
+I=284
+KEY=CC38852E17544DB004372C4A3AA3DFDB5A0B8405E3EA12F87CB64F26BAFFE4E6
+IV=9C47136C1B510BFCEFA7F6659BDA08C2
+PT=0693F276E81EB289ADBB0E4898C2BA14
+CT=68AC57D13EC53C250FEBFC64B1992B1C
+
+I=285
+KEY=108FE55553F353DFABD421E15A18C9F532A7D3D4DD2F2EDD735DB3420B66CFFA
+IV=68AC57D13EC53C250FEBFC64B1992B1C
+PT=DCB7607B44A71E6FAFE30DAB60BB162E
+CT=9A8C11E031E57B77138A3637784D1D71
+
+I=286
+KEY=C432EA6E854DE8C191C6F0ED4A2BF1D7A82BC234ECCA55AA60D78575732BD28B
+IV=9A8C11E031E57B77138A3637784D1D71
+PT=D4BD0F3BD6BEBB1E3A12D10C10333822
+CT=3BBB1E76A491A5AA145ED931BB886333
+
+I=287
+KEY=980941D5FEFD458061B1B443E39818299390DC42485BF00074895C44C8A3B1B8
+IV=3BBB1E76A491A5AA145ED931BB886333
+PT=5C3BABBB7BB0AD41F07744AEA9B3E9FE
+CT=F79F1B46F57BDD36B58DDA33619D3920
+
+I=288
+KEY=B4FF33FB094612B6A3438A285C3AEA41640FC704BD202D36C1048677A93E8898
+IV=F79F1B46F57BDD36B58DDA33619D3920
+PT=2CF6722EF7BB5736C2F23E6BBFA2F268
+CT=F1C3ED72D0B6D917DD6F8AE86CFD8CBF
+
+I=289
+KEY=BC81027596771F9C591BE6C61762B1E795CC2A766D96F4211C6B0C9FC5C30427
+IV=F1C3ED72D0B6D917DD6F8AE86CFD8CBF
+PT=087E318E9F310D2AFA586CEE4B585BA6
+CT=EAF1AACEEB9F9BE0E880911BFEEAC2AC
+
+I=290
+KEY=D41458000DDED43B83DAA81B1D7FFB597F3D80B886096FC1F4EB9D843B29C68B
+IV=EAF1AACEEB9F9BE0E880911BFEEAC2AC
+PT=68955A759BA9CBA7DAC14EDD0A1D4ABE
+CT=7B35179E67E9B40346F7DE6356EDC98F
+
+I=291
+KEY=FACDC2B3BA9E125B2A734DE75F99F48C04089726E1E0DBC2B21C43E76DC40F04
+IV=7B35179E67E9B40346F7DE6356EDC98F
+PT=2ED99AB3B740C660A9A9E5FC42E60FD5
+CT=0EDE849D7E56B296B12C1EDF37436A8D
+
+I=292
+KEY=E73022253439EB4464CE0B205BBB0F1F0AD613BB9FB6695403305D385A876589
+IV=0EDE849D7E56B296B12C1EDF37436A8D
+PT=1DFDE0968EA7F91F4EBD46C70422FB93
+CT=D02F1EAF3CF6A6B681BAF8ECB921FFC4
+
+I=293
+KEY=9F3671205266DC4F7C771EBA74265F36DAF90D14A340CFE2828AA5D4E3A69A4D
+IV=D02F1EAF3CF6A6B681BAF8ECB921FFC4
+PT=78065305665F370B18B9159A2F9D5029
+CT=E365BE1A125C6930DFDCBB33E6937EC5
+
+I=294
+KEY=111A3E012C9D5CB2967E8BD22907D6F7399CB30EB11CA6D25D561EE70535E488
+IV=E365BE1A125C6930DFDCBB33E6937EC5
+PT=8E2C4F217EFB80FDEA0995685D2189C1
+CT=C5B24EEC5CDD17AA56838B09EC4AB725
+
+I=295
+KEY=15DA3EE4EE9A560B05493FFC971713A5FC2EFDE2EDC1B1780BD595EEE97F53AD
+IV=C5B24EEC5CDD17AA56838B09EC4AB725
+PT=04C000E5C2070AB99337B42EBE10C552
+CT=4D8A43CD28BBCB86953FA55A409BF130
+
+I=296
+KEY=2C8B30484D954192818342F3766C1415B1A4BE2FC57A7AFE9EEA30B4A9E4A29D
+IV=4D8A43CD28BBCB86953FA55A409BF130
+PT=39510EACA30F179984CA7D0FE17B07B0
+CT=A524A6329E6DCE041F72459234ECDE78
+
+I=297
+KEY=0F162BAD5F298EE0B0164CFED6A7AC271480181D5B17B4FA819875269D087CE5
+IV=A524A6329E6DCE041F72459234ECDE78
+PT=239D1BE512BCCF7231950E0DA0CBB832
+CT=90BBC5130D1C06182F737FE7F0FCD00D
+
+I=298
+KEY=62744CA02B6684D05A91F2049D403480843BDD0E560BB2E2AEEB0AC16DF4ACE8
+IV=90BBC5130D1C06182F737FE7F0FCD00D
+PT=6D62670D744F0A30EA87BEFA4BE798A7
+CT=35F293EDDEC8D9446A4ACD34602839B5
+
+I=299
+KEY=21F5373DA5D6BF15BC163383F62EA92FB1C94EE388C36BA6C4A1C7F50DDC955D
+IV=35F293EDDEC8D9446A4ACD34602839B5
+PT=43817B9D8EB03BC5E687C1876B6E9DAF
+CT=E45CF478D7C84325143165F58B041A13
+
+I=300
+KEY=4CF4A508B4DF37A831916353620DC1F45595BA9B5F0B2883D090A20086D88F4E
+IV=E45CF478D7C84325143165F58B041A13
+PT=6D019235110988BD8D8750D0942368DB
+CT=964983C30745D7EEA1BD5E287DAC466C
+
+I=301
+KEY=35C99C004D01E89F94A9B3BC79C492D7C3DC3958584EFF6D712DFC28FB74C922
+IV=964983C30745D7EEA1BD5E287DAC466C
+PT=793D3908F9DEDF37A538D0EF1BC95323
+CT=6834813D8403A963AD36C1A18CA605C0
+
+I=302
+KEY=F185723D6A2D2A6F9F4B9194A444AA2AABE8B865DC4D560EDC1B3D8977D2CCE2
+IV=6834813D8403A963AD36C1A18CA605C0
+PT=C44CEE3D272CC2F00BE22228DD8038FD
+CT=61F35AA76E1E0EC2D5E4F4F432B68260
+
+I=303
+KEY=B571B0BC6CFD2BA23611FB9A900A31FACA1BE2C2B25358CC09FFC97D45644E82
+IV=61F35AA76E1E0EC2D5E4F4F432B68260
+PT=44F4C28106D001CDA95A6A0E344E9BD0
+CT=DD081A96602E6665B860466B8D14050E
+
+I=304
+KEY=2A5757156C596DE633D0D8908011C3771713F854D27D3EA9B19F8F16C8704B8C
+IV=DD081A96602E6665B860466B8D14050E
+PT=9F26E7A900A4464405C1230A101BF28D
+CT=5BF18EA3D7F3ED1D941EA1B995313B98
+
+I=305
+KEY=DA008B517FA48E908A72B8525CC31AEF4CE276F7058ED3B425812EAF5D417014
+IV=5BF18EA3D7F3ED1D941EA1B995313B98
+PT=F057DC4413FDE376B9A260C2DCD2D998
+CT=74C361B6A13013E9ABF6841601513539
+
+I=306
+KEY=E313244DC22AC16C1D59AC494AA728D738211741A4BEC05D8E77AAB95C10452D
+IV=74C361B6A13013E9ABF6841601513539
+PT=3913AF1CBD8E4FFC972B141B16643238
+CT=9937614570FD404D5B39BA43D3A20602
+
+I=307
+KEY=92A7173E943CBA80AF56203552625E8AA1167604D4438010D54E10FA8FB2432F
+IV=9937614570FD404D5B39BA43D3A20602
+PT=71B4337356167BECB20F8C7C18C5765D
+CT=726FCDDF8E6738B51D767828EBDFC71E
+
+I=308
+KEY=242C75C141A58DC403020E52421BB347D379BBDB5A24B8A5C83868D2646D8431
+IV=726FCDDF8E6738B51D767828EBDFC71E
+PT=B68B62FFD5993744AC542E671079EDCD
+CT=78F735344BF10EED47969F1C02ECBF8C
+
+I=309
+KEY=5247008C3EB79AA67E5D2E0B95D0AC3AAB8E8EEF11D5B6488FAEF7CE66813BBD
+IV=78F735344BF10EED47969F1C02ECBF8C
+PT=766B754D7F1217627D5F2059D7CB1F7D
+CT=7D6A6CA54B084105DF6A778A4913BB04
+
+I=310
+KEY=06E7C1A6C8BC6A3355A86F61B41E70C6D6E4E24A5ADDF74D50C480442F9280B9
+IV=7D6A6CA54B084105DF6A778A4913BB04
+PT=54A0C12AF60BF0952BF5416A21CEDCFC
+CT=11F0A303D6C0ED5E18F40248AF1A794B
+
+I=311
+KEY=D7722746B58D494BE9B97F586CA4BB0AC71441498C1D1A134830820C8088F9F2
+IV=11F0A303D6C0ED5E18F40248AF1A794B
+PT=D195E6E07D312378BC111039D8BACBCC
+CT=2A715E8AC7101415E65EBF34CC4CD786
+
+I=312
+KEY=98B1E5954DE8000B6FFFE98D918B6237ED651FC34B0D0E06AE6E3D384CC42E74
+IV=2A715E8AC7101415E65EBF34CC4CD786
+PT=4FC3C2D3F8654940864696D5FD2FD93D
+CT=965E8AF93D390E424C9F4F1FBF9D98A5
+
+I=313
+KEY=74B910207ACD1D7C801724D53ED6BBC47B3B953A76340044E2F17227F359B6D1
+IV=965E8AF93D390E424C9F4F1FBF9D98A5
+PT=EC08F5B537251D77EFE8CD58AF5DD9F3
+CT=294782DD29C65B6C445C5D92F50E6D19
+
+I=314
+KEY=3E1AD36FDCC33F6B3425B5D52717845E527C17E75FF25B28A6AD2FB50657DBC8
+IV=294782DD29C65B6C445C5D92F50E6D19
+PT=4AA3C34FA60E2217B432910019C13F9A
+CT=E22098E7EDBEECC49FA8E31B76E925CA
+
+I=315
+KEY=BE9F93FE153DF61370F6709F8265DCCDB05C8F00B24CB7EC3905CCAE70BEFE02
+IV=E22098E7EDBEECC49FA8E31B76E925CA
+PT=80854091C9FEC97844D3C54AA5725893
+CT=24E80C1F59A4EA36044358E0C0D4F29D
+
+I=316
+KEY=A790F593CFA1643BD2EB3A1AAB8176A294B4831FEBE85DDA3D46944EB06A0C9F
+IV=24E80C1F59A4EA36044358E0C0D4F29D
+PT=190F666DDA9C9228A21D4A8529E4AA6F
+CT=63CF21803941B521532FF36F9FBFC7BD
+
+I=317
+KEY=0CF6F000352B4B583E4AEE707D111DC9F77BA29FD2A9E8FB6E6967212FD5CB22
+IV=63CF21803941B521532FF36F9FBFC7BD
+PT=AB660593FA8A2F63ECA1D46AD6906B6B
+CT=250941C1D45C82B0D9C381293CDD833A
+
+I=318
+KEY=1F875BCF1967857990EC97864B1EA9F8D272E35E06F56A4BB7AAE60813084818
+IV=250941C1D45C82B0D9C381293CDD833A
+PT=1371ABCF2C4CCE21AEA679F6360FB431
+CT=8303B962DAFC4A225C0FD6EA60D29CF4
+
+I=319
+KEY=42FE25BF51418FE7A7C7A1828219E1DB51715A3CDC092069EBA530E273DAD4EC
+IV=8303B962DAFC4A225C0FD6EA60D29CF4
+PT=5D797E7048260A9E372B3604C9074823
+CT=29E2DB359FAB42C0A83A4059A059CB51
+
+I=320
+KEY=6C821A4893FE0EAC88FC1F98BD44AD0A7893810943A262A9439F70BBD3831FBD
+IV=29E2DB359FAB42C0A83A4059A059CB51
+PT=2E7C3FF7C2BF814B2F3BBE1A3F5D4CD1
+CT=02BDB7EC18279FA9B7788D95FEB4000E
+
+I=321
+KEY=411670D389D0A04859FDC26DE5AAD1297A2E36E55B85FD00F4E7FD2E2D371FB3
+IV=02BDB7EC18279FA9B7788D95FEB4000E
+PT=2D946A9B1A2EAEE4D101DDF558EE7C23
+CT=3960A92A34967F13B754F2265A6F68C1
+
+I=322
+KEY=851BCD18F6043DE625BBEA33E1E860E3434E9FCF6F13821343B30F0877587772
+IV=3960A92A34967F13B754F2265A6F68C1
+PT=C40DBDCB7FD49DAE7C46285E0442B1CA
+CT=EF396AB8613AC6083932734D38869458
+
+I=323
+KEY=1944F363F3143A380F26BD4831A6BD9EAC77F5770E29441B7A817C454FDEE32A
+IV=EF396AB8613AC6083932734D38869458
+PT=9C5F3E7B051007DE2A9D577BD04EDD7D
+CT=CB73B8D257CC1A8235E48DA0E6AECC4E
+
+I=324
+KEY=C2F3C203F591C78914E31BA1E083AB9867044DA559E55E994F65F1E5A9702F64
+IV=CB73B8D257CC1A8235E48DA0E6AECC4E
+PT=DBB731600685FDB11BC5A6E9D1251606
+CT=3B0B12757B5D1B6E0130FCC306E9DBAA
+
+I=325
+KEY=0DCB66B972631AFBB1DA22F1418EE1C45C0F5FD022B845F74E550D26AF99F4CE
+IV=3B0B12757B5D1B6E0130FCC306E9DBAA
+PT=CF38A4BA87F2DD72A5393950A10D4A5C
+CT=CCEF4079CE8FAF0E6B8CD4C8751059E1
+
+I=326
+KEY=8FF976D3C735506D86A3540664F1C40590E01FA9EC37EAF925D9D9EEDA89AD2F
+IV=CCEF4079CE8FAF0E6B8CD4C8751059E1
+PT=8232106AB5564A96377976F7257F25C1
+CT=D835D2FA5583D9B2C16424960163DF7F
+
+I=327
+KEY=3499925B26E4F846CAA230EC069F127F48D5CD53B9B4334BE4BDFD78DBEA7250
+IV=D835D2FA5583D9B2C16424960163DF7F
+PT=BB60E488E1D1A82B4C0164EA626ED67A
+CT=4634485DB5D9C40FA2F6EF36E477F0B7
+
+I=328
+KEY=7A133EEC3DD747FE38A3370F8927A3C70EE1850E0C6DF744464B124E3F9D82E7
+IV=4634485DB5D9C40FA2F6EF36E477F0B7
+PT=4E8AACB71B33BFB8F20107E38FB8B1B8
+CT=AE30CD2A5D84CEF10B9C15EE1FE20CEB
+
+I=329
+KEY=F573665345317BAB5F14881777A0D789A0D1482451E939B54DD707A0207F8E0C
+IV=AE30CD2A5D84CEF10B9C15EE1FE20CEB
+PT=8F6058BF78E63C5567B7BF18FE87744E
+CT=B3926CDE5BFB1363DCCA28CDA2DC4CD8
+
+I=330
+KEY=FEFB661FA786BF2DA1B70FD7D06B86E8134324FA0A122AD6911D2F6D82A3C2D4
+IV=B3926CDE5BFB1363DCCA28CDA2DC4CD8
+PT=0B88004CE2B7C486FEA387C0A7CB5161
+CT=633388FA9EAE0DB2036F63CB2E21C266
+
+I=331
+KEY=BFC495DFBA60078708D992724C9201577070AC0094BC276492724CA6AC8200B2
+IV=633388FA9EAE0DB2036F63CB2E21C266
+PT=413FF3C01DE6B8AAA96E9DA59CF987BF
+CT=54ACB838D247D26A1544B2E42F18CF3F
+
+I=332
+KEY=EB0113E4FFE1201B59EAE94706B2571F24DC143846FBF50E8736FE42839ACF8D
+IV=54ACB838D247D26A1544B2E42F18CF3F
+PT=54C5863B4581279C51337B354A205648
+CT=B9210B8A8639CA5C94A1CF1169F89DDB
+
+I=333
+KEY=0E1D5F7873FD6440227C5529AEB4C7999DFD1FB2C0C23F5213973153EA625256
+IV=B9210B8A8639CA5C94A1CF1169F89DDB
+PT=E51C4C9C8C1C445B7B96BC6EA8069086
+CT=8990488561B43B03CF9FE631E2E7D5E7
+
+I=334
+KEY=8B2759471137DBF37906B394EFEF96D2146D5737A1760451DC08D762088587B1
+IV=8990488561B43B03CF9FE631E2E7D5E7
+PT=853A063F62CABFB35B7AE6BD415B514B
+CT=9DCE77D8CCC0F041FA717C28474E9A30
+
+I=335
+KEY=0D4B29E8D6F39CA01BC01CE73E2834C689A320EF6DB6F4102679AB4A4FCB1D81
+IV=9DCE77D8CCC0F041FA717C28474E9A30
+PT=866C70AFC7C4475362C6AF73D1C7A214
+CT=E1DA174FE5848D21735E55B91CA48A9B
+
+I=336
+KEY=55228F6FF93B7DE9304CD75991C133A5687937A0883279315527FEF3536F971A
+IV=E1DA174FE5848D21735E55B91CA48A9B
+PT=5869A6872FC8E1492B8CCBBEAFE90763
+CT=C578F53AD69AD508711E674F8DD2A843
+
+I=337
+KEY=35CA943437046860F72A1F8554127676AD01C29A5EA8AC39243999BCDEBD3F59
+IV=C578F53AD69AD508711E674F8DD2A843
+PT=60E81B5BCE3F1589C766C8DCC5D345D3
+CT=177A50196260D3F0A3F97423899EBEE2
+
+I=338
+KEY=B8C3B8414C112FC2E2E848733D5CF69CBA7B92833CC87FC987C0ED9F572381BB
+IV=177A50196260D3F0A3F97423899EBEE2
+PT=8D092C757B1547A215C257F6694E80EA
+CT=6B03A799C51C7D0A9D3C9929617E69B1
+
+I=339
+KEY=E82B651AE5740119104FE3284CE780E4D178351AF9D402C31AFC74B6365DE80A
+IV=6B03A799C51C7D0A9D3C9929617E69B1
+PT=50E8DD5BA9652EDBF2A7AB5B71BB7678
+CT=8D4C7C1157422E7B6DDA47C5C2C246F4
+
+I=340
+KEY=3C0B660F2B78F768812AC671D3107AD85C34490BAE962CB877263373F49FAEFE
+IV=8D4C7C1157422E7B6DDA47C5C2C246F4
+PT=D4200315CE0CF671916525599FF7FA3C
+CT=787B3C51094569BC1F139102964DF5AF
+
+I=341
+KEY=A197B59C700A4786E840733047964FD4244F755AA7D345046835A27162D25B51
+IV=787B3C51094569BC1F139102964DF5AF
+PT=9D9CD3935B72B0EE696AB5419486350C
+CT=AE02945B4E63AC35B6AC2DFA2DF3CEBA
+
+I=342
+KEY=00E75C4B909D44A94FA20EDA6C3628418A4DE101E9B0E931DE998F8B4F2195EB
+IV=AE02945B4E63AC35B6AC2DFA2DF3CEBA
+PT=A170E9D7E097032FA7E27DEA2BA06795
+CT=AC4AACD3597FE73F519F7CEDAFE6E000
+
+I=343
+KEY=4626BE31853C15DE412EF2A42328D47326074DD2B0CF0E0E8F06F366E0C775EB
+IV=AC4AACD3597FE73F519F7CEDAFE6E000
+PT=46C1E27A15A151770E8CFC7E4F1EFC32
+CT=5EB8B35708A135E041603BA323663F34
+
+I=344
+KEY=1733A037E76437411F49821D948A098978BFFE85B86E3BEECE66C8C5C3A14ADF
+IV=5EB8B35708A135E041603BA323663F34
+PT=51151E066258229F5E6770B9B7A2DDFA
+CT=6674FB922570377334A4F22D13E95BD8
+
+I=345
+KEY=8474275A2E4D5E5448EB8D34B65EE7081ECB05179D1E0C9DFAC23AE8D0481107
+IV=6674FB922570377334A4F22D13E95BD8
+PT=9347876DC929691557A20F2922D4EE81
+CT=F0E3F09C0350C0172E449A01F24AB828
+
+I=346
+KEY=765AA3F4014B8475CF832DE6128F7F2DEE28F58B9E4ECC8AD486A0E92202A92F
+IV=F0E3F09C0350C0172E449A01F24AB828
+PT=F22E84AE2F06DA218768A0D2A4D19825
+CT=CC156010299679ADEE9CC000FD5C90E5
+
+I=347
+KEY=DD3D3AFC83B7EEBC58CE35B35719B587223D959BB7D8B5273A1A60E9DF5E39CA
+IV=CC156010299679ADEE9CC000FD5C90E5
+PT=AB67990882FC6AC9974D18554596CAAA
+CT=80354EDEA10038E903C4896313236CE5
+
+I=348
+KEY=4764BB8C98BCF3FD4A21A370AE5432BBA208DB4516D88DCE39DEE98ACC7D552F
+IV=80354EDEA10038E903C4896313236CE5
+PT=9A5981701B0B1D4112EF96C3F94D873C
+CT=15140DC26F383EB99425FB51D445CC98
+
+I=349
+KEY=DF729AB7D09BC85489F8AD373EBDDA70B71CD68779E0B377ADFB12DB183899B7
+IV=15140DC26F383EB99425FB51D445CC98
+PT=9816213B48273BA9C3D90E4790E9E8CB
+CT=163465787010C97D3C2023D803F62556
+
+I=350
+KEY=A945B0C5997C596B5155A6BCA5055127A128B3FF09F07A0A91DB31031BCEBCE1
+IV=163465787010C97D3C2023D803F62556
+PT=76372A7249E7913FD8AD0B8B9BB88B57
+CT=23E861D557EE72534C8B729240E3A54F
+
+I=351
+KEY=0E1C166F2B947D14D0C7E6ABD280A31E82C0D22A5E1E0859DD5043915B2D19AE
+IV=23E861D557EE72534C8B729240E3A54F
+PT=A759A6AAB2E8247F819240177785F239
+CT=652CA6A199D7DBC37936FCD70636989F
+
+I=352
+KEY=208A37149072011877E3E85B3DC7F4A7E7EC748BC7C9D39AA466BF465D1B8131
+IV=652CA6A199D7DBC37936FCD70636989F
+PT=2E96217BBBE67C0CA7240EF0EF4757B9
+CT=7C29D6F4788553E3C50A48027478A98F
+
+I=353
+KEY=A8FFCB194C077EEED66632AEBE01652E9BC5A27FBF4C8079616CF744296328BE
+IV=7C29D6F4788553E3C50A48027478A98F
+PT=8875FC0DDC757FF6A185DAF583C69189
+CT=7B886FC819D625B224F2516901788E88
+
+I=354
+KEY=3716969BDDBF04FF4010D4667CCA994AE04DCDB7A69AA5CB459EA62D281BA636
+IV=7B886FC819D625B224F2516901788E88
+PT=9FE95D8291B87A119676E6C8C2CBFC64
+CT=3EAB925C025F379153CE2C7191026976
+
+I=355
+KEY=991D0D313717C7AC62537C8572DE094BDEE65FEBA4C5925A16508A5CB919CF40
+IV=3EAB925C025F379153CE2C7191026976
+PT=AE0B9BAAEAA8C3532243A8E30E149001
+CT=B9904B8BDF431FDDB9166086C9D3E24C
+
+I=356
+KEY=315772BB82A3DD286FE5891934B19434677614607B868D87AF46EADA70CA2D0C
+IV=B9904B8BDF431FDDB9166086C9D3E24C
+PT=A84A7F8AB5B41A840DB6F59C466F9D7F
+CT=3C7029336ECCA5D352DB9D0C060D3830
+
+I=357
+KEY=C99E4E6A8C1D42A9E431FF8B2A8ACA615B063D53154A2854FD9D77D676C7153C
+IV=3C7029336ECCA5D352DB9D0C060D3830
+PT=F8C93CD10EBE9F818BD476921E3B5E55
+CT=4AF4290AA79EB96435D2D3FC745033D7
+
+I=358
+KEY=55317B8B407B7D089ED2CEF7BE80E99111F21459B2D49130C84FA42A029726EB
+IV=4AF4290AA79EB96435D2D3FC745033D7
+PT=9CAF35E1CC663FA17AE3317C940A23F0
+CT=BFCA0B6B31AAD81F1BDC743B48B7CCA4
+
+I=359
+KEY=6EAE6D8B06AA25493BA3608357D71404AE381F32837E492FD393D0114A20EA4F
+IV=BFCA0B6B31AAD81F1BDC743B48B7CCA4
+PT=3B9F160046D15841A571AE74E957FD95
+CT=89C1D565569A12A68B2E808AB5CFA2E3
+
+I=360
+KEY=3245D7C1F5571A1329E1B2303F8A689D27F9CA57D5E45B8958BD509BFFEF48AC
+IV=89C1D565569A12A68B2E808AB5CFA2E3
+PT=5CEBBA4AF3FD3F5A1242D2B3685D7C99
+CT=EC8EEAED7894646B1D1A5E058ED41178
+
+I=361
+KEY=1DE05811428569D3F89CF1C01AF434AFCB7720BAAD703FE245A70E9E713B59D4
+IV=EC8EEAED7894646B1D1A5E058ED41178
+PT=2FA58FD0B7D273C0D17D43F0257E5C32
+CT=92802F392579C66AD72D2E85776720E8
+
+I=362
+KEY=0A8FB6D844AB0B73C05A121085E07FFE59F70F838809F988928A201B065C793C
+IV=92802F392579C66AD72D2E85776720E8
+PT=176FEEC9062E62A038C6E3D09F144B51
+CT=461DBCF9894F5319FE772F6529FBCEC0
+
+I=363
+KEY=4E6818B3BBEF69FA7ABEC1EBE2E54CDC1FEAB37A0146AA916CFD0F7E2FA7B7FC
+IV=461DBCF9894F5319FE772F6529FBCEC0
+PT=44E7AE6BFF446289BAE4D3FB67053322
+CT=794CA9DC41BAE95D415A6D1119582763
+
+I=364
+KEY=4A1EABB13924B188441724141F1C88A966A61AA640FC43CC2DA7626F36FF909F
+IV=794CA9DC41BAE95D415A6D1119582763
+PT=0476B30282CBD8723EA9E5FFFDF9C475
+CT=B761EAF5CC07651BD33D8BF93913EAE8
+
+I=365
+KEY=FFE4E48F8D96710A1BE7DBE36F4905CDD1C7F0538CFB26D7FE9AE9960FEC7A77
+IV=B761EAF5CC07651BD33D8BF93913EAE8
+PT=B5FA4F3EB4B2C0825FF0FFF770558D64
+CT=0B5146EB77161E60D6D1E2FAEAE80694
+
+I=366
+KEY=7A4F383AF4BB2DC6588E75EE82C7D9CFDA96B6B8FBED38B7284B0B6CE5047CE3
+IV=0B5146EB77161E60D6D1E2FAEAE80694
+PT=85ABDCB5792D5CCC4369AE0DED8EDC02
+CT=07635064CE85F6AE17961AF1F2B44469
+
+I=367
+KEY=EFFE7F8BBBEC8BEC83FA199102763BEDDDF5E6DC3568CE193FDD119D17B0388A
+IV=07635064CE85F6AE17961AF1F2B44469
+PT=95B147B14F57A62ADB746C7F80B1E222
+CT=3A9CD5F30C421FF333BA2C2F0A7AD07D
+
+I=368
+KEY=1DF51B7A35E11E2AF79E8C59094A1ECFE769332F392AD1EA0C673DB21DCAE8F7
+IV=3A9CD5F30C421FF333BA2C2F0A7AD07D
+PT=F20B64F18E0D95C6746495C80B3C2522
+CT=F60032C249CF561CB02421DA189A57D1
+
+I=369
+KEY=CC09FFE72A10AE27FE14934A6628AB83116901ED70E587F6BC431C680550BF26
+IV=F60032C249CF561CB02421DA189A57D1
+PT=D1FCE49D1FF1B00D098A1F136F62B54C
+CT=EAD5844B160C08F9CDAA15FD5936EF26
+
+I=370
+KEY=09C84CA0DA0B9FD79D3090E690BAB419FBBC85A666E98F0F71E909955C665000
+IV=EAD5844B160C08F9CDAA15FD5936EF26
+PT=C5C1B347F01B31F0632403ACF6921F9A
+CT=26AD72F011133FD4CED8F38A1ABE7D73
+
+I=371
+KEY=74FA53C172A2003EC5933F486FCC7BBFDD11F75677FAB0DBBF31FA1F46D82D73
+IV=26AD72F011133FD4CED8F38A1ABE7D73
+PT=7D321F61A8A99FE958A3AFAEFF76CFA6
+CT=F115FBC0D3F386527176D1DF6AD4B38A
+
+I=372
+KEY=0E5BA209B7BC28D184E73BD37F35C1312C040C96A4093689CE472BC02C0C9EF9
+IV=F115FBC0D3F386527176D1DF6AD4B38A
+PT=7AA1F1C8C51E28EF4174049B10F9BA8E
+CT=27ED0BA04734E70317BF58E11B0DD051
+
+I=373
+KEY=9404D9139B6597D1F7C7519713C6CBC80BE90736E33DD18AD9F8732137014EA8
+IV=27ED0BA04734E70317BF58E11B0DD051
+PT=9A5F7B1A2CD9BF0073206A446CF30AF9
+CT=24080A577426F8F270A13F3A5F3DB546
+
+I=374
+KEY=E72476BC679C8DCBAB92BBA5D48BF6D32FE10D61971B2978A9594C1B683CFBEE
+IV=24080A577426F8F270A13F3A5F3DB546
+PT=7320AFAFFCF91A1A5C55EA32C74D3D1B
+CT=A754CC0464E35B387435790505F2DCE5
+
+I=375
+KEY=4548DE389CCAD4A65B02A9B5FE90930188B5C165F3F87240DD6C351E6DCE270B
+IV=A754CC0464E35B387435790505F2DCE5
+PT=A26CA884FB56596DF09012102A1B65D2
+CT=D9AED2566884E97D081EADB45780AA7D
+
+I=376
+KEY=2E54365B503140D0EC9074DFA05F4B2C511B13339B7C9B3DD57298AA3A4E8D76
+IV=D9AED2566884E97D081EADB45780AA7D
+PT=6B1CE863CCFB9476B792DD6A5ECFD82D
+CT=9FA221E082CAD838AB4B210A8794BD8F
+
+I=377
+KEY=7C9FB092B8A96465076E14C575E9A8F0CEB932D319B643057E39B9A0BDDA30F9
+IV=9FA221E082CAD838AB4B210A8794BD8F
+PT=52CB86C9E89824B5EBFE601AD5B6E3DC
+CT=AAEA6DE5734CF14BED503512EB071C2A
+
+I=378
+KEY=90AB85A18F2B0255D4F43AF5E98DAA7E64535F366AFAB24E93698CB256DD2CD3
+IV=AAEA6DE5734CF14BED503512EB071C2A
+PT=EC34353337826630D39A2E309C64028E
+CT=1359A157B415EB63E038AB7354E6B0F2
+
+I=379
+KEY=9135D4D54A1CE6BBF4F23AFDE23F537C770AFE61DEEF592D735127C1023B9C21
+IV=1359A157B415EB63E038AB7354E6B0F2
+PT=019E5174C537E4EE200600080BB2F902
+CT=0764EBDBFAE8FD447244408A5153CC3B
+
+I=380
+KEY=4B5F1BC60EF5DCE83474A3970EB2ABA8706E15BA2407A4690115674B5368501A
+IV=0764EBDBFAE8FD447244408A5153CC3B
+PT=DA6ACF1344E93A53C086996AEC8DF8D4
+CT=A31F69E0055E8D4162AC06C088925FBA
+
+I=381
+KEY=9DD8E8D75BE2E4D1BC70B30DAE0B375FD3717C5A2159292863B9618BDBFA0FA0
+IV=A31F69E0055E8D4162AC06C088925FBA
+PT=D687F311551738398804109AA0B99CF7
+CT=EB84AC035534CDF1698E660F529E0EC7
+
+I=382
+KEY=4A2B2FC8446B4C2575CFE584A490680238F5D059746DE4D90A37078489640167
+IV=EB84AC035534CDF1698E660F529E0EC7
+PT=D7F3C71F1F89A8F4C9BF56890A9B5F5D
+CT=9236D37A28C2CF29237127173B93C5D5
+
+I=383
+KEY=9BE42576823EEAADB34657A5CBB44B21AAC303235CAF2BF029462093B2F7C4B2
+IV=9236D37A28C2CF29237127173B93C5D5
+PT=D1CF0ABEC655A688C689B2216F242323
+CT=86C122CFA62B1356FEE33FECF598ACC9
+
+I=384
+KEY=5DFC1838B052E95A948D0AC31736CBE62C0221ECFA8438A6D7A51F7F476F687B
+IV=86C122CFA62B1356FEE33FECF598ACC9
+PT=C6183D4E326C03F727CB5D66DC8280C7
+CT=8A9926125B1CA354B1D7A9FED0850FEE
+
+I=385
+KEY=2B12FA914EE7674EADED81C47A67A1B4A69B07FEA1989BF26672B68197EA6795
+IV=8A9926125B1CA354B1D7A9FED0850FEE
+PT=76EEE2A9FEB58E1439608B076D516A52
+CT=AD99A2A427BFF7A17C375DB38764EBFC
+
+I=386
+KEY=10607DE088CB92382089EF99B7C054280B02A55A86276C531A45EB32108E8C69
+IV=AD99A2A427BFF7A17C375DB38764EBFC
+PT=3B728771C62CF5768D646E5DCDA7F59C
+CT=0E141FD7D6928E7B7885638B6334947C
+
+I=387
+KEY=605ECCB38F9FFD9DAB2DB523313FFADB0516BA8D50B5E22862C088B973BA1815
+IV=0E141FD7D6928E7B7885638B6334947C
+PT=703EB15307546FA58BA45ABA86FFAEF3
+CT=996CB8723B08B99A4959072DC8A73292
+
+I=388
+KEY=C6371257BDA461F3A4D2F1ED5DD4B0B69C7A02FF6BBD5BB22B998F94BB1D2A87
+IV=996CB8723B08B99A4959072DC8A73292
+PT=A669DEE4323B9C6E0FFF44CE6CEB4A6D
+CT=72966BAA5E4D7FA9129088F2C072E301
+
+I=389
+KEY=DDD8877C25005F9B8336823CBF4D4B1DEEEC695535F0241B390907667B6FC986
+IV=72966BAA5E4D7FA9129088F2C072E301
+PT=1BEF952B98A43E6827E473D1E299FBAB
+CT=32C321C999A2D68EA4517D332C785FC4
+
+I=390
+KEY=00882DCBC6CFDED1A2ED7D9892F494A5DC2F489CAC52F2959D587A5557179642
+IV=32C321C999A2D68EA4517D332C785FC4
+PT=DD50AAB7E3CF814A21DBFFA42DB9DFB8
+CT=391D95DD63982E0A9AF3980A234DB5B9
+
+I=391
+KEY=234B9097BD6519EFE106103720AC937DE532DD41CFCADC9F07ABE25F745A23FB
+IV=391D95DD63982E0A9AF3980A234DB5B9
+PT=23C3BD5C7BAAC73E43EB6DAFB25807D8
+CT=D3A279EE1BABABA71DB01DC35EBA879D
+
+I=392
+KEY=AFF7D52D959CC7E41F1F3FF3CA2425053690A4AFD46177381A1BFF9C2AE0A466
+IV=D3A279EE1BABABA71DB01DC35EBA879D
+PT=8CBC45BA28F9DE0BFE192FC4EA88B678
+CT=B4696871EE3A9D035BC32308DA5A5DA7
+
+I=393
+KEY=B557440CEEB6E4EF54F6CD1B222246AC82F9CCDE3A5BEA3B41D8DC94F0BAF9C1
+IV=B4696871EE3A9D035BC32308DA5A5DA7
+PT=1AA091217B2A230B4BE9F2E8E80663A9
+CT=C5047AFD7884E0124928229AA6E72F67
+
+I=394
+KEY=BF64C071FAAD2C48CB269C03563FA06147FDB62342DF0A2908F0FE0E565DD6A6
+IV=C5047AFD7884E0124928229AA6E72F67
+PT=0A33847D141BC8A79FD05118741DE6CD
+CT=240D684E6BAD3FD4E41D58DB871E93CD
+
+I=395
+KEY=F6945509258A1584398F5438DFD679DB63F0DE6D297235FDECEDA6D5D143456B
+IV=240D684E6BAD3FD4E41D58DB871E93CD
+PT=49F09578DF2739CCF2A9C83B89E9D9BA
+CT=F66917F0C3C67774F9263062F918DDD5
+
+I=396
+KEY=A8E48107D59287ABBA374E7CE5BC28E89599C99DEAB4428915CB96B7285B98BE
+IV=F66917F0C3C67774F9263062F918DDD5
+PT=5E70D40EF018922F83B81A443A6A5133
+CT=85C42456F11D0191BC4B4DD4EA0406EE
+
+I=397
+KEY=E4F367569F4F9114AFE937A0190C9738105DEDCB1BA94318A980DB63C25F9E50
+IV=85C42456F11D0191BC4B4DD4EA0406EE
+PT=4C17E6514ADD16BF15DE79DCFCB0BFD0
+CT=D48B6C87A25C71113947569411C2186A
+
+I=398
+KEY=987ED2D586DA9AB08C584BBEA0478953C4D6814CB9F5320990C78DF7D39D863A
+IV=D48B6C87A25C71113947569411C2186A
+PT=7C8DB58319950BA423B17C1EB94B1E6B
+CT=AB6957C2F3D360593E9096F3A392A701
+
+I=399
+KEY=3DF2BF13B7FF97CA13567A890E11C9796FBFD68E4A265250AE571B04700F213B
+IV=AB6957C2F3D360593E9096F3A392A701
+PT=A58C6DC631250D7A9F0E3137AE56402A
+CT=C0FEFFF07506A0B4CD7B8B0CF25D3664
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_d_m.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,6024 @@
+
+=========================
+
+FILENAME:  "ecb_d_m.txt"
+
+Electronic Codebook (ECB) Mode - DECRYPTION
+Monte Carlo Test
+
+Algorithm Name: Rijndael
+Principal Submitter: <as stated on the submission cover sheet>
+
+==========
+
+KEYSIZE=128
+
+I=0
+KEY=00000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=44416AC2D1F53C583303917E6BE9EBE0
+
+I=1
+KEY=44416AC2D1F53C583303917E6BE9EBE0
+CT=44416AC2D1F53C583303917E6BE9EBE0
+PT=E3FD51123B48A2E2AB1DB29894202222
+
+I=2
+KEY=A7BC3BD0EABD9EBA981E23E6FFC9C9C2
+CT=E3FD51123B48A2E2AB1DB29894202222
+PT=877B88A77AEF04F05546539E17259F53
+
+I=3
+KEY=20C7B37790529A4ACD587078E8EC5691
+CT=877B88A77AEF04F05546539E17259F53
+PT=C7A71C1B46261602EB1EE48FDA8155A4
+
+I=4
+KEY=E760AF6CD6748C48264694F7326D0335
+CT=C7A71C1B46261602EB1EE48FDA8155A4
+PT=6B6AC8E00FAF7E045ECCFC426A137221
+
+I=5
+KEY=8C0A678CD9DBF24C788A68B5587E7114
+CT=6B6AC8E00FAF7E045ECCFC426A137221
+PT=3F252821FA79AFC3F1798B343AAD41EE
+
+I=6
+KEY=B32F4FAD23A25D8F89F3E38162D330FA
+CT=3F252821FA79AFC3F1798B343AAD41EE
+PT=0B55C691E1F97205D137FF34478E5BC9
+
+I=7
+KEY=B87A893CC25B2F8A58C41CB5255D6B33
+CT=0B55C691E1F97205D137FF34478E5BC9
+PT=F6CCC1CC18A3199D6427EDCA0BB2DF90
+
+I=8
+KEY=4EB648F0DAF836173CE3F17F2EEFB4A3
+CT=F6CCC1CC18A3199D6427EDCA0BB2DF90
+PT=0CDD7D9734B1515C73DDA60EFF28CD89
+
+I=9
+KEY=426B3567EE49674B4F3E5771D1C7792A
+CT=0CDD7D9734B1515C73DDA60EFF28CD89
+PT=3E813131EDD440D9054799CEA508FF6F
+
+I=10
+KEY=7CEA0456039D27924A79CEBF74CF8645
+CT=3E813131EDD440D9054799CEA508FF6F
+PT=8C6859BD0B6E078FAA6B686297653232
+
+I=11
+KEY=F0825DEB08F3201DE012A6DDE3AAB477
+CT=8C6859BD0B6E078FAA6B686297653232
+PT=C966A4106C1DCE062D1346EB5E5133BB
+
+I=12
+KEY=39E4F9FB64EEEE1BCD01E036BDFB87CC
+CT=C966A4106C1DCE062D1346EB5E5133BB
+PT=4F4AE38B53FD7800F0E9F5C214E16F2A
+
+I=13
+KEY=76AE1A703713961B3DE815F4A91AE8E6
+CT=4F4AE38B53FD7800F0E9F5C214E16F2A
+PT=C73A033491DC0B6A77FEA2FBCC9D305E
+
+I=14
+KEY=B1941944A6CF9D714A16B70F6587D8B8
+CT=C73A033491DC0B6A77FEA2FBCC9D305E
+PT=C928C2A05BB44816EFBE6B13E94BC70E
+
+I=15
+KEY=78BCDBE4FD7BD567A5A8DC1C8CCC1FB6
+CT=C928C2A05BB44816EFBE6B13E94BC70E
+PT=A7C1593E7B4BAEE5256D4081337E7CAF
+
+I=16
+KEY=DF7D82DA86307B8280C59C9DBFB26319
+CT=A7C1593E7B4BAEE5256D4081337E7CAF
+PT=7ECD305AC27AEBFA2B8F85F9AC312638
+
+I=17
+KEY=A1B0B280444A9078AB4A196413834521
+CT=7ECD305AC27AEBFA2B8F85F9AC312638
+PT=A24D1403A58B94798F5F3565ABFD3B44
+
+I=18
+KEY=03FDA683E1C1040124152C01B87E7E65
+CT=A24D1403A58B94798F5F3565ABFD3B44
+PT=5B6E097B3B0E21DCC9CE9970701C7BD5
+
+I=19
+KEY=5893AFF8DACF25DDEDDBB571C86205B0
+CT=5B6E097B3B0E21DCC9CE9970701C7BD5
+PT=4E21CEA52B3111AC8F6B204A1F5E65E2
+
+I=20
+KEY=16B2615DF1FE347162B0953BD73C6052
+CT=4E21CEA52B3111AC8F6B204A1F5E65E2
+PT=806DDC5C37ADEEBB6FCE4730939D7A99
+
+I=21
+KEY=96DFBD01C653DACA0D7ED20B44A11ACB
+CT=806DDC5C37ADEEBB6FCE4730939D7A99
+PT=3462F7C6D3E071A0D3ACE7FD79149776
+
+I=22
+KEY=A2BD4AC715B3AB6ADED235F63DB58DBD
+CT=3462F7C6D3E071A0D3ACE7FD79149776
+PT=AF0FFF307B72284E794C8A64C30299D2
+
+I=23
+KEY=0DB2B5F76EC18324A79EBF92FEB7146F
+CT=AF0FFF307B72284E794C8A64C30299D2
+PT=E482B613FBCF9C4422D85E3160B1FB0F
+
+I=24
+KEY=E93003E4950E1F608546E1A39E06EF60
+CT=E482B613FBCF9C4422D85E3160B1FB0F
+PT=FADC8EF9C95540AD69897DECAB2D50D5
+
+I=25
+KEY=13EC8D1D5C5B5FCDECCF9C4F352BBFB5
+CT=FADC8EF9C95540AD69897DECAB2D50D5
+PT=2A765E237FB5230D792D455596A17118
+
+I=26
+KEY=399AD33E23EE7CC095E2D91AA38ACEAD
+CT=2A765E237FB5230D792D455596A17118
+PT=0887DA8012C7F95BD6ADB18D1ED3C2DB
+
+I=27
+KEY=311D09BE3129859B434F6897BD590C76
+CT=0887DA8012C7F95BD6ADB18D1ED3C2DB
+PT=3BB831A7B6FAC3649176471012FAD1C1
+
+I=28
+KEY=0AA5381987D346FFD2392F87AFA3DDB7
+CT=3BB831A7B6FAC3649176471012FAD1C1
+PT=E4F8629AB3489A0945B8B7188B953DE5
+
+I=29
+KEY=EE5D5A83349BDCF69781989F2436E052
+CT=E4F8629AB3489A0945B8B7188B953DE5
+PT=1D4B0B5B321EB711939AB481239E2541
+
+I=30
+KEY=F31651D806856BE7041B2C1E07A8C513
+CT=1D4B0B5B321EB711939AB481239E2541
+PT=71A368D5A33665D6FF9F33FECAFC6884
+
+I=31
+KEY=82B5390DA5B30E31FB841FE0CD54AD97
+CT=71A368D5A33665D6FF9F33FECAFC6884
+PT=8ACF418080075BA23B05A52552773B84
+
+I=32
+KEY=087A788D25B45593C081BAC59F239613
+CT=8ACF418080075BA23B05A52552773B84
+PT=E0E6058735F4FE765E882521D769FB41
+
+I=33
+KEY=E89C7D0A1040ABE59E099FE4484A6D52
+CT=E0E6058735F4FE765E882521D769FB41
+PT=70DCE91F818DF2CDC4269F1B4EA0A465
+
+I=34
+KEY=9840941591CD59285A2F00FF06EAC937
+CT=70DCE91F818DF2CDC4269F1B4EA0A465
+PT=E2F809D6DD77D72EF6DB5A82C42BF1CF
+
+I=35
+KEY=7AB89DC34CBA8E06ACF45A7DC2C138F8
+CT=E2F809D6DD77D72EF6DB5A82C42BF1CF
+PT=0741D11DDD877957E753ECF8DB91C72B
+
+I=36
+KEY=7DF94CDE913DF7514BA7B6851950FFD3
+CT=0741D11DDD877957E753ECF8DB91C72B
+PT=03E411012CA3B5B3CC163677D4B52456
+
+I=37
+KEY=7E1D5DDFBD9E42E287B180F2CDE5DB85
+CT=03E411012CA3B5B3CC163677D4B52456
+PT=0270D90790EF8347ACFB87EB2FEC2710
+
+I=38
+KEY=7C6D84D82D71C1A52B4A0719E209FC95
+CT=0270D90790EF8347ACFB87EB2FEC2710
+PT=3AE40270512374AF4022638E0A7A6D8E
+
+I=39
+KEY=468986A87C52B50A6B686497E873911B
+CT=3AE40270512374AF4022638E0A7A6D8E
+PT=8008D87E928A980FECA08CAF1EC91DDA
+
+I=40
+KEY=C6815ED6EED82D0587C8E838F6BA8CC1
+CT=8008D87E928A980FECA08CAF1EC91DDA
+PT=1D479A54832FF1A81D30008EFDF16A34
+
+I=41
+KEY=DBC6C4826DF7DCAD9AF8E8B60B4BE6F5
+CT=1D479A54832FF1A81D30008EFDF16A34
+PT=9E731FECD9A767BDA0C84B4C4D552BD3
+
+I=42
+KEY=45B5DB6EB450BB103A30A3FA461ECD26
+CT=9E731FECD9A767BDA0C84B4C4D552BD3
+PT=C2211A6B16CD27C6C73A5C3C1A0132AC
+
+I=43
+KEY=8794C105A29D9CD6FD0AFFC65C1FFF8A
+CT=C2211A6B16CD27C6C73A5C3C1A0132AC
+PT=7E523DD6F25706F971F020F88FFA0CF7
+
+I=44
+KEY=F9C6FCD350CA9A2F8CFADF3ED3E5F37D
+CT=7E523DD6F25706F971F020F88FFA0CF7
+PT=0EDC01C6C1A8DA6A7C9EEE3587CB098E
+
+I=45
+KEY=F71AFD1591624045F064310B542EFAF3
+CT=0EDC01C6C1A8DA6A7C9EEE3587CB098E
+PT=EE479106871DA872632794633B1ACF0E
+
+I=46
+KEY=195D6C13167FE8379343A5686F3435FD
+CT=EE479106871DA872632794633B1ACF0E
+PT=7EC1A4578D911F336184DACCCA92D943
+
+I=47
+KEY=679CC8449BEEF704F2C77FA4A5A6ECBE
+CT=7EC1A4578D911F336184DACCCA92D943
+PT=53715F25AE02513F181E3DECBB007803
+
+I=48
+KEY=34ED976135ECA63BEAD942481EA694BD
+CT=53715F25AE02513F181E3DECBB007803
+PT=304D5764B5206F8204A69D1BED11FA62
+
+I=49
+KEY=04A0C00580CCC9B9EE7FDF53F3B76EDF
+CT=304D5764B5206F8204A69D1BED11FA62
+PT=5A7590ADEF208BFD808499A2BFE9B011
+
+I=50
+KEY=5ED550A86FEC42446EFB46F14C5EDECE
+CT=5A7590ADEF208BFD808499A2BFE9B011
+PT=2502C0F68A721A93ECE8D7B6C2097BA4
+
+I=51
+KEY=7BD7905EE59E58D7821391478E57A56A
+CT=2502C0F68A721A93ECE8D7B6C2097BA4
+PT=1C814E26A6464086D606C7B4C6DFD85B
+
+I=52
+KEY=6756DE7843D81851541556F348887D31
+CT=1C814E26A6464086D606C7B4C6DFD85B
+PT=9D55D6EA99BA391190068205DD9AE69C
+
+I=53
+KEY=FA030892DA622140C413D4F695129BAD
+CT=9D55D6EA99BA391190068205DD9AE69C
+PT=9D1212D0BD8C26422EEFF4DDB16B2EF3
+
+I=54
+KEY=67111A4267EE0702EAFC202B2479B55E
+CT=9D1212D0BD8C26422EEFF4DDB16B2EF3
+PT=54DF71E70141E1712449CDC1AC7D07F6
+
+I=55
+KEY=33CE6BA566AFE673CEB5EDEA8804B2A8
+CT=54DF71E70141E1712449CDC1AC7D07F6
+PT=AF3DE6F3510978928C129CFC19FB29B4
+
+I=56
+KEY=9CF38D5637A69EE142A7711691FF9B1C
+CT=AF3DE6F3510978928C129CFC19FB29B4
+PT=830DB7014774C7DF870C8456BC0162AB
+
+I=57
+KEY=1FFE3A5770D2593EC5ABF5402DFEF9B7
+CT=830DB7014774C7DF870C8456BC0162AB
+PT=6606C0A36A18BEFF33485F95B82C30E7
+
+I=58
+KEY=79F8FAF41ACAE7C1F6E3AAD595D2C950
+CT=6606C0A36A18BEFF33485F95B82C30E7
+PT=4B1E64672B89056DF693E73B419E786E
+
+I=59
+KEY=32E69E933143E2AC00704DEED44CB13E
+CT=4B1E64672B89056DF693E73B419E786E
+PT=1877DEEAFF10A5A3F5E9A811BF7595BA
+
+I=60
+KEY=2A914079CE53470FF599E5FF6B392484
+CT=1877DEEAFF10A5A3F5E9A811BF7595BA
+PT=A11A48215BF59CC53BC8A009DCA3973D
+
+I=61
+KEY=8B8B085895A6DBCACE5145F6B79AB3B9
+CT=A11A48215BF59CC53BC8A009DCA3973D
+PT=E80535676DE8898A3624B8127EC21024
+
+I=62
+KEY=638E3D3FF84E5240F875FDE4C958A39D
+CT=E80535676DE8898A3624B8127EC21024
+PT=E2977A804EC9A8B03C85234AD3A95B52
+
+I=63
+KEY=811947BFB687FAF0C4F0DEAE1AF1F8CF
+CT=E2977A804EC9A8B03C85234AD3A95B52
+PT=D776D8BF13F736483862328571C06C61
+
+I=64
+KEY=566F9F00A570CCB8FC92EC2B6B3194AE
+CT=D776D8BF13F736483862328571C06C61
+PT=3AF7969F3247A0914037209556997164
+
+I=65
+KEY=6C98099F97376C29BCA5CCBE3DA8E5CA
+CT=3AF7969F3247A0914037209556997164
+PT=4F87DDC715CEE3A9D67645AD920DF74A
+
+I=66
+KEY=231FD45882F98F806AD38913AFA51280
+CT=4F87DDC715CEE3A9D67645AD920DF74A
+PT=9E88CA52E6B0C160E52B23F36882DBA1
+
+I=67
+KEY=BD971E0A64494EE08FF8AAE0C727C921
+CT=9E88CA52E6B0C160E52B23F36882DBA1
+PT=CAD26E5881D9D4E52C7595C773E0FDAB
+
+I=68
+KEY=77457052E5909A05A38D3F27B4C7348A
+CT=CAD26E5881D9D4E52C7595C773E0FDAB
+PT=C2D0B3D713CFCA5ABB7B9DED14429F37
+
+I=69
+KEY=B595C385F65F505F18F6A2CAA085ABBD
+CT=C2D0B3D713CFCA5ABB7B9DED14429F37
+PT=DD7AADA7524A4878F7C598C4CBCD9CAB
+
+I=70
+KEY=68EF6E22A4151827EF333A0E6B483716
+CT=DD7AADA7524A4878F7C598C4CBCD9CAB
+PT=A0F33B1FCC3F4A4B0982F0823C4ED3C9
+
+I=71
+KEY=C81C553D682A526CE6B1CA8C5706E4DF
+CT=A0F33B1FCC3F4A4B0982F0823C4ED3C9
+PT=B22BB23CD68E8779A8C0FC9A350CB756
+
+I=72
+KEY=7A37E701BEA4D5154E713616620A5389
+CT=B22BB23CD68E8779A8C0FC9A350CB756
+PT=EA4D96AC54BD8387AD36AC8C855A9D44
+
+I=73
+KEY=907A71ADEA195692E3479A9AE750CECD
+CT=EA4D96AC54BD8387AD36AC8C855A9D44
+PT=A3B90CFDE355723BC94999784534FA74
+
+I=74
+KEY=33C37D50094C24A92A0E03E2A26434B9
+CT=A3B90CFDE355723BC94999784534FA74
+PT=55636C86A64383768CB948FF57B29322
+
+I=75
+KEY=66A011D6AF0FA7DFA6B74B1DF5D6A79B
+CT=55636C86A64383768CB948FF57B29322
+PT=B29CCDFD8E7BE50892F0D77DD969F97E
+
+I=76
+KEY=D43CDC2B217442D734479C602CBF5EE5
+CT=B29CCDFD8E7BE50892F0D77DD969F97E
+PT=9CF0432822EABDF489B57EDD9CEF7FEA
+
+I=77
+KEY=48CC9F03039EFF23BDF2E2BDB050210F
+CT=9CF0432822EABDF489B57EDD9CEF7FEA
+PT=AA753B7D38E807D691005899385DC6DA
+
+I=78
+KEY=E2B9A47E3B76F8F52CF2BA24880DE7D5
+CT=AA753B7D38E807D691005899385DC6DA
+PT=E4F0681527FA7AD3D1E7C78C03FB79FA
+
+I=79
+KEY=0649CC6B1C8C8226FD157DA88BF69E2F
+CT=E4F0681527FA7AD3D1E7C78C03FB79FA
+PT=7923AF8E50F378B9C97D2F162348025B
+
+I=80
+KEY=7F6A63E54C7FFA9F346852BEA8BE9C74
+CT=7923AF8E50F378B9C97D2F162348025B
+PT=3BEFAB920CA31A6B8B87E11DF97B42DE
+
+I=81
+KEY=4485C87740DCE0F4BFEFB3A351C5DEAA
+CT=3BEFAB920CA31A6B8B87E11DF97B42DE
+PT=4661D6B8004611976A21C69804D102C0
+
+I=82
+KEY=02E41ECF409AF163D5CE753B5514DC6A
+CT=4661D6B8004611976A21C69804D102C0
+PT=B861DF2279F2AEE4FCFD7D322AD0BE2B
+
+I=83
+KEY=BA85C1ED39685F87293308097FC46241
+CT=B861DF2279F2AEE4FCFD7D322AD0BE2B
+PT=1785745618A541F9454443FFB494F2E9
+
+I=84
+KEY=AD00B5BB21CD1E7E6C774BF6CB5090A8
+CT=1785745618A541F9454443FFB494F2E9
+PT=AA7507A80B4CCF33E8B4F09E2D7004F6
+
+I=85
+KEY=0775B2132A81D14D84C3BB68E620945E
+CT=AA7507A80B4CCF33E8B4F09E2D7004F6
+PT=433412B8F10F81A557AC461823097FC7
+
+I=86
+KEY=4441A0ABDB8E50E8D36FFD70C529EB99
+CT=433412B8F10F81A557AC461823097FC7
+PT=EC3206BDB3765876B74952C411D40373
+
+I=87
+KEY=A873A61668F8089E6426AFB4D4FDE8EA
+CT=EC3206BDB3765876B74952C411D40373
+PT=F7F994027D328FA3D70C9DEABD3BE733
+
+I=88
+KEY=5F8A321415CA873DB32A325E69C60FD9
+CT=F7F994027D328FA3D70C9DEABD3BE733
+PT=E2A8419BF86A2408ED8D0274A5CE0E10
+
+I=89
+KEY=BD22738FEDA0A3355EA7302ACC0801C9
+CT=E2A8419BF86A2408ED8D0274A5CE0E10
+PT=80FB8CD5243C89D77F503B2F16979F90
+
+I=90
+KEY=3DD9FF5AC99C2AE221F70B05DA9F9E59
+CT=80FB8CD5243C89D77F503B2F16979F90
+PT=F7773137F233AE2609C2C9AC36F58224
+
+I=91
+KEY=CAAECE6D3BAF84C42835C2A9EC6A1C7D
+CT=F7773137F233AE2609C2C9AC36F58224
+PT=F3D0A1DADA4A009E8E4C0EF717469BCD
+
+I=92
+KEY=397E6FB7E1E5845AA679CC5EFB2C87B0
+CT=F3D0A1DADA4A009E8E4C0EF717469BCD
+PT=0AC0FF22EB653A26A3F1F0CFE3808609
+
+I=93
+KEY=33BE90950A80BE7C05883C9118AC01B9
+CT=0AC0FF22EB653A26A3F1F0CFE3808609
+PT=28FF865CE11720BB1B56EF49D7D1840D
+
+I=94
+KEY=1B4116C9EB979EC71EDED3D8CF7D85B4
+CT=28FF865CE11720BB1B56EF49D7D1840D
+PT=001FAF58E22F5E8ED6BCC7FD581D7C2F
+
+I=95
+KEY=1B5EB99109B8C049C86214259760F99B
+CT=001FAF58E22F5E8ED6BCC7FD581D7C2F
+PT=32B41303A58AB49CB4CB2322B77383B3
+
+I=96
+KEY=29EAAA92AC3274D57CA9370720137A28
+CT=32B41303A58AB49CB4CB2322B77383B3
+PT=9C52020FCDE0306C8E19CDF68FEFDF50
+
+I=97
+KEY=B5B8A89D61D244B9F2B0FAF1AFFCA578
+CT=9C52020FCDE0306C8E19CDF68FEFDF50
+PT=2E3452997687D12E3A8C59B9178B09E2
+
+I=98
+KEY=9B8CFA0417559597C83CA348B877AC9A
+CT=2E3452997687D12E3A8C59B9178B09E2
+PT=872CF16DBB7CD6EA8EBB91A60BDE0C6F
+
+I=99
+KEY=1CA00B69AC29437D468732EEB3A9A0F5
+CT=872CF16DBB7CD6EA8EBB91A60BDE0C6F
+PT=7862C78E3B209535E6C6BE92F5EDF42B
+
+I=100
+KEY=64C2CCE79709D648A0418C7C464454DE
+CT=7862C78E3B209535E6C6BE92F5EDF42B
+PT=9185D8487C1D2DB679A52FDA2FE5FFCD
+
+I=101
+KEY=F54714AFEB14FBFED9E4A3A669A1AB13
+CT=9185D8487C1D2DB679A52FDA2FE5FFCD
+PT=77C3AF8C81CDB1CDEF5C0429CF3E5DA4
+
+I=102
+KEY=8284BB236AD94A3336B8A78FA69FF6B7
+CT=77C3AF8C81CDB1CDEF5C0429CF3E5DA4
+PT=6F36C74290EA6332E98CD23D08AEF7F9
+
+I=103
+KEY=EDB27C61FA332901DF3475B2AE31014E
+CT=6F36C74290EA6332E98CD23D08AEF7F9
+PT=4A7831538FA1D32E3F8631BEFD99AA73
+
+I=104
+KEY=A7CA4D327592FA2FE0B2440C53A8AB3D
+CT=4A7831538FA1D32E3F8631BEFD99AA73
+PT=5D2B599D9AF9054A99C25577C9286C9E
+
+I=105
+KEY=FAE114AFEF6BFF657970117B9A80C7A3
+CT=5D2B599D9AF9054A99C25577C9286C9E
+PT=65E4088200BCC01FCEE39C6E42082FD8
+
+I=106
+KEY=9F051C2DEFD73F7AB7938D15D888E87B
+CT=65E4088200BCC01FCEE39C6E42082FD8
+PT=4588E0D3AABBEFE611B9576391B903E9
+
+I=107
+KEY=DA8DFCFE456CD09CA62ADA764931EB92
+CT=4588E0D3AABBEFE611B9576391B903E9
+PT=A55622F833FF271DD8A8F01CF5828FCF
+
+I=108
+KEY=7FDBDE067693F7817E822A6ABCB3645D
+CT=A55622F833FF271DD8A8F01CF5828FCF
+PT=8C954010C870B2DB7FA44E1DEBFE6DE8
+
+I=109
+KEY=F34E9E16BEE3455A01266477574D09B5
+CT=8C954010C870B2DB7FA44E1DEBFE6DE8
+PT=58B7BD00ED18FC81E618807DE65305B8
+
+I=110
+KEY=ABF9231653FBB9DBE73EE40AB11E0C0D
+CT=58B7BD00ED18FC81E618807DE65305B8
+PT=EF82E5F4879039F2A1A4CC2F2044BD14
+
+I=111
+KEY=447BC6E2D46B8029469A2825915AB119
+CT=EF82E5F4879039F2A1A4CC2F2044BD14
+PT=2B6C12307F14FD50B41D8F972B19AC76
+
+I=112
+KEY=6F17D4D2AB7F7D79F287A7B2BA431D6F
+CT=2B6C12307F14FD50B41D8F972B19AC76
+PT=C9B6D042CE76892D17F70D4EE00A0D79
+
+I=113
+KEY=A6A104906509F454E570AAFC5A491016
+CT=C9B6D042CE76892D17F70D4EE00A0D79
+PT=1B08F9293BBFC44DDCF2C1D26A9DD00B
+
+I=114
+KEY=BDA9FDB95EB6301939826B2E30D4C01D
+CT=1B08F9293BBFC44DDCF2C1D26A9DD00B
+PT=4FD353B247048FAAA728E10C691C70CA
+
+I=115
+KEY=F27AAE0B19B2BFB39EAA8A2259C8B0D7
+CT=4FD353B247048FAAA728E10C691C70CA
+PT=0BBB6FDBC62C428B85111BC7C93AE994
+
+I=116
+KEY=F9C1C1D0DF9EFD381BBB91E590F25943
+CT=0BBB6FDBC62C428B85111BC7C93AE994
+PT=9C1A213A5772DE6C15CE7406F84BED03
+
+I=117
+KEY=65DBE0EA88EC23540E75E5E368B9B440
+CT=9C1A213A5772DE6C15CE7406F84BED03
+PT=AB3DE06BBDB213D64F735CA990DC373C
+
+I=118
+KEY=CEE60081355E30824106B94AF865837C
+CT=AB3DE06BBDB213D64F735CA990DC373C
+PT=6C004A1A114E90C7903AA4A0120A2B10
+
+I=119
+KEY=A2E64A9B2410A045D13C1DEAEA6FA86C
+CT=6C004A1A114E90C7903AA4A0120A2B10
+PT=6405A033C294E72119A8955712548121
+
+I=120
+KEY=C6E3EAA8E6844764C89488BDF83B294D
+CT=6405A033C294E72119A8955712548121
+PT=AE8A3BAC7279B1BC152A5AD8EBAC3EAD
+
+I=121
+KEY=6869D10494FDF6D8DDBED265139717E0
+CT=AE8A3BAC7279B1BC152A5AD8EBAC3EAD
+PT=4ADDA9999D2BE20D8925F39699563294
+
+I=122
+KEY=22B4789D09D614D5549B21F38AC12574
+CT=4ADDA9999D2BE20D8925F39699563294
+PT=BC5CA33CB2A1A580EB92946C77A63467
+
+I=123
+KEY=9EE8DBA1BB77B155BF09B59FFD671113
+CT=BC5CA33CB2A1A580EB92946C77A63467
+PT=F7ABEAD301264A3E59EABA0B9606DC92
+
+I=124
+KEY=69433172BA51FB6BE6E30F946B61CD81
+CT=F7ABEAD301264A3E59EABA0B9606DC92
+PT=2566114A10BE9BF19E0910486DAB6BE5
+
+I=125
+KEY=4C252038AAEF609A78EA1FDC06CAA664
+CT=2566114A10BE9BF19E0910486DAB6BE5
+PT=AF72E1B179660A1B833D9D4FC8473B6B
+
+I=126
+KEY=E357C189D3896A81FBD78293CE8D9D0F
+CT=AF72E1B179660A1B833D9D4FC8473B6B
+PT=DFF968B761D8E154B74C9D568C12008E
+
+I=127
+KEY=3CAEA93EB2518BD54C9B1FC5429F9D81
+CT=DFF968B761D8E154B74C9D568C12008E
+PT=42DF098BCB57D0D25269E29C9BC99DE6
+
+I=128
+KEY=7E71A0B579065B071EF2FD59D9560067
+CT=42DF098BCB57D0D25269E29C9BC99DE6
+PT=66C34CAAEFC2009B985D1E622FC61AB4
+
+I=129
+KEY=18B2EC1F96C45B9C86AFE33BF6901AD3
+CT=66C34CAAEFC2009B985D1E622FC61AB4
+PT=150C1BF943982C5EA1A6839D94F23288
+
+I=130
+KEY=0DBEF7E6D55C77C2270960A66262285B
+CT=150C1BF943982C5EA1A6839D94F23288
+PT=048BFBB28879206964C5F3B41264011A
+
+I=131
+KEY=09350C545D2557AB43CC931270062941
+CT=048BFBB28879206964C5F3B41264011A
+PT=54D2DC53B87EC949F0FA0E134EE26D50
+
+I=132
+KEY=5DE7D007E55B9EE2B3369D013EE44411
+CT=54D2DC53B87EC949F0FA0E134EE26D50
+PT=1BA46AFE1AE87C4F0254BF02DF3B6D37
+
+I=133
+KEY=4643BAF9FFB3E2ADB1622203E1DF2926
+CT=1BA46AFE1AE87C4F0254BF02DF3B6D37
+PT=7733E74E743C9E997AC2ED36B2E89CE8
+
+I=134
+KEY=31705DB78B8F7C34CBA0CF355337B5CE
+CT=7733E74E743C9E997AC2ED36B2E89CE8
+PT=670AEA160FAC67ABCECA140EB8195EB5
+
+I=135
+KEY=567AB7A184231B9F056ADB3BEB2EEB7B
+CT=670AEA160FAC67ABCECA140EB8195EB5
+PT=7CFD74D510AC894FF5B698280386F4FF
+
+I=136
+KEY=2A87C374948F92D0F0DC4313E8A81F84
+CT=7CFD74D510AC894FF5B698280386F4FF
+PT=10D03F32C0694E9FFF598E101998105E
+
+I=137
+KEY=3A57FC4654E6DC4F0F85CD03F1300FDA
+CT=10D03F32C0694E9FFF598E101998105E
+PT=351D6E8D1C26F36973356F6235B8ABAD
+
+I=138
+KEY=0F4A92CB48C02F267CB0A261C488A477
+CT=351D6E8D1C26F36973356F6235B8ABAD
+PT=0DDDA7AA09FBD986C0B9EA2B018FAE4F
+
+I=139
+KEY=02973561413BF6A0BC09484AC5070A38
+CT=0DDDA7AA09FBD986C0B9EA2B018FAE4F
+PT=31C5B68B7A08D1B7320FAB052CC3B0D1
+
+I=140
+KEY=335283EA3B3327178E06E34FE9C4BAE9
+CT=31C5B68B7A08D1B7320FAB052CC3B0D1
+PT=501B8D9EE91468522029020A39484DB5
+
+I=141
+KEY=63490E74D2274F45AE2FE145D08CF75C
+CT=501B8D9EE91468522029020A39484DB5
+PT=2714FBA566DFD4909B8ABF29B1D5A8E8
+
+I=142
+KEY=445DF5D1B4F89BD535A55E6C61595FB4
+CT=2714FBA566DFD4909B8ABF29B1D5A8E8
+PT=94485381E5088D67BC1335C89FA5C2B8
+
+I=143
+KEY=D015A65051F016B289B66BA4FEFC9D0C
+CT=94485381E5088D67BC1335C89FA5C2B8
+PT=BE5BEE26D6686A0EB5838C237FEF79B7
+
+I=144
+KEY=6E4E487687987CBC3C35E7878113E4BB
+CT=BE5BEE26D6686A0EB5838C237FEF79B7
+PT=417F73D46CFBE3C5C9AD513BCBC6D185
+
+I=145
+KEY=2F313BA2EB639F79F598B6BC4AD5353E
+CT=417F73D46CFBE3C5C9AD513BCBC6D185
+PT=AE3B07350B3BE7D4F9F6FE2F95622449
+
+I=146
+KEY=810A3C97E05878AD0C6E4893DFB71177
+CT=AE3B07350B3BE7D4F9F6FE2F95622449
+PT=7BD4231225A7B665953AB034E24A7C7A
+
+I=147
+KEY=FADE1F85C5FFCEC89954F8A73DFD6D0D
+CT=7BD4231225A7B665953AB034E24A7C7A
+PT=3C1FBE8F3CEB1438B4A64E59FAF291CF
+
+I=148
+KEY=C6C1A10AF914DAF02DF2B6FEC70FFCC2
+CT=3C1FBE8F3CEB1438B4A64E59FAF291CF
+PT=ACFF7F1E71AA952CF8ADB24FEE18A7BB
+
+I=149
+KEY=6A3EDE1488BE4FDCD55F04B129175B79
+CT=ACFF7F1E71AA952CF8ADB24FEE18A7BB
+PT=3C3A6D3FD73B36317417106A92E2B43E
+
+I=150
+KEY=5604B32B5F8579EDA14814DBBBF5EF47
+CT=3C3A6D3FD73B36317417106A92E2B43E
+PT=F34F8C719A4A74DD8F4FA4CBC520827A
+
+I=151
+KEY=A54B3F5AC5CF0D302E07B0107ED56D3D
+CT=F34F8C719A4A74DD8F4FA4CBC520827A
+PT=6A5D56FB6C7EBA15112AF8A093F3E1E1
+
+I=152
+KEY=CF1669A1A9B1B7253F2D48B0ED268CDC
+CT=6A5D56FB6C7EBA15112AF8A093F3E1E1
+PT=8BF39EE3B8ED0F6A6EA92319A81B10E6
+
+I=153
+KEY=44E5F742115CB84F51846BA9453D9C3A
+CT=8BF39EE3B8ED0F6A6EA92319A81B10E6
+PT=2BC796D320C444BBBAD466D686F460F6
+
+I=154
+KEY=6F2261913198FCF4EB500D7FC3C9FCCC
+CT=2BC796D320C444BBBAD466D686F460F6
+PT=2CF595F424ED50B1A146E387B128CBA3
+
+I=155
+KEY=43D7F4651575AC454A16EEF872E1376F
+CT=2CF595F424ED50B1A146E387B128CBA3
+PT=56F2E856045BAE66EA003A6C39205344
+
+I=156
+KEY=15251C33112E0223A016D4944BC1642B
+CT=56F2E856045BAE66EA003A6C39205344
+PT=31C83401BD83424BA6E94C0D6D453D9A
+
+I=157
+KEY=24ED2832ACAD406806FF9899268459B1
+CT=31C83401BD83424BA6E94C0D6D453D9A
+PT=A687F05992CCB57CDE61AFF8878913ED
+
+I=158
+KEY=826AD86B3E61F514D89E3761A10D4A5C
+CT=A687F05992CCB57CDE61AFF8878913ED
+PT=16E771193C2473502F415C27FB101D94
+
+I=159
+KEY=948DA97202458644F7DF6B465A1D57C8
+CT=16E771193C2473502F415C27FB101D94
+PT=C69CDBA29C9EDC3407C1C73A756A0B6E
+
+I=160
+KEY=521172D09EDB5A70F01EAC7C2F775CA6
+CT=C69CDBA29C9EDC3407C1C73A756A0B6E
+PT=566D82281F48E3217F3852115CF2E944
+
+I=161
+KEY=047CF0F88193B9518F26FE6D7385B5E2
+CT=566D82281F48E3217F3852115CF2E944
+PT=B3FEBC8F8F0F0B652C4358BCC9BF54DF
+
+I=162
+KEY=B7824C770E9CB234A365A6D1BA3AE13D
+CT=B3FEBC8F8F0F0B652C4358BCC9BF54DF
+PT=BBB84877094B3EB86203D17C92CF5168
+
+I=163
+KEY=0C3A040007D78C8CC16677AD28F5B055
+CT=BBB84877094B3EB86203D17C92CF5168
+PT=2C45E5A3F8C564862DA4D8AD428D3E67
+
+I=164
+KEY=207FE1A3FF12E80AECC2AF006A788E32
+CT=2C45E5A3F8C564862DA4D8AD428D3E67
+PT=10ADC2AF56600D95AD8BB579EF5170C9
+
+I=165
+KEY=30D2230CA972E59F41491A798529FEFB
+CT=10ADC2AF56600D95AD8BB579EF5170C9
+PT=1854BB8AC568F3599153BE1AC60BA78D
+
+I=166
+KEY=288698866C1A16C6D01AA46343225976
+CT=1854BB8AC568F3599153BE1AC60BA78D
+PT=E641765C80D8812A1A0F4606C639642E
+
+I=167
+KEY=CEC7EEDAECC297ECCA15E265851B3D58
+CT=E641765C80D8812A1A0F4606C639642E
+PT=317AC70CEAA87AE66A15C22BD5E534E5
+
+I=168
+KEY=FFBD29D6066AED0AA000204E50FE09BD
+CT=317AC70CEAA87AE66A15C22BD5E534E5
+PT=BFFB8D7B3D9F54727944ABC3F6474362
+
+I=169
+KEY=4046A4AD3BF5B978D9448B8DA6B94ADF
+CT=BFFB8D7B3D9F54727944ABC3F6474362
+PT=060765D1D9D289B862DA274CFDB4D7A0
+
+I=170
+KEY=4641C17CE22730C0BB9EACC15B0D9D7F
+CT=060765D1D9D289B862DA274CFDB4D7A0
+PT=FBAFA4C1D6CEF2A45E9E084311FDF858
+
+I=171
+KEY=BDEE65BD34E9C264E500A4824AF06527
+CT=FBAFA4C1D6CEF2A45E9E084311FDF858
+PT=F7F36BFDA77362B470B0B074241C58E9
+
+I=172
+KEY=4A1D0E40939AA0D095B014F66EEC3DCE
+CT=F7F36BFDA77362B470B0B074241C58E9
+PT=2FC236EDCD573A6DCFBA7930E9CF4698
+
+I=173
+KEY=65DF38AD5ECD9ABD5A0A6DC687237B56
+CT=2FC236EDCD573A6DCFBA7930E9CF4698
+PT=949A9994DC976595BFACA5F31116A165
+
+I=174
+KEY=F145A139825AFF28E5A6C8359635DA33
+CT=949A9994DC976595BFACA5F31116A165
+PT=19373CA9D519BF83EAA4C17E1EE8225C
+
+I=175
+KEY=E8729D90574340AB0F02094B88DDF86F
+CT=19373CA9D519BF83EAA4C17E1EE8225C
+PT=685C783918997A7572B0A09315F1F2DB
+
+I=176
+KEY=802EE5A94FDA3ADE7DB2A9D89D2C0AB4
+CT=685C783918997A7572B0A09315F1F2DB
+PT=FC0CB1792EADB7E8DECB021A435DE1E7
+
+I=177
+KEY=7C2254D061778D36A379ABC2DE71EB53
+CT=FC0CB1792EADB7E8DECB021A435DE1E7
+PT=797C5E5B4F3B38E7C72FF7AAAB270E86
+
+I=178
+KEY=055E0A8B2E4CB5D164565C687556E5D5
+CT=797C5E5B4F3B38E7C72FF7AAAB270E86
+PT=A5AB675262EA186F777681647B6AA1F9
+
+I=179
+KEY=A0F56DD94CA6ADBE1320DD0C0E3C442C
+CT=A5AB675262EA186F777681647B6AA1F9
+PT=08CDF6AF55BBB247D0DE1A69CD041A78
+
+I=180
+KEY=A8389B76191D1FF9C3FEC765C3385E54
+CT=08CDF6AF55BBB247D0DE1A69CD041A78
+PT=DED1F3C30AB5EC3455C7B6A756E5FF03
+
+I=181
+KEY=76E968B513A8F3CD963971C295DDA157
+CT=DED1F3C30AB5EC3455C7B6A756E5FF03
+PT=C759A17B354D668D1BA5541D16241D9F
+
+I=182
+KEY=B1B0C9CE26E595408D9C25DF83F9BCC8
+CT=C759A17B354D668D1BA5541D16241D9F
+PT=97E011FE7B327B8292270D4CD18BD9AC
+
+I=183
+KEY=2650D8305DD7EEC21FBB289352726564
+CT=97E011FE7B327B8292270D4CD18BD9AC
+PT=9F004E4282F790C06681F16262EF78CF
+
+I=184
+KEY=B9509672DF207E02793AD9F1309D1DAB
+CT=9F004E4282F790C06681F16262EF78CF
+PT=6B34AA95EFD874915DAE275CE34A04B9
+
+I=185
+KEY=D2643CE730F80A932494FEADD3D71912
+CT=6B34AA95EFD874915DAE275CE34A04B9
+PT=96966D118C50B67849F93B109492B5EB
+
+I=186
+KEY=44F251F6BCA8BCEB6D6DC5BD4745ACF9
+CT=96966D118C50B67849F93B109492B5EB
+PT=2CA6F85E4F29BE884392A0FEDD08D5A7
+
+I=187
+KEY=6854A9A8F38102632EFF65439A4D795E
+CT=2CA6F85E4F29BE884392A0FEDD08D5A7
+PT=21B71D4F23DDC002CAAFB7426009BD27
+
+I=188
+KEY=49E3B4E7D05CC261E450D201FA44C479
+CT=21B71D4F23DDC002CAAFB7426009BD27
+PT=BF059F1945E9E51B22B308849757B475
+
+I=189
+KEY=F6E62BFE95B5277AC6E3DA856D13700C
+CT=BF059F1945E9E51B22B308849757B475
+PT=434F4E756A3178472E12B80A1C2ED83E
+
+I=190
+KEY=B5A9658BFF845F3DE8F1628F713DA832
+CT=434F4E756A3178472E12B80A1C2ED83E
+PT=37DB2B0D5967700CDE348FB60661A6D4
+
+I=191
+KEY=82724E86A6E32F3136C5ED39775C0EE6
+CT=37DB2B0D5967700CDE348FB60661A6D4
+PT=D31C5130F8F217AC0014B5F37B9BB86B
+
+I=192
+KEY=516E1FB65E11389D36D158CA0CC7B68D
+CT=D31C5130F8F217AC0014B5F37B9BB86B
+PT=3B8CD15967907F9C617697EBEF395B16
+
+I=193
+KEY=6AE2CEEF3981470157A7CF21E3FEED9B
+CT=3B8CD15967907F9C617697EBEF395B16
+PT=AF17B5E5236BF46576379CD4E5AF8A34
+
+I=194
+KEY=C5F57B0A1AEAB364219053F5065167AF
+CT=AF17B5E5236BF46576379CD4E5AF8A34
+PT=88286D6FB237181EC239C1D70C0D6675
+
+I=195
+KEY=4DDD1665A8DDAB7AE3A992220A5C01DA
+CT=88286D6FB237181EC239C1D70C0D6675
+PT=8A5207BB1283343B3692045183451A7D
+
+I=196
+KEY=C78F11DEBA5E9F41D53B967389191BA7
+CT=8A5207BB1283343B3692045183451A7D
+PT=53C12FAC4B0185AA0CE067FC67EC5B9C
+
+I=197
+KEY=944E3E72F15F1AEBD9DBF18FEEF5403B
+CT=53C12FAC4B0185AA0CE067FC67EC5B9C
+PT=BBA2BB9B1CA48D2E97E0C39E500EB9C0
+
+I=198
+KEY=2FEC85E9EDFB97C54E3B3211BEFBF9FB
+CT=BBA2BB9B1CA48D2E97E0C39E500EB9C0
+PT=8BA2341064B7B5184CD7E7A40FA0358E
+
+I=199
+KEY=A44EB1F9894C22DD02ECD5B5B15BCC75
+CT=8BA2341064B7B5184CD7E7A40FA0358E
+PT=97121EEEA68CC6200FBC0B311849E625
+
+I=200
+KEY=335CAF172FC0E4FD0D50DE84A9122A50
+CT=97121EEEA68CC6200FBC0B311849E625
+PT=027FA370A9412B342043A15F19294961
+
+I=201
+KEY=31230C678681CFC92D137FDBB03B6331
+CT=027FA370A9412B342043A15F19294961
+PT=72CFBE6BA03AB28A53A6727717D1199A
+
+I=202
+KEY=43ECB20C26BB7D437EB50DACA7EA7AAB
+CT=72CFBE6BA03AB28A53A6727717D1199A
+PT=7A15B1B4B4ED35F9C208500FE7C4C1C7
+
+I=203
+KEY=39F903B8925648BABCBD5DA3402EBB6C
+CT=7A15B1B4B4ED35F9C208500FE7C4C1C7
+PT=AF46496D09254FAB5F381E93EEB4FBB0
+
+I=204
+KEY=96BF4AD59B730711E3854330AE9A40DC
+CT=AF46496D09254FAB5F381E93EEB4FBB0
+PT=ADA064E0F4324E8B0C062F6E33C7D016
+
+I=205
+KEY=3B1F2E356F41499AEF836C5E9D5D90CA
+CT=ADA064E0F4324E8B0C062F6E33C7D016
+PT=7723A61733BD5BBFAB8C559ED379B8B5
+
+I=206
+KEY=4C3C88225CFC1225440F39C04E24287F
+CT=7723A61733BD5BBFAB8C559ED379B8B5
+PT=5D210E8F35DD863316E89FADA70E8392
+
+I=207
+KEY=111D86AD6921941652E7A66DE92AABED
+CT=5D210E8F35DD863316E89FADA70E8392
+PT=92B1D20E7D87787950990052DE2ABA4F
+
+I=208
+KEY=83AC54A314A6EC6F027EA63F370011A2
+CT=92B1D20E7D87787950990052DE2ABA4F
+PT=178E494D23AA6AC13AC180727C47FD2A
+
+I=209
+KEY=94221DEE370C86AE38BF264D4B47EC88
+CT=178E494D23AA6AC13AC180727C47FD2A
+PT=CB9C10817C059D5BE4F123576FF459C6
+
+I=210
+KEY=5FBE0D6F4B091BF5DC4E051A24B3B54E
+CT=CB9C10817C059D5BE4F123576FF459C6
+PT=4934C56CC7BAF0A8DEBB62CFB2B0DEBF
+
+I=211
+KEY=168AC8038CB3EB5D02F567D596036BF1
+CT=4934C56CC7BAF0A8DEBB62CFB2B0DEBF
+PT=F6F2A4B90B357D88401702C968D9EC02
+
+I=212
+KEY=E0786CBA878696D542E2651CFEDA87F3
+CT=F6F2A4B90B357D88401702C968D9EC02
+PT=06A35CAD7B36751BEE345C33112EB6D1
+
+I=213
+KEY=E6DB3017FCB0E3CEACD6392FEFF43122
+CT=06A35CAD7B36751BEE345C33112EB6D1
+PT=3244CDE10DF48795DA702CD8C2F4CABD
+
+I=214
+KEY=D49FFDF6F144645B76A615F72D00FB9F
+CT=3244CDE10DF48795DA702CD8C2F4CABD
+PT=47C06F5BEA8C3503512E0E200966C546
+
+I=215
+KEY=935F92AD1BC8515827881BD724663ED9
+CT=47C06F5BEA8C3503512E0E200966C546
+PT=68A077D25CBEA7F76B88D8C6A414D0CE
+
+I=216
+KEY=FBFFE57F4776F6AF4C00C3118072EE17
+CT=68A077D25CBEA7F76B88D8C6A414D0CE
+PT=DDF110C2C79B46C5132CCEF654280D7E
+
+I=217
+KEY=260EF5BD80EDB06A5F2C0DE7D45AE369
+CT=DDF110C2C79B46C5132CCEF654280D7E
+PT=0AB610A0082813076D052011C12DC924
+
+I=218
+KEY=2CB8E51D88C5A36D32292DF615772A4D
+CT=0AB610A0082813076D052011C12DC924
+PT=8C42F49EDAE1BD6B631E74B68B1B8444
+
+I=219
+KEY=A0FA118352241E06513759409E6CAE09
+CT=8C42F49EDAE1BD6B631E74B68B1B8444
+PT=B5A5B6E50B3A066D16DF883F353019FE
+
+I=220
+KEY=155FA766591E186B47E8D17FAB5CB7F7
+CT=B5A5B6E50B3A066D16DF883F353019FE
+PT=70CFA25AFC9919937E2FC90900F0B398
+
+I=221
+KEY=6590053CA58701F839C71876ABAC046F
+CT=70CFA25AFC9919937E2FC90900F0B398
+PT=B927A5911AE33DEAB619DAFEE22CD0DF
+
+I=222
+KEY=DCB7A0ADBF643C128FDEC2884980D4B0
+CT=B927A5911AE33DEAB619DAFEE22CD0DF
+PT=10C548438C5B976EDD624129B2102D7A
+
+I=223
+KEY=CC72E8EE333FAB7C52BC83A1FB90F9CA
+CT=10C548438C5B976EDD624129B2102D7A
+PT=4549E45DA2F8FE82972DC7DF3548CAFF
+
+I=224
+KEY=893B0CB391C755FEC591447ECED83335
+CT=4549E45DA2F8FE82972DC7DF3548CAFF
+PT=2B85505E64089FEB6B5763011E778C96
+
+I=225
+KEY=A2BE5CEDF5CFCA15AEC6277FD0AFBFA3
+CT=2B85505E64089FEB6B5763011E778C96
+PT=4B157930F9A6EBE3D9D6AC9FADDEB35C
+
+I=226
+KEY=E9AB25DD0C6921F677108BE07D710CFF
+CT=4B157930F9A6EBE3D9D6AC9FADDEB35C
+PT=12341C0FE9EB6757BFFCC4BC1A8F2585
+
+I=227
+KEY=FB9F39D2E58246A1C8EC4F5C67FE297A
+CT=12341C0FE9EB6757BFFCC4BC1A8F2585
+PT=5422D62D794B02FC04BE01198EE23ACE
+
+I=228
+KEY=AFBDEFFF9CC9445DCC524E45E91C13B4
+CT=5422D62D794B02FC04BE01198EE23ACE
+PT=42D43022FD6DB571BCB2FDE653C9068C
+
+I=229
+KEY=ED69DFDD61A4F12C70E0B3A3BAD51538
+CT=42D43022FD6DB571BCB2FDE653C9068C
+PT=80BD3AAED5D519B75D22BF060EF1DFC6
+
+I=230
+KEY=6DD4E573B471E89B2DC20CA5B424CAFE
+CT=80BD3AAED5D519B75D22BF060EF1DFC6
+PT=B72973F9016A348CDDCCFFC2DD291B5A
+
+I=231
+KEY=DAFD968AB51BDC17F00EF367690DD1A4
+CT=B72973F9016A348CDDCCFFC2DD291B5A
+PT=5692E61C86A7B2C043ABBED712390361
+
+I=232
+KEY=8C6F709633BC6ED7B3A54DB07B34D2C5
+CT=5692E61C86A7B2C043ABBED712390361
+PT=75138737269AA27855C2CFD2DCEDEFC4
+
+I=233
+KEY=F97CF7A11526CCAFE6678262A7D93D01
+CT=75138737269AA27855C2CFD2DCEDEFC4
+PT=A022AA28CECC4BB5EB28BA5B7828AB6E
+
+I=234
+KEY=595E5D89DBEA871A0D4F3839DFF1966F
+CT=A022AA28CECC4BB5EB28BA5B7828AB6E
+PT=17B0BF87EE02AA44705B1B1B4DF7D3F4
+
+I=235
+KEY=4EEEE20E35E82D5E7D1423229206459B
+CT=17B0BF87EE02AA44705B1B1B4DF7D3F4
+PT=095A5A041C43DCFEB5D0DF3E7659344A
+
+I=236
+KEY=47B4B80A29ABF1A0C8C4FC1CE45F71D1
+CT=095A5A041C43DCFEB5D0DF3E7659344A
+PT=9DCE0D1C572509F3367EE952B89044E5
+
+I=237
+KEY=DA7AB5167E8EF853FEBA154E5CCF3534
+CT=9DCE0D1C572509F3367EE952B89044E5
+PT=E6075BCC82399A91E52034EA2F197058
+
+I=238
+KEY=3C7DEEDAFCB762C21B9A21A473D6456C
+CT=E6075BCC82399A91E52034EA2F197058
+PT=431D243CEE96B424B0FA4FEC5E707036
+
+I=239
+KEY=7F60CAE61221D6E6AB606E482DA6355A
+CT=431D243CEE96B424B0FA4FEC5E707036
+PT=5EF70106A2EA454CA9405A8AA1B54EF0
+
+I=240
+KEY=2197CBE0B0CB93AA022034C28C137BAA
+CT=5EF70106A2EA454CA9405A8AA1B54EF0
+PT=09B003CB7E2ADDD587A2ABCDD03D234F
+
+I=241
+KEY=2827C82BCEE14E7F85829F0F5C2E58E5
+CT=09B003CB7E2ADDD587A2ABCDD03D234F
+PT=3647FAC6EF758113DC768E7737098DE9
+
+I=242
+KEY=1E6032ED2194CF6C59F411786B27D50C
+CT=3647FAC6EF758113DC768E7737098DE9
+PT=C043BD96A88492C85431B72C708C3C60
+
+I=243
+KEY=DE238F7B89105DA40DC5A6541BABE96C
+CT=C043BD96A88492C85431B72C708C3C60
+PT=299A25142A6B5D334158D359DD9CD574
+
+I=244
+KEY=F7B9AA6FA37B00974C9D750DC6373C18
+CT=299A25142A6B5D334158D359DD9CD574
+PT=21E56C2202C8D6F81EDC63A8A1EA4B6A
+
+I=245
+KEY=D65CC64DA1B3D66F524116A567DD7772
+CT=21E56C2202C8D6F81EDC63A8A1EA4B6A
+PT=FD3565957E3845065B7AEF27A900FDD5
+
+I=246
+KEY=2B69A3D8DF8B9369093BF982CEDD8AA7
+CT=FD3565957E3845065B7AEF27A900FDD5
+PT=A4DB9120D1ED0419342AFC2CBF114647
+
+I=247
+KEY=8FB232F80E6697703D1105AE71CCCCE0
+CT=A4DB9120D1ED0419342AFC2CBF114647
+PT=27FDDEA1E746BD217CFB4CD7A511BACE
+
+I=248
+KEY=A84FEC59E9202A5141EA4979D4DD762E
+CT=27FDDEA1E746BD217CFB4CD7A511BACE
+PT=6A9189FD46E47B22F151A213D023442B
+
+I=249
+KEY=C2DE65A4AFC45173B0BBEB6A04FE3205
+CT=6A9189FD46E47B22F151A213D023442B
+PT=1C729701404C76D5D7A156C39CF52542
+
+I=250
+KEY=DEACF2A5EF8827A6671ABDA9980B1747
+CT=1C729701404C76D5D7A156C39CF52542
+PT=6F97CB4564E0783DFE962DCB13FEDF72
+
+I=251
+KEY=B13B39E08B685F9B998C90628BF5C835
+CT=6F97CB4564E0783DFE962DCB13FEDF72
+PT=F818140A280299B182CDA37CBE9B27AB
+
+I=252
+KEY=49232DEAA36AC62A1B41331E356EEF9E
+CT=F818140A280299B182CDA37CBE9B27AB
+PT=20E9F2BE7017C2945005FD8A420A5B7D
+
+I=253
+KEY=69CADF54D37D04BE4B44CE947764B4E3
+CT=20E9F2BE7017C2945005FD8A420A5B7D
+PT=60BB97C634161EF6A36056193B6EDDB0
+
+I=254
+KEY=09714892E76B1A48E824988D4C0A6953
+CT=60BB97C634161EF6A36056193B6EDDB0
+PT=E4B9777B7390EF430A93FF7DD0B68CD4
+
+I=255
+KEY=EDC83FE994FBF50BE2B767F09CBCE587
+CT=E4B9777B7390EF430A93FF7DD0B68CD4
+PT=E5E3BD960CF15BBDB8A6C08711A884CF
+
+I=256
+KEY=082B827F980AAEB65A11A7778D146148
+CT=E5E3BD960CF15BBDB8A6C08711A884CF
+PT=71A6AEFD0181DCE69A116585044C7F66
+
+I=257
+KEY=798D2C82998B7250C000C2F289581E2E
+CT=71A6AEFD0181DCE69A116585044C7F66
+PT=8E9C1CFFDB8972617D74DA0E9ED065D1
+
+I=258
+KEY=F711307D42020031BD7418FC17887BFF
+CT=8E9C1CFFDB8972617D74DA0E9ED065D1
+PT=CE7882AB901A199910FC463A4D1D626A
+
+I=259
+KEY=3969B2D6D21819A8AD885EC65A951995
+CT=CE7882AB901A199910FC463A4D1D626A
+PT=2334546032E850D0029CB1AD6AFCEA7A
+
+I=260
+KEY=1A5DE6B6E0F04978AF14EF6B3069F3EF
+CT=2334546032E850D0029CB1AD6AFCEA7A
+PT=88B4CF0D4AB7BD00BE98DA1626063A69
+
+I=261
+KEY=92E929BBAA47F478118C357D166FC986
+CT=88B4CF0D4AB7BD00BE98DA1626063A69
+PT=5A7FF831F28E5EC4A11DA524E2323925
+
+I=262
+KEY=C896D18A58C9AABCB0919059F45DF0A3
+CT=5A7FF831F28E5EC4A11DA524E2323925
+PT=DF000551EF9BBD914969BD1B353BDC8C
+
+I=263
+KEY=1796D4DBB752172DF9F82D42C1662C2F
+CT=DF000551EF9BBD914969BD1B353BDC8C
+PT=1EECBC47697208193C354E28D23E8CE9
+
+I=264
+KEY=097A689CDE201F34C5CD636A1358A0C6
+CT=1EECBC47697208193C354E28D23E8CE9
+PT=DF85CD4B3F821A7411F9F5D1FDF9DB85
+
+I=265
+KEY=D6FFA5D7E1A20540D43496BBEEA17B43
+CT=DF85CD4B3F821A7411F9F5D1FDF9DB85
+PT=038E765F1910D8C0C1251254605218F2
+
+I=266
+KEY=D571D388F8B2DD80151184EF8EF363B1
+CT=038E765F1910D8C0C1251254605218F2
+PT=FBA8FE850294EEAEE75F56C974BF7DE4
+
+I=267
+KEY=2ED92D0DFA26332EF24ED226FA4C1E55
+CT=FBA8FE850294EEAEE75F56C974BF7DE4
+PT=47F9D6F7A3E2A1BFA360EA1BA8B0450E
+
+I=268
+KEY=6920FBFA59C49291512E383D52FC5B5B
+CT=47F9D6F7A3E2A1BFA360EA1BA8B0450E
+PT=FD6F4A4825DE5E776BFD569223CB5A2C
+
+I=269
+KEY=944FB1B27C1ACCE63AD36EAF71370177
+CT=FD6F4A4825DE5E776BFD569223CB5A2C
+PT=10430ED7EE0FDB8FBC348F8E08286622
+
+I=270
+KEY=840CBF659215176986E7E121791F6755
+CT=10430ED7EE0FDB8FBC348F8E08286622
+PT=4B75D5C573185303B01EB649884758B1
+
+I=271
+KEY=CF796AA0E10D446A36F95768F1583FE4
+CT=4B75D5C573185303B01EB649884758B1
+PT=85CCA4271A941517D55D05B4F29527C3
+
+I=272
+KEY=4AB5CE87FB99517DE3A452DC03CD1827
+CT=85CCA4271A941517D55D05B4F29527C3
+PT=615EA2D44C52D639B6AD05D621B4A1A6
+
+I=273
+KEY=2BEB6C53B7CB87445509570A2279B981
+CT=615EA2D44C52D639B6AD05D621B4A1A6
+PT=1DFD1E93D34ABFE45BA6BF6BD3FBF30E
+
+I=274
+KEY=361672C0648138A00EAFE861F1824A8F
+CT=1DFD1E93D34ABFE45BA6BF6BD3FBF30E
+PT=B65C3F09FFFF752DEE2F8F2D441A51CA
+
+I=275
+KEY=804A4DC99B7E4D8DE080674CB5981B45
+CT=B65C3F09FFFF752DEE2F8F2D441A51CA
+PT=3B36D6FD4F7ACAD4681FF4398AC7AFB3
+
+I=276
+KEY=BB7C9B34D4048759889F93753F5FB4F6
+CT=3B36D6FD4F7ACAD4681FF4398AC7AFB3
+PT=F3CDEFABE450D887CD585C280BB22367
+
+I=277
+KEY=48B1749F30545FDE45C7CF5D34ED9791
+CT=F3CDEFABE450D887CD585C280BB22367
+PT=ECC49251BAD79981CA1B1F683A843531
+
+I=278
+KEY=A475E6CE8A83C65F8FDCD0350E69A2A0
+CT=ECC49251BAD79981CA1B1F683A843531
+PT=8BE43F0A30663108513A0E5F49F9152C
+
+I=279
+KEY=2F91D9C4BAE5F757DEE6DE6A4790B78C
+CT=8BE43F0A30663108513A0E5F49F9152C
+PT=DB3D559FCEBE0FAF3B218161BA6B3F07
+
+I=280
+KEY=F4AC8C5B745BF8F8E5C75F0BFDFB888B
+CT=DB3D559FCEBE0FAF3B218161BA6B3F07
+PT=8F0C3AE11B03433C07CABD26BF47A430
+
+I=281
+KEY=7BA0B6BA6F58BBC4E20DE22D42BC2CBB
+CT=8F0C3AE11B03433C07CABD26BF47A430
+PT=73578DC3464CE3EE0314B206E1E9504C
+
+I=282
+KEY=08F73B792914582AE119502BA3557CF7
+CT=73578DC3464CE3EE0314B206E1E9504C
+PT=60DA2C12B296804C608348A54EE1C60D
+
+I=283
+KEY=682D176B9B82D866819A188EEDB4BAFA
+CT=60DA2C12B296804C608348A54EE1C60D
+PT=A960934724BDC61E5429E59856FC1902
+
+I=284
+KEY=C14D842CBF3F1E78D5B3FD16BB48A3F8
+CT=A960934724BDC61E5429E59856FC1902
+PT=6B7E71535C6B7B09BDF19AF79CD58C95
+
+I=285
+KEY=AA33F57FE3546571684267E1279D2F6D
+CT=6B7E71535C6B7B09BDF19AF79CD58C95
+PT=B95E0126EF320F1E6F288366DB7F2773
+
+I=286
+KEY=136DF4590C666A6F076AE487FCE2081E
+CT=B95E0126EF320F1E6F288366DB7F2773
+PT=6403B99D6FE0F85128FDD1F05B81AA6E
+
+I=287
+KEY=776E4DC46386923E2F973577A763A270
+CT=6403B99D6FE0F85128FDD1F05B81AA6E
+PT=9EBA25F2D6CE5817F4317F3AFE6421E7
+
+I=288
+KEY=E9D46836B548CA29DBA64A4D59078397
+CT=9EBA25F2D6CE5817F4317F3AFE6421E7
+PT=5E77AAE8A3C5EEAF4732BB310DAC3771
+
+I=289
+KEY=B7A3C2DE168D24869C94F17C54ABB4E6
+CT=5E77AAE8A3C5EEAF4732BB310DAC3771
+PT=5FD00675371300B60C30EFCEE0171080
+
+I=290
+KEY=E873C4AB219E243090A41EB2B4BCA466
+CT=5FD00675371300B60C30EFCEE0171080
+PT=482D701DBCE3AE108F65836C12A41C2C
+
+I=291
+KEY=A05EB4B69D7D8A201FC19DDEA618B84A
+CT=482D701DBCE3AE108F65836C12A41C2C
+PT=2966D81642542925891D8F7409051E4A
+
+I=292
+KEY=89386CA0DF29A30596DC12AAAF1DA600
+CT=2966D81642542925891D8F7409051E4A
+PT=2FD6F3DB9DD1DEDED9F32D1806AE69D6
+
+I=293
+KEY=A6EE9F7B42F87DDB4F2F3FB2A9B3CFD6
+CT=2FD6F3DB9DD1DEDED9F32D1806AE69D6
+PT=9B59277165B792790E29ADB53ADE60DB
+
+I=294
+KEY=3DB7B80A274FEFA241069207936DAF0D
+CT=9B59277165B792790E29ADB53ADE60DB
+PT=A4873C5246044200B56C25FFADAB15D6
+
+I=295
+KEY=99308458614BADA2F46AB7F83EC6BADB
+CT=A4873C5246044200B56C25FFADAB15D6
+PT=9E2BBBD65649EB2A0CD974AD32BF382F
+
+I=296
+KEY=071B3F8E37024688F8B3C3550C7982F4
+CT=9E2BBBD65649EB2A0CD974AD32BF382F
+PT=F83F4408675892DADA4833A43F22FFC8
+
+I=297
+KEY=FF247B86505AD45222FBF0F1335B7D3C
+CT=F83F4408675892DADA4833A43F22FFC8
+PT=19C337CCBF8D06DC68D9A16DB294EF44
+
+I=298
+KEY=E6E74C4AEFD7D28E4A22519C81CF9278
+CT=19C337CCBF8D06DC68D9A16DB294EF44
+PT=433578E0901A4F4B134E6DCF68249FC7
+
+I=299
+KEY=A5D234AA7FCD9DC5596C3C53E9EB0DBF
+CT=433578E0901A4F4B134E6DCF68249FC7
+PT=7F317CB0B3279C894B8A08289797FFF1
+
+I=300
+KEY=DAE3481ACCEA014C12E6347B7E7CF24E
+CT=7F317CB0B3279C894B8A08289797FFF1
+PT=AFFB4CA21A2A36FD24BB18C5AED17789
+
+I=301
+KEY=751804B8D6C037B1365D2CBED0AD85C7
+CT=AFFB4CA21A2A36FD24BB18C5AED17789
+PT=394DA5EC353A68B844D1BC24A468DA5C
+
+I=302
+KEY=4C55A154E3FA5F09728C909A74C55F9B
+CT=394DA5EC353A68B844D1BC24A468DA5C
+PT=C649C174B98A06351F26C117D14FF290
+
+I=303
+KEY=8A1C60205A70593C6DAA518DA58AAD0B
+CT=C649C174B98A06351F26C117D14FF290
+PT=2E122AA7C90B57304A80C19480627DD7
+
+I=304
+KEY=A40E4A87937B0E0C272A901925E8D0DC
+CT=2E122AA7C90B57304A80C19480627DD7
+PT=9841ADE6A65834CE89959EFE8F059ED6
+
+I=305
+KEY=3C4FE76135233AC2AEBF0EE7AAED4E0A
+CT=9841ADE6A65834CE89959EFE8F059ED6
+PT=6B70D74762A4BEFBD15B9EC6835CB69B
+
+I=306
+KEY=573F3026578784397FE4902129B1F891
+CT=6B70D74762A4BEFBD15B9EC6835CB69B
+PT=2E8B5DEF53E2294C0C953A9B8BD9399D
+
+I=307
+KEY=79B46DC90465AD757371AABAA268C10C
+CT=2E8B5DEF53E2294C0C953A9B8BD9399D
+PT=D32D00F78BA00F6CEA792598B89779E4
+
+I=308
+KEY=AA996D3E8FC5A21999088F221AFFB8E8
+CT=D32D00F78BA00F6CEA792598B89779E4
+PT=7059DCC6CB8D295B95F2978F25927B31
+
+I=309
+KEY=DAC0B1F844488B420CFA18AD3F6DC3D9
+CT=7059DCC6CB8D295B95F2978F25927B31
+PT=833A1AFA7DC4CAF54F5B36981A98D7E3
+
+I=310
+KEY=59FAAB02398C41B743A12E3525F5143A
+CT=833A1AFA7DC4CAF54F5B36981A98D7E3
+PT=4CC5A526400B493AAA28909A2F4932BF
+
+I=311
+KEY=153F0E247987088DE989BEAF0ABC2685
+CT=4CC5A526400B493AAA28909A2F4932BF
+PT=D7134DEE2967104D161876A0802B3727
+
+I=312
+KEY=C22C43CA50E018C0FF91C80F8A9711A2
+CT=D7134DEE2967104D161876A0802B3727
+PT=C45DB7BC52D7A0D53399B91EFB686D32
+
+I=313
+KEY=0671F4760237B815CC08711171FF7C90
+CT=C45DB7BC52D7A0D53399B91EFB686D32
+PT=2F49EA2A8D7F44909BCF41C3640FD0AB
+
+I=314
+KEY=29381E5C8F48FC8557C730D215F0AC3B
+CT=2F49EA2A8D7F44909BCF41C3640FD0AB
+PT=6D416059758F4AC555A05D83E9CFC4DE
+
+I=315
+KEY=44797E05FAC7B64002676D51FC3F68E5
+CT=6D416059758F4AC555A05D83E9CFC4DE
+PT=2721015DDF85EC87ED8480A87705CD37
+
+I=316
+KEY=63587F5825425AC7EFE3EDF98B3AA5D2
+CT=2721015DDF85EC87ED8480A87705CD37
+PT=3B045F5DD5ADC6E5D341E2E6A5B919D3
+
+I=317
+KEY=585C2005F0EF9C223CA20F1F2E83BC01
+CT=3B045F5DD5ADC6E5D341E2E6A5B919D3
+PT=85DA9719FF16899B343BE56FDF9F86BF
+
+I=318
+KEY=DD86B71C0FF915B90899EA70F11C3ABE
+CT=85DA9719FF16899B343BE56FDF9F86BF
+PT=67FD32AC2783C381E77AE0BB8ACEECCD
+
+I=319
+KEY=BA7B85B0287AD638EFE30ACB7BD2D673
+CT=67FD32AC2783C381E77AE0BB8ACEECCD
+PT=D8BEC715849E6A2A164F0139B8EC038E
+
+I=320
+KEY=62C542A5ACE4BC12F9AC0BF2C33ED5FD
+CT=D8BEC715849E6A2A164F0139B8EC038E
+PT=6ECA9375A207148E36203C8BD885A520
+
+I=321
+KEY=0C0FD1D00EE3A89CCF8C37791BBB70DD
+CT=6ECA9375A207148E36203C8BD885A520
+PT=A96877A8369B7086EF76D8281C066068
+
+I=322
+KEY=A567A6783878D81A20FAEF5107BD10B5
+CT=A96877A8369B7086EF76D8281C066068
+PT=2D6DDF2C136F5ACDC12D33D52ECD6397
+
+I=323
+KEY=880A79542B1782D7E1D7DC8429707322
+CT=2D6DDF2C136F5ACDC12D33D52ECD6397
+PT=E2F3EFF780EEDAD7B820CF57F946AB21
+
+I=324
+KEY=6AF996A3ABF9580059F713D3D036D803
+CT=E2F3EFF780EEDAD7B820CF57F946AB21
+PT=D083829AB624DC46BF55F15C2ACA2CDC
+
+I=325
+KEY=BA7A14391DDD8446E6A2E28FFAFCF4DF
+CT=D083829AB624DC46BF55F15C2ACA2CDC
+PT=637A1328711A701F011B0D66953A11FC
+
+I=326
+KEY=D90007116CC7F459E7B9EFE96FC6E523
+CT=637A1328711A701F011B0D66953A11FC
+PT=9230F9E8C4AA7D697641B4E800AECE8B
+
+I=327
+KEY=4B30FEF9A86D893091F85B016F682BA8
+CT=9230F9E8C4AA7D697641B4E800AECE8B
+PT=CABC2F3EBCB87AEF4550060FB6F95C7D
+
+I=328
+KEY=818CD1C714D5F3DFD4A85D0ED99177D5
+CT=CABC2F3EBCB87AEF4550060FB6F95C7D
+PT=25C93DA609BEDFD48D88B7E005EA9D4D
+
+I=329
+KEY=A445EC611D6B2C0B5920EAEEDC7BEA98
+CT=25C93DA609BEDFD48D88B7E005EA9D4D
+PT=E445C1B43DC6AA0D47C766675676CA29
+
+I=330
+KEY=40002DD520AD86061EE78C898A0D20B1
+CT=E445C1B43DC6AA0D47C766675676CA29
+PT=3F8A99E9D556F0CE0B0F3B4FE89A7C15
+
+I=331
+KEY=7F8AB43CF5FB76C815E8B7C662975CA4
+CT=3F8A99E9D556F0CE0B0F3B4FE89A7C15
+PT=BE04197CADBDBC917AB288D85C554D4A
+
+I=332
+KEY=C18EAD405846CA596F5A3F1E3EC211EE
+CT=BE04197CADBDBC917AB288D85C554D4A
+PT=2CF8FE59EED67AF15BD6C09C8DA37882
+
+I=333
+KEY=ED765319B690B0A8348CFF82B361696C
+CT=2CF8FE59EED67AF15BD6C09C8DA37882
+PT=FF8CBF98D0B15198ACDC53D7247511C5
+
+I=334
+KEY=12FAEC816621E1309850AC55971478A9
+CT=FF8CBF98D0B15198ACDC53D7247511C5
+PT=27794678855BAE2BDE7EB75487813E28
+
+I=335
+KEY=3583AAF9E37A4F1B462E1B0110954681
+CT=27794678855BAE2BDE7EB75487813E28
+PT=5681B2CECDE71663A864D0288607D86B
+
+I=336
+KEY=630218372E9D5978EE4ACB2996929EEA
+CT=5681B2CECDE71663A864D0288607D86B
+PT=8936EB6E65F2CD2B3AFD1310B5B2D6C8
+
+I=337
+KEY=EA34F3594B6F9453D4B7D83923204822
+CT=8936EB6E65F2CD2B3AFD1310B5B2D6C8
+PT=16045490148187B05CC46B80099A4530
+
+I=338
+KEY=FC30A7C95FEE13E38873B3B92ABA0D12
+CT=16045490148187B05CC46B80099A4530
+PT=FE909FFB1D490B028867288FE682EEE9
+
+I=339
+KEY=02A0383242A718E100149B36CC38E3FB
+CT=FE909FFB1D490B028867288FE682EEE9
+PT=7B3E5C0017089A7842866ABA6364FFEA
+
+I=340
+KEY=799E643255AF82994292F18CAF5C1C11
+CT=7B3E5C0017089A7842866ABA6364FFEA
+PT=CC263F129618975F204AE499F115C69B
+
+I=341
+KEY=B5B85B20C3B715C662D815155E49DA8A
+CT=CC263F129618975F204AE499F115C69B
+PT=997ACE7EABF6EBF9CC7BBCC2670CF1A0
+
+I=342
+KEY=2CC2955E6841FE3FAEA3A9D739452B2A
+CT=997ACE7EABF6EBF9CC7BBCC2670CF1A0
+PT=88D4A74B19278ED442068D0954DFA8B2
+
+I=343
+KEY=A4163215716670EBECA524DE6D9A8398
+CT=88D4A74B19278ED442068D0954DFA8B2
+PT=F1CC6407AB254178DEFEF983112D6AC5
+
+I=344
+KEY=55DA5612DA433193325BDD5D7CB7E95D
+CT=F1CC6407AB254178DEFEF983112D6AC5
+PT=689A0E429CDAF1BD1197C160BF962544
+
+I=345
+KEY=3D4058504699C02E23CC1C3DC321CC19
+CT=689A0E429CDAF1BD1197C160BF962544
+PT=54CF618196D978C0460CF8051DF5BE18
+
+I=346
+KEY=698F39D1D040B8EE65C0E438DED47201
+CT=54CF618196D978C0460CF8051DF5BE18
+PT=4AA0EF106F23B43C3DD371C66404C602
+
+I=347
+KEY=232FD6C1BF630CD2581395FEBAD0B403
+CT=4AA0EF106F23B43C3DD371C66404C602
+PT=A5185CAE1718143FC6CC329D9F233E17
+
+I=348
+KEY=86378A6FA87B18ED9EDFA76325F38A14
+CT=A5185CAE1718143FC6CC329D9F233E17
+PT=A2A7E8855D25A0C475961E9B7ED7BE35
+
+I=349
+KEY=249062EAF55EB829EB49B9F85B243421
+CT=A2A7E8855D25A0C475961E9B7ED7BE35
+PT=E0B7536B335FB98F197F762B3B97CECE
+
+I=350
+KEY=C4273181C60101A6F236CFD360B3FAEF
+CT=E0B7536B335FB98F197F762B3B97CECE
+PT=C45C38164083871528D8B3BA7423BFEA
+
+I=351
+KEY=007B0997868286B3DAEE7C6914904505
+CT=C45C38164083871528D8B3BA7423BFEA
+PT=017AEBDEF43CF9664C582356A4A0C374
+
+I=352
+KEY=0101E24972BE7FD596B65F3FB0308671
+CT=017AEBDEF43CF9664C582356A4A0C374
+PT=BBB48EA21B5EDCCF5346A7B4E6796BED
+
+I=353
+KEY=BAB56CEB69E0A31AC5F0F88B5649ED9C
+CT=BBB48EA21B5EDCCF5346A7B4E6796BED
+PT=3A53DFCB6067F9E98653136A44A4B537
+
+I=354
+KEY=80E6B32009875AF343A3EBE112ED58AB
+CT=3A53DFCB6067F9E98653136A44A4B537
+PT=951BA0E2272E46FC8CC3990E002EEFF0
+
+I=355
+KEY=15FD13C22EA91C0FCF6072EF12C3B75B
+CT=951BA0E2272E46FC8CC3990E002EEFF0
+PT=249202E40BC5892B9CEE96279E69432A
+
+I=356
+KEY=316F1126256C9524538EE4C88CAAF471
+CT=249202E40BC5892B9CEE96279E69432A
+PT=B90CE5BF126163B37F75032A88AFD615
+
+I=357
+KEY=8863F499370DF6972CFBE7E204052264
+CT=B90CE5BF126163B37F75032A88AFD615
+PT=E0BDD9E1FF493D82777BD7FB4035D309
+
+I=358
+KEY=68DE2D78C844CB155B8030194430F16D
+CT=E0BDD9E1FF493D82777BD7FB4035D309
+PT=0A3A5E377CDB2D1F6CB09E200494F578
+
+I=359
+KEY=62E4734FB49FE60A3730AE3940A40415
+CT=0A3A5E377CDB2D1F6CB09E200494F578
+PT=483DF6E2936389D1FC09921497AF8AE7
+
+I=360
+KEY=2AD985AD27FC6FDBCB393C2DD70B8EF2
+CT=483DF6E2936389D1FC09921497AF8AE7
+PT=7A90B7B1E493109323A54AD285090EC6
+
+I=361
+KEY=5049321CC36F7F48E89C76FF52028034
+CT=7A90B7B1E493109323A54AD285090EC6
+PT=B6471BF36A24B5B0CAC19BDD4C83DC50
+
+I=362
+KEY=E60E29EFA94BCAF8225DED221E815C64
+CT=B6471BF36A24B5B0CAC19BDD4C83DC50
+PT=EFBDC6ECADCE6AA5DBD302E7A0647700
+
+I=363
+KEY=09B3EF030485A05DF98EEFC5BEE52B64
+CT=EFBDC6ECADCE6AA5DBD302E7A0647700
+PT=783A89B88CC875F743B645BA1449CEE7
+
+I=364
+KEY=718966BB884DD5AABA38AA7FAAACE583
+CT=783A89B88CC875F743B645BA1449CEE7
+PT=EAD61D2577852D4EA276F3699EFB2BDC
+
+I=365
+KEY=9B5F7B9EFFC8F8E4184E59163457CE5F
+CT=EAD61D2577852D4EA276F3699EFB2BDC
+PT=9E804D8814AF4FC67BA931D1C72774C7
+
+I=366
+KEY=05DF3616EB67B72263E768C7F370BA98
+CT=9E804D8814AF4FC67BA931D1C72774C7
+PT=7C383CC27D8C2B117AC72088EB334FD9
+
+I=367
+KEY=79E70AD496EB9C331920484F1843F541
+CT=7C383CC27D8C2B117AC72088EB334FD9
+PT=9D4BE61ECECB2E60EC621A6320C0E844
+
+I=368
+KEY=E4ACECCA5820B253F542522C38831D05
+CT=9D4BE61ECECB2E60EC621A6320C0E844
+PT=227992ADFC526D9AA99BA629E7523198
+
+I=369
+KEY=C6D57E67A472DFC95CD9F405DFD12C9D
+CT=227992ADFC526D9AA99BA629E7523198
+PT=93A265FB7650BE75CBDD8732F65F09A5
+
+I=370
+KEY=55771B9CD22261BC97047337298E2538
+CT=93A265FB7650BE75CBDD8732F65F09A5
+PT=5AB3354B8D28F041C5A7FDAB828996BC
+
+I=371
+KEY=0FC42ED75F0A91FD52A38E9CAB07B384
+CT=5AB3354B8D28F041C5A7FDAB828996BC
+PT=BA5C6566701BD3791C2DA51CDC5AB6DD
+
+I=372
+KEY=B5984BB12F1142844E8E2B80775D0559
+CT=BA5C6566701BD3791C2DA51CDC5AB6DD
+PT=2C96CE0653EFB1113C6E822DD4AE6200
+
+I=373
+KEY=990E85B77CFEF39572E0A9ADA3F36759
+CT=2C96CE0653EFB1113C6E822DD4AE6200
+PT=1065F5519472C78BADAB79EC00BBCABA
+
+I=374
+KEY=896B70E6E88C341EDF4BD041A348ADE3
+CT=1065F5519472C78BADAB79EC00BBCABA
+PT=049AA7D4B4C1A59C1A16E3E5D8B46515
+
+I=375
+KEY=8DF1D7325C4D9182C55D33A47BFCC8F6
+CT=049AA7D4B4C1A59C1A16E3E5D8B46515
+PT=C8F1C4179DD8FCD6942D07AF7392F481
+
+I=376
+KEY=45001325C1956D545170340B086E3C77
+CT=C8F1C4179DD8FCD6942D07AF7392F481
+PT=9C9AE90AFE18822197EA47FE2F48813F
+
+I=377
+KEY=D99AFA2F3F8DEF75C69A73F52726BD48
+CT=9C9AE90AFE18822197EA47FE2F48813F
+PT=DFBABE8688391CC868CDE134DDFFE1F0
+
+I=378
+KEY=062044A9B7B4F3BDAE5792C1FAD95CB8
+CT=DFBABE8688391CC868CDE134DDFFE1F0
+PT=72BE585F98DA4DC03998B5820D5230A9
+
+I=379
+KEY=749E1CF62F6EBE7D97CF2743F78B6C11
+CT=72BE585F98DA4DC03998B5820D5230A9
+PT=BCF3D47B888599A27AD63D6EFD8FB86F
+
+I=380
+KEY=C86DC88DA7EB27DFED191A2D0A04D47E
+CT=BCF3D47B888599A27AD63D6EFD8FB86F
+PT=62F7A2AD05BB46CB81B9601129100455
+
+I=381
+KEY=AA9A6A20A25061146CA07A3C2314D02B
+CT=62F7A2AD05BB46CB81B9601129100455
+PT=FA4D3B82232D19BE14A57422012C7751
+
+I=382
+KEY=50D751A2817D78AA78050E1E2238A77A
+CT=FA4D3B82232D19BE14A57422012C7751
+PT=40953AAA3D6C1BBE375A1E275754C98C
+
+I=383
+KEY=10426B08BC1163144F5F1039756C6EF6
+CT=40953AAA3D6C1BBE375A1E275754C98C
+PT=CE9123C6A5A66AF788A8515721D646A0
+
+I=384
+KEY=DED348CE19B709E3C7F7416E54BA2856
+CT=CE9123C6A5A66AF788A8515721D646A0
+PT=E45F3483E343F5C3C0AC77E955369AB3
+
+I=385
+KEY=3A8C7C4DFAF4FC20075B3687018CB2E5
+CT=E45F3483E343F5C3C0AC77E955369AB3
+PT=6E7CE5F4BE070EC870691CDD494A767E
+
+I=386
+KEY=54F099B944F3F2E877322A5A48C6C49B
+CT=6E7CE5F4BE070EC870691CDD494A767E
+PT=2BB1EE551920A632E90EB9E462280365
+
+I=387
+KEY=7F4177EC5DD354DA9E3C93BE2AEEC7FE
+CT=2BB1EE551920A632E90EB9E462280365
+PT=692E0FA8B1C39CB96A11E21EA1B3365E
+
+I=388
+KEY=166F7844EC10C863F42D71A08B5DF1A0
+CT=692E0FA8B1C39CB96A11E21EA1B3365E
+PT=345C0DE98A9F472B6BCBE241BB346590
+
+I=389
+KEY=223375AD668F8F489FE693E130699430
+CT=345C0DE98A9F472B6BCBE241BB346590
+PT=D9D9313DC80FB90608614ECCC962207F
+
+I=390
+KEY=FBEA4490AE80364E9787DD2DF90BB44F
+CT=D9D9313DC80FB90608614ECCC962207F
+PT=7AEE31C488D1DD54B9AD8EE3AEFE546C
+
+I=391
+KEY=810475542651EB1A2E2A53CE57F5E023
+CT=7AEE31C488D1DD54B9AD8EE3AEFE546C
+PT=9CF27E1202080D9F3A9B5E02290204EA
+
+I=392
+KEY=1DF60B462459E68514B10DCC7EF7E4C9
+CT=9CF27E1202080D9F3A9B5E02290204EA
+PT=670085C6D3B95C6017DB9163B9D2D565
+
+I=393
+KEY=7AF68E80F7E0BAE5036A9CAFC72531AC
+CT=670085C6D3B95C6017DB9163B9D2D565
+PT=2A36E88DF74BA4B24283FEE52DDE5AA4
+
+I=394
+KEY=50C0660D00AB1E5741E9624AEAFB6B08
+CT=2A36E88DF74BA4B24283FEE52DDE5AA4
+PT=81B75B31F130467F4A1FA6CA4A329E5E
+
+I=395
+KEY=D1773D3CF19B58280BF6C480A0C9F556
+CT=81B75B31F130467F4A1FA6CA4A329E5E
+PT=D0A0347102BD11F9E2BD8E8A72D53ADC
+
+I=396
+KEY=01D7094DF32649D1E94B4A0AD21CCF8A
+CT=D0A0347102BD11F9E2BD8E8A72D53ADC
+PT=97F0187509608DF1D9B27AB5D005E505
+
+I=397
+KEY=96271138FA46C42030F930BF02192A8F
+CT=97F0187509608DF1D9B27AB5D005E505
+PT=E60139E36ECD7B24C7C98772C92A1E87
+
+I=398
+KEY=702628DB948BBF04F730B7CDCB333408
+CT=E60139E36ECD7B24C7C98772C92A1E87
+PT=7E92E19E07A469E7D49D3D07EF719157
+
+I=399
+KEY=0EB4C945932FD6E323AD8ACA2442A55F
+CT=7E92E19E07A469E7D49D3D07EF719157
+PT=F5BF8B37136F2E1F6BEC6F572021E3BA
+
+==========
+
+KEYSIZE=192
+
+I=0
+KEY=000000000000000000000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=48E31E9E256718F29229319C19F15BA4
+
+I=1
+KEY=9643D8334A63DF4D48E31E9E256718F29229319C19F15BA4
+CT=48E31E9E256718F29229319C19F15BA4
+PT=CC01684BE9B29ED01EA7923E7D2380AA
+
+I=2
+KEY=EF334C87288C43DE84E276D5CCD586228C8EA3A264D2DB0E
+CT=CC01684BE9B29ED01EA7923E7D2380AA
+PT=8726B4E66D6B8FBAA22D42981A5A40CC
+
+I=3
+KEY=0891A045BB044B9D03C4C233A1BE09982EA3E13A7E889BC2
+CT=8726B4E66D6B8FBAA22D42981A5A40CC
+PT=83B9A21A0710FDB9C603797613772ED6
+
+I=4
+KEY=A5233519DE914717807D6029A6AEF421E8A0984C6DFFB514
+CT=83B9A21A0710FDB9C603797613772ED6
+PT=F15479A2B2C250F7E5C11D333D867CBD
+
+I=5
+KEY=A1CB19726DB4C2C77129198B146CA4D60D61857F5079C9A9
+CT=F15479A2B2C250F7E5C11D333D867CBD
+PT=C1AF401BD4E62D8BA15BEC3690F2FB25
+
+I=6
+KEY=04B03C15DB8324B3B0865990C08A895DAC3A6949C08B328C
+CT=C1AF401BD4E62D8BA15BEC3690F2FB25
+PT=01E01E3B10470286035EBD7502EF11A0
+
+I=7
+KEY=A1CB0164AB1E88EDB16647ABD0CD8BDBAF64D43CC264232C
+CT=01E01E3B10470286035EBD7502EF11A0
+PT=A681127825B718411291106AB416779A
+
+I=8
+KEY=27BFD9CB824C525617E755D3F57A939ABDF5C456767254B6
+CT=A681127825B718411291106AB416779A
+PT=5C2EBA728589A9CAA15E28E7D8E59AA0
+
+I=9
+KEY=B308E0DCE108194C4BC9EFA170F33A501CABECB1AE97CE16
+CT=5C2EBA728589A9CAA15E28E7D8E59AA0
+PT=E738305279BE636648B6D5FFA3E97E4A
+
+I=10
+KEY=FE787701EE66664BACF1DFF3094D5936541D394E0D7EB05C
+CT=E738305279BE636648B6D5FFA3E97E4A
+PT=5AF7D4C9439C7412FD7236E7685659DF
+
+I=11
+KEY=DD93D742AFA0B19CF6060B3A4AD12D24A96F0FA96528E983
+CT=5AF7D4C9439C7412FD7236E7685659DF
+PT=30D0681D4060E24D1427D1AAC498DB1B
+
+I=12
+KEY=D5D19C2FEA9DC94BC6D663270AB1CF69BD48DE03A1B03298
+CT=30D0681D4060E24D1427D1AAC498DB1B
+PT=FC9B6752064B1CCE75EBFBE91AF8F2CD
+
+I=13
+KEY=EB0954ECE44620833A4D04750CFAD3A7C8A325EABB48C055
+CT=FC9B6752064B1CCE75EBFBE91AF8F2CD
+PT=61E6AE6E035BCC3C94EF00101216904A
+
+I=14
+KEY=E6E5AB38545B6DF75BABAA1B0FA11F9B5C4C25FAA95E501F
+CT=61E6AE6E035BCC3C94EF00101216904A
+PT=BF738A4E55F036126CC9B56DED530B8C
+
+I=15
+KEY=E8C670F71E5B62B6E4D820555A51298930859097440D5B93
+CT=BF738A4E55F036126CC9B56DED530B8C
+PT=6B9CD4C227FC30C14FD881B838D9F8F5
+
+I=16
+KEY=23FF647DD75770418F44F4977DAD19487F5D112F7CD4A366
+CT=6B9CD4C227FC30C14FD881B838D9F8F5
+PT=6173EF2B5C9B569A1BD4B62C7C913844
+
+I=17
+KEY=DB94124B11CC03D9EE371BBC21364FD26489A70300459B22
+CT=6173EF2B5C9B569A1BD4B62C7C913844
+PT=709EF90F853E55123A917FB258E900F9
+
+I=18
+KEY=4821CA96B50ACA049EA9E2B3A4081AC05E18D8B158AC9BDB
+CT=709EF90F853E55123A917FB258E900F9
+PT=5D73D99E47B1DB28E0ED9B9D1C212CFA
+
+I=19
+KEY=FA47C5BF5E688F8BC3DA3B2DE3B9C1E8BEF5432C448DB721
+CT=5D73D99E47B1DB28E0ED9B9D1C212CFA
+PT=32016FFCB2AA5EA6EA0C808F60613CA2
+
+I=20
+KEY=C66A73E0D1261C2CF1DB54D151139F4E54F9C3A324EC8B83
+CT=32016FFCB2AA5EA6EA0C808F60613CA2
+PT=CAA3704F7FD76EBACB1D2A266A0899FF
+
+I=21
+KEY=FAE8E04094E572A33B78249E2EC4F1F49FE4E9854EE4127C
+CT=CAA3704F7FD76EBACB1D2A266A0899FF
+PT=E32DBD027A1A36B2EC8D0A98C9293E7E
+
+I=22
+KEY=8F2FBF9E40182950D855999C54DEC7467369E31D87CD2C02
+CT=E32DBD027A1A36B2EC8D0A98C9293E7E
+PT=1C117311882C0D5159A9DFD5C3C68D95
+
+I=23
+KEY=F6FB8F6DFAA034BFC444EA8DDCF2CA172AC03CC8440BA197
+CT=1C117311882C0D5159A9DFD5C3C68D95
+PT=5E379C2471DB04582CD861E6F8A419D7
+
+I=24
+KEY=699DCA67F4EF50C49A7376A9AD29CE4F06185D2EBCAFB840
+CT=5E379C2471DB04582CD861E6F8A419D7
+PT=5932A84C6ACBD8452EE9AC47CE4B6BD8
+
+I=25
+KEY=F568B4F126486CE4C341DEE5C7E2160A28F1F16972E4D398
+CT=5932A84C6ACBD8452EE9AC47CE4B6BD8
+PT=00634EED1D18C84AE0A8198CF791DE81
+
+I=26
+KEY=C49E5E8D366B6FE7C3229008DAFADE40C859E8E585750D19
+CT=00634EED1D18C84AE0A8198CF791DE81
+PT=E10C93B1C466FFF0B6EB6DB50AF271EC
+
+I=27
+KEY=22B07DB9ED443A9D222E03B91E9C21B07EB285508F877CF5
+CT=E10C93B1C466FFF0B6EB6DB50AF271EC
+PT=58A0C680F565E63A7E41C6EAC50A3B01
+
+I=28
+KEY=2BDF4CCE2B4CAFDD7A8EC539EBF9C78A00F343BA4A8D47F4
+CT=58A0C680F565E63A7E41C6EAC50A3B01
+PT=92921B2AA7FC6367199A4C42FAE0E2A4
+
+I=29
+KEY=E2BE29F6905D41C5E81CDE134C05A4ED19690FF8B06DA550
+CT=92921B2AA7FC6367199A4C42FAE0E2A4
+PT=B6EC2A692D2657E5506F2C3BA1912799
+
+I=30
+KEY=E43634FD3DB719C75EF0F47A6123F308490623C311FC82C9
+CT=B6EC2A692D2657E5506F2C3BA1912799
+PT=23ECD0813B1A7090CF9BE874D6B0846C
+
+I=31
+KEY=ACA2F21EF46E30B57D1C24FB5A398398869DCBB7C74C06A5
+CT=23ECD0813B1A7090CF9BE874D6B0846C
+PT=04BD52F4C1AB8DF4816A6E11F8B54452
+
+I=32
+KEY=0130B37AFE24D66079A1760F9B920E6C07F7A5A63FF942F7
+CT=04BD52F4C1AB8DF4816A6E11F8B54452
+PT=DFA0074DEFEDB44D0D96AD6020D1A37D
+
+I=33
+KEY=00AC6BF5E3AD20FFA6017142747FBA210A6108C61F28E18A
+CT=DFA0074DEFEDB44D0D96AD6020D1A37D
+PT=5AB15057E05F73FAAF12C0EC26D3F02F
+
+I=34
+KEY=E3A70EBF3D9167AAFCB021159420C9DBA573C82A39FB11A5
+CT=5AB15057E05F73FAAF12C0EC26D3F02F
+PT=6ECC2F23AB7854E97F215C52EF1E62E0
+
+I=35
+KEY=CBCD9116DC78FA64927C0E363F589D32DA529478D6E57345
+CT=6ECC2F23AB7854E97F215C52EF1E62E0
+PT=930B3EBDE0989049056022E83FC9EF1E
+
+I=36
+KEY=FBB5E5462DE715180177308BDFC00D7BDF32B690E92C9C5B
+CT=930B3EBDE0989049056022E83FC9EF1E
+PT=1EE4ABB9ACD70B93A83BCD8751F858DE
+
+I=37
+KEY=E5D2B1ACD8BE6DF21F939B32731706E877097B17B8D4C485
+CT=1EE4ABB9ACD70B93A83BCD8751F858DE
+PT=FCAC610EA0D309C6D36EED5A4BC04036
+
+I=38
+KEY=54DD0B6CB083BDE8E33FFA3CD3C40F2EA467964DF31484B3
+CT=FCAC610EA0D309C6D36EED5A4BC04036
+PT=161D5EE8F50A3F69A11ADFEAF1A2A2AA
+
+I=39
+KEY=28309F7EB99AAEE1F522A4D426CE3047057D49A702B62619
+CT=161D5EE8F50A3F69A11ADFEAF1A2A2AA
+PT=D9D365B061D2F3BF9DF94181837621B4
+
+I=40
+KEY=E55ECDDFAE95A2C92CF1C164471CC3F89884082681C007AD
+CT=D9D365B061D2F3BF9DF94181837621B4
+PT=938647A6AAD455D89A6DFEFE60D62331
+
+I=41
+KEY=C9CEE1C9D89DF76ABF7786C2EDC8962002E9F6D8E116249C
+CT=938647A6AAD455D89A6DFEFE60D62331
+PT=06A002DDC7DC4F22F9B1D5734C312AAA
+
+I=42
+KEY=B26709109B66C916B9D7841F2A14D902FB5823ABAD270E36
+CT=06A002DDC7DC4F22F9B1D5734C312AAA
+PT=BB45E9BE2237E3288F56EDD0D9AD6734
+
+I=43
+KEY=2FAD2FF32E10680502926DA108233A2A740ECE7B748A6902
+CT=BB45E9BE2237E3288F56EDD0D9AD6734
+PT=CF5A1338F5FA7ED4C77F6EA3836F079A
+
+I=44
+KEY=63D3D62540C790D1CDC87E99FDD944FEB371A0D8F7E56E98
+CT=CF5A1338F5FA7ED4C77F6EA3836F079A
+PT=32F2D628117ADB46383FC101B58E95A6
+
+I=45
+KEY=0DF38CE71CF26A19FF3AA8B1ECA39FB88B4E61D9426BFB3E
+CT=32F2D628117ADB46383FC101B58E95A6
+PT=3A3CCEA99D43887AC64498AB4EFC87DD
+
+I=46
+KEY=7EEEB78A0C9BAA9FC506661871E017C24D0AF9720C977CE3
+CT=3A3CCEA99D43887AC64498AB4EFC87DD
+PT=787DC1C632C4AA77D42324338C510146
+
+I=47
+KEY=4DF02EE427AE29A1BD7BA7DE4324BDB59929DD4180C67DA5
+CT=787DC1C632C4AA77D42324338C510146
+PT=BB0635A471D26B80E5E387E4F14A1626
+
+I=48
+KEY=D6983F5E8BE728D9067D927A32F6D6357CCA5AA5718C6B83
+CT=BB0635A471D26B80E5E387E4F14A1626
+PT=14A9AA3EE6343C2D57E0F2ED7A05DC0D
+
+I=49
+KEY=BD84A7CD471613B512D43844D4C2EA182B2AA8480B89B78E
+CT=14A9AA3EE6343C2D57E0F2ED7A05DC0D
+PT=25E254AD6C33908BC07B3DEC4052F549
+
+I=50
+KEY=E54A2146242AADFB37366CE9B8F17A93EB5195A44BDB42C7
+CT=25E254AD6C33908BC07B3DEC4052F549
+PT=10E09F426E6F33CD21DF1EB748A46088
+
+I=51
+KEY=0517B745BCE24E0527D6F3ABD69E495ECA8E8B13037F224F
+CT=10E09F426E6F33CD21DF1EB748A46088
+PT=B65D2FFE83F9469AA2B1ABC559EAAB87
+
+I=52
+KEY=8297790C75E8931C918BDC5555670FC4683F20D65A9589C8
+CT=B65D2FFE83F9469AA2B1ABC559EAAB87
+PT=E743F6441CCF9703FF4B8E3F4921ACDF
+
+I=53
+KEY=7EC47C0C5663CD4C76C82A1149A898C79774AEE913B42517
+CT=E743F6441CCF9703FF4B8E3F4921ACDF
+PT=BECC5CF2F2C62A9E7D3CF979A9E96F94
+
+I=54
+KEY=FBB1F10529FABEB3C80476E3BB6EB259EA485790BA5D4A83
+CT=BECC5CF2F2C62A9E7D3CF979A9E96F94
+PT=3718199958EAA473B980B95F9C76E03F
+
+I=55
+KEY=EE4113D30720269DFF1C6F7AE384162A53C8EECF262BAABC
+CT=3718199958EAA473B980B95F9C76E03F
+PT=D15525B8BBB6D209E0BB3B6F5ACB2556
+
+I=56
+KEY=488286944DC6B0842E494AC25832C423B373D5A07CE08FEA
+CT=D15525B8BBB6D209E0BB3B6F5ACB2556
+PT=0270AF07DDA52DF7CA7B0EE7DF098A80
+
+I=57
+KEY=A32A880A84E7EDB82C39E5C58597E9D47908DB47A3E9056A
+CT=0270AF07DDA52DF7CA7B0EE7DF098A80
+PT=2D380F99A182CD14CFFEF5E88B93B416
+
+I=58
+KEY=DBD0FD5053BC52C60101EA5C241524C0B6F62EAF287AB17C
+CT=2D380F99A182CD14CFFEF5E88B93B416
+PT=47FE8C67DCBC616E4C984D323EA4A45B
+
+I=59
+KEY=D79F78A4726F5FCA46FF663BF8A945AEFA6E639D16DE1527
+CT=47FE8C67DCBC616E4C984D323EA4A45B
+PT=FA595C69C3286771FB8C921DFBBFFC2E
+
+I=60
+KEY=0C88AAD46F951FB6BCA63A523B8122DF01E2F180ED61E909
+CT=FA595C69C3286771FB8C921DFBBFFC2E
+PT=8FA64C511FCE6FC987B327D12EBDADAD
+
+I=61
+KEY=762EEA21D382067E33007603244F4D168651D651C3DC44A4
+CT=8FA64C511FCE6FC987B327D12EBDADAD
+PT=8F52C709508408B40C241FD38E515E76
+
+I=62
+KEY=EA05788C20FB364EBC52B10A74CB45A28A75C9824D8D1AD2
+CT=8F52C709508408B40C241FD38E515E76
+PT=7CFD332B306684AC92279CE06F1287D8
+
+I=63
+KEY=D4B2582B094D874DC0AF822144ADC10E18525562229F9D0A
+CT=7CFD332B306684AC92279CE06F1287D8
+PT=0DA14F6619665E0128044355481BD658
+
+I=64
+KEY=C080E7033FDF1BCFCD0ECD475DCB9F0F305616376A844B52
+CT=0DA14F6619665E0128044355481BD658
+PT=FEDEBE73AA4047AF27E86A8B9E8E2ED7
+
+I=65
+KEY=C5BA9667999CF2D633D07334F78BD8A017BE7CBCF40A6585
+CT=FEDEBE73AA4047AF27E86A8B9E8E2ED7
+PT=12CD6896129E376AAB9C0E980F3B7CD2
+
+I=66
+KEY=65FF092A539C4600211D1BA2E515EFCABC227224FB311957
+CT=12CD6896129E376AAB9C0E980F3B7CD2
+PT=04E7939B352F7B5C38B7EC5784EC78C2
+
+I=67
+KEY=F98E7062F9EBE61C25FA8839D03A949684959E737FDD6195
+CT=04E7939B352F7B5C38B7EC5784EC78C2
+PT=0184996278A57E36E608E95616C46964
+
+I=68
+KEY=306FBEFB3BF4E241247E115BA89FEAA0629D7725691908F1
+CT=0184996278A57E36E608E95616C46964
+PT=92179E392E05C8B96A0CFAC36109B09E
+
+I=69
+KEY=EE641F5DB58F9057B6698F62869A221908918DE60810B86F
+CT=92179E392E05C8B96A0CFAC36109B09E
+PT=7F197B01172C809635198E6B156D13BC
+
+I=70
+KEY=EADB8B255F98FD9DC970F46391B6A28F3D88038D1D7DABD3
+CT=7F197B01172C809635198E6B156D13BC
+PT=46F6DD79AD079DCFBC451B24ECDDA4FA
+
+I=71
+KEY=47225D75FE68FFA08F86291A3CB13F4081CD18A9F1A00F29
+CT=46F6DD79AD079DCFBC451B24ECDDA4FA
+PT=B5DAA09E3545F92FF44176187A1F9179
+
+I=72
+KEY=7CDECC21E72E54F43A5C898409F4C66F758C6EB18BBF9E50
+CT=B5DAA09E3545F92FF44176187A1F9179
+PT=F51A35F3DD410132EEC9E9F22A6F6FAB
+
+I=73
+KEY=75D1AAFDBFE72C94CF46BC77D4B5C75D9B458743A1D0F1FB
+CT=F51A35F3DD410132EEC9E9F22A6F6FAB
+PT=D1CC6D95B58793C342CF14AF250D5E40
+
+I=74
+KEY=41874C54BD58757A1E8AD1E26132549ED98A93EC84DDAFBB
+CT=D1CC6D95B58793C342CF14AF250D5E40
+PT=A1FAB3B352A887A829357528FED4B80E
+
+I=75
+KEY=1D94704F4A51A5CABF706251339AD336F0BFE6C47A0917B5
+CT=A1FAB3B352A887A829357528FED4B80E
+PT=CBC6473B3AA4DE2D64EED554CA241EAC
+
+I=76
+KEY=A41B52E0AE7E568074B6256A093E0D1B94513390B02D0919
+CT=CBC6473B3AA4DE2D64EED554CA241EAC
+PT=19DC6E89D71DCE5DCECD1A6F85C3FBD6
+
+I=77
+KEY=85F21BCD70691F596D6A4BE3DE23C3465A9C29FF35EEF2CF
+CT=19DC6E89D71DCE5DCECD1A6F85C3FBD6
+PT=EC6974E51B21F26A100E66183C68FD15
+
+I=78
+KEY=CAD0B254A88B669681033F06C502312C4A924FE709860FDA
+CT=EC6974E51B21F26A100E66183C68FD15
+PT=A16B6F78009B6E30CB758E87AD4D8034
+
+I=79
+KEY=8AC49B19582BFCF32068507EC5995F1C81E7C160A4CB8FEE
+CT=A16B6F78009B6E30CB758E87AD4D8034
+PT=CB5C20AAFA898193BC34FF3EE460B313
+
+I=80
+KEY=988F8D4F3A66AC99EB3470D43F10DE8F3DD33E5E40AB3CFD
+CT=CB5C20AAFA898193BC34FF3EE460B313
+PT=397F92C8E69E0916E30DC6889779799E
+
+I=81
+KEY=DE2D26C6130E006ED24BE21CD98ED799DEDEF8D6D7D24563
+CT=397F92C8E69E0916E30DC6889779799E
+PT=9A9CBD9380E2187855CAE5A73D58480F
+
+I=82
+KEY=BF6BE6D55C04977348D75F8F596CCFE18B141D71EA8A0D6C
+CT=9A9CBD9380E2187855CAE5A73D58480F
+PT=B67B360EE0FF297D3662F5B7CDB82CB9
+
+I=83
+KEY=6582BCA895FA1221FEAC6981B993E69CBD76E8C6273221D5
+CT=B67B360EE0FF297D3662F5B7CDB82CB9
+PT=2D146ED9236082D2D71810969A1AB1FB
+
+I=84
+KEY=6AC68BB8BBC7F520D3B807589AF3644E6A6EF850BD28902E
+CT=2D146ED9236082D2D71810969A1AB1FB
+PT=4B9F55652C40B6DA963A98D875ADACE4
+
+I=85
+KEY=180DAB1B14A92DB29827523DB6B3D294FC546088C8853CCA
+CT=4B9F55652C40B6DA963A98D875ADACE4
+PT=FC0A8A3D511F5FAFF0A3DD13B49E5A13
+
+I=86
+KEY=7ABD7440D5EE5FE2642DD800E7AC8D3B0CF7BD9B7C1B66D9
+CT=FC0A8A3D511F5FAFF0A3DD13B49E5A13
+PT=4231C02AD3231C3EB7AEB9135B95AC4B
+
+I=87
+KEY=54ACAE182B5FDACF261C182A348F9105BB590488278ECA92
+CT=4231C02AD3231C3EB7AEB9135B95AC4B
+PT=4C3A949ACCCBB55F9415C81B1413FD9D
+
+I=88
+KEY=015706F99E81CC026A268CB0F844245A2F4CCC93339D370F
+CT=4C3A949ACCCBB55F9415C81B1413FD9D
+PT=E9B1CEAF77B64A88CC3E020B16E1BF7E
+
+I=89
+KEY=929BD0A1CC6450E78397421F8FF26ED2E372CE98257C8871
+CT=E9B1CEAF77B64A88CC3E020B16E1BF7E
+PT=98FFEA0827068CB0B508CA520D8B43F7
+
+I=90
+KEY=9B81EC47D8442D311B68A817A8F4E262567A04CA28F7CB86
+CT=98FFEA0827068CB0B508CA520D8B43F7
+PT=BEDA572C3CA3FEF97F7071DA35414EA1
+
+I=91
+KEY=93B211B869CBECCBA5B2FF3B94571C9B290A75101DB68527
+CT=BEDA572C3CA3FEF97F7071DA35414EA1
+PT=35E8CB8302748C8623A09980909FB516
+
+I=92
+KEY=BC5320E4025EB960905A34B89623901D0AAAEC908D293031
+CT=35E8CB8302748C8623A09980909FB516
+PT=E136148B2FA5AF5CD3F8BC3883566CB8
+
+I=93
+KEY=C4EC937F948D0B5A716C2033B9863F41D95250A80E7F5C89
+CT=E136148B2FA5AF5CD3F8BC3883566CB8
+PT=B7CE40E3E3D30191CDF4AB5BE98F347A
+
+I=94
+KEY=6D381856C149D9DCC6A260D05A553ED014A6FBF3E7F068F3
+CT=B7CE40E3E3D30191CDF4AB5BE98F347A
+PT=A821E934DAAE37FF3136E769DAC315FB
+
+I=95
+KEY=A3679C5957C656DE6E8389E480FB092F25901C9A3D337D08
+CT=A821E934DAAE37FF3136E769DAC315FB
+PT=4227B96A0CC6CA1C21BCF8B1ADB3BDE1
+
+I=96
+KEY=BE7112453B1DF3EC2CA4308E8C3DC333042CE42B9080C0E9
+CT=4227B96A0CC6CA1C21BCF8B1ADB3BDE1
+PT=EE36BBFDDF19165F9E64AE79B4CF06A9
+
+I=97
+KEY=AEA4A2D5CD0A2FC7C2928B735324D56C9A484A52244FC640
+CT=EE36BBFDDF19165F9E64AE79B4CF06A9
+PT=C3DFE088C6767BC939F492C1FA9604CD
+
+I=98
+KEY=A16FC5F22F03984F014D6BFB9552AEA5A3BCD893DED9C28D
+CT=C3DFE088C6767BC939F492C1FA9604CD
+PT=DB1202E468119D977868F6E294E3CC3A
+
+I=99
+KEY=A4E0565DD419BDD1DA5F691FFD433332DBD42E714A3A0EB7
+CT=DB1202E468119D977868F6E294E3CC3A
+PT=6F2F682BA4F95EB8C5B883C7660B2653
+
+I=100
+KEY=3CAEE44D0E85058EB570013459BA6D8A1E6CADB62C3128E4
+CT=6F2F682BA4F95EB8C5B883C7660B2653
+PT=1036B4AA6C897D36DFE6658A953E5075
+
+I=101
+KEY=4E883A500CA89963A546B59E353310BCC18AC83CB90F7891
+CT=1036B4AA6C897D36DFE6658A953E5075
+PT=04FCB3A81E5319A16CCF212719906229
+
+I=102
+KEY=ADED5A405C5C095AA1BA06362B60091DAD45E91BA09F1AB8
+CT=04FCB3A81E5319A16CCF212719906229
+PT=CD79BAC069BB58605D43005B927816E5
+
+I=103
+KEY=5499B441405D16B06CC3BCF642DB517DF006E94032E70C5D
+CT=CD79BAC069BB58605D43005B927816E5
+PT=DB5B3C625D1F66CF28A86CC100472398
+
+I=104
+KEY=D31221246382CA8EB79880941FC437B2D8AE858132A02FC5
+CT=DB5B3C625D1F66CF28A86CC100472398
+PT=D8732A2C16EC6AE202371AF03A6F91E8
+
+I=105
+KEY=CDF928E97051F08B6FEBAAB809285D50DA999F7108CFBE2D
+CT=D8732A2C16EC6AE202371AF03A6F91E8
+PT=F0A1A353A8AB9A893F621F0BEA3B4F01
+
+I=106
+KEY=10CC2EED0ECBD1E69F4A09EBA183C7D9E5FB807AE2F4F12C
+CT=F0A1A353A8AB9A893F621F0BEA3B4F01
+PT=27E4451BD15E43F301E138713DC12E78
+
+I=107
+KEY=03C4F5E1FD3D34D1B8AE4CF070DD842AE41AB80BDF35DF54
+CT=27E4451BD15E43F301E138713DC12E78
+PT=C7FA931DA414CB37A9BDB6F128E082EE
+
+I=108
+KEY=CC5D7D36D085E3257F54DFEDD4C94F1D4DA70EFAF7D55DBA
+CT=C7FA931DA414CB37A9BDB6F128E082EE
+PT=A6777D51A0A1C94DD74A18795341015F
+
+I=109
+KEY=9F4EE4750FF3F53AD923A2BC746886509AED1683A4945CE5
+CT=A6777D51A0A1C94DD74A18795341015F
+PT=32A4D930A5597E02D7076E399D18D895
+
+I=110
+KEY=8525417BB6D8095BEB877B8CD131F8524DEA78BA398C8470
+CT=32A4D930A5597E02D7076E399D18D895
+PT=1B78FCF274EEB1E597998EE4EFFF9F8B
+
+I=111
+KEY=54EFA98071F1EF62F0FF877EA5DF49B7DA73F65ED6731BFB
+CT=1B78FCF274EEB1E597998EE4EFFF9F8B
+PT=2997FEE2823CC84DA14E8439449F5C7C
+
+I=112
+KEY=2505931CE4D41D16D968799C27E381FA7B3D726792EC4787
+CT=2997FEE2823CC84DA14E8439449F5C7C
+PT=810534A9E8DB2808FEE681B13C04411D
+
+I=113
+KEY=C2DF863BEB4F27AB586D4D35CF38A9F285DBF3D6AEE8069A
+CT=810534A9E8DB2808FEE681B13C04411D
+PT=BE2380994365F1D7FC8278E86C8B497D
+
+I=114
+KEY=036C0C95D0C26B66E64ECDAC8C5D582579598B3EC2634FE7
+CT=BE2380994365F1D7FC8278E86C8B497D
+PT=EFEC3977D5A21DC4AC786E786CA3ECE9
+
+I=115
+KEY=BD05AD63A0A9F1B509A2F4DB59FF45E1D521E546AEC0A30E
+CT=EFEC3977D5A21DC4AC786E786CA3ECE9
+PT=22A7280D8231895EA4F0B6A39AC583C3
+
+I=116
+KEY=A16DFA00981597B42B05DCD6DBCECCBF71D153E5340520CD
+CT=22A7280D8231895EA4F0B6A39AC583C3
+PT=0CC61E91B3CBCD0E190D52059E27647A
+
+I=117
+KEY=ABC1AD453235832727C3C247680501B168DC01E0AA2244B7
+CT=0CC61E91B3CBCD0E190D52059E27647A
+PT=5CE91F77F7C8F0AB1BBA802D2FFF0E9B
+
+I=118
+KEY=64D40ACA0F526EC67B2ADD309FCDF11A736681CD85DD4A2C
+CT=5CE91F77F7C8F0AB1BBA802D2FFF0E9B
+PT=255459BE5A27E08942A049F6EC44582E
+
+I=119
+KEY=8BB5C7D8B2B177855E7E848EC5EA119331C6C83B69991202
+CT=255459BE5A27E08942A049F6EC44582E
+PT=28E2E20115C3665D9D88CB74681301EA
+
+I=120
+KEY=4E30FCC4C182F471769C668FD02977CEAC4E034F018A13E8
+CT=28E2E20115C3665D9D88CB74681301EA
+PT=2E96E6BBCD999F4B1507C7EC9E4B8430
+
+I=121
+KEY=906B361E9D72E107580A80341DB0E885B949C4A39FC197D8
+CT=2E96E6BBCD999F4B1507C7EC9E4B8430
+PT=03DED0A95164E5FA215E9C49C433E95B
+
+I=122
+KEY=F656F5D9D973C02C5BD4509D4CD40D7F981758EA5BF27E83
+CT=03DED0A95164E5FA215E9C49C433E95B
+PT=AD9C16D2567B73FCA4866FE16CF09CDA
+
+I=123
+KEY=8811A4ACDF37A140F648464F1AAF7E833C91370B3702E259
+CT=AD9C16D2567B73FCA4866FE16CF09CDA
+PT=68539BFF0F8CC23A0A3267796A11B75C
+
+I=124
+KEY=E5AF2E8CDBAD01589E1BDDB01523BCB936A350725D135505
+CT=68539BFF0F8CC23A0A3267796A11B75C
+PT=B15F623E5A7D73452A419EB04AFCF72E
+
+I=125
+KEY=C9E743CAD731A62E2F44BF8E4F5ECFFC1CE2CEC217EFA22B
+CT=B15F623E5A7D73452A419EB04AFCF72E
+PT=520142AFDA69E9CFA98D8DD59CCB12BC
+
+I=126
+KEY=6CF6C656FFBB77807D45FD2195372633B56F43178B24B097
+CT=520142AFDA69E9CFA98D8DD59CCB12BC
+PT=7EC2A8430F23A5E183E0032DAB5232C5
+
+I=127
+KEY=772CEE9F934D57D4038755629A1483D2368F403A20768252
+CT=7EC2A8430F23A5E183E0032DAB5232C5
+PT=E5E3A5D968B1FF774B55CCA06BE3BD65
+
+I=128
+KEY=9A4DAB93F3C74EBBE664F0BBF2A57CA57DDA8C9A4B953F37
+CT=E5E3A5D968B1FF774B55CCA06BE3BD65
+PT=9608643D0A34DA28372A7E7E34427E1B
+
+I=129
+KEY=EF0F60BCBA3374E0706C9486F891A68D4AF0F2E47FD7412C
+CT=9608643D0A34DA28372A7E7E34427E1B
+PT=B22BD410584F29610801B18EDAB1BD19
+
+I=130
+KEY=DE013A6C3440AFF3C2474096A0DE8FEC42F1436AA566FC35
+CT=B22BD410584F29610801B18EDAB1BD19
+PT=ADEC4519F1A7AD74BCCECABEDCF20D73
+
+I=131
+KEY=2B5B547A934A5A376FAB058F51792298FE3F89D47994F146
+CT=ADEC4519F1A7AD74BCCECABEDCF20D73
+PT=E04D4FF54191BEEEF5B295A32DA2ADE5
+
+I=132
+KEY=BF356F2FFC2C538F8FE64A7A10E89C760B8D1C7754365CA3
+CT=E04D4FF54191BEEEF5B295A32DA2ADE5
+PT=3F9531EDD5072F7A9F2A62ECC2CCE50A
+
+I=133
+KEY=7CEBD7310CC4791AB0737B97C5EFB30C94A77E9B96FAB9A9
+CT=3F9531EDD5072F7A9F2A62ECC2CCE50A
+PT=C3DC95781FAE7BB6C02BD08B3617DDF1
+
+I=134
+KEY=192741D2AB9C887673AFEEEFDA41C8BA548CAE10A0ED6458
+CT=C3DC95781FAE7BB6C02BD08B3617DDF1
+PT=F69B837F168B9A9E637E7357B65F2B60
+
+I=135
+KEY=38552740A79FB5BF85346D90CCCA522437F2DD4716B24F38
+CT=F69B837F168B9A9E637E7357B65F2B60
+PT=40DCDF58E7EFDD62C114A83F8AC898BB
+
+I=136
+KEY=A0AED2C07C2168B6C5E8B2C82B258F46F6E675789C7AD783
+CT=40DCDF58E7EFDD62C114A83F8AC898BB
+PT=27F78F3BD8E04A8646EBF364155A71ED
+
+I=137
+KEY=2B4FAEBF17993E12E21F3DF3F3C5C5C0B00D861C8920A66E
+CT=27F78F3BD8E04A8646EBF364155A71ED
+PT=F305DFC8EAD44E786F59B0551C7104F5
+
+I=138
+KEY=96819F6E9738209F111AE23B19118BB8DF5436499551A29B
+CT=F305DFC8EAD44E786F59B0551C7104F5
+PT=2E47F833BE7C06ED1E42AC11366F4BEF
+
+I=139
+KEY=AAEA16BAC3E84DD73F5D1A08A76D8D55C1169A58A33EE974
+CT=2E47F833BE7C06ED1E42AC11366F4BEF
+PT=A9D3A511C3D76779B607AAB2556823AD
+
+I=140
+KEY=F66BA47C56AC5A36968EBF1964BAEA2C771130EAF656CAD9
+CT=A9D3A511C3D76779B607AAB2556823AD
+PT=153A7CC2387C05289F759C85076CDD88
+
+I=141
+KEY=1D892BCCFAF3DA1083B4C3DB5CC6EF04E864AC6FF13A1751
+CT=153A7CC2387C05289F759C85076CDD88
+PT=76B6089030D914F0F4C6078193207A7D
+
+I=142
+KEY=DAEBAF980095A397F502CB4B6C1FFBF41CA2ABEE621A6D2C
+CT=76B6089030D914F0F4C6078193207A7D
+PT=EB71D127848BA397451D45801830461E
+
+I=143
+KEY=85F86FADA92076AB1E731A6CE894586359BFEE6E7A2A2B32
+CT=EB71D127848BA397451D45801830461E
+PT=B79D9BE1B2DB808B412413C203C710DF
+
+I=144
+KEY=BEADDA5CE1E7F3D4A9EE818D5A4FD8E8189BFDAC79ED3BED
+CT=B79D9BE1B2DB808B412413C203C710DF
+PT=E6423467C3CA69D94C944FA2A97BB61F
+
+I=145
+KEY=D4664C8DCFA8304D4FACB5EA9985B131540FB20ED0968DF2
+CT=E6423467C3CA69D94C944FA2A97BB61F
+PT=18EFF53B7D62A9D9ED8AB9ABE67FC110
+
+I=146
+KEY=9CCF1EEAF55FEA5A574340D1E4E718E8B9850BA536E94CE2
+CT=18EFF53B7D62A9D9ED8AB9ABE67FC110
+PT=8E6A4AC577153D806ED71A07319CAB67
+
+I=147
+KEY=7D840184CB9D3A05D9290A1493F22568D75211A20775E785
+CT=8E6A4AC577153D806ED71A07319CAB67
+PT=B7B23D8E7D344F39B3EA0D67CCF37377
+
+I=148
+KEY=D72F35B6DD825B656E9B379AEEC66A5164B81CC5CB8694F2
+CT=B7B23D8E7D344F39B3EA0D67CCF37377
+PT=3385AD0503AF68BFBFBEAA89B1C87736
+
+I=149
+KEY=48335F06D7C27C955D1E9A9FED6902EEDB06B64C7A4EE3C4
+CT=3385AD0503AF68BFBFBEAA89B1C87736
+PT=9FC40A6B984BEEC182AB650B05CEF38C
+
+I=150
+KEY=A66149286535FD6EC2DA90F47522EC2F59ADD3477F801048
+CT=9FC40A6B984BEEC182AB650B05CEF38C
+PT=4CEC52C9DE143486DFC9D098637DFBB5
+
+I=151
+KEY=7EA78450FAEEF8BF8E36C23DAB36D8A9866403DF1CFDEBFD
+CT=4CEC52C9DE143486DFC9D098637DFBB5
+PT=EB8E40333ACD18EFB04DC0A857DDCD7A
+
+I=152
+KEY=197DDF842BAEF36E65B8820E91FBC0463629C3774B202687
+CT=EB8E40333ACD18EFB04DC0A857DDCD7A
+PT=F1AFF04058F819B0F191398C8022130F
+
+I=153
+KEY=D68841CF848B0F619417724EC903D9F6C7B8FAFBCB023588
+CT=F1AFF04058F819B0F191398C8022130F
+PT=6DF4A95D8D602C0E53F5A5C350D3EB64
+
+I=154
+KEY=6DFA0F7B01A2F011F9E3DB134463F5F8944D5F389BD1DEEC
+CT=6DF4A95D8D602C0E53F5A5C350D3EB64
+PT=057D8F9BE9260BB3A0382CD2EF7D1FCA
+
+I=155
+KEY=88227C4AD1CBC8F0FC9E5488AD45FE4B347573EA74ACC126
+CT=057D8F9BE9260BB3A0382CD2EF7D1FCA
+PT=D4EDACCB9B7B35F2A0690E22C91E25AE
+
+I=156
+KEY=848B8E3213D366B22873F843363ECBB9941C7DC8BDB2E488
+CT=D4EDACCB9B7B35F2A0690E22C91E25AE
+PT=A2F61B5BDD9F580B26C329B878BAFA3C
+
+I=157
+KEY=FA3A476D1C6E33FD8A85E318EBA193B2B2DF5470C5081EB4
+CT=A2F61B5BDD9F580B26C329B878BAFA3C
+PT=5A0616880CD40B72B58CF268EC8F934B
+
+I=158
+KEY=C9F77D58F58D5FEDD083F590E77598C00753A61829878DFF
+CT=5A0616880CD40B72B58CF268EC8F934B
+PT=0E42047D7EDE2A5FBB37767A69A45B9B
+
+I=159
+KEY=00A523C700FBB663DEC1F1ED99ABB29FBC64D0624023D664
+CT=0E42047D7EDE2A5FBB37767A69A45B9B
+PT=2AFA823A10BB436A7B00816C80A52711
+
+I=160
+KEY=660275323A59E807F43B73D78910F1F5C764510EC086F175
+CT=2AFA823A10BB436A7B00816C80A52711
+PT=B2406F3F9160E25DF7C9AA81AF6EB449
+
+I=161
+KEY=47A4FCDB97D4A383467B1CE8187013A830ADFB8F6FE8453C
+CT=B2406F3F9160E25DF7C9AA81AF6EB449
+PT=B1E01D2A401495F8DDAEAB7B04BEB23D
+
+I=162
+KEY=2BDD5B54D4EB236AF79B01C258648650ED0350F46B56F701
+CT=B1E01D2A401495F8DDAEAB7B04BEB23D
+PT=390572A9ECE28A0E0BBDC729DBE5F79A
+
+I=163
+KEY=328202460B65D004CE9E736BB4860C5EE6BE97DDB0B3009B
+CT=390572A9ECE28A0E0BBDC729DBE5F79A
+PT=5D41665811702124C597DB4E3BD950E1
+
+I=164
+KEY=94457C0A759DF4E993DF1533A5F62D7A23294C938B6A507A
+CT=5D41665811702124C597DB4E3BD950E1
+PT=689EB1CB1586D127696E8725DEE49E58
+
+I=165
+KEY=4E0226CA850DDC79FB41A4F8B070FC5D4A47CBB6558ECE22
+CT=689EB1CB1586D127696E8725DEE49E58
+PT=A2D9DF62AC8BF8A93E7A954416864052
+
+I=166
+KEY=659C817A1C10A24D59987B9A1CFB04F4743D5EF243088E70
+CT=A2D9DF62AC8BF8A93E7A954416864052
+PT=507835696F1920BD4A05797563DF5769
+
+I=167
+KEY=92192D9175187FB409E04EF373E224493E38278720D7D919
+CT=507835696F1920BD4A05797563DF5769
+PT=2070413F5103482B6C83129304E5AC87
+
+I=168
+KEY=6959063FBA59CCEC29900FCC22E16C6252BB35142432759E
+CT=2070413F5103482B6C83129304E5AC87
+PT=BF7FD1E21B41B1F1C2625C1097F1BCB8
+
+I=169
+KEY=5722993710D811B196EFDE2E39A0DD9390D96904B3C3C926
+CT=BF7FD1E21B41B1F1C2625C1097F1BCB8
+PT=6E2236654F2999545F50FA9CF63F9F2E
+
+I=170
+KEY=038FA98E7A226A9FF8CDE84B768944C7CF89939845FC5608
+CT=6E2236654F2999545F50FA9CF63F9F2E
+PT=3F370291CEDCB115C8EE409A8EEB46D6
+
+I=171
+KEY=CACF0199725D5466C7FAEADAB855F5D20767D302CB1710DE
+CT=3F370291CEDCB115C8EE409A8EEB46D6
+PT=84023DB96D373EC8315AE78A3B7E82FB
+
+I=172
+KEY=7B40321CB11520D143F8D763D562CB1A363D3488F0699225
+CT=84023DB96D373EC8315AE78A3B7E82FB
+PT=C35064D82A3016FE2C2E2CC0627E7B5C
+
+I=173
+KEY=F045CFEC2A6BC7E580A8B3BBFF52DDE41A1318489217E979
+CT=C35064D82A3016FE2C2E2CC0627E7B5C
+PT=D78DFFE87C0F95856C31A07BADA23084
+
+I=174
+KEY=86B3CA5F50CEF6C557254C53835D48617622B8333FB5D9FD
+CT=D78DFFE87C0F95856C31A07BADA23084
+PT=5B5B5D3CA5C6E5CF18F3E4EE802BE82B
+
+I=175
+KEY=E6D99DC0C58655B70C7E116F269BADAE6ED15CDDBF9E31D6
+CT=5B5B5D3CA5C6E5CF18F3E4EE802BE82B
+PT=DB65A82F6EB7A410A367165900E85117
+
+I=176
+KEY=B8F770CFBE47D070D71BB940482C09BECDB64A84BF7660C1
+CT=DB65A82F6EB7A410A367165900E85117
+PT=FE8BE8484D925043102238FF63FDAC57
+
+I=177
+KEY=FF09ADB06FE587192990510805BE59FDDD94727BDC8BCC96
+CT=FE8BE8484D925043102238FF63FDAC57
+PT=AC36E01A7AD482A8D89703D2A6528720
+
+I=178
+KEY=B5C937A4019CDAD185A6B1127F6ADB55050371A97AD94BB6
+CT=AC36E01A7AD482A8D89703D2A6528720
+PT=9F3698CE06C6497C89B58CA723F7ECAA
+
+I=179
+KEY=F60CAF8FB99B63B21A9029DC79AC92298CB6FD0E592EA71C
+CT=9F3698CE06C6497C89B58CA723F7ECAA
+PT=FB8CE2E1D332FE4557B6C5CF1676F2FB
+
+I=180
+KEY=B7CF2BABD58B5FDCE11CCB3DAA9E6C6CDB0038C14F5855E7
+CT=FB8CE2E1D332FE4557B6C5CF1676F2FB
+PT=A2631F612698318AD454E9DB10319DA6
+
+I=181
+KEY=FD99B4137CAFC47F437FD45C8C065DE60F54D11A5F69C841
+CT=A2631F612698318AD454E9DB10319DA6
+PT=FCA42B332B5974EE6DFA54B54EC89AC7
+
+I=182
+KEY=271CEEF189AD367DBFDBFF6FA75F290862AE85AF11A15286
+CT=FCA42B332B5974EE6DFA54B54EC89AC7
+PT=A70DBBDFCE54B8648C3FC4A8A58CCDF8
+
+I=183
+KEY=7B78F7ECC9B28EC718D644B0690B916CEE914107B42D9F7E
+CT=A70DBBDFCE54B8648C3FC4A8A58CCDF8
+PT=C90CE914F9310F9C3EE065DD95281A51
+
+I=184
+KEY=762F521ADF6C5F24D1DAADA4903A9EF0D07124DA2105852F
+CT=C90CE914F9310F9C3EE065DD95281A51
+PT=63E8430CE22F531E4A4D4583533F6FC4
+
+I=185
+KEY=A88A493EB3C28C49B232EEA87215CDEE9A3C6159723AEAEB
+CT=63E8430CE22F531E4A4D4583533F6FC4
+PT=E7562DC647910A052F4AFBF165A68A3A
+
+I=186
+KEY=1C97343A60EE05035564C36E3584C7EBB5769AA8179C60D1
+CT=E7562DC647910A052F4AFBF165A68A3A
+PT=3E070B3F65FD01B49849513B556DB199
+
+I=187
+KEY=C5110692100A332E6B63C8515079C65F2D3FCB9342F1D148
+CT=3E070B3F65FD01B49849513B556DB199
+PT=3DE5A45B2CAA4FAFAC3032F89F15195D
+
+I=188
+KEY=D94D8CAA9EBD67F056866C0A7CD389F0810FF96BDDE4C815
+CT=3DE5A45B2CAA4FAFAC3032F89F15195D
+PT=A36A163E8806B1E053EBE439B0D1302F
+
+I=189
+KEY=1C1D7A3E9358048CF5EC7A34F4D53810D2E41D526D35F83A
+CT=A36A163E8806B1E053EBE439B0D1302F
+PT=67CA4B988CCABA4E4DBEE6C387562762
+
+I=190
+KEY=9182E40D14973087922631AC781F825E9F5AFB91EA63DF58
+CT=67CA4B988CCABA4E4DBEE6C387562762
+PT=9F404F0E1A9FE5A988CE6E4A54FE9E23
+
+I=191
+KEY=7D89ECFC0DCFFE0A0D667EA2628067F7179495DBBE9D417B
+CT=9F404F0E1A9FE5A988CE6E4A54FE9E23
+PT=D71EFD794457C71614E4266C77193444
+
+I=192
+KEY=AC7A11D29CDA0FB6DA7883DB26D7A0E10370B3B7C984753F
+CT=D71EFD794457C71614E4266C77193444
+PT=185DBF418A6834CD118B16EAF381F3CB
+
+I=193
+KEY=1029D5FA3D38927EC2253C9AACBF942C12FBA55D3A0586F4
+CT=185DBF418A6834CD118B16EAF381F3CB
+PT=737A502DEE68DDFA3FEECD42ACE124EA
+
+I=194
+KEY=F261B484C642750CB15F6CB742D749D62D15681F96E4A21E
+CT=737A502DEE68DDFA3FEECD42ACE124EA
+PT=FD11B0F356455913E892928B5B16946B
+
+I=195
+KEY=BCCFAF05FF47A5EC4C4EDC44149210C5C587FA94CDF23675
+CT=FD11B0F356455913E892928B5B16946B
+PT=4B06F6D6D149BAF25D4C76E46EFF8571
+
+I=196
+KEY=1000A15983B73D6807482A92C5DBAA3798CB8C70A30DB304
+CT=4B06F6D6D149BAF25D4C76E46EFF8571
+PT=450713DA24492403C48CB16D2F39744E
+
+I=197
+KEY=306F097E64B634AC424F3948E1928E345C473D1D8C34C74A
+CT=450713DA24492403C48CB16D2F39744E
+PT=998CA5E3C80B66EB11EAD376FA358A92
+
+I=198
+KEY=13965208C3EF77E1DBC39CAB2999E8DF4DADEE6B76014DD8
+CT=998CA5E3C80B66EB11EAD376FA358A92
+PT=F54A34F6F0833CA808D60A8F75BB0585
+
+I=199
+KEY=1A6DC3FDD0D1F97C2E89A85DD91AD477457BE4E403BA485D
+CT=F54A34F6F0833CA808D60A8F75BB0585
+PT=8760D5CBD1DA48807BAEAF7F781680F2
+
+I=200
+KEY=228897B4E2F16967A9E97D9608C09CF73ED54B9B7BACC8AF
+CT=8760D5CBD1DA48807BAEAF7F781680F2
+PT=EF57DF7161E1BC0F7B466A50C576691A
+
+I=201
+KEY=D0E8190E72A305C946BEA2E7692120F8459321CBBEDAA1B5
+CT=EF57DF7161E1BC0F7B466A50C576691A
+PT=E01ECA338A93EA38E43B2F364314C121
+
+I=202
+KEY=087F0486B80659F0A6A068D4E3B2CAC0A1A80EFDFDCE6094
+CT=E01ECA338A93EA38E43B2F364314C121
+PT=A7683273638D02272FF6A311BB94256F
+
+I=203
+KEY=1D807E4730DDA3EB01C85AA7803FC8E78E5EADEC465A45FB
+CT=A7683273638D02272FF6A311BB94256F
+PT=1BCC3DF6B07BD2615C13E381F5F877C3
+
+I=204
+KEY=D4D4F2780D52D7521A04675130441A86D24D4E6DB3A23238
+CT=1BCC3DF6B07BD2615C13E381F5F877C3
+PT=D1B3B793D1377E82A2DE5D46E53791FB
+
+I=205
+KEY=86D08D85652DB662CBB7D0C2E17364047093132B5695A3C3
+CT=D1B3B793D1377E82A2DE5D46E53791FB
+PT=9AC7AF9B82621E18E4FF613EAA609F46
+
+I=206
+KEY=C03996907AC99A7A51707F5963117A1C946C7215FCF53C85
+CT=9AC7AF9B82621E18E4FF613EAA609F46
+PT=57F3FA35A42C29F33DEC4671140264A4
+
+I=207
+KEY=F8CA52D95C587EF80683856CC73D53EFA9803464E8F75821
+CT=57F3FA35A42C29F33DEC4671140264A4
+PT=A887ED8BF6C19F5012F317A4FCF3D7BF
+
+I=208
+KEY=DE99CC8F9756C1DCAE0468E731FCCCBFBB7323C014048F9E
+CT=A887ED8BF6C19F5012F317A4FCF3D7BF
+PT=A29C8D764BCF211C789158A9B8EB330C
+
+I=209
+KEY=9228DB1B61E0D8670C98E5917A33EDA3C3E27B69ACEFBC92
+CT=A29C8D764BCF211C789158A9B8EB330C
+PT=EB6AFD9B36315DB322EC8C4243043F50
+
+I=210
+KEY=24AFE14097C2A217E7F2180A4C02B010E10EF72BEFEB83C2
+CT=EB6AFD9B36315DB322EC8C4243043F50
+PT=05C8AC90CCD00E2A3809C68C11D6D65A
+
+I=211
+KEY=32810943F9313BD0E23AB49A80D2BE3AD90731A7FE3D5598
+CT=05C8AC90CCD00E2A3809C68C11D6D65A
+PT=E39991B58C52154166AD09367B04C67A
+
+I=212
+KEY=FBEC72A177254EA501A3252F0C80AB7BBFAA3891853993E2
+CT=E39991B58C52154166AD09367B04C67A
+PT=CBC8974F72F77A1821FC69B29FE2DB60
+
+I=213
+KEY=C706D206DE538439CA6BB2607E77D1639E5651231ADB4882
+CT=CBC8974F72F77A1821FC69B29FE2DB60
+PT=1D08F4E2B8DFED1032B6CA5211B3E34C
+
+I=214
+KEY=9A7EB0A4F8E67F87D7634682C6A83C73ACE09B710B68ABCE
+CT=1D08F4E2B8DFED1032B6CA5211B3E34C
+PT=1888CEC22449EFF96BDC2C7A242BBBDC
+
+I=215
+KEY=70CA2CAD6A50D22BCFEB8840E2E1D38AC73CB70B2F431012
+CT=1888CEC22449EFF96BDC2C7A242BBBDC
+PT=032E6155677B6A72D7F94C7A9A9AA53F
+
+I=216
+KEY=B16697FEA247CDB9CCC5E915859AB9F810C5FB71B5D9B52D
+CT=032E6155677B6A72D7F94C7A9A9AA53F
+PT=9B43BBD1C0CEBF7593E9BC0ABB626E96
+
+I=217
+KEY=7A3E844BEB897A63578652C44554068D832C477B0EBBDBBB
+CT=9B43BBD1C0CEBF7593E9BC0ABB626E96
+PT=8D661E03C61C28D5786EBCEBE0D5B63D
+
+I=218
+KEY=E7A1B96EFC4D5FB5DAE04CC783482E58FB42FB90EE6E6D86
+CT=8D661E03C61C28D5786EBCEBE0D5B63D
+PT=F61D5DCBF8F2F3F0EAB387149790E079
+
+I=219
+KEY=0EDA761C06FBA0A02CFD110C7BBADDA811F17C8479FE8DFF
+CT=F61D5DCBF8F2F3F0EAB387149790E079
+PT=1F03E0957B6892533BBEAB06EB35AD4F
+
+I=220
+KEY=E242AD5B7141916133FEF19900D24FFB2A4FD78292CB20B0
+CT=1F03E0957B6892533BBEAB06EB35AD4F
+PT=BB9E7343035F88764B229D506E7ADC7B
+
+I=221
+KEY=D901A6CF874A6A77886082DA038DC78D616D4AD2FCB1FCCB
+CT=BB9E7343035F88764B229D506E7ADC7B
+PT=3934EBF7AD2243C0D09734E30B41C0E4
+
+I=222
+KEY=0F488E86E7D92F29B154692DAEAF844DB1FA7E31F7F03C2F
+CT=3934EBF7AD2243C0D09734E30B41C0E4
+PT=B9CE1A1A9595E7235F5B10FBA29ACCD2
+
+I=223
+KEY=A7E2CF991692247A089A73373B3A636EEEA16ECA556AF0FD
+CT=B9CE1A1A9595E7235F5B10FBA29ACCD2
+PT=624EBA65EE9E3E1BDF8C5AA7E1283A65
+
+I=224
+KEY=1DE03E09395E56CE6AD4C952D5A45D75312D346DB442CA98
+CT=624EBA65EE9E3E1BDF8C5AA7E1283A65
+PT=375132E5F47DA19E80CC8652BE5A3692
+
+I=225
+KEY=51B6813629EFE53C5D85FBB721D9FCEBB1E1B23F0A18FC0A
+CT=375132E5F47DA19E80CC8652BE5A3692
+PT=8165A4126FE75EFC6AFF7BFD732F94A6
+
+I=226
+KEY=8DD50DFF93624339DCE05FA54E3EA217DB1EC9C2793768AC
+CT=8165A4126FE75EFC6AFF7BFD732F94A6
+PT=35012FABD289E6B7FB07946591D18F0D
+
+I=227
+KEY=C7A4F75CB74C7F3DE9E1700E9CB744A020195DA7E8E6E7A1
+CT=35012FABD289E6B7FB07946591D18F0D
+PT=C26F37D700677ED72F4FC2C8F6AEADE2
+
+I=228
+KEY=198B572CD0E711352B8E47D99CD03A770F569F6F1E484A43
+CT=C26F37D700677ED72F4FC2C8F6AEADE2
+PT=CB29ECE41596736B72AED2460AEEFBA2
+
+I=229
+KEY=0A1FB41CA720E357E0A7AB3D8946491C7DF84D2914A6B1E1
+CT=CB29ECE41596736B72AED2460AEEFBA2
+PT=7F7BD6FAF9C37D5522A3BF480CCEBF20
+
+I=230
+KEY=7E383601899DEA729FDC7DC7708534495F5BF26118680EC1
+CT=7F7BD6FAF9C37D5522A3BF480CCEBF20
+PT=C501E371005DF57E0037F41A744D026F
+
+I=231
+KEY=13ACF410865B41E15ADD9EB670D8C1375F6C067B6C250CAE
+CT=C501E371005DF57E0037F41A744D026F
+PT=624EF8749580108CDC7A020179F81D0F
+
+I=232
+KEY=75F025072AA2406F389366C2E558D1BB8316047A15DD11A1
+CT=624EF8749580108CDC7A020179F81D0F
+PT=40D72550603522C67180DE6EC3D30139
+
+I=233
+KEY=C5ED76F88EA65C3D78444392856DF37DF296DA14D60E1098
+CT=40D72550603522C67180DE6EC3D30139
+PT=96C6F647AFB90F804431F9E2F1780F29
+
+I=234
+KEY=E827DFF88D0B1A43EE82B5D52AD4FCFDB6A723F627761FB1
+CT=96C6F647AFB90F804431F9E2F1780F29
+PT=CCB934A501DDAD11E994938A214EB189
+
+I=235
+KEY=F0777D1BFF12EE42223B81702B0951EC5F33B07C0638AE38
+CT=CCB934A501DDAD11E994938A214EB189
+PT=07825F2D35E761C76893B697E30E4D08
+
+I=236
+KEY=6912B59C06C90D3725B9DE5D1EEE302B37A006EBE536E330
+CT=07825F2D35E761C76893B697E30E4D08
+PT=1F674E97F88EB1DA1DD24C0AB4321258
+
+I=237
+KEY=AE24933526FAE5F83ADE90CAE66081F12A724AE15104F168
+CT=1F674E97F88EB1DA1DD24C0AB4321258
+PT=B6DE499EBE0B3C30F1DAC8E40FE9F10C
+
+I=238
+KEY=F348F88852CF356C8C00D954586BBDC1DBA882055EED0064
+CT=B6DE499EBE0B3C30F1DAC8E40FE9F10C
+PT=105E31DBDE33764B098862AF6D0B6CD2
+
+I=239
+KEY=83B06CC00A17D3149C5EE88F8658CB8AD220E0AA33E66CB6
+CT=105E31DBDE33764B098862AF6D0B6CD2
+PT=697D6537677B20C188246FBF4997C7CB
+
+I=240
+KEY=A5381A9C91D61A01F5238DB8E123EB4B5A048F157A71AB7D
+CT=697D6537677B20C188246FBF4997C7CB
+PT=4FBFB0EFBA92C1E0189E2C3097AA35BA
+
+I=241
+KEY=FDF831A7D1345AFEBA9C3D575BB12AAB429AA325EDDB9EC7
+CT=4FBFB0EFBA92C1E0189E2C3097AA35BA
+PT=600288531DCEB99B69A7890CE804FA9F
+
+I=242
+KEY=A10ED54E7B2B2B2BDA9EB504467F93302B3D2A2905DF6458
+CT=600288531DCEB99B69A7890CE804FA9F
+PT=EE94D4376D9332C8DCD05C695EDB124F
+
+I=243
+KEY=2F69F01250D7745F340A61332BECA1F8F7ED76405B047617
+CT=EE94D4376D9332C8DCD05C695EDB124F
+PT=7EDC3182C36DC5A172B170A919524888
+
+I=244
+KEY=FCD5F8FAB347624E4AD650B1E8816459855C06E942563E9F
+CT=7EDC3182C36DC5A172B170A919524888
+PT=95FA03C96DFCB9ABCFF23B5ABFBABCDE
+
+I=245
+KEY=A9307E62197A747EDF2C5378857DDDF24AAE3DB3FDEC8241
+CT=95FA03C96DFCB9ABCFF23B5ABFBABCDE
+PT=6CE2C6CFC61667965C20B0BE11B55DDE
+
+I=246
+KEY=DA3B03896DDFDE08B3CE95B7436BBA64168E8D0DEC59DF9F
+CT=6CE2C6CFC61667965C20B0BE11B55DDE
+PT=3DBDFBE63A6FAE7572C778108A62A27C
+
+I=247
+KEY=7D766BAD6E536CE38E736E51790414116449F51D663B7DE3
+CT=3DBDFBE63A6FAE7572C778108A62A27C
+PT=1C197D3449FED6ED6924E14B43A17BF0
+
+I=248
+KEY=36F69C30B0272CAB926A136530FAC2FC0D6D1456259A0613
+CT=1C197D3449FED6ED6924E14B43A17BF0
+PT=0B0CCC6F508C18168284F7976AD81BEE
+
+I=249
+KEY=632661C312B2EB5D9966DF0A6076DAEA8FE9E3C14F421DFD
+CT=0B0CCC6F508C18168284F7976AD81BEE
+PT=F437B8FD92CE37D8D74550C5BE29BF99
+
+I=250
+KEY=5FB1BDFC29EFE2DA6D5167F7F2B8ED3258ACB304F16BA264
+CT=F437B8FD92CE37D8D74550C5BE29BF99
+PT=78F6E6F6480A04F5632EA112170F928C
+
+I=251
+KEY=2B24C5188F4A2E7B15A78101BAB2E9C73B821216E66430E8
+CT=78F6E6F6480A04F5632EA112170F928C
+PT=2FD38831EE4D09DD8DB9A84B5825B528
+
+I=252
+KEY=F816FB720A08828C3A74093054FFE01AB63BBA5DBE4185C0
+CT=2FD38831EE4D09DD8DB9A84B5825B528
+PT=ED307697B51CFAD7052A3A7B3A564990
+
+I=253
+KEY=776B08F4778FAB96D7447FA7E1E31ACDB31180268417CC50
+CT=ED307697B51CFAD7052A3A7B3A564990
+PT=DB9952A98F0D4B045C624EFA5619CAF9
+
+I=254
+KEY=C7A944C9BA2D5F740CDD2D0E6EEE51C9EF73CEDCD20E06A9
+CT=DB9952A98F0D4B045C624EFA5619CAF9
+PT=DADA40BF0E367AF50874BB2628251AA3
+
+I=255
+KEY=69B8688D9C1ECD95D6076DB160D82B3CE70775FAFA2B1C0A
+CT=DADA40BF0E367AF50874BB2628251AA3
+PT=35DFA85D3F2D7F47DD7865EA0BC73A5C
+
+I=256
+KEY=7E6C7E90EDE36F44E3D8C5EC5FF5547B3A7F1010F1EC2656
+CT=35DFA85D3F2D7F47DD7865EA0BC73A5C
+PT=EE0231F994C2DB6C7C04746170F03E54
+
+I=257
+KEY=0E56C8FD184AB5D40DDAF415CB378F17467B6471811C1802
+CT=EE0231F994C2DB6C7C04746170F03E54
+PT=D9F314FEAD11122CE8F532ED0C0B129C
+
+I=258
+KEY=267BC5325796002BD429E0EB66269D3BAE8E569C8D170A9E
+CT=D9F314FEAD11122CE8F532ED0C0B129C
+PT=74A32BDFF53A59F09AAFB328977E05B1
+
+I=259
+KEY=889B6087CAAD1B43A08ACB34931CC4CB3421E5B41A690F2F
+CT=74A32BDFF53A59F09AAFB328977E05B1
+PT=D4CCC3077C15EE470D5EFCF815A48410
+
+I=260
+KEY=F9AE78D077E3F98574460833EF092A8C397F194C0FCD8B3F
+CT=D4CCC3077C15EE470D5EFCF815A48410
+PT=29284B0E7776DFB8BB536B3C16399D62
+
+I=261
+KEY=71BBCD4B1F4B04265D6E433D987FF534822C727019F4165D
+CT=29284B0E7776DFB8BB536B3C16399D62
+PT=202326CEAD57A5C13592FFBFFD5BF508
+
+I=262
+KEY=F6F461C7931CF0317D4D65F3352850F5B7BE8DCFE4AFE355
+CT=202326CEAD57A5C13592FFBFFD5BF508
+PT=B9AFAD0658E1A4A1EECAA25B2863AD53
+
+I=263
+KEY=BC0D82D3B7909D54C4E2C8F56DC9F45459742F94CCCC4E06
+CT=B9AFAD0658E1A4A1EECAA25B2863AD53
+PT=DE7AC7F7381DD34F3148911F306F4161
+
+I=264
+KEY=339FFE2E01AB1D621A980F0255D4271B683CBE8BFCA30F67
+CT=DE7AC7F7381DD34F3148911F306F4161
+PT=F197DE9FED1EA08F6C17E631BF5449FE
+
+I=265
+KEY=EC908F9A4F266644EB0FD19DB8CA8794042B58BA43F74699
+CT=F197DE9FED1EA08F6C17E631BF5449FE
+PT=7E1416C06ED3F56782DB5CB536B9B56E
+
+I=266
+KEY=CFE36CCCC94F8A5B951BC75DD61972F386F0040F754EF3F7
+CT=7E1416C06ED3F56782DB5CB536B9B56E
+PT=BE1FE1F7B4CFF55D15BBCB6D9313729D
+
+I=267
+KEY=90690906407FB8AC2B0426AA62D687AE934BCF62E65D816A
+CT=BE1FE1F7B4CFF55D15BBCB6D9313729D
+PT=50E6818C06583D3D1C99C4A127D118CF
+
+I=268
+KEY=5D2A712578EC47217BE2A726648EBA938FD20BC3C18C99A5
+CT=50E6818C06583D3D1C99C4A127D118CF
+PT=E1BFD3ED18E9A6D7BF383D590DA23B59
+
+I=269
+KEY=3CA141EE57D7E0FC9A5D74CB7C671C4430EA369ACC2EA2FC
+CT=E1BFD3ED18E9A6D7BF383D590DA23B59
+PT=03961127347C141C01F5276CB9BB31F7
+
+I=270
+KEY=65E9B8AE22DC52A599CB65EC481B0858311F11F67595930B
+CT=03961127347C141C01F5276CB9BB31F7
+PT=E9A8336DC0B530A86988B2DE74EDFFA1
+
+I=271
+KEY=870A30E0F3B836FA7063568188AE38F05897A32801786CAA
+CT=E9A8336DC0B530A86988B2DE74EDFFA1
+PT=B5FA5E388CFFFE2BA33436CC39A73972
+
+I=272
+KEY=4B81E55C765F570CC59908B90451C6DBFBA395E438DF55D8
+CT=B5FA5E388CFFFE2BA33436CC39A73972
+PT=CEF4896BBC86F1E02312479C40D96DAE
+
+I=273
+KEY=0FAB0DCFB6E3E7940B6D81D2B8D7373BD8B1D27878063876
+CT=CEF4896BBC86F1E02312479C40D96DAE
+PT=F195F5321FCAA68B0B0CBA83978A8084
+
+I=274
+KEY=F860076D3847A80BFAF874E0A71D91B0D3BD68FBEF8CB8F2
+CT=F195F5321FCAA68B0B0CBA83978A8084
+PT=861575205386223EBC6B48B22C35A2A6
+
+I=275
+KEY=B2DB77DC3E18C3A77CED01C0F49BB38E6FD62049C3B91A54
+CT=861575205386223EBC6B48B22C35A2A6
+PT=DC074F3D41C62DA9D609A982DEB9E074
+
+I=276
+KEY=E632B0C6EE68910EA0EA4EFDB55D9E27B9DF89CB1D00FA20
+CT=DC074F3D41C62DA9D609A982DEB9E074
+PT=6933F4F193B028A22B913453B0B4C9A2
+
+I=277
+KEY=88AA3FEE5FDFA336C9D9BA0C26EDB685924EBD98ADB43382
+CT=6933F4F193B028A22B913453B0B4C9A2
+PT=56811E665DDFBEA07A7C2C762F0D5C73
+
+I=278
+KEY=2A0A1FE31ADFC64F9F58A46A7B320825E83291EE82B96FF1
+CT=56811E665DDFBEA07A7C2C762F0D5C73
+PT=CFF92E47C8C973ADA7B57D9FE320B356
+
+I=279
+KEY=7958F9D10B6DC91050A18A2DB3FB7B884F87EC716199DCA7
+CT=CFF92E47C8C973ADA7B57D9FE320B356
+PT=A55A4F827552761580DC27E0712051B1
+
+I=280
+KEY=ADDB73FE13D439CAF5FBC5AFC6A90D9DCF5BCB9110B98D16
+CT=A55A4F827552761580DC27E0712051B1
+PT=734B095C3C54FCDE26C33659C82CACCB
+
+I=281
+KEY=E979AF9C739F60AE86B0CCF3FAFDF143E998FDC8D89521DD
+CT=734B095C3C54FCDE26C33659C82CACCB
+PT=122A4F2ADE6C69364943658517A56587
+
+I=282
+KEY=E05BDC75E94EB2A8949A83D924919875A0DB984DCF30445A
+CT=122A4F2ADE6C69364943658517A56587
+PT=C6EF3170C5EF69B479AC6653E8B7E979
+
+I=283
+KEY=67AF0BE0DE572F595275B2A9E17EF1C1D977FE1E2787AD23
+CT=C6EF3170C5EF69B479AC6653E8B7E979
+PT=51113FF8A1000A5449F24E8E5363FB72
+
+I=284
+KEY=7C8DCBB512AE775603648D51407EFB959085B09074E45651
+CT=51113FF8A1000A5449F24E8E5363FB72
+PT=B9341E24A41C9D9CE56D6E4F17A7A311
+
+I=285
+KEY=EEBE49DAF88030F5BA509375E462660975E8DEDF6343F540
+CT=B9341E24A41C9D9CE56D6E4F17A7A311
+PT=26A135C466B061791DE40A40E9366FC6
+
+I=286
+KEY=A06A0B9127769EF79CF1A6B182D20770680CD49F8A759A86
+CT=26A135C466B061791DE40A40E9366FC6
+PT=AE832B68C147CF8A70A8E5CCC3FF05F2
+
+I=287
+KEY=CD394B7808099B2832728DD94395C8FA18A43153498A9F74
+CT=AE832B68C147CF8A70A8E5CCC3FF05F2
+PT=72747F478E3AE57C6C7D6D4E5C4FCE71
+
+I=288
+KEY=80D4A1BD538D11434006F29ECDAF2D8674D95C1D15C55105
+CT=72747F478E3AE57C6C7D6D4E5C4FCE71
+PT=21539022400BEE401E8FE7E9F0F7AAC3
+
+I=289
+KEY=C8BCB868E11B46E3615562BC8DA4C3C66A56BBF4E532FBC6
+CT=21539022400BEE401E8FE7E9F0F7AAC3
+PT=44149C7C375F07B7169C8A9A14133C8C
+
+I=290
+KEY=DFC35DD4FAD95C2A2541FEC0BAFBC4717CCA316EF121C74A
+CT=44149C7C375F07B7169C8A9A14133C8C
+PT=2A7FA9D2EACC0C5444510E7D69EB3FD6
+
+I=291
+KEY=73B0B53EE6D591140F3E57125037C825389B3F1398CAF89C
+CT=2A7FA9D2EACC0C5444510E7D69EB3FD6
+PT=9949145B8C88D03BBA46FEBE9856B732
+
+I=292
+KEY=7BFBD6A0A317DEE996774349DCBF181E82DDC1AD009C4FAE
+CT=9949145B8C88D03BBA46FEBE9856B732
+PT=714E072347ECDEA4F8EB2B02746FBC66
+
+I=293
+KEY=CA326A1D191B2BC6E739446A9B53C6BA7A36EAAF74F3F3C8
+CT=714E072347ECDEA4F8EB2B02746FBC66
+PT=CCF2295814759A5004E8C3E2B97C4958
+
+I=294
+KEY=428400F7196D32C62BCB6D328F265CEA7EDE294DCD8FBA90
+CT=CCF2295814759A5004E8C3E2B97C4958
+PT=12108AB0753EAAE007DEFF2EBA8A3EF0
+
+I=295
+KEY=3E38F6FA3F49742339DBE782FA18F60A7900D66377058460
+CT=12108AB0753EAAE007DEFF2EBA8A3EF0
+PT=0109AC127FB55B91BC922EDFF3C43819
+
+I=296
+KEY=07C585ABD1C227D638D24B9085ADAD9BC592F8BC84C1BC79
+CT=0109AC127FB55B91BC922EDFF3C43819
+PT=33FF03F6966E81EE28889CFA0B9BA8B9
+
+I=297
+KEY=FB823872148252C20B2D486613C32C75ED1A64468F5A14C0
+CT=33FF03F6966E81EE28889CFA0B9BA8B9
+PT=D8468C180BAC0F6D703611DDAD951014
+
+I=298
+KEY=F81900EAD21ECE3BD36BC47E186F23189D2C759B22CF04D4
+CT=D8468C180BAC0F6D703611DDAD951014
+PT=07994906A8377D64F2D32DB4BB170EF1
+
+I=299
+KEY=2ADC8C0244307531D4F28D78B0585E7C6FFF582F99D80A25
+CT=07994906A8377D64F2D32DB4BB170EF1
+PT=48382015F82AA7EC8944C40275595CEF
+
+I=300
+KEY=2E917F5C5BAB80939CCAAD6D4872F990E6BB9C2DEC8156CA
+CT=48382015F82AA7EC8944C40275595CEF
+PT=D4EEE0A1A56118EB8F6AE16FE16F70ED
+
+I=301
+KEY=126D396B29E0252248244DCCED13E17B69D17D420DEE2627
+CT=D4EEE0A1A56118EB8F6AE16FE16F70ED
+PT=358E5FAE4A4ED6B1058E32942AE030DB
+
+I=302
+KEY=D390A60684F5C9147DAA1262A75D37CA6C5F4FD6270E16FC
+CT=358E5FAE4A4ED6B1058E32942AE030DB
+PT=B9730D311EA8312DAC34F444A4560DDC
+
+I=303
+KEY=0B2A03E62FCD9B06C4D91F53B9F506E7C06BBB9283581B20
+CT=B9730D311EA8312DAC34F444A4560DDC
+PT=D64F286B32B4058A51B73844BCA93DDA
+
+I=304
+KEY=5858183C5713BBD6129637388B41036D91DC83D63FF126FA
+CT=D64F286B32B4058A51B73844BCA93DDA
+PT=78425B7FE64D972C642ED17369ED8844
+
+I=305
+KEY=C555D9DC23D3A1846AD46C476D0C9441F5F252A5561CAEBE
+CT=78425B7FE64D972C642ED17369ED8844
+PT=2DE9202F4CD7F67C7B7F94CF7F3B9B5A
+
+I=306
+KEY=7BA871DA6E336CFA473D4C6821DB623D8E8DC66A292735E4
+CT=2DE9202F4CD7F67C7B7F94CF7F3B9B5A
+PT=A30322EC9A51266B50153995BCEBC846
+
+I=307
+KEY=55BF35687EBA169AE43E6E84BB8A4456DE98FFFF95CCFDA2
+CT=A30322EC9A51266B50153995BCEBC846
+PT=14754B0469683F36E4791FD9B8B1C585
+
+I=308
+KEY=0404CAE90360F118F04B2580D2E27B603AE1E0262D7D3827
+CT=14754B0469683F36E4791FD9B8B1C585
+PT=E8592DC147A1DC4F48D43E365B9D63FF
+
+I=309
+KEY=109E16AA717A4EF4181208419543A72F7235DE1076E05BD8
+CT=E8592DC147A1DC4F48D43E365B9D63FF
+PT=47A3BF0743562C7D412563C94C2CD717
+
+I=310
+KEY=0A8DC7647F8C06D15FB1B746D6158B523310BDD93ACC8CCF
+CT=47A3BF0743562C7D412563C94C2CD717
+PT=63F8C6A062937471364050815D856793
+
+I=311
+KEY=CC9B8854C13F73623C4971E6B486FF230550ED586749EB5C
+CT=63F8C6A062937471364050815D856793
+PT=E70443AF44BF549607251A86CD83A4D3
+
+I=312
+KEY=2D067D896DF1E749DB4D3249F039ABB50275F7DEAACA4F8F
+CT=E70443AF44BF549607251A86CD83A4D3
+PT=ACEF2AE95CA660AEE513BF48BCF7D125
+
+I=313
+KEY=DEC45DD3C0DAD30A77A218A0AC9FCB1BE7664896163D9EAA
+CT=ACEF2AE95CA660AEE513BF48BCF7D125
+PT=859E9E4001245A50ED76055539672F1A
+
+I=314
+KEY=6F208E93D9C89CE8F23C86E0ADBB914B0A104DC32F5AB1B0
+CT=859E9E4001245A50ED76055539672F1A
+PT=42B059061FE4C86C7AC2B7C8B62820C2
+
+I=315
+KEY=86EC7CE558994E8EB08CDFE6B25F592770D2FA0B99729172
+CT=42B059061FE4C86C7AC2B7C8B62820C2
+PT=01C6296F1532450F182D6A3FC8249DD7
+
+I=316
+KEY=C74B31CEC9B31130B14AF689A76D1C2868FF903451560CA5
+CT=01C6296F1532450F182D6A3FC8249DD7
+PT=14334054946821E3FE8D72D1EF402EE1
+
+I=317
+KEY=AC636B2AD3699560A579B6DD33053DCB9672E2E5BE162244
+CT=14334054946821E3FE8D72D1EF402EE1
+PT=F09B2FE9A8F17CD847532D4979D2A8C4
+
+I=318
+KEY=6F956E3680FC783155E299349BF44113D121CFACC7C48A80
+CT=F09B2FE9A8F17CD847532D4979D2A8C4
+PT=4C97BD8822E63C7A2EE0E444563AF1C8
+
+I=319
+KEY=C69B2FB718C41B1A197524BCB9127D69FFC12BE891FE7B48
+CT=4C97BD8822E63C7A2EE0E444563AF1C8
+PT=344E85BE2C8B36430C8058B310062171
+
+I=320
+KEY=BFFA143B8A18CACF2D3BA10295994B2AF341735B81F85A39
+CT=344E85BE2C8B36430C8058B310062171
+PT=FF3F882CB22D13A8631DCA6DD702D0E0
+
+I=321
+KEY=22F58A0FC077AB5FD204292E27B45882905CB93656FA8AD9
+CT=FF3F882CB22D13A8631DCA6DD702D0E0
+PT=866B2E52CF71505973D9D6642C8178BB
+
+I=322
+KEY=DC8CE7A9130F3662546F077CE8C508DBE3856F527A7BF262
+CT=866B2E52CF71505973D9D6642C8178BB
+PT=4802741ADF67A3811A8AEC7008D8827E
+
+I=323
+KEY=743B09AA8FD3C6A01C6D736637A2AB5AF90F832272A3701C
+CT=4802741ADF67A3811A8AEC7008D8827E
+PT=FD3701579815D02BE878C74ABB98C59B
+
+I=324
+KEY=865B3EC9EFBE27D0E15A7231AFB77B7111774468C93BB587
+CT=FD3701579815D02BE878C74ABB98C59B
+PT=99BCA8250D54F3A9A72054AF5578F842
+
+I=325
+KEY=041C037E08923FFF78E6DA14A2E388D8B65710C79C434DC5
+CT=99BCA8250D54F3A9A72054AF5578F842
+PT=F0DA5C0E446547356D5027BA346A831C
+
+I=326
+KEY=FBABCE025CF5FF3D883C861AE686CFEDDB07377DA829CED9
+CT=F0DA5C0E446547356D5027BA346A831C
+PT=EED0140AF408652DD879E3289536C389
+
+I=327
+KEY=3F12399A3E5C0F9566EC9210128EAAC0037ED4553D1F0D50
+CT=EED0140AF408652DD879E3289536C389
+PT=FDC7299A95BDB941A299478B7B409EF8
+
+I=328
+KEY=D541517B701036E39B2BBB8A87331381A1E793DE465F93A8
+CT=FDC7299A95BDB941A299478B7B409EF8
+PT=5BE5AEC30578CD03BA7B17E8B16AAFBF
+
+I=329
+KEY=6657840FF425DD8AC0CE1549824BDE821B9C8436F7353C17
+CT=5BE5AEC30578CD03BA7B17E8B16AAFBF
+PT=3C7A9745F48DA61CF7875A449E24C735
+
+I=330
+KEY=52D29BBD64550DFBFCB4820C76C6789EEC1BDE726911FB22
+CT=3C7A9745F48DA61CF7875A449E24C735
+PT=69516DE0343F3552830D28CE8B9A282C
+
+I=331
+KEY=3699B16BB0349B9195E5EFEC42F94DCC6F16F6BCE28BD30E
+CT=69516DE0343F3552830D28CE8B9A282C
+PT=EB09EE300286690EA65A30526A43B86B
+
+I=332
+KEY=60E79B9E7C41814E7EEC01DC407F24C2C94CC6EE88C86B65
+CT=EB09EE300286690EA65A30526A43B86B
+PT=A235384FE517A5F455BBE6B850C05E33
+
+I=333
+KEY=11F650282BBCB584DCD93993A56881369CF72056D8083556
+CT=A235384FE517A5F455BBE6B850C05E33
+PT=41E297350390E91EC00FF875B3CA60BA
+
+I=334
+KEY=11B449F7EE983AB89D3BAEA6A6F868285CF8D8236BC255EC
+CT=41E297350390E91EC00FF875B3CA60BA
+PT=5FB9F6408D54401A9A76288AE3A04944
+
+I=335
+KEY=54CBA9A5782ED91FC28258E62BAC2832C68EF0A988621CA8
+CT=5FB9F6408D54401A9A76288AE3A04944
+PT=7C9CD2510E96FF37BF75E57E84098535
+
+I=336
+KEY=871169F28E704C95BE1E8AB7253AD70579FB15D70C6B999D
+CT=7C9CD2510E96FF37BF75E57E84098535
+PT=8E041B8C74A84D747B02714452B34F11
+
+I=337
+KEY=7F44ED6AA755957A301A913B51929A7102F964935ED8D68C
+CT=8E041B8C74A84D747B02714452B34F11
+PT=3698639F56657A40D52B9B8015448C2A
+
+I=338
+KEY=EEAF09001996BA6E0682F2A407F7E031D7D2FF134B9C5AA6
+CT=3698639F56657A40D52B9B8015448C2A
+PT=79FB5E4A065D29E1CA3E15897B60032F
+
+I=339
+KEY=D21CCA06254A64C97F79ACEE01AAC9D01DECEA9A30FC5989
+CT=79FB5E4A065D29E1CA3E15897B60032F
+PT=C582F5F8D9D2E9323C769B2B1AE369BD
+
+I=340
+KEY=29D2F84E4568BA6FBAFB5916D87820E2219A71B12A1F3034
+CT=C582F5F8D9D2E9323C769B2B1AE369BD
+PT=916405DC8F2AD50548997D87BCCADBFB
+
+I=341
+KEY=43AC4D54A8A0222F2B9F5CCA5752F5E769030C3696D5EBCF
+CT=916405DC8F2AD50548997D87BCCADBFB
+PT=0E9FF0E147A47056EC6B09837C9E0E62
+
+I=342
+KEY=9AF110B8274794772500AC2B10F685B1856805B5EA4BE5AD
+CT=0E9FF0E147A47056EC6B09837C9E0E62
+PT=3B6E3CAAC358427980E66E3D30D39E4F
+
+I=343
+KEY=49F910E7957BC95C1E6E9081D3AEC7C8058E6B88DA987BE2
+CT=3B6E3CAAC358427980E66E3D30D39E4F
+PT=25CBE5AB4C6785C0F2847CF89F2635AB
+
+I=344
+KEY=64D90092DD97AC3C3BA5752A9FC94208F70A177045BE4E49
+CT=25CBE5AB4C6785C0F2847CF89F2635AB
+PT=3D9200D39461D8B2CE7874DA20BFD9DA
+
+I=345
+KEY=C7A8403AFB011673063775F90BA89ABA397263AA65019793
+CT=3D9200D39461D8B2CE7874DA20BFD9DA
+PT=E61E7E06A1E1F656AE8F8C29C96E5A16
+
+I=346
+KEY=071AF635AF7A9602E0290BFFAA496CEC97FDEF83AC6FCD85
+CT=E61E7E06A1E1F656AE8F8C29C96E5A16
+PT=7488BB35F06E94F31A744D1EA95E71D0
+
+I=347
+KEY=A4B5ECB7047E08D694A1B0CA5A27F81F8D89A29D0531BC55
+CT=7488BB35F06E94F31A744D1EA95E71D0
+PT=3912DC00C0AB79C473CA2CC8F69262F0
+
+I=348
+KEY=BD4478B38A0E9347ADB36CCA9A8C81DBFE438E55F3A3DEA5
+CT=3912DC00C0AB79C473CA2CC8F69262F0
+PT=C4B546F134A016DADA8E7C478B1E7D45
+
+I=349
+KEY=F7B6F476517483AD69062A3BAE2C970124CDF21278BDA3E0
+CT=C4B546F134A016DADA8E7C478B1E7D45
+PT=298524C5D468EBFA97DEFEC7B80EE752
+
+I=350
+KEY=8E0C5244F7417C2440830EFE7A447CFBB3130CD5C0B344B2
+CT=298524C5D468EBFA97DEFEC7B80EE752
+PT=B27EFB90BA3A27A1077C6742D5B68396
+
+I=351
+KEY=C6E8F264FA0C9A9AF2FDF56EC07E5B5AB46F6B971505C724
+CT=B27EFB90BA3A27A1077C6742D5B68396
+PT=D02C27A94DD3B772B338C7462379B009
+
+I=352
+KEY=AD694D243DCC6B7B22D1D2C78DADEC280757ACD1367C772D
+CT=D02C27A94DD3B772B338C7462379B009
+PT=1CED06084E67BA4BAD3C331F4074B9FF
+
+I=353
+KEY=68AEF48D86D395583E3CD4CFC3CA5663AA6B9FCE7608CED2
+CT=1CED06084E67BA4BAD3C331F4074B9FF
+PT=C0D7811FE8630B3E7C3A60DA9042A6B2
+
+I=354
+KEY=670A8D40573F598AFEEB55D02BA95D5DD651FF14E64A6860
+CT=C0D7811FE8630B3E7C3A60DA9042A6B2
+PT=45F92C84CE2AEC6E7953C8AAC5901D0F
+
+I=355
+KEY=D44FD97B0D59C923BB127954E583B133AF0237BE23DA756F
+CT=45F92C84CE2AEC6E7953C8AAC5901D0F
+PT=23A4863C994EFE93E7CE1C89FE14143D
+
+I=356
+KEY=4E08C6A539C74A6598B6FF687CCD4FA048CC2B37DDCE6152
+CT=23A4863C994EFE93E7CE1C89FE14143D
+PT=85EB5F46988211E3077FDBE38F1EBE6B
+
+I=357
+KEY=21B17D5E461224B31D5DA02EE44F5E434FB3F0D452D0DF39
+CT=85EB5F46988211E3077FDBE38F1EBE6B
+PT=59CF6CCC81A8BC17A52D7550B40C7514
+
+I=358
+KEY=6CC595309F161F3E4492CCE265E7E254EA9E8584E6DCAA2D
+CT=59CF6CCC81A8BC17A52D7550B40C7514
+PT=13DF4C2AA74A4B9123B3A57FE94F85BE
+
+I=359
+KEY=77B90151B41B1B7D574D80C8C2ADA9C5C92D20FB0F932F93
+CT=13DF4C2AA74A4B9123B3A57FE94F85BE
+PT=6DEDE53AD5DC2A87744DA0EA561977A3
+
+I=360
+KEY=8E1683C57C1817C23AA065F217718342BD608011598A5830
+CT=6DEDE53AD5DC2A87744DA0EA561977A3
+PT=F9D912AAB5ED1ACBD0475411DF98F49C
+
+I=361
+KEY=E9FDD94AE4B4FABAC3797758A29C99896D27D4008612ACAC
+CT=F9D912AAB5ED1ACBD0475411DF98F49C
+PT=853C907D9FD35B61D2ABBE5C1A89DB4B
+
+I=362
+KEY=BCC524DF4D452AE14645E7253D4FC2E8BF8C6A5C9C9B77E7
+CT=853C907D9FD35B61D2ABBE5C1A89DB4B
+PT=874C4BC1993FBA12136443B57F9523BE
+
+I=363
+KEY=9F5EFA7196589240C109ACE4A47078FAACE829E9E30E5459
+CT=874C4BC1993FBA12136443B57F9523BE
+PT=E6B6E9133DD0EC2844EF3CC0C2F9E4AC
+
+I=364
+KEY=2F0731DB4FA3024127BF45F799A094D2E807152921F7B0F5
+CT=E6B6E9133DD0EC2844EF3CC0C2F9E4AC
+PT=20B41EE01134041DF8D11BB7F86928EA
+
+I=365
+KEY=7E44D240F06AAA5E070B5B17889490CF10D60E9ED99E981F
+CT=20B41EE01134041DF8D11BB7F86928EA
+PT=BF6B03096DCDC052B1325CC34BF6E56C
+
+I=366
+KEY=D8D3E3D538C8CA34B860581EE559509DA1E4525D92687D73
+CT=BF6B03096DCDC052B1325CC34BF6E56C
+PT=5ED3E40FB5C34DD1F370C3AD72C7C24D
+
+I=367
+KEY=F3DF20767CDA5E0CE6B3BC11509A1D4C529491F0E0AFBF3E
+CT=5ED3E40FB5C34DD1F370C3AD72C7C24D
+PT=3EA6BCE2317C5D696DF8240C481B34DD
+
+I=368
+KEY=484932A15D75173FD81500F361E640253F6CB5FCA8B48BE3
+CT=3EA6BCE2317C5D696DF8240C481B34DD
+PT=41D6E077746FE1A9307E1107631A5D2C
+
+I=369
+KEY=EF960956685DE1CE99C3E0841589A18C0F12A4FBCBAED6CF
+CT=41D6E077746FE1A9307E1107631A5D2C
+PT=D0C6DDEF0A623686BA303C278D445964
+
+I=370
+KEY=82477D8D682C1D4849053D6B1FEB970AB52298DC46EA8FAB
+CT=D0C6DDEF0A623686BA303C278D445964
+PT=EEFFA6025D6CAFBF9DC18E5B1B99A6ED
+
+I=371
+KEY=15D8DCF80A26856AA7FA9B69428738B528E316875D732946
+CT=EEFFA6025D6CAFBF9DC18E5B1B99A6ED
+PT=38E222ABAA07CDAE9CC02FAC84EC0FC1
+
+I=372
+KEY=556151278277D7579F18B9C2E880F51BB423392BD99F2687
+CT=38E222ABAA07CDAE9CC02FAC84EC0FC1
+PT=B00C719E6A320E4385794EB7F23C0D80
+
+I=373
+KEY=777F91003E4410572F14C85C82B2FB58315A779C2BA32B07
+CT=B00C719E6A320E4385794EB7F23C0D80
+PT=0E667CA932023D2EFD8DDBDED5A43D78
+
+I=374
+KEY=130507FC817F14432172B4F5B0B0C676CCD7AC42FE07167F
+CT=0E667CA932023D2EFD8DDBDED5A43D78
+PT=6B15DA892F0B5916F31BB74FC7D03F9A
+
+I=375
+KEY=D045A84BBF62DE2E4A676E7C9FBB9F603FCC1B0D39D729E5
+CT=6B15DA892F0B5916F31BB74FC7D03F9A
+PT=EBEF6DC298D63BF6E6E46F833B217033
+
+I=376
+KEY=7742FB68CDF60735A18803BE076DA496D928748E02F659D6
+CT=EBEF6DC298D63BF6E6E46F833B217033
+PT=48DC6F65F193AFCCE559EA6F04FBD79A
+
+I=377
+KEY=5CE32BC22C77B664E9546CDBF6FE0B5A3C719EE1060D8E4C
+CT=48DC6F65F193AFCCE559EA6F04FBD79A
+PT=D0596880F92716C51E41519C640AEFDA
+
+I=378
+KEY=2DA6B73C5131E24C390D045B0FD91D9F2230CF7D62076196
+CT=D0596880F92716C51E41519C640AEFDA
+PT=ABB7C3E499086F53C4DB97640168943B
+
+I=379
+KEY=E41C1A826978491892BAC7BF96D172CCE6EB5819636FF5AD
+CT=ABB7C3E499086F53C4DB97640168943B
+PT=0CC58B3D0370317E1025E1AF97962646
+
+I=380
+KEY=501012EE411DCDC59E7F4C8295A143B2F6CEB9B6F4F9D3EB
+CT=0CC58B3D0370317E1025E1AF97962646
+PT=28920AED2B644C4346FC146903887244
+
+I=381
+KEY=97B7E8C1147A5062B6ED466FBEC50FF1B032ADDFF771A1AF
+CT=28920AED2B644C4346FC146903887244
+PT=E7A28DA5EC871DAF8C2D196C7ED8977F
+
+I=382
+KEY=988B9928402BCD63514FCBCA5242125E3C1FB4B389A936D0
+CT=E7A28DA5EC871DAF8C2D196C7ED8977F
+PT=013876A92413AED2E360A241FE021B25
+
+I=383
+KEY=3432357430ACC9135077BD637651BC8CDF7F16F277AB2DF5
+CT=013876A92413AED2E360A241FE021B25
+PT=10F1A56A8CFDA1D5044D5D0E53F6A773
+
+I=384
+KEY=CE94F859CD3E85F440861809FAAC1D59DB324BFC245D8A86
+CT=10F1A56A8CFDA1D5044D5D0E53F6A773
+PT=941C717EE6642DD474719F099AEEB1EB
+
+I=385
+KEY=A1BFA52EA232FDF0D49A69771CC8308DAF43D4F5BEB33B6D
+CT=941C717EE6642DD474719F099AEEB1EB
+PT=F31B47230ABC94977E14E1080528C1C9
+
+I=386
+KEY=37B36A8E7A3B4F2A27812E541674A41AD15735FDBB9BFAA4
+CT=F31B47230ABC94977E14E1080528C1C9
+PT=A91264221890CA93541B662F64A11C62
+
+I=387
+KEY=04F603F98A9D1AC78E934A760EE46E89854C53D2DF3AE6C6
+CT=A91264221890CA93541B662F64A11C62
+PT=05F5171B639825EC67A37B3671F2F884
+
+I=388
+KEY=A294EBBBD53D18DD8B665D6D6D7C4B65E2EF28E4AEC81E42
+CT=05F5171B639825EC67A37B3671F2F884
+PT=B6FE84EB2987DE956953DEBA6FD2E029
+
+I=389
+KEY=E0E38A82F60E8EED3D98D98644FB95F08BBCF65EC11AFE6B
+CT=B6FE84EB2987DE956953DEBA6FD2E029
+PT=2741338CF00FBC70C4B1C67C97E85B97
+
+I=390
+KEY=2193D386143F6D761AD9EA0AB4F429804F0D302256F2A5FC
+CT=2741338CF00FBC70C4B1C67C97E85B97
+PT=E56C7C453E2E13028AD812F9CDB78E2F
+
+I=391
+KEY=05AD3BC4F1B29F17FFB5964F8ADA3A82C5D522DB9B452BD3
+CT=E56C7C453E2E13028AD812F9CDB78E2F
+PT=9A9B49AC0691F1576D515E935F042229
+
+I=392
+KEY=1588C005075F4674652EDFE38C4BCBD5A8847C48C44109FA
+CT=9A9B49AC0691F1576D515E935F042229
+PT=143E5F64AD38373D3B54FA24CC7C0AF5
+
+I=393
+KEY=731083CCCB22E7CF711080872173FCE893D0866C083D030F
+CT=143E5F64AD38373D3B54FA24CC7C0AF5
+PT=61F6AF426601588CB7C525255EC1A06D
+
+I=394
+KEY=DACEE3906B98DFC110E62FC54772A4642415A34956FCA362
+CT=61F6AF426601588CB7C525255EC1A06D
+PT=DB5DC1C3B3413F653D72F8744C2DD881
+
+I=395
+KEY=D9ACA0F56DCA4FC0CBBBEE06F4339B0119675B3D1AD17BE3
+CT=DB5DC1C3B3413F653D72F8744C2DD881
+PT=4E9D548DA49E992AD3123F53558909C9
+
+I=396
+KEY=12C2FE0C57D21C208526BA8B50AD022BCA75646E4F58722A
+CT=4E9D548DA49E992AD3123F53558909C9
+PT=EB2E835192E64ABC30C3F2662B703C47
+
+I=397
+KEY=7A43322D6174BA786E0839DAC24B4897FAB6960864284E6D
+CT=EB2E835192E64ABC30C3F2662B703C47
+PT=CD0690863F63F2B263D4C11190A7985B
+
+I=398
+KEY=EBC6D71978D39185A30EA95CFD28BA2599625719F48FD636
+CT=CD0690863F63F2B263D4C11190A7985B
+PT=C044E800B65CA78559D0642C370C7D3E
+
+I=399
+KEY=A1B6CE2EEC5FC386634A415C4B741DA0C0B23335C383AB08
+CT=C044E800B65CA78559D0642C370C7D3E
+PT=F1A81B68F6E5A6271A8CB24E7D9491EF
+
+==========
+
+KEYSIZE=256
+
+I=0
+KEY=0000000000000000000000000000000000000000000000000000000000000000
+CT=00000000000000000000000000000000
+PT=058CCFFDBBCB382D1F6F56585D8A4ADE
+
+I=1
+KEY=85C6B2BB2300148F945AEBF1F021CF79058CCFFDBBCB382D1F6F56585D8A4ADE
+CT=058CCFFDBBCB382D1F6F56585D8A4ADE
+PT=15173A0EB65F5CC05E704EFE61D9E346
+
+I=2
+KEY=2447EC44111548FBB670B98F182D5DEE109BF5F30D9464ED411F18A63C53A998
+CT=15173A0EB65F5CC05E704EFE61D9E346
+PT=85F083ACC676D91EDD1ABFB43935237A
+
+I=3
+KEY=85D3E1D750CAA89BEE274AA7C32C2207956B765FCBE2BDF39C05A71205668AE2
+CT=85F083ACC676D91EDD1ABFB43935237A
+PT=42C8F0ABC58E0BEAC32911D2DD9FA8C8
+
+I=4
+KEY=CE86B24954745B2BAAF27010202EE7FAD7A386F40E6CB6195F2CB6C0D8F9222A
+CT=42C8F0ABC58E0BEAC32911D2DD9FA8C8
+PT=5E44123D2CA07981B073BB2749F557D6
+
+I=5
+KEY=CD7BCBBA4555A0D034FD7B528A1D042C89E794C922CCCF98EF5F0DE7910C75FC
+CT=5E44123D2CA07981B073BB2749F557D6
+PT=8B649458EA90F4F7E13467E509B7F164
+
+I=6
+KEY=EF28DFAED7794B1C7B892F3C98FCDC9602830091C85C3B6F0E6B6A0298BB8498
+CT=8B649458EA90F4F7E13467E509B7F164
+PT=F240D1F579DA2CA8839F7072DF52EBA3
+
+I=7
+KEY=C66605EC92F96B49F08CBC6276A0DC68F0C3D164B18617C78DF41A7047E96F3B
+CT=F240D1F579DA2CA8839F7072DF52EBA3
+PT=B05297490A394B4A1736DE7F8DC12969
+
+I=8
+KEY=347403B6E6344E1525B8D2BD4DCA343F4091462DBBBF5C8D9AC2C40FCA284652
+CT=B05297490A394B4A1736DE7F8DC12969
+PT=8BA49D44B98E67501235CE1C2F26BB28
+
+I=9
+KEY=B932CD0C70488602C56F92A0DA57BE27CB35DB6902313BDD88F70A13E50EFD7A
+CT=8BA49D44B98E67501235CE1C2F26BB28
+PT=86CE4E4D040C49F2717407157454162E
+
+I=10
+KEY=28F8B6B4AB2B0B81F3676F6E422D438C4DFB9524063D722FF9830D06915AEB54
+CT=86CE4E4D040C49F2717407157454162E
+PT=4E9CA7FB0FF9F38FC821CA91052483F9
+
+I=11
+KEY=5CD19F4D3C5B58602B101E15B39F51E4036732DF09C481A031A2C797947E68AD
+CT=4E9CA7FB0FF9F38FC821CA91052483F9
+PT=55E49ED59245C1850CB0C17C1CEEA05E
+
+I=12
+KEY=E822BB0D1F25F3DCA6FE0CB1A8AF39F15683AC0A9B8140253D1206EB8890C8F3
+CT=55E49ED59245C1850CB0C17C1CEEA05E
+PT=F7F0BFA319AC289C9F64E6FCDD531B44
+
+I=13
+KEY=8B64FF354C6E303F14EA34C9F667FEC9A17313A9822D68B9A276E01755C3D3B7
+CT=F7F0BFA319AC289C9F64E6FCDD531B44
+PT=6ACB8A177226AE47E2170F77D2FE4923
+
+I=14
+KEY=1A9D440EBAC3F3625E229B66C5D9249CCBB899BEF00BC6FE4061EF60873D9A94
+CT=6ACB8A177226AE47E2170F77D2FE4923
+PT=BAA9BB819332A87D6004164927EAC699
+
+I=15
+KEY=97F92B9AD44A3182FF10E07747C560B37111223F63396E832065F929A0D75C0D
+CT=BAA9BB819332A87D6004164927EAC699
+PT=EB84793E2D68632900B0517392EC4B94
+
+I=16
+KEY=2AEEBA2AC59870A7B4274B80FE74D55A9A955B014E510DAA20D5A85A323B1799
+CT=EB84793E2D68632900B0517392EC4B94
+PT=6C662FBE2B22394CC1D45453772C72BA
+
+I=17
+KEY=EEA4B3C4F96C42E3B7DF5A3870C85B69F6F374BF657334E6E101FC0945176523
+CT=6C662FBE2B22394CC1D45453772C72BA
+PT=70D2BBC1FA7D49848D94112DA93A3C3C
+
+I=18
+KEY=F930D1529C654F31549809C6CD5CC4608621CF7E9F0E7D626C95ED24EC2D591F
+CT=70D2BBC1FA7D49848D94112DA93A3C3C
+PT=1AFF91E67039133946638E4E505310C2
+
+I=19
+KEY=5D0F461C1A5FF7BA5C93F0CED9DD49FF9CDE5E98EF376E5B2AF6636ABC7E49DD
+CT=1AFF91E67039133946638E4E505310C2
+PT=8E4358B22DE7BCDC8B8409E6250633BF
+
+I=20
+KEY=AA4B475845EB19F601856A40AB517594129D062AC2D0D287A1726A8C99787A62
+CT=8E4358B22DE7BCDC8B8409E6250633BF
+PT=2A79FE5A222C9503954346D6C15AC679
+
+I=21
+KEY=9703F4DD85A3BE85343FFD15950A266B38E4F870E0FC478434312C5A5822BC1B
+CT=2A79FE5A222C9503954346D6C15AC679
+PT=0FF812C5B863282C294D7069F830EE86
+
+I=22
+KEY=3DD1B2ACBC6568851E767D20D82AD324371CEAB5589F6FA81D7C5C33A012529D
+CT=0FF812C5B863282C294D7069F830EE86
+PT=D449218625DE49D2B9514E032CA096E7
+
+I=23
+KEY=95CC16235D3DFF4F7DB2116D2B380F39E355CB337D41267AA42D12308CB2C47A
+CT=D449218625DE49D2B9514E032CA096E7
+PT=F951EAC3BC78DB0AE13FDC33048D2D81
+
+I=24
+KEY=A6F55AFBDA7EA939F6F2A28530C416781A0421F0C139FD704512CE03883FE9FB
+CT=F951EAC3BC78DB0AE13FDC33048D2D81
+PT=7D5A03A955F6403F918AC915AC22B797
+
+I=25
+KEY=7C5D39885F4C0F4FCF672321B711C5B7675E225994CFBD4FD4980716241D5E6C
+CT=7D5A03A955F6403F918AC915AC22B797
+PT=CA2E1C274073AD2A3AE35C60ECA52A58
+
+I=26
+KEY=4E7B914B84BFA1A2D7BD409AFADD2EDCAD703E7ED4BC1065EE7B5B76C8B87434
+CT=CA2E1C274073AD2A3AE35C60ECA52A58
+PT=C5048FA0148CED10A06E107269DA9C95
+
+I=27
+KEY=F62D8C4822C5F89D51E3C68695D91CA66874B1DEC030FD754E154B04A162E8A1
+CT=C5048FA0148CED10A06E107269DA9C95
+PT=CB9B457A7A24577DA71AC335F0572DAB
+
+I=28
+KEY=C37AAD7CB20087F4B98390C59D3ECFB2A3EFF4A4BA14AA08E90F88315135C50A
+CT=CB9B457A7A24577DA71AC335F0572DAB
+PT=FA60BFF170DD30C29DF1807C1612CD67
+
+I=29
+KEY=1A2C6858B37D0341BF8796FB72D00B72598F4B55CAC99ACA74FE084D4727086D
+CT=FA60BFF170DD30C29DF1807C1612CD67
+PT=E2FACFB5DF4E69C911838FCC546D0C8E
+
+I=30
+KEY=039B73E3A8DCF3C678FBC246AAECDAECBB7584E01587F303657D8781134A04E3
+CT=E2FACFB5DF4E69C911838FCC546D0C8E
+PT=749AB2B9176AFDB8B6714DF44BBF2B58
+
+I=31
+KEY=773D90EA7ECA29DFD9141A42EB2BBC64CFEF365902ED0EBBD30CCA7558F52FBB
+CT=749AB2B9176AFDB8B6714DF44BBF2B58
+PT=0285E58D09A8D33FB196FD16A8DF37C0
+
+I=32
+KEY=598262B046B44784D977F6BE2553C6ACCD6AD3D40B45DD84629A3763F02A187B
+CT=0285E58D09A8D33FB196FD16A8DF37C0
+PT=1C952C46AE829D8805031A44F9D85521
+
+I=33
+KEY=AFAE657D3220CD1E6199A49754525F4AD1FFFF92A5C7400C67992D2709F24D5A
+CT=1C952C46AE829D8805031A44F9D85521
+PT=EED0A47E63FF354B4D9C53F7FD75D720
+
+I=34
+KEY=A61F583BCFD120B8CABE1E4C616F4FC73F2F5BECC63875472A057ED0F4879A7A
+CT=EED0A47E63FF354B4D9C53F7FD75D720
+PT=10C1F0F7C32AD36F03AEA8DCE6AAE7BC
+
+I=35
+KEY=FB76D4B83A7F50482A92F5A92CB60F522FEEAB1B0512A62829ABD60C122D7DC6
+CT=10C1F0F7C32AD36F03AEA8DCE6AAE7BC
+PT=372488DF6543180F1F2AE15E5B0C8785
+
+I=36
+KEY=35EAC2BA73F55570CB727220C027FE6218CA23C46051BE27368137524921FA43
+CT=372488DF6543180F1F2AE15E5B0C8785
+PT=3DE420FF3699D68DB69966F57D09045A
+
+I=37
+KEY=48B6E08B9FD9B5C130E1829CD4540D9C252E033B56C868AA801851A73428FE19
+CT=3DE420FF3699D68DB69966F57D09045A
+PT=7858F396DC520131C789CB8F8C919CCD
+
+I=38
+KEY=DB39C13F29241FF29C5BEB839705AD5B5D76F0AD8A9A699B47919A28B8B962D4
+CT=7858F396DC520131C789CB8F8C919CCD
+PT=07BE8BBF9FCD7D04888E61935DD7222F
+
+I=39
+KEY=A5F9B675531AB58C1FFC316C9359EA335AC87B121557149FCF1FFBBBE56E40FB
+CT=07BE8BBF9FCD7D04888E61935DD7222F
+PT=EDD619B7C12E2AF6BDAA953B2E7871EF
+
+I=40
+KEY=A02D1F14A64BBC67DD7EE9EAB3FB0EADB71E62A5D4793E6972B56E80CB163114
+CT=EDD619B7C12E2AF6BDAA953B2E7871EF
+PT=C748CDB645F1A1E44A63FAF00B2C3A45
+
+I=41
+KEY=177D7A6843B5ABBEB212E68734A7A05C7056AF1391889F8D38D69470C03A0B51
+CT=C748CDB645F1A1E44A63FAF00B2C3A45
+PT=BD3ED4C8CD7DBF4299AC63FE119D291E
+
+I=42
+KEY=BD9BDC6BD09DEED3E75C918BE55E5332CD687BDB5CF520CFA17AF78ED1A7224F
+CT=BD3ED4C8CD7DBF4299AC63FE119D291E
+PT=A16B82F958441E90A965427C854EECBB
+
+I=43
+KEY=E6325C33EC76F8EDE02707A3AE82F1096C03F92204B13E5F081FB5F254E9CEF4
+CT=A16B82F958441E90A965427C854EECBB
+PT=E04E642689D1AB78E7CDE26D0563901C
+
+I=44
+KEY=B8543DB3071AB9F0802D4106FBDA59648C4D9D048D609527EFD2579F518A5EE8
+CT=E04E642689D1AB78E7CDE26D0563901C
+PT=08E59C72C13C030DA3C50300861EA097
+
+I=45
+KEY=ECDD43A6B225DB325BFFE5462B66E97884A801764C5C962A4C17549FD794FE7F
+CT=08E59C72C13C030DA3C50300861EA097
+PT=C224B2EFEE07AAC33F1F6EB1295D9A50
+
+I=46
+KEY=741D627C8B47BED4497C71FDC9854912468CB399A25B3CE973083A2EFEC9642F
+CT=C224B2EFEE07AAC33F1F6EB1295D9A50
+PT=1653CE734D27B44369D4FE582E7A885F
+
+I=47
+KEY=A47BDC62B1D80815AC6BF04481C5601F50DF7DEAEF7C88AA1ADCC476D0B3EC70
+CT=1653CE734D27B44369D4FE582E7A885F
+PT=CADC89828B6147FAEC581DDCFF3C0960
+
+I=48
+KEY=CB91E738F51C111DAC2E0A3BF7B076A39A03F468641DCF50F684D9AA2F8FE510
+CT=CADC89828B6147FAEC581DDCFF3C0960
+PT=49402F0F4AFA2518D57C5D1CFCECC0F2
+
+I=49
+KEY=BDA1FFAEE7B93EDFCA4374871A149550D343DB672EE7EA4823F884B6D36325E2
+CT=49402F0F4AFA2518D57C5D1CFCECC0F2
+PT=EBFF53AB449DE5A53EDC6E595AA47B10
+
+I=50
+KEY=18D865B8E8C779268D3876C22AF479FB38BC88CC6A7A0FED1D24EAEF89C75EF2
+CT=EBFF53AB449DE5A53EDC6E595AA47B10
+PT=30073458509F9AC9DA21B2DF566AB3BE
+
+I=51
+KEY=967E2580238300563A34A6E70D84B4FF08BBBC943AE59524C7055830DFADED4C
+CT=30073458509F9AC9DA21B2DF566AB3BE
+PT=5AB9F90CC2A7603A68E2ACA95A2DE55D
+
+I=52
+KEY=A469A4E2F0B3847F3B52886FAD7DBAF652024598F842F51EAFE7F49985800811
+CT=5AB9F90CC2A7603A68E2ACA95A2DE55D
+PT=F22A13F395B6064172CA9DC572C26B2E
+
+I=53
+KEY=9EA4946ED73FF8BB8700C18967C01968A028566B6DF4F35FDD2D695CF742633F
+CT=F22A13F395B6064172CA9DC572C26B2E
+PT=26E44B9F3DEBA8EE3531DDFA42F1DC14
+
+I=54
+KEY=3D25EEEACEF18702FD3896283CFF8A8386CC1DF4501F5BB1E81CB4A6B5B3BF2B
+CT=26E44B9F3DEBA8EE3531DDFA42F1DC14
+PT=32D9F05174FFF34594E952B7ADE09737
+
+I=55
+KEY=8BF2A692F6A35980C0CF02FF4650871BB415EDA524E0A8F47CF5E6111853281C
+CT=32D9F05174FFF34594E952B7ADE09737
+PT=7BEF027DEB1FF22774CE8A8A101DD41B
+
+I=56
+KEY=C90BF0E1A8B615B4C8BD318260BB80AECFFAEFD8CFFF5AD3083B6C9B084EFC07
+CT=7BEF027DEB1FF22774CE8A8A101DD41B
+PT=CF6B2444DFBBFE5B6A1CA99F2D13DE9A
+
+I=57
+KEY=C2A4C82B4AAEE0A22315026C6FE396900091CB9C1044A4886227C504255D229D
+CT=CF6B2444DFBBFE5B6A1CA99F2D13DE9A
+PT=14AD8C7B0F0460A3F48D5CD2CFFB385C
+
+I=58
+KEY=BF76E610192E2AEF42FF8F487CDDC318143C47E71F40C42B96AA99D6EAA61AC1
+CT=14AD8C7B0F0460A3F48D5CD2CFFB385C
+PT=A5A850FC44A09C5985CE9661AF84F186
+
+I=59
+KEY=1E42AEC368C600F18CBFA305EB559946B194171B5BE0587213640FB74522EB47
+CT=A5A850FC44A09C5985CE9661AF84F186
+PT=E2895D416951FDA66B695ABFA313F89D
+
+I=60
+KEY=4E9BC121E32849DAA501BEA4E534D9C2531D4A5A32B1A5D4780D5508E63113DA
+CT=E2895D416951FDA66B695ABFA313F89D
+PT=91E93AAECC5FB253F7463F101B2A4132
+
+I=61
+KEY=ACC045A67F680F14D3F8DA454C922071C2F470F4FEEE17878F4B6A18FD1B52E8
+CT=91E93AAECC5FB253F7463F101B2A4132
+PT=F0F339022B4001E72F3BCC1A140603AD
+
+I=62
+KEY=4B47D2639B4A04D3C87D35DB4E63E563320749F6D5AE1660A070A602E91D5145
+CT=F0F339022B4001E72F3BCC1A140603AD
+PT=DBECAFF90EDD4555A5D9A23817520D51
+
+I=63
+KEY=C73B1C617BE90F2710DFF2C3AC60E0F9E9EBE60FDB73533505A9043AFE4F5C14
+CT=DBECAFF90EDD4555A5D9A23817520D51
+PT=73315A63A8889095AFED497AEFE657B4
+
+I=64
+KEY=7F368758F7B303DE356481ED8EBFA46F9ADABC6C73FBC3A0AA444D4011A90BA0
+CT=73315A63A8889095AFED497AEFE657B4
+PT=3AB7E2F81D24D857308A1FC785559333
+
+I=65
+KEY=6D7EF76412498AB3C70AA3006CC87188A06D5E946EDF1BF79ACE528794FC9893
+CT=3AB7E2F81D24D857308A1FC785559333
+PT=7EAA2814E372F674AB0B6E0E428D1AF4
+
+I=66
+KEY=D626AD50A7B86153BF9215A6A8F7E908DEC776808DADED8331C53C89D6718267
+CT=7EAA2814E372F674AB0B6E0E428D1AF4
+PT=ADD212A59AC9EF6A55AEAC22D35A1BFE
+
+I=67
+KEY=4B9C7ED9AC7835C87DAB8BEF3ED6878B73156425176402E9646B90AB052B9999
+CT=ADD212A59AC9EF6A55AEAC22D35A1BFE
+PT=203ECD34AE1BB2F23BC673DBD74FA07B
+
+I=68
+KEY=E34FBDEF9D81B464DD1138093F132051532BA911B97FB01B5FADE370D26439E2
+CT=203ECD34AE1BB2F23BC673DBD74FA07B
+PT=0A18AFD5EEBBD338299897EA1F01324C
+
+I=69
+KEY=77BD51D39775121C22343FFC66D40F0B593306C457C463237635749ACD650BAE
+CT=0A18AFD5EEBBD338299897EA1F01324C
+PT=2892A6AE9517642A0977942360FB8104
+
+I=70
+KEY=2761BF5478726AF184C86B45AE331A7E71A1A06AC2D307097F42E0B9AD9E8AAA
+CT=2892A6AE9517642A0977942360FB8104
+PT=8A4CD7685B9A1E663C3130C34BC418B9
+
+I=71
+KEY=DD168B81E90D806FF468BE5E551F3344FBED77029949196F4373D07AE65A9213
+CT=8A4CD7685B9A1E663C3130C34BC418B9
+PT=C7C0A15A1A22363B378D5DD27A69D4C2
+
+I=72
+KEY=3442C07C0E98F523F9278D934F424BD83C2DD658836B2F5474FE8DA89C3346D1
+CT=C7C0A15A1A22363B378D5DD27A69D4C2
+PT=55A8EF8CAE213FE3FD6AA77E7415400A
+
+I=73
+KEY=291BD1577921B2947BC470C19727F0BD698539D42D4A10B789942AD6E82606DB
+CT=55A8EF8CAE213FE3FD6AA77E7415400A
+PT=0B07BEB71461356645936996AC45EB87
+
+I=74
+KEY=46475B4C21F0F4895FEFCC67632DBCDC62828763392B25D1CC0743404463ED5C
+CT=0B07BEB71461356645936996AC45EB87
+PT=6DFA5978F740C18CEE6F70FF50008BFD
+
+I=75
+KEY=CF89BDDE5D363B3C44DB6FED2DAB47AA0F78DE1BCE6BE45D226833BF146366A1
+CT=6DFA5978F740C18CEE6F70FF50008BFD
+PT=6F58747F0336A2C4D2A397511E06D703
+
+I=76
+KEY=85F7D4A4503F7C3D52998384F8B29BEF6020AA64CD5D4699F0CBA4EE0A65B1A2
+CT=6F58747F0336A2C4D2A397511E06D703
+PT=32AC7B1B8FFA7D411F46C129EEFFAF13
+
+I=77
+KEY=CDE87D2DFB6198CFC737D93433419757528CD17F42A73BD8EF8D65C7E49A1EB1
+CT=32AC7B1B8FFA7D411F46C129EEFFAF13
+PT=CF5D039714814E72ECE7B9D5D1B27D11
+
+I=78
+KEY=BCB9F75F11496AABFE2633E393B59B449DD1D2E8562675AA036ADC12352863A0
+CT=CF5D039714814E72ECE7B9D5D1B27D11
+PT=3455F997002A1818967E2679A07C1D56
+
+I=79
+KEY=99E143B3524E724A009533AEC659E15BA9842B7F560C6DB29514FA6B95547EF6
+CT=3455F997002A1818967E2679A07C1D56
+PT=1F2113D44E290F1379A3CEC6D57D6279
+
+I=80
+KEY=90086C83794D6878FF2CE748ECA6EDF4B6A538AB182562A1ECB734AD40291C8F
+CT=1F2113D44E290F1379A3CEC6D57D6279
+PT=88866DB676AA3B21954AFDE0A0F33007
+
+I=81
+KEY=FA254EB868F6CD5965346ACAE326BD2A3E23551D6E8F598079FDC94DE0DA2C88
+CT=88866DB676AA3B21954AFDE0A0F33007
+PT=A1665AD0252764E2691E65FEFB609CDA
+
+I=82
+KEY=92032C92FEEB0A5CD5D71AAF1BF5F47D9F450FCD4BA83D6210E3ACB31BBAB052
+CT=A1665AD0252764E2691E65FEFB609CDA
+PT=988CE348430A206546379A8C684C00F1
+
+I=83
+KEY=CF32144187F7B98256B5B4204DFABC8807C9EC8508A21D0756D4363F73F6B0A3
+CT=988CE348430A206546379A8C684C00F1
+PT=60289F0B6A9ADD08BF8924AA6D7F4D12
+
+I=84
+KEY=A7BD244360E3C325F3EA315C86959DD867E1738E6238C00FE95D12951E89FDB1
+CT=60289F0B6A9ADD08BF8924AA6D7F4D12
+PT=FA3EA122499D7E083D81F147D9D68B09
+
+I=85
+KEY=86213610EDC35A883A3364E8D529C6459DDFD2AC2BA5BE07D4DCE3D2C75F76B8
+CT=FA3EA122499D7E083D81F147D9D68B09
+PT=8E0B2452EF0515FC554A0AADF107714D
+
+I=86
+KEY=92CC3AE4A2A68CD93634075E902C66CB13D4F6FEC4A0ABFB8196E97F365807F5
+CT=8E0B2452EF0515FC554A0AADF107714D
+PT=463CEAE83A50BA54280E792AB6B29B94
+
+I=87
+KEY=6D86FA00DBB949A29D4A6166F1EF531E55E81C16FEF011AFA998905580EA9C61
+CT=463CEAE83A50BA54280E792AB6B29B94
+PT=416CA710B874E50CC98DF842B3435AD1
+
+I=88
+KEY=C9400C98A04F5041BE1C6090A866F7DA1484BB064684F4A36015681733A9C6B0
+CT=416CA710B874E50CC98DF842B3435AD1
+PT=3BA8BB5C572C0404E4B8199528825904
+
+I=89
+KEY=ED5043E9699B37844033E8BD170588342F2C005A11A8F0A784AD71821B2B9FB4
+CT=3BA8BB5C572C0404E4B8199528825904
+PT=1D2812DE70AA2D59894DA4DA7FE906FC
+
+I=90
+KEY=1964C6C301EEEF60B34E8E35175CAF8D320412846102DDFE0DE0D55864C29948
+CT=1D2812DE70AA2D59894DA4DA7FE906FC
+PT=2735CAAFE653442FFC2E878AE2829998
+
+I=91
+KEY=567B1E0737D0F72F82EB3A47D17209191531D82B875199D1F1CE52D2864000D0
+CT=2735CAAFE653442FFC2E878AE2829998
+PT=07B5FA4835E5DFC67E02F490A497145D
+
+I=92
+KEY=89AAD6DCA6A8973580D02768EBC8372412842263B2B446178FCCA64222D7148D
+CT=07B5FA4835E5DFC67E02F490A497145D
+PT=A31272EC8623213B015811FAE12330CE
+
+I=93
+KEY=4B4AB47A0DBA39907D8E919767E69518B196508F3497672C8E94B7B8C3F42443
+CT=A31272EC8623213B015811FAE12330CE
+PT=9132AB51C9738A62CABDE4977947E0BF
+
+I=94
+KEY=BEC71999AEE5517C243B65830D30DEBB20A4FBDEFDE4ED4E4429532FBAB3C4FC
+CT=9132AB51C9738A62CABDE4977947E0BF
+PT=689375EA83B61894631E6EFA2D509531
+
+I=95
+KEY=77CE2C97A458300D7C95C6871CEB56D648378E347E52F5DA27373DD597E351CD
+CT=689375EA83B61894631E6EFA2D509531
+PT=AAA5C6C5917DFC103383DE6C79EB2BA6
+
+I=96
+KEY=0AD691774612F7EFA41FE39B8B3A2D14E29248F1EF2F09CA14B4E3B9EE087A6B
+CT=AAA5C6C5917DFC103383DE6C79EB2BA6
+PT=29D9945BDB3770ED2A41D2760D0DC51D
+
+I=97
+KEY=4E1D42ADC4CEF6BAE3A5B9E08F7ACD65CB4BDCAA341879273EF531CFE305BF76
+CT=29D9945BDB3770ED2A41D2760D0DC51D
+PT=2F9B3C4E1FDCDC8F7D5DFBEA342284F2
+
+I=98
+KEY=2D76A3E35C075DB14E40A59F46E07A81E4D0E0E42BC4A5A843A8CA25D7273B84
+CT=2F9B3C4E1FDCDC8F7D5DFBEA342284F2
+PT=ED4CFCF1C8D226EBACCC8FF11B1C81B8
+
+I=99
+KEY=E7364D0D17D723A69C0BA956778BD0E9099C1C15E3168343EF6445D4CC3BBA3C
+CT=ED4CFCF1C8D226EBACCC8FF11B1C81B8
+PT=2F9B5E1392B767E8497F849D00E98193
+
+I=100
+KEY=709380C7012CB4272A69F6D4936B163E2607420671A1E4ABA61BC149CCD23BAF
+CT=2F9B5E1392B767E8497F849D00E98193
+PT=3BE783A4A38EFB44150AA7A08E1888F6
+
+I=101
+KEY=98FF27B8AB7B91F690231E24608076EF1DE0C1A2D22F1FEFB31166E942CAB359
+CT=3BE783A4A38EFB44150AA7A08E1888F6
+PT=F35AED9C83E53D2EADDE507345096218
+
+I=102
+KEY=24F9D2FF633EE9AAED7321CFCF4D1D20EEBA2C3E51CA22C11ECF369A07C3D141
+CT=F35AED9C83E53D2EADDE507345096218
+PT=A22BF93FD521A6E59C196022FF252DC2
+
+I=103
+KEY=70E491840BC5C42A878655E18E9AAAA74C91D50184EB842482D656B8F8E6FC83
+CT=A22BF93FD521A6E59C196022FF252DC2
+PT=11E67B52F8CD97D63268485EB546E1FE
+
+I=104
+KEY=098FF2D6DE55FF5C66D5AD7D5949643A5D77AE537C2613F2B0BE1EE64DA01D7D
+CT=11E67B52F8CD97D63268485EB546E1FE
+PT=1E67AF3F7E7FDEFB868696E96F718ACC
+
+I=105
+KEY=B89EA7CBAE57B8AD39F23B22A8F651A44310016C0259CD093638880F22D197B1
+CT=1E67AF3F7E7FDEFB868696E96F718ACC
+PT=332B0045710B2DD6EC3D619051580C7F
+
+I=106
+KEY=39F71BC56EBFA91088499DC41A0C5B5B703B01297352E0DFDA05E99F73899BCE
+CT=332B0045710B2DD6EC3D619051580C7F
+PT=86F3D75D18F7AB31C6C52C19B0C35023
+
+I=107
+KEY=417147DB03FDA0B26BEED7FE8A9487D5F6C8D6746BA54BEE1CC0C586C34ACBED
+CT=86F3D75D18F7AB31C6C52C19B0C35023
+PT=452E6C2DA8B93A1E282F1A86AECB9F15
+
+I=108
+KEY=C4336C26C20AD7811578044800A51E8EB3E6BA59C31C71F034EFDF006D8154F8
+CT=452E6C2DA8B93A1E282F1A86AECB9F15
+PT=637F010BAC28AC108331F4E26B262D3A
+
+I=109
+KEY=D0369C75D40EEF29CF7588FB87EE2ED2D099BB526F34DDE0B7DE2BE206A779C2
+CT=637F010BAC28AC108331F4E26B262D3A
+PT=3F3DCA8B4C2DDFD556880A17FB575E7B
+
+I=110
+KEY=4DE25218630A678C287EC42F93985D22EFA471D923190235E15621F5FDF027B9
+CT=3F3DCA8B4C2DDFD556880A17FB575E7B
+PT=3DA8C1D40B51A8BC6E728D7A1E6B3B2E
+
+I=111
+KEY=C0526C3096805B532433C0248E153A00D20CB00D2848AA898F24AC8FE39B1C97
+CT=3DA8C1D40B51A8BC6E728D7A1E6B3B2E
+PT=449B050578191E4C156F7040EF27D5EC
+
+I=112
+KEY=6A1B7384328BAA25B6A857FB12A90FD49697B5085051B4C59A4BDCCF0CBCC97B
+CT=449B050578191E4C156F7040EF27D5EC
+PT=D58ACA128F936803BDD5EC1E6DECAB04
+
+I=113
+KEY=44B7F3EB0EF0EF4325353D30F35C4D71431D7F1ADFC2DCC6279E30D16150627F
+CT=D58ACA128F936803BDD5EC1E6DECAB04
+PT=77F1011F968AD46338CA68D5DF37959E
+
+I=114
+KEY=E1E6BBD70AEAC4D65159422B3DFE82DF34EC7E05494808A51F545804BE67F7E1
+CT=77F1011F968AD46338CA68D5DF37959E
+PT=FC692161766A29C9E6A86C353E2F3FE5
+
+I=115
+KEY=5C33A88179175BB12593D6574245A6A6C8855F643F22216CF9FC34318048C804
+CT=FC692161766A29C9E6A86C353E2F3FE5
+PT=F5FD2F77BC4908F470142417048C6233
+
+I=116
+KEY=E6A3CDD47570AEC4FC3B3453F78F253F3D787013836B299889E8102684C4AA37
+CT=F5FD2F77BC4908F470142417048C6233
+PT=FBDC2774D7E426CBD8B62ABD0E0EAA6F
+
+I=117
+KEY=4F5B3EDC53366D4C74D94663E17CBDB6C6A45767548F0F53515E3A9B8ACA0058
+CT=FBDC2774D7E426CBD8B62ABD0E0EAA6F
+PT=796D978C9D724C1C9445EC5BD272CEB0
+
+I=118
+KEY=9119AD19E78100B3D04BED87FF5C22B5BFC9C0EBC9FD434FC51BD6C058B8CEE8
+CT=796D978C9D724C1C9445EC5BD272CEB0
+PT=15ECF7D3F516D3CBA0307959287A5BAB
+
+I=119
+KEY=600B4D7604FF2650611C453A50D02275AA2537383CEB9084652BAF9970C29543
+CT=15ECF7D3F516D3CBA0307959287A5BAB
+PT=DA67996084E9C74C143310FC3CF207DD
+
+I=120
+KEY=3B8E0B73BBF745BB360EA50E7DA9B3297042AE58B80257C87118BF654C30929E
+CT=DA67996084E9C74C143310FC3CF207DD
+PT=6E9BC50580D45D54FEEC74830C0D9516
+
+I=121
+KEY=231592D0CE761359AE2E85CC4E4156A01ED96B5D38D60A9C8FF4CBE6403D0788
+CT=6E9BC50580D45D54FEEC74830C0D9516
+PT=A4B0F6A50C72C5EE755FA5595334DF2E
+
+I=122
+KEY=7ABD82D278910B909B0D6219EF5E0D98BA699DF834A4CF72FAAB6EBF1309D8A6
+CT=A4B0F6A50C72C5EE755FA5595334DF2E
+PT=24CDAEEB54A1EB7E2D4A0BEE526EA6E0
+
+I=123
+KEY=5C8F7B23850BD287F011E257D691F8979EA433136005240CD7E1655141677E46
+CT=24CDAEEB54A1EB7E2D4A0BEE526EA6E0
+PT=84F24CDC0AA63CEA2DDE8F94C8776765
+
+I=124
+KEY=DF8EEE46309021F6E7D7D41908B6CABE1A567FCF6AA318E6FA3FEAC589101923
+CT=84F24CDC0AA63CEA2DDE8F94C8776765
+PT=EEA20542DEDB0B99A2144942FFEAC820
+
+I=125
+KEY=8634A663D618B3BB54F44A5849170ACDF4F47A8DB478137F582BA38776FAD103
+CT=EEA20542DEDB0B99A2144942FFEAC820
+PT=CDD91737753BE9F672A60DD722202127
+
+I=126
+KEY=E41913E97F21A4E6A948ABEB45279E0D392D6DBAC143FA892A8DAE5054DAF024
+CT=CDD91737753BE9F672A60DD722202127
+PT=E6E2F7846E06BB90F19B21521DD4D238
+
+I=127
+KEY=1E63624B5EADBE7D42255F208CC7D348DFCF9A3EAF454119DB168F02490E221C
+CT=E6E2F7846E06BB90F19B21521DD4D238
+PT=0110CA2647D43C8BD012976113EFB860
+
+I=128
+KEY=8476329019AA4D0D91C71E0DFFF47906DEDF5018E8917D920B0418635AE19A7C
+CT=0110CA2647D43C8BD012976113EFB860
+PT=CC9AACC98876387D09565F1A20D329AF
+
+I=129
+KEY=DB1C0803BC1AD91C5621FA8C54AA83EF1245FCD160E745EF025247797A32B3D3
+CT=CC9AACC98876387D09565F1A20D329AF
+PT=55AB296D67DEEBA179AD8093C1952CC2
+
+I=130
+KEY=5C0887FF7C888D7800C43BC9E88D9B3B47EED5BC0739AE4E7BFFC7EABBA79F11
+CT=55AB296D67DEEBA179AD8093C1952CC2
+PT=27016691505182706848CD5D7A2C5CAB
+
+I=131
+KEY=0FFBE12ADFA17F3BF26622C20311D38960EFB32D57682C3E13B70AB7C18BC3BA
+CT=27016691505182706848CD5D7A2C5CAB
+PT=5E6C9FAF480FFE51D7687ADE203D5367
+
+I=132
+KEY=C4C12330BC21062618E2E83EC3755DAC3E832C821F67D26FC4DF7069E1B690DD
+CT=5E6C9FAF480FFE51D7687ADE203D5367
+PT=082FF20DC6AFBA3888348E5724F5C526
+
+I=133
+KEY=3F6BF56A0136C1058924FCD831A65EBC36ACDE8FD9C868574CEBFE3EC54355FB
+CT=082FF20DC6AFBA3888348E5724F5C526
+PT=67AE68CDDA349A067339F28FA216A188
+
+I=134
+KEY=4AB9E8E9B5BB84353006AB43065C6B8F5102B64203FCF2513FD20CB16755F473
+CT=67AE68CDDA349A067339F28FA216A188
+PT=3316F37F97D679B78A537A0E107923AB
+
+I=135
+KEY=E04DE045508423D735B20168C7974CC26214453D942A8BE6B58176BF772CD7D8
+CT=3316F37F97D679B78A537A0E107923AB
+PT=00AEB331686999C5F5FB1E7C6CCF1072
+
+I=136
+KEY=D4D19E570760468E9703F0E49C4AC9F262BAF60CFC431223407A68C31BE3C7AA
+CT=00AEB331686999C5F5FB1E7C6CCF1072
+PT=29A5DB93D2AE9B1ED9714213EAD9AA1C
+
+I=137
+KEY=6D6789354D2CC3EFA9ABFC466F21A6E24B1F2D9F2EED893D990B2AD0F13A6DB6
+CT=29A5DB93D2AE9B1ED9714213EAD9AA1C
+PT=E98426CB0F858A084EB66311188D9200
+
+I=138
+KEY=06ED66801B81943BF1640AAE222A23C7A29B0B5421680335D7BD49C1E9B7FFB6
+CT=E98426CB0F858A084EB66311188D9200
+PT=21527326577425261F2D40268C428E29
+
+I=139
+KEY=2232758279A806C21870C85273C12FA883C97872761C2613C89009E765F5719F
+CT=21527326577425261F2D40268C428E29
+PT=CC9393A43B8A8194C0EC29F989E597A6
+
+I=140
+KEY=E7E22C2A6E6D4A1BFE7B706047094AF44F5AEBD64D96A787087C201EEC10E639
+CT=CC9393A43B8A8194C0EC29F989E597A6
+PT=714846062B262A823B24164900DF91AD
+
+I=141
+KEY=89A78F64BCAEE02CAC92928134C2567C3E12ADD066B08D0533583657ECCF7794
+CT=714846062B262A823B24164900DF91AD
+PT=1D0AC79D1E9BB36A6A6A8E49538C08FF
+
+I=142
+KEY=4F6E8D81296C95FAA0FE6F2D324A392223186A4D782B3E6F5932B81EBF437F6B
+CT=1D0AC79D1E9BB36A6A6A8E49538C08FF
+PT=403D8B10E0AB31493589AFFA8E8B1BEE
+
+I=143
+KEY=24E398291CF018E4666728F4F635F74D6325E15D98800F266CBB17E431C86485
+CT=403D8B10E0AB31493589AFFA8E8B1BEE
+PT=9E0516EDA401DAAF6AC013841C0D63C8
+
+I=144
+KEY=F80CF8AF1FA463D2ED7C7F59C1B239B0FD20F7B03C81D589067B04602DC5074D
+CT=9E0516EDA401DAAF6AC013841C0D63C8
+PT=74B2B200922B21AA20A0C5860CFB7E4D
+
+I=145
+KEY=577A5456424E1A76C3E113EB82CCDF34899245B0AEAAF42326DBC1E6213E7900
+CT=74B2B200922B21AA20A0C5860CFB7E4D
+PT=25AFF27E13888A638CDA2673D7F16AFD
+
+I=146
+KEY=7C623BBD4777E6EF9BC058DF5BA27BEAAC3DB7CEBD227E40AA01E795F6CF13FD
+CT=25AFF27E13888A638CDA2673D7F16AFD
+PT=A54F400AB9C52913D7302BA36BF217DD
+
+I=147
+KEY=A8B33E433720C4B925C4F0315DDB73B00972F7C404E757537D31CC369D3D0420
+CT=A54F400AB9C52913D7302BA36BF217DD
+PT=48A263A07112AA95EA1414CE03545790
+
+I=148
+KEY=DA864B91AED3E2FAC25782F4A50C13C841D0946475F5FDC69725D8F89E6953B0
+CT=48A263A07112AA95EA1414CE03545790
+PT=541547E924522E59C1721D130B64D92F
+
+I=149
+KEY=EEB5FF6F9C435510E12934F5E806553E15C5D38D51A7D39F5657C5EB950D8A9F
+CT=541547E924522E59C1721D130B64D92F
+PT=5830544939EB4607145538388840248B
+
+I=150
+KEY=24E609AD29E4C601189CB2FE119767884DF587C4684C95984202FDD31D4DAE14
+CT=5830544939EB4607145538388840248B
+PT=CBE1F82FD3318448AA36ADB5967EF865
+
+I=151
+KEY=5A7EBB76C38C2E5F038612A06E84BB2C86147FEBBB7D11D0E83450668B335671
+CT=CBE1F82FD3318448AA36ADB5967EF865
+PT=3B104547D2D620879E3CB2B5774C0FB4
+
+I=152
+KEY=827EFCB7BC862C2466B8C79FC297AD3DBD043AAC69AB31577608E2D3FC7F59C5
+CT=3B104547D2D620879E3CB2B5774C0FB4
+PT=B667F7544FE49A07611A160E3312F69A
+
+I=153
+KEY=9BC6C18805144F98CAEA7B252B3EE2930B63CDF8264FAB501712F4DDCF6DAF5F
+CT=B667F7544FE49A07611A160E3312F69A
+PT=C3E928FDEB5D7DDF7CF32C4DBCFE32F3
+
+I=154
+KEY=2BC00DF6D26F9A968C3BFF47AE761718C88AE505CD12D68F6BE1D89073939DAC
+CT=C3E928FDEB5D7DDF7CF32C4DBCFE32F3
+PT=72A9CF7AA2EDAF1907D77D10A02A45DE
+
+I=155
+KEY=15A0EE054E2D5E7EDCF3FC766860ACCDBA232A7F6FFF79966C36A580D3B9D872
+CT=72A9CF7AA2EDAF1907D77D10A02A45DE
+PT=97ABFAAD506940F88FDC8F55AD7EA919
+
+I=156
+KEY=C56C11F3A96852119C16751963C24CD42D88D0D23F96396EE3EA2AD57EC7716B
+CT=97ABFAAD506940F88FDC8F55AD7EA919
+PT=DD55A02B1EB01EB091CA6337D0BEB5BD
+
+I=157
+KEY=8634CC7B3416FCE337AAFA39791D1545F0DD70F9212627DE722049E2AE79C4D6
+CT=DD55A02B1EB01EB091CA6337D0BEB5BD
+PT=C5EB3DF5A328B267F3895CECD4A828AF
+
+I=158
+KEY=DDC1361E1432CCAC3551E2478A321A0035364D0C820E95B981A9150E7AD1EC79
+CT=C5EB3DF5A328B267F3895CECD4A828AF
+PT=49952DACD97FD5583A7D9C4FF515EC17
+
+I=159
+KEY=52658EEC2A7441D866CFA15944BB12857CA360A05B7140E1BBD489418FC4006E
+CT=49952DACD97FD5583A7D9C4FF515EC17
+PT=4971EEEF871E935AC470BD770802B04B
+
+I=160
+KEY=05FC7A181B1935EA8DCEC961B0DFC14B35D28E4FDC6FD3BB7FA4343687C6B025
+CT=4971EEEF871E935AC470BD770802B04B
+PT=3DB5E9165C24EC3790DC3E53E5E5D2DE
+
+I=161
+KEY=8D2793B7BDCF80338AA39C86008361BC08676759804B3F8CEF780A65622362FB
+CT=3DB5E9165C24EC3790DC3E53E5E5D2DE
+PT=1FDB5D4FBB59F082B3B617C8A23734F1
+
+I=162
+KEY=37BE37961B77866869826907BB9E9C1717BC3A163B12CF0E5CCE1DADC014560A
+CT=1FDB5D4FBB59F082B3B617C8A23734F1
+PT=8C59775AD3FF7C337B22C8E785321E25
+
+I=163
+KEY=F3184EA1C8FFE3D436BEE076AA999B659BE54D4CE8EDB33D27ECD54A4526482F
+CT=8C59775AD3FF7C337B22C8E785321E25
+PT=0CB834FCC0CFDAECAF4AFC5A2E38DF23
+
+I=164
+KEY=CACF50D99B066EB84CBFAEEC9B0D6769975D79B0282269D188A629106B1E970C
+CT=0CB834FCC0CFDAECAF4AFC5A2E38DF23
+PT=229EB7B6A97D91921BCD8C95A0D7C17B
+
+I=165
+KEY=3FA80E4FB785B9FC3B058CC62D289958B5C3CE06815FF843936BA585CBC95677
+CT=229EB7B6A97D91921BCD8C95A0D7C17B
+PT=0D7692C281DD4FF35D9B1620E1385C34
+
+I=166
+KEY=CE2A3A893C96A4F1AA81AD52EBCC3C23B8B55CC40082B7B0CEF0B3A52AF10A43
+CT=0D7692C281DD4FF35D9B1620E1385C34
+PT=D3C5FE594F5C8C5A359235448EB20146
+
+I=167
+KEY=FC8642DB8CB42D1B1251CB7FE6AFF90D6B70A29D4FDE3BEAFB6286E1A4430B05
+CT=D3C5FE594F5C8C5A359235448EB20146
+PT=8C0F88460C700D96847249807B84223F
+
+I=168
+KEY=2A9C9FD184A5B2418FD415A228A5C0AFE77F2ADB43AE367C7F10CF61DFC7293A
+CT=8C0F88460C700D96847249807B84223F
+PT=5A4237A5C2DABDCDA6389D5FC66032F6
+
+I=169
+KEY=FDB533163E989D2FA32CCA5D3CC5D376BD3D1D7E81748BB1D928523E19A71BCC
+CT=5A4237A5C2DABDCDA6389D5FC66032F6
+PT=BF8AAC6B1536CCCCECCC9D6BE970EB3E
+
+I=170
+KEY=3C4B3CF0FD0C4292B2497175D4400F8902B7B1159442477D35E4CF55F0D7F0F2
+CT=BF8AAC6B1536CCCCECCC9D6BE970EB3E
+PT=97CE58407FD26D63C86765CB05EA6277
+
+I=171
+KEY=367862F3E2C5520EA2269392B6139E9C9579E955EB902A1EFD83AA9EF53D9285
+CT=97CE58407FD26D63C86765CB05EA6277
+PT=B411687B044B624077A92D8C130697B9
+
+I=172
+KEY=0300AF491DAF6C607417FB1FD9B1EC612168812EEFDB485E8A2A8712E63B053C
+CT=B411687B044B624077A92D8C130697B9
+PT=D22E92A5132EA85F4FB25EE19C248008
+
+I=173
+KEY=7C92EF49A7D27E97F1884299B635F0ADF346138BFCF5E001C598D9F37A1F8534
+CT=D22E92A5132EA85F4FB25EE19C248008
+PT=FD6817CD680A2A8CE93E4B4F9CAA72AA
+
+I=174
+KEY=80EABB1D8C9B5F769FCAC87ED8D0C9CA0E2E044694FFCA8D2CA692BCE6B5F79E
+CT=FD6817CD680A2A8CE93E4B4F9CAA72AA
+PT=8DDD9B3B9278D2DE3453EA6769E1C39C
+
+I=175
+KEY=FB345E2D7BBBED527259FAEAEA79C05D83F39F7D0687185318F578DB8F543402
+CT=8DDD9B3B9278D2DE3453EA6769E1C39C
+PT=AE69F5CD8D342E74113E979ACE3539F2
+
+I=176
+KEY=7D93DC33FF2266770291160CD317C65E2D9A6AB08BB3362709CBEF4141610DF0
+CT=AE69F5CD8D342E74113E979ACE3539F2
+PT=30E19A4E84997172486DAE4FB4C41E58
+
+I=177
+KEY=82362FF3E9C1AD93474CF4CABD354E7E1D7BF0FE0F2A475541A6410EF5A513A8
+CT=30E19A4E84997172486DAE4FB4C41E58
+PT=75B3D07617EB189512DC5161908940C1
+
+I=178
+KEY=8EFD0FCB3855CCC16BD919FBD17596C768C8208818C15FC0537A106F652C5369
+CT=75B3D07617EB189512DC5161908940C1
+PT=FD13E89107FAFA44998721AD726C620F
+
+I=179
+KEY=2299D22282C798107F489637DCD479C395DBC8191F3BA584CAFD31C217403166
+CT=FD13E89107FAFA44998721AD726C620F
+PT=C1B0210C0387864717BD7D02063B6A69
+
+I=180
+KEY=75E05597A2BBDF23E5BD172C83548C9B546BE9151CBC23C3DD404CC0117B5B0F
+CT=C1B0210C0387864717BD7D02063B6A69
+PT=0E442B38E9024CCA5DC43A7B8D5F6FCF
+
+I=181
+KEY=4DBC8DCB8C25B5F4AD374BA3064216555A2FC22DF5BE6F09808476BB9C2434C0
+CT=0E442B38E9024CCA5DC43A7B8D5F6FCF
+PT=8FD213EC19D62FD2C19E6C91B97E56A0
+
+I=182
+KEY=E393BAD07E955EBC1446B847DE5A891ED5FDD1C1EC6840DB411A1A2A255A6260
+CT=8FD213EC19D62FD2C19E6C91B97E56A0
+PT=F52ADFD33A68EE198F33708E676D0CE9
+
+I=183
+KEY=3F33A76F87DB0388C2D66C7F2EFAA1B820D70E12D600AEC2CE296AA442376E89
+CT=F52ADFD33A68EE198F33708E676D0CE9
+PT=7649EB4283505EEEE1BE16DB6677B3F5
+
+I=184
+KEY=04BC65DE70C9E01EEEDA5A507C218C8D569EE5505550F02C2F977C7F2440DD7C
+CT=7649EB4283505EEEE1BE16DB6677B3F5
+PT=6FB1C4AD8A5B8A606621A8BF4277F3DC
+
+I=185
+KEY=8A6EF9710F4AE10EB60C8D25A8F67C50392F21FDDF0B7A4C49B6D4C066372EA0
+CT=6FB1C4AD8A5B8A606621A8BF4277F3DC
+PT=22C2CF9572D708F688291056E2F8E120
+
+I=186
+KEY=ED6D084D5F8AA4F201F9C20EA26A90E81BEDEE68ADDC72BAC19FC49684CFCF80
+CT=22C2CF9572D708F688291056E2F8E120
+PT=28AC7257911ECEB549D910BFA0905AE5
+
+I=187
+KEY=BA2735927D6A76B952C08A219FBB572233419C3F3CC2BC0F8846D429245F9565
+CT=28AC7257911ECEB549D910BFA0905AE5
+PT=2A1F3842DF988CDA0C6415450A657DB2
+
+I=188
+KEY=53BCC06CCCBC31A5BEE2CE88E6EAEFAC195EA47DE35A30D58422C16C2E3AE8D7
+CT=2A1F3842DF988CDA0C6415450A657DB2
+PT=6055EB3A24DE4D87C6BA5073A5BAC919
+
+I=189
+KEY=DF88C3CEC31C7B88D8AC0C7AAA2CED99790B4F47C7847D524298911F8B8021CE
+CT=6055EB3A24DE4D87C6BA5073A5BAC919
+PT=CC051CCD37068B41935FD14538DFEF82
+
+I=190
+KEY=265B351B93FF456D5A1EAADD2BEA1296B50E538AF082F613D1C7405AB35FCE4C
+CT=CC051CCD37068B41935FD14538DFEF82
+PT=225B63F455DD72EC87CF6FD5DF0FDAF3
+
+I=191
+KEY=BAC4C541E0A693CF8A3892A82F67CD959755307EA55F84FF56082F8F6C5014BF
+CT=225B63F455DD72EC87CF6FD5DF0FDAF3
+PT=64027F6B72F0A11628F66D5C502658E8
+
+I=192
+KEY=E8F68EF4909A128F331DFEFAE8560EBCF3574F15D7AF25E97EFE42D33C764C57
+CT=64027F6B72F0A11628F66D5C502658E8
+PT=529AAF9163EDA1BC39E66D2556BE938B
+
+I=193
+KEY=1951B1A50BED04096C17E816D4EC6225A1CDE084B442845547182FF66AC8DFDC
+CT=529AAF9163EDA1BC39E66D2556BE938B
+PT=F93E85D98EB9BDDD7D3844421235FBAB
+
+I=194
+KEY=D39AF070909FBC0E3226E28041B0286158F3655D3AFB39883A206BB478FD2477
+CT=F93E85D98EB9BDDD7D3844421235FBAB
+PT=16B6B3CC08003BA36C9E84B1EE9CD7CC
+
+I=195
+KEY=B705C6CCD010B980E386B8690C83E96C4E45D69132FB022B56BEEF059661F3BB
+CT=16B6B3CC08003BA36C9E84B1EE9CD7CC
+PT=301AFE66055149FA5775A9CE19F1FF63
+
+I=196
+KEY=B3C813D4FCBD31ED95E7E71CEC15153E7E5F28F737AA4BD101CB46CB8F900CD8
+CT=301AFE66055149FA5775A9CE19F1FF63
+PT=1090E68F7C8400861589E304A5B815CD
+
+I=197
+KEY=0EBC30ADB6946B6415C0309D636C79F46ECFCE784B2E4B571442A5CF2A281915
+CT=1090E68F7C8400861589E304A5B815CD
+PT=2778F0C712804C0B8D085B196A4D73C4
+
+I=198
+KEY=9C5815C6705B39DEECB8BDDDC9329A0D49B73EBF59AE075C994AFED640656AD1
+CT=2778F0C712804C0B8D085B196A4D73C4
+PT=14FECB137DC9C38A04D92B60A177A61D
+
+I=199
+KEY=9D83B41F8F415B5F3B2C08682383471B5D49F5AC2467C4D69D93D5B6E112CCCC
+CT=14FECB137DC9C38A04D92B60A177A61D
+PT=0EF1321EA52EAA7624E3F2EFD0C886AF
+
+I=200
+KEY=2960CEE0AF043ED1A549BA223F6C1CF153B8C7B281496EA0B970275931DA4A63
+CT=0EF1321EA52EAA7624E3F2EFD0C886AF
+PT=AFA8B2129577EC178B59D42D1B92D313
+
+I=201
+KEY=51E0DECF48A151021C70EC3EE3CE9008FC1075A0143E82B73229F3742A489970
+CT=AFA8B2129577EC178B59D42D1B92D313
+PT=3351631344E6EF86712327D3C05EBDEB
+
+I=202
+KEY=5F34A789B0B1185BA7D1BB3EF2677060CF4116B350D86D31430AD4A7EA16249B
+CT=3351631344E6EF86712327D3C05EBDEB
+PT=C299D0556B0D15014627CADBCCC3DC33
+
+I=203
+KEY=FC3E420F84F4C75802DCF68ABF0030E70DD8C6E63BD57830052D1E7C26D5F8A8
+CT=C299D0556B0D15014627CADBCCC3DC33
+PT=CEB83A2B9DD76B649BAAE48A8B772A5C
+
+I=204
+KEY=C04448AD77DBF33F22A2346C7A40F813C360FCCDA60213549E87FAF6ADA2D2F4
+CT=CEB83A2B9DD76B649BAAE48A8B772A5C
+PT=A8C6AEC94E82BC68AC8E29A8CB9504F6
+
+I=205
+KEY=3FA863ECC4AFA141DD7349C44F94FEE16BA65204E880AF3C3209D35E6637D602
+CT=A8C6AEC94E82BC68AC8E29A8CB9504F6
+PT=1EDED55C8D3309F828C17AF072C79D7A
+
+I=206
+KEY=8893E5FB27191AE09E4AB5F062289F117578875865B3A6C41AC8A9AE14F04B78
+CT=1EDED55C8D3309F828C17AF072C79D7A
+PT=FD2AC22891FB294EB0AD2BADFE759C29
+
+I=207
+KEY=90BA1205BB7927E86F9895855648D3EB88524570F4488F8AAA658203EA85D751
+CT=FD2AC22891FB294EB0AD2BADFE759C29
+PT=2FE6AE59ACD516EE1567A7A1C43FDE2A
+
+I=208
+KEY=278FD88834EA67564F301785C4045D6FA7B4EB29589D9964BF0225A22EBA097B
+CT=2FE6AE59ACD516EE1567A7A1C43FDE2A
+PT=35BEC13F159F61C7EF4C860AD3B41A75
+
+I=209
+KEY=E9D2F23C213D02724737A5E907BFBDF0920A2A164D02F8A3504EA3A8FD0E130E
+CT=35BEC13F159F61C7EF4C860AD3B41A75
+PT=650D65D6ED716DA515EAAF1A7447C3FB
+
+I=210
+KEY=4A0A997634E2D9305795FC90291F6FD9F7074FC0A073950645A40CB28949D0F5
+CT=650D65D6ED716DA515EAAF1A7447C3FB
+PT=7AFE0D2F234A6CDEDD7103DA09147285
+
+I=211
+KEY=BD671DD81F8FCD9D472564589AA13F5D8DF942EF8339F9D898D50F68805DA270
+CT=7AFE0D2F234A6CDEDD7103DA09147285
+PT=40627620B17313AF42EA7DD6CFD900F9
+
+I=212
+KEY=5668F777C46BF78DC664E72186626BF5CD9B34CF324AEA77DA3F72BE4F84A289
+CT=40627620B17313AF42EA7DD6CFD900F9
+PT=0C62985837C8C6FB468BD6E3928F8497
+
+I=213
+KEY=B82B5D4C3DEF62CFAE064CFDB5D904EFC1F9AC9705822C8C9CB4A45DDD0B261E
+CT=0C62985837C8C6FB468BD6E3928F8497
+PT=A1FFF4635AAF2AD8AE6EA8C70858EF3B
+
+I=214
+KEY=6A179EF63528EFA2B12DBA23D1EC8D21600658F45F2D065432DA0C9AD553C925
+CT=A1FFF4635AAF2AD8AE6EA8C70858EF3B
+PT=403F8E2D050E2976487BBEDD6466357E
+
+I=215
+KEY=6857720AC4DDCFFE8A96B455C973901A2039D6D95A232F227AA1B247B135FC5B
+CT=403F8E2D050E2976487BBEDD6466357E
+PT=2DD7EB8476988C850E8D95DC598FC61A
+
+I=216
+KEY=5B938E230BFE9056471E7C83A6ED03930DEE3D5D2CBBA3A7742C279BE8BA3A41
+CT=2DD7EB8476988C850E8D95DC598FC61A
+PT=676B96F400AE18138B302FD3D70D490E
+
+I=217
+KEY=4CE7ECA340DEC23715C53343EB9162DA6A85ABA92C15BBB4FF1C08483FB7734F
+CT=676B96F400AE18138B302FD3D70D490E
+PT=620AAA14B94BF6B60A83129085BCF02B
+
+I=218
+KEY=1024ECE618D140CAE8B9DFC8EB1DE137088F01BD955E4D02F59F1AD8BA0B8364
+CT=620AAA14B94BF6B60A83129085BCF02B
+PT=B701A38325DC282045C6F914394B9F70
+
+I=219
+KEY=6B8C6DA855E1E72E4A6AC44601B24D60BF8EA23EB0826522B059E3CC83401C14
+CT=B701A38325DC282045C6F914394B9F70
+PT=808D0B334B775C59F8C34A3524CB4126
+
+I=220
+KEY=C50A625A89465321DACCB9EB40DEF57D3F03A90DFBF5397B489AA9F9A78B5D32
+CT=808D0B334B775C59F8C34A3524CB4126
+PT=4E29C921CC295F6A3082C1BC02ACDA70
+
+I=221
+KEY=973341A4E3DB315FA97C7EEDF493EA71712A602C37DC661178186845A5278742
+CT=4E29C921CC295F6A3082C1BC02ACDA70
+PT=77BC204E50EFCA2AEBDC16D3F3C3D739
+
+I=222
+KEY=639EB8FB16B34B55550705FDCFF7C8CC069640626733AC3B93C47E9656E4507B
+CT=77BC204E50EFCA2AEBDC16D3F3C3D739
+PT=A677A7B55AA03EB0587EE00123D047F3
+
+I=223
+KEY=610A9602B725E4D87AB2904E91050D90A0E1E7D73D93928BCBBA9E9775341788
+CT=A677A7B55AA03EB0587EE00123D047F3
+PT=09AF5421548AC11466370484F8C556DE
+
+I=224
+KEY=314A6E0BD202458489059738917B6678A94EB3F66919539FAD8D9A138DF14156
+CT=09AF5421548AC11466370484F8C556DE
+PT=B6CDD2336AB8735EE7A9946A1FE7EE0C
+
+I=225
+KEY=73658C0F88490F7C3B9F2B7B39551BBF1F8361C503A120C14A240E799216AF5A
+CT=B6CDD2336AB8735EE7A9946A1FE7EE0C
+PT=B5A2F3B47E4AC87BC06612587253930E
+
+I=226
+KEY=968794DEC3E866DE4F999C860E9851E9AA2192717DEBE8BA8A421C21E0453C54
+CT=B5A2F3B47E4AC87BC06612587253930E
+PT=09C9C38BB3348147EB284FFA24D87244
+
+I=227
+KEY=205605E66A4BE2CF61E13243E104FED9A3E851FACEDF69FD616A53DBC49D4E10
+CT=09C9C38BB3348147EB284FFA24D87244
+PT=9D1EDCA2674E5A30416DF7CC2938DC63
+
+I=228
+KEY=9CA7508C83DB6E56EFF3489F2BD30C573EF68D58A99133CD2007A417EDA59273
+CT=9D1EDCA2674E5A30416DF7CC2938DC63
+PT=E8A2282B47DAB6A666A4607BBC857FC6
+
+I=229
+KEY=0F98884E85FEB533CFC281C2F4437915D654A573EE4B856B46A3C46C5120EDB5
+CT=E8A2282B47DAB6A666A4607BBC857FC6
+PT=B6675D2263DC1C1E0F04A9A9BC666D2D
+
+I=230
+KEY=3F3ED6DC6E08DF2515D08273832429286033F8518D97997549A76DC5ED468098
+CT=B6675D2263DC1C1E0F04A9A9BC666D2D
+PT=D6FF2642FD84C80674EAF8674242248D
+
+I=231
+KEY=67910C06B57CD52767674B70F59337D8B6CCDE13701351733D4D95A2AF04A415
+CT=D6FF2642FD84C80674EAF8674242248D
+PT=47D4419A669253C39A0CC96C7CD612C0
+
+I=232
+KEY=43EE254E414DB89044EE2F703B340F6AF1189F89168102B0A7415CCED3D2B6D5
+CT=47D4419A669253C39A0CC96C7CD612C0
+PT=B2B3FD7A1D4B0695B3499430F2E44CEA
+
+I=233
+KEY=89C9881E6D6CEFF00DDFC5618655FA4543AB62F30BCA04251408C8FE2136FA3F
+CT=B2B3FD7A1D4B0695B3499430F2E44CEA
+PT=4AAD0AE20AFF0675CF78992DFD2B685C
+
+I=234
+KEY=2C24846D047677F89EF73B917962D0FA0906681101350250DB7051D3DC1D9263
+CT=4AAD0AE20AFF0675CF78992DFD2B685C
+PT=C90343412CFE70201CE22D9AD2222788
+
+I=235
+KEY=770637F8F8F32915BF7630919D0726AEC0052B502DCB7270C7927C490E3FB5EB
+CT=C90343412CFE70201CE22D9AD2222788
+PT=923FE89134FAF362802C5A2EBF399D2C
+
+I=236
+KEY=426891CF6B068FAC7FFB5A04874AEC78523AC3C11931811247BE2667B10628C7
+CT=923FE89134FAF362802C5A2EBF399D2C
+PT=9C08F05026196BA3550A2496049B720B
+
+I=237
+KEY=B66BCCA5EFAF3F448BDD52DC48F2B904CE3233913F28EAB112B402F1B59D5ACC
+CT=9C08F05026196BA3550A2496049B720B
+PT=7B487FD67D0C2D987C3DEFD335C2EF17
+
+I=238
+KEY=079CCBC13FCFB0D032293FDFEC563F86B57A4C474224C7296E89ED22805FB5DB
+CT=7B487FD67D0C2D987C3DEFD335C2EF17
+PT=CEC12158856704CE8ABF0CA6C6F3006B
+
+I=239
+KEY=998AFEF458902CA632D60843A88D36637BBB6D1FC743C3E7E436E18446ACB5B0
+CT=CEC12158856704CE8ABF0CA6C6F3006B
+PT=DA19C7C7283ADD9C5145ABBA53F1E7E1
+
+I=240
+KEY=95EDAF196289EE6D24AA752DF489DEFCA1A2AAD8EF791E7BB5734A3E155D5251
+CT=DA19C7C7283ADD9C5145ABBA53F1E7E1
+PT=F043A57E686C1FE7DACB858F0C3E6857
+
+I=241
+KEY=3050D2C04C0860414427BF5B19792D7651E10FA68715019C6FB8CFB119633A06
+CT=F043A57E686C1FE7DACB858F0C3E6857
+PT=2FB7B264BB4B3FAFA01A6BB93CC2958D
+
+I=242
+KEY=26186DD7BE83659550BA3B52D99975037E56BDC23C5E3E33CFA2A40825A1AF8B
+CT=2FB7B264BB4B3FAFA01A6BB93CC2958D
+PT=D46BBD3ABD958DA722F3591578C30F5E
+
+I=243
+KEY=DE1D625B9C840580FDDE57EDE82419D1AA3D00F881CBB394ED51FD1D5D62A0D5
+CT=D46BBD3ABD958DA722F3591578C30F5E
+PT=3D69379AB60535902C38AB5E121DD035
+
+I=244
+KEY=FF9396CB65FFB9D47EF4E0253FD98BBA9754376237CE8604C16956434F7F70E0
+CT=3D69379AB60535902C38AB5E121DD035
+PT=A5767F4E6C8482290BC7B76D23EEF145
+
+I=245
+KEY=B98B5F1CA9752B1B07514B72C3D585F23222482C5B4A042DCAAEE12E6C9181A5
+CT=A5767F4E6C8482290BC7B76D23EEF145
+PT=9388736A82C99337C49BB4F32437B1DA
+
+I=246
+KEY=5F130919FB4ED29397E4781550B1D444A1AA3B46D983971A0E3555DD48A6307F
+CT=9388736A82C99337C49BB4F32437B1DA
+PT=915C6C5181E797DADC289F8FFF60CD19
+
+I=247
+KEY=D3F202F140D38545C8A04EC2D0993E2B30F65717586400C0D21DCA52B7C6FD66
+CT=915C6C5181E797DADC289F8FFF60CD19
+PT=A61167CDBE95ABFAD9C1A58BDA90F0D4
+
+I=248
+KEY=FBFA83B249C3B13C83E8FC111611391296E730DAE6F1AB3A0BDC6FD96D560DB2
+CT=A61167CDBE95ABFAD9C1A58BDA90F0D4
+PT=9AF2B4CF00B037976D0F5CAC4201885D
+
+I=249
+KEY=CC24CC54D0889912C7AD2473EBA8BBB30C158415E6419CAD66D333752F5785EF
+CT=9AF2B4CF00B037976D0F5CAC4201885D
+PT=A9B74046119B6699FD5EFD1E476BEE64
+
+I=250
+KEY=F520F18D9FACA98E5F57226127FA9B6BA5A2C453F7DAFA349B8DCE6B683C6B8B
+CT=A9B74046119B6699FD5EFD1E476BEE64
+PT=CD7EAA1EF3B91B69FD3E54FCC5A802E9
+
+I=251
+KEY=9BFD59A9F78FB1BE6F13B701D7EB0F6268DC6E4D0463E15D66B39A97AD946962
+CT=CD7EAA1EF3B91B69FD3E54FCC5A802E9
+PT=FD7095C419E2722425E6D4CA1A393D8C
+
+I=252
+KEY=C1C39AC5158C8CDBE82CF37D00B7896995ACFB891D81937943554E5DB7AD54EE
+CT=FD7095C419E2722425E6D4CA1A393D8C
+PT=9963CE47EB0322135C5D20B923FC341A
+
+I=253
+KEY=C9E26AE18D08643029C92F11BD3E8AA40CCF35CEF682B16A1F086EE4945160F4
+CT=9963CE47EB0322135C5D20B923FC341A
+PT=11589A1BDD037FABABBB9BF5AAC859A7
+
+I=254
+KEY=2183FF3C1EB1DF48DB8FA5F87F279F891D97AFD52B81CEC1B4B3F5113E993953
+CT=11589A1BDD037FABABBB9BF5AAC859A7
+PT=B6CEE1CD709BE6E055041FC2E1A87539
+
+I=255
+KEY=738690954B4B92CE2367567B3A960E8DAB594E185B1A2821E1B7EAD3DF314C6A
+CT=B6CEE1CD709BE6E055041FC2E1A87539
+PT=D776658F01CCEC460FA7145C6C6CBD42
+
+I=256
+KEY=71AB2DBD9923F08E516D8DF0CF57CC227C2F2B975AD6C467EE10FE8FB35DF128
+CT=D776658F01CCEC460FA7145C6C6CBD42
+PT=0C6D2578060A0A1024230D838AA45234
+
+I=257
+KEY=1C0E18C83D74E46DDF65BFC3335CFF0D70420EEF5CDCCE77CA33F30C39F9A31C
+CT=0C6D2578060A0A1024230D838AA45234
+PT=BFD55D67EF4883200FDAEEA5D44F0302
+
+I=258
+KEY=7DA814BD80D8CBBEE778E030682E7F34CF975388B3944D57C5E91DA9EDB6A01E
+CT=BFD55D67EF4883200FDAEEA5D44F0302
+PT=E821629542650FAFEF08D94AC889078A
+
+I=259
+KEY=10490CD6F16D915CE9891C69E10884D827B6311DF1F142F82AE1C4E3253FA794
+CT=E821629542650FAFEF08D94AC889078A
+PT=F2F81CD9CBD3E932686B6195A97EE13A
+
+I=260
+KEY=F0114F7C7101931F6A4595A6C3D2F34AD54E2DC43A22ABCA428AA5768C4146AE
+CT=F2F81CD9CBD3E932686B6195A97EE13A
+PT=C90348C14450EE3D9BFA30377D4B2440
+
+I=261
+KEY=C5802B19BA4921D3750A590F02658F621C4D65057E7245F7D9709541F10A62EE
+CT=C90348C14450EE3D9BFA30377D4B2440
+PT=619E907C4E7FD3A723E34B8D3880D71B
+
+I=262
+KEY=236500CE70AC49E98907DC4EDAE41CCA7DD3F579300D9650FA93DECCC98AB5F5
+CT=619E907C4E7FD3A723E34B8D3880D71B
+PT=932A17E8FDA853F6DB1C9271EC4FBF56
+
+I=263
+KEY=7BB7D14473E7E2D70F3C8C90D4B1035CEEF9E291CDA5C5A6218F4CBD25C50AA3
+CT=932A17E8FDA853F6DB1C9271EC4FBF56
+PT=549CB80C490E592E18ACC04FAA933489
+
+I=264
+KEY=415AD8391B32F6E61A861B4C8A4BBC6DBA655A9D84AB9C8839238CF28F563E2A
+CT=549CB80C490E592E18ACC04FAA933489
+PT=BF6337BEDE116D5A60B06DA8B270159C
+
+I=265
+KEY=058F24C125EB3E94B54BB6F1F099501C05066D235ABAF1D25993E15A3D262BB6
+CT=BF6337BEDE116D5A60B06DA8B270159C
+PT=CBD3D52496E6DF0DBD065BD924C5001F
+
+I=266
+KEY=B85B96EC639098C392FD33D11A49251ECED5B807CC5C2EDFE495BA8319E32BA9
+CT=CBD3D52496E6DF0DBD065BD924C5001F
+PT=AF8879C67DF265E118096478FBA003AD
+
+I=267
+KEY=526BF9DCAF4A4DFD05FAD0EA3B58131D615DC1C1B1AE4B3EFC9CDEFBE2432804
+CT=AF8879C67DF265E118096478FBA003AD
+PT=C627176029E2D22A51F5630B129A1095
+
+I=268
+KEY=553316781F120EE83A2D083D97D19F99A77AD6A1984C9914AD69BDF0F0D93891
+CT=C627176029E2D22A51F5630B129A1095
+PT=F46AC5870C65636D6C200312F2A15BE6
+
+I=269
+KEY=E9A37578C1402447D6CC1161F126D5C7531013269429FA79C149BEE202786377
+CT=F46AC5870C65636D6C200312F2A15BE6
+PT=4FBBFF3856FC0DEC7EE18585FFA4AC16
+
+I=270
+KEY=78521B42D0FBE8EA8BB6D44D66AE476D1CABEC1EC2D5F795BFA83B67FDDCCF61
+CT=4FBBFF3856FC0DEC7EE18585FFA4AC16
+PT=8711DAE7DD9B3F6D9FAD03669C1C8F5E
+
+I=271
+KEY=851C9A078620280FBCDDFB4FD3745C749BBA36F91F4EC8F82005380161C0403F
+CT=8711DAE7DD9B3F6D9FAD03669C1C8F5E
+PT=050E884136E09368DEFBC43F6B3182CC
+
+I=272
+KEY=50CCAA51D781B7090285D907E68B1F7A9EB4BEB829AE5B90FEFEFC3E0AF1C2F3
+CT=050E884136E09368DEFBC43F6B3182CC
+PT=CEC37197CEE3E0D797F441CC0541B851
+
+I=273
+KEY=DAB5ECB43982EAE8412102E2B7BC7CEA5077CF2FE74DBB47690ABDF20FB07AA2
+CT=CEC37197CEE3E0D797F441CC0541B851
+PT=197ECC091E5620DCA63BA2E6CFBC9F43
+
+I=274
+KEY=57974D1C4BBF761C9E09B8DAD3E510DF49090326F91B9B9BCF311F14C00CE5E1
+CT=197ECC091E5620DCA63BA2E6CFBC9F43
+PT=F2E836DEE9668E81D74A3C0F03CF3C10
+
+I=275
+KEY=E37677110C5A9A59EC06E0968BF5D14EBBE135F8107D151A187B231BC3C3D9F1
+CT=F2E836DEE9668E81D74A3C0F03CF3C10
+PT=DD581BB9F4A7BEC66CAC7916871F55C8
+
+I=276
+KEY=2CD760C245E62EA5B477BDA094B3AD5166B92E41E4DAABDC74D75A0D44DC8C39
+CT=DD581BB9F4A7BEC66CAC7916871F55C8
+PT=7B05D43A3BE733E0DE6E2CE494141B46
+
+I=277
+KEY=DE35BF6BC48E8B8E6A30DB886C9D75DD1DBCFA7BDF3D983CAAB976E9D0C8977F
+CT=7B05D43A3BE733E0DE6E2CE494141B46
+PT=1D561DCAA42E92568DD6ACD583FF7BCE
+
+I=278
+KEY=8AD7FCADA5D092DD5D221532EED3FD1000EAE7B17B130A6A276FDA3C5337ECB1
+CT=1D561DCAA42E92568DD6ACD583FF7BCE
+PT=1E9AB09A76FD91CC33B85390BDE631F8
+
+I=279
+KEY=534EEF6B1450693335980E00CD3CDE361E70572B0DEE9BA614D789ACEED1DD49
+CT=1E9AB09A76FD91CC33B85390BDE631F8
+PT=CBD0E3A07952EAC118A81B76D09276FD
+
+I=280
+KEY=8A39C2221622785E4DA9B14DAAE6ADF3D5A0B48B74BC71670C7F92DA3E43ABB4
+CT=CBD0E3A07952EAC118A81B76D09276FD
+PT=AC20057B857E6C34F7E68A5765573538
+
+I=281
+KEY=50887AD2D325CBC04B5FD69518318BAD7980B1F0F1C21D53FB99188D5B149E8C
+CT=AC20057B857E6C34F7E68A5765573538
+PT=DDFFD26BA5B33AEA36A0A6D75EAA047C
+
+I=282
+KEY=9613965C1776C5BAEA3CEE6154AABC9FA47F639B547127B9CD39BE5A05BE9AF0
+CT=DDFFD26BA5B33AEA36A0A6D75EAA047C
+PT=F0883B6DD3CA0515CB9F1ABA646CCB69
+
+I=283
+KEY=E7F6DB8A94597956CEE07447F9BB5CA454F758F687BB22AC06A6A4E061D25199
+CT=F0883B6DD3CA0515CB9F1ABA646CCB69
+PT=F4E27CA9E27B3E81B981298738C01FDA
+
+I=284
+KEY=0CB665943D6E6E32886A94C070366FB2A015245F65C01C2DBF278D6759124E43
+CT=F4E27CA9E27B3E81B981298738C01FDA
+PT=B03B2EB7A1E13E1A17C51FF5684E2A72
+
+I=285
+KEY=1EA698290E4B1D41B0CC4F3B9A9398FF102E0AE8C4212237A8E29292315C6431
+CT=B03B2EB7A1E13E1A17C51FF5684E2A72
+PT=BE133CCCE406C1C0BC1707115B5B0C84
+
+I=286
+KEY=BA38F49FA3D4A74ED41F8DA958A953C7AE3D36242027E3F714F595836A0768B5
+CT=BE133CCCE406C1C0BC1707115B5B0C84
+PT=A15B1C9BCF319AEF262E366C142A0DCF
+
+I=287
+KEY=935F2CEECBBCF3465DB9B0DB927AF4310F662ABFEF16791832DBA3EF7E2D657A
+CT=A15B1C9BCF319AEF262E366C142A0DCF
+PT=7A8DA23874D28EB75261D87D57451EAE
+
+I=288
+KEY=B8E67B884E3E229EBB516065499F790275EB88879BC4F7AF60BA7B9229687BD4
+CT=7A8DA23874D28EB75261D87D57451EAE
+PT=9331C989A7E291FD94BA4C945A79126E
+
+I=289
+KEY=CFB51BE6CDA499D66E7B36CAAC220FB7E6DA410E3C266652F4003706731169BA
+CT=9331C989A7E291FD94BA4C945A79126E
+PT=70A2F921A8BB0548D91A114478308448
+
+I=290
+KEY=19821B21FED0C1659AF4E16F49F63B699678B82F949D631A2D1A26420B21EDF2
+CT=70A2F921A8BB0548D91A114478308448
+PT=8ED8FC98045BA0EF9C15E9565EECE5BB
+
+I=291
+KEY=27DA5E31E794D670BDB701F361B8977018A044B790C6C3F5B10FCF1455CD0849
+CT=8ED8FC98045BA0EF9C15E9565EECE5BB
+PT=F6621989AFC0427E3E84039B6C6C2E75
+
+I=292
+KEY=64E8F7C4292DF7D0B01BED3FAE08DA4FEEC25D3E3F06818B8F8BCC8F39A1263C
+CT=F6621989AFC0427E3E84039B6C6C2E75
+PT=68F4804D1E8D383FAF4E76F80FB8F92B
+
+I=293
+KEY=EE626AFFE4997C11CAE2714FF96D84B18636DD73218BB9B420C5BA773619DF17
+CT=68F4804D1E8D383FAF4E76F80FB8F92B
+PT=2D61F123E2479D56AE5C327A57F6A28B
+
+I=294
+KEY=EA24B2DB953084C818B0E6F34BA1584DAB572C50C3CC24E28E99880D61EF7D9C
+CT=2D61F123E2479D56AE5C327A57F6A28B
+PT=C6CD16E7A122D105EE398E6C7F15B4EF
+
+I=295
+KEY=F209D1ADE0869F674F6FEDCD3DB7D2EB6D9A3AB762EEF5E760A006611EFAC973
+CT=C6CD16E7A122D105EE398E6C7F15B4EF
+PT=EDD6BBA5787DA2BF6A1ADF297DB98281
+
+I=296
+KEY=302BEB9AA2ACB3594D7E50859C187294804C81121A9357580ABAD94863434BF2
+CT=EDD6BBA5787DA2BF6A1ADF297DB98281
+PT=4A51E54F4F81469A06F6001F2F32F4AC
+
+I=297
+KEY=3270FC87B4DC04FDD3F20C01407BE123CA1D645D551211C20C4CD9574C71BF5E
+CT=4A51E54F4F81469A06F6001F2F32F4AC
+PT=F7A2303EA59907BCC32AA4FC5A6DE448
+
+I=298
+KEY=C85326465BF46A442BC1E544F9041C4A3DBF5463F08B167ECF667DAB161C5B16
+CT=F7A2303EA59907BCC32AA4FC5A6DE448
+PT=2274E43F9F8A7081DF74D5225EC28AD8
+
+I=299
+KEY=A54E889A4D9FFBF993C53A9DD3B951391FCBB05C6F0166FF1012A88948DED1CE
+CT=2274E43F9F8A7081DF74D5225EC28AD8
+PT=0C8358EC431313223B59126BDBB36571
+
+I=300
+KEY=FA14699C20CFFE7DB68786E6117F95851348E8B02C1275DD2B4BBAE2936DB4BF
+CT=0C8358EC431313223B59126BDBB36571
+PT=03237A81EEA2EAFBB5AC0B3E635CC1AC
+
+I=301
+KEY=B3744022A5397A735A4271261A2C96DF106B9231C2B09F269EE7B1DCF0317513
+CT=03237A81EEA2EAFBB5AC0B3E635CC1AC
+PT=409EBF7DF31FD9557118B1B5CAB5EBE3
+
+I=302
+KEY=8C7A22A934DCBC5E084E472DBAE4848350F52D4C31AF4673EFFF00693A849EF0
+CT=409EBF7DF31FD9557118B1B5CAB5EBE3
+PT=6CF5C9CF4A62C668B6481F7A12EE43DB
+
+I=303
+KEY=DB0497ED308C95BC9703265174B654D23C00E4837BCD801B59B71F13286ADD2B
+CT=6CF5C9CF4A62C668B6481F7A12EE43DB
+PT=D8A84E93CFF3EB9DC891333BDA5F3560
+
+I=304
+KEY=7A88D30D4CC9AB8EFA76139B68F0028AE4A8AA10B43E6B8691262C28F235E84B
+CT=D8A84E93CFF3EB9DC891333BDA5F3560
+PT=009E0C2454E321326336CC56D0660F91
+
+I=305
+KEY=55A78B8839B395B552630641648DFCE5E436A634E0DD4AB4F210E07E2253E7DA
+CT=009E0C2454E321326336CC56D0660F91
+PT=EBC89334F29560D9B9AEAE2F1D9DC65B
+
+I=306
+KEY=B41A907C82EDE32C6C1FD0DFED0A232D0FFE350012482A6D4BBE4E513FCE2181
+CT=EBC89334F29560D9B9AEAE2F1D9DC65B
+PT=4DA63E94EBB4DA255800C9B25068E47E
+
+I=307
+KEY=3E428E8A77067008EFDE7BD6174B05B742580B94F9FCF04813BE87E36FA6C5FF
+CT=4DA63E94EBB4DA255800C9B25068E47E
+PT=6833E2CEFA8CF4B5B4607FA49D7B658D
+
+I=308
+KEY=39D17AE8C7232386F8339427E4A79AAC2A6BE95A037004FDA7DEF847F2DDA072
+CT=6833E2CEFA8CF4B5B4607FA49D7B658D
+PT=41D882B653BEFEEEB9AE354F5ABCC058
+
+I=309
+KEY=E8D52C97FA4149312A45D3EFE0A326086BB36BEC50CEFA131E70CD08A861602A
+CT=41D882B653BEFEEEB9AE354F5ABCC058
+PT=D54A329BCF56B703BE0F02EE3AACB933
+
+I=310
+KEY=D36FAED6CF436A491111890449BC3C66BEF959779F984D10A07FCFE692CDD919
+CT=D54A329BCF56B703BE0F02EE3AACB933
+PT=5FAAEB95E0F9D0C3C43BF725DADC9595
+
+I=311
+KEY=9D7BCBB15816A0A941BBB787D2EEA155E153B2E27F619DD3644438C348114C8C
+CT=5FAAEB95E0F9D0C3C43BF725DADC9595
+PT=BC699D5E82FD43B45A7B925E8C1A2F3C
+
+I=312
+KEY=F2EB78917ECAC2E77C19B892E846AE715D3A2FBCFD9CDE673E3FAA9DC40B63B0
+CT=BC699D5E82FD43B45A7B925E8C1A2F3C
+PT=773D115B40F0E9EF780B2D10846FA684
+
+I=313
+KEY=B10B9F0CECA554749EC178F3C63547DD2A073EE7BD6C37884634878D4064C534
+CT=773D115B40F0E9EF780B2D10846FA684
+PT=50095809CC96520EB8E3A66F499EE147
+
+I=314
+KEY=E86E52AEB04DE0D3DC85A91E9B10D2677A0E66EE71FA6586FED721E209FA2473
+CT=50095809CC96520EB8E3A66F499EE147
+PT=6994CF8BA4C731CA33DAFE33D2A0BF94
+
+I=315
+KEY=44C3C8A2F0F931926AC73F3E5351B114139AA965D53D544CCD0DDFD1DB5A9BE7
+CT=6994CF8BA4C731CA33DAFE33D2A0BF94
+PT=981902A8FD71DF8B67D52E6FC2813B90
+
+I=316
+KEY=2D309D3D2603EC7E7B4EA626E9BDECFE8B83ABCD284C8BC7AAD8F1BE19DBA077
+CT=981902A8FD71DF8B67D52E6FC2813B90
+PT=35FA9A93AE142F562E62771991752B78
+
+I=317
+KEY=E80939BCB4DB83768EBAD3CF2DD3F270BE79315E8658A49184BA86A788AE8B0F
+CT=35FA9A93AE142F562E62771991752B78
+PT=A3651DBF8585004F0729AF4CA615C674
+
+I=318
+KEY=BF1A4C57D4434FA59A2E45DB589AA16F1D1C2CE103DDA4DE839329EB2EBB4D7B
+CT=A3651DBF8585004F0729AF4CA615C674
+PT=AF31F082CACEB768627B93A4D3E5349A
+
+I=319
+KEY=6EB47730BACAAB2207A3D12B0652B0CDB22DDC63C91313B6E1E8BA4FFD5E79E1
+CT=AF31F082CACEB768627B93A4D3E5349A
+PT=57B75D2B640F45DB2D4A1F71F08545A5
+
+I=320
+KEY=3EB0F3D31E648E260FE9F6FA8812ADD1E59A8148AD1C566DCCA2A53E0DDB3C44
+CT=57B75D2B640F45DB2D4A1F71F08545A5
+PT=A812DA38D7B82DF310366FA62FFD11E6
+
+I=321
+KEY=0409A87F024E710C27E456CA170B60184D885B707AA47B9EDC94CA9822262DA2
+CT=A812DA38D7B82DF310366FA62FFD11E6
+PT=447F235914368F2BECD5FF98D1A34205
+
+I=322
+KEY=7DE3A1E7234BF755908324E13DF413EB09F778296E92F4B530413500F3856FA7
+CT=447F235914368F2BECD5FF98D1A34205
+PT=5205860E4562B5CD6748EF89BF2791E9
+
+I=323
+KEY=12EE9519335A2D827649D4EB047EB5255BF2FE272BF041785709DA894CA2FE4E
+CT=5205860E4562B5CD6748EF89BF2791E9
+PT=30C0229AFDFF59E24426ACAD8D4AEFDB
+
+I=324
+KEY=78FF32A055D51E0A9D6E77D838AE72AD6B32DCBDD60F189A132F7624C1E81195
+CT=30C0229AFDFF59E24426ACAD8D4AEFDB
+PT=FF467C6E0F82F5D2F9487DDBDB43EFB3
+
+I=325
+KEY=6E49FA4CDEFC70619F739B488DD434969474A0D3D98DED48EA670BFF1AABFE26
+CT=FF467C6E0F82F5D2F9487DDBDB43EFB3
+PT=7E375B3D13871B09CA4D3357AC5EBB0E
+
+I=326
+KEY=90791666C996FF15EED1E20BAFB6B4B3EA43FBEECA0AF641202A38A8B6F54528
+CT=7E375B3D13871B09CA4D3357AC5EBB0E
+PT=E64A319F6FBD96BD799760C4077F9713
+
+I=327
+KEY=7F0D0CAB938585CF65726A6CB01DE8B00C09CA71A5B760FC59BD586CB18AD23B
+CT=E64A319F6FBD96BD799760C4077F9713
+PT=1487C8488C675BD46FAF2EEC0BC7AE7E
+
+I=328
+KEY=7B429E6D59D4D65E16ED325F49E93D9C188E023929D03B2836127680BA4D7C45
+CT=1487C8488C675BD46FAF2EEC0BC7AE7E
+PT=1F103E64A4F5239C9157E70487C50941
+
+I=329
+KEY=AF20B02C3C5BD4E33E34359B86BBF2CF079E3C5D8D2518B4A74591843D887504
+CT=1F103E64A4F5239C9157E70487C50941
+PT=24C8481DD1A2245735597A18A2433E41
+
+I=330
+KEY=E4F3CE6AFF9926837BAAB04C311F72A7235674405C873CE3921CEB9C9FCB4B45
+CT=24C8481DD1A2245735597A18A2433E41
+PT=3D9E715A686DE9AF8EE37AF54F82AA8A
+
+I=331
+KEY=A9BACBEC55AA453A83FF82CFDDB7F2F91EC8051A34EAD54C1CFF9169D049E1CF
+CT=3D9E715A686DE9AF8EE37AF54F82AA8A
+PT=B330735D9AB5B96501CDAF61A8EAD19F
+
+I=332
+KEY=5826BE9127DB557D401AF4DE6343F8AFADF87647AE5F6C291D323E0878A33050
+CT=B330735D9AB5B96501CDAF61A8EAD19F
+PT=61AE40475EA11DBCC364F5377673CE37
+
+I=333
+KEY=A8F0146E46A5391D0663380DF9F1FD6FCC563600F0FE7195DE56CB3F0ED0FE67
+CT=61AE40475EA11DBCC364F5377673CE37
+PT=525C1ED538B23D7CFA4A43114CF35BD4
+
+I=334
+KEY=20F90A51E7A0BB9B88AE1DD28C8B484A9E0A28D5C84C4CE9241C882E4223A5B3
+CT=525C1ED538B23D7CFA4A43114CF35BD4
+PT=C2957E002E35236D455F53006495E4B7
+
+I=335
+KEY=A71CC695B7AEB0D5148FA622536669385C9F56D5E6796F846143DB2E26B64104
+CT=C2957E002E35236D455F53006495E4B7
+PT=76F9C97A4B414E5DE532082BB12F5362
+
+I=336
+KEY=617CF5726F26BD9A3B52FC0D902A97AD2A669FAFAD3821D98471D30597991266
+CT=76F9C97A4B414E5DE532082BB12F5362
+PT=F4D9E814D4C61B2FB1D7CDCCBAF14AA1
+
+I=337
+KEY=D4DBBCC269A61933E4D63C3BDA5F522EDEBF77BB79FE3AF635A61EC92D6858C7
+CT=F4D9E814D4C61B2FB1D7CDCCBAF14AA1
+PT=6B51AF38B42F226D62474A97BD001FFF
+
+I=338
+KEY=512FAF06A5885D032A885EC030AF3C18B5EED883CDD1189B57E1545E90684738
+CT=6B51AF38B42F226D62474A97BD001FFF
+PT=868C58D6B805CF8F9EB04A8BA123371A
+
+I=339
+KEY=BDD2CB78E9B554FC7FEEEC05D02309F23362805575D4D714C9511ED5314B7022
+CT=868C58D6B805CF8F9EB04A8BA123371A
+PT=1752558A1F90975140CA41F68BE5333F
+
+I=340
+KEY=15CC46826BFD5B45ABAE9B0B2756D39C2430D5DF6A444045899B5F23BAAE431D
+CT=1752558A1F90975140CA41F68BE5333F
+PT=68801EAB4042E7390E64AA53C38C1D15
+
+I=341
+KEY=DF5FB425C5B25E15EA717736D8ABE6644CB0CB742A06A77C87FFF57079225E08
+CT=68801EAB4042E7390E64AA53C38C1D15
+PT=02FE87211909D8954EC90EF53100F26D
+
+I=342
+KEY=CD73FCED5EBA6038DD8B8A000111BEF94E4E4C55330F7FE9C936FB854822AC65
+CT=02FE87211909D8954EC90EF53100F26D
+PT=3A51FAFD22A2CC95B532023A37BBF0FE
+
+I=343
+KEY=EF890ED47D9F1581CC98C88F3BF7F88D741FB6A811ADB37C7C04F9BF7F995C9B
+CT=3A51FAFD22A2CC95B532023A37BBF0FE
+PT=D233A6BBC315BA5F4630AE7F99F77116
+
+I=344
+KEY=AA9CA1A7DFA24E1936E49D34054F7749A62C1013D2B809233A3457C0E66E2D8D
+CT=D233A6BBC315BA5F4630AE7F99F77116
+PT=E6B9619D7B0E1DF6CFE79FD51533406B
+
+I=345
+KEY=ADC4161B346687F98D4CB5B661662A8A4095718EA9B614D5F5D3C815F35D6DE6
+CT=E6B9619D7B0E1DF6CFE79FD51533406B
+PT=A746D31BCB29F7512E3F6E5EFD14FDAD
+
+I=346
+KEY=9C1CA3776C9ED13D220453C8AEFA0ECDE7D3A295629FE384DBECA64B0E49904B
+CT=A746D31BCB29F7512E3F6E5EFD14FDAD
+PT=B2489A51878848EC37E6782FB2110122
+
+I=347
+KEY=B64A5B45ABFDEC3EF8164FCEAE89919E559B38C4E517AB68EC0ADE64BC589169
+CT=B2489A51878848EC37E6782FB2110122
+PT=EF77F9367A063FDB874C9FC96983EAD1
+
+I=348
+KEY=AEFFDEE2501961FEEB985134E2B651EDBAECC1F29F1194B36B4641ADD5DB7BB8
+CT=EF77F9367A063FDB874C9FC96983EAD1
+PT=4ECFF4DA51BB2BE1EF8E85C4BBE51C69
+
+I=349
+KEY=6B28BA96CEB25B3862F413A2CBED4889F4233528CEAABF5284C8C4696E3E67D1
+CT=4ECFF4DA51BB2BE1EF8E85C4BBE51C69
+PT=0CAEAF484505A1AF13BB0ADCC665F91C
+
+I=350
+KEY=2062889724A47DD541F1F0A3FC8C5952F88D9A608BAF1EFD9773CEB5A85B9ECD
+CT=0CAEAF484505A1AF13BB0ADCC665F91C
+PT=6C75CA469CACCCE29CAE88202E02727C
+
+I=351
+KEY=C2115A8A6EE164B944A8C8128EBAB8E694F850261703D21F0BDD46958659ECB1
+CT=6C75CA469CACCCE29CAE88202E02727C
+PT=567060CEFF3AEDDE8AB5823450E35967
+
+I=352
+KEY=C3D2704E15936C6916073E234D0012CCC28830E8E8393FC18168C4A1D6BAB5D6
+CT=567060CEFF3AEDDE8AB5823450E35967
+PT=E04F927E409060080EC530D5C344CA24
+
+I=353
+KEY=49173A9FB3283181B71264E3FB5591FA22C7A296A8A95FC98FADF47415FE7FF2
+CT=E04F927E409060080EC530D5C344CA24
+PT=4D473408396C17D4BA3DBB63B46E7727
+
+I=354
+KEY=8BF3DDDC9217496E29F46E61233D62B66F80969E91C5481D35904F17A19008D5
+CT=4D473408396C17D4BA3DBB63B46E7727
+PT=BB6779933AC9E435C637CDA146A04284
+
+I=355
+KEY=6ACA3C31248BFBB5BB9FD54C4B31BC21D4E7EF0DAB0CAC28F3A782B6E7304A51
+CT=BB6779933AC9E435C637CDA146A04284
+PT=5C2129A55114540ED68591C60E45D6CF
+
+I=356
+KEY=1A270DAD402DC752332671216A6C3BFF88C6C6A8FA18F82625221370E9759C9E
+CT=5C2129A55114540ED68591C60E45D6CF
+PT=57790B87F69BF1C007E563A82987EEAE
+
+I=357
+KEY=6E39E75268AC2C51ABE11CE3CE16CAF3DFBFCD2F0C8309E622C770D8C0F27230
+CT=57790B87F69BF1C007E563A82987EEAE
+PT=58790B192C8B90B76F34990E28A6689A
+
+I=358
+KEY=2367A67114D722A79F9434B5A418BEEB87C6C636200899514DF3E9D6E8541AAA
+CT=58790B192C8B90B76F34990E28A6689A
+PT=599CA8B58EFE301A87CE72540CCB4067
+
+I=359
+KEY=A4CE195518F7E36D7E0D5C9666802411DE5A6E83AEF6A94BCA3D9B82E49F5ACD
+CT=599CA8B58EFE301A87CE72540CCB4067
+PT=4483131C7E03089F898166A5B3E85E3A
+
+I=360
+KEY=73C5204211D3648DAAF5FE071186C0E99AD97D9FD0F5A1D443BCFD27577704F7
+CT=4483131C7E03089F898166A5B3E85E3A
+PT=DBF64C5A0897B343BAF7047A6C564D02
+
+I=361
+KEY=1A3831AFF223BB2FE79C8EF8845E553C412F31C5D8621297F94BF95D3B2149F5
+CT=DBF64C5A0897B343BAF7047A6C564D02
+PT=B24420DA45E3620B619978CB09F1860C
+
+I=362
+KEY=31EF243EF87C32148751F8F299151042F36B111F9D81709C98D2819632D0CFF9
+CT=B24420DA45E3620B619978CB09F1860C
+PT=12B466EF6AE6F28AF78AC184DB8B3C83
+
+I=363
+KEY=9E935E6F5D76BEE2E639F2880C8352EEE1DF77F0F76782166F584012E95BF37A
+CT=12B466EF6AE6F28AF78AC184DB8B3C83
+PT=518E89A35CF55D591DE8BB924D8F96E7
+
+I=364
+KEY=C6398957838B02B5948A95DCBFBF2813B051FE53AB92DF4F72B0FB80A4D4659D
+CT=518E89A35CF55D591DE8BB924D8F96E7
+PT=1FDF7FE52BD46EF54F1F7A6242B04BD8
+
+I=365
+KEY=5764E84D9000518C185717581E0D70E5AF8E81B68046B1BA3DAF81E2E6642E45
+CT=1FDF7FE52BD46EF54F1F7A6242B04BD8
+PT=2C68E67C37B50056E80DC09B9ED84AA8
+
+I=366
+KEY=5F8CB51BF30B954B4AC09620B0A20FCA83E667CAB7F3B1ECD5A2417978BC64ED
+CT=2C68E67C37B50056E80DC09B9ED84AA8
+PT=14CC2D821B03BE21355A779B9066BE41
+
+I=367
+KEY=50B32E6D62EE3B8CE2DD5797BA70D8D2972A4A48ACF00FCDE0F836E2E8DADAAC
+CT=14CC2D821B03BE21355A779B9066BE41
+PT=BB09D339888C27294E73326E64AC3B21
+
+I=368
+KEY=E1B2199CAF1C3FA78E973ACF5C3AC8702C239971247C28E4AE8B048C8C76E18D
+CT=BB09D339888C27294E73326E64AC3B21
+PT=BCFBD8255802CC8233AEA86E49089328
+
+I=369
+KEY=3403D2498A4562E73734D065E9B44AD890D841547C7EE4669D25ACE2C57E72A5
+CT=BCFBD8255802CC8233AEA86E49089328
+PT=5A919AC72F12DB1FAB8E4876FBA8842B
+
+I=370
+KEY=B979FA15F93E5ACA1F6E452C9053751BCA49DB93536C3F7936ABE4943ED6F68E
+CT=5A919AC72F12DB1FAB8E4876FBA8842B
+PT=BDB03BD29FD3828AF1AE8C729F37F88A
+
+I=371
+KEY=A8CDF9FE3C0227A9107C700C404AE39777F9E041CCBFBDF3C70568E6A1E10E04
+CT=BDB03BD29FD3828AF1AE8C729F37F88A
+PT=0AAC43CE316476F3A532D44B4DFBF4B8
+
+I=372
+KEY=B4D497FBD5DE2CA68FF60C701E208A257D55A38FFDDBCB006237BCADEC1AFABC
+CT=0AAC43CE316476F3A532D44B4DFBF4B8
+PT=853A5EE7CB3C4BB3F0120BB2CFFB4436
+
+I=373
+KEY=A019DCC09A4CAAA3772BF4C54C8828E9F86FFD6836E780B39225B71F23E1BE8A
+CT=853A5EE7CB3C4BB3F0120BB2CFFB4436
+PT=B525599C918446AF4EA9F6965F3971EA
+
+I=374
+KEY=238BF8B851B0864F9BEC8E242B7795D14D4AA4F4A763C61CDC8C41897CD8CF60
+CT=B525599C918446AF4EA9F6965F3971EA
+PT=A8377EC293D41F74A0A2DB66BA7D3D2F
+
+I=375
+KEY=AF9E313988F294AE6A8155BC76F2514BE57DDA3634B7D9687C2E9AEFC6A5F24F
+CT=A8377EC293D41F74A0A2DB66BA7D3D2F
+PT=301BD4D318101A02166EBC23DED9C12D
+
+I=376
+KEY=3B6186F7ACE8E9B022DDE0ECF5D808D3D5660EE52CA7C36A6A4026CC187C3362
+CT=301BD4D318101A02166EBC23DED9C12D
+PT=05BD0686BE53B94FB1B42AE407BE081C
+
+I=377
+KEY=EADED20A0F405D9E3AAE404FB074162ED0DB086392F47A25DBF40C281FC23B7E
+CT=05BD0686BE53B94FB1B42AE407BE081C
+PT=7A3AF681F2043806EDB761F65D9A6C3A
+
+I=378
+KEY=AA6F474F5F5FF513FC992E4232061B75AAE1FEE260F0422336436DDE42585744
+CT=7A3AF681F2043806EDB761F65D9A6C3A
+PT=3C297DE35CCF4E6E0A800B9A3EE37C95
+
+I=379
+KEY=68BFE30863F135A09B81BE2800CBBC3796C883013C3F0C4D3CC366447CBB2BD1
+CT=3C297DE35CCF4E6E0A800B9A3EE37C95
+PT=5F8AAC15C74CC7EA87A1AC185103A9D7
+
+I=380
+KEY=9093DEBE66D714180BEB8FE51C4807ADC9422F14FB73CBA7BB62CA5C2DB88206
+CT=5F8AAC15C74CC7EA87A1AC185103A9D7
+PT=083AF3AF30961FD5A077F5564D55E9E9
+
+I=381
+KEY=A1E1049159A94DF638092C90F7707CD7C178DCBBCBE5D4721B153F0A60ED6BEF
+CT=083AF3AF30961FD5A077F5564D55E9E9
+PT=89BEFF6AB40B18ECD9413446E848253A
+
+I=382
+KEY=7C506732A8863DB1BF61EFC710F22D2348C623D17FEECC9EC2540B4C88A54ED5
+CT=89BEFF6AB40B18ECD9413446E848253A
+PT=095B2C04636C9C5BF9735BCA21211EAA
+
+I=383
+KEY=7283413612863BA1E1B5AE93DF1318F5419D0FD51C8250C53B275086A984507F
+CT=095B2C04636C9C5BF9735BCA21211EAA
+PT=E95DB3DB1E3A478C8A31212B28E0E7BC
+
+I=384
+KEY=BE861CED86D725162D938727D7AEFC1BA8C0BC0E02B81749B11671AD8164B7C3
+CT=E95DB3DB1E3A478C8A31212B28E0E7BC
+PT=9927F1D7EF0631500E1DF058932BF320
+
+I=385
+KEY=45AA89CBCE192CEEC22BF5F33DDE0E8D31E74DD9EDBE2619BF0B81F5124F44E3
+CT=9927F1D7EF0631500E1DF058932BF320
+PT=4B1147179F2AF27E5C9DBB7F01CC56A8
+
+I=386
+KEY=B08A08DABC52884E9EBB310236815BFE7AF60ACE7294D467E3963A8A1383124B
+CT=4B1147179F2AF27E5C9DBB7F01CC56A8
+PT=E9752A7D47734DACAC6E74A1A3EC4956
+
+I=387
+KEY=34B4424CE75A4A1BCE9E6C825F5F0DC1938320B335E799CB4FF84E2BB06F5B1D
+CT=E9752A7D47734DACAC6E74A1A3EC4956
+PT=AB2D652BCEE42804C5155980DA02CECC
+
+I=388
+KEY=F9954BB1A793565A79AA2B9DF408A34A38AE4598FB03B1CF8AED17AB6A6D95D1
+CT=AB2D652BCEE42804C5155980DA02CECC
+PT=3C6651362E89F6C6B28C04CA22F110EC
+
+I=389
+KEY=9548931715FB259E318020E30D68165604C814AED58A470938611361489C853D
+CT=3C6651362E89F6C6B28C04CA22F110EC
+PT=15598364698838475AB96F95CFCF3342
+
+I=390
+KEY=1CDB0706417BBE66B559237109353221119197CABC027F4E62D87CF48753B67F
+CT=15598364698838475AB96F95CFCF3342
+PT=D8B3BB941893206E1CA6654B81F403E4
+
+I=391
+KEY=8C4AD897B595252B0987673F45EE73F2C9222C5EA4915F207E7E19BF06A7B59B
+CT=D8B3BB941893206E1CA6654B81F403E4
+PT=ECE471CC2FF45C26C7143C41702F90D2
+
+I=392
+KEY=A6D3DF3279B7405256C0D22DA240524125C65D928B650306B96A25FE76882549
+CT=ECE471CC2FF45C26C7143C41702F90D2
+PT=AB387AE5A5FC892C311D97C22467940D
+
+I=393
+KEY=36F250F7C3906C7E0020055422CDB8B28EFE27772E998A2A8877B23C52EFB144
+CT=AB387AE5A5FC892C311D97C22467940D
+PT=FF48C2C77D5F52DF27C4060DF7F895D7
+
+I=394
+KEY=4FF045275860B943EDE02C802F34B71B71B6E5B053C6D8F5AFB3B431A5172493
+CT=FF48C2C77D5F52DF27C4060DF7F895D7
+PT=221BC444E2A6A7F8DE9DA16AB01EB2AC
+
+I=395
+KEY=E15B4E0E242FBABF1D47E9DBE6D0660253AD21F4B1607F0D712E155B1509963F
+CT=221BC444E2A6A7F8DE9DA16AB01EB2AC
+PT=DE252D19973ABD9F182049D39455784B
+
+I=396
+KEY=401023A611A3133C895A3684AB3E7C9D8D880CED265AC292690E5C88815CEE74
+CT=DE252D19973ABD9F182049D39455784B
+PT=843163BD101982EE948039915C8F60D8
+
+I=397
+KEY=B9DDF52C271F143E523532E45E6F368D09B96F503643407CFD8E6519DDD38EAC
+CT=843163BD101982EE948039915C8F60D8
+PT=6FD9D36B751854C3417F29E8F3B654D9
+
+I=398
+KEY=AC7F45F8630CE02525F9F4941B4E13206660BC3B435B14BFBCF14CF12E65DA75
+CT=6FD9D36B751854C3417F29E8F3B654D9
+PT=E1268BA8A1473DEDE6CA64DDF2C8B805
+
+I=399
+KEY=DE11FF0A429E1CD3DE016DAC294F771187463793E21C29525A3B282CDCAD6270
+CT=E1268BA8A1473DEDE6CA64DDF2C8B805
+PT=4DE0C6DF7CB1697284604D60271BC59A
+
+==========
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_e_m.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,6024 @@
+
+=========================
+
+FILENAME:  "ecb_e_m.txt"
+
+Electronic Codebook (ECB) Mode - ENCRYPTION
+Monte Carlo Test
+
+Algorithm Name: Rijndael
+Principal Submitter: <as stated on the submission cover sheet>
+
+==========
+
+KEYSIZE=128
+
+I=0
+KEY=00000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=C34C052CC0DA8D73451AFE5F03BE297F
+
+I=1
+KEY=C34C052CC0DA8D73451AFE5F03BE297F
+PT=C34C052CC0DA8D73451AFE5F03BE297F
+CT=0AC15A9AFBB24D54AD99E987208272E2
+
+I=2
+KEY=C98D5FB63B68C027E88317D8233C5B9D
+PT=0AC15A9AFBB24D54AD99E987208272E2
+CT=A3D43BFFA65D0E80092F67A314857870
+
+I=3
+KEY=6A5964499D35CEA7E1AC707B37B923ED
+PT=A3D43BFFA65D0E80092F67A314857870
+CT=355F697E8B868B65B25A04E18D782AFA
+
+I=4
+KEY=5F060D3716B345C253F6749ABAC10917
+PT=355F697E8B868B65B25A04E18D782AFA
+CT=ACC863637868E3E068D2FD6E3508454A
+
+I=5
+KEY=F3CE6E546EDBA6223B2489F48FC94C5D
+PT=ACC863637868E3E068D2FD6E3508454A
+CT=665F9F12A824F3D52A1C71D6210D5470
+
+I=6
+KEY=9591F146C6FF55F71138F822AEC4182D
+PT=665F9F12A824F3D52A1C71D6210D5470
+CT=9B27361DBC8E5618E8E98036F5AD40B0
+
+I=7
+KEY=0EB6C75B7A7103EFF9D178145B69589D
+PT=9B27361DBC8E5618E8E98036F5AD40B0
+CT=21D9BD7EBA0163A293F2D56C316CBD36
+
+I=8
+KEY=2F6F7A25C070604D6A23AD786A05E5AB
+PT=21D9BD7EBA0163A293F2D56C316CBD36
+CT=3E8037A9988E28FF81F2A7154ACD91BE
+
+I=9
+KEY=11EF4D8C58FE48B2EBD10A6D20C87415
+PT=3E8037A9988E28FF81F2A7154ACD91BE
+CT=014EE14F1AA8C0D4A47A72F197F4DCB0
+
+I=10
+KEY=10A1ACC3425688664FAB789CB73CA8A5
+PT=014EE14F1AA8C0D4A47A72F197F4DCB0
+CT=0B542083DBC03A96AA00C1A5AE58C9F1
+
+I=11
+KEY=1BF58C409996B2F0E5ABB93919646154
+PT=0B542083DBC03A96AA00C1A5AE58C9F1
+CT=7340B59E1E3BB9211CE167F2DEBDB090
+
+I=12
+KEY=68B539DE87AD0BD1F94ADECBC7D9D1C4
+PT=7340B59E1E3BB9211CE167F2DEBDB090
+CT=67E05F75135BA834CBCDCFF068541BBE
+
+I=13
+KEY=0F5566AB94F6A3E53287113BAF8DCA7A
+PT=67E05F75135BA834CBCDCFF068541BBE
+CT=8BD5553105C3507B0A07FDB351B25B4F
+
+I=14
+KEY=8480339A9135F39E3880EC88FE3F9135
+PT=8BD5553105C3507B0A07FDB351B25B4F
+CT=649F061F95C0A79BD3066EFFE5B27CAB
+
+I=15
+KEY=E01F358504F55405EB8682771B8DED9E
+PT=649F061F95C0A79BD3066EFFE5B27CAB
+CT=697F4EB0603340E90FE91C27B6D9CEAA
+
+I=16
+KEY=89607B3564C614ECE46F9E50AD542334
+PT=697F4EB0603340E90FE91C27B6D9CEAA
+CT=A8CBBA624FA28A7F8637324E1E20CB9C
+
+I=17
+KEY=21ABC1572B649E936258AC1EB374E8A8
+PT=A8CBBA624FA28A7F8637324E1E20CB9C
+CT=73B852132DE715872A40EB25B1133C00
+
+I=18
+KEY=5213934406838B144818473B0267D4A8
+PT=73B852132DE715872A40EB25B1133C00
+CT=1328A1C2F386BB3E4D4BE0942B8249A2
+
+I=19
+KEY=413B3286F505302A0553A7AF29E59D0A
+PT=1328A1C2F386BB3E4D4BE0942B8249A2
+CT=06F72DEA0067F543AA8C342CC9191745
+
+I=20
+KEY=47CC1F6CF562C569AFDF9383E0FC8A4F
+PT=06F72DEA0067F543AA8C342CC9191745
+CT=110B6011B60C94382C2321BFCAA62A1C
+
+I=21
+KEY=56C77F7D436E515183FCB23C2A5AA053
+PT=110B6011B60C94382C2321BFCAA62A1C
+CT=80C90EF6794361DFA400EFE922F45A59
+
+I=22
+KEY=D60E718B3A2D308E27FC5DD508AEFA0A
+PT=80C90EF6794361DFA400EFE922F45A59
+CT=F8DF0AC62EE229245DB1F300F2E5B143
+
+I=23
+KEY=2ED17B4D14CF19AA7A4DAED5FA4B4B49
+PT=F8DF0AC62EE229245DB1F300F2E5B143
+CT=45390146539E773B502E84A0C29AD5B0
+
+I=24
+KEY=6BE87A0B47516E912A632A7538D19EF9
+PT=45390146539E773B502E84A0C29AD5B0
+CT=B07721757865838BDFC2329998B5174F
+
+I=25
+KEY=DB9F5B7E3F34ED1AF5A118ECA06489B6
+PT=B07721757865838BDFC2329998B5174F
+CT=B83F3B7A9FFBA35DF1D6661A0F8AD0F4
+
+I=26
+KEY=63A06004A0CF4E4704777EF6AFEE5942
+PT=B83F3B7A9FFBA35DF1D6661A0F8AD0F4
+CT=7098C99B1B245DE623B78F1B07D08EBE
+
+I=27
+KEY=1338A99FBBEB13A127C0F1EDA83ED7FC
+PT=7098C99B1B245DE623B78F1B07D08EBE
+CT=58A095EF9268B923920238486D0B13E1
+
+I=28
+KEY=4B983C702983AA82B5C2C9A5C535C41D
+PT=58A095EF9268B923920238486D0B13E1
+CT=97DD8052CE0D87715075A42942C120ED
+
+I=29
+KEY=DC45BC22E78E2DF3E5B76D8C87F4E4F0
+PT=97DD8052CE0D87715075A42942C120ED
+CT=F480B5A67DAFCB9524DC21453AF66FAF
+
+I=30
+KEY=28C509849A21E666C16B4CC9BD028B5F
+PT=F480B5A67DAFCB9524DC21453AF66FAF
+CT=71CE64CE8C98367F2F12E6851AC70FF3
+
+I=31
+KEY=590B6D4A16B9D019EE79AA4CA7C584AC
+PT=71CE64CE8C98367F2F12E6851AC70FF3
+CT=81C3AA693CC1C647399701DA17D5FDD5
+
+I=32
+KEY=D8C8C7232A78165ED7EEAB96B0107979
+PT=81C3AA693CC1C647399701DA17D5FDD5
+CT=5BB93103F6DDF0415592EE2217704D41
+
+I=33
+KEY=8371F620DCA5E61F827C45B4A7603438
+PT=5BB93103F6DDF0415592EE2217704D41
+CT=87B8B17FF9079829AB5C47E055FFCEE3
+
+I=34
+KEY=04C9475F25A27E3629200254F29FFADB
+PT=87B8B17FF9079829AB5C47E055FFCEE3
+CT=615FE7D34154F42D6CE9D647904295E0
+
+I=35
+KEY=6596A08C64F68A1B45C9D41362DD6F3B
+PT=615FE7D34154F42D6CE9D647904295E0
+CT=A60C213CDF9B54DF9041948F98585CE2
+
+I=36
+KEY=C39A81B0BB6DDEC4D588409CFA8533D9
+PT=A60C213CDF9B54DF9041948F98585CE2
+CT=FB126C61071EB9167B6FF28E5244E624
+
+I=37
+KEY=3888EDD1BC7367D2AEE7B212A8C1D5FD
+PT=FB126C61071EB9167B6FF28E5244E624
+CT=8A79CE45F030B91B53D1591D10FF1B02
+
+I=38
+KEY=B2F123944C43DEC9FD36EB0FB83ECEFF
+PT=8A79CE45F030B91B53D1591D10FF1B02
+CT=BE20190BAE15162F43E93F67A580192B
+
+I=39
+KEY=0CD13A9FE256C8E6BEDFD4681DBED7D4
+PT=BE20190BAE15162F43E93F67A580192B
+CT=0107D3E3511F91545D02B498A9E3C318
+
+I=40
+KEY=0DD6E97CB34959B2E3DD60F0B45D14CC
+PT=0107D3E3511F91545D02B498A9E3C318
+CT=2A832A1205D6B5FCF1B20126EE59DD9D
+
+I=41
+KEY=2755C36EB69FEC4E126F61D65A04C951
+PT=2A832A1205D6B5FCF1B20126EE59DD9D
+CT=F362782F550DCBFC49CEF15C3A0ABA7A
+
+I=42
+KEY=D437BB41E39227B25BA1908A600E732B
+PT=F362782F550DCBFC49CEF15C3A0ABA7A
+CT=51A8A0C6434A3BE8C939B6DDD56EAA53
+
+I=43
+KEY=859F1B87A0D81C5A92982657B560D978
+PT=51A8A0C6434A3BE8C939B6DDD56EAA53
+CT=89D3F1086F3D96C18A76C61F25A52221
+
+I=44
+KEY=0C4CEA8FCFE58A9B18EEE04890C5FB59
+PT=89D3F1086F3D96C18A76C61F25A52221
+CT=A5F7E0A5FA70DDB718EF970F50EB7B86
+
+I=45
+KEY=A9BB0A2A3595572C00017747C02E80DF
+PT=A5F7E0A5FA70DDB718EF970F50EB7B86
+CT=7BB64305538E71AFBF993B5BD23D5523
+
+I=46
+KEY=D20D492F661B2683BF984C1C1213D5FC
+PT=7BB64305538E71AFBF993B5BD23D5523
+CT=E6BF8F5338568603EC668C6D15331FA5
+
+I=47
+KEY=34B2C67C5E4DA08053FEC0710720CA59
+PT=E6BF8F5338568603EC668C6D15331FA5
+CT=27644649FCDF52085CDB20E3DEE1E2F6
+
+I=48
+KEY=13D68035A292F2880F25E092D9C128AF
+PT=27644649FCDF52085CDB20E3DEE1E2F6
+CT=7629AACAED7F49938373C83410AD1744
+
+I=49
+KEY=65FF2AFF4FEDBB1B8C5628A6C96C3FEB
+PT=7629AACAED7F49938373C83410AD1744
+CT=D440FC6E9A65819934FAF8641C05A17C
+
+I=50
+KEY=B1BFD691D5883A82B8ACD0C2D5699E97
+PT=D440FC6E9A65819934FAF8641C05A17C
+CT=FBEE29FEFD725E1852B58502D3076C46
+
+I=51
+KEY=4A51FF6F28FA649AEA1955C0066EF2D1
+PT=FBEE29FEFD725E1852B58502D3076C46
+CT=E345A47A6C89BE4350CDD8C9D319529D
+
+I=52
+KEY=A9145B154473DAD9BAD48D09D577A04C
+PT=E345A47A6C89BE4350CDD8C9D319529D
+CT=1C6A7CBAF21E483B6025DB6DA573C5C6
+
+I=53
+KEY=B57E27AFB66D92E2DAF156647004658A
+PT=1C6A7CBAF21E483B6025DB6DA573C5C6
+CT=2B05F4D8EB50D851A013798753B65A1F
+
+I=54
+KEY=9E7BD3775D3D4AB37AE22FE323B23F95
+PT=2B05F4D8EB50D851A013798753B65A1F
+CT=CEFE04978228A0DBCCE9EE42B21DD34A
+
+I=55
+KEY=5085D7E0DF15EA68B60BC1A191AFECDF
+PT=CEFE04978228A0DBCCE9EE42B21DD34A
+CT=7B41DF8CD85B61EA800536648DBDA2AE
+
+I=56
+KEY=2BC4086C074E8B82360EF7C51C124E71
+PT=7B41DF8CD85B61EA800536648DBDA2AE
+CT=08688872151D18CD19E2FC14B9E4C962
+
+I=57
+KEY=23AC801E1253934F2FEC0BD1A5F68713
+PT=08688872151D18CD19E2FC14B9E4C962
+CT=F08C88BE5E748C4D82D2E7D7813A33AF
+
+I=58
+KEY=D32008A04C271F02AD3EEC0624CCB4BC
+PT=F08C88BE5E748C4D82D2E7D7813A33AF
+CT=319B7D38AB1AC3AEA0A0490C341F4F20
+
+I=59
+KEY=E2BB7598E73DDCAC0D9EA50A10D3FB9C
+PT=319B7D38AB1AC3AEA0A0490C341F4F20
+CT=EE70748772E8D88B2717D78F31F0EA86
+
+I=60
+KEY=0CCB011F95D504272A8972852123111A
+PT=EE70748772E8D88B2717D78F31F0EA86
+CT=A3A5DC791EA1BBB9D7A2B292572DFD5C
+
+I=61
+KEY=AF6EDD668B74BF9EFD2BC017760EEC46
+PT=A3A5DC791EA1BBB9D7A2B292572DFD5C
+CT=255692B06B3A18498BCAF99F7B3EE374
+
+I=62
+KEY=8A384FD6E04EA7D776E139880D300F32
+PT=255692B06B3A18498BCAF99F7B3EE374
+CT=500E492232891293875F50279B5DC5C3
+
+I=63
+KEY=DA3606F4D2C7B544F1BE69AF966DCAF1
+PT=500E492232891293875F50279B5DC5C3
+CT=57C3FCCE9B5BA3BC19BBF7BB9B37A9AC
+
+I=64
+KEY=8DF5FA3A499C16F8E8059E140D5A635D
+PT=57C3FCCE9B5BA3BC19BBF7BB9B37A9AC
+CT=BF06FDFDB687C8B24FB0E2A6D6D37EA5
+
+I=65
+KEY=32F307C7FF1BDE4AA7B57CB2DB891DF8
+PT=BF06FDFDB687C8B24FB0E2A6D6D37EA5
+CT=6D459ED545CF3C6FF2746411CD9B3E31
+
+I=66
+KEY=5FB69912BAD4E22555C118A3161223C9
+PT=6D459ED545CF3C6FF2746411CD9B3E31
+CT=C74E0704A9D9EC2D90F75B34FC95CD32
+
+I=67
+KEY=98F89E16130D0E08C5364397EA87EEFB
+PT=C74E0704A9D9EC2D90F75B34FC95CD32
+CT=0453D4FBC2D7F8E0AD0AD90F98D1EC5C
+
+I=68
+KEY=9CAB4AEDD1DAF6E8683C9A98725602A7
+PT=0453D4FBC2D7F8E0AD0AD90F98D1EC5C
+CT=5BBA052D6C39DC1E9553B7646CB7344B
+
+I=69
+KEY=C7114FC0BDE32AF6FD6F2DFC1EE136EC
+PT=5BBA052D6C39DC1E9553B7646CB7344B
+CT=9870FFE04984426501ECB55FFBB363CB
+
+I=70
+KEY=5F61B020F4676893FC8398A3E5525527
+PT=9870FFE04984426501ECB55FFBB363CB
+CT=1363D65F7C943FC4512E41A717D3704D
+
+I=71
+KEY=4C02667F88F35757ADADD904F281256A
+PT=1363D65F7C943FC4512E41A717D3704D
+CT=664762AED6BC5FB74A646A928837FC83
+
+I=72
+KEY=2A4504D15E4F08E0E7C9B3967AB6D9E9
+PT=664762AED6BC5FB74A646A928837FC83
+CT=655CB6BAB4B0532273689E4DC9234C42
+
+I=73
+KEY=4F19B26BEAFF5BC294A12DDBB39595AB
+PT=655CB6BAB4B0532273689E4DC9234C42
+CT=E8AAE0E0B9D2BE6259AEBC478DC90FD9
+
+I=74
+KEY=A7B3528B532DE5A0CD0F919C3E5C9A72
+PT=E8AAE0E0B9D2BE6259AEBC478DC90FD9
+CT=FECACAF43DD920FA3078256C6A587741
+
+I=75
+KEY=5979987F6EF4C55AFD77B4F05404ED33
+PT=FECACAF43DD920FA3078256C6A587741
+CT=11F3F56529B8B172D87A4C86BB90F3B6
+
+I=76
+KEY=488A6D1A474C7428250DF876EF941E85
+PT=11F3F56529B8B172D87A4C86BB90F3B6
+CT=B44340D44F1ABA37CB09FE57FC771A9E
+
+I=77
+KEY=FCC92DCE0856CE1FEE04062113E3041B
+PT=B44340D44F1ABA37CB09FE57FC771A9E
+CT=C49F12B88C34A0D696FE283B01D5710C
+
+I=78
+KEY=38563F7684626EC978FA2E1A12367517
+PT=C49F12B88C34A0D696FE283B01D5710C
+CT=58D6D2D36C14DDBDA7604AB740918D76
+
+I=79
+KEY=6080EDA5E876B374DF9A64AD52A7F861
+PT=58D6D2D36C14DDBDA7604AB740918D76
+CT=21F735F77B0EAD7551CE06900A568EB3
+
+I=80
+KEY=4177D85293781E018E54623D58F176D2
+PT=21F735F77B0EAD7551CE06900A568EB3
+CT=FE2E9BDB393BF6D1BBF108B8AC3B6818
+
+I=81
+KEY=BF594389AA43E8D035A56A85F4CA1ECA
+PT=FE2E9BDB393BF6D1BBF108B8AC3B6818
+CT=FECFCD3722C6C8E6608258341220E739
+
+I=82
+KEY=41968EBE88852036552732B1E6EAF9F3
+PT=FECFCD3722C6C8E6608258341220E739
+CT=10A8BB234C9D9A22DEC7887E931F85BD
+
+I=83
+KEY=513E359DC418BA148BE0BACF75F57C4E
+PT=10A8BB234C9D9A22DEC7887E931F85BD
+CT=767EB7DBA70BC7094DF7A5BDD233EB5C
+
+I=84
+KEY=2740824663137D1DC6171F72A7C69712
+PT=767EB7DBA70BC7094DF7A5BDD233EB5C
+CT=FCD7184F3F4DB7CA182225B9A358209D
+
+I=85
+KEY=DB979A095C5ECAD7DE353ACB049EB78F
+PT=FCD7184F3F4DB7CA182225B9A358209D
+CT=A5CD025AEBF0380EAC66EF034806179F
+
+I=86
+KEY=7E5A9853B7AEF2D97253D5C84C98A010
+PT=A5CD025AEBF0380EAC66EF034806179F
+CT=FE46F4A72C7031FE8D900152CD20B95F
+
+I=87
+KEY=801C6CF49BDEC327FFC3D49A81B8194F
+PT=FE46F4A72C7031FE8D900152CD20B95F
+CT=CF1ACB502A4B608C61364891E34F93A0
+
+I=88
+KEY=4F06A7A4B195A3AB9EF59C0B62F78AEF
+PT=CF1ACB502A4B608C61364891E34F93A0
+CT=95AB1367FF6C03DE87FFA282A3E52200
+
+I=89
+KEY=DAADB4C34EF9A075190A3E89C112A8EF
+PT=95AB1367FF6C03DE87FFA282A3E52200
+CT=762B6393252B347F55AF3E4CA16F2FC9
+
+I=90
+KEY=AC86D7506BD2940A4CA500C5607D8726
+PT=762B6393252B347F55AF3E4CA16F2FC9
+CT=A63491A22E23AD921ADAB9CC0DA20521
+
+I=91
+KEY=0AB246F245F13998567FB9096DDF8207
+PT=A63491A22E23AD921ADAB9CC0DA20521
+CT=C0852A5E7CEEAFB5FA87C440B598BFD6
+
+I=92
+KEY=CA376CAC391F962DACF87D49D8473DD1
+PT=C0852A5E7CEEAFB5FA87C440B598BFD6
+CT=485747C528B08033169E991E98E4CBB5
+
+I=93
+KEY=82602B6911AF161EBA66E45740A3F664
+PT=485747C528B08033169E991E98E4CBB5
+CT=415B95B222161A8C9ED20CF99C26848C
+
+I=94
+KEY=C33BBEDB33B90C9224B4E8AEDC8572E8
+PT=415B95B222161A8C9ED20CF99C26848C
+CT=7E673E6348C38CD40C9B11F4C9F3E3A0
+
+I=95
+KEY=BD5C80B87B7A8046282FF95A15769148
+PT=7E673E6348C38CD40C9B11F4C9F3E3A0
+CT=B88508E55279AFF0D848C38DBEC76B2C
+
+I=96
+KEY=05D9885D29032FB6F0673AD7ABB1FA64
+PT=B88508E55279AFF0D848C38DBEC76B2C
+CT=3902B5DC34E815BA50A53DB9C8FFAA92
+
+I=97
+KEY=3CDB3D811DEB3A0CA0C2076E634E50F6
+PT=3902B5DC34E815BA50A53DB9C8FFAA92
+CT=FEF57F51360547EA6B88085B8656A1D0
+
+I=98
+KEY=C22E42D02BEE7DE6CB4A0F35E518F126
+PT=FEF57F51360547EA6B88085B8656A1D0
+CT=94D052E1F097106A5B714ADD0EF79E64
+
+I=99
+KEY=56FE1031DB796D8C903B45E8EBEF6F42
+PT=94D052E1F097106A5B714ADD0EF79E64
+CT=7FD3EF411360E5270F63A8BACCCC74C0
+
+I=100
+KEY=292DFF70C81988AB9F58ED5227231B82
+PT=7FD3EF411360E5270F63A8BACCCC74C0
+CT=F572692DE6EFBC2309B947D1A75BE009
+
+I=101
+KEY=DC5F965D2EF6348896E1AA838078FB8B
+PT=F572692DE6EFBC2309B947D1A75BE009
+CT=BFD3233C513448C283C05311B8085B5C
+
+I=102
+KEY=638CB5617FC27C4A1521F9923870A0D7
+PT=BFD3233C513448C283C05311B8085B5C
+CT=078739F570071AA1A96A1F00F31E05FD
+
+I=103
+KEY=640B8C940FC566EBBC4BE692CB6EA52A
+PT=078739F570071AA1A96A1F00F31E05FD
+CT=947CA236277CDD0AC13C194B99E8CF16
+
+I=104
+KEY=F0772EA228B9BBE17D77FFD952866A3C
+PT=947CA236277CDD0AC13C194B99E8CF16
+CT=34DE5F2D355BC4ACE54AD0CB8C008CB8
+
+I=105
+KEY=C4A9718F1DE27F4D983D2F12DE86E684
+PT=34DE5F2D355BC4ACE54AD0CB8C008CB8
+CT=E5729CBD84C89B914F35412F902A2CA3
+
+I=106
+KEY=21DBED32992AE4DCD7086E3D4EACCA27
+PT=E5729CBD84C89B914F35412F902A2CA3
+CT=EB326D6ABAFC93EADBEC9B05CE4AAF0C
+
+I=107
+KEY=CAE9805823D677360CE4F53880E6652B
+PT=EB326D6ABAFC93EADBEC9B05CE4AAF0C
+CT=9F088089F8D8E8E28A9A2A1FF50F2ED3
+
+I=108
+KEY=55E100D1DB0E9FD4867EDF2775E94BF8
+PT=9F088089F8D8E8E28A9A2A1FF50F2ED3
+CT=C8D2BF3D6ADB57F478656D4808142160
+
+I=109
+KEY=9D33BFECB1D5C820FE1BB26F7DFD6A98
+PT=C8D2BF3D6ADB57F478656D4808142160
+CT=062016811215B9DBDD3C794A15FBEBBA
+
+I=110
+KEY=9B13A96DA3C071FB2327CB2568068122
+PT=062016811215B9DBDD3C794A15FBEBBA
+CT=71F9F04E9AED1C302E5ED2AD36B5C7F5
+
+I=111
+KEY=EAEA5923392D6DCB0D7919885EB346D7
+PT=71F9F04E9AED1C302E5ED2AD36B5C7F5
+CT=253982568F6C3FDFDE173E46B614989C
+
+I=112
+KEY=CFD3DB75B6415214D36E27CEE8A7DE4B
+PT=253982568F6C3FDFDE173E46B614989C
+CT=6D51D51276A6FA9C933E4D4496D0455E
+
+I=113
+KEY=A2820E67C0E7A88840506A8A7E779B15
+PT=6D51D51276A6FA9C933E4D4496D0455E
+CT=B9A6924F773CE826BBBC6DDBFA4E146A
+
+I=114
+KEY=1B249C28B7DB40AEFBEC075184398F7F
+PT=B9A6924F773CE826BBBC6DDBFA4E146A
+CT=474943C523162BC81186779A07144BC6
+
+I=115
+KEY=5C6DDFED94CD6B66EA6A70CB832DC4B9
+PT=474943C523162BC81186779A07144BC6
+CT=20128A092B99B4BC212B1107C3BA1DF9
+
+I=116
+KEY=7C7F55E4BF54DFDACB4161CC4097D940
+PT=20128A092B99B4BC212B1107C3BA1DF9
+CT=90330B8FB5A50E958250A953EF5145C7
+
+I=117
+KEY=EC4C5E6B0AF1D14F4911C89FAFC69C87
+PT=90330B8FB5A50E958250A953EF5145C7
+CT=C1B788D0EB2C8C7B9E020CC2BEACD595
+
+I=118
+KEY=2DFBD6BBE1DD5D34D713C45D116A4912
+PT=C1B788D0EB2C8C7B9E020CC2BEACD595
+CT=EF87960DABBE82F6CFA8045CE4A9EED0
+
+I=119
+KEY=C27C40B64A63DFC218BBC001F5C3A7C2
+PT=EF87960DABBE82F6CFA8045CE4A9EED0
+CT=405C8408D5027DF90CBE3159701D161A
+
+I=120
+KEY=8220C4BE9F61A23B1405F15885DEB1D8
+PT=405C8408D5027DF90CBE3159701D161A
+CT=FCAB7F88E85D6573A98D23D684A5A5F3
+
+I=121
+KEY=7E8BBB36773CC748BD88D28E017B142B
+PT=FCAB7F88E85D6573A98D23D684A5A5F3
+CT=191E6F1EECBF5149F4D49446E97D8820
+
+I=122
+KEY=6795D4289B839601495C46C8E8069C0B
+PT=191E6F1EECBF5149F4D49446E97D8820
+CT=C77128F53D48594194EFBA67E46C6B23
+
+I=123
+KEY=A0E4FCDDA6CBCF40DDB3FCAF0C6AF728
+PT=C77128F53D48594194EFBA67E46C6B23
+CT=DFB898170571450CC5E2244AE4D3AF43
+
+I=124
+KEY=7F5C64CAA3BA8A4C1851D8E5E8B9586B
+PT=DFB898170571450CC5E2244AE4D3AF43
+CT=3BD1633B5053609A3B42CC098F9F5D87
+
+I=125
+KEY=448D07F1F3E9EAD6231314EC672605EC
+PT=3BD1633B5053609A3B42CC098F9F5D87
+CT=AC15B23F205AEB10470F853BA18361E0
+
+I=126
+KEY=E898B5CED3B301C6641C91D7C6A5640C
+PT=AC15B23F205AEB10470F853BA18361E0
+CT=2DA73BA6E01B1ADFBEEAFA2E37942078
+
+I=127
+KEY=C53F8E6833A81B19DAF66BF9F1314474
+PT=2DA73BA6E01B1ADFBEEAFA2E37942078
+CT=C5B3D7089173958B32340B88D35B738B
+
+I=128
+KEY=008C5960A2DB8E92E8C26071226A37FF
+PT=C5B3D7089173958B32340B88D35B738B
+CT=8318BAA96569F3ADCD30C08D54494392
+
+I=129
+KEY=8394E3C9C7B27D3F25F2A0FC7623746D
+PT=8318BAA96569F3ADCD30C08D54494392
+CT=4F6F2A06A1A344B261084563BCCC5A5A
+
+I=130
+KEY=CCFBC9CF6611398D44FAE59FCAEF2E37
+PT=4F6F2A06A1A344B261084563BCCC5A5A
+CT=07EC18166362BF049A48D146A63FF378
+
+I=131
+KEY=CB17D1D905738689DEB234D96CD0DD4F
+PT=07EC18166362BF049A48D146A63FF378
+CT=81CB17ABAC28A3ED135442454C212646
+
+I=132
+KEY=4ADCC672A95B2564CDE6769C20F1FB09
+PT=81CB17ABAC28A3ED135442454C212646
+CT=C1CBDE45E27B9B1198CE93A51E38D9C5
+
+I=133
+KEY=8B1718374B20BE755528E5393EC922CC
+PT=C1CBDE45E27B9B1198CE93A51E38D9C5
+CT=8E4EB89DDFEE065784556FA0B426954A
+
+I=134
+KEY=0559A0AA94CEB822D17D8A998AEFB786
+PT=8E4EB89DDFEE065784556FA0B426954A
+CT=6A966414CC6FE52F957E9DE7012EC4BD
+
+I=135
+KEY=6FCFC4BE58A15D0D4403177E8BC1733B
+PT=6A966414CC6FE52F957E9DE7012EC4BD
+CT=7C88474D963BFDFE61F052F51D1796EF
+
+I=136
+KEY=134783F3CE9AA0F325F3458B96D6E5D4
+PT=7C88474D963BFDFE61F052F51D1796EF
+CT=6269F5DA04B09D442DDCB46001573AE9
+
+I=137
+KEY=712E7629CA2A3DB7082FF1EB9781DF3D
+PT=6269F5DA04B09D442DDCB46001573AE9
+CT=FBD2965ACE0B360A12EF39873A8F3805
+
+I=138
+KEY=8AFCE07304210BBD1AC0C86CAD0EE738
+PT=FBD2965ACE0B360A12EF39873A8F3805
+CT=5B46EF12C9BE55DCD5571D82E5BC6FF1
+
+I=139
+KEY=D1BA0F61CD9F5E61CF97D5EE48B288C9
+PT=5B46EF12C9BE55DCD5571D82E5BC6FF1
+CT=403DEFDB60876F3161CF02F319F5EA9A
+
+I=140
+KEY=9187E0BAAD183150AE58D71D51476253
+PT=403DEFDB60876F3161CF02F319F5EA9A
+CT=70FD321C583C1B54ED6AD3A79721E84A
+
+I=141
+KEY=E17AD2A6F5242A04433204BAC6668A19
+PT=70FD321C583C1B54ED6AD3A79721E84A
+CT=32AE26E948D563782532AC711BFAB644
+
+I=142
+KEY=D3D4F44FBDF1497C6600A8CBDD9C3C5D
+PT=32AE26E948D563782532AC711BFAB644
+CT=ECF948F5EBB98E4C7286046E0F7AF127
+
+I=143
+KEY=3F2DBCBA5648C7301486ACA5D2E6CD7A
+PT=ECF948F5EBB98E4C7286046E0F7AF127
+CT=818F87EFA0B5E4098E737AD44DB537BA
+
+I=144
+KEY=BEA23B55F6FD23399AF5D6719F53FAC0
+PT=818F87EFA0B5E4098E737AD44DB537BA
+CT=029F170737413F1BFBE02C292D506E44
+
+I=145
+KEY=BC3D2C52C1BC1C226115FA58B2039484
+PT=029F170737413F1BFBE02C292D506E44
+CT=77A7C520912761121373E35FD3B5AF0F
+
+I=146
+KEY=CB9AE972509B7D307266190761B63B8B
+PT=77A7C520912761121373E35FD3B5AF0F
+CT=D407B965C368E1F77195ED446BEEBA73
+
+I=147
+KEY=1F9D501793F39CC703F3F4430A5881F8
+PT=D407B965C368E1F77195ED446BEEBA73
+CT=D1F304E0B3614A4840F128AA364BA6A3
+
+I=148
+KEY=CE6E54F72092D68F4302DCE93C13275B
+PT=D1F304E0B3614A4840F128AA364BA6A3
+CT=69B748543EE72474D0CC301BDBD50A6C
+
+I=149
+KEY=A7D91CA31E75F2FB93CEECF2E7C62D37
+PT=69B748543EE72474D0CC301BDBD50A6C
+CT=BA471D91DBC6D27EBA7B510E67830C3F
+
+I=150
+KEY=1D9E0132C5B3208529B5BDFC80452108
+PT=BA471D91DBC6D27EBA7B510E67830C3F
+CT=7C0CF396D078E01A741613B1E1D7A9CB
+
+I=151
+KEY=6192F2A415CBC09F5DA3AE4D619288C3
+PT=7C0CF396D078E01A741613B1E1D7A9CB
+CT=6F670A289398F49C75ACBBE9EAC2ABFC
+
+I=152
+KEY=0EF5F88C86533403280F15A48B50233F
+PT=6F670A289398F49C75ACBBE9EAC2ABFC
+CT=C392EF479528BF1B02296E6C894E4FDD
+
+I=153
+KEY=CD6717CB137B8B182A267BC8021E6CE2
+PT=C392EF479528BF1B02296E6C894E4FDD
+CT=C4226C8C98D5F137A4C6A239E04B0FB3
+
+I=154
+KEY=09457B478BAE7A2F8EE0D9F1E2556351
+PT=C4226C8C98D5F137A4C6A239E04B0FB3
+CT=2382714FC945AD4A1E03858B63973B9E
+
+I=155
+KEY=2AC70A0842EBD76590E35C7A81C258CF
+PT=2382714FC945AD4A1E03858B63973B9E
+CT=E41F350AC9320A8A23E27C0349978168
+
+I=156
+KEY=CED83F028BD9DDEFB3012079C855D9A7
+PT=E41F350AC9320A8A23E27C0349978168
+CT=7E9137997CB7676F3D0141797C6F31A8
+
+I=157
+KEY=B049089BF76EBA808E006100B43AE80F
+PT=7E9137997CB7676F3D0141797C6F31A8
+CT=4BF7EBC15369A757981EE4A0B7F55706
+
+I=158
+KEY=FBBEE35AA4071DD7161E85A003CFBF09
+PT=4BF7EBC15369A757981EE4A0B7F55706
+CT=EC677E86A8D2A5935D33D6471A58A781
+
+I=159
+KEY=17D99DDC0CD5B8444B2D53E719971888
+PT=EC677E86A8D2A5935D33D6471A58A781
+CT=F31066D48884BC9B37F218FCF385344B
+
+I=160
+KEY=E4C9FB08845104DF7CDF4B1BEA122CC3
+PT=F31066D48884BC9B37F218FCF385344B
+CT=51CFEA4E482A7B7BCF4D31DA5CED4370
+
+I=161
+KEY=B5061146CC7B7FA4B3927AC1B6FF6FB3
+PT=51CFEA4E482A7B7BCF4D31DA5CED4370
+CT=89F3CD1590669A16F8460991BFD3CF5C
+
+I=162
+KEY=3CF5DC535C1DE5B24BD47350092CA0EF
+PT=89F3CD1590669A16F8460991BFD3CF5C
+CT=9930DA8E5DBC1F6C87B0B41BD386E2E0
+
+I=163
+KEY=A5C506DD01A1FADECC64C74BDAAA420F
+PT=9930DA8E5DBC1F6C87B0B41BD386E2E0
+CT=41A8CB583E5B9D2BA7CDA3763B6529C0
+
+I=164
+KEY=E46DCD853FFA67F56BA9643DE1CF6BCF
+PT=41A8CB583E5B9D2BA7CDA3763B6529C0
+CT=53479DCFB0C69624B42B9C272B0A1A85
+
+I=165
+KEY=B72A504A8F3CF1D1DF82F81ACAC5714A
+PT=53479DCFB0C69624B42B9C272B0A1A85
+CT=E72F27AE86E913EF55309120358BAD35
+
+I=166
+KEY=500577E409D5E23E8AB2693AFF4EDC7F
+PT=E72F27AE86E913EF55309120358BAD35
+CT=9B1EF901BACC70819DBC627C7CDC8CD9
+
+I=167
+KEY=CB1B8EE5B31992BF170E0B46839250A6
+PT=9B1EF901BACC70819DBC627C7CDC8CD9
+CT=9546C7B789345E4C32EE84BCE8E78C7E
+
+I=168
+KEY=5E5D49523A2DCCF325E08FFA6B75DCD8
+PT=9546C7B789345E4C32EE84BCE8E78C7E
+CT=33700B93E03CE8202BAC7E64E3255108
+
+I=169
+KEY=6D2D42C1DA1124D30E4CF19E88508DD0
+PT=33700B93E03CE8202BAC7E64E3255108
+CT=44246615BCA5C0A8DCB7E63729398F0A
+
+I=170
+KEY=290924D466B4E47BD2FB17A9A16902DA
+PT=44246615BCA5C0A8DCB7E63729398F0A
+CT=3215FC55FEE5A30BFA11F8EBBC912652
+
+I=171
+KEY=1B1CD8819851477028EAEF421DF82488
+PT=3215FC55FEE5A30BFA11F8EBBC912652
+CT=796C9136407BC4F484B253DAEB206912
+
+I=172
+KEY=627049B7D82A8384AC58BC98F6D84D9A
+PT=796C9136407BC4F484B253DAEB206912
+CT=B18977B404F0671C10AA979389408CCA
+
+I=173
+KEY=D3F93E03DCDAE498BCF22B0B7F98C150
+PT=B18977B404F0671C10AA979389408CCA
+CT=B2592621EE947D4ED9AD4295E0675F93
+
+I=174
+KEY=61A01822324E99D6655F699E9FFF9EC3
+PT=B2592621EE947D4ED9AD4295E0675F93
+CT=62D3B7E28765DA8F83EBE19C97293C0A
+
+I=175
+KEY=0373AFC0B52B4359E6B4880208D6A2C9
+PT=62D3B7E28765DA8F83EBE19C97293C0A
+CT=F417D650D6B7631542CFF8F95FC81C9B
+
+I=176
+KEY=F7647990639C204CA47B70FB571EBE52
+PT=F417D650D6B7631542CFF8F95FC81C9B
+CT=700A5DE153D6B438FFF7BA902DEC32FF
+
+I=177
+KEY=876E2471304A94745B8CCA6B7AF28CAD
+PT=700A5DE153D6B438FFF7BA902DEC32FF
+CT=67DC08A48F1EC7E32121B8693BB23621
+
+I=178
+KEY=E0B22CD5BF5453977AAD72024140BA8C
+PT=67DC08A48F1EC7E32121B8693BB23621
+CT=90038BB156A7F7992E260E9CBFAC0D82
+
+I=179
+KEY=70B1A764E9F3A40E548B7C9EFEECB70E
+PT=90038BB156A7F7992E260E9CBFAC0D82
+CT=C6BB1407C2D037BF238BEC772BA95352
+
+I=180
+KEY=B60AB3632B2393B1770090E9D545E45C
+PT=C6BB1407C2D037BF238BEC772BA95352
+CT=8C3D249574FF74F84053977219D69F5E
+
+I=181
+KEY=3A3797F65FDCE7493753079BCC937B02
+PT=8C3D249574FF74F84053977219D69F5E
+CT=131F7FC5A1528AD5DCB167AFAA8BFD47
+
+I=182
+KEY=2928E833FE8E6D9CEBE2603466188645
+PT=131F7FC5A1528AD5DCB167AFAA8BFD47
+CT=6E68AE6FDF2C10B42B85486D3EFBCEB9
+
+I=183
+KEY=4740465C21A27D28C067285958E348FC
+PT=6E68AE6FDF2C10B42B85486D3EFBCEB9
+CT=26808ABFA3967D742D64A26CADF8DD70
+
+I=184
+KEY=61C0CCE38234005CED038A35F51B958C
+PT=26808ABFA3967D742D64A26CADF8DD70
+CT=8BBCBA5E4C219D000A2F6B701CDA09C3
+
+I=185
+KEY=EA7C76BDCE159D5CE72CE145E9C19C4F
+PT=8BBCBA5E4C219D000A2F6B701CDA09C3
+CT=5D707BB328BEFF51C8C1D984C1608AA0
+
+I=186
+KEY=B70C0D0EE6AB620D2FED38C128A116EF
+PT=5D707BB328BEFF51C8C1D984C1608AA0
+CT=8D0A485482B914FC282C2DA9F7147D0C
+
+I=187
+KEY=3A06455A641276F107C11568DFB56BE3
+PT=8D0A485482B914FC282C2DA9F7147D0C
+CT=C5678BC12445627CBAA94177F070F736
+
+I=188
+KEY=FF61CE9B4057148DBD68541F2FC59CD5
+PT=C5678BC12445627CBAA94177F070F736
+CT=EB9B50846E92C20CD6EDBA7A3A260684
+
+I=189
+KEY=14FA9E1F2EC5D6816B85EE6515E39A51
+PT=EB9B50846E92C20CD6EDBA7A3A260684
+CT=E2178B471A3F72A271013C4CBE41FA1C
+
+I=190
+KEY=F6ED155834FAA4231A84D229ABA2604D
+PT=E2178B471A3F72A271013C4CBE41FA1C
+CT=C10C8084A17D90339E5ED8C638B902A4
+
+I=191
+KEY=37E195DC9587341084DA0AEF931B62E9
+PT=C10C8084A17D90339E5ED8C638B902A4
+CT=03C839CCF269548279F30A1F45C30556
+
+I=192
+KEY=3429AC1067EE6092FD2900F0D6D867BF
+PT=03C839CCF269548279F30A1F45C30556
+CT=1C5DC5C94B5C7E332D4122A0A4FACD96
+
+I=193
+KEY=287469D92CB21EA1D06822507222AA29
+PT=1C5DC5C94B5C7E332D4122A0A4FACD96
+CT=E7292B7D15E9311F242FACFAFC0B0B81
+
+I=194
+KEY=CF5D42A4395B2FBEF4478EAA8E29A1A8
+PT=E7292B7D15E9311F242FACFAFC0B0B81
+CT=EA6DF86EEE09613104DB81B97B949AEC
+
+I=195
+KEY=2530BACAD7524E8FF09C0F13F5BD3B44
+PT=EA6DF86EEE09613104DB81B97B949AEC
+CT=8FBCCDEBA43FE3FFDE4C3C279BDD4A27
+
+I=196
+KEY=AA8C7721736DAD702ED033346E607163
+PT=8FBCCDEBA43FE3FFDE4C3C279BDD4A27
+CT=985971BE962C63B0F50D1004963E9BED
+
+I=197
+KEY=32D5069FE541CEC0DBDD2330F85EEA8E
+PT=985971BE962C63B0F50D1004963E9BED
+CT=F2CC0FF4B6D2F88766F1B8BE370FE463
+
+I=198
+KEY=C019096B53933647BD2C9B8ECF510EED
+PT=F2CC0FF4B6D2F88766F1B8BE370FE463
+CT=FE33F823B7B97FC017B35B6E22415D3E
+
+I=199
+KEY=3E2AF148E42A4987AA9FC0E0ED1053D3
+PT=FE33F823B7B97FC017B35B6E22415D3E
+CT=465D804A6053EC2580B59F0CD645C060
+
+I=200
+KEY=787771028479A5A22A2A5FEC3B5593B3
+PT=465D804A6053EC2580B59F0CD645C060
+CT=DE05AD28693E3D471B8F39BAD1803C0E
+
+I=201
+KEY=A672DC2AED4798E531A56656EAD5AFBD
+PT=DE05AD28693E3D471B8F39BAD1803C0E
+CT=61EB397D55A2FC3D78974C8A10200AC6
+
+I=202
+KEY=C799E557B8E564D849322ADCFAF5A57B
+PT=61EB397D55A2FC3D78974C8A10200AC6
+CT=BD95D742D81AD795AA4E10FB41F54294
+
+I=203
+KEY=7A0C321560FFB34DE37C3A27BB00E7EF
+PT=BD95D742D81AD795AA4E10FB41F54294
+CT=F43A1E8C6E057E68414D23DA6932DE2C
+
+I=204
+KEY=8E362C990EFACD25A23119FDD23239C3
+PT=F43A1E8C6E057E68414D23DA6932DE2C
+CT=8EBB208032245988E851148B34B92F0E
+
+I=205
+KEY=008D0C193CDE94AD4A600D76E68B16CD
+PT=8EBB208032245988E851148B34B92F0E
+CT=2F18B4B14A360E06C50C89A4E6FE6C17
+
+I=206
+KEY=2F95B8A876E89AAB8F6C84D200757ADA
+PT=2F18B4B14A360E06C50C89A4E6FE6C17
+CT=681E131FA7EA5EBE10B59D3F16009582
+
+I=207
+KEY=478BABB7D102C4159FD919ED1675EF58
+PT=681E131FA7EA5EBE10B59D3F16009582
+CT=376FA31CC9D18E756E96715D61403C5D
+
+I=208
+KEY=70E408AB18D34A60F14F68B07735D305
+PT=376FA31CC9D18E756E96715D61403C5D
+CT=519E87E4A1AC61C376842F028D1BD75F
+
+I=209
+KEY=217A8F4FB97F2BA387CB47B2FA2E045A
+PT=519E87E4A1AC61C376842F028D1BD75F
+CT=BFAED9E9964967342808C6C332E02204
+
+I=210
+KEY=9ED456A62F364C97AFC38171C8CE265E
+PT=BFAED9E9964967342808C6C332E02204
+CT=5A9F55C61A03D6A3196FFD6879CBCA02
+
+I=211
+KEY=C44B036035359A34B6AC7C19B105EC5C
+PT=5A9F55C61A03D6A3196FFD6879CBCA02
+CT=0FD872478223CDE765A62036EDD6F42F
+
+I=212
+KEY=CB937127B71657D3D30A5C2F5CD31873
+PT=0FD872478223CDE765A62036EDD6F42F
+CT=965ED2AF7D26CDA8A8B7E7B2F1ADA768
+
+I=213
+KEY=5DCDA388CA309A7B7BBDBB9DAD7EBF1B
+PT=965ED2AF7D26CDA8A8B7E7B2F1ADA768
+CT=05599B8D42D92457605A69200C6DC0AA
+
+I=214
+KEY=5894380588E9BE2C1BE7D2BDA1137FB1
+PT=05599B8D42D92457605A69200C6DC0AA
+CT=3436A49EE590788F625A6FB44BF72FA3
+
+I=215
+KEY=6CA29C9B6D79C6A379BDBD09EAE45012
+PT=3436A49EE590788F625A6FB44BF72FA3
+CT=DB181195EFF35E307167BADA138A837A
+
+I=216
+KEY=B7BA8D0E828A989308DA07D3F96ED368
+PT=DB181195EFF35E307167BADA138A837A
+CT=45E06B534233447E3CB696C1DD179477
+
+I=217
+KEY=F25AE65DC0B9DCED346C91122479471F
+PT=45E06B534233447E3CB696C1DD179477
+CT=D2EDC4E2B4EDD671D984E8AA5BABAAD7
+
+I=218
+KEY=20B722BF74540A9CEDE879B87FD2EDC8
+PT=D2EDC4E2B4EDD671D984E8AA5BABAAD7
+CT=DB92F4E9F2DD6A61E20A79CFC82CD061
+
+I=219
+KEY=FB25D656868960FD0FE20077B7FE3DA9
+PT=DB92F4E9F2DD6A61E20A79CFC82CD061
+CT=79383629DF124FD94A1C36BECB711747
+
+I=220
+KEY=821DE07F599B2F2445FE36C97C8F2AEE
+PT=79383629DF124FD94A1C36BECB711747
+CT=3F3F592FB3DB51CF08B70E6F2174AB43
+
+I=221
+KEY=BD22B950EA407EEB4D4938A65DFB81AD
+PT=3F3F592FB3DB51CF08B70E6F2174AB43
+CT=D34FDA2917E9697118502CB7A6CAE07C
+
+I=222
+KEY=6E6D6379FDA9179A55191411FB3161D1
+PT=D34FDA2917E9697118502CB7A6CAE07C
+CT=24D2C38E5C52A404DBE0D8BB6DA44AEE
+
+I=223
+KEY=4ABFA0F7A1FBB39E8EF9CCAA96952B3F
+PT=24D2C38E5C52A404DBE0D8BB6DA44AEE
+CT=2ED6A7503B3547C04E0B7B709218CD4A
+
+I=224
+KEY=646907A79ACEF45EC0F2B7DA048DE675
+PT=2ED6A7503B3547C04E0B7B709218CD4A
+CT=4F11BE7A8B5D1A04AB82F60000BC7B50
+
+I=225
+KEY=2B78B9DD1193EE5A6B7041DA04319D25
+PT=4F11BE7A8B5D1A04AB82F60000BC7B50
+CT=B98B51B76B262CB9ED157567A05770AF
+
+I=226
+KEY=92F3E86A7AB5C2E3866534BDA466ED8A
+PT=B98B51B76B262CB9ED157567A05770AF
+CT=D6CA5483F89D5AA01DBCFEBE30C26F5E
+
+I=227
+KEY=4439BCE9822898439BD9CA0394A482D4
+PT=D6CA5483F89D5AA01DBCFEBE30C26F5E
+CT=7706922EBA53937E287084C8FDFEB33F
+
+I=228
+KEY=333F2EC7387B0B3DB3A94ECB695A31EB
+PT=7706922EBA53937E287084C8FDFEB33F
+CT=0F2DA3B8BFCB1046CA94EC9322320BF9
+
+I=229
+KEY=3C128D7F87B01B7B793DA2584B683A12
+PT=0F2DA3B8BFCB1046CA94EC9322320BF9
+CT=29CAD5CDC5A2834A5D533335FED2EA81
+
+I=230
+KEY=15D858B242129831246E916DB5BAD093
+PT=29CAD5CDC5A2834A5D533335FED2EA81
+CT=A48A2D319552BF02E84E4662E75884DB
+
+I=231
+KEY=B1527583D7402733CC20D70F52E25448
+PT=A48A2D319552BF02E84E4662E75884DB
+CT=334560ECD22BB9F660BC4FFAB13891C9
+
+I=232
+KEY=8217156F056B9EC5AC9C98F5E3DAC581
+PT=334560ECD22BB9F660BC4FFAB13891C9
+CT=DAAEB8436205DFB6688D9DE0A21A6B9D
+
+I=233
+KEY=58B9AD2C676E4173C411051541C0AE1C
+PT=DAAEB8436205DFB6688D9DE0A21A6B9D
+CT=E38798615C2158872704125A7CFC6540
+
+I=234
+KEY=BB3E354D3B4F19F4E315174F3D3CCB5C
+PT=E38798615C2158872704125A7CFC6540
+CT=BACB9EA5499A093F6595E8D1D5CF7E50
+
+I=235
+KEY=01F5ABE872D510CB8680FF9EE8F3B50C
+PT=BACB9EA5499A093F6595E8D1D5CF7E50
+CT=813B0D4AC4C2B8371A1A132927D24F62
+
+I=236
+KEY=80CEA6A2B617A8FC9C9AECB7CF21FA6E
+PT=813B0D4AC4C2B8371A1A132927D24F62
+CT=D1AD1AE650B377520EE19370D9E968A9
+
+I=237
+KEY=5163BC44E6A4DFAE927B7FC716C892C7
+PT=D1AD1AE650B377520EE19370D9E968A9
+CT=3CEC25102A51A5A4C26E7391590D54ED
+
+I=238
+KEY=6D8F9954CCF57A0A50150C564FC5C62A
+PT=3CEC25102A51A5A4C26E7391590D54ED
+CT=505FD54017E89E9FAA6376E399F2FF09
+
+I=239
+KEY=3DD04C14DB1DE495FA767AB5D6373923
+PT=505FD54017E89E9FAA6376E399F2FF09
+CT=1B45550B4E3AB908A2CC72FFFB38701A
+
+I=240
+KEY=2695191F95275D9D58BA084A2D0F4939
+PT=1B45550B4E3AB908A2CC72FFFB38701A
+CT=E2469D9D2F91E3AA88DC7970C94E7237
+
+I=241
+KEY=C4D38482BAB6BE37D066713AE4413B0E
+PT=E2469D9D2F91E3AA88DC7970C94E7237
+CT=9352C72F2B5093D1AF52BA959963F59B
+
+I=242
+KEY=578143AD91E62DE67F34CBAF7D22CE95
+PT=9352C72F2B5093D1AF52BA959963F59B
+CT=F26DE32F035B270BA42075574056564E
+
+I=243
+KEY=A5ECA08292BD0AEDDB14BEF83D7498DB
+PT=F26DE32F035B270BA42075574056564E
+CT=6AC08B3D91FC31A34B3A81F7C300587E
+
+I=244
+KEY=CF2C2BBF03413B4E902E3F0FFE74C0A5
+PT=6AC08B3D91FC31A34B3A81F7C300587E
+CT=E5E6455304C3B5E2349E2372D6E4B0B8
+
+I=245
+KEY=2ACA6EEC07828EACA4B01C7D2890701D
+PT=E5E6455304C3B5E2349E2372D6E4B0B8
+CT=90524F27C63CCA1E4CA9674381786C30
+
+I=246
+KEY=BA9821CBC1BE44B2E8197B3EA9E81C2D
+PT=90524F27C63CCA1E4CA9674381786C30
+CT=44625D68290415039E2C6C05B4954896
+
+I=247
+KEY=FEFA7CA3E8BA51B17635173B1D7D54BB
+PT=44625D68290415039E2C6C05B4954896
+CT=EC401B0D3780FDB4A3952706B07F6CEF
+
+I=248
+KEY=12BA67AEDF3AAC05D5A0303DAD023854
+PT=EC401B0D3780FDB4A3952706B07F6CEF
+CT=DCEDC88021F6FD1C61C08DAABF0E73BA
+
+I=249
+KEY=CE57AF2EFECC5119B460BD97120C4BEE
+PT=DCEDC88021F6FD1C61C08DAABF0E73BA
+CT=C15C85D8161B97DD61EB8B514CDCFFD5
+
+I=250
+KEY=0F0B2AF6E8D7C6C4D58B36C65ED0B43B
+PT=C15C85D8161B97DD61EB8B514CDCFFD5
+CT=B68B65E041C84433DEA4D9E15E9F98AB
+
+I=251
+KEY=B9804F16A91F82F70B2FEF27004F2C90
+PT=B68B65E041C84433DEA4D9E15E9F98AB
+CT=8122505A5B6F8D985A8D9D7E9E2FF4F3
+
+I=252
+KEY=38A21F4CF2700F6F51A272599E60D863
+PT=8122505A5B6F8D985A8D9D7E9E2FF4F3
+CT=8F72F8FFA71D24C900D2BBE8784B9C48
+
+I=253
+KEY=B7D0E7B3556D2BA65170C9B1E62B442B
+PT=8F72F8FFA71D24C900D2BBE8784B9C48
+CT=1D541D794774264680CF3689365CD845
+
+I=254
+KEY=AA84FACA12190DE0D1BFFF38D0779C6E
+PT=1D541D794774264680CF3689365CD845
+CT=CBAE9336C5C1F038176B5123CC205BF7
+
+I=255
+KEY=612A69FCD7D8FDD8C6D4AE1B1C57C799
+PT=CBAE9336C5C1F038176B5123CC205BF7
+CT=C4CE2DC1BAE3028392BD8A005A360F56
+
+I=256
+KEY=A5E4443D6D3BFF5B5469241B4661C8CF
+PT=C4CE2DC1BAE3028392BD8A005A360F56
+CT=549B7075DE975B759A6DAE7D761CDC01
+
+I=257
+KEY=F17F3448B3ACA42ECE048A66307D14CE
+PT=549B7075DE975B759A6DAE7D761CDC01
+CT=2338FFEEE2A391B2DAFD1EBB0ECF19E3
+
+I=258
+KEY=D247CBA6510F359C14F994DD3EB20D2D
+PT=2338FFEEE2A391B2DAFD1EBB0ECF19E3
+CT=B27705C512C6849DE6012A490F834F36
+
+I=259
+KEY=6030CE6343C9B101F2F8BE943131421B
+PT=B27705C512C6849DE6012A490F834F36
+CT=33A239E0426921192F8C89C6FBCDD23C
+
+I=260
+KEY=5392F78301A09018DD743752CAFC9027
+PT=33A239E0426921192F8C89C6FBCDD23C
+CT=90CCBE46338C7E9FB25409F82BF81234
+
+I=261
+KEY=C35E49C5322CEE876F203EAAE1048213
+PT=90CCBE46338C7E9FB25409F82BF81234
+CT=873D1CAF1F2C2A56BEE419FE8A01489F
+
+I=262
+KEY=4463556A2D00C4D1D1C427546B05CA8C
+PT=873D1CAF1F2C2A56BEE419FE8A01489F
+CT=1E9ED35EB85ADD9AB88B6D85299FD8E7
+
+I=263
+KEY=5AFD8634955A194B694F4AD1429A126B
+PT=1E9ED35EB85ADD9AB88B6D85299FD8E7
+CT=36871F8BD629B27EEDE04E086FC539C4
+
+I=264
+KEY=6C7A99BF4373AB3584AF04D92D5F2BAF
+PT=36871F8BD629B27EEDE04E086FC539C4
+CT=10D10983F98D799235E8142BD67C1FD2
+
+I=265
+KEY=7CAB903CBAFED2A7B14710F2FB23347D
+PT=10D10983F98D799235E8142BD67C1FD2
+CT=193CEDEEE0410DE79F1B2FC077B14199
+
+I=266
+KEY=65977DD25ABFDF402E5C3F328C9275E4
+PT=193CEDEEE0410DE79F1B2FC077B14199
+CT=1EC99AD6EEF155B6B5F61452D2E73A7D
+
+I=267
+KEY=7B5EE704B44E8AF69BAA2B605E754F99
+PT=1EC99AD6EEF155B6B5F61452D2E73A7D
+CT=92DA7D1858210C87B32C6FEA1CC6A0E6
+
+I=268
+KEY=E9849A1CEC6F86712886448A42B3EF7F
+PT=92DA7D1858210C87B32C6FEA1CC6A0E6
+CT=A06C4ACCA35DE95CFAD365349969271D
+
+I=269
+KEY=49E8D0D04F326F2DD25521BEDBDAC862
+PT=A06C4ACCA35DE95CFAD365349969271D
+CT=4B892CB63A35A3DED0F43BA4309CBB2E
+
+I=270
+KEY=0261FC667507CCF302A11A1AEB46734C
+PT=4B892CB63A35A3DED0F43BA4309CBB2E
+CT=E05F73446706A68A5099088279B58064
+
+I=271
+KEY=E23E8F2212016A795238129892F3F328
+PT=E05F73446706A68A5099088279B58064
+CT=542D8314299AF433EC549EBFFCF2B3D9
+
+I=272
+KEY=B6130C363B9B9E4ABE6C8C276E0140F1
+PT=542D8314299AF433EC549EBFFCF2B3D9
+CT=4935A91590E8A70D9F75489F6D5B70E7
+
+I=273
+KEY=FF26A523AB7339472119C4B8035A3016
+PT=4935A91590E8A70D9F75489F6D5B70E7
+CT=C3A4940C6EC7D0E2F11C3CF60AB2C31D
+
+I=274
+KEY=3C82312FC5B4E9A5D005F84E09E8F30B
+PT=C3A4940C6EC7D0E2F11C3CF60AB2C31D
+CT=F109AC488D917B5FC28BA28C9720A46F
+
+I=275
+KEY=CD8B9D67482592FA128E5AC29EC85764
+PT=F109AC488D917B5FC28BA28C9720A46F
+CT=65234934641FA21D8C3A3804D09208F3
+
+I=276
+KEY=A8A8D4532C3A30E79EB462C64E5A5F97
+PT=65234934641FA21D8C3A3804D09208F3
+CT=DE015A71CB9C9A3B11C2C9B744B6B5ED
+
+I=277
+KEY=76A98E22E7A6AADC8F76AB710AECEA7A
+PT=DE015A71CB9C9A3B11C2C9B744B6B5ED
+CT=973D0C12D7826B45CC7824EF09D82BAB
+
+I=278
+KEY=E19482303024C199430E8F9E0334C1D1
+PT=973D0C12D7826B45CC7824EF09D82BAB
+CT=EBD2D23B9D08F63385A0D21FF76FAC33
+
+I=279
+KEY=0A46500BAD2C37AAC6AE5D81F45B6DE2
+PT=EBD2D23B9D08F63385A0D21FF76FAC33
+CT=A7A460A555E4C4E53457AE00FC0D9BA8
+
+I=280
+KEY=ADE230AEF8C8F34FF2F9F3810856F64A
+PT=A7A460A555E4C4E53457AE00FC0D9BA8
+CT=56F0329103B5238E03C781E2AB0E7A2D
+
+I=281
+KEY=FB12023FFB7DD0C1F13E7263A3588C67
+PT=56F0329103B5238E03C781E2AB0E7A2D
+CT=0D5710472E980CF439109BAC3EAB19A8
+
+I=282
+KEY=F6451278D5E5DC35C82EE9CF9DF395CF
+PT=0D5710472E980CF439109BAC3EAB19A8
+CT=063CB786AD88ECADC4EAC8FE39A84286
+
+I=283
+KEY=F079A5FE786D30980CC42131A45BD749
+PT=063CB786AD88ECADC4EAC8FE39A84286
+CT=825BD1E57F0E16D744C2A69233C8654B
+
+I=284
+KEY=7222741B0763264F480687A39793B202
+PT=825BD1E57F0E16D744C2A69233C8654B
+CT=8EA54322F26DC051F831A5CBBD07A73C
+
+I=285
+KEY=FC873739F50EE61EB03722682A94153E
+PT=8EA54322F26DC051F831A5CBBD07A73C
+CT=803F3194726F4D5C5BD80D12D1284F0A
+
+I=286
+KEY=7CB806AD8761AB42EBEF2F7AFBBC5A34
+PT=803F3194726F4D5C5BD80D12D1284F0A
+CT=5A1D90E682989AB1A84F01422CE69F82
+
+I=287
+KEY=26A5964B05F931F343A02E38D75AC5B6
+PT=5A1D90E682989AB1A84F01422CE69F82
+CT=3F5AFCD41950EEFBC3D7CEF744F0C060
+
+I=288
+KEY=19FF6A9F1CA9DF088077E0CF93AA05D6
+PT=3F5AFCD41950EEFBC3D7CEF744F0C060
+CT=2EE3691BD58D7645DA91CD4943F10157
+
+I=289
+KEY=371C0384C924A94D5AE62D86D05B0481
+PT=2EE3691BD58D7645DA91CD4943F10157
+CT=BEF4B188364E87A9E49855CC68C02A50
+
+I=290
+KEY=89E8B20CFF6A2EE4BE7E784AB89B2ED1
+PT=BEF4B188364E87A9E49855CC68C02A50
+CT=2263387A7A52AB73704774D07EA5AA69
+
+I=291
+KEY=AB8B8A7685388597CE390C9AC63E84B8
+PT=2263387A7A52AB73704774D07EA5AA69
+CT=84E68DA3E9D999016D0B734DAE8C128B
+
+I=292
+KEY=2F6D07D56CE11C96A3327FD768B29633
+PT=84E68DA3E9D999016D0B734DAE8C128B
+CT=978F5F49D7BA1189F16FC0635231DF5F
+
+I=293
+KEY=B8E2589CBB5B0D1F525DBFB43A83496C
+PT=978F5F49D7BA1189F16FC0635231DF5F
+CT=FE59B2F2BDE0AB5E1700A1771EDF8663
+
+I=294
+KEY=46BBEA6E06BBA641455D1EC3245CCF0F
+PT=FE59B2F2BDE0AB5E1700A1771EDF8663
+CT=A94B982DC50C338E25ABFB4113F904A8
+
+I=295
+KEY=EFF07243C3B795CF60F6E58237A5CBA7
+PT=A94B982DC50C338E25ABFB4113F904A8
+CT=79A5BB282D8247192AC9F8A3DB431EA1
+
+I=296
+KEY=9655C96BEE35D2D64A3F1D21ECE6D506
+PT=79A5BB282D8247192AC9F8A3DB431EA1
+CT=FC339DA0D4593CD79D407CD6F1E1E7ED
+
+I=297
+KEY=6A6654CB3A6CEE01D77F61F71D0732EB
+PT=FC339DA0D4593CD79D407CD6F1E1E7ED
+CT=08EAB51652B85C6E9BC07B718E57E144
+
+I=298
+KEY=628CE1DD68D4B26F4CBF1A869350D3AF
+PT=08EAB51652B85C6E9BC07B718E57E144
+CT=9EA63934609F947AAA926443D0D5BEFA
+
+I=299
+KEY=FC2AD8E9084B2615E62D7EC543856D55
+PT=9EA63934609F947AAA926443D0D5BEFA
+CT=7FE121C45E158FF1F527BAFDDBEAE223
+
+I=300
+KEY=83CBF92D565EA9E4130AC438986F8F76
+PT=7FE121C45E158FF1F527BAFDDBEAE223
+CT=B1B70D5AD08BE5DCB8126D8700F25969
+
+I=301
+KEY=327CF47786D54C38AB18A9BF989DD61F
+PT=B1B70D5AD08BE5DCB8126D8700F25969
+CT=389812FA2D4A6419380A2AC8961CCDA6
+
+I=302
+KEY=0AE4E68DAB9F2821931283770E811BB9
+PT=389812FA2D4A6419380A2AC8961CCDA6
+CT=CEF20323EE53A2BA576F4DF86A7AC078
+
+I=303
+KEY=C416E5AE45CC8A9BC47DCE8F64FBDBC1
+PT=CEF20323EE53A2BA576F4DF86A7AC078
+CT=A65611BF1901C940B883D746F1694278
+
+I=304
+KEY=6240F4115CCD43DB7CFE19C9959299B9
+PT=A65611BF1901C940B883D746F1694278
+CT=7E43C2A99D11C656351B96CECD400E75
+
+I=305
+KEY=1C0336B8C1DC858D49E58F0758D297CC
+PT=7E43C2A99D11C656351B96CECD400E75
+CT=7DE74D06851AD329C60DD1934C34CBE4
+
+I=306
+KEY=61E47BBE44C656A48FE85E9414E65C28
+PT=7DE74D06851AD329C60DD1934C34CBE4
+CT=A99B66FE5825C895DCC6BE718AB8BE34
+
+I=307
+KEY=C87F1D401CE39E31532EE0E59E5EE21C
+PT=A99B66FE5825C895DCC6BE718AB8BE34
+CT=4752E30DDA44BA393EF197270C111AB7
+
+I=308
+KEY=8F2DFE4DC6A724086DDF77C2924FF8AB
+PT=4752E30DDA44BA393EF197270C111AB7
+CT=5A3FC324D12AC30FE5BBE87FC4B655F0
+
+I=309
+KEY=D5123D69178DE70788649FBD56F9AD5B
+PT=5A3FC324D12AC30FE5BBE87FC4B655F0
+CT=79061587E9D9FEEF52F753AE9BCDC4B1
+
+I=310
+KEY=AC1428EEFE5419E8DA93CC13CD3469EA
+PT=79061587E9D9FEEF52F753AE9BCDC4B1
+CT=86C32E69874EAA0D103581199AFA813A
+
+I=311
+KEY=2AD70687791AB3E5CAA64D0A57CEE8D0
+PT=86C32E69874EAA0D103581199AFA813A
+CT=82A924A5928570E29D18DE200F8558DD
+
+I=312
+KEY=A87E2222EB9FC30757BE932A584BB00D
+PT=82A924A5928570E29D18DE200F8558DD
+CT=2D3E0ECCC1FEA93736BD205A5217D830
+
+I=313
+KEY=85402CEE2A616A306103B3700A5C683D
+PT=2D3E0ECCC1FEA93736BD205A5217D830
+CT=52FA0FCF771191A4A4C4E48C7B11DC1F
+
+I=314
+KEY=D7BA23215D70FB94C5C757FC714DB422
+PT=52FA0FCF771191A4A4C4E48C7B11DC1F
+CT=C2A47519AACA187B97C884D20ED1D825
+
+I=315
+KEY=151E5638F7BAE3EF520FD32E7F9C6C07
+PT=C2A47519AACA187B97C884D20ED1D825
+CT=66F1D0799F3C473978C189F745695293
+
+I=316
+KEY=73EF86416886A4D62ACE5AD93AF53E94
+PT=66F1D0799F3C473978C189F745695293
+CT=803361A1428EAC3E134B0726E5CF0754
+
+I=317
+KEY=F3DCE7E02A0808E839855DFFDF3A39C0
+PT=803361A1428EAC3E134B0726E5CF0754
+CT=2CC85CEDEE03D7AB279D766D3F2BADF4
+
+I=318
+KEY=DF14BB0DC40BDF431E182B92E0119434
+PT=2CC85CEDEE03D7AB279D766D3F2BADF4
+CT=706626C1CE6731DD4DBA263C4D7EAB67
+
+I=319
+KEY=AF729DCC0A6CEE9E53A20DAEAD6F3F53
+PT=706626C1CE6731DD4DBA263C4D7EAB67
+CT=BD7A59659E3774B85465C91740017628
+
+I=320
+KEY=1208C4A9945B9A2607C7C4B9ED6E497B
+PT=BD7A59659E3774B85465C91740017628
+CT=F1778330059467556D08223682EC32AA
+
+I=321
+KEY=E37F479991CFFD736ACFE68F6F827BD1
+PT=F1778330059467556D08223682EC32AA
+CT=7B3C6979DCEE500E3FBB2CF4E17B0A3B
+
+I=322
+KEY=98432EE04D21AD7D5574CA7B8EF971EA
+PT=7B3C6979DCEE500E3FBB2CF4E17B0A3B
+CT=AFEBC6E81B90C3D82ECE26D788AB2412
+
+I=323
+KEY=37A8E80856B16EA57BBAECAC065255F8
+PT=AFEBC6E81B90C3D82ECE26D788AB2412
+CT=E4087042AB32B9C43128AADACB4F7FA6
+
+I=324
+KEY=D3A0984AFD83D7614A924676CD1D2A5E
+PT=E4087042AB32B9C43128AADACB4F7FA6
+CT=07E1230BC456A3DCE7DF8A4EF7265BC8
+
+I=325
+KEY=D441BB4139D574BDAD4DCC383A3B7196
+PT=07E1230BC456A3DCE7DF8A4EF7265BC8
+CT=88F0C30172B9A0EA8CD657CE6847AC94
+
+I=326
+KEY=5CB178404B6CD457219B9BF6527CDD02
+PT=88F0C30172B9A0EA8CD657CE6847AC94
+CT=710FE26B2DAB5A12D147D6446732B272
+
+I=327
+KEY=2DBE9A2B66C78E45F0DC4DB2354E6F70
+PT=710FE26B2DAB5A12D147D6446732B272
+CT=9C30630A9ADF9B4EBF099452AB75D14A
+
+I=328
+KEY=B18EF921FC18150B4FD5D9E09E3BBE3A
+PT=9C30630A9ADF9B4EBF099452AB75D14A
+CT=77526DA4D9AE9FD4347AAC10EA4728AA
+
+I=329
+KEY=C6DC948525B68ADF7BAF75F0747C9690
+PT=77526DA4D9AE9FD4347AAC10EA4728AA
+CT=A9EDBD1A190BC67AC91D27BB7F5A1BD1
+
+I=330
+KEY=6F31299F3CBD4CA5B2B2524B0B268D41
+PT=A9EDBD1A190BC67AC91D27BB7F5A1BD1
+CT=B8700A2BAEABCB0C67251C26F82ACEF7
+
+I=331
+KEY=D74123B4921687A9D5974E6DF30C43B6
+PT=B8700A2BAEABCB0C67251C26F82ACEF7
+CT=FF5F30BA14A8C49276B040B00864BE29
+
+I=332
+KEY=281E130E86BE433BA3270EDDFB68FD9F
+PT=FF5F30BA14A8C49276B040B00864BE29
+CT=B448E87BE1E1A41FF94353F6018929C8
+
+I=333
+KEY=9C56FB75675FE7245A645D2BFAE1D457
+PT=B448E87BE1E1A41FF94353F6018929C8
+CT=9F59D422CB9265C17732E0B16DEF352A
+
+I=334
+KEY=030F2F57ACCD82E52D56BD9A970EE17D
+PT=9F59D422CB9265C17732E0B16DEF352A
+CT=06FD7DB54E62FAC3C511F4DE5C1E93B9
+
+I=335
+KEY=05F252E2E2AF7826E8474944CB1072C4
+PT=06FD7DB54E62FAC3C511F4DE5C1E93B9
+CT=0DDA3E4AD600F8D3EA6B06AE465DF3BC
+
+I=336
+KEY=08286CA834AF80F5022C4FEA8D4D8178
+PT=0DDA3E4AD600F8D3EA6B06AE465DF3BC
+CT=17305FA95D26FB72995165DA8A07FCDF
+
+I=337
+KEY=1F18330169897B879B7D2A30074A7DA7
+PT=17305FA95D26FB72995165DA8A07FCDF
+CT=12B56FEBEE2773A2258FC6E0F9115728
+
+I=338
+KEY=0DAD5CEA87AE0825BEF2ECD0FE5B2A8F
+PT=12B56FEBEE2773A2258FC6E0F9115728
+CT=36440D1A561E8F77B89DF6EA3D8EC7F5
+
+I=339
+KEY=3BE951F0D1B08752066F1A3AC3D5ED7A
+PT=36440D1A561E8F77B89DF6EA3D8EC7F5
+CT=752C4D620413C0F4A313CF37EB34CFDD
+
+I=340
+KEY=4EC51C92D5A347A6A57CD50D28E122A7
+PT=752C4D620413C0F4A313CF37EB34CFDD
+CT=B2A282D0B6A9EB8B7B7C962675AEC843
+
+I=341
+KEY=FC679E42630AAC2DDE00432B5D4FEAE4
+PT=B2A282D0B6A9EB8B7B7C962675AEC843
+CT=D0C3D785B5507C1460DDC44B123ED5FE
+
+I=342
+KEY=2CA449C7D65AD039BEDD87604F713F1A
+PT=D0C3D785B5507C1460DDC44B123ED5FE
+CT=4DAE52B77F8001CBAB8D1949E73DD578
+
+I=343
+KEY=610A1B70A9DAD1F215509E29A84CEA62
+PT=4DAE52B77F8001CBAB8D1949E73DD578
+CT=29AA82197E8158D88FFFE5BEAFC0C967
+
+I=344
+KEY=48A09969D75B892A9AAF7B97078C2305
+PT=29AA82197E8158D88FFFE5BEAFC0C967
+CT=58C665AA97945F7D3AA23BE8B8DDA20D
+
+I=345
+KEY=1066FCC340CFD657A00D407FBF518108
+PT=58C665AA97945F7D3AA23BE8B8DDA20D
+CT=5A104A7093DB3308EB4009829B5E26B1
+
+I=346
+KEY=4A76B6B3D314E55F4B4D49FD240FA7B9
+PT=5A104A7093DB3308EB4009829B5E26B1
+CT=8C8EA0BEE4640F6BB6D906A7A6EA3810
+
+I=347
+KEY=C6F8160D3770EA34FD944F5A82E59FA9
+PT=8C8EA0BEE4640F6BB6D906A7A6EA3810
+CT=1517ED0B6D4EC3B85479AB28DF48BFDB
+
+I=348
+KEY=D3EFFB065A3E298CA9EDE4725DAD2072
+PT=1517ED0B6D4EC3B85479AB28DF48BFDB
+CT=9546CCBB8094E65E464C38E0809552E3
+
+I=349
+KEY=46A937BDDAAACFD2EFA1DC92DD387291
+PT=9546CCBB8094E65E464C38E0809552E3
+CT=7D5AD8DEDB92F80D2B28C3458843AE84
+
+I=350
+KEY=3BF3EF63013837DFC4891FD7557BDC15
+PT=7D5AD8DEDB92F80D2B28C3458843AE84
+CT=E62676E27ED61D0FD7DFE170E0938361
+
+I=351
+KEY=DDD599817FEE2AD01356FEA7B5E85F74
+PT=E62676E27ED61D0FD7DFE170E0938361
+CT=DA9865198B9463681C66FB96C2C1DAA5
+
+I=352
+KEY=074DFC98F47A49B80F300531772985D1
+PT=DA9865198B9463681C66FB96C2C1DAA5
+CT=62CD9DAA9487F34AF168E6E20A0684CF
+
+I=353
+KEY=6580613260FDBAF2FE58E3D37D2F011E
+PT=62CD9DAA9487F34AF168E6E20A0684CF
+CT=10BA978FDABA586691946145BE246D3C
+
+I=354
+KEY=753AF6BDBA47E2946FCC8296C30B6C22
+PT=10BA978FDABA586691946145BE246D3C
+CT=13443CF524213B08776D7F5169B79C0F
+
+I=355
+KEY=667ECA489E66D99C18A1FDC7AABCF02D
+PT=13443CF524213B08776D7F5169B79C0F
+CT=6507336876ED4F6DB3E35D6CF5A89A2B
+
+I=356
+KEY=0379F920E88B96F1AB42A0AB5F146A06
+PT=6507336876ED4F6DB3E35D6CF5A89A2B
+CT=B84902B5CBBC6DB8111CA45BC5F99991
+
+I=357
+KEY=BB30FB952337FB49BA5E04F09AEDF397
+PT=B84902B5CBBC6DB8111CA45BC5F99991
+CT=20973140A999B8AD9982B9B706F7C32E
+
+I=358
+KEY=9BA7CAD58AAE43E423DCBD479C1A30B9
+PT=20973140A999B8AD9982B9B706F7C32E
+CT=EE7FF1177C5E080AA03854A2A819565E
+
+I=359
+KEY=75D83BC2F6F04BEE83E4E9E5340366E7
+PT=EE7FF1177C5E080AA03854A2A819565E
+CT=7A4F74EC2181269AC17D0E48A4DA2A88
+
+I=360
+KEY=0F974F2ED7716D744299E7AD90D94C6F
+PT=7A4F74EC2181269AC17D0E48A4DA2A88
+CT=5B7A7751F0FD91E203A14CE518838DD7
+
+I=361
+KEY=54ED387F278CFC964138AB48885AC1B8
+PT=5B7A7751F0FD91E203A14CE518838DD7
+CT=71319FDDBACB038354A37A41F1910F94
+
+I=362
+KEY=25DCA7A29D47FF15159BD10979CBCE2C
+PT=71319FDDBACB038354A37A41F1910F94
+CT=81AC58FD503FC3AA78199168AE2C9085
+
+I=363
+KEY=A470FF5FCD783CBF6D824061D7E75EA9
+PT=81AC58FD503FC3AA78199168AE2C9085
+CT=1F668F512038142C1155B950B0B040EC
+
+I=364
+KEY=BB16700EED4028937CD7F93167571E45
+PT=1F668F512038142C1155B950B0B040EC
+CT=6B27D7791E9B14A5AC3D9582DBDBD929
+
+I=365
+KEY=D031A777F3DB3C36D0EA6CB3BC8CC76C
+PT=6B27D7791E9B14A5AC3D9582DBDBD929
+CT=9B7151FDC4E135EE93DAB2D9EB74D59C
+
+I=366
+KEY=4B40F68A373A09D84330DE6A57F812F0
+PT=9B7151FDC4E135EE93DAB2D9EB74D59C
+CT=1F199945BCFA624B1AD3DCBBD95291B2
+
+I=367
+KEY=54596FCF8BC06B9359E302D18EAA8342
+PT=1F199945BCFA624B1AD3DCBBD95291B2
+CT=E2C82FA8FE98F26283A6E0B75D0A58C6
+
+I=368
+KEY=B6914067755899F1DA45E266D3A0DB84
+PT=E2C82FA8FE98F26283A6E0B75D0A58C6
+CT=5A240FFB99C3594C273B51CACF01B28B
+
+I=369
+KEY=ECB54F9CEC9BC0BDFD7EB3AC1CA1690F
+PT=5A240FFB99C3594C273B51CACF01B28B
+CT=D01847391534848FB102CA85C97749B1
+
+I=370
+KEY=3CAD08A5F9AF44324C7C7929D5D620BE
+PT=D01847391534848FB102CA85C97749B1
+CT=DC5CF60EBDF4A8DDDDF997E7ACA67515
+
+I=371
+KEY=E0F1FEAB445BECEF9185EECE797055AB
+PT=DC5CF60EBDF4A8DDDDF997E7ACA67515
+CT=749E3815FE305B307D9F4DB6A7E4658C
+
+I=372
+KEY=946FC6BEBA6BB7DFEC1AA378DE943027
+PT=749E3815FE305B307D9F4DB6A7E4658C
+CT=8152C1E676A4FC8B0CD093FEB4B51615
+
+I=373
+KEY=153D0758CCCF4B54E0CA30866A212632
+PT=8152C1E676A4FC8B0CD093FEB4B51615
+CT=0847044668710F6E5C93DD248AC921BA
+
+I=374
+KEY=1D7A031EA4BE443ABC59EDA2E0E80788
+PT=0847044668710F6E5C93DD248AC921BA
+CT=1D6C3EFB413A59AB40F34CEFBFF25C17
+
+I=375
+KEY=00163DE5E5841D91FCAAA14D5F1A5B9F
+PT=1D6C3EFB413A59AB40F34CEFBFF25C17
+CT=5D7C206A79D61868FFE7AA28044996D3
+
+I=376
+KEY=5D6A1D8F9C5205F9034D0B655B53CD4C
+PT=5D7C206A79D61868FFE7AA28044996D3
+CT=78B4DE3B84D5D1010245CA3077A41BAC
+
+I=377
+KEY=25DEC3B41887D4F80108C1552CF7D6E0
+PT=78B4DE3B84D5D1010245CA3077A41BAC
+CT=9E003AACEDECDBB077BDE832465F40C7
+
+I=378
+KEY=BBDEF918F56B0F4876B529676AA89627
+PT=9E003AACEDECDBB077BDE832465F40C7
+CT=EEFF9E6C73E6DC5432AA446385AA1499
+
+I=379
+KEY=55216774868DD31C441F6D04EF0282BE
+PT=EEFF9E6C73E6DC5432AA446385AA1499
+CT=03252A19E37D9F040C56E4D712982798
+
+I=380
+KEY=56044D6D65F04C18484989D3FD9AA526
+PT=03252A19E37D9F040C56E4D712982798
+CT=CF59A752BA0E14BE23AFD09437B39C65
+
+I=381
+KEY=995DEA3FDFFE58A66BE65947CA293943
+PT=CF59A752BA0E14BE23AFD09437B39C65
+CT=8B08FB7974A77167DFB234F57C8DFFE1
+
+I=382
+KEY=12551146AB5929C1B4546DB2B6A4C6A2
+PT=8B08FB7974A77167DFB234F57C8DFFE1
+CT=DD2A93C1106CFDAE4A1684EE02C82FE2
+
+I=383
+KEY=CF7F8287BB35D46FFE42E95CB46CE940
+PT=DD2A93C1106CFDAE4A1684EE02C82FE2
+CT=38696128584F60636354E9F802590391
+
+I=384
+KEY=F716E3AFE37AB40C9D1600A4B635EAD1
+PT=38696128584F60636354E9F802590391
+CT=7E552E3AD28729F642D590E3C289D598
+
+I=385
+KEY=8943CD9531FD9DFADFC3904774BC3F49
+PT=7E552E3AD28729F642D590E3C289D598
+CT=17A40392AA00D7B5A6E9F59007E60C22
+
+I=386
+KEY=9EE7CE079BFD4A4F792A65D7735A336B
+PT=17A40392AA00D7B5A6E9F59007E60C22
+CT=A048D6755C2AD24DD8833DDCEB145BA6
+
+I=387
+KEY=3EAF1872C7D79802A1A9580B984E68CD
+PT=A048D6755C2AD24DD8833DDCEB145BA6
+CT=2F1CCE852396986EC4B2852E5F684CD2
+
+I=388
+KEY=11B3D6F7E441006C651BDD25C726241F
+PT=2F1CCE852396986EC4B2852E5F684CD2
+CT=2C28BD1E98DA63B95C0C81202BBCFE39
+
+I=389
+KEY=3D9B6BE97C9B63D539175C05EC9ADA26
+PT=2C28BD1E98DA63B95C0C81202BBCFE39
+CT=6AE097A8E685B58BA2309B59D6A9EB2B
+
+I=390
+KEY=577BFC419A1ED65E9B27C75C3A33310D
+PT=6AE097A8E685B58BA2309B59D6A9EB2B
+CT=6EFC01751753999843A9BB6749097E0C
+
+I=391
+KEY=3987FD348D4D4FC6D88E7C3B733A4F01
+PT=6EFC01751753999843A9BB6749097E0C
+CT=6B6B75F78016052E4F89C73EA826D2F2
+
+I=392
+KEY=52EC88C30D5B4AE89707BB05DB1C9DF3
+PT=6B6B75F78016052E4F89C73EA826D2F2
+CT=1E9890E8F0AABCBFB8C4EDAEA0F563EF
+
+I=393
+KEY=4C74182BFDF1F6572FC356AB7BE9FE1C
+PT=1E9890E8F0AABCBFB8C4EDAEA0F563EF
+CT=143ED9FE6FD7DFB822C31DE8A3E868A9
+
+I=394
+KEY=584AC1D5922629EF0D004B43D80196B5
+PT=143ED9FE6FD7DFB822C31DE8A3E868A9
+CT=9C2834AA5C95F2874DC6B267C0469E14
+
+I=395
+KEY=C462F57FCEB3DB6840C6F924184708A1
+PT=9C2834AA5C95F2874DC6B267C0469E14
+CT=0720377F673352693EE2EF76D4FCFB0F
+
+I=396
+KEY=C342C200A98089017E241652CCBBF3AE
+PT=0720377F673352693EE2EF76D4FCFB0F
+CT=E83ED303F4B0ABF675C7BBC470B924FE
+
+I=397
+KEY=2B7C11035D3022F70BE3AD96BC02D750
+PT=E83ED303F4B0ABF675C7BBC470B924FE
+CT=D87ADD68CBCAEA46DFFF99AE3723BC94
+
+I=398
+KEY=F306CC6B96FAC8B1D41C34388B216BC4
+PT=D87ADD68CBCAEA46DFFF99AE3723BC94
+CT=2C290AE7C65B6E5BBAA32DE577DBA343
+
+I=399
+KEY=DF2FC68C50A1A6EA6EBF19DDFCFAC887
+PT=2C290AE7C65B6E5BBAA32DE577DBA343
+CT=A04377ABE259B0D0B5BA2D40A501971B
+
+==========
+
+KEYSIZE=192
+
+I=0
+KEY=000000000000000000000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=F3F6752AE8D7831138F041560631B114
+
+I=1
+KEY=AAFE47EE82411A2BF3F6752AE8D7831138F041560631B114
+PT=F3F6752AE8D7831138F041560631B114
+CT=77BA00ED5412DFF27C8ED91F3C376172
+
+I=2
+KEY=A92B07597B52873C844C75C7BCC55CE3447E98493A06D066
+PT=77BA00ED5412DFF27C8ED91F3C376172
+CT=2D92DE893574463412BD7D121A94952F
+
+I=3
+KEY=5FD632DA76165EDBA9DEAB4E89B11AD756C3E55B20924549
+PT=2D92DE893574463412BD7D121A94952F
+CT=96650F835912F5E748422727802C6CE1
+
+I=4
+KEY=984A4BEC5D3474103FBBA4CDD0A3EF301E81C27CA0BE29A8
+PT=96650F835912F5E748422727802C6CE1
+CT=5FCCD4B5F125ADC5B85A56DB32283732
+
+I=5
+KEY=6B7EDEEAC755885F60777078218642F5A6DB94A792961E9A
+PT=5FCCD4B5F125ADC5B85A56DB32283732
+CT=EA5B1DAE2E4F9FD254A2CC28E128EB9B
+
+I=6
+KEY=CA5585D8C9727F208A2C6DD60FC9DD27F279588F73BEF501
+PT=EA5B1DAE2E4F9FD254A2CC28E128EB9B
+CT=BB87C0FF5DB4B2A593B93398407F823A
+
+I=7
+KEY=BADA7C0D4A0CDD4631ABAD29527D6F8261C06B1733C1773B
+PT=BB87C0FF5DB4B2A593B93398407F823A
+CT=D5AF7D56281F86E3E079BE6B9465DBB4
+
+I=8
+KEY=FF98AB620A203FFCE404D07F7A62E96181B9D57CA7A4AC8F
+PT=D5AF7D56281F86E3E079BE6B9465DBB4
+CT=511331CCA62B067CAC47475800EE33CD
+
+I=9
+KEY=1186A7F46656EA07B517E1B3DC49EF1D2DFE9224A74A9F42
+PT=511331CCA62B067CAC47475800EE33CD
+CT=64ACDC3579D7871644DD585C582AF3A2
+
+I=10
+KEY=313ADFF9712EABE4D1BB3D86A59E680B6923CA78FF606CE0
+PT=64ACDC3579D7871644DD585C582AF3A2
+CT=EA3C45FB8A6E548DAB14BAE07966246C
+
+I=11
+KEY=DDABAC02BE6C40493B87787D2FF03C86C23770988606488C
+PT=EA3C45FB8A6E548DAB14BAE07966246C
+CT=6BC276C465C9ADBE900049A5B58D2DCB
+
+I=12
+KEY=9A9F7E267C2BFCD150450EB94A3991385237393D338B6547
+PT=6BC276C465C9ADBE900049A5B58D2DCB
+CT=E2F0FFA8D6DF327CA0FB80A325B21931
+
+I=13
+KEY=80246B9FB6224226B2B5F1119CE6A344F2CCB99E16397C76
+PT=E2F0FFA8D6DF327CA0FB80A325B21931
+CT=ACEE4C9B8A00A7760DD9CD2F6C6DFA8C
+
+I=14
+KEY=60CDC3E8265B71E81E5BBD8A16E60432FF1574B17A5486FA
+PT=ACEE4C9B8A00A7760DD9CD2F6C6DFA8C
+CT=9579E43690FD2800FED810F7442D366B
+
+I=15
+KEY=9DEC584DB87D63F48B2259BC861B2C3201CD64463E79B091
+PT=9579E43690FD2800FED810F7442D366B
+CT=72D4D064851A050D415FC94E3FBB6A1C
+
+I=16
+KEY=BBC1ED636907611EF9F689D80301293F4092AD0801C2DA8D
+PT=72D4D064851A050D415FC94E3FBB6A1C
+CT=0CCC3B9B35CE3584D7B78C14905BEE55
+
+I=17
+KEY=AE398529289F7994F53AB24336CF1CBB9725211C919934D8
+PT=0CCC3B9B35CE3584D7B78C14905BEE55
+CT=66B6A61BF7BCC6392B8FEC12152E5363
+
+I=18
+KEY=4617E60BD8AF29D5938C1458C173DA82BCAACD0E84B767BB
+PT=66B6A61BF7BCC6392B8FEC12152E5363
+CT=6C2247EA3BC566A84A30BF0B30AB4EEC
+
+I=19
+KEY=6B762D1391AA17CBFFAE53B2FAB6BC2AF69A7205B41C2957
+PT=6C2247EA3BC566A84A30BF0B30AB4EEC
+CT=C16FBCDFAE34E839BA449D697452550D
+
+I=20
+KEY=374499A8C09A60DA3EC1EF6D548254134CDEEF6CC04E7C5A
+PT=C16FBCDFAE34E839BA449D697452550D
+CT=C8B704B4AFE68AF5C91A810F2873F13F
+
+I=21
+KEY=09DCC638DD59F37CF676EBD9FB64DEE685C46E63E83D8D65
+PT=C8B704B4AFE68AF5C91A810F2873F13F
+CT=FC9C31036B26234ED1CBA46E0BE944EE
+
+I=22
+KEY=CE2CEB8869D7EC160AEADADA9042FDA8540FCA0DE3D4C98B
+PT=FC9C31036B26234ED1CBA46E0BE944EE
+CT=DCF13203AD179CD008779F189EBC78F0
+
+I=23
+KEY=505FBECF6B0B083CD61BE8D93D5561785C7855157D68B17B
+PT=DCF13203AD179CD008779F189EBC78F0
+CT=24AEB937E259D44D352FF39C1A8A79E0
+
+I=24
+KEY=1D1649FDB7484DD2F2B551EEDF0CB5356957A68967E2C89B
+PT=24AEB937E259D44D352FF39C1A8A79E0
+CT=19016D033872CB7694A712A84DBC43F2
+
+I=25
+KEY=9BE41771C0F74BDEEBB43CEDE77E7E43FDF0B4212A5E8B69
+PT=19016D033872CB7694A712A84DBC43F2
+CT=0536107FEA26AB6A4FE2667EF7FCF16A
+
+I=26
+KEY=FF3619AED9A1F724EE822C920D58D529B212D25FDDA27A03
+PT=0536107FEA26AB6A4FE2667EF7FCF16A
+CT=5D35213390FCA53AD422DC2ED4BF674D
+
+I=27
+KEY=59D2F5AF4BB6F28BB3B70DA19DA4701366300E71091D1D4E
+PT=5D35213390FCA53AD422DC2ED4BF674D
+CT=04A6F9B1AE64AD03659C4E375A690852
+
+I=28
+KEY=C8384D35CAF0074EB711F41033C0DD1003AC40465374151C
+PT=04A6F9B1AE64AD03659C4E375A690852
+CT=18AB347EFC2F8F93655E16732BB509DE
+
+I=29
+KEY=910CE58F963B684EAFBAC06ECFEF528366F2563578C11CC2
+PT=18AB347EFC2F8F93655E16732BB509DE
+CT=F6037C06C71793BD14A4FC89A05D918F
+
+I=30
+KEY=5D1EF94FBA1E098459B9BC6808F8C13E7256AABCD89C8D4D
+PT=F6037C06C71793BD14A4FC89A05D918F
+CT=75094DD9B2FDDAC96B49CAB676057288
+
+I=31
+KEY=61FDA8DA3EF8949C2CB0F1B1BA051BF7191F600AAE99FFC5
+PT=75094DD9B2FDDAC96B49CAB676057288
+CT=346F9F9E70C05B53DCDAF736FE59749D
+
+I=32
+KEY=5C383CCC2DCAE66A18DF6E2FCAC540A4C5C5973C50C08B58
+PT=346F9F9E70C05B53DCDAF736FE59749D
+CT=1DB82CC8EF5B736AAEFD1F1B9CE5B67D
+
+I=33
+KEY=1EC7FDBB8AE4FF05056742E7259E33CE6B388827CC253D25
+PT=1DB82CC8EF5B736AAEFD1F1B9CE5B67D
+CT=31B5E80D946AE577268973AF865151EB
+
+I=34
+KEY=FFE21FDAB07E755034D2AAEAB1F4D6B94DB1FB884A746CCE
+PT=31B5E80D946AE577268973AF865151EB
+CT=9FD63EB3EC6A15FC149A4F058EDA7080
+
+I=35
+KEY=7EC4053A63B2353BAB0494595D9EC345592BB48DC4AE1C4E
+PT=9FD63EB3EC6A15FC149A4F058EDA7080
+CT=41730A9E9D197435AC36902C57B16588
+
+I=36
+KEY=FB6D2FAFD47FE8D1EA779EC7C087B770F51D24A1931F79C6
+PT=41730A9E9D197435AC36902C57B16588
+CT=08AD282171F0772F85C0A43E8BACEC74
+
+I=37
+KEY=9531B1BBE0863D44E2DAB6E6B177C05F70DD809F18B395B2
+PT=08AD282171F0772F85C0A43E8BACEC74
+CT=8561E508FA237E4170CECD3A8352CFA4
+
+I=38
+KEY=0AB0CF2D1CA2957A67BB53EE4B54BE1E00134DA59BE15A16
+PT=8561E508FA237E4170CECD3A8352CFA4
+CT=4470EFA3C3172EBF64A064F59AE364A9
+
+I=39
+KEY=291FD5C38E400CFA23CBBC4D884390A164B3295001023EBF
+PT=4470EFA3C3172EBF64A064F59AE364A9
+CT=FCC5636DFE9E45CB7761DD14A1CF4773
+
+I=40
+KEY=114E4DEF0447E1D5DF0EDF2076DDD56A13D2F444A0CD79CC
+PT=FCC5636DFE9E45CB7761DD14A1CF4773
+CT=2130BA8736D4933678C3B536AEDBC500
+
+I=41
+KEY=0C19F74860652278FE3E65A74009465C6B1141720E16BCCC
+PT=2130BA8736D4933678C3B536AEDBC500
+CT=1725EECBA8F9A542E9956168390C82C2
+
+I=42
+KEY=EF9E7E57576D8A3EE91B8B6CE8F0E31E8284201A371A3E0E
+PT=1725EECBA8F9A542E9956168390C82C2
+CT=60912D3EEDC962D68A29AED73DDAA24D
+
+I=43
+KEY=CE6464925302B9F4898AA652053981C808AD8ECD0AC09C43
+PT=60912D3EEDC962D68A29AED73DDAA24D
+CT=43A8B490BBC75DC8D2D2F060C8672E9E
+
+I=44
+KEY=8657F15C75C74469CA2212C2BEFEDC00DA7F7EADC2A7B2DD
+PT=43A8B490BBC75DC8D2D2F060C8672E9E
+CT=67D856AF692A4BA7DEC7C8C14A37BD50
+
+I=45
+KEY=2D566517DCC2D4EBADFA446DD7D497A704B8B66C88900F8D
+PT=67D856AF692A4BA7DEC7C8C14A37BD50
+CT=293C5A05F31E863C6CA26DB8018751CA
+
+I=46
+KEY=826DFA3FD5229B9B84C61E6824CA119B681ADBD489175E47
+PT=293C5A05F31E863C6CA26DB8018751CA
+CT=9421BF2E7727F49C252D644B952C76C4
+
+I=47
+KEY=A5A13E0D1C01D7CF10E7A14653EDE5074D37BF9F1C3B2883
+PT=9421BF2E7727F49C252D644B952C76C4
+CT=CEE8F6FCF7CAF1C5EA9F746C10BD405B
+
+I=48
+KEY=923D8EE015266BA8DE0F57BAA42714C2A7A8CBF30C8668D8
+PT=CEE8F6FCF7CAF1C5EA9F746C10BD405B
+CT=403220B81E6E0837ACCEDA5ACB3730BE
+
+I=49
+KEY=B41FA03C1181401A9E3D7702BA491CF50B6611A9C7B15866
+PT=403220B81E6E0837ACCEDA5ACB3730BE
+CT=8C5D05679F78F853CF83CB8E5BBEBA44
+
+I=50
+KEY=00B6D7172075472F126072652531E4A6C4E5DA279C0FE222
+PT=8C5D05679F78F853CF83CB8E5BBEBA44
+CT=6F9C74C0BB40608AAD1A1202FCAF62EB
+
+I=51
+KEY=BEB1F890B29E8EFE7DFC06A59E71842C69FFC82560A080C9
+PT=6F9C74C0BB40608AAD1A1202FCAF62EB
+CT=B812DB4E295951BB04B1636A9CE91DDB
+
+I=52
+KEY=9455ABC4AC495686C5EEDDEBB728D5976D4EAB4FFC499D12
+PT=B812DB4E295951BB04B1636A9CE91DDB
+CT=B164574EAECAD5A06FFB4F3E6C607D61
+
+I=53
+KEY=1E9CCB2A3541F810748A8AA519E2003702B5E4719029E073
+PT=B164574EAECAD5A06FFB4F3E6C607D61
+CT=1433D23C1500EDBA0EFFD03D96E18F20
+
+I=54
+KEY=F4817B9409F1F1D160B958990CE2ED8D0C4A344C06C86F53
+PT=1433D23C1500EDBA0EFFD03D96E18F20
+CT=B81C889B6FAF5DA800AEBA561992853B
+
+I=55
+KEY=49F7CD1535080039D8A5D002634DB0250CE48E1A1F5AEA68
+PT=B81C889B6FAF5DA800AEBA561992853B
+CT=5B558B7C5916CF14FA5BC9266CFE875F
+
+I=56
+KEY=FCD5479474EA721783F05B7E3A5B7F31F6BF473C73A46D37
+PT=5B558B7C5916CF14FA5BC9266CFE875F
+CT=49BE310D74A9980E9A78B0A8BB3BA1AB
+
+I=57
+KEY=6A68208CC7D6782ECA4E6A734EF2E73F6CC7F794C89FCC9C
+PT=49BE310D74A9980E9A78B0A8BB3BA1AB
+CT=7BD5BABAD7F1EEAA56E17BF9B6678DC8
+
+I=58
+KEY=38DE1A69C03EF9C1B19BD0C9990309953A268C6D7EF84154
+PT=7BD5BABAD7F1EEAA56E17BF9B6678DC8
+CT=62448A767C344E7E7CDB02112F475EFE
+
+I=59
+KEY=02634EC657B436A8D3DF5ABFE53747EB46FD8E7C51BF1FAA
+PT=62448A767C344E7E7CDB02112F475EFE
+CT=F490A20D8B5C53E34C4CF5B7B72A4591
+
+I=60
+KEY=DCDAAB8CBD526850274FF8B26E6B14080AB17BCBE6955A3B
+PT=F490A20D8B5C53E34C4CF5B7B72A4591
+CT=ACFFD7CD5C01B183AB92DBB62DC088F6
+
+I=61
+KEY=51EB6B7172C22A248BB02F7F326AA58BA123A07DCB55D2CD
+PT=ACFFD7CD5C01B183AB92DBB62DC088F6
+CT=0BEDDFA8E7A1AC84E3E164A59D599BAB
+
+I=62
+KEY=4796B5FA7B22626B805DF0D7D5CB090F42C2C4D8560C4966
+PT=0BEDDFA8E7A1AC84E3E164A59D599BAB
+CT=9CC82E2B6B96254345C1FDBAD667275E
+
+I=63
+KEY=D8E112F9657BD2BF1C95DEFCBE5D2C4C07033962806B6E38
+PT=9CC82E2B6B96254345C1FDBAD667275E
+CT=75926F4D3503411CD3C059DA4FFABD62
+
+I=64
+KEY=A19B892107C4F8F86907B1B18B5E6D50D4C360B8CF91D35A
+PT=75926F4D3503411CD3C059DA4FFABD62
+CT=1073561CF6BA28EC57F4B7E5073D27FA
+
+I=65
+KEY=AEFE35F52D8D54A27974E7AD7DE445BC8337D75DC8ACF4A0
+PT=1073561CF6BA28EC57F4B7E5073D27FA
+CT=83E161BA51E6F3A4588C94F7A24BA81F
+
+I=66
+KEY=5E41A6382F88A350FA9586172C02B618DBBB43AA6AE75CBF
+PT=83E161BA51E6F3A4588C94F7A24BA81F
+CT=BD693B4C49378F17322D175932B87111
+
+I=67
+KEY=A2D760EE839234F147FCBD5B6535390FE99654F3585F2DAE
+PT=BD693B4C49378F17322D175932B87111
+CT=101A83CF8487BEDD2C93180BB5024EC9
+
+I=68
+KEY=0F463C72AF8E4B5357E63E94E1B287D2C5054CF8ED5D6367
+PT=101A83CF8487BEDD2C93180BB5024EC9
+CT=757949BE62D3328D09E2F45DF2AD095A
+
+I=69
+KEY=C3C0A16686A5D66B229F772A8361B55FCCE7B8A51FF06A3D
+PT=757949BE62D3328D09E2F45DF2AD095A
+CT=63EBBF9E15BECEC1A0885BECB3D06BF8
+
+I=70
+KEY=3A0B55738CF3B3E94174C8B496DF7B9E6C6FE349AC2001C5
+PT=63EBBF9E15BECEC1A0885BECB3D06BF8
+CT=E176B5C7AFCE06E8ED0C63A4CF7E3034
+
+I=71
+KEY=450F848D964934DAA0027D7339117D76816380ED635E31F1
+PT=E176B5C7AFCE06E8ED0C63A4CF7E3034
+CT=97B91F0A898E5B3A77A0883140D477BC
+
+I=72
+KEY=F3AF781D6EA3529237BB6279B09F264CF6C308DC238A464D
+PT=97B91F0A898E5B3A77A0883140D477BC
+CT=346AD1C470309DFE6CB08DCC24E17470
+
+I=73
+KEY=4E43AB584BF1F8C603D1B3BDC0AFBBB29A738510076B323D
+PT=346AD1C470309DFE6CB08DCC24E17470
+CT=F8B462FB7D758B3AF2CDF7D9244B738F
+
+I=74
+KEY=5A1F023E8F0987B4FB65D146BDDA308868BE72C9232041B2
+PT=F8B462FB7D758B3AF2CDF7D9244B738F
+CT=B44D090FD0B7F762146FF6301C6DBF54
+
+I=75
+KEY=FFC4BB75031165DA4F28D8496D6DC7EA7CD184F93F4DFEE6
+PT=B44D090FD0B7F762146FF6301C6DBF54
+CT=15CB042313710F2CD1C3409B5F3AF419
+
+I=76
+KEY=8107240E1FB855765AE3DC6A7E1CC8C6AD12C46260770AFF
+PT=15CB042313710F2CD1C3409B5F3AF419
+CT=0AB01B03F415A58D52CF7A1E40856275
+
+I=77
+KEY=4493743ADE27D1D85053C7698A096D4BFFDDBE7C20F2688A
+PT=0AB01B03F415A58D52CF7A1E40856275
+CT=05BE037C28719B4C4EEBEA329FAC63D5
+
+I=78
+KEY=F582EC062155016255EDC415A278F607B136544EBF5E0B5F
+PT=05BE037C28719B4C4EEBEA329FAC63D5
+CT=74C3C4F42B3F575C6B8D5BAD9AF0191F
+
+I=79
+KEY=8FAF8EEAA5E2D76B212E00E18947A15BDABB0FE325AE1240
+PT=74C3C4F42B3F575C6B8D5BAD9AF0191F
+CT=92CB4A3DF34E6711FB56391F26D949AD
+
+I=80
+KEY=1CAD393CC06BC104B3E54ADC7A09C64A21ED36FC03775BED
+PT=92CB4A3DF34E6711FB56391F26D949AD
+CT=3754BB3D8C3D7370EDBA842CDF17D5C0
+
+I=81
+KEY=E3AB53BB36BDFBBB84B1F1E1F634B53ACC57B2D0DC608E2D
+PT=3754BB3D8C3D7370EDBA842CDF17D5C0
+CT=94EAC7FD54D228619791BCCBF9F633F4
+
+I=82
+KEY=480B1D923E853259105B361CA2E69D5B5BC60E1B2596BDD9
+PT=94EAC7FD54D228619791BCCBF9F633F4
+CT=CAB29222355968E9CF492D5BF08B0999
+
+I=83
+KEY=D8F6791107FB3D26DAE9A43E97BFF5B2948F2340D51DB440
+PT=CAB29222355968E9CF492D5BF08B0999
+CT=00837C78B88005288DB39452F1EB8F13
+
+I=84
+KEY=6521B6B771FE24B2DA6AD8462F3FF09A193CB71224F63B53
+PT=00837C78B88005288DB39452F1EB8F13
+CT=2082F77D48A63E223A79217CD4516854
+
+I=85
+KEY=9D9F3198682E2476FAE82F3B6799CEB82345966EF0A75307
+PT=2082F77D48A63E223A79217CD4516854
+CT=C5074D4B3F455346B078DAFBC1327AB6
+
+I=86
+KEY=61832291235DC7C33FEF627058DC9DFE933D4C95319529B1
+PT=C5074D4B3F455346B078DAFBC1327AB6
+CT=72EE56572A2B7CEC53FC4E4FC0293D63
+
+I=87
+KEY=5C2877854338D45D4D01342772F7E112C0C102DAF1BC14D2
+PT=72EE56572A2B7CEC53FC4E4FC0293D63
+CT=7350039161DF9E8E45B360E6139E4226
+
+I=88
+KEY=A8225CF65297BA953E5137B613287F9C8572623CE22256F4
+PT=7350039161DF9E8E45B360E6139E4226
+CT=4339288215BE1BB87E31AF8FB35DEDC1
+
+I=89
+KEY=51649B52A8458F4B7D681F3406966424FB43CDB3517FBB35
+PT=4339288215BE1BB87E31AF8FB35DEDC1
+CT=4D7AB61CC2C930CBB0DF43EEE92EBA1F
+
+I=90
+KEY=750E4E7E9183E2FF3012A928C45F54EF4B9C8E5DB851012A
+PT=4D7AB61CC2C930CBB0DF43EEE92EBA1F
+CT=1090FE663EA77DC2EC30E8F89E662918
+
+I=91
+KEY=B65FBDF702246E442082574EFAF8292DA7AC66A526372832
+PT=1090FE663EA77DC2EC30E8F89E662918
+CT=14307A2CC40BDFB0413DF10F961337CA
+
+I=92
+KEY=7BEC3480AA0A44FF34B22D623EF3F69DE69197AAB0241FF8
+PT=14307A2CC40BDFB0413DF10F961337CA
+CT=8F378E272D82DE8E63EC418912EF8642
+
+I=93
+KEY=63921E8700657D6ABB85A34513712813857DD623A2CB99BA
+PT=8F378E272D82DE8E63EC418912EF8642
+CT=3947DDC00E3C4D958E508DF58AB4982A
+
+I=94
+KEY=754B2E8355FABCAF82C27E851D4D65860B2D5BD6287F0190
+PT=3947DDC00E3C4D958E508DF58AB4982A
+CT=492DB375B3CC640DD8FEDBAF2C943535
+
+I=95
+KEY=E8F8C2450F8597B3CBEFCDF0AE81018BD3D3807904EB34A5
+PT=492DB375B3CC640DD8FEDBAF2C943535
+CT=D74BD4118D448B674935B80E4B1BFB93
+
+I=96
+KEY=34A2C5B010AE479A1CA419E123C58AEC9AE638774FF0CF36
+PT=D74BD4118D448B674935B80E4B1BFB93
+CT=E9742B41295BC3ED3AA66E80E8718665
+
+I=97
+KEY=0E11D08AA9EC81A4F5D032A00A9E4901A04056F7A7814953
+PT=E9742B41295BC3ED3AA66E80E8718665
+CT=5FB17BFE146B410F90EC922B1385D0E4
+
+I=98
+KEY=B15779E61FD27B02AA61495E1EF5080E30ACC4DCB40499B7
+PT=5FB17BFE146B410F90EC922B1385D0E4
+CT=1B0CCF643F19DDBC0E3ED0EEAE83ACC1
+
+I=99
+KEY=861B580225193DD5B16D863A21ECD5B23E9214321A873576
+PT=1B0CCF643F19DDBC0E3ED0EEAE83ACC1
+CT=B3A7D434E30DC0CDEE4D17BBC27B855E
+
+I=100
+KEY=B6DF2A8726C31D6E02CA520EC2E1157FD0DF0389D8FCB028
+PT=B3A7D434E30DC0CDEE4D17BBC27B855E
+CT=57DE2345D91E26A2AB7CA88AEA23A84F
+
+I=101
+KEY=6976D3780B5F01E25514714B1BFF33DD7BA3AB0332DF1867
+PT=57DE2345D91E26A2AB7CA88AEA23A84F
+CT=7B03541D239B569FEE7ABD8980F1BD05
+
+I=102
+KEY=734CAC477A2727542E1725563864654295D9168AB22EA562
+PT=7B03541D239B569FEE7ABD8980F1BD05
+CT=5CB7E72B2E6CFF8C18AEB026FE40C2FA
+
+I=103
+KEY=B59171BEBC7BFB8672A0C27D16089ACE8D77A6AC4C6E6798
+PT=5CB7E72B2E6CFF8C18AEB026FE40C2FA
+CT=50B9186306DA92FE785D6EB9223E43A9
+
+I=104
+KEY=E460BA8A2F82DBB72219DA1E10D20830F52AC8156E502431
+PT=50B9186306DA92FE785D6EB9223E43A9
+CT=B3D8CE8B04B99CF2F82571E1588C358B
+
+I=105
+KEY=CE7C790CD4B34C4791C11495146B94C20D0FB9F436DC11BA
+PT=B3D8CE8B04B99CF2F82571E1588C358B
+CT=9845F0A5681A40A6DC3D9BCA639FE786
+
+I=106
+KEY=699FE59B482743180984E4307C71D464D132223E5543F63C
+PT=9845F0A5681A40A6DC3D9BCA639FE786
+CT=C7EBF5CEAAD5652563A8550020EC7070
+
+I=107
+KEY=FEBE2836F5099F53CE6F11FED6A4B141B29A773E75AF864C
+PT=C7EBF5CEAAD5652563A8550020EC7070
+CT=DE94A376634FE9856A84E2EE6EED86E8
+
+I=108
+KEY=22BCFFB0740FC30510FBB288B5EB58C4D81E95D01B4200A4
+PT=DE94A376634FE9856A84E2EE6EED86E8
+CT=64B9917E23328A4FE1F8FDB8AE43E7F3
+
+I=109
+KEY=E8491AFDF41F0DFB744223F696D9D28B39E66868B501E757
+PT=64B9917E23328A4FE1F8FDB8AE43E7F3
+CT=2C59820184ABC99E82A7F51D4E3A86A8
+
+I=110
+KEY=3BE5F390D72ABE6A581BA1F712721B15BB419D75FB3B61FF
+PT=2C59820184ABC99E82A7F51D4E3A86A8
+CT=387ACD0BAD539773287C209A0876581F
+
+I=111
+KEY=B7388762F772C83560616CFCBF218C66933DBDEFF34D39E0
+PT=387ACD0BAD539773287C209A0876581F
+CT=F12D3E1F21AFB9CACAB541EFB7334438
+
+I=112
+KEY=FBD600191276FA5C914C52E39E8E35AC5988FC00447E7DD8
+PT=F12D3E1F21AFB9CACAB541EFB7334438
+CT=68D2FA1BB635D9D35E4BF440335CBD80
+
+I=113
+KEY=1E2B19106450AA2FF99EA8F828BBEC7F07C308407722C058
+PT=68D2FA1BB635D9D35E4BF440335CBD80
+CT=4532507D5E0227054CB36CBD3C489D53
+
+I=114
+KEY=C0B60F65BAD77DA4BCACF88576B9CB7A4B7064FD4B6A5D0B
+PT=4532507D5E0227054CB36CBD3C489D53
+CT=6DB8FD7DE7924B7E92CF27BC0AD11D16
+
+I=115
+KEY=451836B53318CC33D11405F8912B8004D9BF434141BB401D
+PT=6DB8FD7DE7924B7E92CF27BC0AD11D16
+CT=A3D5F6A8D4372B66F8D3DD9FF945DECA
+
+I=116
+KEY=0E57235F9B527C5172C1F350451CAB62216C9EDEB8FE9ED7
+PT=A3D5F6A8D4372B66F8D3DD9FF945DECA
+CT=BEDFF233AD31EEB9943EEBF52F66AABF
+
+I=117
+KEY=BB7E1C438E5F36A3CC1E0163E82D45DBB552752B97983468
+PT=BEDFF233AD31EEB9943EEBF52F66AABF
+CT=4531EDEC06570582755199A0C4745EA5
+
+I=118
+KEY=DE70EC87811AFD32892FEC8FEE7A4059C003EC8B53EC6ACD
+PT=4531EDEC06570582755199A0C4745EA5
+CT=F3189383C202A472CE238571D187F8EB
+
+I=119
+KEY=CA2AE67397E9238A7A377F0C2C78E42B0E2069FA826B9226
+PT=F3189383C202A472CE238571D187F8EB
+CT=B48952CBAC43D0114985A9035DFF0382
+
+I=120
+KEY=335EF040D622E95BCEBE2DC7803B343A47A5C0F9DF9491A4
+PT=B48952CBAC43D0114985A9035DFF0382
+CT=9B71302FDFBC47DF6276AB73D4D0D8B3
+
+I=121
+KEY=683CC10DFBC6C09C55CF1DE85F8773E525D36B8A0B444917
+PT=9B71302FDFBC47DF6276AB73D4D0D8B3
+CT=69EED4A0C5428005199DF12B338393E2
+
+I=122
+KEY=B86C9A2F1A978E123C21C9489AC5F3E03C4E9AA138C7DAF5
+PT=69EED4A0C5428005199DF12B338393E2
+CT=D0C2ACA653E6D7D80D32F445B0DD2347
+
+I=123
+KEY=EF7E3DCDF05FFA86ECE365EEC9232438317C6EE4881AF9B2
+PT=D0C2ACA653E6D7D80D32F445B0DD2347
+CT=F373D4DBD7ADAFEF582621EC8C7CD2A2
+
+I=124
+KEY=B8059C7A6BA2273E1F90B1351E8E8BD7695A4F0804662B10
+PT=F373D4DBD7ADAFEF582621EC8C7CD2A2
+CT=0AD37AFC8C929513F9BDB976E69C7CF3
+
+I=125
+KEY=F5C9ECCBB672D46F1543CBC9921C1EC490E7F67EE2FA57E3
+PT=0AD37AFC8C929513F9BDB976E69C7CF3
+CT=E80B118DFB34F11DB344B6AE34EDEBC8
+
+I=126
+KEY=AA67DC18543A7A88FD48DA446928EFD923A340D0D617BC2B
+PT=E80B118DFB34F11DB344B6AE34EDEBC8
+CT=628D5C42DDEBA9AE4983F51D339366B4
+
+I=127
+KEY=BF0C30A039C0FEE89FC58606B4C346776A20B5CDE584DA9F
+PT=628D5C42DDEBA9AE4983F51D339366B4
+CT=1BE2A5A8CCA8E065557F6982AF3E056F
+
+I=128
+KEY=A219F6B8E2FF1AA3842723AE786BA6123F5FDC4F4ABADFF0
+PT=1BE2A5A8CCA8E065557F6982AF3E056F
+CT=5E1187D78AEB34780F07905A84D2EBBA
+
+I=129
+KEY=851DDD078D4B7802DA36A479F280926A30584C15CE68344A
+PT=5E1187D78AEB34780F07905A84D2EBBA
+CT=31EE3AC2EC79D14EBCA71E760326CD74
+
+I=130
+KEY=E6741084FEDEEFFEEBD89EBB1EF943248CFF5263CD4EF93E
+PT=31EE3AC2EC79D14EBCA71E760326CD74
+CT=298E3A00F280BBF8364CF8D6D44CF54E
+
+I=131
+KEY=8A41136FE9DB1FB5C256A4BBEC79F8DCBAB3AAB519020C70
+PT=298E3A00F280BBF8364CF8D6D44CF54E
+CT=39B7A0416C1F9B19C7B99A1F6A70258C
+
+I=132
+KEY=E1F1B622EB8BC9B1FBE104FA806663C57D0A30AA737229FC
+PT=39B7A0416C1F9B19C7B99A1F6A70258C
+CT=B1655FA9AB2C4956E2C56F7A6C421BE5
+
+I=133
+KEY=0EE0B7E1AF7093694A845B532B4A2A939FCF5FD01F303219
+PT=B1655FA9AB2C4956E2C56F7A6C421BE5
+CT=1AD9CBB1A28F7A2A6CBC7EC98EF483FC
+
+I=134
+KEY=180A2BD07F77D34E505D90E289C550B9F373211991C4B1E5
+PT=1AD9CBB1A28F7A2A6CBC7EC98EF483FC
+CT=6363BE57D6D587EE3ABA9FE81F3D3A10
+
+I=135
+KEY=848B7408CAACF02E333E2EB55F10D757C9C9BEF18EF98BF5
+PT=6363BE57D6D587EE3ABA9FE81F3D3A10
+CT=05618580D7915AA7398EF4DB7D1F1DE3
+
+I=136
+KEY=E581D7B4F84F2860365FAB3588818DF0F0474A2AF3E69616
+PT=05618580D7915AA7398EF4DB7D1F1DE3
+CT=F8D0118087404FD729F96CA6551338AD
+
+I=137
+KEY=6C81D6873EFFF763CE8FBAB50FC1C227D9BE268CA6F5AEBB
+PT=F8D0118087404FD729F96CA6551338AD
+CT=784913B38D32A7395D73AF1378A0DC56
+
+I=138
+KEY=D971137D872F606EB6C6A90682F3651E84CD899FDE5572ED
+PT=784913B38D32A7395D73AF1378A0DC56
+CT=D07C418BD183457B6683AE99C457FC0B
+
+I=139
+KEY=196BBA79E35EEC7966BAE88D53702065E24E27061A028EE6
+PT=D07C418BD183457B6683AE99C457FC0B
+CT=5595D16DF7668779825BC135D1408013
+
+I=140
+KEY=6F140EC274635FA2332F39E0A416A71C6015E633CB420EF5
+PT=5595D16DF7668779825BC135D1408013
+CT=1AB9F5075E063403FEFD976044C89C95
+
+I=141
+KEY=926F3A2AA0BD8C952996CCE7FA10931F9EE871538F8A9260
+PT=1AB9F5075E063403FEFD976044C89C95
+CT=6DF413E53FCEDA296D7ABA796179D600
+
+I=142
+KEY=740F74BF0E0C38154462DF02C5DE4936F392CB2AEEF34460
+PT=6DF413E53FCEDA296D7ABA796179D600
+CT=0D0F499B0D51948A9CCBC4B6531A05F7
+
+I=143
+KEY=2500C9B63042B24B496D9699C88FDDBC6F590F9CBDE94197
+PT=0D0F499B0D51948A9CCBC4B6531A05F7
+CT=85833A1072B6A0ED932D4D89D53A785A
+
+I=144
+KEY=FCB377C07622271FCCEEAC89BA397D51FC74421568D339CD
+PT=85833A1072B6A0ED932D4D89D53A785A
+CT=545EDE1A4B737F1E51CBDAE311E91D5C
+
+I=145
+KEY=BB108ABE391C394E98B07293F14A024FADBF98F6793A2491
+PT=545EDE1A4B737F1E51CBDAE311E91D5C
+CT=DA8CC635CF1450685DDAAA5A56BC3BD9
+
+I=146
+KEY=34F8623EC93A6C2A423CB4A63E5E5227F06532AC2F861F48
+PT=DA8CC635CF1450685DDAAA5A56BC3BD9
+CT=FE73162BF90B52DEE7D0EA9D73F8444D
+
+I=147
+KEY=5E3CB25583365D5EBC4FA28DC75500F917B5D8315C7E5B05
+PT=FE73162BF90B52DEE7D0EA9D73F8444D
+CT=BC75D12F66C232E1979D0F6C3E1ED8F1
+
+I=148
+KEY=EABE655116470AE1003A73A2A19732188028D75D626083F4
+PT=BC75D12F66C232E1979D0F6C3E1ED8F1
+CT=661A3FA0530BF47C266D609FE01DAF48
+
+I=149
+KEY=97A1B8E97CF217C366204C02F29CC664A645B7C2827D2CBC
+PT=661A3FA0530BF47C266D609FE01DAF48
+CT=791144514CF8E4CC15BC6ADE3291F9CD
+
+I=150
+KEY=5189DC6F535B5A091F310853BE6422A8B3F9DD1CB0ECD571
+PT=791144514CF8E4CC15BC6ADE3291F9CD
+CT=4369FDB3626F399A6526C476373A52D4
+
+I=151
+KEY=21CD36EDB27428AB5C58F5E0DC0B1B32D6DF196A87D687A5
+PT=4369FDB3626F399A6526C476373A52D4
+CT=4C8869494C044703CFDD09F83B2208AA
+
+I=152
+KEY=85C08C7D4667AE3710D09CA9900F5C3119021092BCF48F0F
+PT=4C8869494C044703CFDD09F83B2208AA
+CT=06BC45BDB38A7028CB2D189E9E0C3046
+
+I=153
+KEY=807182BD7E1F29BE166CD91423852C19D22F080C22F8BF49
+PT=06BC45BDB38A7028CB2D189E9E0C3046
+CT=74AFD5F37F8F0712710585FB8DB22FF8
+
+I=154
+KEY=1AF15D0DE00CEF3F62C30CE75C0A2B0BA32A8DF7AF4A90B1
+PT=74AFD5F37F8F0712710585FB8DB22FF8
+CT=B1A4EE894A12794E0C1A286DDBC01CFD
+
+I=155
+KEY=E0732BA619DCF2F5D367E26E16185245AF30A59A748A8C4C
+PT=B1A4EE894A12794E0C1A286DDBC01CFD
+CT=0EA90279135DFFC7F58DB959F9E8BFE1
+
+I=156
+KEY=AE8779E669BFF77EDDCEE0170545AD825ABD1CC38D6233AD
+PT=0EA90279135DFFC7F58DB959F9E8BFE1
+CT=3717C67E520D87778350E62525C01730
+
+I=157
+KEY=79D13142BE9066A2EAD9266957482AF5D9EDFAE6A8A2249D
+PT=3717C67E520D87778350E62525C01730
+CT=A8F96DA7AE81EF8810A317AB4C9B82A9
+
+I=158
+KEY=597D70828E56003942204BCEF9C9C57DC94EED4DE439A634
+PT=A8F96DA7AE81EF8810A317AB4C9B82A9
+CT=8C373A065986BAC9E345475F5D83FBCF
+
+I=159
+KEY=96C8CF3884D5DA18CE1771C8A04F7FB42A0BAA12B9BA5DFB
+PT=8C373A065986BAC9E345475F5D83FBCF
+CT=8E4D562CBEDC360EFB25B857DD4C4FF2
+
+I=160
+KEY=5A0A29B58F17F9F9405A27E41E9349BAD12E124564F61209
+PT=8E4D562CBEDC360EFB25B857DD4C4FF2
+CT=192CCD79E3B4C8F5617D1F55B789B7A3
+
+I=161
+KEY=29A4692EDE3EAABE5976EA9DFD27814FB0530D10D37FA5AA
+PT=192CCD79E3B4C8F5617D1F55B789B7A3
+CT=8A5F181E1748C98121D1C22204591B23
+
+I=162
+KEY=5E5CA30210E78677D329F283EA6F48CE9182CF32D726BE89
+PT=8A5F181E1748C98121D1C22204591B23
+CT=14512A4997094A0536594E63ACC5EF4A
+
+I=163
+KEY=7DA5F9C99B68DFB0C778D8CA7D6602CBA7DB81517BE351C3
+PT=14512A4997094A0536594E63ACC5EF4A
+CT=F91BA751D5E2ADC074FC6CC14476DE67
+
+I=164
+KEY=658144C57CCFDAD83E637F9BA884AF0BD327ED903F958FA4
+PT=F91BA751D5E2ADC074FC6CC14476DE67
+CT=5F7FED22BABA25D48C95C4E2CAEDB3F4
+
+I=165
+KEY=13C5D7A44396F6FD611C92B9123E8ADF5FB22972F5783C50
+PT=5F7FED22BABA25D48C95C4E2CAEDB3F4
+CT=0FCFB3CB93B2E7FDF7E156486929BD17
+
+I=166
+KEY=99DBAC1D5D268DB06ED32172818C6D22A8537F3A9C518147
+PT=0FCFB3CB93B2E7FDF7E156486929BD17
+CT=3E16265A02271FF68AE6310A6BFDEE60
+
+I=167
+KEY=A8876A49E2F1CC5250C5072883AB72D422B54E30F7AC6F27
+PT=3E16265A02271FF68AE6310A6BFDEE60
+CT=1657BF722B57D083D8864B6447317E05
+
+I=168
+KEY=0A615A71BC2BE3E94692B85AA8FCA257FA330554B09D1122
+PT=1657BF722B57D083D8864B6447317E05
+CT=018B742E941E27C547451B9E41F245F5
+
+I=169
+KEY=6AE11571E3D54C4B4719CC743CE28592BD761ECAF16F54D7
+PT=018B742E941E27C547451B9E41F245F5
+CT=8C5BB61774502B6A9C44BEE8D6C44A63
+
+I=170
+KEY=DCE75079013F0865CB427A6348B2AEF82132A02227AB1EB4
+PT=8C5BB61774502B6A9C44BEE8D6C44A63
+CT=361D3B51C751298194CB1AA32C0A86EE
+
+I=171
+KEY=E73232D50D457866FD5F41328FE38779B5F9BA810BA1985A
+PT=361D3B51C751298194CB1AA32C0A86EE
+CT=7B734F34DD4F332CBE5CFC7659C390BF
+
+I=172
+KEY=BEEF9073227655EB862C0E0652ACB4550BA546F7526208E5
+PT=7B734F34DD4F332CBE5CFC7659C390BF
+CT=63CCC9CE5DADA5B5AC68870E6C675943
+
+I=173
+KEY=1E9078C198526C1DE5E0C7C80F0111E0A7CDC1F93E0551A6
+PT=63CCC9CE5DADA5B5AC68870E6C675943
+CT=7BBC6F7B62807CBE1C93CADB5E6CAE0A
+
+I=174
+KEY=AD26AC70784FF1B99E5CA8B36D816D5EBB5E0B226069FFAC
+PT=7BBC6F7B62807CBE1C93CADB5E6CAE0A
+CT=E95B0C766EF9049163D3A249E196DDB8
+
+I=175
+KEY=E17835A277F1D1EE7707A4C5037869CFD88DA96B81FF2214
+PT=E95B0C766EF9049163D3A249E196DDB8
+CT=968263CBCDB4582FC9CDFD0C9FD0B4F0
+
+I=176
+KEY=22F9EB31E67C62DBE185C70ECECC31E0114054671E2F96E4
+PT=968263CBCDB4582FC9CDFD0C9FD0B4F0
+CT=9F573A339DFA07B844E4034718A4FE88
+
+I=177
+KEY=0FEC8766966A42DA7ED2FD3D5336365855A45720068B686C
+PT=9F573A339DFA07B844E4034718A4FE88
+CT=A0809BA3A742C0EB1BDA613B7472F56A
+
+I=178
+KEY=98E655519C9A8A95DE52669EF474F6B34E7E361B72F99D06
+PT=A0809BA3A742C0EB1BDA613B7472F56A
+CT=9BF1D85440818035FA6AC36E5A5F00A7
+
+I=179
+KEY=A8D37BE0EB386F8045A3BECAB4F57686B414F57528A69DA1
+PT=9BF1D85440818035FA6AC36E5A5F00A7
+CT=924E309AC04A655C50980360914E9830
+
+I=180
+KEY=7D89F156EA181E92D7ED8E5074BF13DAE48CF615B9E80591
+PT=924E309AC04A655C50980360914E9830
+CT=427819CDAE419A046D4586FF5A784A1C
+
+I=181
+KEY=B028A265666F69629595979DDAFE89DE89C970EAE3904F8D
+PT=427819CDAE419A046D4586FF5A784A1C
+CT=D8B51EEC0A6A6D17F1E476C922AD8548
+
+I=182
+KEY=DF20B45B990C5E734D208971D094E4C9782D0623C13DCAC5
+PT=D8B51EEC0A6A6D17F1E476C922AD8548
+CT=7823F1BBA96105168195CDAC34AB5315
+
+I=183
+KEY=AF4C64F7E4AA6DE2350378CA79F5E1DFF9B8CB8FF59699D0
+PT=7823F1BBA96105168195CDAC34AB5315
+CT=85DD0256BC29EAA867DB77C1A049574D
+
+I=184
+KEY=4047F74604E37A00B0DE7A9CC5DC0B779E63BC4E55DFCE9D
+PT=85DD0256BC29EAA867DB77C1A049574D
+CT=64C1880D34408CB1A92BBA354941D5B6
+
+I=185
+KEY=9C3BF36E47110C08D41FF291F19C87C63748067B1C9E1B2B
+PT=64C1880D34408CB1A92BBA354941D5B6
+CT=25B80866FE3198C775F64C412E734348
+
+I=186
+KEY=FAE7368F99242159F1A7FAF70FAD1F0142BE4A3A32ED5863
+PT=25B80866FE3198C775F64C412E734348
+CT=8D3D7E9A195363C96334C48120BC343A
+
+I=187
+KEY=5F48BD86A9C4DC897C9A846D16FE7CC8218A8EBB12516C59
+PT=8D3D7E9A195363C96334C48120BC343A
+CT=E886EEA0F2D556D693DC94FFC588D1F4
+
+I=188
+KEY=B7406993C120EA20941C6ACDE42B2A1EB2561A44D7D9BDAD
+PT=E886EEA0F2D556D693DC94FFC588D1F4
+CT=76CB89CBB935D422DED9784D4548A84F
+
+I=189
+KEY=4DB740C3FA55F4ABE2D7E3065D1EFE3C6C8F6209929115E2
+PT=76CB89CBB935D422DED9784D4548A84F
+CT=93D7AC7B18A1196D5C166203C44A43D3
+
+I=190
+KEY=353A0293DEFB648071004F7D45BFE7513099000A56DB5631
+PT=93D7AC7B18A1196D5C166203C44A43D3
+CT=8982BD77485524EE9E49769591E922CE
+
+I=191
+KEY=F6FC1F7E838CD8A7F882F20A0DEAC3BFAED0769FC73274FF
+PT=8982BD77485524EE9E49769591E922CE
+CT=89012A1E3F7669C76C5F5F4987108662
+
+I=192
+KEY=A1AA84E01EBC3E837183D814329CAA78C28F29D64022F29D
+PT=89012A1E3F7669C76C5F5F4987108662
+CT=139E37ADA17990054AF8EF5B717E884B
+
+I=193
+KEY=C631229E9871F2AC621DEFB993E53A7D8877C68D315C7AD6
+PT=139E37ADA17990054AF8EF5B717E884B
+CT=CEC8F9C90B2E393BDA4602C2A83F953C
+
+I=194
+KEY=824604723CD82F95ACD5167098CB03465231C44F9963EFEA
+PT=CEC8F9C90B2E393BDA4602C2A83F953C
+CT=2A2E1344AE4C6BA40568E170BF67FD74
+
+I=195
+KEY=2B17489FA71F683B86FB0534368768E25759253F2604129E
+PT=2A2E1344AE4C6BA40568E170BF67FD74
+CT=7402AC6982DBB0BED678746E4523556C
+
+I=196
+KEY=DA9C0CF5A89D3D94F2F9A95DB45CD85C81215151632747F2
+PT=7402AC6982DBB0BED678746E4523556C
+CT=36A36B5B55F950F00B9F3E31156BFD65
+
+I=197
+KEY=543619886B56830BC45AC206E1A588AC8ABE6F60764CBA97
+PT=36A36B5B55F950F00B9F3E31156BFD65
+CT=D7B36A117E824A49A5944C37BEE27F06
+
+I=198
+KEY=9494630598E7618213E9A8179F27C2E52F2A2357C8AEC591
+PT=D7B36A117E824A49A5944C37BEE27F06
+CT=2D60BC0BC950EEE7E36D50E971CF68D0
+
+I=199
+KEY=B0328218DF523A0C3E89141C56772C02CC4773BEB961AD41
+PT=2D60BC0BC950EEE7E36D50E971CF68D0
+CT=49A4643E535F45A1ABDEF41ABABBE268
+
+I=200
+KEY=5E3FD7ACD8EF334D772D7022052869A3679987A403DA4F29
+PT=49A4643E535F45A1ABDEF41ABABBE268
+CT=D5EEB5CC40AF8612708BAABE85685E4C
+
+I=201
+KEY=A232D0267D606002A2C3C5EE4587EFB117122D1A86B21165
+PT=D5EEB5CC40AF8612708BAABE85685E4C
+CT=3F5B875DE202C5441165FE5C5CA2D258
+
+I=202
+KEY=844ED6FAFA342BFE9D9842B3A7852AF50677D346DA10C33D
+PT=3F5B875DE202C5441165FE5C5CA2D258
+CT=9B5F0210E0EC623C6ACF1C0BC06EBF51
+
+I=203
+KEY=109F8CEC689E0F5306C740A3476948C96CB8CF4D1A7E7C6C
+PT=9B5F0210E0EC623C6ACF1C0BC06EBF51
+CT=E57015FAB0006446E544704DB6629059
+
+I=204
+KEY=D9ABCBAC4B271B04E3B75559F7692C8F89FCBF00AC1CEC35
+PT=E57015FAB0006446E544704DB6629059
+CT=85F0DF6B1ED933E87F6A9F609D516346
+
+I=205
+KEY=09915869AE1F57F766478A32E9B01F67F6962060314D8F73
+PT=85F0DF6B1ED933E87F6A9F609D516346
+CT=471B931539C155478A1D4B9BA50DCE43
+
+I=206
+KEY=BFB70AA6C4F05C1D215C1927D0714A207C8B6BFB94404130
+PT=471B931539C155478A1D4B9BA50DCE43
+CT=9AC55C1CC77E7B59CC9204898A38CEA7
+
+I=207
+KEY=660972D79B056F14BB99453B170F3179B0196F721E788F97
+PT=9AC55C1CC77E7B59CC9204898A38CEA7
+CT=19B00FEB13145F9F356173B42184D516
+
+I=208
+KEY=F09576EB17FB1A07A2294AD0041B6EE685781CC63FFC5A81
+PT=19B00FEB13145F9F356173B42184D516
+CT=5F1379E25F6DD8653B73F58E738D6243
+
+I=209
+KEY=8D170BBC5E3662BEFD3A33325B76B683BE0BE9484C7138C2
+PT=5F1379E25F6DD8653B73F58E738D6243
+CT=AEF55C09E7AD76CC9BA7B83874A0A86B
+
+I=210
+KEY=1A7BD2572D3CDB8C53CF6F3BBCDBC04F25AC517038D190A9
+PT=AEF55C09E7AD76CC9BA7B83874A0A86B
+CT=6BEF52E6D86DC15D2A03B5CB3EBAB130
+
+I=211
+KEY=B4BC0603F59BE3D038203DDD64B601120FAFE4BB066B2199
+PT=6BEF52E6D86DC15D2A03B5CB3EBAB130
+CT=FDC093FFED096B7812E77E23AD9C7C71
+
+I=212
+KEY=C00A0DDA74D55250C5E0AE2289BF6A6A1D489A98ABF75DE8
+PT=FDC093FFED096B7812E77E23AD9C7C71
+CT=072625CB0C022827E195DE8AB4FE7E0C
+
+I=213
+KEY=6534CBAB46880CE0C2C68BE985BD424DFCDD44121F0923E4
+PT=072625CB0C022827E195DE8AB4FE7E0C
+CT=11AA47C5557437AEE8A8BE31A849A047
+
+I=214
+KEY=C204AFE794D81224D36CCC2CD0C975E31475FA23B74083A3
+PT=11AA47C5557437AEE8A8BE31A849A047
+CT=4C91B3031567DFFC22829CBC3C419B6D
+
+I=215
+KEY=01A4820CC4D281B99FFD7F2FC5AEAA1F36F7669F8B0118CE
+PT=4C91B3031567DFFC22829CBC3C419B6D
+CT=54C0F95B0179CB753917A2592F58BD77
+
+I=216
+KEY=B5C1DD77446C8FD1CB3D8674C4D7616A0FE0C4C6A459A5B9
+PT=54C0F95B0179CB753917A2592F58BD77
+CT=A2A19A98250E432131F9EF4AE473677F
+
+I=217
+KEY=9FDC1167AC2D1A51699C1CECE1D9224B3E192B8C402AC2C6
+PT=A2A19A98250E432131F9EF4AE473677F
+CT=9B5780CA9669A92688F54887E303F2D3
+
+I=218
+KEY=C734A73F4A32D311F2CB9C2677B08B6DB6EC630BA3293015
+PT=9B5780CA9669A92688F54887E303F2D3
+CT=F1750745D1E74E41A07B99482ECABAAA
+
+I=219
+KEY=1612B86730F487EF03BE9B63A657C52C1697FA438DE38ABF
+PT=F1750745D1E74E41A07B99482ECABAAA
+CT=30F510DBDDAEC6FC0D2504C11DF23CFA
+
+I=220
+KEY=D52E3B50F72B085D334B8BB87BF903D01BB2FE829011B645
+PT=30F510DBDDAEC6FC0D2504C11DF23CFA
+CT=64998C3018185D722477A2DBFB84ABB8
+
+I=221
+KEY=7F9F2A23D320792E57D2078863E15EA23FC55C596B951DFD
+PT=64998C3018185D722477A2DBFB84ABB8
+CT=9293A4FF9ED5D57D81BB8A63381BF66A
+
+I=222
+KEY=B529B6E7080E0AE4C541A377FD348BDFBE7ED63A538EEB97
+PT=9293A4FF9ED5D57D81BB8A63381BF66A
+CT=A389ABCF609B41F28CC3188B2C126915
+
+I=223
+KEY=A5C4C3A89459F79566C808B89DAFCA2D32BDCEB17F9C8282
+PT=A389ABCF609B41F28CC3188B2C126915
+CT=5F4BC60608A3DF788631EBB66763E7DF
+
+I=224
+KEY=F59456291C6CF0C83983CEBE950C1555B48C250718FF655D
+PT=5F4BC60608A3DF788631EBB66763E7DF
+CT=EFDE2113118EDFD5A15D4DFA1C1E79B4
+
+I=225
+KEY=9A4CD87E44EA7DEED65DEFAD8482CA8015D168FD04E11CE9
+PT=EFDE2113118EDFD5A15D4DFA1C1E79B4
+CT=2526BA56DA8A9F9A5799A9D2BE96AEBA
+
+I=226
+KEY=A19D5DFAEC1C9B9DF37B55FB5E08551A4248C12FBA77B253
+PT=2526BA56DA8A9F9A5799A9D2BE96AEBA
+CT=83F237712EF89A7B1E84D69DEFC9B9B9
+
+I=227
+KEY=C48B0103470544867089628A70F0CF615CCC17B255BE0BEA
+PT=83F237712EF89A7B1E84D69DEFC9B9B9
+CT=13B7E26895FEEFE2356306D8D822DDD3
+
+I=228
+KEY=B366B0FE6BB3DB17633E80E2E50E208369AF116A8D9CD639
+PT=13B7E26895FEEFE2356306D8D822DDD3
+CT=BF8C47559B230A3311543BEAA90D4DA1
+
+I=229
+KEY=BE5A735484B72645DCB2C7B77E2D2AB078FB2A8024919B98
+PT=BF8C47559B230A3311543BEAA90D4DA1
+CT=D3C9AFCED64F46AC74FFF73302DE10EB
+
+I=230
+KEY=1DFD852FE9F131840F7B6879A8626C1C0C04DDB3264F8B73
+PT=D3C9AFCED64F46AC74FFF73302DE10EB
+CT=004386EABD8F3C60971D34B5A5F220F8
+
+I=231
+KEY=BB9831D80259A5A40F38EE9315ED507C9B19E90683BDAB8B
+PT=004386EABD8F3C60971D34B5A5F220F8
+CT=119A244F6A3ED1947A764CFE96568213
+
+I=232
+KEY=93B0F09E78E610741EA2CADC7FD381E8E16FA5F815EB2998
+PT=119A244F6A3ED1947A764CFE96568213
+CT=4C8D061BD62737E674DDCACEFC37DA11
+
+I=233
+KEY=43E5036A09590404522FCCC7A9F4B60E95B26F36E9DCF389
+PT=4C8D061BD62737E674DDCACEFC37DA11
+CT=7B5EFE44536B5AB9CF75A457BB8C2417
+
+I=234
+KEY=869CF7BF36FBB5D829713283FA9FECB75AC7CB615250D79E
+PT=7B5EFE44536B5AB9CF75A457BB8C2417
+CT=25771915A1C0F8149634963E1C91BD26
+
+I=235
+KEY=C9BD373897A760E30C062B965B5F14A3CCF35D5F4EC16AB8
+PT=25771915A1C0F8149634963E1C91BD26
+CT=8BB2BC7E7BAAEA1AAF7A9E285BEEB8F1
+
+I=236
+KEY=D2EE543EACA1592687B497E820F5FEB96389C377152FD249
+PT=8BB2BC7E7BAAEA1AAF7A9E285BEEB8F1
+CT=05556B6AB68D2DABCDB32FB724D44F57
+
+I=237
+KEY=9583438F7194754F82E1FC829678D312AE3AECC031FB9D1E
+PT=05556B6AB68D2DABCDB32FB724D44F57
+CT=A4CE8197B0EAE6AD57D5A0630D0CABD0
+
+I=238
+KEY=A5B96A3EFB2EF0C7262F7D15269235BFF9EF4CA33CF736CE
+PT=A4CE8197B0EAE6AD57D5A0630D0CABD0
+CT=8E40F09865AA8EA114EA7F36E11815C3
+
+I=239
+KEY=8E7A04E47969F5DBA86F8D8D4338BB1EED053395DDEF230D
+PT=8E40F09865AA8EA114EA7F36E11815C3
+CT=194A76947319ED92D96D292684C29B5A
+
+I=240
+KEY=E52197304B446A01B125FB193021568C34681AB3592DB857
+PT=194A76947319ED92D96D292684C29B5A
+CT=93526BBB6405BDEA68AC01F1C807EBF7
+
+I=241
+KEY=DA4552EC2C076DC3227790A25424EB665CC41B42912A53A0
+PT=93526BBB6405BDEA68AC01F1C807EBF7
+CT=59860971F900B739B36CB97D35B082D1
+
+I=242
+KEY=E7329ED9491CA8227BF199D3AD245C5FEFA8A23FA49AD171
+PT=59860971F900B739B36CB97D35B082D1
+CT=92F430D5B1F35B469ECDDFDCB2A110F5
+
+I=243
+KEY=1ADC19560D9AEF09E905A9061CD7071971657DE3163BC184
+PT=92F430D5B1F35B469ECDDFDCB2A110F5
+CT=F81D2505FD9A569A71502B23894DA535
+
+I=244
+KEY=6ED932F2BEBD486911188C03E14D5183003556C09F7664B1
+PT=F81D2505FD9A569A71502B23894DA535
+CT=93BACD72A0E761D34E8603FC44F6BA5E
+
+I=245
+KEY=F0A52339F0C68F5782A2417141AA30504EB3553CDB80DEEF
+PT=93BACD72A0E761D34E8603FC44F6BA5E
+CT=631DB808708B5EBB54A2DE6B62519235
+
+I=246
+KEY=0B262E7EA7109C03E1BFF97931216EEB1A118B57B9D14CDA
+PT=631DB808708B5EBB54A2DE6B62519235
+CT=C402023DA5F2F230FEEACE1C5F8B5390
+
+I=247
+KEY=1E7EB042CA0EA74F25BDFB4494D39CDBE4FB454BE65A1F4A
+PT=C402023DA5F2F230FEEACE1C5F8B5390
+CT=CAD88E79E0AB4A3B324F6D3ABBEA211C
+
+I=248
+KEY=215E3E970705BE3DEF65753D7478D6E0D6B428715DB03E56
+PT=CAD88E79E0AB4A3B324F6D3ABBEA211C
+CT=1B2303C4FEB78105B5BF35BC1C5C2FF9
+
+I=249
+KEY=512CE443B55593D9F44676F98ACF57E5630B1DCD41EC11AF
+PT=1B2303C4FEB78105B5BF35BC1C5C2FF9
+CT=06CAE1EED611AF829C83216697F8AEFA
+
+I=250
+KEY=533251960972B2BFF28C97175CDEF867FF883CABD614BF55
+PT=06CAE1EED611AF829C83216697F8AEFA
+CT=170194A7E4E85B0A339BF86460E5ABC6
+
+I=251
+KEY=B484A158FBC3D31FE58D03B0B836A36DCC13C4CFB6F11493
+PT=170194A7E4E85B0A339BF86460E5ABC6
+CT=AF7014D972F55B0CD759CAFBC0D9483B
+
+I=252
+KEY=C470759A6962C1934AFD1769CAC3F8611B4A0E3476285CA8
+PT=AF7014D972F55B0CD759CAFBC0D9483B
+CT=E8BD547419DADD980682B701CCEF3C7E
+
+I=253
+KEY=D27A5BF9DD3B6F61A240431DD31925F91DC8B935BAC760D6
+PT=E8BD547419DADD980682B701CCEF3C7E
+CT=E8F9CFAA891A471EBBC5806F03E0E18A
+
+I=254
+KEY=041C2FF776BAF2334AB98CB75A0362E7A60D395AB927815C
+PT=E8F9CFAA891A471EBBC5806F03E0E18A
+CT=F90F888C03CEBFC9A807DF2100488B24
+
+I=255
+KEY=9BB4307835C91BA4B3B6043B59CDDD2E0E0AE67BB96F0A78
+PT=F90F888C03CEBFC9A807DF2100488B24
+CT=7874C642B44810334C2CF572DA0DEF68
+
+I=256
+KEY=56E742B84F293B68CBC2C279ED85CD1D422613096362E510
+PT=7874C642B44810334C2CF572DA0DEF68
+CT=064513BBD5E667B651B93502E86B6C43
+
+I=257
+KEY=66E28C26E01570FCCD87D1C23863AAAB139F260B8B098953
+PT=064513BBD5E667B651B93502E86B6C43
+CT=D461A03D7D8669BBC32430D00D437E59
+
+I=258
+KEY=5674831937969B7619E671FF45E5C310D0BB16DB864AF70A
+PT=D461A03D7D8669BBC32430D00D437E59
+CT=0A07F858DBD1909FF970C95ED7287FB3
+
+I=259
+KEY=D45BCD0FF3E14A7013E189A79E34538F29CBDF85516288B9
+PT=0A07F858DBD1909FF970C95ED7287FB3
+CT=C2E45D29C1DF02CB4D768682ADD73E6B
+
+I=260
+KEY=40F81EBEF03AAAABD105D48E5FEB514464BD5907FCB5B6D2
+PT=C2E45D29C1DF02CB4D768682ADD73E6B
+CT=01E21E496061DAC195F24F6D1CF22B8A
+
+I=261
+KEY=99C8875EE8221C3FD0E7CAC73F8A8B85F14F166AE0479D58
+PT=01E21E496061DAC195F24F6D1CF22B8A
+CT=71D1C35E1126F6907CDB5414B8C97E84
+
+I=262
+KEY=F1582613B3466D7FA13609992EAC7D158D94427E588EE3DC
+PT=71D1C35E1126F6907CDB5414B8C97E84
+CT=8B7BBAF63C993D4BBB098A22D00C5608
+
+I=263
+KEY=4679A2F69656CFD32A4DB36F1235405E369DC85C8882B5D4
+PT=8B7BBAF63C993D4BBB098A22D00C5608
+CT=651B19F5C1B67FC52151E7C5F1246485
+
+I=264
+KEY=A404FC3490DFC7244F56AA9AD3833F9B17CC2F9979A6D151
+PT=651B19F5C1B67FC52151E7C5F1246485
+CT=158F0AE36B5585868DFB998520318FEB
+
+I=265
+KEY=F7DCCA4394981F2D5AD9A079B8D6BA1D9A37B61C59975EBA
+PT=158F0AE36B5585868DFB998520318FEB
+CT=B62EC94231405F3FB0D160FBFF2DE27E
+
+I=266
+KEY=1F38711C9B6BD060ECF7693B8996E5222AE6D6E7A6BABCC4
+PT=B62EC94231405F3FB0D160FBFF2DE27E
+CT=464AFFA35373CEE71523FF0AFBFB1F51
+
+I=267
+KEY=6B846AAC0C448654AABD9698DAE52BC53FC529ED5D41A395
+PT=464AFFA35373CEE71523FF0AFBFB1F51
+CT=C729EA9A05D5482491CE31DBBC03CE24
+
+I=268
+KEY=BD539A9B4001B6876D947C02DF3063E1AE0B1836E1426DB1
+PT=C729EA9A05D5482491CE31DBBC03CE24
+CT=C755C048ADAD22A628B077163097415F
+
+I=269
+KEY=18B524EEF606589DAAC1BC4A729D414786BB6F20D1D52CEE
+PT=C755C048ADAD22A628B077163097415F
+CT=2DADB8F8FC76D8C997627449E44D14B2
+
+I=270
+KEY=3C2C6A047706E3DD876C04B28EEB998E11D91B693598385C
+PT=2DADB8F8FC76D8C997627449E44D14B2
+CT=2D7109526C2F1B5D08DD356B163498D7
+
+I=271
+KEY=40593D776B6C5920AA1D0DE0E2C482D319042E0223ACA08B
+PT=2D7109526C2F1B5D08DD356B163498D7
+CT=D9C1D988ABD5C892B2E5BA7BF4F584D3
+
+I=272
+KEY=72B53E4711B3DE9873DCD46849114A41ABE19479D7592458
+PT=D9C1D988ABD5C892B2E5BA7BF4F584D3
+CT=0A32E78440A8AE4A3FF74B20A3F5F7DE
+
+I=273
+KEY=C0BEF126899B305B79EE33EC09B9E40B9416DF5974ACD386
+PT=0A32E78440A8AE4A3FF74B20A3F5F7DE
+CT=E7AA36688851D8E4E08E9EFE6987C571
+
+I=274
+KEY=D16257EFEE63CC399E44058481E83CEF749841A71D2B16F7
+PT=E7AA36688851D8E4E08E9EFE6987C571
+CT=0E3E2E99FFA84F8A69CAA897017DD09C
+
+I=275
+KEY=3509E5A7A66648B9907A2B1D7E4073651D52E9301C56C66B
+PT=0E3E2E99FFA84F8A69CAA897017DD09C
+CT=96766B7F6E78537994466BDC62607C85
+
+I=276
+KEY=46BC3EB6FA22C8AC060C40621038201C891482EC7E36BAEE
+PT=96766B7F6E78537994466BDC62607C85
+CT=AA42980BBABA21DACE6D9FCD28A5B0BA
+
+I=277
+KEY=26FC66C5E5C6E585AC4ED869AA8201C647791D2156930A54
+PT=AA42980BBABA21DACE6D9FCD28A5B0BA
+CT=EC057F10222EC91403E1B6CEFCE3556A
+
+I=278
+KEY=91FBDF7B24B0FEB4404BA77988ACC8D24498ABEFAA705F3E
+PT=EC057F10222EC91403E1B6CEFCE3556A
+CT=E6E91EC6B977C3547D08F717F6702E80
+
+I=279
+KEY=5BD8360BB35CE209A6A2B9BF31DB0B8639905CF85C0071BE
+PT=E6E91EC6B977C3547D08F717F6702E80
+CT=DF9BE6A5A61CC4B66C76447202CBFADA
+
+I=280
+KEY=E58D0EFAB72342BD79395F1A97C7CF3055E6188A5ECB8B64
+PT=DF9BE6A5A61CC4B66C76447202CBFADA
+CT=8466FA526E1038CC14A2EC6D85FC4EDF
+
+I=281
+KEY=7EB51DD43B05BB26FD5FA548F9D7F7FC4144F4E7DB37C5BB
+PT=8466FA526E1038CC14A2EC6D85FC4EDF
+CT=5C5A965E386B16D50F3487D54C04AA6B
+
+I=282
+KEY=8F4BEBA429FE57C4A1053316C1BCE1294E70733297336FD0
+PT=5C5A965E386B16D50F3487D54C04AA6B
+CT=BCD57B57FAA6E3F81660113345CD24F9
+
+I=283
+KEY=4A5DA421D27E62821DD048413B1A02D158106201D2FE4B29
+PT=BCD57B57FAA6E3F81660113345CD24F9
+CT=7450D38B3A6D8C4987EE3F7F71C68FFC
+
+I=284
+KEY=77934AE2BB39BC4469809BCA01778E98DFFE5D7EA338C4D5
+PT=7450D38B3A6D8C4987EE3F7F71C68FFC
+CT=A6D1D5A31BAB1CE9F027376539B2AAE2
+
+I=285
+KEY=2C6FD4455E96F2F6CF514E691ADC92712FD96A1B9A8A6E37
+PT=A6D1D5A31BAB1CE9F027376539B2AAE2
+CT=10894E2E6275D172259D4C23332508B9
+
+I=286
+KEY=2608AB9AA8CED631DFD8004778A943030A442638A9AF668E
+PT=10894E2E6275D172259D4C23332508B9
+CT=53C2AB8E42B4EF7FF659D3FB251453C7
+
+I=287
+KEY=68840BD9639AC3128C1AABC93A1DAC7CFC1DF5C38CBB3549
+PT=53C2AB8E42B4EF7FF659D3FB251453C7
+CT=3A9C38D026561B83B0F3E7B566C66CD2
+
+I=288
+KEY=EFCDF07C0E70D051B68693191C4BB7FF4CEE1276EA7D599B
+PT=3A9C38D026561B83B0F3E7B566C66CD2
+CT=B9F7E495B96BE7C0307D8F7A53200193
+
+I=289
+KEY=87DFC62793B45EF60F71778CA520503F7C939D0CB95D5808
+PT=B9F7E495B96BE7C0307D8F7A53200193
+CT=2425FE8AAA7ED06A5FFEC11D7B289891
+
+I=290
+KEY=5FD78DA64A9F50142B5489060F5E8055236D5C11C275C099
+PT=2425FE8AAA7ED06A5FFEC11D7B289891
+CT=93BC83BCF69DBB256C27AF250FDEFAEB
+
+I=291
+KEY=81C88579E065FD16B8E80ABAF9C33B704F4AF334CDAB3A72
+PT=93BC83BCF69DBB256C27AF250FDEFAEB
+CT=A1AF953D4BD1A474B1173D4686EBB8CF
+
+I=292
+KEY=DEE7FFE9A3814D2B19479F87B2129F04FE5DCE724B4082BD
+PT=A1AF953D4BD1A474B1173D4686EBB8CF
+CT=00AAC1CD74952011A03714A6BB091653
+
+I=293
+KEY=8331CC8136829F1E19ED5E4AC687BF155E6ADAD4F04994EE
+PT=00AAC1CD74952011A03714A6BB091653
+CT=00B92CBFFC3589CEB3ECAA7D221C3F0B
+
+I=294
+KEY=FF862EBFECC11E93195472F53AB236DBED8670A9D255ABE5
+PT=00B92CBFFC3589CEB3ECAA7D221C3F0B
+CT=2E07858E94AD300A35448EFA848A767A
+
+I=295
+KEY=18B8678C5497708E3753F77BAE1F06D1D8C2FE5356DFDD9F
+PT=2E07858E94AD300A35448EFA848A767A
+CT=B02F0C98F3B7BB7807F35F6DFD925238
+
+I=296
+KEY=C90D1E18331CA38F877CFBE35DA8BDA9DF31A13EAB4D8FA7
+PT=B02F0C98F3B7BB7807F35F6DFD925238
+CT=EAACC8624146D29129ED8B904E89F04A
+
+I=297
+KEY=A08AD721EE869F2E6DD033811CEE6F38F6DC2AAEE5C47FED
+PT=EAACC8624146D29129ED8B904E89F04A
+CT=8949A5A4289B65A32C5116E8A4B55A50
+
+I=298
+KEY=CED3055CB1AC48CAE499962534750A9BDA8D3C46417125BD
+PT=8949A5A4289B65A32C5116E8A4B55A50
+CT=B632C5FD8EB9676B5504A8BA13E63E2D
+
+I=299
+KEY=AD1DA883EFFC2F3052AB53D8BACC6DF08F8994FC52971B90
+PT=B632C5FD8EB9676B5504A8BA13E63E2D
+CT=EF28A1297C07A575686B3429AC9B62D1
+
+I=300
+KEY=007F57339EC932CCBD83F2F1C6CBC885E7E2A0D5FE0C7941
+PT=EF28A1297C07A575686B3429AC9B62D1
+CT=C99F15E4000944120D1C3DD283D99BFF
+
+I=301
+KEY=3688FDD4FD7822F2741CE715C6C28C97EAFE9D077DD5E2BE
+PT=C99F15E4000944120D1C3DD283D99BFF
+CT=0AC0219E2BD43F9F19F3A0997FCB9FCD
+
+I=302
+KEY=AB54BF259C6F5CEE7EDCC68BED16B308F30D3D9E021E7D73
+PT=0AC0219E2BD43F9F19F3A0997FCB9FCD
+CT=E27242BC80823BDC09C33C1BDB2EA3BE
+
+I=303
+KEY=9C88F101B483F8399CAE84376D9488D4FACE0185D930DECD
+PT=E27242BC80823BDC09C33C1BDB2EA3BE
+CT=7ABF9BD872F54E12FB7F0B11A6D10472
+
+I=304
+KEY=971A26707E5B8BC2E6111FEF1F61C6C601B10A947FE1DABF
+PT=7ABF9BD872F54E12FB7F0B11A6D10472
+CT=336653E5166F1B4146DBEAED74D72BB7
+
+I=305
+KEY=1FFD085658F88F24D5774C0A090EDD87476AE0790B36F108
+PT=336653E5166F1B4146DBEAED74D72BB7
+CT=4849136D0509CE6C404E5685FBEEE9B8
+
+I=306
+KEY=411DF55702805FE69D3E5F670C0713EB0724B6FCF0D818B0
+PT=4849136D0509CE6C404E5685FBEEE9B8
+CT=6CF8DCFD53E2ED214A449398D8BF0F6C
+
+I=307
+KEY=504BFF39E24E870FF1C6839A5FE5FECA4D602564286717DC
+PT=6CF8DCFD53E2ED214A449398D8BF0F6C
+CT=9C8326B89B3054A46ECA3BB76BC2F292
+
+I=308
+KEY=E4F4B55125D2D1056D45A522C4D5AA6E23AA1ED343A5E54E
+PT=9C8326B89B3054A46ECA3BB76BC2F292
+CT=C85479C9E038BA5495F67D6E8B2BEB64
+
+I=309
+KEY=F2E9B605207E0FD4A511DCEB24ED103AB65C63BDC88E0E2A
+PT=C85479C9E038BA5495F67D6E8B2BEB64
+CT=145607ACFFA06C08AB958DCB7BC0BDBC
+
+I=310
+KEY=CC0D3F478519145BB147DB47DB4D7C321DC9EE76B34EB396
+PT=145607ACFFA06C08AB958DCB7BC0BDBC
+CT=ED7EE0DA132D9964BE5E7B2581C3C270
+
+I=311
+KEY=EB3AFCDD9AAB59705C393B9DC860E556A3979553328D71E6
+PT=ED7EE0DA132D9964BE5E7B2581C3C270
+CT=6B576FD09F34ED38774AA383BB88B385
+
+I=312
+KEY=866ECC1B3691532D376E544D5754086ED4DD36D08905C263
+PT=6B576FD09F34ED38774AA383BB88B385
+CT=E540518151453A18C29BE22B5DE84D5B
+
+I=313
+KEY=2B3BF12A0A10E6F9D22E05CC061132761646D4FBD4ED8F38
+PT=E540518151453A18C29BE22B5DE84D5B
+CT=7865DE74099D486ECB584BE7890F3078
+
+I=314
+KEY=3C6EA741634001E0AA4BDBB80F8C7A18DD1E9F1C5DE2BF40
+PT=7865DE74099D486ECB584BE7890F3078
+CT=5226B72FA16653187980D265EB6C7C6D
+
+I=315
+KEY=A32E19E0F06CB649F86D6C97AEEA2900A49E4D79B68EC32D
+PT=5226B72FA16653187980D265EB6C7C6D
+CT=CA0D39D92B042BECABF7A14115B3A307
+
+I=316
+KEY=E48451707115D4A03260554E85EE02EC0F69EC38A33D602A
+PT=CA0D39D92B042BECABF7A14115B3A307
+CT=EC1658D60F1D94EF514FA8EDADAB3C1D
+
+I=317
+KEY=89A589616229672BDE760D988AF396035E2644D50E965C37
+PT=EC1658D60F1D94EF514FA8EDADAB3C1D
+CT=F278CD13BF2C6A1F2D9A9F0C1113205D
+
+I=318
+KEY=6013E84EFD076E402C0EC08B35DFFC1C73BCDBD91F857C6A
+PT=F278CD13BF2C6A1F2D9A9F0C1113205D
+CT=0B1A35F604DDB043BCD0573DC0850AF0
+
+I=319
+KEY=68BCE1DC00C592E22714F57D31024C5FCF6C8CE4DF00769A
+PT=0B1A35F604DDB043BCD0573DC0850AF0
+CT=EAC4FE6F8A04871AC434322CB06308E3
+
+I=320
+KEY=1BE682363F216340CDD00B12BB06CB450B58BEC86F637E79
+PT=EAC4FE6F8A04871AC434322CB06308E3
+CT=64B6BA31C6B15BE040DC2C0A07FFE60F
+
+I=321
+KEY=2082C6C0D49B4DECA966B1237DB790A54B8492C2689C9876
+PT=64B6BA31C6B15BE040DC2C0A07FFE60F
+CT=5ECDC37FEA4176145C6A308F91659D43
+
+I=322
+KEY=23668EEA68987F8CF7AB725C97F6E6B117EEA24DF9F90535
+PT=5ECDC37FEA4176145C6A308F91659D43
+CT=BB25C81945A062A7D53531593D9910F6
+
+I=323
+KEY=10B544566773DD5F4C8EBA45D2568416C2DB9314C46015C3
+PT=BB25C81945A062A7D53531593D9910F6
+CT=48D98FFFC4E378D42CFC785B53DFC38D
+
+I=324
+KEY=7F96DD27E1C0B7B7045735BA16B5FCC2EE27EB4F97BFD64E
+PT=48D98FFFC4E378D42CFC785B53DFC38D
+CT=7DCE20BAE8345CB68103461B4AFA9F09
+
+I=325
+KEY=A73354FC47570B2679991500FE81A0746F24AD54DD454947
+PT=7DCE20BAE8345CB68103461B4AFA9F09
+CT=099B315B4DD55CAB5D02163154DA521C
+
+I=326
+KEY=92A57B873A1D292F7002245BB354FCDF3226BB65899F1B5B
+PT=099B315B4DD55CAB5D02163154DA521C
+CT=37207C17099989D3EA0D13DBD6DF7FEF
+
+I=327
+KEY=7048AF52E1763E8E4722584CBACD750CD82BA8BE5F4064B4
+PT=37207C17099989D3EA0D13DBD6DF7FEF
+CT=7CE37081A6751A1518F03B70FBC1479D
+
+I=328
+KEY=24E37AF6A4BC72403BC128CD1CB86F19C0DB93CEA4812329
+PT=7CE37081A6751A1518F03B70FBC1479D
+CT=201BBD8456F70ED0BB4E19A7AE36F1A6
+
+I=329
+KEY=17E541A643CB8EE01BDA95494A4F61C97B958A690AB7D28F
+PT=201BBD8456F70ED0BB4E19A7AE36F1A6
+CT=3384168E4F022049B0E3AD6899B71DC9
+
+I=330
+KEY=31D5A160B61690A0285E83C7054D4180CB7627019300CF46
+PT=3384168E4F022049B0E3AD6899B71DC9
+CT=C83AA6AE617CB17E2977D394EBC4AD19
+
+I=331
+KEY=6EBA775B83D704AAE06425696431F0FEE201F49578C4625F
+PT=C83AA6AE617CB17E2977D394EBC4AD19
+CT=8AC467890AF8E729C7A86A471ADEB378
+
+I=332
+KEY=C1237F715488582E6AA042E06EC917D725A99ED2621AD127
+PT=8AC467890AF8E729C7A86A471ADEB378
+CT=B89CE4F733A9D67C8E504BC4BC2F7664
+
+I=333
+KEY=0A9E4BDAD3E856F1D23CA6175D60C1ABABF9D516DE35A743
+PT=B89CE4F733A9D67C8E504BC4BC2F7664
+CT=47B421469B794A5188255ACE84D89721
+
+I=334
+KEY=4BE367B885F7AF9195888751C6198BFA23DC8FD85AED3062
+PT=47B421469B794A5188255ACE84D89721
+CT=B6B09DBF9E62C60951368C9C8B63A860
+
+I=335
+KEY=CDFB62995E4C5D4E23381AEE587B4DF372EA0344D18E9802
+PT=B6B09DBF9E62C60951368C9C8B63A860
+CT=68933B4BD0BC23EB3178347DFE68E7F6
+
+I=336
+KEY=8887EBF40DE51F064BAB21A588C76E18439237392FE67FF4
+PT=68933B4BD0BC23EB3178347DFE68E7F6
+CT=C6F16CDDF00C982A927609B559B0BCBD
+
+I=337
+KEY=221D949B8CA9F4C48D5A4D7878CBF632D1E43E8C7656C349
+PT=C6F16CDDF00C982A927609B559B0BCBD
+CT=CBEE831F7623E3214E72AF57706525C7
+
+I=338
+KEY=3D35666DACEFF3C846B4CE670EE815139F9691DB0633E68E
+PT=CBEE831F7623E3214E72AF57706525C7
+CT=DFE0297AE9B69F0AD69D6189C1447333
+
+I=339
+KEY=43370C9C958216DC9954E71DE75E8A19490BF052C77795BD
+PT=DFE0297AE9B69F0AD69D6189C1447333
+CT=59C3B4D6055B9F73064B715CD5213C99
+
+I=340
+KEY=DF43233D68EE5C4AC09753CBE205156A4F40810E1256A924
+PT=59C3B4D6055B9F73064B715CD5213C99
+CT=5373F13BB16B3653FCC138FC9A9E8A47
+
+I=341
+KEY=472E0A65B06B4F4693E4A2F0536E2339B381B9F288C82363
+PT=5373F13BB16B3653FCC138FC9A9E8A47
+CT=9C7514B7FEDF2DC26B0C2C1954745077
+
+I=342
+KEY=1409E4DF955583A00F91B647ADB10EFBD88D95EBDCBC7314
+PT=9C7514B7FEDF2DC26B0C2C1954745077
+CT=2480D7C35D6B0207D84A9CEFA1C2CFDC
+
+I=343
+KEY=458552CAB6B1A8AC2B116184F0DA0CFC00C709047D7EBCC8
+PT=2480D7C35D6B0207D84A9CEFA1C2CFDC
+CT=46DE3E51F1355FA76652C8DA3642409B
+
+I=344
+KEY=2065D6F033E1EE2E6DCF5FD501EF535B6695C1DE4B3CFC53
+PT=46DE3E51F1355FA76652C8DA3642409B
+CT=13F328173D057A64DA3917468528DB4F
+
+I=345
+KEY=6D30053E2C95BC5A7E3C77C23CEA293FBCACD698CE14271C
+PT=13F328173D057A64DA3917468528DB4F
+CT=33D71B6CD0A68B685C89C9F2D70FDFCE
+
+I=346
+KEY=59D69C2D25BFB6A34DEB6CAEEC4CA257E0251F6A191BF8D2
+PT=33D71B6CD0A68B685C89C9F2D70FDFCE
+CT=8E9F57B5E945CD7DFC2B9FCD5AF96DFB
+
+I=347
+KEY=F41ABD021E5C144EC3743B1B05096F2A1C0E80A743E29529
+PT=8E9F57B5E945CD7DFC2B9FCD5AF96DFB
+CT=71295B41B9E5872E1BD4D5C3C4C62D71
+
+I=348
+KEY=41C1194732CD4654B25D605ABCECE80407DA55648724B858
+PT=71295B41B9E5872E1BD4D5C3C4C62D71
+CT=E704FBBAA917788CE906A54B2A56A232
+
+I=349
+KEY=AF58932371569CE655599BE015FB9088EEDCF02FAD721A6A
+PT=E704FBBAA917788CE906A54B2A56A232
+CT=8DBA56CF3E019B8EA80CCB772551CA5B
+
+I=350
+KEY=B1E68A05A144F4FAD8E3CD2F2BFA0B0646D03B588823D031
+PT=8DBA56CF3E019B8EA80CCB772551CA5B
+CT=18F8A23F785AFEFC4ECD527AC6DBE609
+
+I=351
+KEY=456D39FF40B1622BC01B6F1053A0F5FA081D69224EF83638
+PT=18F8A23F785AFEFC4ECD527AC6DBE609
+CT=073F93A707D6B9A82E99990CB13BD00E
+
+I=352
+KEY=1FF446993B6927C6C724FCB754764C522684F02EFFC3E636
+PT=073F93A707D6B9A82E99990CB13BD00E
+CT=76723E1239356EDC37FB5E1EAFDF4678
+
+I=353
+KEY=0DED89E36C3B06B9B156C2A56D43228E117FAE30501CA04E
+PT=76723E1239356EDC37FB5E1EAFDF4678
+CT=1B57D35B4E2484D3945B82D59114A531
+
+I=354
+KEY=E433448EB970D64FAA0111FE2367A65D85242CE5C108057F
+PT=1B57D35B4E2484D3945B82D59114A531
+CT=4466DCB75F6B83885EE32D9FD533A902
+
+I=355
+KEY=3751EC4737F029E3EE67CD497C0C25D5DBC7017A143BAC7D
+PT=4466DCB75F6B83885EE32D9FD533A902
+CT=A8B62B9FCAA9331A3282899DB475AADE
+
+I=356
+KEY=6C1042FACD259CC346D1E6D6B6A516CFE94588E7A04E06A3
+PT=A8B62B9FCAA9331A3282899DB475AADE
+CT=DFE1CB42B29F119E44F37F60A8C2BD7C
+
+I=357
+KEY=640D2DB3E708999A99302D94043A0751ADB6F787088CBBDF
+PT=DFE1CB42B29F119E44F37F60A8C2BD7C
+CT=891B211EE1BEA05AD7BA478FDFEBC507
+
+I=358
+KEY=C434FF9BD02BDF6C102B0C8AE584A70B7A0CB008D7677ED8
+PT=891B211EE1BEA05AD7BA478FDFEBC507
+CT=16ABB92A1E0F433250C551F84AE177CF
+
+I=359
+KEY=22A76DAFC8A7748E0680B5A0FB8BE4392AC9E1F09D860917
+PT=16ABB92A1E0F433250C551F84AE177CF
+CT=1A2F4BF6ED0CADB7FA3FC52F3C6AF191
+
+I=360
+KEY=5DDEDF839CF5C0D11CAFFE561687498ED0F624DFA1ECF886
+PT=1A2F4BF6ED0CADB7FA3FC52F3C6AF191
+CT=16AE687EE38FB85C0F70E20F5585F750
+
+I=361
+KEY=13D0157C6A30C26C0A019628F508F1D2DF86C6D0F4690FD6
+PT=16AE687EE38FB85C0F70E20F5585F750
+CT=6CD2D70F641B2A7814014177C4880107
+
+I=362
+KEY=6DBFF188E61696C966D341279113DBAACB8787A730E10ED1
+PT=6CD2D70F641B2A7814014177C4880107
+CT=8CAD28041AE53AA64CE0173DBD9046C2
+
+I=363
+KEY=44A13B269C44F018EA7E69238BF6E10C8767909A8D714813
+PT=8CAD28041AE53AA64CE0173DBD9046C2
+CT=FC8D4274BA1EF15CC39E750DD1848F7B
+
+I=364
+KEY=B7A8311B81A3B82C16F32B5731E8105044F9E5975CF5C768
+PT=FC8D4274BA1EF15CC39E750DD1848F7B
+CT=01CBDAEAADE486CF655401D8F7F7E84E
+
+I=365
+KEY=A3AC668823C917DE1738F1BD9C0C969F21ADE44FAB022F26
+PT=01CBDAEAADE486CF655401D8F7F7E84E
+CT=494C3219700E06EE9C4DCB61EF932FDF
+
+I=366
+KEY=05CC07DC3CBB1A4B5E74C3A4EC029071BDE02F2E449100F9
+PT=494C3219700E06EE9C4DCB61EF932FDF
+CT=BB0E7D5CD93B1839DF5CAED7996F9560
+
+I=367
+KEY=8768468EFC3CE954E57ABEF83539884862BC81F9DDFE9599
+PT=BB0E7D5CD93B1839DF5CAED7996F9560
+CT=CC1F9A504A67C24621ED127C63AE2A36
+
+I=368
+KEY=470E251F98662CEC296524A87F5E4A0E43519385BE50BFAF
+PT=CC1F9A504A67C24621ED127C63AE2A36
+CT=A48D3751956B71F925680073B35BC0A3
+
+I=369
+KEY=533C67C061CE6B9E8DE813F9EA353BF7663993F60D0B7F0C
+PT=A48D3751956B71F925680073B35BC0A3
+CT=80143AC021E94718146EBC7808A9DDD8
+
+I=370
+KEY=0303563B9274349D0DFC2939CBDC7CEF72572F8E05A2A2D4
+PT=80143AC021E94718146EBC7808A9DDD8
+CT=B90AC6ADEE1B60228096D022EE5C681B
+
+I=371
+KEY=1E7D3A52CC112BDCB4F6EF9425C71CCDF2C1FFACEBFECACF
+PT=B90AC6ADEE1B60228096D022EE5C681B
+CT=CB8553B21250642107E824E8FB27CAEA
+
+I=372
+KEY=750A36009059323E7F73BC26379778ECF529DB4410D90025
+PT=CB8553B21250642107E824E8FB27CAEA
+CT=9C86DA9646FCFEA7E778A5498F50E01E
+
+I=373
+KEY=6876C614C460B02CE3F566B0716B864B12517E0D9F89E03B
+PT=9C86DA9646FCFEA7E778A5498F50E01E
+CT=1481357AD5690762FD6F3809F1E5F219
+
+I=374
+KEY=7CE6B00F6B651FAEF77453CAA4028129EF3E46046E6C1222
+PT=1481357AD5690762FD6F3809F1E5F219
+CT=39B64998D4370E0CB47C1DC23EDCDD03
+
+I=375
+KEY=C3F72A84EF6F4A0CCEC21A5270358F255B425BC650B0CF21
+PT=39B64998D4370E0CB47C1DC23EDCDD03
+CT=EB1BA96272D7BB044A3381439BA4CD5B
+
+I=376
+KEY=C670185A26E7DA4A25D9B33002E234211171DA85CB14027A
+PT=EB1BA96272D7BB044A3381439BA4CD5B
+CT=F87EC3D7F55DA25790718E461BA2E194
+
+I=377
+KEY=72ECF820AC459D8DDDA770E7F7BF9676810054C3D0B6E3EE
+PT=F87EC3D7F55DA25790718E461BA2E194
+CT=AD7EA1621AD7FBA975D6BB0AB9AED116
+
+I=378
+KEY=CE4ECAD1C7D17D1170D9D185ED686DDFF4D6EFC9691832F8
+PT=AD7EA1621AD7FBA975D6BB0AB9AED116
+CT=473B6484F6EAE1FC837A2710AE8D462F
+
+I=379
+KEY=3273752C9A8682F237E2B5011B828C2377ACC8D9C79574D7
+PT=473B6484F6EAE1FC837A2710AE8D462F
+CT=0E3634529E49692762F4D80333738045
+
+I=380
+KEY=8C2CFBB98A4E5E3839D4815385CBE504155810DAF4E6F492
+PT=0E3634529E49692762F4D80333738045
+CT=F8EFEBD78C115CC620F25AB66038F2A0
+
+I=381
+KEY=0416DBCAFA0850D8C13B6A8409DAB9C235AA4A6C94DE0632
+PT=F8EFEBD78C115CC620F25AB66038F2A0
+CT=B4442C38E3B8E87D8AAE2C17A5571CE9
+
+I=382
+KEY=7A7815A748696E99757F46BCEA6251BFBF04667B31891ADB
+PT=B4442C38E3B8E87D8AAE2C17A5571CE9
+CT=576A20E194015AB069D769FCA7D842FC
+
+I=383
+KEY=3848903CD019B4572215665D7E630B0FD6D30F8796515827
+PT=576A20E194015AB069D769FCA7D842FC
+CT=E253D9FB4075B021DF452B3AD51204D6
+
+I=384
+KEY=3E468D281DF03284C046BFA63E16BB2E099624BD43435CF1
+PT=E253D9FB4075B021DF452B3AD51204D6
+CT=D9454AE62207E70A34F13B0063498A8F
+
+I=385
+KEY=860E4E60B132A8851903F5401C115C243D671FBD200AD67E
+PT=D9454AE62207E70A34F13B0063498A8F
+CT=A21F7DA8A298670D631F677D23504757
+
+I=386
+KEY=27B82EDF5FFD15DDBB1C88E8BE893B295E7878C0035A9129
+PT=A21F7DA8A298670D631F677D23504757
+CT=1D239EFBABD09A029FE11C59A385C909
+
+I=387
+KEY=631BCB74800FD13AA63F16131559A12BC1996499A0DF5820
+PT=1D239EFBABD09A029FE11C59A385C909
+CT=C87EB2AB019AFA608BE99CE77717B333
+
+I=388
+KEY=EE1326871289985E6E41A4B814C35B4B4A70F87ED7C8EB13
+PT=C87EB2AB019AFA608BE99CE77717B333
+CT=528DBF70307431E33815D1AA44C30FA8
+
+I=389
+KEY=F1D72A84C2FE044F3CCC1BC824B76AA8726529D4930BE4BB
+PT=528DBF70307431E33815D1AA44C30FA8
+CT=6C8014B427ED6331A5C174CF2846B70A
+
+I=390
+KEY=A1610602C8DD2836504C0F7C035A0999D7A45D1BBB4D53B1
+PT=6C8014B427ED6331A5C174CF2846B70A
+CT=3DF4C4BE003A13030E73026F7027ADB1
+
+I=391
+KEY=B2418E725A1435DD6DB8CBC203601A9AD9D75F74CB6AFE00
+PT=3DF4C4BE003A13030E73026F7027ADB1
+CT=39C50365300DCC5B47F827054879C642
+
+I=392
+KEY=761AF29E74671706547DC8A7336DD6C19E2F787183133842
+PT=39C50365300DCC5B47F827054879C642
+CT=847F488B3CEC2E1E4E1C6B9F37E4F631
+
+I=393
+KEY=C912116E7B47169AD002802C0F81F8DFD03313EEB4F7CE73
+PT=847F488B3CEC2E1E4E1C6B9F37E4F631
+CT=9A581179C883C5E057CC560A3DF6CD34
+
+I=394
+KEY=B08B1226353C6BD34A5A9155C7023D3F87FF45E489010347
+PT=9A581179C883C5E057CC560A3DF6CD34
+CT=799B437C3EF3663EFBD6F186EDFDF21A
+
+I=395
+KEY=1ECAE821E161A2C833C1D229F9F15B017C29B46264FCF15D
+PT=799B437C3EF3663EFBD6F186EDFDF21A
+CT=138A858B14FE28D9A47C76BB3FAE9AA1
+
+I=396
+KEY=3AD2B951E451EEA8204B57A2ED0F73D8D855C2D95B526BFC
+PT=138A858B14FE28D9A47C76BB3FAE9AA1
+CT=5E35BC76C5AC8765A6C396DFE5689579
+
+I=397
+KEY=791E5F91477E986E7E7EEBD428A3F4BD7E965406BE3AFE85
+PT=5E35BC76C5AC8765A6C396DFE5689579
+CT=53F8361BF47A82EF27492322BA6F57AD
+
+I=398
+KEY=194A170B3D4FA6E62D86DDCFDCD9765259DF77240455A928
+PT=53F8361BF47A82EF27492322BA6F57AD
+CT=FF626D77AE144C11480610EC1ABB5028
+
+I=399
+KEY=C9DC82F000187721D2E4B0B872CD3A4311D967C81EEEF900
+PT=FF626D77AE144C11480610EC1ABB5028
+CT=4E46F8C5092B29E29A971A0CD1F610FB
+
+==========
+
+KEYSIZE=256
+
+I=0
+KEY=0000000000000000000000000000000000000000000000000000000000000000
+PT=00000000000000000000000000000000
+CT=8B79EECC93A0EE5DFF30B4EA21636DA4
+
+I=1
+KEY=AD3965683E6FA98B5F38AC26653679288B79EECC93A0EE5DFF30B4EA21636DA4
+PT=8B79EECC93A0EE5DFF30B4EA21636DA4
+CT=C737317FE0846F132B23C8C2A672CE22
+
+I=2
+KEY=28E79E2AFC5F7745FCCABE2F6257C2EF4C4EDFB37324814ED4137C288711A386
+PT=C737317FE0846F132B23C8C2A672CE22
+CT=E58B82BFBA53C0040DC610C642121168
+
+I=3
+KEY=0721E93EACF9DC6C870D8133376B7C0DA9C55D0CC977414AD9D56CEEC503B2EE
+PT=E58B82BFBA53C0040DC610C642121168
+CT=10B296ABB40504995DB71DDA0B7E26FB
+
+I=4
+KEY=0ECE1E210ADA32EBC497AD50F516602EB977CBA77D7245D384627134CE7D9415
+PT=10B296ABB40504995DB71DDA0B7E26FB
+CT=B7198D8E88BAA25234C18517E99BB70D
+
+I=5
+KEY=D31313ACD90A9BB7D6596DEAB752003F0E6E4629F5C8E781B0A3F42327E62318
+PT=B7198D8E88BAA25234C18517E99BB70D
+CT=6125097DB5738C64513E125872EA436C
+
+I=6
+KEY=488B6A78D9AA23FEA7289E250928BDE36F4B4F5440BB6BE5E19DE67B550C6074
+PT=6125097DB5738C64513E125872EA436C
+CT=07FF2ED24B522F1E31D46E94BE5C505B
+
+I=7
+KEY=03DDD56B142AD3B0E4FFD2BAC6568E5468B461860BE944FBD04988EFEB50302F
+PT=07FF2ED24B522F1E31D46E94BE5C505B
+CT=EB3C1E3328F840B110E934B0129F2F23
+
+I=8
+KEY=20F9D92C65B2F00183464197B23BE5AF83887FB52311044AC0A0BC5FF9CF1F0C
+PT=EB3C1E3328F840B110E934B0129F2F23
+CT=107CB7B403DC3F6F09EC30EC1718D183
+
+I=9
+KEY=79CF0BCF8EFE3DE82E27778923D1AA1993F4C80120CD3B25C94C8CB3EED7CE8F
+PT=107CB7B403DC3F6F09EC30EC1718D183
+CT=CE9DB77B1FAE0CFEC5341FA5AF4CDE8A
+
+I=10
+KEY=F50ADABA26525BFA7BF6EEF2402450785D697F7A3F6337DB0C789316419B1005
+PT=CE9DB77B1FAE0CFEC5341FA5AF4CDE8A
+CT=157B5946862DA3E9A1A83E45857E207D
+
+I=11
+KEY=3B6947995411D0AE50645129D13BACC04812263CB94E9432ADD0AD53C4E53078
+PT=157B5946862DA3E9A1A83E45857E207D
+CT=4AE3583491DF78918CAB3AC241286855
+
+I=12
+KEY=AAD12F02F5E5681D16236B668EF2C46702F17E082891ECA3217B979185CD582D
+PT=4AE3583491DF78918CAB3AC241286855
+CT=05400C32DC84F1AB486A9BADB1415B50
+
+I=13
+KEY=EA02EB82D4B2112DD3BD64C1C908CEC307B1723AF4151D0869110C3C348C037D
+PT=05400C32DC84F1AB486A9BADB1415B50
+CT=E4C0781A2EA68D142504739731EF396E
+
+I=14
+KEY=D51A1846DFEB738F0AF138F74C968DCCE3710A20DAB3901C4C157FAB05633A13
+PT=E4C0781A2EA68D142504739731EF396E
+CT=44CC8A9C84E6AD66BD24F1EE1F925EC3
+
+I=15
+KEY=B6401DFC35AF21E53CD254431CC639E9A7BD80BC5E553D7AF1318E451AF164D0
+PT=44CC8A9C84E6AD66BD24F1EE1F925EC3
+CT=20AF5FDDF65856D1A60ADC03567AE163
+
+I=16
+KEY=D1D2E8B5644910077B3EDB245F029C0D8712DF61A80D6BAB573B52464C8B85B3
+PT=20AF5FDDF65856D1A60ADC03567AE163
+CT=CEB74DD6FBEAFDCEE54930D58AF22ACA
+
+I=17
+KEY=9F932DC2AB83FA5153E7081E7360ABB449A592B753E79665B2726293C679AF79
+PT=CEB74DD6FBEAFDCEE54930D58AF22ACA
+CT=72FB3F7BBBDBA9C036C94531A32E937D
+
+I=18
+KEY=06AABCA83922297791C9D07AEB639BDD3B5EADCCE83C3FA584BB27A265573C04
+PT=72FB3F7BBBDBA9C036C94531A32E937D
+CT=299B26D5D6DFA2C20824D8A84E98A244
+
+I=19
+KEY=6124BC71768DE5E9C14D37915D90F1AE12C58B193EE39D678C9FFF0A2BCF9E40
+PT=299B26D5D6DFA2C20824D8A84E98A244
+CT=0A35C0D4170BDE0258D79B668C7C98F4
+
+I=20
+KEY=282B067BD441670E11E576F26C4EA67D18F04BCD29E84365D448646CA7B306B4
+PT=0A35C0D4170BDE0258D79B668C7C98F4
+CT=F4E3E981FFC8B50FC9146B85A22E71D4
+
+I=21
+KEY=2864E2A3986F99C55EC21C225E3498ECEC13A24CD620F66A1D5C0FE9059D7760
+PT=F4E3E981FFC8B50FC9146B85A22E71D4
+CT=130ACF4CEAFE3277DF057D4D170582ED
+
+I=22
+KEY=600FD4DFD03132B0DB7B2432DBE027C2FF196D003CDEC41DC25972A41298F58D
+PT=130ACF4CEAFE3277DF057D4D170582ED
+CT=50001D54F2EA5EAA3BE2206F3845D9A9
+
+I=23
+KEY=C1CBE3A1679D6C1913EABE3400993100AF197054CE349AB7F9BB52CB2ADD2C24
+PT=50001D54F2EA5EAA3BE2206F3845D9A9
+CT=69F3EE4B230B2DB2492FE0E36B949154
+
+I=24
+KEY=7C6C63E14606A0B09254A531CACB45A0C6EA9E1FED3FB705B094B2284149BD70
+PT=69F3EE4B230B2DB2492FE0E36B949154
+CT=CEEE40F3D2FD9A5521F44AD3AB55198D
+
+I=25
+KEY=22BB6E21BCA0450240DB117B028837AF0804DEEC3FC22D509160F8FBEA1CA4FD
+PT=CEEE40F3D2FD9A5521F44AD3AB55198D
+CT=1FA1F1AE7BF2A8C66A6ED6D5F276846B
+
+I=26
+KEY=7364D9AE40CBB0CCA6640B7E542DBA2617A52F4244308596FB0E2E2E186A2096
+PT=1FA1F1AE7BF2A8C66A6ED6D5F276846B
+CT=6D5BD8391C73507D57B902AB3D58D228
+
+I=27
+KEY=A2D8BF7602FCD22755ADA9979B2DD33B7AFEF77B5843D5EBACB72C852532F2BE
+PT=6D5BD8391C73507D57B902AB3D58D228
+CT=15ACD05539318363F275C857FBC5D86C
+
+I=28
+KEY=3AD56A33CE89D8D3510C4152DEE734126F52272E617256885EC2E4D2DEF72AD2
+PT=15ACD05539318363F275C857FBC5D86C
+CT=B54F8D944301A899A2A88440FE8AB631
+
+I=29
+KEY=13ED08137C66C2000D3FE9E167387864DA1DAABA2273FE11FC6A6092207D9CE3
+PT=B54F8D944301A899A2A88440FE8AB631
+CT=23B4BF936BF383325F0DAF0548E32851
+
+I=30
+KEY=3C2C53CCDB4721F44B6C057BF758361AF9A9152949807D23A367CF97689EB4B2
+PT=23B4BF936BF383325F0DAF0548E32851
+CT=8B4984C6F39C7FD543B4A8629EAC6740
+
+I=31
+KEY=95E744B66044529E2DC2B06BF84FF3D672E091EFBA1C02F6E0D367F5F632D3F2
+PT=8B4984C6F39C7FD543B4A8629EAC6740
+CT=108834058381578E8AA7988E03942230
+
+I=32
+KEY=E7715B09238876A93F9858D9548CBEA56268A5EA399D55786A74FF7BF5A6F1C2
+PT=108834058381578E8AA7988E03942230
+CT=EE3974A2ECEA5A1E6FC09535323BFF29
+
+I=33
+KEY=08F25145082684F576933E4DF5C63DFE8C51D148D5770F6605B46A4EC79D0EEB
+PT=EE3974A2ECEA5A1E6FC09535323BFF29
+CT=1AC80F42E3529BCA587D4EA828BD3631
+
+I=34
+KEY=93D63C9069B415595934FA66C76A9CD09699DE0A362594AC5DC924E6EF2038DA
+PT=1AC80F42E3529BCA587D4EA828BD3631
+CT=E196DF1E8A0DE844EBD3FD84B307EEB6
+
+I=35
+KEY=0F5E4A3907A7BC56AAC2CB6F6871674C770F0114BC287CE8B61AD9625C27D66C
+PT=E196DF1E8A0DE844EBD3FD84B307EEB6
+CT=917AC29C88967EE5C792E72B046A4399
+
+I=36
+KEY=B935C42A3A93D1E45E94CBE1E232A135E675C38834BE020D71883E49584D95F5
+PT=917AC29C88967EE5C792E72B046A4399
+CT=9CE3D545895005F3EC432699F17FFDA2
+
+I=37
+KEY=CC3C0DCF9E6E91BE48B7F7AE251D1CB37A9616CDBDEE07FE9DCB18D0A9326857
+PT=9CE3D545895005F3EC432699F17FFDA2
+CT=089F0D41397E27B04D3268834ADF932C
+
+I=38
+KEY=29AB63D0AB0E237BA75D250BC67E362472091B8C8490204ED0F97053E3EDFB7B
+PT=089F0D41397E27B04D3268834ADF932C
+CT=9C364B0CC209389C00824505226B8989
+
+I=39
+KEY=7FB99ABACCC92D9C8B17CC0066F02F39EE3F5080469918D2D07B3556C18672F2
+PT=9C364B0CC209389C00824505226B8989
+CT=767FB14493BE17A29839FBF115B9B38B
+
+I=40
+KEY=DB08EEBD184AEEB002302A3C41E5595B9840E1C4D5270F704842CEA7D43FC179
+PT=767FB14493BE17A29839FBF115B9B38B
+CT=CBEC5B7FB05D673C19EBF0F4B647CDB5
+
+I=41
+KEY=F7C517C27F319857F1D9DA5D29B6B76353ACBABB657A684C51A93E5362780CCC
+PT=CBEC5B7FB05D673C19EBF0F4B647CDB5
+CT=9721CB9555EF079ADD547D8DE09CC0C7
+
+I=42
+KEY=47D5164E15743853C8B0E55ED3A965D6C48D712E30956FD68CFD43DE82E4CC0B
+PT=9721CB9555EF079ADD547D8DE09CC0C7
+CT=5B16109122E874A08A2A48D5B5753256
+
+I=43
+KEY=152E7EF1B0FAD417DA84B4FA0AB560DB9F9B61BF127D1B7606D70B0B3791FE5D
+PT=5B16109122E874A08A2A48D5B5753256
+CT=198A9B7C41C225334176614A16F1D7CB
+
+I=44
+KEY=81BB271A9F0CE56E452C9FBE4CF09FF88611FAC353BF3E4547A16A4121602996
+PT=198A9B7C41C225334176614A16F1D7CB
+CT=56E255DB999AFA713020C4E987F4433B
+
+I=45
+KEY=A654ABA71B351BCBFD1CB03B5F88CE1AD0F3AF18CA25C4347781AEA8A6946AAD
+PT=56E255DB999AFA713020C4E987F4433B
+CT=7BF8470233D197839D4FC1B365E79C8D
+
+I=46
+KEY=C700B39660C3C72E15E278B2D22DD528AB0BE81AF9F453B7EACE6F1BC373F620
+PT=7BF8470233D197839D4FC1B365E79C8D
+CT=D7CDF94CBBE5E7EF7E47E4CE9BD5E073
+
+I=47
+KEY=C49B1589810F1915998C8C79CA2382D87CC611564211B45894898BD558A61653
+PT=D7CDF94CBBE5E7EF7E47E4CE9BD5E073
+CT=A5617B71AF28E732A0B69BFA3B90F291
+
+I=48
+KEY=D37A9390FD2C8D4D01704352BAFC2EE2D9A76A27ED39536A343F102F6336E4C2
+PT=A5617B71AF28E732A0B69BFA3B90F291
+CT=156D08F6A2AC3F7202DBEE15D53C8BCD
+
+I=49
+KEY=E4E2958608635DF83B8E39FD503356D5CCCA62D14F956C1836E4FE3AB60A6F0F
+PT=156D08F6A2AC3F7202DBEE15D53C8BCD
+CT=1790CB4B9B4E01F4CA3AAB588A3B7A51
+
+I=50
+KEY=B0F77AF53FB1FAF66A421093111DC925DB5AA99AD4DB6DECFCDE55623C31155E
+PT=1790CB4B9B4E01F4CA3AAB588A3B7A51
+CT=5E2DC515FE9BAE8F16188DC052C63A80
+
+I=51
+KEY=487CA8ECBA3E2CAF61A16285005F01F685776C8F2A40C363EAC6D8A26EF72FDE
+PT=5E2DC515FE9BAE8F16188DC052C63A80
+CT=A625E46D2DA293F536D25C9207090AA5
+
+I=52
+KEY=410909F6119DDA628537B825D24E8DF9235288E207E25096DC14843069FE257B
+PT=A625E46D2DA293F536D25C9207090AA5
+CT=FEFCF38ABD12EAAD37F3AE73BC4B4A8C
+
+I=53
+KEY=F1027D98B61D2F383BCF60A83D317D03DDAE7B68BAF0BA3BEBE72A43D5B56FF7
+PT=FEFCF38ABD12EAAD37F3AE73BC4B4A8C
+CT=76D8221C2AAD44D226C769875A93CDA8
+
+I=54
+KEY=DDA104019F122286887545C85F6B09B1AB765974905DFEE9CD2043C48F26A25F
+PT=76D8221C2AAD44D226C769875A93CDA8
+CT=DE7FBEB010089D7EE0A1BD18F3461AEE
+
+I=55
+KEY=46CE686778BA955831B63F2ACFE397747509E7C4805563972D81FEDC7C60B8B1
+PT=DE7FBEB010089D7EE0A1BD18F3461AEE
+CT=A8B0824BD1FC52D92AFA0B4B23ABDEBD
+
+I=56
+KEY=EF1408D365E549B808DADADE3D4CBCDADDB9658F51A9314E077BF5975FCB660C
+PT=A8B0824BD1FC52D92AFA0B4B23ABDEBD
+CT=93AC85EE8DE4091894F0E1800A0DF443
+
+I=57
+KEY=8E8FC86B7F82A57799FE32DD1C748C8D4E15E061DC4D3856938B141755C6924F
+PT=93AC85EE8DE4091894F0E1800A0DF443
+CT=0FAE963D9B74341316D7EA8862D0766F
+
+I=58
+KEY=D3900458ABB1ACCE0707A49565D27C4C41BB765C47390C45855CFE9F3716E420
+PT=0FAE963D9B74341316D7EA8862D0766F
+CT=37930DFBC771510D0BBDCBFAB2A5852F
+
+I=59
+KEY=C55EE2F5633DE3E7EF3710C6C143AA7076287BA780485D488EE1356585B3610F
+PT=37930DFBC771510D0BBDCBFAB2A5852F
+CT=9C3B82D06CB9378F6CBBF6325B456A8B
+
+I=60
+KEY=AA16073435B24614EB1E9AE81FD921F0EA13F977ECF16AC7E25AC357DEF60B84
+PT=9C3B82D06CB9378F6CBBF6325B456A8B
+CT=2DB135F2599323714B4D0E66562FAF48
+
+I=61
+KEY=033F102BFB13F9F84A4E9FC0C6F52AC8C7A2CC85B56249B6A917CD3188D9A4CC
+PT=2DB135F2599323714B4D0E66562FAF48
+CT=130D64DC60EE70F07F6A68F26A9B5E19
+
+I=62
+KEY=60D36FD89196DB13031E829B54615707D4AFA859D58C3946D67DA5C3E242FAD5
+PT=130D64DC60EE70F07F6A68F26A9B5E19
+CT=E4E5C4A1E2A0DC99EEC583E311824371
+
+I=63
+KEY=532BC273D1843EB5CC1DE01D28684454304A6CF8372CE5DF38B82620F3C0B9A4
+PT=E4E5C4A1E2A0DC99EEC583E311824371
+CT=72CCE240749A6BFD0A93CDCBE2589B41
+
+I=64
+KEY=DAE91111E43D9DF4A0F44C27A6B1AB0842868EB843B68E22322BEBEB119822E5
+PT=72CCE240749A6BFD0A93CDCBE2589B41
+CT=300F85629B48F47444D2AA51EBAAD16C
+
+I=65
+KEY=5C7C95B43BEA70F20A5C490F9A9F716372890BDAD8FE7A5676F941BAFA32F389
+PT=300F85629B48F47444D2AA51EBAAD16C
+CT=89278608A583E1243704B39AB9C0F30C
+
+I=66
+KEY=5B64FDB468399A031D5745325331C2E8FBAE8DD27D7D9B7241FDF22043F20085
+PT=89278608A583E1243704B39AB9C0F30C
+CT=71B74D5FAA4558A59F3BC91AA564579A
+
+I=67
+KEY=0166230CCF036B4B22C63D36F71C3CF58A19C08DD738C3D7DEC63B3AE696571F
+PT=71B74D5FAA4558A59F3BC91AA564579A
+CT=7B433C70951E4BD140FF7A0CBF367429
+
+I=68
+KEY=D7A12389D7DD5DE963841B344315ADF9F15AFCFD422688069E39413659A02336
+PT=7B433C70951E4BD140FF7A0CBF367429
+CT=B0BE67EBCD672549AF03D323AF026FFF
+
+I=69
+KEY=A3EC2E92C58FE150F708C6FAEB1F459E41E49B168F41AD4F313A9215F6A24CC9
+PT=B0BE67EBCD672549AF03D323AF026FFF
+CT=99A829A7C5C7CD6A44C7EABA9A5421C7
+
+I=70
+KEY=CC3F7485BF8460CB1EA0AA3C20553644D84CB2B14A86602575FD78AF6CF66D0E
+PT=99A829A7C5C7CD6A44C7EABA9A5421C7
+CT=76E1A70AF79F89CFE68EAF15DC0E9BC5
+
+I=71
+KEY=17DC64F06B3A2941A21AE58E2FFAB363AEAD15BBBD19E9EA9373D7BAB0F8F6CB
+PT=76E1A70AF79F89CFE68EAF15DC0E9BC5
+CT=DB0805B5DCC1CA2CA7489C8E1237E7A2
+
+I=72
+KEY=DC7128E894C9DA167D0ACED5888F846275A5100E61D823C6343B4B34A2CF1169
+PT=DB0805B5DCC1CA2CA7489C8E1237E7A2
+CT=935D409B87A85A2CFCC09DE3D2A9A294
+
+I=73
+KEY=8073895C9316D299F4F32C602F2F2616E6F85095E67079EAC8FBD6D77066B3FD
+PT=935D409B87A85A2CFCC09DE3D2A9A294
+CT=F22B73EFF24249CBCB31BDC7C126B735
+
+I=74
+KEY=99E16793433652800ABAD7000638560914D3237A1432302103CA6B10B14004C8
+PT=F22B73EFF24249CBCB31BDC7C126B735
+CT=A16A380AE9B3F2B0AE39BB0E24BF7C0A
+
+I=75
+KEY=8F77C5E97DA567CC447B52F45175BC74B5B91B70FD81C291ADF3D01E95FF78C2
+PT=A16A380AE9B3F2B0AE39BB0E24BF7C0A
+CT=9CF088DE60AE87687481C9F217E86A7C
+
+I=76
+KEY=DA1B3C2C424D2BC6A1C7A3D18D41C3F5294993AE9D2F45F9D97219EC821712BE
+PT=9CF088DE60AE87687481C9F217E86A7C
+CT=1C8B68951E65E32E77F1A31571351C1B
+
+I=77
+KEY=3D64F3D4BF8F585917273805AA43DCD735C2FB3B834AA6D7AE83BAF9F3220EA5
+PT=1C8B68951E65E32E77F1A31571351C1B
+CT=4AD3F3B0C15D810F0EA0FF62C6B2D0FE
+
+I=78
+KEY=51D61FB1B31EB55C7AA2D918E7BE32A97F11088B421727D8A023459B3590DE5B
+PT=4AD3F3B0C15D810F0EA0FF62C6B2D0FE
+CT=0DFCF7CA661572E050C522AE554A4BF8
+
+I=79
+KEY=B93510F7689FB9856194CF629EF63AAA72EDFF4124025538F0E6673560DA95A3
+PT=0DFCF7CA661572E050C522AE554A4BF8
+CT=7C185A5A68675DAC7A16C8DDE4B8CF8B
+
+I=80
+KEY=8496679D7598A1B91D2F221CF958F90B0EF5A51B4C6508948AF0AFE884625A28
+PT=7C185A5A68675DAC7A16C8DDE4B8CF8B
+CT=88FDDDA7BC2B09E48598A94474C64DC7
+
+I=81
+KEY=F27BCC0F919566675B129C526A4DC796860878BCF04E01700F6806ACF0A417EF
+PT=88FDDDA7BC2B09E48598A94474C64DC7
+CT=35C5C98C9C774D0BE9EFFB55C90B2F9C
+
+I=82
+KEY=05F12B58DBF5602D31CFD0EB10313502B3CDB1306C394C7BE687FDF939AF3873
+PT=35C5C98C9C774D0BE9EFFB55C90B2F9C
+CT=C3374B5C81646AC881F0F924C22A723B
+
+I=83
+KEY=FD05BE617555BC8184C2F46911C46B9E70FAFA6CED5D26B3677704DDFB854A48
+PT=C3374B5C81646AC881F0F924C22A723B
+CT=0CE756792AF27525A088700DB66D4399
+
+I=84
+KEY=3831345DFA5ADDF7CE8B5F76B5E1EBDE7C1DAC15C7AF5396C7FF74D04DE809D1
+PT=0CE756792AF27525A088700DB66D4399
+CT=401CD076E03C108A7FD79651407923E9
+
+I=85
+KEY=B101FDD95C23BE560262D355E09FC39B3C017C632793431CB828E2810D912A38
+PT=401CD076E03C108A7FD79651407923E9
+CT=88614E46C416E5164F2A63CDA9DD7B89
+
+I=86
+KEY=0B53859962A79D216E395830E36F8D45B4603225E385A60AF702814CA44C51B1
+PT=88614E46C416E5164F2A63CDA9DD7B89
+CT=7411856C8F14A2E5F6C5F1830302A66F
+
+I=87
+KEY=FE07E3B8961C2A1B3E34A50F8CFA1A45C071B7496C9104EF01C770CFA74EF7DE
+PT=7411856C8F14A2E5F6C5F1830302A66F
+CT=B0A815E93EBAC7A68F8BB420C8A5692D
+
+I=88
+KEY=9F2E0D3DB033B1929009D6C4C460B24F70D9A2A0522BC3498E4CC4EF6FEB9EF3
+PT=B0A815E93EBAC7A68F8BB420C8A5692D
+CT=AA6D27BB26275F5CB3EC3D6A8AFB80BF
+
+I=89
+KEY=5E903EF160161E1CA79A26D28FE32175DAB4851B740C9C153DA0F985E5101E4C
+PT=AA6D27BB26275F5CB3EC3D6A8AFB80BF
+CT=EAF7941A7E5D3907B6F52C1106EED2CE
+
+I=90
+KEY=60284EF35A9246CC32002028E4969309304311010A51A5128B55D594E3FECC82
+PT=EAF7941A7E5D3907B6F52C1106EED2CE
+CT=1178DD3DBDB1810E360E6FE09AA0D75C
+
+I=91
+KEY=300CB519F3203AD4589749651BD99AC7213BCC3CB7E0241CBD5BBA74795E1BDE
+PT=1178DD3DBDB1810E360E6FE09AA0D75C
+CT=584B48263DE541E93B29C6E570D4A6F4
+
+I=92
+KEY=2F79EA55D0E3EAF1D0DBD364A7D64E2A7970841A8A0565F586727C91098ABD2A
+PT=584B48263DE541E93B29C6E570D4A6F4
+CT=7B2EC27F2F1BC24EAD4FC0AA0519685C
+
+I=93
+KEY=8B46F59BF2C4B226523C203E8FD3936D025E4665A51EA7BB2B3DBC3B0C93D576
+PT=7B2EC27F2F1BC24EAD4FC0AA0519685C
+CT=13404D003576493EBB36C07C6D16A1B6
+
+I=94
+KEY=C7E75C30B0CE770A0075E3EBEB244811111E0B659068EE85900B7C47618574C0
+PT=13404D003576493EBB36C07C6D16A1B6
+CT=A083421A139DF68C8F863B337F3408BE
+
+I=95
+KEY=A957F876769BE9005DCEE4B7514FAC62B19D497F83F518091F8D47741EB17C7E
+PT=A083421A139DF68C8F863B337F3408BE
+CT=BF86650C9ECBD6C14B420FBE6B6E488B
+
+I=96
+KEY=FD4DE7532652D17C5ACCEA759C52A95C0E1B2C731D3ECEC854CF48CA75DF34F5
+PT=BF86650C9ECBD6C14B420FBE6B6E488B
+CT=75CEFAE872574AB6F26B0CAF6F08D858
+
+I=97
+KEY=54DBCDC0A57363DE6B3A032607E968C27BD5D69B6F69847EA6A444651AD7ECAD
+PT=75CEFAE872574AB6F26B0CAF6F08D858
+CT=8A3F9C96598883E9D3760C8A8FE406C6
+
+I=98
+KEY=AC10312E365401908F2C8AE371CB8C90F1EA4A0D36E1079775D248EF9533EA6B
+PT=8A3F9C96598883E9D3760C8A8FE406C6
+CT=B8B372C0CC6D164F340DF26B8F832DF8
+
+I=99
+KEY=64265CF02043C966C01DF5255F8D2867495938CDFA8C11D841DFBA841AB0C793
+PT=B8B372C0CC6D164F340DF26B8F832DF8
+CT=A7F6267A6F0CEB0EF7D07959EE065760
+
+I=100
+KEY=CF6B88FB273B247B8D64B5A323EF5760EEAF1EB79580FAD6B60FC3DDF4B690F3
+PT=A7F6267A6F0CEB0EF7D07959EE065760
+CT=AD96ADAC9B786AB78B1B46D9E026C935
+
+I=101
+KEY=4C8EEA35A90CB46AF32235997D2ADBBE4339B31B0EF890613D148504149059C6
+PT=AD96ADAC9B786AB78B1B46D9E026C935
+CT=FC7BAC9A5F64571AABF4B0A451C8D88D
+
+I=102
+KEY=0DD6D30191FABEC371CF0BA223BECF19BF421F81519CC77B96E035A04558814B
+PT=FC7BAC9A5F64571AABF4B0A451C8D88D
+CT=2B56E363834F27090FAC8061507A4787
+
+I=103
+KEY=2E69324E634312611C33F695A137AFE49414FCE2D2D3E072994CB5C11522C6CC
+PT=2B56E363834F27090FAC8061507A4787
+CT=FD37886E30CEFA28F8E8A5662A9EC5DC
+
+I=104
+KEY=8AFAC0C1507472CCB28B37CA88B7139D6923748CE21D1A5A61A410A73FBC0310
+PT=FD37886E30CEFA28F8E8A5662A9EC5DC
+CT=F7F36142C000D5162F789C392971FCE7
+
+I=105
+KEY=7DC5DA2A80219692F9F26C5934826DF29ED015CE221DCF4C4EDC8C9E16CDFFF7
+PT=F7F36142C000D5162F789C392971FCE7
+CT=D560607A0F0BE8320F2CEE56B155163F
+
+I=106
+KEY=3CC9AE3E3EB90B511C6D8CD74419D6944BB075B42D16277E41F062C8A798E9C8
+PT=D560607A0F0BE8320F2CEE56B155163F
+CT=708133FEB47A226A616900D46FA85037
+
+I=107
+KEY=8B84B7F96F9B3184D5B6402ECAE344CB3B31464A996C05142099621CC830B9FF
+PT=708133FEB47A226A616900D46FA85037
+CT=1B2ED9348FC7A4E4AD8BFCE2A148D1AD
+
+I=108
+KEY=655CB7606D17582441247D23E222ECCF201F9F7E16ABA1F08D129EFE69786852
+PT=1B2ED9348FC7A4E4AD8BFCE2A148D1AD
+CT=B2B726C8605A6F5CBA97F04E85A1F985
+
+I=109
+KEY=E0BA77DAAD3E3502AB9A6CEBEC654D0492A8B9B676F1CEAC37856EB0ECD991D7
+PT=B2B726C8605A6F5CBA97F04E85A1F985
+CT=CD7F53BB4AEB364A1D8630E0B5C4A6A2
+
+I=110
+KEY=1470D5E493B0E8212F02D4419C46A8CD5FD7EA0D3C1AF8E62A035E50591D3775
+PT=CD7F53BB4AEB364A1D8630E0B5C4A6A2
+CT=57271A960FE2170BA3F1987E694BBD16
+
+I=111
+KEY=415408E88421573F93FDBE25DD4B90C208F0F09B33F8EFED89F2C62E30568A63
+PT=57271A960FE2170BA3F1987E694BBD16
+CT=E9D47C3E926475FFDB783624C3ADB17B
+
+I=112
+KEY=40B3017DC81EEE4BF652AE8BB8CEED1DE1248CA5A19C9A12528AF00AF3FB3B18
+PT=E9D47C3E926475FFDB783624C3ADB17B
+CT=D78F96812BB55723E04BE8818C262485
+
+I=113
+KEY=9EABE9B3608ACE61684BAD3F3FED5C9736AB1A248A29CD31B2C1188B7FDD1F9D
+PT=D78F96812BB55723E04BE8818C262485
+CT=E2092227E1A3D2E525942090DA0A3F3E
+
+I=114
+KEY=B095E4F38E060016EBC4C42D3A4EFBD6D4A238036B8A1FD49755381BA5D720A3
+PT=E2092227E1A3D2E525942090DA0A3F3E
+CT=95E9EE1F56A65FF85B752FC300F525AE
+
+I=115
+KEY=9B2841F44291552EA04DE13E4E78011B414BD61C3D2C402CCC2017D8A522050D
+PT=95E9EE1F56A65FF85B752FC300F525AE
+CT=32D8465F2E11A04F8984FEE8E710CD25
+
+I=116
+KEY=67D8B10D0DDB61932E610EB077F0D85F73939043133DE06345A4E9304232C828
+PT=32D8465F2E11A04F8984FEE8E710CD25
+CT=2D9803ECFB95B2591FE56B3CBB4307F2
+
+I=117
+KEY=B0C80A38EDE23A549EF08E5DC3CEA2F25E0B93AFE8A8523A5A41820CF971CFDA
+PT=2D9803ECFB95B2591FE56B3CBB4307F2
+CT=4B19F9BCAFD471BF9014ADA19891E4E6
+
+I=118
+KEY=85C6DF29F9AEBA6087E3746BA5CF6C1515126A13477C2385CA552FAD61E02B3C
+PT=4B19F9BCAFD471BF9014ADA19891E4E6
+CT=53159BC4FBD06FD03ABAC028A536C4A0
+
+I=119
+KEY=2D42BE0B33D92ECC40DF48CF0AE0CB764607F1D7BCAC4C55F0EFEF85C4D6EF9C
+PT=53159BC4FBD06FD03ABAC028A536C4A0
+CT=BCDB1347ACD50D0084D588D4540420E3
+
+I=120
+KEY=338A4DC6E729E6FCF71095BB4E6F52FEFADCE29010794155743A675190D2CF7F
+PT=BCDB1347ACD50D0084D588D4540420E3
+CT=E12DC82E79554E1202DA471C3221A554
+
+I=121
+KEY=47597486437CBCD33FC195C56FF972BB1BF12ABE692C0F4776E0204DA2F36A2B
+PT=E12DC82E79554E1202DA471C3221A554
+CT=23A43E9D6F7C5A6C842233CCEC120EB9
+
+I=122
+KEY=CEE8CF713EBF0C609E3429E5183014BB385514230650552BF2C213814EE16492
+PT=23A43E9D6F7C5A6C842233CCEC120EB9
+CT=9F3F4349BF98D3CC00DB167F0FFDC7AB
+
+I=123
+KEY=C9B3A1CAFA0D4F0DA942C17FFB75E333A76A576AB9C886E7F21905FE411CA339
+PT=9F3F4349BF98D3CC00DB167F0FFDC7AB
+CT=C4D8B8EBEF311C11FE2404220EA65E99
+
+I=124
+KEY=8360E6F464B61C4BAE31D3A72422128463B2EF8156F99AF60C3D01DC4FBAFDA0
+PT=C4D8B8EBEF311C11FE2404220EA65E99
+CT=47E3318C721E6C094763F0A18042911D
+
+I=125
+KEY=926B00B9767D0CAD5331CD6F0343C4A92451DE0D24E7F6FF4B5EF17DCFF86CBD
+PT=47E3318C721E6C094763F0A18042911D
+CT=D709FA9A1415B0FAC71B4CF52504791F
+
+I=126
+KEY=3F4349126EF6A51FD196742CB461D01EF358249730F246058C45BD88EAFC15A2
+PT=D709FA9A1415B0FAC71B4CF52504791F
+CT=7937DD067DDB85F200A492E5824DA23C
+
+I=127
+KEY=4420ADF6906CFBF8421524E88517327C8A6FF9914D29C3F78CE12F6D68B1B79E
+PT=7937DD067DDB85F200A492E5824DA23C
+CT=B68617F1372847206BA088D7100334A4
+
+I=128
+KEY=125BEB5234B89A376ABBB2185F24BDDE3CE9EE607A0184D7E741A7BA78B2833A
+PT=B68617F1372847206BA088D7100334A4
+CT=390938BA9F2264484DE63D8003C15369
+
+I=129
+KEY=A457831AB172D88111E87C3955D0C0F205E0D6DAE523E09FAAA79A3A7B73D053
+PT=390938BA9F2264484DE63D8003C15369
+CT=A69ED32FD728337A5C25FBC2230DC788
+
+I=130
+KEY=CC7ED4183BFAE0FA0F9DD348B8E194F2A37E05F5320BD3E5F68261F8587E17DB
+PT=A69ED32FD728337A5C25FBC2230DC788
+CT=EDB9D6099202FE4AE51EEC725478FB47
+
+I=131
+KEY=686AB4F5C19296AED306ADEA4FD52D1A4EC7D3FCA0092DAF139C8D8A0C06EC9C
+PT=EDB9D6099202FE4AE51EEC725478FB47
+CT=61059EA3BF0C953762CB37E50ED7081F
+
+I=132
+KEY=8115329FADEBA92AB2827BD7701A01442FC24D5F1F05B8987157BA6F02D1E483
+PT=61059EA3BF0C953762CB37E50ED7081F
+CT=A683E36EF7CCDABDBCA683C2D6560D25
+
+I=133
+KEY=49254E8904EED2766A6A1A615B63B97C8941AE31E8C96225CDF139ADD487E9A6
+PT=A683E36EF7CCDABDBCA683C2D6560D25
+CT=8EF424771561BFEC0058C7CAA5876EF6
+
+I=134
+KEY=259194CE8701581012F5592B61BCA99507B58A46FDA8DDC9CDA9FE6771008750
+PT=8EF424771561BFEC0058C7CAA5876EF6
+CT=79AC024A7BA5FFE143D40D34F2E587A6
+
+I=135
+KEY=CA0427FE28C77D0CA25D6851CCFE58C47E19880C860D22288E7DF35383E500F6
+PT=79AC024A7BA5FFE143D40D34F2E587A6
+CT=2258AB9F0E254CE21EB9B7F6EA690671
+
+I=136
+KEY=DA9A4B566C9F670DF850F891A5274CC95C41239388286ECA90C444A5698C0687
+PT=2258AB9F0E254CE21EB9B7F6EA690671
+CT=55ACB73E8A45BF964BD040C799724DAD
+
+I=137
+KEY=9F177A6A6B524C75DB5CC0DBB6AD733209ED94AD026DD15CDB140462F0FE4B2A
+PT=55ACB73E8A45BF964BD040C799724DAD
+CT=3E904B15F2E5DDC934DABC25259CB3CF
+
+I=138
+KEY=2AD96F6874C1BA6A82C5EE80A9A2E8E5377DDFB8F0880C95EFCEB847D562F8E5
+PT=3E904B15F2E5DDC934DABC25259CB3CF
+CT=3ACFF8D5B701A5BD1355DDA705D269CB
+
+I=139
+KEY=ADD59DF57CC01DE988C6D81E65B1D00E0DB2276D4789A928FC9B65E0D0B0912E
+PT=3ACFF8D5B701A5BD1355DDA705D269CB
+CT=3EF4AC14CC954FB4A9A808C7C00A2F1F
+
+I=140
+KEY=D3EBE43C4E9C96B37133F6AF8910A25F33468B798B1CE69C55336D2710BABE31
+PT=3EF4AC14CC954FB4A9A808C7C00A2F1F
+CT=61C50D5C736AEDCF03C06FC310CC19D9
+
+I=141
+KEY=FA45F434377F2E217C4A5B7A7526CC1952838625F8760B5356F302E40076A7E8
+PT=61C50D5C736AEDCF03C06FC310CC19D9
+CT=2BF543C6548ED0344262640AD95F95C9
+
+I=142
+KEY=71EAD73C81ED5AE731D19B0B2B42F0E87976C5E3ACF8DB67149166EED9293221
+PT=2BF543C6548ED0344262640AD95F95C9
+CT=F8C1DBDD20317FEB1625634A451931B5
+
+I=143
+KEY=3FD0019D000111D4300D2CEF39F53C0D81B71E3E8CC9A48C02B405A49C300394
+PT=F8C1DBDD20317FEB1625634A451931B5
+CT=DEDB54735B8B90C8EEC66EAECFB13ED6
+
+I=144
+KEY=070976B2D3AA1E737BC24A8A794A21BE5F6C4A4DD7423444EC726B0A53813D42
+PT=DEDB54735B8B90C8EEC66EAECFB13ED6
+CT=75941A1ADA444115961E058E2D6C6396
+
+I=145
+KEY=81AC2B7F073D0D06BA8A43D3381D3A3F2AF850570D0675517A6C6E847EED5ED4
+PT=75941A1ADA444115961E058E2D6C6396
+CT=7C66BE2B0354A6549E10489AF7A83424
+
+I=146
+KEY=37BDD1946BB9B5616115F015E9162F5B569EEE7C0E52D305E47C261E89456AF0
+PT=7C66BE2B0354A6549E10489AF7A83424
+CT=F589769555BDEFD0B29E6A65313BD2E1
+
+I=147
+KEY=CF27BD543BB4EED052B808D1EE350D35A31798E95BEF3CD556E24C7BB87EB811
+PT=F589769555BDEFD0B29E6A65313BD2E1
+CT=9B3215F70FBCC5ED9CC0D6D7E1E56F11
+
+I=148
+KEY=43321308251C33234CCD9ED19E5E74AF38258D1E5453F938CA229AAC599BD700
+PT=9B3215F70FBCC5ED9CC0D6D7E1E56F11
+CT=705CCB60E0A6E997578DCC804D49D265
+
+I=149
+KEY=F2152160EAD144776BA6BDED0AC49CD24879467EB4F510AF9DAF562C14D20565
+PT=705CCB60E0A6E997578DCC804D49D265
+CT=3DA4CEC68D47E55ECF21A1C5CDAFE4E6
+
+I=150
+KEY=593B7EDAE946A5269EF33D088D1B297675DD88B839B2F5F1528EF7E9D97DE183
+PT=3DA4CEC68D47E55ECF21A1C5CDAFE4E6
+CT=32299EDBED49B66271107CA1822F179E
+
+I=151
+KEY=852E4554AD1459CE81DBA17D18DA96C447F41663D4FB4393239E8B485B52F61D
+PT=32299EDBED49B66271107CA1822F179E
+CT=45856FD2080FA9BBFA0857BCF7381823
+
+I=152
+KEY=1D8F910508F9C08DB4DE4D5C465310F4027179B1DCF4EA28D996DCF4AC6AEE3E
+PT=45856FD2080FA9BBFA0857BCF7381823
+CT=6A8C18595AF5D1E46F9F168C31566BAF
+
+I=153
+KEY=1A42C028C1ABA740D95A47ABD7B4F40D68FD61E886013BCCB609CA789D3C8591
+PT=6A8C18595AF5D1E46F9F168C31566BAF
+CT=71A41A6B6BF9FB906B0617DCB76B4BA5
+
+I=154
+KEY=3C408CB08BCAF34B2BCE6EF787A96D5219597B83EDF8C05CDD0FDDA42A57CE34
+PT=71A41A6B6BF9FB906B0617DCB76B4BA5
+CT=9105B8FC516E0B19AEDD003979F8C298
+
+I=155
+KEY=804516E36B1B5E046B15CBE1D3F26EE9885CC37FBC96CB4573D2DD9D53AF0CAC
+PT=9105B8FC516E0B19AEDD003979F8C298
+CT=27ACD01CC0403AD6DB45C7DF3E515EDE
+
+I=156
+KEY=CD8199690660BD4DBA38CE522D1A12CEAFF013637CD6F193A8971A426DFE5272
+PT=27ACD01CC0403AD6DB45C7DF3E515EDE
+CT=86E2A23AC567C5F05F15A318E38360A7
+
+I=157
+KEY=0AD8BB3D5B2A538DF0BDD50EB74CC1BA2912B159B9B13463F782B95A8E7D32D5
+PT=86E2A23AC567C5F05F15A318E38360A7
+CT=CB03EDA81BF211B5FE03D4A0879E9EDD
+
+I=158
+KEY=081040B60AE9E733243F4C39013EEDB5E2115CF1A24325D609816DFA09E3AC08
+PT=CB03EDA81BF211B5FE03D4A0879E9EDD
+CT=6F1AD4AD727348DD593459E0D7661813
+
+I=159
+KEY=A51E29D20BB0963DF854C898299E114A8D0B885CD0306D0B50B5341ADE85B41B
+PT=6F1AD4AD727348DD593459E0D7661813
+CT=236B421E3103D4C17297D3F5C8BA1D17
+
+I=160
+KEY=49D4EB9964431F42F0FC6494A47A50CCAE60CA42E133B9CA2222E7EF163FA90C
+PT=236B421E3103D4C17297D3F5C8BA1D17
+CT=118AE5A5597E8DB200B26DBE11AC4BC8
+
+I=161
+KEY=0F3F7298BE444450A0A07A4B73897720BFEA2FE7B84D347822908A510793E2C4
+PT=118AE5A5597E8DB200B26DBE11AC4BC8
+CT=DF02587F25CC4C59E6AECE98BCAACCB8
+
+I=162
+KEY=7E30984A4C0B18D2F791858B83FC960960E877989D817821C43E44C9BB392E7C
+PT=DF02587F25CC4C59E6AECE98BCAACCB8
+CT=3DA0F35FDAEF499ADBF602939FC748D4
+
+I=163
+KEY=360A7168E056892E5BF0127EA3B58CAF5D4884C7476E31BB1FC8465A24FE66A8
+PT=3DA0F35FDAEF499ADBF602939FC748D4
+CT=FE462F878CEEDDDAA00855B85A81A14B
+
+I=164
+KEY=A75B3537E0EB98FC0F41C9E1306F6667A30EAB40CB80EC61BFC013E27E7FC7E3
+PT=FE462F878CEEDDDAA00855B85A81A14B
+CT=47EA8AC561D7A9F99F64F41A9AD46E5C
+
+I=165
+KEY=219E71FC6D23A5103DE4DA9C5EDFA0AEE4E42185AA57459820A4E7F8E4ABA9BF
+PT=47EA8AC561D7A9F99F64F41A9AD46E5C
+CT=650FAE7F29A098D787F60CC3C0D77580
+
+I=166
+KEY=038A888C6EA4E9502A15110832AE0DF081EB8FFA83F7DD4FA752EB3B247CDC3F
+PT=650FAE7F29A098D787F60CC3C0D77580
+CT=0334BF8CA2835C71F2A283736D54E933
+
+I=167
+KEY=714967419F9129B9649A13A9DA3291A582DF30762174813E55F068484928350C
+PT=0334BF8CA2835C71F2A283736D54E933
+CT=1B3A09B325F3D833A3C83D941832B204
+
+I=168
+KEY=BCDB12EAF8D3C95F821C0DD324FD36BB99E539C50487590DF63855DC511A8708
+PT=1B3A09B325F3D833A3C83D941832B204
+CT=CF980ED2619858290881314B7F0B9516
+
+I=169
+KEY=B8FA32AE829E8AF3EF543A407E2D61BA567D3717651F0124FEB964972E11121E
+PT=CF980ED2619858290881314B7F0B9516
+CT=98FF5ADA0739122DBBD241847D4A318D
+
+I=170
+KEY=D62592634F0ABD21AC98887A88845E2ECE826DCD62261309456B2513535B2393
+PT=98FF5ADA0739122DBBD241847D4A318D
+CT=1824306B9F54BE4CE3F94F037B4B8569
+
+I=171
+KEY=77005AE2FA1AD6D77D36566B9E988345D6A65DA6FD72AD45A6926A102810A6FA
+PT=1824306B9F54BE4CE3F94F037B4B8569
+CT=25BA57B9035625DD268492282535960C
+
+I=172
+KEY=BE766696DC4458442056D89C96CAFDF0F31C0A1FFE2488988016F8380D2530F6
+PT=25BA57B9035625DD268492282535960C
+CT=26AEAD4ED08CA78CE2A3358F36DA0E3F
+
+I=173
+KEY=1E1D3EBC714EE191EDB2A02B64EF2C23D5B2A7512EA82F1462B5CDB73BFF3EC9
+PT=26AEAD4ED08CA78CE2A3358F36DA0E3F
+CT=10AB48E0CB1D72D82794E35DBDEF88F6
+
+I=174
+KEY=D3EAD2DA40B4C94B506A0ED75210023BC519EFB1E5B55DCC45212EEA8610B63F
+PT=10AB48E0CB1D72D82794E35DBDEF88F6
+CT=878BCAC367294B227533E1451F654960
+
+I=175
+KEY=87D0B5D4A1314054EC37B67B4245BA8C42922572829C16EE3012CFAF9975FF5F
+PT=878BCAC367294B227533E1451F654960
+CT=98CC3311EC8E8B75944503734DEAC00D
+
+I=176
+KEY=EF3FA3235BB42B1326DE67088C68E2BDDA5E16636E129D9BA457CCDCD49F3F52
+PT=98CC3311EC8E8B75944503734DEAC00D
+CT=DAF5FB711E259B498918871933A2E1FD
+
+I=177
+KEY=2EBBBB1B070658DD43299478725AA88F00ABED12703706D22D4F4BC5E73DDEAF
+PT=DAF5FB711E259B498918871933A2E1FD
+CT=AACC545DEE8FF1F5C7A91A2EE3D25C1B
+
+I=178
+KEY=E15D1FC214F23FF93886D219B4DFCD45AA67B94F9EB8F727EAE651EB04EF82B4
+PT=AACC545DEE8FF1F5C7A91A2EE3D25C1B
+CT=B844B67FBFD12E2712CCB66EBB4F7691
+
+I=179
+KEY=CC3335B792121DE55FA04A4D6FEE57B012230F302169D900F82AE785BFA0F425
+PT=B844B67FBFD12E2712CCB66EBB4F7691
+CT=3E00C548BAEE6150FAA5B67986331FD5
+
+I=180
+KEY=18DB585F810069C584251CA1E04A58382C23CA789B87B850028F51FC3993EBF0
+PT=3E00C548BAEE6150FAA5B67986331FD5
+CT=EB23DEEA8449E8FA0D828C12B98437AE
+
+I=181
+KEY=DFE08CA44B0BC4F51C43BE3631E20735C70014921FCE50AA0F0DDDEE8017DC5E
+PT=EB23DEEA8449E8FA0D828C12B98437AE
+CT=35BBE35CFC1D8FC40BC52F20D3FB35D5
+
+I=182
+KEY=0F7DCC456D50A31AC9351794BFE6DD57F2BBF7CEE3D3DF6E04C8F2CE53ECE98B
+PT=35BBE35CFC1D8FC40BC52F20D3FB35D5
+CT=DFFE7AEEAAF4762C7EB52453B1F61AD8
+
+I=183
+KEY=D34FDEB3F04FB4563BC0FD204E8D459F2D458D204927A9427A7DD69DE21AF353
+PT=DFFE7AEEAAF4762C7EB52453B1F61AD8
+CT=C648DAF9EBFB4BC6166B15BF067E107F
+
+I=184
+KEY=5E90B747C9976A3F5050B0C51F116A81EB0D57D9A2DCE2846C16C322E464E32C
+PT=C648DAF9EBFB4BC6166B15BF067E107F
+CT=057258D07CAEE57807C396FAE651855A
+
+I=185
+KEY=52D3686BC0CD56B9DFF3A69F5073F30AEE7F0F09DE7207FC6BD555D802356676
+PT=057258D07CAEE57807C396FAE651855A
+CT=B1109BE49E6E0F4C4190D8E0D717E8D0
+
+I=186
+KEY=39C89286B658E006FBF97BAB1C4874025F6F94ED401C08B02A458D38D5228EA6
+PT=B1109BE49E6E0F4C4190D8E0D717E8D0
+CT=4DDE60FEEE40402058C988092603AB53
+
+I=187
+KEY=562C9A004CBF05A4CA97994D48C0874C12B1F413AE5C4890728C0531F32125F5
+PT=4DDE60FEEE40402058C988092603AB53
+CT=3B18CBF83791E93D661EB269CFEAB1BE
+
+I=188
+KEY=F95206C4D3862E01A4DFE3676A2F297C29A93FEB99CDA1AD1492B7583CCB944B
+PT=3B18CBF83791E93D661EB269CFEAB1BE
+CT=0A3204DEE28B65E849136960949E4E5E
+
+I=189
+KEY=FEFDBE4294E46E22074E77B6BB7F964B239B3B357B46C4455D81DE38A855DA15
+PT=0A3204DEE28B65E849136960949E4E5E
+CT=6C47ECB8B1478F0BBEDEF3A05A439776
+
+I=190
+KEY=05858C957F861410187DD8CC2EE48E364FDCD78DCA014B4EE35F2D98F2164D63
+PT=6C47ECB8B1478F0BBEDEF3A05A439776
+CT=881188C2834B0496CB97F15F7A5C332A
+
+I=191
+KEY=A51CABC6D50BF9043E95CE2BC511D26DC7CD5F4F494A4FD828C8DCC7884A7E49
+PT=881188C2834B0496CB97F15F7A5C332A
+CT=1FAE86251E2F615E3BFCAC545013CD12
+
+I=192
+KEY=4EE1F6812CC35A16AA63F1CB39669ED7D863D96A57652E8613347093D859B35B
+PT=1FAE86251E2F615E3BFCAC545013CD12
+CT=6017C6764080CB6D2BAC24C0F1BFF8F5
+
+I=193
+KEY=F4F31D57DD72E6BF842D3834372AA60CB8741F1C17E5E5EB3898545329E64BAE
+PT=6017C6764080CB6D2BAC24C0F1BFF8F5
+CT=10C8548253FB2BCD5D6F87CB28FAE7E7
+
+I=194
+KEY=9DBB357DC99A95C240E750F1970C5C65A8BC4B9E441ECE2665F7D398011CAC49
+PT=10C8548253FB2BCD5D6F87CB28FAE7E7
+CT=20E253845A3DD51FFC16141FDAA20749
+
+I=195
+KEY=A814CD8766E0BFFBD8530589D6202BE0885E181A1E231B3999E1C787DBBEAB00
+PT=20E253845A3DD51FFC16141FDAA20749
+CT=9383323218D891F9DCE7578FCD6A54A5
+
+I=196
+KEY=C516C26E23E38C2B87346F759D8AEF881BDD2A2806FB8AC04506900816D4FFA5
+PT=9383323218D891F9DCE7578FCD6A54A5
+CT=9CFF8002D46EAFAAC7B035A788A37CF5
+
+I=197
+KEY=9301F8120939D0E70C97F614F61F18648722AA2AD295256A82B6A5AF9E778350
+PT=9CFF8002D46EAFAAC7B035A788A37CF5
+CT=90C9F34994D5DA86406C7E82EDDD1009
+
+I=198
+KEY=82B163831972D2CEF8F1780AA6B0707A17EB59634640FFECC2DADB2D73AA9359
+PT=90C9F34994D5DA86406C7E82EDDD1009
+CT=C8B5021EE84635EB7E7D0F5DBE967FD0
+
+I=199
+KEY=F99FF8714EE5D822E0E25C499D7C96ACDF5E5B7DAE06CA07BCA7D470CD3CEC89
+PT=C8B5021EE84635EB7E7D0F5DBE967FD0
+CT=15CCB3C950764E24CA714707034DF9A7
+
+I=200
+KEY=3529E6B83266BD558B7F33FC00AE4904CA92E8B4FE70842376D69377CE71152E
+PT=15CCB3C950764E24CA714707034DF9A7
+CT=5FDA0EF6A2172D5DAA8E842F061A2E44
+
+I=201
+KEY=2D77F95D8B556740CD9E2CC546CA45C99548E6425C67A97EDC581758C86B3B6A
+PT=5FDA0EF6A2172D5DAA8E842F061A2E44
+CT=808781D0D10B3A02333E0A53E159287F
+
+I=202
+KEY=79298FD5F3C4B6378403CFAD05C3C96E15CF67928D6C937CEF661D0B29321315
+PT=808781D0D10B3A02333E0A53E159287F
+CT=CC760400725FCFD37E757D99C6361B93
+
+I=203
+KEY=69535F335F6AEBF452407F3F1C203410D9B96392FF335CAF91136092EF040886
+PT=CC760400725FCFD37E757D99C6361B93
+CT=247D3A6BB4C883C142C4000B085C3B79
+
+I=204
+KEY=1A4F8FD7BD8DBCFB3677C708CDDDC7C4FDC459F94BFBDF6ED3D76099E75833FF
+PT=247D3A6BB4C883C142C4000B085C3B79
+CT=47E4C802C61E6A1706BAE95AF75CA70D
+
+I=205
+KEY=A573989455A11CAD1E8642CD774806B1BA2091FB8DE5B579D56D89C3100494F2
+PT=47E4C802C61E6A1706BAE95AF75CA70D
+CT=4297101350A5CE6C435FAD2725C22E46
+
+I=206
+KEY=8D52414DD5600AA0CACD5AD399FD1B37F8B781E8DD407B15963224E435C6BAB4
+PT=4297101350A5CE6C435FAD2725C22E46
+CT=BEC56BF1F3B6BE60C0F4CB7AE77BF0F5
+
+I=207
+KEY=49D4DF2FB3B561817F2BA6599B66C9244672EA192EF6C57556C6EF9ED2BD4A41
+PT=BEC56BF1F3B6BE60C0F4CB7AE77BF0F5
+CT=5B590F24D329BB6ED981938A4CDB9907
+
+I=208
+KEY=68BD5721E2A51A184CDBAC3A035670701D2BE53DFDDF7E1B8F477C149E66D346
+PT=5B590F24D329BB6ED981938A4CDB9907
+CT=A8A15DBB79BB9B1131EF39C1E3FCFC9C
+
+I=209
+KEY=2CC71F1B9BE892100E8A340E61D0A128B58AB8868464E50ABEA845D57D9A2FDA
+PT=A8A15DBB79BB9B1131EF39C1E3FCFC9C
+CT=E8CBAB9E98D2866E779512AAC2FA2EA0
+
+I=210
+KEY=EEF45CE1BB444A6BA5A029363FB9D4DB5D4113181CB66364C93D577FBF60017A
+PT=E8CBAB9E98D2866E779512AAC2FA2EA0
+CT=7E4896F0A48A25FFE950B74B96F5F40E
+
+I=211
+KEY=151FE809785C11F8F19F31EA0246B416230985E8B83C469B206DE0342995F574
+PT=7E4896F0A48A25FFE950B74B96F5F40E
+CT=E1C642B54B89822E73A695C851BC8EBE
+
+I=212
+KEY=14FE470CD366C580F124EA924B918BF5C2CFC75DF3B5C4B553CB75FC78297BCA
+PT=E1C642B54B89822E73A695C851BC8EBE
+CT=5FA2C6A2303ED7219984F30B78BE6B96
+
+I=213
+KEY=92E61F4C495462354EF612492557D6AB9D6D01FFC38B1394CA4F86F70097105C
+PT=5FA2C6A2303ED7219984F30B78BE6B96
+CT=3791959FBF178682A711623C2F91616C
+
+I=214
+KEY=6C0B6F23AC7526204C451A8ADE54D404AAFC94607C9C95166D5EE4CB2F067130
+PT=3791959FBF178682A711623C2F91616C
+CT=E14FCACD5FD26FC2710776EE82317ABC
+
+I=215
+KEY=0DAE926E4172586817730DB9FDF2CE0B4BB35EAD234EFAD41C599225AD370B8C
+PT=E14FCACD5FD26FC2710776EE82317ABC
+CT=E576499EAF5365E7FE3B4961D9C74419
+
+I=216
+KEY=DCD553F2977BD114B61F724ABC6AFE8EAEC517338C1D9F33E262DB4474F04F95
+PT=E576499EAF5365E7FE3B4961D9C74419
+CT=38567558119E72929F2932E6C289095E
+
+I=217
+KEY=6333DA8D5B655B5B5AABBCAF0B010BE89693626B9D83EDA17D4BE9A2B67946CB
+PT=38567558119E72929F2932E6C289095E
+CT=D20AD648F558E5507CC5C905E92CC268
+
+I=218
+KEY=F9010180B464FBB8AD7C9D5E41B1E09A4499B42368DB08F1018E20A75F5584A3
+PT=D20AD648F558E5507CC5C905E92CC268
+CT=00C719F3757DDD2D2E64C3F2666FB2CB
+
+I=219
+KEY=8CE68ED02B4FFD9720B3D16FAE92D164445EADD01DA6D5DC2FEAE355393A3668
+PT=00C719F3757DDD2D2E64C3F2666FB2CB
+CT=AEEAB9F50456CA3233A964219D2E7816
+
+I=220
+KEY=57E26BA4DBD3549051B0D9436EB38D4FEAB4142519F01FEE1C438774A4144E7E
+PT=AEEAB9F50456CA3233A964219D2E7816
+CT=3F02C97E127FD697AFD58BC66941F654
+
+I=221
+KEY=4D0BC4A8796407C939797EF19D0CE7E3D5B6DD5B0B8FC979B3960CB2CD55B82A
+PT=3F02C97E127FD697AFD58BC66941F654
+CT=BC4C0DDBCF0003B7814EEF1ABD22B6A8
+
+I=222
+KEY=9C1FD1789544D2F3FF84574A216767CD69FAD080C48FCACE32D8E3A870770E82
+PT=BC4C0DDBCF0003B7814EEF1ABD22B6A8
+CT=D125D8C2920ADD3EA00103DC695A0D9D
+
+I=223
+KEY=ADBE97F99DBE61213892D9849B81B3FBB8DF0842568517F092D9E074192D031F
+PT=D125D8C2920ADD3EA00103DC695A0D9D
+CT=C0C57598639BA69E13C82E3AF24777C5
+
+I=224
+KEY=A14DC5CF6CD0BD9AC9499317C509CCB4781A7DDA351EB16E8111CE4EEB6A74DA
+PT=C0C57598639BA69E13C82E3AF24777C5
+CT=81E3B8F6A691BC30AA66AD70F0358881
+
+I=225
+KEY=0EC479D8681AC8CA455D64A4BB34C86DF9F9C52C938F0D5E2B77633E1B5FFC5B
+PT=81E3B8F6A691BC30AA66AD70F0358881
+CT=3CD03908D4ABA4B9885BCB1AC89D16C3
+
+I=226
+KEY=E74102D814426E659732B303E6D44DB7C529FC244724A9E7A32CA824D3C2EA98
+PT=3CD03908D4ABA4B9885BCB1AC89D16C3
+CT=61662DD8EE676E17AE5CF2BABDC54A67
+
+I=227
+KEY=EE4034F1A2EF16D7D848BB005CDA5E99A44FD1FCA943C7F00D705A9E6E07A0FF
+PT=61662DD8EE676E17AE5CF2BABDC54A67
+CT=4E637432B0FF54FD665A902725B977EB
+
+I=228
+KEY=45E8F2DF7FC6E49FB0AF3B73788A1065EA2CA5CE19BC930D6B2ACAB94BBED714
+PT=4E637432B0FF54FD665A902725B977EB
+CT=E53D1440407503B66530EEEEBBC9182B
+
+I=229
+KEY=0BEBC981186DEF84C01688CA16A061E00F11B18E59C990BB0E1A2457F077CF3F
+PT=E53D1440407503B66530EEEEBBC9182B
+CT=12134ADF5BB16D867B4EE9CE87EBE36D
+
+I=230
+KEY=6FADFDB92B0F888514730F17A37A81B61D02FB510278FD3D7554CD99779C2C52
+PT=12134ADF5BB16D867B4EE9CE87EBE36D
+CT=310EACEF26A3EB5E4511437145DC30F9
+
+I=231
+KEY=A565724F25EE29346543964864A0FFAA2C0C57BE24DB166330458EE832401CAB
+PT=310EACEF26A3EB5E4511437145DC30F9
+CT=6848E5A618419EC6BACD9CD40BB42083
+
+I=232
+KEY=1FAEBFE13AC7545DC742ED60241BC2E84444B2183C9A88A58A88123C39F43C28
+PT=6848E5A618419EC6BACD9CD40BB42083
+CT=C64DA25E7CB1A004E31CD37F9D4E1112
+
+I=233
+KEY=A8EE2725373C48BAD9C0009C53C298A982091046402B28A16994C143A4BA2D3A
+PT=C64DA25E7CB1A004E31CD37F9D4E1112
+CT=D02E6AE8FDD0C5813669080AA7B82527
+
+I=234
+KEY=0770874A41ED1396940D75E6A5A09F5352277AAEBDFBED205FFDC9490302081D
+PT=D02E6AE8FDD0C5813669080AA7B82527
+CT=5DDFBC75FE48D88E7D6F307E4A008BC7
+
+I=235
+KEY=D7D098F85AB45E754629D2AB7DA2226C0FF8C6DB43B335AE2292F937490283DA
+PT=5DDFBC75FE48D88E7D6F307E4A008BC7
+CT=E216C9AC28239E97237930079739ECE0
+
+I=236
+KEY=5D6FAFF37EE7400691E504578251ECB1EDEE0F776B90AB3901EBC930DE3B6F3A
+PT=E216C9AC28239E97237930079739ECE0
+CT=8D126659360D03548879000642E78029
+
+I=237
+KEY=D75C5C64D94D0BC8566F568278B502D560FC692E5D9DA86D8992C9369CDCEF13
+PT=8D126659360D03548879000642E78029
+CT=9EA4C85D0F07AD618A2EBEBBE50D72B6
+
+I=238
+KEY=D42BD9CDCD8BDA71E64817A2755C97C0FE58A173529A050C03BC778D79D19DA5
+PT=9EA4C85D0F07AD618A2EBEBBE50D72B6
+CT=1F525901AF1D94BA6CA3C7244E2CD885
+
+I=239
+KEY=32DD1758D2EFC602EE85C58A66D0B080E10AF872FD8791B66F1FB0A937FD4520
+PT=1F525901AF1D94BA6CA3C7244E2CD885
+CT=E131C071BFA21FCE21D18DB87B522903
+
+I=240
+KEY=BEC98C02D74E088458A668D0B6DDCF13003B380342258E784ECE3D114CAF6C23
+PT=E131C071BFA21FCE21D18DB87B522903
+CT=51F1B72C99C869BF73A6637D3A2E2278
+
+I=241
+KEY=D368F7BE25A6A0C9AD2004E764F43A3551CA8F2FDBEDE7C73D685E6C76814E5B
+PT=51F1B72C99C869BF73A6637D3A2E2278
+CT=0965CDD7A134672036F0C69774CFD380
+
+I=242
+KEY=E5A7E12124540DBB4147A55C276A35B958AF42F87AD980E70B9898FB024E9DDB
+PT=0965CDD7A134672036F0C69774CFD380
+CT=52ECEB721073FBF3D1BD5808351BEC5E
+
+I=243
+KEY=7D9702E2C8906805A580D5D85B03BBC60A43A98A6AAA7B14DA25C0F337557185
+PT=52ECEB721073FBF3D1BD5808351BEC5E
+CT=493CE4E2B090DA3A2354C9DA7DB44D39
+
+I=244
+KEY=8EFA5EC96F3AEF51AB38F4CCD969E5D5437F4D68DA3AA12EF97109294AE13CBC
+PT=493CE4E2B090DA3A2354C9DA7DB44D39
+CT=DA64246FF65969995F9A4E8AE7C805CF
+
+I=245
+KEY=19C97957444E9931293047A647D7A19A991B69072C63C8B7A6EB47A3AD293973
+PT=DA64246FF65969995F9A4E8AE7C805CF
+CT=CF85EBD76908CD8F8D3177E53DA3AD5E
+
+I=246
+KEY=7BDB3ED45BD78C131611FD9D54B8E9D2569E82D0456B05382BDA3046908A942D
+PT=CF85EBD76908CD8F8D3177E53DA3AD5E
+CT=45E1FDEFC98E62A841BD1D8D8236CEEF
+
+I=247
+KEY=19961521A42D96238D44F651E7E7D463137F7F3F8CE567906A672DCB12BC5AC2
+PT=45E1FDEFC98E62A841BD1D8D8236CEEF
+CT=E056EF7B711A9CBDED8878EF74AF1671
+
+I=248
+KEY=343360636E697E607319D4DCBC12B543F3299044FDFFFB2D87EF552466134CB3
+PT=E056EF7B711A9CBDED8878EF74AF1671
+CT=E4EFF77C6C3273393BE4814A16C3DF4A
+
+I=249
+KEY=B63D4D3D099F8E68F6A041D2EB1B1C1417C6673891CD8814BC0BD46E70D093F9
+PT=E4EFF77C6C3273393BE4814A16C3DF4A
+CT=EC562E353DF8BA76699B01A6ACC8AD52
+
+I=250
+KEY=EF500379EDE772968F1499F07B0B09CFFB90490DAC353262D590D5C8DC183EAB
+PT=EC562E353DF8BA76699B01A6ACC8AD52
+CT=4473050ADC687112AACB86AA73CB6C6D
+
+I=251
+KEY=EA5CD4EDD99E64018AD3104026F0F528BFE34C07705D43707F5B5362AFD352C6
+PT=4473050ADC687112AACB86AA73CB6C6D
+CT=6561A82EE86E4F18DF6965312F0C0984
+
+I=252
+KEY=2ABF9529FC88D85FF68CF6D72B9A9CB5DA82E42998330C68A032365380DF5B42
+PT=6561A82EE86E4F18DF6965312F0C0984
+CT=47590CE1C90F3AC2C68B272B4A667F61
+
+I=253
+KEY=A485B647790DBFF76F16C42A39F5F5559DDBE8C8513C36AA66B91178CAB92423
+PT=47590CE1C90F3AC2C68B272B4A667F61
+CT=4ED731A36BCB2672A810633E432D8922
+
+I=254
+KEY=F0D0E858B597595A06458FF6C2259127D30CD96B3AF710D8CEA972468994AD01
+PT=4ED731A36BCB2672A810633E432D8922
+CT=4AC2F0D5F52762F77DB5D9EF53B76642
+
+I=255
+KEY=EDDE80556ECA4CC51EFB33E23C43C04399CE29BECFD0722FB31CABA9DA23CB43
+PT=4AC2F0D5F52762F77DB5D9EF53B76642
+CT=A574FBE71E359A57D57A24A388FDF6EE
+
+I=256
+KEY=3C7C248C9FCE1D060D5B0664C0FF3F6B3CBAD259D1E5E87866668F0A52DE3DAD
+PT=A574FBE71E359A57D57A24A388FDF6EE
+CT=CCC3A011108469A7987F336C209BB84E
+
+I=257
+KEY=D43727570A809BE0D9EB78760FE4CDA9F0797248C16181DFFE19BC66724585E3
+PT=CCC3A011108469A7987F336C209BB84E
+CT=686357D3013977390164834D4E5324DC
+
+I=258
+KEY=2F060E361977E544B98779AB55886D57981A259BC058F6E6FF7D3F2B3C16A13F
+PT=686357D3013977390164834D4E5324DC
+CT=DDDAD6FBDBF7C7BE7EBF3F036009A270
+
+I=259
+KEY=A3630C05DC65905D37AFDB315B2AA4D945C0F3601BAF315881C200285C1F034F
+PT=DDDAD6FBDBF7C7BE7EBF3F036009A270
+CT=237124FEDF28B4201B6D1584B93D5F7C
+
+I=260
+KEY=3E6ADAAEF53A36294CDEA0D94BE742C166B1D79EC48785789AAF15ACE5225C33
+PT=237124FEDF28B4201B6D1584B93D5F7C
+CT=D1A9DDFB5662934AAD98B2861E50A871
+
+I=261
+KEY=234615019E03C466AEA186112C4EB523B7180A6592E516323737A72AFB72F442
+PT=D1A9DDFB5662934AAD98B2861E50A871
+CT=CA18344F4C7A0F068398CA8137C056DD
+
+I=262
+KEY=22ED93581611798050E94CC70F6090BF7D003E2ADE9F1934B4AF6DABCCB2A29F
+PT=CA18344F4C7A0F068398CA8137C056DD
+CT=91FA4D62D10E852D9EDA42FAC8C34557
+
+I=263
+KEY=A5981D9A37D6D3D948391D1D462B6DCFECFA73480F919C192A752F510471E7C8
+PT=91FA4D62D10E852D9EDA42FAC8C34557
+CT=B956221510135066B2B2552C4CB37642
+
+I=264
+KEY=BF2E4397D0E93DFFA38D69B30F33835B55AC515D1F82CC7F98C77A7D48C2918A
+PT=B956221510135066B2B2552C4CB37642
+CT=300CFCEAFED28E622CD08222D3A3B0B0
+
+I=265
+KEY=55432143B807A628001F8D062CE0157265A0ADB7E150421DB417F85F9B61213A
+PT=300CFCEAFED28E622CD08222D3A3B0B0
+CT=26681BCFDC630A21A684C60EF6A23747
+
+I=266
+KEY=2966A6CB3BA9028583813B91FD72748D43C8B6783D33483C12933E516DC3167D
+PT=26681BCFDC630A21A684C60EF6A23747
+CT=8EDD4B1B458D16841AD4525C01A8397E
+
+I=267
+KEY=1A22288AC28060F8E4B20C2AE0C82AEACD15FD6378BE5EB808476C0D6C6B2F03
+PT=8EDD4B1B458D16841AD4525C01A8397E
+CT=BFDE412A7CAF0326AD1727996056A61C
+
+I=268
+KEY=C882E880508E92FF709E9BD4A555B30A72CBBC4904115D9EA5504B940C3D891F
+PT=BFDE412A7CAF0326AD1727996056A61C
+CT=88C039A0B395C5D08848C64DFC150C57
+
+I=269
+KEY=298B3829EE60112C926E1FD583C9A2DEFA0B85E9B784984E2D188DD9F0288548
+PT=88C039A0B395C5D08848C64DFC150C57
+CT=ACDF23F2CB73FD8D3D814A79E3C94126
+
+I=270
+KEY=2F2A3D0DDB2DBA8B8E3FF8A9DE765FE356D4A61B7CF765C31099C7A013E1C46E
+PT=ACDF23F2CB73FD8D3D814A79E3C94126
+CT=A8BE26FE8780972650D5F384B744AC44
+
+I=271
+KEY=F8CC20E8296CD38F1EF8BB2777EE1200FE6A80E5FB77F2E5404C3424A4A5682A
+PT=A8BE26FE8780972650D5F384B744AC44
+CT=B5557CC20F64FCC576A6EC7BE324CE43
+
+I=272
+KEY=678B5341F1BC13DB366B36D59ADADC7C4B3FFC27F4130E2036EAD85F4781A669
+PT=B5557CC20F64FCC576A6EC7BE324CE43
+CT=B59281EFF9C8D19E5D9C053CBE1F2F33
+
+I=273
+KEY=E4701C9009693E38C455CE186A4B87DFFEAD7DC80DDBDFBE6B76DD63F99E895A
+PT=B59281EFF9C8D19E5D9C053CBE1F2F33
+CT=7E8B1D4BFF81C5B9AA1FCA81DF8DE64F
+
+I=274
+KEY=C1F886CBCBF2BD920A0E68F30FCB8FCE80266083F25A1A07C16917E226136F15
+PT=7E8B1D4BFF81C5B9AA1FCA81DF8DE64F
+CT=20841B35C77A109B528A1135E17D36EE
+
+I=275
+KEY=F05D61A9441B3C741D9D7489F2EE4A5EA0A27BB635200A9C93E306D7C76E59FB
+PT=20841B35C77A109B528A1135E17D36EE
+CT=C3195DC001FA1AD7C253DD3FE4A4BC7D
+
+I=276
+KEY=0C8E70943252DD5DC9819A9FDB375B3F63BB267634DA104B51B0DBE823CAE586
+PT=C3195DC001FA1AD7C253DD3FE4A4BC7D
+CT=7E06BD1B3440DB4CA73AF1A05B33AD3F
+
+I=277
+KEY=84F1B5CF1AD11205E98ECD317AD670A11DBD9B6D009ACB07F68A2A4878F948B9
+PT=7E06BD1B3440DB4CA73AF1A05B33AD3F
+CT=6224DBD71C1DC35A5C62777D2EA32C3E
+
+I=278
+KEY=E3465353AED687EF62CD1DA8D7DA3EEB7F9940BA1C87085DAAE85D35565A6487
+PT=6224DBD71C1DC35A5C62777D2EA32C3E
+CT=1E4E51CD7BA1F7467AC69755F8894EF4
+
+I=279
+KEY=31F715D1FFA116F58AB70E4A3EEF6E9561D711776726FF1BD02ECA60AED32A73
+PT=1E4E51CD7BA1F7467AC69755F8894EF4
+CT=4AB8AFEACB2A1B1AE9E74D647266E234
+
+I=280
+KEY=487B6847CA14B04D429C81278332273F2B6FBE9DAC0CE40139C98704DCB5C847
+PT=4AB8AFEACB2A1B1AE9E74D647266E234
+CT=64C0BBA15382C142BBEE84B86B7D0BA0
+
+I=281
+KEY=D1C9CA26B21945011B044EA6E29C9AD54FAF053CFF8E2543822703BCB7C8C3E7
+PT=64C0BBA15382C142BBEE84B86B7D0BA0
+CT=F82292AF614648EC6C1E9A1027167410
+
+I=282
+KEY=3F585C00E187BE1B0C9E09781C9548A8B78D97939EC86DAFEE3999AC90DEB7F7
+PT=F82292AF614648EC6C1E9A1027167410
+CT=31C38ED5F207B412A14A51632D8805CE
+
+I=283
+KEY=340B8C115BAFF387400CD8F0EE8F8F6F864E19466CCFD9BD4F73C8CFBD56B239
+PT=31C38ED5F207B412A14A51632D8805CE
+CT=3FC4CC8F4245BBBC5939A0C0A24A14DE
+
+I=284
+KEY=EA8EACF07402225D6C5181A8802DA515B98AD5C92E8A6201164A680F1F1CA6E7
+PT=3FC4CC8F4245BBBC5939A0C0A24A14DE
+CT=23A98FA41D6C3D4CD9CFB9737A6D7872
+
+I=285
+KEY=56EF7B73BF04F5F463E4D0EA0F6FC4DA9A235A6D33E65F4DCF85D17C6571DE95
+PT=23A98FA41D6C3D4CD9CFB9737A6D7872
+CT=82CC2D376B2772B7B988BEA17EFBB3D2
+
+I=286
+KEY=C425E380DA91C34B73CE922C59B13C8818EF775A58C12DFA760D6FDD1B8A6D47
+PT=82CC2D376B2772B7B988BEA17EFBB3D2
+CT=5330F6218D528A32B24085EA496A05A9
+
+I=287
+KEY=EA66C7FF9FCD2F9E76BCC5C6387E133E4BDF817BD593A7C8C44DEA3752E068EE
+PT=5330F6218D528A32B24085EA496A05A9
+CT=7C1E082C2C89C90AD91AE81DF73F1F5F
+
+I=288
+KEY=C89CF336490832FB54BB536813AEE6EA37C18957F91A6EC21D57022AA5DF77B1
+PT=7C1E082C2C89C90AD91AE81DF73F1F5F
+CT=2AB33673B654E2C49D6736D65A5F45C8
+
+I=289
+KEY=7CC5409A9AE1F997774C3FEB74A6E9061D72BF244F4E8C06803034FCFF803279
+PT=2AB33673B654E2C49D6736D65A5F45C8
+CT=21BA6CADDCA5E0BE779D1A2651794C81
+
+I=290
+KEY=E5E1873FDEE9DC066AF79C0E6027D0703CC8D38993EB6CB8F7AD2EDAAEF97EF8
+PT=21BA6CADDCA5E0BE779D1A2651794C81
+CT=8E2AF8BA54CF04812AE786C180FCFCA8
+
+I=291
+KEY=844AA67914DE1C11677B5526D5B12765B2E22B33C7246839DD4AA81B2E058250
+PT=8E2AF8BA54CF04812AE786C180FCFCA8
+CT=E48A7CD35CA33B1D919B8A83ADF4C6BE
+
+I=292
+KEY=FE3248768ACB0AF9DBD639AF7B7EB944566857E09B8753244CD1229883F144EE
+PT=E48A7CD35CA33B1D919B8A83ADF4C6BE
+CT=C377A76CF43C27784CC54079744413D1
+
+I=293
+KEY=709E7BC30A7DE8FADC071B3D04338FCA951FF08C6FBB745C001462E1F7B5573F
+PT=C377A76CF43C27784CC54079744413D1
+CT=01D8083A9EA403A4754EF82CA29CDD5B
+
+I=294
+KEY=448B1AEC2F68D202679183D85C4A6D2194C7F8B6F11F77F8755A9ACD55298A64
+PT=01D8083A9EA403A4754EF82CA29CDD5B
+CT=46ADC32EFF2C3EFF40B468E845EFC2E4
+
+I=295
+KEY=529401616FA6193014D6A10BEF1A816FD26A3B980E33490735EEF22510C64880
+PT=46ADC32EFF2C3EFF40B468E845EFC2E4
+CT=FCC6594B1BBF40E28BE798ABC00163F1
+
+I=296
+KEY=15A5E8BAF02EF91390AB7D35742CC5C12EAC62D3158C09E5BE096A8ED0C72B71
+PT=FCC6594B1BBF40E28BE798ABC00163F1
+CT=28D35B6E1140738ED1DF20FE11003B1E
+
+I=297
+KEY=589C04ECDF2B884807919A2018A93080067F39BD04CC7A6B6FD64A70C1C7106F
+PT=28D35B6E1140738ED1DF20FE11003B1E
+CT=3354C7962E19FB043FD4CD7B2C99E195
+
+I=298
+KEY=A6987BEB541098C7173475B34568F36B352BFE2B2AD5816F5002870BED5EF1FA
+PT=3354C7962E19FB043FD4CD7B2C99E195
+CT=EB76F282C9F10F507FACFCDEEC8BBBB8
+
+I=299
+KEY=3732B395057761A8A2624F52354668CFDE5D0CA9E3248E3F2FAE7BD501D54A42
+PT=EB76F282C9F10F507FACFCDEEC8BBBB8
+CT=77A4DAE8406992C5018D6B0310195E0C
+
+I=300
+KEY=E24C9F98F43E840AE04ED4928133F65AA9F9D641A34D1CFA2E2310D611CC144E
+PT=77A4DAE8406992C5018D6B0310195E0C
+CT=655DEC1062EDB50B8B31A66071E236A2
+
+I=301
+KEY=8BA207CA6E2B720810E66CCAB597E8DACCA43A51C1A0A9F1A512B6B6602E22EC
+PT=655DEC1062EDB50B8B31A66071E236A2
+CT=28A22A069D8FF3DE359860B0A5B6FD1F
+
+I=302
+KEY=22C629C84758D553AFE4876AA739A1F0E40610575C2F5A2F908AD606C598DFF3
+PT=28A22A069D8FF3DE359860B0A5B6FD1F
+CT=95DD88B4AFD0680E221C70422ADFFCD1
+
+I=303
+KEY=F86A3C799AAB6884220196BF07E1643D71DB98E3F3FF3221B296A644EF472322
+PT=95DD88B4AFD0680E221C70422ADFFCD1
+CT=323475C634FD6845BAA9F371F29DC363
+
+I=304
+KEY=83412E9600B279F76C93F171C469AD1943EFED25C7025A64083F55351DDAE041
+PT=323475C634FD6845BAA9F371F29DC363
+CT=61276AD535F9E73FCFB53DBF2D5D1F62
+
+I=305
+KEY=01AD15137C4A572322660716B6B4EDCD22C887F0F2FBBD5BC78A688A3087FF23
+PT=61276AD535F9E73FCFB53DBF2D5D1F62
+CT=105ECB04A5CA32FC93987569A7CB46D7
+
+I=306
+KEY=1CC639BA56CA0DF23E64BB3395C08BB332964CF457318FA754121DE3974CB9F4
+PT=105ECB04A5CA32FC93987569A7CB46D7
+CT=831DBB3F4BBD4343B94D54AA2B3E0620
+
+I=307
+KEY=25ABCF5B8DB1A7CCB1FA49936E0AB3C8B18BF7CB1C8CCCE4ED5F4949BC72BFD4
+PT=831DBB3F4BBD4343B94D54AA2B3E0620
+CT=40B9D9C6201E639DC9A04E500BCD7F61
+
+I=308
+KEY=75B34E0F371C4527732F22CF35AD923BF1322E0D3C92AF7924FF0719B7BFC0B5
+PT=40B9D9C6201E639DC9A04E500BCD7F61
+CT=A159BB0C751148C14D561E0407A9F6DB
+
+I=309
+KEY=1EB6E3491B431B7EFFCCC965C9041274506B95014983E7B869A9191DB016366E
+PT=A159BB0C751148C14D561E0407A9F6DB
+CT=2012E67815334AC48E5309DD129E0476
+
+I=310
+KEY=F0BDAFB216613A6FB3819D08B17EFDC1707973795CB0AD7CE7FA10C0A2883218
+PT=2012E67815334AC48E5309DD129E0476
+CT=53E415BC0C9013F83B77298395FC9FEF
+
+I=311
+KEY=9C5A3B9C862E07159AB06D5B7FB585C5239D66C55020BE84DC8D39433774ADF7
+PT=53E415BC0C9013F83B77298395FC9FEF
+CT=2B1EEAA13373494A2A56C15FD5ECA103
+
+I=312
+KEY=9764AC349B8222394160F4896BA6761808838C646353F7CEF6DBF81CE2980CF4
+PT=2B1EEAA13373494A2A56C15FD5ECA103
+CT=2A00E873782853DC842427A03C30A81A
+
+I=313
+KEY=42A1614569C4DE66D6336BC082B3B9DD228364171B7BA41272FFDFBCDEA8A4EE
+PT=2A00E873782853DC842427A03C30A81A
+CT=5FEB74E489C4C8121A15C2BCF51046A5
+
+I=314
+KEY=CED80BE0859A5863CFE41F0F2CE9F65B7D6810F392BF6C0068EA1D002BB8E24B
+PT=5FEB74E489C4C8121A15C2BCF51046A5
+CT=948214D5DB68997C37A48927AA97B89A
+
+I=315
+KEY=178DAF533EBB695D5E57401E5345C3E8E9EA042649D7F57C5F4E9427812F5AD1
+PT=948214D5DB68997C37A48927AA97B89A
+CT=AB8F3BB9917E4D1C8F1F2EDDB7070530
+
+I=316
+KEY=66F4B8B5A0BD877514FDB4CD2DD04D8C42653F9FD8A9B860D051BAFA36285FE1
+PT=AB8F3BB9917E4D1C8F1F2EDDB7070530
+CT=CB5FB11C6DB1AB6BC189F0F3FB47A2A5
+
+I=317
+KEY=9753278CFCEE8B059ECF573A2E0D65D6893A8E83B518130B11D84A09CD6FFD44
+PT=CB5FB11C6DB1AB6BC189F0F3FB47A2A5
+CT=F0CE65E6C5C263182E6C253F26460A1B
+
+I=318
+KEY=121A860A5B53C56E536DE56566F31E2079F4EB6570DA70133FB46F36EB29F75F
+PT=F0CE65E6C5C263182E6C253F26460A1B
+CT=9AA17B0F532814CA74FF0A046F377C48
+
+I=319
+KEY=88F5E58E9522495BF7B68430946F7C0FE355906A23F264D94B4B6532841E8B17
+PT=9AA17B0F532814CA74FF0A046F377C48
+CT=52CAAEF16E55858487AEDBDBA822002D
+
+I=320
+KEY=D9A3D3547F215D44D80C6A5D3548D4D2B19F3E9B4DA7E15DCCE5BEE92C3C8B3A
+PT=52CAAEF16E55858487AEDBDBA822002D
+CT=2599545FD15C7F59A6F02CDCB95E6589
+
+I=321
+KEY=6ACE86543B0F981C2D0FCB1408A42C3294066AC49CFB9E046A1592359562EEB3
+PT=2599545FD15C7F59A6F02CDCB95E6589
+CT=DC7A68313CE3E1963D31E5149CDBE22A
+
+I=322
+KEY=E9D6D08194DAFBB7B491124515118FA6487C02F5A0187F925724772109B90C99
+PT=DC7A68313CE3E1963D31E5149CDBE22A
+CT=333B588A7354CB3229E43780AFE4738D
+
+I=323
+KEY=762FC93CEED1EE9C6EF702A4E3BBABD67B475A7FD34CB4A07EC040A1A65D7F14
+PT=333B588A7354CB3229E43780AFE4738D
+CT=41727DC0D18725AFD2EF8FF51EAE1C2C
+
+I=324
+KEY=FF4EC1DF818E820424CFE5D09EE2E5423A3527BF02CB910FAC2FCF54B8F36338
+PT=41727DC0D18725AFD2EF8FF51EAE1C2C
+CT=A7236B16D9937C84F37BF9D79D0251F9
+
+I=325
+KEY=59BDAB706DEA2EC52AE05A2E4382A4169D164CA9DB58ED8B5F54368325F132C1
+PT=A7236B16D9937C84F37BF9D79D0251F9
+CT=B81D30EFDB86688F1DCA616EC771B9FD
+
+I=326
+KEY=4C008516CD614B6588A526FFE33C055B250B7C4600DE8504429E57EDE2808B3C
+PT=B81D30EFDB86688F1DCA616EC771B9FD
+CT=A5AD142C8F078ABF419B7CF5C86C9F83
+
+I=327
+KEY=DB65698F99E4A27019ABE194A89E9BC680A6686A8FD90FBB03052B182AEC14BF
+PT=A5AD142C8F078ABF419B7CF5C86C9F83
+CT=861B59E3B61A5D02F0D70DFF40EF7FF2
+
+I=328
+KEY=0790C16C53A7826B4B309DDF99B5239006BD318939C352B9F3D226E76A036B4D
+PT=861B59E3B61A5D02F0D70DFF40EF7FF2
+CT=B0F4C2C4D0D282BE3128AD78D34B1FA6
+
+I=329
+KEY=AFE168F089E676A806DD191003777E6DB649F34DE911D007C2FA8B9FB94874EB
+PT=B0F4C2C4D0D282BE3128AD78D34B1FA6
+CT=9DFCF5727851ADE8C37A9AA3AA77B20D
+
+I=330
+KEY=F261CDF199D9EF436C1A08EB9755A2112BB5063F91407DEF0180113C133FC6E6
+PT=9DFCF5727851ADE8C37A9AA3AA77B20D
+CT=9268DBA972B72C9DEF15CF9B8041F23B
+
+I=331
+KEY=E0D6DCF3BA840720688456A43E849C5CB9DDDD96E3F75172EE95DEA7937E34DD
+PT=9268DBA972B72C9DEF15CF9B8041F23B
+CT=D45A8B321CB6D8F28167C857BC2900BF
+
+I=332
+KEY=B77CF3A880C2E9E66D0C98A4D88555F46D8756A4FF4189806FF216F02F573462
+PT=D45A8B321CB6D8F28167C857BC2900BF
+CT=0124FE2D8BCB81E1286A18D2BABEA919
+
+I=333
+KEY=7729E55EFA6B249E0207E06AAF6F09206CA3A889748A086147980E2295E99D7B
+PT=0124FE2D8BCB81E1286A18D2BABEA919
+CT=A1BB0D975A50BE8BD8C2973D4BA7BF42
+
+I=334
+KEY=102384784C54539084BC7181AA95F184CD18A51E2EDAB6EA9F5A991FDE4E2239
+PT=A1BB0D975A50BE8BD8C2973D4BA7BF42
+CT=15302D5DBFD8E407EADDE9896B42CB13
+
+I=335
+KEY=9FF48EF1068BFC07DA38F7790D7418D2D8288843910252ED75877096B50CE92A
+PT=15302D5DBFD8E407EADDE9896B42CB13
+CT=90D93B8F802CFAD3F6E682DD704B5F43
+
+I=336
+KEY=84477EB9007ECDF8D1C4A6A976C76AB848F1B3CC112EA83E8361F24BC547B669
+PT=90D93B8F802CFAD3F6E682DD704B5F43
+CT=2DD7E0B91C5DDF0FD118F4CDD836A212
+
+I=337
+KEY=F1CE87DE930567CE29DF313D8778358D652653750D737731527906861D71147B
+PT=2DD7E0B91C5DDF0FD118F4CDD836A212
+CT=AC9D307EFF44703D6FDA621FFF8D077C
+
+I=338
+KEY=22D31C8F64CFB23620A70E7CD4A486D3C9BB630BF237070C3DA36499E2FC1307
+PT=AC9D307EFF44703D6FDA621FFF8D077C
+CT=CC6772DE3B27CB1DB3E5A804843EB6FF
+
+I=339
+KEY=FC9057D2D2D28BFAC4D5E3654717188205DC11D5C910CC118E46CC9D66C2A5F8
+PT=CC6772DE3B27CB1DB3E5A804843EB6FF
+CT=BDB021550FE0744090EAFEEBCF422061
+
+I=340
+KEY=1EA032190E7E4CC45D2E1E138429658AB86C3080C6F0B8511EAC3276A9808599
+PT=BDB021550FE0744090EAFEEBCF422061
+CT=C6E21F9A1305C3969F2D70C11D58A1A7
+
+I=341
+KEY=B633EDA212B952785755700FBDC91CA57E8E2F1AD5F57BC7818142B7B4D8243E
+PT=C6E21F9A1305C3969F2D70C11D58A1A7
+CT=01BC936B7063CA9D28DB1FFCCB9C2048
+
+I=342
+KEY=94A06984520AB40D74568F0D5286AEE37F32BC71A596B15AA95A5D4B7F440476
+PT=01BC936B7063CA9D28DB1FFCCB9C2048
+CT=88279D100DFA68CEBD9949F19C3333F4
+
+I=343
+KEY=96A3BD621155F71A9EFB8E35F95238ACF7152161A86CD99414C314BAE3773782
+PT=88279D100DFA68CEBD9949F19C3333F4
+CT=41574A686596D4741BF5DE52B5183260
+
+I=344
+KEY=185312E4301E5AADC373CEB3EBA66FB7B6426B09CDFA0DE00F36CAE8566F05E2
+PT=41574A686596D4741BF5DE52B5183260
+CT=BD9F5087C32A66A4797C7EE87355FF4A
+
+I=345
+KEY=BC5D60D256DCA48E88E52F05C349431A0BDD3B8E0ED06B44764AB400253AFAA8
+PT=BD9F5087C32A66A4797C7EE87355FF4A
+CT=A88BC3FAF87D6C1D3F98A2884EF1D4DA
+
+I=346
+KEY=1485A9209167A6FA2ECD2CE6AA03DBA5A356F874F6AD075949D216886BCB2E72
+PT=A88BC3FAF87D6C1D3F98A2884EF1D4DA
+CT=E514E6E34A050EB917F2382EDF92353A
+
+I=347
+KEY=2B62B0E29763FF09F53A2006B990E97746421E97BCA809E05E202EA6B4591B48
+PT=E514E6E34A050EB917F2382EDF92353A
+CT=142EEBE72E0F56ABE5D67FCC28F957F6
+
+I=348
+KEY=FC13067E362B7C9C39AA73B85F32011C526CF57092A75F4BBBF6516A9CA04CBE
+PT=142EEBE72E0F56ABE5D67FCC28F957F6
+CT=24FDB7A03FE8A9288BFAA5AC2527D015
+
+I=349
+KEY=8AC3B473244989EA74025FE98269BC17769142D0AD4FF663300CF4C6B9879CAB
+PT=24FDB7A03FE8A9288BFAA5AC2527D015
+CT=649095ABA5F4006B7B89D20F10A37AE9
+
+I=350
+KEY=FD0F4205DBFF0160203898EF02E9088E1201D77B08BBF6084B8526C9A924E642
+PT=649095ABA5F4006B7B89D20F10A37AE9
+CT=F5428E8BDDDC31FC8EF67BC7DB3201D3
+
+I=351
+KEY=701AF95194FB0918BC2CA79AFD507336E74359F0D567C7F4C5735D0E7216E791
+PT=F5428E8BDDDC31FC8EF67BC7DB3201D3
+CT=A56B2014A4929373DC1F6FD5C0AC138C
+
+I=352
+KEY=633D0E72722E6443D4E219086D221939422879E471F55487196C32DBB2BAF41D
+PT=A56B2014A4929373DC1F6FD5C0AC138C
+CT=F35F9CD43144B358843A48B4D1C41882
+
+I=353
+KEY=DCA79BA0184EC0A22A875E5057CA967AB177E53040B1E7DF9D567A6F637EEC9F
+PT=F35F9CD43144B358843A48B4D1C41882
+CT=A572C1F98330A1C1FA91DFD5A5B76AB9
+
+I=354
+KEY=A3D0FE4C3C1A1CE19CF66CF80135553D140524C9C381461E67C7A5BAC6C98626
+PT=A572C1F98330A1C1FA91DFD5A5B76AB9
+CT=23C56E065427F0409504053DD8A994CD
+
+I=355
+KEY=175C8D4085802768D20875CDBE6EFE2437C04ACF97A6B65EF2C3A0871E6012EB
+PT=23C56E065427F0409504053DD8A994CD
+CT=7E666724C1CAC0A582325381E9C98D73
+
+I=356
+KEY=800EE65CA3DE8643371DA10FB0605AB649A62DEB566C76FB70F1F306F7A99F98
+PT=7E666724C1CAC0A582325381E9C98D73
+CT=B6C18D730A074196884CADF151CAC890
+
+I=357
+KEY=F526E578E8978822944644B146154425FF67A0985C6B376DF8BD5EF7A6635708
+PT=B6C18D730A074196884CADF151CAC890
+CT=0068BB370419CD39748559C2DE206817
+
+I=358
+KEY=7D144850BE03306F41A642442890EA20FF0F1BAF5872FA548C38073578433F1F
+PT=0068BB370419CD39748559C2DE206817
+CT=56852D240F01729C4EAD0B1FFC3EDA1F
+
+I=359
+KEY=33B2189E3774B1A066BE522C07550F88A98A368B577388C8C2950C2A847DE500
+PT=56852D240F01729C4EAD0B1FFC3EDA1F
+CT=458633A84E1F5737E9668A37388CF3C2
+
+I=360
+KEY=CF53C76250347B0CC5CAC660D52199B1EC0C0523196CDFFF2BF3861DBCF116C2
+PT=458633A84E1F5737E9668A37388CF3C2
+CT=F96E181E03350F27106C8D24403A49DD
+
+I=361
+KEY=618676C1702531077565060B5DA0570B15621D3D1A59D0D83B9F0B39FCCB5F1F
+PT=F96E181E03350F27106C8D24403A49DD
+CT=B515584E252F703A4EB55E81EDA58E30
+
+I=362
+KEY=D2C8CF9645CD741F67263845150FE649A07745733F76A0E2752A55B8116ED12F
+PT=B515584E252F703A4EB55E81EDA58E30
+CT=54E7D10C236785AFE0A93B3971D6F237
+
+I=363
+KEY=D0847F41C7940023491C2F83D02F8271F490947F1C11254D95836E8160B82318
+PT=54E7D10C236785AFE0A93B3971D6F237
+CT=937DFDE10E96030A0A8823EA3EF31B98
+
+I=364
+KEY=17502FC3077EFD420D2268CE0FF26F4667ED699E128726479F0B4D6B5E4B3880
+PT=937DFDE10E96030A0A8823EA3EF31B98
+CT=93FDF0392A3391C74DBE4229792C9630
+
+I=365
+KEY=4D6AA08A6C7EB7CA9CBE7AF4500C229EF41099A738B4B780D2B50F422767AEB0
+PT=93FDF0392A3391C74DBE4229792C9630
+CT=B9F80E1476658E6CE7FADBA215298958
+
+I=366
+KEY=D8820A50934290C146AFE477D9D4A0224DE897B34ED139EC354FD4E0324E27E8
+PT=B9F80E1476658E6CE7FADBA215298958
+CT=87ACDCD1F1332B9961CC5E18F9009A39
+
+I=367
+KEY=50E8959452DD52247A6F21A0C7BEDEB8CA444B62BFE2127554838AF8CB4EBDD1
+PT=87ACDCD1F1332B9961CC5E18F9009A39
+CT=3DD6249971FEC0FB4432236078D98D53
+
+I=368
+KEY=7A1973C5B90748596A54C709D1598DA5F7926FFBCE1CD28E10B1A998B3973082
+PT=3DD6249971FEC0FB4432236078D98D53
+CT=D540F8BDE3442D17E88B524D00618309
+
+I=369
+KEY=F9C08719A452CA931A62C5BD8F1D669D22D297462D58FF99F83AFBD5B3F6B38B
+PT=D540F8BDE3442D17E88B524D00618309
+CT=7BB18B2DA9ED188BCE3B18C02C9B3F3B
+
+I=370
+KEY=5EBA35F7E58381DBE29EC4A1D9B5B9AD59631C6B84B5E7123601E3159F6D8CB0
+PT=7BB18B2DA9ED188BCE3B18C02C9B3F3B
+CT=9A7380BAA169495B0FC29BB002D70E48
+
+I=371
+KEY=E442442FE32FA6BDA63AF0A6AC5D5AB2C3109CD125DCAE4939C378A59DBA82F8
+PT=9A7380BAA169495B0FC29BB002D70E48
+CT=88F3FE65298F7498A788E4196F13FC80
+
+I=372
+KEY=39079A8713E148703212A6F7FFD1B04D4BE362B40C53DAD19E4B9CBCF2A97E78
+PT=88F3FE65298F7498A788E4196F13FC80
+CT=A5E6361FBA6418CD9B2F50992B50A557
+
+I=373
+KEY=A99A33F38B36E3EE4DEE59F8A4282A84EE0554ABB637C21C0564CC25D9F9DB2F
+PT=A5E6361FBA6418CD9B2F50992B50A557
+CT=B1430F431ACC1C498FABF2D33B63CC67
+
+I=374
+KEY=BC09FAC540F44949F3B8EDFE2444CA725F465BE8ACFBDE558ACF3EF6E29A1748
+PT=B1430F431ACC1C498FABF2D33B63CC67
+CT=A90D76642D8D7899DD4A85EB92C89382
+
+I=375
+KEY=D26C1D07B51073C609030DC782FFAE93F64B2D8C8176A6CC5785BB1D705284CA
+PT=A90D76642D8D7899DD4A85EB92C89382
+CT=57522F39211100EF248D4A34E35CE4CE
+
+I=376
+KEY=2D7ADCD18F615F814B8D8B07CE48B4A1A11902B5A067A6237308F129930E6004
+PT=57522F39211100EF248D4A34E35CE4CE
+CT=87AED1E0C9F067C5F3F6D3D3BBCDE872
+
+I=377
+KEY=CA206C3442FAEFF3CB1292C675F52C2426B7D3556997C1E680FE22FA28C38876
+PT=87AED1E0C9F067C5F3F6D3D3BBCDE872
+CT=05798F53DFAE4A78D7BEEC24BE775B55
+
+I=378
+KEY=6ECC5BC346B18446D77FFBC44CCB0B1823CE5C06B6398B9E5740CEDE96B4D323
+PT=05798F53DFAE4A78D7BEEC24BE775B55
+CT=7677CE104395FFA15B51F81DAFBCAB1A
+
+I=379
+KEY=2E52C8E239CF1E959AB831307034FEF755B99216F5AC743F0C1136C339087839
+PT=7677CE104395FFA15B51F81DAFBCAB1A
+CT=760DE53561246F944B3E6279B39373F1
+
+I=380
+KEY=79B65B7D435E2134A1AB9A1CC1F08A8423B4772394881BAB472F54BA8A9B0BC8
+PT=760DE53561246F944B3E6279B39373F1
+CT=5B61CC978A9C808767C272432765EC0B
+
+I=381
+KEY=9EF57B89E7B8127348A9EF05E93DCC8D78D5BBB41E149B2C20ED26F9ADFEE7C3
+PT=5B61CC978A9C808767C272432765EC0B
+CT=902CDF3BD5E869E9CCFF8F2A454E1D42
+
+I=382
+KEY=15BB7B6BC685E4865BFA134C59CFC9C5E8F9648FCBFCF2C5EC12A9D3E8B0FA81
+PT=902CDF3BD5E869E9CCFF8F2A454E1D42
+CT=38264937B9372C316478BDF7AE578900
+
+I=383
+KEY=735D93C1DDD54986ACC6C2B0DFCC5E8AD0DF2DB872CBDEF4886A142446E77381
+PT=38264937B9372C316478BDF7AE578900
+CT=3BFE31D3E909E6EC3112F88DB8FFCA45
+
+I=384
+KEY=675B0E7FC5BCC3AF319B1D55C1F62CCAEB211C6B9BC23818B978ECA9FE18B9C4
+PT=3BFE31D3E909E6EC3112F88DB8FFCA45
+CT=2BFD5F6532BC1D2A8DA34481F9228B84
+
+I=385
+KEY=0AB242F9783E75D04E98733E63458F53C0DC430EA97E253234DBA828073A3240
+PT=2BFD5F6532BC1D2A8DA34481F9228B84
+CT=161481003108BAEFCC02BFD335C6A89F
+
+I=386
+KEY=58457CB82A24222839CF20D837F168A8D6C8C20E98769FDDF8D917FB32FC9ADF
+PT=161481003108BAEFCC02BFD335C6A89F
+CT=8A50E98A1165C1B6137231E519EC137B
+
+I=387
+KEY=C2C52CEA5654AAC9BD60FA04068094EF5C982B8489135E6BEBAB261E2B1089A4
+PT=8A50E98A1165C1B6137231E519EC137B
+CT=24ACAA0F045F5A6765D3B468550585B5
+
+I=388
+KEY=816757A434D81AA348E0B2F4FC44F4387834818B8D4C040C8E7892767E150C11
+PT=24ACAA0F045F5A6765D3B468550585B5
+CT=9993F9CBDAD9CA98C74CCBDB3E079F50
+
+I=389
+KEY=647A9F1E43B08FD15EFC17342EB8970AE1A778405795CE94493459AD40129341
+PT=9993F9CBDAD9CA98C74CCBDB3E079F50
+CT=F676785AEF58297C28035E8E065829FF
+
+I=390
+KEY=4BB8B5020862EA9228B663DEDB39336717D1001AB8CDE7E861370723464ABABE
+PT=F676785AEF58297C28035E8E065829FF
+CT=ED16C74BD4252F7B72AA37D11E198508
+
+I=391
+KEY=5392AAED87CE40891A69F4690A8743FBFAC7C7516CE8C893139D30F258533FB6
+PT=ED16C74BD4252F7B72AA37D11E198508
+CT=3BE7B6A9E197598146E98B7A501A2226
+
+I=392
+KEY=9D8BABE9C12E6BA3A18EB23A92205456C12071F88D7F91125574BB8808491D90
+PT=3BE7B6A9E197598146E98B7A501A2226
+CT=CC1163A3D9AF3307ED740591AB66BD81
+
+I=393
+KEY=231B451E506AC98FF993A3C7AD9C37F70D31125B54D0A215B800BE19A32FA011
+PT=CC1163A3D9AF3307ED740591AB66BD81
+CT=43FB8B2B44C740956111DA816616771D
+
+I=394
+KEY=1699C517EE1713D02C6EA0957E4A00CE4ECA99701017E280D9116498C539D70C
+PT=43FB8B2B44C740956111DA816616771D
+CT=A511AEA01DB8E7E16E7C53931625BEC3
+
+I=395
+KEY=2624CE7970CC5DAFAC73C881FDD5F6EBEBDB37D00DAF0561B76D370BD31C69CF
+PT=A511AEA01DB8E7E16E7C53931625BEC3
+CT=82EF6D2A1FF1DBCDF39DC04BE523229F
+
+I=396
+KEY=60C9931E19ED0D095F8DF75AEA56689769345AFA125EDEAC44F0F740363F4B50
+PT=82EF6D2A1FF1DBCDF39DC04BE523229F
+CT=A595C8AAAAAD80DD4F40693FF2D89A19
+
+I=397
+KEY=D461E3605B0AD0E87F5A078ECFE25934CCA19250B8F35E710BB09E7FC4E7D149
+PT=A595C8AAAAAD80DD4F40693FF2D89A19
+CT=57B18DFEAD129795C3BB8D6C06764729
+
+I=398
+KEY=0BE3FC6C21764F1C15782D52D92919A09B101FAE15E1C9E4C80B1313C2919660
+PT=57B18DFEAD129795C3BB8D6C06764729
+CT=6F8606BBA6CC03A5D0A64FE21E277B60
+
+I=399
+KEY=982D617A0F737342E99123A5A573D266F4961915B32DCA4118AD5CF1DCB6ED00
+PT=6F8606BBA6CC03A5D0A64FE21E277B60
+CT=1F6763DF807A7E70960D4CD3118E601A
+
+==========
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_iv.readme	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,19 @@
+Description of the Intermediate Value Known Answer Test
+--------------------------------------------------------
+
+The test encrypts one plaintext with a variable number of rounds.
+In ECB encryption mode, the output PTi is the output after the 
+initial key addition and i rounds (a round ends with a key
+addition). 
+
+As explained in the documentation, in ECB decryption mode 
+there are several definitions of a `round' possible. In order
+to make visual inspection more intuitive, we output the
+intermediate values that correspond with the output of the
+encryption mode. 
+These values might actually not occur in a practical decryption,
+especially in an optimised implementation, where various operations
+of different rounds are interchanged.
+
+This explains also why the Java and the C code output different
+files for this test.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_iv.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,123 @@
+
+=========================
+
+FILENAME:  "ecb_iv.txt"
+
+Electronic Codebook (ECB) Mode
+Intermediate Value Known Answer Tests
+
+Algorithm Name: Rijndael
+Principal Submitter: Joan Daemen
+
+==========
+
+KEYSIZE=128
+KEY=000102030405060708090A0B0C0D0E0F
+
+Intermediate Ciphertext Values (Encryption)
+
+PT=000102030405060708090A0B0C0D0E0F
+CT1=B5C9179EB1CC1199B9C51B92B5C8159D
+CT2=2B65F6374C427C5B2FE3A9256896755B
+CT3=D1015FCBB4EF65679688462076B9D6AD
+CT4=8E17064A2A35A183729FE59FF3A591F1
+CT5=D7557DD55999DB3259E2183D558DCDD2
+CT6=73A96A5D7799A5F3111D2B63684B1F7F
+CT7=1B6B853069EEFC749AFEFD7B57A04CD1
+CT8=107EEADFB6F77933B5457A6F08F046B2
+CT9=8EC166481A677AA96A14FF6ECE88C010
+CT=0A940BB5416EF045F1C39458C653EA5A
+
+Intermediate Ciphertext Values (Decryption)
+
+CT=0A940BB5416EF045F1C39458C653EA5A
+PT1=8EC166481A677AA96A14FF6ECE88C010
+PT2=107EEADFB6F77933B5457A6F08F046B2
+PT3=1B6B853069EEFC749AFEFD7B57A04CD1
+PT4=73A96A5D7799A5F3111D2B63684B1F7F
+PT5=D7557DD55999DB3259E2183D558DCDD2
+PT6=8E17064A2A35A183729FE59FF3A591F1
+PT7=D1015FCBB4EF65679688462076B9D6AD
+PT8=2B65F6374C427C5B2FE3A9256896755B
+PT9=B5C9179EB1CC1199B9C51B92B5C8159D
+PT=000102030405060708090A0B0C0D0E0F
+
+==========
+
+KEYSIZE=192
+KEY=000102030405060708090A0B0C0D0E0F1011121314151617
+
+Intermediate Ciphertext Values (Encryption)
+
+PT=000102030405060708090A0B0C0D0E0F
+CT1=73727170777675743B25919A3F20979D
+CT2=C673B27A311EC2EB64AD47FF53B233D7
+CT3=0B5CC6BA34C807E6496D79B46826A1E8
+CT4=005B53A5B660E280307883487E4D1A4D
+CT5=88A105F0DDD45F3674DBC3DE1A211B03
+CT6=EB5CD8B5FD8A3F33F03A70FB5C620C06
+CT7=909913B09BD2CC5A70B6C647931F0A1F
+CT8=6EB6CA10E395AFD646B02C5E9E745A9F
+CT9=2CFD2FC41AF82B8DFB80E9BD1C989ECE
+CT10=31C5D5E27EAF073E5C21ADAAEAA969D4
+CT11=1DB94956A7268B0DE963D27E55868580
+CT=0060BFFE46834BB8DA5CF9A61FF220AE
+
+Intermediate Ciphertext Values (Decryption)
+
+CT=0060BFFE46834BB8DA5CF9A61FF220AE
+PT1=1DB94956A7268B0DE963D27E55868580
+PT2=31C5D5E27EAF073E5C21ADAAEAA969D4
+PT3=2CFD2FC41AF82B8DFB80E9BD1C989ECE
+PT4=6EB6CA10E395AFD646B02C5E9E745A9F
+PT5=909913B09BD2CC5A70B6C647931F0A1F
+PT6=EB5CD8B5FD8A3F33F03A70FB5C620C06
+PT7=88A105F0DDD45F3674DBC3DE1A211B03
+PT8=005B53A5B660E280307883487E4D1A4D
+PT9=0B5CC6BA34C807E6496D79B46826A1E8
+PT10=C673B27A311EC2EB64AD47FF53B233D7
+PT11=73727170777675743B25919A3F20979D
+PT=000102030405060708090A0B0C0D0E0F
+
+==========
+
+KEYSIZE=256
+KEY=000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
+
+Intermediate Ciphertext Values (Encryption)
+
+PT=000102030405060708090A0B0C0D0E0F
+CT1=73727170777675747B7A79787F7E7D7C
+CT2=4E5D32BB8B67FD1BD4CFEC9FFB20AC4F
+CT3=96A212E486341549C4AAF7C843F0277A
+CT4=0F45F284CDD0CB16E3EA81ECC891A4E1
+CT5=E59BFC458A89063E0137BBE6DB63A058
+CT6=1D958D960EA3143383C17D5CD87BA327
+CT7=43843EF40D9219481935B77A586DB5DE
+CT8=5AA5ABADBC40230CBA6124E9FAEEEFB5
+CT9=DAD61937BDFD582927F14C990C5FC761
+CT10=E8A48C5DEE5C0792AB6DFFF5B038529D
+CT11=4B71E5A8BFB4E9A5312A18119E68E829
+CT12=DCBA75CEE6589DDC0D289A172E8415B5
+CT13=8A0E856B2074C1093104131D0628BFE8
+CT=5A6E045708FB7196F02E553D02C3A692
+
+Intermediate Ciphertext Values (Decryption)
+
+CT=5A6E045708FB7196F02E553D02C3A692
+PT1=8A0E856B2074C1093104131D0628BFE8
+PT2=DCBA75CEE6589DDC0D289A172E8415B5
+PT3=4B71E5A8BFB4E9A5312A18119E68E829
+PT4=E8A48C5DEE5C0792AB6DFFF5B038529D
+PT5=DAD61937BDFD582927F14C990C5FC761
+PT6=5AA5ABADBC40230CBA6124E9FAEEEFB5
+PT7=43843EF40D9219481935B77A586DB5DE
+PT8=1D958D960EA3143383C17D5CD87BA327
+PT9=E59BFC458A89063E0137BBE6DB63A058
+PT10=0F45F284CDD0CB16E3EA81ECC891A4E1
+PT11=96A212E486341549C4AAF7C843F0277A
+PT12=4E5D32BB8B67FD1BD4CFEC9FFB20AC4F
+PT13=73727170777675747B7A79787F7E7D7C
+PT=000102030405060708090A0B0C0D0E0F
+
+==========
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_tbl.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,1955 @@
+/* Description of what tables are tested:
+   The provided implementations each use a different set of tables
+    - Java implementation: uses no tables
+    - reference C implementation: uses Logtable, Alogtable, S, Si, rcon
+    - fast C implementation: uses Logtable, Alogtable,  rcon
+        and additionally, T1, T2, T3, T4, T5, T6, T7, T8, 
+	and (for the inverse key schedule only) U1, U2, U3, U4.
+   All these tables are tested.
+
+=========================
+
+FILENAME:  "ecb_tbl.txt"
+
+Electronic Codebook (ECB) Mode
+Tables Known Answer Tests
+
+Algorithm Name: Rijndael
+Principal Submitter: Joan Daemen
+
+==========
+
+KEYSIZE=128
+
+
+I=1
+KEY=00010203050607080A0B0C0D0F101112
+PT=506812A45F08C889B97F5980038B8359
+CT=D8F532538289EF7D06B506A4FD5BE9C9
+
+I=2
+KEY=14151617191A1B1C1E1F202123242526
+PT=5C6D71CA30DE8B8B00549984D2EC7D4B
+CT=59AB30F4D4EE6E4FF9907EF65B1FB68C
+
+I=3
+KEY=28292A2B2D2E2F30323334353738393A
+PT=53F3F4C64F8616E4E7C56199F48F21F6
+CT=BF1ED2FCB2AF3FD41443B56D85025CB1
+
+I=4
+KEY=3C3D3E3F41424344464748494B4C4D4E
+PT=A1EB65A3487165FB0F1C27FF9959F703
+CT=7316632D5C32233EDCB0780560EAE8B2
+
+I=5
+KEY=50515253555657585A5B5C5D5F606162
+PT=3553ECF0B1739558B08E350A98A39BFA
+CT=408C073E3E2538072B72625E68B8364B
+
+I=6
+KEY=64656667696A6B6C6E6F707173747576
+PT=67429969490B9711AE2B01DC497AFDE8
+CT=E1F94DFA776597BEACA262F2F6366FEA
+
+I=7
+KEY=78797A7B7D7E7F80828384858788898A
+PT=93385C1F2AEC8BED192F5A8E161DD508
+CT=F29E986C6A1C27D7B29FFD7EE92B75F1
+
+I=8
+KEY=8C8D8E8F91929394969798999B9C9D9E
+PT=B5BF946BE19BEB8DB3983B5F4C6E8DDB
+CT=131C886A57F8C2E713ABA6955E2B55B5
+
+I=9
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2
+PT=41321EE10E21BD907227C4450FF42324
+CT=D2AB7662DF9B8C740210E5EEB61C199D
+
+I=10
+KEY=B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=00A82F59C91C8486D12C0A80124F6089
+CT=14C10554B2859C484CAB5869BBE7C470
+
+I=11
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA
+PT=7CE0FD076754691B4BBD9FAF8A1372FE
+CT=DB4D498F0A49CF55445D502C1F9AB3B5
+
+I=12
+KEY=DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=23605A8243D07764541BC5AD355B3129
+CT=6D96FEF7D66590A77A77BB2056667F7F
+
+I=13
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE010002
+PT=12A8CFA23EA764FD876232B4E842BC44
+CT=316FB68EDBA736C53E78477BF913725C
+
+I=14
+KEY=04050607090A0B0C0E0F101113141516
+PT=BCAF32415E8308B3723E5FDD853CCC80
+CT=6936F2B93AF8397FD3A771FC011C8C37
+
+I=15
+KEY=2C2D2E2F31323334363738393B3C3D3E
+PT=89AFAE685D801AD747ACE91FC49ADDE0
+CT=F3F92F7A9C59179C1FCC2C2BA0B082CD
+
+I=16
+KEY=40414243454647484A4B4C4D4F505152
+PT=F521D07B484357C4A69E76124A634216
+CT=6A95EA659EE3889158E7A9152FF04EBC
+
+I=17
+KEY=54555657595A5B5C5E5F606163646566
+PT=3E23B3BC065BCC152407E23896D77783
+CT=1959338344E945670678A5D432C90B93
+
+I=18
+KEY=68696A6B6D6E6F70727374757778797A
+PT=79F0FBA002BE1744670E7E99290D8F52
+CT=E49BDDD2369B83EE66E6C75A1161B394
+
+I=19
+KEY=7C7D7E7F81828384868788898B8C8D8E
+PT=DA23FE9D5BD63E1D72E3DAFBE21A6C2A
+CT=D3388F19057FF704B70784164A74867D
+
+I=20
+KEY=A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=E3F5698BA90B6A022EFD7DB2C7E6C823
+CT=23AA03E2D5E4CD24F3217E596480D1E1
+
+I=21
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2
+PT=BDC2691D4F1B73D2700679C3BCBF9C6E
+CT=C84113D68B666AB2A50A8BDB222E91B9
+
+I=22
+KEY=08090A0B0D0E0F10121314151718191A
+PT=BA74E02093217EE1BA1B42BD5624349A
+CT=AC02403981CD4340B507963DB65CB7B6
+
+I=23
+KEY=6C6D6E6F71727374767778797B7C7D7E
+PT=B5C593B5851C57FBF8B3F57715E8F680
+CT=8D1299236223359474011F6BF5088414
+
+I=24
+KEY=80818283858687888A8B8C8D8F909192
+PT=3DA9BD9CEC072381788F9387C3BBF4EE
+CT=5A1D6AB8605505F7977E55B9A54D9B90
+
+I=25
+KEY=94959697999A9B9C9E9FA0A1A3A4A5A6
+PT=4197F3051121702AB65D316B3C637374
+CT=72E9C2D519CF555E4208805AABE3B258
+
+I=26
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA
+PT=9F46C62EC4F6EE3F6E8C62554BC48AB7
+CT=A8F3E81C4A23A39EF4D745DFFE026E80
+
+I=27
+KEY=BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=0220673FE9E699A4EBC8E0DBEB6979C8
+CT=546F646449D31458F9EB4EF5483AEE6C
+
+I=28
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2
+PT=B2B99171337DED9BC8C2C23FF6F18867
+CT=4DBE4BC84AC797C0EE4EFB7F1A07401C
+
+I=29
+KEY=E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=A7FACF4E301E984E5EFEEFD645B23505
+CT=25E10BFB411BBD4D625AC8795C8CA3B3
+
+I=30
+KEY=F8F9FAFBFDFEFE00020304050708090A
+PT=F7C762E4A9819160FD7ACFB6C4EEDCDD
+CT=315637405054EC803614E43DEF177579
+
+I=31
+KEY=0C0D0E0F11121314161718191B1C1D1E
+PT=9B64FC21EA08709F4915436FAA70F1BE
+CT=60C5BC8A1410247295C6386C59E572A8
+
+I=32
+KEY=20212223252627282A2B2C2D2F303132
+PT=52AF2C3DE07EE6777F55A4ABFC100B3F
+CT=01366FC8CA52DFE055D6A00A76471BA6
+
+I=33
+KEY=34353637393A3B3C3E3F404143444546
+PT=2FCA001224386C57AA3F968CBE2C816F
+CT=ECC46595516EC612449C3F581E7D42FF
+
+I=34
+KEY=48494A4B4D4E4F50525354555758595A
+PT=4149C73658A4A9C564342755EE2C132F
+CT=6B7FFE4C602A154B06EE9C7DAB5331C9
+
+I=35
+KEY=5C5D5E5F61626364666768696B6C6D6E
+PT=AF60005A00A1772F7C07A48A923C23D2
+CT=7DA234C14039A240DD02DD0FBF84EB67
+
+I=36
+KEY=70717273757677787A7B7C7D7F808182
+PT=6FCCBC28363759914B6F0280AFAF20C6
+CT=C7DC217D9E3604FFE7E91F080ECD5A3A
+
+I=37
+KEY=84858687898A8B8C8E8F909193949596
+PT=7D82A43DDF4FEFA2FC5947499884D386
+CT=37785901863F5C81260EA41E7580CDA5
+
+I=38
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AA
+PT=5D5A990EAAB9093AFE4CE254DFA49EF9
+CT=A07B9338E92ED105E6AD720FCCCE9FE4
+
+I=39
+KEY=ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=4CD1E2FD3F4434B553AAE453F0ED1A02
+CT=AE0FB9722418CC21A7DA816BBC61322C
+
+I=40
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2
+PT=5A2C9A9641D4299125FA1B9363104B5E
+CT=C826A193080FF91FFB21F71D3373C877
+
+I=41
+KEY=D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=B517FE34C0FA217D341740BFD4FE8DD4
+CT=1181B11B0E494E8D8B0AA6B1D5AC2C48
+
+I=42
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FA
+PT=014BAF2278A69D331D5180103643E99A
+CT=6743C3D1519AB4F2CD9A78AB09A511BD
+
+I=43
+KEY=FCFDFEFF01020304060708090B0C0D0E
+PT=B529BD8164F20D0AA443D4932116841C
+CT=DC55C076D52BACDF2EEFD952946A439D
+
+I=44
+KEY=10111213151617181A1B1C1D1F202122
+PT=2E596DCBB2F33D4216A1176D5BD1E456
+CT=711B17B590FFC72B5C8E342B601E8003
+
+I=45
+KEY=24252627292A2B2C2E2F303133343536
+PT=7274A1EA2B7EE2424E9A0E4673689143
+CT=19983BB0950783A537E1339F4AA21C75
+
+I=46
+KEY=38393A3B3D3E3F40424344454748494A
+PT=AE20020BD4F13E9D90140BEE3B5D26AF
+CT=3BA7762E15554169C0F4FA39164C410C
+
+I=47
+KEY=4C4D4E4F51525354565758595B5C5D5E
+PT=BAAC065DA7AC26E855E79C8849D75A02
+CT=A0564C41245AFCA7AF8AA2E0E588EA89
+
+I=48
+KEY=60616263656667686A6B6C6D6F707172
+PT=7C917D8D1D45FAB9E2540E28832540CC
+CT=5E36A42A2E099F54AE85ECD92E2381ED
+
+I=49
+KEY=74757677797A7B7C7E7F808183848586
+PT=BDE6F89E16DAADB0E847A2A614566A91
+CT=770036F878CD0F6CA2268172F106F2FE
+
+I=50
+KEY=88898A8B8D8E8F90929394959798999A
+PT=C9DE163725F1F5BE44EBB1DB51D07FBC
+CT=7E4E03908B716116443CCF7C94E7C259
+
+I=51
+KEY=9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=3AF57A58F0C07DFFA669572B521E2B92
+CT=482735A48C30613A242DD494C7F9185D
+
+I=52
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2
+PT=3D5EBAC306DDE4604F1B4FBBBFCDAE55
+CT=B4C0F6C9D4D7079ADDF9369FC081061D
+
+I=53
+KEY=C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=C2DFA91BCEB76A1183C995020AC0B556
+CT=D5810FE0509AC53EDCD74F89962E6270
+
+I=54
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EA
+PT=C70F54305885E9A0746D01EC56C8596B
+CT=03F17A16B3F91848269ECDD38EBB2165
+
+I=55
+KEY=ECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=C4F81B610E98012CE000182050C0C2B2
+CT=DA1248C3180348BAD4A93B4D9856C9DF
+
+I=56
+KEY=00010203050607080A0B0C0D0F101112
+PT=EAAB86B1D02A95D7404EFF67489F97D4
+CT=3D10D7B63F3452C06CDF6CCE18BE0C2C
+
+I=57
+KEY=14151617191A1B1C1E1F202123242526
+PT=7C55BDB40B88870B52BEC3738DE82886
+CT=4AB823E7477DFDDC0E6789018FCB6258
+
+I=58
+KEY=28292A2B2D2E2F30323334353738393A
+PT=BA6EAA88371FF0A3BD875E3F2A975CE0
+CT=E6478BA56A77E70CFDAA5C843ABDE30E
+
+I=59
+KEY=3C3D3E3F41424344464748494B4C4D4E
+PT=08059130C4C24BD30CF0575E4E0373DC
+CT=1673064895FBEAF7F09C5429FF75772D
+
+I=60
+KEY=50515253555657585A5B5C5D5F606162
+PT=9A8EAB004EF53093DFCF96F57E7EDA82
+CT=4488033AE9F2EFD0CA9383BFCA1A94E9
+
+I=61
+KEY=64656667696A6B6C6E6F707173747576
+PT=0745B589E2400C25F117B1D796C28129
+CT=978F3B8C8F9D6F46626CAC3C0BCB9217
+
+I=62
+KEY=78797A7B7D7E7F80828384858788898A
+PT=2F1777781216CEC3F044F134B1B92BBE
+CT=E08C8A7E582E15E5527F1D9E2EECB236
+
+I=63
+KEY=8C8D8E8F91929394969798999B9C9D9E
+PT=353A779FFC541B3A3805D90CE17580FC
+CT=CEC155B76AC5FFDA4CF4F9CA91E49A7A
+
+I=64
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2
+PT=1A1EAE4415CEFCF08C4AC1C8F68BEA8F
+CT=D5AC7165763225DD2A38CDC6862C29AD
+
+I=65
+KEY=B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=E6E7E4E5B0B3B2B5D4D5AAAB16111013
+CT=03680FE19F7CE7275452020BE70E8204
+
+I=66
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA
+PT=F8F9FAFBFBF8F9E677767170EFE0E1E2
+CT=461DF740C9781C388E94BB861CEB54F6
+
+I=67
+KEY=DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=63626160A1A2A3A445444B4A75727370
+CT=451BD60367F96483042742219786A074
+
+I=68
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE010002
+PT=717073720605040B2D2C2B2A05FAFBF9
+CT=E4DFA42671A02E57EF173B85C0EA9F2B
+
+I=69
+KEY=04050607090A0B0C0E0F101113141516
+PT=78797A7BEAE9E8EF3736292891969794
+CT=ED11B89E76274282227D854700A78B9E
+
+I=70
+KEY=18191A1B1D1E1F20222324252728292A
+PT=838281803231300FDDDCDBDAA0AFAEAD
+CT=433946EAA51EA47AF33895F2B90B3B75
+
+I=71
+KEY=2C2D2E2F31323334363738393B3C3D3E
+PT=18191A1BBFBCBDBA75747B7A7F78797A
+CT=6BC6D616A5D7D0284A5910AB35022528
+
+I=72
+KEY=40414243454647484A4B4C4D4F505152
+PT=848586879B989996A3A2A5A4849B9A99
+CT=D2A920ECFE919D354B5F49EAE9719C98
+
+I=73
+KEY=54555657595A5B5C5E5F606163646566
+PT=0001020322212027CACBF4F551565754
+CT=3A061B17F6A92885EFBD0676985B373D
+
+I=74
+KEY=68696A6B6D6E6F70727374757778797A
+PT=CECFCCCDAFACADB2515057564A454447
+CT=FADEEC16E33EA2F4688499D157E20D8F
+
+I=75
+KEY=7C7D7E7F81828384868788898B8C8D8E
+PT=92939091CDCECFC813121D1C80878685
+CT=5CDEFEDE59601AA3C3CDA36FA6B1FA13
+
+I=76
+KEY=90919293959697989A9B9C9D9FA0A1A2
+PT=D2D3D0D16F6C6D6259585F5ED1EEEFEC
+CT=9574B00039844D92EBBA7EE8719265F8
+
+I=77
+KEY=A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=ACADAEAF878485820F0E1110D5D2D3D0
+CT=9A9CF33758671787E5006928188643FA
+
+I=78
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CA
+PT=9091929364676619E6E7E0E1757A7B78
+CT=2CDDD634C846BA66BB46CBFEA4A674F9
+
+I=79
+KEY=CCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=BABBB8B98A89888F74757A7B92959497
+CT=D28BAE029393C3E7E26E9FAFBBB4B98F
+
+I=80
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2
+PT=8D8C8F8E6E6D6C633B3A3D3CCAD5D4D7
+CT=EC27529B1BEE0A9AB6A0D73EBC82E9B7
+
+I=81
+KEY=F4F5F6F7F9FAFBFCFEFE010103040506
+PT=86878485010203040808F7F767606162
+CT=3CB25C09472AFF6EE7E2B47CCD7CCB17
+
+I=82
+KEY=08090A0B0D0E0F10121314151718191A
+PT=8E8F8C8D656667788A8B8C8D010E0F0C
+CT=DEE33103A7283370D725E44CA38F8FE5
+
+I=83
+KEY=1C1D1E1F21222324262728292B2C2D2E
+PT=C8C9CACB858687807A7B7475E7E0E1E2
+CT=27F9BCD1AAC64BFFC11E7815702C1A69
+
+I=84
+KEY=30313233353637383A3B3C3D3F404142
+PT=6D6C6F6E5053525D8C8D8A8BADD2D3D0
+CT=5DF534FFAD4ED0749A9988E9849D0021
+
+I=85
+KEY=44454647494A4B4C4E4F505153545556
+PT=28292A2B393A3B3C0607181903040506
+CT=A48BEE75DB04FB60CA2B80F752A8421B
+
+I=86
+KEY=58595A5B5D5E5F60626364656768696A
+PT=A5A4A7A6B0B3B28DDBDADDDCBDB2B3B0
+CT=024C8CF70BC86EE5CE03678CB7AF45F9
+
+I=87
+KEY=6C6D6E6F71727374767778797B7C7D7E
+PT=323330316467666130313E3F2C2B2A29
+CT=3C19AC0F8A3A3862CE577831301E166B
+
+I=88
+KEY=80818283858687888A8B8C8D8F909192
+PT=27262524080B0A05171611100B141516
+CT=C5E355B796A57421D59CA6BE82E73BCA
+
+I=89
+KEY=94959697999A9B9C9E9FA0A1A3A4A5A6
+PT=040506074142434435340B0AA3A4A5A6
+CT=D94033276417ABFB05A69D15B6E386E2
+
+I=90
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA
+PT=242526271112130C61606766BDB2B3B0
+CT=24B36559EA3A9B9B958FE6DA3E5B8D85
+
+I=91
+KEY=BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=4B4A4948252627209E9F9091CEC9C8CB
+CT=20FD4FEAA0E8BF0CCE7861D74EF4CB72
+
+I=92
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2
+PT=68696A6B6665646B9F9E9998D9E6E7E4
+CT=350E20D5174277B9EC314C501570A11D
+
+I=93
+KEY=E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=34353637C5C6C7C0F0F1EEEF7C7B7A79
+CT=87A29D61B7C604D238FE73045A7EFD57
+
+I=94
+KEY=F8F9FAFBFDFEFE00020304050708090A
+PT=32333031C2C1C13F0D0C0B0A050A0B08
+CT=2C3164C1CC7D0064816BDC0FAA362C52
+
+I=95
+KEY=0C0D0E0F11121314161718191B1C1D1E
+PT=CDCCCFCEBEBDBCBBABAAA5A4181F1E1D
+CT=195FE5E8A05A2ED594F6E4400EEE10B3
+
+I=96
+KEY=20212223252627282A2B2C2D2F303132
+PT=212023223635343BA0A1A6A7445B5A59
+CT=E4663DF19B9A21A5A284C2BD7F905025
+
+I=97
+KEY=34353637393A3B3C3E3F404143444546
+PT=0E0F0C0DA8ABAAAD2F2E515002050407
+CT=21B88714CFB4E2A933BD281A2C4743FD
+
+I=98
+KEY=48494A4B4D4E4F50525354555758595A
+PT=070605042A2928378E8F8889BDB2B3B0
+CT=CBFC3980D704FD0FC54378AB84E17870
+
+I=99
+KEY=5C5D5E5F61626364666768696B6C6D6E
+PT=CBCAC9C893909196A9A8A7A6A5A2A3A0
+CT=BC5144BAA48BDEB8B63E22E03DA418EF
+
+I=100
+KEY=70717273757677787A7B7C7D7F808182
+PT=80818283C1C2C3CC9C9D9A9B0CF3F2F1
+CT=5A1DBAEF1EE2984B8395DA3BDFFA3CCC
+
+I=101
+KEY=84858687898A8B8C8E8F909193949596
+PT=1213101125262720FAFBE4E5B1B6B7B4
+CT=F0B11CD0729DFCC80CEC903D97159574
+
+I=102
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AA
+PT=7F7E7D7C3033320D97969190222D2C2F
+CT=9F95314ACFDDC6D1914B7F19A9CC8209
+
+I=103
+KEY=ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=4E4F4C4D484B4A4D81808F8E53545556
+CT=595736F6F0F70914A94E9E007F022519
+
+I=104
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2
+PT=DCDDDEDFB0B3B2BD15141312A1BEBFBC
+CT=1F19F57892CAE586FCDFB4C694DEB183
+
+I=105
+KEY=D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=93929190282B2A2DC4C5FAFB92959497
+CT=540700EE1F6F3DAB0B3EDDF6CAEE1EF5
+
+I=106
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FA
+PT=F5F4F7F6C4C7C6D9373631307E717073
+CT=14A342A91019A331687A2254E6626CA2
+
+I=107
+KEY=FCFDFEFF01020304060708090B0C0D0E
+PT=93929190B6B5B4B364656A6B05020300
+CT=7B25F3C3B2EEA18D743EF283140F29FF
+
+I=108
+KEY=10111213151617181A1B1C1D1F202122
+PT=BABBB8B90D0E0F00A4A5A2A3043B3A39
+CT=46C2587D66E5E6FA7F7CA6411AD28047
+
+I=109
+KEY=24252627292A2B2C2E2F303133343536
+PT=D8D9DADB7F7C7D7A10110E0F787F7E7D
+CT=09470E72229D954ED5EE73886DFEEBA9
+
+I=110
+KEY=38393A3B3D3E3F40424344454748494A
+PT=FEFFFCFDEFECED923B3A3D3C6768696A
+CT=D77C03DE92D4D0D79EF8D4824EF365EB
+
+I=111
+KEY=4C4D4E4F51525354565758595B5C5D5E
+PT=D6D7D4D58A89888F96979899A5A2A3A0
+CT=1D190219F290E0F1715D152D41A23593
+
+I=112
+KEY=60616263656667686A6B6C6D6F707172
+PT=18191A1BA8ABAAA5303136379B848586
+CT=A2CD332CE3A0818769616292E87F757B
+
+I=113
+KEY=74757677797A7B7C7E7F808183848586
+PT=6B6A6968A4A7A6A1D6D72829B0B7B6B5
+CT=D54AFA6CE60FBF9341A3690E21385102
+
+I=114
+KEY=88898A8B8D8E8F90929394959798999A
+PT=000102038A89889755545352A6A9A8AB
+CT=06E5C364DED628A3F5E05E613E356F46
+
+I=115
+KEY=9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=2D2C2F2EB3B0B1B6B6B7B8B9F2F5F4F7
+CT=EAE63C0E62556DAC85D221099896355A
+
+I=116
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2
+PT=979695943536373856575051E09F9E9D
+CT=1FED060E2C6FC93EE764403A889985A2
+
+I=117
+KEY=C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=A4A5A6A7989B9A9DB1B0AFAE7A7D7C7F
+CT=C25235C1A30FDEC1C7CB5C5737B2A588
+
+I=118
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EA
+PT=C1C0C3C2686B6A55A8A9AEAFEAE5E4E7
+CT=796DBEF95147D4D30873AD8B7B92EFC0
+
+I=119
+KEY=ECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=C1C0C3C2141716118C8D828364636261
+CT=CBCF0FB34D98D0BD5C22CE37211A46BF
+
+I=120
+KEY=00010203050607080A0B0C0D0F101112
+PT=93929190CCCFCEC196979091E0FFFEFD
+CT=94B44DA6466126CAFA7C7FD09063FC24
+
+I=121
+KEY=14151617191A1B1C1E1F202123242526
+PT=B4B5B6B7F9FAFBFC25241B1A6E69686B
+CT=D78C5B5EBF9B4DBDA6AE506C5074C8FE
+
+I=122
+KEY=28292A2B2D2E2F30323334353738393A
+PT=868784850704051AC7C6C1C08788898A
+CT=6C27444C27204B043812CF8CF95F9769
+
+I=123
+KEY=3C3D3E3F41424344464748494B4C4D4E
+PT=F4F5F6F7AAA9A8AFFDFCF3F277707172
+CT=BE94524EE5A2AA50BBA8B75F4C0AEBCF
+
+I=124
+KEY=50515253555657585A5B5C5D5F606162
+PT=D3D2D1D00605040BC3C2C5C43E010003
+CT=A0AEAAE91BA9F31F51AEB3588CF3A39E
+
+I=125
+KEY=64656667696A6B6C6E6F707173747576
+PT=73727170424140476A6B74750D0A0B08
+CT=275297779C28266EF9FE4C6A13C08488
+
+I=126
+KEY=78797A7B7D7E7F80828384858788898A
+PT=C2C3C0C10A0908F754555253A1AEAFAC
+CT=86523D92BB8672CB01CF4A77FD725882
+
+I=127
+KEY=8C8D8E8F91929394969798999B9C9D9E
+PT=6D6C6F6EF8FBFAFD82838C8DF8FFFEFD
+CT=4B8327640E9F33322A04DD96FCBF9A36
+
+I=128
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2
+PT=F5F4F7F684878689A6A7A0A1D2CDCCCF
+CT=CE52AF650D088CA559425223F4D32694
+
+==========
+
+KEYSIZE=192
+
+
+I=1
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C
+PT=2D33EEF2C0430A8A9EBF45E809C40BB6
+CT=DFF4945E0336DF4C1C56BC700EFF837F
+
+I=2
+KEY=1E1F20212324252628292A2B2D2E2F30323334353738393A
+PT=6AA375D1FA155A61FB72353E0A5A8756
+CT=B6FDDEF4752765E347D5D2DC196D1252
+
+I=3
+KEY=3C3D3E3F41424344464748494B4C4D4E5051525355565758
+PT=BC3736518B9490DCB8ED60EB26758ED4
+CT=D23684E3D963B3AFCF1A114ACA90CBD6
+
+I=4
+KEY=5A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=AA214402B46CFFB9F761EC11263A311E
+CT=3A7AC027753E2A18C2CEAB9E17C11FD0
+
+I=5
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394
+PT=02AEA86E572EEAB66B2C3AF5E9A46FD6
+CT=8F6786BD007528BA26603C1601CDD0D8
+
+I=6
+KEY=969798999B9C9D9EA0A1A2A3A5A6A7A8AAABACADAFB0B1B2
+PT=E2AEF6ACC33B965C4FA1F91C75FF6F36
+CT=D17D073B01E71502E28B47AB551168B3
+
+I=7
+KEY=B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6C8C9CACBCDCECFD0
+PT=0659DF46427162B9434865DD9499F91D
+CT=A469DA517119FAB95876F41D06D40FFA
+
+I=8
+KEY=D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=49A44239C748FEB456F59C276A5658DF
+CT=6091AA3B695C11F5C0B6AD26D3D862FF
+
+I=9
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C
+PT=66208F6E9D04525BDEDB2733B6A6BE37
+CT=70F9E67F9F8DF1294131662DC6E69364
+
+I=10
+KEY=0E0F10111314151618191A1B1D1E1F20222324252728292A
+PT=3393F8DFC729C97F5480B950BC9666B0
+CT=D154DCAFAD8B207FA5CBC95E9996B559
+
+I=11
+KEY=2C2D2E2F31323334363738393B3C3D3E4041424345464748
+PT=606834C8CE063F3234CF1145325DBD71
+CT=4934D541E8B46FA339C805A7AEB9E5DA
+
+I=12
+KEY=4A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=FEC1C04F529BBD17D8CECFCC4718B17F
+CT=62564C738F3EFE186E1A127A0C4D3C61
+
+I=13
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384
+PT=32DF99B431ED5DC5ACF8CAF6DC6CE475
+CT=07805AA043986EB23693E23BEF8F3438
+
+I=14
+KEY=868788898B8C8D8E90919293959697989A9B9C9D9FA0A1A2
+PT=7FDC2B746F3F665296943B83710D1F82
+CT=DF0B4931038BADE848DEE3B4B85AA44B
+
+I=15
+KEY=A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6B8B9BABBBDBEBFC0
+PT=8FBA1510A3C5B87E2EAA3F7A91455CA2
+CT=592D5FDED76582E4143C65099309477C
+
+I=16
+KEY=C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=2C9B468B1C2EED92578D41B0716B223B
+CT=C9B8D6545580D3DFBCDD09B954ED4E92
+
+I=17
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFC
+PT=0A2BBF0EFC6BC0034F8A03433FCA1B1A
+CT=5DCCD5D6EB7C1B42ACB008201DF707A0
+
+I=18
+KEY=FEFE01010304050608090A0B0D0E0F10121314151718191A
+PT=25260E1F31F4104D387222E70632504B
+CT=A2A91682FFEB6ED1D34340946829E6F9
+
+I=19
+KEY=1C1D1E1F21222324262728292B2C2D2E3031323335363738
+PT=C527D25A49F08A5228D338642AE65137
+CT=E45D185B797000348D9267960A68435D
+
+I=20
+KEY=3A3B3C3D3F40414244454647494A4B4C4E4F505153545556
+PT=3B49FC081432F5890D0E3D87E884A69E
+CT=45E060DAE5901CDA8089E10D4F4C246B
+
+I=21
+KEY=58595A5B5D5E5F60626364656768696A6C6D6E6F71727374
+PT=D173F9ED1E57597E166931DF2754A083
+CT=F6951AFACC0079A369C71FDCFF45DF50
+
+I=22
+KEY=767778797B7C7D7E80818283858687888A8B8C8D8F909192
+PT=8C2B7CAFA5AFE7F13562DAEAE1ADEDE0
+CT=9E95E00F351D5B3AC3D0E22E626DDAD6
+
+I=23
+KEY=94959697999A9B9C9E9FA0A1A3A4A5A6A8A9AAABADAEAFB0
+PT=AAF4EC8C1A815AEB826CAB741339532C
+CT=9CB566FF26D92DAD083B51FDC18C173C
+
+I=24
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBEC
+PT=40BE8C5D9108E663F38F1A2395279ECF
+CT=C9C82766176A9B228EB9A974A010B4FB
+
+I=25
+KEY=2A2B2C2D2F30313234353637393A3B3C3E3F404143444546
+PT=0C8AD9BC32D43E04716753AA4CFBE351
+CT=D8E26AA02945881D5137F1C1E1386E88
+
+I=26
+KEY=48494A4B4D4E4F50525354555758595A5C5D5E5F61626364
+PT=1407B1D5F87D63357C8DC7EBBAEBBFEE
+CT=C0E024CCD68FF5FFA4D139C355A77C55
+
+I=27
+KEY=84858687898A8B8C8E8F90919394959698999A9B9D9E9FA0
+PT=E62734D1AE3378C4549E939E6F123416
+CT=0B18B3D16F491619DA338640DF391D43
+
+I=28
+KEY=A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=5A752CFF2A176DB1A1DE77F2D2CDEE41
+CT=DBE09AC8F66027BF20CB6E434F252EFC
+
+I=29
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDC
+PT=A9C8C3A4EABEDC80C64730DDD018CD88
+CT=6D04E5E43C5B9CBE05FEB9606B6480FE
+
+I=30
+KEY=1A1B1C1D1F20212224252627292A2B2C2E2F303133343536
+PT=EE9B3DBBDB86180072130834D305999A
+CT=DD1D6553B96BE526D9FEE0FBD7176866
+
+I=31
+KEY=38393A3B3D3E3F40424344454748494A4C4D4E4F51525354
+PT=A7FA8C3586B8EBDE7568EAD6F634A879
+CT=0260CA7E3F979FD015B0DD4690E16D2A
+
+I=32
+KEY=929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=37E0F4A87F127D45AC936FE7AD88C10A
+CT=9893734DE10EDCC8A67C3B110B8B8CC6
+
+I=33
+KEY=464748494B4C4D4E50515253555657585A5B5C5D5F606162
+PT=3F77D8B5D92BAC148E4E46F697A535C5
+CT=93B30B750516B2D18808D710C2EE84EF
+
+I=34
+KEY=828384858788898A8C8D8E8F91929394969798999B9C9D9E
+PT=D25EBB686C40F7E2C4DA1014936571CA
+CT=16F65FA47BE3CB5E6DFE7C6C37016C0E
+
+I=35
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBC
+PT=4F1C769D1E5B0552C7ECA84DEA26A549
+CT=F3847210D5391E2360608E5ACB560581
+
+I=36
+KEY=BEBFC0C1C3C4C5C6C8C9CACBCDCECFD0D2D3D4D5D7D8D9DA
+PT=8548E2F882D7584D0FAFC54372B6633A
+CT=8754462CD223366D0753913E6AF2643D
+
+I=37
+KEY=DCDDDEDFE1E2E3E4E6E7E8E9EBECEDEEF0F1F2F3F5F6F7F8
+PT=87D7A336CB476F177CD2A51AF2A62CDF
+CT=1EA20617468D1B806A1FD58145462017
+
+I=38
+KEY=FAFBFCFDFE01000204050607090A0B0C0E0F101113141516
+PT=03B1FEAC668C4E485C1065DFC22B44EE
+CT=3B155D927355D737C6BE9DDA60136E2E
+
+I=39
+KEY=18191A1B1D1E1F20222324252728292A2C2D2E2F31323334
+PT=BDA15E66819FA72D653A6866AA287962
+CT=26144F7B66DAA91B6333DBD3850502B3
+
+I=40
+KEY=363738393B3C3D3E40414243454647484A4B4C4D4F505152
+PT=4D0C7A0D2505B80BF8B62CEB12467F0A
+CT=E4F9A4AB52CED8134C649BF319EBCC90
+
+I=41
+KEY=54555657595A5B5C5E5F60616364656668696A6B6D6E6F70
+PT=626D34C9429B37211330986466B94E5F
+CT=B9DDD29AC6128A6CAB121E34A4C62B36
+
+I=42
+KEY=727374757778797A7C7D7E7F81828384868788898B8C8D8E
+PT=333C3E6BF00656B088A17E5FF0E7F60A
+CT=6FCDDAD898F2CE4EFF51294F5EAAF5C9
+
+I=43
+KEY=90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABAC
+PT=687ED0CDC0D2A2BC8C466D05EF9D2891
+CT=C9A6FE2BF4028080BEA6F7FC417BD7E3
+
+I=44
+KEY=AEAFB0B1B3B4B5B6B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CA
+PT=487830E78CC56C1693E64B2A6660C7B6
+CT=6A2026846D8609D60F298A9C0673127F
+
+I=45
+KEY=CCCDCECFD1D2D3D4D6D7D8D9DBDCDDDEE0E1E2E3E5E6E7E8
+PT=7A48D6B7B52B29392AA2072A32B66160
+CT=2CB25C005E26EFEA44336C4C97A4240B
+
+I=46
+KEY=EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506
+PT=907320E64C8C5314D10F8D7A11C8618D
+CT=496967AB8680DDD73D09A0E4C7DCC8AA
+
+I=47
+KEY=08090A0B0D0E0F10121314151718191A1C1D1E1F21222324
+PT=B561F2CA2D6E65A4A98341F3ED9FF533
+CT=D5AF94DE93487D1F3A8C577CB84A66A4
+
+I=48
+KEY=262728292B2C2D2E30313233353637383A3B3C3D3F404142
+PT=DF769380D212792D026F049E2E3E48EF
+CT=84BDAC569CAE2828705F267CC8376E90
+
+I=49
+KEY=44454647494A4B4C4E4F50515354555658595A5B5D5E5F60
+PT=79F374BC445BDABF8FCCB8843D6054C6
+CT=F7401DDA5AD5AB712B7EB5D10C6F99B6
+
+I=50
+KEY=626364656768696A6C6D6E6F71727374767778797B7C7D7E
+PT=4E02F1242FA56B05C68DBAE8FE44C9D6
+CT=1C9D54318539EBD4C3B5B7E37BF119F0
+
+I=51
+KEY=80818283858687888A8B8C8D8F90919294959697999A9B9C
+PT=CF73C93CBFF57AC635A6F4AD2A4A1545
+CT=ACA572D65FB2764CFFD4A6ECA090EA0D
+
+I=52
+KEY=9E9FA0A1A3A4A5A6A8A9AAABADAEAFB0B2B3B4B5B7B8B9BA
+PT=9923548E2875750725B886566784C625
+CT=36D9C627B8C2A886A10CCB36EAE3DFBB
+
+I=53
+KEY=BCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCED0D1D2D3D5D6D7D8
+PT=4888336B723A022C9545320F836A4207
+CT=010EDBF5981E143A81D646E597A4A568
+
+I=54
+KEY=DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=F84D9A5561B0608B1160DEE000C41BA8
+CT=8DB44D538DC20CC2F40F3067FD298E60
+
+I=55
+KEY=F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314
+PT=C23192A0418E30A19B45AE3E3625BF22
+CT=930EB53BC71E6AC4B82972BDCD5AAFB3
+
+I=56
+KEY=161718191B1C1D1E20212223252627282A2B2C2D2F303132
+PT=B84E0690B28B0025381AD82A15E501A7
+CT=6C42A81EDCBC9517CCD89C30C95597B4
+
+I=57
+KEY=34353637393A3B3C3E3F40414344454648494A4B4D4E4F50
+PT=ACEF5E5C108876C4F06269F865B8F0B0
+CT=DA389847AD06DF19D76EE119C71E1DD3
+
+I=58
+KEY=525354555758595A5C5D5E5F61626364666768696B6C6D6E
+PT=0F1B3603E0F5DDEA4548246153A5E064
+CT=E018FDAE13D3118F9A5D1A647A3F0462
+
+I=59
+KEY=70717273757677787A7B7C7D7F80818284858687898A8B8C
+PT=FBB63893450D42B58C6D88CD3C1809E3
+CT=2AA65DB36264239D3846180FABDFAD20
+
+I=60
+KEY=8E8F90919394959698999A9B9D9E9FA0A2A3A4A5A7A8A9AA
+PT=4BEF736DF150259DAE0C91354E8A5F92
+CT=1472163E9A4F780F1CEB44B07ECF4FDB
+
+I=61
+KEY=ACADAEAFB1B2B3B4B6B7B8B9BBBCBDBEC0C1C2C3C5C6C7C8
+PT=7D2D46242056EF13D3C3FC93C128F4C7
+CT=C8273FDC8F3A9F72E91097614B62397C
+
+I=62
+KEY=CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=E9C1BA2DF415657A256EDB33934680FD
+CT=66C8427DCD733AAF7B3470CB7D976E3F
+
+I=63
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304
+PT=E23EE277B0AA0A1DFB81F7527C3514F1
+CT=146131CB17F1424D4F8DA91E6F80C1D0
+
+I=64
+KEY=060708090B0C0D0E10111213151617181A1B1C1D1F202122
+PT=3E7445B0B63CAAF75E4A911E12106B4C
+CT=2610D0AD83659081AE085266A88770DC
+
+I=65
+KEY=24252627292A2B2C2E2F30313334353638393A3B3D3E3F40
+PT=767774752023222544455A5BE6E1E0E3
+CT=38A2B5A974B0575C5D733917FB0D4570
+
+I=66
+KEY=424344454748494A4C4D4E4F51525354565758595B5C5D5E
+PT=72737475717E7F7CE9E8EBEA696A6B6C
+CT=E21D401EBC60DE20D6C486E4F39A588B
+
+I=67
+KEY=60616263656667686A6B6C6D6F70717274757677797A7B7C
+PT=DFDEDDDC25262728C9C8CFCEF1EEEFEC
+CT=E51D5F88C670B079C0CA1F0C2C4405A2
+
+I=68
+KEY=7E7F80818384858688898A8B8D8E8F90929394959798999A
+PT=FFFE0100707776755F5E5D5C7675746B
+CT=246A94788A642FB3D1B823C8762380C8
+
+I=69
+KEY=9C9D9E9FA1A2A3A4A6A7A8A9ABACADAEB0B1B2B3B5B6B7B8
+PT=E0E1E2E3424140479F9E9190292E2F2C
+CT=B80C391C5C41A4C3B30C68E0E3D7550F
+
+I=70
+KEY=BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=2120272690EFEEED3B3A39384E4D4C4B
+CT=B77C4754FC64EB9A1154A9AF0BB1F21C
+
+I=71
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4
+PT=ECEDEEEF5350516EA1A0A7A6A3ACADAE
+CT=FB554DE520D159A06BF219FC7F34A02F
+
+I=72
+KEY=F6F7F8F9FBFCFDFE00010203050607080A0B0C0D0F101112
+PT=32333C3D25222320E9E8EBEACECDCCC3
+CT=A89FBA152D76B4927BEED160DDB76C57
+
+I=73
+KEY=14151617191A1B1C1E1F20212324252628292A2B2D2E2F30
+PT=40414243626160678A8BB4B511161714
+CT=5676EAB4A98D2E8473B3F3D46424247C
+
+I=74
+KEY=323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=94959293F5FAFBF81F1E1D1C7C7F7E79
+CT=4E8F068BD7EDE52A639036EC86C33568
+
+I=75
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C
+PT=BEBFBCBD191A1B14CFCEC9C8546B6A69
+CT=F0193C4D7AFF1791EE4C07EB4A1824FC
+
+I=76
+KEY=6E6F70717374757678797A7B7D7E7F80828384858788898A
+PT=2C2D3233898E8F8CBBBAB9B8333031CE
+CT=AC8686EECA9BA761AFE82D67B928C33F
+
+I=77
+KEY=8C8D8E8F91929394969798999B9C9D9EA0A1A2A3A5A6A7A8
+PT=84858687BFBCBDBA37363938FDFAFBF8
+CT=5FAF8573E33B145B6A369CD3606AB2C9
+
+I=78
+KEY=AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=828384857669686B909192930B08090E
+CT=31587E9944AB1C16B844ECAD0DF2E7DA
+
+I=79
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4
+PT=BEBFBCBD9695948B707176779E919093
+CT=D017FECD91148ABA37F6F3068AA67D8A
+
+I=80
+KEY=E6E7E8E9EBECEDEEF0F1F2F3F5F6F7F8FAFBFCFDFE010002
+PT=8B8A85846067666521202322D0D3D2DD
+CT=788EF2F021A73CBA2794B616078A8500
+
+I=81
+KEY=04050607090A0B0C0E0F10111314151618191A1B1D1E1F20
+PT=76777475F1F2F3F4F8F9E6E777707172
+CT=5D1EF20DCED6BCBC12131AC7C54788AA
+
+I=82
+KEY=222324252728292A2C2D2E2F31323334363738393B3C3D3E
+PT=A4A5A2A34F404142B4B5B6B727242522
+CT=B3C8CF961FAF9EA05FDDE6D1E4D8F663
+
+I=83
+KEY=40414243454647484A4B4C4D4F50515254555657595A5B5C
+PT=94959697E1E2E3EC16171011839C9D9E
+CT=143075C70605861C7FAC6526199E459F
+
+I=84
+KEY=5E5F60616364656668696A6B6D6E6F70727374757778797A
+PT=03023D3C06010003DEDFDCDDFFFCFDE2
+CT=A5AE12EADE9A87268D898BFC8FC0252A
+
+I=85
+KEY=7C7D7E7F81828384868788898B8C8D8E9091929395969798
+PT=10111213F1F2F3F4CECFC0C1DBDCDDDE
+CT=0924F7CF2E877A4819F5244A360DCEA9
+
+I=86
+KEY=9A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=67666160724D4C4F1D1C1F1E73707176
+CT=3D9E9635AFCC3E291CC7AB3F27D1C99A
+
+I=87
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4
+PT=E6E7E4E5A8ABAAD584858283909F9E9D
+CT=9D80FEEBF87510E2B8FB98BB54FD788C
+
+I=88
+KEY=D6D7D8D9DBDCDDDEE0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2
+PT=71707F7E565150537D7C7F7E6162636C
+CT=5F9D1A082A1A37985F174002ECA01309
+
+I=89
+KEY=F4F5F6F7F9FAFBFCFEFE01010304050608090A0B0D0E0F10
+PT=64656667212223245555AAAA03040506
+CT=A390EBB1D1403930184A44B4876646E4
+
+I=90
+KEY=121314151718191A1C1D1E1F21222324262728292B2C2D2E
+PT=9E9F9899ABA4A5A6CFCECDCC2B28292E
+CT=700FE918981C3195BB6C4BCB46B74E29
+
+I=91
+KEY=30313233353637383A3B3C3D3F40414244454647494A4B4C
+PT=C7C6C5C4D1D2D3DC626364653A454447
+CT=907984406F7BF2D17FB1EB15B673D747
+
+I=92
+KEY=4E4F50515354555658595A5B5D5E5F60626364656768696A
+PT=F6F7E8E9E0E7E6E51D1C1F1E5B585966
+CT=C32A956DCFC875C2AC7C7CC8B8CC26E1
+
+I=93
+KEY=6C6D6E6F71727374767778797B7C7D7E8081828385868788
+PT=BCBDBEBF5D5E5F5868696667F4F3F2F1
+CT=02646E2EBFA9B820CF8424E9B9B6EB51
+
+I=94
+KEY=8A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6
+PT=40414647B0AFAEAD9B9A99989B98999E
+CT=621FDA3A5BBD54C6D3C685816BD4EAD8
+
+I=95
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4
+PT=69686B6A0201001F0F0E0908B4BBBAB9
+CT=D4E216040426DFAF18B152469BC5AC2F
+
+I=96
+KEY=C6C7C8C9CBCCCDCED0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2
+PT=C7C6C9C8D8DFDEDD5A5B5859BEBDBCB3
+CT=9D0635B9D33B6CDBD71F5D246EA17CC8
+
+I=97
+KEY=E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6F8F9FAFBFDFEFE00
+PT=DEDFDCDD787B7A7DFFFEE1E0B2B5B4B7
+CT=10ABAD1BD9BAE5448808765583A2CC1A
+
+I=98
+KEY=020304050708090A0C0D0E0F11121314161718191B1C1D1E
+PT=4D4C4B4A606F6E6DD0D1D2D3FBF8F9FE
+CT=6891889E16544E355FF65A793C39C9A8
+
+I=99
+KEY=20212223252627282A2B2C2D2F30313234353637393A3B3C
+PT=B7B6B5B4D7D4D5DAE5E4E3E2E1FEFFFC
+CT=CC735582E68072C163CD9DDF46B91279
+
+I=100
+KEY=3E3F40414344454648494A4B4D4E4F50525354555758595A
+PT=CECFB0B1F7F0F1F2AEAFACAD3E3D3C23
+CT=C5C68B9AEEB7F878DF578EFA562F9574
+
+I=101
+KEY=5C5D5E5F61626364666768696B6C6D6E7071727375767778
+PT=CACBC8C9CDCECFC812131C1D494E4F4C
+CT=5F4764395A667A47D73452955D0D2CE8
+
+I=102
+KEY=7A7B7C7D7F80818284858687898A8B8C8E8F909193949596
+PT=9D9C9B9AD22D2C2FB1B0B3B20C0F0E09
+CT=701448331F66106CEFDDF1EB8267C357
+
+I=103
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4
+PT=7A7B787964676659959493924F404142
+CT=CB3EE56D2E14B4E1941666F13379D657
+
+I=104
+KEY=B6B7B8B9BBBCBDBEC0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2
+PT=AAABA4A5CEC9C8CB1F1E1D1CABA8A9A6
+CT=9FE16EFD18AB6E1981191851FEDB0764
+
+I=105
+KEY=D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6E8E9EAEBEDEEEFF0
+PT=93929190282B2A2DC4C5FAFB92959497
+CT=3DC9BA24E1B223589B147ADCEB4C8E48
+
+I=106
+KEY=F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E
+PT=EFEEE9E8DED1D0D339383B3A888B8A8D
+CT=1C333032682E7D4DE5E5AFC05C3E483C
+
+I=107
+KEY=10111213151617181A1B1C1D1F20212224252627292A2B2C
+PT=7F7E7D7CA2A1A0AF78797E7F112E2F2C
+CT=D593CC99A95AFEF7E92038E05A59D00A
+
+I=108
+KEY=2E2F30313334353638393A3B3D3E3F40424344454748494A
+PT=84859A9B2B2C2D2E868784852625245B
+CT=51E7F96F53B4353923452C222134E1EC
+
+I=109
+KEY=4C4D4E4F51525354565758595B5C5D5E6061626365666768
+PT=B0B1B2B3070405026869666710171615
+CT=4075B357A1A2B473400C3B25F32F81A4
+
+I=110
+KEY=6A6B6C6D6F70717274757677797A7B7C7E7F808183848586
+PT=ACADAAABBDA2A3A00D0C0F0E595A5B5C
+CT=302E341A3EBCD74F0D55F61714570284
+
+I=111
+KEY=88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4
+PT=121310115655544B5253545569666764
+CT=57ABDD8231280DA01C5042B78CF76522
+
+I=112
+KEY=A6A7A8A9ABACADAEB0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2
+PT=DEDFD0D166616063EAEBE8E94142434C
+CT=17F9EA7EEA17AC1ADF0E190FEF799E92
+
+I=113
+KEY=C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6D8D9DADBDDDEDFE0
+PT=DBDAD9D81417161166677879E0E7E6E5
+CT=2E1BDD563DD87EE5C338DD6D098D0A7A
+
+I=114
+KEY=E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=6A6B6C6DE0EFEEED2B2A2928C0C3C2C5
+CT=EB869996E6F8BFB2BFDD9E0C4504DBB2
+
+I=115
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C
+PT=B1B0B3B21714151A1A1B1C1D5649484B
+CT=C2E01549E9DECF317468B3E018C61BA8
+
+I=116
+KEY=1E1F20212324252628292A2B2D2E2F30323334353738393A
+PT=39380706A3A4A5A6C4C5C6C77271706F
+CT=8DA875D033C01DD463B244A1770F4A22
+
+I=117
+KEY=3C3D3E3F41424344464748494B4C4D4E5051525355565758
+PT=5C5D5E5F1013121539383736E2E5E4E7
+CT=8BA0DCF3A186844F026D022F8839D696
+
+I=118
+KEY=5A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=43424544EAD5D4D72E2F2C2D64676661
+CT=E9691FF9A6CC6970E51670A0FD5B88C1
+
+I=119
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394
+PT=55545756989B9A65F8F9FEFF18171615
+CT=F2BAEC06FAEED30F88EE63BA081A6E5B
+
+I=120
+KEY=969798999B9C9D9EA0A1A2A3A5A6A7A8AAABACADAFB0B1B2
+PT=05040B0A525554573C3D3E3F4A494847
+CT=9C39D4C459AE5753394D6094ADC21E78
+
+I=121
+KEY=B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6C8C9CACBCDCECFD0
+PT=14151617595A5B5C8584FBFA8E89888B
+CT=6345B532A11904502EA43BA99C6BD2B2
+
+I=122
+KEY=D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=7C7D7A7BFDF2F3F029282B2A51525354
+CT=5FFAE3061A95172E4070CEDCE1E428C8
+
+I=123
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C
+PT=38393A3B1E1D1C1341404746C23D3C3E
+CT=0A4566BE4CDF9ADCE5DEC865B5AB34CD
+
+I=124
+KEY=0E0F10111314151618191A1B1D1E1F20222324252728292A
+PT=8D8C939240474645818083827C7F7E41
+CT=CA17FCCE79B7404F2559B22928F126FB
+
+I=125
+KEY=2C2D2E2F31323334363738393B3C3D3E4041424345464748
+PT=3B3A39381A19181F32333C3D45424340
+CT=97CA39B849ED73A6470A97C821D82F58
+
+I=126
+KEY=4A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=F0F1F6F738272625828380817F7C7D7A
+CT=8198CB06BC684C6D3E9B7989428DCF7A
+
+I=127
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384
+PT=89888B8A0407061966676061141B1A19
+CT=F53C464C705EE0F28D9A4C59374928BD
+
+I=128
+KEY=868788898B8C8D8E90919293959697989A9B9C9D9FA0A1A2
+PT=D3D2DDDCAAADACAF9C9D9E9FE8EBEAE5
+CT=9ADB3D4CCA559BB98C3E2ED73DBF1154
+
+==========
+
+KEYSIZE=256
+
+
+I=1
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526
+PT=834EADFCCAC7E1B30664B1ABA44815AB
+CT=1946DABF6A03A2A2C3D0B05080AED6FC
+
+I=2
+KEY=28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=D9DC4DBA3021B05D67C0518F72B62BF1
+CT=5ED301D747D3CC715445EBDEC62F2FB4
+
+I=3
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=A291D86301A4A739F7392173AA3C604C
+CT=6585C8F43D13A6BEAB6419FC5935B9D0
+
+I=4
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E
+PT=4264B2696498DE4DF79788A9F83E9390
+CT=2A5B56A596680FCC0E05F5E0F151ECAE
+
+I=5
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=EE9932B3721804D5A83EF5949245B6F6
+CT=F5D6FF414FD2C6181494D20C37F2B8C4
+
+I=6
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=E6248F55C5FDCBCA9CBBB01C88A2EA77
+CT=85399C01F59FFFB5204F19F8482F00B8
+
+I=7
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516
+PT=B8358E41B9DFF65FD461D55A99266247
+CT=92097B4C88A041DDF98144BC8D22E8E7
+
+I=8
+KEY=18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E
+PT=F0E2D72260AF58E21E015AB3A4C0D906
+CT=89BD5B73B356AB412AEF9F76CEA2D65C
+
+I=9
+KEY=40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=475B8B823CE8893DB3C44A9F2A379FF7
+CT=2536969093C55FF9454692F2FAC2F530
+
+I=10
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E
+PT=688F5281945812862F5F3076CF80412F
+CT=07FC76A872843F3F6E0081EE9396D637
+
+I=11
+KEY=90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=08D1D2BC750AF553365D35E75AFACEAA
+CT=E38BA8EC2AA741358DCC93E8F141C491
+
+I=12
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=8707121F47CC3EFCECA5F9A8474950A1
+CT=D028EE23E4A89075D0B03E868D7D3A42
+
+I=13
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506
+PT=E51AA0B135DBA566939C3B6359A980C5
+CT=8CD9423DFC459E547155C5D1D522E540
+
+I=14
+KEY=08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E
+PT=069A007FC76A459F98BAF917FEDF9521
+CT=080E9517EB1677719ACF728086040AE3
+
+I=15
+KEY=30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556
+PT=726165C1723FBCF6C026D7D00B091027
+CT=7C1700211A3991FC0ECDED0AB3E576B0
+
+I=16
+KEY=58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E
+PT=D7C544DE91D55CFCDE1F84CA382200CE
+CT=DABCBCC855839251DB51E224FBE87435
+
+I=17
+KEY=80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6
+PT=FED3C9A161B9B5B2BD611B41DC9DA357
+CT=68D56FAD0406947A4DD27A7448C10F1D
+
+I=18
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=4F634CDC6551043409F30B635832CF82
+CT=DA9A11479844D1FFEE24BBF3719A9925
+
+I=19
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=109CE98DB0DFB36734D9F3394711B4E6
+CT=5E4BA572F8D23E738DA9B05BA24B8D81
+
+I=20
+KEY=70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596
+PT=4EA6DFABA2D8A02FFDFFA89835987242
+CT=A115A2065D667E3F0B883837A6E903F8
+
+I=21
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=5AE094F54AF58E6E3CDBF976DAC6D9EF
+CT=3E9E90DC33EAC2437D86AD30B137E66E
+
+I=22
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=764D8E8E0F29926DBE5122E66354FDBE
+CT=01CE82D8FBCDAE824CB3C48E495C3692
+
+I=23
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E
+PT=3F0418F888CDF29A982BF6B75410D6A9
+CT=0C9CFF163CE936FAAF083CFD3DEA3117
+
+I=24
+KEY=10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536
+PT=E4A3E7CB12CDD56AA4A75197A9530220
+CT=5131BA9BD48F2BBA85560680DF504B52
+
+I=25
+KEY=38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E
+PT=211677684AAC1EC1A160F44C4EBF3F26
+CT=9DC503BBF09823AEC8A977A5AD26CCB2
+
+I=26
+KEY=60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586
+PT=D21E439FF749AC8F18D6D4B105E03895
+CT=9A6DB0C0862E506A9E397225884041D7
+
+I=27
+KEY=88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=D9F6FF44646C4725BD4C0103FF5552A7
+CT=430BF9570804185E1AB6365FC6A6860C
+
+I=28
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=0B1256C2A00B976250CFC5B0C37ED382
+CT=3525EBC02F4886E6A5A3762813E8CE8A
+
+I=29
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=B056447FFC6DC4523A36CC2E972A3A79
+CT=07FA265C763779CCE224C7BAD671027B
+
+I=30
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526
+PT=5E25CA78F0DE55802524D38DA3FE4456
+CT=E8B72B4E8BE243438C9FFF1F0E205872
+
+I=31
+KEY=28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=A5BCF4728FA5EAAD8567C0DC24675F83
+CT=109D4F999A0E11ACE1F05E6B22CBCB50
+
+I=32
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=814E59F97ED84646B78B2CA022E9CA43
+CT=45A5E8D4C3ED58403FF08D68A0CC4029
+
+I=33
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E
+PT=15478BEEC58F4775C7A7F5D4395514D7
+CT=196865964DB3D417B6BD4D586BCB7634
+
+I=34
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=253548FFCA461C67C8CBC78CD59F4756
+CT=60436AD45AC7D30D99195F815D98D2AE
+
+I=35
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=FD7AD8D73B9B0F8CC41600640F503D65
+CT=BB07A23F0B61014B197620C185E2CD75
+
+I=36
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516
+PT=06199DE52C6CBF8AF954CD65830BCD56
+CT=5BC0B2850129C854423AFF0751FE343B
+
+I=37
+KEY=18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E
+PT=F17C4FFE48E44C61BD891E257E725794
+CT=7541A78F96738E6417D2A24BD2BECA40
+
+I=38
+KEY=40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=9A5B4A402A3E8A59BE6BF5CD8154F029
+CT=B0A303054412882E464591F1546C5B9E
+
+I=39
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E
+PT=79BD40B91A7E07DC939D441782AE6B17
+CT=778C06D8A355EEEE214FCEA14B4E0EEF
+
+I=40
+KEY=90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=D8CEAAF8976E5FBE1012D8C84F323799
+CT=09614206D15CBACE63227D06DB6BEEBB
+
+I=41
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=3316E2751E2E388B083DA23DD6AC3FBE
+CT=41B97FB20E427A9FDBBB358D9262255D
+
+I=42
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506
+PT=8B7CFBE37DE7DCA793521819242C5816
+CT=C1940F703D845F957652C2D64ABD7ADF
+
+I=43
+KEY=08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E
+PT=F23F033C0EEBF8EC55752662FD58CE68
+CT=D2D44FCDAE5332343366DB297EFCF21B
+
+I=44
+KEY=30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556
+PT=59EB34F6C8BDBACC5FC6AD73A59A1301
+CT=EA8196B79DBE167B6AA9896E287EED2B
+
+I=45
+KEY=58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E
+PT=DCDE8B6BD5CF7CC22D9505E3CE81261A
+CT=D6B0B0C4BA6C7DBE5ED467A1E3F06C2D
+
+I=46
+KEY=80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6
+PT=E33CF7E524FED781E7042FF9F4B35DC7
+CT=EC51EB295250C22C2FB01816FB72BCAE
+
+I=47
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=27963C8FACDF73062867D164DF6D064C
+CT=ADED6630A07CE9C7408A155D3BD0D36F
+
+I=48
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=77B1CE386B551B995F2F2A1DA994EEF8
+CT=697C9245B9937F32F5D1C82319F0363A
+
+I=49
+KEY=F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E
+PT=F083388B013679EFCF0BB9B15D52AE5C
+CT=AAD5AD50C6262AAEC30541A1B7B5B19C
+
+I=50
+KEY=20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546
+PT=C5009E0DAB55DB0ABDB636F2600290C8
+CT=7D34B893855341EC625BD6875AC18C0D
+
+I=51
+KEY=48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E
+PT=7804881E26CD532D8514D3683F00F1B9
+CT=7EF05105440F83862F5D780E88F02B41
+
+I=52
+KEY=70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596
+PT=46CDDCD73D1EB53E675CA012870A92A3
+CT=C377C06403382061AF2C9C93A8E70DF6
+
+I=53
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=A9FB44062BB07FE130A8E8299EACB1AB
+CT=1DBDB3FFDC052DACC83318853ABC6DE5
+
+I=54
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=2B6FF8D7A5CC3A28A22D5A6F221AF26B
+CT=69A6EAB00432517D0BF483C91C0963C7
+
+I=55
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E
+PT=1A9527C29B8ADD4B0E3E656DBB2AF8B4
+CT=0797F41DC217C80446E1D514BD6AB197
+
+I=56
+KEY=10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536
+PT=7F99CF2C75244DF015EB4B0C1050AEAE
+CT=9DFD76575902A637C01343C58E011A03
+
+I=57
+KEY=38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E
+PT=E84FF85B0D9454071909C1381646C4ED
+CT=ACF4328AE78F34B9FA9B459747CC2658
+
+I=58
+KEY=60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586
+PT=89AFD40F99521280D5399B12404F6DB4
+CT=B0479AEA12BAC4FE2384CF98995150C6
+
+I=59
+KEY=88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=A09EF32DBC5119A35AB7FA38656F0329
+CT=9DD52789EFE3FFB99F33B3DA5030109A
+
+I=60
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=61773457F068C376C7829B93E696E716
+CT=ABBB755E4621EF8F1214C19F649FB9FD
+
+I=61
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=A34F0CAE726CCE41DD498747D891B967
+CT=DA27FB8174357BCE2BED0E7354F380F9
+
+I=62
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526
+PT=856F59496C7388EE2D2B1A27B7697847
+CT=C59A0663F0993838F6E5856593BDC5EF
+
+I=63
+KEY=28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=CB090C593EF7720BD95908FB93B49DF4
+CT=ED60B264B5213E831607A99C0CE5E57E
+
+I=64
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=A0AC75CD2F1923D460FC4D457AD95BAF
+CT=E50548746846F3EB77B8C520640884ED
+
+I=65
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E
+PT=2A2B282974777689E8E9EEEF525D5C5F
+CT=28282CC7D21D6A2923641E52D188EF0C
+
+I=66
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=909192939390919E0F0E09089788898A
+CT=0DFA5B02ABB18E5A815305216D6D4F8E
+
+I=67
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=777675748D8E8F907170777649464744
+CT=7359635C0EECEFE31D673395FB46FB99
+
+I=68
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516
+PT=717073720605040B2D2C2B2A05FAFBF9
+CT=73C679F7D5AEF2745C9737BB4C47FB36
+
+I=69
+KEY=18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E
+PT=64656667FEFDFCC31B1A1D1CA5AAABA8
+CT=B192BD472A4D2EAFB786E97458967626
+
+I=70
+KEY=40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=DBDAD9D86A696867B5B4B3B2C8D7D6D5
+CT=0EC327F6C8A2B147598CA3FDE61DC6A4
+
+I=71
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E
+PT=5C5D5E5FE3E0E1FE31303736333C3D3E
+CT=FC418EB3C41B859B38D4B6F646629729
+
+I=72
+KEY=90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=545556574B48494673727574546B6A69
+CT=30249E5AC282B1C981EA64B609F3A154
+
+I=73
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=ECEDEEEFC6C5C4BB56575051F5FAFBF8
+CT=5E6E08646D12150776BB43C2D78A9703
+
+I=74
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506
+PT=464744452724252AC9C8CFCED2CDCCCF
+CT=FAEB3D5DE652CD3447DCEB343F30394A
+
+I=75
+KEY=08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E
+PT=E6E7E4E54142435C878681801C131211
+CT=A8E88706823F6993EF80D05C1C7B2CF0
+
+I=76
+KEY=30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556
+PT=72737071CFCCCDC2F9F8FFFE710E0F0C
+CT=8CED86677E6E00A1A1B15968F2D3CCE6
+
+I=77
+KEY=58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E
+PT=505152537370714EC3C2C5C4010E0F0C
+CT=9FC7C23858BE03BDEBB84E90DB6786A9
+
+I=78
+KEY=80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6
+PT=A8A9AAAB5C5F5E51AEAFA8A93D222320
+CT=B4FBD65B33F70D8CF7F1111AC4649C36
+
+I=79
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=DEDFDCDDF6F5F4EB10111617FEF1F0F3
+CT=C5C32D5ED03C4B53CC8C1BD0EF0DBBF6
+
+I=80
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=BDBCBFBE5E5D5C530B0A0D0CFAC5C4C7
+CT=D1A7F03B773E5C212464B63709C6A891
+
+I=81
+KEY=F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E
+PT=8A8B8889050606F8F4F5F2F3636C6D6E
+CT=6B7161D8745947AC6950438EA138D028
+
+I=82
+KEY=20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546
+PT=A6A7A4A54D4E4F40B2B3B4B539262724
+CT=FD47A9F7E366EE7A09BC508B00460661
+
+I=83
+KEY=48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E
+PT=9C9D9E9FE9EAEBF40E0F08099B949596
+CT=00D40B003DC3A0D9310B659B98C7E416
+
+I=84
+KEY=70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596
+PT=2D2C2F2E1013121DCCCDCACBED121310
+CT=EEA4C79DCC8E2BDA691F20AC48BE0717
+
+I=85
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=F4F5F6F7EDEEEFD0EAEBECEDF7F8F9FA
+CT=E78F43B11C204403E5751F89D05A2509
+
+I=86
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=3D3C3F3E282B2A2573727574150A0B08
+CT=D0F0E3D1F1244BB979931E38DD1786EF
+
+I=87
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E
+PT=B6B7B4B5F8FBFAE5B4B5B2B3A0AFAEAD
+CT=042E639DC4E1E4DDE7B75B749EA6F765
+
+I=88
+KEY=10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536
+PT=B7B6B5B4989B9A95878681809BA4A5A6
+CT=BC032FDD0EFE29503A980A7D07AB46A8
+
+I=89
+KEY=38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E
+PT=A8A9AAABE5E6E798E9E8EFEE4748494A
+CT=0C93AC949C0DA6446EFFB86183B6C910
+
+I=90
+KEY=60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586
+PT=ECEDEEEFD9DADBD4B9B8BFBE657A7B78
+CT=E0D343E14DA75C917B4A5CEC4810D7C2
+
+I=91
+KEY=88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=7F7E7D7C696A6B74CACBCCCD929D9C9F
+CT=0EAFB821748408279B937B626792E619
+
+I=92
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=08090A0B0605040BFFFEF9F8B9C6C7C4
+CT=FA1AC6E02D23B106A1FEF18B274A553F
+
+I=93
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=08090A0BF1F2F3CCFCFDFAFB68676665
+CT=0DADFE019CD12368075507DF33C1A1E9
+
+I=94
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526
+PT=CACBC8C93A393837050403020D121310
+CT=3A0879B414465D9FFBAF86B33A63A1B9
+
+I=95
+KEY=28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=E9E8EBEA8281809F8F8E8988343B3A39
+CT=62199FADC76D0BE1805D3BA0B7D914BF
+
+I=96
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=515053524645444BD0D1D6D7340B0A09
+CT=1B06D6C5D333E742730130CF78E719B4
+
+I=97
+KEY=78797A7B7D7E7F80828384858788898A8C8D8E8F91929394969798999B9C9D9E
+PT=42434041ECEFEE1193929594C6C9C8CB
+CT=F1F848824C32E9DCDCBF21580F069329
+
+I=98
+KEY=A0A1A2A3A5A6A7A8AAABACADAFB0B1B2B4B5B6B7B9BABBBCBEBFC0C1C3C4C5C6
+PT=EFEEEDECC2C1C0CF76777071455A5B58
+CT=1A09050CBD684F784D8E965E0782F28A
+
+I=99
+KEY=C8C9CACBCDCECFD0D2D3D4D5D7D8D9DADCDDDEDFE1E2E3E4E6E7E8E9EBECEDEE
+PT=5F5E5D5C3F3C3D221D1C1B1A19161714
+CT=79C2969E7DED2BA7D088F3F320692360
+
+I=100
+KEY=F0F1F2F3F5F6F7F8FAFBFCFDFE01000204050607090A0B0C0E0F101113141516
+PT=000102034142434C1C1D1A1B8D727371
+CT=091A658A2F7444C16ACCB669450C7B63
+
+I=101
+KEY=18191A1B1D1E1F20222324252728292A2C2D2E2F31323334363738393B3C3D3E
+PT=8E8F8C8DB1B2B38C56575051050A0B08
+CT=97C1E3A72CCA65FA977D5ED0E8A7BBFC
+
+I=102
+KEY=40414243454647484A4B4C4D4F50515254555657595A5B5C5E5F606163646566
+PT=A7A6A5A4E8EBEAE57F7E7978CAD5D4D7
+CT=70C430C6DB9A17828937305A2DF91A2A
+
+I=103
+KEY=68696A6B6D6E6F70727374757778797A7C7D7E7F81828384868788898B8C8D8E
+PT=8A8B888994979689454443429F909192
+CT=629553457FBE2479098571C7C903FDE8
+
+I=104
+KEY=90919293959697989A9B9C9D9FA0A1A2A4A5A6A7A9AAABACAEAFB0B1B3B4B5B6
+PT=8C8D8E8FE0E3E2ED45444342F1CECFCC
+CT=A25B25A61F612669E7D91265C7D476BA
+
+I=105
+KEY=B8B9BABBBDBEBFC0C2C3C4C5C7C8C9CACCCDCECFD1D2D3D4D6D7D8D9DBDCDDDE
+PT=FFFEFDFC4C4F4E31D8D9DEDFB6B9B8BB
+CT=EB7E4E49B8AE0F024570DDA293254FED
+
+I=106
+KEY=E0E1E2E3E5E6E7E8EAEBECEDEFF0F1F2F4F5F6F7F9FAFBFCFEFE010103040506
+PT=FDFCFFFECCCFCEC12F2E29286679787B
+CT=38FE15D61CCA84516E924ADCE5014F67
+
+I=107
+KEY=08090A0B0D0E0F10121314151718191A1C1D1E1F21222324262728292B2C2D2E
+PT=67666564BAB9B8A77071767719161714
+CT=3AD208492249108C9F3EBEB167AD0583
+
+I=108
+KEY=30313233353637383A3B3C3D3F40414244454647494A4B4C4E4F505153545556
+PT=9A9B98992D2E2F2084858283245B5A59
+CT=299BA9F9BF5AB05C3580FC26EDD1ED12
+
+I=109
+KEY=58595A5B5D5E5F60626364656768696A6C6D6E6F71727374767778797B7C7D7E
+PT=A4A5A6A70B0809365C5D5A5B2C232221
+CT=19DC705B857A60FB07717B2EA5717781
+
+I=110
+KEY=80818283858687888A8B8C8D8F90919294959697999A9B9C9E9FA0A1A3A4A5A6
+PT=464744455754555AF3F2F5F4AFB0B1B2
+CT=FFC8AEB885B5EFCAD06B6DBEBF92E76B
+
+I=111
+KEY=A8A9AAABADAEAFB0B2B3B4B5B7B8B9BABCBDBEBFC1C2C3C4C6C7C8C9CBCCCDCE
+PT=323330317675746B7273747549464744
+CT=F58900C5E0B385253FF2546250A0142B
+
+I=112
+KEY=D0D1D2D3D5D6D7D8DADBDCDDDFE0E1E2E4E5E6E7E9EAEBECEEEFF0F1F3F4F5F6
+PT=A8A9AAAB181B1A15808186872B141516
+CT=2EE67B56280BC462429CEE6E3370CBC1
+
+I=113
+KEY=F8F9FAFBFDFEFE00020304050708090A0C0D0E0F11121314161718191B1C1D1E
+PT=E7E6E5E4202323DDAAABACAD343B3A39
+CT=20DB650A9C8E9A84AB4D25F7EDC8F03F
+
+I=114
+KEY=20212223252627282A2B2C2D2F30313234353637393A3B3C3E3F404143444546
+PT=A8A9AAAB2221202FEDECEBEA1E010003
+CT=3C36DA169525CF818843805F25B78AE5
+
+I=115
+KEY=48494A4B4D4E4F50525354555758595A5C5D5E5F61626364666768696B6C6D6E
+PT=F9F8FBFA5F5C5D42424344450E010003
+CT=9A781D960DB9E45E37779042FEA51922
+
+I=116
+KEY=70717273757677787A7B7C7D7F80818284858687898A8B8C8E8F909193949596
+PT=57565554F5F6F7F89697909120DFDEDD
+CT=6560395EC269C672A3C288226EFDBA77
+
+I=117
+KEY=98999A9B9D9E9FA0A2A3A4A5A7A8A9AAACADAEAFB1B2B3B4B6B7B8B9BBBCBDBE
+PT=F8F9FAFBCCCFCEF1DDDCDBDA0E010003
+CT=8C772B7A189AC544453D5916EBB27B9A
+
+I=118
+KEY=C0C1C2C3C5C6C7C8CACBCCCDCFD0D1D2D4D5D6D7D9DADBDCDEDFE0E1E3E4E5E6
+PT=D9D8DBDA7073727D80818687C2DDDCDF
+CT=77CA5468CC48E843D05F78EED9D6578F
+
+I=119
+KEY=E8E9EAEBEDEEEFF0F2F3F4F5F7F8F9FAFCFDFEFF01020304060708090B0C0D0E
+PT=C5C4C7C6080B0A1588898E8F68676665
+CT=72CDCC71DC82C60D4429C9E2D8195BAA
+
+I=120
+KEY=10111213151617181A1B1C1D1F20212224252627292A2B2C2E2F303133343536
+PT=83828180DCDFDED186878081F0CFCECD
+CT=8080D68CE60E94B40B5B8B69EEB35AFA
+
+I=121
+KEY=38393A3B3D3E3F40424344454748494A4C4D4E4F51525354565758595B5C5D5E
+PT=98999A9BDDDEDFA079787F7E0A050407
+CT=44222D3CDE299C04369D58AC0EBA1E8E
+
+I=122
+KEY=60616263656667686A6B6C6D6F70717274757677797A7B7C7E7F808183848586
+PT=CECFCCCD4F4C4D429F9E9998DFC0C1C2
+CT=9B8721B0A8DFC691C5BC5885DBFCB27A
+
+I=123
+KEY=88898A8B8D8E8F90929394959798999A9C9D9E9FA1A2A3A4A6A7A8A9ABACADAE
+PT=404142436665647B29282F2EABA4A5A6
+CT=0DC015CE9A3A3414B5E62EC643384183
+
+I=124
+KEY=B0B1B2B3B5B6B7B8BABBBCBDBFC0C1C2C4C5C6C7C9CACBCCCECFD0D1D3D4D5D6
+PT=33323130E6E5E4EB23222524DEA1A0A3
+CT=705715448A8DA412025CE38345C2A148
+
+I=125
+KEY=D8D9DADBDDDEDFE0E2E3E4E5E7E8E9EAECEDEEEFF1F2F3F4F6F7F8F9FBFCFDFE
+PT=CFCECDCCF6F5F4CBE6E7E0E199969794
+CT=C32B5B0B6FBAE165266C569F4B6ECF0B
+
+I=126
+KEY=00010203050607080A0B0C0D0F10111214151617191A1B1C1E1F202123242526
+PT=BABBB8B97271707FDCDDDADB29363734
+CT=4DCA6C75192A01DDCA9476AF2A521E87
+
+I=127
+KEY=28292A2B2D2E2F30323334353738393A3C3D3E3F41424344464748494B4C4D4E
+PT=C9C8CBCA4447465926272021545B5A59
+CT=058691E627ECBC36AC07B6DB423BD698
+
+I=128
+KEY=50515253555657585A5B5C5D5F60616264656667696A6B6C6E6F707173747576
+PT=050407067477767956575051221D1C1F
+CT=7444527095838FE080FC2BCDD30847EB
+
+==========
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_vk.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,2334 @@
+
+=========================
+
+FILENAME:  "ecb_vk.txt"
+
+Electronic Codebook (ECB) Mode
+Variable Key Known Answer Tests
+
+Algorithm Name: Rijndael
+Principal Submitter: <as stated on the submission cover sheet>
+
+==========
+
+KEYSIZE=128
+
+PT=00000000000000000000000000000000
+
+I=1
+KEY=80000000000000000000000000000000
+CT=0EDD33D3C621E546455BD8BA1418BEC8
+
+I=2
+KEY=40000000000000000000000000000000
+CT=C0CC0C5DA5BD63ACD44A80774FAD5222
+
+I=3
+KEY=20000000000000000000000000000000
+CT=2F0B4B71BC77851B9CA56D42EB8FF080
+
+I=4
+KEY=10000000000000000000000000000000
+CT=6B1E2FFFE8A114009D8FE22F6DB5F876
+
+I=5
+KEY=08000000000000000000000000000000
+CT=9AA042C315F94CBB97B62202F83358F5
+
+I=6
+KEY=04000000000000000000000000000000
+CT=DBE01DE67E346A800C4C4B4880311DE4
+
+I=7
+KEY=02000000000000000000000000000000
+CT=C117D2238D53836ACD92DDCDB85D6A21
+
+I=8
+KEY=01000000000000000000000000000000
+CT=DC0ED85DF9611ABB7249CDD168C5467E
+
+I=9
+KEY=00800000000000000000000000000000
+CT=807D678FFF1F56FA92DE3381904842F2
+
+I=10
+KEY=00400000000000000000000000000000
+CT=0E53B3FCAD8E4B130EF73AEB957FB402
+
+I=11
+KEY=00200000000000000000000000000000
+CT=969FFD3B7C35439417E7BDE923035D65
+
+I=12
+KEY=00100000000000000000000000000000
+CT=A99B512C19CA56070491166A1503BF15
+
+I=13
+KEY=00080000000000000000000000000000
+CT=6E9985252126EE344D26AE369D2327E3
+
+I=14
+KEY=00040000000000000000000000000000
+CT=B85F4809F904C275491FCDCD1610387E
+
+I=15
+KEY=00020000000000000000000000000000
+CT=ED365B8D7D20C1F5D53FB94DD211DF7B
+
+I=16
+KEY=00010000000000000000000000000000
+CT=B3A575E86A8DB4A7135D604C43304896
+
+I=17
+KEY=00008000000000000000000000000000
+CT=89704BCB8E69F846259EB0ACCBC7F8A2
+
+I=18
+KEY=00004000000000000000000000000000
+CT=C56EE7C92197861F10D7A92B90882055
+
+I=19
+KEY=00002000000000000000000000000000
+CT=92F296F6846E0EAF9422A5A24A08B069
+
+I=20
+KEY=00001000000000000000000000000000
+CT=E67E32BB8F11DEB8699318BEE9E91A60
+
+I=21
+KEY=00000800000000000000000000000000
+CT=B08EEF85EAF626DD91B65C4C3A97D92B
+
+I=22
+KEY=00000400000000000000000000000000
+CT=661083A6ADDCE79BB4E0859AB5538013
+
+I=23
+KEY=00000200000000000000000000000000
+CT=55DFE2941E0EB10AFC0B333BD34DE1FE
+
+I=24
+KEY=00000100000000000000000000000000
+CT=6BFE5945E715C9662609770F8846087A
+
+I=25
+KEY=00000080000000000000000000000000
+CT=79848E9C30C2F8CDA8B325F7FED2B139
+
+I=26
+KEY=00000040000000000000000000000000
+CT=7A713A53B99FEF34AC04DEEF80965BD0
+
+I=27
+KEY=00000020000000000000000000000000
+CT=18144A2B46620D32C3C32CE52D49257F
+
+I=28
+KEY=00000010000000000000000000000000
+CT=872E827C70887C80749F7B8BB1847C7E
+
+I=29
+KEY=00000008000000000000000000000000
+CT=6B86C6A4FE6A60C59B1A3102F8DE49F3
+
+I=30
+KEY=00000004000000000000000000000000
+CT=9848BB3DFDF6F532F094679A4C231A20
+
+I=31
+KEY=00000002000000000000000000000000
+CT=925AD528E852E329B2091CD3F1C2BCEE
+
+I=32
+KEY=00000001000000000000000000000000
+CT=80DF436544B0DD596722E46792A40CD8
+
+I=33
+KEY=00000000800000000000000000000000
+CT=525DAF18F93E83E1E74BBBDDE4263BBA
+
+I=34
+KEY=00000000400000000000000000000000
+CT=F65C9D2EE485D24701FFA3313B9D5BE6
+
+I=35
+KEY=00000000200000000000000000000000
+CT=E4FC8D8BCA06425BDF94AFA40FCC14BA
+
+I=36
+KEY=00000000100000000000000000000000
+CT=A53F0A5CA1E4E6440BB975FF320DE6F8
+
+I=37
+KEY=00000000080000000000000000000000
+CT=D55313B9394080462E87E02899B553F0
+
+I=38
+KEY=00000000040000000000000000000000
+CT=34A71D761F71BCD344384C7F97D27906
+
+I=39
+KEY=00000000020000000000000000000000
+CT=233F3D819599612EBC89580245C996A8
+
+I=40
+KEY=00000000010000000000000000000000
+CT=B4F1374E5268DBCB676E447529E53F89
+
+I=41
+KEY=00000000008000000000000000000000
+CT=0816BD27861D2BA891D1044E39951E96
+
+I=42
+KEY=00000000004000000000000000000000
+CT=F3BE9EA3F10C73CA64FDE5DB13A951D1
+
+I=43
+KEY=00000000002000000000000000000000
+CT=2448086A8106FBD03048DDF857D3F1C8
+
+I=44
+KEY=00000000001000000000000000000000
+CT=670756E65BEC8B68F03D77CDCDCE7B91
+
+I=45
+KEY=00000000000800000000000000000000
+CT=EF968CF0D36FD6C6EFFD225F6FB44CA9
+
+I=46
+KEY=00000000000400000000000000000000
+CT=2E8767157922E3826DDCEC1B0CC1E105
+
+I=47
+KEY=00000000000200000000000000000000
+CT=78CE7EEC670E45A967BAB17E26A1AD36
+
+I=48
+KEY=00000000000100000000000000000000
+CT=3C5CEE825655F098F6E81A2F417DA3FB
+
+I=49
+KEY=00000000000080000000000000000000
+CT=67BFDB431DCE1292200BC6F5207ADB12
+
+I=50
+KEY=00000000000040000000000000000000
+CT=7540FD38E447C0779228548747843A6F
+
+I=51
+KEY=00000000000020000000000000000000
+CT=B85E513301F8A936EA9EC8A21A85B5E6
+
+I=52
+KEY=00000000000010000000000000000000
+CT=04C67DBF16C11427D507A455DE2C9BC5
+
+I=53
+KEY=00000000000008000000000000000000
+CT=03F75EB8959E55079CFFB4FF149A37B6
+
+I=54
+KEY=00000000000004000000000000000000
+CT=74550287F666C63BB9BC7838433434B0
+
+I=55
+KEY=00000000000002000000000000000000
+CT=7D537200195EBC3AEFD1EAAB1C385221
+
+I=56
+KEY=00000000000001000000000000000000
+CT=CE24E4D40C68A82B535CBD3C8E21652A
+
+I=57
+KEY=00000000000000800000000000000000
+CT=AB20072405AA8FC40265C6F1F3DC8BC0
+
+I=58
+KEY=00000000000000400000000000000000
+CT=6CFD2CF688F566B093F67B9B3839E80A
+
+I=59
+KEY=00000000000000200000000000000000
+CT=BD95977E6B7239D407A012C5544BF584
+
+I=60
+KEY=00000000000000100000000000000000
+CT=DF9C0130AC77E7C72C997F587B46DBE0
+
+I=61
+KEY=00000000000000080000000000000000
+CT=E7F1B82CADC53A648798945B34EFEFF2
+
+I=62
+KEY=00000000000000040000000000000000
+CT=932C6DBF69255CF13EDCDB72233ACEA3
+
+I=63
+KEY=00000000000000020000000000000000
+CT=5C76002BC7206560EFE550C80B8F12CC
+
+I=64
+KEY=00000000000000010000000000000000
+CT=F6B7BDD1CAEEBAB574683893C4475484
+
+I=65
+KEY=00000000000000008000000000000000
+CT=A920E37CC6DC6B31DA8C0169569F5034
+
+I=66
+KEY=00000000000000004000000000000000
+CT=919380ECD9C778BC513148B0C28D65FD
+
+I=67
+KEY=00000000000000002000000000000000
+CT=EE67308DD3F2D9E6C2170755E5784BE1
+
+I=68
+KEY=00000000000000001000000000000000
+CT=3CC73E53B85609023A05E149B223AE09
+
+I=69
+KEY=00000000000000000800000000000000
+CT=983E8AF7CF05EBB28D71EB841C9406E6
+
+I=70
+KEY=00000000000000000400000000000000
+CT=0F3099B2D31FA5299EE5BF43193287FC
+
+I=71
+KEY=00000000000000000200000000000000
+CT=B763D84F38C27FE6931DCEB6715D4DB6
+
+I=72
+KEY=00000000000000000100000000000000
+CT=5AE3C9B0E3CC29C0C61565CD01F8A248
+
+I=73
+KEY=00000000000000000080000000000000
+CT=F58083572CD90981958565D48D2DEE25
+
+I=74
+KEY=00000000000000000040000000000000
+CT=7E6255EEF8F70C0EF10337AAB1CCCEF8
+
+I=75
+KEY=00000000000000000020000000000000
+CT=AAD4BAC34DB22821841CE2F631961902
+
+I=76
+KEY=00000000000000000010000000000000
+CT=D7431C0409BB1441BA9C6858DC7D4E81
+
+I=77
+KEY=00000000000000000008000000000000
+CT=EF9298C65E339F6E801A59C626456993
+
+I=78
+KEY=00000000000000000004000000000000
+CT=53FE29F68FF541ABC3F0EF3350B72F7E
+
+I=79
+KEY=00000000000000000002000000000000
+CT=F6BBA5C10DB02529E2C2DA3FB582CC14
+
+I=80
+KEY=00000000000000000001000000000000
+CT=E4239AA37FC531A386DAD1126FC0E9CD
+
+I=81
+KEY=00000000000000000000800000000000
+CT=8F7758F857D15BBE7BFD0E416404C365
+
+I=82
+KEY=00000000000000000000400000000000
+CT=D273EB57C687BCD1B4EA7218A509E7B8
+
+I=83
+KEY=00000000000000000000200000000000
+CT=65D64F8D76E8B3423FA25C4EB58A210A
+
+I=84
+KEY=00000000000000000000100000000000
+CT=623D802B4EC450D66A16625702FCDBE0
+
+I=85
+KEY=00000000000000000000080000000000
+CT=7496460CB28E5791BAEAF9B68FB00022
+
+I=86
+KEY=00000000000000000000040000000000
+CT=34EA600F18BB0694B41681A49D510C1D
+
+I=87
+KEY=00000000000000000000020000000000
+CT=5F8FF0D47D5766D29B5D6E8F46423BD8
+
+I=88
+KEY=00000000000000000000010000000000
+CT=225F9286C5928BF09F84D3F93F541959
+
+I=89
+KEY=00000000000000000000008000000000
+CT=B21E90D25DF383416A5F072CEBEB1FFB
+
+I=90
+KEY=00000000000000000000004000000000
+CT=4AEFCDA089318125453EB9E8EB5E492E
+
+I=91
+KEY=00000000000000000000002000000000
+CT=4D3E75C6CD40EC4869BC85158591ADB8
+
+I=92
+KEY=00000000000000000000001000000000
+CT=63A8B904405436A1B99D7751866771B7
+
+I=93
+KEY=00000000000000000000000800000000
+CT=64F0DAAE47529199792EAE172BA53293
+
+I=94
+KEY=00000000000000000000000400000000
+CT=C3EEF84BEA18225D515A8C852A9047EE
+
+I=95
+KEY=00000000000000000000000200000000
+CT=A44AC422B47D47B81AF73B3E9AC9596E
+
+I=96
+KEY=00000000000000000000000100000000
+CT=D16E04A8FBC435094F8D53ADF25F5084
+
+I=97
+KEY=00000000000000000000000080000000
+CT=EF13DC34BAB03E124EEAD8B6BF44B532
+
+I=98
+KEY=00000000000000000000000040000000
+CT=D94799075C24DCC067AF0D392049250D
+
+I=99
+KEY=00000000000000000000000020000000
+CT=14F431771EDDCE4764C21A2254B5E3C8
+
+I=100
+KEY=00000000000000000000000010000000
+CT=7039329F36F2ED682B02991F28D64679
+
+I=101
+KEY=00000000000000000000000008000000
+CT=124EE24EDE5551639DB8B8B941F6141D
+
+I=102
+KEY=00000000000000000000000004000000
+CT=C2852879A34D5184E478EC918B993FEE
+
+I=103
+KEY=00000000000000000000000002000000
+CT=86A806A3525B93E432053C9AB5ABBEDF
+
+I=104
+KEY=00000000000000000000000001000000
+CT=C1609BF5A4F07E37C17A36366EC23ECC
+
+I=105
+KEY=00000000000000000000000000800000
+CT=7E81E7CB92159A51FFCEA331B1E8EA53
+
+I=106
+KEY=00000000000000000000000000400000
+CT=37A7BE002856C5A59A6E03EAFCE7729A
+
+I=107
+KEY=00000000000000000000000000200000
+CT=BDF98A5A4F91E890C9A1D1E5FAAB138F
+
+I=108
+KEY=00000000000000000000000000100000
+CT=4E96ACB66E051F2BC739CC3D3E34A26B
+
+I=109
+KEY=00000000000000000000000000080000
+CT=EE996CDD120EB86E21ECFA49E8E1FCF1
+
+I=110
+KEY=00000000000000000000000000040000
+CT=61B9E6B579DBF6070C351A1440DD85FF
+
+I=111
+KEY=00000000000000000000000000020000
+CT=AC369E484316440B40DFC83AA96E28E7
+
+I=112
+KEY=00000000000000000000000000010000
+CT=0A2D16DE985C76D45C579C1159413BBE
+
+I=113
+KEY=00000000000000000000000000008000
+CT=DA3FDC38DA1D374FA4802CDA1A1C6B0F
+
+I=114
+KEY=00000000000000000000000000004000
+CT=B842523D4C41C2211AFE43A5800ADCE3
+
+I=115
+KEY=00000000000000000000000000002000
+CT=9E2CDA90D8E992DBA6C73D8229567192
+
+I=116
+KEY=00000000000000000000000000001000
+CT=D49583B781D9E20F5BE101415957FC49
+
+I=117
+KEY=00000000000000000000000000000800
+CT=EF09DA5C12B376E458B9B8670032498E
+
+I=118
+KEY=00000000000000000000000000000400
+CT=A96BE0463DA774461A5E1D5A9DD1AC10
+
+I=119
+KEY=00000000000000000000000000000200
+CT=32CEE3341060790D2D4B1362EF397090
+
+I=120
+KEY=00000000000000000000000000000100
+CT=21CEA416A3D3359D2C4D58FB6A035F06
+
+I=121
+KEY=00000000000000000000000000000080
+CT=172AEAB3D507678ECAF455C12587ADB7
+
+I=122
+KEY=00000000000000000000000000000040
+CT=B6F897941EF8EBFF9FE80A567EF38478
+
+I=123
+KEY=00000000000000000000000000000020
+CT=A9723259D94A7DC662FB0C782CA3F1DD
+
+I=124
+KEY=00000000000000000000000000000010
+CT=2F91C984B9A4839F30001B9F430493B4
+
+I=125
+KEY=00000000000000000000000000000008
+CT=0472406345A610B048CB99EE0EF3FA0F
+
+I=126
+KEY=00000000000000000000000000000004
+CT=F5F39086646F8C05ED16EFA4B617957C
+
+I=127
+KEY=00000000000000000000000000000002
+CT=26D50F485A30408D5AF47A5736292450
+
+I=128
+KEY=00000000000000000000000000000001
+CT=0545AAD56DA2A97C3663D1432A3D1C84
+
+==========
+
+KEYSIZE=192
+
+PT=00000000000000000000000000000000
+
+I=1
+KEY=800000000000000000000000000000000000000000000000
+CT=DE885DC87F5A92594082D02CC1E1B42C
+
+I=2
+KEY=400000000000000000000000000000000000000000000000
+CT=C749194F94673F9DD2AA1932849630C1
+
+I=3
+KEY=200000000000000000000000000000000000000000000000
+CT=0CEF643313912934D310297B90F56ECC
+
+I=4
+KEY=100000000000000000000000000000000000000000000000
+CT=C4495D39D4A553B225FBA02A7B1B87E1
+
+I=5
+KEY=080000000000000000000000000000000000000000000000
+CT=636D10B1A0BCAB541D680A7970ADC830
+
+I=6
+KEY=040000000000000000000000000000000000000000000000
+CT=07CF045786BD6AFCC147D99E45A901A7
+
+I=7
+KEY=020000000000000000000000000000000000000000000000
+CT=6A8E3F425A7599348F95398448827976
+
+I=8
+KEY=010000000000000000000000000000000000000000000000
+CT=5518276836148A00D91089A20D8BFF57
+
+I=9
+KEY=008000000000000000000000000000000000000000000000
+CT=F267E07B5E87E3BC20B969C61D4FCB06
+
+I=10
+KEY=004000000000000000000000000000000000000000000000
+CT=5A1CDE69571D401BFCD20DEBADA2212C
+
+I=11
+KEY=002000000000000000000000000000000000000000000000
+CT=70A9057263254701D12ADD7D74CD509E
+
+I=12
+KEY=001000000000000000000000000000000000000000000000
+CT=35713A7E108031279388A33A0FE2E190
+
+I=13
+KEY=000800000000000000000000000000000000000000000000
+CT=E74EDE82B1254714F0C7B4B243108655
+
+I=14
+KEY=000400000000000000000000000000000000000000000000
+CT=39272E3100FAA37B55B862320D1B3EB3
+
+I=15
+KEY=000200000000000000000000000000000000000000000000
+CT=6D6E24C659FC5AEF712F77BCA19C9DD0
+
+I=16
+KEY=000100000000000000000000000000000000000000000000
+CT=76D18212F972370D3CC2C6C372C6CF2F
+
+I=17
+KEY=000080000000000000000000000000000000000000000000
+CT=B21A1F0BAE39E55C7594ED570A7783EA
+
+I=18
+KEY=000040000000000000000000000000000000000000000000
+CT=77DE202111895AC48DD1C974B358B458
+
+I=19
+KEY=000020000000000000000000000000000000000000000000
+CT=67810B311969012AAF7B504FFAF39FD1
+
+I=20
+KEY=000010000000000000000000000000000000000000000000
+CT=C22EA2344D3E9417A6BA07843E713AEA
+
+I=21
+KEY=000008000000000000000000000000000000000000000000
+CT=C79CAF4B97BEE0BD0630AB354539D653
+
+I=22
+KEY=000004000000000000000000000000000000000000000000
+CT=135FD1AF761D9AE23DF4AA6B86760DB4
+
+I=23
+KEY=000002000000000000000000000000000000000000000000
+CT=D4659D0B06ACD4D56AB8D11A16FD83B9
+
+I=24
+KEY=000001000000000000000000000000000000000000000000
+CT=F7D270028FC188E4E4F35A4AAA25D4D4
+
+I=25
+KEY=000000800000000000000000000000000000000000000000
+CT=345CAE5A8C9620A9913D5473985852FF
+
+I=26
+KEY=000000400000000000000000000000000000000000000000
+CT=4E8980ADDE60B0E42C0B287FEA41E729
+
+I=27
+KEY=000000200000000000000000000000000000000000000000
+CT=F11B6D74E1F15155633DC39743C1A527
+
+I=28
+KEY=000000100000000000000000000000000000000000000000
+CT=9C87916C0180064F9D3179C6F5DD8C35
+
+I=29
+KEY=000000080000000000000000000000000000000000000000
+CT=71AB186BCAEA518E461D4F7FAD230E6A
+
+I=30
+KEY=000000040000000000000000000000000000000000000000
+CT=C4A31BBC3DAAF742F9141C2A5001A49C
+
+I=31
+KEY=000000020000000000000000000000000000000000000000
+CT=E7C47B7B1D40F182A8928C8A55671D07
+
+I=32
+KEY=000000010000000000000000000000000000000000000000
+CT=8E17F294B28FA373C6249538868A7EEF
+
+I=33
+KEY=000000008000000000000000000000000000000000000000
+CT=754404096A5CBC08AF09491BE249141A
+
+I=34
+KEY=000000004000000000000000000000000000000000000000
+CT=101CB56E55F05D86369B6D1069204F0A
+
+I=35
+KEY=000000002000000000000000000000000000000000000000
+CT=73F19BB6604205C6EE227B9759791E41
+
+I=36
+KEY=000000001000000000000000000000000000000000000000
+CT=6270C0028F0D136C37A56B2CB64D24D6
+
+I=37
+KEY=000000000800000000000000000000000000000000000000
+CT=A3BF7C2C38D1114A087ECF212E694346
+
+I=38
+KEY=000000000400000000000000000000000000000000000000
+CT=49CABFF2CEF7D9F95F5EFB1F7A1A7DDE
+
+I=39
+KEY=000000000200000000000000000000000000000000000000
+CT=EC7F8A47CC59B849469255AD49F62752
+
+I=40
+KEY=000000000100000000000000000000000000000000000000
+CT=68FAE55A13EFAF9B07B3552A8A0DC9D1
+
+I=41
+KEY=000000000080000000000000000000000000000000000000
+CT=211E6B19C69FAEF481F64F24099CDA65
+
+I=42
+KEY=000000000040000000000000000000000000000000000000
+CT=DBB918C75BC5732416F79FB0C8EE4C5C
+
+I=43
+KEY=000000000020000000000000000000000000000000000000
+CT=98D494E5D963A6C8B92536D3EC35E3FD
+
+I=44
+KEY=000000000010000000000000000000000000000000000000
+CT=C9A873404D403D6F074190851D67781A
+
+I=45
+KEY=000000000008000000000000000000000000000000000000
+CT=073AEF4A7C77D921928CB0DD9D27CAE7
+
+I=46
+KEY=000000000004000000000000000000000000000000000000
+CT=89BDE25CEE36FDE769A10E52298CF90F
+
+I=47
+KEY=000000000002000000000000000000000000000000000000
+CT=26D0842D37EAD38557C65E0A5E5F122E
+
+I=48
+KEY=000000000001000000000000000000000000000000000000
+CT=F8294BA375AF46B3F22905BBAFFAB107
+
+I=49
+KEY=000000000000800000000000000000000000000000000000
+CT=2AD63EB4D0D43813B979CF72B35BDB94
+
+I=50
+KEY=000000000000400000000000000000000000000000000000
+CT=7710C171EE0F4EFA39BE4C995180181D
+
+I=51
+KEY=000000000000200000000000000000000000000000000000
+CT=C0CB2B40DBA7BE8C0698FAE1E4B80FF8
+
+I=52
+KEY=000000000000100000000000000000000000000000000000
+CT=97970E505194622FD955CA1B80B784E9
+
+I=53
+KEY=000000000000080000000000000000000000000000000000
+CT=7CB1824B29F850900DF2CAD9CF04C1CF
+
+I=54
+KEY=000000000000040000000000000000000000000000000000
+CT=FDF4F036BB988E42F2F62DE63FE19A64
+
+I=55
+KEY=000000000000020000000000000000000000000000000000
+CT=08908CFE2C82606B2C15DF61B75CF3E2
+
+I=56
+KEY=000000000000010000000000000000000000000000000000
+CT=B3AA689EF2D07FF365ACB9ADBA2AF07A
+
+I=57
+KEY=000000000000008000000000000000000000000000000000
+CT=F2672CD8EAA3B98776660D0263656F5C
+
+I=58
+KEY=000000000000004000000000000000000000000000000000
+CT=5BDEAC00E986687B9E1D94A0DA7BF452
+
+I=59
+KEY=000000000000002000000000000000000000000000000000
+CT=E6D57BD66EA1627363EE0C4B711B0B21
+
+I=60
+KEY=000000000000001000000000000000000000000000000000
+CT=03730DD6ACB4AD9996A63BE7765EC06F
+
+I=61
+KEY=000000000000000800000000000000000000000000000000
+CT=A470E361AA5437B2BE8586D2F78DE582
+
+I=62
+KEY=000000000000000400000000000000000000000000000000
+CT=7567FEEFA559911FD479670246B484E3
+
+I=63
+KEY=000000000000000200000000000000000000000000000000
+CT=29829DEA15A4E7A4C049045E7B106E29
+
+I=64
+KEY=000000000000000100000000000000000000000000000000
+CT=A407834C3D89D48A2CB7A152208FA4ED
+
+I=65
+KEY=000000000000000080000000000000000000000000000000
+CT=68F948053F78FEF0D8F9FE7EF3A89819
+
+I=66
+KEY=000000000000000040000000000000000000000000000000
+CT=B605174CAB13AD8FE3B20DA3AE7B0234
+
+I=67
+KEY=000000000000000020000000000000000000000000000000
+CT=CCAB8F0AEBFF032893996D383CBFDBFA
+
+I=68
+KEY=000000000000000010000000000000000000000000000000
+CT=AF14BB8428C9730B7DC17B6C1CBEBCC8
+
+I=69
+KEY=000000000000000008000000000000000000000000000000
+CT=5A41A21332040877EB7B89E8E80D19FE
+
+I=70
+KEY=000000000000000004000000000000000000000000000000
+CT=AC1BA52EFCDDE368B1596F2F0AD893A0
+
+I=71
+KEY=000000000000000002000000000000000000000000000000
+CT=41B890E31B9045E6ECDC1BC3F2DB9BCC
+
+I=72
+KEY=000000000000000001000000000000000000000000000000
+CT=4D54A549728E55B19A23660424A0F146
+
+I=73
+KEY=000000000000000000800000000000000000000000000000
+CT=A917581F41C47C7DDCFFD5285E2D6A61
+
+I=74
+KEY=000000000000000000400000000000000000000000000000
+CT=604DF24BA6099B93A7405A524D764FCB
+
+I=75
+KEY=000000000000000000200000000000000000000000000000
+CT=78D9D156F28B190E232D1B7AE7FC730A
+
+I=76
+KEY=000000000000000000100000000000000000000000000000
+CT=5A12C39E442CD7F27B3CD77F5D029582
+
+I=77
+KEY=000000000000000000080000000000000000000000000000
+CT=FF2BF2F47CF7B0F28EE25AF95DBF790D
+
+I=78
+KEY=000000000000000000040000000000000000000000000000
+CT=1863BB7D193BDA39DF090659EB8AE48B
+
+I=79
+KEY=000000000000000000020000000000000000000000000000
+CT=38178F2FB4CFCF31E87E1ABCDC023EB5
+
+I=80
+KEY=000000000000000000010000000000000000000000000000
+CT=F5B13DC690CC0D541C6BA533023DC8C9
+
+I=81
+KEY=000000000000000000008000000000000000000000000000
+CT=48EC05238D7375D126DC9D08884D4827
+
+I=82
+KEY=000000000000000000004000000000000000000000000000
+CT=ACD0D81139691B310B92A6E377BACC87
+
+I=83
+KEY=000000000000000000002000000000000000000000000000
+CT=9A4AA43578B55CE9CC178F0D2E162C79
+
+I=84
+KEY=000000000000000000001000000000000000000000000000
+CT=08AD94BC737DB3C87D49B9E01B720D81
+
+I=85
+KEY=000000000000000000000800000000000000000000000000
+CT=3BCFB2D5D210E8332900C5991D551A2A
+
+I=86
+KEY=000000000000000000000400000000000000000000000000
+CT=C5F0C6B9397ACB29635CE1A0DA2D8D96
+
+I=87
+KEY=000000000000000000000200000000000000000000000000
+CT=844A29EFC693E2FA9900F87FBF5DCD5F
+
+I=88
+KEY=000000000000000000000100000000000000000000000000
+CT=5126A1C41051FEA158BE41200E1EA59D
+
+I=89
+KEY=000000000000000000000080000000000000000000000000
+CT=302123CA7B4F46D667FFFB0EB6AA7703
+
+I=90
+KEY=000000000000000000000040000000000000000000000000
+CT=A9D16BCE7DB5C024277709EE2A88D91A
+
+I=91
+KEY=000000000000000000000020000000000000000000000000
+CT=F013C5EC123A26CFC34B598C992A996B
+
+I=92
+KEY=000000000000000000000010000000000000000000000000
+CT=E38A825CD971A1D2E56FB1DBA248F2A8
+
+I=93
+KEY=000000000000000000000008000000000000000000000000
+CT=6E701773C0311E0BD4C5A097406D22B3
+
+I=94
+KEY=000000000000000000000004000000000000000000000000
+CT=754262CEF0C64BE4C3E67C35ABE439F7
+
+I=95
+KEY=000000000000000000000002000000000000000000000000
+CT=C9C2D4C47DF7D55CFA0EE5F1FE5070F4
+
+I=96
+KEY=000000000000000000000001000000000000000000000000
+CT=6AB4BEA85B172573D8BD2D5F4329F13D
+
+I=97
+KEY=000000000000000000000000800000000000000000000000
+CT=11F03EF28E2CC9AE5165C587F7396C8C
+
+I=98
+KEY=000000000000000000000000400000000000000000000000
+CT=0682F2EB1A68BAC7949922C630DD27FA
+
+I=99
+KEY=000000000000000000000000200000000000000000000000
+CT=ABB0FEC0413D659AFE8E3DCF6BA873BB
+
+I=100
+KEY=000000000000000000000000100000000000000000000000
+CT=FE86A32E19F805D6569B2EFADD9C92AA
+
+I=101
+KEY=000000000000000000000000080000000000000000000000
+CT=E434E472275D1837D3D717F2EECC88C3
+
+I=102
+KEY=000000000000000000000000040000000000000000000000
+CT=74E57DCD12A21D26EF8ADAFA5E60469A
+
+I=103
+KEY=000000000000000000000000020000000000000000000000
+CT=C275429D6DAD45DDD423FA63C816A9C1
+
+I=104
+KEY=000000000000000000000000010000000000000000000000
+CT=7F6EC1A9AE729E86F7744AED4B8F4F07
+
+I=105
+KEY=000000000000000000000000008000000000000000000000
+CT=48B5A71AB9292BD4F9E608EF102636B2
+
+I=106
+KEY=000000000000000000000000004000000000000000000000
+CT=076FB95D5F536C78CBED3181BCCF3CF1
+
+I=107
+KEY=000000000000000000000000002000000000000000000000
+CT=BFA76BEA1E684FD3BF9256119EE0BC0F
+
+I=108
+KEY=000000000000000000000000001000000000000000000000
+CT=7D395923D56577F3FF8670998F8C4A71
+
+I=109
+KEY=000000000000000000000000000800000000000000000000
+CT=BA02C986E529AC18A882C34BA389625F
+
+I=110
+KEY=000000000000000000000000000400000000000000000000
+CT=3DFCF2D882AFE75D3A191193013A84B5
+
+I=111
+KEY=000000000000000000000000000200000000000000000000
+CT=FAD1FDE1D0241784B63080D2C74D236C
+
+I=112
+KEY=000000000000000000000000000100000000000000000000
+CT=7D6C80D39E41F007A14FB9CD2B2C15CD
+
+I=113
+KEY=000000000000000000000000000080000000000000000000
+CT=7975F401FC10637BB33EA2DB058FF6EC
+
+I=114
+KEY=000000000000000000000000000040000000000000000000
+CT=657983865C55A818F02B7FCD52ED7E99
+
+I=115
+KEY=000000000000000000000000000020000000000000000000
+CT=B32BEB1776F9827FF4C3AC9997E84B20
+
+I=116
+KEY=000000000000000000000000000010000000000000000000
+CT=2AE2C7C374F0A41E3D46DBC3E66BB59F
+
+I=117
+KEY=000000000000000000000000000008000000000000000000
+CT=4D835E4ABDD4BDC6B88316A6E931A07F
+
+I=118
+KEY=000000000000000000000000000004000000000000000000
+CT=E07EFABFF1C353F7384EBB87B435A3F3
+
+I=119
+KEY=000000000000000000000000000002000000000000000000
+CT=ED3088DC3FAF89AD87B4356FF1BB09C2
+
+I=120
+KEY=000000000000000000000000000001000000000000000000
+CT=4324D01140C156FC898C2E32BA03FB05
+
+I=121
+KEY=000000000000000000000000000000800000000000000000
+CT=BE15D016FACB5BAFBC24FA9289132166
+
+I=122
+KEY=000000000000000000000000000000400000000000000000
+CT=AC9B7048EDB1ACF4D97A5B0B3F50884B
+
+I=123
+KEY=000000000000000000000000000000200000000000000000
+CT=448BECE1F86C7845DFA9A4BB2A016FB3
+
+I=124
+KEY=000000000000000000000000000000100000000000000000
+CT=10DD445E87686EB46EA9B1ABC49257F0
+
+I=125
+KEY=000000000000000000000000000000080000000000000000
+CT=B7FCCF7659FA756D4B7303EEA6C07458
+
+I=126
+KEY=000000000000000000000000000000040000000000000000
+CT=289117115CA3513BAA7640B1004872C2
+
+I=127
+KEY=000000000000000000000000000000020000000000000000
+CT=57CB42F7EE7186051F50B93FFA7B35BF
+
+I=128
+KEY=000000000000000000000000000000010000000000000000
+CT=F2741BFBFB81663B9136802FB9C3126A
+
+I=129
+KEY=000000000000000000000000000000008000000000000000
+CT=E32DDDC5C7398C096E3BD535B31DB5CE
+
+I=130
+KEY=000000000000000000000000000000004000000000000000
+CT=81D3C204E608AF9CC713EAEBCB72433F
+
+I=131
+KEY=000000000000000000000000000000002000000000000000
+CT=D4DEEF4BFC36AAA579496E6935F8F98E
+
+I=132
+KEY=000000000000000000000000000000001000000000000000
+CT=C356DB082B97802B038571C392C5C8F6
+
+I=133
+KEY=000000000000000000000000000000000800000000000000
+CT=A3919ECD4861845F2527B77F06AC6A4E
+
+I=134
+KEY=000000000000000000000000000000000400000000000000
+CT=A53858E17A2F802A20E40D44494FFDA0
+
+I=135
+KEY=000000000000000000000000000000000200000000000000
+CT=5D989E122B78C758921EDBEEB827F0C0
+
+I=136
+KEY=000000000000000000000000000000000100000000000000
+CT=4B1C0C8F9E7830CC3C4BE7BD226FA8DE
+
+I=137
+KEY=000000000000000000000000000000000080000000000000
+CT=82C40C5FD897FBCA7B899C70713573A1
+
+I=138
+KEY=000000000000000000000000000000000040000000000000
+CT=ED13EE2D45E00F75CCDB51EA8E3E36AD
+
+I=139
+KEY=000000000000000000000000000000000020000000000000
+CT=F121799EEFE8432423176A3CCF6462BB
+
+I=140
+KEY=000000000000000000000000000000000010000000000000
+CT=4FA0C06F07997E98271DD86F7B355C50
+
+I=141
+KEY=000000000000000000000000000000000008000000000000
+CT=849EB364B4E81D058649DC5B1BF029B9
+
+I=142
+KEY=000000000000000000000000000000000004000000000000
+CT=F48F9E0DE8DE7AD944A207809335D9B1
+
+I=143
+KEY=000000000000000000000000000000000002000000000000
+CT=E59E9205B5A81A4FD26DFCF308966022
+
+I=144
+KEY=000000000000000000000000000000000001000000000000
+CT=3A91A1BE14AAE9ED700BDF9D70018804
+
+I=145
+KEY=000000000000000000000000000000000000800000000000
+CT=8ABAD78DCB79A48D79070E7DA89664EC
+
+I=146
+KEY=000000000000000000000000000000000000400000000000
+CT=B68377D98AAE6044938A7457F6C649D9
+
+I=147
+KEY=000000000000000000000000000000000000200000000000
+CT=E4E1275C42F5F1B63D662C099D6CE33D
+
+I=148
+KEY=000000000000000000000000000000000000100000000000
+CT=7DEF32A34C6BE668F17DA1BB193B06EF
+
+I=149
+KEY=000000000000000000000000000000000000080000000000
+CT=78B6000CC3D30CB3A74B68D0EDBD2B53
+
+I=150
+KEY=000000000000000000000000000000000000040000000000
+CT=0A47531DE88DD8AE5C23EAE4F7D1F2D5
+
+I=151
+KEY=000000000000000000000000000000000000020000000000
+CT=667B24E8000CF68231EC484581D922E5
+
+I=152
+KEY=000000000000000000000000000000000000010000000000
+CT=39DAA5EBD4AACAE130E9C33236C52024
+
+I=153
+KEY=000000000000000000000000000000000000008000000000
+CT=E3C88760B3CB21360668A63E55BB45D1
+
+I=154
+KEY=000000000000000000000000000000000000004000000000
+CT=F131EE903C1CDB49D416866FD5D8DE51
+
+I=155
+KEY=000000000000000000000000000000000000002000000000
+CT=7A1916135B0447CF4033FC13047A583A
+
+I=156
+KEY=000000000000000000000000000000000000001000000000
+CT=F7D55FB27991143DCDFA90DDF0424FCB
+
+I=157
+KEY=000000000000000000000000000000000000000800000000
+CT=EA93E7D1CA1111DBD8F7EC111A848C0C
+
+I=158
+KEY=000000000000000000000000000000000000000400000000
+CT=2A689E39DFD3CBCBE221326E95888779
+
+I=159
+KEY=000000000000000000000000000000000000000200000000
+CT=C1CE399CA762318AC2C40D1928B4C57D
+
+I=160
+KEY=000000000000000000000000000000000000000100000000
+CT=D43FB6F2B2879C8BFAF0092DA2CA63ED
+
+I=161
+KEY=000000000000000000000000000000000000000080000000
+CT=224563E617158DF97650AF5D130E78A5
+
+I=162
+KEY=000000000000000000000000000000000000000040000000
+CT=6562FDF6833B7C4F7484AE6EBCC243DD
+
+I=163
+KEY=000000000000000000000000000000000000000020000000
+CT=93D58BA7BED22615D661D002885A7457
+
+I=164
+KEY=000000000000000000000000000000000000000010000000
+CT=9A0EF559003AD9E52D3E09ED3C1D3320
+
+I=165
+KEY=000000000000000000000000000000000000000008000000
+CT=96BAF5A7DC6F3DD27EB4C717A85D261C
+
+I=166
+KEY=000000000000000000000000000000000000000004000000
+CT=B8762E06884900E8452293190E19CCDB
+
+I=167
+KEY=000000000000000000000000000000000000000002000000
+CT=785416A22BD63CBABF4B1789355197D3
+
+I=168
+KEY=000000000000000000000000000000000000000001000000
+CT=A0D20CE1489BAA69A3612DCE90F7ABF6
+
+I=169
+KEY=000000000000000000000000000000000000000000800000
+CT=700244E93DC94230CC607FFBA0E48F32
+
+I=170
+KEY=000000000000000000000000000000000000000000400000
+CT=85329E476829F872A2B4A7E59F91FF2D
+
+I=171
+KEY=000000000000000000000000000000000000000000200000
+CT=E4219B4935D988DB719B8B8B2B53D247
+
+I=172
+KEY=000000000000000000000000000000000000000000100000
+CT=6ACDD04FD13D4DB4409FE8DD13FD737B
+
+I=173
+KEY=000000000000000000000000000000000000000000080000
+CT=9EB7A670AB59E15BE582378701C1EC14
+
+I=174
+KEY=000000000000000000000000000000000000000000040000
+CT=29DF2D6935FE657763BC7A9F22D3D492
+
+I=175
+KEY=000000000000000000000000000000000000000000020000
+CT=99303359D4A13AFDBE6C784028CE533A
+
+I=176
+KEY=000000000000000000000000000000000000000000010000
+CT=FF5C70A6334545F33B9DBF7BEA0417CA
+
+I=177
+KEY=000000000000000000000000000000000000000000008000
+CT=289F58A17E4C50EDA4269EFB3DF55815
+
+I=178
+KEY=000000000000000000000000000000000000000000004000
+CT=EA35DCB416E9E1C2861D1682F062B5EB
+
+I=179
+KEY=000000000000000000000000000000000000000000002000
+CT=3A47BF354BE775383C50B0C0A83E3A58
+
+I=180
+KEY=000000000000000000000000000000000000000000001000
+CT=BF6C1DC069FB95D05D43B01D8206D66B
+
+I=181
+KEY=000000000000000000000000000000000000000000000800
+CT=046D1D580D5898DA6595F32FD1F0C33D
+
+I=182
+KEY=000000000000000000000000000000000000000000000400
+CT=5F57803B7B82A110F7E9855D6A546082
+
+I=183
+KEY=000000000000000000000000000000000000000000000200
+CT=25336ECF34E7BE97862CDFF715FF05A8
+
+I=184
+KEY=000000000000000000000000000000000000000000000100
+CT=ACBAA2A943D8078022D693890E8C4FEF
+
+I=185
+KEY=000000000000000000000000000000000000000000000080
+CT=3947597879F6B58E4E2F0DF825A83A38
+
+I=186
+KEY=000000000000000000000000000000000000000000000040
+CT=4EB8CC3335496130655BF3CA570A4FC0
+
+I=187
+KEY=000000000000000000000000000000000000000000000020
+CT=BBDA7769AD1FDA425E18332D97868824
+
+I=188
+KEY=000000000000000000000000000000000000000000000010
+CT=5E7532D22DDB0829A29C868198397154
+
+I=189
+KEY=000000000000000000000000000000000000000000000008
+CT=E66DA67B630AB7AE3E682855E1A1698E
+
+I=190
+KEY=000000000000000000000000000000000000000000000004
+CT=4D93800F671B48559A64D1EA030A590A
+
+I=191
+KEY=000000000000000000000000000000000000000000000002
+CT=F33159FCC7D9AE30C062CD3B322AC764
+
+I=192
+KEY=000000000000000000000000000000000000000000000001
+CT=8BAE4EFB70D33A9792EEA9BE70889D72
+
+==========
+
+KEYSIZE=256
+
+PT=00000000000000000000000000000000
+
+I=1
+KEY=8000000000000000000000000000000000000000000000000000000000000000
+CT=E35A6DCB19B201A01EBCFA8AA22B5759
+
+I=2
+KEY=4000000000000000000000000000000000000000000000000000000000000000
+CT=5075C2405B76F22F553488CAE47CE90B
+
+I=3
+KEY=2000000000000000000000000000000000000000000000000000000000000000
+CT=49DF95D844A0145A7DE01C91793302D3
+
+I=4
+KEY=1000000000000000000000000000000000000000000000000000000000000000
+CT=E7396D778E940B8418A86120E5F421FE
+
+I=5
+KEY=0800000000000000000000000000000000000000000000000000000000000000
+CT=05F535C36FCEDE4657BE37F4087DB1EF
+
+I=6
+KEY=0400000000000000000000000000000000000000000000000000000000000000
+CT=D0C1DDDD10DA777C68AB36AF51F2C204
+
+I=7
+KEY=0200000000000000000000000000000000000000000000000000000000000000
+CT=1C55FB811B5C6464C4E5DE1535A75514
+
+I=8
+KEY=0100000000000000000000000000000000000000000000000000000000000000
+CT=52917F3AE957D5230D3A2AF57C7B5A71
+
+I=9
+KEY=0080000000000000000000000000000000000000000000000000000000000000
+CT=C6E3D5501752DD5E9AEF086D6B45D705
+
+I=10
+KEY=0040000000000000000000000000000000000000000000000000000000000000
+CT=A24A9C7AF1D9B1E17E1C9A3E711B3FA7
+
+I=11
+KEY=0020000000000000000000000000000000000000000000000000000000000000
+CT=B881ECA724A6D43DBC6B96F6F59A0D20
+
+I=12
+KEY=0010000000000000000000000000000000000000000000000000000000000000
+CT=EC524D9A24DFFF2A9639879B83B8E137
+
+I=13
+KEY=0008000000000000000000000000000000000000000000000000000000000000
+CT=34C4F345F5466215A037F443635D6F75
+
+I=14
+KEY=0004000000000000000000000000000000000000000000000000000000000000
+CT=5BA5055BEDB8895F672E29F2EB5A355D
+
+I=15
+KEY=0002000000000000000000000000000000000000000000000000000000000000
+CT=B3F692AA3A435259EBBEF9B51AD1E08D
+
+I=16
+KEY=0001000000000000000000000000000000000000000000000000000000000000
+CT=414FEB4376F2C64A5D2FBB2ED531BA7D
+
+I=17
+KEY=0000800000000000000000000000000000000000000000000000000000000000
+CT=A20D519E3BCA3303F07E81719F61605E
+
+I=18
+KEY=0000400000000000000000000000000000000000000000000000000000000000
+CT=A08D10E520AF811F45BD60A2DC0DC4B1
+
+I=19
+KEY=0000200000000000000000000000000000000000000000000000000000000000
+CT=B06893A8C563C430E6F3858826EFBBE4
+
+I=20
+KEY=0000100000000000000000000000000000000000000000000000000000000000
+CT=0FFEE26AE2D3929C6BD9C6BEDFF84409
+
+I=21
+KEY=0000080000000000000000000000000000000000000000000000000000000000
+CT=4D0F5E906ED77801FC0EF53EDC5F9E2B
+
+I=22
+KEY=0000040000000000000000000000000000000000000000000000000000000000
+CT=8B6EC00119AD8B026DCE56EA7DEFE930
+
+I=23
+KEY=0000020000000000000000000000000000000000000000000000000000000000
+CT=69026591D43363EE9D83B5007F0B484E
+
+I=24
+KEY=0000010000000000000000000000000000000000000000000000000000000000
+CT=27135D86950C6A2F86872706279A4761
+
+I=25
+KEY=0000008000000000000000000000000000000000000000000000000000000000
+CT=35E6DB8723F281DA410C3AC8535ED77C
+
+I=26
+KEY=0000004000000000000000000000000000000000000000000000000000000000
+CT=57427CF214B8C28E4BBF487CCB8D0E09
+
+I=27
+KEY=0000002000000000000000000000000000000000000000000000000000000000
+CT=6DF01BF56E5131AC87F96E99CAB86367
+
+I=28
+KEY=0000001000000000000000000000000000000000000000000000000000000000
+CT=3856C5B55790B768BBF7D43031579BCF
+
+I=29
+KEY=0000000800000000000000000000000000000000000000000000000000000000
+CT=1E6ED8FB7C15BC4D2F63BA7037ED44D0
+
+I=30
+KEY=0000000400000000000000000000000000000000000000000000000000000000
+CT=E1B2ED6CD8D93D455534E401156D4BCF
+
+I=31
+KEY=0000000200000000000000000000000000000000000000000000000000000000
+CT=EFBCCA5BDFDAD10E875F02336212CE36
+
+I=32
+KEY=0000000100000000000000000000000000000000000000000000000000000000
+CT=0B777F02FD18DCE2646DCFE868DFAFAD
+
+I=33
+KEY=0000000080000000000000000000000000000000000000000000000000000000
+CT=C8A104B5693D1B14F5BF1F10100BF508
+
+I=34
+KEY=0000000040000000000000000000000000000000000000000000000000000000
+CT=4CCE6615244AFCB38408FECE219962EA
+
+I=35
+KEY=0000000020000000000000000000000000000000000000000000000000000000
+CT=F99E7845D3A255B394C9C050CBA258B1
+
+I=36
+KEY=0000000010000000000000000000000000000000000000000000000000000000
+CT=B4AFBB787F9BCFB7B55FDF447F611295
+
+I=37
+KEY=0000000008000000000000000000000000000000000000000000000000000000
+CT=AE1C426A697FAF2808B7EF6ADDB5C020
+
+I=38
+KEY=0000000004000000000000000000000000000000000000000000000000000000
+CT=7572F92811A85B9BDD38DEAD9945BCAE
+
+I=39
+KEY=0000000002000000000000000000000000000000000000000000000000000000
+CT=71BC7AA46E43FB95A181527D9F6A360F
+
+I=40
+KEY=0000000001000000000000000000000000000000000000000000000000000000
+CT=5542EF2923066F1EC8F546DD0D8E7CA8
+
+I=41
+KEY=0000000000800000000000000000000000000000000000000000000000000000
+CT=6B92317C7D623790B748FDD7EFC42422
+
+I=42
+KEY=0000000000400000000000000000000000000000000000000000000000000000
+CT=0FE7C097E899C71EF045360F8D6C25CF
+
+I=43
+KEY=0000000000200000000000000000000000000000000000000000000000000000
+CT=4ECE7EE107D0264D04693151C25B9DF6
+
+I=44
+KEY=0000000000100000000000000000000000000000000000000000000000000000
+CT=FD6AE687CBFCA9E301045888D3BB9605
+
+I=45
+KEY=0000000000080000000000000000000000000000000000000000000000000000
+CT=476B579C8556C7254424902CC1D6D36E
+
+I=46
+KEY=0000000000040000000000000000000000000000000000000000000000000000
+CT=4133CBCDFDD6B8860A1FC18665D6D71B
+
+I=47
+KEY=0000000000020000000000000000000000000000000000000000000000000000
+CT=3B36EC2664798C108B816812C65DFDC7
+
+I=48
+KEY=0000000000010000000000000000000000000000000000000000000000000000
+CT=364E20A234FEA385D48DC5A09C9E70CF
+
+I=49
+KEY=0000000000008000000000000000000000000000000000000000000000000000
+CT=4A4BA25969DE3F5EE5642C71AAD0EFD1
+
+I=50
+KEY=0000000000004000000000000000000000000000000000000000000000000000
+CT=E42CBAAE43297F67A76C1C501BB79E36
+
+I=51
+KEY=0000000000002000000000000000000000000000000000000000000000000000
+CT=23CEDEDA4C15B4C037E8C61492217937
+
+I=52
+KEY=0000000000001000000000000000000000000000000000000000000000000000
+CT=A1719147A1F4A1A1180BD16E8593DCDE
+
+I=53
+KEY=0000000000000800000000000000000000000000000000000000000000000000
+CT=AB82337E9FB0EC60D1F25A1D0014192C
+
+I=54
+KEY=0000000000000400000000000000000000000000000000000000000000000000
+CT=74BF2D8FC5A8388DF1A3A4D7D33FC164
+
+I=55
+KEY=0000000000000200000000000000000000000000000000000000000000000000
+CT=D5B493317E6FBC6FFFD664B3C491368A
+
+I=56
+KEY=0000000000000100000000000000000000000000000000000000000000000000
+CT=BA767381586DA56A2A8D503D5F7ADA0B
+
+I=57
+KEY=0000000000000080000000000000000000000000000000000000000000000000
+CT=E8E6BC57DFE9CCADB0DECABF4E5CF91F
+
+I=58
+KEY=0000000000000040000000000000000000000000000000000000000000000000
+CT=3C8E5A5CDC9CEED90815D1F84BB2998C
+
+I=59
+KEY=0000000000000020000000000000000000000000000000000000000000000000
+CT=283843020BA38F056001B2FD585F7CC9
+
+I=60
+KEY=0000000000000010000000000000000000000000000000000000000000000000
+CT=D8ADC7426F623ECE8741A70621D28870
+
+I=61
+KEY=0000000000000008000000000000000000000000000000000000000000000000
+CT=D7C5C215592D06F00E6A80DA69A28EA9
+
+I=62
+KEY=0000000000000004000000000000000000000000000000000000000000000000
+CT=52CF6FA433C3C870CAC70190358F7F16
+
+I=63
+KEY=0000000000000002000000000000000000000000000000000000000000000000
+CT=F63D442A584DA71786ADEC9F3346DF75
+
+I=64
+KEY=0000000000000001000000000000000000000000000000000000000000000000
+CT=549078F4B0CA7079B45F9A5ADAFAFD99
+
+I=65
+KEY=0000000000000000800000000000000000000000000000000000000000000000
+CT=F2A5986EE4E9984BE2BAFB79EA8152FA
+
+I=66
+KEY=0000000000000000400000000000000000000000000000000000000000000000
+CT=8A74535017B4DB2776668A1FAE64384C
+
+I=67
+KEY=0000000000000000200000000000000000000000000000000000000000000000
+CT=E613342F57A97FD95DC088711A5D0ECD
+
+I=68
+KEY=0000000000000000100000000000000000000000000000000000000000000000
+CT=3FFAEBF6B22CF1DC82AE17CD48175B01
+
+I=69
+KEY=0000000000000000080000000000000000000000000000000000000000000000
+CT=BAFD52EFA15C248CCBF9757735E6B1CE
+
+I=70
+KEY=0000000000000000040000000000000000000000000000000000000000000000
+CT=7AF94BC018D9DDD4539D2DD1C6F4000F
+
+I=71
+KEY=0000000000000000020000000000000000000000000000000000000000000000
+CT=FE177AD61CA0FDB281086FBA8FE76803
+
+I=72
+KEY=0000000000000000010000000000000000000000000000000000000000000000
+CT=74DBEA15E2E9285BAD163D7D534251B6
+
+I=73
+KEY=0000000000000000008000000000000000000000000000000000000000000000
+CT=23DD21331B3A92F200FE56FF050FFE74
+
+I=74
+KEY=0000000000000000004000000000000000000000000000000000000000000000
+CT=A69C5AA34AB20A858CAFA766EACED6D8
+
+I=75
+KEY=0000000000000000002000000000000000000000000000000000000000000000
+CT=3F72BB4DF2A4F941A4A09CB78F04B97A
+
+I=76
+KEY=0000000000000000001000000000000000000000000000000000000000000000
+CT=72CC43577E1FD5FD14622D24D97FCDCC
+
+I=77
+KEY=0000000000000000000800000000000000000000000000000000000000000000
+CT=D83AF8EBE93E0B6B99CAFADE224937D1
+
+I=78
+KEY=0000000000000000000400000000000000000000000000000000000000000000
+CT=44042329128D56CAA8D084C8BD769D1E
+
+I=79
+KEY=0000000000000000000200000000000000000000000000000000000000000000
+CT=14102D72290DE4F2C430ADD1ED64BA1D
+
+I=80
+KEY=0000000000000000000100000000000000000000000000000000000000000000
+CT=449124097B1ECD0AE7065206DF06F03C
+
+I=81
+KEY=0000000000000000000080000000000000000000000000000000000000000000
+CT=D060A99F8CC153A42E11E5F97BD7584A
+
+I=82
+KEY=0000000000000000000040000000000000000000000000000000000000000000
+CT=65605B3EA9261488D53E48602ADEA299
+
+I=83
+KEY=0000000000000000000020000000000000000000000000000000000000000000
+CT=C5E5CAD7A208DE8EA6BE049EFE5C7346
+
+I=84
+KEY=0000000000000000000010000000000000000000000000000000000000000000
+CT=4C280C46D2181646048DD5BC0C0831A5
+
+I=85
+KEY=0000000000000000000008000000000000000000000000000000000000000000
+CT=5DD65CF37F2A0929559AABAFDA08E730
+
+I=86
+KEY=0000000000000000000004000000000000000000000000000000000000000000
+CT=31F2335CAAF264172F69A693225E6D22
+
+I=87
+KEY=0000000000000000000002000000000000000000000000000000000000000000
+CT=3E28B35F99A72662590DA96426DD377F
+
+I=88
+KEY=0000000000000000000001000000000000000000000000000000000000000000
+CT=570F40F5D7B20441486578ED344343BE
+
+I=89
+KEY=0000000000000000000000800000000000000000000000000000000000000000
+CT=C54308AD1C9E3B19F8B7417873045A8C
+
+I=90
+KEY=0000000000000000000000400000000000000000000000000000000000000000
+CT=CBF335E39CE13ADE2B696179E8FD0CE1
+
+I=91
+KEY=0000000000000000000000200000000000000000000000000000000000000000
+CT=9C2FBF422355D8293083D51F4A3C18A9
+
+I=92
+KEY=0000000000000000000000100000000000000000000000000000000000000000
+CT=5ED8B5A31ECEFAB16C9AA6986DA67BCE
+
+I=93
+KEY=0000000000000000000000080000000000000000000000000000000000000000
+CT=627815DCFC814ABC75900041B1DD7B59
+
+I=94
+KEY=0000000000000000000000040000000000000000000000000000000000000000
+CT=9EF3E82A50A59F166260494F7A7F2CC3
+
+I=95
+KEY=0000000000000000000000020000000000000000000000000000000000000000
+CT=878CD0D8D920888B5935D6C351128737
+
+I=96
+KEY=0000000000000000000000010000000000000000000000000000000000000000
+CT=E44429474D6FC3084EB2A6B8B46AF754
+
+I=97
+KEY=0000000000000000000000008000000000000000000000000000000000000000
+CT=EBAACF9641D54E1FB18D0A2BE4F19BE5
+
+I=98
+KEY=0000000000000000000000004000000000000000000000000000000000000000
+CT=13B3BF497CEE780E123C7E193DEA3A01
+
+I=99
+KEY=0000000000000000000000002000000000000000000000000000000000000000
+CT=6E8F381DE00A41161F0DF03B4155BFD4
+
+I=100
+KEY=0000000000000000000000001000000000000000000000000000000000000000
+CT=35E4F29BBA2BAE01144910783C3FEF49
+
+I=101
+KEY=0000000000000000000000000800000000000000000000000000000000000000
+CT=55B17BD66788CEAC366398A31F289FFB
+
+I=102
+KEY=0000000000000000000000000400000000000000000000000000000000000000
+CT=11341F56C0D6D1008D28741DAA7679CE
+
+I=103
+KEY=0000000000000000000000000200000000000000000000000000000000000000
+CT=4DF7253DF421D83358BDBE924745D98C
+
+I=104
+KEY=0000000000000000000000000100000000000000000000000000000000000000
+CT=BAE2EE651116D93EDC8E83B5F3347BE1
+
+I=105
+KEY=0000000000000000000000000080000000000000000000000000000000000000
+CT=F9721ABD06709157183AF3965A659D9D
+
+I=106
+KEY=0000000000000000000000000040000000000000000000000000000000000000
+CT=19A1C252A613FE2860A4AE6D75CE6FA3
+
+I=107
+KEY=0000000000000000000000000020000000000000000000000000000000000000
+CT=B5DDB2F5D9752C949FBDE3FFF5556C6E
+
+I=108
+KEY=0000000000000000000000000010000000000000000000000000000000000000
+CT=81B044FCFFC78ECCFCD171AAD0405C66
+
+I=109
+KEY=0000000000000000000000000008000000000000000000000000000000000000
+CT=C640566D3C06020EB2C42F1D62E56A9B
+
+I=110
+KEY=0000000000000000000000000004000000000000000000000000000000000000
+CT=EA6C4BCF425291679FDFFD26A424FBCC
+
+I=111
+KEY=0000000000000000000000000002000000000000000000000000000000000000
+CT=57F6901465D9440D9F15EE2CBA5A4090
+
+I=112
+KEY=0000000000000000000000000001000000000000000000000000000000000000
+CT=FBCFA74CADC7406260F63D96C8AAB6B1
+
+I=113
+KEY=0000000000000000000000000000800000000000000000000000000000000000
+CT=DFF4F096CEA211D4BBDACA033D0EC7D1
+
+I=114
+KEY=0000000000000000000000000000400000000000000000000000000000000000
+CT=1EE5190D551F0F42F675227A381296A9
+
+I=115
+KEY=0000000000000000000000000000200000000000000000000000000000000000
+CT=F98E1905012E580F097623C10B93054F
+
+I=116
+KEY=0000000000000000000000000000100000000000000000000000000000000000
+CT=E7D43743D21DD3C9F168C86856558B9A
+
+I=117
+KEY=0000000000000000000000000000080000000000000000000000000000000000
+CT=632A9DDA730DAB67593C5D08D8AC1059
+
+I=118
+KEY=0000000000000000000000000000040000000000000000000000000000000000
+CT=E084317000715B9057BC9DE9F3AB6124
+
+I=119
+KEY=0000000000000000000000000000020000000000000000000000000000000000
+CT=61F9EF33A0BB4E666C2ED99101919FAB
+
+I=120
+KEY=0000000000000000000000000000010000000000000000000000000000000000
+CT=6DC1D68A11834657D46703C22578D59A
+
+I=121
+KEY=0000000000000000000000000000008000000000000000000000000000000000
+CT=53AC1548863D3D16F1D4DC7242E05F2C
+
+I=122
+KEY=0000000000000000000000000000004000000000000000000000000000000000
+CT=E82CD587A408306AD78CEAE0916B9F8C
+
+I=123
+KEY=0000000000000000000000000000002000000000000000000000000000000000
+CT=0FD2D40EA6AD17A3A767F0A8600D6295
+
+I=124
+KEY=0000000000000000000000000000001000000000000000000000000000000000
+CT=AD84CC8255ADB39DFCA23F92761AE7E9
+
+I=125
+KEY=0000000000000000000000000000000800000000000000000000000000000000
+CT=F4F20CF7D51BEE7DA024A2B11A7ECA0B
+
+I=126
+KEY=0000000000000000000000000000000400000000000000000000000000000000
+CT=5057691B85D9CE93A193214DB0A016B6
+
+I=127
+KEY=0000000000000000000000000000000200000000000000000000000000000000
+CT=0F58C960876390BDEF4BB6BE95CAA1EE
+
+I=128
+KEY=0000000000000000000000000000000100000000000000000000000000000000
+CT=9A3E66EEBC21BC0BD9430B341EF465FA
+
+I=129
+KEY=0000000000000000000000000000000080000000000000000000000000000000
+CT=20415035F34B8BCBCB28ABF07F78F0D4
+
+I=130
+KEY=0000000000000000000000000000000040000000000000000000000000000000
+CT=AC89FC7BA10479EBF10DE65BCEF89B3C
+
+I=131
+KEY=0000000000000000000000000000000020000000000000000000000000000000
+CT=068FA75A30BE443171AF3F6FEB1A20D2
+
+I=132
+KEY=0000000000000000000000000000000010000000000000000000000000000000
+CT=50E02F213246C525A8C27700CA34B502
+
+I=133
+KEY=0000000000000000000000000000000008000000000000000000000000000000
+CT=227DA47D5A0906DB3AB042BB0A695FB6
+
+I=134
+KEY=0000000000000000000000000000000004000000000000000000000000000000
+CT=8663AC30ED12514F1DE46777F4514BFC
+
+I=135
+KEY=0000000000000000000000000000000002000000000000000000000000000000
+CT=A987D4BC12E1DE9F4B6DF43567C34A8B
+
+I=136
+KEY=0000000000000000000000000000000001000000000000000000000000000000
+CT=6D5A0370F599ACA605F63B04E5143D0C
+
+I=137
+KEY=0000000000000000000000000000000000800000000000000000000000000000
+CT=9809266E378B07B7AFDB3BAA97B7E442
+
+I=138
+KEY=0000000000000000000000000000000000400000000000000000000000000000
+CT=8F753252B30CCCACE12D9A301F4D5090
+
+I=139
+KEY=0000000000000000000000000000000000200000000000000000000000000000
+CT=032465F6C0CE34D41962F561692A1AFF
+
+I=140
+KEY=0000000000000000000000000000000000100000000000000000000000000000
+CT=C50E9AD5BEB8F3B00821DD47FF8AC093
+
+I=141
+KEY=0000000000000000000000000000000000080000000000000000000000000000
+CT=9C6FEA3D46268D54A6829B2AD25BB276
+
+I=142
+KEY=0000000000000000000000000000000000040000000000000000000000000000
+CT=0FD8575E87706F561343D7B3A41E044A
+
+I=143
+KEY=0000000000000000000000000000000000020000000000000000000000000000
+CT=BEE9BEB3739540D88CBCE77925F0A114
+
+I=144
+KEY=0000000000000000000000000000000000010000000000000000000000000000
+CT=D24EAEE7FFFBAC3D6F26C2DCE0DCDE28
+
+I=145
+KEY=0000000000000000000000000000000000008000000000000000000000000000
+CT=47771A90398FF0F7FA821C2F8F5E1398
+
+I=146
+KEY=0000000000000000000000000000000000004000000000000000000000000000
+CT=4639741B6F84B135AD118C8249B64ED0
+
+I=147
+KEY=0000000000000000000000000000000000002000000000000000000000000000
+CT=8EE5505EC85567697A3306F250A27720
+
+I=148
+KEY=0000000000000000000000000000000000001000000000000000000000000000
+CT=7C8A19AC1AEFBC5E0119D91A5F05D4C2
+
+I=149
+KEY=0000000000000000000000000000000000000800000000000000000000000000
+CT=5141B9B672E54773B672E3A6C424887B
+
+I=150
+KEY=0000000000000000000000000000000000000400000000000000000000000000
+CT=B5A2D3CD206653C6402F34FB0AE3613D
+
+I=151
+KEY=0000000000000000000000000000000000000200000000000000000000000000
+CT=0F5BD9408738231D114B0A82753279A3
+
+I=152
+KEY=0000000000000000000000000000000000000100000000000000000000000000
+CT=FEF033FF4268EA487FC74C5E43A45338
+
+I=153
+KEY=0000000000000000000000000000000000000080000000000000000000000000
+CT=A3EDC09DCD529B113910D904AD855581
+
+I=154
+KEY=0000000000000000000000000000000000000040000000000000000000000000
+CT=AB8FBB6F27A0AC7C55B59FDD36B72F1C
+
+I=155
+KEY=0000000000000000000000000000000000000020000000000000000000000000
+CT=EEA44D5ED4D769CC930CD83D8999EC46
+
+I=156
+KEY=0000000000000000000000000000000000000010000000000000000000000000
+CT=6972276803AE9AA7C6F431AB10979C34
+
+I=157
+KEY=0000000000000000000000000000000000000008000000000000000000000000
+CT=86DEAA9F39244101818178474D7DBDE9
+
+I=158
+KEY=0000000000000000000000000000000000000004000000000000000000000000
+CT=88C6B466EA361D662D8D08CBF181F4FE
+
+I=159
+KEY=0000000000000000000000000000000000000002000000000000000000000000
+CT=91AB2C6B7C63FF59F7CBEEBF91B20B95
+
+I=160
+KEY=0000000000000000000000000000000000000001000000000000000000000000
+CT=2DFE6C146AD5B3D8C3C1718F13B48E01
+
+I=161
+KEY=0000000000000000000000000000000000000000800000000000000000000000
+CT=C7CFF1623451711391A302EEC3584AAA
+
+I=162
+KEY=0000000000000000000000000000000000000000400000000000000000000000
+CT=089FE845CC05011686C66019D18BE050
+
+I=163
+KEY=0000000000000000000000000000000000000000200000000000000000000000
+CT=08C8410B9B427211A67124B0DCCEAD48
+
+I=164
+KEY=0000000000000000000000000000000000000000100000000000000000000000
+CT=8D91592F5566085254784606334D7629
+
+I=165
+KEY=0000000000000000000000000000000000000000080000000000000000000000
+CT=3298FEAAF2E1201D6299FF8846639C97
+
+I=166
+KEY=0000000000000000000000000000000000000000040000000000000000000000
+CT=C497CB9F0BDFE0EFC8C2F3F90760AA72
+
+I=167
+KEY=0000000000000000000000000000000000000000020000000000000000000000
+CT=2788AFD046E0309CBE4424690DA2AB89
+
+I=168
+KEY=0000000000000000000000000000000000000000010000000000000000000000
+CT=E9891707F25EF29FEE372890D4258982
+
+I=169
+KEY=0000000000000000000000000000000000000000008000000000000000000000
+CT=DB041D94A23D45D4D4DCED5A030CAF61
+
+I=170
+KEY=0000000000000000000000000000000000000000004000000000000000000000
+CT=FFAFDBF0ECB18DF9EA02C27077448E6D
+
+I=171
+KEY=0000000000000000000000000000000000000000002000000000000000000000
+CT=2DAAA42A7D0A1D3B0E4761D99CF2150A
+
+I=172
+KEY=0000000000000000000000000000000000000000001000000000000000000000
+CT=3B7A54CB7CF30ABE263DD6ED5BFE8D63
+
+I=173
+KEY=0000000000000000000000000000000000000000000800000000000000000000
+CT=EEFA090174C590C448A55D43648F534A
+
+I=174
+KEY=0000000000000000000000000000000000000000000400000000000000000000
+CT=9E15798731ED42F43EA2740A691DA872
+
+I=175
+KEY=0000000000000000000000000000000000000000000200000000000000000000
+CT=31FBD661540A5DEAAD1017CFD3909EC8
+
+I=176
+KEY=0000000000000000000000000000000000000000000100000000000000000000
+CT=CDA9AE05F224140E28CB951721B44D6A
+
+I=177
+KEY=0000000000000000000000000000000000000000000080000000000000000000
+CT=0C5BC512C60A1EAC3434EFB1A8FBB182
+
+I=178
+KEY=0000000000000000000000000000000000000000000040000000000000000000
+CT=AA863610DEEEEB62D045E87EA30B59B5
+
+I=179
+KEY=0000000000000000000000000000000000000000000020000000000000000000
+CT=6AC2448DE568D279C7EEBE1DF403920C
+
+I=180
+KEY=0000000000000000000000000000000000000000000010000000000000000000
+CT=E2011E3D292B26888AE801215FD0CB40
+
+I=181
+KEY=0000000000000000000000000000000000000000000008000000000000000000
+CT=E06F3E15EE3A61672D1C99BADE5B9DBE
+
+I=182
+KEY=0000000000000000000000000000000000000000000004000000000000000000
+CT=BB7027F0548CF6712CEB4C7A4B28E178
+
+I=183
+KEY=0000000000000000000000000000000000000000000002000000000000000000
+CT=061EC21FB70FADBDF87C3BD2AE23825B
+
+I=184
+KEY=0000000000000000000000000000000000000000000001000000000000000000
+CT=4C21F26FE94ABBAC381352375314C3EB
+
+I=185
+KEY=0000000000000000000000000000000000000000000000800000000000000000
+CT=F7CEE6DD99909C2B569EEDA61ED8942E
+
+I=186
+KEY=0000000000000000000000000000000000000000000000400000000000000000
+CT=CE98C4A876C65E4CCB261EBB1D9DF7F5
+
+I=187
+KEY=0000000000000000000000000000000000000000000000200000000000000000
+CT=A5491881CF833C3604ABC08044F402AC
+
+I=188
+KEY=0000000000000000000000000000000000000000000000100000000000000000
+CT=A1BA16E64CCCB3087D57A768507B0BFC
+
+I=189
+KEY=0000000000000000000000000000000000000000000000080000000000000000
+CT=D55951E202D2949EBD3BE43120C738BF
+
+I=190
+KEY=0000000000000000000000000000000000000000000000040000000000000000
+CT=EBB8E43069E69F450EFEC65DCD52B7FD
+
+I=191
+KEY=0000000000000000000000000000000000000000000000020000000000000000
+CT=2B292135663B4AA5ABFE9423D57E7EE9
+
+I=192
+KEY=0000000000000000000000000000000000000000000000010000000000000000
+CT=E91BF974B3BE3AD966249D8655292A85
+
+I=193
+KEY=0000000000000000000000000000000000000000000000008000000000000000
+CT=384365998EAA9562236CC58F6ADF9610
+
+I=194
+KEY=0000000000000000000000000000000000000000000000004000000000000000
+CT=C2E997012AA3D4D8D359C9A947CBE69F
+
+I=195
+KEY=0000000000000000000000000000000000000000000000002000000000000000
+CT=F49421204148BA213BE87E2D5C22B0BF
+
+I=196
+KEY=0000000000000000000000000000000000000000000000001000000000000000
+CT=82ED0ED9953AA92E4DF30929CA65C00F
+
+I=197
+KEY=0000000000000000000000000000000000000000000000000800000000000000
+CT=291EB1D11653C8479437C74A977F5106
+
+I=198
+KEY=0000000000000000000000000000000000000000000000000400000000000000
+CT=BCB997B1939B8983ABD550D6025683E3
+
+I=199
+KEY=0000000000000000000000000000000000000000000000000200000000000000
+CT=1FBA2592C6F489775CAADA71F9B983E9
+
+I=200
+KEY=0000000000000000000000000000000000000000000000000100000000000000
+CT=969F66F217AF1A3DB9E41C1B29039824
+
+I=201
+KEY=0000000000000000000000000000000000000000000000000080000000000000
+CT=A54BB7D6B17E423AC0A7744C19073CB8
+
+I=202
+KEY=0000000000000000000000000000000000000000000000000040000000000000
+CT=B0AC6E6578D1021F47DCF9748A32EAD5
+
+I=203
+KEY=0000000000000000000000000000000000000000000000000020000000000000
+CT=B87B361C3B7B194C77A4358D4669153E
+
+I=204
+KEY=0000000000000000000000000000000000000000000000000010000000000000
+CT=46A133847F96EAA8282A799DC8899D58
+
+I=205
+KEY=0000000000000000000000000000000000000000000000000008000000000000
+CT=2265EC3A9F2D5C9547A091CC8CFB18EA
+
+I=206
+KEY=0000000000000000000000000000000000000000000000000004000000000000
+CT=54CBF3A6FC4FE56D426117AA1FFD1DDE
+
+I=207
+KEY=0000000000000000000000000000000000000000000000000002000000000000
+CT=5312877CCEAB6CFB0905394A370A8003
+
+I=208
+KEY=0000000000000000000000000000000000000000000000000001000000000000
+CT=7190BD6EC613FE38B84ECFE28F702FE4
+
+I=209
+KEY=0000000000000000000000000000000000000000000000000000800000000000
+CT=D1FA5B9CA89A43B04C05F0EF29EF68CD
+
+I=210
+KEY=0000000000000000000000000000000000000000000000000000400000000000
+CT=808285751548ED934FD1056D2D9AE8BA
+
+I=211
+KEY=0000000000000000000000000000000000000000000000000000200000000000
+CT=2758DEF3E7B95A9AE89777BE64D5A6CF
+
+I=212
+KEY=0000000000000000000000000000000000000000000000000000100000000000
+CT=07D81F87DB3E0ACC82B01E08FB22F3C1
+
+I=213
+KEY=0000000000000000000000000000000000000000000000000000080000000000
+CT=8DA250E5553D650711A75EE1CB4FD1C7
+
+I=214
+KEY=0000000000000000000000000000000000000000000000000000040000000000
+CT=A93D946BD0E87F32719DF5F158CEE669
+
+I=215
+KEY=0000000000000000000000000000000000000000000000000000020000000000
+CT=03945236EC2A4D4EAF30B8ABEB54330D
+
+I=216
+KEY=0000000000000000000000000000000000000000000000000000010000000000
+CT=11CC35301F24B79DDE31AEA2D1354F88
+
+I=217
+KEY=0000000000000000000000000000000000000000000000000000008000000000
+CT=E73715B3E8D9A290F44AE6FFBF247E5D
+
+I=218
+KEY=0000000000000000000000000000000000000000000000000000004000000000
+CT=7345E07732B71CB158BBF64CCA5C5B96
+
+I=219
+KEY=0000000000000000000000000000000000000000000000000000002000000000
+CT=6E128F296D24705A1924FD9B70C4ED04
+
+I=220
+KEY=0000000000000000000000000000000000000000000000000000001000000000
+CT=95A789776F036783FBD330947083F54F
+
+I=221
+KEY=0000000000000000000000000000000000000000000000000000000800000000
+CT=360DEC2533EA4AA2E3E54FD3DE2906EB
+
+I=222
+KEY=0000000000000000000000000000000000000000000000000000000400000000
+CT=E68EFD7FECF4D601EA22727BD764965B
+
+I=223
+KEY=0000000000000000000000000000000000000000000000000000000200000000
+CT=9065C64A8BFF44AC33EDBB611CF83D7B
+
+I=224
+KEY=0000000000000000000000000000000000000000000000000000000100000000
+CT=8F33C8DF2A7A51CE8090E8F123BC3723
+
+I=225
+KEY=0000000000000000000000000000000000000000000000000000000080000000
+CT=807F391FFBA8291BA625623210F99018
+
+I=226
+KEY=0000000000000000000000000000000000000000000000000000000040000000
+CT=5E8B3F3A701522CE5CAA761C929D6292
+
+I=227
+KEY=0000000000000000000000000000000000000000000000000000000020000000
+CT=3BA404DC38735A78289E3809E8364835
+
+I=228
+KEY=0000000000000000000000000000000000000000000000000000000010000000
+CT=D23BEDBAD229F8305DC425B6B759DCC9
+
+I=229
+KEY=0000000000000000000000000000000000000000000000000000000008000000
+CT=44880F21CF5913040AE376AEE2A10AD8
+
+I=230
+KEY=0000000000000000000000000000000000000000000000000000000004000000
+CT=9BC98E29D057C0E828C3B5CCE69256C1
+
+I=231
+KEY=0000000000000000000000000000000000000000000000000000000002000000
+CT=B293CC7A975DA141A68279368057CC41
+
+I=232
+KEY=0000000000000000000000000000000000000000000000000000000001000000
+CT=8D60FB87ACD91385B313BE5F1D7BD30F
+
+I=233
+KEY=0000000000000000000000000000000000000000000000000000000000800000
+CT=2C8E56132D70291B303C48FDF75543CD
+
+I=234
+KEY=0000000000000000000000000000000000000000000000000000000000400000
+CT=D1F80035B826791F6CE4E59B7DB1BB0D
+
+I=235
+KEY=0000000000000000000000000000000000000000000000000000000000200000
+CT=42CE6224FC36469339A133DD08173BD4
+
+I=236
+KEY=0000000000000000000000000000000000000000000000000000000000100000
+CT=61817155EA41BCBA2AF7F06AE7CBF585
+
+I=237
+KEY=0000000000000000000000000000000000000000000000000000000000080000
+CT=D1923A9866068D2EF5FB77D57C3315B6
+
+I=238
+KEY=0000000000000000000000000000000000000000000000000000000000040000
+CT=B37CBDB5D719F49691CA968EF2E84140
+
+I=239
+KEY=0000000000000000000000000000000000000000000000000000000000020000
+CT=EC974E653A055D7F8F22171030F68E1D
+
+I=240
+KEY=0000000000000000000000000000000000000000000000000000000000010000
+CT=DDE5D3B9AAD9C32213BB3675A822499C
+
+I=241
+KEY=0000000000000000000000000000000000000000000000000000000000008000
+CT=D3B6E9216EA1AE57EB1C628A3C38AB78
+
+I=242
+KEY=0000000000000000000000000000000000000000000000000000000000004000
+CT=82C99ECC69472B7E96324B042AE8B87A
+
+I=243
+KEY=0000000000000000000000000000000000000000000000000000000000002000
+CT=97144DC5338C43600F84439C0AA0D147
+
+I=244
+KEY=0000000000000000000000000000000000000000000000000000000000001000
+CT=400AC4A0BBADA1DB2121EB144C7E5209
+
+I=245
+KEY=0000000000000000000000000000000000000000000000000000000000000800
+CT=EFD9D550EB419ED278F4885A490AB54C
+
+I=246
+KEY=0000000000000000000000000000000000000000000000000000000000000400
+CT=2AB7816E149B7C0404C88A8857793670
+
+I=247
+KEY=0000000000000000000000000000000000000000000000000000000000000200
+CT=5B591DFF9E8DEE15BAD24C025DBCA481
+
+I=248
+KEY=0000000000000000000000000000000000000000000000000000000000000100
+CT=0C06633E30721C3749F49AD8CBF2B754
+
+I=249
+KEY=0000000000000000000000000000000000000000000000000000000000000080
+CT=96D6D31A41B5123B2035FD91A921D4CA
+
+I=250
+KEY=0000000000000000000000000000000000000000000000000000000000000040
+CT=E7F6C34D86668BC2805CA7793C5E86AD
+
+I=251
+KEY=0000000000000000000000000000000000000000000000000000000000000020
+CT=F46DFF5FF500D6879C4D3E45CF0CF0F3
+
+I=252
+KEY=0000000000000000000000000000000000000000000000000000000000000010
+CT=60D842D9C61DA7495C116197B7CECBBE
+
+I=253
+KEY=0000000000000000000000000000000000000000000000000000000000000008
+CT=D45B24EDB673353EBDF248B8FA06B67A
+
+I=254
+KEY=0000000000000000000000000000000000000000000000000000000000000004
+CT=119EAEBCC165D0BD02C0D35DC82EF992
+
+I=255
+KEY=0000000000000000000000000000000000000000000000000000000000000002
+CT=E673143680414ADA301D0ED34626B9FE
+
+I=256
+KEY=0000000000000000000000000000000000000000000000000000000000000001
+CT=6B6CFE160A6263631B292F879EEFF926
+
+==========
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/weakcryptospi/test/tsymmetric/scripts/Rijndael test data/ecb_vt.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,1566 @@
+
+=========================
+
+FILENAME:  "ecb_vt.txt"
+
+Electronic Codebook (ECB) Mode
+Variable Text Known Answer Tests
+
+Algorithm Name: Rijndael
+Principal Submitter: <as stated on the submission cover sheet>
+
+==========
+
+KEYSIZE=128
+
+KEY=00000000000000000000000000000000
+
+I=1
+PT=80000000000000000000000000000000
+CT=3AD78E726C1EC02B7EBFE92B23D9EC34
+
+I=2
+PT=40000000000000000000000000000000
+CT=45BC707D29E8204D88DFBA2F0B0CAD9B
+
+I=3
+PT=20000000000000000000000000000000
+CT=161556838018F52805CDBD6202002E3F
+
+I=4
+PT=10000000000000000000000000000000
+CT=F5569B3AB6A6D11EFDE1BF0A64C6854A
+
+I=5
+PT=08000000000000000000000000000000
+CT=64E82B50E501FBD7DD4116921159B83E
+
+I=6
+PT=04000000000000000000000000000000
+CT=BAAC12FB613A7DE11450375C74034041
+
+I=7
+PT=02000000000000000000000000000000
+CT=BCF176A7EAAD8085EBACEA362462A281
+
+I=8
+PT=01000000000000000000000000000000
+CT=47711816E91D6FF059BBBF2BF58E0FD3
+
+I=9
+PT=00800000000000000000000000000000
+CT=B970DFBE40698AF1638FE38BD3DF3B2F
+
+I=10
+PT=00400000000000000000000000000000
+CT=F95B59A44F391E14CF20B74BDC32FCFF
+
+I=11
+PT=00200000000000000000000000000000
+CT=720F74AE04A2A435B9A7256E49378F5B
+
+I=12
+PT=00100000000000000000000000000000
+CT=2A0445F61D36BFA7E277070730CF76DA
+
+I=13
+PT=00080000000000000000000000000000
+CT=8D0536B997AEFEC1D94011BAB6699A03
+
+I=14
+PT=00040000000000000000000000000000
+CT=674F002E19F6ED47EFF319E51FAD4498
+
+I=15
+PT=00020000000000000000000000000000
+CT=292C02C5CB9163C80AC0F6CF1DD8E92D
+
+I=16
+PT=00010000000000000000000000000000
+CT=FA321CF18EF5FE727DD82A5C1E945141
+
+I=17
+PT=00008000000000000000000000000000
+CT=A5A7AFE1034C39CCCEBE3C584BC0BE05
+
+I=18
+PT=00004000000000000000000000000000
+CT=4FF5A52E697E77D081205DBDB21CEA39
+
+I=19
+PT=00002000000000000000000000000000
+CT=209E88DC94C9003000CE0769AF7B7166
+
+I=20
+PT=00001000000000000000000000000000
+CT=5DEE41AF864CB4B650E5F51551824D38
+
+I=21
+PT=00000800000000000000000000000000
+CT=A79A63FA7E4503AE6D6E09F5F9053030
+
+I=22
+PT=00000400000000000000000000000000
+CT=A48316749FAE7FAC7002031A6AFD8BA7
+
+I=23
+PT=00000200000000000000000000000000
+CT=D6EEE8A7357A0E1D64262CA9C337AC42
+
+I=24
+PT=00000100000000000000000000000000
+CT=B013CA8A62A858053E9FB667ED39829E
+
+I=25
+PT=00000080000000000000000000000000
+CT=DF6EA9E4538A45A52D5C1A43C88F4B55
+
+I=26
+PT=00000040000000000000000000000000
+CT=7D03BA451371591D3FD5547D9165C73B
+
+I=27
+PT=00000020000000000000000000000000
+CT=0E0426281A6277E186499D365D5F49FF
+
+I=28
+PT=00000010000000000000000000000000
+CT=DBC02169DD2059E6CC4C57C1FEDF5AB4
+
+I=29
+PT=00000008000000000000000000000000
+CT=826590E05D167DA6F00DCC75E22788EB
+
+I=30
+PT=00000004000000000000000000000000
+CT=34A73F21A04421D9786335FAAB49423A
+
+I=31
+PT=00000002000000000000000000000000
+CT=ED347D0E0128EE1A7392A1D36AB78AA9
+
+I=32
+PT=00000001000000000000000000000000
+CT=EE944B2FE6E9FC888042608DA9615F75
+
+I=33
+PT=00000000800000000000000000000000
+CT=9E7C85A909EF7218BA7947CFB4718F46
+
+I=34
+PT=00000000400000000000000000000000
+CT=811AE07A0B2B1F816587FA73699AE77D
+
+I=35
+PT=00000000200000000000000000000000
+CT=68466FBF43C2FE13D4B18F7EC5EA745F
+
+I=36
+PT=00000000100000000000000000000000
+CT=D20B015C7191B219780956E6101F9354
+
+I=37
+PT=00000000080000000000000000000000
+CT=5939D5C1BBF54EE1B3E326D757BDDE25
+
+I=38
+PT=00000000040000000000000000000000
+CT=B1FDAFE9A0240E8FFEA19CE94B5105D3
+
+I=39
+PT=00000000020000000000000000000000
+CT=D62962ECE02CDD68C06BDFEFB2F9495B
+
+I=40
+PT=00000000010000000000000000000000
+CT=B3BB2DE6F3C26587BA8BAC4F7AD9499A
+
+I=41
+PT=00000000008000000000000000000000
+CT=E0B1072D6D9FF703D6FBEF77852B0A6B
+
+I=42
+PT=00000000004000000000000000000000
+CT=D8DD51C907F478DE0228E83E61FD1758
+
+I=43
+PT=00000000002000000000000000000000
+CT=A42DFFE6E7C1671C06A25236FDD10017
+
+I=44
+PT=00000000001000000000000000000000
+CT=25ACF141550BFAB9EF451B6C6A5B2163
+
+I=45
+PT=00000000000800000000000000000000
+CT=4DA7FCA3949B16E821DBC84F19581018
+
+I=46
+PT=00000000000400000000000000000000
+CT=7D49B6347CBCC8919C7FA96A37A7A215
+
+I=47
+PT=00000000000200000000000000000000
+CT=900024B29A08C6721B95BA3B753DDB4D
+
+I=48
+PT=00000000000100000000000000000000
+CT=6D2182FB283B6934D90BA7848CAB5E66
+
+I=49
+PT=00000000000080000000000000000000
+CT=F73EF01B448D23A4D90DE8B2F9666E7A
+
+I=50
+PT=00000000000040000000000000000000
+CT=4AD9CDA2418643E9A3D926AF5E6B0412
+
+I=51
+PT=00000000000020000000000000000000
+CT=7CAEC8E7E5953997D545B033201C8C5B
+
+I=52
+PT=00000000000010000000000000000000
+CT=3C43CA1F6B6864503E27B48D88230CF5
+
+I=53
+PT=00000000000008000000000000000000
+CT=44F779B93108FE9FEEC880D79BA74488
+
+I=54
+PT=00000000000004000000000000000000
+CT=9E50E8D9CFD3A682A78E527C9072A1CF
+
+I=55
+PT=00000000000002000000000000000000
+CT=68D000CBC838BBE3C505D6F814C01F28
+
+I=56
+PT=00000000000001000000000000000000
+CT=2CB2A9FEC1ACD1D9B0FA05205E304F57
+
+I=57
+PT=00000000000000800000000000000000
+CT=01EB2806606E46444520A5CC6180CD4B
+
+I=58
+PT=00000000000000400000000000000000
+CT=DAA9B25168CC702326F217F1A0C0B162
+
+I=59
+PT=00000000000000200000000000000000
+CT=3E07E648975D9578D03555B1755807ED
+
+I=60
+PT=00000000000000100000000000000000
+CT=0B45F52E802C8B8DE09579425B80B711
+
+I=61
+PT=00000000000000080000000000000000
+CT=659595DA0B68F6DF0DD6CA77202986E1
+
+I=62
+PT=00000000000000040000000000000000
+CT=05FF42873893536E58C8FA98A45C73C4
+
+I=63
+PT=00000000000000020000000000000000
+CT=B5B03421DE8BBFFC4EADEC767339A9BD
+
+I=64
+PT=00000000000000010000000000000000
+CT=788BCD111ECF73D4E78D2E21BEF55460
+
+I=65
+PT=00000000000000008000000000000000
+CT=909CD9EC6790359F982DC6F2393D5315
+
+I=66
+PT=00000000000000004000000000000000
+CT=332950F361535FF24EFAC8C76293F12C
+
+I=67
+PT=00000000000000002000000000000000
+CT=A68CCD4E330FFDA9D576DA436DB53D75
+
+I=68
+PT=00000000000000001000000000000000
+CT=27C8A1CCFDB0B015D1ED5B3E77143791
+
+I=69
+PT=00000000000000000800000000000000
+CT=D76A4B95887A77DF610DD3E1D3B20325
+
+I=70
+PT=00000000000000000400000000000000
+CT=C068AB0DE71C66DAE83C361EF4B2D989
+
+I=71
+PT=00000000000000000200000000000000
+CT=C2120BCD49EDA9A288B3B4BE79AC8158
+
+I=72
+PT=00000000000000000100000000000000
+CT=0C546F62BF2773CD0F564FCECA7BA688
+
+I=73
+PT=00000000000000000080000000000000
+CT=18F3462BEDE4920213CCB66DAB1640AA
+
+I=74
+PT=00000000000000000040000000000000
+CT=FE42F245EDD0E24B216AEBD8B392D690
+
+I=75
+PT=00000000000000000020000000000000
+CT=3D3EEBC8D3D1558A194C2D00C337FF2B
+
+I=76
+PT=00000000000000000010000000000000
+CT=29AAEDF043E785DB42836F79BE6CBA28
+
+I=77
+PT=00000000000000000008000000000000
+CT=215F90C6744E2944358E78619159A611
+
+I=78
+PT=00000000000000000004000000000000
+CT=8606B1AA9E1D548E5442B06551E2C6DC
+
+I=79
+PT=00000000000000000002000000000000
+CT=987BB4B8740EC0EDE7FEA97DF033B5B1
+
+I=80
+PT=00000000000000000001000000000000
+CT=C0A3500DA5B0AE07D2F450930BEEDF1B
+
+I=81
+PT=00000000000000000000800000000000
+CT=525FDF8312FE8F32C781481A8DAAAE37
+
+I=82
+PT=00000000000000000000400000000000
+CT=BFD2C56AE5FB9C9DE33A6944572A6487
+
+I=83
+PT=00000000000000000000200000000000
+CT=7975A57A425CDF5AA1FA929101F650B0
+
+I=84
+PT=00000000000000000000100000000000
+CT=BF174BC49609A8709B2CD8366DAA79FE
+
+I=85
+PT=00000000000000000000080000000000
+CT=06C50C43222F56C874B1704E9F44BF7D
+
+I=86
+PT=00000000000000000000040000000000
+CT=0CEC48CD34043EA29CA3B8ED5278721E
+
+I=87
+PT=00000000000000000000020000000000
+CT=9548EA34A1560197B304D0ACB8A1698D
+
+I=88
+PT=00000000000000000000010000000000
+CT=22F9E9B1BD73B6B5B7D3062C986272F3
+
+I=89
+PT=00000000000000000000008000000000
+CT=FEE8E934BD0873295059002230E298D4
+
+I=90
+PT=00000000000000000000004000000000
+CT=1B08E2E3EB820D139CB4ABBDBE81D00D
+
+I=91
+PT=00000000000000000000002000000000
+CT=0021177681E4D90CEAF69DCED0145125
+
+I=92
+PT=00000000000000000000001000000000
+CT=4A8E314452CA8A8A3619FC54BC423643
+
+I=93
+PT=00000000000000000000000800000000
+CT=65047474F7222C94C6965425FF1BFD0A
+
+I=94
+PT=00000000000000000000000400000000
+CT=E123F551A9C4A8489622B16F961A9AA4
+
+I=95
+PT=00000000000000000000000200000000
+CT=EF05530948B80915028BB2B6FE429380
+
+I=96
+PT=00000000000000000000000100000000
+CT=72535B7FE0F0F777CEDCD55CD77E2DDF
+
+I=97
+PT=00000000000000000000000080000000
+CT=3423D8EFC31FA2F4C365C77D8F3B5C63
+
+I=98
+PT=00000000000000000000000040000000
+CT=DE0E51C264663F3C5DBC59580A98D8E4
+
+I=99
+PT=00000000000000000000000020000000
+CT=B2D9391166680947AB09264156719679
+
+I=100
+PT=00000000000000000000000010000000
+CT=10DB79F23B06D263835C424AF749ADB7
+
+I=101
+PT=00000000000000000000000008000000
+CT=DDF72D27E6B01EC107EA3E005B59563B
+
+I=102
+PT=00000000000000000000000004000000
+CT=8266B57485A5954A4236751DE07F6694
+
+I=103
+PT=00000000000000000000000002000000
+CT=669A501E1F1ADE6E5523DE01D6DBC987
+
+I=104
+PT=00000000000000000000000001000000
+CT=C20C48F2989725D461D1DB589DC0896E
+
+I=105
+PT=00000000000000000000000000800000
+CT=DE35158E7810ED1191825D2AA98FA97D
+
+I=106
+PT=00000000000000000000000000400000
+CT=4FE294F2C0F34D0671B693A237EBDDC8
+
+I=107
+PT=00000000000000000000000000200000
+CT=087AE74B10CCBFDF6739FEB9559C01A4
+
+I=108
+PT=00000000000000000000000000100000
+CT=5DC278970B7DEF77A5536C77AB59C207
+
+I=109
+PT=00000000000000000000000000080000
+CT=7607F078C77085184EAA9B060C1FBFFF
+
+I=110
+PT=00000000000000000000000000040000
+CT=9DB841531BCBE7998DAD19993FB3CC00
+
+I=111
+PT=00000000000000000000000000020000
+CT=D6A089B654854A94560BAE13298835B8
+
+I=112
+PT=00000000000000000000000000010000
+CT=E1E223C4CF90CC5D195B370D65114622
+
+I=113
+PT=00000000000000000000000000008000
+CT=1CBED73C50D053BDAD372CEEE54836A1
+
+I=114
+PT=00000000000000000000000000004000
+CT=D309E69376D257ADF2BFDA152B26555F
+
+I=115
+PT=00000000000000000000000000002000
+CT=740F7649117F0DEE6EAA7789A9994C36
+
+I=116
+PT=00000000000000000000000000001000
+CT=76AE64417C297184D668C5FD908B3CE5
+
+I=117
+PT=00000000000000000000000000000800
+CT=6095FEA4AA8035591F1787A819C48787
+
+I=118
+PT=00000000000000000000000000000400
+CT=D1FF4E7ACD1C79967FEBAB0F7465D450
+
+I=119
+PT=00000000000000000000000000000200
+CT=5F5AD3C42B9489557BB63BF49ECF5F8A
+
+I=120
+PT=00000000000000000000000000000100
+CT=FB56CC09B680B1D07C5A52149E29F07C
+
+I=121
+PT=00000000000000000000000000000080
+CT=FF49B8DF4A97CBE03833E66197620DAD
+
+I=122
+PT=00000000000000000000000000000040
+CT=5E070ADE533D2E090ED0F5BE13BC0983
+
+I=123
+PT=00000000000000000000000000000020
+CT=3AB4FB1D2B7BA376590A2C241D1F508D
+
+I=124
+PT=00000000000000000000000000000010
+CT=58B2431BC0BEDE02550F40238969EC78
+
+I=125
+PT=00000000000000000000000000000008
+CT=0253786E126504F0DAB90C48A30321DE
+
+I=126
+PT=00000000000000000000000000000004
+CT=200211214E7394DA2089B6ACD093ABE0
+
+I=127
+PT=00000000000000000000000000000002
+CT=0388DACE60B6A392F328C2B971B2FE78
+
+I=128
+PT=00000000000000000000000000000001
+CT=58E2FCCEFA7E3061367F1D57A4E7455A
+
+==========
+
+KEYSIZE=192
+
+KEY=000000000000000000000000000000000000000000000000
+
+I=1
+PT=80000000000000000000000000000000
+CT=6CD02513E8D4DC986B4AFE087A60BD0C
+
+I=2
+PT=40000000000000000000000000000000
+CT=423D2772A0CA56DAABB48D2129062987
+
+I=3
+PT=20000000000000000000000000000000
+CT=1021F2A8DA70EB2219DC16804445FF98
+
+I=4
+PT=10000000000000000000000000000000
+CT=C636E35B402577F96974D8804295EBB8
+
+I=5
+PT=08000000000000000000000000000000
+CT=1566D2E57E8393C19E29F892EA28A9A7
+
+I=6
+PT=04000000000000000000000000000000
+CT=883C878FED70B36CC09D040F9619DD19
+
+I=7
+PT=02000000000000000000000000000000
+CT=06734593A974965790E715594FC34AA9
+
+I=8
+PT=01000000000000000000000000000000
+CT=F19B389948D9A45534E5BD36C984134A
+
+I=9
+PT=00800000000000000000000000000000
+CT=D8410DFC14FA6D175EC968EA8CAC514C
+
+I=10
+PT=00400000000000000000000000000000
+CT=7E6C6EBB4029A177CF7B2FDD9AC6BB7A
+
+I=11
+PT=00200000000000000000000000000000
+CT=4B51DD4850DC0A6C3A46D924003D2C27
+
+I=12
+PT=00100000000000000000000000000000
+CT=2E510A9D917B15BE32A192B12A668F23
+
+I=13
+PT=00080000000000000000000000000000
+CT=88F6F79962B0FB77FEA8E7C632D3108E
+
+I=14
+PT=00040000000000000000000000000000
+CT=A3A35AB1D88DAF07B52794A0F065383A
+
+I=15
+PT=00020000000000000000000000000000
+CT=DC6CC878433E2B3BB193049A4ECBFC53
+
+I=16
+PT=00010000000000000000000000000000
+CT=EFCD3763EB7B1A415938248A9A5B4FD5
+
+I=17
+PT=00008000000000000000000000000000
+CT=AB7E9FB9A66DBE5BB44854F07D9015EE
+
+I=18
+PT=00004000000000000000000000000000
+CT=8B8E9D3365F8F6743ECF7E33E99255A4
+
+I=19
+PT=00002000000000000000000000000000
+CT=54D37B4F176FF3D8F6AFC866066D8572
+
+I=20
+PT=00001000000000000000000000000000
+CT=E83310889480FBF3C00342E3126D0D02
+
+I=21
+PT=00000800000000000000000000000000
+CT=D321AB2511F92F098174AA2DE6E85DA2
+
+I=22
+PT=00000400000000000000000000000000
+CT=D8E3F40B1112D5149D58C481DFA9983F
+
+I=23
+PT=00000200000000000000000000000000
+CT=2454C4E0806639DDF19854D6C68054AD
+
+I=24
+PT=00000100000000000000000000000000
+CT=A5506D410F7CA32F3955DD79D9D09418
+
+I=25
+PT=00000080000000000000000000000000
+CT=7908EE40677699568A7DC1AA317C7E4E
+
+I=26
+PT=00000040000000000000000000000000
+CT=B4B7B29DD43B2F5CF765E25192273982
+
+I=27
+PT=00000020000000000000000000000000
+CT=92AFE9668159BEFFE2A86F8503260164
+
+I=28
+PT=00000010000000000000000000000000
+CT=5C36A232FBA6D187A84657AD4028B18F
+
+I=29
+PT=00000008000000000000000000000000
+CT=A2E994DFAB3A798DF8F54F6DA87E58E2
+
+I=30
+PT=00000004000000000000000000000000
+CT=6CDAB10A72ADF77D71D0765BAAE95631
+
+I=31
+PT=00000002000000000000000000000000
+CT=9FE3C801BCAAF7BB800F2E6BF3278E21
+
+I=32
+PT=00000001000000000000000000000000
+CT=B459D90D9A6C392E5493BC91CF5A0863
+
+I=33
+PT=00000000800000000000000000000000
+CT=0518A9FA5007F6787E0FB4E5AC27D758
+
+I=34
+PT=00000000400000000000000000000000
+CT=BED9795415D28599700ED7952384A963
+
+I=35
+PT=00000000200000000000000000000000
+CT=F0140421173D60251EF6CAB0229B1B50
+
+I=36
+PT=00000000100000000000000000000000
+CT=460EB4652B3F6779EA28CB11B37529ED
+
+I=37
+PT=00000000080000000000000000000000
+CT=C4283D351C960A6AC13CD19CCF03AE38
+
+I=38
+PT=00000000040000000000000000000000
+CT=6815A10047B2C834A798EBDCC6786C75
+
+I=39
+PT=00000000020000000000000000000000
+CT=99BA19F0CDD5990D0386B32CE56C9C4C
+
+I=40
+PT=00000000010000000000000000000000
+CT=DE76F62C61E07915162DA13E79679DEC
+
+I=41
+PT=00000000008000000000000000000000
+CT=DD0325D6854803D06D1D2277D5FB8D67
+
+I=42
+PT=00000000004000000000000000000000
+CT=580B71A41DE37D6FAC83CCB0B3BB1C97
+
+I=43
+PT=00000000002000000000000000000000
+CT=E9B1AB470A1B02EF0FF5E6754A092C96
+
+I=44
+PT=00000000001000000000000000000000
+CT=8590620F5AF5993B7410282F4126BC1F
+
+I=45
+PT=00000000000800000000000000000000
+CT=8D4914D2F1B22B2E268E66E532D29D7C
+
+I=46
+PT=00000000000400000000000000000000
+CT=FD826CE48E62C5E30867044B86BA4B56
+
+I=47
+PT=00000000000200000000000000000000
+CT=100E7B831C9F35FA1271F5F1316C6FCF
+
+I=48
+PT=00000000000100000000000000000000
+CT=0A2DD0C17F68B996AA96C007003D0B31
+
+I=49
+PT=00000000000080000000000000000000
+CT=C95F68C57E06B0A2E1F623C83C5D80BF
+
+I=50
+PT=00000000000040000000000000000000
+CT=571CAFC92C7C8A5EC54C0741E186905C
+
+I=51
+PT=00000000000020000000000000000000
+CT=22514353E95312C112255E1EED0B2DF6
+
+I=52
+PT=00000000000010000000000000000000
+CT=791A8BF462BD17580BD9152C6D11C6C5
+
+I=53
+PT=00000000000008000000000000000000
+CT=5882A0178D548F84A165DB809C60DC28
+
+I=54
+PT=00000000000004000000000000000000
+CT=3CE4A90EED4458CA6039E42DDADB71C3
+
+I=55
+PT=00000000000002000000000000000000
+CT=D3CBAB261207A16BE2751E77044FD7C9
+
+I=56
+PT=00000000000001000000000000000000
+CT=24E32B698A7B32217093628B01F424AB
+
+I=57
+PT=00000000000000800000000000000000
+CT=9F6AFC0AF27CF565110C77E3C24F4F5B
+
+I=58
+PT=00000000000000400000000000000000
+CT=E088AA5CDA20EF267BB039B00C72C45B
+
+I=59
+PT=00000000000000200000000000000000
+CT=5CF1018B7E0BA1775601C2E279900360
+
+I=60
+PT=00000000000000100000000000000000
+CT=3B1A7388B89FB9416AD8753CF5AF35D2
+
+I=61
+PT=00000000000000080000000000000000
+CT=137FA4ED00AFCD9F5D8BC0D14BD5837A
+
+I=62
+PT=00000000000000040000000000000000
+CT=806F5C9B663559BB56F234881E4A3E60
+
+I=63
+PT=00000000000000020000000000000000
+CT=8069A449152292DF2DE8642992C632B6
+
+I=64
+PT=00000000000000010000000000000000
+CT=37C6CF2A1ABD1B1F1922B46C7B4A280D
+
+I=65
+PT=00000000000000008000000000000000
+CT=7A2835260E5A0AA2B5DC301800EC8438
+
+I=66
+PT=00000000000000004000000000000000
+CT=EE81FAF2F9058213FFCACF281CB8509E
+
+I=67
+PT=00000000000000002000000000000000
+CT=57F22D93C37129BA331FDBA38E005A1E
+
+I=68
+PT=00000000000000001000000000000000
+CT=EC798782E87B7D9F780CC3C3A46519B5
+
+I=69
+PT=00000000000000000800000000000000
+CT=43EA28497F5D40E3A4744FA2EDAA42DE
+
+I=70
+PT=00000000000000000400000000000000
+CT=91F004E7DEBF41B3414DD8C5C317372C
+
+I=71
+PT=00000000000000000200000000000000
+CT=C249EAE54E7B4DF43B938C1B4CC28314
+
+I=72
+PT=00000000000000000100000000000000
+CT=32C289D7EEFB99D2F17AD7B7D45FE1EC
+
+I=73
+PT=00000000000000000080000000000000
+CT=A675FB2E8DDBF810CEF01CF2B728CD2B
+
+I=74
+PT=00000000000000000040000000000000
+CT=A418AAAB6E6921CC731AA8A349386080
+
+I=75
+PT=00000000000000000020000000000000
+CT=2E2B0F44863E67D9B0215C4ABD60417F
+
+I=76
+PT=00000000000000000010000000000000
+CT=F0AF7CB19E911D481F6426DAEFDD2240
+
+I=77
+PT=00000000000000000008000000000000
+CT=CB1304DAAA2DF6878F56AC2E0F887E04
+
+I=78
+PT=00000000000000000004000000000000
+CT=B1B70A7E6A0CD1916D9B78BEA19084AE
+
+I=79
+PT=00000000000000000002000000000000
+CT=0CDE9F9BE646A5FCE3436B794A9CFC65
+
+I=80
+PT=00000000000000000001000000000000
+CT=68C7946D476A0A36674B36AFD7E5DF33
+
+I=81
+PT=00000000000000000000800000000000
+CT=48770159A07DD8DFFF06C80105F8D57C
+
+I=82
+PT=00000000000000000000400000000000
+CT=665E62801B3260E3C45BD3BE34DFDEBE
+
+I=83
+PT=00000000000000000000200000000000
+CT=4159C1F686BFBE5B0E50BDB0DA532B69
+
+I=84
+PT=00000000000000000000100000000000
+CT=6333100A5A4AD917DC2D4E78A04869A3
+
+I=85
+PT=00000000000000000000080000000000
+CT=866A4519AB1D199F25886B89D0539ACC
+
+I=86
+PT=00000000000000000000040000000000
+CT=EC0CFD37E4CBC7E8BE385283F7AEA75A
+
+I=87
+PT=00000000000000000000020000000000
+CT=CA2F383AACCA0810AA13F3E710621422
+
+I=88
+PT=00000000000000000000010000000000
+CT=1D0EEF6870444F950937831EC0A55D98
+
+I=89
+PT=00000000000000000000008000000000
+CT=37839B35ED6801E7670496D479A95017
+
+I=90
+PT=00000000000000000000004000000000
+CT=02317C8C7098C4F94AB867AC7A49DD8D
+
+I=91
+PT=00000000000000000000002000000000
+CT=FFB4CB4E3F7F8BF3367EBD43236518B4
+
+I=92
+PT=00000000000000000000001000000000
+CT=36BEDEF1E4AA3E4A40A305741713FCBF
+
+I=93
+PT=00000000000000000000000800000000
+CT=B2DFE3C4870269C1E3FEEC39161540D9
+
+I=94
+PT=00000000000000000000000400000000
+CT=147EF2518AD45DA0026056ECBF6A3DFA
+
+I=95
+PT=00000000000000000000000200000000
+CT=027A75E4DE635790E47ACE90D7928804
+
+I=96
+PT=00000000000000000000000100000000
+CT=C4CF3CCB59BF87D0AFBD629F48CFBB7B
+
+I=97
+PT=00000000000000000000000080000000
+CT=35165C93F564C97E1C32EF97E8151A87
+
+I=98
+PT=00000000000000000000000040000000
+CT=449DE37F7D5A1BBD628ABBE7E061701D
+
+I=99
+PT=00000000000000000000000020000000
+CT=B1D45EAF218F1799B149BAD677FE129F
+
+I=100
+PT=00000000000000000000000010000000
+CT=BE08AC6DB6BD0583AA9D2ABC71C73DCD
+
+I=101
+PT=00000000000000000000000008000000
+CT=BCC835BD3DF1A79E4C7C145B899A5C25
+
+I=102
+PT=00000000000000000000000004000000
+CT=3D311EA611FF5AF371301C58A8E9912D
+
+I=103
+PT=00000000000000000000000002000000
+CT=A5A1BEA594ACC7CA80F09EA5ADDB5C71
+
+I=104
+PT=00000000000000000000000001000000
+CT=0F09492429FE7222D6CD8190D9F2FFBF
+
+I=105
+PT=00000000000000000000000000800000
+CT=816D2220A16B8AAEE71364FD43636C6F
+
+I=106
+PT=00000000000000000000000000400000
+CT=D7E8702408419ED73191B107EAF75A0B
+
+I=107
+PT=00000000000000000000000000200000
+CT=9B170EFB1E235B433C78E276BEA082F0
+
+I=108
+PT=00000000000000000000000000100000
+CT=03BBECC5598AE974430F29395522F096
+
+I=109
+PT=00000000000000000000000000080000
+CT=DB53517766C0E8CF42059607CBA89380
+
+I=110
+PT=00000000000000000000000000040000
+CT=2E2AF4B7931F0AEFFAC5471148A5BB97
+
+I=111
+PT=00000000000000000000000000020000
+CT=C872C0408266403B984F635FF5683DE4
+
+I=112
+PT=00000000000000000000000000010000
+CT=15DCF750B0E3A68AD1F4EFD07E8967B4
+
+I=113
+PT=00000000000000000000000000008000
+CT=B41092048E9E6A749F6FD8CE515A23A3
+
+I=114
+PT=00000000000000000000000000004000
+CT=4DA9267D62507994312BD5C99ADDE730
+
+I=115
+PT=00000000000000000000000000002000
+CT=9E2FCA6D1D626E9C6A924EBF7DBF618A
+
+I=116
+PT=00000000000000000000000000001000
+CT=E092E8D7EF2C2465AEFB2493C3063590
+
+I=117
+PT=00000000000000000000000000000800
+CT=1C0E58DA37D1068378A88DBE2EDE4E10
+
+I=118
+PT=00000000000000000000000000000400
+CT=19063F854232B8509A6A3A6D46809959
+
+I=119
+PT=00000000000000000000000000000200
+CT=447FB09E54EFA285F7530F25C4EA0022
+
+I=120
+PT=00000000000000000000000000000100
+CT=F6ABE86321BE40E1FBFDAFED37CC1D9B
+
+I=121
+PT=00000000000000000000000000000080
+CT=4E8506CD006666341D6CF51F98B41F35
+
+I=122
+PT=00000000000000000000000000000040
+CT=53995DE0009CA18BECAFB8307C54C14C
+
+I=123
+PT=00000000000000000000000000000020
+CT=2006BF99F4C58B6CC2627856593FAEEA
+
+I=124
+PT=00000000000000000000000000000010
+CT=2DA697D2737CB30B744A4644FA1CBC6E
+
+I=125
+PT=00000000000000000000000000000008
+CT=47A22ACDB60C3A986A8F76ECD0EA3433
+
+I=126
+PT=00000000000000000000000000000004
+CT=FDAA17C2CDE20268FE36E164EA532151
+
+I=127
+PT=00000000000000000000000000000002
+CT=98E7247C07F0FE411C267E4384B0F600
+
+I=128
+PT=00000000000000000000000000000001
+CT=CD33B28AC773F74BA00ED1F312572435
+
+==========
+
+KEYSIZE=256
+
+KEY=0000000000000000000000000000000000000000000000000000000000000000
+
+I=1
+PT=80000000000000000000000000000000
+CT=DDC6BF790C15760D8D9AEB6F9A75FD4E
+
+I=2
+PT=40000000000000000000000000000000
+CT=C7098C217C334D0C9BDF37EA13B0822C
+
+I=3
+PT=20000000000000000000000000000000
+CT=60F0FB0D4C56A8D4EEFEC5264204042D
+
+I=4
+PT=10000000000000000000000000000000
+CT=73376FBBF654D0686E0E84001477106B
+
+I=5
+PT=08000000000000000000000000000000
+CT=2F443B52BA5F0C6EA0602C7C4FD259B6
+
+I=6
+PT=04000000000000000000000000000000
+CT=75D11B0E3A68C4223D88DBF017977DD7
+
+I=7
+PT=02000000000000000000000000000000
+CT=779B38D15BFFB63D8D609D551A5CC98E
+
+I=8
+PT=01000000000000000000000000000000
+CT=5275F3D86B4FB8684593133EBFA53CD3
+
+I=9
+PT=00800000000000000000000000000000
+CT=1CEF2074B336CEC62F12DEA2F6AB1481
+
+I=10
+PT=00400000000000000000000000000000
+CT=1AEF5ABBAD9D7160874578DCD8BAE172
+
+I=11
+PT=00200000000000000000000000000000
+CT=46C525DB17E72F26BF03216846B6F609
+
+I=12
+PT=00100000000000000000000000000000
+CT=E24411F941BBE08788781E3EC52CBAA4
+
+I=13
+PT=00080000000000000000000000000000
+CT=83A3DEDD1DD27018F6A6477E40527581
+
+I=14
+PT=00040000000000000000000000000000
+CT=B68F8A2CDBAB0C923C67FC8F0F1087DE
+
+I=15
+PT=00020000000000000000000000000000
+CT=649944A70C32BF87A7409E7AE128FDE8
+
+I=16
+PT=00010000000000000000000000000000
+CT=2846526D67387539C89314DE9E0C2D02
+
+I=17
+PT=00008000000000000000000000000000
+CT=A9A0B8402E53C70DD1688054BA58DDFD
+
+I=18
+PT=00004000000000000000000000000000
+CT=4A72E6E1B79C83AC4BE3EBA5699EED48
+
+I=19
+PT=00002000000000000000000000000000
+CT=B0E36B867BA4FF2B77D0614B0E364E4C
+
+I=20
+PT=00001000000000000000000000000000
+CT=49B57DE141F6418E3090F24DDD4014B6
+
+I=21
+PT=00000800000000000000000000000000
+CT=A6C0D5B9797258E1987AC5F6CD20146D
+
+I=22
+PT=00000400000000000000000000000000
+CT=426CF4BDCAA369175965D26E7C71EEA2
+
+I=23
+PT=00000200000000000000000000000000
+CT=E27F484CE54BC99BC1A52BDA3B518A26
+
+I=24
+PT=00000100000000000000000000000000
+CT=D16D186284C7E6EE64B8104E0EF20BA5
+
+I=25
+PT=00000080000000000000000000000000
+CT=6431F8538AD54E1E044A9F71F8EF556B
+
+I=26
+PT=00000040000000000000000000000000
+CT=ECD57CEB451D27EB96C55B2042257E8E
+
+I=27
+PT=00000020000000000000000000000000
+CT=4F0F188DC911B1954AFBC734C9F68872
+
+I=28
+PT=00000010000000000000000000000000
+CT=B54DEF0337626B65614E81EDFDE620F3
+
+I=29
+PT=00000008000000000000000000000000
+CT=6655D8074CAE0B90B0D3A3FE72D4D9DB
+
+I=30
+PT=00000004000000000000000000000000
+CT=C6B74B6B9EB4FC0C9A237DB1B616D09A
+
+I=31
+PT=00000002000000000000000000000000
+CT=D7B5D076EA56EC2B20791D7AD51CCF8F
+
+I=32
+PT=00000001000000000000000000000000
+CT=FE160C224BF003CE3BDDC90CB52ED22C
+
+I=33
+PT=00000000800000000000000000000000
+CT=5E00DA9BA94B5EC0D258D8A8002E0F6A
+
+I=34
+PT=00000000400000000000000000000000
+CT=09AC6DCFF4DACFF1651E2BA212A292A3
+
+I=35
+PT=00000000200000000000000000000000
+CT=B283617E318D99AF83A05D9810BA89F7
+
+I=36
+PT=00000000100000000000000000000000
+CT=0B5F70CCB40B0EF2538AE9B4A9770B35
+
+I=37
+PT=00000000080000000000000000000000
+CT=43282BF180248FB517839B37F4DDAAE4
+
+I=38
+PT=00000000040000000000000000000000
+CT=DDBD534C8B2E6D30A268F88C55AD765B
+
+I=39
+PT=00000000020000000000000000000000
+CT=A41A164E50EC2D9F175E752B755E0B5C
+
+I=40
+PT=00000000010000000000000000000000
+CT=37BFF99FF2F7AA97779E4ADF6F13FB10
+
+I=41
+PT=00000000008000000000000000000000
+CT=9BA4F7BD298152903A683C4CEC669216
+
+I=42
+PT=00000000004000000000000000000000
+CT=5FB750C7CE10DE7B4504248914D0DA06
+
+I=43
+PT=00000000002000000000000000000000
+CT=3E748BFA108E086F51D56EC74A9E0FB9
+
+I=44
+PT=00000000001000000000000000000000
+CT=31D4E56B99F5B73C1B8437DF332AFB98
+
+I=45
+PT=00000000000800000000000000000000
+CT=9DC6717B84FC55D266E7B1D9B5C52A5F
+
+I=46
+PT=00000000000400000000000000000000
+CT=8EF8BA007F23C0A50FC120E07041BCCD
+
+I=47
+PT=00000000000200000000000000000000
+CT=C58F38E1839FC1918A12B8C9E88C66B6
+
+I=48
+PT=00000000000100000000000000000000
+CT=B695D72A3FCF508C4050E12E40061C2D
+
+I=49
+PT=00000000000080000000000000000000
+CT=5D2736AD478A50583BC8C11BEFF16D7A
+
+I=50
+PT=00000000000040000000000000000000
+CT=DF0EACA8F17847AD41F9578F14C7B56B
+
+I=51
+PT=00000000000020000000000000000000
+CT=E5AA14AD48AD0A3C47CC35D5F8020E51
+
+I=52
+PT=00000000000010000000000000000000
+CT=11BE6C8F58EBD8CEF1A53F591A68E8CE
+
+I=53
+PT=00000000000008000000000000000000
+CT=ECFE7BAFCBF42C1FEE015488770B3053
+
+I=54
+PT=00000000000004000000000000000000
+CT=E552649F8D8EC4A1E1CD6DF50B6E6777
+
+I=55
+PT=00000000000002000000000000000000
+CT=521C0629DE93B9119CDB1DDC5809DDEA
+
+I=56
+PT=00000000000001000000000000000000
+CT=CB38A62A0BAB1784156BA038CBA99BF6
+
+I=57
+PT=00000000000000800000000000000000
+CT=76CCEE8AAACD394DE1EEF3DDA10CB54B
+
+I=58
+PT=00000000000000400000000000000000
+CT=6AFF910FA1D5673140E2DB59B8416049
+
+I=59
+PT=00000000000000200000000000000000
+CT=064A12C0EF73FB386801BF4F35F3120D
+
+I=60
+PT=00000000000000100000000000000000
+CT=2240E374929D5B1BB8FF0FFDDDF640EC
+
+I=61
+PT=00000000000000080000000000000000
+CT=D4BA15C904C7692185DE85C02052E180
+
+I=62
+PT=00000000000000040000000000000000
+CT=1714A315AB0166728A44CD91D4AE9018
+
+I=63
+PT=00000000000000020000000000000000
+CT=6C970BDD9F0E222722EA31A1D12DD0AD
+
+I=64
+PT=00000000000000010000000000000000
+CT=F5956EDF02BD36A401BBB6CE77C3D3FB
+
+I=65
+PT=00000000000000008000000000000000
+CT=0CA11F122CCD7C259DC597EED3DF9BC4
+
+I=66
+PT=00000000000000004000000000000000
+CT=50109AB4912AD2560B206F331B62EB6C
+
+I=67
+PT=00000000000000002000000000000000
+CT=DBE7C91A4175614889A2D4BEFD64845E
+
+I=68
+PT=00000000000000001000000000000000
+CT=0D3322853A571A6B46B79C0228E0DD25
+
+I=69
+PT=00000000000000000800000000000000
+CT=96E4EE0BB9A11C6FB8522F285BADDEB6
+
+I=70
+PT=00000000000000000400000000000000
+CT=96705C52D2CFCE82E630C93477C79C49
+
+I=71
+PT=00000000000000000200000000000000
+CT=C50130AED6A126149D71F3888C83C232
+
+I=72
+PT=00000000000000000100000000000000
+CT=4816EFE3DEB380566EBA0C17BF582090
+
+I=73
+PT=00000000000000000080000000000000
+CT=0390857B4C8C98E4CF7A2B6F3394C507
+
+I=74
+PT=00000000000000000040000000000000
+CT=422E73A02025EBE8B8B5D6E0FA24FCB2
+
+I=75
+PT=00000000000000000020000000000000
+CT=3271AA7F4BF1D7C38050A43076D4FF76
+
+I=76
+PT=00000000000000000010000000000000
+CT=D2074946F0D37B8975607BFC2E70234C
+
+I=77
+PT=00000000000000000008000000000000
+CT=1A509194C1270AB92E5A42D3A9F8D98B
+
+I=78
+PT=00000000000000000004000000000000
+CT=512438946360CCC4A5C6D73F6EED7130
+
+I=79
+PT=00000000000000000002000000000000
+CT=98CFCDEC46EBEA1A286B3004F2746A0D
+
+I=80
+PT=00000000000000000001000000000000
+CT=A1CF369949677A3AF3D58E3EABF2741B
+
+I=81
+PT=00000000000000000000800000000000
+CT=D84C2E1A0E4A52166FA8FF6889D1E5E2
+
+I=82
+PT=00000000000000000000400000000000
+CT=4AD91CCEEF60119B5078FD162D2735DE
+
+I=83
+PT=00000000000000000000200000000000
+CT=2860793D818E97AAFF1D339D7702438D
+
+I=84
+PT=00000000000000000000100000000000
+CT=6F9068BE73364AE250D89D78A6C9CE6F
+
+I=85
+PT=00000000000000000000080000000000
+CT=024FC3FEF4883FEB1A8DD005305FECCE
+
+I=86
+PT=00000000000000000000040000000000
+CT=08A61FE0816D75EA15EB3C9FB9CCDED6
+
+I=87
+PT=00000000000000000000020000000000
+CT=449C86DFA13F260175CE39797686FFA4
+
+I=88
+PT=00000000000000000000010000000000
+CT=4FFFFC29A59858E1133F2BFB1A8A4817
+
+I=89
+PT=00000000000000000000008000000000
+CT=19425D1F6480B25096561295697DC2B7
+
+I=90
+PT=00000000000000000000004000000000
+CT=31974727ECDD2C77C3A428FC3A8CB3FC
+
+I=91
+PT=00000000000000000000002000000000
+CT=A57CD704B3C95E744D08DF443458F2F5
+
+I=92
+PT=00000000000000000000001000000000
+CT=486D8C193DB1ED73ACB17990442FC40B
+
+I=93
+PT=00000000000000000000000800000000
+CT=5E4DBF4E83AB3BC055B9FCC7A6B3A763
+
+I=94
+PT=00000000000000000000000400000000
+CT=ACF2E0A693FBBCBA4D41B861E0D89E37
+
+I=95
+PT=00000000000000000000000200000000
+CT=32A7CB2AE066A51D2B78FC4B4CFCB608
+
+I=96
+PT=00000000000000000000000100000000
+CT=677D494DBB73CAF55C1990158DA12F14
+
+I=97
+PT=00000000000000000000000080000000
+CT=082A0D2367512ADF0D75A151BFBE0A17
+
+I=98
+PT=00000000000000000000000040000000
+CT=5E5BB7337923C482CE8CBA249E6A8C7D
+
+I=99
+PT=00000000000000000000000020000000
+CT=D3001BA7C7026EE3E5003179530AFCFC
+
+I=100
+PT=00000000000000000000000010000000
+CT=46EC44F8931E629FE8FD8961312EDDE1
+
+I=101
+PT=00000000000000000000000008000000
+CT=C5F8ECD79C7B30E81D17E32079969310
+
+I=102
+PT=00000000000000000000000004000000
+CT=5B8AD6919E24CAEBCC55401AEE0C9802
+
+I=103
+PT=00000000000000000000000002000000
+CT=C2302B7E701B5CC7F8B29E3516DBBFA6
+
+I=104
+PT=00000000000000000000000001000000
+CT=A1D04D6A76F9F7A94D49FAA64A87F244
+
+I=105
+PT=00000000000000000000000000800000
+CT=7FB6F92D35B5CB6C631600EDB9E860BA
+
+I=106
+PT=00000000000000000000000000400000
+CT=B2EF7078BCFACE07AEEC3F9B48830EB3
+
+I=107
+PT=00000000000000000000000000200000
+CT=F475A7493D24C7036E53390374C378B3
+
+I=108
+PT=00000000000000000000000000100000
+CT=B36802AC987377A37BD8EADC97C57D60
+
+I=109
+PT=00000000000000000000000000080000
+CT=ADDCD3D19689C4DDC738CE5F69DC9505
+
+I=110
+PT=00000000000000000000000000040000
+CT=0DAF8CA22884915403C0F0BB1F4BD74F
+
+I=111
+PT=00000000000000000000000000020000
+CT=4AF36BAE2660503B3248E4685059FD05
+
+I=112
+PT=00000000000000000000000000010000
+CT=7D5631814DD8E917D97A0D514C743971
+
+I=113
+PT=00000000000000000000000000008000
+CT=BC3352500FC0CBB9DB5B5F6B491C1BE8
+
+I=114
+PT=00000000000000000000000000004000
+CT=6A4A30BA87E87AF65C90AEB7AFEDC76B
+
+I=115
+PT=00000000000000000000000000002000
+CT=77E6125897668AC8E73E8C79A6FF8336
+
+I=116
+PT=00000000000000000000000000001000
+CT=3FA9D39104EBB323C7AAAA248960DD1E
+
+I=117
+PT=00000000000000000000000000000800
+CT=FAD75AD76AB10ADC49036B250E229D39
+
+I=118
+PT=00000000000000000000000000000400
+CT=2FACAA5FE35B228A16AC74088D702EC4
+
+I=119
+PT=00000000000000000000000000000200
+CT=88B6CBCFDFEF8AD91720A1BB69A1F33E
+
+I=120
+PT=00000000000000000000000000000100
+CT=C7E9D250998632D444356242EF04058D
+
+I=121
+PT=00000000000000000000000000000080
+CT=B14DAD8D3D9153F46C0D3A1AD63C7A05
+
+I=122
+PT=00000000000000000000000000000040
+CT=60ABA678A506608D0845966D29B5F790
+
+I=123
+PT=00000000000000000000000000000020
+CT=482DC43F2388EF25D24144E144BD834E
+
+I=124
+PT=00000000000000000000000000000010
+CT=1490A05A7CEE43BDE98B56E309DC0126
+
+I=125
+PT=00000000000000000000000000000008
+CT=ABFA77CD6E85DA245FB0BDC5E52CFC29
+
+I=126
+PT=00000000000000000000000000000004
+CT=DD4AB1284D4AE17B41E85924470C36F7
+
+I=127
+PT=00000000000000000000000000000002
+CT=CEA7403D4D606B6E074EC5D3BAF39D18
+
+I=128
+PT=00000000000000000000000000000001
+CT=530F8AFBC74536B9A963B4F1C4CB738B
+
+==========
--- a/cryptomgmtlibs/cryptotokenfw/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/cryptotokenfw/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -38,12 +38,14 @@
 ../inc/ct/TCTTokenTypeAttribute.h						SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/tcttokentypeattribute.h)
 ../inc/ct/TCTFindTokenTypesByInterface.h				SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/tctfindtokentypesbyinterface.h)
 ../inc/ct/TCTFindTokenTypesByInterfaceAndAttribute.h	SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/tctfindtokentypesbyinterfaceandattribute.h)
-../inc/ct/InterfaceUID.hrh 							SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/interfaceuid.hrh)
+../inc/ct/InterfaceUID.hrh 								/epoc32/include/ct/interfaceuid.hrh
 ../inc/CryptoTokenRegistryInfo.rh						SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(cryptotokenregistryinfo.rh)
 ../inc/ct/tcttokenhandle.h								SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/tcttokenhandle.h)
 ../inc/ct/RCPointerArray.h								SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/rcpointerarray.h)
 ../inc/ct/RMPointerArray.h								SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct/rmpointerarray.h)
-
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/ct/logger.h										/epoc32/include/ct/logger.h
+#endif
 ../inc/ct.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(ct.h)
 ../inc_interfaces/MCTAuthObject.h						SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(mctauthobject.h)
 ../inc_interfaces/mcertstore.h 							SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(mcertstore.h)
@@ -64,6 +66,14 @@
 ../inc/securitydefsconst.h								SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(securitydefsconst.h)
 ../inc_interfaces/MCTKeyStoreUIDs.h						SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(mctkeystoreuids.h)
 
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc_interfaces/mctcertappinterface.h					/epoc32/include/mctcertappinterface.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/ct/cttokentypedeletehandler.h 					/epoc32/include/cttokentypedeletehandler.h
+#endif
+#endif
 
 PRJ_TESTEXPORTS
 
--- a/cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStoreManager_v2.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStoreManager_v2.h	Wed Sep 01 12:40:57 2010 +0100
@@ -278,194 +278,6 @@
 	/** Cancels an ongoing Relock() operation. */
 	virtual void CancelRelock() = 0;
 
-#ifdef SYMBIAN_AUTH_SERVER
-	/**
-	 * Generate a new key pair and store it in keystore. The key should be stored against an
-	 * already authenticated user. If there is no user currently authenticated then authentication
-	 * should be performed before creation of the key.
-	 *	
-	 * @param aReturnedKey				This is filled by the caller with required
-	 *									attributes, leaving the TKeyIdentifier iID and object handle 
-	 * 									iHandle	uninitialised - these values are set if the key is 
-	 * 									created successfully.
- 	 * @param aAuthenticationString		The expression through which a user can be authenticated.
-	 * 									Currently this should correspond to one of the alias values
-	 * 									set by the licensee for authentication server configuration.
-	 * 									This should be stored against the created key.
-	 * @param aFreshness				The validity to be considered for an already authenticated 
-	 * 									identity. This should be stored against the created key. 
-	 * 									Specification is in seconds.
-	 * 
-	 * @param aStatus					This will be completed with the final status code. Some specific
-	 * 									codes are as follows.
-	 * 									KErrPermissionDenied		If the caller does not have WriteUserData 
-	 * 																capability.
-	 * 									KErrAlreadyExists			If a key with the specified label already
-	 *																exists in the keystore for the specific
-	 * 																user.
-	 * 									KErrKeySize					If the requested key size is not supported.
-	 * 									KErrKeyAccess				If an invalid combination of key access 
-	 * 																flags were specified.
-	 * 									KErrKeyValidity				If a validity period was specified, but the 
-	 * 																end date was in the past.
-	 * 									KErrAuthenticationFailure	If the user authentication fails.
-	 * 
-	 * @see 							AuthServer::CAuthExpression
-	 * 
-	 * @capability WriteUserData	Should require the caller to have WriteUserData capability.
-	 */
-	virtual void CreateKey(	const TDesC& /*aAuthenticationString*/, 
-							TInt /*aFreshness*/,
-							CCTKeyInfo*& /*aReturnedKey*/,
-							TRequestStatus& aStatus )
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-
-	/**
-	 * Imports a der-encoded PKCS#8 format key pair into the keystore. The key should be stored against an
-	 * already authenticated user. If there is no user currently authenticated then authentication
-	 * should be performed before creation of the key.
-	 *
-	 * 
-	 * @param aKey						This is a descriptor representation of the PKCS#8 key data.
-	 * @param aAuthenticationString		The expression through which a user can be authenticated.
-	 * 									Currently this should correspond to one of the alias values
-	 * 									set by the licensee for authentication server configuration.
-	 * 									This should be stored against the created key.
-	 * @param aFreshness				The validity to be considered for an already authenticated 
-	 * 									identity. This should be stored against the created key.
-	 * 									Specification is in seconds.
-	 * @param aReturnedKey				This is filled by the caller with required
-	 *									attributes, leaving the TKeyIdentifier iID and object handle 
-	 * 									iHandle	uninitialised - these values are set if the key is 
-	 * 									created successfully.
-	 * @param aStatus					This will be completed with the final status code. Some specific
-	 * 									codes are as follows.
-	 * 									KErrPermissionDenied	If the caller does not have WriteUserData 
-	 * 															capability.
-	 * 									KErrAlreadyExists		If a key with the specified label already 
-	 * 															exists in the keystore for the specific
-	 * 															user.
-	 * 									KErrKeySize				If the requested key size is not supported.
-	 * 									KErrKeyAccess			If an invalid combination of key access flags 
-	 * 															were specified.
-	 * 									KErrKeyValidity			If a validity period was specified, but the end
-	 *															date was in the past.
-	 * 									KErrArgument			If there is an error parsing the key data.
-	 * 									KErrAuthenticationFailure	If the user authentication fails.
-	 * 
-	 * @see 							AuthServer::CAuthExpression
-	 * 
-	 * @capability WriteUserData			Should require the caller to have WriteUserData capability
-	*/
-	virtual void ImportKey( const TDesC8& /*aKey*/, 
-							const TDesC& /*aAuthenticationString*/, 
-							TInt /*aFreshness*/, 
-							CCTKeyInfo*& /*aReturnedKey*/, 
-							TRequestStatus& aStatus )
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-
-	/**
-	 * Imports an encrypted key pair into the keystore. The key should be stored against an
-	 * already authenticated user. If there is no user currently authenticated then authentication
-	 * should be performed before creation of the key.
-	 *
-	 * The import data should be der-encoded PKCS#8 format encrypted in accordance to PKCS#5 
-	 * specification.
-	 * 
-	 * @param aKey						This is a descriptor representation of the PKCS#8 key data.
-	 * 									Encrypted in accordance to PKCS#5 specification.	
-	 * @param aAuthenticationString		The expression through which a user can be authenticated.
-	 * 									Currently this should correspond to one of the alias values
-	 * 									set by the licensee for authentication server configuration.
-	 * 									This should be stored against the created key.
-	 * @param aFreshness				The validity to be considered for an already authenticated 
-	 * 									identity. This should be stored against the created key.
-	 * 									Specification is in seconds.
-	 * @param aReturnedKey				This is filled by the caller with required
-	 *									attributes, leaving the TKeyIdentifier iID and object handle 
-	 * 									iHandle	uninitialised - these values are set if the key is 
-	 * 									created successfully.
-	 * @param aStatus					This will be completed with the final status code. Some specific
-	 * 									codes are as follows.
-	 * 									KErrPermissionDenied	If the caller does not have WriteUserData 
-	 * 															capability.
-	 * 									KErrAlreadyExists		If a key with the specified label already 
-	 * 															exists in the keystore for the specific
-	 * 															user.
-	 * 									KErrKeySize				If the requested key size is not supported.
-	 * 									KErrKeyAccess			If an invalid combination of key access flags 
-	 * 															were specified.
-	 * 									KErrKeyValidity			If a validity period was specified, but the end
-	 *															date was in the past.
-	 * 									KErrArgument			If there is an error parsing the key data.
-	 * 									KErrAuthenticationFailure	If the user authentication fails.
-	 * 
-	 * @see 							AuthServer::CAuthExpression
-	 * 
-	 * @capability WriteUserData		Should require the caller to have WriteUserData capability
-	*/
-	virtual void ImportEncryptedKey( 	const TDesC8& /*aKey*/, 
-										const TDesC& /*aAuthenticationString*/, 
-										TInt /*aFreshness*/, 
-										CCTKeyInfo*& /*aReturnedKey*/, 
-										TRequestStatus& aStatus )
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status, KErrNotSupported);
-		}
-	
-	/**
-	 *  Set the authentication policy for an already existing key in the store.
-	 * 
-	 * @param aHandle					The handle of the key whose policy is to be changed.
-	 * @param aAuthenticationString		The expression associated to this key.
-	 * @param aFreshness				The validity associated to this key.
-	 * 									Specification is in seconds.
-	 * @param aStatus					Final status of the operation.
-	 * 									KErrAuthenticationFailure	If the user authentication fails.
-	 * 
-	 * @see 							AuthServer::CAuthExpression
-	 *   
-	*/
-	virtual void SetAuthenticationPolicy(	const TCTTokenObjectHandle /*aHandle*/,
-											const TDesC& /*aAuthenticationString*/,
-											TInt /*aFreshness*/,
-											TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status, KErrNotSupported);
-		}
-	
-	/**
-	 *  Retrieve authentication policy for an already existing key in the store.
-	 * 
-	 * @param aHandle					The handle of the key whose policy is to be retrieved.
-	 * @param aAuthenticationString		The expression associated to this key. The memory would
-	 * 									be allocated at the server side.
-	 * @param aFreshness				The validity associated to this key.
-	 * 									Specification is in seconds.
-	 * @param aStatus					Final status of the operation.
-	 * 									KErrAuthenticationFailure	If the user authentication fails.
-	 * 
-	 * @see 							AuthServer::CAuthExpression
-	 *  
-	*/
-	virtual void GetAuthenticationPolicy(	const TCTTokenObjectHandle /*aHandle*/,
-											HBufC*& /*aAuthenticationString*/,
-											TInt& /*aFreshness*/,
-											TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status, KErrNotSupported);
-		}
-#endif // SYMBIAN_AUTH_SERVER
-
 };
 
 
--- a/cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStore_v2.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/cryptotokenfw/inc_interfaces/MCTKeyStore_v2.h	Wed Sep 01 12:40:57 2010 +0100
@@ -76,9 +76,6 @@
 		ERSA				= 1,
 		EDSA				= 2,
 		EDH					= 3,
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		EECC                = 4,
-#endif
 		};
 
 	/** Flags for key access bitfield. */
--- a/cryptomgmtlibs/cryptotokenfw/inc_interfaces/mkeystore_v2.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/cryptotokenfw/inc_interfaces/mkeystore_v2.h	Wed Sep 01 12:40:57 2010 +0100
@@ -37,14 +37,6 @@
 class CCTKeyInfo;
 struct TCTKeyAttributeFilter;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-namespace CryptoSpi
-    {
-    class CSigner;
-    class CAsymmetricCipher;
-    class CCryptoParams;
-    }
-#endif /* SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT */
 
 /**
  * A template for signer objects.  It isn't possible to use a base class as the
@@ -391,163 +383,6 @@
 	/** Cancels an ongoing ExportPublic() operation */
 	virtual void CancelExportPublic() = 0;
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    /**
-     * Opens a key for signing. This function returns a CryptoSPI
-     * signer object. SignL() method should be invoked on this object
-     * to perform the signing operation.
-     *
-     * @param aHandle The handle of the key to be opened.
-     * @param aSigner The returned CryptoSPI signer object.
-     * @param aStatus Returns the status of asynchronous operation, 
-     * possible values of which are given below:-
-     * KErrNone if successful, otherwise a system wide error 
-     * code (in such a case signer object is not allocated). The 
-     * most likely error codes are:-
-     * - KErrNotSupported Default value, used if licensee does not
-     * provide an implementation.
-     * - KErrPermissionDenied If the caller does not conform to
-     * the key use security policy.
-     * - KErrNotFound If the key the handle referes to does not
-     * exist.
-     * - KErrKeyUsage If the key doesn't have sign usage.
-     * - KErrKeyValidity If the key is not currently valid.
-     * - KErrKeySize If the key length is too small.
-     * - KErrKeyAccess If an invalid combination of key access
-     * flags were specified.
-     * 
-     * @capability Requires the caller to have the capabilities
-     * specified in the key use security policy.
-     */
-	virtual void Open(const TCTTokenObjectHandle& /*aHandle*/,
-	                  CryptoSpi::CSigner*& /*aSigner*/,
-	                  TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-
-    /**
-     * Opens a key for decryption. This function returns a CryptoSPI
-     * signer object. ProcessL() method should be invoked on this object
-     * to perform the decryption operation.
-     *
-     * @param aHandle The handle of the key to be opened.
-     * @param aAsymmetricCipher The returned CryptoSPI cipher object.
-     * @param aStatus Returns the status of asynchronous operation,
-     * possible values of which are given below:-
-     * KErrNone if successful, otherwise a system wide error 
-     * code (in such a case cipher object is not allocated). The 
-     * most likely error codes are:-
-     * - KErrNotSupported Default value, used if licensee does not
-     * provide an implementation.
-     * - KErrPermissionDenied If the caller does not conform to
-     * the key use security policy.
-     * - KErrNotFound If the key the handle referes to does not
-     * exist.
-     * - KErrKeyUsage If the key doesn't have sign usage.
-     * - KErrKeyValidity If the key is not currently valid.
-     * - KErrKeySize If the key length is too small.
-     * - KErrKeyAccess If an invalid combination of key access
-     * flags were specified.
-     *
-     * @capability Requires the caller to have the capabilities
-     * specified in the key use security policy.
-     */
-	virtual void Open(const TCTTokenObjectHandle& /*aHandle*/,
-	                  CryptoSpi::CAsymmetricCipher*& /*aAsymmetricCipher*/,
-	                  TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-
-	/**
-	 * This function takes a token handle and encrypted text as input
-	 * and stores the decrypted text as one of the output parameters.
-	 * This API would should be used by the licensees who want to perform
-	 * decryption operation inside the hardware without using CryptoSPI.
-	 *
-	 * @param aHandle The handle of the key to be used for decryption.
-     * @param aCiphertext Contains the encrypted text which has to be
-     * decrypted.
-     * @param aPlaintextPtr This contains the decrypted text. Caller
-     * should take responsibility of this pointer. Derived classes 
-     * should never take ownership of the passed pointer.
-     * @param aStatus Returns the status of asynchronous operation,
-     * possible values are given below:-
-     * KErrNone if successful, otherwise a system wide error 
-     * code (in such a case aPlaintextPtr is not allocated). The 
-     * most likely error codes are:-
-     * - KErrNotSupported Default value, used if licensee does not
-     * provide an implementation.
-     * - KErrPermissionDenied If the caller does not conform to
-     * the key use security policy.
-     * - KErrNotFound If the key the handle referes to does not
-     * exist.
-     * - KErrKeyUsage If the key doesn't have sign usage.
-     * - KErrKeyValidity If the key is not currently valid.
-     * - KErrKeySize If the key length is too small.
-     * - KErrKeyAccess If an invalid combination of key access
-     * flags were specified.
-     * 
-     * @capability Requires the caller to have the capabilities
-     * specified in the key use security policy.
-     */
-	virtual void Decrypt(const TCTTokenObjectHandle& /*aHandle*/,
-                         const TDesC8& /*aCiphertext*/,
-	                     HBufC8*& /*aPlaintextPtr*/,
-	                     TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-
-	/**
-	 * This function takes a token handle and plain text as input and
-	 * returns the signature as one of the output parameters. This API
-	 * would enable the licensees to sign a text by just having a handle
-	 * to key. The key can be stored in the hardware and does not come
-	 * out at all. This API should be used by the licensees who want to
-	 * perform signing operation inside the hardware without using
-	 * CryptoSPI.
-	 *
-	 * @param aHandle The handle of the key to be used for decryption.
-	 * @param aPlainText Text which has to be signed.
-	 * @param aSignature The cryptoSPI signature. Caller
-	 * should take responsibility of this pointer. Derived classes 
-     * should never take ownership of the passed pointer.
-	 * @param aStatus Returns the status of asynchronous operation,
-	 * possible values are:-
-	 * KErrNone if successful, otherwise a system wide error 
-     * code (in such a case aSignature is not allocated). The 
-     * most likely error codes are:-
-     * - KErrNotSupported Default value, used if licensee does not
-     * provide an implementation.
-     * - KErrPermissionDenied If the caller does not conform to
-     * the key use security policy.
-     * - KErrNotFound If the key the handle referes to does not
-     * exist.
-     * - KErrKeyUsage If the key doesn't have sign usage.
-     * - KErrKeyValidity If the key is not currently valid.
-     * - KErrKeySize If the key length is too small.
-     * - KErrKeyAccess If an invalid combination of key access
-     * flags were specified.
-     * 
-	 * @capability Requires the caller to have the capabilities
-	 * specified in the key use security policy.
-	 */
-	virtual void Sign(	const TCTTokenObjectHandle& /*aHandle*/,
-                        const TDesC8& /*aPlainText*/,
-	                    CryptoSpi::CCryptoParams*& /*aSignature*/,
-	                    TRequestStatus& aStatus)
-		{
-		TRequestStatus* status = &aStatus;
-		User::RequestComplete(status,KErrNotSupported);
-		}
-	
-#endif /* SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT */
-
 	};
 
 
--- a/cryptomgmtlibs/securitycommonutils/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -27,6 +27,11 @@
 ../inc/scscommon.h   	SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(scs/scscommon.h)
 ../inc/scscommon.inl 	SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(scs/scscommon.inl)
 
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/scsserverconstants.h     /epoc32/include/scsserverconstants.h
+#endif
+#endif
 
 //IPCStream Exports
 ../inc/nullstream.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(scs/nullstream.h)
--- a/cryptomgmtlibs/securitycommonutils/inc/cleanuputils.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/inc/cleanuputils.h	Wed Sep 01 12:40:57 2010 +0100
@@ -21,7 +21,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
 
 #ifndef CLEANUPUTILS_H
--- a/cryptomgmtlibs/securitycommonutils/inc/ipcstream.inl	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/inc/ipcstream.inl	Wed Sep 01 12:40:57 2010 +0100
@@ -21,7 +21,7 @@
 /**
  @file
  @internalTechnology
- @released
+ @prototype
 */
 
 #ifndef IPCSTREAM_INL
--- a/cryptomgmtlibs/securitycommonutils/inc/securityutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/inc/securityutils.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file 
  @publishedPartner
- @released
+ @prototype
 */
 
 #ifndef SECURITYUTILS_H
--- a/cryptomgmtlibs/securitycommonutils/inc/streamingarray.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/inc/streamingarray.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file 
  @internalTechnology
- @released
+ @prototype
 */
 
 #ifndef STREAMINGARRAY_H
--- a/cryptomgmtlibs/securitycommonutils/inc/streamingarray.inl	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitycommonutils/inc/streamingarray.inl	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file 
  @internalTechnology
- @released
+ @prototype
 */
 
 #ifndef STREAMINGARRAY_INL
--- a/cryptomgmtlibs/securitytestfw/group/asnpkcs.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"ASN PKCS Tests"}, (0x101FB3E7), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"asnpkcs integration test"
-
-
-"\common\generic\security\os\security\cryptoservices\asnpkcs\test\scripts\tasnpkcstests.ini"-"c:\tasnpkcstests.ini"
-"\common\generic\security\os\security\cryptoservices\asnpkcs\test\scripts\tasnpkcstests.script"-"c:\tasnpkcstests.script1"
-
--- a/cryptomgmtlibs/securitytestfw/group/authorisation.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,167 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"Ups Tests"}, (0x101FB3E8), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"ups integration test"
-
-"\common\generic\security\os\security\cryptomgmtlibs\securitytestfw\test\autotesting\hosts"-"c:\private\10000882\hosts"
-"\common\generic\security\os\security\authorisation\userpromptservice\database\test\tupsdb\scripts\tupsdb.ini"-"c:\tups\tupsdb\scripts\tupsdb.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\database\test\tupsdb\scripts\tupsdb.script"-"c:\tups\tupsdb\scripts\tupsdb.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\database\test\tupsdb\scripts\tupsdbperformance.ini"-"c:\tups\tupsdb\scripts\tupsdbperformance.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\database\test\tupsdb\scripts\tupsdbperformance.script"-"c:\tups\tupsdb\scripts\tupsdbperformance.script"
-"\epoc32\data\z\private\10283558\policies\ups_10283559_0000002a.rsc"-"c:\private\10283558\policies\ups_10283559_0000002a.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_10283559_0000002b.rsc"-"c:\private\10283558\policies\ups_10283559_0000002b.rsc"
-
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_00000000.rsc"-"c:\private\10283558\policies\ups_101f7f1f_00000000.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_00000000.rsc"-"c:\private\10283558\policies\ups_101f7faa_00000000.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_00000000.rsc"-"c:\private\10283558\policies\ups_101f7fbb_00000000.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_12300456.rsc"-"c:\private\10283558\policies\ups_101f7f1f_12300456.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1230045b.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1230045b.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_12300777.rsc"-"c:\private\10283558\policies\ups_101f7f1f_12300777.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_bad00001.rsc"-"c:\private\10283558\policies\ups_101f7f1f_bad00001.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_bad00002.rsc"-"c:\private\10283558\policies\ups_101f7f1f_bad00002.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000abc1.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000abc1.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_1000abc1.rsc"-"c:\private\10283558\policies\ups_101f7faa_1000abc1.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_1000abc1.rsc"-"c:\private\10283558\policies\ups_101f7fbb_1000abc1.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000dddd.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000dddd.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000ddd2.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000ddd2.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000a00a.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000a00a.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000a00b.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000a00b.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000a00c.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000a00c.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000a00d.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000a00d.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000a00e.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000a00e.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_c00cace1.rsc"-"c:\private\10283558\policies\ups_101f7f1f_c00cace1.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_c00cace1.rsc"-"c:\private\10283558\policies\ups_101f7faa_c00cace1.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_c00cace1.rsc"-"c:\private\10283558\policies\ups_101f7fbb_c00cace1.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7784_00000666.rsc"-"c:\private\10283558\policies\ups_101f7784_00000666.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_b1000011.rsc"-"c:\private\10283558\policies\ups_101f7f1f_b1000011.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_b1000012.rsc"-"c:\private\10283558\policies\ups_101f7f1f_b1000012.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_b1000021.rsc"-"c:\private\10283558\policies\ups_101f7faa_b1000021.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_b1000022.rsc"-"c:\private\10283558\policies\ups_101f7faa_b1000022.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_b1000031.rsc"-"c:\private\10283558\policies\ups_101f7fbb_b1000031.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_b1000032.rsc"-"c:\private\10283558\policies\ups_101f7fbb_b1000032.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_b1100011.rsc"-"c:\private\10283558\policies\ups_101f7f1f_b1100011.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_b1100012.rsc"-"c:\private\10283558\policies\ups_101f7f1f_b1100012.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_b1100021.rsc"-"c:\private\10283558\policies\ups_101f7faa_b1100021.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_b1100022.rsc"-"c:\private\10283558\policies\ups_101f7faa_b1100022.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_b1100031.rsc"-"c:\private\10283558\policies\ups_101f7fbb_b1100031.rsc" 
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_b1100032.rsc"-"c:\private\10283558\policies\ups_101f7fbb_b1100032.rsc" 
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000e032.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000e032.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000e033.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000e033.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000e034.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000e034.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000e035.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000e035.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000daa1.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000daa1.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000d004.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000d004.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7faa_1000d004.rsc"-"c:\private\10283558\policies\ups_101f7faa_1000d004.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7fbb_1000d004.rsc"-"c:\private\10283558\policies\ups_101f7fbb_1000d004.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_0000aaa1.rsc"-"c:\private\10283558\policies\ups_101f7f1f_0000aaa1.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_0000aaa3.rsc"-"c:\private\10283558\policies\ups_101f7f1f_0000aaa3.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7790_00000666.rsc"-"c:\private\10283558\policies\ups_101f7790_00000666.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_1000b012.rsc"-"c:\private\10283558\policies\ups_101f7f1f_1000b012.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_00000666.rsc"-"c:\private\10283558\policies\ups_101f7f1f_00000666.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_00000999.rsc"-"c:\private\10283558\policies\ups_101f7f1f_00000999.rsc"
-
-"\epoc32\data\z\private\10283558\policies\ups_101f7790_100C5678.rsc"-"c:\private\10283558\policies\ups_101f7790_100C5678.rsc"
-"\epoc32\data\z\private\10283558\policies\ups_101f7f1f_100C5678.rsc"-"c:\private\10283558\policies\ups_101f7f1f_100C5678.rsc"
-
-;REM Integration test scripts exports 
-"\common\generic\security\os\security\authorisation\userpromptservice\test\tups\scripts\tups_integ.ini"-"c:\tups\integ\scripts\tups_integ.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\test\tups\scripts\tups_integ.script"-"c:\tups\integ\scripts\tups_integ.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\test\tups\scripts\tups_properties.ini"-"c:\tups\integ\scripts\tups_properties.ini"
-
-;REM Integration test corrupted databases exports 
-"\common\generic\security\os\security\authorisation\userpromptservice\test\tups\corrupted_db_integ\ups_corrupted1.db"-"c:\tups\integ\corrupted_db_integ\ups_corrupted1.db"
-"\common\generic\security\os\security\authorisation\userpromptservice\test\tups\corrupted_db_integ\ups_corrupted2.db"-"c:\tups\integ\corrupted_db_integ\ups_corrupted2.db"
-
-
-
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tpolicycache.script"-"c:\tups\tpolicies\scripts\tpolicycache.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyerrors.ini"-"c:\tups\tpolicies\scripts\policyerrors.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policymatch.ini"-"c:\tups\tpolicies\scripts\policymatch.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policymatchoom.ini"-"c:\tups\tpolicies\scripts\policymatchoom.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyeclipse.ini"-"c:\tups\tpolicies\scripts\policyeclipse.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policypanic0.ini"-"c:\tups\tpolicies\scripts\policypanic0.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\pluginmanager.ini"-"c:\tups\tpolicies\scripts\pluginmanager.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tserviceconfig.script"-"c:\tups\tpolicies\scripts\tserviceconfig.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tserviceconfig.ini"-"c:\tups\tpolicies\scripts\tserviceconfig.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tupsnotifier.script"-"c:\tups\tpolicies\scripts\tupsnotifier.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tupsnotifier.ini"-"c:\tups\tpolicies\scripts\tupsnotifier.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\tpolicyreader.script"-"c:\tups\tpolicies\scripts\tpolicyreader.script"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_valid.ini"-"c:\tups\tpolicies\scripts\policyreader_valid.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_empty.ini"-"c:\tups\tpolicies\scripts\policyreader_empty.ini"	
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_invalidoptions.ini"-"c:\tups\tpolicies\scripts\policyreader_invalidoptions.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_invalidsystemserversecurity.ini"-"c:\tups\tpolicies\scripts\policyreader_invalidsystemserversecurity.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_noexist.ini"-"c:\tups\tpolicies\scripts\policyreader_noexist.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_nodefaultpolicyevaluator.ini"-"c:\tups\tpolicies\scripts\policyreader_nodefaultpolicyevaluator.ini"
-"\common\generic\security\os\security\authorisation\userpromptservice\policies\test\tupspolicies\scripts\policyreader_nodefaultdialogcreator.ini"-"c:\tups\tpolicies\scripts\policyreader_nodefaultdialogcreator.ini"
-
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01031000_01031001.rsc"-"c:\tups\tpolicies\policies\ups_01031000_01031001.rsc"
-
-
-		
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01031000_01031002.rsc"-"c:\tups\tpolicies\policies\ups_01031000_01031002.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01032000_01032001.rsc"-"c:\tups\tpolicies\policies\ups_01032000_01032001.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01033000_01032001.rsc"-"c:\tups\tpolicies\policies\ups_01033000_01032001.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01035000_01035001.rsc"-"c:\tups\tpolicies\policies\ups_01035000_01035001.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01036000_01036001.rsc"-"c:\tups\tpolicies\policies\ups_01036000_01036001.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01037000_01037001.rsc"-"c:\tups\tpolicies\policies\ups_01037000_01037001.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01038000_01038001.rsc"-"c:\tups\tpolicies\policies\ups_01038000_01038001.rsc"
-
-"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01033000_01032001.rsc"-"c:\tups\tpolicies\eclipse\ups_01033000_01032001.rsc"
-"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01034000_01032001.rsc"-"c:\tups\tpolicies\eclipse\ups_01034000_01032001.rsc"
-"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01035000_01035001.rsc"-"c:\tups\tpolicies\eclipse\ups_01035000_01035001.rsc"
-"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01036000_01036001.rsc"-"c:\tups\tpolicies\eclipse\ups_01036000_01036001.rsc"
-;"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01041000_01041001.rsc"-"c:\tups\tpolicies\eclipse\ups_01041000_01041001.rsc"
-;"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01041000_01041002.rsc"-"c:\tups\tpolicies\eclipse\ups_01041000_01041002.rsc"
-;"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01042000_01042001.rsc"-"c:\tups\tpolicies\eclipse\ups_01042000_01042001.rsc"
-;"\epoc32\data\Z\tups\tpolicies\eclipse\ups_01043000_01043001.rsc"-"c:\tups\tpolicies\eclipse\ups_01043000_01043001.rsc"
-
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_empty.rsc"-"c:\tups\tpolicies\policyreader\policyreader_empty.rsc"
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_invalidoptions.rsc"-"c:\tups\tpolicies\policyreader\policyreader_invalidoptions.rsc"
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_invalidsystemserversecurity.rsc"-"c:\tups\tpolicies\policyreader\policyreader_invalidsystemserversecurity.rsc"
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_valid.rsc"-"c:\tups\tpolicies\policyreader\policyreader_valid.rsc"
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_nodefaultpolicyevaluator.rsc"-"c:\tups\tpolicies\policyreader\policyreader_nodefaultpolicyevaluator.rsc"
-"\epoc32\data\Z\tups\tpolicies\policyreader\policyreader_nodefaultdialogcreator.rsc"-"c:\tups\tpolicies\policyreader\policyreader_nodefaultdialogcreator.rsc"
-
-; These files should be ignored by the policy cache
-"\epoc32\data\Z\tups\tpolicies\policies\invalidpolicy.txt"-"c:\tups\tpolicies\policies\invalidpolicy.txt"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01032000.rsc"-"c:\tups\tpolicies\policies\ups_01032000.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01032000_QWERTYUI.rsc"-"c:\tups\tpolicies\policies\ups_01032000_QWERTYUI.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01032000_11111111"-"c:\tups\tpolicies\policies\ups_01032000_11111111"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_0103200011111111.rsc"-"c:\tups\tpolicies\policies\ups_0103200011111111.rsc"
-"\epoc32\data\Z\tups\tpolicies\policies\ups_01032000_11111111.rsc\invalidpolicy.txt"-"c:\tups\tpolicies\policies\ups_01032000_11111111.rsc\invalidpolicy.txt"
-
-"\epoc32\data\Z\private\10283558\policies\ups_01041000_01041001.rsc"-"c:\private\10283558\policies\ups_01041000_01041001.rsc"
-
-
-
--- a/cryptomgmtlibs/securitytestfw/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -36,9 +36,11 @@
 
 PRJ_TESTEXPORTS
 
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/rtestwrapper.h /epoc32/include/scs/rtestwrapper.h
+#endif
 ../inc/securitytestframework.iby	/epoc32/rom/include/securitytestframework.iby
 
-
 // configuration file for the CommsDB set up
 ../test/autotesting/auto.cfg /epoc32/winscw/c/auto.cfg
 ../test/autotesting/auto_broken.cfg /epoc32/winscw/c/auto_broken.cfg
@@ -67,6 +69,7 @@
 ../test/autotesting/testexecute.ini  /epoc32/winscw/c/system/data/testexecute.ini
 
 // batch files for automated hardware testing
+
 	../test/autotesting/hosts		     /epoc32/winscw/c/autohardware/hosts
 	../test/autotesting/testsecurity_sdp.bat	     /epoc32/winscw/c/autohardware/testsecurity_sdp.bat
 	../test/autotesting/testsecurity_sdp_auth.bat	     /epoc32/winscw/c/autohardware/testsecurity_sdp_auth.bat
@@ -117,6 +120,75 @@
 ../inc/sntpclient.iby  /epoc32/rom/include/sntpclient.iby
 ../inc/cryptodeps.iby  /epoc32/rom/include/cryptodeps.iby
 
+// Include files for testhandler2
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tcancel.h /epoc32/include/testhandler2/tcancel.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_certstoreactionmemfail.h	/epoc32/include/testhandler2/t_certstoreactionmemfail.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/Thardcodedsetup.h /epoc32/include/testhandler2/thardcodedsetup.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tHardcodedTests.h /epoc32/include/testhandler2/thardcodedtests.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_input.h /epoc32/include/testhandler2/t_input.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_message.h /epoc32/include/testhandler2/t_message.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_mtestspec.h /epoc32/include/testhandler2/t_mtestspec.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_output.h /epoc32/include/testhandler2/t_output.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tscriptandhardcoded.h /epoc32/include/testhandler2/tscriptandhardcoded.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tScriptSetup.h /epoc32/include/testhandler2/tscriptsetup.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tScriptTests.h /epoc32/include/testhandler2/tscripttests.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tSyncAction.h /epoc32/include/testhandler2/tsyncaction.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_testaction.h /epoc32/include/testhandler2/t_testaction.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_testactionspec.h /epoc32/include/testhandler2/t_testactionspec.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_testhandler.h /epoc32/include/testhandler2/t_testhandler.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/ttesthandlersettings.h /epoc32/include/testhandler2/ttesthandlersettings.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_testsetup.h /epoc32/include/testhandler2/t_testsetup.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/tTestSpec.h /epoc32/include/testhandler2/ttestspec.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_utils.h /epoc32/include/testhandler2/t_utils.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2/t_errorconverter.h /epoc32/include/testhandler2/t_errorconverter.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+./../test/testhandler2extra/t_inputextra.h /epoc32/include/testhandler2/t_inputextra.h
+#endif
+
+// testhandler_on_testexecute export
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/testexecuteinterface.h /epoc32/include/testexecuteinterface.h
+#endif
 
 ../test/securityframeworktestserver/group/securityframeworktestserver.iby /epoc32/rom/include/securityframeworktestserver.iby
 
--- a/cryptomgmtlibs/securitytestfw/group/caf.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"CAF Tests"}, (0x101FB3E3), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"CAF integration test"
-
-
-"\epoc32\data\z\tcaf\tcaf.script"-"c:\test\tcaf\tcaf.script"
-"\epoc32\data\z\tcaf\tcafnodrmcap.script"-"c:\test\tcaf\tcafnodrmcap.script"
-"\epoc32\data\z\tcaf\nodrmcapsteps.ini"-"c:\tcaf\nodrmcapsteps.ini"
-
-
-"\epoc32\data\z\tcaf\performance.ini"-"c:\tcaf\performance.ini"
-
-"\epoc32\data\z\tcaf\managerstep.ini"-"c:\tcaf\managerstep.ini"
-
-"\epoc32\data\z\tcaf\rightsmanagerstep.ini"-"c:\tcaf\rightsmanagerstep.ini"
-
-;#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-"\epoc32\data\z\tcaf\consumerstep_64bit.script"-"c:\test\tcaf\consumerstep_64bit.script"
-;#endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-"\epoc32\data\z\tcaf\drmfileperformance_armv5.script"-"c:\test\tcaf\drmfileperformance_armv5.script"
-"\epoc32\data\z\tcaf\consumerstep.ini"-"c:\tcaf\consumerstep.ini"
-
-"\epoc32\data\z\tcaf\recognize.ini"-"c:\tcaf\recognize.ini"
-
-"\epoc32\data\z\tcaf\contentstep.ini"-"c:\tcaf\contentstep.ini"
-
-
-"\epoc32\data\z\tcaf\supply.ini"-"c:\tcaf\supply.ini"
-
-"\epoc32\data\z\tcaf\cafutils.ini"-"c:\tcaf\cafutils.ini"
-
-"\epoc32\data\z\tcaf\contentiteratorstep.ini"-"c:\tcaf\contentiteratorstep.ini"
-"\epoc32\data\z\tcaf\attributes.ini"-"c:\tcaf\attributes.ini"
-
-
-"\epoc32\data\z\tcaf\stringattributes.ini"-"c:\tcaf\stringattributes.ini"
-"\epoc32\data\z\tcaf\testdata\copyfile.txt"-"c:\tcaf\testdata\copyfile.txt"
-"\epoc32\data\z\tcaf\testdata\TestAgentPrivateDir\protected_content.txt"-"c:\tcaf\testdata\TestAgentPrivateDir\protected_content.txt"
-"\epoc32\data\z\tcaf\testdata\dummydata.txt"-"c:\tcaf\testdata\dummydata.txt"
-"\epoc32\data\z\tcaf\testdata\test.drm"-"c:\tcaf\testdata\test.drm"
-"\epoc32\data\z\tcaf\testdata\test.drm.bin"-"c:\tcaf\testdata\test.drm.bin"
-"\epoc32\data\z\tcaf\testdata\uppercasetest.drm"-"c:\tcaf\testdata\uppercasetest.drm"
-"\epoc32\data\z\tcaf\testdata\test.txt"-"c:\tcaf\testdata\test.txt"
-"\epoc32\data\z\tcaf\testdata\Insttest.jad"-"c:\tcaf\testdata\Insttest.jad"
-"\epoc32\data\z\tcaf\testdata\good.gif"-"c:\tcaf\testdata\good.gif"
-"\epoc32\data\z\tcaf\testdata\error.gif"-"c:\tcaf\testdata\error.gif"
-"\epoc32\data\z\tcaf\testdata\picture.jpg"-"c:\tcaf\testdata\picture.jpg"
-"\epoc32\data\z\tcaf\testdata\audio.content"-"c:\tcaf\testdata\audio.content"
-"\epoc32\data\z\tcaf\testdata\audiomulti.content"-"c:\tcaf\testdata\audiomulti.content"
-"\epoc32\data\z\tcaf\testdata\notes1.txt"-"c:\tcaf\testdata\notes1.txt"
-
-
-; Store file in Apparc Server Private Directory
-"\epoc32\data\z\private\10003A3F\RecCaf\RecCafMimeTypes.txt"-"c:\private\10003a3f\RecCaf\RecCafMimeTypes.txt"
-
-
-"\epoc32\data\z\rta\rta.script"-"c:\test\rta\rta.script"
-;#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-"\epoc32\data\z\rta\rta_64bit.script"-"c:\test\rta\rta_64bit.script"
-;#endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
-"\epoc32\data\z\rta\rta.ini"-"c:\rta\rta.ini
-"\epoc32\data\z\rta\testdata\sample.txt"-"c:\rta\testdata\sample.txt"
-"\epoc32\data\z\rta\testdata\content.xml"-"c:\rta\testdata\content.xml"
-"\epoc32\data\z\rta\testdata\content2.xml"-"c:\rta\testdata\content2.xml"
-"\epoc32\data\z\rta\testdata\rights.xml"-"c:\rta\testdata\rights.xml"
-"\epoc32\data\z\rta\testdata\rights2.xml"-"c:\rta\testdata\rights2.xml"
-"\epoc32\data\z\rta\testdata\rights3.xml"-"c:\rta\testdata\rights3.xml"
-"\epoc32\data\z\rta\testdata\stringattributes.xml"-"c:\rta\testdata\stringattributes.xml"
-"\epoc32\data\z\rta\testdata\AudioContent.xml"-"c:\rta\testdata\AudioContent.xml"
-"\epoc32\data\z\rta\testdata\AudioRights.xml"-"c:\rta\testdata\AudioRights.xml"
-"\epoc32\data\z\rta\testdata\AudioTst.wav"-"c:\rta\testdata\AudioTst.wav"
-"\epoc32\data\z\rta\testdata\rights_v0.db"-"c:\rta\testdata\rights_v0.db"
-"\epoc32\data\z\rta\testdata\corruptcontent.content"-"c:\rta\testdata\corruptcontent.content"
-"\epoc32\data\z\rta\testdata\negativelengthcontent.content"-"c:\rta\testdata\negativelengthcontent.content"
-"\epoc32\data\z\rta\testdata\containeruniqueidboundarycheck.xml"-"c:\rta\testdata\containeruniqueidboundarycheck.xml"
-"\epoc32\data\z\rta\testdata\contentnameboundarycheck.xml"-"c:\rta\testdata\contentnameboundarycheck.xml"
-"\epoc32\data\z\rta\testdata\contentuniqueidboundarycheck.xml"-"c:\rta\testdata\contentuniqueidboundarycheck.xml"
-"\epoc32\data\z\rta\testdata\containernouniqueid.xml"-"c:\rta\testdata\containernouniqueid.xml"
-"\epoc32\data\z\rta\testdata\contentnouniqueid.xml"-"c:\rta\testdata\contentnouniqueid.xml"
-"\epoc32\data\z\rta\testdata\containeremptyuniqueid.xml"-"c:\rta\testdata\containeremptyuniqueid.xml"
-"\epoc32\data\z\rta\testdata\contentemptyuniqueid.xml"-"c:\rta\testdata\contentemptyuniqueid.xml"
-"\epoc32\data\z\rta\testdata\content3.xml"-"c:\rta\testdata\content3.xml"
-
-
-
-; Test Streaming CAF Agent scripts
-"\epoc32\data\z\tcaf\tscaf\tscaf.ini"-"c:\tcaf\tscaf\tscaf.ini"
-"\epoc32\data\z\tcaf\tscaf\tscaf.script"-"c:\test\tcaf\tscaf\tscaf.script1"
-
-
-; Test Streaming CAF Agent data
-"\epoc32\data\z\tcaf\tscaf\data\rosimple.dr"-"c:\tcaf\tscaf\data\rosimple.dr"
-"\epoc32\data\z\tcaf\tscaf\data\roexpired.dr"-"c:\tcaf\tscaf\data\roexpired.dr"
-"\epoc32\data\z\tcaf\tscaf\data\roprogramprotected.dr"-"c:\tcaf\tscaf\data\roprogramprotected.dr"
-"\epoc32\data\z\tcaf\tscaf\data\roserviceprotected.dr"-"c:\tcaf\tscaf\data\roserviceprotected.dr"
-"\epoc32\data\z\tcaf\tscaf\data\rorecordable.dr"-"c:\tcaf\tscaf\data\rorecordable.dr"
-"\epoc32\data\z\tcaf\tscaf\data\postacquisitiontest.dr"-"c:\tcaf\tscaf\data\postacquisitiontest.dr"
-
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_programprotect01.dr"-"c:\tcaf\tscaf\data\tscaf_rights_programprotect01.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_programprotect02.dr"-"c:\tcaf\tscaf\data\tscaf_rights_programprotect02.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_programprotect03.dr"-"c:\tcaf\tscaf\data\tscaf_rights_programprotect03.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_serviceprotect01.dr"-"c:\tcaf\tscaf\data\tscaf_rights_serviceprotect01.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_serviceprotect02.dr"-"c:\tcaf\tscaf\data\tscaf_rights_serviceprotect02.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_serviceprotect03.dr"-"c:\tcaf\tscaf\data\tscaf_rights_serviceprotect03.dr"
-"\epoc32\data\z\tcaf\tscaf\data\tscaf_rights_expired01.dr"-"c:\tcaf\tscaf\data\tscaf_rights_expired01.dr"
-
-
--- a/cryptomgmtlibs/securitytestfw/group/certman.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,892 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"Certman Tests"}, (0x101FB3E2), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"Certman integration test"
-
-"\epoc32\winscw\c\tpkixcert\scripts\tpkixtest_part1.script"-"c:\tpkixcert\scripts\tpkixtest_part1.script1"
-"\epoc32\winscw\c\tpkixcert\scripts\tpkixtest_part2.script"-"c:\tpkixcert\scripts\tpkixtest_part2.script1"
-"\epoc32\winscw\c\tpkixcert\scripts\cancel1.script"-"c:\tpkixcert\scripts\cancel1.script1"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert.script"-"c:\twtlscert\scripts\twtlscert.script1"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert1.script"-"c:\twtlscert\scripts\twtlscert1.script1"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert2.script"-"c:\twtlscert\scripts\twtlscert2.script1"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert3.script"-"c:\twtlscert\scripts\twtlscert3.script1"
-"\epoc32\winscw\c\tcertstore\scripts\t_certstore_sha2.script"-"c:\tcertstore\scripts\t_certstore_sha2.script1"
-
-"\epoc32\winscw\c\tcertstore\scripts\swicertstore1hw.script"-"c:\tcertstore\scripts\swicertstore1.script1"
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore1-conf1.script"-"c:\tcertstore\scripts\unifiedcertstore1-conf1.script1"
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore2-conf1.script"-"c:\tcertstore\scripts\unifiedcertstore2-conf1.script1"
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore3-conf1.script"-"c:\tcertstore\scripts\unifiedcertstore3-conf1.script1"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent1.script"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent1.script1"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent2.script"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent2.script1"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent3.script"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent3.script1"
-"\epoc32\winscw\c\tcertstore\scripts\dsa.script"-"c:\tcertstore\scripts\dsa.script1"
-"\epoc32\winscw\c\tcertstore\scripts\reload.script"-"c:\tcertstore\scripts\reload.script1"
-
-"\epoc32\winscw\c\tcertstore\scripts\swicertstore4.script"-"c:\tcertstore\scripts\swicertstore4.script1"
-"\epoc32\winscw\c\tcertstore\scripts\wri-swicertstorehw.script"-"c:\tcertstore\scripts\wri-swicertstore1.script1"
-"\epoc32\winscw\c\tcertstore\scripts\apipolicing.script"-"c:\tcertstore\scripts\apipolicing.script1"
-"\epoc32\winscw\c\tcertstore\scripts\filecertstore_errors.script"-"c:\tcertstore\scripts\filecertstore_errors.script1"
-
-"\epoc32\winscw\c\tcertstore\multiple_certstore\scripts\tfilecertstore14.script"-"c:\tcertstore\multiple_certstore\scripts\tfilecertstore14.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509.script"-"c:\tx509\scripts\tx509.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509-oom1.script"-"c:\tx509\scripts\tx509-oom1.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509-oom2.script"-"c:\tx509\scripts\tx509-oom2.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509_dev_certs.script"-"c:\tx509\scripts\tx509_dev_certs.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509_dev_certs_oom.script"-"c:\tx509\scripts\tx509_dev_certs_oom.script1"
-"\epoc32\winscw\c\tx509\scripts\tx509-dnames.script"-"c:\tx509\scripts\tx509-dnames.script1"
-"\epoc32\winscw\c\tasn1\scripts\tasn1.script"-"c:\tasn1\scripts\tasn1.script1"
-"\epoc32\winscw\c\tpkcs10\scripts\tpkcs10_v2.script"-"c:\tpkcs10\scripts\tpkcs10_v2.script"
-"\epoc32\winscw\c\tpkixcert_tef\scripts\tpkixcert_tef.script"-"c:\tpkixcert_tef\scripts\tpkixcert_tef.script"
-
-"\epoc32\winscw\c\system\tocsp\Certs\Root1_RSA.cer"-"c:\System\TOCSP\Certs\Root1_RSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Signing1_RSA.cer"-"c:\System\TOCSP\Certs\Signing1_RSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Good-R1.cer"-"c:\System\TOCSP\Certs\Good-R1.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Revoked-R1.cer"-"c:\System\TOCSP\Certs\Revoked-R1.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Suspended-R1.cer"-"c:\System\TOCSP\Certs\Suspended-R1.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Unknown-R1.cer"-"c:\System\TOCSP\Certs\Unknown-R1.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Expired-R1.cer"-"c:\System\TOCSP\Certs\Expired-R1.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\Root2_DSA.cer"-"c:\System\TOCSP\Certs\Root2_DSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Signing2_DSA.cer"-"c:\System\TOCSP\Certs\Signing2_DSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Good_R2.cer"-"c:\System\TOCSP\Certs\Good_R2.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Revoked_R2.cer"-"c:\System\TOCSP\Certs\Revoked_R2.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Suspended_R2.cer"-"c:\System\TOCSP\Certs\Suspended_R2.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Unknown_R2.cer"-"c:\System\TOCSP\Certs\Unknown_R2.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\Valicert1_RSA.cer"-"c:\System\TOCSP\Certs\Valicert1_RSA.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\CertCo-signing-root.cer"-"c:\System\TOCSP\Certs\CertCo-signing-root.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\Root5-RSA.cer"-"c:\System\TOCSP\Certs\Root5-RSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Signing5-RSA.cer"-"c:\System\TOCSP\Certs\Signing5-RSA.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Good-R5.cer"-"c:\System\TOCSP\Certs\Good-R5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Revoked-R5.cer"-"c:\System\TOCSP\Certs\Revoked-R5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Unknown-R5.cer"-"c:\System\TOCSP\Certs\Unknown-R5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Expired-R5.cer"-"c:\System\TOCSP\Certs\Expired-R5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Suspended-R5.cer"-"c:\System\TOCSP\Certs\Suspended-R5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\GoodAIA-R5.cer"-"c:\System\TOCSP\Certs\GoodAIA-R5.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\Good-M5.cer"-"c:\System\TOCSP\Certs\Good-M5.cer"
-"\epoc32\winscw\c\system\tocsp\Certs\Mid5-RSA.cer"-"c:\System\TOCSP\Certs\Mid5-RSA.cer"
-
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca1-root.der"-"c:\System\TOCSP\Certs\OpenSSL\ca1-root.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca1-entity1.der"-"c:\System\TOCSP\Certs\OpenSSL\ca1-entity1.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca1-entity2.der"-"c:\System\TOCSP\Certs\OpenSSL\ca1-entity2.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca1-entity3.der"-"c:\System\TOCSP\Certs\OpenSSL\ca1-entity3.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca2-root.der"-"c:\System\TOCSP\Certs\OpenSSL\ca2-root.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca2-entity1.der"-"c:\System\TOCSP\Certs\OpenSSL\ca2-entity1.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca2-entity2.der"-"c:\System\TOCSP\Certs\OpenSSL\ca2-entity2.der"
-"\epoc32\winscw\c\system\tocsp\Certs\OpenSSL\ca2-entity3.der"-"c:\System\TOCSP\Certs\OpenSSL\ca2-entity3.der"
-
-
-
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Good-R1.der"-"c:\System\TOCSP\Certs\newopenssl\Good-R1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Good-R2.der"-"c:\System\TOCSP\Certs\newopenssl\Good-R2.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Good-R5.der"-"c:\System\TOCSP\Certs\newopenssl\Good-R5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\GoodAIA-R5.der"-"c:\System\TOCSP\Certs\newopenssl\GoodAIA-R5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Good-M5.der"-"c:\System\TOCSP\Certs\newopenssl\Good-M5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Revoked-R1.der"-"c:\System\TOCSP\Certs\newopenssl\Revoked-R1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Revoked-R2.der"-"c:\System\TOCSP\Certs\newopenssl\Revoked-R2.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Revoked-R5.der"-"c:\System\TOCSP\Certs\newopenssl\Revoked-R5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Unknown-R1.der"-"c:\System\TOCSP\Certs\newopenssl\Unknown-R1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Unknown-R2.der"-"c:\System\TOCSP\Certs\newopenssl\Unknown-R2.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Unknown-R5.der"-"c:\System\TOCSP\Certs\newopenssl\Unknown-R5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Expired-R1.der"-"c:\System\TOCSP\Certs\newopenssl\Expired-R1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Expired-R2.der"-"c:\System\TOCSP\Certs\newopenssl\Expired-R2.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Expired-R5.der"-"c:\System\TOCSP\Certs\newopenssl\Expired-R5.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\OCSPSigner-R1.der"-"c:\System\TOCSP\Certs\newopenssl\OCSPSigner-R1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\OCSPSigner-R2.der"-"c:\System\TOCSP\Certs\newopenssl\OCSPSigner-R2.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\OCSPSigner-R5.der"-"c:\System\TOCSP\Certs\newopenssl\OCSPSigner-R5.der"
-
-
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Root1-RSA.der"-"c:\System\TOCSP\Certs\newopenssl\Root1-RSA.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Root2-DSA.der"-"c:\System\TOCSP\Certs\newopenssl\Root2-DSA.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\Root5-RSA.der"-"c:\System\TOCSP\Certs\newopenssl\Root5-RSA.der"
-
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-1-1.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-1-1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-1-1_Good.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-1-1_Good.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-1-1_RespSign.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-1-1_RespSign.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-1-1_Revoked.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-1-1_Revoked.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-1-1_Unknown.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-1-1_Unknown.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-DSA-1-1.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-DSA-1-1.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Good.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Good.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_RespSign.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_RespSign.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Revoked.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Revoked.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Unknown.der"-"c:\System\TOCSP\Certs\newopenssl\CADelg-DSA-1-1_Unknown.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\RootCADelg-DSA.der"-"c:\System\TOCSP\Certs\newopenssl\RootCADelg-DSA.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\RootCADelg-RSA.der"-"c:\System\TOCSP\Certs\newopenssl\RootCADelg-RSA.der"
-
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\RootCADirect-RSA.der"-"c:\System\TOCSP\Certs\newopenssl\RootCADirect-RSA.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-RSA_Good.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-RSA_Good.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-RSA_Revoked.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-RSA_Revoked.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-RSA_Unknown.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-RSA_Unknown.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\RootCADirect-DSA.der"-"c:\System\TOCSP\Certs\newopenssl\RootCADirect-DSA.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-DSA_Good.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-DSA_Good.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-DSA_Revoked.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-DSA_Revoked.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\CADirect-DSA_Unknown.der"-"c:\System\TOCSP\Certs\newopenssl\CADirect-DSA_Unknown.der"
-
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\ee_with_aia.der"-"c:\System\TOCSP\Certs\newopenssl\ee_with_aia.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\ee_without_aia.der"-"c:\System\TOCSP\Certs\newopenssl\ee_without_aia.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\ee_withaia_19005.der"-"c:\System\TOCSP\Certs\newopenssl\ee_withaia_19005.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\ee_withaia_19006.der"-"c:\System\TOCSP\Certs\newopenssl\ee_withaia_19006.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\newopenssl\ica_cert.der"-"c:\System\TOCSP\Certs\newopenssl\ica_cert.der"
-
-"\epoc32\winscw\c\system\TOCSP\Certs\symbsign\symbsign_int.der"-"c:\System\TOCSP\Certs\symbsign\symbsign_int.der"
-"\epoc32\winscw\c\system\TOCSP\Certs\symbsign\symbsign_ee.der"-"c:\System\TOCSP\Certs\symbsign\symbsign_ee.der"
-
-
-"\epoc32\winscw\c\tpkixcert\scripts\tpkixtest_all.txt"-"c:\tpkixcert\scripts\tpkixtest_all.txt"
-
-"\epoc32\winscw\c\tpkixcert\scripts\tpkixtest_part1.ini"-"c:\tpkixcert\scripts\tpkixtest_part1.ini"
-"\epoc32\winscw\c\tpkixcert\scripts\tpkixtest_part2.ini"-"c:\tpkixcert\scripts\tpkixtest_part2.ini"
-"\epoc32\winscw\c\tpkixcert\scripts\cancel1.ini"-"c:\tpkixcert\scripts\cancel1.ini"
-
-
-"\epoc32\winscw\c\pkixtestdata\build\ca1.crt"-"c:\pkixtestdata\build\ca1.crt"
-"\epoc32\winscw\c\pkixtestdata\build\ca2.crt"-"c:\pkixtestdata\build\ca2.crt"
-"\epoc32\winscw\c\pkixtestdata\build\ca3_root.crt"-"c:\pkixtestdata\build\ca3_root.crt"
-"\epoc32\winscw\c\pkixtestdata\build\ee.crt"-"c:\pkixtestdata\build\ee.crt"
-"\epoc32\winscw\c\pkixtestdata\build\rich1.crt"-"c:\pkixtestdata\build\rich1.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\invalid_sig.der"-"c:\pkixtestdata\validation\invalid_sig.der"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_01\EndCertificateCP_01_01.crt"-"c:\pkixtestdata\validation\cp_01_01\EndCertificateCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_01_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_02\EndCertificateCP_01_02.crt"-"c:\pkixtestdata\validation\cp_01_02\EndCertificateCP_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_02\IntermediateCertificateCP_01_02.crt"-"c:\pkixtestdata\validation\cp_01_02\IntermediateCertificateCP_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_01_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_03\EndCertificateCP_01_03.crt"-"c:\pkixtestdata\validation\cp_01_03\EndCertificateCP_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_03\IntermediateCertificateCP_01_03.crt"-"c:\pkixtestdata\validation\cp_01_03\IntermediateCertificateCP_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_01_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_01_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_01\EndCertificateCP_02_01.crt"-"c:\pkixtestdata\validation\cp_02_01\EndCertificateCP_02_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_01\IntermediateCertificate1CP_02_01.crt"-"c:\pkixtestdata\validation\cp_02_01\IntermediateCertificate1CP_02_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_01\IntermediateCertificate2CP_02_01.crt"-"c:\pkixtestdata\validation\cp_02_01\IntermediateCertificate2CP_02_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_02_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_02\EndCertificateCP_02_02.crt"-"c:\pkixtestdata\validation\cp_02_02\EndCertificateCP_02_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_02\IntermediateCertificateCP_02_02.crt"-"c:\pkixtestdata\validation\cp_02_02\IntermediateCertificateCP_02_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_02_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_03\EndCertificateCP_02_03.crt"-"c:\pkixtestdata\validation\cp_02_03\EndCertificateCP_02_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_03\IntermediateCertificateCP_02_03.crt"-"c:\pkixtestdata\validation\cp_02_03\IntermediateCertificateCP_02_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_02_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_04\EndCertificateCP_02_04.crt"-"c:\pkixtestdata\validation\cp_02_04\EndCertificateCP_02_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_04\IntermediateCertificateCP_02_04.crt"-"c:\pkixtestdata\validation\cp_02_04\IntermediateCertificateCP_02_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_02_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_05\EndCertificateCP_02_05.crt"-"c:\pkixtestdata\validation\cp_02_05\EndCertificateCP_02_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_05\IntermediateCertificateCP_02_05.crt"-"c:\pkixtestdata\validation\cp_02_05\IntermediateCertificateCP_02_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_02_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_02_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_01\EndCertificateCP_03_01.crt"-"c:\pkixtestdata\validation\cp_03_01\EndCertificateCP_03_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_01\IntermediateCertificateCP_03_01.crt"-"c:\pkixtestdata\validation\cp_03_01\IntermediateCertificateCP_03_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_03_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_02\EndCertificateCP_03_02.crt"-"c:\pkixtestdata\validation\cp_03_02\EndCertificateCP_03_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_02\IntermediateCertificateCP_03_02.crt"-"c:\pkixtestdata\validation\cp_03_02\IntermediateCertificateCP_03_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_03_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_03\EndCertificateCP_03_03.crt"-"c:\pkixtestdata\validation\cp_03_03\EndCertificateCP_03_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_03\IntermediateCertificateCP_03_03.crt"-"c:\pkixtestdata\validation\cp_03_03\IntermediateCertificateCP_03_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_03_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_04\EndCertificateCP_03_04.crt"-"c:\pkixtestdata\validation\cp_03_04\EndCertificateCP_03_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_04\IntermediateCertificateCP_03_04.crt"-"c:\pkixtestdata\validation\cp_03_04\IntermediateCertificateCP_03_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_03_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_03_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_01\EndCertificateCP_04_01.crt"-"c:\pkixtestdata\validation\cp_04_01\EndCertificateCP_04_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_01\IntermediateCertificateCP_04_01.crt"-"c:\pkixtestdata\validation\cp_04_01\IntermediateCertificateCP_04_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_02\EndCertificateCP_04_02.crt"-"c:\pkixtestdata\validation\cp_04_02\EndCertificateCP_04_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_02\IntermediateCertificateCP_04_02.crt"-"c:\pkixtestdata\validation\cp_04_02\IntermediateCertificateCP_04_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_03\EndCertificateCP_04_03.crt"-"c:\pkixtestdata\validation\cp_04_03\EndCertificateCP_04_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_03\IntermediateCertificateCP_04_03.crt"-"c:\pkixtestdata\validation\cp_04_03\IntermediateCertificateCP_04_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_04\EndCertificateCP_04_04.crt"-"c:\pkixtestdata\validation\cp_04_04\EndCertificateCP_04_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_04\IntermediateCertificateCP_04_04.crt"-"c:\pkixtestdata\validation\cp_04_04\IntermediateCertificateCP_04_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_05\EndCertificateCP_04_05.crt"-"c:\pkixtestdata\validation\cp_04_05\EndCertificateCP_04_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_05\IntermediateCertificateCP_04_05.crt"-"c:\pkixtestdata\validation\cp_04_05\IntermediateCertificateCP_04_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_06\EndCertificateCP_04_06.crt"-"c:\pkixtestdata\validation\cp_04_06\EndCertificateCP_04_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_06\IntermediateCertificateCP_04_06.crt"-"c:\pkixtestdata\validation\cp_04_06\IntermediateCertificateCP_04_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\cp_04_06\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\cp_04_06\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_01_01\EndCertificateIC_01_01.crt"-"c:\pkixtestdata\validation\ic_01_01\EndCertificateIC_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_01_01\IntermediateCertificateIC_01_01.crt"-"c:\pkixtestdata\validation\ic_01_01\IntermediateCertificateIC_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_01_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_01_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_01\EndCertificateIC_02_01.crt"-"c:\pkixtestdata\validation\ic_02_01\EndCertificateIC_02_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_01\IntermediateCertificateIC_02_01.crt"-"c:\pkixtestdata\validation\ic_02_01\IntermediateCertificateIC_02_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_02_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_02\EndCertificateIC_02_02.crt"-"c:\pkixtestdata\validation\ic_02_02\EndCertificateIC_02_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_02\IntermediateCertificateIC_02_02.crt"-"c:\pkixtestdata\validation\ic_02_02\IntermediateCertificateIC_02_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_02_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_03\EndCertificateIC_02_03.crt"-"c:\pkixtestdata\validation\ic_02_03\EndCertificateIC_02_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_03\IntermediateCertificateIC_02_03.crt"-"c:\pkixtestdata\validation\ic_02_03\IntermediateCertificateIC_02_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_02_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_04\EndCertificateIC_02_04.crt"-"c:\pkixtestdata\validation\ic_02_04\EndCertificateIC_02_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_04\IntermediateCertificateIC_02_04.crt"-"c:\pkixtestdata\validation\ic_02_04\IntermediateCertificateIC_02_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_02_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_02_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_04_01\EndCertificateIC_04_01.crt"-"c:\pkixtestdata\validation\ic_04_01\EndCertificateIC_04_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_04_01\IntermediateCertificateIC_04_01.crt"-"c:\pkixtestdata\validation\ic_04_01\IntermediateCertificateIC_04_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_04_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_04_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_01\EndCertificateIC_05_01.crt"-"c:\pkixtestdata\validation\ic_05_01\EndCertificateIC_05_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_01\IntermediateCertificateIC_05_01.crt"-"c:\pkixtestdata\validation\ic_05_01\IntermediateCertificateIC_05_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_05_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_02\EndCertificateIC_05_02.crt"-"c:\pkixtestdata\validation\ic_05_02\EndCertificateIC_05_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_02\IntermediateCertificateIC_05_02.crt"-"c:\pkixtestdata\validation\ic_05_02\IntermediateCertificateIC_05_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_05_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_03\EndCertificateIC_05_03.crt"-"c:\pkixtestdata\validation\ic_05_03\EndCertificateIC_05_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_03\IntermediateCertificateIC_05_03.crt"-"c:\pkixtestdata\validation\ic_05_03\IntermediateCertificateIC_05_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_05_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_05_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_01\EndCertificateIC_06_01.crt"-"c:\pkixtestdata\validation\ic_06_01\EndCertificateIC_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_01\IntermediateCertificateIC_06_01.crt"-"c:\pkixtestdata\validation\ic_06_01\IntermediateCertificateIC_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_06_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_02\EndCertificateIC_06_02.crt"-"c:\pkixtestdata\validation\ic_06_02\EndCertificateIC_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_02\IntermediateCertificateIC_06_02.crt"-"c:\pkixtestdata\validation\ic_06_02\IntermediateCertificateIC_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_06_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_03\EndCertificateIC_06_03.crt"-"c:\pkixtestdata\validation\ic_06_03\EndCertificateIC_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_03\IntermediateCertificateIC_06_03.crt"-"c:\pkixtestdata\validation\ic_06_03\IntermediateCertificateIC_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\ic_06_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\ic_06_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_01\EndCertificatePL_01_01.crt"-"c:\pkixtestdata\validation\pl_01_01\EndCertificatePL_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_01\IntermediateCertificate1PL_01_01.crt"-"c:\pkixtestdata\validation\pl_01_01\IntermediateCertificate1PL_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_01\IntermediateCertificate2PL_01_01.crt"-"c:\pkixtestdata\validation\pl_01_01\IntermediateCertificate2PL_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_02\EndCertificatePL_01_02.crt"-"c:\pkixtestdata\validation\pl_01_02\EndCertificatePL_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_02\IntermediateCertificate1PL_01_02.crt"-"c:\pkixtestdata\validation\pl_01_02\IntermediateCertificate1PL_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_02\IntermediateCertificate2PL_01_02.crt"-"c:\pkixtestdata\validation\pl_01_02\IntermediateCertificate2PL_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_03\EndCertificatePL_01_03.crt"-"c:\pkixtestdata\validation\pl_01_03\EndCertificatePL_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_03\IntermediateCertificatePL_01_03.crt"-"c:\pkixtestdata\validation\pl_01_03\IntermediateCertificatePL_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_04\EndCertificatePL_01_04.crt"-"c:\pkixtestdata\validation\pl_01_04\EndCertificatePL_01_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_04\IntermediateCertificatePL_01_04.crt"-"c:\pkixtestdata\validation\pl_01_04\IntermediateCertificatePL_01_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_05\EndCertificatePL_01_05.crt"-"c:\pkixtestdata\validation\pl_01_05\EndCertificatePL_01_05.crt attrib=r
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_05\IntermediateCertificate1PL_01_05.crt"-"c:\pkixtestdata\validation\pl_01_05\IntermediateCertificate1PL_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_05\IntermediateCertificate2PL_01_05.crt"-"c:\pkixtestdata\validation\pl_01_05\IntermediateCertificate2PL_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_05\IntermediateCertificate3PL_01_05.crt"-"c:\pkixtestdata\validation\pl_01_05\IntermediateCertificate3PL_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_06\EndCertificatePL_01_06.crt"-"c:\pkixtestdata\validation\pl_01_06\EndCertificatePL_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_06\IntermediateCertificate1PL_01_06.crt"-"c:\pkixtestdata\validation\pl_01_06\IntermediateCertificate1PL_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_06\IntermediateCertificate2PL_01_06.crt"-"c:\pkixtestdata\validation\pl_01_06\IntermediateCertificate2PL_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_06\IntermediateCertificate3PL_01_06.crt"-"c:\pkixtestdata\validation\pl_01_06\IntermediateCertificate3PL_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_06\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_06\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\EndCertificatePL_01_07.crt"-"c:\pkixtestdata\validation\pl_01_07\EndCertificatePL_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\IntermediateCertificate1PL_01_07.crt"-"c:\pkixtestdata\validation\pl_01_07\IntermediateCertificate1PL_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\IntermediateCertificate2PL_01_07.crt"-"c:\pkixtestdata\validation\pl_01_07\IntermediateCertificate2PL_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\IntermediateCertificate3PL_01_07.crt"-"c:\pkixtestdata\validation\pl_01_07\IntermediateCertificate3PL_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\IntermediateCertificate4PL_01_07.crt"-"c:\pkixtestdata\validation\pl_01_07\IntermediateCertificate4PL_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_07\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_07\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\EndCertificatePL_01_08.crt"-"c:\pkixtestdata\validation\pl_01_08\EndCertificatePL_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\IntermediateCertificate1PL_01_08.crt"-"c:\pkixtestdata\validation\pl_01_08\IntermediateCertificate1PL_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\IntermediateCertificate2PL_01_08.crt"-"c:\pkixtestdata\validation\pl_01_08\IntermediateCertificate2PL_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\IntermediateCertificate3PL_01_08.crt"-"c:\pkixtestdata\validation\pl_01_08\IntermediateCertificate3PL_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\IntermediateCertificate4PL_01_08.crt"-"c:\pkixtestdata\validation\pl_01_08\IntermediateCertificate4PL_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_08\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_08\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\EndCertificatePL_01_09.crt"-"c:\pkixtestdata\validation\pl_01_09\EndCertificatePL_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\IntermediateCertificate1PL_01_09.crt"-"c:\pkixtestdata\validation\pl_01_09\IntermediateCertificate1PL_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\IntermediateCertificate2PL_01_09.crt"-"c:\pkixtestdata\validation\pl_01_09\IntermediateCertificate2PL_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\IntermediateCertificate3PL_01_09.crt"-"c:\pkixtestdata\validation\pl_01_09\IntermediateCertificate3PL_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\IntermediateCertificate4PL_01_09.crt"-"c:\pkixtestdata\validation\pl_01_09\IntermediateCertificate4PL_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_09\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_09\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\EndCertificatePL_01_10.crt"-"c:\pkixtestdata\validation\pl_01_10\EndCertificatePL_01_10.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\IntermediateCertificate1PL_01_10.crt"-"c:\pkixtestdata\validation\pl_01_10\IntermediateCertificate1PL_01_10.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\IntermediateCertificate2PL_01_10.crt"-"c:\pkixtestdata\validation\pl_01_10\IntermediateCertificate2PL_01_10.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\IntermediateCertificate3PL_01_10.crt"-"c:\pkixtestdata\validation\pl_01_10\IntermediateCertificate3PL_01_10.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\IntermediateCertificate4PL_01_10.crt"-"c:\pkixtestdata\validation\pl_01_10\IntermediateCertificate4PL_01_10.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pl_01_10\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pl_01_10\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_01\EndCertificatePP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_01\EndCertificatePP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_01\IntermediateCertificatePP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_01\IntermediateCertificatePP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_02\EndCertificatePP_01_02.crt"-"c:\pkixtestdata\validation\pp_01_02\EndCertificatePP_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_02\IntermediateCertificatePP_01_02.crt"-"c:\pkixtestdata\validation\pp_01_02\IntermediateCertificatePP_01_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_03\EndCertificatePP_01_03.crt"-"c:\pkixtestdata\validation\pp_01_03\EndCertificatePP_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_03\IntermediateCertificate1PP_01_03.crt"-"c:\pkixtestdata\validation\pp_01_03\IntermediateCertificate1PP_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_03\IntermediateCertificate2PP_01_03.crt"-"c:\pkixtestdata\validation\pp_01_03\IntermediateCertificate2PP_01_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_04\EndCertificatePP_01_04.crt"-"c:\pkixtestdata\validation\pp_01_04\EndCertificatePP_01_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_04\IntermediateCertificate1PP_01_04.crt"-"c:\pkixtestdata\validation\pp_01_04\IntermediateCertificate1PP_01_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_04\IntermediateCertificate2PP_01_04.crt"-"c:\pkixtestdata\validation\pp_01_04\IntermediateCertificate2PP_01_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_05\EndCertificatePP_01_05.crt"-"c:\pkixtestdata\validation\pp_01_05\EndCertificatePP_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_05\IntermediateCertificate1PP_01_05.crt"-"c:\pkixtestdata\validation\pp_01_05\IntermediateCertificate1PP_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_05\IntermediateCertificate2PP_01_05.crt"-"c:\pkixtestdata\validation\pp_01_05\IntermediateCertificate2PP_01_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_06\EndCertificatePP_01_06.crt"-"c:\pkixtestdata\validation\pp_01_06\EndCertificatePP_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_06\IntermediateCertificate1PP_01_06.crt"-"c:\pkixtestdata\validation\pp_01_06\IntermediateCertificate1PP_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_06\IntermediateCertificate2PP_01_06.crt"-"c:\pkixtestdata\validation\pp_01_06\IntermediateCertificate2PP_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_06\IntermediateCertificate3PP_01_06.crt"-"c:\pkixtestdata\validation\pp_01_06\IntermediateCertificate3PP_01_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_06\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_06\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_07\EndCertificatePP_01_07.crt"-"c:\pkixtestdata\validation\pp_01_07\EndCertificatePP_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_07\IntermediateCertificate1PP_01_07.crt"-"c:\pkixtestdata\validation\pp_01_07\IntermediateCertificate1PP_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_07\IntermediateCertificate2PP_01_07.crt"-"c:\pkixtestdata\validation\pp_01_07\IntermediateCertificate2PP_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_07\IntermediateCertificate3PP_01_07.crt"-"c:\pkixtestdata\validation\pp_01_07\IntermediateCertificate3PP_01_07.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_07\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_07\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_08\EndCertificatePP_01_08.crt"-"c:\pkixtestdata\validation\pp_01_08\EndCertificatePP_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_08\IntermediateCertificate1PP_01_08.crt"-"c:\pkixtestdata\validation\pp_01_08\IntermediateCertificate1PP_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_08\IntermediateCertificate2PP_01_08.crt"-"c:\pkixtestdata\validation\pp_01_08\IntermediateCertificate2PP_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_08\IntermediateCertificate3PP_01_08.crt"-"c:\pkixtestdata\validation\pp_01_08\IntermediateCertificate3PP_01_08.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_08\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_08\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\EndCertificatePP_01_09.crt"-"c:\pkixtestdata\validation\pp_01_09\EndCertificatePP_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\IntermediateCertificate1PP_01_09.crt"-"c:\pkixtestdata\validation\pp_01_09\IntermediateCertificate1PP_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\IntermediateCertificate2PP_01_09.crt"-"c:\pkixtestdata\validation\pp_01_09\IntermediateCertificate2PP_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\IntermediateCertificate3PP_01_09.crt"-"c:\pkixtestdata\validation\pp_01_09\IntermediateCertificate3PP_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\IntermediateCertificate4PP_01_09.crt"-"c:\pkixtestdata\validation\pp_01_09\IntermediateCertificate4PP_01_09.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_01_09\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_01_09\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\EndCertificatePP_06_01.crt"-"c:\pkixtestdata\validation\pp_06_01\EndCertificatePP_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\IntermediateCertificate1PP_06_01.crt"-"c:\pkixtestdata\validation\pp_06_01\IntermediateCertificate1PP_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\IntermediateCertificate2PP_06_01.crt"-"c:\pkixtestdata\validation\pp_06_01\IntermediateCertificate2PP_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\IntermediateCertificate3PP_06_01.crt"-"c:\pkixtestdata\validation\pp_06_01\IntermediateCertificate3PP_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\IntermediateCertificate4PP_06_01.crt"-"c:\pkixtestdata\validation\pp_06_01\IntermediateCertificate4PP_06_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_06_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\EndCertificatePP_06_02.crt"-"c:\pkixtestdata\validation\pp_06_02\EndCertificatePP_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\IntermediateCertificate1PP_06_02.crt"-"c:\pkixtestdata\validation\pp_06_02\IntermediateCertificate1PP_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\IntermediateCertificate2PP_06_02.crt"-"c:\pkixtestdata\validation\pp_06_02\IntermediateCertificate2PP_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\IntermediateCertificate3PP_06_02.crt"-"c:\pkixtestdata\validation\pp_06_02\IntermediateCertificate3PP_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\IntermediateCertificate4PP_06_02.crt"-"c:\pkixtestdata\validation\pp_06_02\IntermediateCertificate4PP_06_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_06_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\EndCertificatePP_06_03.crt"-"c:\pkixtestdata\validation\pp_06_03\EndCertificatePP_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\IntermediateCertificate1PP_06_03.crt"-"c:\pkixtestdata\validation\pp_06_03\IntermediateCertificate1PP_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\IntermediateCertificate2PP_06_03.crt"-"c:\pkixtestdata\validation\pp_06_03\IntermediateCertificate2PP_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\IntermediateCertificate3PP_06_03.crt"-"c:\pkixtestdata\validation\pp_06_03\IntermediateCertificate3PP_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\IntermediateCertificate4PP_06_03.crt"-"c:\pkixtestdata\validation\pp_06_03\IntermediateCertificate4PP_06_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_06_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\EndCertificatePP_06_04.crt"-"c:\pkixtestdata\validation\pp_06_04\EndCertificatePP_06_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\IntermediateCertificate1PP_06_04.crt"-"c:\pkixtestdata\validation\pp_06_04\IntermediateCertificate1PP_06_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\IntermediateCertificate2PP_06_04.crt"-"c:\pkixtestdata\validation\pp_06_04\IntermediateCertificate2PP_06_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\IntermediateCertificate3PP_06_04.crt"-"c:\pkixtestdata\validation\pp_06_04\IntermediateCertificate3PP_06_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\IntermediateCertificate4PP_06_04.crt"-"c:\pkixtestdata\validation\pp_06_04\IntermediateCertificate4PP_06_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_06_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\EndCertificatePP_06_05.crt"-"c:\pkixtestdata\validation\pp_06_05\EndCertificatePP_06_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\IntermediateCertificate1PP_06_05.crt"-"c:\pkixtestdata\validation\pp_06_05\IntermediateCertificate1PP_06_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\IntermediateCertificate2PP_06_05.crt"-"c:\pkixtestdata\validation\pp_06_05\IntermediateCertificate2PP_06_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\IntermediateCertificate3PP_06_05.crt"-"c:\pkixtestdata\validation\pp_06_05\IntermediateCertificate3PP_06_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\IntermediateCertificate4PP_06_05.crt"-"c:\pkixtestdata\validation\pp_06_05\IntermediateCertificate4PP_06_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_06_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_06_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_01\EndCertificatePP_08_01.crt"-"c:\pkixtestdata\validation\pp_08_01\EndCertificatePP_08_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_01\IntermediateCertificatePP_08_01.crt"-"c:\pkixtestdata\validation\pp_08_01\IntermediateCertificatePP_08_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_01\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_01\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_02\EndCertificatePP_08_02.crt"-"c:\pkixtestdata\validation\pp_08_02\EndCertificatePP_08_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_02\IntermediateCertificatePP_08_02.crt"-"c:\pkixtestdata\validation\pp_08_02\IntermediateCertificatePP_08_02.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_02\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_02\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_03\EndCertificatePP_08_03.crt"-"c:\pkixtestdata\validation\pp_08_03\EndCertificatePP_08_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_03\IntermediateCertificatePP_08_03.crt"-"c:\pkixtestdata\validation\pp_08_03\IntermediateCertificatePP_08_03.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_03\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_03\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_04\EndCertificatePP_08_04.crt"-"c:\pkixtestdata\validation\pp_08_04\EndCertificatePP_08_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_04\IntermediateCertificatePP_08_04.crt"-"c:\pkixtestdata\validation\pp_08_04\IntermediateCertificatePP_08_04.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_04\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_04\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_05\EndCertificatePP_08_05.crt"-"c:\pkixtestdata\validation\pp_08_05\EndCertificatePP_08_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_05\IntermediateCertificatePP_08_05.crt"-"c:\pkixtestdata\validation\pp_08_05\IntermediateCertificatePP_08_05.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_05\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_05\TrustAnchorCP_01_01.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_06\EndCertificatePP_08_06.crt"-"c:\pkixtestdata\validation\pp_08_06\EndCertificatePP_08_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_06\IntermediateCertificatePP_08_06.crt"-"c:\pkixtestdata\validation\pp_08_06\IntermediateCertificatePP_08_06.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\pp_08_06\TrustAnchorCP_01_01.crt"-"c:\pkixtestdata\validation\pp_08_06\TrustAnchorCP_01_01.crt"
-
-"\epoc32\winscw\c\pkixtestdata\validation\critical_extns\ee_critical_extns.der"-"c:\pkixtestdata\validation\critical_extns\ee_critical_extns.der"
-"\epoc32\winscw\c\pkixtestdata\validation\critical_extns\intermediate_critical_extns.der"-"c:\pkixtestdata\validation\critical_extns\intermediate_critical_extns.der"
-"\epoc32\winscw\c\pkixtestdata\validation\critical_extns\root.der"-"c:\pkixtestdata\validation\critical_extns\root.der"
-
-"\epoc32\winscw\c\pkixtestdata\validation\forged\entrust_exp3_CA.crt"-"c:\pkixtestdata\validation\forged\entrust_exp3_CA.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\forged\datenzone.cer"-"c:\pkixtestdata\validation\forged\datenzone.cer"
-"\epoc32\winscw\c\pkixtestdata\validation\forged\Hacker.cer"-"c:\pkixtestdata\validation\forged\Hacker.cer"
-
-"\epoc32\winscw\c\pkixtestdata\validation\bmpstring\cacert_bmp.crt"-"c:\pkixtestdata\validation\bmpstring\cacert_bmp.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\bmpstring\eecert_bmp.crt"-"c:\pkixtestdata\validation\bmpstring\eecert_bmp.crt"
-
-"\epoc32\winscw\c\pkixtestdata\validation\invalidaltname\invalidaltname.crt"-"c:\pkixtestdata\validation\invalidaltname\invalidaltname.crt"
-"\epoc32\winscw\c\pkixtestdata\validation\invalidaltname\root.crt"-"c:\pkixtestdata\validation\invalidaltname\root.crt"
-
-
-
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert.ini"-"c:\twtlscert\scripts\twtlscert.ini"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert1.ini"-"c:\twtlscert\scripts\twtlscert1.ini"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert2.ini"-"c:\twtlscert\scripts\twtlscert2.ini"
-"\epoc32\winscw\c\twtlscert\scripts\twtlscert3.ini"-"c:\twtlscert\scripts\twtlscert3.ini"
-
-
-"\epoc32\winscw\c\twtlscert\data\Canadian_Hockey_Teams.crt"-"c:\twtlscert\data\Canadian_Hockey_Teams.crt"
-"\epoc32\winscw\c\twtlscert\data\caSELF_TEST.cer"-"c:\twtlscert\data\caSELF_TEST.cer"
-"\epoc32\winscw\c\twtlscert\data\ecaw.cer"-"c:\twtlscert\data\ecaw.cer"
-"\epoc32\winscw\c\twtlscert\data\EntrustNetWAP.bin"-"c:\twtlscert\data\EntrustNetWAP.bin"
-"\epoc32\winscw\c\twtlscert\data\ent-wtls.cer"-"c:\twtlscert\data\ent-wtls.cer"
-"\epoc32\winscw\c\twtlscert\data\ent-wtls-badsig.cer"-"c:\twtlscert\data\ent-wtls-badsig.cer"
-"\epoc32\winscw\c\twtlscert\data\esw.cer"-"c:\twtlscert\data\esw.cer"
-"\epoc32\winscw\c\twtlscert\data\freecerts-wtls.cer"-"c:\twtlscert\data\freecerts-wtls.cer"
-"\epoc32\winscw\c\twtlscert\data\MobileServiceCA.wap"-"c:\twtlscert\data\MobileServiceCA.wap"
-"\epoc32\winscw\c\twtlscert\data\MobileServiceCA-badsig.wap"-"c:\twtlscert\data\MobileServiceCA-badsig.wap"
-"\epoc32\winscw\c\twtlscert\data\Montreal_Canadiens.crt"-"c:\twtlscert\data\Montreal_Canadiens.crt"
-"\epoc32\winscw\c\twtlscert\data\Montreal_Canadiens_Invalid.crt"-"c:\twtlscert\data\Montreal_Canadiens_Invalid.crt"
-"\epoc32\winscw\c\twtlscert\data\Ottawa_Senators.crt"-"c:\twtlscert\data\Ottawa_Senators.crt"
-"\epoc32\winscw\c\twtlscert\data\SELF_TEST.cer"-"c:\twtlscert\data\SELF_TEST.cer"
-"\epoc32\winscw\c\twtlscert\data\symbian-freecerts-wtls.cer"-"c:\twtlscert\data\symbian-freecerts-wtls.cer"
-"\epoc32\winscw\c\twtlscert\data\Toronto_Maple_Leafs.crt"-"c:\twtlscert\data\Toronto_Maple_Leafs.crt"
-"\epoc32\winscw\c\twtlscert\data\Unknown.001"-"c:\twtlscert\data\Unknown.001"
-"\epoc32\winscw\c\twtlscert\data\Vancouver_Canucks.crt"-"c:\twtlscert\data\Vancouver_Canucks.crt"
-"\epoc32\winscw\c\twtlscert\data\will-ent-wtls.cer"-"c:\twtlscert\data\will-ent-wtls.cer"
-"\epoc32\winscw\c\twtlscert\data\will-ent-wtls-badsig.cer"-"c:\twtlscert\data\will-ent-wtls-badsig.cer"
-"\epoc32\winscw\c\twtlscert\data\will-freecerts-wtls.cer"-"c:\twtlscert\data\will-freecerts-wtls.cer"
-"\epoc32\winscw\c\twtlscert\data\william.bamberg@symbian.com.wap"-"c:\twtlscert\data\william.bamberg@symbian.com.wap"
-"\epoc32\winscw\c\twtlscert\data\william.bamberg@symbian.com-badsig.wap"-"c:\twtlscert\data\william.bamberg@symbian.com-badsig.wap"
-"\epoc32\winscw\c\twtlscert\data\Winnipeg_Jets_Missing_CN.crt"-"c:\twtlscert\data\Winnipeg_Jets_Missing_CN.crt"
-"\epoc32\winscw\c\twtlscert\data\wtls-EE.cer"-"c:\twtlscert\data\wtls-EE.cer"
-"\epoc32\winscw\c\twtlscert\data\wtls-EE-badsig.cer"-"c:\twtlscert\data\wtls-EE-badsig.cer"
-"\epoc32\winscw\c\twtlscert\data\wtls-root.cer"-"c:\twtlscert\data\wtls-root.cer"
-"\epoc32\winscw\c\twtlscert\data\wtls-root-badsig.cer"-"c:\twtlscert\data\wtls-root-badsig.cer"
-
-
-
-
-"\epoc32\winscw\c\tcertstore\scripts\t_certstore_sha2.ini"-"c:\tcertstore\scripts\t_certstore_sha2.ini"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent1.txt"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent1.txt"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent2.txt"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent2.txt"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent3.txt"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent3.txt"
-"\epoc32\winscw\c\tcertstore\scripts\swicertstore1hw.ini"-"c:\tcertstore\scripts\swicertstore1.ini"
-
-
-
-
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore1-conf1.ini"-"c:\tcertstore\scripts\unifiedcertstore1-conf1.ini"
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore2-conf1.ini"-"c:\tcertstore\scripts\unifiedcertstore2-conf1.ini"
-"\epoc32\winscw\c\tcertstore\scripts\unifiedcertstore3-conf1.ini"-"c:\tcertstore\scripts\unifiedcertstore3-conf1.ini"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent1.ini"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent1.ini"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent2.ini"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent2.ini"
-"\epoc32\winscw\c\tcertstoreconcurrent\scripts\certstoreconcurrent3.ini"-"c:\tcertstoreconcurrent\scripts\certstoreconcurrent3.ini"
-"\epoc32\winscw\c\tcertstore\scripts\dsa.ini"-"c:\tcertstore\scripts\dsa.ini"
-"\epoc32\winscw\c\tcertstore\scripts\reload.ini"-"c:\tcertstore\scripts\reload.ini"
-
-"\epoc32\winscw\c\tcertstore\scripts\swicertstore4.ini"-"c:\tcertstore\scripts\swicertstore4.ini"
-"\epoc32\winscw\c\tcertstore\scripts\wri-swicertstorehw.ini"-"c:\tcertstore\scripts\wri-swicertstore1.ini"
-"\epoc32\winscw\c\tcertstore\scripts\apipolicing.ini"-"c:\tcertstore\scripts\apipolicing.ini"
-"\epoc32\winscw\c\tcertstore\scripts\filecertstore_errors.ini"-"c:\tcertstore\scripts\filecertstore_errors.ini"
-
-"\epoc32\winscw\c\tcertstore\data\wri-swicertstore.dat"-"c:\tcertstore\data\wri-swicertstore.dat
-"\epoc32\winscw\c\system\data\test1certstore.dat"-"c:\system\data\test1certstore.dat"
-"\epoc32\winscw\c\system\data\test2certstore.dat"-"c:\system\data\test2certstore.dat"
-
-
-
-"\epoc32\winscw\c\tcertstore\serv-rootCA-sha384.der"-"c:\tcertstore\serv-rootCA-sha384.der"
-"\epoc32\winscw\c\tcertstore\serv-rootCA-sha256.der"-"c:\tcertstore\serv-rootCA-sha256.der"
-"\epoc32\winscw\c\tcertstore\serv-rootCA-sha224.der"-"c:\tcertstore\serv-rootCA-sha224.der"
-"\epoc32\winscw\c\tcertstore\serv-rootCA-sha512.der"-"c:\tcertstore\serv-rootCA-sha512.der"
-"\epoc32\winscw\c\tcertstore\thawteserverca.cer"-"c:\tcertstore\thawteserverca.cer"
-"\epoc32\winscw\c\tcertstore\Dsa-ca.cer"-"c:\tcertstore\Dsa-ca.cer"
-"\epoc32\winscw\c\tcertstore\ent-wtls.cer"-"c:\tcertstore\ent-wtls.cer"
-"\epoc32\winscw\c\tcertstore\ent-wtls1.cer"-"c:\tcertstore\ent-wtls1.cer"
-"\epoc32\winscw\c\tcertstore\ent-wtls2.cer"-"c:\tcertstore\ent-wtls2.cer"
-"\epoc32\winscw\c\tcertstore\ent-wtls3.cer"-"c:\tcertstore\ent-wtls3.cer"
-"\epoc32\winscw\c\tcertstore\VeriSignClass1PrimaryCA.cer"-"c:\tcertstore\VeriSignClass1PrimaryCA.cer"
-"\epoc32\winscw\c\tcertstore\VeriSignClass2PrimaryCA.cer"-"c:\tcertstore\VeriSignClass2PrimaryCA.cer"
-"\epoc32\winscw\c\tcertstore\VeriSignClass3PrimaryCA.cer"-"c:\tcertstore\VeriSignClass3PrimaryCA.cer"
-"\epoc32\winscw\c\tcertstore\willsglobalsign.crt"-"c:\tcertstore\willsglobalsign.crt"
-"\epoc32\winscw\c\certappmanager.txt"-"c:\certappmanager.txt"
-"\epoc32\winscw\c\unifiedcertstore2\CAW1.cer"-"c:\unifiedcertstore2\CAW1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAW2.cer"-"c:\unifiedcertstore2\CAW2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAW3.cer"-"c:\unifiedcertstore2\CAW3.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX1.cer"-"c:\unifiedcertstore2\CAX1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX2.cer"-"c:\unifiedcertstore2\CAX2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX3.cer"-"c:\unifiedcertstore2\CAX3.cer"
-"\epoc32\winscw\c\unifiedcertstore2\U1K1.crt"-"c:\unifiedcertstore2\U1K1.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U2K1.crt"-"c:\unifiedcertstore2\U2K1.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U3K2.cer"-"c:\unifiedcertstore2\U3K2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\U4K3.crt"-"c:\unifiedcertstore2\U4K3.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U5K3.crt"-"c:\unifiedcertstore2\U5K3.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U6K5.crt"-"c:\unifiedcertstore2\U6K5.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U7K6.crt"-"c:\unifiedcertstore2\U7K6.crt"
-"\epoc32\winscw\c\unifiedcertstore2\URL1K1.cer"-"c:\unifiedcertstore2\URL1K1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\URL2K2.cer"-"c:\unifiedcertstore2\URL2K2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\URL3K5.cer"-"c:\unifiedcertstore2\URL3K5.cer"
-
-"\epoc32\winscw\c\unifiedcertstore2\enciphersign.cer"-"c:\unifiedcertstore2\enciphersign.cer"
-"\epoc32\winscw\c\unifiedcertstore2\nrcert.cer"-"c:\unifiedcertstore2\nrcert.cer"
-"\epoc32\winscw\c\unifiedcertstore2\rsacert1.cer"-"c:\unifiedcertstore2\rsacert1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\rsacert2.cer"-"c:\unifiedcertstore2\rsacert2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\rsacert3.cer"-"c:\unifiedcertstore2\rsacert3.cer"
-"\epoc32\winscw\c\unifiedcertstore2\subjectkeycert.der"-"c:\unifiedcertstore2\subjectkeycert.der"
-"\epoc32\winscw\c\unifiedcertstore2\rsasigncer2.cer"-"c:\unifiedcertstore2\rsasigncer2.cer"
-
-;//	30/09/2002 New certificates and RSA key pairs added by JCS for certstore testing
-"\epoc32\winscw\c\tcertstore\data\enciphersigncertkey2.txt"-"c:\tcertstore\data\enciphersigncertkey2.txt"
-"\epoc32\winscw\c\tcertstore\data\nrcertkey.txt"-"c:\tcertstore\data\nrcertkey.txt"
-"\epoc32\winscw\c\tcertstore\data\rsacertkey1.txt"-"c:\tcertstore\data\rsacertkey1.txt"
-"\epoc32\winscw\c\tcertstore\data\rsacertkey2.txt"-"c:\tcertstore\data\rsacertkey2.txt"
-"\epoc32\winscw\c\tcertstore\data\rsacertkey3.txt"-"c:\tcertstore\data\rsacertkey3.txt"
-"\epoc32\winscw\c\tcertstore\data\signcertkey2.txt"-"c:\tcertstore\data\signcertkey2.txt"
-
-;// DSA private key and certificate for certstore tests
-"\epoc32\winscw\c\tcertstore\data\pkcs8dsa1.001"-"c:\tcertstore\data\pkcs8dsa1.001"
-"\epoc32\winscw\c\tcertstore\data\cert_dsa1.der"-"c:\tcertstore\data\cert_dsa1.der"
-
-
-;#ifndef __SECURITY_NORMAL_SWICERTSTORE__
-;	// SWI cert store data file, with Root5CA mandatory
-"\epoc32\data\z\resource\swicertstore.dat"-"c:\resource\swicertstore.dat"
-;#endif
-
-;#ifdef AGGREGATE_CERTSTORE
-;	// Test Composite CertStore code (CR1393)
-;	// swicertstore1.txt and swicertstore4.txt script files are sufficient for swicertstore
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\swicertstore1.dat"-"c:\resource\swicertstore3.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\corrupt.dat"-"c:\resource\swicertstore2.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\swicertstore2.dat"-"c:\resource\swicertstore1.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\cacerts2.dat"-"c:\private\101f72a6\cacerts4.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\corrupt.dat"-"c:\private\101f72a6\cacerts3.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\cacerts1.dat"-"c:\private\101f72a6\cacerts2.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\certclients2.dat"-"c:\private\101f72a6\certclients4.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\corrupt.dat"-"c:\private\101f72a6\certclients3.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\tdata\certclients1.dat"-"c:\private\101f72a6\certclients2.dat"
-	"\epoc32\winscw\c\tcertstore\multiple_certstore\scripts\tfilecertstore14.ini"-"c:\tcertstore\multiple_certstore\scripts\tfilecertstore14.ini"
-;#endif
-
-;//scripts
-"\epoc32\winscw\c\tx509\scripts\tx509-1.txt"-"c:\tx509\scripts\tx509-1.txt"
-"\epoc32\winscw\c\tx509\scripts\tx509-2.txt"-"c:\tx509\scripts\tx509-2.txt"
-"\epoc32\winscw\c\tx509\scripts\tx509-3.txt"-"c:\tx509\scripts\tx509-3.txt"
-
-
-"\epoc32\winscw\c\tx509\scripts\tx509.ini"-"c:\tx509\scripts\tx509.ini"
-"\epoc32\winscw\c\tx509\scripts\tx509_dev_certs.ini"-"c:\tx509\scripts\tx509_dev_certs.ini"
-"\epoc32\winscw\c\tx509\scripts\tx509-dnames.ini"-"c:\tx509\scripts\tx509-dnames.ini"
-
-"\epoc32\winscw\c\tx509\data\00.cer"-"c:\tx509\data\00.cer"
-"\epoc32\winscw\c\tx509\data\00000021.cer"-"c:\tx509\data\00000021.cer"
-"\epoc32\winscw\c\tx509\data\00000024.cer"-"c:\tx509\data\00000024.cer"
-"\epoc32\winscw\c\tx509\data\00000029.cer"-"c:\tx509\data\00000029.cer"
-"\epoc32\winscw\c\tx509\data\001_auth.cer"-"c:\tx509\data\001_auth.cer"
-"\epoc32\winscw\c\tx509\data\001_non_rep.cer"-"c:\tx509\data\001_non_rep.cer"
-"\epoc32\winscw\c\tx509\data\01.cer"-"c:\tx509\data\01.cer"
-"\epoc32\winscw\c\tx509\data\03.cer"-"c:\tx509\data\03.cer"
-"\epoc32\winscw\c\tx509\data\11C5.cer"-"c:\tx509\data\11C5.cer"
-"\epoc32\winscw\c\tx509\data\139F.cer"-"c:\tx509\data\139F.cer"
-"\epoc32\winscw\c\tx509\data\1A.cer"-"c:\tx509\data\1A.cer"
-"\epoc32\winscw\c\tx509\data\1EECERT.cer"-"c:\tx509\data\1EECERT.cer"
-"\epoc32\winscw\c\tx509\data\24.cer"-"c:\tx509\data\24.cer"
-"\epoc32\winscw\c\tx509\data\affiliationChange.crt"-"c:\tx509\data\affiliationChange.crt"
-"\epoc32\winscw\c\tx509\data\asia.crt"-"c:\tx509\data\asia.crt"
-"\epoc32\winscw\c\tx509\data\att1.crt"-"c:\tx509\data\att1.crt"
-"\epoc32\winscw\c\tx509\data\AUTHORITY.cer"-"c:\tx509\data\AUTHORITY.cer"
-"\epoc32\winscw\c\tx509\data\badAltName1.crt"-"c:\tx509\data\badAltName1.crt"
-"\epoc32\winscw\c\tx509\data\badAltName2.crt"-"c:\tx509\data\badAltName2.crt"
-"\epoc32\winscw\c\tx509\data\badAltName3.crt"-"c:\tx509\data\badAltName3.crt"
-"\epoc32\winscw\c\tx509\data\badCA1.crt"-"c:\tx509\data\badCA1.crt"
-"\epoc32\winscw\c\tx509\data\badCA2.crt"-"c:\tx509\data\badCA2.crt"
-"\epoc32\winscw\c\tx509\data\badCA3.crt"-"c:\tx509\data\badCA3.crt"
-"\epoc32\winscw\c\tx509\data\badCA4.crt"-"c:\tx509\data\badCA4.crt"
-"\epoc32\winscw\c\tx509\data\badCA4user.crt"-"c:\tx509\data\badCA4user.crt"
-"\epoc32\winscw\c\tx509\data\badSelfSigned.crt"-"c:\tx509\data\badSelfSigned.crt"
-"\epoc32\winscw\c\tx509\data\badSubjName1.crt"-"c:\tx509\data\badSubjName1.crt"
-"\epoc32\winscw\c\tx509\data\badSubjName2.crt"-"c:\tx509\data\badSubjName2.crt"
-"\epoc32\winscw\c\tx509\data\BALTIMORE_USER.cer"-"c:\tx509\data\BALTIMORE_USER.cer"
-"\epoc32\winscw\c\tx509\data\BANKGATEROOT.cer"-"c:\tx509\data\BANKGATEROOT.cer"
-"\epoc32\winscw\c\tx509\data\bbs.crt"-"c:\tx509\data\bbs.crt"
-"\epoc32\winscw\c\tx509\data\belsign1.crt"-"c:\tx509\data\belsign1.crt"
-"\epoc32\winscw\c\tx509\data\belsign2.crt"-"c:\tx509\data\belsign2.crt"
-"\epoc32\winscw\c\tx509\data\belsign3.crt"-"c:\tx509\data\belsign3.crt"
-"\epoc32\winscw\c\tx509\data\belsignclass12.crt"-"c:\tx509\data\belsignclass12.crt"
-"\epoc32\winscw\c\tx509\data\belsignobj.crt"-"c:\tx509\data\belsignobj.crt"
-"\epoc32\winscw\c\tx509\data\belsignss.crt"-"c:\tx509\data\belsignss.crt"
-"\epoc32\winscw\c\tx509\data\BETSY.cer"-"c:\tx509\data\BETSY.cer"
-"\epoc32\winscw\c\tx509\data\BINARYSURGENSROOT.cer"-"c:\tx509\data\BINARYSURGENSROOT.cer"
-"\epoc32\winscw\c\tx509\data\BULL.cer"-"c:\tx509\data\BULL.cer"
-"\epoc32\winscw\c\tx509\data\CA-CERT.cer"-"c:\tx509\data\CA-CERT.cer"
-"\epoc32\winscw\c\tx509\data\caPost.crt"-"c:\tx509\data\caPost.crt"
-"\epoc32\winscw\c\tx509\data\CARYNETROOT.cer"-"c:\tx509\data\CARYNETROOT.cer"
-"\epoc32\winscw\c\tx509\data\CA_CERT.CRT.cer"-"c:\tx509\data\CA_CERT.CRT.cer"
-"\epoc32\winscw\c\tx509\data\certisign.crt"-"c:\tx509\data\certisign.crt"
-"\epoc32\winscw\c\tx509\data\certisign1.crt"-"c:\tx509\data\certisign1.crt"
-"\epoc32\winscw\c\tx509\data\class1ca.crt"-"c:\tx509\data\class1ca.crt"
-"\epoc32\winscw\c\tx509\data\CLASS1_SUBSCRIBER_CA_V3.cer"-"c:\tx509\data\CLASS1_SUBSCRIBER_CA_V3.cer"
-"\epoc32\winscw\c\tx509\data\COLUMBIACAROOT.cer"-"c:\tx509\data\COLUMBIACAROOT.cer"
-"\epoc32\winscw\c\tx509\data\COMPUSOURCECA.cer"-"c:\tx509\data\COMPUSOURCECA.cer"
-"\epoc32\winscw\c\tx509\data\corrupt_first_byte.der"-"c:\tx509\data\corrupt_first_byte.der"
-"\epoc32\winscw\c\tx509\data\CROSSCERTCERT.cer"-"c:\tx509\data\CROSSCERTCERT.cer"
-"\epoc32\winscw\c\tx509\data\CSCA.cer"-"c:\tx509\data\CSCA.cer"
-"\epoc32\winscw\c\tx509\data\david1.crt"-"c:\tx509\data\david1.crt"
-"\epoc32\winscw\c\tx509\data\david_rsa.crt"-"c:\tx509\data\david_rsa.crt"
-"\epoc32\winscw\c\tx509\data\DH_USER_CERT.cer"-"c:\tx509\data\DH_USER_CERT.cer"
-"\epoc32\winscw\c\tx509\data\dk-ca.cer"-"c:\tx509\data\dk-ca.cer"
-"\epoc32\winscw\c\tx509\data\DoD_SBU_ca2.crt"-"c:\tx509\data\DoD_SBU_ca2.crt"
-"\epoc32\winscw\c\tx509\data\DoD_SBU_pca.crt"-"c:\tx509\data\DoD_SBU_pca.crt"
-"\epoc32\winscw\c\tx509\data\DoD_SBU_rich1.crt"-"c:\tx509\data\DoD_SBU_rich1.crt"
-"\epoc32\winscw\c\tx509\data\DSA-CA.cer"-"c:\tx509\data\DSA-CA.cer"
-"\epoc32\winscw\c\tx509\data\DSA-PCA.cer"-"c:\tx509\data\DSA-PCA.cer"
-"\epoc32\winscw\c\tx509\data\DUKE.cer"-"c:\tx509\data\DUKE.cer"
-"\epoc32\winscw\c\tx509\data\entropia.crt"-"c:\tx509\data\entropia.crt"
-"\epoc32\winscw\c\tx509\data\ENTRUST4.cer"-"c:\tx509\data\ENTRUST4.cer"
-"\epoc32\winscw\c\tx509\data\ENTRUST_CLIENTCGI.cer"-"c:\tx509\data\ENTRUST_CLIENTCGI.cer"
-"\epoc32\winscw\c\tx509\data\equitable.crt"-"c:\tx509\data\equitable.crt"
-"\epoc32\winscw\c\tx509\data\eurosign.crt"-"c:\tx509\data\eurosign.crt"
-"\epoc32\winscw\c\tx509\data\expired.crt"-"c:\tx509\data\expired.crt"
-"\epoc32\winscw\c\tx509\data\FF.cer"-"c:\tx509\data\FF.cer"
-"\epoc32\winscw\c\tx509\data\future.crt"-"c:\tx509\data\future.crt"
-"\epoc32\winscw\c\tx509\data\gbpca.cer"-"c:\tx509\data\gbpca.cer"
-"\epoc32\winscw\c\tx509\data\GLOBALSIGNCLASS1CA.cer"-"c:\tx509\data\GLOBALSIGNCLASS1CA.cer"
-"\epoc32\winscw\c\tx509\data\GLOBALSIGNMIKE.cer"-"c:\tx509\data\GLOBALSIGNMIKE.cer"
-"\epoc32\winscw\c\tx509\data\GLOBALSIGNPRIMARYCLASS1CA.cer"-"c:\tx509\data\GLOBALSIGNPRIMARYCLASS1CA.cer"
-"\epoc32\winscw\c\tx509\data\GLOBALSIGNROOT.cer"-"c:\tx509\data\GLOBALSIGNROOT.cer"
-"\epoc32\winscw\c\tx509\data\GOOFY_CERT.CRT"-"c:\tx509\data\GOOFY_CERT.CRT"
-"\epoc32\winscw\c\tx509\data\GTECyberTrustGlobalRoot.cer"-"c:\tx509\data\GTECyberTrustGlobalRoot.cer"
-"\epoc32\winscw\c\tx509\data\GTECyberTrustRoot.cer"-"c:\tx509\data\GTECyberTrustRoot.cer"
-"\epoc32\winscw\c\tx509\data\GTERoot.crt"-"c:\tx509\data\GTERoot.crt"
-"\epoc32\winscw\c\tx509\data\GTESS.crt"-"c:\tx509\data\GTESS.crt"
-"\epoc32\winscw\c\tx509\data\GTE_FORUM_ROOT.cer"-"c:\tx509\data\GTE_FORUM_ROOT.cer"
-"\epoc32\winscw\c\tx509\data\GTICA.crt"-"c:\tx509\data\GTICA.crt"
-"\epoc32\winscw\c\tx509\data\GTIWeb.crt"-"c:\tx509\data\GTIWeb.crt"
-"\epoc32\winscw\c\tx509\data\hbcica1.der"-"c:\tx509\data\hbcica1.der"
-"\epoc32\winscw\c\tx509\data\IBM.crt"-"c:\tx509\data\IBM.crt"
-"\epoc32\winscw\c\tx509\data\ICATPCA.cer"-"c:\tx509\data\ICATPCA.cer"
-"\epoc32\winscw\c\tx509\data\ice-ca.cer"-"c:\tx509\data\ice-ca.cer"
-"\epoc32\winscw\c\tx509\data\ICE-PCA-X509.cer"-"c:\tx509\data\ICE-PCA-X509.cer"
-"\epoc32\winscw\c\tx509\data\ICE-ROOT.cer"-"c:\tx509\data\ICE-ROOT.cer"
-"\epoc32\winscw\c\tx509\data\ice-tel-it.cer"-"c:\tx509\data\ice-tel-it.cer"
-"\epoc32\winscw\c\tx509\data\ICE-TEL_CODESIGNERSCA.cer"-"c:\tx509\data\ICE-TEL_CODESIGNERSCA.cer"
-"\epoc32\winscw\c\tx509\data\ICE-TEL_INDIVIDUALSCA.cer"-"c:\tx509\data\ICE-TEL_INDIVIDUALSCA.cer"
-"\epoc32\winscw\c\tx509\data\ICE-TEL_SERVERSCA.cer"-"c:\tx509\data\ICE-TEL_SERVERSCA.cer"
-"\epoc32\winscw\c\tx509\data\ICE-USER.cer"-"c:\tx509\data\ICE-USER.cer"
-"\epoc32\winscw\c\tx509\data\integrion.crt"-"c:\tx509\data\integrion.crt"
-"\epoc32\winscw\c\tx509\data\interclear.crt"-"c:\tx509\data\interclear.crt"
-"\epoc32\winscw\c\tx509\data\INTERCLEARROOT.cer"-"c:\tx509\data\INTERCLEARROOT.cer"
-"\epoc32\winscw\c\tx509\data\invalidCAuser1.crt"-"c:\tx509\data\invalidCAuser1.crt"
-"\epoc32\winscw\c\tx509\data\invalidCAuser2.crt"-"c:\tx509\data\invalidCAuser2.crt"
-"\epoc32\winscw\c\tx509\data\invalidConstraints.crt"-"c:\tx509\data\invalidConstraints.crt"
-"\epoc32\winscw\c\tx509\data\invalidSig.crt"-"c:\tx509\data\invalidSig.crt"
-"\epoc32\winscw\c\tx509\data\ipaddrextension.der"-"c:\tx509\data\ipaddrextension.der"
-"\epoc32\winscw\c\tx509\data\IPRA_PCA_1C.cer"-"c:\tx509\data\IPRA_PCA_1C.cer"
-"\epoc32\winscw\c\tx509\data\IPRA_PCA_21.cer"-"c:\tx509\data\IPRA_PCA_21.cer"
-"\epoc32\winscw\c\tx509\data\IPRA_PCA_22.cer"-"c:\tx509\data\IPRA_PCA_22.cer"
-"\epoc32\winscw\c\tx509\data\ipsca.crt"-"c:\tx509\data\ipsca.crt"
-"\epoc32\winscw\c\tx509\data\JOHN_HUGHES_CERT_ROOT_CERT.cer"-"c:\tx509\data\JOHN_HUGHES_CERT_ROOT_CERT.cer"
-"\epoc32\winscw\c\tx509\data\keyCompromise.crt"-"c:\tx509\data\keyCompromise.crt"
-"\epoc32\winscw\c\tx509\data\keyRevoked.crt"-"c:\tx509\data\keyRevoked.crt"
-"\epoc32\winscw\c\tx509\data\keyRevoked2.crt"-"c:\tx509\data\keyRevoked2.crt"
-"\epoc32\winscw\c\tx509\data\keywitness.crt"-"c:\tx509\data\keywitness.crt"
-"\epoc32\winscw\c\tx509\data\KeyWitnessGlobal2048Root.cer"-"c:\tx509\data\KeyWitnessGlobal2048Root.cer"
-"\epoc32\winscw\c\tx509\data\MCI.crt"-"c:\tx509\data\MCI.crt"
-"\epoc32\winscw\c\tx509\data\MICHAELWEDLIN.cer"-"c:\tx509\data\MICHAELWEDLIN.cer"
-"\epoc32\winscw\c\tx509\data\MICHAELWEDLIN2.cer"-"c:\tx509\data\MICHAELWEDLIN2.cer"
-"\epoc32\winscw\c\tx509\data\MicrosoftAuthenticode(tm)Root.cer"-"c:\tx509\data\MicrosoftAuthenticode(tm)Root.cer"
-"\epoc32\winscw\c\tx509\data\MicrosoftRootAuthority.cer"-"c:\tx509\data\MicrosoftRootAuthority.cer"
-"\epoc32\winscw\c\tx509\data\MicrosoftRootSGCAuthority.cer"-"c:\tx509\data\MicrosoftRootSGCAuthority.cer"
-"\epoc32\winscw\c\tx509\data\MicrosoftTimestampRoot.cer"-"c:\tx509\data\MicrosoftTimestampRoot.cer"
-"\epoc32\winscw\c\tx509\data\MicrosoftWindowsHardwareCompatibility.cer"-"c:\tx509\data\MicrosoftWindowsHardwareCompatibility.cer"
-"\epoc32\winscw\c\tx509\data\MIKESENTRUSTFREECERT.cer"-"c:\tx509\data\MIKESENTRUSTFREECERT.cer"
-"\epoc32\winscw\c\tx509\data\MSSGCAuthority.cer"-"c:\tx509\data\MSSGCAuthority.cer"
-"\epoc32\winscw\c\tx509\data\mustermann_1.der"-"c:\tx509\data\mustermann_1.der"
-"\epoc32\winscw\c\tx509\data\nameMismatch.crt"-"c:\tx509\data\nameMismatch.crt"
-"\epoc32\winscw\c\tx509\data\noLongerNeeded.crt"-"c:\tx509\data\noLongerNeeded.crt"
-"\epoc32\winscw\c\tx509\data\noPolicy.crt"-"c:\tx509\data\noPolicy.crt"
-"\epoc32\winscw\c\tx509\data\NORTELCA.cer"-"c:\tx509\data\NORTELCA.cer"
-"\epoc32\winscw\c\tx509\data\Novell.der"-"c:\tx509\data\Novell.der"
-"\epoc32\winscw\c\tx509\data\onHold.crt"-"c:\tx509\data\onHold.crt"
-"\epoc32\winscw\c\tx509\data\onHold2.crttx509\data\onHold2.crt"
-"\epoc32\winscw\c\tx509\data\ORG000.der"-"c:\tx509\data\ORG000.der"
-"\epoc32\winscw\c\tx509\data\pathLen.crt"-"c:\tx509\data\pathLen.crt"
-"\epoc32\winscw\c\tx509\data\PCA-CERT.cer"-"c:\tx509\data\PCA-CERT.cer"
-"\epoc32\winscw\c\tx509\data\PCALOW.cer"-"c:\tx509\data\PCALOW.cer"
-"\epoc32\winscw\c\tx509\data\PCAMID.cer"-"c:\tx509\data\PCAMID.cer"
-"\epoc32\winscw\c\tx509\data\pvt-ca-ica.crt"-"c:\tx509\data\pvt-ca-ica.crt"
-"\epoc32\winscw\c\tx509\data\results.txt"-"c:\tx509\data\results.txt"
-"\epoc32\winscw\c\tx509\data\rich1.crt"-"c:\tx509\data\rich1.crt"
-"\epoc32\winscw\c\tx509\data\rich1or1.crt"-"c:\tx509\data\rich1or1.crt"
-"\epoc32\winscw\c\tx509\data\rich1or2.crt"-"c:\tx509\data\rich1or2.crt"
-"\epoc32\winscw\c\tx509\data\rich1or3.crt"-"c:\tx509\data\rich1or3.crt"
-"\epoc32\winscw\c\tx509\data\rich_rsa.crt"-"c:\tx509\data\rich_rsa.crt"
-"\epoc32\winscw\c\tx509\data\rn_badAltName.crt"-"c:\tx509\data\rn_badAltName.crt"
-"\epoc32\winscw\c\tx509\data\rn_badPolicy.crt"-"c:\tx509\data\rn_badPolicy.crt"
-"\epoc32\winscw\c\tx509\data\rn_ca.crt"-"c:\tx509\data\rn_ca.crt"
-"\epoc32\winscw\c\tx509\data\rn_cross.crt"-"c:\tx509\data\rn_cross.crt"
-"\epoc32\winscw\c\tx509\data\rn_paa.crt"-"c:\tx509\data\rn_paa.crt"
-"\epoc32\winscw\c\tx509\data\rn_pca.crt"-"c:\tx509\data\rn_pca.crt"
-"\epoc32\winscw\c\tx509\data\rn_user1.crt"-"c:\tx509\data\rn_user1.crt"
-"\epoc32\winscw\c\tx509\data\RootAgency.cer"-"c:\tx509\data\RootAgency.cer"
-"\epoc32\winscw\c\tx509\data\RSA-CCA.cer"-"c:\x509\data\RSA-CCA.cer"
-"\epoc32\winscw\c\tx509\data\RSA-SSCA.cer"-"c:\tx509\data\RSA-SSCA.cer"
-"\epoc32\winscw\c\tx509\data\scalaire.crt"-"c:\tx509\data\scalaire.crt"
-"\epoc32\winscw\c\tx509\data\sigAlgMismatch1.crt"-"c:\tx509\data\sigAlgMismatch1.crt"
-"\epoc32\winscw\c\tx509\data\sigAlgMismatch2.crt"-"c:\tx509\data\sigAlgMismatch2.crt"
-"\epoc32\winscw\c\tx509\data\sigAlgMismatch3.crt"-"c:\tx509\data\sigAlgMismatch3.crt"
-"\epoc32\winscw\c\tx509\data\sigAlgMismatch4.crt"-"c:\tx509\data\sigAlgMismatch4.crt"
-"\epoc32\winscw\c\tx509\data\SISCERT.cer"-"c:\tx509\data\SISCERT.cer"
-"\epoc32\winscw\c\tx509\data\superseded.crt"-"c:\tx509\data\superseded.crt"
-"\epoc32\winscw\c\tx509\data\SWISSKEYCORPIDCA.cer"-"c:\tx509\data\SWISSKEYCORPIDCA.cer"
-"\epoc32\winscw\c\tx509\data\SWISSKEYROOT.cer"-"c:\tx509\data\SWISSKEYROOT.cer"
-"\epoc32\winscw\c\tx509\data\T61_1.der"-"c:\tx509\data\T61_1.der"
-"\epoc32\winscw\c\tx509\data\TeleCashSubCA.cer"-"c:\tx509\data\TeleCashSubCA.cer"
-"\epoc32\winscw\c\tx509\data\TeleCashUser.cer"-"c:\tx509\data\TeleCashUser.cer"
-"\epoc32\winscw\c\tx509\data\testca2.crt"-"c:\tx509\data\testca2.crt"
-"\epoc32\winscw\c\tx509\data\testSubCA.crt"-"c:\tx509\data\testSubCA.crt"
-"\epoc32\winscw\c\tx509\data\ThawtePersonalBasicCA.cer"-"c:\tx509\data\ThawtePersonalBasicCA.cer"
-"\epoc32\winscw\c\tx509\data\ThawtePersonalFreemailCA.cer"-"c:\tx509\data\ThawtePersonalFreemailCA.cer"
-"\epoc32\winscw\c\tx509\data\ThawtePersonalPremiumCA.cer"-"c:\tx509\data\ThawtePersonalPremiumCA.cer"
-"\epoc32\winscw\c\tx509\data\ThawtePremiumServerCA.cer"-"c:\tx509\data\ThawtePremiumServerCA.cer"
-"\epoc32\winscw\c\tx509\data\ThawteServerCA.cer"-"c:\tx509\data\ThawteServerCA.cer"
-"\epoc32\winscw\c\tx509\data\ThawteTimestampingCA.cer"-"c:\tx509\data\ThawteTimestampingCA.cer"
-"\epoc32\winscw\c\tx509\data\THAWTE_ROOT.cer"-"c:\tx509\data\THAWTE_ROOT.cer"
-"\epoc32\winscw\c\tx509\data\THAWTE_SUBCA.cer"-"c:\tx509\data\THAWTE_SUBCA.cer"
-"\epoc32\winscw\c\tx509\data\THAWTE_USER.cer"-"c:\tx509\data\THAWTE_USER.cer"
-"\epoc32\winscw\c\tx509\data\TIMCA.cer"-"c:\tx509\data\TIMCA.cer"
-"\epoc32\winscw\c\tx509\data\TJHCA.cer"-"c:\tx509\data\TJHCA.cer"
-"\epoc32\winscw\c\tx509\data\TRUSTFACTORY.cer"-"c:\tx509\data\TRUSTFACTORY.cer"
-"\epoc32\winscw\c\tx509\data\UCLCA.cer"-"c:\tx509\data\UCLCA.cer"
-"\epoc32\winscw\c\tx509\data\uptime1.crt"-"c:\tx509\data\uptime1.crt"
-"\epoc32\winscw\c\tx509\data\uptime2.crt"-"c:\tx509\data\uptime2.crt"
-"\epoc32\winscw\c\tx509\data\uptime3.crt"-"c:\tx509\data\uptime3.crt"
-"\epoc32\winscw\c\tx509\data\uptime4.crt"-"c:\tx509\data\uptime4.crt"
-"\epoc32\winscw\c\tx509\data\us_cross.crt"-"c:\tx509\data\us_cross.crt"
-"\epoc32\winscw\c\tx509\data\US_paa.crt"-"c:\tx509\data\US_paa.crt"
-"\epoc32\winscw\c\tx509\data\v1ca.crt"-"c:\tx509\data\v1ca.crt"
-"\epoc32\winscw\c\tx509\data\v1critic.crt"-"c:\tx509\data\v1critic.crt"
-"\epoc32\winscw\c\tx509\data\v1expired.crt"-"c:\tx509\data\v1expired.crt"
-"\epoc32\winscw\c\tx509\data\v1orgReleaser.crt"-"c:\tx509\data\v1orgReleaser.crt"
-"\epoc32\winscw\c\tx509\data\v1paa.crt"-"c:\tx509\data\v1paa.crt"
-"\epoc32\winscw\c\tx509\data\v1pca.crt"-"c:\tx509\data\v1pca.crt"
-"\epoc32\winscw\c\tx509\data\v1priority.crt"-"c:\tx509\data\v1priority.crt"
-"\epoc32\winscw\c\tx509\data\v1readonly.crt"-"c:\tx509\data\v1readonly.crt"
-"\epoc32\winscw\c\tx509\data\v1revoked.crt"-"c:\tx509\data\v1revoked.crt"
-"\epoc32\winscw\c\tx509\data\v1user1.crt"-"c:\tx509\data\v1user1.crt"
-"\epoc32\winscw\c\tx509\data\v1user2.crt"-"c:\tx509\data\v1user2.crt"
-"\epoc32\winscw\c\tx509\data\v1user3.crt"-"c:\tx509\data\v1user3.crt"
-"\epoc32\winscw\c\tx509\data\v1user4.crt"-"c:\tx509\data\v1user4.crt"
-"\epoc32\winscw\c\tx509\data\v1user5.crt"-"c:\tx509\data\v1user5.crt"
-"\epoc32\winscw\c\tx509\data\v1user6.crt"-"c:\tx509\data\v1user6.crt"
-"\epoc32\winscw\c\tx509\data\v1user7.crt"-"c:\tx509\data\v1user7.crt"
-"\epoc32\winscw\c\tx509\data\v1user8.crt"-"c:\tx509\data\v1user8.crt"
-"\epoc32\winscw\c\tx509\data\VAULT_REGISTRYCA_ROOT_1.cer"-"c:\tx509\data\VAULT_REGISTRYCA_ROOT_1.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass1CAIndividualSubscriberPersonaNotValidated.cer"-"c:\tx509\data\VeriSignClass1CAIndividualSubscriberPersonaNotValidated.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass1PrimaryCA.cer"-"c:\tx509\data\VeriSignClass1PrimaryCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass2CAIndividualSubscriber.cer"-"c:\tx509\data\VeriSignClass2CAIndividualSubscriber.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass2PrimaryCA.cer"-"c:\tx509\data\VeriSignClass2PrimaryCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass3PrimaryCA.cer"-"c:\tx509\data\VeriSignClass3PrimaryCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignClass4PrimaryCA.cer"-"c:\tx509\data\VeriSignClass4PrimaryCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignCommercialSoftwarePublishersCA.cer"-"c:\tx509\data\VeriSignCommercialSoftwarePublishersCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignIndividualSoftwarePublishersCA.cer"-"c:\tx509\data\VeriSignIndividualSoftwarePublishersCA.cer"
-"\epoc32\winscw\c\tx509\data\VeriSignTimeStampingCA.cer"-"c:\tx509\data\VeriSignTimeStampingCA.cer"
-"\epoc32\winscw\c\tx509\data\VSIGNSS.cer"-"c:\tx509\data\VSIGNSS.cer"
-"\epoc32\winscw\c\tx509\data\VSIGNTCA.cer"-"c:\tx509\data\VSIGNTCA.cer"
-"\epoc32\winscw\c\tx509\data\WIDE_MEMBERSONLYCA.cer"-"c:\tx509\data\WIDE_MEMBERSONLYCA.cer"
-"\epoc32\winscw\c\tx509\data\WIDE_MOCA_SSL.cer"-"c:\tx509\data\WIDE_MOCA_SSL.cer"
-"\epoc32\winscw\c\tx509\data\WIDE_ROOT.cer"-"c:\tx509\data\WIDE_ROOT.cer"
-"\epoc32\winscw\c\tx509\data\willsGlobalSign.crt"-"c:\tx509\data\willsGlobalSign.crt"
-"\epoc32\winscw\c\tx509\data\WORLDWIDEWEDLINROOT.cer"-"c:\tx509\data\WORLDWIDEWEDLINROOT.cer"
-"\epoc32\winscw\c\tx509\data\X22ca1.crt"-"c:\tx509\data\X22ca1.crt"
-"\epoc32\winscw\c\tx509\data\X22paa.crt"-"c:\tx509\data\X22paa.crt"
-"\epoc32\winscw\c\tx509\data\X22pca1.crt"-"c:\tx509\data\X22pca1.crt"
-"\epoc32\winscw\c\tx509\data\xbalt0001a.cer"-"c:\tx509\data\xbalt0001a.cer"
-"\epoc32\winscw\c\tx509\data\xbalt0001s.cer"-"c:\tx509\data\xbalt0001s.cer"
-"\epoc32\winscw\c\tx509\data\www.winterthur.be.crt"-"c:\tx509\data\www.winterthur.be.crt"
-"\epoc32\winscw\c\tx509\data\lipponen-encrypt.crt"-"c:\tx509\data\lipponen-encrypt.crt"
-"\epoc32\winscw\c\tx509\data\lipponen-sign.crt"-"c:\tx509\data\lipponen-sign.crt"
-"\epoc32\winscw\c\tx509\data\webmail.utu.fi.cer"-"c:\tx509\data\webmail.utu.fi.cer"
-
-"\epoc32\winscw\c\tx509\data\extensions\certs\absent.der"-"c:\tx509\data\extensions\certs\absent.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\empty.der"-"c:\tx509\data\extensions\certs\empty.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\simple.der"-"c:\tx509\data\extensions\certs\simple.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\multi.der"-"c:\tx509\data\extensions\certs\multi.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\longcaps.der"-"c:\tx509\data\extensions\certs\longcaps.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\empty_fields.der"-"c:\tx509\data\extensions\certs\empty_fields.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\corrupt.der"-"c:\tx509\data\extensions\certs\corrupt.der"
-"\epoc32\winscw\c\tx509\data\extensions\certs\SymbianSigned_T1.der"-"c:\tx509\data\extensions\certs\SymbianSigned_T1.der"
-
-"\epoc32\winscw\c\tx509\data\dnames\dn_email_mixed.der"-"c:\tx509\Data\dnames\dn_email_mixed.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_email_lc.der"-"c:\tx509\Data\dnames\dn_email_lc.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_printable_lc.der"-"c:\tx509\Data\dnames\dn_printable_lc.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_printable_mixed.der"-"c:\tx509\Data\dnames\dn_printable_mixed.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_utf8_lc.der"-"c:\tx509\Data\dnames\dn_utf8_lc.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_utf8_mixed.der"-"c:\tx509\Data\dnames\dn_utf8_mixed.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_unstructuredname_lc.der"-"c:\tx509\Data\dnames\dn_unstructuredname_lc.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_unstructuredname_mixed.der"-"c:\tx509\Data\dnames\dn_unstructuredname_mixed.der"
-"\epoc32\winscw\c\tx509\data\dnames\dn_unstructuredname_lc.der"-"c:\tx509\Data\dn_unstructuredname_lc.der"
-
-
-;These scripts are only included for new version of TASN1
-
-"\epoc32\winscw\c\tasn1\scripts\tasn1.ini"-"c:\tasn1\scripts\tasn1.ini"
-
-
-;tpkcs10 - Uses TEF
-
-
-"\epoc32\winscw\c\tpkcs10\scripts\tpkcs10_v2.ini"-"c:\tpkcs10\scripts\tpkcs10_v2.ini 
-
-"\epoc32\winscw\c\tpkcs10\keys\newrsa512.der"-"c:\tpkcs10\keys\newrsa512.der"
-"\epoc32\winscw\c\tpkcs10\keys\newdsa512.der"-"c:\tpkcs10\keys\newdsa512.der"
-"\epoc32\winscw\c\tpkcs10\keys\newrsa2048.der"-"c:\tpkcs10\keys\newrsa2048.der"
-"\epoc32\winscw\c\tpkcs10\keys\newdsa2048.der"-"c:\tpkcs10\keys\newdsa2048.der"
-
-; Openssl cert requests
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsasha1_512_2attr.der"-"c:\tpkcs10\requests\os_req_rsasha1_512_2attr.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsamd2_512.der"-"c:\tpkcs10\requests\os_req_rsamd2_512.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsamd5_512.der"-"c:\tpkcs10\requests\os_req_rsamd5_512.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsasha1_2048_2attr.der"-"c:\tpkcs10\requests\os_req_rsasha1_2048_2attr.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsasha1_512.der"-"c:\tpkcs10\requests\os_req_rsasha1_512.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_rsasha1_512_1attr.der"-"c:\tpkcs10\requests\os_req_rsasha1_512_1attr.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_ext_rsasha1.der"-"c:\tpkcs10\requests\os_req_ext_rsasha1.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_ext_rsamd2.der"-"c:\tpkcs10\requests\os_req_ext_rsamd2.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_ext_rsamd5.der"-"c:\tpkcs10\requests\os_req_ext_rsamd5.der"
-"\epoc32\winscw\c\tpkcs10\requests\os_req_ext_dsasha1.der"-"c:\tpkcs10\requests\os_req_ext_dsasha1.der"
-
-; Raw data for v3 x509 extensions 
-"\epoc32\winscw\c\tpkcs10\v3extensions\authorityinfoaccess.der"-"c:\tpkcs10\v3extensions\authorityinfoaccess.der"
-"\epoc32\winscw\c\tpkcs10\v3extensions\basicconstrains.der"-"c:\tpkcs10\v3extensions\basicconstrains.der"
-"\epoc32\winscw\c\tpkcs10\v3extensions\extkeyusage.der"-"c:\tpkcs10\v3extensions\extkeyusage.der"
-"\epoc32\winscw\c\tpkcs10\v3extensions\issueraltname.der"-"c:\tpkcs10\v3extensions\issueraltname.der"
-"\epoc32\winscw\c\tpkcs10\v3extensions\keyusage.der"-"c:\tpkcs10\v3extensions\keyusage.der"
-"\epoc32\winscw\c\tpkcs10\v3extensions\subjectaltname.der"-"c:\tpkcs10\v3extensions\subjectaltname.der"
-
-;tpkixcert_tef
-"\epoc32\winscw\c\tpkixcert_tef\scripts\apitests.ini"-"c:\tpkixcert_tef\scripts\apitests.ini"
-"\epoc32\winscw\c\tpkixcert_tef\scripts\validatetests.ini"-"c:\tpkixcert_tef\scripts\validatetests.ini"  
-
-"\epoc32\winscw\c\tpkixcert_tef\data\datetime_0001_endentity.der"-"c:\tpkixcert_tef\data\datetime_0001_endentity.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\datetime_0001_root.der"-"c:\tpkixcert_tef\data\datetime_0001_root.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\001_rc.der"-"c:\tpkixcert_tef\data\001_rc.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\001_im2.der"-"c:\tpkixcert_tef\data\001_im2.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\001_im1.der"-"c:\tpkixcert_tef\data\001_im1.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\001_ee.der"-"c:\tpkixcert_tef\data\001_ee.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\002_rc1.der"-"c:\tpkixcert_tef\data\002_rc1.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\002_rc2.der"-"c:\tpkixcert_tef\data\002_rc2.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\002_im2.der"-"c:\tpkixcert_tef\data\002_im2.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\002_im1.der"-"c:\tpkixcert_tef\data\002_im1.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\002_ee.der"-"c:\tpkixcert_tef\data\002_ee.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\003_rc.der"-"c:\tpkixcert_tef\data\003_rc.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\003_ee.der"-"c:\tpkixcert_tef\data\003_ee.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\004_ee.der"-"c:\tpkixcert_tef\data\004_ee.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\009_rc.der"-"c:\tpkixcert_tef\data\009_rc.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\009_ee.der"-"c:\tpkixcert_tef\data\009_ee.der"
-"\epoc32\winscw\c\tpkixcert_tef\data\fulltrust.der"-"c:\tpkixcert_tef\data\fulltrust.der"
-
-
-"\epoc32\winscw\c\unifiedcertstore2\CAW1.cer"-"c:\test_data\unifiedcertstore2\CAW1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAW2.cer"-"c:\test_data\unifiedcertstore2\CAW2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAW3.cer"-"c:\test_data\unifiedcertstore2\CAW3.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX1.cer"-"c:\test_data\unifiedcertstore2\CAX1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX2.cer"-"c:\test_data\unifiedcertstore2\CAX2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\CAX3.cer"-"c:\test_data\unifiedcertstore2\CAX3.cer"
-"\epoc32\winscw\c\unifiedcertstore2\U1K1.crt"-"c:\test_data\unifiedcertstore2\U1K1.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U2K1.crt"-"c:\test_data\unifiedcertstore2\U2K1.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U3K2.cer"-"c:\test_data\unifiedcertstore2\U3K2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\U4K3.crt"-"c:\test_data\unifiedcertstore2\U4K3.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U5K3.crt"-"c:\test_data\unifiedcertstore2\U5K3.crt"
-"\epoc32\winscw\c\unifiedcertstore2\U6K5.crt"-"c:\test_data\unifiedcertstore2\U6K5.crt"
-"\epoc32\winscw\c\unifiedcertstore2\URL1K1.cer"-"c:\test_data\unifiedcertstore2\URL1K1.cer"
-"\epoc32\winscw\c\unifiedcertstore2\URL2K2.cer"-"c:\test_data\unifiedcertstore2\URL2K2.cer"
-"\epoc32\winscw\c\unifiedcertstore2\URL3K5.cer"-"c:\test_data\unifiedcertstore2\URL3K5.cer"
-
-;"\epoc32\winscw\c\system\data\wapstore\items\wtls\CACertificates\00"-"c:\test_data\wapstore\items\wtls\CACertificates\00"
-;"\epoc32\winscw\c\system\data\wapstore\items\wtls\CACertificates\01"-"c:\test_data\wapstore\items\wtls\CACertificates\01"
-;"\epoc32\winscw\c\system\data\wapstore\items\wtls\CACertificates\02"-"c:\test_data\wapstore\items\wtls\CACertificates\02"
-
-;"\epoc32\winscw\c\system\data\certstores\test1certstore.dat"-"c:\test_data\certstores\test1certstore.dat"
-;"\epoc32\winscw\c\system\data\certstores\test2certstore.dat"-"c:\test_data\certstores\test2certstore.dat"
-
-
--- a/cryptomgmtlibs/securitytestfw/group/crypto.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,273 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"cryptospi Tests"}, (0x101FB3E5), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"cryptospi integration test"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\key64bit.txt"-"c:\testdata\tcryptospi\data\key64bit.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\key128bit.txt"-"c:\testdata\tcryptospi\data\key128bit.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\key192bit.txt"-"c:\testdata\tcryptospi\data\key192bit.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\smallcipher64bit.txt"-"c:\testdata\tcryptospi\data\smallcipher64bit.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\smallcipher128bit.txt"-"c:\testdata\tcryptospi\data\smallcipher128bit.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\largecipher.txt"-"c:\testdata\tcryptospi\data\largecipher.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\SmallHash-SRC.dat"-"c:\testdata\tcryptospi\data\SmallHash-SRC.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\LargeHash-SRC.dat"-"c:\testdata\tcryptospi\data\LargeHash-SRC.dat"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-3bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-3bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-16bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-16bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-20bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-20bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-32bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-32bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-34bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-34bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-1000bytes-src.dat"-"c:\testdata\tcryptospi\data\symmetric-mac-1000bytes-src.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-3bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-3bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-16bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-16bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-20bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-20bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-32bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-32bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-34bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-34bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac96-1000bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-mac96-1000bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-3bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-3bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-16bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-16bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-20bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-20bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-32bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-32bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-34bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-34bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-1000bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-1000bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-key10bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-key10bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-prf128-key18bytes-mac.dat"-"c:\testdata\tcryptospi\data\symmetric-prf128-key18bytes-mac.dat"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-key.txt"-"c:\testdata\tcryptospi\data\symmetric-mac-key.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-key10.txt"-"c:\testdata\tcryptospi\data\symmetric-mac-key10.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetric-mac-key18.txt"-"c:\testdata\tcryptospi\data\symmetric-mac-key18.txt"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\128bitin.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\128bitin.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\128bitkey.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\128bitkey.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\192bitin.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\192bitin.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\192bitiv.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\192bitiv.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\192bitkey.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\192bitkey.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\64bitin.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\64bitin.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\64bitiv.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\64bitiv.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\64bitkey.txt"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\64bitkey.txt"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CBC-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CBC-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CBC-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CBC-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CTR-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-CTR-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-ECB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-ECB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-ECB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-ECB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-OFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-OFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\AES-OFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\AES-OFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CBC-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CBC-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CBC-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CBC-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CTR-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-CTR-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-ECB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-ECB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-ECB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-ECB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-OFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-OFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-OFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES3-OFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CBC-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CBC-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CBC-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CBC-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CTR-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-CTR-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-ECB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-ECB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-ECB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-ECB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-OFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-OFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\DES-OFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\DES-OFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CBC-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CBC-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CBC-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CBC-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CTR-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-CTR-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-ECB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-ECB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-ECB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-ECB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-OFB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-OFB-NOPADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-OFB-PKCS5PADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC2-OFB-PKCS5PADDING.TXT"
-"\epoc32\winscw\c\testdata\tcryptospi\data\symmetricdatacheck0001\RC4-ECB-NOPADDING.TXT"-"c:\testdata\tcryptospi\data\symmetricdatacheck0001\RC4-ECB-NOPADDING.TXT"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes128key.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes128key.ctr"
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aesplaintext.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aesplaintext.ctr"
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aesiv.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aesiv.ctr"
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes128ciphertext.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes128ciphertext.ctr"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes192key.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes192key.ctr"
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes192ciphertext.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes192ciphertext.ctr"
-
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes256key.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes256key.ctr"
-"\epoc32\winscw\c\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes256ciphertext.ctr"-"c:\testdata\tcryptospi\data\nistsp800-38atestvectors\ctr-aes256ciphertext.ctr"
-
-
-"\epoc32\winscw\c\tpbe\strong.dat"-"c:\tpbe\strong.dat"
-"\epoc32\winscw\c\tpbe\weak.dat"-"c:\tpbe\weak.dat"
-"\epoc32\winscw\c\tpbe\pkcs12-first.dat"-"c:\tpbe\pkcs12-first.dat"
-"\epoc32\winscw\c\tpbe\pkcs5-orig.dat"-"c:\tpbe\pkcs5-orig.dat"
-
-"\epoc32\winscw\c\thash\hmacmd2.dat"-"c:\thash\hmacmd2.dat"
-"\epoc32\winscw\c\thash\hmacmd5.dat"-"c:\thash\hmacmd5.dat"
-"\epoc32\winscw\c\thash\hmacmd4.dat"-"c:\thash\hmacmd4.dat"
-"\epoc32\winscw\c\thash\hmacsha1.dat"-"c:\thash\hmacsha1.dat"
-"\epoc32\winscw\c\thash\hmacsha224.dat"-"c:\thash\hmacsha224.dat"
-"\epoc32\winscw\c\thash\hmacsha256.dat"-"c:\thash\hmacsha256.dat"
-"\epoc32\winscw\c\thash\hmacsha384.dat"-"c:\thash\hmacsha384.dat"
-"\epoc32\winscw\c\thash\hmacsha512.dat"-"c:\thash\hmacsha512.dat"
-"\epoc32\winscw\c\thash\md2.dat"-"c:\thash\md2.dat"
-"\epoc32\winscw\c\thash\md5.dat"-"c:\thash\md5.dat"
-"\epoc32\winscw\c\thash\md4.dat"-"c:\thash\md4.dat"
-"\epoc32\winscw\c\thash\sha1.dat"-"c:\thash\sha1.dat"
-"\epoc32\winscw\c\thash\md4_largedata1.txt"-"c:\thash\md4_largedata1.txt"
-"\epoc32\winscw\c\thash\md4_largedata2.txt"-"c:\thash\md4_largedata2.txt"
-"\epoc32\winscw\c\thash\md4_largedata3.txt"-"c:\thash\md4_largedata3.txt"
-"\epoc32\winscw\c\thash\448bit_data.txt"-"c:\thash\448bit_data.txt"
-"\epoc32\winscw\c\thash\512bit_data.txt"-"c:\thash\512bit_data.txt"
-"\epoc32\winscw\c\thash\512bitdata_largerkey.txt"-"c:\thash\512bitdata_largerkey.txt"
-"\epoc32\winscw\c\thash\largerthanblocksizedata_key.txt"-"c:\thash\largerthanblocksizedata_key.txt"
-"\epoc32\winscw\c\thash\sha224.dat"-"c:\thash\sha224.dat"
-"\epoc32\winscw\c\thash\sha256.dat"-"c:\thash\sha256.dat"
-"\epoc32\winscw\c\thash\sha384.dat"-"c:\thash\sha384.dat"
-"\epoc32\winscw\c\thash\sha512.dat"-"c:\thash\sha512.dat"
-
-; cryptospi test scripts
-
-"\epoc32\winscw\c\tasymmetric\tasymmetrictests.script"-"c:\tasymmetric\tasymmetrictests.script1"
-"\epoc32\winscw\c\tsymmetric\tsymmetrictests.script"-"c:\tsymmetric\tsymmetrictests.script1"
-"\epoc32\winscw\c\tsymmetric\symmetricOOMtests.script"-"c:\tsymmetric\symmetricOOMtests.script1"
-"\epoc32\winscw\c\tsymmetric\AESECBVectorsScript.script"-"c:\tsymmetric\AESECBVectorsScript.script1"
-"\epoc32\winscw\c\tsymmetric\AESECB_KAT_VT.script"-"c:\tsymmetric\AESECB_KAT_VT.script1"
-"\epoc32\winscw\c\tsymmetric\AESECB_KAT_VK.script"-"c:\tsymmetric\AESECB_KAT_VK.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB128.script"-"c:\tsymmetric\AESMonteCarloEncryptECB128.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB192.script"-"c:\tsymmetric\AESMonteCarloEncryptECB192.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB256.script"-"c:\tsymmetric\AESMonteCarloEncryptECB256.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB128.script"-"c:\tsymmetric\AESMonteCarloDecryptECB128.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB192.script"-"c:\tsymmetric\AESMonteCarloDecryptECB192.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB256.script"-"c:\tsymmetric\AESMonteCarloDecryptECB256.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC128.script"-"c:\tsymmetric\AESMonteCarloEncryptCBC128.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC192A.script"-"c:\tsymmetric\AESMonteCarloEncryptCBC192A.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC192B.script"-"c:\tsymmetric\AESMonteCarloEncryptCBC192B.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC256.script"-"c:\tsymmetric\AESMonteCarloEncryptCBC256.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC128.script"-"c:\tsymmetric\AESMonteCarloDecryptCBC128.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC192.script"-"c:\tsymmetric\AESMonteCarloDecryptCBC192.script1"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC256.script"-"c:\tsymmetric\AESMonteCarloDecryptCBC256.script1"
-"\epoc32\winscw\c\tbigint\tbasicmathstests.script"-"c:\tbigint\tbasicmathstests.script1"
-"\epoc32\winscw\c\tbigint\tconstructiontests.script"-"c:\tbigint\tconstructiontests.script1"
-"\epoc32\winscw\c\tbigint\tmontgomerytests.script"-"c:\tbigint\tmontgomerytests.script1"
-"\epoc32\winscw\c\tbigint\tprimetests.script"-"c:\tbigint\tprimetests.script1"
-"\epoc32\winscw\c\tbigint\tprimetests2.script"-"c:\tbigint\tprimetests2.script1"
-"\epoc32\winscw\c\tbigint\tprimefailuretests.script"-"c:\tbigint\tprimefailuretests.script1"
-"\epoc32\winscw\c\tbigint\tprimegen.script"-"c:\tbigint\tprimegen.script1"
-"\epoc32\winscw\c\tpadding\tpadding.script"-"c:\tpadding\tpadding.script1"
-"\epoc32\winscw\c\tpbe\tpbetests_v2.script"-"c:\tpbe\tpbetests_v2.script1"
-"\epoc32\winscw\c\tpkcs5kdf\tpkcs12kdftests.script"-"c:\tpkcs12kdftests.script1"
-"\epoc32\winscw\c\testdata\tcryptospi\scripts\tcryptospi.script"-"c:\testdata\tcryptospi\scripts\tcryptospi.script"
-
-"\epoc32\winscw\c\tasymmetric\tasymmetrictests.ini"-"c:\tasymmetric\tasymmetrictests.ini"
-"\epoc32\winscw\c\tsymmetric\tsymmetrictests.ini"-"c:\tsymmetric\tsymmetrictests.ini"
-"\epoc32\winscw\c\tsymmetric\symmetricOOMtests.ini"-"c:\tsymmetric\symmetricOOMtests.ini"
-
-"\epoc32\winscw\c\tsymmetric\AESECBVectorsScript.ini"-"c:\tsymmetric\AESECBVectorsScript.ini"
-"\epoc32\winscw\c\tsymmetric\AESECB_KAT_VT.ini"-"c:\tsymmetric\AESECB_KAT_VT.ini"
-"\epoc32\winscw\c\tsymmetric\AESECB_KAT_VK.ini"-"c:\tsymmetric\AESECB_KAT_VK.ini"
-
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB128.ini"-"c:\tsymmetric\AESMonteCarloEncryptECB128.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB192.ini"-"c:\tsymmetric\AESMonteCarloEncryptECB192.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptECB256.ini"-"c:\tsymmetric\AESMonteCarloEncryptECB256.ini"
-
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB128.ini"-"c:\tsymmetric\AESMonteCarloDecryptECB128.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB192.ini"-"c:\tsymmetric\AESMonteCarloDecryptECB192.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptECB256.ini"-"c:\tsymmetric\AESMonteCarloDecryptECB256.ini"
-
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC128.ini"-"c:\tsymmetric\AESMonteCarloEncryptCBC128.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC192.ini"-"c:\tsymmetric\AESMonteCarloEncryptCBC192.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloEncryptCBC256.ini"-"c:\tsymmetric\AESMonteCarloEncryptCBC256.ini"
-
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC128.ini"-"c:\tsymmetric\AESMonteCarloDecryptCBC128.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC192.ini"-"c:\tsymmetric\AESMonteCarloDecryptCBC192.ini"
-"\epoc32\winscw\c\tsymmetric\AESMonteCarloDecryptCBC256.ini"-"c:\tsymmetric\AESMonteCarloDecryptCBC256.ini"
-"\epoc32\winscw\c\tbigint\tbasicmathstests.ini"-"c:\tbigint\tbasicmathstests.ini"
-"\epoc32\winscw\c\tbigint\tconstructiontests.ini"-"c:\tbigint\tconstructiontests.ini"
-"\epoc32\winscw\c\tbigint\tmontgomerytests.ini"-"c:\tbigint\tmontgomerytests.ini"
-"\epoc32\winscw\c\tbigint\tprimetests.ini"-"c:\tbigint\tprimetests.ini"
-"\epoc32\winscw\c\tbigint\tprimetests2.ini"-"c:\tbigint\tprimetests2.ini"
-"\epoc32\winscw\c\tbigint\tprimefailuretests.ini"-"c:\tbigint\tprimefailuretests.ini"
-"\epoc32\winscw\c\tbigint\tprimegen.ini"-"c:\tbigint\tprimegen.ini"
-"\epoc32\winscw\c\tpadding\tpadSSLv3.ini"-"c:\tpadding\tpadSSLv3.ini"
-"\epoc32\winscw\c\tpadding\tpadpkcs7.ini"-"c:\tpadding\tpadpkcs7.ini"
-"\epoc32\winscw\c\tpadding\tpaddingnone.ini"-"c:\tpadding\tpaddingnone.ini"
-"\epoc32\winscw\c\tpbe\tpbetests_v2.ini"-"c:\tpbe\tpbetests_v2.ini"
-"\epoc32\winscw\c\tpkcs5kdf\tpkcs12kdftests.ini"-"c:\tpkcs12kdftests.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherPositiveObjectLoad.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherPositiveObjectLoad.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherEncryptedDataCheck.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherEncryptedDataCheck.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherEncryptDecrypt.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherEncryptDecrypt.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecrypt.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecrypt.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptMinus1Byte.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptMinus1Byte.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptMinus3Bytes.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptMinus3Bytes.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptPlus1Byte.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptPlus1Byte.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptPlus3Bytes.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherIncrementalEncryptDecryptPlus3Bytes.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\SymmetricCipherObjectReuse.ini"-"c:\testdata\tcryptospi\configs\SymmetricCipherObjectReuse.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\symmetriccipherprocessbeforeivset.ini"-"c:\testdata\tcryptospi\configs\symmetriccipherprocessbeforeivset.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\symmetriccipherbadivlength.ini"-"c:\testdata\tcryptospi\configs\symmetriccipherbadivlength.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\symmetriccipherctrmodeoutoforder.ini"-"c:\testdata\tcryptospi\configs\symmetriccipherctrmodeoutoforder.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ASymmetricCipherPositiveObjectLoad.ini"-"c:\testdata\tcryptospi\configs\ASymmetricCipherPositiveObjectLoad.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ASymmetricCipherEncryptedDataCheck.ini"-"c:\testdata\tcryptospi\configs\ASymmetricCipherEncryptedDataCheck.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ASymmetricCipherEncryptDecrypt.ini"-"c:\testdata\tcryptospi\configs\ASymmetricCipherEncryptDecrypt.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashPositiveObjectLoad.ini"-"c:\testdata\tcryptospi\configs\HashPositiveObjectLoad.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashBasicHashOfData.ini"-"c:\testdata\tcryptospi\configs\HashBasicHashOfData.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashIncrementalHash.ini"-"c:\testdata\tcryptospi\configs\HashIncrementalHash.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashIncrementalHashWithCopy.ini"-"c:\testdata\tcryptospi\configs\HashIncrementalHashWithCopy.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashIncrementalHashWithReplicate.ini"-"c:\testdata\tcryptospi\configs\HashIncrementalHashWithReplicate.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HashIncrementalHashWithReset.ini"-"c:\testdata\tcryptospi\configs\HashIncrementalHashWithReset.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacPositiveObjectLoad.ini"-"c:\testdata\tcryptospi\configs\HmacPositiveObjectLoad.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacBasicHashOfData.ini"-"c:\testdata\tcryptospi\configs\HmacBasicHashOfData.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacIncrementalHash.ini"-"c:\testdata\tcryptospi\configs\HmacIncrementalHash.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacIncrementalHashWithCopy.ini"-"c:\testdata\tcryptospi\configs\HmacIncrementalHashWithCopy.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacIncrementalHashWithReplicate.ini"-"c:\testdata\tcryptospi\configs\HmacIncrementalHashWithReplicate.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacIncrementalHashWithReset.ini"-"c:\testdata\tcryptospi\configs\HmacIncrementalHashWithReset.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacSetKeyChecking.ini"-"c:\testdata\tcryptospi\configs\HmacSetKeyChecking.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\HmacSetOperationModeChecking.ini"-"c:\testdata\tcryptospi\configs\HmacSetOperationModeChecking.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\RandomNumberGeneratorGeneralUsage.ini"-"c:\testdata\tcryptospi\configs\RandomNumberGeneratorGeneralUsage.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\Miscellaneous.ini"-"c:\testdata\tcryptospi\configs\Miscellaneous.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\pluginload.ini"-"c:\testdata\tcryptospi\configs\pluginload.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharscommon.ini"-"c:\testdata\tcryptospi\configs\plugincharscommon.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharssymmetriccipher.ini"-"c:\testdata\tcryptospi\configs\plugincharssymmetriccipher.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsasymmetriccipher.ini"-"c:\testdata\tcryptospi\configs\plugincharsasymmetriccipher.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharshash.ini"-"c:\testdata\tcryptospi\configs\plugincharshash.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsrandom.ini"-"c:\testdata\tcryptospi\configs\plugincharsrandom.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsasymsign.ini"-"c:\testdata\tcryptospi\configs\plugincharsasymsign.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharskeyagree.ini"-"c:\testdata\tcryptospi\configs\plugincharskeyagree.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsasymkeypair.ini"-"c:\testdata\tcryptospi\configs\plugincharsasymkeypair.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsextended.ini"-"c:\testdata\tcryptospi\configs\plugincharsextended.ini"
-
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_allchars.ini"-"c:\testdata\tcryptospi\configs\ruleselection_allchars.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_interface.ini"-"c:\testdata\tcryptospi\configs\ruleselection_interface.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_ascend.ini"-"c:\testdata\tcryptospi\configs\ruleselection_ascend.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_descend.ini"-"c:\testdata\tcryptospi\configs\ruleselection_descend.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_matrix.ini"-"c:\testdata\tcryptospi\configs\ruleselection_matrix.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\ruleselection_extended.ini"-"c:\testdata\tcryptospi\configs\ruleselection_extended.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\hash_test_cases.ini"-"c:\testdata\tcryptospi\configs\hash_test_cases.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\mac_test_cases.ini"-"c:\testdata\tcryptospi\configs\mac_test_cases.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugin_chars_new_hash.ini"-"c:\testdata\tcryptospi\configs\plugin_chars_new_hash.ini"
-"\epoc32\winscw\c\testdata\tcryptospi\configs\plugincharsmac.ini"-"c:\testdata\tcryptospi\configs\plugincharsmac.ini"
--- a/cryptomgmtlibs/securitytestfw/group/custom/postrun_custom.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,847 +0,0 @@
-	<task>
-		<type>TEFTask</type>
-		<parameters>
-			<parameter name="file" value="testexecute.exe"/>
-			<parameter name="parameters" value="c:\test\tcaf\tscaf\tscaf.script1"/>
-			<parameter name="timeout" value="1000"/>
-			<parameter name="result-file" value="c:\logs\testexecute\tscaf.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-        <parameters>
-			<parameter value="tmsgapp.exe" name="file"/>
-			<parameter value="600" name="timeout"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\tmsgapp.log"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-        <parameters>
-			<parameter value="t_random.exe" name="file"/>
-			<parameter value="600" name="timeout"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\t_random.log"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tasymmetric.exe"/>
-			<parameter name="parameters" value="c:\tasymmetric\tasymmetrictests.script1 c:\logs\testexecute\tasymmetrictests.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-			<parameter name="result-file" value="c:\logs\testexecute\tasymmetrictests.htm"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\tsymmetrictests.script1 c:\logs\testexecute\tsymmetrictests.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tsymmetrictests.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESECBVectorsScript.script1 c:\logs\testexecute\AESECBVectorsScript.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESECBVectorsScript.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESECB_KAT_VT.script1 c:\logs\testexecute\AESECB_KAT_VT.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESECB_KAT_VT.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESECB_KAT_VK.script1 c:\logs\testexecute\AESECB_KAT_VK.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESECB_KAT_VK.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptECB128.script1 c:\logs\testexecute\AESMonteCarloEncryptECB128.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptECB128.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptECB192.script1 c:\logs\testexecute\AESMonteCarloEncryptECB192.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptECB192.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptECB256.script1 c:\logs\testexecute\AESMonteCarloEncryptECB256.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptECB256.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptECB128.script1 c:\logs\testexecute\AESMonteCarloDecryptECB128.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptECB128.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptECB192.script1 c:\logs\testexecute\AESMonteCarloDecryptECB192.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptECB192.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptECB256.script1 c:\logs\testexecute\AESMonteCarloDecryptECB256.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptECB256.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptCBC128.script1 c:\logs\testexecute\AESMonteCarloEncryptCBC128.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptCBC128.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptCBC192A.script1 c:\logs\testexecute\AESMonteCarloEncryptCBC192A.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptCBC192A.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptCBC192B.script1 c:\logs\testexecute\AESMonteCarloEncryptCBC192B.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptCBC192B.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloEncryptCBC256.script1 c:\logs\testexecute\AESMonteCarloEncryptCBC256.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloEncryptCBC256.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptCBC128.script1 c:\logs\testexecute\AESMonteCarloDecryptCBC128.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptCBC128.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptCBC192.script1 c:\logs\testexecute\AESMonteCarloDecryptCBC192.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptCBC192.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tsymmetric.exe"/>
-			<parameter name="parameters" value="c:\tsymmetric\AESMonteCarloDecryptCBC256.script1 c:\logs\testexecute\AESMonteCarloDecryptCBC256.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\AESMonteCarloDecryptCBC256.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tconstructiontests.script1 c:\logs\testexecute\tconstruction.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tconstruction.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tbasicmathstests.script1 c:\logs\testexecute\tbasicmaths.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tbasicmaths.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tmontgomerytests.script1 c:\logs\testexecute\tmontgomery.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tmontgomery.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tprimetests.script1 c:\logs\testexecute\tprime.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tprime.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tprimefailuretests.script1 c:\logs\testexecute\tprimefailure.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tprimefailure.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tbigint.exe"/>
-			<parameter name="parameters" value="c:\tbigint\tprimegen.script1 c:\logs\testexecute\tprimegen.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tprimegen.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tpkcs5kdf.exe"/>
-			<parameter name="parameters" value="c:\tpkcs12kdftests.script1 c:\logs\testexecute\tpkcs12kdftests.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tpkcs12kdftests.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tpbe.exe"/>
-			<parameter name="parameters" value="c:\tpbe\tpbetests_v2.script1 c:\logs\testexecute\tpbetestsv2.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tpbetestsv2.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certapps.exe"/>
-			<parameter name="parameters" value="c:\tcertapps\scripts\script1.script1 c:\logs\testexecute\tcertapps.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertapps.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certapps.exe"/>
-			<parameter name="parameters" value="c:\tcertapps\scripts\apipolicing.script1 c:\logs\testexecute\tcertapps-apipolicing.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertapps-apipolicing.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\tkeystore.script1 c:\logs\testexecute\tkeystore.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tkeystore.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\authobjects.script1 c:\logs\testexecute\tkeystore_authobjects.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tkeystore_authobjects.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\exportscript.script1 c:\logs\testexecute\tkeystore_export.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tkeystore_export.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\reload.script1 c:\logs\testexecute\tkeystore_reload.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tkeystore_reload.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\oldserver_newfeature.script1 c:\logs\testexecute\oldserver_newfeature.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\oldserver_newfeature.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_keystore.exe"/>
-			<parameter name="parameters" value="c:\tkeystore\scripts\thwkeystore.script1 c:\logs\testexecute\thwkeystore.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\thwkeystore.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tasnpkcs.exe"/>
-			<parameter name="parameters" value="c:\tasnpkcstests.script1 c:\logs\testexecute\tasnpkcstests.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tasnpkcstests.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-        <parameters>
-			<parameter value="t_ctframework.exe" name="file"/>
-			<parameter value="600" name="timeout"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\T_CTFrameworkLog.txt"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\t_certstore_sha2.script1 c:\logs\testexecute\t_certstore_sha2.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\t_certstore_sha2.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\unifiedcertstore1-conf1.script1 c:\logs\testexecute\unifiedcertstore1-conf1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\unifiedcertstore1-conf1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\unifiedcertstore2-conf1.script1 c:\logs\testexecute\unifiedcertstore2-conf1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\unifiedcertstore2-conf1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\unifiedcertstore3-conf1.script1 c:\logs\testexecute\unifiedcertstore3-conf1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\unifiedcertstore3-conf1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\dsa.script1 c:\logs\testexecute\tcertstore-dsa.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertstore-dsa.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\reload.script1 c:\logs\testexecute\tcertstore-reload.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertstore-reload.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\apipolicing.script1 c:\logs\testexecute\tcertstore-apipolicing.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertstore-apipolicing.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\filecertstore_errors.script1 c:\logs\testexecute\tcertstore-errors.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tcertstore-errors.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\swicertstore1.script1 c:\logs\testexecute\swicertstore1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\swicertstore1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\swicertstore4.script1 c:\logs\testexecute\swicertstore4.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\swicertstore4.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\scripts\wri-swicertstore1.script1 c:\logs\testexecute\wri-swicertstore1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\wri-swicertstore1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="t_certstore.exe"/>
-			<parameter name="parameters" value="c:\tcertstore\multiple_certstore\scripts\tfilecertstore14.script1 c:\logs\testexecute\tfilecertstore14.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tfilecertstore14.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tx509.exe"/>
-			<parameter name="parameters" value="c:\TX509\SCRIPTS\TX509.script1 c:\logs\testexecute\tx509.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tx509.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tx509.exe"/>
-			<parameter name="parameters" value="c:\TX509\SCRIPTS\tx509-dnames.script1 c:\logs\testexecute\tx509-dnames.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tx509-dnames.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tx509.exe"/>
-			<parameter name="parameters" value="c:\TX509\SCRIPTS\TX509_DEV_CERTS.script1 c:\logs\testexecute\TX509_DEV_CERTS.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\TX509_DEV_CERTS.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tasn1.exe"/>
-			<parameter name="parameters" value="c:\tasn1\scripts\tasn1.script1 c:\logs\testexecute\tasn1_log.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tasn1_log.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="twtlscert.exe"/>
-			<parameter name="parameters" value="c:\twtlscert\scripts\twtlscert.script1 c:\logs\testexecute\twtlscert.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\twtlscert.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="twtlscert.exe"/>
-			<parameter name="parameters" value="c:\twtlscert\scripts\twtlscert1.script1 c:\logs\testexecute\twtlscert1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\twtlscert1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="twtlscert.exe"/>
-			<parameter name="parameters" value="c:\twtlscert\scripts\twtlscert2.script1 c:\logs\testexecute\twtlscert2.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\twtlscert2.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="twtlscert.exe"/>
-			<parameter name="parameters" value="c:\twtlscert\scripts\twtlscert3.script1 c:\logs\testexecute\twtlscert3.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\twtlscert3.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tpkixcert.exe"/>
-			<parameter name="parameters" value="c:\tpkixcert\scripts\tpkixtest_part1.script1 c:\logs\testexecute\tpkixtest1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tpkixtest1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tpkixcert.exe"/>
-			<parameter name="parameters" value="c:\tpkixcert\scripts\tpkixtest_part2.script1 c:\logs\testexecute\tpkixtest2.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\tpkixtest2.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tpkixcert.exe"/>
-			<parameter name="parameters" value="c:\tpkixcert\scripts\cancel1.script1 c:\logs\testexecute\cancel1.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\cancel1.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tocsp.exe"/>
-			<parameter name="parameters" value="c:\system\tocsp\scripts\OPENSSL.script1 c:\logs\testexecute\TOCSP_openssl.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\TOCSP_openssl.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tocsp.exe"/>
-			<parameter name="parameters" value="c:\system\tocsp\scripts\XCERT-LOCAL.script1 c:\logs\testexecute\xcert_local.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\xcert_local.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tocsp.exe"/>
-			<parameter name="parameters" value="c:\system\tocsp\scripts\OPENSSL-LOCAL.script1 c:\logs\testexecute\xcert_openssl_local.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\xcert_openssl_local.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tocsp.exe"/>
-			<parameter name="parameters" value="c:\system\tocsp\scripts\error.script1 c:\logs\testexecute\ocsp_error.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\ocsp_error.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-		<parameters>
-			<parameter name="file" value="tocsp.exe"/>
-			<parameter name="parameters" value="c:\SYSTEM\TOCSP\SCRIPTS\DefaultPolicy.script1 c:\logs\testexecute\TOCSP_DefaultPolicy.htm"/>
-			<parameter name="timeout" value="600"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\logs\testexecute\TOCSP_DefaultPolicy.htm"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>ExecutableTestCaseTask</type>
-        <parameters>
-			<parameter value="thash.exe" name="file"/>
-			<parameter value="2000" name="timeout"/>
-			<parameter name="parser" value="RTestResultParser" />
-			<parameter name="result-file" value="c:\hashlog.txt"/>
-			<parameter name="result-download-retry-count" value="1"/>
-			<parameter name="result-download-reboot-retry-count" value="1"/>
-		</parameters>
-	</task>
-<finalization>
-	<task>
-		<type>FileDownloadTask</type>
-		<parameters>
-			<parameter name="src" value="c:\hashlog.txt"/>
-			<parameter name="reboot-retry-count" value="1"/>
-			<parameter name="retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>FileDownloadTask</type>
-		<parameters>
-			<parameter name="src" value="c:\t_random.log"/>
-			<parameter name="reboot-retry-count" value="1"/>
-			<parameter name="retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>FileDownloadTask</type>
-		<parameters>
-			<parameter name="src" value="c:\T_CTFrameworkLog.txt"/>
-			<parameter name="reboot-retry-count" value="1"/>
-			<parameter name="retry-count" value="1"/>
-		</parameters>
-	</task>
-	<task>
-		<type>FileDownloadTask</type>
-		<parameters>
-			<parameter name="src" value="c:\tmsgapp.log"/>
-			<parameter name="reboot-retry-count" value="1"/>
-			<parameter name="retry-count" value="1"/>
-		</parameters>
-	</task>
-</finalization>
-
-
--- a/cryptomgmtlibs/securitytestfw/group/custom/prerun_custom.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-	<task>
-		<type>NonTestExecuteTask</type>
-        <parameters>
-			<parameter value="ced.exe" name="file"/>
-			<parameter value="-i c:\auto.cfg" name="parameters"/>
-			<parameter value="300" name="timeout"/>
-			<parameter value="true" name="ignore-exitcode"/>
-		</parameters>
-	</task>
-	<task>
-		<type>NonTestExecuteTask</type>
-        <parameters>
-			<parameter value="sntpclient.exe" name="file"/>
-			<parameter value="-savings cbtime01.symbian.intra bantime01.symbian.intra" name="parameters"/>
-			<parameter value="600" name="timeout"/>
-			<parameter value="true" name="ignore-exitcode"/>
-		</parameters>
-	</task>
-
-
-
--- a/cryptomgmtlibs/securitytestfw/group/filetokesn.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,787 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"Filetokens Tests"}, (0x101FB3E4), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"Filetokens integration test"
-
-
-
-"\epoc32\winscw\c\tkeystore\scripts\tkeystore.script"-"c:\tkeystore\scripts\tkeystore.script1"
-"\epoc32\winscw\c\tkeystore\scripts\cancel.script"-"c:\tkeystore\scripts\cancel.script1"
-"\epoc32\winscw\c\tkeystore\scripts\oom.script"-"c:\tkeystore\scripts\oom.script1"
-"\epoc32\winscw\c\tkeystore\scripts\servoom.script"-"c:\tkeystore\scripts\servoom.script1"
-"\epoc32\winscw\c\tkeystore\scripts\exportscript.script"-"c:\tkeystore\scripts\exportscript.script1"
-"\epoc32\winscw\c\tkeystore\scripts\authobjects.script"-"c:\tkeystore\scripts\authobjects.script1"
-"\epoc32\winscw\c\tkeystore\scripts\reload.script"-"c:\tkeystore\scripts\reload.script1"
-"\epoc32\winscw\c\tcertapps\scripts\script1.script"-"c:\tcertapps\scripts\script1.script1"
-"\epoc32\winscw\c\tcertapps\scripts\apipolicing.script"-"c:\tcertapps\scripts\apipolicing.script1"
-
-"\epoc32\winscw\c\tkeystore\scripts\tkeystore.ini"-"c:\tkeystore\scripts\tkeystore.ini"
-"\epoc32\winscw\c\tkeystore\scripts\tkeystore2.ini"-"c:\tkeystore\scripts\tkeystore2.ini"
-"\epoc32\winscw\c\tkeystore\scripts\cancel.ini"-"c:\tkeystore\scripts\cancel.ini"
-"\epoc32\winscw\c\tkeystore\scripts\oom.ini"-"c:\tkeystore\scripts\oom.ini"
-"\epoc32\winscw\c\tkeystore\scripts\servoom.ini"-"c:\tkeystore\scripts\servoom.ini"
-"\epoc32\winscw\c\tkeystore\scripts\exportscript.ini"-"c:\tkeystore\scripts\exportscript.ini"
-"\epoc32\winscw\c\tkeystore\scripts\authobjects.ini"-"c:\tkeystore\scripts\authobjects.ini"
-"\epoc32\winscw\c\tkeystore\scripts\reload.ini"-"c:\tkeystore\scripts\reload.ini"
-
-"\epoc32\winscw\c\tkeystore\data\pkcs8dh.001"-"c:\tkeystore\data\pkcs8dh.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa.001"-"c:\tkeystore\data\pkcs8rsa.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa1.001"-"c:\tkeystore\data\pkcs8rsa1.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa2.001"-"c:\tkeystore\data\pkcs8rsa2.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa3.001"-"c:\tkeystore\data\pkcs8rsa3.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa4.001"-"c:\tkeystore\data\pkcs8rsa4.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8invalidrsa.001"-"c:\tkeystore\data\pkcs8invalidrsa.001"
-
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa.001"-"c:\tkeystore\data\pkcs8dsa.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa1.001"-"c:\tkeystore\data\pkcs8dsa1.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa2.001"-"c:\tkeystore\data\pkcs8dsa2.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa3.001"-"c:\tkeystore\data\pkcs8dsa3.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa4.001"-"c:\tkeystore\data\pkcs8dsa4.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8invaliddsa.001"-"c:\tkeystore\data\pkcs8invaliddsa.001"
-
-;	PKCS8 RSA keys for ImportEncryptedKeys test
-"\epoc32\winscw\c\tkeystore\data\encryptPK8rsaDER.txt"-"c:\tkeystore\data\encryptPK8rsaDER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8rsa1DER.txt"-"c:\tkeystore\data\encryptPK8rsa1DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8rsa2DER.txt"-"c:\tkeystore\data\encryptPK8rsa2DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8rsa3DER.txt"-"c:\tkeystore\data\encryptPK8rsa3DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8rsa4DER.txt"-"c:\tkeystore\data\encryptPK8rsa4DER.txt"
-
-;	PKCS8 DSA keys for ImportEncryptedKeys test
-"\epoc32\winscw\c\tkeystore\data\encryptPK8dsaDER.txt"-"c:\tkeystore\data\encryptPK8dsaDER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8dsa1DER.txt"-"c:\tkeystore\data\encryptPK8dsa1DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8dsa2DER.txt"-"c:\tkeystore\data\encryptPK8dsa2DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8dsa3DER.txt"-"c:\tkeystore\data\encryptPK8dsa3DER.txt"
-"\epoc32\winscw\c\tkeystore\data\encryptPK8dsa4DER.txt"-"c:\tkeystore\data\encryptPK8dsa4DER.txt"
-"\epoc32\winscw\c\tkeystore\data\testvector1.bin"-"c:\tkeystore\data\testvector1.bin"
-"\epoc32\winscw\c\tkeystore\data\binarygarbage.bin"-"c:\tkeystore\data\binarygarbage.bin"
-
-; Strange Pkcs8 Encrypted keys with variou ciphers
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa1_3des.der"-"c:\tkeystore\data\pkcs8rsa1_3des.der"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa1_rc2.der"-"c:\tkeystore\data\pkcs8rsa1_rc2.der"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa1_rc4.der"-"c:\tkeystore\data\pkcs8rsa1_rc4.der"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa1_des3_nsdh.der"-"c:\tkeystore\data\pkcs8dsa1_des3_nsdh.der"
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa1_des3_nooctet.der"-"c:\tkeystore\data\pkcs8rsa1_des3_nooctet.der"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa1_des3_embed.der"-"c:\tkeystore\data\pkcs8dsa1_des3_embed.der"
-
-; PKCS8 keys with optional PKCS8 attributes
-"\epoc32\winscw\c\tkeystore\data\pkcs8rsa_attr.001"-"c:\tkeystore\data\pkcs8rsa_attr.001"
-"\epoc32\winscw\c\tkeystore\data\pkcs8dsa_attr.001"-"c:\tkeystore\data\pkcs8dsa_attr.001"
-
-;	RSA key pairs from which to build PKCS8 data
-"\epoc32\winscw\c\tkeystore\data\rsa1certkey.001"-"c:\tkeystore\data\rsa1certkey.001"
-"\epoc32\winscw\c\tkeystore\data\rsa2certkey.001"-"c:\tkeystore\data\rsa2certkey.001"
-"\epoc32\winscw\c\tkeystore\data\rsa3certkey.001"-"c:\tkeystore\data\rsa3certkey.001"
-"\epoc32\winscw\c\tkeystore\data\nrkey.001"-"c:\tkeystore\data\nrkey.001"
-"\epoc32\winscw\c\tkeystore\data\signkey2.001"-"c:\tkeystore\data\signkey2.001"
-"\epoc32\winscw\c\tkeystore\data\enciphersignkey2.001"-"c:\tkeystore\data\enciphersignkey2.001"
-
-; RSA & DSA public key to test public key export
-"\epoc32\winscw\c\tkeystore\data\rsapub.txt"-"c:\tkeystore\data\rsapub.txt"
-"\epoc32\winscw\c\tkeystore\data\rsapub1.txt"-"c:\tkeystore\data\rsapub1.txt"
-"\epoc32\winscw\c\tkeystore\data\rsapub2.txt"-"c:\tkeystore\data\rsapub2.txt"
-"\epoc32\winscw\c\tkeystore\data\rsapub3.txt"-"c:\tkeystore\data\rsapub3.txt"
-"\epoc32\winscw\c\tkeystore\data\rsapub4.txt"-"c:\tkeystore\data\rsapub4.txt"
-"\epoc32\winscw\c\tkeystore\data\dsapub.txt"-"c:\tkeystore\data\dsapub.txt"
-"\epoc32\winscw\c\tkeystore\data\dsapub1.txt"-"c:\tkeystore\data\dsapub1.txt"
-"\epoc32\winscw\c\tkeystore\data\dsapub2.txt"-"c:\tkeystore\data\dsapub2.txt"
-"\epoc32\winscw\c\tkeystore\data\dsapub3.txt"-"c:\tkeystore\data\dsapub3.txt"
-"\epoc32\winscw\c\tkeystore\data\dsapub4.txt"-"c:\tkeystore\data\dsapub4.txt"
-
-; ttesttools data
-
-"\epoc32\winscw\c\ttesttools\data\cert_addapps.txt"-"c:\ttesttools\data\cert_addapps.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_addapps1.txt"-"c:\ttesttools\data\cert_addapps1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_addappsfail1.txt"-"c:\ttesttools\data\cert_addappsfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_addappsfail2.txt"-"c:\ttesttools\data\cert_addappsfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_helpfail1.txt"-"c:\ttesttools\data\cert_helpfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_helpfail2.txt"-"c:\ttesttools\data\cert_helpfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_helpls.txt"-"c:\ttesttools\data\cert_helpls.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_import.txt"-"c:\ttesttools\data\cert_import.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_import1.txt"-"c:\ttesttools\data\cert_import1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_import2.txt"-"c:\ttesttools\data\cert_import2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_import3.txt"-"c:\ttesttools\data\cert_import3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_import4.txt"-"c:\ttesttools\data\cert_import4.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importfail1.txt"-"c:\ttesttools\data\cert_importfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importfail2.txt"-"c:\ttesttools\data\cert_importfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importfail3.txt"-"c:\ttesttools\data\cert_importfail3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importfail4.txt"-"c:\ttesttools\data\cert_importfail4.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importfail5.txt"-"c:\ttesttools\data\cert_importfail5.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_list1.txt"-"c:\ttesttools\data\cert_list1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_list2.txt"-"c:\ttesttools\data\cert_list2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_list3.txt"-"c:\ttesttools\data\cert_list3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_list4.txt"-"c:\ttesttools\data\cert_list4.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_listfail1.txt"-"c:\ttesttools\data\cert_listfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_listfail2.txt"-"c:\ttesttools\data\cert_listfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_listfail3.txt"-"c:\ttesttools\data\cert_listfail3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_ls.txt"-"c:\ttesttools\data\cert_ls.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_lsfail.txt"-"c:\ttesttools\data\cert_lsfail.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_remove1.txt"-"c:\ttesttools\data\cert_remove1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_remove2.txt"-"c:\ttesttools\data\cert_remove2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_remove3.txt"-"c:\ttesttools\data\cert_remove3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removeapps.txt"-"c:\ttesttools\data\cert_removeapps.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removeappsfail1.txt"-"c:\ttesttools\data\cert_removeappsfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removeappsfail2.txt"-"c:\ttesttools\data\cert_removeappsfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removefail.txt"-"c:\ttesttools\data\cert_removefail.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_setapps.txt"-"c:\ttesttools\data\cert_setapps.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_setapps1.txt"-"c:\ttesttools\data\cert_setapps1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_setappsfail1.txt"-"c:\ttesttools\data\cert_setappsfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_setappsfail2.txt"-"c:\ttesttools\data\cert_setappsfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\certfail.txt"-"c:\ttesttools\data\certfail.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importdeletable1.txt"-"c:\ttesttools\data\cert_importdeletable1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importdeletable2.txt"-"c:\ttesttools\data\cert_importdeletable2.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_importdeletable3.txt"-"c:\ttesttools\data\cert_importdeletable3.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removedeletable1.txt"-"c:\ttesttools\data\cert_removedeletable1.txt"
-"\epoc32\winscw\c\ttesttools\data\cert_removedeletable2.txt"-"c:\ttesttools\data\cert_removedeletable2.txt"
-"\epoc32\winscw\c\ttesttools\data\certhelp.txt"-"c:\ttesttools\data\certhelp.txt"
-
-"\epoc32\winscw\c\tkeystore\data\corrupt.001"-"c:\tkeystore\data\corrupt.001"
-"\epoc32\winscw\c\tkeystore\data\empty.001"-"c:\tkeystore\data\empty.001"
-"\epoc32\winscw\c\tcertstore\empty.cer"-"c:\tcertstore\empty.cer"
-"\epoc32\winscw\c\tcertstore\corrupt.cer"-"c:\tcertstore\corrupt.cer"
-
-"\epoc32\winscw\c\ttesttools\data\key_helpfail1.txt"-"c:\ttesttools\data\key_helpfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_helpfail2.txt"-"c:\ttesttools\data\key_helpfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_import1.txt"-"c:\ttesttools\data\key_import1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_import2.txt"-"c:\ttesttools\data\key_import2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_import3.txt"-"c:\ttesttools\data\key_import3.txt"
-"\epoc32\winscw\c\ttesttools\data\key_import4.txt"-"c:\ttesttools\data\key_import4.txt"
-"\epoc32\winscw\c\ttesttools\data\key_importfail1.txt"-"c:\ttesttools\data\key_importfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_importfail2.txt"-"c:\ttesttools\data\key_importfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_importfail3.txt"-"c:\ttesttools\data\key_importfail3.txt"
-"\epoc32\winscw\c\ttesttools\data\key_importfail4.txt"-"c:\ttesttools\data\key_importfail4.txt"
-"\epoc32\winscw\c\ttesttools\data\key_importfail5.txt"-"c:\ttesttools\data\key_importfail5.txt"
-"\epoc32\winscw\c\ttesttools\data\key_list1.txt"-"c:\ttesttools\data\key_list1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_list2.txt"-"c:\ttesttools\data\key_list2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_list3.txt"-"c:\ttesttools\data\key_list3.txt"
-"\epoc32\winscw\c\ttesttools\data\key_listfail1.txt"-"c:\ttesttools\data\key_listfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_listfail2.txt"-"c:\ttesttools\data\key_listfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_ls.txt"-"c:\ttesttools\data\key_ls.txt"
-"\epoc32\winscw\c\ttesttools\data\key_remove.txt"-"c:\ttesttools\data\key_remove.txt"
-"\epoc32\winscw\c\ttesttools\data\key_remove1.txt"-"c:\ttesttools\data\key_remove1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_removefail.txt"-"c:\ttesttools\data\key_removefail.txt"
-"\epoc32\winscw\c\ttesttools\data\key_removeuser.txt"-"c:\ttesttools\data\key_removeuser.txt"
-"\epoc32\winscw\c\ttesttools\data\key_removeuserfail1.txt"-"c:\ttesttools\data\key_removeuserfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_removeuserfail2.txt"-"c:\ttesttools\data\key_removeuserfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setalluser.txt"-"c:\ttesttools\data\key_setalluser.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setalluserfail1.txt"-"c:\ttesttools\data\key_setalluserfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setalluserfail2.txt"-"c:\ttesttools\data\key_setalluserfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setmanager.txt"-"c:\ttesttools\data\key_setmanager.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setmanagerfail1.txt"-"c:\ttesttools\data\key_setmanagerfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setmanagerfail2.txt"-"c:\ttesttools\data\key_setmanagerfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setuser.txt"-"c:\ttesttools\data\key_setuser.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setuserfail1.txt"-"c:\ttesttools\data\key_setuserfail1.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setuserfail2.txt"-"c:\ttesttools\data\key_setuserfail2.txt"
-"\epoc32\winscw\c\ttesttools\data\key_setuserhelp.txt"-"c:\ttesttools\data\key_setuserhelp.txt"
-"\epoc32\winscw\c\ttesttools\data\keyfail.txt"-"c:\ttesttools\data\keyfail.txt"
-"\epoc32\winscw\c\ttesttools\data\keyhelp.txt"-"c:\ttesttools\data\keyhelp.txt"
-"\epoc32\winscw\c\ttesttools\data\certclients.dat"-"c:\ttesttools\data\certclients.dat"
-
-"\epoc32\winscw\c\ttesttools\scripts\sec-filetokens-tools.script"-"c:\ttesttools\scripts\sec-filetokens-tools.script"
-"\epoc32\winscw\c\ttesttools\scripts\sec-filetokens-tools.ini"-"c:\ttesttools\scripts\sec-filetokens-tools.ini"
-"\epoc32\winscw\c\tcertapps\scripts\script1.ini"-"c:\tcertapps\scripts\script1.ini"
-"\epoc32\winscw\c\tcertapps\scripts\apipolicing.ini"-"c:\tcertapps\scripts\apipolicing.ini"
-
-;#if defined SDP_ROM1
-;//Nothing is included
-;#else
- 
-;// The below test data needed for sec-filetokens-tools.script which will run only in normal image(testsecurity_sdp.bat)
-;"\epoc32\winscw\c\tcertstore\ent-wtls.cer"-"c:\tcertstore\ent-wtls.cer"
-;"\epoc32\winscw\c\tcertstore\ent-wtls1.cer"-"c:\tcertstore\ent-wtls1.cer"
-;"\epoc32\winscw\c\tcertstore\ent-wtls2.cer"-"c:\tcertstore\ent-wtls2.cer"
-;"\epoc32\winscw\c\tcertstore\thawteserverca.cer"-"c:\tcertstore\thawteserverca.cer"
-;"\epoc32\winscw\c\tcertstore\veriSignclass1primaryca.cer"-"c:\tcertstore\veriSignclass1primaryca.cer"
-
-;// DSA private key and certificate for certstore tests
-;"\epoc32\winscw\c\tcertstore\data\pkcs8dsa1.001"-"c:\tcertstore\data\pkcs8dsa1.001"
-;"\epoc32\winscw\c\tcertstore\data\cert_dsa1.der"-"c:\tcertstore\data\cert_dsa1.der"
-;"\epoc32\winscw\c\system\data\test1certstore.dat"-"c:\system\data\test1certstore.dat"
-;"\epoc32\winscw\c\system\data\test2certstore.dat"-"c:\system\data\test2certstore.dat"
-
-// Test keystore. Contains two keys, a DSA key (label gm0) and a RSA key (label gm1)
-// The passphrase timeout is set to 30
-"\epoc32\data\z\private\101F72A6\keys.dat"-"c:\private\101F72A6\keys.dat"
-;#endif // SDP_ROM1
-
-
-"\epoc32\winscw\c\tpkcs7\tpkcs7_v2.script"-"c:\tpkcs7\tpkcs7_v2.script"
-"\epoc32\winscw\c\tpkcs7\tpkcs7_v2.ini"-"c:\tpkcs7\tpkcs7_v2.ini"
-
-
-"\epoc32\winscw\c\tpkcs7\tcms.script"-"c:\tpkcs7\tcms.script"              
-"\epoc32\winscw\c\tpkcs7\tcms.ini"-"c:\tpkcs7\tcms.ini"
-"\epoc32\winscw\c\tpkcs7\tinteg_cms.script"-"c:\tpkcs7\tinteg_cms.script"            
-"\epoc32\winscw\c\tpkcs7\tinteg_cms.ini"-"c:\tpkcs7\tinteg_cms.ini"
-
-
-"\epoc32\winscw\c\tpkcs7\data\corrupt1"-"c:\tpkcs7\data\corrupt1"
-"\epoc32\winscw\c\tpkcs7\data\corrupt2"-"c:\tpkcs7\data\corrupt2"
-"\epoc32\winscw\c\tpkcs7\data\corrupt3"-"c:\tpkcs7\data\corrupt3"
-"\epoc32\winscw\c\tpkcs7\data\corrupt4"-"c:\tpkcs7\data\corrupt4"
-"\epoc32\winscw\c\tpkcs7\data\expired1"-"c:\tpkcs7\data\expired1"
-"\epoc32\winscw\c\tpkcs7\data\noroot1"-"c:\tpkcs7\data\noroot1"
-"\epoc32\winscw\c\tpkcs7\data\valid1"-"c:\tpkcs7\data\valid1"
-"\epoc32\winscw\c\tpkcs7\data\valid2"-"c:\tpkcs7\data\valid2"
-"\epoc32\winscw\c\tpkcs7\data\valid3"-"c:\tpkcs7\data\valid3"
-"\epoc32\winscw\c\tpkcs7\data\rootcertificate"-"c:\tpkcs7\data\rootcertificate"
-
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_encrypteddata_corrupt2"-"c:\tpkcs7\data\pkcs7_encrypteddata_corrupt2"         
-"\epoc32\winscw\c\tpkcs7\data\empty"-"c:\tpkcs7\data\empty"
-"\epoc32\winscw\c\tpkcs7\data\sha1anddes-cbc"-"c:\tpkcs7\data\sha1anddes-cbc"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc4.der"-"c:\tpkcs7\data\sha1and128bitrc4.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc4_encryptedcontent.der"-"c:\tpkcs7\data\sha1and128bitrc4_encryptedcontent.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc4_salt.der"-"c:\tpkcs7\data\sha1and128bitrc4_salt.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc4.der"-"c:\tpkcs7\data\sha1and40bitrc4.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc4_encryptedcontent.der"-"c:\tpkcs7\data\sha1and40bitrc4_encryptedcontent.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc4_salt.der"-"c:\tpkcs7\data\sha1and40bitrc4_salt.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc2.der"-"c:\tpkcs7\data\sha1and128bitrc2.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc2_encryptedcontent.der"-"c:\tpkcs7\data\sha1and128bitrc2_encryptedcontent.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and128bitrc2_salt.der"-"c:\tpkcs7\data\sha1and128bitrc2_salt.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and3_keytripledes_cbc.der"-"c:\tpkcs7\data\sha1and3_keytripledes_cbc.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and3_keytripledes_cbc_encryptedcontent.der"-"c:\tpkcs7\data\sha1and3_keytripledes_cbc_encryptedcontent.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and3_keytripledes_cbc_salt.der"-"c:\tpkcs7\data\sha1and3_keytripledes_cbc_salt.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc2_cbc.der"-"c:\tpkcs7\data\sha1and40bitrc2_cbc.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc2_cbc_encryptedcontent.der"-"c:\tpkcs7\data\sha1and40bitrc2_cbc_encryptedcontent.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and40bitrc2_cbc_salt.der"-"c:\tpkcs7\data\sha1and40bitrc2_cbc_salt.der"
-"\epoc32\winscw\c\tpkcs7\data\notencrypteddata.der"-"c:\tpkcs7\data\notencrypteddata.der"
-"\epoc32\winscw\c\tpkcs7\data\sha1and2_keytripledes.der"-"c:\tpkcs7\data\sha1and2_keytripledes.der"	                        
-"\epoc32\winscw\c\tpkcs7\data\sha1and2_keytripledes_encryptedcontent.der"-"c:\tpkcs7\data\sha1and2_keytripledes_encryptedcontent.der"            
-"\epoc32\winscw\c\tpkcs7\data\sha1and2_keytripledes_salt.der"-"c:\tpkcs7\data\sha1and2_keytripledes_salt.der"	            
-"\epoc32\winscw\c\tpkcs7\data\encrypteddata_withoutsalt.der"-"c:\tpkcs7\data\encrypteddata_withoutsalt.der"
-"\epoc32\winscw\c\tpkcs7\data\encrypteddata_withoutsalt_content.der"-"c:\tpkcs7\data\encrypteddata_withoutsalt_content.der"
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_encryptedneg_version.der"-"c:\tpkcs7\data\pkcs7_encryptedneg_version.der"
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_encryptedneg_contentType.der"-"c:\tpkcs7\data\pkcs7_encryptedneg_contentType.der"
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_encryptedneg_nocontsalt.der"-"c:\tpkcs7\data\pkcs7_encryptedneg_nocontsalt.der"
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_encryptedneg_noencryptedcon.der"-"c:\tpkcs7\data\pkcs7_encryptedneg_noencryptedcon.der"
-"\epoc32\winscw\c\tpkcs7\data\encrypteddata_versiontag.der"-"c:\tpkcs7\data\encrypteddata_versiontag.der"
-
-
-"\epoc32\winscw\c\tpkcs7\data\digest_sha1.der"-"c:\tpkcs7\data\digest_sha1.der"
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_sha1.der"-"c:\tpkcs7\data\digestinfo_sha1.der"                     
-"\epoc32\winscw\c\tpkcs7\data\pkcs7_digest_md5alg.der"-"c:\tpkcs7\data\pkcs7_digest_md5alg.der"
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_md5alg.der"-"c:\tpkcs7\data\digestinfo_md5alg.der"
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_negalgtag.der"-"c:\tpkcs7\data\digestinfo_negalgtag.der"	
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_digest_notoctetstring.der"-"c:\tpkcs7\data\digestinfo_digest_notoctetstring.der"
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_nodigest.der"-"c:\tpkcs7\data\digestinfo_nodigest.der"              
-"\epoc32\winscw\c\tpkcs7\data\digestinfo_unsupportedalg.der"-"c:\tpkcs7\data\digestinfo_unsupportedalg.der"
-
-
-
-;CMS test;
-"\epoc32\winscw\c\tpkcs7\cms\data\datacontent.txt"-"c:\tpkcs7\cms\data\datacontent.txt"
-"\epoc32\winscw\c\tpkcs7\cms\data\ca.der"-"c:\tpkcs7\cms\data\ca.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_add_rsa_cert_is.der"-"c:\tpkcs7\cms\data\cms_add_rsa_cert_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\attributecert.der"-"c:\tpkcs7\cms\data\attributecert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\corruptattributecert.der"-"c:\tpkcs7\cms\data\corruptattributecert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\corruptattributecert_noseq.der"-"c:\tpkcs7\cms\data\corruptattributecert_noseq.der"
-
-;CMS test by integration test
-"\epoc32\winscw\c\tpkcs7\cms\data\int_ca.der"-"c:\tpkcs7\cms\data\int_ca.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_1_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_1_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_2_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_2_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_2_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_2_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_3_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_3_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_cert_3_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_cert_3_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_1_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_1_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_2_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_2_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_2_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_2_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_3_is.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_3_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_dsa_key_3_ki.der"-"c:\tpkcs7\cms\data\int_cms_dsa_key_3_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_1_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_1_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_2_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_2_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_2_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_2_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_3_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_3_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_cert_3_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_cert_3_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_1_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_1_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_2_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_2_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_2_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_2_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_3_is.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_3_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_cms_rsa_key_3_ki.der"-"c:\tpkcs7\cms\data\int_cms_rsa_key_3_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_datacontent.txt"-"c:\tpkcs7\cms\data\int_datacontent.txt"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_dsa_2_attributeCert.der"-"c:\tpkcs7\cms\data\int_dsa_2_attributeCert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_dsa_3_attributeCert.der"-"c:\tpkcs7\cms\data\int_dsa_3_attributeCert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_dsa_attributeCert.der"-"c:\tpkcs7\cms\data\int_dsa_attributeCert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_large_data.txt"-"c:\tpkcs7\cms\data\int_large_data.txt"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_rsa_2_attributeCert.der"-"c:\tpkcs7\cms\data\int_rsa_2_attributeCert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_rsa_3_attributecert.der"-"c:\tpkcs7\cms\data\int_rsa_3_attributecert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_rsa_attributeCert.der"-"c:\tpkcs7\cms\data\int_rsa_attributeCert.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\int_small_data.txt"-"c:\tpkcs7\cms\data\int_small_data.txt"
-
-
-
-;CMS Test Certificates and key					
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_rsa_cert_1_ki.der"-"c:\tpkcs7\cms\data\cms_rsa_cert_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_rsa_key_1_ki.der"-"c:\tpkcs7\cms\data\cms_rsa_key_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_rsa_cert_1_is.der"-"c:\tpkcs7\cms\data\cms_rsa_cert_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_rsa_key_1_is.der"-"c:\tpkcs7\cms\data\cms_rsa_key_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_dsa_cert_1_ki.der"-"c:\tpkcs7\cms\data\cms_dsa_cert_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_dsa_key_1_ki.der"-"c:\tpkcs7\cms\data\cms_dsa_key_1_ki.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_dsa_cert_1_is.der"-"c:\tpkcs7\cms\data\cms_dsa_cert_1_is.der"
-"\epoc32\winscw\c\tpkcs7\cms\data\cms_dsa_key_1_is.der"-"c:\tpkcs7\cms\data\cms_dsa_key_1_is.der"
-
-;CMS expected signed data result
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_is.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_sha1_ki.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_sha1_is.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_md2_ki.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_md2_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_md2_ki.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_md2_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_md2_is.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_md2_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_md2_is.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_md2_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_md5_is.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_md5_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_md5_is.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_md5_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_md5_ki.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_md5_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_rsa_md5_ki.der"-"c:\tpkcs7\cms\results\cms_1_detached_rsa_md5_ki.der"
-
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_dsa_ki.der"-"c:\tpkcs7\cms\results\cms_1_attached_dsa_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_dsa_ki.der"-"c:\tpkcs7\cms\results\cms_1_detached_dsa_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_dsa_is.der"-"c:\tpkcs7\cms\results\cms_1_attached_dsa_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_detached_dsa_is.der"-"c:\tpkcs7\cms\results\cms_1_detached_dsa_is.der"
-
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_multi_2_attached_rsaki_dsais.der"-"c:\tpkcs7\cms\results\cms_multi_2_attached_rsaki_dsais.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_multi_2_attached_dsais_rsaki.der"-"c:\tpkcs7\cms\results\cms_multi_2_attached_dsais_rsaki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_multi_2_attached_rsakimd5_dsais.der"-"c:\tpkcs7\cms\results\cms_multi_2_attached_rsakimd5_dsais.der"
-
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_nocert.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_nocert.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_nosignerinfo.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_nosignerinfo.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_multi_2_attached_rsakimd5_dsais_addcert.der"-"c:\tpkcs7\cms\results\cms_multi_2_attached_rsakimd5_dsais_addcert.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_signature.der"-"c:\tpkcs7\cms\results\cms_corrupt_signature.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_excerttag.der"-"c:\tpkcs7\cms\results\cms_corrupt_excerttag.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_certsettag.der"-"c:\tpkcs7\cms\results\cms_corrupt_certsettag.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_signinfoversion.der"-"c:\tpkcs7\cms\results\cms_corrupt_signinfoversion.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_signdataversion.der"-"c:\tpkcs7\cms\results\cms_corrupt_signdataversion.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_datacontent.der"-"c:\tpkcs7\cms\results\cms_corrupt_datacontent.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_encapcontentoid.der"-"c:\tpkcs7\cms\results\cms_corrupt_encapcontentoid.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_encapcontent_tag_1.der"-"c:\tpkcs7\cms\results\cms_corrupt_encapcontent_tag_1.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_encapcontent_tag_2.der"-"c:\tpkcs7\cms\results\cms_corrupt_encapcontent_tag_2.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_contentoid.der"-"c:\tpkcs7\cms\results\cms_corrupt_contentoid.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_content_tag_1.der"-"c:\tpkcs7\cms\results\cms_corrupt_content_tag_1.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_algorithmoid.der"-"c:\tpkcs7\cms\results\cms_corrupt_algorithmoid.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_KI_attributecert.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_KI_attributecert.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_block.der"-"c:\tpkcs7\cms\results\cms_corrupt_block.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_unsignedattributes.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_unsignedattributes.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_attributes.der"-"c:\tpkcs7\cms\results\cms_1_attached_rsa_sha1_ki_attributes.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_corrupt_length.der"-"c:\tpkcs7\cms\results\cms_corrupt_length.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_data.der"-"c:\tpkcs7\cms\results\cms_data.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_data_corrupt_tag.der"-"c:\tpkcs7\cms\results\cms_data_corrupt_tag.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cms_data_corrupt_class.der"-"c:\tpkcs7\cms\results\cms_data_corrupt_class.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cmsdigestdata.der"-"c:\tpkcs7\cms\results\cmsdigestdata.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cmsenvelopeddata.der"-"c:\tpkcs7\cms\results\cmsenvelopeddata.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cmsencryteddata.der"-"c:\tpkcs7\cms\results\cmsencryteddata.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\cmsauthdata.der"-"c:\tpkcs7\cms\results\cmsauthdata.der"
-
-
-
-;CMS Integ expected signed data result
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md2_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md2_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md2md5sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md2md5sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_12rsa_3dsa_certdetach_md2md5sha1_1ki_23is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_12rsa_3dsa_certdetach_md2md5sha1_1ki_23is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md5_13ki_2is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certattach_md5_13ki_2is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1_is_x509.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1_is_x509.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1md2md5_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_3rsa_certdetach_sha1md2md5_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certattach_rsa_md5_is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certattach_rsa_md5_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certattach_rsa_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certattach_rsa_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_dsa_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_rsa_md2_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_rsa_md2_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_rsa_sha1_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_dataattached_certdetach_rsa_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_12rsa_3_dsa_certdetach_sha1_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_12rsa_3_dsa_certdetach_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_12rsa_3dsa_certdetach_1md2_2md5_3sha1_1ki_23is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_12rsa_3dsa_certdetach_1md2_2md5_3sha1_1ki_23is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3dsa_certattach_3sha1_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3dsa_certattach_3sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3dsa_certdetach_sha1_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3dsa_certdetach_sha1_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_12sha1_3md5_1ki_23is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_12sha1_3md5_1ki_23is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_3md2_12ki_3is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_3md2_12ki_3is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_sha1_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certattach_sha1_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certdattach_md5_13ki_2is_.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certdattach_md5_13ki_2is_.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certdetach_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_3rsa_certdetach_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_certattach_rsa_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_certattach_rsa_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_certdetach_rsa_md2_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_certdetach_rsa_md2_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certattach_sha1_is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certattach_sha1_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certattach_sha1_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certattach_sha1_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certdetach_sha1_ki.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certdetach_sha1_ki.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certdetach_sha1_ki_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_dsa_certdetach_sha1_ki_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_rsa_certattach_md5_is.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_rsa_certattach_md5_is.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_datadetached_rsa_certdetach_sha1_is_attribute.der"-"c:\tpkcs7\cms\results\int_cms_1_datadetached_rsa_certdetach_sha1_is_attribute.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_digested.der"-"c:\tpkcs7\cms\results\int_cms_1_digested.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_enveloped.der"-"c:\tpkcs7\cms\results\int_cms_1_enveloped.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_plain_data.der"-"c:\tpkcs7\cms\results\int_cms_1_plain_data.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_signed_and_enveloped_data.der"-"c:\tpkcs7\cms\results\int_cms_1_signed_and_enveloped_data.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_invalid_attr_cert_value_2.der"-"c:\tpkcs7\cms\results\int_cms_invalid_attr_cert_value_2.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_small_data.der"-"c:\tpkcs7\cms\results\int_small_data.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_large_data.der"-"c:\tpkcs7\cms\results\int_large_data.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_encrypted.der"-"c:\tpkcs7\cms\results\int_cms_1_encrypted.der"
-"\epoc32\WINSCW\C\tpkcs7\cms\results\int_cms_1_authenticated_data.der"-"c:\tpkcs7\cms\results\int_cms_1_authenticated_data.der"
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\tpkcs12lib.script"-"c:\tpkcs12intg\data\tpkcs12lib.script"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\im001.ini"-"c:\tpkcs12intg\data\ini\im001.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\im002.ini"-"c:\tpkcs12intg\data\ini\im002.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm001.ini"-"c:\tpkcs12intg\data\ini\pm001.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm002.ini"-"c:\tpkcs12intg\data\ini\pm002.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm003.ini"-"c:\tpkcs12intg\data\ini\pm003.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm004.ini"-"c:\tpkcs12intg\data\ini\pm004.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm005.ini"-"c:\tpkcs12intg\data\ini\pm005.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm006.ini"-"c:\tpkcs12intg\data\ini\pm006.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm007.ini"-"c:\tpkcs12intg\data\ini\pm007.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm008.ini"-"c:\tpkcs12intg\data\ini\pm008.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm009.ini"-"c:\tpkcs12intg\data\ini\pm009.ini" 
-
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pm010.ini"-"c:\tpkcs12intg\data\ini\pm010.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\ci001.ini"-"c:\tpkcs12intg\data\ini\ci001.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\ci002.ini"-"c:\tpkcs12intg\data\ini\ci002.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\sb001.ini"-"c:\tpkcs12intg\data\ini\sb001.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\sb002.ini"-"c:\tpkcs12intg\data\ini\sb002.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\sb003.ini"-"c:\tpkcs12intg\data\ini\sb003.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb001.ini"-"c:\tpkcs12intg\data\ini\cb001.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb002.ini"-"c:\tpkcs12intg\data\ini\cb002.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb003.ini"-"c:\tpkcs12intg\data\ini\cb003.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb004.ini"-"c:\tpkcs12intg\data\ini\cb004.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb005.ini"-"c:\tpkcs12intg\data\ini\cb005.ini" 
-"\epoc32\winscw\c\tpkcs12intg\data\ini\cb006.ini"-"c:\tpkcs12intg\data\ini\cb006.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\ct001.ini"-"c:\tpkcs12intg\data\ini\ct001.ini"
-
-
-
-; Negative Tests
-"\epoc32\winscw\c\tpkcs12intg\data\ini\iv001.ini"-"c:\tpkcs12intg\data\ini\iv001.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\changetag.ini"-"c:\tpkcs12intg\data\ini\changetag.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\attributevaluechanged.ini"-"c:\tpkcs12intg\data\ini\attributevaluechanged.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptbagalgid.ini"-"c:\tpkcs12intg\data\ini\corruptbagalgid.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptdigestalg_case1.ini"-"c:\tpkcs12intg\data\ini\corruptdigestalg_case1.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptdigestalg_case2.ini"-"c:\tpkcs12intg\data\ini\corruptdigestalg_case2.ini"
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedalgid.ini"-"c:\tpkcs12intg\data\ini\corruptedalgid.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedshroudedval.ini"-"c:\tpkcs12intg\data\ini\corruptedshroudedval.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedversion.ini"-"c:\tpkcs12intg\data\ini\corruptedversion.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\digestcorrupted.ini"-"c:\tpkcs12intg\data\ini\digestcorrupted.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\emptycontentinfo.ini"-"c:\tpkcs12intg\data\ini\emptycontentinfo.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\emptydigest.ini"-"c:\tpkcs12intg\data\ini\emptydigest.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\encryptedcontentabsent.ini"-"c:\tpkcs12intg\data\ini\encryptedcontentabsent.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\encrypteddataabsent.ini"-"c:\tpkcs12intg\data\ini\encrypteddataabsent.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\contentinfotypeunsupported.ini"-"c:\tpkcs12intg\data\ini\contentinfotypeunsupported.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedencryptedconiteration_case1.ini"-"c:\tpkcs12intg\data\ini\corruptedencryptedconiteration_case1.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedencryptedconiteration_case2.ini"-"c:\tpkcs12intg\data\ini\corruptedencryptedconiteration_case2.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedencryptedcontent.ini"-"c:\tpkcs12intg\data\ini\corruptedencryptedcontent.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedencryptedconversion.ini"-"c:\tpkcs12intg\data\ini\corruptedencryptedconversion.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedshroudediteration_case1.ini"-"c:\tpkcs12intg\data\ini\corruptedshroudediteration_case1.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\corruptedshroudediteration_case2.ini"-"c:\tpkcs12intg\data\ini\corruptedshroudediteration_case2.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\encrypteddatasaltcorrupted.ini"-"c:\tpkcs12intg\data\ini\encrypteddatasaltcorrupted.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\encryptedusingdifferentalg.ini"-"c:\tpkcs12intg\data\ini\encryptedusingdifferentalg.ini"	
-
-"\epoc32\winscw\c\tpkcs12intg\data\ini\authsafe_contentnotoctetstring.ini"-"c:\tpkcs12intg\data\ini\authsafe_contentnotoctetstring.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\authsafe_contentnotsequence.ini"-"c:\tpkcs12intg\data\ini\authsafe_contentnotsequence.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\authsafe_notasequence.ini"-"c:\tpkcs12intg\data\ini\authsafe_notasequence.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\authsafe_oidnotoctetstring.ini"-"c:\tpkcs12intg\data\ini\authsafe_oidnotoctetstring.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\digestalgorithmnotasequence.ini"-"c:\tpkcs12intg\data\ini\digestalgorithmnotasequence.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macdata_iterationnotinteger.ini"-"c:\tpkcs12intg\data\ini\macdata_iterationnotinteger.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macdata_negiteration.ini"-"c:\tpkcs12intg\data\ini\macdata_negiteration.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macdata_nosalt_noiteration.ini"-"c:\tpkcs12intg\data\ini\macdata_nosalt_noiteration.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macdatanotasequence.ini"-"c:\tpkcs12intg\data\ini\macdatanotasequence.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macdataverifyintegritydigestalgnotsha1.ini"-"c:\tpkcs12intg\data\ini\macdataverifyintegritydigestalgnotsha1.ini"	
-"\epoc32\winscw\c\tpkcs12intg\data\ini\macsaltnotasequence.ini"-"c:\tpkcs12intg\data\ini\macsaltnotasequence.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pfx_missingcontents1.ini"-"c:\tpkcs12intg\data\ini\pfx_missingcontents1.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\pfx_notasequence.ini"-"c:\tpkcs12intg\data\ini\pfx_notasequence.ini"				
-"\epoc32\winscw\c\tpkcs12intg\data\ini\version_notinteger.ini"-"c:\tpkcs12intg\data\ini\version_notinteger.ini"				
-"\epoc32\winscw\c\tpkcs12intg\data\ini\digestinfonotasequence.ini"-"c:\tpkcs12intg\data\ini\digestinfonotasequence.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\unsupported_contenttype.ini"-"c:\tpkcs12intg\data\ini\unsupported_contenttype.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\certbag_notasequence.ini"-"c:\tpkcs12intg\data\ini\certbag_notasequence.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\certbag_oidnotoctetstring.ini"-"c:\tpkcs12intg\data\ini\certbag_oidnotoctetstring.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\certbag_explicittagchanged.ini"-"c:\tpkcs12intg\data\ini\certbag_explicittagchanged.ini"		
-"\epoc32\winscw\c\tpkcs12intg\data\ini\certbag_notoctetstring.ini"-"c:\tpkcs12intg\data\ini\certbag_notoctetstring.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\bagattributenotaseq.ini"-"c:\tpkcs12intg\data\ini\bagattributenotaseq.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\bagattributeoid_notoctet.ini"-"c:\tpkcs12intg\data\ini\bagattributeoid_notoctet.ini"			
-"\epoc32\winscw\c\tpkcs12intg\data\ini\bagattributeval_notset.ini"-"c:\tpkcs12intg\data\ini\bagattributeval_notset.ini"			
-;//OOMTest
-"\epoc32\winscw\c\tpkcs12intg\data\ini\oomtest.ini"-"c:\tpkcs12intg\data\ini\oomtest.ini"		
-
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_im001.p12"-"c:\tpkcs12intg\data\pkcs12_im001.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_im002.p12"-"c:\tpkcs12intg\data\pkcs12_im002.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm001.p12"-"c:\tpkcs12intg\data\pkcs12_pm001.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm002.p12"-"c:\tpkcs12intg\data\pkcs12_pm002.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm003.p12"-"c:\tpkcs12intg\data\pkcs12_pm003.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm004.p12"-"c:\tpkcs12intg\data\pkcs12_pm004.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm005.p12"-"c:\tpkcs12intg\data\pkcs12_pm005.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm006.p12"-"c:\tpkcs12intg\data\pkcs12_pm006.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm007.p12"-"c:\tpkcs12intg\data\pkcs12_pm007.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm008.p12"-"c:\tpkcs12intg\data\pkcs12_pm008.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm009.p12"-"c:\tpkcs12intg\data\pkcs12_pm009.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pm010.p12"-"c:\tpkcs12intg\data\pkcs12_pm010.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_ci001.p12"-"c:\tpkcs12intg\data\pkcs12_ci001.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_ci002.p12"-"c:\tpkcs12intg\data\pkcs12_ci002.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_sb001.p12"-"c:\tpkcs12intg\data\pkcs12_sb001.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_sb002.p12"-"c:\tpkcs12intg\data\pkcs12_sb002.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_sb003.p12"-"c:\tpkcs12intg\data\pkcs12_sb003.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb001.p12"-"c:\tpkcs12intg\data\pkcs12_cb001.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb002.p12"-"c:\tpkcs12intg\data\pkcs12_cb002.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb003.p12"-"c:\tpkcs12intg\data\pkcs12_cb003.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb004.p12"-"c:\tpkcs12intg\data\pkcs12_cb004.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb005.p12"-"c:\tpkcs12intg\data\pkcs12_cb005.p12" 
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_cb006.p12"-"c:\tpkcs12intg\data\pkcs12_cb006.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_junk.p12"-"c:\tpkcs12intg\data\pkcs12_junk.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_ct001.p12"-"c:\tpkcs12intg\data\pkcs12_ct001.p12"
-
-
-; Negative Test
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_changetag.p12"-"c:\tpkcs12intg\data\pkcs12_changetag.p12"		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_contenttype.p12"-"c:\tpkcs12intg\data\pkcs12_contenttype.p12"  		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedattrval.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedattrval.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedSalt.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedSalt.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedshroudedval.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedshroudedval.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedversion.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedversion.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalg1.p12"-"c:\tpkcs12intg\data\pkcs12_digestalg1.p12"  		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalg2.p12"-"c:\tpkcs12intg\data\pkcs12_digestalg2.p12"  		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestcorrupted.p12"-"c:\tpkcs12intg\data\pkcs12_digestcorrupted.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_emptycontentinfo.p12"-"c:\tpkcs12intg\data\pkcs12_emptycontentinfo.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_emptydigest.p12"-"c:\tpkcs12intg\data\pkcs12_emptydigest.p12"  		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encrypteddataabsent.p12"-"c:\tpkcs12intg\data\pkcs12_encrypteddataabsent.p12"	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_unsupportedbag.p12"-"c:\tpkcs12intg\data\pkcs12_unsupportedbag.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_unsupportedcontentinfo.p12"-"c:\tpkcs12intg\data\pkcs12_unsupportedcontentinfo.p12"	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encryptedcontentabsent.p12"-"c:\tpkcs12intg\data\pkcs12_encryptedcontentabsent.p12"	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_attributevaluecorrupted.p12"-"c:\tpkcs12intg\data\pkcs12_attributevaluecorrupted.p12"	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedencryptedcontent.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedencryptedcontent.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedshroudediteration1.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedshroudediteration1.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_corruptedshroudediteration2.p12"-"c:\tpkcs12intg\data\pkcs12_corruptedshroudediteration2.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encryptedcontentiteration1.p12"-"c:\tpkcs12intg\data\pkcs12_encryptedcontentiteration1.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encryptedcontentiteration2.p12"-"c:\tpkcs12intg\data\pkcs12_encryptedcontentiteration2.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encryptedcontentversion.p12"-"c:\tpkcs12intg\data\pkcs12_encryptedcontentversion.p12"  
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_encryptedusingdifferentAlg.p12"-"c:\tpkcs12intg\data\pkcs12_encryptedusingdifferentAlg.p12"  
-
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_authsafe_contentnotoctetstring.p12"-"c:\tpkcs12intg\data\pkcs12_authsafe_contentnotoctetstring.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_authsafe_contentnotsequence.p12"-"c:\tpkcs12intg\data\pkcs12_authsafe_contentnotsequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_authsafe_notasequence.p12"-"c:\tpkcs12intg\data\pkcs12_authsafe_notasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_authsafe_oidnotoctetstring.p12"-"c:\tpkcs12intg\data\pkcs12_authsafe_oidnotoctetstring.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_certbag_explicittagchanged.p12"-"c:\tpkcs12intg\data\pkcs12_certbag_explicittagchanged.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_certbag_notasequence.p12"-"c:\tpkcs12intg\data\pkcs12_certbag_notasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_certbag_notoctetstring.p12"-"c:\tpkcs12intg\data\pkcs12_certbag_notoctetstring.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_certbag_oidnotoctetstring.p12"-"c:\tpkcs12intg\data\pkcs12_certbag_oidnotoctetstring.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalgnotsha1.p12"-"c:\tpkcs12intg\data\pkcs12_digestalgnotsha1.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalgorithmnotasequence.p12"-"c:\tpkcs12intg\data\pkcs12_digestalgorithmnotasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestinfonotasequence.p12"-"c:\tpkcs12intg\data\pkcs12_digestinfonotasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_macdata_iterationnotinteger.p12"-"c:\tpkcs12intg\data\pkcs12_macdata_iterationnotinteger.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_macdata_negiteration.p12"-"c:\tpkcs12intg\data\pkcs12_macdata_negiteration.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_macdata_nosalt_noiteration.p12"-"c:\tpkcs12intg\data\pkcs12_macdata_nosalt_noiteration.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_macdatanotasequence.p12"-"c:\tpkcs12intg\data\pkcs12_macdatanotasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_macsaltnotoctetstring.p12"-"c:\tpkcs12intg\data\pkcs12_macsaltnotoctetstring.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pfx_missingcontents1.p12"-"c:\tpkcs12intg\data\pkcs12_pfx_missingcontents1.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_pfx_notasequence.p12"-"c:\tpkcs12intg\data\pkcs12_pfx_notasequence.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_unsupported_contenttype.p12"-"c:\tpkcs12intg\data\pkcs12_unsupported_contenttype.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_version_notinteger.p12"-"c:\tpkcs12intg\data\pkcs12_version_notinteger.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_bagattributenotaseq.p12"-"c:\tpkcs12intg\data\pkcs12_bagattributenotaseq.p12"
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_bagattributeoid_notoctet.p12"-"c:\tpkcs12intg\data\pkcs12_bagattributeoid_notoctet.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_bagattributeval_notset.p12"-"c:\tpkcs12intg\data\pkcs12_bagattributeval_notset.p12"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalgnotsha1_mac.der"-"c:\tpkcs12intg\data\pkcs12_digestalgnotsha1_mac.der"  	
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_digestalgnotsha1_salt.der"-"c:\tpkcs12intg\data\pkcs12_digestalgnotsha1_salt.der"  	
-;//OOM Test
-"\epoc32\winscw\c\tpkcs12intg\data\oommacdata.der"-"c:\tpkcs12intg\data\oommacdata.der"
-"\epoc32\winscw\c\tpkcs12intg\data\oomauthsafedata.der"-"c:\tpkcs12intg\data\oomauthsafedata.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomattributes.der"-"c:\tpkcs12intg\data\oomattributes.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomshroudedkeybag.der"-"c:\tpkcs12intg\data\oomshroudedkeybag.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomcertbag.der"-"c:\tpkcs12intg\data\oomcertbag.der"
-"\epoc32\winscw\c\tpkcs12intg\data\oomkeybag.der"-"c:\tpkcs12intg\data\oomkeybag.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomsafecontentsbag.der"-"c:\tpkcs12intg\data\oomsafecontentsbag.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomsafebag.der"-"c:\tpkcs12intg\data\oomsafebag.der"			
-"\epoc32\winscw\c\tpkcs12intg\data\oomcrlbag.der"-"c:\tpkcs12intg\data\oomcrlbag.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\oomsecretbag.der"-"c:\tpkcs12intg\data\oomsecretbag.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\pkcs12_oomsafecontentencrypteddata.p12"-"c:\tpkcs12intg\data\pkcs12_oomsafecontentencrypteddata.p12"	
-
-"\epoc32\winscw\c\tpkcs12intg\data\root5ca.der"-"c:\tpkcs12intg\data\root5ca.der"
-"\epoc32\winscw\c\tpkcs12intg\data\root5ca.pem"-"c:\tpkcs12intg\data\root5ca.pem"
-
-"\epoc32\winscw\c\tpkcs12intg\data\root5_ee.der"-"c:\tpkcs12intg\data\root5_ee.der"
-"\epoc32\winscw\c\tpkcs12intg\data\root5ca_key.der"-"c:\tpkcs12intg\data\root5ca_key.der"
-"\epoc32\winscw\c\tpkcs12intg\data\pm009_shrouded"-"c:\tpkcs12intg\data\pm009_shrouded"
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\root5ca_key.pem"-"c:\tpkcs12intg\data\root5ca_key.pem"
-"\epoc32\winscw\c\tpkcs12intg\data\root5ca_key.pk8"-"c:\tpkcs12intg\data\root5ca_key.pk8" 
-"\epoc32\winscw\c\tpkcs12intg\data\symbiantestrootcadsa_key.pk8"-"c:\tpkcs12intg\data\symbiantestrootcadsa_key.pk8"
-"\epoc32\winscw\c\tpkcs12intg\data\ee_key.pk8"-"c:\tpkcs12intg\data\ee_key.pk8"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_1.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_2.der"-"c:\tpkcs12intg\data\safebag_shrouded_2.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_3.der"-"c:\tpkcs12intg\data\safebag_shrouded_3.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_4.der"-"c:\tpkcs12intg\data\safebag_shrouded_4.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_5.der"-"c:\tpkcs12intg\data\safebag_shrouded_5.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_6.der"-"c:\tpkcs12intg\data\safebag_shrouded_6.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_7.der"-"c:\tpkcs12intg\data\safebag_shrouded_7.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_8.der"-"c:\tpkcs12intg\data\safebag_shrouded_8.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_10.der"-"c:\tpkcs12intg\data\safebag_shrouded_10.der" 
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb001.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb001.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb006_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb006_1.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\localkeyid.der"-"c:\tpkcs12intg\data\localkeyid.der"
-
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\friendlyname_ct001.der"-"c:\tpkcs12intg\data\friendlyname_ct001.der"
-"\epoc32\winscw\c\tpkcs12intg\data\localkeyid_ct001.der"-"c:\tpkcs12intg\data\localkeyid_ct001.der"
-"\epoc32\winscw\c\tpkcs12intg\data\sdsicert.der"-"c:\tpkcs12intg\data\sdsicert.der"
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\friendlyname.der"-"c:\tpkcs12intg\data\friendlyname.der"
-"\epoc32\winscw\c\tpkcs12intg\data\localkeyid_cert.der"-"c:\tpkcs12intg\data\localkeyid_cert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\localkeyid_im002.der"-"c:\tpkcs12intg\data\localkeyid_im002.der"
-"\epoc32\winscw\c\tpkcs12intg\data\friendlyname_im002.der"-"c:\tpkcs12intg\data\friendlyname_im002.der"
-"\epoc32\winscw\c\tpkcs12intg\data\localkeyid_shrouded.der"-"c:\tpkcs12intg\data\localkeyid_shrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb002_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb002_1.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb002_2.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb002_2.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb003_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb003_1.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_firstkey.der"-"c:\tpkcs12intg\data\cb004_localkeyid_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_firstkey.der"-"c:\tpkcs12intg\data\cb004_friendlyname_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_firstcert.der"-"c:\tpkcs12intg\data\cb004_localkeyid_firstcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_firstcert.der"-"c:\tpkcs12intg\data\cb004_friendlyname_firstcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb004_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb004_1.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_firstshrouded.der"-"c:\tpkcs12intg\data\cb004_localkeyid_firstshrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_firstshrouded.der"-"c:\tpkcs12intg\data\cb004_friendlyname_firstshrouded.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_secondkey.der"-"c:\tpkcs12intg\data\cb004_localkeyid_secondkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_secondkey.der"-"c:\tpkcs12intg\data\cb004_friendlyname_secondkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_secondcert.der"-"c:\tpkcs12intg\data\cb004_localkeyid_secondcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_secondcert.der"-"c:\tpkcs12intg\data\cb004_friendlyname_secondcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb004_2.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb004_2.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_localkeyid_secondshrouded.der"-"c:\tpkcs12intg\data\cb004_localkeyid_secondshrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_friendlyname_secondshrouded.der"-"c:\tpkcs12intg\data\cb004_friendlyname_secondshrouded.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_firstkey.der"-"c:\tpkcs12intg\data\cb005_localkeyid_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_firstkey.der"-"c:\tpkcs12intg\data\cb005_friendlyname_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_firstcertbag.der"-"c:\tpkcs12intg\data\cb005_localkeyid_firstcertbag.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_firstcertbag.der"-"c:\tpkcs12intg\data\cb005_friendlyname_firstcertbag.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb005_1.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb005_1.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_firstshrouded.der"-"c:\tpkcs12intg\data\cb005_localkeyid_firstshrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_firstshrouded.der"-"c:\tpkcs12intg\data\cb005_friendlyname_firstshrouded.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_secondkey.der"-"c:\tpkcs12intg\data\cb005_localkeyid_secondkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_secondkey.der"-"c:\tpkcs12intg\data\cb005_friendlyname_secondkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_secondcert.der"-"c:\tpkcs12intg\data\cb005_localkeyid_secondcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_secondcert.der"-"c:\tpkcs12intg\data\cb005_friendlyname_secondcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_cb005_2.der"-"c:\tpkcs12intg\data\safebag_shrouded_cb005_2.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_localkeyid_secondshrouded.der"-"c:\tpkcs12intg\data\cb005_localkeyid_secondshrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_friendlyname_secondshrouded.der"-"c:\tpkcs12intg\data\cb005_friendlyname_secondshrouded.der"
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_localkeyid_firstkey.der"-"c:\tpkcs12intg\data\cb006_localkeyid_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_friendlyname_firstkey.der"-"c:\tpkcs12intg\data\cb006_friendlyname_firstkey.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_localkeyid_firstcert.der"-"c:\tpkcs12intg\data\cb006_localkeyid_firstcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_friendlyname_firstcert.der"-"c:\tpkcs12intg\data\cb006_friendlyname_firstcert.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_localkeyid_firstshrouded.der"-"c:\tpkcs12intg\data\cb006_localkeyid_firstshrouded.der"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_friendlyname_firstshrouded.der"-"c:\tpkcs12intg\data\cb006_friendlyname_firstshrouded.der"
-
-
-
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm001.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm001.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm002.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm002.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm003.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm003.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm004.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm004.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm005.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm005.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm006.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm006.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm007.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm007.der"
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm008.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm008.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\safebag_shrouded_pm010.der"-"c:\tpkcs12intg\data\safebag_shrouded_pm010.der"
-
-"\epoc32\winscw\c\tpkcs12intg\data\safebag.der"-"c:\tpkcs12intg\data\safebag.der"
-
-// Negative Test
-"\epoc32\winscw\c\tpkcs12intg\data\attrvalchangedfriendlyname"-"c:\tpkcs12intg\data\attrvalchangedfriendlyname"	
-"\epoc32\winscw\c\tpkcs12intg\data\attrvalchangedlocalkeyid"-"c:\tpkcs12intg\data\attrvalchangedlocalkeyid"	
-"\epoc32\winscw\c\tpkcs12intg\data\digestchangedmac.der"-"c:\tpkcs12intg\data\digestchangedmac.der"		
-"\epoc32\winscw\c\tpkcs12intg\data\digestchangedmacsalt.der"-"c:\tpkcs12intg\data\digestchangedmacsalt.der"	
-
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb001_mac"-"c:\tpkcs12intg\data\cb001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb001_macsalt"-"c:\tpkcs12intg\data\cb001_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb002_mac"-"c:\tpkcs12intg\data\cb002_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb002_macsalt"-"c:\tpkcs12intg\data\cb002_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb003_mac"-"c:\tpkcs12intg\data\cb003_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb003_macsalt"-"c:\tpkcs12intg\data\cb003_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_mac"-"c:\tpkcs12intg\data\cb004_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb004_macsalt"-"c:\tpkcs12intg\data\cb004_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_mac"-"c:\tpkcs12intg\data\cb005_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb005_macsalt"-"c:\tpkcs12intg\data\cb005_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_mac"-"c:\tpkcs12intg\data\cb006_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\cb006_macsalt"-"c:\tpkcs12intg\data\cb006_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\im001_mac"-"c:\tpkcs12intg\data\im001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\im001_macsalt"-"c:\tpkcs12intg\data\im001_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\im002_mac"-"c:\tpkcs12intg\data\im002_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\im002_macsalt"-"c:\tpkcs12intg\data\im002_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm001_mac"-"c:\tpkcs12intg\data\pm001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm001_macsalt"-"c:\tpkcs12intg\data\pm001_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm003_mac"-"c:\tpkcs12intg\data\pm003_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm003_macsalt"-"c:\tpkcs12intg\data\pm003_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm002_mac"-"c:\tpkcs12intg\data\pm002_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm002_macsalt"-"c:\tpkcs12intg\data\pm002_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm004_mac"-"c:\tpkcs12intg\data\pm004_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm004_macsalt"-"c:\tpkcs12intg\data\pm004_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm005_mac"-"c:\tpkcs12intg\data\pm005_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm005_macsalt"-"c:\tpkcs12intg\data\pm005_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm006_mac"-"c:\tpkcs12intg\data\pm006_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm006_macsalt"-"c:\tpkcs12intg\data\pm006_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm007_mac"-"c:\tpkcs12intg\data\pm007_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm007_macsalt"-"c:\tpkcs12intg\data\pm007_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm008_mac"-"c:\tpkcs12intg\data\pm008_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm008_macsalt"-"c:\tpkcs12intg\data\pm008_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\pm010_mac"-"c:\tpkcs12intg\data\pm010_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\pm010_macsalt"-"c:\tpkcs12intg\data\pm010_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\sb001_mac"-"c:\tpkcs12intg\data\sb001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\sb001_macsalt"-"c:\tpkcs12intg\data\sb001_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\sb002_mac"-"c:\tpkcs12intg\data\sb002_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\sb002_macsalt"-"c:\tpkcs12intg\data\sb002_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\sb003_mac"-"c:\tpkcs12intg\data\sb003_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\sb003_macsalt"-"c:\tpkcs12intg\data\sb003_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\ci001_mac"-"c:\tpkcs12intg\data\ci001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\ci001_macsalt"-"c:\tpkcs12intg\data\ci001_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\ci002_mac"-"c:\tpkcs12intg\data\ci002_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\ci002_macsalt"-"c:\tpkcs12intg\data\ci002_macsalt"
-
-"\epoc32\winscw\c\tpkcs12intg\data\ct001_mac"-"c:\tpkcs12intg\data\ct001_mac"
-"\epoc32\winscw\c\tpkcs12intg\data\ct001_macsalt"-"c:\tpkcs12intg\data\ct001_macsalt"
-
--- a/cryptomgmtlibs/securitytestfw/group/ocsptests.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,164 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"Ocsp Tests"}, (0x101FB3E5), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"Ocsp integration test"
-
-
-"\epoc32\winscw\c\system\tocsp\scripts\Valicert.txt"-"c:\system\TOCSP\scripts\Valicert.txt
-"\epoc32\winscw\c\system\tocsp\scripts\CertCo.txt"-"c:\system\TOCSP\scripts\CertCo.txt
-
-
-//OCSP tests TMS support
-
-"\epoc32\winscw\c\system\TOCSP\scripts\openssl.script"-"c:\system\TOCSP\scripts\openssl.script1"
-"\epoc32\winscw\c\system\tocsp\scripts\XCert-local.script"-"c:\system\TOCSP\scripts\XCert-local.script1"
-"\epoc32\winscw\c\system\tocsp\scripts\XCert-oom.script"-"c:\system\TOCSP\scripts\XCert-oom.script1"
-"\epoc32\winscw\c\system\tocsp\scripts\OpenSSL-local.script"-"c:\system\TOCSP\scripts\OpenSSL-local.script1"
-
-
-"\epoc32\winscw\c\system\tocsp\scripts\Error.script"-"c:\system\TOCSP\scripts\Error.script1"
-"\epoc32\winscw\c\system\tocsp\scripts\defaultpolicy.script"-"c:\system\TOCSP\scripts\defaultpolicy.script1"
-"\epoc32\winscw\c\system\tocsp\scripts\httpinterface.script"-"c:\system\tocsp\scripts\httpinterface.script1"
-
-"\epoc32\winscw\c\system\TOCSP\scripts\openssl.ini"-"c:\system\TOCSP\scripts\openssl.ini"
-"\epoc32\winscw\c\system\tocsp\scripts\XCert-local.ini"-"c:\system\TOCSP\scripts\XCert-local.ini"
-"\epoc32\winscw\c\system\tocsp\scripts\XCert-oom.ini"-"c:\system\TOCSP\scripts\XCert-oom.ini"
-"\epoc32\winscw\c\system\tocsp\scripts\OpenSSL-local.ini"-"c:\system\TOCSP\scripts\OpenSSL-local.ini"
-
-
-"\epoc32\winscw\c\system\tocsp\scripts\Error.ini"-"c:\system\TOCSP\scripts\Error.ini"
-"\epoc32\winscw\c\system\tocsp\scripts\defaultpolicy.ini"-"c:\system\TOCSP\scripts\defaultpolicy.ini"
-"\epoc32\winscw\c\system\tocsp\scripts\httpinterface.ini"-"c:\system\tocsp\scripts\httpinterface.ini"
-
-//
-"\epoc32\winscw\c\system\tocsp\responses\response.n1"-"c:\system\TOCSP\responses\response.n1"
-"\epoc32\winscw\c\system\tocsp\responses\response.n2"-"c:\system\TOCSP\responses\response.n2"
-
-"\epoc32\winscw\c\system\tocsp\responses\response.000"-"c:\system\TOCSP\responses\response.000"
-"\epoc32\winscw\c\system\tocsp\responses\response.001"-"c:\system\TOCSP\responses\response.001"
-"\epoc32\winscw\c\system\tocsp\responses\response.002"-"c:\system\TOCSP\responses\response.002"
-"\epoc32\winscw\c\system\tocsp\responses\response.003"-"c:\system\TOCSP\responses\response.003"
-"\epoc32\winscw\c\system\tocsp\responses\response.004"-"c:\system\TOCSP\responses\response.004"
-"\epoc32\winscw\c\system\tocsp\responses\response.005"-"c:\system\TOCSP\responses\response.005"
-"\epoc32\winscw\c\system\tocsp\responses\response.006"-"c:\system\TOCSP\responses\response.006"
-"\epoc32\winscw\c\system\tocsp\responses\response.007"-"c:\system\TOCSP\responses\response.007"
-"\epoc32\winscw\c\system\tocsp\responses\response.008"-"c:\system\TOCSP\responses\response.008"
-"\epoc32\winscw\c\system\tocsp\responses\response.009"-"c:\system\TOCSP\responses\response.009"
-"\epoc32\winscw\c\system\tocsp\responses\response.010"-"c:\system\TOCSP\responses\response.010"
-"\epoc32\winscw\c\system\tocsp\responses\response.011"-"c:\system\TOCSP\responses\response.011"
-"\epoc32\winscw\c\system\tocsp\responses\response.012"-"c:\system\TOCSP\responses\response.012"
-"\epoc32\winscw\c\system\tocsp\responses\response.013"-"c:\system\TOCSP\responses\response.013"
-"\epoc32\winscw\c\system\tocsp\responses\response.014"-"c:\system\TOCSP\responses\response.014"
-"\epoc32\winscw\c\system\tocsp\responses\response.015"-"c:\system\TOCSP\responses\response.015"
-"\epoc32\winscw\c\system\tocsp\responses\response.016"-"c:\system\TOCSP\responses\response.016"
-"\epoc32\winscw\c\system\tocsp\responses\response.018"-"c:\system\TOCSP\responses\response.018"
-"\epoc32\winscw\c\system\tocsp\responses\vs_explicit_version.dat"-"c:\system\TOCSP\responses\vs_explicit_version.dat"
-"\epoc32\winscw\c\system\tocsp\responses\response.019"-"c:\system\TOCSP\responses\response.019"
-"\epoc32\winscw\c\system\tocsp\responses\response.020"-"c:\system\TOCSP\responses\response.020"
-"\epoc32\winscw\c\system\tocsp\responses\response.021"-"c:\system\TOCSP\responses\response.021"
-"\epoc32\winscw\c\system\tocsp\responses\response.022"-"c:\system\TOCSP\responses\response.022"
-"\epoc32\winscw\c\system\tocsp\responses\response.023"-"c:\system\TOCSP\responses\response.023"
-"\epoc32\winscw\c\system\tocsp\responses\response.024"-"c:\system\TOCSP\responses\response.024"
-"\epoc32\winscw\c\system\tocsp\responses\response.025"-"c:\system\TOCSP\responses\response.025"
-"\epoc32\winscw\c\system\tocsp\responses\response.026"-"c:\system\TOCSP\responses\response.026"
-"\epoc32\winscw\c\system\tocsp\responses\response.027"-"c:\system\TOCSP\responses\response.027"
-"\epoc32\winscw\c\system\tocsp\responses\response.028"-"c:\system\TOCSP\responses\response.028"
-"\epoc32\winscw\c\system\tocsp\responses\response.029"-"c:\system\TOCSP\responses\response.029"
-"\epoc32\winscw\c\system\tocsp\responses\response.030"-"c:\system\TOCSP\responses\response.030"
-"\epoc32\winscw\c\system\tocsp\responses\response.031"-"c:\system\TOCSP\responses\response.031"
-"\epoc32\winscw\c\system\tocsp\responses\response.032"-"c:\system\TOCSP\responses\response.032"
-"\epoc32\winscw\c\system\tocsp\responses\response.033"-"c:\system\TOCSP\responses\response.033"
-"\epoc32\winscw\c\system\tocsp\responses\response.034"-"c:\system\TOCSP\responses\response.034"
-"\epoc32\winscw\c\system\tocsp\responses\response.035"-"c:\system\TOCSP\responses\response.035"
-
-"\epoc32\winscw\c\system\tocsp\responses\XCert_00_Good_RSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_00_Good_RSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_01_Revoked_RSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_01_Revoked_RSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_02_Suspended_RSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_02_Suspended_RSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_03_Unknown_RSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_03_Unknown_RSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_04_Good_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_04_Good_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_05_Revoked_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_05_Revoked_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_06_Suspended_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_06_Suspended_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_07_Unknown_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_07_Unknown_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_08_All_RSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_08_All_RSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_09_All_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_09_All_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_10_Expired_Subject_and_Issuer.rsp"-"c:\system\TOCSP\responses\XCert_10_Expired_Subject_and_Issuer.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_11_Expired_Signing.rsp"-"c:\system\TOCSP\responses\XCert_11_Expired_Signing.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_12_Expired_Subject.rsp"-"c:\system\TOCSP\responses\XCert_12_Expired_Subject.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_14_Expired_subject_valid_time.rsp"-"c:\system\TOCSP\responses\XCert_14_Expired_subject_valid_time.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_15_Expired_unspecified.rsp"-"c:\system\TOCSP\responses\XCert_15_Expired_unspecified.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_16_ThisUpdateTooEarly.rsp"-"c:\system\TOCSP\responses\XCert_16_ThisUpdateTooEarly.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_20_Nonce_Off.rsp"-"c:\system\TOCSP\responses\XCert_20_Nonce_Off.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_22_BadSig_DSA_XCert.rsp"-"c:\system\TOCSP\responses\XCert_22_BadSig_DSA_XCert.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_23_ResultCombination1.rsp"-"c:\system\TOCSP\responses\XCert_23_ResultCombination1.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_24_ResultCombination2.rsp"-"c:\system\TOCSP\responses\XCert_24_ResultCombination2.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_25_ResultCombination3.rsp"-"c:\system\TOCSP\responses\XCert_25_ResultCombination3.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\XCert_26_ResultCombination4.rsp"-"c:\system\TOCSP\responses\XCert_26_ResultCombination4.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\Error_00_Single_R5.rsp"-"c:\system\TOCSP\responses\Error_00_Single_R5.rsp"
-"\epoc32\winscw\c\system\tocsp\responses\Error_01_Double_R5.rsp"-"c:\system\TOCSP\responses\Error_01_Double_R5.rsp"
-
-"\epoc32\winscw\c\system\tocsp\responses\ca_1ext_usage_not_ocspsigning_resp.dat"-"c:\system\TOCSP\responses\ca_1ext_usage_not_ocspsigning_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_2ext_usage_not_ocspsigning_resp.dat"-"c:\system\TOCSP\responses\ca_2ext_usage_not_ocspsigning_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_2ext_usage_ocspsigning_bad_sign_resp.dat"-"c:\system\TOCSP\responses\ca_2ext_usage_ocspsigning_bad_sign_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_2ext_usage_ocspsigning_bad_name_resp.dat"-"c:\system\TOCSP\responses\ca_2ext_usage_ocspsigning_bad_name_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_2ext_usage_ocspsigning_resp.dat"-"c:\system\TOCSP\responses\ca_2ext_usage_ocspsigning_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_no_ext_usage_resp.dat"-"c:\system\TOCSP\responses\ca_no_ext_usage_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\multi_cert_resp.dat"-"c:\system\TOCSP\responses\multi_cert_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\no_cert_resp.dat"-"c:\system\TOCSP\responses\no_cert_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\multiple_response.dat"-"c:\system\TOCSP\responses\multiple_response.dat"
-"\epoc32\winscw\c\system\tocsp\responses\wrong_ca_cert_resp.dat"-"c:\system\TOCSP\responses\wrong_ca_cert_resp.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_delg_wrong_key.dat"-"c:\system\TOCSP\responses\ca_delg_wrong_key.dat"
-
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_good_wrong_key.dat"-"c:\system\TOCSP\responses\ca_direct_good_wrong_key.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_multi_cert_inc_right.dat"-"c:\system\TOCSP\responses\ca_direct_multi_cert_inc_right.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_multi_cert_no_right.dat"-"c:\system\TOCSP\responses\ca_direct_multi_cert_no_right.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_revoked.dat"-"c:\system\TOCSP\responses\ca_direct_revoked.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_wrong_cert.dat"-"c:\system\TOCSP\responses\ca_direct_wrong_cert.dat"
-"\epoc32\winscw\c\system\tocsp\responses\ca_direct_wrong_resp_name.dat"-"c:\system\TOCSP\responses\ca_direct_wrong_resp_name.dat"
-"\epoc32\winscw\c\system\tocsp\responses\no_certresp_signedby_delegate.dat"-"c:\system\TOCSP\responses\no_certresp_signedby_delegate.dat"
-
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response01.dat"-"c:\system\TOCSP\responses\OpenSSL\response01.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response02.dat"-"c:\system\TOCSP\responses\OpenSSL\response02.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response03.dat"-"c:\system\TOCSP\responses\OpenSSL\response03.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response04.dat"-"c:\system\TOCSP\responses\OpenSSL\response04.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response05.dat"-"c:\system\TOCSP\responses\OpenSSL\response05.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response06.dat"-"c:\system\TOCSP\responses\OpenSSL\response06.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response07.dat"-"c:\system\TOCSP\responses\OpenSSL\response07.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response08.dat"-"c:\system\TOCSP\responses\OpenSSL\response08.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response09.dat"-"c:\system\TOCSP\responses\OpenSSL\response09.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response10.dat"-"c:\system\TOCSP\responses\OpenSSL\response10.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response11.dat"-"c:\system\TOCSP\responses\OpenSSL\response11.dat"
-"\epoc32\winscw\c\system\tocsp\responses\OpenSSL\response12.dat"-"c:\system\TOCSP\responses\OpenSSL\response12.dat"
-
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request01.dat"-"c:\system\TOCSP\requests\OpenSSL\request01.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request02.dat"-"c:\system\TOCSP\requests\OpenSSL\request02.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request03.dat"-"c:\system\TOCSP\requests\OpenSSL\request03.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request04.dat"-"c:\system\TOCSP\requests\OpenSSL\request04.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request05.dat"-"c:\system\TOCSP\requests\OpenSSL\request05.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request06.dat"-"c:\system\TOCSP\requests\OpenSSL\request06.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request07.dat"-"c:\system\TOCSP\requests\OpenSSL\request07.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request08.dat"-"c:\system\TOCSP\requests\OpenSSL\request08.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request09.dat"-"c:\system\TOCSP\requests\OpenSSL\request09.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request10.dat"-"c:\system\TOCSP\requests\OpenSSL\request10.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request11.dat"-"c:\system\TOCSP\requests\OpenSSL\request11.dat"
-"\epoc32\winscw\c\system\tocsp\requests\OpenSSL\request12.dat"-"c:\system\TOCSP\requests\OpenSSL\request12.dat"
-"\epoc32\winscw\c\system\tocsp\responses\openssl\no_aia_no_ocspext.dat"-"c:\system\TOCSP\responses\openssl\no_aia_no_ocspext.dat"
-
-
--- a/cryptomgmtlibs/securitytestfw/group/recog.pkg	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-;
-; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of the License "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description: 
-;
-&EN
-
-;Header
-#{"recog Tests"}, (0x101FB3E1), 1, 2, 3, TYPE=SA
-
-%{"Nokia ATS Test"}
-:"recog integration test"
-
-
-
-; trecog cert exports
-"\epoc32\winscw\c\trecog\trecogcert.ini"-"c:\trecog\trecogcert.ini"
-"\epoc32\winscw\c\trecog\trecogcert.script"-"c:\trecog\trecogcert.script"
-"\epoc32\winscw\c\trecog\ca.der"-"c:\trecog\ca.der"
-"\epoc32\winscw\c\trecog\user.der"-"c:\trecog\user.der"
-"\epoc32\winscw\c\trecog\wtls.cer"-"c:\trecog\wtls.cer"
-"\epoc32\winscw\c\trecog\x509v1.cer"-"c:\trecog\x509v1.cer"
-"\epoc32\winscw\c\trecog\noversion.cer"-"c:\trecog\noversion.cer"
-"\epoc32\winscw\c\trecog\serialnumberlengthFF.der"-"c:\trecog\serialnumberlengthFF.der"
-"\epoc32\winscw\c\trecog\longserialnumber.der"-"c:\trecog\longserialnumber.der"
-
-
-
-"\epoc32\winscw\c\trecog\trecogpkcs12.ini"-"c:\trecog\trecogpkcs12.ini"
-"\epoc32\winscw\c\trecog\trecogpkcs12.script"-"c:\trecog\trecogpkcs12.script"
-"\epoc32\winscw\c\trecog\pkcs12simple.p12"-"c:\trecog\pkcs12simple.p12"
-"\epoc32\winscw\c\trecog\pkcs12simple.pfx"-"c:\trecog\pkcs12simple.pfx"
-"\epoc32\winscw\c\trecog\pkcs12simple.xyz"-"c:\trecog\pkcs12simple.xyz"
-"\epoc32\winscw\c\trecog\root5ca_key.pk8"-"c:\trecog\root5ca_key.pk8"
-"\epoc32\winscw\c\trecog\small.txt"-"c:\trecog\small.txt"
-
-
-
-
-
-
--- a/cryptomgmtlibs/securitytestfw/group/t_testhandler2.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/group/t_testhandler2.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -34,10 +34,6 @@
 USERINCLUDE ../inc
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
 
-#ifdef SYMBIAN_AUTH_SERVER
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(authserver)
-#endif
-
 SOURCEPATH	../test/testhandler2
 
 SOURCE t_testhandler.cpp
--- a/cryptomgmtlibs/securitytestfw/inc/SecurityTests.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/inc/SecurityTests.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -21,11 +21,9 @@
 // We need bigger ROFS files for tests with TBAS
 rofssize=0x2100000
 
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
 // Save build details in ROM
 data=\buildid.txt                 \buildid.txt
-#endif
+
 
 // This should be included in the Techview.oby file
 // All test data and scripts gets copied to the root of ROM drive.
@@ -49,7 +47,9 @@
 
 #include "securityframeworktestserver.iby"
 
+
 #if defined SYMBIAN_KEYSTORE_USE_AUTH_SERVER || defined SDP_ROM1
+
 	#include "ups.iby"
 	#include "tups.iby"
 	#include "asnpkcstests.iby"
@@ -57,28 +57,7 @@
 	#include "tpkcs7server.iby"     
 	#include "tpkcs12integrationserver.iby"  	
 	#include "ctframeworktests.iby"
-	// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-	// temp added
-	#ifndef _SERIAL_DOWNLOAD
-		#include "streamingcaf.iby"
-		// iby files for caf
-		#include "caf.iby"
-		#include "caftest.iby"
-		#include "reccafconfig.iby"
-		#include "rta.iby"
-		#include "rtatest.iby"
-		#include "cryptotests.iby"
-		#include "tscaf.iby"	
-		#include "randomtests.iby"
-		#include "hashtests.iby"
-
-		#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		#include "mtputils.iby"
-		#include "mtputilstest.iby"
-		#include "refcafhelper.iby"
-		#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	#endif
-
+	#include "cryptotests.iby"
 #else
 	#include "streamingcaf.iby"
 	// iby files for caf
@@ -97,19 +76,9 @@
 	#include "mtputilstest.iby"
 	#include "refcafhelper.iby"
 	#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-	// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-	// temp added
-	#ifndef _SERIAL_DOWNLOAD
-		#include "ups.iby"
-		#include "tups.iby"
-		#include "asnpkcstests.iby"
-		#include "certmantests.iby"
-		#include "tpkcs7server.iby"     
-		#include "tpkcs12integrationserver.iby"  	
-		#include "ctframeworktests.iby"		
-	#endif 
 
-#endif 
+#endif
+ 
 	
 // Common utils libraries
 #include "securitycommonutils.iby"
@@ -130,10 +99,6 @@
 define ZDRIVE \epoc32\winscw\c
 // This is the bat file to run the security tests automatically
 // comms configuration (and configuration using sim.tsy)
-// temp addeed the next line
-#ifndef _SERIAL_DOWNLOAD
-data = ZDRIVE\auto.cfg                 \buildid.txt
-#endif
 data = ZDRIVE\auto.cfg					\auto.cfg
 data = ZDRIVE\auto_broken.cfg					\auto_broken.cfg
 data = ZDRIVE\autosimtsy.cfg					\autosimtsy.cfg
@@ -161,33 +126,35 @@
 #endif
 
 
-
 #ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 	data = ZDRIVE\autohardware\runcrypto_wmdrm.bat	               	\runcrypto.bat
 #else
-	data = ZDRIVE\autohardware\runcrypto.bat	               	\runcrypto.bat
+	#ifdef __SECURITY_MANDATORY_SWICERTSTORE__
+		data = ZDRIVE\autohardware\runhardwarecrypto.bat				\runcrypto.bat
+	#else
+		data = ZDRIVE\autohardware\runcrypto.bat	               	\runcrypto.bat
+	#endif
 #endif
 
 
-
 data = ZDRIVE\autohardware\testsecurityperformance_cryptalg.bat	\testsecurityperformance_cryptalg.bat
 data = ZDRIVE\autohardware\testsecurityperformance_crypto.bat	\testsecurityperformance_crypto.bat
 
 #ifdef SYMBIAN_AUTH_SERVER
-#ifdef SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS
-	data = ZDRIVE\autohardware\runauthtests_macroenabled.bat		\runauthtests.bat
-#else
-	data = ZDRIVE\autohardware\runauthtests.bat				\runauthtests.bat
-#endif	//SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	data = ZDRIVE\autohardware\runfiletokens_useauth.bat		\runfiletokens.bat
-#else
-	#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-		data = ZDRIVE\autohardware\runfiletokens_disableauth_with_wmdrm.bat		\runfiletokens.bat
+	#ifdef SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS
+		data = ZDRIVE\autohardware\runauthtests_macroenabled.bat		\runauthtests.bat
 	#else
-		data = ZDRIVE\autohardware\runfiletokens_disableauth.bat		\runfiletokens.bat
-	#endif
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+		data = ZDRIVE\autohardware\runauthtests.bat				\runauthtests.bat
+	#endif	//SYMBIAN_ENABLE_POST_MARKET_AUTHENTICATION_PLUGINS
+	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+		data = ZDRIVE\autohardware\runfiletokens_useauth.bat		\runfiletokens.bat
+	#else
+		#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
+			data = ZDRIVE\autohardware\runfiletokens_disableauth_with_wmdrm.bat		\runfiletokens.bat
+		#else
+			data = ZDRIVE\autohardware\runfiletokens_disableauth.bat		\runfiletokens.bat
+		#endif
+	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 #else
 	data = ZDRIVE\autohardware\runfiletokens.bat		\runfiletokens.bat
 #endif // SYMBIAN_AUTH_SERVER
@@ -231,10 +198,7 @@
 
 file=ABI_DIR\BUILD_DIR\RUNTESTS.EXE                 System\Programs\RUNTESTS.EXE
 
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
 #include "thindump.iby"
-#endif
 #include "sntpclient.iby"
 
 // *** Additional includes and configuration for SSM Requirements ***
--- a/cryptomgmtlibs/securitytestfw/inc/cryptodeps.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/inc/cryptodeps.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -24,9 +24,6 @@
 #include "paddingtests.iby"
 #ifdef SYMBIAN_CRYPTOSPI
 #include "tcryptospi.iby"
-
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
 #include "cryptospi_testplugins.iby"
 	
 // Proof of concept KMS (Key Management Server)
@@ -48,9 +45,8 @@
 file=ABI_DIR\BUILD_DIR\kmsclient.dll		sys\bin\kmsclient.dll
 
 file=ABI_DIR\BUILD_DIR\kmstest.exe			sys\bin\kmstest.exe
-#endif
+
 file=ABI_DIR\BUILD_DIR\tsymmetric.exe	System\Programs\tsymmetric.exe
 file=ABI_DIR\BUILD_DIR\tasymmetric.exe	System\Programs\tasymmetric.exe
 file=ABI_DIR\BUILD_DIR\tbigint.exe	System\Programs\tbigint.exe
 #endif
-
--- a/cryptomgmtlibs/securitytestfw/test/autotesting/runcrypto_wmdrm.bat	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/autotesting/runcrypto_wmdrm.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -13,6 +13,9 @@
 @rem
 @rem Description: 
 @rem
+temb
+move c:\temblog.txt c:\testresults\
+move c:\testresults\temblog.txt e:\testresults\temblog.txt
 
 REM hash
 copy /s z:\thash\ c:\thash\
--- a/cryptomgmtlibs/securitytestfw/test/autotesting/sdp_bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/autotesting/sdp_bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -53,25 +53,15 @@
 #include "os/security/securityanddataprivacytools/securityconfig/group/bld.inf"
 #include "os/security/cryptomgmtlibs/securitytestfw/group/bld.inf"
 #include "os/security/contentmgmt/cafrecogniserconfig/bld.inf"
-
 #include "os/security/contentmgmt/contentaccessfwfordrm/group/bld.inf"
 #include "os/security/contentmgmt/cafstreamingsupport/group/bld.inf"
 #include "os/security/contentmgmt/referencedrmagent/RefTestAgent/group/bld.inf"
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-#include "os/security/contentmgmt/mtputils/group/bld.inf"
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 #include "os/security/authorisation/userpromptservice/group/bld.inf"
 #include "os/security/authorisation/userpromptutils/group/bld.inf"
 
 
-//Test certificates temp added will be removed once filtered good certificates
-#include "os/security/cryptomgmtlibs/securitydocs/doxygen_docs/noncontributed/testcertificates/group/bld.inf"
-
-#ifdef SYMBIAN_AUTH_SERVER
-#include "os/security/authenticationservices/authenticationserver/group/bld.inf"
-#endif
 
 #endif //TOOLS2
 
--- a/cryptomgmtlibs/securitytestfw/test/autotesting/test_launcher.pl	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/autotesting/test_launcher.pl	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
+# Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
 # All rights reserved.
 # This component and the accompanying materials are made available
 # under the terms of the License "Eclipse Public License v1.0"
@@ -25,7 +25,7 @@
 # 6. Run or modify the relevant wrapper batch file for your component, which will be stored in the root of the test directory.
 # Components Summary
 # This script works fine with the following components: Asnpkcs, Caf2, Certman, Common, Crypto, Cryptospi, CryptoTokens,
-# FileTokens, Sistools, Streamingcaf, Swi, Switools, Ups. Other components must be tested and therefore 
+# FileTokens, Sistools, Streamingcaf, Swi, Switools, Tlsprovider, Ups. Other components must be tested and therefore 
 # further extensions may be needed.
 #
 
--- a/cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_auth.bat	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_auth.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -45,8 +45,6 @@
 testexecute z:\trecog\trecogpkcs12.script
 move c:\logs\testexecute\trecogpkcs12.htm e:\testresults\trecogpkcs12.htm
 
-REM Test the hardware crypto library
-runcrypto.bat
 
 runupstests.bat
 
--- a/cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_newrom.bat	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/autotesting/testsecurity_sdp_newrom.bat	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 @rem
-@rem Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 @rem All rights reserved.
 @rem This component and the accompanying materials are made available
 @rem under the terms of the License "Eclipse Public License v1.0"
@@ -45,6 +45,8 @@
 
 runcryptotokens.bat
 
+runtlsprovider.bat
+
 runcertman.bat
 
 
--- a/cryptomgmtlibs/securitytestfw/test/testhandler2/tScriptSetup.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/testhandler2/tScriptSetup.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -206,7 +206,7 @@
 		else
 			{
 			TPtr scriptFileNameDes = iScriptPath->Des();
-			if (scriptFileNameDes.Right(8) == _L(".script1"))
+			if (scriptFileNameDes.Right(7) == _L(".script"))
 				{
 				iTefScript = ETrue;
 				}
--- a/cryptomgmtlibs/securitytestfw/test/testhandler2/t_tefinput.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/test/testhandler2/t_tefinput.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -22,9 +22,6 @@
 #include <securityerr.h>
 #include <keystore_errs.h>
 
-#ifdef SYMBIAN_AUTH_SERVER
-#include <auth_srv_errs.h>
-#endif
 
 _LIT8(KSpace, " ");
 _LIT8(KTab, "\t");
@@ -575,83 +572,6 @@
 			{
 			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthenticationFailure</return>"));
 			}
-
-#ifdef SYMBIAN_AUTH_SERVER
-	else if(aErrCode == KErrAuthServUnsupportedExprVersion)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServUnsupportedExprVersion</return>"));
-			}
-	else if(aErrCode == KErrAuthServNoSuchPlugin)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServNoSuchPlugin</return>"));
-			}
-	else if(aErrCode == KErrAuthServNoSuchIdentity)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServNoSuchIdentity</return>"));
-			}
-	else if(aErrCode == KErrAuthServPluginCancelled)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServPluginCancelled</return>"));
-			}
-	else if(aErrCode == KErrAuthServPluginQuit)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServPluginQuit</return>"));
-			}
-	else if(aErrCode == KErrAuthServAuthenticationRequired)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServAuthenticationRequired</return>"));
-			}
-	else if(aErrCode == KErrAuthServIdentityAlreadyExists)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServIdentityAlreadyExists</return>"));
-			}
-	else if(aErrCode == KErrAuthServIdentityNotFound)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServIdentityNotFound</return>"));
-			}
-	else if(aErrCode == KErrAuthServTrainingNotFound)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServTrainingNotFound</return>"));
-			}
-	else if(aErrCode == KErrAuthServRegistrationFailed)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServRegistrationFailed</return>"));
-			}
-	else if(aErrCode == KErrAuthServCanNotRemoveLastIdentity)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServCanNotRemoveLastIdentity</return>"));
-			}
-	else if(aErrCode == KErrAuthServCanNotRemoveLastPlugin)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServCanNotRemoveLastPlugin</return>"));
-			}
-	else if(aErrCode == KErrAuthServPluginNotActive)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServPluginNotActive</return>"));
-			}
-	else if(aErrCode == KErrAuthServDescTooLong)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServDescTooLong</return>"));
-			}
-	else if(aErrCode == KErrUnknownAuthStrengthAlias)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrUnknownAuthStrengthAlias</return>"));
-			}
-	else if(aErrCode == KErrAuthStrengthAliasNotDefined)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthStrengthAliasNotDefined</return>"));
-			}
-	else if(aErrCode == KErrAuthServInvalidAliasStringExpression)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServInvalidAliasStringExpression/return>"));
-			}
-	else if(aErrCode == KErrAuthServResetMayLoseIdentity)
-			{
-			aReturnTag.Copy(_L8("\r\n\t\t<return>KErrAuthServResetMayLoseIdentity/return>"));
-			}
-#endif
-
-
 //	
 	
 	return err;
Binary file cryptomgmtlibs/securitytestfw/testcertificates/certman/tcertstore/tdata/selfsignedcertificate.der has changed
--- a/cryptomgmtlibs/securitytestfw/testcertificates/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptomgmtlibs/securitytestfw/testcertificates/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -28,6 +28,7 @@
 
 // Certman Component
 ../certman/tcertstore/tdata/subjectkeycert.der		/epoc32/winscw/c/unifiedcertstore2/subjectkeycert.der
+../certman/tcertstore/tdata/SelfSignedCertificate.der	/epoc32/winscw/c/tcertstore/data/SelfSignedCertificate.der
 ../certman/tcertstore/unifiedcertstore2/URL1K1.cer	/epoc32/winscw/c/unifiedcertstore2/url1k1.cer
 ../certman/tcertstore/unifiedcertstore2/URL2K2.cer	/epoc32/winscw/c/unifiedcertstore2/url2k2.cer
 ../certman/tcertstore/unifiedcertstore2/URL3K5.cer	/epoc32/winscw/c/unifiedcertstore2/url3k5.cer
--- a/cryptoplugins/cryptospiplugins/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoplugins/cryptospiplugins/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -22,9 +22,6 @@
 */
 
 #include "../test/h4drv/bld.inf"
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-#include "../test/dummyecchwplugin/group/bld.inf"
-#endif
 
 PRJ_PLATFORMS
 default
@@ -56,9 +53,6 @@
 // ROMKIT includes
 ../inc/cryptospi_testplugins.iby /epoc32/rom/include/cryptospi_testplugins.iby
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../inc/cryptospi_testwmdrmplugins.iby /epoc32/rom/include/cryptospi_testwmdrmplugins.iby
-#endif
 
 
 
--- a/cryptoplugins/cryptospiplugins/inc/cryptospi_testwmdrmplugins.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-file=ABI_DIR\BUILD_DIR\cryptospihai.dll 	"sys\bin\cryptospihai.dll"
-file=ABI_DIR\BUILD_DIR\dummyecchwplugin.dll 	"sys\bin\dummyecchwplugin.dll"
-#endif
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/bwins/cryptospihaiu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-EXPORTS
-	?SignL@CCryptoSpiHai@CryptoSpiHai@@SAXHABVTDesC8@@AAVCCryptoParams@CryptoSpi@@@Z @ 1 NONAME ; void CryptoSpiHai::CCryptoSpiHai::SignL(int, class TDesC8 const &, class CryptoSpi::CCryptoParams &)
-	?DecryptL@CCryptoSpiHai@CryptoSpiHai@@SAXHABVTDesC8@@AAVTDes8@@@Z @ 2 NONAME ; void CryptoSpiHai::CCryptoSpiHai::DecryptL(int, class TDesC8 const &, class TDes8 &)
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/bwins/dummyecchwpluginu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-EXPORTS
-	?Enumerate@CCryptoPluginEntry@@SAPAPBXVTUid@@AAH@Z @ 1 NONAME ; void const * * CCryptoPluginEntry::Enumerate(class TUid, int &)
-	?GetExtendedCharacteristicsL@CCryptoPluginEntry@@SAXVTUid@@AAPAVCExtendedCharacteristics@CryptoSpi@@@Z @ 2 NONAME ; void CCryptoPluginEntry::GetExtendedCharacteristicsL(class TUid, class CryptoSpi::CExtendedCharacteristics * &)
-	?CreateAsymmetricCipherL@CCryptoPluginEntry@@SAXAAPAVMAsymmetricCipher@CryptoSpi@@VTUid@@ABVCKey@3@11PBVCCryptoParams@3@@Z @ 3 NONAME ; void CCryptoPluginEntry::CreateAsymmetricCipherL(class CryptoSpi::MAsymmetricCipher * &, class TUid, class CryptoSpi::CKey const &, class TUid, class TUid, class CryptoSpi::CCryptoParams const *)
-	?CreateAsymmetricSignerL@CCryptoPluginEntry@@SAXAAPAVMSigner@CryptoSpi@@VTUid@@ABVCKey@3@1PBVCCryptoParams@3@@Z @ 4 NONAME ; void CCryptoPluginEntry::CreateAsymmetricSignerL(class CryptoSpi::MSigner * &, class TUid, class CryptoSpi::CKey const &, class TUid, class CryptoSpi::CCryptoParams const *)
-	?CreateAsymmetricVerifierL@CCryptoPluginEntry@@SAXAAPAVMVerifier@CryptoSpi@@VTUid@@ABVCKey@3@1PBVCCryptoParams@3@@Z @ 5 NONAME ; void CCryptoPluginEntry::CreateAsymmetricVerifierL(class CryptoSpi::MVerifier * &, class TUid, class CryptoSpi::CKey const &, class TUid, class CryptoSpi::CCryptoParams const *)
-	?CreateHashL@CCryptoPluginEntry@@SAXAAPAVMHash@CryptoSpi@@VTUid@@1PBVCKey@3@PBVCCryptoParams@3@@Z @ 6 NONAME ; void CCryptoPluginEntry::CreateHashL(class CryptoSpi::MHash * &, class TUid, class TUid, class CryptoSpi::CKey const *, class CryptoSpi::CCryptoParams const *)
-	?CreateKeyAgreementL@CCryptoPluginEntry@@SAXAAPAVMKeyAgreement@CryptoSpi@@VTUid@@ABVCKey@3@PBVCCryptoParams@3@@Z @ 7 NONAME ; void CCryptoPluginEntry::CreateKeyAgreementL(class CryptoSpi::MKeyAgreement * &, class TUid, class CryptoSpi::CKey const &, class CryptoSpi::CCryptoParams const *)
-	?CreateKeyPairGeneratorL@CCryptoPluginEntry@@SAXAAPAVMKeyPairGenerator@CryptoSpi@@VTUid@@PBVCCryptoParams@3@@Z @ 8 NONAME ; void CCryptoPluginEntry::CreateKeyPairGeneratorL(class CryptoSpi::MKeyPairGenerator * &, class TUid, class CryptoSpi::CCryptoParams const *)
-	?CreateRandomL@CCryptoPluginEntry@@SAXAAPAVMRandom@CryptoSpi@@VTUid@@PBVCCryptoParams@3@@Z @ 9 NONAME ; void CCryptoPluginEntry::CreateRandomL(class CryptoSpi::MRandom * &, class TUid, class CryptoSpi::CCryptoParams const *)
-	?CreateSymmetricCipherL@CCryptoPluginEntry@@SAXAAPAVMSymmetricCipher@CryptoSpi@@VTUid@@ABVCKey@3@111PBVCCryptoParams@3@@Z @ 10 NONAME ; void CCryptoPluginEntry::CreateSymmetricCipherL(class CryptoSpi::MSymmetricCipher * &, class TUid, class CryptoSpi::CKey const &, class TUid, class TUid, class TUid, class CryptoSpi::CCryptoParams const *)
-	
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/eabi/cryptospihaiu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-EXPORTS
-	_ZN12CryptoSpiHai13CCryptoSpiHai5SignLEiRK6TDesC8RN9CryptoSpi13CCryptoParamsE @ 1 NONAME
-	_ZN12CryptoSpiHai13CCryptoSpiHai8DecryptLEiRK6TDesC8R5TDes8 @ 2 NONAME
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/eabi/dummyecchwpluginu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-EXPORTS
-	_ZN18CCryptoPluginEntry9EnumerateE4TUidRi @ 1 NONAME
-	_ZN18CCryptoPluginEntry27GetExtendedCharacteristicsLE4TUidRPN9CryptoSpi24CExtendedCharacteristicsE @ 2 NONAME
-	_ZN18CCryptoPluginEntry23CreateAsymmetricCipherLERPN9CryptoSpi17MAsymmetricCipherE4TUidRKNS0_4CKeyES4_S4_PKNS0_13CCryptoParamsE @ 3 NONAME
-	_ZN18CCryptoPluginEntry23CreateAsymmetricSignerLERPN9CryptoSpi7MSignerE4TUidRKNS0_4CKeyES4_PKNS0_13CCryptoParamsE @ 4 NONAME
-	_ZN18CCryptoPluginEntry25CreateAsymmetricVerifierLERPN9CryptoSpi9MVerifierE4TUidRKNS0_4CKeyES4_PKNS0_13CCryptoParamsE @ 5 NONAME
-	_ZN18CCryptoPluginEntry11CreateHashLERPN9CryptoSpi5MHashE4TUidS4_PKNS0_4CKeyEPKNS0_13CCryptoParamsE @ 6 NONAME
-	_ZN18CCryptoPluginEntry19CreateKeyAgreementLERPN9CryptoSpi13MKeyAgreementE4TUidRKNS0_4CKeyEPKNS0_13CCryptoParamsE @ 7 NONAME
-	_ZN18CCryptoPluginEntry23CreateKeyPairGeneratorLERPN9CryptoSpi17MKeyPairGeneratorE4TUidPKNS0_13CCryptoParamsE @ 8 NONAME
-	_ZN18CCryptoPluginEntry13CreateRandomLERPN9CryptoSpi7MRandomE4TUidPKNS0_13CCryptoParamsE @ 9 NONAME
-	_ZN18CCryptoPluginEntry22CreateSymmetricCipherLERPN9CryptoSpi16MSymmetricCipherE4TUidRKNS0_4CKeyES4_S4_S4_PKNS0_13CCryptoParamsE @ 10 NONAME
-	
-	
-	
-
-	
-
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-PRJ_TESTMMPFILES
-
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-cryptospihai.mmp
-dummyecchwplugin.mmp
-#endif
-
-PRJ_TESTEXPORTS
-
-
-// End of file
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/cryptospihai.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* cryptospihai.dll provides a reference implementation for cryptospi 
-* hardware abstraction interface (HAI). This is used by a cryptospi  
-* plugin, in the case where actual keys are stored in hardware. This 
-* plugin does the following:-
-* a) extracts the key from Crypto Token HAI
-* b) performs the operations (signing and decryption)
-* c) returns the results to the spi plugin. 
-* Licensees can use this plug-in as a reference for implementing a 
-* similar plug-in.
-*
-*/
-
-
-TARGET 		cryptospihai.dll
-TARGETTYPE	dll
-
-CAPABILITY 	All -Tcb
-
-UID 		0xA000D693 0xA000D694
-VENDORID	0x70000001
-
-DEFFILE cryptospihai.def
-
-USERINCLUDE		.
-OS_LAYER_SYSTEMINCLUDE
-USERINCLUDE	../../../../../crypto/weakcryptospi/inc/spi
-USERINCLUDE	../../../../../cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai
-
-SOURCEPaTH ../src
-SOURCE		cryptospihai.cpp
-
-LIBRARY		euser.lib
-LIBRARY		cryptospi.lib
-LIBRARY		tcryptotokenhai.lib
-LIBRARY     cryptography.lib
-
-SMPSAFE
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/group/dummyecchwplugin.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* dummyecchwplugin.dll is a cryptospi plug-in which provides a dummy 
-* implementation of Ecc. This is used for reference and testing 
-* purposes only. This does not actually implement the ecc algorithm. 
-* This plug-in performs cryptographic operations without having access 
-* to the actual key. It accomplishes this in the following way:-
-* a) extracts the key handle
-* b) uses this handle to invoke cryptospihai.dll. cryptospihai.dll 
-* performs the operations and returns the output back.
-* Licensees can use this plug-in as a reference for implementing a 
-* similar plug-in.
-*
-*/
-
-
-TARGET 		dummyecchwplugin.dll
-TARGETTYPE	dll
-
-CAPABILITY 	All -Tcb
-
-UID 		0xA000D695 0xA000D696
-VENDORID	0x70000001
-
-DEFFILE dummyecchwplugin.def
-
-USERINCLUDE		.
-USERINCLUDE	../../../../../crypto/weakcryptospi/inc/spi
-OS_LAYER_SYSTEMINCLUDE
-
-SOURCEPATH ../src
-SOURCE		pluginentry.cpp
-SOURCE		dummyeccimpl.cpp
-SOURCE		dummyeccsignerimpl.cpp
-
-LIBRARY		euser.lib cryptospi.lib cryptospihai.lib
-
-SMPSAFE
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/cryptospihai.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,109 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "cryptospihai.h"
-#include "keys.h"
-#include <e32def.h>
-#include <cryptospi/cryptohashapi.h>
-#include <pbedata.h>
-#include "tcryptotokenhai.h"
-
-using namespace CryptoSpiHai;
-
-/**
- * Performs the signing operation.
- * 
- * A cryptoSPI plugin uses this, when it does not have access to the  
- * actual key.
- * 
- * @param aKeyHandle The key handle retrieved from hw crypto 
- * token
- * @param aInput The text which has to be signed. This is not being 
- * used due to signing logic used in this function.
- * @param aSignature Output param. The cryptoSPI signature.
- * 
- * @leave Can leave with all the leave codes present in HAI of 
- * reference crypto token implementation.
- * 
- * @note This function does not actually implement ECC signing. This 
- * function just shows how the private key can be extracted from 
- * crypto token hai. This function just returns the private key as 
- * output signature. The caller can verify the signature by ensuring 
- * that test case has same public and private keys and then comparing 
- * the signature with public key.
- */
-EXPORT_C void CCryptoSpiHai::SignL(TInt aKeyHandle,
-        const TDesC8& /*aInput*/, CryptoSpi::CCryptoParams& aSignature)
-    {
-    MCTToken* token = NULL;
-    /**
-     * We are dereferencing a NULL pointer below. We need to pass 
-     * MCTToken here. It is not used currently.
-     */
-    CCryptoTokenHai *cryptoTokenHai = CCryptoTokenHai::NewLC(token);
-
-    //Call Crypto Token HAI to get the actual key
-    HBufC8* actualKey = NULL;
-    cryptoTokenHai->ExportPrivateKeyL(aKeyHandle, actualKey);
-    CleanupStack::PushL(actualKey);
-
-    aSignature.AddL(*actualKey, CryptoSpi::KEccKeyTypeUid);
-    CleanupStack::PopAndDestroy(actualKey);
-    CleanupStack::PopAndDestroy(cryptoTokenHai);
-    }
-
-/**
- * Performs the decryption operation.
- * 
- * A cryptoSPI plugin uses this, when it does not have access to the 
- * actual key.
- * 
- * @param aKeyHandle The key handle retrieved from hw crypto token
- * @param aInput The cipher text. This is not being used due to signing  
- * logic used in this function.
- * @param aOutput Output param. The decrypted plain text
- * 
- * @leave Can leave with all the leave codes present in HAI of 
- * reference crypto token implementation.
- *
- * @note This function does not actually implement ECC decryption. This 
- * function just shows how the private key can be extracted from 
- * crypto token hai. This function just returns the private key as 
- * decrypted text. The caller can verify the decryption by ensuring 
- * that test case has same public and private keys and then comparing 
- * the decrypted text with public key. 
- */
-EXPORT_C void CCryptoSpiHai::DecryptL(TInt aKeyHandle,
-        const TDesC8& /*aInput*/, TDes8& aOutput)
-    {
-    MCTToken* token = NULL;
-    CCryptoTokenHai *cryptoTokenHai = CCryptoTokenHai::NewLC(token);
-
-    //Call Crypto Token HAI to get the actual key
-    HBufC8* actualKey = NULL;
-    cryptoTokenHai->ExportPrivateKeyL(aKeyHandle, actualKey);
-    CleanupStack::PushL(actualKey);
-    aOutput.Copy(*actualKey);
-
-    CleanupStack::PopAndDestroy(actualKey);
-    CleanupStack::PopAndDestroy(cryptoTokenHai);
-    }
-
-// End of file
-
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/cryptospihai.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,81 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
- */
-#ifndef	CCRYPTOSPIHAI_H
-#define	CCRYPTOSPIHAI_H
-
-#include <e32base.h>
-#include <e32cmn.h>
-#include <cryptospi/cryptospidef.h>
-#include <cryptospi/cryptoparams.h>
-
-namespace CryptoSpiHai
-    {
-    /**
-     * This class forms the hardware abstraction interface part of the 
-     * cryptoSPI. In the production code, this should be replaced by a 
-     * device driver. This layer abstracts the hardware from a cryptoSPI
-     * plugin. It interacts with the HAI of crypto token to get the actual 
-     * key and performs the operations. This layer should be implemented in
-     * kernel space.
-     */
-    NONSHARABLE_CLASS(CCryptoSpiHai) : public CBase
-        {
-    public:
-        /**
-         * Performs the signing operation.
-         * 
-         * A cryptoSPI plugin uses this, when it does not have access 
-         * to the actual key.
-         * 
-         * @param aKeyHandle The key handle retrieved from hw crypto 
-         * token
-         * @param aInput The text which has to be signed.
-         * @param aSignature Output param. The cryptoSPI signature.
-         * 
-         * @leave Can leave with all the leave codes present in HAI of 
-         * reference crypto token implementation. 
-         */
-        IMPORT_C static void SignL(TInt aKeyHandle,
-                const TDesC8& aInput, CryptoSpi::CCryptoParams& aSignature);
-        
-        /**
-         * Performs the decryption operation.
-         * 
-         * A cryptoSPI plugin uses this, when it does not have access 
-         * to the actual key.
-         * 
-         * @param aKeyHandle The key handle retrieved from hw crypto 
-         * token
-         * @param aInput The cipher text.
-         * @param aOutput Output param. The decrypted plain text
-         * 
-         * @leave Can leave with all the leave codes present in HAI of 
-         * reference crypto token implementation. 
-         */        
-        IMPORT_C static void DecryptL(TInt aKeyHandle,
-                const TDesC8& aInput, TDes8& aOuput);
-        };
-    }
-
-#endif	//	CCRYPTOSPIHAI_H
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccimpl.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,189 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "dummyeccimpl.h"
-
-#include <e32def.h>
-#include <cryptospi/cryptospidef.h>
-#include "keys.h"
-#include <cryptospi/plugincharacteristics.h>
-#include "pluginconfig.h"
-#include "cryptospihai.h"
-
-using namespace DummyEccHwCrypto;
-using namespace CryptoSpiHai;
-
-/**
- * These are just randomly selected numbers. There is no logic behind 
- * their values.
- */ 
-const TInt KMaxOutputLength = 50;
-const TInt KMaxInputLength = 50;
-
-CDummyECCCipherImpl* CDummyECCCipherImpl::NewL(const CKey& aKey,
-        TUid aCryptoMode, TUid aPaddingMode)
-    {
-    CDummyECCCipherImpl* self = CDummyECCCipherImpl::NewLC(aKey, aCryptoMode,
-            aPaddingMode);
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-CDummyECCCipherImpl* CDummyECCCipherImpl::NewLC(const CKey& aKey,
-        TUid aCryptoMode, TUid aPaddingMode)
-    {
-    CDummyECCCipherImpl* self = new (ELeave) CDummyECCCipherImpl(aCryptoMode,
-            aPaddingMode);
-    CleanupStack::PushL(self);
-    self->ConstructL(aKey);
-    return self;
-    }
-
-CDummyECCCipherImpl::CDummyECCCipherImpl(TUid aCryptoMode, TUid aPaddingMode) :
-    iCryptoMode(aCryptoMode), iPaddingMode(aPaddingMode)
-    {
-    }
-
-void CDummyECCCipherImpl::ConstructL(const CKey& aKey)
-    {
-    SetKeyL(aKey);
-    }
-
-// MPlugin Interface Start
-void CDummyECCCipherImpl::Close()
-    {
-    delete this;
-    }
-
-void CDummyECCCipherImpl::Reset()
-    {
-    }
-
-void CDummyECCCipherImpl::GetCharacteristicsL(
-        const TCharacteristics*& aPluginCharacteristics)
-    {
-    TInt numCiphers = sizeof(KAsymmetricCipherCharacteristics)
-            / sizeof(TAsymmetricCipherCharacteristics*);
-    TInt32 implUid = ImplementationUid().iUid;
-    for (TInt i = 0; i < numCiphers; ++i)
-        {
-        if (KAsymmetricCipherCharacteristics[i]->cmn.iImplementationUID
-                == implUid)
-            {
-            aPluginCharacteristics = KAsymmetricCipherCharacteristics[i];
-            break;
-            }
-        }
-    }
-
-const CExtendedCharacteristics* CDummyECCCipherImpl::GetExtendedCharacteristicsL()
-    {
-    // All Symbian software plug-ins have unlimited concurrency, cannot be reserved
-    // for exclusive use and are not CERTIFIED to be standards compliant.
-    return CExtendedCharacteristics::NewL(KMaxTInt, EFalse);
-    }
-
-TAny* CDummyECCCipherImpl::GetExtension(TUid /* aExtensionId */)
-    {
-    return 0;
-    }
-// End of MPlugin Interface
-
-// MAsymmetricCipherBase Interface
-void CDummyECCCipherImpl::SetKeyL(const CKey& aKey)
-    {
-    // delete any previous key and recreate the key
-    delete iKey;
-    iKey = NULL;
-    iKey = CKey::NewL(aKey);
-    }
-
-void CDummyECCCipherImpl::SetCryptoModeL(TUid aCryptoMode)
-    {
-    switch (aCryptoMode.iUid)
-        {
-        case KCryptoModeEncrypt:
-        case KCryptoModeDecrypt:
-            break;
-        default:
-            User::Leave(KErrNotSupported);
-        }
-    iCryptoMode = aCryptoMode;
-    }
-
-void CDummyECCCipherImpl::SetPaddingModeL(TUid /* aPaddingMode */)
-    {
-    User::Leave(KErrNotSupported);
-    }
-
-TInt CDummyECCCipherImpl::GetMaximumInputLengthL() const
-    {
-    return KMaxInputLength;
-    }
-
-TInt CDummyECCCipherImpl::GetMaximumOutputLengthL() const
-    {
-    return KMaxOutputLength;
-    }
-// End of MAsymmetricCipherBase Interface
-
-// MAsymmetricCipher Interface
-void CDummyECCCipherImpl::ProcessL(const TDesC8& aInput, TDes8& aOutput)
-    {
-    if (iCryptoMode.iUid == KCryptoModeEncrypt)
-        {
-        EncryptL(aInput, aOutput);
-        }
-    else
-        {
-        DecryptL(aInput, aOutput);
-        }
-    }
-
-TUid CDummyECCCipherImpl::ImplementationUid() const
-    {
-    return KCryptoPluginEccCipherUid;
-    }
-
-CDummyECCCipherImpl::~CDummyECCCipherImpl()
-    {
-    delete iKey;
-    }
-
-void CDummyECCCipherImpl::EncryptL(const TDesC8& /* aInput */, TDes8& /* aOuput */)
-    {
-    User::Leave(KErrNotSupported);
-    }
-
-void CDummyECCCipherImpl::DecryptL(const TDesC8& aInput, TDes8& aOutput)
-    {
-    if (iKey->IsPresent(KPassedHandleToKeyUid))
-        {
-        const TInt& keyHandle = iKey->GetTIntL(KPassedHandleToKeyUid);
-
-        // Invoke the Spi HAI to perform the operation
-        CCryptoSpiHai::DecryptL(keyHandle, aInput, aOutput);
-        }
-    else
-        {
-        User::Leave(KErrNotSupported);
-        }
-    }
-// End of file
-
-
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccimpl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,97 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-#ifndef	CDUMMYECCIMPL_H
-#define	CDUMMYECCIMPL_H
-
-#include <e32base.h>
-#include <e32cmn.h>
-#include <cryptospi/cryptospidef.h>
-#include "keys.h"
-#include "asymmetriccipherplugin.h"
-
-namespace DummyEccHwCrypto
-	{
-	using namespace CryptoSpi;
-	
-	/**
-	 * Implements the MAsymmetricCipher interface.
-	 * 
-	 * This should be used to create the cipher object to perform 
-	 * encryption / decryption using ECC.
-	 */
-	NONSHARABLE_CLASS(CDummyECCCipherImpl) : public CBase, public MAsymmetricCipher
-		{
-	public:
-	    static CDummyECCCipherImpl* NewL(const CKey& aKey, TUid aCryptoMode, TUid aPaddingMode);
-	    static CDummyECCCipherImpl* NewLC(const CKey& aKey, TUid aCryptoMode, TUid aPaddingMode);
-	    
-	    // MPlugin Interface
-	    void Close();
-	    void Reset();
-	    void GetCharacteristicsL(const TCharacteristics*& aPluginCharacteristics);
-	    const CExtendedCharacteristics* GetExtendedCharacteristicsL();
-	    TAny* GetExtension(TUid aExtensionId); 
-	    // End of MPlugin Interface
-	    
-	    // MAsymmetricCipherBase Interface
-	    void SetKeyL(const CKey& aKey);
-	    void SetCryptoModeL(TUid aCryptoMode);
-	    void SetPaddingModeL(TUid aPaddingMode);
-	    TInt GetMaximumInputLengthL() const;
-	    TInt GetMaximumOutputLengthL() const;
-	    // End of MAsymmetricCipherBase Interface
-	    
-		// MAsymmetricCipher Interface
-		void ProcessL(const TDesC8& aInput, TDes8& aOutput);
-		
-		TUid ImplementationUid() const;
-		// Destructor
-		~CDummyECCCipherImpl();
-
-	private:
-		CDummyECCCipherImpl(TUid aCryptoMode, TUid aPaddingMode);
-		void ConstructL(const CKey& aKey);
-		void DecryptL(const TDesC8& aInput, TDes8& aOutput);
-		void EncryptL(const TDesC8& aInput, TDes8& aOutput);
-		
-	private:
-		/* The key extracted from a CKey object. This would just have 
-		 * a handle to the key stored in hardware. Hence the actual key 
-		 * would not be available to the user of this cryptoSPI plugin.
-		 */
-	    CKey* iKey;
-		
-		/// encryption or decryption
-		TUid iCryptoMode;		
-
-		/* The current padding scheme. This is not being used in the 
-		 * reference implementation.
-		 */
-		TUid iPaddingMode;
-		};
-
-			
-	}
-
-#endif	//	CDUMMYECCIMPL_H
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccsignerimpl.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "dummyeccsignerimpl.h"
-#include "keys.h"
-#include "pluginconfig.h"
-#include "cryptospihai.h"
-
-using namespace DummyEccHwCrypto;
-using namespace CryptoSpiHai;
-
-const TInt KMaxSignerOutputLength = 50;
-const TInt KMaxSignerInputLength = 50;
-
-// CDummyECCSignerImpl
-CDummyECCSignerImpl* CDummyECCSignerImpl::NewL(const CKey& aKey,
-        TUid aPaddingMode)
-    {
-    CDummyECCSignerImpl* self =
-            CDummyECCSignerImpl::NewLC(aKey, aPaddingMode);
-    CleanupStack::Pop(self);
-    return self;
-    }
-
-CDummyECCSignerImpl* CDummyECCSignerImpl::NewLC(const CKey& aKey,
-        TUid aPaddingMode)
-    {
-    CDummyECCSignerImpl* self =
-            new (ELeave) CDummyECCSignerImpl(aPaddingMode);
-    CleanupStack::PushL(self);
-    self->ConstructL(aKey);
-    return self;
-    }
-
-CDummyECCSignerImpl::CDummyECCSignerImpl(TUid aPaddingMode) :
-    iPaddingMode(aPaddingMode)
-    {
-    }
-
-CDummyECCSignerImpl::~CDummyECCSignerImpl()
-    {
-    delete iKey;
-    }
-
-void CDummyECCSignerImpl::ConstructL(const CKey& aKey)
-    {
-    SetKeyL(aKey);
-    }
-
-// MPlugin Interface
-void CDummyECCSignerImpl::Close()
-    {
-    delete this;
-    }
-void CDummyECCSignerImpl::Reset()
-    {
-    }
-void CDummyECCSignerImpl::GetCharacteristicsL(
-        const TCharacteristics*& aPluginCharacteristics)
-    {
-    TInt numCiphers = sizeof(KSignerCharacteristics)
-            / sizeof(TAsymmetricSignatureCharacteristics*);
-    TInt32 implUid = ImplementationUid().iUid;
-    for (TInt i = 0; i < numCiphers; ++i)
-        {
-        if (KSignerCharacteristics[i]->cmn.iImplementationUID == implUid)
-            {
-            aPluginCharacteristics = KSignerCharacteristics[i];
-            break;
-            }
-        }
-    }
-
-const CExtendedCharacteristics* CDummyECCSignerImpl::GetExtendedCharacteristicsL()
-    {
-    // All Symbian software plug-ins have unlimited concurrency, cannot be reserved
-    // for exclusive use and are not CERTIFIED to be standards compliant.
-    return CExtendedCharacteristics::NewL(KMaxTInt, EFalse);
-    }
-
-TAny* CDummyECCSignerImpl::GetExtension(TUid /* aExtensionId */)
-    {
-    return 0;
-    }
-// End of MPlugin Interface
-
-// MSignatureBase Interface
-void CDummyECCSignerImpl::SetPaddingModeL(TUid /* aPaddingMode */)
-    {
-    User::Leave(KErrNotSupported);
-    }
-
-void CDummyECCSignerImpl::SetKeyL(const CKey& aKey)
-    {
-    // delete any previous key and recreate the key
-    delete iKey;
-    iKey = NULL;
-    iKey = CKey::NewL(aKey);
-    }
-
-TInt CDummyECCSignerImpl::GetMaximumInputLengthL() const
-    {
-    return KMaxSignerInputLength;
-    }
-
-TInt CDummyECCSignerImpl::GetMaximumOutputLengthL() const
-    {
-    return KMaxSignerOutputLength;
-    }
-
-TUid CDummyECCSignerImpl::ImplementationUid() const
-    {
-    return KCryptoPluginEccSignerUid;
-    }
-
-void CDummyECCSignerImpl::SignL(const TDesC8& aInput,
-        CCryptoParams& aSignature)
-    {
-    if (iKey->IsPresent(KPassedHandleToKeyUid))
-        {
-        const TInt keyHandle = iKey->GetTIntL(KPassedHandleToKeyUid);
-
-        // Invoke the Spi HAI to perform the operation
-        CCryptoSpiHai::SignL(keyHandle, aInput, aSignature);
-        }
-    else
-        {
-        User::Leave(KErrNotSupported);
-        }
-    }
-
-// End of file
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/dummyeccsignerimpl.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-#ifndef	CDUMMYECCSIGNERIMPL_H
-#define	CDUMMYECCSIGNERIMPL_H
-#include <e32base.h>
-#include <e32cmn.h>
-#include "keys.h"
-#include "signerplugin.h"
-
-namespace DummyEccHwCrypto
-	{
-	using namespace CryptoSpi;
-
-    /**
-     * Implements the MSigner interface.
-     * 
-     * This should be used to create the signer object to perform 
-     * signing using ECC.
-     */
-	NONSHARABLE_CLASS(CDummyECCSignerImpl) : public CBase, public MSigner
-		{
-	public:
-		static CDummyECCSignerImpl* NewL(const CryptoSpi::CKey& aKey, 
-			TUid aPaddingMode);
-		static CDummyECCSignerImpl* NewLC(const CryptoSpi::CKey& aKey, 
-			TUid aPaddingMode);
-
-		// MPlugin Interface
-		void Close();
-        void Reset();
-        void GetCharacteristicsL(const TCharacteristics*& aPluginCharacteristics);
-        const CExtendedCharacteristics* GetExtendedCharacteristicsL();
-        TAny* GetExtension(TUid aExtensionId);
-        // End of MPlugin Interface    
-        
-        // MSignatureBase inteface
-		void SetPaddingModeL(TUid aPaddingMode);
-		void SetKeyL(const CKey& aPrivateKey);
-		TInt GetMaximumInputLengthL() const;
-		TInt GetMaximumOutputLengthL() const;
-		// End of MSignatureBase inteface
-		
-		// MSigner interface
-		void SignL(const TDesC8& aInput, CCryptoParams& aSignature);
-
-		TUid ImplementationUid() const;
-		/// Destructor
-		~CDummyECCSignerImpl();
-
-	private:
-		CDummyECCSignerImpl(TUid aPaddingMode);
-		void ConstructL(const CryptoSpi::CKey& aKey);
-
-	private:
-	    /* The key extracted from a CKey object. This would just have 
-         * a handle to the key stored in hardware. Hence the actual key 
-         * would not be available to the user of this cryptoSPI plugin.
-         */
-        CKey* iKey;
-	    TUid iPaddingMode;
-		};
-	}
-
-#endif //CDUMMYECCSIGNERIMPL_H
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginconfig.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,133 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
- */
-#ifndef CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H
-#define CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H
-
-#include <cryptospi/cryptoparams.h>
-#include <e32cmn.h>
-#include <cryptospi/romlit.h>
-#include "cryptospi/cryptospidef.h"
-
-namespace DummyEccHwCrypto
-    {
-    using namespace CryptoSpi;
-    /**
-     Creator Name
-     */
-    _ROMLIT16(KNokia, "Nokia");
-    /**
-     implementation Name
-     */
-    _ROMLIT16(KEccCipherDescription, "Ecc");
-    _ROMLIT16(KEccSignerDescription, "EccSigner");
-
-    /**
-     ECC Cipher Characteristics
-     */
-    static const TInt32 KCryptoPluginEccCipher = 0xA000D697;
-    static const TUid KCryptoPluginEccCipherUid =
-        {
-        KCryptoPluginEccCipher
-        };
-    static const TInt32 KECCCipherPaddingModes[] =
-        {
-        KPaddingModeNone
-        };
-
-    static const TAsymmetricCipherCharacteristics KECC_1 =
-        {
-        KAsymmetricCipherInterface, /* iInterfaceUID */
-        KAlgorithmCipherEcc, /* iAlgorithmUID */
-        KCryptoPluginEccCipher, /* iImplementationUID */
-        &KNokia, /* iCreatorName */
-        EFalse, /* iIsFIPSApproved */
-        ETrue, /* iIsHardwareSupported */
-        6, /* iMaxConcurrencySupported */
-        &KEccCipherDescription, /* iAlgorithmName */
-        100, /* iLatency */
-        90, /* iThroughput */
-        360, /* iMaximumKeyLength */
-        KECCCipherPaddingModes, /* iSupportedPaddingModes */
-        sizeof(KECCCipherPaddingModes) / sizeof(KECCCipherPaddingModes[0]), /* iPaddingModeNum */
-        3
-        /* iKeySupportMode */
-        };
-
-    /**
-     ECC Signer Characteristics
-     */
-    static const TInt32 KCryptoPluginEccSigner = 0xA000D698;
-    static const TUid KCryptoPluginEccSignerUid =
-        {
-        KCryptoPluginEccSigner
-        };
-    static const TInt32 KECCSignerPaddingModes[] =
-        {
-        KPaddingModeNone
-        };
-
-    static const TAsymmetricSignatureCharacteristics KECCSigner_1 =
-        {
-        KSignerInterface, /* iInterfaceUID */
-        KAlgorithmSignerEcc, /* iAlgorithmUID */
-        KCryptoPluginEccSigner, /* iImplementationUID */
-        &KNokia, /* iCreatorName */
-        EFalse, /* iIsFIPSApproved */
-        ETrue, /* iIsHardwareSupported */
-        6, /* iMaxConcurrencySupported */
-        &KEccSignerDescription, /* iAlgorithmName */
-        100, /* iLatency */
-        90, /* iThroughput */
-        360, /* iMaximumKeyLength */
-        KECCCipherPaddingModes, /* iSupportedPaddingModes */
-        sizeof(KECCCipherPaddingModes) / sizeof(KECCCipherPaddingModes[0]), /* iPaddingModeNum */
-        3
-        /* iKeySupportMode */
-        };
-
-    /**
-     For each crypto algorithm type implemented in this plugin list the characteristics
-     */
-
-    /**
-     Asymmetric Cipher implementation characteristic table
-     */
-    static const TAsymmetricCipherCharacteristics
-            * const KAsymmetricCipherCharacteristics[] =
-                {
-                &KECC_1
-                };
-
-    /**
-     Signer implementation characteristic table
-     */
-    static const TAsymmetricSignatureCharacteristics
-            * const KSignerCharacteristics[] =
-                {
-                &KECCSigner_1
-                };
-
-    }
-
-#endif //CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginentry.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "pluginentry.h"
-#include "pluginconfig.h"
-#include "dummyeccimpl.h"
-#include "dummyeccsignerimpl.h"
-#include "keys.h"
-#include <cryptospi/cryptospidef.h>
-
-using namespace DummyEccHwCrypto;
-
-EXPORT_C const TCharacteristics** CCryptoPluginEntry::Enumerate(
-        TUid aInterface, TInt& aNumPlugins)
-    {
-    const TCharacteristics** ptr(0);
-
-    switch (aInterface.iUid)
-        {
-        case KAsymmetricCipherInterface:
-            {
-            aNumPlugins = sizeof(KAsymmetricCipherCharacteristics)
-                    / sizeof(TAsymmetricCipherCharacteristics*);
-            ptr
-                    = (const TCharacteristics**) &KAsymmetricCipherCharacteristics[0];
-            }
-            break;
-
-        case KSignerInterface:
-            {
-            aNumPlugins = sizeof(KSignerCharacteristics)
-                    / sizeof(TAsymmetricSignatureCharacteristics*);
-            ptr = (const TCharacteristics**) &KSignerCharacteristics[0];
-            }
-            break;
-
-        default:
-            aNumPlugins = 0;
-        }
-
-    return ptr;
-    }
-
-EXPORT_C void CCryptoPluginEntry::GetExtendedCharacteristicsL(
-        TUid /* aImplementationUid */, CExtendedCharacteristics*& /* aExt */)
-    {
-    User::Leave(KErrNotSupported);
-    }   
-
-EXPORT_C void CCryptoPluginEntry::CreateAsymmetricCipherL(
-        MAsymmetricCipher*& aPlugin, TUid aImplementationId,
-        const CKey& aKey, TUid aCryptoMode, TUid aPaddingMode,
-        const CCryptoParams* /* aAlgorithmParams */)
-    {
-    switch (aImplementationId.iUid)
-        {
-        case KCryptoPluginEccCipher:
-            {
-            aPlugin = CDummyECCCipherImpl::NewL(aKey, aCryptoMode, aPaddingMode);
-            }
-            break;
-
-        default:
-            User::Leave(KErrNotFound);
-        }
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateAsymmetricSignerL(
-        MSigner*& aPlugin, TUid aImplementationId,
-        const CKey& aKey, TUid aPaddingMode, const CCryptoParams* /* aAlgorithmParams */)
-    {
-    switch (aImplementationId.iUid)
-        {
-        case KCryptoPluginEccSigner:
-            {
-            aPlugin = CDummyECCSignerImpl::NewL(aKey, aPaddingMode);
-            }
-            break;
-
-        default:
-            User::Leave(KErrNotFound);
-        }
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateAsymmetricVerifierL(
-        MVerifier*& /*aPlugin*/, TUid /*aImplementationId*/,
-        const CKey& /*aKey*/, TUid /*aPaddingMode*/, const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotFound);
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateHashL(MHash*& /*aPlugin*/,
-        TUid /*aImplementationId*/, TUid /*aOperationMode*/,
-        const CKey* /*aKey*/, const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotFound);
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateKeyAgreementL(
-        MKeyAgreement*& /*aPlugin*/, TUid /*aImplementationId*/,
-        const CKey& /*aPrivateKey*/, const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotFound);
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateKeyPairGeneratorL(
-        MKeyPairGenerator*& /*aPlugin*/, TUid /*aImplementationId*/,
-        const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotFound);
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateRandomL(MRandom*& /*aPlugin*/,
-        TUid /*aImplementationId*/, const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotFound);
-    }
-
-EXPORT_C void CCryptoPluginEntry::CreateSymmetricCipherL(
-        MSymmetricCipher*& /*aPlugin*/, TUid /*aImplementationId*/, const CKey& /*aKey*/,
-        TUid /*aCryptoMode*/, TUid /*aOperationMode*/, TUid /*aPadding*/,
-        const CCryptoParams* /*aAlgorithmParams*/)
-    {
-    User::Leave(KErrNotSupported);
-    }
-// End of file
--- a/cryptoplugins/cryptospiplugins/test/dummyecchwplugin/src/pluginentry.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-/**
- * @file
- * @internalComponent
- * @released
- */
-#ifndef CPLUGINENTRY_H
-#define CPLUGINENTRY_H
-
-#include <cryptospi/cryptoparams.h>
-#include <e32cmn.h>
-#include <cryptospi/cryptospidef.h>
-#include "keys.h"
-#include <cryptospi/hashplugin.h>
-#include <cryptospi/randomplugin.h>
-#include "symmetriccipherplugin.h"
-#include "asymmetriccipherplugin.h"
-#include "signerplugin.h"
-#include "verifierplugin.h"
-#include "keypairgeneratorplugin.h"
-#include "keyagreementplugin.h"
-
-using namespace CryptoSpi;
-
-class CCryptoPluginEntry
-    {
-public:
-    /**
-     * Enumerates the set of plug-ins supported by the module for a given interface
-     * e.g. all of the hash plug-ins.
-     *
-     * @param aInterface The UID of the plug-in interface type. If the UID is not recognised
-     * then the NULL pointer must be returned.
-     * @param aNumPlugins The number of plug-in characteristics objects in the result.
-     */
-    IMPORT_C static const TCharacteristics** Enumerate(TUid aInterface,
-            TInt& aNumPlugins);
-
-    IMPORT_C static void GetExtendedCharacteristicsL(TUid aImplementationUid,
-            CExtendedCharacteristics*&);
-    
-    /**
-     * Creates a new instance of an asymmetric cipher
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric cipher object.
-     * @param aImplementationId The UID of the asymmetric cipher plug-in to instantiate.
-     * @param aKey The encryption/decryption key.
-     * @param aPaddingMode The padding mode.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     * 
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateAsymmetricCipherL(MAsymmetricCipher*& aPlugin,
-            TUid aImplementationId, const CKey& aKey, TUid aCryptoMode,
-            TUid aPaddingMode, const CCryptoParams* aAlgorithmParams);
-
-    /**
-     * Creates a new instance of an asymmetric signer.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric signer object.
-     * @param aImplementationId The UID of the signer plug-in to instantiate.
-     * @param aKey The signing key.
-     * @param aPaddingMode The padding mode.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     * 
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateAsymmetricSignerL(MSigner*& aPlugin,
-            TUid aImplementationId, const CKey& aKey, TUid aPaddingMode,
-            const CCryptoParams* aAlgorithmParams);
-
-    /**
-     * Creates a new instance of an asymmetric verifier.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric verifier object.
-     * @param aImplementationId The UID of the verifier plug-in to instantiate.
-     * @param aKey The key to verify the signature with.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateAsymmetricVerifierL(MVerifier*& aPlugin,
-                                                   TUid aImplementationId,
-                                                   const CKey& aKey,
-                                                   TUid aPaddingMode,
-                                                   const CCryptoParams* aAlgorithmParams);
-
-    /**
-     * Creates a new instance of a Hash object.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new hash object.
-     * @param aImplementationId The UID of the hash plug-in to instantiate.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateHashL(MHash*& aPlugin,
-                                     TUid aImplementationId,
-                                     TUid aOperationMode,
-                                     const CKey* aKey,
-                                     const CCryptoParams* aAlgorithmParams);
-
-    /**
-     * Creates a new instance of a Random object.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to the new random object.
-     * @param aImplementationId The UID of the random plug-in to instantiate.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateRandomL(MRandom*& aPlugin,
-                                       TUid aImplementationId,
-                                       const CCryptoParams* aAlgorithmParams);
-
-
-    /**
-     * Creates a new instance of a key agreement system.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric key pair generator object.
-     * @param aImplementationId The UID of the key agreement plug-in to instantiate.
-     * @param aPrivateKey The private key to combine with the other parties public key
-     * during the agreement.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateKeyAgreementL(MKeyAgreement*& aPlugin,
-                                             TUid aImplementationId,
-                                             const CKey& aPrivateKey,
-                                             const CCryptoParams* aAlgorithmParams);
-
-    /**
-     * Creates a new instance of an asymmetric key pair generator.
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric key pair generator object.
-     * @param aImplementationId The UID of the verifier plug-in to instantiate.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateKeyPairGeneratorL(MKeyPairGenerator*& aPlugin,
-                                                 TUid aImplementationId,
-                                                 const CCryptoParams* aAlgorithmParams);
-                                        
-    /**
-     * Creates a new instance of a symmetric cipher
-     *
-     * @param aPlugin A reference to a pointer that should be set to point to 
-     * the new asymmetric object.
-     * @param aImplementationId The UID of the symmetric cipher plug-in to instantiate.
-     * @param aKey The encryption/decryption key.
-     * @param aCryptoMode Encrypt or Decrypt.
-     * @param aOperationMode the block cipher mode to use ECB, CBC, CTR etc
-     * @param aPadding the padding scheme to use.
-     * @param aAlgorithmParams The parameters that are specific to a particular 
-     * algorithm. This is for extendibility and will normally be null.
-     *
-     * @leave Function can leave with any system wide error codes in 
-     * case of failure.
-     */
-    IMPORT_C static void CreateSymmetricCipherL(MSymmetricCipher*& aPlugin,
-                                                TUid aImplementationId,
-                                                const CKey& aKey,
-                                                TUid aCryptoMode,
-                                                TUid aOperationMode,
-                                                TUid aPadding,
-                                                const CCryptoParams* aAlgorithmParams);
-
-
-    };
-
-#endif // CPLUGINENTRY_H
--- a/cryptoplugins/cryptospiplugins/test/h4drv/crypto_h4/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoplugins/cryptospiplugins/test/h4drv/crypto_h4/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -23,5 +23,8 @@
 cryptojobs.mmp
 
 PRJ_TESTEXPORTS
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+cryptodriver.h /epoc32/include/cryptodriver.h
+#endif
 
 // End of file
--- a/cryptoservices/browserrootcertificates/browserrootcerts.mrp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-component browserrootcertificates
-source \sf\os\security\cryptoservices\browserrootcertificates
-notes_source \component_defs\release.src 
-
-
-#  == IPR section auto-inserted from distribution.policy files  ==
-ipr E 
-
-# == end auto-inserted section ==
--- a/cryptoservices/browserrootcertificates/certconvert.py	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,349 +0,0 @@
-#
-# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of the License "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description: 
-# Script to convert the Mozilla certificate store into the store format Symbian OS understands.
-#
-# Mozilla certificate store and its associated license is available at
-# http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1
-#
-#
-
-import string, getopt, sys, subprocess, glob, os
-
-#
-# Default input files
-#
-inFileMozillaCerts = "certdata.txt"
-inFileTrustMapping = "trustmapping.txt"
-
-#
-# Output path (don't change this!) and other temp files
-#
-outPath = ".\\"
-outFileCaCerts = "cacerts_text.txt"
-outFileCertClients = "certclients_text.txt"
-outCertAppOutput = "output.txt"
-
-#
-# Constants
-#
-ERROR_NONE = 0
-ERROR_EOF = -1
-ERROR_GENERAL = -2
-
-#
-# Class CertRecord
-#
-class CertRecord:
-    def __init__(self, file):
-        self.file = file
-        # Read over the first CKA_CLASS record
-        value = ""
-        self.ReadTokenValue("CKA_CLASS")
-        # Can we assert if value != "CKO_NETSCAPE_BUILTIN_ROOT_LIST"
-
-    # Read and parse next record, return 0 if no more records exist
-    def Next(self):
-        # Read next certificate token
-        err, value = self.ReadTokenValue("CKA_CLASS")
-        if (err == ERROR_EOF):
-            return err
-        if (err != ERROR_NONE or value != "CKO_CERTIFICATE"):
-            return err
-
-        # Read the cert label
-        err, self.certLabel = self.ReadTokenValue("CKA_LABEL")
-        if (err != ERROR_NONE):
-            return err
-
-        # Read the cert type
-        err, self.certType = self.ReadTokenValue("CKA_CERTIFICATE_TYPE")
-        if (err != ERROR_NONE):
-            return err
-
-        # Read the cert serial number
-        err, self.certSerialNum = self.ReadTokenValue("CKA_SERIAL_NUMBER")
-        if (err != ERROR_NONE):
-            return err
-
-        # Read the actual cert data (DER encoded)
-        err, self.certData = self.ReadTokenValue("CKA_VALUE")
-        if (err != ERROR_NONE):
-            return err
-
-        # Read the trust details
-        err, value = self.ReadTokenValue("CKA_CLASS")
-        if (err != ERROR_NONE or value != "CKO_NETSCAPE_TRUST"):
-            return err
-
-        # Read the trust label and match it with cert label
-        err, self.trustLabel = self.ReadTokenValue("CKA_LABEL")
-        if (err != ERROR_NONE or self.trustLabel != self.certLabel):
-            print "Certificate and Trust label mismatch or not found for cert " + self.certLabel
-            return err
-
-        # Read the SHA1 hash (aka thumbprint)
-        err, self.trustSha1Hash = self.ReadTokenValue("CKA_CERT_SHA1_HASH")
-
-        # Read the trust serial number and match it with cert serial number
-        err, self.trustSerialNum = self.ReadTokenValue("CKA_SERIAL_NUMBER")
-        if (err != ERROR_NONE or self.trustSerialNum != self.certSerialNum):
-            print "Warning: Certificate and Trust serial number mismatch or not found for cert " + self.certLabel
-
-        # Read the trust list. This has a variable token so can't use ReadTokenValue method
-        err, self.trustTrustList = self.ReadTrustValues()
-        if (err != ERROR_NONE):
-            return err
-
-        return ERROR_NONE
-
-    def ReadTrustValues(self):
-        # Keep reading lines till token "CKA_TRUST_STEP_UP_APPROVED" found
-        trustList = []
-        for line in self.file:
-            line = line.rstrip('\n')
-            fields = line.split(" ")
-            if (len(fields) == 0):
-                continue
-            if (fields[0] == "CKA_TRUST_STEP_UP_APPROVED"):
-                # Done reading trust settings
-                return ERROR_NONE, trustList
-                break
-            if (fields[1] == "CK_TRUST"):
-                if ((fields[2] == "CKT_NETSCAPE_TRUSTED_DELEGATOR")):
-                    trustList.append(fields[0].strip())
-            else:
-                # Something is wrong
-                print "Error reading trust settings. " + line
-                return ERROR_GENERAL, []
-
-        # End of file?
-        if (line == ""):
-            return ERROR_EOF, ""
-        print "Error in ReadTrustValues(). Token ('CKA_TRUST_STEP_UP_APPROVED') not found!"
-        return ERROR_GENERAL, ""
-
-    def ReadTokenValue(self, token):
-        # Keep reading lines till token found
-        for line in self.file:
-            line = line.rstrip('\n')
-            fields = line.split(" ")
-            if (len(fields) == 0):
-                continue
-            if (fields[0] == token):
-                if (fields[1] != "MULTILINE_OCTAL"):
-                    value = " ".join(fields[2:])
-                    return ERROR_NONE, value
-                else:
-                    # Read multiline octal value till END
-                    value=""
-                    for nextline in self.file:
-                        nextline = nextline.rstrip('\n')
-                        if (nextline == "END"):
-                            break
-                        if (nextline != ""):
-                            # Convert string of octal to binary data
-                            # There must be an easier way than this!
-                            octalWordList = nextline.split("\\")
-                            for octalWord in octalWordList:
-                                if (octalWord != ""):
-                                    value = value + chr(int(octalWord, 8))
-                        else:
-                            print "ReadTokenValue(" + token + ") awaiting END. Unexpected end of file!"
-                            return ERROR_EOF, ""
-                    return ERROR_NONE, value
-
-        #print "ReadTokenValue(" + token + "). Token not found!"
-        return ERROR_EOF, ""
-
-#
-# Global function ReadTrustMapping()
-#
-def ReadTrustMapping(file):
-    trustMapping = []
-    for line in file:
-        line = line.rstrip('\n')
-        if (line == "" or line[0] == "#"):
-            continue
-        fields = line.split(",")
-        if (len(fields) == 0):
-            continue
-        if ((len(fields) % 2) != 1):
-            print "Error in file '%s' in line '%s'\n" % inFileTrustMapping % line
-            return GENERAL_ERROR, [[]]
-        mozTrust = fields[0].strip()
-        for index in range(1, len(fields), 2):
-            appUID = fields[index].strip()
-            appName = fields[index + 1].strip()
-            trustMapping.append([mozTrust, appUID, appName])
-    return ERROR_NONE, trustMapping
-
-#
-# Global function ReadCommandlineArgs()
-#
-def ReadCommandlineArgs(argv):
-    try:
-        flags, args = getopt.getopt(argv[1:], "hm:t:", ["help", "mozilla=", "trust="])
-    except getopt.GetoptError, err:
-        # Print usage
-        print str(err) + "\n"
-        PrintUsage()
-        sys.exit(-1)
-    for flag, arg in flags:
-        if flag in ("-h", "--help"):
-            PrintUsage()
-            sys.exit()
-        elif flag in ("-m", "--mozilla"):
-            globals()["inFileMozillaCerts"] = arg
-        elif flag in ("-t", "--trust"):
-            globals()["inFileTrustMapping"] = arg
-    print "certconvert - This script converts the Mozilla certificate store into Symbian OS certificate store."
-    print "\nInput Mozilla store file: %s" % globals()["inFileMozillaCerts"]
-    print "Input trust mapping: %s" % globals()["inFileTrustMapping"]
-
-#
-#
-#
-def PrintUsage():
-    print "certconvert - This script converts the Mozilla certificate store into Symbian OS certificate store."
-    print "It uses certapp for the conversion so certapp must be in the path."
-    print "Usage: certconvert [-h] | [-m <file> -t <file>] [-o <outpath>]"
-    print "where:"
-    print "-h | --help\tshows this help"
-    print "-m | --mozilla\tis used to specify the Mozilla certificate store input file."
-    print "\t\tIf not specified default is taken as 'certdata.txt'."
-    print "-t | --trust\tis used to specify the input trust mapping input file."
-    print "\t\tThis file maps the trust settings from the Mozilla store to "
-    print "\t\tSymbian's applications and uids."
-    print "\t\tIf not specified default is taken as 'trustmapping.txt'."
-
-#
-# Main starts here
-#
-
-# Read and process command line arguments
-ReadCommandlineArgs(sys.argv)
-
-# First read the trust mappings file
-print "Reading trust mapping file...",
-file = open(inFileTrustMapping, "r")
-err, trustMapping = ReadTrustMapping(file)
-if (err != ERROR_NONE):
-    print "\nError reading trust mapping file!\n"
-    sys.exit(-1)
-file.close()
-print "done."
-
-print "Reading Mozilla certificate store and processing certificates",
-inFileMoz=open(inFileMozillaCerts, "r")
-record = CertRecord(inFileMoz)
-inRecNum = outRecNum = 0
-while (record.Next() == ERROR_NONE):
-    inRecNum = inRecNum + 1
-    #print "Read record %d: %s" % (inRecNum, record.certLabel)
-    # Do filtering of records (if any)
-    
-    outRecNum = outRecNum + 1
-    # Create the human readable filecertstore entry
-    if (outRecNum == 1):
-        if (os.path.exists(outPath) == False):
-            os.makedirs(outPath)
-        if (os.path.exists(outPath + "\\certs") == False):
-            os.makedirs(outPath + "\\certs")
-        outFileSym = open(outPath + outFileCaCerts, "w")
-        outFileSym.write("StartCertStoreEntries\n")
-
-    outFileSym.write("\t# Entry %d\n" % outRecNum)
-
-    # Write out the SHA1 hash of the certificate (to make it easier to compare certs)
-    # Convert to hex
-    sha1hash = ""
-    #octalWordList = record.trustSha1Hash.split("\\")
-    for index in range(0, len(record.trustSha1Hash)):
-        hexdigits = hex(ord(record.trustSha1Hash[index]))[2:]
-        hexdigits = hexdigits.zfill(2)
-        sha1hash = sha1hash + hexdigits + " "
-    outFileSym.write("\t# Thumbprint(hex) %s\n" % sha1hash)
-
-    outFileSym.write("\tStartEntry " + record.certLabel + "\n")
-    outFileSym.write("\t\tDeletable true\n")
-    outFileSym.write("\t\tFormat EX509Certificate\n")
-    outFileSym.write("\t\tCertOwnerType ECACertificate\n")
-    outFileSym.write("\t\tSubjectKeyId auto\n")
-    outFileSym.write("\t\tIssuerKeyId auto\n")
-
-    # Write out trust details
-    outFileSym.write("\t\tStartApplicationList\n")
-    for trust in record.trustTrustList:
-        # Look for the mapping
-        for mapping in trustMapping:
-            if (trust == mapping[0]):
-                # Found a mapping. Add it and keep on looking since
-                # there could be more than one app mapping
-                outFileSym.write('\t\t\tApplication "' + mapping[2] + '"\n');
-    outFileSym.write("\t\tEndApplicationList\n")
-    outFileSym.write("\t\tTrusted true\n")
-    certFileName = "certs\\\\cert%04d" % outRecNum + ".der"
-    outFileSym.write('\t\tDataFileName "' + certFileName + '"\n')
-    outFileSym.write("\tEndEntry\n\n")
-    # Write the certificate file
-    outFileCert = open(outPath + certFileName, "wb")
-    outFileCert.write(record.certData)
-    outFileCert.close()
-    print ".",
-
-if (outRecNum > 0):
-    outFileSym.write("EndCertStoreEntries\n")
-    outFileSym.close()
-print "done."
-
-# Finally create the app to uid mapping file for Symbian OS
-if (outRecNum > 0):
-    outFileSym = open(outPath + outFileCertClients, "w")
-    outFileSym.write("StartClientInfo\n")
-    for index in range(0, len(trustMapping)):
-        outFileSym.write("\t#Entry %d\n" % (index + 1))
-        outFileSym.write("\t\tUid %s\n" % trustMapping[index][1])
-        outFileSym.write('\t\tName "%s"\n' % trustMapping[index][2])
-    outFileSym.write("EndClientInfo\n")
-    outFileSym.close()
-inFileMoz.close()
-
-print "Invoking certapp tool to create the Symbian certificate store...",
-certappCmd = "certapp" + \
-             " --in --hca=" + outPath + outFileCaCerts + " --hcc=" + outPath + outFileCertClients + \
-             " --out --bca=" + outPath + "cacerts.dat" + " --bcc=" + outPath + "certclients.dat"
-
-dummyFile = open(outPath + outCertAppOutput, "w")
-p = subprocess.Popen(certappCmd, 0, None, None, dummyFile, dummyFile)
-retcode = p.wait()
-dummyFile.close()
-
-if (retcode != 0):
-    print "\ncertapp returned error code: %d" % retcode
-    print certappCmd
-    print "For details see file " + outPath + outCertAppOutput
-    print "Leaving temp files untouched for debugging"
-else:
-    print "done."
-    print "Cleaning up temp files...",
-    files = glob.glob(outPath + "certs\\*")
-    for file in files:
-       os.remove(file)
-    os.rmdir(outPath + "certs")
-    os.remove(outPath + outFileCaCerts)
-    os.remove(outPath + outFileCertClients)
-    os.remove(outPath + outCertAppOutput)
-    print "done."
-    print "Done. Read %d" % inRecNum + " certificates. Written %d" % outRecNum + " certificates.\n"
--- a/cryptoservices/browserrootcertificates/readme.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-This component just contains the python script to convert the Mozilla root certificate store into the file format that can be used by the Symbian OS file-based certificates store.
-
-The latest Mozilla certificate store can be obtained from http://mxr.mozilla.org/mozilla/source/security/nss/lib/ckfw/builtins/certdata.txt?raw=1
-
-After fetching the above certificate store file (certdata.txt) run the script (certconvert.py --help) for more information.
--- a/cryptoservices/browserrootcertificates/trustmapping.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-#
-# Trust mapping file used by the certconvert.py script to match the Mozilla certificate trust to Symbian's application uid and name
-# The fomat is:
-# <Mozilla Trust Entry>[, <Symbian app UID>, <Name>]
-#
-
-CKA_TRUST_DIGITAL_SIGNATURE
-CKA_TRUST_NON_REPUDIATION
-CKA_TRUST_KEY_ENCIPHERMENT
-CKA_TRUST_DATA_ENCIPHERMENT
-CKA_TRUST_KEY_AGREEMENT
-CKA_TRUST_KEY_CERT_SIGN
-CKA_TRUST_CRL_SIGN
-CKA_TRUST_SERVER_AUTH, 0x1000183D, Server Authentication, 0x1000A8B6, OCSP
-CKA_TRUST_CLIENT_AUTH
-CKA_TRUST_CODE_SIGNING, 0x101F9B28, MIDlet Installation
-CKA_TRUST_EMAIL_PROTECTION
-CKA_TRUST_IPSEC_END_SYSTEM
-CKA_TRUST_IPSEC_TUNNEL
-CKA_TRUST_IPSEC_USER
-CKA_TRUST_TIME_STAMPING
--- a/cryptoservices/certificateandkeymgmt/bwins/certstoreu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-EXPORTS
-	??1CCertificateAppInfoManager@@UAE@XZ @ 1 NONAME ; CCertificateAppInfoManager::~CCertificateAppInfoManager(void)
-	??1CUnifiedCertStore@@UAE@XZ @ 2 NONAME ; CUnifiedCertStore::~CUnifiedCertStore(void)
-	??1CUnifiedKeyStore@@UAE@XZ @ 3 NONAME ; CUnifiedKeyStore::~CUnifiedKeyStore(void)
-	?AddL@CCertificateAppInfoManager@@QAEXABVTCertificateAppInfo@@@Z @ 4 NONAME ; void CCertificateAppInfoManager::AddL(class TCertificateAppInfo const &)
-	?ApplicationL@CCertificateAppInfoManager@@QBEABVTCertificateAppInfo@@ABVTUid@@AAH@Z @ 5 NONAME ; class TCertificateAppInfo const & CCertificateAppInfoManager::ApplicationL(class TUid const &, int &) const
-	?Applications@CCertificateAppInfoManager@@QBEABV?$RArray@VTCertificateAppInfo@@@@XZ @ 6 NONAME ; class RArray<class TCertificateAppInfo> const & CCertificateAppInfoManager::Applications(void) const
-	?CancelCreateKey@CUnifiedKeyStore@@QAEXXZ @ 7 NONAME ; void CUnifiedKeyStore::CancelCreateKey(void)
-	?CancelDeleteKey@CUnifiedKeyStore@@QAEXXZ @ 8 NONAME ; void CUnifiedKeyStore::CancelDeleteKey(void)
-	?CancelExportEncryptedKey@CUnifiedKeyStore@@QAEXXZ @ 9 NONAME ; void CUnifiedKeyStore::CancelExportEncryptedKey(void)
-	?CancelExportKey@CUnifiedKeyStore@@QAEXXZ @ 10 NONAME ; void CUnifiedKeyStore::CancelExportKey(void)
-	?CancelImportKey@CUnifiedKeyStore@@QAEXXZ @ 11 NONAME ; void CUnifiedKeyStore::CancelImportKey(void)
-	?CancelInitialize@CUnifiedCertStore@@QAEXXZ @ 12 NONAME ; void CUnifiedCertStore::CancelInitialize(void)
-	?CancelInitialize@CUnifiedKeyStore@@QAEXXZ @ 13 NONAME ; void CUnifiedKeyStore::CancelInitialize(void)
-	?CancelRelock@CUnifiedKeyStore@@QAEXXZ @ 14 NONAME ; void CUnifiedKeyStore::CancelRelock(void)
-	?CancelRemove@CUnifiedCertStore@@QAEXXZ @ 15 NONAME ; void CUnifiedCertStore::CancelRemove(void)
-	?CancelSetApplicability@CUnifiedCertStore@@QAEXXZ @ 16 NONAME ; void CUnifiedCertStore::CancelSetApplicability(void)
-	?CancelSetManagementPolicy@CUnifiedKeyStore@@QAEXXZ @ 17 NONAME ; void CUnifiedKeyStore::CancelSetManagementPolicy(void)
-	?CancelSetPassphraseTimeout@CUnifiedKeyStore@@QAEXXZ @ 18 NONAME ; void CUnifiedKeyStore::CancelSetPassphraseTimeout(void)
-	?CancelSetTrust@CUnifiedCertStore@@QAEXXZ @ 19 NONAME ; void CUnifiedCertStore::CancelSetTrust(void)
-	?CancelSetUsePolicy@CUnifiedKeyStore@@QAEXXZ @ 20 NONAME ; void CUnifiedKeyStore::CancelSetUsePolicy(void)
-	?CertStore@CUnifiedCertStore@@QAEAAVMCTCertStore@@H@Z @ 21 NONAME ; class MCTCertStore & CUnifiedCertStore::CertStore(int)
-	?CertStoreCount@CUnifiedCertStore@@QBEHXZ @ 22 NONAME ; int CUnifiedCertStore::CertStoreCount(void) const
-	?CreateKey@CUnifiedKeyStore@@QAEXHW4TKeyUsagePKCS15@@IABVTDesC16@@W4EKeyAlgorithm@CKeyInfoBase@@HVTTime@@3AAPAVCCTKeyInfo@@AAVTRequestStatus@@@Z @ 23 NONAME ; void CUnifiedKeyStore::CreateKey(int, enum TKeyUsagePKCS15, unsigned int, class TDesC16 const &, enum CKeyInfoBase::EKeyAlgorithm, int, class TTime, class TTime, class CCTKeyInfo * &, class TRequestStatus &)
-	?DeleteKey@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@AAVTRequestStatus@@@Z @ 24 NONAME ; void CUnifiedKeyStore::DeleteKey(class TCTTokenObjectHandle, class TRequestStatus &)
-	?ExportEncryptedKey@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@ABVCPBEncryptParms@@AAPAVHBufC8@@AAVTRequestStatus@@@Z @ 25 NONAME ; void CUnifiedKeyStore::ExportEncryptedKey(class TCTTokenObjectHandle, class CPBEncryptParms const &, class HBufC8 * &, class TRequestStatus &)
-	?ExportKey@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@AAPAVHBufC8@@AAVTRequestStatus@@@Z @ 26 NONAME ; void CUnifiedKeyStore::ExportKey(class TCTTokenObjectHandle, class HBufC8 * &, class TRequestStatus &)
-	?ImportKey@CUnifiedKeyStore@@QAEXHABVTDesC8@@W4TKeyUsagePKCS15@@ABVTDesC16@@HVTTime@@3AAPAVCCTKeyInfo@@AAVTRequestStatus@@@Z @ 27 NONAME ; void CUnifiedKeyStore::ImportKey(int, class TDesC8 const &, enum TKeyUsagePKCS15, class TDesC16 const &, int, class TTime, class TTime, class CCTKeyInfo * &, class TRequestStatus &)
-	?Initialize@CUnifiedCertStore@@QAEXAAVTRequestStatus@@@Z @ 28 NONAME ; void CUnifiedCertStore::Initialize(class TRequestStatus &)
-	?Initialize@CUnifiedKeyStore@@QAEXAAVTRequestStatus@@@Z @ 29 NONAME ; void CUnifiedKeyStore::Initialize(class TRequestStatus &)
-	?KeyStore@CUnifiedKeyStore@@QAEAAVMCTKeyStore@@H@Z @ 30 NONAME ; class MCTKeyStore & CUnifiedKeyStore::KeyStore(int)
-	?KeyStoreCount@CUnifiedKeyStore@@QBEHXZ @ 31 NONAME ; int CUnifiedKeyStore::KeyStoreCount(void) const
-	?KeyStoreManager@CUnifiedKeyStore@@QAEAAVMCTKeyStoreManager@@H@Z @ 32 NONAME ; class MCTKeyStoreManager & CUnifiedKeyStore::KeyStoreManager(int)
-	?KeyStoreManagerCount@CUnifiedKeyStore@@QBEHXZ @ 33 NONAME ; int CUnifiedKeyStore::KeyStoreManagerCount(void) const
-	?List@CUnifiedCertStore@@QAEXAAV?$RMPointerArray@VCCTCertInfo@@@@ABVCCertAttributeFilter@@ABVTDesC8@@AAVTRequestStatus@@@Z @ 34 NONAME ; void CUnifiedCertStore::List(class RMPointerArray<class CCTCertInfo> &, class CCertAttributeFilter const &, class TDesC8 const &, class TRequestStatus &)
-	?List@CUnifiedCertStore@@QAEXAAV?$RMPointerArray@VCCTCertInfo@@@@ABVCCertAttributeFilter@@V?$RPointerArray@$$CBVTDesC8@@@@AAVTRequestStatus@@@Z @ 35 NONAME ; void CUnifiedCertStore::List(class RMPointerArray<class CCTCertInfo> &, class CCertAttributeFilter const &, class RPointerArray<class TDesC8 const >, class TRequestStatus &)
-	?NewL@CCertificateAppInfoManager@@SAPAV1@AAVRFs@@H@Z @ 36 NONAME ; class CCertificateAppInfoManager * CCertificateAppInfoManager::NewL(class RFs &, int)
-	?NewL@CCertificateAppInfoManager@@SAPAV1@XZ @ 37 NONAME ; class CCertificateAppInfoManager * CCertificateAppInfoManager::NewL(void)
-	?NewL@CUnifiedCertStore@@SAPAV1@AAVRFs@@H@Z @ 38 NONAME ; class CUnifiedCertStore * CUnifiedCertStore::NewL(class RFs &, int)
-	?NewL@CUnifiedKeyStore@@SAPAV1@AAVRFs@@@Z @ 39 NONAME ; class CUnifiedKeyStore * CUnifiedKeyStore::NewL(class RFs &)
-	?NewLC@CCertificateAppInfoManager@@SAPAV1@AAVRFs@@H@Z @ 40 NONAME ; class CCertificateAppInfoManager * CCertificateAppInfoManager::NewLC(class RFs &, int)
-	?NewLC@CCertificateAppInfoManager@@SAPAV1@XZ @ 41 NONAME ; class CCertificateAppInfoManager * CCertificateAppInfoManager::NewLC(void)
-	?NewLC@CUnifiedCertStore@@SAPAV1@AAVRFs@@H@Z @ 42 NONAME ; class CUnifiedCertStore * CUnifiedCertStore::NewLC(class RFs &, int)
-	?NewLC@CUnifiedKeyStore@@SAPAV1@AAVRFs@@@Z @ 43 NONAME ; class CUnifiedKeyStore * CUnifiedKeyStore::NewLC(class RFs &)
-	?ReadOnlyCertStore@CUnifiedCertStore@@QAEAAVMCTCertStore@@H@Z @ 44 NONAME ; class MCTCertStore & CUnifiedCertStore::ReadOnlyCertStore(int)
-	?ReadOnlyCertStoreCount@CUnifiedCertStore@@QBEHXZ @ 45 NONAME ; int CUnifiedCertStore::ReadOnlyCertStoreCount(void) const
-	?Relock@CUnifiedKeyStore@@QAEXAAVTRequestStatus@@@Z @ 46 NONAME ; void CUnifiedKeyStore::Relock(class TRequestStatus &)
-	?Remove@CUnifiedCertStore@@QAEXABVCCTCertInfo@@AAVTRequestStatus@@@Z @ 47 NONAME ; void CUnifiedCertStore::Remove(class CCTCertInfo const &, class TRequestStatus &)
-	?RemoveL@CCertificateAppInfoManager@@QAEXABVTUid@@@Z @ 48 NONAME ; void CCertificateAppInfoManager::RemoveL(class TUid const &)
-	?Retrieve@CUnifiedCertStore@@QAEXABVCCTCertInfo@@AAPAVCCertificate@@AAVTRequestStatus@@@Z @ 49 NONAME ; void CUnifiedCertStore::Retrieve(class CCTCertInfo const &, class CCertificate * &, class TRequestStatus &)
-	?SetApplicability@CUnifiedCertStore@@QAEXABVCCTCertInfo@@ABV?$RArray@VTUid@@@@AAVTRequestStatus@@@Z @ 50 NONAME ; void CUnifiedCertStore::SetApplicability(class CCTCertInfo const &, class RArray<class TUid> const &, class TRequestStatus &)
-	?SetManagementPolicy@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@ABVTSecurityPolicy@@AAVTRequestStatus@@@Z @ 51 NONAME ; void CUnifiedKeyStore::SetManagementPolicy(class TCTTokenObjectHandle, class TSecurityPolicy const &, class TRequestStatus &)
-	?SetPassphraseTimeout@CUnifiedKeyStore@@QAEXHAAVTRequestStatus@@@Z @ 52 NONAME ; void CUnifiedKeyStore::SetPassphraseTimeout(int, class TRequestStatus &)
-	?SetTrust@CUnifiedCertStore@@QAEXABVCCTCertInfo@@HAAVTRequestStatus@@@Z @ 53 NONAME ; void CUnifiedCertStore::SetTrust(class CCTCertInfo const &, int, class TRequestStatus &)
-	?SetUsePolicy@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@ABVTSecurityPolicy@@AAVTRequestStatus@@@Z @ 54 NONAME ; void CUnifiedKeyStore::SetUsePolicy(class TCTTokenObjectHandle, class TSecurityPolicy const &, class TRequestStatus &)
-	?WritableCertStore@CUnifiedCertStore@@QAEAAVMCTWritableCertStore@@H@Z @ 55 NONAME ; class MCTWritableCertStore & CUnifiedCertStore::WritableCertStore(int)
-	?WritableCertStoreCount@CUnifiedCertStore@@QBEHXZ @ 56 NONAME ; int CUnifiedCertStore::WritableCertStoreCount(void) const
-	?NewL@CUnifiedCertStore@@SAPAV1@AAVRFs@@HAAV?$RArray@H@@@Z @ 57 NONAME ; class CUnifiedCertStore * CUnifiedCertStore::NewL(class RFs &, int, class RArray<int> &)
-	?NewLC@CUnifiedCertStore@@SAPAV1@AAVRFs@@HAAV?$RArray@H@@@Z @ 58 NONAME ; class CUnifiedCertStore * CUnifiedCertStore::NewLC(class RFs &, int, class RArray<int> &)
-	?ImportKey@CUnifiedKeyStore@@QAEXHABVTDesC8@@W4TKeyUsagePKCS15@@ABVTDesC16@@HVTTime@@32HAAPAVCCTKeyInfo@@AAVTRequestStatus@@@Z @ 59 NONAME ; void CUnifiedKeyStore::ImportKey(int, class TDesC8 const &, enum TKeyUsagePKCS15, class TDesC16 const &, int, class TTime, class TTime, class TDesC16 const &, int, class CCTKeyInfo * &, class TRequestStatus &)
-	?CreateKey@CUnifiedKeyStore@@QAEXHW4TKeyUsagePKCS15@@IABVTDesC16@@W4EKeyAlgorithm@CKeyInfoBase@@HVTTime@@31HAAPAVCCTKeyInfo@@AAVTRequestStatus@@@Z @ 60 NONAME ; void CUnifiedKeyStore::CreateKey(int, enum TKeyUsagePKCS15, unsigned int, class TDesC16 const &, enum CKeyInfoBase::EKeyAlgorithm, int, class TTime, class TTime, class TDesC16 const &, int, class CCTKeyInfo * &, class TRequestStatus &)
-	?SetAuthenticationPolicy@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@ABVTDesC16@@HAAVTRequestStatus@@@Z @ 61 NONAME ; void CUnifiedKeyStore::SetAuthenticationPolicy(class TCTTokenObjectHandle, class TDesC16 const &, int, class TRequestStatus &)
-	?GetAuthenticationPolicy@CUnifiedKeyStore@@QAEXVTCTTokenObjectHandle@@AAPAVHBufC16@@AAHAAVTRequestStatus@@@Z @ 62 NONAME ; void CUnifiedKeyStore::GetAuthenticationPolicy(class TCTTokenObjectHandle, class HBufC16 * &, int &, class TRequestStatus &)
-
Binary file cryptoservices/certificateandkeymgmt/certstore/certclients.dat has changed
--- a/cryptoservices/certificateandkeymgmt/certstore/certstore.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/certstore/certstore.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -28,11 +28,8 @@
 
 UID 0x1000008d 0x10005e0a
 VENDORID 0x70000001
-#ifdef SYMBIAN_AUTH_SERVER
-DEFFILE certstore.def
-#else
+
 DEFFILE CERTSTORE_V2.DEF
-#endif // SYMBIAN_AUTH_SERVER
 
 SOURCEPATH	.
 
--- a/cryptoservices/certificateandkeymgmt/certstore/unifiedkeystore.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/certstore/unifiedkeystore.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -372,49 +372,6 @@
 		}
 	}
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-void CUnifiedKeyStore::Open(const TCTTokenObjectHandle& aHandle,
-                            CryptoSpi::CSigner*& aSigner,
-                            TRequestStatus& aStatus)
-    {
-    if (DoOpen(aHandle, aStatus))
-        {
-        iKeyStore->Open(aHandle, aSigner, iStatus);
-        }
-    }
-
-void CUnifiedKeyStore::Open(const TCTTokenObjectHandle& aHandle,
-                            CryptoSpi:: CAsymmetricCipher*& asymmetricCipherObj,
-                            TRequestStatus& aStatus)
-    {
-    if (DoOpen(aHandle, aStatus))
-        {
-        iKeyStore->Open(aHandle, asymmetricCipherObj, iStatus);
-        }
-    }
-
-void CUnifiedKeyStore::Decrypt(const TCTTokenObjectHandle& aHandle,
-                               const TDesC8& aCiphertext,
-                               HBufC8*& aPlaintextPtr,
-                               TRequestStatus& aStatus)
-    {
-    if (DoOpen(aHandle, aStatus))
-        {
-        iKeyStore->Decrypt(aHandle, aCiphertext, aPlaintextPtr, iStatus);
-        }
-    }
-
-void CUnifiedKeyStore::Sign(const TCTTokenObjectHandle& aHandle,
-                            const TDesC8& aPlaintext,
-                            CryptoSpi::CCryptoParams*& aSignature,
-                            TRequestStatus& aStatus)
-    {
-    if (DoOpen(aHandle, aStatus))
-        {
-        iKeyStore->Sign(aHandle, aPlaintext, aSignature, iStatus);
-        }
-    }
-#endif //SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
 
 //	************************************************************************
 //	MKeyStoreManager
@@ -637,112 +594,6 @@
 	return *result;
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
-	
-EXPORT_C void CUnifiedKeyStore::CreateKey(	TInt aKeyStoreIndex, TKeyUsagePKCS15 aUsage,TUint aSize, 
-								const TDesC& aLabel, CCTKeyInfo::EKeyAlgorithm aAlgorithm, 
-								TInt aAccessType, TTime aStartDate, TTime aEndDate, 
-								const TDesC& aAuthenticationString, TInt aFreshness,
-								CCTKeyInfo*& aKeyInfoOut, TRequestStatus& aStatus)
-		{
-		
-		StartAsyncOperation(ECreateKey, aStatus);
-		TRAPD(err, PrepareToCreateKeyL(aKeyStoreIndex, aUsage, aSize, aLabel, aAlgorithm, aAccessType,
-									   aStartDate, aEndDate, aStatus));
-		if (KErrNone != err)
-			{
-			Complete(err);
-			return;
-			}
-		
-		iKeyInfoOut = &aKeyInfoOut;
-		aKeyInfoOut = NULL;
-		iKeyStoreManager->CreateKey(aAuthenticationString, aFreshness, iKeyInfo, iStatus);
-		SetActive();
-		
-		}
-
-
-EXPORT_C void CUnifiedKeyStore::ImportKey(	TInt aKeyStoreIndex, const TDesC8& aKeyData,
-								TKeyUsagePKCS15 aUsage, const TDesC& aLabel, 
-								TInt aAccessType, TTime aStartDate, TTime aEndDate, 
-								const TDesC& aAuthenticationString, TInt aFreshness,
-								CCTKeyInfo*& aKeyInfoOut, TRequestStatus& aStatus)
-		{
-		TBool isEncrypted = TASN1DecPKCS8::IsEncryptedPKCS8Data(aKeyData);
-		StartAsyncOperation(isEncrypted ? EImportKeyEncrypted : EImportKey, aStatus);
-
-		ASSERT(!iKeyData);
-		iKeyData = aKeyData.Alloc();
-		if (!iKeyData)	//	OOM or some other catastrophe
-			{
-			Complete(KErrNoMemory);
-			return;
-			}
-		
-		TRAPD(err, PrepareToCreateKeyL(aKeyStoreIndex, aUsage, 0, aLabel, CCTKeyInfo::EInvalidAlgorithm, aAccessType,
-									   aStartDate, aEndDate, aStatus));
-		if (KErrNone != err)
-			{
-			Complete(err);
-			return;
-			}
-
-		iKeyInfoOut = &aKeyInfoOut;
-		aKeyInfoOut = NULL;
-
-		if (isEncrypted)
-			{
-			iKeyStoreManager->ImportEncryptedKey(*iKeyData, aAuthenticationString, aFreshness, iKeyInfo, iStatus);
-			}
-		else
-			{
-			iKeyStoreManager->ImportKey(*iKeyData, aAuthenticationString, aFreshness, iKeyInfo, iStatus);
-			}
-		SetActive();
-		}
-
-EXPORT_C void CUnifiedKeyStore::SetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle, 
-															const TDesC& aAuthenticationString,
-															TInt aFreshness,					
-															TRequestStatus& aStatus)
-	{
-	StartAsyncOperation(ESetAuthenticationPolicy, aStatus);
-		
-	ASSERT(!iKeyStoreManager);	
-	iKeyStoreManager = FindKeyStoreManager(aHandle);
-	if (!iKeyStoreManager)
-		{
-		Complete(KErrNotFound);
-		return;
-		} 
-		
-	iKeyStoreManager->SetAuthenticationPolicy(aHandle, aAuthenticationString, aFreshness, iStatus);
-	SetActive();
-		
-	}
-
-EXPORT_C void CUnifiedKeyStore::GetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle, 
-															HBufC*& aAuthenticationString,
-															TInt& aFreshness,					
-															TRequestStatus& aStatus)
-	{
-	StartAsyncOperation(EGetAuthenticationPolicy, aStatus);
-		
-	ASSERT(!iKeyStoreManager);	
-	iKeyStoreManager = FindKeyStoreManager(aHandle);
-	if (!iKeyStoreManager)
-		{
-		Complete(KErrNotFound);
-		return;
-		} 
-		
-	iKeyStoreManager->GetAuthenticationPolicy(aHandle, aAuthenticationString, aFreshness, iStatus);
-	SetActive();
-		
-	}
-
-#endif // SYMBIAN_AUTH_SERVER
 
 CUnifiedKeyStore::CUnifiedKeyStore(RFs& aFs)
 	:	CActive(EPriorityNormal), iFs(aFs), iState(EIdle)
--- a/cryptoservices/certificateandkeymgmt/eabi/certstoreu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-EXPORTS
-	_ZN16CUnifiedKeyStore10InitializeER14TRequestStatus @ 1 NONAME
-	_ZN16CUnifiedKeyStore12CancelRelockEv @ 2 NONAME
-	_ZN16CUnifiedKeyStore12SetUsePolicyE20TCTTokenObjectHandleRK15TSecurityPolicyR14TRequestStatus @ 3 NONAME
-	_ZN16CUnifiedKeyStore15CancelCreateKeyEv @ 4 NONAME
-	_ZN16CUnifiedKeyStore15CancelDeleteKeyEv @ 5 NONAME
-	_ZN16CUnifiedKeyStore15CancelExportKeyEv @ 6 NONAME
-	_ZN16CUnifiedKeyStore15CancelImportKeyEv @ 7 NONAME
-	_ZN16CUnifiedKeyStore15KeyStoreManagerEi @ 8 NONAME
-	_ZN16CUnifiedKeyStore16CancelInitializeEv @ 9 NONAME
-	_ZN16CUnifiedKeyStore18CancelSetUsePolicyEv @ 10 NONAME
-	_ZN16CUnifiedKeyStore18ExportEncryptedKeyE20TCTTokenObjectHandleRK15CPBEncryptParmsRP6HBufC8R14TRequestStatus @ 11 NONAME
-	_ZN16CUnifiedKeyStore19SetManagementPolicyE20TCTTokenObjectHandleRK15TSecurityPolicyR14TRequestStatus @ 12 NONAME
-	_ZN16CUnifiedKeyStore20SetPassphraseTimeoutEiR14TRequestStatus @ 13 NONAME
-	_ZN16CUnifiedKeyStore24CancelExportEncryptedKeyEv @ 14 NONAME
-	_ZN16CUnifiedKeyStore25CancelSetManagementPolicyEv @ 15 NONAME
-	_ZN16CUnifiedKeyStore26CancelSetPassphraseTimeoutEv @ 16 NONAME
-	_ZN16CUnifiedKeyStore4NewLER3RFs @ 17 NONAME
-	_ZN16CUnifiedKeyStore5NewLCER3RFs @ 18 NONAME
-	_ZN16CUnifiedKeyStore6RelockER14TRequestStatus @ 19 NONAME
-	_ZN16CUnifiedKeyStore8KeyStoreEi @ 20 NONAME
-	_ZN16CUnifiedKeyStore9CreateKeyEi15TKeyUsagePKCS15jRK7TDesC16N12CKeyInfoBase13EKeyAlgorithmEi5TTimeS6_RP10CCTKeyInfoR14TRequestStatus @ 21 NONAME
-	_ZN16CUnifiedKeyStore9DeleteKeyE20TCTTokenObjectHandleR14TRequestStatus @ 22 NONAME
-	_ZN16CUnifiedKeyStore9ExportKeyE20TCTTokenObjectHandleRP6HBufC8R14TRequestStatus @ 23 NONAME
-	_ZN16CUnifiedKeyStore9ImportKeyEiRK6TDesC815TKeyUsagePKCS15RK7TDesC16i5TTimeS7_RP10CCTKeyInfoR14TRequestStatus @ 24 NONAME
-	_ZN16CUnifiedKeyStoreD0Ev @ 25 NONAME
-	_ZN16CUnifiedKeyStoreD1Ev @ 26 NONAME
-	_ZN16CUnifiedKeyStoreD2Ev @ 27 NONAME
-	_ZN17CUnifiedCertStore10InitializeER14TRequestStatus @ 28 NONAME
-	_ZN17CUnifiedCertStore12CancelRemoveEv @ 29 NONAME
-	_ZN17CUnifiedCertStore14CancelSetTrustEv @ 30 NONAME
-	_ZN17CUnifiedCertStore16CancelInitializeEv @ 31 NONAME
-	_ZN17CUnifiedCertStore16SetApplicabilityERK11CCTCertInfoRK6RArrayI4TUidER14TRequestStatus @ 32 NONAME
-	_ZN17CUnifiedCertStore17ReadOnlyCertStoreEi @ 33 NONAME
-	_ZN17CUnifiedCertStore17WritableCertStoreEi @ 34 NONAME
-	_ZN17CUnifiedCertStore22CancelSetApplicabilityEv @ 35 NONAME
-	_ZN17CUnifiedCertStore4ListER14RMPointerArrayI11CCTCertInfoERK20CCertAttributeFilter13RPointerArrayIK6TDesC8ER14TRequestStatus @ 36 NONAME
-	_ZN17CUnifiedCertStore4ListER14RMPointerArrayI11CCTCertInfoERK20CCertAttributeFilterRK6TDesC8R14TRequestStatus @ 37 NONAME
-	_ZN17CUnifiedCertStore4NewLER3RFsi @ 38 NONAME
-	_ZN17CUnifiedCertStore5NewLCER3RFsi @ 39 NONAME
-	_ZN17CUnifiedCertStore6RemoveERK11CCTCertInfoR14TRequestStatus @ 40 NONAME
-	_ZN17CUnifiedCertStore8RetrieveERK11CCTCertInfoRP12CCertificateR14TRequestStatus @ 41 NONAME
-	_ZN17CUnifiedCertStore8SetTrustERK11CCTCertInfoiR14TRequestStatus @ 42 NONAME
-	_ZN17CUnifiedCertStore9CertStoreEi @ 43 NONAME
-	_ZN17CUnifiedCertStoreD0Ev @ 44 NONAME
-	_ZN17CUnifiedCertStoreD1Ev @ 45 NONAME
-	_ZN17CUnifiedCertStoreD2Ev @ 46 NONAME
-	_ZN26CCertificateAppInfoManager4AddLERK19TCertificateAppInfo @ 47 NONAME
-	_ZN26CCertificateAppInfoManager4NewLER3RFsi @ 48 NONAME
-	_ZN26CCertificateAppInfoManager4NewLEv @ 49 NONAME
-	_ZN26CCertificateAppInfoManager5NewLCER3RFsi @ 50 NONAME
-	_ZN26CCertificateAppInfoManager5NewLCEv @ 51 NONAME
-	_ZN26CCertificateAppInfoManager7RemoveLERK4TUid @ 52 NONAME
-	_ZN26CCertificateAppInfoManagerD0Ev @ 53 NONAME
-	_ZN26CCertificateAppInfoManagerD1Ev @ 54 NONAME
-	_ZN26CCertificateAppInfoManagerD2Ev @ 55 NONAME
-	_ZNK16CUnifiedKeyStore13KeyStoreCountEv @ 56 NONAME
-	_ZNK16CUnifiedKeyStore20KeyStoreManagerCountEv @ 57 NONAME
-	_ZNK17CUnifiedCertStore14CertStoreCountEv @ 58 NONAME
-	_ZNK17CUnifiedCertStore22ReadOnlyCertStoreCountEv @ 59 NONAME
-	_ZNK17CUnifiedCertStore22WritableCertStoreCountEv @ 60 NONAME
-	_ZNK26CCertificateAppInfoManager12ApplicationLERK4TUidRi @ 61 NONAME
-	_ZNK26CCertificateAppInfoManager12ApplicationsEv @ 62 NONAME
-	_ZTI26CCertificateAppInfoManager @ 63 NONAME ; #<TI>#
-	_ZTV26CCertificateAppInfoManager @ 64 NONAME ; #<VT>#
-	_ZN17CUnifiedCertStore4NewLER3RFsiR6RArrayIiE @ 65 NONAME
-	_ZN17CUnifiedCertStore5NewLCER3RFsiR6RArrayIiE @ 66 NONAME
-	_ZN16CUnifiedKeyStore23GetAuthenticationPolicyE20TCTTokenObjectHandleRP7HBufC16RiR14TRequestStatus @ 67 NONAME
-	_ZN16CUnifiedKeyStore23SetAuthenticationPolicyE20TCTTokenObjectHandleRK7TDesC16iR14TRequestStatus @ 68 NONAME
-	_ZN16CUnifiedKeyStore9CreateKeyEi15TKeyUsagePKCS15jRK7TDesC16N12CKeyInfoBase13EKeyAlgorithmEi5TTimeS6_S3_iRP10CCTKeyInfoR14TRequestStatus @ 69 NONAME
-	_ZN16CUnifiedKeyStore9ImportKeyEiRK6TDesC815TKeyUsagePKCS15RK7TDesC16i5TTimeS7_S6_iRP10CCTKeyInfoR14TRequestStatus @ 70 NONAME
-
--- a/cryptoservices/certificateandkeymgmt/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -52,6 +52,14 @@
 ../inc/x509constraintext.h			SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(x509constraintext.h)
 
 ../inc/x509keyencoder.h				SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(x509keyencoder.h)
+#ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/x509bitstring.h				/epoc32/include/x509bitstring.h
+#endif
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/pkcs7signedobject.h			/epoc32/include/pkcs7signedobject.h
+#endif
+#endif
 
 ../inc/swicertstore.h           SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(swicertstore.h)
 
@@ -66,6 +74,9 @@
 ../inc/wtlscertchain.h SYMBIAN_OS_LAYER_PUBLIC_EXPORT_PATH(wtlscertchain.h)
 ../inc/pkcs7excert.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pkcs7excert.h)
 ../inc/pkcs7issuerserial.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(pkcs7issuerserial.h)
+#ifdef SYMBIAN_OLD_EXPORT_LOCATION
+../inc/pkcs7signerinfo.h
+#endif
 
 
 ../inc/cmssignedobject.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(cmssignedobject.h)
@@ -873,12 +884,12 @@
 
 
 // Symbian signed root certs and swi cert store, from top-level rootcerts directory
-../../rootcertificates/data/SymbianA.der			/epoc32/winscw/c/rootcerts/symbiana.der
-../../rootcertificates/data/SymbianB.der			/epoc32/winscw/c/rootcerts/symbianb.der
-../../rootcertificates/data/symbianc.der			/epoc32/winscw/c/rootcerts/symbianc.der
-../../rootcertificates/data/symbiand.der			/epoc32/winscw/c/rootcerts/symbiand.der
-../../rootcertificates/data/SymbianSignedCerts.txt	/epoc32/winscw/c/rootcerts/symbiansignedcerts.txt
-../../rootcertificates/data/swicertstore.dat		/epoc32/winscw/c/rootcerts/swicertstore.dat
+../../rootcertificates/SymbianA.der			/epoc32/winscw/c/rootcerts/symbiana.der
+../../rootcertificates/SymbianB.der			/epoc32/winscw/c/rootcerts/symbianb.der
+../../rootcertificates/symbianc.der			/epoc32/winscw/c/rootcerts/symbianc.der
+../../rootcertificates/symbiand.der			/epoc32/winscw/c/rootcerts/symbiand.der
+../../rootcertificates/SymbianSignedCerts.txt	/epoc32/winscw/c/rootcerts/symbiansignedcerts.txt
+../../rootcertificates/swicertstore.dat		/epoc32/winscw/c/rootcerts/swicertstore.dat
 
 ../tpkcs12intgrtn/inc/tpkcs12integrationserver.iby /epoc32/rom/include/tpkcs12integrationserver.iby
 ../tpkcs7/tpkcs7server.iby /epoc32/rom/include/tpkcs7server.iby
--- a/cryptoservices/certificateandkeymgmt/inc/unifiedkeystore_v2.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/inc/unifiedkeystore_v2.h	Wed Sep 01 12:40:57 2010 +0100
@@ -32,14 +32,6 @@
 
 #include <mctkeystoremanager.h>
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-namespace CryptoSpi
-    {
-    class CSigner;
-    class CAsymmetricCipher;
-    class CCryptoParams;
-    }
-#endif
 
 /**
  * Unified KeyStore panics 
@@ -136,22 +128,6 @@
 							  TRequestStatus& aStatus);
 	virtual void CancelExportPublic();
 
-#ifdef SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT
-    virtual void Open(const TCTTokenObjectHandle& aHandle,
-                      CryptoSpi::CSigner*& aSigner,
-                      TRequestStatus& aStatus);
-    virtual void Open(const TCTTokenObjectHandle& aHandle,
-                      CryptoSpi::CAsymmetricCipher*& asymmetricCipherObj,
-                      TRequestStatus& aStatus);
-    virtual void Decrypt(const TCTTokenObjectHandle& aHandle,
-                         const TDesC8& aCiphertext,
-                         HBufC8*& aPlaintextPtr,
-                         TRequestStatus& aStatus);
-    virtual void Sign(const TCTTokenObjectHandle& aHandle,
-                      const TDesC8& aPlaintext,
-                      CryptoSpi::CCryptoParams*& aSignature,
-                      TRequestStatus& aStatus);
-#endif
 
 public:		//	For MCTKeyStoreManager except those (CreateKey, ImportKey, ImportEncryptedKey)
 			//	that require a caller-specified store
@@ -459,135 +435,6 @@
 	 * 								or equal to the value returned by KeyStoreManagerCount().
 	 */
 	IMPORT_C MCTKeyStoreManager& KeyStoreManager(TInt aIndex);
-
-#ifdef SYMBIAN_AUTH_SERVER
-public:
-	/**
-		 * Generates a new key pair. The creation of key is for currently authenticated 
-		 * user. If currently there is no authenticated user then authentication of an user 
-		 * would be required.
-		 *
-		 * For the software key store, the owner of the new key is set to the
-		 * calling process.  Users can subsequently be added by calling SetUsers().
-		 *	
-		 * @param aKeyStoreIndex  			The index of the key store manager in which to
-		 *                        			create the key.  Must be between zero and
-		 *	                      			KeyStoreMangerCount() exclusive.		
-		 * @param aUsage		  			The key usage flags in the PKCS#15 format.
-		 * @param aSize		      			The size of the key in bits.
-		 * @param aLabel		  			A textual label for the key.
-		 * @param aAlgorithm	  			The type of key.
-		 * @param aAccessType     			The key access type - a bitfield specifying key
-		 *	                      			access requirements.  Allowed values are zero, or
-		 *	                      			a comination of CCTKeyInfo::EKeyAccess::ESenstive
-		 *	                      			and CCTKeyInfo::EKeyAccess::EExtractable
-		 * @param aStartDate	  			The start of the validity period.
-		 * @param aEndDate		  			The end of the validity period.	
-		 * @param aAuthenticationString		The expression through which a user can be authenticated.
-		 * 									Currently this should correspond to one of the alias values
-		 * 									set by the licensee for authentication server configuration.
-		 * @param aFreshness				The validity to be considered for an already authenticated 
-		 * 									identity. Specification is in seconds.	
-		 * @param aKeyInfoOut     			A pointer that is set to a newly created key info
-		 *	                      			object on successful completion.
-		 * @param aStatus		  			Final status of the operation. 
-		 *   
-		 * @capability WriteUserData		Requires the caller to have WriteUserData capability
-		 * @leave KErrPermissionDenied		If the caller does not have WriteUserData capability
-		 * @leave KErrKeyUsage				If the key usage flags are not valid or not
-		 *									consistent with the key algorithm.
-		 * @leave KErrKeyValidity			If the validity start and end dates are specified
-		 *									but do not form a valid time period.
-		 * @leave KErrAuthenticationFailure	If the user authentication fails.
-		 * @leave ...						Any of the system wide error code.
-		 * @panic							If aKeyStoreIndex does not specify a valid keystore manager.
-	*/
-
-	IMPORT_C void CreateKey(TInt aKeyStoreIndex, TKeyUsagePKCS15 aUsage,TUint aSize, 
-							const TDesC& aLabel, CCTKeyInfo::EKeyAlgorithm aAlgorithm, 
-							TInt aAccessType, TTime aStartDate, TTime aEndDate,
-							const TDesC& aAuthenticationString, TInt aFreshness,
-							CCTKeyInfo*& aKeyInfoOut, TRequestStatus& aStatus) ;
-
-	/**
-		 * Imports a key pair. The import of key is for currently authenticated 
-		 * user. If currently there is no authenticated user then authentication 
-		 * of an user would be required.
-		 *
-		 * For the software key store, the owner of the new key is set to the
-		 * calling process.  Users can subsequently be added by calling SetUsers().
-		 *
-		 * The key data should be in PKCS#8 format.  Both encrypted and cleartext
-		 * versions are allowed.
-		 *
-		 * @param aKeyStoreIndex  			The index of the key store manager in which to
-		 *	                      			create the key.  Must be between zero and
-		 *	                      			KeyStoreMangerCount() exclusive.			
-		 * @param aKeyData		  			The key data to import, ASN.1 DER encoded PKCS#8.
-		 * @param aUsage		  			The key usage flags in the PKCS#15 format.
-		 * @param aLabel		  			A textual label for the key.
-		 * @param aAccessType     			The key access type - a bitfield specifying key
-		 *	                      			access requirements.  Allowed values are zero, or
-		 *	                      			a comination of CCTKeyInfo::EKeyAccess::ESenstive
-		 *	                      			and CCTKeyInfo::EKeyAccess::EExtractable
-		 * @param aStartDate	  			The start of the validity period.
-		 * @param aEndDate		  			The end of the validity period.
-		 * @param aAuthenticationString		The expression through which a user can be authenticated.
-		 * 									Currently this should correspond to one of the alias values
-		 * 									set by the licensee for authentication server configuration.
-		 * @param aFreshness				The validity to be considered for an already authenticated 
-		 * 									identity. Specification is in seconds.	
-		 * @param aKeyInfoOut     			A pointer that is set to a newly created key info
-		 *	                      			object on successful completion.
-		 * @param aStatus		  			Final status of the operation. 
-		 *	                      
-		 * @capability WriteUserData	Requires the caller to have WriteUserData capability
-		 * @leave KErrPermissionDenied	If the caller does not have WriteUserData capability
-		 * @leave KErrKeyUsage			If the key usage flags are not valid or not
-		 *								consistent with the key algorithm.
-		 * @leave KErrKeyValidity		If the validity start and end dates are specified
-		 *								but do not form a valid time period.
-		 * @leave KErrArgument			If the key data cannot be parsed.
-		 * @panic						If aKeyStoreIndex does not specify a valid keystore manager.
-	*/
-	
-	IMPORT_C void ImportKey(	TInt aKeyStoreIndex, const TDesC8& aKeyData,
-								TKeyUsagePKCS15 aUsage, const TDesC& aLabel, 
-								TInt aAccessType, TTime aStartDate, TTime aEndDate, 
-								const TDesC& aAuthenticationString, TInt aFreshness,
-								CCTKeyInfo*& aKeyInfoOut, TRequestStatus& aStatus);
-	
-	/**
-	 *  Set the authentication policy for an already existing key in the store.
-	 * 
-	 * @param aHandle					The handle of the key whose policy is to be changed.
-	 * @param aAuthenticationString		The expression associated to this key.
-	 * @param aFreshness				The validity associated to this key.
-	 * 									Specification is in seconds.
-	 * @param aStatus					Final status of the operation.  
-	*/
-	
-	IMPORT_C void SetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle, 
-											const TDesC& aAuthenticationString,
-											TInt aFreshness,					
-											TRequestStatus& aStatus);
-
-	/**
-	 *  Retrieve authentication policy for an already existing key in the store.
-	 * 
-	 * @param aHandle					The handle of the key whose policy is to be retrieved.
-	 * @param aAuthenticationString		The expression associated to this key. The memory would
-	 * 									be allocated at the server side.
-	 * @param aFreshness				The validity associated to this key.
-	 * 									Specification is in seconds.
-	 * @param aStatus					Final status of the operation. 
-	*/
-	
-	IMPORT_C void GetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle, 
-											HBufC*& aAuthenticationString,
-											TInt& aFreshness,					
-											TRequestStatus& aStatus);
-#endif // SYMBIAN_AUTH_SERVER
 	
 private:
 	CUnifiedKeyStore(RFs& aFs);
--- a/cryptoservices/certificateandkeymgmt/inc/x509cert.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/inc/x509cert.h	Wed Sep 01 12:40:57 2010 +0100
@@ -616,14 +616,13 @@
 	* @return		The new X.509 certificate object. */
 	IMPORT_C static CX509Certificate* NewLC(const CX509Certificate& aCert);
 
-   /** Retrieves the subject key identifier of a certificate based on the decision whether
+	/** Retrieves the subject key identifier of a certificate based on the decision whether
 	* it is a CA certificate or not. If it is a CA certificate then returns the stored subject key id 
 	* as an extension in the certificate, any other certificate it returns the keyidentifier as 
 	* calculated by Symbian's proprietary logic.
 	* @return	The subject key identifier for the certificate. */
 	IMPORT_C TKeyIdentifier SubjectKeyIdL() const;
 				
-
 	/** Destructor.
 	* 
 	* Frees all resources owned by the object, prior to its destruction. */
--- a/cryptoservices/certificateandkeymgmt/tcertstore/T_unifiedcertstoreadd.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/T_unifiedcertstoreadd.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -637,9 +637,8 @@
 		TPtr8 data(iKeyData->Des());
 		data.FillZ();
 		User::LeaveIfError(file.Read(data, fileSize));
-		CleanupStack::Pop(1);
 	}
-
+	CleanupStack::Pop(1);
 	file.Close();
 }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/readme first.txt	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,17 @@
+Current state of filecertstore tests
+
+Scripts
+
+UNIFIEDCERTSTORE1-CONF1.txt - All tests pass 
+
+UNIFIEDCERTSTORE2-CONF1.txt - All tests pass (use techview mode)
+
+UNIFIEDCERTSTORE3-CONF1.txt - Most tests pass (expect 41 to fail)
+Failure occurs because the tests attempt to add some certificates for which private keys do not exist yet AND because the test tries to do filtered listing on user certificates for a number of different keyId and key usage combinations.
+
+To resolve these issues we need to 
+(a) generate a couple more certificates with keys that have restricted usages, and import the keys at the beginning of the script (with the appropriate usage)
+
+(b) Rewrite the filtering tests to use the appropriate combinations
+
+So far, I've added 3 certificates based on 3 different RSA keys with all usage (rsacert1, rsacert2 and rsacert3) and 1 certificate based on a NR key with NR usage (nrcert)
\ No newline at end of file
--- a/cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.ini	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.ini	Wed Sep 01 12:40:57 2010 +0100
@@ -2139,7 +2139,6 @@
 </actionbody>
 
 
-
 [SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-FilterOnSubjectKeyId-001]
 
 <actionbody>
--- a/cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.script	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/scripts/unifiedcertstore2-conf1.script	Wed Sep 01 12:40:57 2010 +0100
@@ -137,7 +137,6 @@
 
 
 
-
 START_TESTCASE                SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-0002
 
 //! @SYMTestCaseID            SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-0002
@@ -802,8 +801,6 @@
 END_TESTCASE                  SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-FilterOnSubjectKeyId
 
 
-
-
 START_TESTCASE                SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-0015
 
 //! @SYMTestCaseID            SEC-CERTMAN-UNIFIEDCERTSTORE2-CONF1-0015
--- a/cryptoservices/certificateandkeymgmt/tcertstore/t_filter.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/t_filter.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -82,10 +82,10 @@
 	
 	// Set subjetkeyid filter
 	SetIssuerKeyIdFilter(Input::ParseElement(aFilter, KIssuerKeyIdStart));
-
+	
 	// Set subjetkeyid using the certificate details
 	SetSubjectKeyIdFromCertFilterL(Input::ParseElement(aFilter, KUseSubjectKeyIdStart));
-
+		
 	}
 
 void CFilter::SetLabelFilter(const TDesC8& aLabel)
@@ -409,5 +409,4 @@
 		}
 	}
 
-
 CCertAttributeFilter* CFilter::iFilter = NULL;
--- a/cryptoservices/certificateandkeymgmt/tcertstore/t_filter.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tcertstore/t_filter.h	Wed Sep 01 12:40:57 2010 +0100
@@ -67,7 +67,6 @@
 		// Sets the subjetkeyid filter using the certificate.
 		void SetSubjectKeyIdFromCertFilterL(const TDesC8& aCertPath);
 				
-	
 	private:
 		static CCertAttributeFilter* iFilter;
 		Output& iOut;
--- a/cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/inc/tpkcs12integrationserver.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tpkcs12intgrtn/inc/tpkcs12integrationserver.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -19,16 +19,9 @@
 #define __TPKCS12INTEGRATIONSERVER_IBY__
 
 #include <testexecute.iby>
-// conditionally included to avoid to be included in vasco image creation but needed in h4/h6 image creation
-#ifdef _SERIAL_DOWNLOAD
 #include <pkcs12.iby>
-#else
-// depends upon x509 certificate chains
-#include <certman.iby>
-// DEF139848 fix - Forward Propogation from Symtb9.1 - Illegal dependency from OCSP to HTTP.
-#include <ocsp.iby>
-file=ABI_DIR\BUILD_DIR\pkcs12.dll	System\Libs\pkcs12.dll
-#endif
+
+
 // Programs
 file=ABI_DIR\BUILD_DIR\tpkcs12libtest.exe			System\Libs\tpkcs12libtest.exe
 
--- a/cryptoservices/certificateandkeymgmt/tx509/comparisontest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tx509/comparisontest.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -123,7 +123,7 @@
 	TInt size;
 	User::LeaveIfError(file.Size(size));
 	RBuf8 buf;
-	buf.CreateL(size);
+	buf.Create(size);
 	CleanupClosePushL(buf);
 	
 	User::LeaveIfError(file.Read(buf, size));
--- a/cryptoservices/certificateandkeymgmt/tx509/extensiontest.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/tx509/extensiontest.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -141,7 +141,7 @@
 			CleanupStack::Pop(string);
 			}								
 		}
-	while (err >= 0);	
+	while (err >= 0);
 	}
 
 void CExtensionTest::BuildIntList(RArray<TInt>& aInts, const TDesC& aBuf, const TDesC& aTag)
--- a/cryptoservices/certificateandkeymgmt/x509/x509cert.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/certificateandkeymgmt/x509/x509cert.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1338,7 +1338,6 @@
 	return KeyIdentifierL();
 	}
 
-
 EXPORT_C TKeyIdentifier CX509Certificate::SubjectKeyIdL() const
 	{
 	// if it is a v1 or v2 type then there is no way of knowing which is a CA, treat all certs as CA as done in the certificate recognizer.
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/CFSTokenTypeClient.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/CFSTokenTypeClient.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file 
  @publishedPartner
- @released
+ @prototype
 */
  
 #ifndef __CFSTOKENTYPECLIENT_H__
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/filetokens.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/filetokens.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -28,13 +28,7 @@
 ECOM_PLUGIN(filecertstore.dll,101f5015.rsc)
 ECOM_PLUGIN(filekeystore.dll,101f7332.rsc)
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-file=ABI_DIR\BUILD_DIR\fstokenserver_useauth.exe		sys\bin\fstokenserver.exe
-data=EPOCROOT##epoc32\data\z\private\10202be9\200218e6.txt   \private\10202be9\200218e6.txt
-
-#else
 file=ABI_DIR\BUILD_DIR\fstokenserver.exe				sys\bin\fstokenserver.exe
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 
 #include "filetokensconfig.iby"
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/filetokenstests.iby	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/filetokenstests.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -45,50 +45,10 @@
 ECOM_PLUGIN(101faaa3.dll, 101faaa3.rsc)
 ECOM_PLUGIN(101faaa5.dll, 101faaa5.rsc)
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-data = ZDRIVE\tkeystore\scripts\thwkeystore.script		tkeystore\scripts\thwkeystore.script
-data = ZDRIVE\tkeystore\scripts\thwkeystore.ini			tkeystore\scripts\thwkeystore.ini
-data = ZPRIVATE\101f7e95\hwkeys.dat					private\101f7e95\hwkeys.dat
-data = ZDRIVE\tkeystore\data\hwkeys.dat				tkeystore\scripts\hwkeys.dat
-file = ABI_DIR\BUILD_DIR\tcryptotokenhai.dll			sys\bin\tcryptotokenhai.dll
-ECOM_PLUGIN(101faaaa.dll, 101faaaa.rsc)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 //scripts
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-data = ZDRIVE\tkeystore\scripts\registration.ini		tkeystore\scripts\registration.ini
-data = ZDRIVE\tkeystore\scripts\initialize.script	tkeystore\scripts\initialize.script
-data = ZDRIVE\tkeystore\scripts\reg_first_identity.script	tkeystore\scripts\reg_first_identity.script
-data = ZDRIVE\tkeystore\scripts\reg_second_identity.script	tkeystore\scripts\reg_second_identity.script
-data = ZDRIVE\tkeystore\scripts\authobjects_useauth.script	tkeystore\scripts\authobjects_useauth.script
-data = ZDRIVE\tkeystore\scripts\authobjects_useauth.ini	tkeystore\scripts\authobjects_useauth.ini
 
 //TMS support
-data = ZDRIVE\tkeystore\scripts\cancel_useauth.script		tkeystore\scripts\cancel_useauth.script
-data = ZDRIVE\tkeystore\scripts\exportscript_useauth.script	tkeystore\scripts\exportscript_useauth.script
-data = ZDRIVE\tkeystore\scripts\oom_useauth.script			tkeystore\scripts\oom_useauth.script
-data = ZDRIVE\tkeystore\scripts\reload_useauth.script		tkeystore\scripts\reload_useauth.script
-data = ZDRIVE\tkeystore\scripts\servoom_useauth.script		tkeystore\scripts\servoom_useauth.script
-data = ZDRIVE\tkeystore\scripts\tkeystore_authentication1.script	tkeystore\scripts\tkeystore_authentication1.script
-data = ZDRIVE\tkeystore\scripts\tkeystore_authentication2.script	tkeystore\scripts\tkeystore_authentication2.script
-data = ZDRIVE\tkeystore\scripts\tkeystore_nouserregistered.script	tkeystore\scripts\tkeystore_nouserregistered.script
-data = ZDRIVE\tkeystore\scripts\tkeystore_useauth.script		tkeystore\scripts\tkeystore_useauth.script
-data = ZDRIVE\tkeystore\scripts\capability_useauth.script		tkeystore\scripts\capability_useauth.script
-data = ZDRIVE\tkeystore\scripts\authenticate_useauth.script		tkeystore\scripts\authenticate_useauth.script
-data = ZDRIVE\tkeystore\scripts\cancel_useauth.ini		tkeystore\scripts\cancel_useauth.ini
-data = ZDRIVE\tkeystore\scripts\exportscript_useauth.ini	tkeystore\scripts\exportscript_useauth.ini
-data = ZDRIVE\tkeystore\scripts\oom_useauth.ini			tkeystore\scripts\oom_useauth.ini
-data = ZDRIVE\tkeystore\scripts\reload_useauth.ini		tkeystore\scripts\reload_useauth.ini
-data = ZDRIVE\tkeystore\scripts\servoom_useauth.ini		tkeystore\scripts\servoom_useauth.ini
-data = ZDRIVE\tkeystore\scripts\tkeystore_authentication1.ini	tkeystore\scripts\tkeystore_authentication1.ini
-data = ZDRIVE\tkeystore\scripts\tkeystore_authentication2.ini	tkeystore\scripts\tkeystore_authentication2.ini
-data = ZDRIVE\tkeystore\scripts\tkeystore_nouserregistered.ini	tkeystore\scripts\tkeystore_nouserregistered.ini
-data = ZDRIVE\tkeystore\scripts\tkeystore_useauth.ini		tkeystore\scripts\tkeystore_useauth.ini
-data = ZDRIVE\tkeystore\scripts\capability_useauth.ini		tkeystore\scripts\capability_useauth.ini
-data = ZDRIVE\tkeystore\scripts\authenticate_useauth.ini		tkeystore\scripts\authenticate_useauth.ini
-
-#else
-//TMS support
 data = ZDRIVE\tkeystore\scripts\tkeystore.script		tkeystore\scripts\tkeystore.script
 data = ZDRIVE\tkeystore\scripts\cancel.script		tkeystore\scripts\cancel.script
 data = ZDRIVE\tkeystore\scripts\oom.script			tkeystore\scripts\oom.script
@@ -107,11 +67,6 @@
 data = ZDRIVE\tkeystore\scripts\authobjects.ini		tkeystore\scripts\authobjects.ini
 data = ZDRIVE\tkeystore\scripts\reload.ini		tkeystore\scripts\reload.ini
 
-#ifdef SYMBIAN_AUTH_SERVER
-data = ZDRIVE\tkeystore\scripts\oldserver_newfeature.script		tkeystore\scripts\oldserver_newfeature.script
-data = ZDRIVE\tkeystore\scripts\oldserver_newfeature.ini		tkeystore\scripts\oldserver_newfeature.ini
-#endif // SYMBIAN_AUTH_SERVER
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 //	test data
 data = ZDRIVE\tkeystore\data\pkcs8dh.001			tkeystore\data\pkcs8dh.001
@@ -277,11 +232,9 @@
 data = ZDRIVE\tcertapps\scripts\script1.ini			tcertapps\scripts\script1.ini attrib=r
 data = ZDRIVE\tcertapps\scripts\apipolicing.ini	tcertapps\scripts\apipolicing.ini attrib=r
 
-
-#if defined SYMBIAN_KEYSTORE_USE_AUTH_SERVER || defined SDP_ROM1
+#if defined SDP_ROM1
 //Nothing is included
 #else
-#ifdef _SERIAL_DOWNLOAD
 // additional certstore needed in normal rom for sec-filetokens tests which uses certstore1 ,2,...
 ECOM_PLUGIN(tadditionalstores.dll, tadditionalstores.rsc)
 // The below test data needed for sec-filetokens-tools.script which will run only in normal image(testsecurity_sdp.bat)
@@ -300,7 +253,6 @@
 // Test keystore. Contains two keys, a DSA key (label gm0) and a RSA key (label gm1)
 // The passphrase timeout is set to 30
 data = ZPRIVATE\101F72A6\keys.dat          	private\101F72A6\keys.dat
-#endif
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+#endif // SDP_ROM1
 
 #endif
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.h	Wed Sep 01 12:40:57 2010 +0100
@@ -33,11 +33,6 @@
 #include <cctcertinfo.h>
 #include <bigint.h>
 
-#ifdef SYMBIAN_AUTH_SERVER
-#include "authserver/authtypes.h"
-#endif // SYMBIAN_AUTH_SERVER
-
-
 /**
  * Server-side key info.
  * 
@@ -77,30 +72,9 @@
 	/** Sets the set of DER encoded PKCS8 attributes. */
 	IMPORT_C void SetPKCS8AttributeSet(HBufC8* aPKCS8AttributeSet);
 	
-#ifdef SYMBIAN_AUTH_SERVER
-	inline AuthServer::TIdentityId Identity() const;
-	inline const TDesC& AuthExpression() const;
-	inline TInt Freshness() const;
-	inline void SetIdentity(AuthServer::TIdentityId aIdentityId);
-	// Will set the authexpresssion aasociated with this key. The
-	// ownership is not transferred to this object.
-	inline void SetAuthExpressionL(const TDesC& aAuthExpression);
-	inline void SetFreshness(TInt aFreshness);
-	inline void ResetAuthExpression();
-#endif // SYMBIAN_AUTH_SERVER
-	
 private:
 	
 	inline CKeyInfo();
-
-#ifdef SYMBIAN_AUTH_SERVER
-private:
-	AuthServer::TIdentityId iIdentityId;
-	HBufC* iAuthExpression;
-	TInt iFreshness;
-#endif // SYMBIAN_AUTH_SERVER
-
-	
 	};
 
 /**
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.inl	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/fsdatatypes.inl	Wed Sep 01 12:40:57 2010 +0100
@@ -24,9 +24,6 @@
 
 inline CKeyInfo::~CKeyInfo()
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	delete iAuthExpression;
-#endif // SYMBIAN_AUTH_SERVER
 	}
 
 inline void CKeyInfo::CleanupPushL()
@@ -44,49 +41,6 @@
 	iAccessType = aAccessType;
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
-inline AuthServer::TIdentityId CKeyInfo::Identity() const
-	{
-	return iIdentityId;
-	}
-
-inline const TDesC& CKeyInfo::AuthExpression() const
-	{
-	return *iAuthExpression;
-	}
-
-inline TInt CKeyInfo::Freshness() const
-	{
-	return iFreshness;
-	}
-
-inline void CKeyInfo::SetIdentity(AuthServer::TIdentityId aIdentityId)
-	{
-	iIdentityId = aIdentityId;
-	}
-
-inline void CKeyInfo::SetAuthExpressionL(const TDesC& aAuthExpression)
-	{
-	delete iAuthExpression;
-	iAuthExpression = NULL;
-	iAuthExpression = aAuthExpression.AllocL();
-	iAuthExpression->Des().Copy(aAuthExpression);
-	}
-
-inline void CKeyInfo::SetFreshness(TInt aFreshness)
-	{
-	iFreshness = aFreshness;
-	}
-
-inline void CKeyInfo::ResetAuthExpression()
-	{
-	delete iAuthExpression;
-	iAuthExpression = NULL;
-	}
-
-#endif // SYMBIAN_AUTH_SERVER
-
-
 inline const TInteger& CDHParams::N() const
 	{
 	return iN;
--- a/cryptoservices/filebasedcertificateandkeystores/Inc/keystore_errs.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/Inc/keystore_errs.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 /**
  @file 
  @publishedPartner
- @released
+ @prototype
 */
 
 #ifndef KEYSTORE_ERRS_H
--- a/cryptoservices/filebasedcertificateandkeystores/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -34,11 +34,6 @@
 // ROMKIT includes
 ../Inc/filetokens.iby /epoc32/rom/include/filetokens.iby
 
-#ifdef SYMBIAN_AUTH_SERVER
-// file tokens cenrep file for storing the default authentication policy.
-../source/keystore/Server/200218e6.txt			z:/private/10202be9/200218e6.txt
-#endif // SYMBIAN_AUTH_SERVER
-
 PRJ_TESTEXPORTS
 //	keystore
 
@@ -70,57 +65,6 @@
 ../test/tkeystore/scripts/batchfiles/tkeystore_authobject_post.bat	/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_authobject_post.bat	
 ../test/tkeystore/scripts/batchfiles/tkeystore_export_post.bat	/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_export_post.bat	
 
-#ifdef SYMBIAN_AUTH_SERVER
-../test/tkeystore/scripts/authobjects_v2_useauth.script	/epoc32/winscw/c/tkeystore/scripts/authobjects_useauth.script
-../test/tkeystore/scripts/authobjects_v2_useauth.ini	/epoc32/winscw/c/tkeystore/scripts/authobjects_useauth.ini
-
-../test/tkeystore/scripts/createoldkeystore.script			/epoc32/winscw/c/tkeystore/scripts/createoldkeystore.script
-../test/tkeystore/scripts/createoldkeystore.ini			/epoc32/winscw/c/tkeystore/scripts/createoldkeystore.ini
-../test/tkeystore/scripts/testnewkeystore.script			/epoc32/winscw/c/tkeystore/scripts/testnewkeystore.script
-../test/tkeystore/scripts/testnewkeystore.ini			/epoc32/winscw/c/tkeystore/scripts/testnewkeystore.ini
-
-../test/tkeystore/scripts/oldserver_newfeature.script		/epoc32/winscw/c/tkeystore/scripts/oldserver_newfeature.script
-../test/tkeystore/scripts/tkeystore_useauth.script			/epoc32/winscw/c/tkeystore/scripts/tkeystore_useauth.script
-../test/tkeystore/scripts/oom_useauth.script				/epoc32/winscw/c/tkeystore/scripts/oom_useauth.script
-../test/tkeystore/scripts/servoom_useauth.script			/epoc32/winscw/c/tkeystore/scripts/servoom_useauth.script
-../test/tkeystore/scripts/exportscript_useauth.script		/epoc32/winscw/c/tkeystore/scripts/exportscript_useauth.script
-../test/tkeystore/scripts/reload_useauth.script			/epoc32/winscw/c/tkeystore/scripts/reload_useauth.script
-../test/tkeystore/scripts/cancel_useauth.script			/epoc32/winscw/c/tkeystore/scripts/cancel_useauth.script
-../test/tkeystore/scripts/tkeystore_authentication1.script	/epoc32/winscw/c/tkeystore/scripts/tkeystore_authentication1.script
-../test/tkeystore/scripts/tkeystore_authentication2.script	/epoc32/winscw/c/tkeystore/scripts/tkeystore_authentication2.script
-../test/tkeystore/scripts/tkeystore_nouserregistered.script /epoc32/winscw/c/tkeystore/scripts/tkeystore_nouserregistered.script
-../test/tkeystore/scripts/capability_useauth.script	/epoc32/winscw/c/tkeystore/scripts/capability_useauth.script
-../test/tkeystore/scripts/authenticate_useauth.script	/epoc32/winscw/c/tkeystore/scripts/authenticate_useauth.script
-
-../test/tkeystore/scripts/oldserver_newfeature.ini		/epoc32/winscw/c/tkeystore/scripts/oldserver_newfeature.ini
-../test/tkeystore/scripts/tkeystore_useauth.ini			/epoc32/winscw/c/tkeystore/scripts/tkeystore_useauth.ini
-../test/tkeystore/scripts/oom_useauth.ini				/epoc32/winscw/c/tkeystore/scripts/oom_useauth.ini
-../test/tkeystore/scripts/servoom_useauth.ini			/epoc32/winscw/c/tkeystore/scripts/servoom_useauth.ini
-../test/tkeystore/scripts/exportscript_useauth.ini		/epoc32/winscw/c/tkeystore/scripts/exportscript_useauth.ini
-../test/tkeystore/scripts/reload_useauth.ini			/epoc32/winscw/c/tkeystore/scripts/reload_useauth.ini
-../test/tkeystore/scripts/cancel_useauth.ini			/epoc32/winscw/c/tkeystore/scripts/cancel_useauth.ini
-../test/tkeystore/scripts/tkeystore_authentication1.ini	/epoc32/winscw/c/tkeystore/scripts/tkeystore_authentication1.ini
-../test/tkeystore/scripts/tkeystore_authentication2.ini	/epoc32/winscw/c/tkeystore/scripts/tkeystore_authentication2.ini
-../test/tkeystore/scripts/tkeystore_nouserregistered.ini /epoc32/winscw/c/tkeystore/scripts/tkeystore_nouserregistered.ini
-../test/tkeystore/scripts/capability_useauth.ini	/epoc32/winscw/c/tkeystore/scripts/capability_useauth.ini
-../test/tkeystore/scripts/authenticate_useauth.ini	/epoc32/winscw/c/tkeystore/scripts/authenticate_useauth.ini
-
-../test/tkeystore/scripts/registration.ini				/epoc32/winscw/c/tkeystore/scripts/registration.ini
-../test/tkeystore/scripts/reg_first_identity.script		/epoc32/winscw/c/tkeystore/scripts/reg_first_identity.script
-../test/tkeystore/scripts/reg_second_identity.script	/epoc32/winscw/c/tkeystore/scripts/reg_second_identity.script
-../test/tkeystore/scripts/initialize.script				/epoc32/winscw/c/tkeystore/scripts/initialize.script
-
-../test/tkeystore/scripts/batchfiles/epoc_keystoreusesauthserver.ini	/epoc32/winscw/c/tkeystore/scripts/batchfiles/epoc_keystoreusesauthserver.ini
-../test/tkeystore/scripts/batchfiles/replace_epoc_ini.bat				/epoc32/winscw/c/tkeystore/scripts/batchfiles/replace_epoc_ini.bat
-../test/tkeystore/scripts/batchfiles/restore_epoc_ini.bat				/epoc32/winscw/c/tkeystore/scripts/batchfiles/restore_epoc_ini.bat
-../test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_post.bat	/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_useauthserver_post.bat
-../test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_pre.bat	/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_useauthserver_pre.bat
-../test/tkeystore/scripts/batchfiles/tkeystore_migrate_pre.bat			/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_migrate_pre.bat
-../test/tkeystore/scripts/batchfiles/tkeystore_migrate_post.bat			/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_migrate_post.bat
-../test/tkeystore/scripts/batchfiles/tkeystore_migrate_copykeys.bat		/epoc32/winscw/c/tkeystore/scripts/batchfiles/tkeystore_migrate_copykeys.bat
-
-#endif // SYMBIAN_AUTH_SERVER
-
 // ttesttools data
 
 ../test/ttesttools/data/cert_addapps.txt	/epoc32/winscw/c/ttesttools/data/cert_addapps.txt
@@ -214,16 +158,6 @@
 ../test/ttesttools/scripts/sec-filetokens-tools.script	/epoc32/winscw/c/ttesttools/scripts/sec-filetokens-tools.script
 ../test/ttesttools/scripts/sec-filetokens-tools.ini	/epoc32/winscw/c/ttesttools/scripts/sec-filetokens-tools.ini
 
-#ifdef SYMBIAN_AUTH_SERVER
-../test/ttesttools/data/key_migrate.txt	/epoc32/winscw/c/ttesttools/data/key_migrate.txt
-../test/ttesttools/data/key_migrated_param_missing1.txt	/epoc32/winscw/c/ttesttools/data/key_migrated_param_missing1.txt
-../test/ttesttools/data/key_migrated_param_missing2.txt	/epoc32/winscw/c/ttesttools/data/key_migrated_param_missing2.txt
-../test/ttesttools/data/key_migrate_default.txt			/epoc32/winscw/c/ttesttools/data/key_migrate_default.txt
-../test/ttesttools/data/key_migrated_help.txt			/epoc32/winscw/c/ttesttools/data/key_migrated_help.txt
-../test/ttesttools/scripts/keytool_migrate.script		/epoc32/winscw/c/ttesttools/scripts/keytool_migrate.script
-../test/ttesttools/scripts/keytool_migrate.ini			/epoc32/winscw/c/ttesttools/scripts/keytool_migrate.ini
-#endif // SYMBIAN_AUTH_SERVER
-
 
 //	keystore data
 
@@ -340,14 +274,6 @@
 // ROMKIT includes
 ../Inc/filetokenstests.iby /epoc32/rom/include/filetokenstests.iby
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../test/tkeystore/scripts/thwkeystore.script			/epoc32/winscw/c/tkeystore/scripts/thwkeystore.script
-../test/tkeystore/scripts/thwkeystore.ini			/epoc32/winscw/c/tkeystore/scripts/thwkeystore.ini
-../test/tkeystore/data/hwkeys.dat				/epoc32/data/z/private/101f7e95/hwkeys.dat
-../test/tkeystore/data/hwkeys.dat				/epoc32/release/winscw/udeb/z/private/101f7e95/hwkeys.dat
-../test/tkeystore/data/hwkeys.dat				/epoc32/release/winscw/urel/z/private/101f7e95/hwkeys.dat
-../test/tkeystore/data/hwkeys.dat				/epoc32/winscw/c/tkeystore/data/hwkeys.dat
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 PRJ_MMPFILES
 
@@ -357,10 +283,6 @@
 fstokencli.mmp
 fstokenserver.mmp
 
-#ifdef SYMBIAN_AUTH_SERVER
-fstokenserver_useauth.mmp
-#endif
-
 filekeystoreplugin.mmp
 filecertstoreplugin.mmp
 #endif // TOOLS2
@@ -370,10 +292,6 @@
 
 #ifndef TOOLS
 #ifndef TOOLS2
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-../test/tcryptotokenhai/tcryptotokenhai.mmp
-../test/thwkeystore/client/thwkeystoreclient.mmp
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 ../test/tfiletokens/tfiletokens.mmp
 ../test/tkeystore/tkeystore.mmp
--- a/cryptoservices/filebasedcertificateandkeystores/group/fstokenserver_useauth.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* File store token server executable
-* fstokenserver_useauth.exe File store token server executable
-*
-*/
-
-
-/**
- @file
-*/
-
-MACRO SYMBIAN_KEYSTORE_USE_AUTH_SERVER=1
-
-target fstokenserver_useauth.exe
-
-CAPABILITY TrustedUI ProtServ ReadUserData
-
-#include "fstokenserver.mmh"
-
-sourcepath ../source/keystore/Server
-source	keystorecenrepconfig.cpp
-
-LIBRARY authclient.lib 
-LIBRARY	authcommon.lib
-LIBRARY centralrepository.lib
-
-SMPSAFE
--- a/cryptoservices/filebasedcertificateandkeystores/source/generic/client/clientsession.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/generic/client/clientsession.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -22,14 +22,6 @@
 #include "clientutils.h"
 #include "fstokenservername.h"
 
-#ifdef SYMBIAN_AUTH_SERVER
-
-#ifdef __WINS__
-#include <u32hal.h>
-#endif //__WINS__
-
-#include <e32svr.h>
-#endif // SYMBIAN_AUTH_SERVER
 
 //	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	
 //	Tokentype session class for file based certificate store
@@ -38,11 +30,7 @@
 //	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	//	\\	
 
 _LIT(KFSTokenServerImg,"fstokenserver");
-#ifdef SYMBIAN_AUTH_SERVER
-#ifdef __WINS__
-_LIT(KFSNewTokenServerImg,"fstokenserver_useauth");
-#endif // __WINS__
-#endif // SYMBIAN_AUTH_SERVER
+
 
 RFileStoreClientSession::RFileStoreClientSession()
 {}
@@ -73,13 +61,6 @@
 // Connect to the server, attempting to start it if necessary
 //
 
-#ifdef SYMBIAN_AUTH_SERVER
-#ifdef __WINS__
-
-static bool UseAuthServer(void);
-
-#endif // SYMBIAN_AUTH_SERVER
-#endif // __WINS__
 
 TInt RFileStoreClientSession::Connect(ETokenEnum aToken)
 	{
@@ -93,15 +74,6 @@
 	for (;;)
 		{
 		TInt err = KErrNone;
-#ifdef SYMBIAN_AUTH_SERVER
-#ifdef __WINS__
-		if(UseAuthServer())
-			{
-			err = CreateSession(KFSNewTokenServerName, version, 1);
-			}
-		else
-#endif // __WINS__
-#endif // SYMBIAN_AUTH_SERVER
 			{
 			err = CreateSession(KFSTokenServerName, version, 1);
 			}
@@ -116,25 +88,6 @@
 		}
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
-#ifdef __WINS__
-
-/*static*/ bool UseAuthServer(void)
-	{
-	bool useAuthServer = false;
-	
-	TUint32 useAuth = 0;
-	// For the emulator allow the constant to be patched via epoc.ini
-	UserSvr::HalFunction(EHalGroupEmulator, EEmulatorHalIntProperty,
-	(TAny*)"KKeyStoreUseAuthServer", &useAuth); // read emulator property (if present)
-	if(useAuth)
-		{
-		useAuthServer = true;
-		}
-	return useAuthServer; 
-	}
-#endif // __WINS__
-#endif // SYMBIAN_AUTH_SERVER
 
 TInt StartServer()
 	{
@@ -144,16 +97,6 @@
 
 	RProcess server;
 	TInt error = KErrNone;
-	
-#ifdef SYMBIAN_AUTH_SERVER
-#ifdef __WINS__
-	if(UseAuthServer())
-		{
-		error = server.Create(KFSNewTokenServerImg, KNullDesC, serverUid);
-		}
-	else
-#endif // __WINS__
-#endif // SYMBIAN_AUTH_SERVER
 		{
 		error = server.Create(KFSTokenServerImg, KNullDesC, serverUid);
 		}
--- a/cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokencliserv.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokencliserv.h	Wed Sep 01 12:40:57 2010 +0100
@@ -132,18 +132,7 @@
 	ERemoveApp              = 121,
 	EGetAppCount            = 122,
 	EGetApps                = 123,
-	EGetApplication         = 124,
-	
-#ifdef SYMBIAN_AUTH_SERVER
-	
-	EUseNewKeyServer = 125,
-	ECreateUserKey		= 126,
-	EImportUserKey		= 127,
-	EImportEncryptedUserKey	= 128,
-	ESetAuthenticationPolicy = 129,
-	EGetAuthenticationPolicy = 130,
-
-#endif // SYMBIAN_AUTH_SERVER	
+	EGetApplication         = 124,	
 	
 	};
 
--- a/cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokenservername.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/generic/common/fstokenservername.h	Wed Sep 01 12:40:57 2010 +0100
@@ -30,8 +30,5 @@
 
 // Define the server name
 _LIT(KFSTokenServerName, "!FSTokenServer");
-#ifdef SYMBIAN_AUTH_SERVER
-_LIT(KFSNewTokenServerName, "!FSTokenServer_useauth");
-#endif // SYMBIAN_AUTH_SERVER
 
 #endif
--- a/cryptoservices/filebasedcertificateandkeystores/source/generic/server/fsserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/generic/server/fsserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -132,13 +132,6 @@
 	FSDialog::InitialiseL();
 	
 	TPtrC serverName(KFSTokenServerName());
-		// Naming the server thread after the server helps to debug panics
-#ifdef __WINS__
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	serverName.Set(KFSNewTokenServerName());
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#endif // __WINS__
-		
 	StartL(serverName);
 	
 	// Ensure that the server still exits even if the 1st client fails to connect
@@ -264,12 +257,7 @@
 static void RunServerL()
 	{
 	TPtrC serverName(KFSTokenServerName());
-	// Naming the server thread after the server helps to debug panics
-#ifdef __WINS__
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	serverName.Set(KFSNewTokenServerName());
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#endif // __WINS__
+
 	
 	User::LeaveIfError(User::RenameThread(serverName));
 	
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -86,23 +86,13 @@
 	: CFSClient(aUID, aToken, aClient),
 	  // Reference count starts at one as we're always created and returned by a GetInterface() call on the token
 	  iRefCount(1)
-#ifdef SYMBIAN_AUTH_SERVER
-	  ,iUseNewKeyServer(EFalse)
-#endif // SYMBIAN_AUTH_SERVER
 	{
 	LOG(_L("CFSKeyStoreClient::CFSKeyStoreClient: keystore client interface created"));
 	}
 
 void CFSKeyStoreClient::ConstructL()
 	{
-	CActiveScheduler::Add(this);
-
-#ifdef SYMBIAN_AUTH_SERVER
-	TPckg<TBool> idNewKeyServer(iUseNewKeyServer);
-	iClient.SendRequest(EUseNewKeyServer, TIpcArgs(0,&idNewKeyServer));
-	
-	if(iUseNewKeyServer == EFalse)
-#endif // SYMBIAN_AUTH_SERVER		
+	CActiveScheduler::Add(this);	
 		{
 		iAuthObject = CKeyStoreAuthObject::NewL(*this);
 		iAuthObject->AddRef();
@@ -199,14 +189,6 @@
 	
 	switch (iCurrentRequest.OutstandingRequest())
 		{
-#ifdef SYMBIAN_AUTH_SERVER
-		case ESetAuthenticationPolicy:
-			break;
-		case ECreateUserKey:
-		case EImportUserKey:
-		case EImportEncryptedUserKey:
-#endif //SYMBIAN_AUTH_SERVER
-		
 		case ECreateKey:
 		case EImportKey:
 		case EImportEncryptedKey:
@@ -374,33 +356,19 @@
 void CFSKeyStoreClient::DoListL(const TCTKeyAttributeFilter& aFilter, MKeyInfoArray& aOut)
 	{
 	TInt startOfNew = aOut.Count();
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-#endif // SYMBIAN_AUTH_SERVER
 		ASSERT(iAuthObject);
-#ifdef SYMBIAN_AUTH_SERVER
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	
 	TPckg<TCTKeyAttributeFilter> filterPckg(aFilter);
 	SendSyncRequestAndHandleOverflowL(EListKeys, KInitialBufSizeList, TIpcArgs(&filterPckg, 0, &iRequestPtr));
    
 	CleanupClosePushL(aOut);
 	TokenDataMarshaller::ReadL(iRequestPtr, iToken, aOut);
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-#endif //SYMBIAN_AUTH_SERVER
 		for (TInt index = startOfNew ; index < aOut.Count() ; ++index)
 			{		
 			iAuthObject->AddRef();
 			LOG1(_L("CFSKeyStoreClient::DoListL: adding keyinfo %08x."), aOut[index]);
 			aOut[index]->SetProtector(*iAuthObject);
 			}
-#ifdef SYMBIAN_AUTH_SERVER
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	CleanupStack::Pop(&aOut);
 	}
 
@@ -1060,14 +1028,6 @@
 
 void CFSKeyStoreClient::SetPassphraseTimeout(TInt aTimeout, TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	SetTimeout(aTimeout, aStatus);
 	}
 
@@ -1078,14 +1038,6 @@
 
 void CFSKeyStoreClient::Relock(TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	TInt err = iClient.SendRequest(ERelock, TIpcArgs());
 	TRequestStatus* status = &aStatus;
 	User::RequestComplete(status, err);
@@ -1113,14 +1065,6 @@
 	// Set size and algorithm - only strictly necessary for import
 	keyInfo.SetSize(update.iSize);
 	keyInfo.SetAlgorithm(update.iAlgorithm);
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-		ASSERT(iAuthObject);
-		iAuthObject->AddRef();
-		keyInfo.SetProtector(*iAuthObject);
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	LOG_DEC_INDENT();	
 	}
 
@@ -1128,14 +1072,6 @@
 
 void CFSKeyStoreClient::ListProtectedObjects(RMPointerArray<MCTTokenObject>& aObjects, TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	TCTKeyAttributeFilter filter;
 	filter.iPolicyFilter = TCTKeyAttributeFilter::EUsableOrManageableKeys;
 	TKeyInfoArray<MCTTokenObject> array(aObjects);
@@ -1147,14 +1083,6 @@
 
 void CFSKeyStoreClient::ChangeReferenceData(TRequestStatus &aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	iCurrentRequest(EChangePassphrase, &aStatus);
 	SetActive();
 	iClient.SendAsyncRequest(EChangePassphrase, TIpcArgs(), &iStatus);
@@ -1162,12 +1090,6 @@
 
 void CFSKeyStoreClient::CancelChangeReferenceData()
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	if (iCurrentRequest.OutstandingRequest() == EChangePassphrase)
 		{
 		Cancel();
@@ -1176,26 +1098,11 @@
 
 TUint32 CFSKeyStoreClient::AuthStatus() const
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		return 0;
-		}
-#endif // SYMBIAN_AUTH_SERVER
-	
 	return EEnabled | EUnblockDisabled;
 	}
 
 void CFSKeyStoreClient::AuthOpen(TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	iCurrentRequest(EAuthOpen, &aStatus);
 	SetActive();
 	iClient.SendAsyncRequest(EAuthOpen, TIpcArgs(), &iStatus);	
@@ -1203,12 +1110,6 @@
 
 void CFSKeyStoreClient::CancelAuthOpen()
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		return;
-		}
-#endif // SYMBIAN_AUTH_SERVER
 	if (iCurrentRequest.OutstandingRequest() == EAuthOpen)
 		{
 		Cancel();
@@ -1217,14 +1118,6 @@
 
 void CFSKeyStoreClient::AuthClose(TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	TInt err = iClient.SendRequest(EAuthClose, TIpcArgs());
 	TRequestStatus* status = &aStatus;
 	User::RequestComplete(status, err);
@@ -1232,14 +1125,6 @@
 
 void CFSKeyStoreClient::TimeRemaining(TInt& aTime, TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	TInt result = iClient.SendRequest(EAuthTimeRemaining, TIpcArgs());
 	if (result >= 0)
 		{
@@ -1252,14 +1137,6 @@
 
 void CFSKeyStoreClient::SetTimeout(TInt aTime, TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	TInt err = iClient.SendRequest(ESetTimeout, TIpcArgs(0, aTime));	
 	TRequestStatus* status = &aStatus;
 	User::RequestComplete(status, err);
@@ -1267,14 +1144,6 @@
 
 void CFSKeyStoreClient::Timeout(TInt& aTime, TRequestStatus& aStatus)
 	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
 	TInt result = iClient.SendRequest(EGetTimeout, TIpcArgs());	
 	if (result >= 0)
 		{
@@ -1285,118 +1154,4 @@
 	User::RequestComplete(status, result);
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
 
-void CFSKeyStoreClient::CreateKey(	const TDesC& aAuthenticationString, 
-									TInt aFreshness,
-									CCTKeyInfo*& aReturnedKey,
-									TRequestStatus& aStatus )
-	{
-	LOG(_L("CFSKeyStoreClient::CreateKey: create key (starting)"));
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
-	//	[in, out] CCTKeyInfo, caller fills with data required to create the key, 
-	//	If request succeeds, iId and iHandle members are filled in by server
-
-	TInt r = MarshalKeyInfo(*aReturnedKey);
-	if (KErrNone!=r)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, r);
-		return;
-		}
-
-	//	Store CCTKeyInfo to write into later (server will put extra data into it)
-	iClientPtr.iKeyInfo = &aReturnedKey;
-	SetActive();
-	iCurrentRequest(ECreateUserKey, &aStatus);
-	
-	iClient.SendAsyncRequest(ECreateUserKey, TIpcArgs(0, &iRequestPtr, &aAuthenticationString, aFreshness), &iStatus);
-	
-	}
-
-void CFSKeyStoreClient::ImportKey( const TDesC8& aKey, 
-							const TDesC& aAuthenticationString, 
-							TInt aFreshness, CCTKeyInfo*& aReturnedKey, 
-							TRequestStatus& aStatus )
-	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
-	DoImportUserKey(EImportUserKey, aKey, aReturnedKey, aAuthenticationString, aFreshness, aStatus);
-	}
-			
-
-void CFSKeyStoreClient::ImportEncryptedKey(const TDesC8& aKey, 
-									const TDesC& aAuthenticationString, 
-									TInt aFreshness, CCTKeyInfo*& aReturnedKey, 
-									TRequestStatus& aStatus )
-	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-#endif //SYMBIAN_AUTH_SERVER
-	DoImportUserKey(EImportEncryptedUserKey, aKey, aReturnedKey, aAuthenticationString, aFreshness, aStatus);
-	
-	}
-
-void CFSKeyStoreClient::SetAuthenticationPolicy(	
-		const TCTTokenObjectHandle aHandle,
-		const TDesC& aAuthenticationString,
-		TInt aFreshness,
-		TRequestStatus& aStatus)
-		{
-#ifdef SYMBIAN_AUTH_SERVER
-		if(iUseNewKeyServer == EFalse)
-			{
-			TRequestStatus* stat = &aStatus;
-			User::RequestComplete(stat, KErrNotSupported);
-			return;
-			}
-		iCurrentRequest(ESetAuthenticationPolicy, &aStatus);
-		SetActive();
-		iClient.SendAsyncRequest(ESetAuthenticationPolicy, TIpcArgs(aHandle.iObjectId, &aAuthenticationString, aFreshness), &iStatus);
-			
-#endif //SYMBIAN_AUTH_SERVER
-		}
-
-void CFSKeyStoreClient::GetAuthenticationPolicy( const TCTTokenObjectHandle aHandle,
-												HBufC*& aAuthenticationString,
-												TInt& aFreshness,
-												TRequestStatus& aStatus)
-	{
-#ifdef SYMBIAN_AUTH_SERVER
-	if(iUseNewKeyServer == EFalse)
-		{
-		TRequestStatus* stat = &aStatus;
-		User::RequestComplete(stat, KErrNotSupported);
-		return;
-		}
-	iAuthExpression = aAuthenticationString;
-	iFreshness = aFreshness;
-	TPckg<TInt> freshness(aFreshness);
-	TPtr authPtr = iAuthExpression->Des();
-	TInt err = iClient.SendRequest(EGetAuthenticationPolicy, TIpcArgs(aHandle.iObjectId, &authPtr, &freshness));
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, err);
-	
-#endif //SYMBIAN_AUTH_SERVER
-	
-	
-	}
-#endif // SYMBIAN_AUTH_SERVER
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Client/cfskeystoreclient.h	Wed Sep 01 12:40:57 2010 +0100
@@ -113,36 +113,6 @@
 	virtual void CancelSetPassphraseTimeout();	
 	virtual void Relock(TRequestStatus& aStatus);
 	virtual void CancelRelock();
-
-#ifdef SYMBIAN_AUTH_SERVER
-
-	virtual void CreateKey(	const TDesC& aAuthenticationString, 
-							TInt aFreshness,
-							CCTKeyInfo*& aReturnedKey,
-							TRequestStatus& aStatus );
-
-	virtual void ImportKey( const TDesC8& aKey, 
-							const TDesC& aAuthenticationString, 
-							TInt aFreshness, CCTKeyInfo*& aReturnedKey, 
-							TRequestStatus& aStatus );
-			
-
-	virtual void ImportEncryptedKey(const TDesC8& aKey, 
-									const TDesC& aAuthenticationString, 
-									TInt aFreshness, CCTKeyInfo*& aReturnedKey, 
-									TRequestStatus& aStatus );
-	
-	virtual void SetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle,
-											const TDesC& aAuthenticationString,
-											TInt aFreshness,
-											TRequestStatus& aStatus);
-
-	virtual void GetAuthenticationPolicy(	const TCTTokenObjectHandle aHandle,
-											HBufC*& aAuthenticationString,
-											TInt& aFreshness,
-											TRequestStatus& aStatus);
-
-#endif // SYMBIAN_AUTH_SERVER
 	
 	void ReleaseObject(const TCTTokenObjectHandle& aObject);
 public:	
@@ -239,12 +209,6 @@
 	CKeyStoreAuthObject* iAuthObject;   ///< The single auth object that serves as protector for all keys
 	CDHParams* iDHParams;				///< DH params for DH public key
 	HBufC8* iPbeParamsBuf;				///< Buffer holding PBE parameters for encrypted key export
-
-#ifdef SYMBIAN_AUTH_SERVER
-	TBool iUseNewKeyServer;
-	HBufC* iAuthExpression;
-	TInt iFreshness;
-#endif // SYMBIAN_AUTH_SERVER
 	
 };
 
Binary file cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/200218e6.txt has changed
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -24,12 +24,7 @@
 
 _LIT(KKeyStoreFilename,"keys.dat");
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <e32property.h>
-#include <authserver/aspubsubdefs.h>
-#else
 const TInt KDefaultPassphraseTimeout = 30;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 //	*********************************************************************
 //	Key store data manager - maintains array of objects representing keys
@@ -57,18 +52,13 @@
 		
 	iKeys.ResetAndDestroy();
 	iKeys.Close();
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iIdentityId.Close();
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 CFileKeyDataManager::CFileKeyDataManager() :
 	iRootStreamId(KNullStreamId),
 	iInfoStreamId(KNullStreamId)
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	,iPassStreamId(KNullStreamId),
 	iTimeoutStreamId(KNullStreamId)
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	{
 	}
 
@@ -81,13 +71,8 @@
 	RStoreReadStream lookupStream;
 	lookupStream.OpenLC(*iFileStore, iInfoStreamId);
 
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	User::LeaveIfError(iIdentityId.Attach(	AuthServer::KAuthServerSecureId,
-											AuthServer::KUidAuthServerAuthChangeEvent));
-	#else
 	iPassStreamId = (TStreamId) lookupStream.ReadUint32L();
 	iTimeoutStreamId = (TStreamId) lookupStream.ReadUint32L();
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 	TInt count = lookupStream.ReadInt32L();
 	for (TInt index = 0; index < count; index++)
@@ -103,11 +88,7 @@
 		}
 	
 	CleanupStack::PopAndDestroy(&lookupStream);
-
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ReadPassphraseTimeoutL();
-#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 	}
 
 CPassphraseManager* CFileKeyDataManager::CreatePassphraseManagerLC()
@@ -186,23 +167,19 @@
 	TCleanupItem cleanupStore(RevertStore, iFileStore);
 	CleanupStack::PushL(cleanupStore);
 	
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	// Create timeout stream with default timeout
 	RStoreWriteStream timeoutStream;
 	iTimeoutStreamId = timeoutStream.CreateLC(*iFileStore);
 	timeoutStream.WriteUint32L(KDefaultPassphraseTimeout);
 	timeoutStream.CommitL();
 	CleanupStack::PopAndDestroy(&timeoutStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	// Create info stream - Currently no passphrase created, and no keys
 	RStoreWriteStream infoStream;
 	iInfoStreamId = infoStream.CreateLC(*iFileStore);
 	
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	infoStream.WriteUint32L(KNullStreamId.Value());
 	infoStream.WriteUint32L(iTimeoutStreamId.Value());
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	infoStream.WriteUint32L(0); // Write key count of zero
 	infoStream.CommitL();
@@ -264,10 +241,9 @@
 	RStoreWriteStream lookupStream;
 	lookupStream.ReplaceLC(*iFileStore, iInfoStreamId);
 
-	#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		lookupStream.WriteUint32L(iPassStreamId.Value());
-		lookupStream.WriteUint32L(iTimeoutStreamId.Value());
-	#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+	lookupStream.WriteUint32L(iPassStreamId.Value());
+	lookupStream.WriteUint32L(iTimeoutStreamId.Value());
+
 	
 	TInt keyCount = iKeys.Count();
 	lookupStream.WriteInt32L(keyCount);
@@ -289,15 +265,11 @@
 void CFileKeyDataManager::AddL(const CFileKeyData* aKeyData)
 	{
 	ASSERT(aKeyData);
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		ASSERT(aKeyData->PassphraseStreamId() != KNullStreamId);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+	ASSERT(aKeyData->PassphraseStreamId() != KNullStreamId);
 
 	// Add the key to to the array, rewrite the infostream and 
 	// ONLY THEN commit the store
 	User::LeaveIfError(iKeys.Append(aKeyData));
-
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	TStreamId oldDefaultPassphraseId;
 
 	// Set the default passphrase id if this is the first key
@@ -306,16 +278,13 @@
 		{
 		iPassStreamId = aKeyData->PassphraseStreamId();
 		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	TRAPD(err,UpdateStoreL());
 	
 	if (err != KErrNone)
 		{
 		iKeys.Remove(iKeys.Count() - 1);
-		#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			iPassStreamId = oldDefaultPassphraseId;
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+		iPassStreamId = oldDefaultPassphraseId;
 		User::Leave(err);
 		}
 	}
@@ -363,7 +332,6 @@
 	iFileStore->DeleteL(key->PublicDataStreamId());
 	iFileStore->DeleteL(key->InfoDataStreamId());
 
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	// Remove the passphrase if it's the last key
 	TStreamId oldPassphraseId = iPassStreamId;
 	if (Count() == 1)
@@ -371,7 +339,6 @@
 		iFileStore->DeleteL(iPassStreamId);
 		iPassStreamId = KNullStreamId;
 		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	// Remove the key
 	iKeys.Remove(index);
@@ -380,9 +347,8 @@
 
 	if (res != KErrNone)
 		{
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER		
 		iPassStreamId = oldPassphraseId;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 		User::LeaveIfError(iKeys.Append(key)); // Put it back, shouldn't leave
 		User::Leave(res);
 		}
@@ -396,24 +362,6 @@
 	CompactStore();
 }
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-TBool CFileKeyDataManager::IsKeyAlreadyInStore(const TDesC& aKeyLabel, AuthServer::TIdentityId aIdentity) const
-	{//	Check each key in the store to determine if aKeyLabel already exists
-	TInt keyCount = iKeys.Count();
-	TBool isInStore = EFalse;
-	for (TInt index = 0; index < keyCount; ++index)
-		{
-		const TDesC& keyLabel = iKeys[index]->Label();
-		if (keyLabel.Compare(aKeyLabel)==0 && (iKeys[index]->Identity() == aIdentity))
-			{
-			isInStore = ETrue;
-			break;
-			}
-		}
-	return (isInStore);
-	}
-
-#else
 TBool CFileKeyDataManager::IsKeyAlreadyInStore(const TDesC& aKeyLabel) const
 {//	Check each key in the store to determine if aKeyLabel already exists
 	TInt keyCount = iKeys.Count();
@@ -431,7 +379,6 @@
 	return (isInStore);
 }
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 TInt CFileKeyDataManager::Count() const
 	{
@@ -460,18 +407,6 @@
 //	Management of file and store therein
 //	*********************************************************************
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-const CFileKeyData* CFileKeyDataManager::CreateKeyDataLC(const TDesC& aLabel, AuthServer::TIdentityId aIdentityId)
-	{
-	TInt objectId = ++iKeyIdentifier;
-	TStreamId infoData = CreateWriteStreamL();
-	TStreamId publicKeyData = CreateWriteStreamL();
-	TStreamId privateKeyData = CreateWriteStreamL();
-	return CFileKeyData::NewLC(objectId, aLabel, infoData, publicKeyData, privateKeyData, aIdentityId);
-	}
-
-#else
 const CFileKeyData* CFileKeyDataManager::CreateKeyDataLC(const TDesC& aLabel, TStreamId aPassStreamId)
 	{
 	ASSERT(aPassStreamId != KNullStreamId);
@@ -482,7 +417,6 @@
 	return CFileKeyData::NewLC(objectId, aLabel, infoData, aPassStreamId, publicKeyData, privateKeyData);
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 //	Creates a new write stream in the store (which it then closes)
 //	Returns the TStreamId associated with it
@@ -510,9 +444,6 @@
 	stream.OpenLC(*iFileStore, aKeyData.InfoDataStreamId());
 	CKeyInfo* info = CKeyInfo::NewL(stream);
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	ReadAuthDetailsL(stream, *info);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	CleanupStack::PopAndDestroy(&stream);
 	info->CleanupPushL();
 	if (info->Handle() != aKeyData.Handle())
@@ -527,31 +458,10 @@
 	RStoreWriteStream infoStream;
 	OpenInfoDataStreamLC(aKeyData, infoStream);
 	infoStream << aKeyInfo;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	WriteAuthDetailsL(infoStream, aKeyInfo);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	infoStream.CommitL();
 	CleanupStack::PopAndDestroy(&infoStream);
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-void CFileKeyDataManager::WriteAuthDetailsL( RStoreWriteStream& aInfoStream, const CKeyInfo& aKeyInfo )
-	{
-	aInfoStream.WriteInt32L(aKeyInfo.Identity());
-	aInfoStream << aKeyInfo.AuthExpression();
-  	aInfoStream.WriteInt32L(aKeyInfo.Freshness());
-	}
-
-void CFileKeyDataManager::ReadAuthDetailsL( RStoreReadStream& aInfoStream, CKeyInfo& aKeyInfo ) const
-	{
-	aKeyInfo.SetIdentity(aInfoStream.ReadInt32L());
-	HBufC* expression = HBufC::NewLC(aInfoStream, KMaxTInt);
-	aKeyInfo.SetAuthExpressionL(*expression);
-	aKeyInfo.SetFreshness(aInfoStream.ReadInt32L());
-	CleanupStack::PopAndDestroy(expression);
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 void CFileKeyDataManager::SafeWriteKeyInfoL(const CFileKeyData& aKeyData, const CKeyInfo& aKeyInfo)
 	{
 	TCleanupItem cleanupStore(RevertStore, iFileStore);
@@ -581,22 +491,6 @@
 	aStream.OpenLC(*iFileStore, aKeyData.PublicDataStreamId());
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-void CFileKeyDataManager::OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, RStoreWriteStream& aStream) 
-	{
-	__ASSERT_DEBUG(iFileStore, PanicServer(EPanicStoreInitialised));
-	aStream.ReplaceLC(*iFileStore, aKeyData.PrivateDataStreamId());
-	}
-
-void CFileKeyDataManager::OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, RStoreReadStream& aStream) const
-	{
-	__ASSERT_DEBUG(iFileStore, PanicServer(EPanicStoreInitialised));
-	aStream.OpenLC(*iFileStore, aKeyData.PrivateDataStreamId());
-	}
-
-#else
-
 void CFileKeyDataManager::OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, CPassphrase& aPassphrase,
 												  RStoreReadStream& aStream) 
 	{
@@ -612,9 +506,6 @@
 	}
 
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 TInt CFileKeyDataManager::GetPassphraseTimeout() const
 	{
 	return iTimeout;
@@ -660,7 +551,6 @@
 	return iPassStreamId;
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 /**
  * Attempt to compact the store - it doesn't matter if these calls leave, it
@@ -672,28 +562,8 @@
 	TRAP_IGNORE(iFileStore->ReclaimL(); iFileStore->CompactL());
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-TUint32 CFileKeyDataManager::CachedIdentity()
-	{
-	TInt value = 0;
-	iIdentityId.Get(value);
-	return value;
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 // CFileKeyData ////////////////////////////////////////////////////////////////
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-CFileKeyData* CFileKeyData::NewLC(	TInt aObjectId, const TDesC& aLabel, TStreamId aInfoData,
-								  TStreamId aPublicData, TStreamId aPrivateData,
-								  AuthServer::TIdentityId aIdentityId)
-	{
-	CFileKeyData* self = new (ELeave) CFileKeyData(aObjectId, aInfoData, aPublicData, aPrivateData, aIdentityId);
-	CleanupStack::PushL(self);
-	self->ConstructL(aLabel);
-	return self;
-	}
-#else
 CFileKeyData* CFileKeyData::NewLC(TInt aObjectId, const TDesC& aLabel, TStreamId aInfoData,
 								  TStreamId aPassphraseId, TStreamId aPublicData, TStreamId aPrivateData)
 	{
@@ -703,7 +573,6 @@
 	return self;
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 CFileKeyData* CFileKeyData::NewL(RStoreReadStream& aReadStream)
 	{
@@ -719,21 +588,6 @@
 	delete iLabel;
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-CFileKeyData::CFileKeyData(TInt aObjectId, TStreamId aInfoData,  
-						   TStreamId aPublicData, TStreamId aPrivateData,
-						   AuthServer::TIdentityId aIdentityId) :
-	iObjectId(aObjectId), iInfoData(aInfoData), 
-	iPublicKeyData(aPublicData), iPrivateKeyData(aPrivateData),
-	iIdentityId(aIdentityId)
-	{
-	ASSERT(iObjectId);
-	ASSERT(iInfoData != KNullStreamId);
-	ASSERT(iPublicKeyData != KNullStreamId);
-	ASSERT(iPrivateKeyData != KNullStreamId);
-	ASSERT(iIdentityId);
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 #ifdef KEYTOOL
 CFileKeyData::CFileKeyData(TInt aObjectId, TStreamId aInfoData,  
 						   TStreamId aPublicData, TStreamId aPrivateData,
@@ -779,9 +633,7 @@
 {
 	iObjectId = aReadStream.ReadInt32L();
 	iInfoData.InternalizeL(aReadStream);
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	iPassphraseId.InternalizeL(aReadStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	iPublicKeyData.InternalizeL(aReadStream);
 	iPrivateKeyData.InternalizeL(aReadStream);
 	
@@ -790,18 +642,13 @@
 	TPtr theLabel((TUint16*)iLabel->Ptr(), labelLen, labelLen);
 	theLabel.FillZ(labelLen);
 	aReadStream.ReadL(theLabel);
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iIdentityId = aReadStream.ReadInt32L();
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 }
 
 void CFileKeyData::ExternalizeL(RWriteStream& aWriteStream) const
 {
 	aWriteStream.WriteInt32L(iObjectId);
 	iInfoData.ExternalizeL(aWriteStream);
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	iPassphraseId.ExternalizeL(aWriteStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	iPublicKeyData.ExternalizeL(aWriteStream);
 	iPrivateKeyData.ExternalizeL(aWriteStream);
 
@@ -810,10 +657,6 @@
 	TPtr theLabel(iLabel->Des());
 	theLabel.SetLength(labelLen);
 	aWriteStream.WriteL(theLabel);
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	aWriteStream.WriteInt32L(iIdentityId);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 }
 
 #ifdef KEYTOOL
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyDataManager.h	Wed Sep 01 12:40:57 2010 +0100
@@ -33,11 +33,6 @@
 class CPassphraseManager;
 class CPassphrase;
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <authserver/authtypes.h>
-#include <e32property.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 #ifdef KEYTOOL
 #include <authserver/authtypes.h>
 #include <e32property.h>
@@ -57,12 +52,6 @@
     /// Read a key data object from a stream
 	static CFileKeyData* NewL(RStoreReadStream& aReadStream);
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	static CFileKeyData* NewLC(	TInt aObjectId, const TDesC& aLabel, 
-								TStreamId aInfoData, TStreamId aPublicData, 
-								TStreamId aPrivateData, AuthServer::TIdentityId aIdentityId);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 #ifdef KEYTOOL
 	static CFileKeyData* CreateOldKeyL(RStoreReadStream& aReadStream);
 #endif // KEYTOOL
@@ -81,9 +70,6 @@
 	inline TStreamId PassphraseStreamId() const;
 	inline TStreamId PublicDataStreamId() const;
 	inline TStreamId PrivateDataStreamId() const;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	inline AuthServer::TIdentityId Identity() const;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 #ifdef KEYTOOL
 	inline void SetInfoDataStreamId( TStreamId& aInfoDataStreamId );
 	inline void SetPublicDataStreamId( TStreamId& aPublicDataStreamId );
@@ -94,12 +80,6 @@
 	CFileKeyData(TInt aObjectId, TStreamId aInfoData, TStreamId aPassphraseId,
 				 TStreamId aPublicData, TStreamId aPrivateData);
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	CFileKeyData(	TInt aObjectId, TStreamId aInfoData,  
-					TStreamId aPublicData, TStreamId aPrivateData, 
-					AuthServer::TIdentityId aIdentityId);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 #ifdef KEYTOOL
 	CFileKeyData(	TInt aObjectId, TStreamId aInfoData,  
 					TStreamId aPublicData, TStreamId aPrivateData, 
@@ -120,9 +100,6 @@
 	TStreamId iPublicKeyData;	///< ID of stream holding public key data
 	TStreamId iPrivateKeyData;	///< ID of stream holding private key data
 	HBufC* iLabel;				///< Key label data
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::TIdentityId iIdentityId;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 #ifdef KEYTOOL
 	AuthServer::TIdentityId iIdentityId;
 #endif // KEYTOOL
@@ -158,12 +135,6 @@
 	return iPrivateKeyData;
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-inline AuthServer::TIdentityId CFileKeyData::Identity() const
-	{
-	return iIdentityId;
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 #ifdef KEYTOOL
 	inline void CFileKeyData::SetInfoDataStreamId( TStreamId& aInfoDataStreamId )
@@ -196,22 +167,13 @@
 	CPassphraseManager* CreatePassphraseManagerLC();
 	void AddL(const CFileKeyData*);
 	void RemoveL(TInt aObjectId);
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	TBool IsKeyAlreadyInStore(const TDesC& aKeyLabel, AuthServer::TIdentityId aIdentity) const;
-#else
 	TBool IsKeyAlreadyInStore(const TDesC& aKeyLabel) const;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 public:
 	/// Get the id of the default passphrase, or KNullStreamId if it doesn't exist yet.
 	TStreamId DefaultPassphraseId() const;
 	/// Create a new key data object for a key create/import and leave it one the cleanup stack
 	const CFileKeyData* CreateKeyDataLC(const TDesC& aLabel, TStreamId aPassphrase);
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	const CFileKeyData* CreateKeyDataLC(const TDesC& aLabel, AuthServer::TIdentityId aIdentity);
-	TUint32 CachedIdentity();
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 	///	Reads the info data for a given key, returning a new CKeyInfo that's on the cleanup stack
 	CKeyInfo* ReadKeyInfoLC(const CFileKeyData& aKeyData) const;
 	
@@ -224,13 +186,8 @@
 	void OpenPublicDataStreamLC(const CFileKeyData& aKeyData, RStoreReadStream& aStream) const;
 	void OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, CPassphrase& aPassphrase, RStoreReadStream& aStream);	
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	void OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, RStoreWriteStream& aStream);
-	void OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, RStoreReadStream& aStream) const;
-#else
 	void OpenPrivateDataStreamLC(const CFileKeyData& aKeyData, CPassphrase& aPassphrase, RStoreWriteStream& aStream);
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	/*
 	 * not currently implemented, but might be someday
@@ -268,12 +225,7 @@
 	void ReadPassphraseTimeoutL();
 	void WritePassphraseTimeoutL();
 	void CompactStore();
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	const HBufC8* DecryptKey(const TDesC8& aEncryptedKey);
-	void WriteAuthDetailsL( RStoreWriteStream& aInfoStream, const CKeyInfo& aKeyInfo );
-	void ReadAuthDetailsL( RStoreReadStream& aInfoStream, CKeyInfo& aKeyInfo ) const;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
+
 private:
 	RFile iFile;
 	RFs iFs;
@@ -281,12 +233,8 @@
 	TStreamId iRootStreamId;	 		///< Root of the store
 	TStreamId iInfoStreamId;	 		///< Stream that contains list of key data
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	RProperty iIdentityId;
-#else
 	TStreamId iPassStreamId;	 		///< Stream for the default passphrase
 	TStreamId iTimeoutStreamId;  		///< Stream for timeout data
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 private:
 	TInt iKeyIdentifier;
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyStoreConduit.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/CKeyStoreConduit.h	Wed Sep 01 12:40:57 2010 +0100
@@ -41,10 +41,6 @@
 class CPBEncryptParms;
 class CDHPublicKey;
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <authserver/identity.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 
 /**
  * The key store server object (CFSKeyStoreServer) owns one instance of this
@@ -94,18 +90,6 @@
 	void OpenKeyL(const RMessage2& aMessage, CKeyStoreSession& aSession, TUid aType);
 	void CloseObjectL(const RMessage2& aMessage, CKeyStoreSession& aSession);
 	
-#ifdef SYMBIAN_AUTH_SERVER
-	void IsKeyServerNewL(const RMessage2& aMessage);
-#endif // SYMBIAN_AUTH_SERVER
-	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
-	void CreateUserKeyL(const RMessage2& aMessage);
-	void ImportUserKeyL(const RMessage2& aMessage);
-	void SetAuthenticationPolicyL(const RMessage2& aMessage);
-	void GetAuthenticationPolicyL(const RMessage2& aMessage);
-	
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
  private:
 	// For MCTAuthenticationObject
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Cfskeystoreserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Cfskeystoreserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -40,24 +40,6 @@
 #include <e32math.h>
 #include "x509keyencoder.h"
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <s32mem.h>
-#include <e32std.h>
-#include <authserver/authclient.h>
-#include <authserver/authexpression.h>
-#include <authserver/auth_srv_errs.h>
-#include <authserver/aspubsubdefs.h>
-#include <authserver/authtypes.h>
-
-#include <asymmetrickeys.h>
-#include "keystorecenrepconfig.h"
-#include "keystore_errs.h"
-#include "cfskeystoreserver.inl"
-
-// Length set to retrieve the authentication expression
-// from the central repository.
-const TInt KAuthStringLength = 255;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 // We don't currently allow any keys larger than 2048 bits.  It may be necessary to
 // increase this limit in the future. 
@@ -65,9 +47,7 @@
 const TUint KTheMaxKeySize = 2048;
 
 // Security policies
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 _LIT_SECURITY_POLICY_C1(KSetTimeoutSecurityPolicy, ECapabilityWriteDeviceData);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 _LIT_SECURITY_POLICY_C1(KWriteUserDataPolicy, ECapabilityWriteUserData);
 _LIT_SECURITY_POLICY_C1(KReadUserDataPolicy, ECapabilityReadUserData);
 
@@ -92,10 +72,6 @@
 
 	iConduit = CKeyStoreConduit::NewL(*this);
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	User::LeaveIfError(iAuthClient.Connect());		
-	iKeyStoreCenrep = CKeyStoreCenrep::NewL();	
-#endif	// SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	iKeyDataManager = CFileKeyDataManager::NewL();
 	
@@ -110,14 +86,6 @@
 	delete iConduit;
 	delete iKeyCreator;
 	iSessions.Close();
-
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iAuthClient.Close();	
-	delete iUserIdentity;
-	delete iKeyStoreCenrep;
-	delete iAuthString;	
-#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 	}
 
 CKeyStoreSession* CFSKeyStoreServer::CreateSessionL()
@@ -170,22 +138,6 @@
 		User::Leave(KErrPermissionDenied);
 		}
 		
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iIdentityId = iKeyDataManager->CachedIdentity(); 
-	if(iIdentityId == AuthServer::KUnknownIdentity)
-		{
-		HBufC* authExpression = HBufC::NewLC(KAuthStringLength);
-		TPtr ptr = authExpression->Des();
-		iKeyStoreCenrep->AuthExpressionL(ptr);
-		TInt freshness = iKeyStoreCenrep->FreshnessL();
-		CheckRangeL(freshness);
-		
-		AuthServer::CIdentity* identity = SyncAuthenticateLC(*authExpression,freshness);
-		iIdentityId = identity->Id();
-		CleanupStack::PopAndDestroy(2, authExpression); // identity
-		}
-#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 	TInt count = iKeyDataManager->Count();
 
 	for (TInt i = 0; i < count; ++i)
@@ -194,20 +146,10 @@
 		CKeyInfo* info = iKeyDataManager->ReadKeyInfoLC(*data);
 		if (KeyMatchesFilterL(*info, aFilter))
 			{
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			if(info->Identity() == iIdentityId)
-				{
-				// this is required as the client side object does
-				// not contain authentication details.
-				info->ResetAuthExpression();
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 				
 				User::LeaveIfError(aKeys.Append(info));
 				CleanupStack::Pop(info);
 				
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-				}
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			}
 		else	
 			{
@@ -288,45 +230,11 @@
 		User::Leave(KErrPermissionDenied);
 		}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iIdentityId = iKeyDataManager->CachedIdentity(); 
-	if(iIdentityId == AuthServer::KUnknownIdentity)
-		{
-		AuthServer::CIdentity* userIdentity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-		iIdentityId = userIdentity->Id();
-		CleanupStack::PopAndDestroy(userIdentity);
-		}
-	if(iIdentityId != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	aInfo = keyInfo;
 	CleanupStack::Pop(keyInfo);
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-AuthServer::CIdentity* CFSKeyStoreServer::SyncAuthenticateLC(const TDesC& aAuthExpression, TInt aFreshness)
-	{
-	AuthServer::CAuthExpression* expression = iAuthClient.CreateAuthExpressionL(aAuthExpression);
-	CleanupStack::PushL(expression);
-	TUid uid = TUid::Uid(0);
-	AuthServer::CIdentity* userIdentity = iAuthClient.AuthenticateL(*expression,aFreshness, EFalse, uid, EFalse, KNullDesC);
-	CleanupStack::PushL(userIdentity);
-	if(userIdentity->Id() == AuthServer::KUnknownIdentity)
-		{
-		User::Leave(KErrAuthenticationFailure);
-		}
-	CleanupStack::Pop(userIdentity);
-	CleanupStack::PopAndDestroy(expression);
-	CleanupStack::PushL(userIdentity);
-	return userIdentity;
-	}
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 TInt CFSKeyStoreServer::GetKeyLengthL(TInt aObjectId)
 	{
 	const CFileKeyData* keyData = iKeyDataManager->Lookup(aObjectId);
@@ -368,15 +276,6 @@
 
 	CKeyInfo* keyInfo = iKeyDataManager->ReadKeyInfoLC(*keyData);
 
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::CIdentity* identity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-	if(identity->Id() != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-	CleanupStack::PopAndDestroy(identity);
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 	RStoreReadStream stream;
 	iKeyDataManager->OpenPublicDataStreamLC(*keyData, stream);
 
@@ -517,18 +416,10 @@
 	return KErrNone;
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-/**
- * This method uses the default authentication policy to 
- * authenticated a user and encrypt the key using the protection
- * key and store it against the authenticated user .
- */
-#else
 /**
  * This method stores the keys in the keystore and encrypts the 
  * entire keystore with a passphrase.
  */
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 void CFSKeyStoreServer::CreateKey(CKeyInfo& aReturnedKey, TRequestStatus& aStatus)
 	{
@@ -537,15 +428,7 @@
 	aStatus = KRequestPending;
 	iCallerRequest = &aStatus;
 		
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	// the next state would ask for the user to be authenticated.
-	// we do not use the cached identity directly through the
-	// published value as the protection key of the user would 
-	// be required to store the key in encrypted form. 
-	iAction = ESetAuthPolicy;
-#else
 	iAction = EGetPassphrase;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	// Check the calling process has WriteUserData capability
 	if (!KWriteUserDataPolicy.CheckPolicy(*iMessage))
@@ -568,99 +451,6 @@
 		}
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-void CFSKeyStoreServer::AsyncAuthenticateL(	const TDesC& aAuthString,
-											TInt aFreshness)
-	{
-	TUid uid = TUid::Uid(0);
-	AuthServer::CAuthExpression* expression = iAuthClient.CreateAuthExpressionL(aAuthString);
-	CleanupStack::PushL(expression);
-	iAuthClient.AuthenticateL(*expression,aFreshness, EFalse, uid, EFalse, KNullDesC, iUserIdentity, iStatus);
-	SetActive();
-	CleanupStack::PopAndDestroy(expression);
-	}
-
-/**
- * This method uses the authentication policy as supplied in the 
- * call to authenticate an user and encrypt the key using its 
- * protection key and store it against the authenticated user .
- */
-void CFSKeyStoreServer::CreateUserKey(	CKeyInfo& aReturnedKey,
-										const TDesC& aAuthString,
-										TInt aFreshness,
-										TRequestStatus& aStatus)
-	{
-	iAction = EAuthenticate;
-	iNextAction = ECreateUserKey;
-		
-	iKeyInfo = &aReturnedKey;
-	aStatus = KRequestPending;
-	iCallerRequest = &aStatus;
-		
-	// Check the calling process has WriteUserData capability
-	if (!KWriteUserDataPolicy.CheckPolicy(*iMessage))
-		{
-		CompleteClientRequest(KErrPermissionDenied);
-		return;
-		}
-		
-	TRAPD(err,iKeyInfo->SetAuthExpressionL(aAuthString));
-	if(err != KErrNone)
-		{
-		CompleteClientRequest(err);
-		return;
-		}
-	
-	iKeyInfo->SetFreshness(aFreshness);
-	
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-	}
-
-
-void CFSKeyStoreServer::ImportUserKey(	const TDesC8& aKey, 
-										CKeyInfo& aReturnedKey, 
-										TBool aIsEncrypted,
-										const TDesC& aAuthString,
-										TInt aFreshness,
-										TRequestStatus& aStatus)
-	{
-	ASSERT(iMessage);
- 
-	iPKCS8Data.Set(aKey);
-	iImportingEncryptedKey = aIsEncrypted;
-	iKeyInfo = &aReturnedKey;
-	aStatus = KRequestPending;
-	iCallerRequest = &aStatus;
-	
-	// Check the calling process has WriteUserData capability
-	if (!KWriteUserDataPolicy.CheckPolicy(*iMessage))
-		{
-		CompleteClientRequest(KErrPermissionDenied);
-		return;
-		}
-		
-	TRAPD(err,iKeyInfo->SetAuthExpressionL(aAuthString));
-	if(err != KErrNone)
-		{
-		CompleteClientRequest(err);
-		return;
-		}
-		
-	iKeyInfo->SetFreshness(aFreshness);
-	
-	iAction = EAuthenticate;
-	iNextAction = EImportUserKey;
-	
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-		
-	}
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 void CFSKeyStoreServer::CancelCreateKey()
 	{
@@ -669,22 +459,11 @@
 		{
 		Cancel();
 		}
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	if (iAction == ECreateUserKey || 
-		iAction == ECreateKeyFinal)
-		{
-		Cancel();
-		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CFSKeyStoreServer::DoCreateKeyL()
 {
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	__ASSERT_DEBUG(iAction==ECreateUserKey, PanicServer(EPanicECreateKeyNotReady));
-#else
 	__ASSERT_DEBUG(iAction==ECreateKeyCreate, PanicServer(EPanicECreateKeyNotReady));
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	__ASSERT_DEBUG(iKeyInfo, PanicServer(EPanicNoClientData));
 	
@@ -696,130 +475,6 @@
 	iKeyCreator->DoCreateKeyAsync(iKeyInfo->Algorithm(), iKeyInfo->Size(), iStatus);
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-void CFSKeyStoreServer::SetAuthenticationPolicy(	
-							TInt aObjectId, 
-							HBufC* aAuthString,
-							TInt aFreshness, 
-							TRequestStatus& aStatus)
-	{
-	aStatus = KRequestPending;
-	iCallerRequest = &aStatus;
-	iObjectId = aObjectId;
-	iAuthString = aAuthString;
-	iFreshness = aFreshness;
-	
-	// Check the calling process has WriteUserData capability
-	if (!KWriteUserDataPolicy.CheckPolicy(*iMessage))
-		{
-		CompleteClientRequest(KErrPermissionDenied);
-		return;
-		}
-		
-	iAction = EDoSetAuthenticationPolicy;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-			
-	}
-
-HBufC* CFSKeyStoreServer::AuthExpressionL( TInt aObjectId)
-	{
-	// Check the calling process has ReadUserData capability
-	if (!KReadUserDataPolicy.CheckPolicy(*iMessage))
-		{
-		User::Leave(KErrPermissionDenied);
-		}
-	
-	CKeyInfo* keyInfo = KeyDetailsLC(aObjectId);
-	HBufC* authExpression = keyInfo->AuthExpression().AllocL();
-	CleanupStack::PopAndDestroy(keyInfo);
-	
-	return authExpression;
-	}
-
-TInt CFSKeyStoreServer::FreshnessL(TInt aObjectId)
-	{
-	// Check the calling process has ReadUserData capability
-	if (!KReadUserDataPolicy.CheckPolicy(*iMessage))
-		{
-		User::Leave(KErrPermissionDenied);
-		}
-		
-	CKeyInfo* keyInfo = KeyDetailsLC(aObjectId);
-	TInt freshness = keyInfo->Freshness();
-	CleanupStack::PopAndDestroy(keyInfo);
-			
-	return freshness;
-	}
-
-CKeyInfo* CFSKeyStoreServer::KeyDetailsLC(TInt aObjectId)
-	{
-	const CFileKeyData* keyData = iKeyDataManager->Lookup(aObjectId);
-	if (!keyData)
-		{
-		User::Leave(KErrNotFound);
-		}
-	
-	CKeyInfo* keyInfo = iKeyDataManager->ReadKeyInfoLC(*keyData);
-	AuthServer::TIdentityId identityId = iKeyDataManager->CachedIdentity(); 
-		
-	if( identityId == AuthServer::KUnknownIdentity)
-		{
-		AuthServer::CIdentity* userIdentity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-		identityId = userIdentity->Id();
-		CleanupStack::PopAndDestroy(userIdentity);		
-		}
-	if(identityId == AuthServer::KUnknownIdentity)
-		{
-		User::Leave(KErrAuthenticationFailure);
-		}
-	if(identityId != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-	
-	return keyInfo;
-	}
-
-/*
- * This method is used to set the default authentication policy for a key which is being
- * created using the old methods.
- */
-
-void CFSKeyStoreServer::SetDefaultAuthPolicyL()
-	{
-	ASSERT(iKeyInfo);
-	
-	HBufC* authExpression = HBufC::NewLC(KAuthStringLength);
-	TPtr ptr = authExpression->Des();
-	iKeyStoreCenrep->AuthExpressionL(ptr);
-	TInt freshness = iKeyStoreCenrep->FreshnessL();
-	CheckRangeL(freshness);
-	
-	iKeyInfo->SetAuthExpressionL(*authExpression);
-	iKeyInfo->SetFreshness(freshness);
-	CleanupStack::PopAndDestroy(authExpression);			
-	}
-
-void CFSKeyStoreServer::WriteAuthenticationPolicyL()
-	{
-	ASSERT(iKeyInfo);
-	
-	if(iIdentityId != iKeyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-	
-	iKeyInfo->SetAuthExpressionL(*iAuthString);
-	delete iAuthString;
-	iAuthString = NULL;
-	iKeyInfo->SetFreshness(iFreshness);
-	iKeyDataManager->SafeWriteKeyInfoL(*iKeyData, *iKeyInfo);
-	}	
-
-#else
 /**
  * Get the default passphrase for the store, or create one if it hasn't been set
  * yet.  This is used for key creation, import and export.
@@ -843,8 +498,6 @@
 	SetActive();
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 /**
  * Store a key.
  *
@@ -868,20 +521,12 @@
 	__ASSERT_DEBUG(iAction==ECreateKeyFinal, PanicServer(EPanicECreateKeyNotReady));
 	__ASSERT_DEBUG(iKeyInfo, PanicServer(EPanicNoClientData));
 	__ASSERT_DEBUG(iKeyCreator, PanicServer(ENoCreatedKeyData));
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ASSERT(iPassphrase);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 	const CFileKeyData* keyData = NULL;
 	RStoreWriteStream privateStream;
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	keyData = iKeyDataManager->CreateKeyDataLC(iKeyInfo->Label(), iKeyInfo->Identity());
-	iKeyDataManager->OpenPrivateDataStreamLC(*keyData, privateStream);
-#else
 	keyData = iKeyDataManager->CreateKeyDataLC(iKeyInfo->Label(), iPassphrase->StreamId());
 	iKeyDataManager->OpenPrivateDataStreamLC(*keyData, *iPassphrase, privateStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	
 	CKeyInfo::EKeyAlgorithm keyAlgorithm = iKeyInfo->Algorithm();
@@ -894,11 +539,7 @@
 			{
 			CRSAKeyPair* newKey = iKeyCreator->GetCreatedRSAKey();
 			KeyIdentifierUtil::RSAKeyIdentifierL(newKey->PublicKey(), theKeyId);			
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-				EncryptAndStoreL(newKey->PrivateKey(), privateStream);
-			#else
-				privateStream << newKey->PrivateKey();
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+			privateStream << newKey->PrivateKey();
 			break;
 			}
 			
@@ -906,11 +547,7 @@
 			{
 			CDSAKeyPair* newKey = iKeyCreator->GetCreatedDSAKey();			
 			KeyIdentifierUtil::DSAKeyIdentifierL(newKey->PublicKey(), theKeyId);
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-				EncryptAndStoreL(newKey->PrivateKey(), privateStream);
-			#else
-				privateStream << newKey->PrivateKey();
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER	
+			privateStream << newKey->PrivateKey();
 			break;
 			}
 
@@ -923,11 +560,7 @@
 			if (newKey.IsZero())
 				User::Leave(KErrArgument);
 
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER	
-				EncryptAndStoreL(newKey, privateStream);
-			#else
-				privateStream << newKey;
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+			privateStream << newKey;
 			break;
 			}
 		
@@ -983,37 +616,6 @@
 	
 }
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-void CFSKeyStoreServer::StoreKeyL(const TDesC8& aKeyData, RStoreWriteStream& aStream)
-	{
-	// retrieve the protection key of the current authenticated user for encrypting the 
-	// user's private key.
-	TPtrC8 key = iUserIdentity->Key().KeyData();
-	// used for pbe, the class can be used for encryption/decryption based on the 
-	// password supplied.
-	CPBEncryptElement* pbeEncrypt = CPBEncryptElement::NewL(key);
-	CleanupStack::PushL(pbeEncrypt);
-	// create an object for ecryption
-	CPBEncryptor* encryptor = pbeEncrypt->NewEncryptLC();
-	// cerate the buffer size required for storing the encrypted data.
-	HBufC8* ciphertext = HBufC8::NewLC(encryptor->MaxFinalOutputLength(aKeyData.Length()));
-	TPtr8 ciphertextTemp = ciphertext->Des();
-	// data gets encrypted and stored in the buffer
-	encryptor->ProcessFinalL(aKeyData, ciphertextTemp);
-	// externalixe the encryption parameters, this information is required later
-	// for decrypting the text later.
-	pbeEncrypt->EncryptionData().ExternalizeL(aStream);
-	// write out the cipher data length
-	aStream.WriteInt32L(ciphertext->Length());
-	// write the cipher data to the stream.
-	aStream.WriteL(*ciphertext);
-	// once the key has been store, delete the user identity
-	delete iUserIdentity;
-	iUserIdentity = NULL;
-	CleanupStack::PopAndDestroy(3, pbeEncrypt); // ciphertext,encryptor
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 void CFSKeyStoreServer::ImportKey(const TDesC8& aKey, CKeyInfo& aReturnedKey, TBool aIsEncrypted, TRequestStatus& aStatus)
 	{
 	ASSERT(iMessage);
@@ -1035,12 +637,6 @@
 	
 	SetActive();
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iAction = EDoImportKey;
-	
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#else
 	TInt err = CheckImportKeyPolicy(iImportingEncryptedKey ? ENewKeyImportEncrypted : ENewKeyImportPlaintext);
 	if(err != KErrNone)
 		{
@@ -1061,7 +657,6 @@
 		User::RequestComplete(status, KErrNone);
 		}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CFSKeyStoreServer::CheckExportKeyPolicyL()
@@ -1121,18 +716,11 @@
 	TInt err = CheckKeyAttributes(*iKeyInfo, aKeyOperation);		
 	
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	if (err == KErrNone && iKeyDataManager->IsKeyAlreadyInStore(iKeyInfo->Label(), iKeyInfo->Identity()))
-		{
-		err = KErrAlreadyExists;
-		}
-#else
 	if (err == KErrNone && iKeyDataManager->IsKeyAlreadyInStore(iKeyInfo->Label()))
 		{
 		err = KErrAlreadyExists;
 		}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	return err;
 	}
@@ -1169,12 +757,6 @@
 		{
 		Cancel();
 		}
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	if (iAction == EImportUserKey)
-		{
-		Cancel();
-		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CFSKeyStoreServer::DoImportKeyL()
@@ -1207,9 +789,7 @@
 
 void CFSKeyStoreServer::PKCS8ToKeyL(CDecPKCS8Data* aPKCS8Data)
 { 
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ASSERT(iPassphrase);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ASSERT(aPKCS8Data);
 	
 	MPKCS8DecodedKeyPairData* keyPairData = aPKCS8Data->KeyPairData();
@@ -1232,19 +812,11 @@
 		}
 		
 	const CFileKeyData* keyData = NULL;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	keyData = iKeyDataManager->CreateKeyDataLC(iKeyInfo->Label(),iKeyInfo->Identity());
-#else
 	keyData = iKeyDataManager->CreateKeyDataLC(iKeyInfo->Label(), iPassphrase->StreamId());
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	RStoreWriteStream privateStream;
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iKeyDataManager->OpenPrivateDataStreamLC(*keyData, privateStream);
-#else
 	iKeyDataManager->OpenPrivateDataStreamLC(*keyData, *iPassphrase, privateStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	// Generate the key identifier
 	TKeyIdentifier theKeyId;
@@ -1261,21 +833,13 @@
 		{
 		case (CKeyInfo::ERSA):
 			{
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			EncryptAndStoreL(static_cast<CPKCS8KeyPairRSA*>(keyPairData)->PrivateKey(), privateStream);
-			#else
 			privateStream << static_cast<CPKCS8KeyPairRSA*>(keyPairData)->PrivateKey();
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			
 			break;
 			}
 		case (CKeyInfo::EDSA):
 			{
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			EncryptAndStoreL(static_cast<CPKCS8KeyPairDSA*>(keyPairData)->PrivateKey(), privateStream);
-			#else
-				privateStream << static_cast<CPKCS8KeyPairDSA*>(keyPairData)->PrivateKey();
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+			privateStream << static_cast<CPKCS8KeyPairDSA*>(keyPairData)->PrivateKey();
 			
 			break;
 			}	
@@ -1370,19 +934,13 @@
 
 void CFSKeyStoreServer::CompleteKeyExportL(TBool encrypted /*=EFalse*/)
 	{
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ASSERT(iPassphrase);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	ASSERT(iKeyData);
 	ASSERT(iExportBuf.Ptr());
 	
 	CKeyInfo::EKeyAlgorithm keyAlgorithm = iKeyInfo->Algorithm();
 	RStoreReadStream privStream;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iKeyDataManager->OpenPrivateDataStreamLC(*iKeyData, privStream);
-#else
 	iKeyDataManager->OpenPrivateDataStreamLC(*iKeyData, *iPassphrase, privStream);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	CASN1EncSequence* encoded = NULL;
 			
@@ -1398,20 +956,7 @@
 			CleanupStack::PushL(publicKey);
 					
 			CRSAPrivateKey* privateKey = NULL;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			
-			TPtrC8 key = iUserIdentity->Key().KeyData();
-			HBufC8* plaintext = DecryptFromStreamL(privStream, key);
-			CleanupStack::PushL(plaintext);
-			TAny* ptr = const_cast<TAny*>(static_cast<const TAny*>(plaintext->Des().Ptr()));
-			RMemReadStream decryptedStream(ptr, plaintext->Length());
-			CleanupClosePushL(decryptedStream);
-			CreateL(decryptedStream, privateKey);
-			CleanupStack::PopAndDestroy(2,plaintext);
-
-#else
 			CreateL(privStream, privateKey);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			
 			ASSERT(privateKey);
 			CleanupStack::PushL(privateKey);			
@@ -1438,18 +983,7 @@
 			{
 			CDSAPrivateKey* privateKey = NULL;
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			TPtrC8 key = iUserIdentity->Key().KeyData();
-			HBufC8* plaintext = DecryptFromStreamL(privStream, key);
-			CleanupStack::PushL(plaintext);
-			TAny* ptr = const_cast<TAny*>(static_cast<const TAny*>(plaintext->Des().Ptr()));
-			RMemReadStream decryptedStream(ptr, plaintext->Length());
-			CleanupClosePushL(decryptedStream);
-			CreateL(decryptedStream, privateKey);
-			CleanupStack::PopAndDestroy(2,plaintext);
-#else
 			CreateL(privStream, privateKey);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 			ASSERT(privateKey);
 			CleanupStack::PushL(privateKey);
@@ -1514,20 +1048,7 @@
 		User::Leave(KErrPermissionDenied);
 		}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::TIdentityId identity = iKeyDataManager->CachedIdentity();
-	if(identity == AuthServer::KUnknownIdentity)
-		{
-		AuthServer::CIdentity* userIdentity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-		identity = userIdentity->Id();
-		CleanupStack::PopAndDestroy(userIdentity);
-		}
-	if(identity != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
+
 	CleanupStack::PopAndDestroy(keyInfo);
 
 	// Check if any session has this key open
@@ -1561,20 +1082,6 @@
 		User::Leave(KErrPermissionDenied);
 		}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::TIdentityId identity = iKeyDataManager->CachedIdentity();
-	if(identity == AuthServer::KUnknownIdentity)
-		{
-		AuthServer::CIdentity* userIdentity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-		identity = userIdentity->Id();
-		CleanupStack::PopAndDestroy(userIdentity);
-		}
-	if(identity != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
 	//should revert change if write fails
 	keyInfo->SetUsePolicy(aPolicy); 
 	iKeyDataManager->SafeWriteKeyInfoL(*keyData, *keyInfo);	
@@ -1606,19 +1113,6 @@
 		User::Leave(KErrArgument);
 		}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::TIdentityId identity = iKeyDataManager->CachedIdentity();
-	if(identity == AuthServer::KUnknownIdentity)
-		{
-		AuthServer::CIdentity* userIdentity = SyncAuthenticateLC(keyInfo->AuthExpression(), keyInfo->Freshness());
-		identity = userIdentity->Id();
-		CleanupStack::PopAndDestroy(userIdentity);
-		}
-	if(identity != keyInfo->Identity())
-		{
-		User::Leave(KErrNotFound);
-		}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 	//should revert change if write fails
 	keyInfo->SetManagementPolicy(aPolicy);
@@ -1627,7 +1121,6 @@
 	CleanupStack::PopAndDestroy(keyInfo);
 	}
 
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 // For MCTAuthenticationObject
 
 void CFSKeyStoreServer::ChangePassphrase(TRequestStatus& aStatus)
@@ -1728,7 +1221,6 @@
 		}			
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 //	*********************************************************************************
 //	From CActive
@@ -1759,10 +1251,6 @@
 		iAction == EExportEncryptedKeyGetPassphrase ||
 		iAction == EExportKey ||
 		iAction == EExportEncryptedKey
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		|| iAction == ESetAuthenticationPolicy 
-		|| iAction == EDoSetAuthenticationPolicy
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 		)
 		{
 		// we only own iKeyInfo for export operations
@@ -1770,24 +1258,7 @@
 		iKeyInfo = NULL;
 		}
 	
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	delete iUserIdentity;
-	iUserIdentity = NULL;
-	delete iAuthString;
-	iAuthString = NULL;
-	
-	// this is a design restriction, the ckeyinfo object 
-	// contains the authexpression, but while sending 
-	// the key info back to the client, the authentication
-	// data needs to be deleted.
-	if(	iAction == EImportKey || iAction == EAuthenticate ||
-		iAction == EImportUserKey || iAction == EDoImportKey ||
-		iAction == ECreateKeyFinal )
-		{
-		iKeyInfo->ResetAuthExpression();
-		}
-	#endif //SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
+
 	// Zero pointers to things we don't own
 	iPassphrase = NULL;
 	iKeyInfo = NULL;
@@ -1845,32 +1316,14 @@
 			}
 		break;
 		case EExportEncryptedKey:
-			{
-		#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			if(iUserIdentity->Id() == 0)
-				{
-				User::Leave(KErrAuthenticationFailure);
-				}
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			
+			{	
 			TPasswordManager::ExportPassword(iPassword, iStatus); 
 			iAction = EExportKey;
 			SetActive();
 			}	
 			break;
 		case EExportKey:
-			{
-		#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			if( iUserIdentity->Id() == AuthServer::KUnknownIdentity )
-				{
-				User::Leave(KErrAuthenticationFailure);
-				}
-			if(iUserIdentity->Id() != iKeyInfo->Identity())
-				{
-				User::Leave(KErrNotFound);
-				}
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			
+			{			
 			CompleteKeyExportL(iExportingKeyEncrypted);
 			}
 			break;				
@@ -1879,20 +1332,6 @@
 			{
 			CheckExportKeyPolicyL();
 			
-			#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-				if (iExportingKeyEncrypted)
-					{
-					iAction = EExportEncryptedKey;		
-					}
-				else
-					{
-					iAction = EExportKey;
-					}
-				
-				AsyncAuthenticateL(iKeyInfo->AuthExpression(), iKeyInfo->Freshness());
-				
-			#else
-				
 				if (iExportingKeyEncrypted)
 					{
 					iAction = EExportEncryptedKeyGetPassphrase;
@@ -1904,7 +1343,6 @@
 				SetActive();
 				TRequestStatus* status = &iStatus;
 				User::RequestComplete(status, KErrNone);		
-			#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			}
 			break;
 				
@@ -1915,101 +1353,6 @@
 			CompleteClientRequest(KErrNone);
 			break;
 		
-		#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		
-		case ECreateUserKey:
-			iIdentityId = iUserIdentity->Id();
-			if(iIdentityId == AuthServer::KUnknownIdentity)
-				{
-				User::Leave(KErrAuthenticationFailure);
-				}
-			iKeyInfo->SetIdentity(iIdentityId);
-			User::LeaveIfError(CheckCreateKeyPolicy()); 
-			DoCreateKeyL();
-			iAction = ECreateKeyFinal;
-			
-			break;
-					
-		case EImportUserKey:
-			iIdentityId = iUserIdentity->Id();
-			if( iIdentityId == AuthServer::KUnknownIdentity )
-				{
-				User::Leave(KErrAuthenticationFailure);
-				}
-			iKeyInfo->SetIdentity(iIdentityId);
-			User::LeaveIfError(CheckImportKeyPolicy(iImportingEncryptedKey ? ENewKeyImportEncrypted : ENewKeyImportPlaintext));
-			
-			iAction = EImportKey;
-			SetActive();
-			if (iImportingEncryptedKey)
-				{
-				TPasswordManager::ImportPassword(iPassword, iStatus);
-				}
-			else
-				{
-				TRequestStatus* status = &iStatus;
-				User::RequestComplete(status, KErrNone);
-				}			
-			break;
-		
-		case EDoSetAuthenticationPolicy:
-			{
-			CheckRangeL(iFreshness);
-			iKeyData = iKeyDataManager->Lookup(iObjectId);
-			if (!iKeyData)
-				{
-				User::Leave(KErrNotFound);
-				}
-				
-			iKeyInfo = iKeyDataManager->ReadKeyInfoLC(*iKeyData);
-			CleanupStack::Pop(iKeyInfo);
-			
-			// retrieve the authentication expression stored 
-			// against this identity and authenticate
-			// the user for changing the policy
-			iAction = EAuthenticate;
-			iNextAction = ESetAuthenticationPolicy;
-			SetActive();
-			TRequestStatus* status = &iStatus;
-			User::RequestComplete(status, KErrNone);
-			}
-			break;
-						
-		case ESetAuthenticationPolicy:
-			{
-			iIdentityId = iUserIdentity->Id();
-			WriteAuthenticationPolicyL();
-			CompleteClientRequest(KErrNone);
-			}
-			break;
-		
-		case ESetAuthPolicy:
-			{
-			//sets the default authentication policy to iKeyInfo
-			SetDefaultAuthPolicyL();
-			AsyncAuthenticateL(iKeyInfo->AuthExpression(), iKeyInfo->Freshness());
-			iAction = ECreateUserKey;
-			}
-			break;
-			
-		case EDoImportKey:
-			{
-			SetDefaultAuthPolicyL();
-			AsyncAuthenticateL(iKeyInfo->AuthExpression(), iKeyInfo->Freshness());
-			iAction = EImportUserKey;
-			}
-			break;
-
-		case EAuthenticate:
-			{
-			ASSERT(iKeyInfo);
-			CheckRangeL(iKeyInfo->Freshness());
-			AsyncAuthenticateL(iKeyInfo->AuthExpression(), iKeyInfo->Freshness());
-			iAction = iNextAction;
-			iNextAction = EIdle;
-			}
-			break;
-		#else
 
 		case EImportOpenPrivateStream:
 			ASSERT(iKeyInfo);
@@ -2041,7 +1384,6 @@
 			User::LeaveIfError(CheckCreateKeyPolicy()); 
 			GetKeystorePassphrase(ECreateKeyCreate);
 			break;
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			
 		default:
 			ASSERT(EFalse);
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Ckeystoreconduit.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/Ckeystoreconduit.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -29,11 +29,6 @@
 #include "cfskeystoreserver.h"
 #include <mctkeystoreuids.h>
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <authserver/identity.h>
-#include <e32debug.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 
 // CKeyStoreConduit ////////////////////////////////////////////////////////////
 
@@ -178,25 +173,7 @@
    	case ECancelDH:
 		CancelDH(aMessage, aSession);
 		break;	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
-	case ECreateUserKey:
-		CreateUserKeyL(aMessage);
-		break;
-	
-	case EImportUserKey:
-	case EImportEncryptedUserKey:
-		ImportUserKeyL(aMessage);
-		break;
-		
-	case ESetAuthenticationPolicy:
-		SetAuthenticationPolicyL(aMessage);
-		break;
-	
-	case EGetAuthenticationPolicy:
-		GetAuthenticationPolicyL(aMessage);
-		break;
-#else
 	case EChangePassphrase:
 		ChangePassphrase(aMessage);
 		break;
@@ -224,14 +201,7 @@
 	case ERelock:
 		Relock(aMessage);
 		break;	
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
-#ifdef SYMBIAN_AUTH_SERVER
-	case EUseNewKeyServer:
-			IsKeyServerNewL(aMessage);
-			break;
-#endif // SYMBIAN_AUTH_SERVER
-			
 	default:	//	Should not reach here
 		PanicClient(aMessage,EPanicIllegalFunction);
 		break;
@@ -342,151 +312,6 @@
 	iServer.CreateKey(*iKeyInfo, iStatus);
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
-void CKeyStoreConduit::IsKeyServerNewL(const RMessage2& aMessage)
-	{
-	TBool newKeyServer = EFalse;
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	newKeyServer = ETrue;
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-	TPckg<TBool> idNewKeyServer(newKeyServer);
-	aMessage.WriteL(1,idNewKeyServer);
-	aMessage.Complete(KErrNone);
-	}
-#endif // SYMBIAN_AUTH_SERVER
-
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-void CKeyStoreConduit::CreateUserKeyL(const RMessage2& aMessage)
-	{
-	ASSERT(!iKeyInfo);
-		
-	//	p[0] has the length of the buffer. Check our buffer is big
-	//	enough, to cope with requests for keys with very long labels.
-
-	TInt bufLength = User::LeaveIfError(aMessage.GetDesLength(1));
-	iServer.CheckRangeL(bufLength);
-	
-	TInt authExprLength = User::LeaveIfError(aMessage.GetDesLength(2));
-	iServer.CheckRangeL(authExprLength);
-	HBufC* authExprBuf = HBufC::NewMaxLC(authExprLength);
-
-	//	p[2] has the authentication expression
-	TPtr authExprPtr(authExprBuf->Des());
-	authExprPtr.FillZ();
-	
-	aMessage.ReadL(2, authExprPtr);
-	
-	TInt freshness = aMessage.Int3();
-	
-	// the iKeyInfo buffer should be read at the last as in 
-	// case of OOM this memory would not get freed.
-	HBufC8* keyInfoBuf = HBufC8::NewMaxLC(bufLength);
-
-	//	p[1] has the CKeyInfo structure required to create a key
-	//	Read it and convert from descriptor back to a CKeyInfo
-	TPtr8 thePtr(keyInfoBuf->Des());
-	thePtr.FillZ();
-
-	aMessage.ReadL(1, thePtr);
-	TokenDataMarshaller::ReadL(*keyInfoBuf, iKeyInfo);
-	CleanupStack::PopAndDestroy(keyInfoBuf);
-			
-	iCurrentRequest.Set(ECreateUserKey, aMessage);
-	
-	SetActive();
-	iServer.CreateUserKey(*iKeyInfo, *authExprBuf, freshness, iStatus);
-	CleanupStack::PopAndDestroy(authExprBuf);
-	}
-
-void CKeyStoreConduit::ImportUserKeyL(const RMessage2& aMessage)
-	{
-	ASSERT(!iImportKey);
-	ASSERT(!iKeyInfo);
-	
-	// p[0] has the descriptor containing the PKCS8 object (may or may not be encrypted)
-	TInt keyLen = User::LeaveIfError(aMessage.GetDesLength(0));
-	iServer.CheckRangeL(keyLen);
-	
-	HBufC8* importBuf = HBufC8::NewMaxLC(keyLen);
-	TPtr8 theKeyData(importBuf->Des());
-	theKeyData.FillZ();
-	aMessage.ReadL(0, theKeyData);
-
-		
-	TInt bufLen = User::LeaveIfError(aMessage.GetDesLength(1));
-	iServer.CheckRangeL(bufLen);
-	
-	// retrieve the authentication expression
-	TInt authExprLength = User::LeaveIfError(aMessage.GetDesLength(2));
-	iServer.CheckRangeL(authExprLength);
-	HBufC* authExprBuf = HBufC::NewMaxLC(authExprLength);
-
-	//	p[2] has the authentication expression
-	TPtr authExprPtr(authExprBuf->Des());
-	authExprPtr.FillZ();
-	
-	aMessage.ReadL(2, authExprPtr);
-	
-	// retrieve the freshness value
-	TInt freshness = aMessage.Int3();
-	
-	HBufC8* keyInfoBuf = HBufC8::NewMaxLC(bufLen);
-
-	// p[1] has the CKeyInfo structure required to create a key
-	// Read it and convert from descriptor back to a CKeyInfo
-	TPtr8 thePtr(keyInfoBuf->Des());
-	thePtr.FillZ();
-	aMessage.ReadL(1, thePtr);
-
-	TokenDataMarshaller::ReadL(*keyInfoBuf, iKeyInfo);
-	CleanupStack::PopAndDestroy(keyInfoBuf);
-
-	iImportKey = importBuf;
-	iCurrentRequest.Set(static_cast<TFSTokenMessages>(aMessage.Function()), aMessage);
-	
-	TBool isEncrypted = (aMessage.Function() == EImportEncryptedUserKey);
-	SetActive();
-	iServer.ImportUserKey(*iImportKey, *iKeyInfo, isEncrypted, *authExprBuf, freshness, iStatus);
-	CleanupStack::PopAndDestroy(authExprBuf);
-	CleanupStack::Pop(importBuf);
-}
-
-void CKeyStoreConduit::SetAuthenticationPolicyL(const RMessage2& aMessage)
-	{
-	TInt objectId = aMessage.Int0();
-	
-	TInt authExprLen = User::LeaveIfError(aMessage.GetDesLength(1));
-	iServer.CheckRangeL(authExprLen);
-	HBufC* authExpr = HBufC::NewMaxLC(authExprLen);
-	TPtr authExprPtr(authExpr->Des());
-	authExprPtr.FillZ();
-	aMessage.ReadL(1, authExprPtr);
-
-	TInt freshness = aMessage.Int2();
-	iCurrentRequest.Set(ESetAuthenticationPolicy, aMessage);
-		
-	SetActive();
-	// ownership of authExpr is with the caller
-	iServer.SetAuthenticationPolicy(objectId, authExpr, freshness, iStatus);
-	CleanupStack::Pop(authExpr);
-	}
-
-void CKeyStoreConduit::GetAuthenticationPolicyL(const RMessage2& aMessage)
-	{
-	TInt objectId = aMessage.Int0();
-	HBufC* authExpression = iServer.AuthExpressionL(objectId);
-	CleanupStack::PushL(authExpression);
-	TInt freshness = iServer.FreshnessL(objectId);
-	TPckg<TInt> pckgFreshness(freshness); 
-	aMessage.WriteL(1, *authExpression);
-	aMessage.WriteL(2, pckgFreshness);
-	CleanupStack::PopAndDestroy(authExpression);
-	aMessage.Complete(KErrNone);
-	}
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 void CKeyStoreConduit::CancelCreateKey(const RMessage2& aMessage)
 	{
@@ -910,8 +735,6 @@
 	aMessage.Complete(KErrNone);
 	}
 
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 void CKeyStoreConduit::ChangePassphrase(const RMessage2& aMessage)
 	{
 	iCurrentRequest.Set(EChangePassphrase, aMessage);
@@ -983,8 +806,6 @@
 	aMessage.Complete(KErrNone);
 	}
 
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 //
 //	CActive functions
 //
@@ -1020,14 +841,6 @@
 			iServer.CancelExportEncryptedKey();
 			break;
 			
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		case ECreateUserKey:
-			iServer.CancelCreateKey();
-			break;
-		case EImportUserKey:
-		case EImportEncryptedUserKey:
-			iServer.CancelImportKey();
-#else
 		case EChangePassphrase:
 			iServer.CancelChangePassphrase();
 			break;
@@ -1035,9 +848,6 @@
 		case EAuthOpen:
 			iServer.CancelAuthOpen();
 			break;
-
-			
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 			
 		default:
 			// Nothing to do
@@ -1060,13 +870,6 @@
 
 	switch (iCurrentRequest.OutstandingRequest())
 		{
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		case ESetAuthenticationPolicy:
-			break;
-		case ECreateUserKey:
-		case EImportUserKey:
-		case EImportEncryptedUserKey:
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER	
 		case ECreateKey:
 		case EImportKey:
 		case EImportEncryptedKey:
@@ -1144,13 +947,10 @@
 		case EDHAgree:
 			FinishDHAgreeL();
 			break;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 		case EChangePassphrase:
 		case EAuthOpen:
 			// Nothing to do
-			break;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-			
+			break;	
 		default:
 			__ASSERT_DEBUG(EFalse, PanicServer(EPanicInvalidRequest));
 			User::Leave(KErrNotSupported);
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -30,12 +30,6 @@
 #include <e32base.h>
 #include <mctkeystoreuids.h>
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <authserver/authtypes.h>
-#include <authserver/auth_srv_errs.h>
-#include <s32mem.h>
-#include "keystore_errs.h"
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 // COpenedKey //////////////////////////////////////////////////////////////////
 
@@ -76,9 +70,6 @@
 	iKeyData(aKeyData),
 	iKeyDataMan(aKeyDataMan),
 	iPassMan(aPassMan)
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	,iUserIdentity(NULL)
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	{
 	}
 
@@ -89,9 +80,6 @@
 	iKeyInfo = keyInfo;
 	CheckKeyL(aMessage);
 	iLabel = iKeyInfo->Label().AllocL();
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	User::LeaveIfError(iAuthClient.Connect());
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	CActiveScheduler::Add(this);
 	}
 
@@ -100,11 +88,6 @@
 	Cancel();
 	delete iLabel;
 	delete iKeyInfo;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	iAuthClient.Close();
-	delete iExpression;
-	delete iUserIdentity;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 	}
 
@@ -154,7 +137,6 @@
 		
 	}
 
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 void COpenedKey::GetPassphrase(TRequestStatus& aStatus)
 	{
 	ASSERT(iState == EIdle);
@@ -168,16 +150,7 @@
 	iState = EGetPassphrase;
 	SetActive();
 	}
-#else
-void COpenedKey::AuthenticateL()
-	{	
-	iExpression = iAuthClient.CreateAuthExpressionL(iKeyInfo->AuthExpression());
-	TUid uid = TUid::Uid(0);
-	iAuthClient.AuthenticateL(*iExpression,iKeyInfo->Freshness(), EFalse, uid, EFalse, KNullDesC, iUserIdentity, iStatus);
-	iState = EAuthenticate;
-	SetActive();
-	}
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 
 void COpenedKey::RunL()
 	{
@@ -185,41 +158,6 @@
 
 	switch (iState)
 		{
-		#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		case EDoAuthenticate:
-			AuthenticateL();
-			break;
-			
-		case EAuthenticate:
-			if(iUserIdentity->Id() == AuthServer::KUnknownIdentity)
-				{
-				User::Leave(KErrAuthenticationFailure);
-				}
-					
-			if (!iKeyRead)
-				{
-				RStoreReadStream stream;
-				iKeyDataMan.OpenPrivateDataStreamLC(iKeyData, stream);
-				TPtrC8 key = iUserIdentity->Key().KeyData();
-				HBufC8* plaintext = DecryptFromStreamL(stream, key);
-				CleanupStack::PushL(plaintext);
-				TAny* ptr = const_cast<TAny*>(static_cast<const TAny*>(plaintext->Des().PtrZ()));
-							
-				RMemReadStream decryptedStream(ptr, plaintext->Length());
-				decryptedStream.PushL();
-				ReadPrivateKeyL(decryptedStream);
-				CleanupStack::PopAndDestroy(3,&stream); // plaintext, decryptedStream
-				iKeyRead = ETrue;
-				}
-			
-			delete iUserIdentity;
-			iUserIdentity = NULL;
-			delete iExpression;
-			iExpression = NULL;
-			PerformOperationL();
-			Complete(KErrNone);
-			break;
-		#else
 		case EGetPassphrase:
 			ASSERT(iPassphrase);
 			if (!iKeyRead)
@@ -233,7 +171,6 @@
 			PerformOperationL();
 			Complete(KErrNone);
 			break;	
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 		default:
 			ASSERT(EFalse);
 		}
@@ -263,12 +200,7 @@
 
 void COpenedKey::Cleanup()
 	{
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		delete iUserIdentity;
-		iUserIdentity = NULL;
-		delete iExpression;
-		iExpression = NULL;
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 	}
 
 // CRSARepudiableSigner ////////////////////////////////////////////////////////
@@ -306,16 +238,7 @@
 	ASSERT(iSignaturePtr == NULL);
 	iPlaintext.Set(aPlaintext);
 	iSignaturePtr = &aSignature;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	GetPassphrase(aStatus);
-#else
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	iState = EDoAuthenticate;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CRSARepudiableSigner::ReadPrivateKeyL(RReadStream& aStream)
@@ -336,9 +259,6 @@
 
 void CRSARepudiableSigner::Cleanup()
 	{
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	COpenedKey::Cleanup();
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	iPlaintext.Set(NULL, 0);
 	iSignaturePtr = NULL;
 	}
@@ -378,16 +298,7 @@
 	ASSERT(iSignaturePtr == NULL);
 	iPlaintext.Set(aPlaintext);
 	iSignaturePtr = &aSignature;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	GetPassphrase(aStatus);
-#else
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	iState = EDoAuthenticate;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CDSARepudiableSigner::ReadPrivateKeyL(RReadStream& aStream)
@@ -408,10 +319,6 @@
 
 void CDSARepudiableSigner::Cleanup()
 	{
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	COpenedKey::Cleanup();
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 	iPlaintext.Set(NULL, 0);
 	iSignaturePtr = NULL;
 	}
@@ -451,16 +358,7 @@
 	ASSERT(iPlaintextPtr == NULL);
 	iCiphertext.Set(aCiphertext);
 	iPlaintextPtr = &aPlaintext;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	GetPassphrase(aStatus);
-#else
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	iState = EDoAuthenticate;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CFSRSADecryptor::ReadPrivateKeyL(RReadStream& aStream)
@@ -485,10 +383,6 @@
 
 void CFSRSADecryptor::Cleanup()
 	{
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	COpenedKey::Cleanup();
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 	iCiphertext.Set(NULL, 0);
 	iPlaintextPtr = NULL;
 	}
@@ -527,16 +421,7 @@
 	iPKParams = &aParameters;
 	iPKPublicKeyPtr = &aPublicKey;
 	iDHState = EPublicKey;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	GetPassphrase(aStatus);
-#else
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	iState = EDoAuthenticate;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CDHAgreement::Agree(CDHPublicKey& aY, HBufC8*& aAgreedKey, TRequestStatus& aStatus)
@@ -546,16 +431,7 @@
 	iAKPublicKey = &aY;
 	iAKAgreedKeyPtr = &aAgreedKey;
 	iDHState = EAgree;
-#ifndef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	GetPassphrase(aStatus);
-#else
-	aStatus = KRequestPending;
-	iClientStatus = &aStatus;
-	iState = EDoAuthenticate;
-	SetActive();
-	TRequestStatus* status = &iStatus;
-	User::RequestComplete(status, KErrNone);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	}
 
 void CDHAgreement::ReadPrivateKeyL(RReadStream& aStream)
@@ -620,10 +496,6 @@
 
 void CDHAgreement::Cleanup()
 	{
-	#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	COpenedKey::Cleanup();
-	#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 	iPKParams = NULL;
 	iPKPublicKeyPtr = NULL;
 	iAKPublicKey = NULL;
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/OpenedKeys.h	Wed Sep 01 12:40:57 2010 +0100
@@ -29,10 +29,6 @@
 #include "keystorepassphrase.h"
 #include "fsdatatypes.h"
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <authserver/authclient.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
 class CRSAPrivateKey;
 class CRSASignature;
 class CDSAPrivateKey;
@@ -48,11 +44,7 @@
 	enum TState
 		{
 		EIdle,
-		EGetPassphrase,
-		#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		EDoAuthenticate,
-		EAuthenticate,
-		#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+		EGetPassphrase
 		};
 	
 public:
@@ -88,10 +80,6 @@
 	/// Clean up, called after normal end error completion
 	virtual void Cleanup() = 0;
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-protected:
-	void AuthenticateL();
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 private:
 	virtual void RunL();
@@ -111,11 +99,6 @@
 	
 	CPassphrase*		 iPassphrase;
 	CKeyInfo* 			iKeyInfo;
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	AuthServer::CIdentity* iUserIdentity;
-	AuthServer::RAuthClient iAuthClient;
-	AuthServer::CAuthExpression* iExpression;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 protected:
 	TState				 iState;
 	TRequestStatus*		 iClientStatus;
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/cfskeystoreserver.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/cfskeystoreserver.h	Wed Sep 01 12:40:57 2010 +0100
@@ -47,13 +47,6 @@
 class CKeyStoreSession;
 class CKeyStoreConduit;
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-#include <authserver/authclient.h>
-
-class CKeyStoreCenrep;
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 /**	Server side implementation of keystore interfaces as an active object. */
 class CFSKeyStoreServer : public CActive
@@ -68,15 +61,6 @@
 		EExportKey,
 		EExportEncryptedKey,
 		EDoExportKey,
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-		ECreateUserKey,
-		EImportUserKey,
-		ESetAuthenticationPolicy,
-		ESetAuthPolicy,
-		EDoImportKey,
-		EDoSetAuthenticationPolicy,
-		EAuthenticate,
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 		EImportOpenPrivateStream,
 		EExportKeyGetPassphrase,
 		EExportEncryptedKeyGetPassphrase,
@@ -125,30 +109,7 @@
 	void SetManagementPolicyL(TInt aObjectId, const TSecurityPolicy& aPolicy);
 	void CheckRangeL(TInt aFreshness);
 	
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	
-	void CreateUserKey(	CKeyInfo& aReturnedKey,
-						const TDesC& aAuthString,
-						TInt aFreshness,
-						TRequestStatus& aStatus);
 
-	void ImportUserKey(	const TDesC8& aKey, CKeyInfo& aReturnedKey, 
-						TBool aIsEncrypted,
-						const TDesC& aAuthString,
-						TInt aFreshness,
-						TRequestStatus& aStatus);
-	
-	void SetAuthenticationPolicy(	
-								TInt aObjectId, 
-								HBufC* aAuthString,
-								TInt aFreshness, 
-								TRequestStatus& aStatus);
-
-	HBufC* AuthExpressionL( TInt aObjectId);
-	TInt FreshnessL(TInt aObjectId);
-	CKeyInfo* KeyDetailsLC(TInt aObjectId);
-
-#else
 	// For MCTAuthenticationObject
 	void ChangePassphrase(TRequestStatus& aStatus);
 	void CancelChangePassphrase();
@@ -159,7 +120,7 @@
 	TInt GetTimeRemainingL();
 	void SetTimeoutL(TInt aTimeout);
 	TInt GetTimeout();
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 	
 private:
 	CFSKeyStoreServer();
@@ -189,21 +150,10 @@
 	void CheckExportKeyPolicyL();
 	void CompleteClientRequest(TInt aCompletionCode);
 		
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-	template <class T> inline void EncryptAndStoreL(const T& aKey, RStoreWriteStream& aStream );
-	void StoreKeyL(const TDesC8& aKeyData, RStoreWriteStream& aStream);
-	
-	AuthServer::CIdentity* SyncAuthenticateLC(const TDesC& aAuthExpression, TInt aFreshness);
-	void AsyncAuthenticateL(const TDesC& aAuthString,
-							TInt aFreshness);
-	void SetDefaultAuthPolicyL();
-	void WriteAuthenticationPolicyL();
-#else	
 	void GetKeystorePassphrase(TCurrentAction aNextState);
 	void OpenPrivateStream();
 	void DoChangePassphrase();
 	void RemoveCachedPassphrases(TStreamId aStreamId);
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 private:
 	void PKCS8ToKeyL(CDecPKCS8Data* aPKCS8Data);
@@ -236,16 +186,6 @@
 	const CFileKeyData* iKeyData;
 	CPassphrase* iPassphrase;
 	
-#ifdef 	SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-private:
-	AuthServer::RAuthClient iAuthClient;
-	AuthServer::CIdentity* iUserIdentity;
-	AuthServer::TIdentityId iIdentityId;
-	CKeyStoreCenrep* iKeyStoreCenrep;
-	HBufC* iAuthString;
-	TInt iFreshness;
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 	
 };
 
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/cfskeystoreserver.inl	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,58 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Implements method to encrypt the private key.  
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
-
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-#ifndef CFSKEYSTORESERVER_INL
-#define CFSKEYSTORESERVER_INL
-
-// the size allocated to retrieve the private key.
-const TInt KSize = 2048;
-
-#include "cfskeystoreserver.h"
-
-template <class T> inline void CFSKeyStoreServer::EncryptAndStoreL(const T& aKey, RStoreWriteStream& aStream )
-		{
-		RMemWriteStream writeStream;
-		CleanupClosePushL(writeStream);
-		// create the buffer for storing the encrypted private key
-		HBufC8* privateKey = HBufC8::NewLC(KSize);
-		TPtr8 keyPtr(privateKey->Des());
-		keyPtr.FillZ(KSize);
-		
-		// a pointer to the data is required to pass it to the stream
-		TAny* ptr = const_cast<TAny*>(static_cast<const TAny*>(privateKey->Des().Ptr()));
-		writeStream.Open( ptr,KSize);
-		writeStream << aKey;
-		writeStream.CommitL();
-		TStreamPos pos = writeStream.Sink()->TellL(MStreamBuf::EWrite);
-		keyPtr.SetLength(pos.Offset());
-		StoreKeyL(keyPtr, aStream);
-		CleanupStack::PopAndDestroy(2, &writeStream); // privateKey
-
-		}
-
-#endif // CFSKEYSTORESERVER_INL
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -21,7 +21,7 @@
 
 /**
  @file 
- @released
+ @prototype
  @internalComponent 
 */
 
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystorecenrepconfig.h	Wed Sep 01 12:40:57 2010 +0100
@@ -20,7 +20,7 @@
 
 /**
  @file 
- @released
+ @prototype
  @internalComponent 
 */
 
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -19,11 +19,6 @@
 #include "keystreamutils.h"
 #include "asymmetrickeys.h"
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <s32mem.h>
-#include <pbe.h>
-#include <pbedata.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
 
 #include <e32debug.h>
 
@@ -141,40 +136,5 @@
 	CleanupStack::Pop(4, &P);
 	}
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
-/**
- * The input stream contains data in encrypted form. This method 
- * supports pbe. In this case the key is the password. It 
- * retrieves the plaintext data by decrypting the data using the 
- * supplied key.
- */
-
-HBufC8* DecryptFromStreamL( RReadStream& aInStream, TPtrC8& aKey )
-	{
-	
-	CPBEncryptionData* data = CPBEncryptionData::NewL(aInStream);
-	CleanupStack::PushL(data);
 
-	TInt32 encKeyLength = aInStream.ReadInt32L();
-	HBufC8* encKey = HBufC8::NewMaxLC(encKeyLength);
-	TPtr8 encKeyPtr(encKey->Des());
-	encKeyPtr.FillZ();
-	aInStream.ReadL(encKeyPtr,encKeyLength);
-	
-	CPBEncryptElement* encryption = CPBEncryptElement::NewLC(*data,aKey);
 
-	CPBDecryptor* decryptor = encryption->NewDecryptLC();
-	HBufC8* plaintext = HBufC8::NewLC(decryptor->MaxOutputLength(encKeyPtr.Length())); 
-	TPtr8 plaintextPtr = plaintext->Des();	
-	plaintextPtr.FillZ();
-	decryptor->ProcessFinalL(encKeyPtr, plaintextPtr);
-
-	CleanupStack::Pop(plaintext);
-	CleanupStack::PopAndDestroy(4,data); // encKey, encryption, decryptor 
-	
-	return plaintext;
-	}
-
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-
--- a/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/source/keystore/Server/keystreamutils.h	Wed Sep 01 12:40:57 2010 +0100
@@ -26,9 +26,7 @@
 #define __KEYSTREAMUTILS_H__
 
 #include <s32strm.h>
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-#include <s32std.h>
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 #include "fsmarshaller.h"
 
 class CRSAPublicKey;
@@ -52,7 +50,5 @@
 void CreateL(RReadStream& aStream, CDSAPublicKey*& aOut);
 void CreateL(RReadStream& aStream, CDSAPrivateKey*& aOut);
 
-#ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER
-HBufC8* DecryptFromStreamL( RReadStream& aInStream, TPtrC8& aKey );
-#endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER
+
 #endif
--- a/cryptoservices/filebasedcertificateandkeystores/test/bwins/tcryptotokenhaiu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-EXPORTS
-	?NewLC@CCryptoTokenHai@@SAPAV1@PAVMCTToken@@@Z @ 1 NONAME ; class CCryptoTokenHai * CCryptoTokenHai::NewLC(class MCTToken *)
-	?KeyPresent@CCryptoTokenHai@@QAEHH@Z @ 2 NONAME ; int CCryptoTokenHai::KeyPresent(int)
-	?ListL@CCryptoTokenHai@@QBEXABUTCTKeyAttributeFilter@@AAV?$RPointerArray@VCCTKeyInfo@@@@@Z @ 3 NONAME ; void CCryptoTokenHai::ListL(struct TCTKeyAttributeFilter const &, class RPointerArray<class CCTKeyInfo> &) const
-	?ExportPublicKeyL@CCryptoTokenHai@@QAEXHAAPAVHBufC8@@@Z @ 4 NONAME ; void CCryptoTokenHai::ExportPublicKeyL(int, class HBufC8 * &)
-	?DecryptL@CCryptoTokenHai@@QAEXHABVTDesC8@@AAPAVHBufC8@@@Z @ 5 NONAME ; void CCryptoTokenHai::DecryptL(int, class TDesC8 const &, class HBufC8 * &)
-	?ExportPrivateKeyL@CCryptoTokenHai@@QAEXHAAPAVHBufC8@@@Z @ 6 NONAME ; void CCryptoTokenHai::ExportPrivateKeyL(int, class HBufC8 * &)
-	?ImportKeyL@CCryptoTokenHai@@QAEXABVTDesC16@@ABVTDesC8@@1@Z @ 7 NONAME ; void CCryptoTokenHai::ImportKeyL(class TDesC16 const &, class TDesC8 const &, class TDesC8 const &)
-	?SignL@CCryptoTokenHai@@QAEXHABVTDesC8@@AAPAVHBufC8@@@Z @ 8 NONAME ; void CCryptoTokenHai::SignL(int, class TDesC8 const &, class HBufC8 * &)
-	?NewL@CCryptoTokenHai@@SAPAV1@PAVMCTToken@@@Z @ 9 NONAME ; class CCryptoTokenHai * CCryptoTokenHai::NewL(class MCTToken *)
-	??1CCryptoTokenHai@@UAE@XZ @ 10 NONAME ; CCryptoTokenHai::~CCryptoTokenHai(void)
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/eabi/tcryptotokenhaiu.def	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-EXPORTS
-	_ZN15CCryptoTokenHai10ImportKeyLERK7TDesC16RK6TDesC8S5_ @ 1 NONAME
-	_ZN15CCryptoTokenHai10KeyPresentEi @ 2 NONAME
-	_ZN15CCryptoTokenHai16ExportPublicKeyLEiRP6HBufC8 @ 3 NONAME
-	_ZN15CCryptoTokenHai17ExportPrivateKeyLEiRP6HBufC8 @ 4 NONAME
-	_ZN15CCryptoTokenHai4NewLEP8MCTToken @ 5 NONAME
-	_ZN15CCryptoTokenHai5NewLCEP8MCTToken @ 6 NONAME
-	_ZN15CCryptoTokenHai5SignLEiRK6TDesC8RP6HBufC8 @ 7 NONAME
-	_ZN15CCryptoTokenHai8DecryptLEiRK6TDesC8RP6HBufC8 @ 8 NONAME
-	_ZN15CCryptoTokenHaiD0Ev @ 9 NONAME
-	_ZN15CCryptoTokenHaiD1Ev @ 10 NONAME
-	_ZN15CCryptoTokenHaiD2Ev @ 11 NONAME
-	_ZNK15CCryptoTokenHai5ListLERK21TCTKeyAttributeFilterR13RPointerArrayI10CCTKeyInfoE @ 12 NONAME
-	_ZTI11CKeyDetails @ 13 NONAME
-	_ZTV11CKeyDetails @ 14 NONAME
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -20,10 +20,6 @@
 /**
  @file
 */
-//RTEST
-#ifdef SYMBIAN_AUTH_SERVER
-MACRO KEYTOOL=1
-#endif // SYMBIAN_AUTH_SERVER
 
 TARGET		keytool.exe
 TARGETTYPE	exe
@@ -47,17 +43,6 @@
 SOURCE 		keytool_liststores.cpp
 SOURCE 		keytoolfileview.cpp  
 SOURCE 		keytool_setpolicy.cpp
-#ifdef SYMBIAN_AUTH_SERVER
-SOURCE		keytool_migratestore.cpp
-SOURCE		../../source/keystore/server/ckeydatamanager.cpp
-SOURCE		../../source/shared/ckeyinfo.cpp
-SOURCE		../../source/keystore/server/keystorecenrepconfig.cpp
-SOURCE		../../source/keystore/server/keystorepassphrase.cpp
-SOURCE		../../source/generic/server/fstokenutil.cpp
-SOURCE		../../source/keystore/server/keystreamutils.cpp
-SOURCE		../../source/generic/server/fsdialog.cpp
-SOURCE		../../source/generic/server/fsresources.cpp
-#endif // SYMBIAN_AUTH_SERVER
 
 START RESOURCE	keytool.rss
 HEADER
@@ -66,30 +51,13 @@
 
 USERINCLUDE	. 
 USERINCLUDE	../certtool
-#ifdef SYMBIAN_AUTH_SERVER
-USERINCLUDE	../../Inc
-USERINCLUDE	../../source/generic/common
-USERINCLUDE	../../source/generic/server
-USERINCLUDE	../../source/keystore/server
-#endif // SYMBIAN_AUTH_SERVER
+
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
 
-#ifdef SYMBIAN_AUTH_SERVER
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ct)
-#endif // SYMBIAN_AUTH_SERVER
-
 LIBRARY	euser.lib efsrv.lib 
 LIBRARY certstore.lib crypto.lib 
 LIBRARY ctframework.lib 
 LIBRARY bafl.lib charconv.lib
 LIBRARY estor.lib
-#ifdef SYMBIAN_AUTH_SERVER
-LIBRARY centralrepository.lib
-LIBRARY pbe.lib
-LIBRARY authclient.lib 
-LIBRARY	authcommon.lib
-LIBRARY fstokenshared.lib
-LIBRARY cryptography.lib
-#endif // SYMBIAN_AUTH_SERVER
 
 SMPSAFE
--- a/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rls	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rls	Wed Sep 01 12:40:57 2010 +0100
@@ -23,9 +23,7 @@
 // Usage
 rls_string STRING_r_keytool_usage "Usage: keytool \t[{-list -l} {-liststores -ls} {-import -i} {-remove -r} "
 rls_string STRING_r_keytool_usage2 "\t\t {-page -p } {-help -h} {-setuser -s} {-setallusers -a} {-removeuser -ru} {-setmanager -m}] {KeyLabel}"
-#ifdef SYMBIAN_AUTH_SERVER
-rls_string STRING_r_keytool_usage5 "\t\t or [ {-migratestore} old key file name ]"
-#endif // SYMBIAN_AUTH_SERVER
+
 rls_string STRING_r_keytool_usage3 "Type keytool -h {CommandName} for details on a particular command."
 
 rls_string STRING_r_keytool_usage4 "Type keytool -h noninteractive for details on how to run the commands in noninteractive mode."
@@ -61,20 +59,6 @@
 rls_string STRING_r_keytool_usage_keyaccess "-access  Displays tool usage"
 rls_string STRING_r_keytool_usage_keyaccesses "Possible access restrictions are: Extractable, Sensitive."
 
-#ifdef SYMBIAN_AUTH_SERVER
-
-rls_string STRING_r_keytool_usage_migrate 	"-migrate OldKeyFile Passphrase [-new NewKeyFile] [-expr AuthExpression] [-freshness Freshness]."
-rls_string STRING_r_keytool_usage_migrate1 	"Migrates the old key file to the new format. If new key file name"
-rls_string STRING_r_keytool_usage_migrate2 	"is provided then it is saved using that name otherwise it is saved"
-rls_string STRING_r_keytool_usage_migrate3 	"as newkeys.dat in the system drive. Every key store in old implementation was encrypted" 
-rls_string STRING_r_keytool_usage_migrate4 	"with a passphrase, this should be supplied for successful porting."
-rls_string STRING_r_keytool_usage_migrate5 	"If authexpression is not provided it uses the system wide default plugin. "
-rls_string STRING_r_keytool_usage_migrate6 	"If freshness is not provided then it uses 0 as the default freshness which" 
-rls_string STRING_r_keytool_usage_migrate7 	"means always authenticate the user. The supplied auth expression and freshness "
-rls_string STRING_r_keytool_usage_migrate8 	"would be used to determine whether to use the current authenticated identity" 
-rls_string STRING_r_keytool_usage_migrate9 	"if available or to authenticate the user again."
-
-#endif // SYMBIAN_AUTH_SERVER
 
 // Errors
 rls_string STRING_r_keytool_err_command "Invalid Command."
@@ -119,8 +103,3 @@
 rls_string STRING_r_keytool_err_nousers "No users specified."
 rls_string STRING_r_keytool_err_nokey "No key specified."
 
-#ifdef SYMBIAN_AUTH_SERVER
-rls_string STRING_r_keytool_err_migrationfail "Key Migration Failed..."
-rls_string STRING_r_keytool_usage_oldkey_absent "Key file to be migrated not provided."
-rls_string STRING_r_keytool_usage_passphrase_absent "Passphrase absent."
-#endif // SYMBIAN_AUTH_SERVER
--- a/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rss	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool.rss	Wed Sep 01 12:40:57 2010 +0100
@@ -71,12 +71,6 @@
 	buf = STRING_r_keytool_usage4;
 	}	
 
-#ifdef SYMBIAN_AUTH_SERVER
-RESOURCE TBUF r_keytool_usage5
-	{
-	buf = STRING_r_keytool_usage5;
-	}	
-#endif // SYMBIAN_AUTH_SERVER
 RESOURCE TBUF r_keytool_usage_list
 	{
 	buf = STRING_r_keytool_usage_list;
@@ -192,68 +186,6 @@
 	buf = STRING_r_keytool_usage_noninteractive1;
 	}
 
-#ifdef SYMBIAN_AUTH_SERVER
-RESOURCE TBUF r_keytool_usage_migrate
-	{
-	buf = STRING_r_keytool_usage_migrate;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate1
-	{
-	buf = STRING_r_keytool_usage_migrate1;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate2
-	{
-	buf = STRING_r_keytool_usage_migrate2;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate3
-	{
-	buf = STRING_r_keytool_usage_migrate3;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate4
-	{
-	buf = STRING_r_keytool_usage_migrate4;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate5
-	{
-	buf = STRING_r_keytool_usage_migrate5;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate6
-	{
-	buf = STRING_r_keytool_usage_migrate6;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate7
-	{
-	buf = STRING_r_keytool_usage_migrate7;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate8
-	{
-	buf = STRING_r_keytool_usage_migrate8;
-	}
-
-RESOURCE TBUF r_keytool_usage_migrate9
-	{
-	buf = STRING_r_keytool_usage_migrate9;
-	}
-
-RESOURCE TBUF r_keytool_usage_oldkey_absent
-	{
-	buf = STRING_r_keytool_usage_oldkey_absent;
-	}
-
-RESOURCE TBUF r_keytool_usage_passphrase_absent
-	{
-	buf = STRING_r_keytool_usage_passphrase_absent;
-	}
-
-#endif // SYMBIAN_AUTH_SERVER
 // Keytool error strings
 
 RESOURCE TBUF r_keytool_err_deletefail
@@ -431,12 +363,6 @@
 	buf = STRING_r_keytool_err_remove;
 	}
 	
-#ifdef SYMBIAN_AUTH_SERVER
-RESOURCE TBUF r_keytool_err_migrationfail
-	{
-	buf = STRING_r_keytool_err_migrationfail;
-	}
-#endif // SYMBIAN_AUTH_SERVER
 	
 //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
 
--- a/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool_usage.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/keytool/keytool_usage.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -73,9 +73,6 @@
 		// Display general usage!
         iController->DisplayLocalisedMsgL(R_KEYTOOL_USAGE);
         iController->DisplayLocalisedMsgL(R_KEYTOOL_USAGE2);
-#ifdef SYMBIAN_AUTH_SERVER
-        iController->DisplayLocalisedMsgL(R_KEYTOOL_USAGE5);
-#endif // SYMBIAN_AUTH_SERVER
         iController->DisplayLocalisedMsgL(R_KEYTOOL_USAGE3);		        
         iController->DisplayLocalisedMsgL(R_KEYTOOL_USAGE4);
         return;
--- a/cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,619 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This class implements the reference Crypto Token Hardware Abstraction 
-* Interface (HAI). It is just intended to show how operations using 
-* device keys can be performed using crypto token framework. In the 
-* real world scenario, this HAI should be replaced by device drivers 
-* by the licensees. In such a case, all the operations performed by 
-* the replacing class would be performed in Kernel Space.
-*
-*/
-
-
-#include "tcryptotokenhai.h"
-#include "tkeydetails.h"
-#include "cryptosignatureapi.h"
-#include "keys.h"
-
-#include <cryptospi/cryptoparams.h>
-#include <cryptospi/cryptospidef.h>
-
-EXPORT_C CCryptoTokenHai* CCryptoTokenHai::NewLC(MCTToken* aToken)
-	{
-	CCryptoTokenHai* instance = new(ELeave) CCryptoTokenHai(*aToken);
-	CleanupStack::PushL(instance);
-	instance->ConstructL();
-	return instance;
-	}
-
-EXPORT_C CCryptoTokenHai* CCryptoTokenHai::NewL(MCTToken* aToken)
-	{
-	CCryptoTokenHai* instance = CCryptoTokenHai::NewLC(aToken);
-	CleanupStack::Pop(instance);
-	return instance;
-	}
-
-void CCryptoTokenHai::ConstructL()
-	{
-	User::LeaveIfError(iFs.Connect());
-	OpenStoreL();
-	}
-
-CCryptoTokenHai::CCryptoTokenHai(MCTToken& aToken)
-	:iToken(aToken)
-	{}
-
-EXPORT_C CCryptoTokenHai::~CCryptoTokenHai()
-	{
-	if(iFileStore)
-        {
-        CompactStore();
-        delete iFileStore;
-        }
-	
-	iFs.Close();
-	iKeys.ResetAndDestroy();
-    iKeys.Close();
-	}
-
-/**
- * Performs the decryption operation.
- * 
- * This API gets called when the decryption is supposed to be done in  
- * the hardware.
- * 
- * @param aHandle The key handle
- * @param aCiphertext The cipher text. This is not being used presently 
- * due to decryption logic used in this function.
- * @param aPlainText Output param. The decrypted plain text. Ownership 
- * of the pointer lies with the caller.
- * 
- * @leave This function can leave with following error codes:-
- * - KErrNotFound - If the key corresponding to given handle is not 
- * found.
- * - Any other error code returned by AllocL().
- *
- * @note This function does not actually implement ECC decryption. It 
- * just intends to show that the key is with this class and it can 
- * do actual ECC decryption here. This function just returns the 
- * private key as decrypted text. The caller can verify the decryption 
- * by ensuring that test case has same public and private keys and then 
- * comparing the decrypted text with public key. 
- */
-EXPORT_C void CCryptoTokenHai::DecryptL(	TInt aHandle,	
-											const TDesC8& /* aCiphertext */,
-											HBufC8*& aPlainText )
-	{
-    TInt keyIndex = KeyPresent(aHandle);
-    if(keyIndex == KErrNotFound)
-        {
-        User::Leave(KErrNotFound);
-        }
-    
-    ExportPrivateKeyL(aHandle, aPlainText);
-	}
-
-/**
- * Performs the signing operation.
- * 
- * This API gets called when the signing is supposed to be done inside 
- * the hardware.
- * 
- * @param aHandle The key handle
- * @param aPlaintext The text which has to be signed. This is not being 
- * used due to signing logic used in this function.
- * @param aSignature Output param. The signature in HBufC8 format.  
- * Ownership of the pointer lies with the caller. This should be 
- * converted to CCryptoParams by the crypto token reference plugin. 
- * 
- * @leave This function can leave with following error codes:-
- * - KErrNotFound - If the key corresponding to given handle is not 
- * found.
- * - Any other error code returned by AllocL().
- * 
- * @note This function does not actually implement ECC signing. It 
- * just intends to show that the key is with this class and it can 
- * do actual ECC signing here. Currently this function just returns 
- * the private key as output signature. The caller can verify the 
- * signature by ensuring that test case has same public and private 
- * keys and then comparing the signature with public key.
- */
-EXPORT_C void CCryptoTokenHai::SignL( 	TInt aHandle,
-										const TDesC8& /* aPlaintext */,
-										HBufC8*& aSignature )
-	{
-	TInt keyIndex = KeyPresent(aHandle);
-	if(keyIndex == KErrNotFound)
-	    {
-	    User::Leave(KErrNotFound);
-	    }
-	
-	ExportPrivateKeyL(aHandle, aSignature);
-	}
-
-/**
- * Returns the index of the key whose handle is given.
- * 
- * @param aHandle Handle of the key. This is used to search the key.
- * 
- * @return index of the key if search is successful, KErrNotFound 
- * otherwise.
- */
-EXPORT_C TInt CCryptoTokenHai::KeyPresent( TInt aHandle )
-	{
-	int keysCount = iKeys.Count();
-	for(TInt i=0; i < keysCount; ++i)
-		{
-		if(iKeys[i]->Handle() == aHandle)
-			{
-			return i;
-			}
-		}
-	return KErrNotFound;
-	}
-
-/**
- * Extracts the private key.
- * 
- * @param aHandle Handle of the private key to be extracted.
- * @param aKey Output Parameter. Stores the private key on success. 
- * Ownership of pointer is with the caller.
- * 
- * @leave Following leave codes possible:-
- * - Any leave code returned by AllocL().
- * - KErrNotFound - If key corresponding to the given handle is not 
- * found.
- * 
- * @note In the actual implementation, licensees should ensure that 
- * this function can be called only in Kernel space. In the reference 
- * implementation, this function gets called only by CCryptoSpiHai, 
- * which is assumed to operate in kernel space. This would ensure that 
- * the private key always stays inside the hardware.
- */
-EXPORT_C void CCryptoTokenHai::ExportPrivateKeyL( TInt aHandle, HBufC8*& aKey )
-	{
-	int keysCount = iKeys.Count();
-	for(int i = 0; i < keysCount; ++i)
-		{
-		if(iKeys[i]->Handle() == aHandle)
-			{
-			aKey = iKeys[i]->PrivateKey()->AllocL();
-			return;
-			}
-		}
-	User::Leave(KErrNotFound);
-	}
-
-/**
- * Extracts the public key.
- * 
- * @param aHandle Handle of the public key to be extracted.
- * @param aKey Output Parameter. Stores the public key on success.
- * Ownership of pointer is with the caller.
- * 
- * @leave Following leave codes possible:-
- * - Any leave code returned by AllocL().
- * - KErrNotFound - If key corresponding to the given handle is not 
- * found.
- */
-EXPORT_C void CCryptoTokenHai::ExportPublicKeyL( TInt aHandle, HBufC8*& aKey )
-    {
-    int keysCount = iKeys.Count();
-    for(int i = 0; i < keysCount; ++i)
-        {
-        if(iKeys[i]->Handle() == aHandle)
-            {
-            aKey = iKeys[i]->PublicKey()->AllocL();
-            return;
-            }
-        }
-    User::Leave(KErrNotFound);
-    }
-
-/**
- * Stores the key with given details.
- * 
- * @param aLabel Label of the key.
- * @param aPrivateKey Private component of the key.
- * @param aPublicKey Public component of the key.
- * 
- * @leave Following leave codes possible:-
- * - KErrAlreadyExists If there is already a key with the inputted
- * label.
- * - Any other leave code returned by NewL() or AppendL().
- *  
- * @note In the present reference implementation this function is not 
- * being used, since device keys are pre-provisioned by the licensees. 
- * Hence licensees may decide not to implement this function in their 
- * real implementation. 
- */
-EXPORT_C void CCryptoTokenHai::ImportKeyL(const TDesC& aLabel, 
-        const TDesC8& aPrivateKey, const TDesC8& aPublicKey)
-	{
-	int keysCount = iKeys.Count();
-	for(int i = 0; i < keysCount; ++i)
-		{
-		if(iKeys[i]->Label() == aLabel)
-			{
-			User::Leave(KErrAlreadyExists);
-			}
-		}
-	CKeyDetails* keyDetails = CKeyDetails::NewL(keysCount+1,aLabel,aPrivateKey,aPublicKey);
-	iKeys.AppendL(keyDetails);
-	}
-
-/**
- * Populates the string containing full RAM path of file containing 
- * keys.
- */
-void CCryptoTokenHai::MakePrivateFilenameL(RFs& aFs, const TDesC& aLeafName, TDes& aNameOut)
-    {
-    aNameOut.SetLength(0);  
-    aNameOut.Append(RFs::GetSystemDriveChar());
-
-    aNameOut.Append(':');
-
-    // Get private path
-    TBuf<20> privatePath;
-    User::LeaveIfError(aFs.PrivatePath(privatePath));
-    aNameOut.Append(privatePath);
-    
-    aNameOut.Append(aLeafName);
-    }
-
-/**
- * Creates the corresponding directory, if it does not exist.
- */
-void CCryptoTokenHai::EnsurePathL(RFs& aFs, const TDesC& aFile)
-    {
-    TInt err = aFs.MkDirAll(aFile);
-    if (err != KErrNone && err != KErrAlreadyExists)
-        {
-        User::Leave(err);
-        }
-    }
-
-/**
- * Populates the string containing full ROM path of the keys file.
- */
-void CCryptoTokenHai::MakePrivateROMFilenameL(RFs& aFs, const TDesC& aLeafName, TDes& aNameOut)
-    {
-    _LIT(KFileStoreROMDrive, "Z:");
-    
-    aNameOut.Copy(KFileStoreROMDrive);
-
-    // Get private path
-    TBuf<20> privatePath;
-    User::LeaveIfError(aFs.PrivatePath(privatePath)); 
-    aNameOut.Append(privatePath);
-    aNameOut.Append(aLeafName);
-    }
-
-/**
- * Copies the contents of source file to destination file.
- * 
- * This is typically used to copy the keys file from ROM to RAM.
- */
-void CCryptoTokenHai::CopyL(RFs& aFs, const TDesC& aSouce, const TDesC& aDest)
-    {
-    RFileReadStream in;
-    User::LeaveIfError(in.Open(aFs, aSouce, EFileRead | EFileShareReadersOnly));
-    CleanupClosePushL(in);
-
-    RFileWriteStream out;
-    User::LeaveIfError(out.Replace(aFs, aDest, EFileWrite | EFileShareExclusive));
-    CleanupClosePushL(out);
-
-    in.ReadL(out);  
-    CleanupStack::PopAndDestroy(2, &in);
-    }
-
-/**
- * Keys corresponding to this store are present in hwkeys.dat. 
- * In the production code written by licensees, this would be the path 
- * where device keys are stored.
- */
-_LIT(KKeyStoreFilename,"hwkeys.dat");
-
-/**
- * Opens a store containing hardware keys.
- * 
- * This function uses the following logic to open the store:-
- * -# Try to open the store from the private directory.
- * -# If this fails copy the file from ROM to RAM.
- * -# If both fail, create your own keys store from scratch.
- */
-void CCryptoTokenHai::OpenStoreL()
-	{
-	TFileName fullPath;
-	MakePrivateFilenameL(iFs, KKeyStoreFilename, fullPath);
-
-	EnsurePathL(iFs, fullPath);
-	TRAPD(result, OpenStoreInFileL(fullPath));
-
-	if (result == KErrInUse  ) 
-		{		
-		// Cannot access the file now. Abort rather than wiping the keystore.
-		User::Leave(result); 
-		}
-	
-	if (result != KErrNone )
-		{		
-		/*
-		 * Not yet opened a valid store, either no file to be found, or 
-		 * no valid store in it. Copy the original one stored in the 
-		 * ROM.
-		 */
-		TRAPD(result2, CopyStoreFromROML(fullPath, result));
-				
-		if (KErrNone != result2)
-			{
-			/*
-			 * We tried to copy the keystore from ROM. For some reason this
-			 * failed and we still cannot open the file. Create a new one from
-			 * scratch.
-			 */ 
-			CreateStoreInFileL(fullPath);
-			}
-		}
-
-	}
-
-/**
- * Copies the key store file from ROM to RAM.
- */
-void CCryptoTokenHai::CopyStoreFromROML(const TDesC& fullPath, TInt result)
-    {
-    if (result != KErrNotFound)
-        {
-        // Wipe the keystore if we can't open it (it's corrupt anyway)
-        User::LeaveIfError(iFs.Delete(fullPath));
-        }
-
-    TFileName romPath;
-    MakePrivateROMFilenameL(iFs, KKeyStoreFilename, romPath);
-
-    // Copy data from rom and open it   
-    CopyL(iFs, romPath, fullPath);
-    OpenStoreInFileL(fullPath);
-    }
-
-/**
- * Opens a store from the given file.
- */
-void CCryptoTokenHai::OpenStoreInFileL(const TDesC& aFile)
-	{
-	RFile file;
-	User::LeaveIfError(file.Open(iFs, aFile, EFileRead | EFileWrite | EFileShareAny));
-	CleanupClosePushL(file);
-    delete iFileStore;
-    iFileStore = NULL;
-
-	iFileStore = CPermanentFileStore::FromL(file);
-    // iFileStore takes ownership of file now
-	CleanupStack::Pop(&file);
-	
-    // Get the salt, root and manager TStreamIds
-    iRootStreamId = iFileStore->Root();
-    if (iRootStreamId == KNullStreamId)
-        {
-        User::Leave(KErrCorrupt);
-        }
-    RStoreReadStream rootStream;
-    rootStream.OpenLC(*iFileStore, iRootStreamId);
-    ReadKeysFromStoreL();
-    CleanupStack::PopAndDestroy(&rootStream);
-    }
-
-/**
- * Creates a keys store in RAM from scratch.
- * 
- * @note This function should never get called as hwkeys.dat should be 
- * always present in ROM. If this function somehow gets called, it 
- * will create a hwkeys.dat file from scratch. However, this file would 
- * not contain any keys and tests would not pass.
- */
-void CCryptoTokenHai::CreateStoreInFileL(const TDesC& aFile)
-	{
-	TInt r = iFs.MkDirAll(aFile);
-	if ( (r!=KErrNone) && (r!=KErrAlreadyExists) )
-		User::Leave(r);
-
-    delete iFileStore;
-    iFileStore = NULL;
-	iFileStore = CPermanentFileStore::ReplaceL(iFs, aFile, EFileRead | EFileWrite | EFileShareExclusive);
-	iFileStore->SetTypeL(KPermanentFileStoreLayoutUid);
-
-	TCleanupItem cleanupStore(RevertStore, iFileStore);
-	CleanupStack::PushL(cleanupStore);
-	
-	// Create root stream - just contains id of info stream
-	RStoreWriteStream rootStream;
-	iRootStreamId = rootStream.CreateLC(*iFileStore);
-	iFileStore->SetRootL(iRootStreamId);
-	WriteKeysToStoreL(rootStream);
-	iFileStore->CommitL();
-	CleanupStack::PopAndDestroy(&rootStream);
-	CleanupStack::Pop(); // cleanupStore
-	}
-
-/**
- * Copies the keys stored in the instance to inputted write stream.
- * 
- * This invokes the CKeyDetails::ExternalizeL() function.
- */
-void CCryptoTokenHai::WriteKeysToStoreL(RStoreWriteStream& aRootStream)
-	{
-	TInt keyCount = iKeys.Count();
-	aRootStream.WriteInt32L(keyCount);
-
-	for (TInt index = 0; index < keyCount; index++)
-		{
-		aRootStream << *iKeys[index];
-		}
-	aRootStream.CommitL();
-	}
-
-/**
- * Copies the keys present in the read store to instance of class.
- * 
- * This eventually invokes the CKeyDetails::InternalizeL() function.
- */
-void CCryptoTokenHai::ReadKeysFromStoreL()
-	{
-	RStoreReadStream rootStream;
-	
-	rootStream.OpenLC(*iFileStore, iRootStreamId);
-	TInt keyCount = rootStream.ReadInt32L();
-
-	for (TInt index = 0; index < keyCount; index++)
-		{
-		CKeyDetails* keyDetails = CKeyDetails::NewL(rootStream);
-		iKeys.Append(keyDetails);
-		}
-	CleanupStack::PopAndDestroy(&rootStream);
-	}
-
-/**
- * This is a cleanup item that reverts the store.
- */
-void CCryptoTokenHai::RevertStore(TAny* aStore)
-	{
-	CPermanentFileStore* store = reinterpret_cast<CPermanentFileStore*>(aStore);
-	TRAP_IGNORE(store->RevertL());
-	}
-
-/**
- * Compacts the store.
- */
-void CCryptoTokenHai::CompactStore()
-    {
-    ASSERT(iFileStore);
-    TRAP_IGNORE(iFileStore->ReclaimL(); iFileStore->CompactL());
-    }
-
-/**
- * Populates the list of keys based on the input filter.
- * 
- * @param aFilter Set of conditions to be used to decide which keys 
- * should be listed
- * @param aKeys Output param. Contains the array of keys which fulfil 
- * criteria mentioned in filter. Caller should take responsibility of 
- * this array.
- * 
- * @leave Any of the system wide error codes.
- * 
- * @note Though Crypto Token HAI internally operates in CKeyDetails, 
- * this function returns CCTKeyInfo array.
- */
-EXPORT_C void CCryptoTokenHai::ListL(const TCTKeyAttributeFilter&  aFilter , 
-                RPointerArray<CCTKeyInfo>& aKeys) const
-    {
-    TInt count = iKeys.Count();
-    for(TInt index = 0 ;index < count; ++ index)
-    	{
-    	const CKeyDetails* keyDetails = iKeys[index];
-    	
-    	if(KeyMatchesFilterL(*keyDetails,aFilter))
-    		{
-			MCTAuthenticationObject* authObject = NULL;
-			HBufC8* attribute = keyDetails->PKCS8AttributeSet().AllocLC();
-			HBufC* label = keyDetails->Label().AllocLC();
-			
-			CCTKeyInfo* keyInfo = CCTKeyInfo::NewL(
-					keyDetails->ID(),keyDetails->Usage(),keyDetails->Size(),
-					authObject,label,iToken,keyDetails->Handle(),keyDetails->UsePolicy(),
-					keyDetails->ManagementPolicy(),keyDetails->Algorithm(),keyDetails->AccessType(),
-					keyDetails->Native(),keyDetails->StartDate(),keyDetails->EndDate(),attribute);
-			
-			CleanupStack::Pop(2, attribute); // label
-			CleanupReleasePushL(*keyInfo);
-						
-			User::LeaveIfError(aKeys.Append(keyInfo));
-			CleanupStack::Pop(keyInfo); 
-			
-			}
-    	}
-    	
-    }
-
-/**
- * Takes in a filter and key details and decides if key fulfils the 
- * filter criteria.
- * 
- * @param aInfo The Key Details
- * @param aFilter Filter specifying the conditions to be satisfied for 
- * listing the keys.
- * 
- * @retval ETrue if key satisfies the conditions specified in filter
- * @retval EFalse otherwise.
- * 
- * @leave KErrArgument If there is an issue in policy filter.
- */
-TBool CCryptoTokenHai::KeyMatchesFilterL(const CKeyDetails& aInfo,
-										   const TCTKeyAttributeFilter& aFilter) const
-	{
-		
-	if (aFilter.iKeyId.Length() && aFilter.iKeyId != aInfo.ID())
-		{
-		return EFalse;
-		}
-
-	if (aFilter.iUsage != EPKCS15UsageAll)
-		{
-		if ((aInfo.Usage() & aFilter.iUsage) == 0)
-			return EFalse;
-		}
-
-	if (aFilter.iKeyAlgorithm != CCTKeyInfo::EInvalidAlgorithm && 
-		aFilter.iKeyAlgorithm != aInfo.Algorithm())
-		{
-		return EFalse;
-		}
-	
-	switch (aFilter.iPolicyFilter)
-		{
-		case TCTKeyAttributeFilter::EAllKeys:
-			// All keys pass
-			break;
-			   
-		case TCTKeyAttributeFilter::EUsableKeys:
-			if (!aInfo.UsePolicy().CheckPolicy(RThread()))
-				{
-				return EFalse;
-				}
-			break;
-		case TCTKeyAttributeFilter::EManageableKeys:
-			// As this key store implementation is a hardware simulation,
-			// the support for managing through software interface has been diabled.
-			return EFalse;
-
-		case TCTKeyAttributeFilter::EUsableOrManageableKeys:
-			if (!aInfo.UsePolicy().CheckPolicy(RThread()) &&
-				!aInfo.ManagementPolicy().CheckPolicy(RThread()))
-				{
-				return EFalse;
-				}
-			break;
-						
-		default:
-			User::Leave(KErrArgument);
-		}
-
-	return ETrue;
-	}
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,93 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This class implements the reference Crypto Token Hardware Abstraction 
-* Interface (HAI). It is just intended to show how operations using 
-* device keys can be performed using crypto token framework. In the 
-* real world scenario, this HAI should be replaced by device drivers 
-* by the licensees. In such a case, all the operations performed by 
-* the replacing class would be performed in Kernel Space.
-*
-*/
-
-
-/**
- * @file
- * @internalComponent
- * @released
- */
-#ifndef CCRYPTOTOKENHAI_H
-#define CCRYPTOTOKENHAI_H
-
-#include <e32base.h>
-#include <f32file.h>
-#include <S32FILE.H>
-#include <mctkeystore.h>
-
-class CKeyDetails;
-class MCTToken;
-
-namespace CryptoSpi
-	{
-	class CSigner;
-	}
-
-NONSHARABLE_CLASS(CCryptoTokenHai) : public CBase
-	{
-	public:
-		IMPORT_C static CCryptoTokenHai* NewLC(MCTToken* aToken);
-		IMPORT_C static CCryptoTokenHai* NewL(MCTToken* aToken);
-		IMPORT_C ~CCryptoTokenHai();
-		
-	public:
-		IMPORT_C void DecryptL(TInt aHandle,
-								const TDesC8& aCiphertext,
-								HBufC8*& aPlaintext );
-	
-		IMPORT_C void SignL( 	TInt aHandle,
-								const TDesC8& aPlaintext,
-								HBufC8*& aSignature );
-	
-		IMPORT_C TInt KeyPresent( TInt aHandle );
-		IMPORT_C void ExportPrivateKeyL( TInt aHandle, HBufC8*& aKey );
-		IMPORT_C void ExportPublicKeyL( TInt aHandle, HBufC8*& aKey );
-		IMPORT_C void ImportKeyL( const TDesC& aLabel, const TDesC8& aPrivateKey, const TDesC8& aPublicKey );
-		IMPORT_C void ListL(const TCTKeyAttributeFilter& aFilter, RPointerArray<CCTKeyInfo>& aKeys) const;
-		
-	private:
-		void ConstructL();
-		CCryptoTokenHai(MCTToken& aToken);
-	    void OpenStoreL();
-	    void OpenStoreInFileL(const TDesC& aFile);
-	    void CreateStoreInFileL(const TDesC& aFile);
-	    void MakePrivateFilenameL(RFs& aFs, const TDesC& aLeafName, TDes& aNameOut);
-		void EnsurePathL(RFs& aFs, const TDesC& aFile);
-		void MakePrivateROMFilenameL(RFs& aFs, const TDesC& aLeafName, TDes& aNameOut);
-		void CopyL(RFs& aFs, const TDesC& aSouce, const TDesC& aDest);
-		void CompactStore();
-		static void RevertStore(TAny* aStore);
-		void ReadKeysFromStoreL();
-		TBool KeyMatchesFilterL(const CKeyDetails& aInfo, const TCTKeyAttributeFilter& aFilter) const;
-		void CopyStoreFromROML(const TDesC& fullPath, TInt result);
-		void WriteKeysToStoreL(RStoreWriteStream& aRootStream);
-		
-	private:
-		RPointerArray<CKeyDetails> iKeys;
-		RFs iFs;
-		CPermanentFileStore* iFileStore;
-		TStreamId iRootStreamId;
-		MCTToken& iToken;
-	};
-
-#endif	//	CCRYPTOTOKENHAI_H
--- a/cryptoservices/filebasedcertificateandkeystores/test/tcryptotokenhai/tcryptotokenhai.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Reference crypto token implementation
-*
-*/
-
-
-
-/**
- @file
-*/
-
-// reference implementation for hardware adaptation interface
-
-target tcryptotokenhai.dll
-targettype dll
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID 0x10009D8D 0x101Faaa1
-VENDORID 0x70000001
-CAPABILITY All -TCB
-
-DEFFILE tcryptotokenhai.def
-
-SOURCEPATH	.
-SOURCE tcryptotokenhai.cpp
-
-SOURCEPATH ../thwkeystore/common
-SOURCE tkeydetails.cpp
-
-OS_LAYER_SYSTEMINCLUDE
-
-USERINCLUDE .
-USERINCLUDE ../thwkeystore/common
-USERINCLUDE ../../../../crypto/weakcryptospi/inc/spi
-
-LIBRARY	euser.lib 
-LIBRARY cryptospi.lib
-LIBRARY ctframework.lib
-LIBRARY efsrv.lib
-LIBRARY estor.lib
-
-SMPSAFE
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/101faaaa.rss	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Registration data for reference hardware plugin dll
-*
-*/
-
-
-#include <cryptotokenregistryinfo.rh>
-
-RESOURCE REGISTRY_INFO theInfo
-	{
-	dll_uid = 0x101Faaaa;
-	interfaces = 
-		{
-		INTERFACE_INFO
-			{
-			interface_uid = CT_INTERFACE_UID;
-			implementations = 
-				{
-				BINARY_IMPLEMENTATION_INFO
-					{
-					implementation_uid = 0x101FFFF4;
-					version_no = 1;
-					display_name = "Test reference hardware plugin implementation";
-					default_data = { 0x34, 0x73, 0x1F, 0x10,	//	MKeyStore
-									 0x35, 0x73, 0x1F, 0x10 };	//	KeyStore Manager
-					opaque_data = {	CT_SOFTWARE,CT_FALSE,
-									CT_REMOVABLE, CT_FALSE};
-					}
-				};
-			}
-		};
-	}
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystore.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,42 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include <e32std.h>
-#include <ecom/implementationproxy.h>
-#include "thwtokentypeclient.h"
-
-const TInt KHardwareImplementationId = 0x101FFFF4;
-
-static CCTTokenType* NewFunctionL();
-
-CCTTokenType* NewFunctionL()
-	{
-	CCTTokenType* hardwareKeyStore = CHardwareTokenTypeClient::NewL();
-	return hardwareKeyStore;
-	}
-
-const TImplementationProxy ImplementationTable[] =
-	{
-	IMPLEMENTATION_PROXY_ENTRY(KHardwareImplementationId, NewFunctionL)
-	};
-
-EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
-	{
-	aTableCount = sizeof(ImplementationTable) / sizeof(TImplementationProxy);
-	return (ImplementationTable);
-	}
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,503 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Contains the implementation of CHardwareKeyStoreClient. In this 
-* class only the newly added APIs for WMDRM have been implemented. 
-* So this is not a full functional crypto token.
-*
-*/
-
-
-#include "thwkeystoreclient.h"
-#include "thwkeystoredefs.h"
-#include "keys.h"
-#include <cryptospi/cryptospidef.h>
-#include "cryptoasymmetriccipherapi.h"
-#include "cryptosignatureapi.h"
-#include <s32mem.h>
-
-MCTTokenInterface* CHardwareKeyStoreClient::NewKeyStoreInterfaceL(MCTToken& aToken)
-	{
-	//	Destroyed by MCTTokenInterface::DoRelease() 
-	CHardwareKeyStoreClient* me = new (ELeave) CHardwareKeyStoreClient(aToken);
-	CleanupStack::PushL(me);
-	me->ConstructL();
-	CleanupStack::Pop(me);
-	return (me);
-	}
-
-CHardwareKeyStoreClient::CHardwareKeyStoreClient(MCTToken& aToken)
-	: CActive(EPriorityNormal), 
-	// Reference count starts at one as we're always created and returned by a GetInterface() call on the token
-	iRefCount(1),
-	iToken(aToken)
-	{
-	}
-
-void CHardwareKeyStoreClient::ConstructL()
-	{
-	CActiveScheduler::Add(this);
-	iCryptoTokenHai = CCryptoTokenHai::NewL(&iToken);
-	}
-
-CHardwareKeyStoreClient::~CHardwareKeyStoreClient()
-	{
-	Cancel();
-	delete iCryptoTokenHai;
-	}
-
-MCTToken& CHardwareKeyStoreClient::Token()
-	{
-	return iToken;
-	}
-
-void CHardwareKeyStoreClient::AddRef()
-	{
-	++iRefCount;
-	
-	iToken.AddRef();
-	}
-
-void CHardwareKeyStoreClient::DoRelease()
-	{
-	--iRefCount;
-
-	ASSERT(iRefCount >= 0);
-	if (iRefCount == 0)
-		{
-		MCTTokenInterface::DoRelease();
-		}
-	}
-
-void CHardwareKeyStoreClient::ReleaseObject(const TCTTokenObjectHandle& /*aHandle*/)
-	{
-	}
-
-void CHardwareKeyStoreClient::RunL()
-	{
-	User::LeaveIfError(iStatus.Int());
-	
-	switch(iState)
-		{
-		case ECreateSigner:
-		{
-			if(iCryptoTokenHai->KeyPresent(iHandle.iObjectId) != KErrNotFound)
-			    {
-                CryptoSpi::TKeyProperty keyProperty;
-                keyProperty.iAlgorithmUid = CryptoSpi::KEccSignerUid;
-                    
-                CryptoSpi::CCryptoParams* keyParameters = CryptoSpi::CCryptoParams::NewLC();
-                keyParameters->AddL(iHandle.iObjectId, CryptoSpi::KPassedHandleToKeyUid);
-                CryptoSpi::CKey* newKey = CryptoSpi::CKey::NewL(keyProperty, *keyParameters);
-                CleanupStack::PushL(newKey);
-                
-                CryptoSpi::CSignatureFactory::CreateSignerL( *(iClientBuffer.iSigner), CryptoSpi::KEccSignerUid, 
-                                                            *newKey, CryptoSpi::KPaddingModeNoneUid, 
-                                                            NULL );
-                
-                CleanupStack::PopAndDestroy(newKey);
-                CleanupStack::PopAndDestroy(keyParameters);
-			    }
-			else
-                {
-                User::Leave(KErrNotFound);
-                }
-		}
-		break;
-		case ECreateAsymmetricCipher:
-		{
-			if(iCryptoTokenHai->KeyPresent(iHandle.iObjectId) != KErrNotFound)
-                {
-                CryptoSpi::TKeyProperty keyProperty;
-                keyProperty.iAlgorithmUid = CryptoSpi::KEccCipherUid;
-                    
-                CryptoSpi::CCryptoParams* keyParameters = CryptoSpi::CCryptoParams::NewLC();
-                keyParameters->AddL(iHandle.iObjectId, CryptoSpi::KPassedHandleToKeyUid);
-                CryptoSpi::CKey* newKey = CryptoSpi::CKey::NewL(keyProperty, *keyParameters);
-                CleanupStack::PushL(newKey);
-                
-                CryptoSpi::CAsymmetricCipherFactory::CreateAsymmetricCipherL(
-                                    *(iClientBuffer.iAsymmetricCipher), CryptoSpi::KEccCipherUid,
-                                    *newKey, CryptoSpi::KCryptoModeDecryptUid,
-                                    CryptoSpi::KPaddingModeNoneUid, NULL);
-                
-                CleanupStack::PopAndDestroy(newKey);
-                CleanupStack::PopAndDestroy(keyParameters);
-                }
-			else
-			    {
-			    User::Leave(KErrNotFound);
-			    }
-		}
-		break;
-		case EDecryptInHardware:
-        {
-            if(iCryptoTokenHai->KeyPresent(iHandle.iObjectId) != KErrNotFound)
-                {
-                iCryptoTokenHai->DecryptL(iHandle.iObjectId, *iPtr, *(iClientBuffer.decryptedText));
-                }
-            else
-                {
-                User::Leave(KErrNotFound);
-                }
-        }
-        break;
-        case ESignInHardware:
-        	{
-            if(iCryptoTokenHai->KeyPresent(iHandle.iObjectId) != KErrNotFound)
-                {
-                HBufC8* signature;
-                iCryptoTokenHai->SignL(iHandle.iObjectId, *iPtr, signature);
-                CleanupStack::PushL(signature);
-                iClientBuffer.iSignature->AddL(signature->Des(), CryptoSpi::KEccKeyTypeUid);
-                CleanupStack::PopAndDestroy(signature);
-                }
-            else
-                {
-                User::Leave(KErrNotFound);
-                }
-            break;
-        	}
-        		
-		case EExportKey:
-			{
-		    if(iCryptoTokenHai->KeyPresent(iHandle.iObjectId) != KErrNotFound)
-		        {
-		        iCryptoTokenHai->ExportPublicKeyL(iHandle.iObjectId, *iPublicKey);
-		        }
-		    else
-		        {
-		        User::Leave(KErrNotFound);
-		        }
-		    break;
-			}
-		default:
-			User::Leave(KErrArgument);
-		}
-	
-	User::RequestComplete(iClientStatus,KErrNone);	
-	}
-
-void CHardwareKeyStoreClient::DoCancel()
-	{
-	User::RequestComplete(iClientStatus,KErrCancel);	
-	}
-
-TInt CHardwareKeyStoreClient::RunError(TInt aError)
-    {
-    User::RequestComplete(iClientStatus, aError);
-    return KErrNone;
-    }
-
-/*
- * MKeystore interfaces
- */	
-	
-void CHardwareKeyStoreClient::List(
-		RMPointerArray<CCTKeyInfo>& aKeys, 
-		const TCTKeyAttributeFilter& aFilter, 
-		TRequestStatus& aStatus)
-	{
-	iClientStatus = &aStatus;
-    *iClientStatus = KRequestPending;
-    TRequestStatus* status = &aStatus;
-    TRAPD(err,iCryptoTokenHai->ListL(aFilter,aKeys));
-    User::RequestComplete(status, err);
-    }
-
-void CHardwareKeyStoreClient::CancelList()
-	{
-	
-	}
-
-void CHardwareKeyStoreClient::GetKeyInfo(TCTTokenObjectHandle /*aHandle*/, CCTKeyInfo*& /*aInfo*/, 
-								   TRequestStatus& aStatus)
-	{	
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelGetKeyInfo()
-	{
-	// synchronous, nothing to do
-	}
-
-void CHardwareKeyStoreClient::Open(const TCTTokenObjectHandle& /*aHandle*/, 
-							 MRSASigner*& /*aSigner*/, 
-							 TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::Open(const TCTTokenObjectHandle& /*aHandle*/, 
-							 MCTSigner<CDSASignature*>*& /*aSigner*/, 
-							 TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::Open(const TCTTokenObjectHandle& /*aHandle*/, 
-							 MCTDecryptor*& /*aDecryptor*/,
-							 TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::Open(const TCTTokenObjectHandle& /*aHandle*/, 
-							 MCTDH*& /*aDH*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelOpen()
-	{
-	// synchronous, nothing to do
-	}
-
-/** Returns the public key in DER-encoded ASN-1 */
-void CHardwareKeyStoreClient::ExportPublic(const TCTTokenObjectHandle& aHandle,
-									 HBufC8*& aPublicKey,
-									 TRequestStatus& aStatus)
-	{
-	//TRequestStatus* status = &aStatus;
-	iClientStatus = &aStatus;
-	
-	iStatus = KRequestPending;
-    *iClientStatus = KRequestPending;
-    iPublicKey = &aPublicKey;
-    iHandle = aHandle;
-    TRequestStatus* status = &iStatus;
-    SetActive();
-    iState = EExportKey;
-    
-    User::RequestComplete(status, KErrNone);
-	}
-
-void CHardwareKeyStoreClient::CancelExportPublic()
-	{
-	// synchronous, nothing to do
-	}
-
-//	*********************************************************************************
-//	MCTKeyStoreManager
-//	*********************************************************************************
-void CHardwareKeyStoreClient::CreateKey(CCTKeyInfo*& /*aReturnedKey*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelCreateKey()
-	{
-	}
-
-/**
- * This function is not implemented since in the WMDRM case, device 
- * are preprovisioned inside the device. Hence implementing this 
- * function is not required.
- */
-void CHardwareKeyStoreClient::ImportKey(const TDesC8& /*aKey*/, CCTKeyInfo*& /*aReturnedKey*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelImportKey()
-	{
-	}
-
-void CHardwareKeyStoreClient::ImportEncryptedKey(const TDesC8& /*aKey*/, CCTKeyInfo*& /*aReturnedKey*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelImportEncryptedKey()
-	{
-	}
-
-void CHardwareKeyStoreClient::ExportKey(TCTTokenObjectHandle /*aHandle*/, HBufC8*& /*aKey*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelExportKey()
-	{
-	}
-
-void CHardwareKeyStoreClient::ExportEncryptedKey(TCTTokenObjectHandle /*aHandle*/, const CPBEncryptParms& /*aParams*/,  HBufC8*& /*aKey*/, TRequestStatus& aStatus)
- 	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
- 	}
-
-void CHardwareKeyStoreClient::CancelExportEncryptedKey()
-	{
-	}
-
-void CHardwareKeyStoreClient::DeleteKey(TCTTokenObjectHandle /*aHandle*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelDeleteKey()
-	{
-	// synchronous, nothing to do
-	}
-
-void CHardwareKeyStoreClient::SetUsePolicy(TCTTokenObjectHandle /*aHandle*/, 
-									 const TSecurityPolicy& /*aPolicy*/,
-									 TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelSetUsePolicy()
-	{
-	// synchronous, nothing to do
-	}
-
-void CHardwareKeyStoreClient::SetManagementPolicy(TCTTokenObjectHandle /*aHandle*/, 
-											const TSecurityPolicy& /*aPolicy*/,
-											TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNotSupported);
-	}
-
-void CHardwareKeyStoreClient::CancelSetManagementPolicy()
-	{
-	// synchronous, nothing to do
-	}
-
-/**
- * @todo
- * This interface should return KErrNotSupported but because of the way 
- * it has been implemented in unifiedkeystore this is returning 
- * KErrNone. This should be fixed later.
- */ 
-void CHardwareKeyStoreClient::SetPassphraseTimeout(TInt /*aTimeout*/, TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CHardwareKeyStoreClient::CancelSetPassphraseTimeout()
-	{
-	// No point cancelling, not asynchronous
-	}
-
-/**
- * @todo
- * This interface should return KErrNotSupported but because of the way 
- * it has been implemented in unifiedkeystore this is returning 
- * KErrNone. This should be fixed later.
- */ 
-void CHardwareKeyStoreClient::Relock(TRequestStatus& aStatus)
-	{
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, KErrNone);
-	}
-
-void CHardwareKeyStoreClient::CancelRelock()
-	{
-	// No point cancelling, not asynchronous
-	}
-
-
-void CHardwareKeyStoreClient::Open(	const TCTTokenObjectHandle& aHandle,
-									CryptoSpi::CSigner*& aSigner,
-									TRequestStatus& aStatus )
-	{
-	iClientStatus = &aStatus;    
-    iStatus = KRequestPending;
-    *iClientStatus = KRequestPending;
-    iClientBuffer.iSigner = &aSigner;
-    iHandle = aHandle;
-    TRequestStatus* status = &iStatus;
-    SetActive();
-    iState = ECreateSigner;
-    User::RequestComplete(status, KErrNone);
-	}
-
-void CHardwareKeyStoreClient::Open(	const TCTTokenObjectHandle& aHandle,
-									CryptoSpi::CAsymmetricCipher*& aAsymmetricCipher,
-									TRequestStatus& aStatus )
-	{
-    iClientStatus = &aStatus;    
-    iStatus = KRequestPending;
-    *iClientStatus = KRequestPending;
-    iClientBuffer.iAsymmetricCipher = &aAsymmetricCipher;
-    iHandle = aHandle;
-    TRequestStatus* status = &iStatus;
-    SetActive();
-    iState = ECreateAsymmetricCipher;
-    User::RequestComplete(status, KErrNone);
-	}
-
-
-void CHardwareKeyStoreClient::Decrypt(	const TCTTokenObjectHandle& aHandle,
-        const TDesC8& aCiphertext,
-										HBufC8*& aPlaintextPtr,
-										TRequestStatus& aStatus )
-	{
-    iClientStatus = &aStatus;    
-    iStatus = KRequestPending;
-    *iClientStatus = KRequestPending;
-    iHandle = aHandle;
-    iPtr = &aCiphertext;
-    iClientBuffer.decryptedText = &aPlaintextPtr;
-    TRequestStatus* status = &iStatus;
-    SetActive();
-    iState = EDecryptInHardware;
-    User::RequestComplete(status, KErrNone);
-	}
-
-void CHardwareKeyStoreClient::Sign(	const TCTTokenObjectHandle& aHandle,
-        const TDesC8& aPlaintext,
-										CryptoSpi::CCryptoParams*& aSignature,
-										TRequestStatus& aStatus )
-	{
-    iClientStatus = &aStatus;    
-    iStatus = KRequestPending;
-    *iClientStatus = KRequestPending;
-    iHandle = aHandle;
-    iPtr = &aPlaintext;
-    iClientBuffer.iSignature = aSignature;
-    TRequestStatus* status = &iStatus;
-    SetActive();
-    iState = ESignInHardware;
-    User::RequestComplete(status, KErrNone);
-	}
-
-
-void CHardwareKeyStoreClient::ImportKey(	TPtr /* aLabel */, 
-											TPtr8 /* aPrivateKey */, TPtr8 /* aPublicKey */ , 
-											TRequestStatus& aStatus)
-	{
-    TRequestStatus* status = &aStatus;
-    User::RequestComplete(status, KErrNone);
-	}
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,175 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Implements the MCTKeyStoreManager interface.
-*
-*/
-
-
-/**
- * @file
- * @internalComponent
- * @released
- */
-#ifndef CHARDWAREKEYSTORECLIENT_H
-#define CHARDWAREKEYSTORECLIENT_H
-
-#include <mctkeystoremanager.h>
-
-#include "cryptoasymmetriccipherapi.h"
-#include <asymmetric.h>
-#include <cryptospi/cryptoparams.h>
-#include "thwkeystoredefs.h"
-#include "tcryptotokenhai.h"
-
-/**
- * Implements the MCTKeyStoreManager interface.
- *
- * The class implements the keystore manager token interface for the software
- * keystore.  It will be created and owned by the unified keystore.
- */
-NONSHARABLE_CLASS(CHardwareKeyStoreClient) : public CActive, public MCTKeyStoreManager
-{
-public:
-	static MCTTokenInterface* NewKeyStoreInterfaceL(MCTToken& aToken);
-
-public:
-	virtual ~CHardwareKeyStoreClient();
-	void AddRef();
-
-public:
-	void RunL();
-	virtual void DoCancel();
-	TInt RunError(TInt aError);
-	
-public:
-//	MKeyStore
-	virtual void List(RMPointerArray<CCTKeyInfo>& aKeys, const TCTKeyAttributeFilter& aFilter, TRequestStatus& aStatus);
-	virtual void CancelList();
-	virtual void GetKeyInfo(TCTTokenObjectHandle aHandle, CCTKeyInfo*& aInfo, TRequestStatus& aStatus);
-	virtual void CancelGetKeyInfo();
-	
-	// Open an RSA key for signing
-	virtual void Open(const TCTTokenObjectHandle& aHandle, 
-					  MRSASigner*& aSigner,
-					  TRequestStatus& aStatus);
-	// Open a DSA key for signing
-	virtual void Open(const TCTTokenObjectHandle& aHandle, 
-					  MDSASigner*& aSigner, 
-					  TRequestStatus& aStatus);
-	// Open a RSA key for private decryption
-	virtual void Open(const TCTTokenObjectHandle& aHandle, 
-					  MCTDecryptor*& aDecryptor,
-					  TRequestStatus& aStatus);
-	// Open a DH key for key agreement
-	virtual void Open(const TCTTokenObjectHandle& aHandle, 
-					  MCTDH*& aDH, TRequestStatus& aStatus);
-
-
-	// Cancels an ongoing open request
-	virtual void CancelOpen();
-	
-	// Returns the public key in DER-encoded ASN-1
-	virtual void ExportPublic(const TCTTokenObjectHandle& aHandle,
-							  HBufC8*& aPublicKey,
-							  TRequestStatus& aStatus);
-	virtual void CancelExportPublic();
-
-	virtual void Open(const TCTTokenObjectHandle& aHandle,
-		                  CryptoSpi::CSigner*& aSigner,
-		                  TRequestStatus& aStatus);
-	
-	virtual void Open(const TCTTokenObjectHandle& aHandle,
-		                  CryptoSpi::CAsymmetricCipher*& asymmetricCipherObj,
-		                  TRequestStatus& aStatus);
-	
-	virtual void Decrypt(const TCTTokenObjectHandle& aHandle,
-                            const TDesC8& aCiphertext,
-		                       HBufC8*& aPlaintextPtr,
-		                       TRequestStatus& aStatus);
-	
-	virtual void Sign(const TCTTokenObjectHandle& aHandle,
-                           const TDesC8& aPlaintext,
-		                    CryptoSpi::CCryptoParams*& aSignature,
-		                    TRequestStatus& aStatus);
-
-public:
-//	MCTKeyStoreManager
-	virtual void CreateKey(CCTKeyInfo*& aReturnedKey, TRequestStatus& aStatus);
-	virtual void CancelCreateKey();
-	virtual void ImportKey(const TDesC8& aKey, CCTKeyInfo*& aReturnedKey, TRequestStatus& aStatus);
-	virtual void CancelImportKey();
-	virtual void ImportEncryptedKey(const TDesC8& aKey, CCTKeyInfo*& aReturnedKey, TRequestStatus& aStatus);
-	virtual void CancelImportEncryptedKey();
-	virtual void ExportKey(TCTTokenObjectHandle aHandle, HBufC8*& aKey, TRequestStatus& aStatus); 
-	virtual void CancelExportKey();
-	virtual void ExportEncryptedKey(TCTTokenObjectHandle aHandle, const CPBEncryptParms& aParams, HBufC8*& aKey, TRequestStatus& aStatus);
-	virtual void CancelExportEncryptedKey();
-	virtual void DeleteKey(TCTTokenObjectHandle aHandle, TRequestStatus& aStatus);
-	virtual void CancelDeleteKey();	
-	virtual void SetUsePolicy(TCTTokenObjectHandle aHandle, const TSecurityPolicy& aPolicy, TRequestStatus& aStatus);
-	virtual void CancelSetUsePolicy();
-	virtual void SetManagementPolicy(TCTTokenObjectHandle aHandle, const TSecurityPolicy& aPolicy, TRequestStatus& aStatus);
-	virtual void CancelSetManagementPolicy();
-	virtual void SetPassphraseTimeout(TInt aTimeout, TRequestStatus& aStatus);
-	virtual void CancelSetPassphraseTimeout();	
-	virtual void Relock(TRequestStatus& aStatus);
-	virtual void CancelRelock();	
-
-	void ReleaseObject(const TCTTokenObjectHandle& aObject);
-
-public:
-	/**
-	 * this method os not a part of the framework, has been added so 
-	 * that addition of keys to the hardware can be simulated for 
-	 * testing purposes.
-	 */ 
-	void ImportKey(	TPtr aLabel, TPtr8 aPrivateKey, 
-					TPtr8 aPublicKey , TRequestStatus& aStatus);
-
-public:	
-//	From MCTTokenInterface
-	virtual MCTToken& Token();
-
-protected:
-//	From MCTTokenInterface
-	virtual void DoRelease();
-
-protected:
-	CHardwareKeyStoreClient(MCTToken& aToken);
-	virtual void ConstructL();
-
-private:
-	TInt iRefCount;
-	MCTToken& iToken;					// The token we belong to
-	THwKeystoreMessages iState;
-	TRequestStatus* iClientStatus;
-	TCTTokenObjectHandle iHandle;
-	RPointerArray<CCTKeyInfo>* iKeys;
-	TBuf8<256> iBuffer;
-	CCryptoTokenHai* iCryptoTokenHai;
-	HBufC8** iPublicKey;
-	const TDesC8* iPtr; 
-	TCTKeyAttributeFilter iFilter;
-	union
-	{
-	CryptoSpi::CSigner** iSigner;
-	CryptoSpi::CAsymmetricCipher** iAsymmetricCipher;
-	CryptoSpi::CCryptoParams* iSignature;
-	HBufC8** decryptedText;
-	}iClientBuffer;
-	
-};
-
-#endif	//	CHARDWAREKEYSTORECLIENT_H
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwkeystoreclient.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,63 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Reference plugin for simulating crypto token hardware plugin. 
-*
-*/
-
-
-
-target 101faaaa.dll
-targettype plugin
-
-// ECom Dll recognition UID followed by the unique UID for this dll
-UID 0x10009D8D 0x101Faaaa
-VENDORID 0x70000001
-CAPABILITY All -TCB
-
-SOURCEPATH	.
-
-SOURCE thwkeystore.cpp
-SOURCE thwkeystoreclient.cpp
-SOURCE thwtokentypeclient.cpp
-SOURCE thwtokenclient.cpp
-
-start resource 101faaaa.rss
-target 101faaaa.rsc
-end
-
-OS_LAYER_SYSTEMINCLUDE
-/*
- * Need to put "/epoc32/include/ecom" as one of the system includes 
- * as cryptotokenregistryinfo.rh has the line, '#include "registryinfo.rh"'
- * in place of '#include <ecom/registryinfo.rh>'
- */
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(ecom)
-
-USERINCLUDE .
-USERINCLUDE	../../../../../crypto/weakcryptospi/inc
-USERINCLUDE	../../../../../crypto/weakcryptospi/inc/spi
-USERINCLUDE ../common
-USERINCLUDE ../../tcryptotokenhai
-
-LIBRARY	euser.lib 
-LIBRARY estor.lib
-LIBRARY ctframework.lib
-LIBRARY cryptospi.lib
-LIBRARY scsclient.lib 
-LIBRARY fstokenshared.lib
-LIBRARY tcryptotokenhai.lib
-
-SMPSAFE
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokenclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "thwtokenclient.h"
-#include "thwkeystoreclient.h"
-
-_LIT(KTokenString, "Hardware plugin implementation");
-
-
-MCTToken* CHardwareTokenClient::NewL(MCTTokenType* aTokenType)
-	{
-	CHardwareTokenClient* self = new (ELeave) CHardwareTokenClient(aTokenType);
-	return static_cast<MCTToken*>(self);
-	}
-
-CHardwareTokenClient::CHardwareTokenClient(MCTTokenType* aTokenType)
-			:	iTokenType(aTokenType),
-				iRefCount(0)
-	{
-	}
-
-MCTTokenType& CHardwareTokenClient::TokenType()
-	{
-	return *iTokenType;
-	}
-
-const TDesC& CHardwareTokenClient::Label()
-	{
-	return KTokenString();
-	}
-
-TCTTokenHandle CHardwareTokenClient::Handle()
-	{
-	return (TCTTokenHandle(iTokenType->Type(), 0));
-	}
-
-TInt& CHardwareTokenClient::ReferenceCount()
-	{
-	return iRefCount;
-	}
-
-void CHardwareTokenClient::DoGetInterface(TUid aRequiredInterface, MCTTokenInterface*& aReturnedInterface, TRequestStatus& aStatus)
-	{
-	// No longer calls server to get the interface - just creates a client object of the appropriate type
-	TUid userUid = {0x101F7334};
-	TUid managerUid = {0x101F7335};
-
-	aReturnedInterface = NULL;
-	TInt err = KErrGeneral;
-	
-	if( userUid == aRequiredInterface || managerUid == aRequiredInterface )
-		{
-		TRAP(err, aReturnedInterface = CHardwareKeyStoreClient::NewKeyStoreInterfaceL(*this));
-		}
-						
-	if (NULL == aReturnedInterface)
-		{
-		Release();
-		}
-	
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, err);		
-	}
-
-TBool CHardwareTokenClient::DoCancelGetInterface()
-	{//	Not an asynchronous call for current file store, so nothing to do
-	return EFalse;
-	}
-
-const TDesC& CHardwareTokenClient::Information(TTokenInformation /*aRequiredInformation*/)
-	{
-	return KNullDesC;
-	}
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokenclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This class inherits from class MCTToken and implements all the pure 
-* virtual methods exposed by MCTToken. This provides the 
-* MCTTokenInterface and also provides reference counting.
-*
-*/
-
-
-/**
- * @file
- * @internalComponent
- * @released
- */
-#ifndef CHARDWARETOKENCLIENT_H
-#define	CHARDWARETOKENCLIENT_H
-
-#include <ct.h>
-
-NONSHARABLE_CLASS(CHardwareTokenClient) : public CBase, public MCTToken
-{
-public:
-	static MCTToken* NewL(MCTTokenType* aTokenType);
-
-public:	//	From MCTToken
-	virtual MCTTokenType& TokenType();
-	virtual const TDesC& Label();
-	virtual TCTTokenHandle Handle();
-
-protected:	//	From MCTToken
-	virtual TInt& ReferenceCount();
-	virtual void DoGetInterface(TUid aRequiredInterface, MCTTokenInterface*& aReturnedInterface, TRequestStatus& aStatus);
-	virtual TBool DoCancelGetInterface();
-	virtual const TDesC& Information(TTokenInformation aRequiredInformation);
-
-private:
-	CHardwareTokenClient(MCTTokenType* aTokenType);
-
-private:
-	MCTTokenType* iTokenType;
-	TInt iRefCount;
-};
-
-#endif // CHARDWARETOKENCLIENT_H
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokentypeclient.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,105 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-
-#include "thwtokentypeclient.h"
-#include "thwtokenclient.h"
-
-_LIT(KTokenDesc, "Default Token");
-	
-CCTTokenType* CHardwareTokenTypeClient::NewL()
-	{
-	//	Destroyed by call to CCTTokenType::Release (refcounted)
-	CHardwareTokenTypeClient* self = new (ELeave) CHardwareTokenTypeClient();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	CleanupStack::Pop(self);
-
-	return self;
-	}
-
-CHardwareTokenTypeClient::CHardwareTokenTypeClient()
-	{
-	}
-
-CHardwareTokenTypeClient::~CHardwareTokenTypeClient()
-	{
-	}
-
-void CHardwareTokenTypeClient::ConstructL()
-	{
-	}
-	
-void CHardwareTokenTypeClient::List(RCPointerArray<HBufC>& aTokens, TRequestStatus& aStatus)
-	{
-	HBufC* name = NULL;
-	TRAPD(err, name = KTokenDesc().AllocL());
-	
-	if(KErrNone == err)
-		{
-		err = aTokens.Append(name);
-		}
-
-	if(KErrNone != err)
-		{
-		delete name;
-		}
-	
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, err);
-	}
-
-void CHardwareTokenTypeClient::CancelList()
-	{
-	// implementation not asynchronous
-	}
-
-void CHardwareTokenTypeClient::OpenToken(const TDesC& /*aTokenInfo*/, MCTToken*& aToken, TRequestStatus& aStatus)
-	{
-	// Token Information not used. TokenClient will be created for all tokeninfo
-	aToken = NULL;
-	TRAPD(err, aToken = CHardwareTokenClient::NewL(this));
-
-	//	Token opened, increment our reference count
-	if(err == KErrNone)
-		{
-		IncReferenceCount();
-		}
-
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, err);
-	}
-
-void CHardwareTokenTypeClient::OpenToken(TCTTokenHandle /*aHandle*/, MCTToken*& aToken, TRequestStatus& aStatus)
-	{
-	aToken = NULL;
-	TRAPD(err, aToken = CHardwareTokenClient::NewL(this));
-
-	//	Token opened, increment our reference count
-	if(NULL != aToken)
-		{
-		IncReferenceCount();
-		}
-
-	TRequestStatus* status = &aStatus;
-	User::RequestComplete(status, err);
-	}
-
-void CHardwareTokenTypeClient::CancelOpenToken()
-	{
-	// implementation not asynchronous
-	}
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/client/thwtokentypeclient.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* This class inherits from class CCTTokenType which in turn inherits 
-* from the class MCTTokenType. This class implements all the pure 
-* virtual functions exposed by class MCTTokenType. This defines a new 
-* crypto token type.
-*
-*/
-
-
-/**
- * @file
- * @internalComponent
- * @released
- */
-#ifndef CHARDWARETOKENTYPECLIENT_H
-#define CHARDWARETOKENTYPECLIENT_H
-
-#include <ct/ccttokentype.h>
-
-NONSHARABLE_CLASS(CHardwareTokenTypeClient) :  public CCTTokenType
-{
-public:
-	/** Creates a representation of the CCTTokenType
-	 *	Called by ECom or directly accessible.
-	 */
-	static CCTTokenType* NewL();
-
-public:
-	virtual ~CHardwareTokenTypeClient();
-
-public:	//	From MCTTokenType
-	virtual void List(RCPointerArray<HBufC>& aTokens, TRequestStatus& aStatus);
-	virtual void CancelList();
-	virtual void OpenToken(const TDesC& aTokenInfo, MCTToken*& aToken, TRequestStatus& aStatus);
-	virtual void OpenToken(TCTTokenHandle aHandle, MCTToken*& aToken, TRequestStatus& aStatus);
-	virtual void CancelOpenToken();
-
-private:
-	void OpenToken(MCTTokenType* aTokenType);
-
-private:
-	CHardwareTokenTypeClient();
-	void ConstructL();
-};
-
-#endif	//	CHARDWARETOKENTYPECLIENT_H
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/thwkeystoredefs.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Contains the messages which the ctf plug-in sends to itself. In a 
-* client server model, these messages will be sent to server.
-*
-*/
-
-
-/**
- @file 
- @internalTechnology
-*/
-
-#ifndef HWKEYSTOREDEFS_H
-#define HWKEYSTOREDEFS_H
-
-#include <e32base.h>
-
-const TInt KHwKeystoreMajorVersion = 1;
-const TInt KHwKeystoreMinorVersion = 0;
-const TInt KHwKeystoreBuildVersion = 0;
-
-/**	
- * Request message enumeration within the client. This is needed since 
- * unified key store calls are asynchronous in nature. Hence client 
- * needs to send messages to itself.
- */
-enum THwKeystoreMessages
-	{
-	ERequireNoCapabilities=0x00,
-	EIdle,
-	ECancel,
-	EImportKey,
-	EExportKey,
-	EKeyPresent,
-	ECreateSigner,
-	ECreateAsymmetricCipher,
-	ESignInHardware,
-	EDecryptInHardware
-	};
-
-
-
-#endif	//	HWKEYSTOREDEFS_H
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/tkeydetails.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,154 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Defines the class which represents the structure of the key on 
-* which Crypto Token HAI internally operates. It contains the key 
-* information relevant to Crypto Token HAI.
-*
-*/
-
-
-#include "tkeydetails.h"
-#include <mctkeystore.h>
-
-CKeyDetails::CKeyDetails()
-	{}
-
-CKeyDetails::CKeyDetails(	
-		TKeyIdentifier aID,
-		TKeyUsagePKCS15 aUsage,
-		TUint aSize, 
-		HBufC* aLabel,
-		TInt aHandle,
-		const TSecurityPolicy& aUsePolicy,
-		const TSecurityPolicy& aManagementPolicy,
-		EKeyAlgorithm aAlgorithm,
-		TInt aAccessType,
-		TBool aNative,
-		TTime aStartDate,
-		TTime aEndDate,
-		HBufC8* aPKCS8AttributeSet)
-		: CKeyInfoBase(	aID,aUsage,aSize,aLabel,aHandle,
-						aUsePolicy,aManagementPolicy,aAlgorithm,
-						aAccessType,aNative,aStartDate,aEndDate,aPKCS8AttributeSet)
-		{}
-
-CKeyDetails::~CKeyDetails()
-	{
-	delete iPrivateKey;
-	delete iPublicKey;
-	}
-
-TInt CKeyDetails::Handle() const
-	{
-	return iHandle;
-	}
-
-HBufC8* CKeyDetails::PrivateKey() const
-	{
-	return iPrivateKey;
-	}
-
-HBufC8* CKeyDetails::PublicKey() const
-    {
-    return iPublicKey;
-    }
-
-CKeyDetails* CKeyDetails::NewL(	TInt aHandle, 
-								const TDesC& aLabel, 
-								const TDesC8& aPrivateKey, 
-								const TDesC8& aPublicKey )
-	{
-	TKeyIdentifier keyID;
-	keyID.FillZ(keyID.MaxSize());
-	TKeyUsagePKCS15 usage = EPKCS15UsageNone;
-	TUint size = 0;
-	TInt handle = aHandle;
-	const TSecurityPolicy& usePolicy = TSecurityPolicy::EAlwaysPass;
-	const TSecurityPolicy& managementPolicy = TSecurityPolicy::EAlwaysPass;
-	EKeyAlgorithm algorithm = EECC;
-	TInt accessType = CKeyInfoBase::ENeverExtractable;
-	accessType |= CKeyInfoBase::ELocal;
-	TBool native = ETrue;
-	TTime startDate = 0;
-	TTime endDate = 0;
-	HBufC8* pkcs8AttributeSet = NULL;
-	
-	HBufC* label = HBufC::NewLC(aLabel.Length());
-	label->Des().Copy(aLabel);
-
-	CKeyDetails* keyDetails = new (ELeave) CKeyDetails(keyID,usage,size,label,handle,usePolicy,managementPolicy,algorithm,accessType,native,startDate,endDate,pkcs8AttributeSet);
-	
-	CleanupStack::Pop(label);
-	CleanupStack::PushL(keyDetails);
-	keyDetails->ConstructL(aPrivateKey, aPublicKey);
-	CleanupStack::Pop(keyDetails);
-	return keyDetails;
-	}
-
-
-CKeyDetails* CKeyDetails::NewL(RStoreReadStream& aReadStream)
-    {
-    CKeyDetails* self = new (ELeave) CKeyDetails();
-    CleanupStack::PushL(self);
-    self->ConstructL(aReadStream);
-    CleanupStack::Pop(self);
-    return (self);
-    }
-
-void CKeyDetails::ConstructL( const TDesC8& aPrivateKey, const TDesC8& aPublicKey )
-	{
-	iPrivateKey = aPrivateKey.AllocL();
-	iPublicKey = aPublicKey.AllocL();   
-	}
-
-void CKeyDetails::ConstructL(RStoreReadStream& aReadStream)
-	{
-	CKeyInfoBase::ConstructL(aReadStream);
-	InternalizeL(aReadStream);
-	}
-
-void CKeyDetails::ExternalizeL(RWriteStream& aWriteStream) const
-    {		
-    CKeyInfoBase::ExternalizeL(aWriteStream);
-    
-    TInt stringLen = iPrivateKey->Length();
-    aWriteStream.WriteInt32L(stringLen);
-    TPtr8 keyPtr = iPrivateKey->Des();
-    keyPtr.SetLength(stringLen);
-    aWriteStream.WriteL(keyPtr);
-        
-    stringLen = iPublicKey->Length();
-    aWriteStream.WriteInt32L(stringLen);
-    keyPtr = iPublicKey->Des();
-    keyPtr.SetLength(stringLen);
-    aWriteStream.WriteL(keyPtr);
-    
-    }
-
-void CKeyDetails::InternalizeL(RReadStream& aReadStream)
-    {
-    TInt stringLen = aReadStream.ReadInt32L();
-    iPrivateKey = HBufC8::NewMaxL(stringLen);
-    TPtr8 privateKeyPtr((TUint8*)iPrivateKey->Ptr(), stringLen, stringLen);
-    privateKeyPtr.FillZ(stringLen);
-    aReadStream.ReadL(privateKeyPtr);
-        
-    stringLen = aReadStream.ReadInt32L();
-    iPublicKey = HBufC8::NewMaxL(stringLen);
-    TPtr8 publicKeyPtr((TUint8*)iPublicKey->Ptr(), stringLen, stringLen);
-    publicKeyPtr.FillZ(stringLen);
-    aReadStream.ReadL(publicKeyPtr);
-    
-    }
--- a/cryptoservices/filebasedcertificateandkeystores/test/thwkeystore/common/tkeydetails.h	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Defines the class which represents the structure of the key on 
-* which Crypto Token HAI internally operates. It contains the key 
-* information relevant to Crypto Token HAI.
-*
-*/
-
-
-/**
- @file
- @internalComponent
- @released
-*/
-
-#ifndef TKEYDETAILS_H
-#define TKEYDETAILS_H
-
-#include <e32base.h>
-#include <mctkeystore.h>
-
-class CKeyDetails : public CKeyInfoBase
-	{
-public:
-	static CKeyDetails* NewL(	TInt aHandle, const TDesC& aLabel, 
-								const TDesC8& aPrivateKey, const TDesC8& aPublicKey );
-	static CKeyDetails* NewL(RStoreReadStream& aReadStream);
-	~CKeyDetails();
-
-public:
-	/** Get the handle of the key. */
-	TInt Handle() const;
-	HBufC8* PrivateKey() const;
-	HBufC8* PublicKey() const;
-	void ExternalizeL(RWriteStream&) const;
-	
-private:
-	CKeyDetails(TKeyIdentifier aID,
-				TKeyUsagePKCS15 aUsage,
-				TUint aSize, 
-				HBufC* aLabel,
-				TInt aHandle,
-				const TSecurityPolicy& aUsePolicy,
-				const TSecurityPolicy& aManagementPolicy,
-				EKeyAlgorithm aAlgorithm,
-				TInt aAccessType,
-				TBool aNative,
-				TTime aStartDate,
-				TTime aEndDate,
-				HBufC8* aPKCS8AttributeSet);
-		
-	void ConstructL(const TDesC8& aPrivateKey, const TDesC8& aPublicKey );
-	void ConstructL( RStoreReadStream& aReadStream);
-	CKeyDetails();
-	void InternalizeL(RReadStream& aReadStream);
-	
-private:
-	HBufC8* iPrivateKey;
-	HBufC8* iPublicKey;
-	};
-
-#endif // TKEYDETAILS_H
Binary file cryptoservices/filebasedcertificateandkeystores/test/tkeystore/data/hwkeys.dat has changed
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authenticate_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,164 +0,0 @@
-[SEC-AUTHENTICATE_USEAUTH-0001-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-003]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-004]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-		<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-005]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-006]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>21</freshness>
-
-	<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-007]
-
-<actionbody>
-
-	<authmode>get</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<expectedexpression>medium</expectedexpression>
-
-	<expectedfreshness>21</expectedfreshness>
-
-	<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-008]
-
-<actionbody>
-
-	<keylabel>cheeku</keylabel>
-
-	<policy>
-
-	<secureid>0x101FFFFF</secureid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-	<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-009]
-
-<actionbody>
-
-	<keylabel>cheeku</keylabel>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-	<authenticate>1</authenticate>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-010]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-AUTHENTICATE_USEAUTH-0001-012]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authenticate_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,90 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-AUTHENTICATE_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-AUTHENTICATE_USEAUTH-0001
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//!                           Adding a key
-
-//!                           //////////////////////////////////////////////////////////////////////////////////
-
-//!                           The action name now bears, when relevant, the TEST ID which will help map the
-
-//!                           resulting log to the DLRs, a mapping of these (TEST IDs to REQ number) can be found in
-
-//!                           "V:\Dev\GT\GT 0140 Security\Test and Integration\Test Specifications\DLR mappings\keystore.xls"
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           3) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           4) 1.0.0.1.1,List all keys (TEST ID: INC103084-KEY001)
-
-//!                           5) 1.0.0.2,Get it again
-
-//!                           6) Set a new authentication policy for a key with which the user is not registered
-
-//!                           7) Gets authentication policy for a key
-
-//!                           8) 6.2.1, Set cheeku's use policy based on SID and capabilities
-
-//!                           9) 6.2.7.4, Set cheeku's management policy based on just capabilities
-
-//!                           10) 1.4.4.999, Delete everything
-
-//!                           11) 1.4.999.1,Closing key store
-
-//!                           12) 1.4.999.2, Sleep 5 seconds
-
-//!                           13) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-003
-
-RUN_TEST_STEP                 -1    CTestHandler        listallkeys            authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-005
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-006
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        setusepolicy           authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-008
-
-RUN_TEST_STEP                 -1    CTestHandler        setmanagementpolicy    authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-009
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-010
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  authenticate_useauth.ini   SEC-AUTHENTICATE_USEAUTH-0001-012
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-AUTHENTICATE_USEAUTH-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authobjects_v2_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2872 +0,0 @@
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-1-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-005]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-006]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>tomato</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-007]
-
-<actionbody>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>tomato</foundkey>
-
-</actionbody>
-
-
-
-
-
-
-
-
-
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-3-001]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<secureid>0x101F7E95</secureid>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-3-002]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<secureid>0x101F7E95</secureid>
-
-		</policy>
-
-</actionresult>
-
-
-
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-001]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<policy>
-
-	<secureid>0x101FFFFF</secureid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-002]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<secureid>0x101FFFFF</secureid>
-
-			<capability>DRM</capability>
-
-			<capability>ReadUserData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-003]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<policy>
-
-	<vendorid>0x70000007</vendorid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-004]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<vendorid>0x70000007</vendorid>
-
-			<capability>DRM</capability>
-
-			<capability>ReadUserData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-005]
-
-<actionbody>
-
-	<keylabel>tomato</keylabel>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	<capability>ReadDeviceData</capability>
-
-	<capability>WriteDeviceData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-006]
-
-<actionbody>
-
-	<keylabel>tomato</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<capability>DRM</capability>
-
-			<capability>ReadUserData</capability>
-
-			<capability>WriteUserData</capability>
-
-			<capability>ReadDeviceData</capability>
-
-			<capability>WriteDeviceData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-007]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	<capability>NetworkControl</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-008]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<policy>
-
-	<secureid>0x101F7E96</secureid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-009]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<policy>
-
-	<vendorid>0x70000002</vendorid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-010]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-011]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<capability>DRM</capability>
-
-			<capability>ReadUserData</capability>
-
-			<capability>WriteUserData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-012]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<policy>
-
-	<secureid>0x101F7E95</secureid>
-
-	<capability>ReadUserData</capability>
-
-	<capability>DRM</capability>
-
-	<capability>ReadDeviceData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-013]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<secureid>0x101F7E95</secureid>
-
-			<capability>ReadUserData</capability>
-
-			<capability>DRM</capability>
-
-			<capability>ReadDeviceData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-014]
-
-<actionbody>
-
-	<keylabel>tomato</keylabel>
-
-	<policy>
-
-	<vendorid>0x70000001</vendorid>
-
-	<capability>ReadUserData</capability>
-
-	<capability>DRM</capability>
-
-	<capability>WriteDeviceData</capability>
-
-	</policy>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-015]
-
-<actionbody>
-
-	<keylabel>tomato</keylabel>
-
-</actionbody>
-
-<actionresult>
-
-	<policy>
-
-			<vendorid>0x70000001</vendorid>
-
-			<capability>ReadUserData</capability>
-
-			<capability>DRM</capability>
-
-			<capability>WriteDeviceData</capability>
-
-		</policy>
-
-</actionresult>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-001]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<secureid>0x101FFFFF</secureid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Sign</actionname>
-
-		<actiontype>sign</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<open>RSA</open>
-
-			<text>This is text of 20 .</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Decrypt</actionname>
-
-		<actiontype>decrypt</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<text>Ook!</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</passactions>
-
-
-
-	<failactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Sign</actionname>
-
-		<actiontype>sign</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<open>RSA</open>
-
-			<text>This is text of 20 .</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Decrypt</actionname>
-
-		<actiontype>decrypt</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<text>Ook!</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>5, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-002]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<vendorid>0x70000007</vendorid>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Sign</actionname>
-
-		<actiontype>sign</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<open>DSA</open>
-
-			<text>This is text of 20 .</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</passactions>
-
-
-
-	<failactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Sign</actionname>
-
-		<actiontype>sign</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<open>DSA</open>
-
-			<text>This is text of 20 .</text>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>4, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-003]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	<capability>ReadDeviceData</capability>
-
-	<capability>WriteDeviceData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>DH</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>2, Test derive</actionname>
-
-		<actiontype>derive</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-			<g>02</g>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</passactions>
-
-
-
-	<failactions>
-
-	<action>
-
-		<actionname>2, Get key info</actionname>
-
-		<actiontype>getkeyinfo</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keyalgorithm>DH</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keyaccesstype>Local</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>2, Test derive</actionname>
-
-		<actiontype>derive</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-			<g>02</g>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>3, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-004]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-	
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<capability>DRM</capability>
-
-	<capability>ReadUserData</capability>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-
-
-	<action>
-
-		<actionname>1, Export</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_banana.der</ExportFile>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>banana</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<encrypted>0</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>2, Export encrypted</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_encrypted_banana.der</ExportFile>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>banana</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<encrypted>1</encrypted>
-
-			<passphrase>export clanger</passphrase>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<secureid>0x101FFFFF</secureid>
-
-				<capability>DRM</capability>
-
-				<capability>ReadUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>5, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>6, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>7, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>8, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>9, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<deletecount>1</deletecount>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</passactions>
-
-
-
-	<failactions>
-
-
-
-	<action>
-
-		<actionname>1, Export</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_banana.der</ExportFile>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>banana</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<encrypted>0</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>2, Export encrypted</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_encrypted_banana.der</ExportFile>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>banana</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<encrypted>1</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>5, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>7, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>banana</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>4, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-005]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<secureid>0x101F7E95</secureid>
-
-	<capability>ReadUserData</capability>
-
-	<capability>DRM</capability>
-
-	<capability>ReadDeviceData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-
-
-	<action>
-
-		<actionname>2, Export</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_mango.der</ExportFile>
-
-			<keyusage>DSAUsage</keyusage>
-
-			<keylabel>mango</keylabel>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<encrypted>0</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Export encrypted</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_encrypted_mango.der</ExportFile>
-
-			<keyusage>DSAUsage</keyusage>
-
-			<keylabel>mango</keylabel>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<encrypted>1</encrypted>	
-
-			<passphrase>export clanger</passphrase>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<vendorid>0x70000007</vendorid>
-
-				<capability>DRM</capability>
-
-				<capability>ReadUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>5, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>6, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>7, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<secureid>0x101F7E95</secureid>
-
-				<capability>ReadUserData</capability>
-
-				<capability>DRM</capability>
-
-				<capability>ReadDeviceData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>8, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>ReadDeviceData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>9, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>ReadDeviceData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>10, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<deletecount>1</deletecount>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</passactions>
-
-
-
-	<failactions>
-
-
-
-	<action>
-
-		<actionname>2, Export</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_mango.der</ExportFile>
-
-			<keyusage>DSAUsage</keyusage>
-
-			<keylabel>mango</keylabel>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<encrypted>0</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Export encrypted</actionname>
-
-		<actiontype>exportkey</actiontype>
-
-		<actionbody>
-
-			<ExportFile>exported_encrypted_mango.der</ExportFile>
-
-			<keyusage>DSAUsage</keyusage>
-
-			<keylabel>mango</keylabel>
-
-			<keyalgorithm>DSA</keyalgorithm>
-
-			<encrypted>1</encrypted>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>5, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>ReadDeviceData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>6, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>mango</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>11, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-006]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<vendorid>0x70000001</vendorid>
-
-	<capability>ReadUserData</capability>
-
-	<capability>DRM</capability>
-
-	<capability>WriteDeviceData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store in manager mode</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-
-
-	<action>
-
-		<actionname>2, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-				<capability>ReadDeviceData</capability>
-
-				<capability>WriteDeviceData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Check use policy</actionname>
-
-		<actiontype>getusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>5, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<vendorid>0x70000001</vendorid>
-
-				<capability>ReadUserData</capability>
-
-				<capability>DRM</capability>
-
-				<capability>WriteDeviceData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>6, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>WriteDeviceData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>7, Check management policy</actionname>
-
-		<actiontype>getmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>WriteDeviceData</capability>
-
-			</policy>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>8, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<deletecount>1</deletecount>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</passactions>
-
-
-
-	<failactions>
-
-
-
-	<action>
-
-		<actionname>2, Set use policy</actionname>
-
-		<actiontype>setusepolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<policy>
-
-				<capability>ReadUserData</capability>
-
-				<capability>WriteUserData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Set management policy</actionname>
-
-		<actiontype>setmanagementpolicy</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-			<policy>
-
-				<capability>DRM</capability>
-
-				<capability>WriteDeviceData</capability>
-
-			</policy>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>4, Delete key</actionname>
-
-		<actiontype>deletekeys</actiontype>
-
-		<actionbody>
-
-			<keylabel>tomato</keylabel>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>9, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-6-001]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<capability>WriteUserData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-	<action>
-
-		<actionname>2, Create key</actionname>
-
-		<actiontype>addkey</actiontype>
-
-		<actionbody>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keylabel>raspberry</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keystore>0</keystore>
-
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Import key</actionname>
-
-		<actiontype>importkey</actiontype>
-
-		<actionbody>
-
-			<ImportData>pkcs8rsa.001</ImportData>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>blueberry</keylabel>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</passactions>
-
-
-
-	<failactions>
-
-	<action>
-
-		<actionname>2, Create key</actionname>
-
-		<actiontype>addkey</actiontype>
-
-		<actionbody>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keysize>512</keysize>
-
-			<keylabel>raspberry</keylabel>
-
-			<keyalgorithm>RSA</keyalgorithm>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-			<keystore>0</keystore>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-
-
-	<action>
-
-		<actionname>3, Import key</actionname>
-
-		<actiontype>importkey</actiontype>
-
-		<actionbody>
-
-			<ImportData>pkcs8rsa.001</ImportData>
-
-			<keyusage>allusagesbutNR</keyusage>
-
-			<keylabel>blueberry</keylabel>
-
-			<keyaccesstype>Extractable</keyaccesstype>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>5, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-6-002]
-
-<actionbody>
-
-	<testexe>t_keystore.exe</testexe>
-
-	<excludedcapabilities>
-
-	<capability>TCB</capability>
-
-	</excludedcapabilities>
-
-	<policy>
-
-	<capability>ReadUserData</capability>
-
-	</policy>
-
-
-
-	<preactions>
-
-	<action>
-
-		<actionname>1, Open key store</actionname>
-
-		<actiontype>init</actiontype>
-
-		<actionbody>
-
-			<mode>manager</mode>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</preactions>
-
-
-
-	<passactions>
-
-	<action>
-
-		<actionname>2, List keys</actionname>
-
-		<actiontype>listkeys</actiontype>
-
-		<actionbody>
-
-			<foundkey>raspberry</foundkey>
-
-			<foundkey>blueberry</foundkey>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</passactions>
-
-
-
-	<failactions>
-
-	<action>
-
-		<actionname>2, List keys</actionname>
-
-		<actiontype>listkeys</actiontype>
-
-		<actionbody>
-
-		</actionbody>
-
-		<actionresult>
-
-			<return>KErrPermissionDenied</return>
-
-		</actionresult>
-
-	</action>
-
-	</failactions>
-
-
-
-	<postactions>
-
-	<action>
-
-		<actionname>4, Close key store</actionname>
-
-		<actiontype>delete</actiontype>
-
-		<actionbody></actionbody>
-
-		<actionresult>
-
-			<return>KErrNone</return>
-
-		</actionresult>
-
-	</action>
-
-	</postactions>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-001]
-
-<actionbody>
-
-	<foundkey>raspberry</foundkey>
-
-	<foundkey>blueberry</foundkey>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-002]
-
-<actionbody>
-
-	<deletecount>2</deletecount>
-
-</actionbody>
-
-
-
-[SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-004]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/authobjects_v2_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,310 +0,0 @@
-/*
-* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Library to add s32strm support for IPC (ie. stream via multiple IPC read/writes instead of
-* copying to a buffer and streaming to/from there.
-*
-*/
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0001
-
-//! @SYMTestCaseDesc          Script 2: Test authentication, paspphrase caching, etc
-
-//!                           
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           0. Initialisation
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           
-
-//!                           First we delete the keystore data file, so that we know we are setting the
-
-//!                           passphrase with our first key add operation.
-
-//!                           Then we set up some keys for the rest of the test script to use:
-
-//!                           
-
-//!                           Key:     Type:
-
-//!                           banana	RSA
-
-//!                           mango	DSA
-
-//!                           tomato	DH
-
-//!                           
-
-//!                           test passphrase timeout affects all keys, and all processes
-
-//! @SYMTestActions           1) 0.1, Delete keystore data file
-
-//!                           2) 0.2, Opening key store in manager mode
-
-//!                           3) 0.3 Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   authobjects_useauth.ini	SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-1-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0002
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           1. Test passphrase caching
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           
-
-//!                           1.1 Test adding a key leaves it open and with default timeout of 30 seconds
-
-//! @SYMTestActions           1) 1.1.1, Add key banana
-
-//!                           5) 1.1.5, Add key mango
-
-//!                           6) 1.1.6, Add key tomato
-
-//!                           7) 1.1.7, Check everything added ok
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-005
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-006
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-2-007
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0002
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0003
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           6. Test security policies
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           
-
-//!                           6.1 Test default policy is to police based on SID of the creator
-
-//! @SYMTestActions           1) 6.1.1, Get default use policy
-
-//!                           2) 6.1.2, Get default management policy
-
-RUN_TEST_STEP                 -1    CTestHandler        getusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-3-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-3-002
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0003
-
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0004
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0004
-
-//! @SYMTestCaseDesc          6.2 Test setting policies for the keys
-
-//! @SYMTestActions           1) 6.2.1, Set banana's use policy based on SID and capabilities
-
-//!                           2) 6.2.2, Check banana's use policy set correctly
-
-//!                           3) 6.2.3, Set mango's use policy based on VID and capabilities
-
-//!                           4) 6.2.4, Check mango's use policy set correctly
-
-//!                           5) 6.2.5, Set tomato's use policy based on just capabilities
-
-//!                           6) 6.2.6, Check tomato's use policy set correctly
-
-//!                           7) 6.2.7.1, Test we can't set management policy that doesn't include the calling process
-
-//!                           8) 6.2.7.2, Test we can't set management policy that doesn't include the calling process
-
-//!                           9) 6.2.7.3, Test we can't set management policy that doesn't include the calling process
-
-//!                           10) 6.2.7.4, Set banana's management policy based on just capabilities
-
-//!                           11) 6.2.8, Check banana's management policy set correctly
-
-//!                           12) 6.2.9, Set mango's management policy based on SID and capabilities
-
-//!                           13) 6.2.10, Check mango's management policy set correctly
-
-//!                           14) 6.2.11, Set tomato's management policy based on VID and capabilities
-
-//!                           15) 6.2.12, Check tomato's management policy set correctly
-
-RUN_TEST_STEP                 -1    CTestHandler        setusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-002
-
-RUN_TEST_STEP                 -1    CTestHandler        setusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-003
-
-RUN_TEST_STEP                 -1    CTestHandler        getusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-004
-
-RUN_TEST_STEP                 -1    CTestHandler        setusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-005
-
-RUN_TEST_STEP                 -1    CTestHandler        getusepolicy           authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-006
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-007
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-008
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-009
-
-RUN_TEST_STEP                 -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-010
-
-RUN_TEST_STEP                 -1    CTestHandler        getmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-011
-
-RUN_TEST_STEP                 -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-012
-
-RUN_TEST_STEP                 -1    CTestHandler        getmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-013
-
-RUN_TEST_STEP                 -1    CTestHandler        setmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-014
-
-RUN_TEST_STEP                 -1    CTestHandler        getmanagementpolicy    authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-4-015
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0004
-
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0005
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0005
-
-//! @SYMTestCaseDesc          6.3 Test enforcement of security policies
-
-//! @SYMTestActions           1) 6.3.1, Test use policy enforcement for SID and capabilities
-
-//!                           2) 6.3.2, Test use policy enforcement for VID and capabilities
-
-//!                           3) 6.3.3, Test use policy enforcement for just capabilities
-
-//!                           4) 6.3.4, Test banana's management policy enforcement (just capabilities)
-
-//!                           5) 6.3.5, Test mango's management policy enforcement (SID and capabilities)
-
-//!                           6) 6.3.6, Test tomato's management policy enforcement (VID and capabilities)
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-001
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-002
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-003
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-004
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-005
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-5-006
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0005
-
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0006
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0006
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           7. Test policing of other APIs
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           
-
-//!                           7.1 Test set timeout is policed with WriteDeviceData capability
-
-//! @SYMTestActions           1) 7.1, Test policing of set timeout
-
-//!                           2) 7.2, Test policing of create and import by WriteUserData
-
-//!                           3) 7.3, Test policing of list by ReadUserData
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-6-001
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-6-002
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0006
-
-
-
-
-
-START_TESTCASE                SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0007
-
-//! @SYMTestCaseID            SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0007
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           Cleanup
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 8.0, List keys
-
-//!                           2) 8.1, Delete keys
-
-//!                           3) 8.2, Close key store
-
-//!                           4) 8.3, Sleep 5 seconds
-
-//!                           5) 8.4, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-001
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  authobjects_useauth.ini   SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-7-004
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-FILETOKENS-AUTHOBJECTS_V2_USEAUTH-0007
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/epoc_keystoreusesauthserver.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-PlatSecDiagnostics ON
-PlatSecEnforcement ON 
-PlatSecProcessIsolation ON 
-PlatSecEnforceSysBin ON
-
-_epoc_drive_d \epoc32\drive_d 
-_epoc_drive_e \epoc32\drive_e 
-_epoc_drive_r \epoc32\drive_r 
-PlatSecDisabledCaps SwEvent 
-JustInTime none 
-KKeyStoreUseAuthServer=1
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/replace_epoc_ini.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-copy /Y \epoc32\data\epoc.ini \epoc32\data\backup_epoc.ini
-del /f /q \epoc32\data\epoc.ini
-copy /Y \epoc32\winscw\c\tkeystore\scripts\batchfiles\epoc_keystoreusesauthserver.ini \epoc32\data\epoc.ini
-
-
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/restore_epoc_ini.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-del /f /q \epoc32\data\epoc.ini
-copy /Y \epoc32\data\backup_epoc.ini \epoc32\data\epoc.ini
-del /f /q \epoc32\data\backup_epoc.ini
-
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_copykeys.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-call copy /Y \epoc32\winscw\c\private\101f72a6\keys.dat \epoc32\winscw\c\ttesttools\data\keys_old.dat
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_post.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-call \epoc32\winscw\c\tkeystore\scripts\batchfiles\replace_epoc_ini.bat
-call del /f /q \epoc32\data\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\udeb\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\urel\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\winscw\c\private\101f72a6\keys.dat
-call del /f /q \epoc32\private\101f72a6\keys.dat
-call copy /Y \epoc32\winscw\c\ttesttools\data\newkeys.dat \epoc32\winscw\c\private\101f72a6\keys.dat
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_migrate_pre.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-call \epoc32\winscw\c\tkeystore\scripts\batchfiles\restore_epoc_ini.bat
-call del /f /q \epoc32\data\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\udeb\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\urel\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\winscw\c\private\101f72a6\keys.dat
-call del /f /q \epoc32\private\101f72a6\keys.dat
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_post.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,31 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-call del /f /q \epoc32\winscw\c\t_secdlg_in.dat
-call copy /Y \epoc32\data\z\private\101f72a6\keys_backup.dat \epoc32\data\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\data\z\private\101f72a6\keys_backup.dat
-call copy /Y \epoc32\release\winscw\udeb\z\private\101f72a6\keys_backup.dat \epoc32\release\winscw\udeb\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\udeb\z\private\101f72a6\keys_backup.dat
-call copy /Y \epoc32\release\winscw\urel\z\private\101f72a6\keys_backup.dat \epoc32\release\winscw\urel\z\private\101f72a6\keys.dat
-call del /f /q \epoc32\release\winscw\urel\z\private\101f72a6\keys_backup.dat
-call copy /Y \epoc32\winscw\c\private\101f72a6\keys_backup.dat \epoc32\winscw\c\private\101f72a6\keys.dat
-call del /f /q \epoc32\winscw\c\private\101f72a6\keys_backup.dat
-call copy /Y \epoc32\private\101f72a6\keys_backup.dat \epoc32\private\101f72a6\keys.dat 
-call del /f /q \epoc32\private\101f72a6\keys_backup.dat
-
-call \epoc32\winscw\c\tkeystore\scripts\batchfiles\restore_epoc_ini.bat
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/batchfiles/tkeystore_useauthserver_pre.bat	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-@rem
-@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-@rem All rights reserved.
-@rem This component and the accompanying materials are made available
-@rem under the terms of the License "Eclipse Public License v1.0"
-@rem which accompanies this distribution, and is available
-@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
-@rem
-@rem Initial Contributors:
-@rem Nokia Corporation - initial contribution.
-@rem
-@rem Contributors:
-@rem
-@rem Description: 
-@rem
-
-call %SECURITYSOURCEDIR%\testframework\test\autotesting\RemoveSecDlg.bat
-call copy /Y \epoc32\data\z\private\101f72a6\keys.dat \epoc32\data\z\private\101f72a6\keys_backup.dat
-call del /f /q \epoc32\data\z\private\101f72a6\keys.dat
-call copy /Y \epoc32\release\winscw\udeb\z\private\101f72a6\keys.dat \epoc32\release\winscw\udeb\z\private\101f72a6\keys_backup.dat
-call del /f /q \epoc32\release\winscw\udeb\z\private\101f72a6\keys.dat
-call copy /Y \epoc32\release\winscw\urel\z\private\101f72a6\keys.dat \epoc32\release\winscw\urel\z\private\101f72a6\keys_backup.dat
-call del /f /q \epoc32\release\winscw\urel\z\private\101f72a6\keys.dat
-call copy /Y \epoc32\winscw\c\private\101f72a6\keys.dat \epoc32\winscw\c\private\101f72a6\keys_backup.dat
-call del /f /q \epoc32\winscw\c\private\101f72a6\keys.dat
-call copy /Y \epoc32\private\101f72a6\keys.dat \epoc32\private\101f72a6\keys_backup.dat
-call del /f /q \epoc32\private\101f72a6\keys.dat
-
-call \epoc32\winscw\c\tkeystore\scripts\batchfiles\replace_epoc_ini.bat
-
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/cancel_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1242 +0,0 @@
-[SEC-CANCEL_USEAUTH-0002-001]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0002-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-001]
-
-<actionbody>
-
-	<foundkey>banana</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-003]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-004]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-005]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-006]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0003-007]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0004-001]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-001]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>bigbanana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-004]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-005]
-
-<actionbody>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-006]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-007]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-008]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-009]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-010]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-	<g>02</g>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-011]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>jackfruit</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-012]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>custard apple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-013]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keyusage>NR</keyusage>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>grape</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-014]
-
-<actionbody>
-
-   		<foundkey>bigbanana</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>	
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-015]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-   		<foundkey>carrot</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-016]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-   		<foundkey>bigbanana</foundkey>
-
-   		<foundkey>carrot</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-017]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-   		<foundkey>jackfruit</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>	
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-018]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>2</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-019]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-020]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-021]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-022]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-023]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>banana</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-024]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-025]
-
-<actionbody>
-
-	<deletecount>5</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0005-026]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0006-001]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa4DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted purple plum</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>1</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0006-002]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>*IMPORTED* encrypted purple plum</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0006-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-001]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-002]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-003]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-004]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8dsa_0.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-005]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8rsa.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0007-006]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8dsa.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-002]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<foundkey>banana</foundkey>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-003]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<timeout>15</timeout>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-004]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<timeout>15</timeout>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-005]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-006]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<timeout>15</timeout>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-007]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0008-008]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-CANCEL_USEAUTH-0009-003]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/cancel_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,382 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) 1, Delete keystore data file
-
-//!                           2) None
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        startcancellation   
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0002
-
-//! @SYMTestCaseDesc          Start of testing
-
-//! @SYMTestActions           1) 1.2,Opening key store in manager mode
-
-//!                           2) 1.2.0.1 NOT A TEST Delete everything
-
-//!                           3) 2,Add a key
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0002-001
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0002-003
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0003
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 3: List the keys, should only find "Banana"
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 3 List everything
-
-//!                           2) 3.1,Get it again
-
-//!                           3) 3.2,Open it
-
-//!                           4) 3.3,Open a banana for decrypt
-
-//!                           5) 3.4, Sign with a banana, 20 char text
-
-//!                           6) 3.5, Sign digest with a banana
-
-//!                           7) 3.6, Decrypt with a banana
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-002
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-003
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-005
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-006
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                cancel_useauth.ini   SEC-CANCEL_USEAUTH-0003-007
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0003
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0004
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0004
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 4: Delete "Banana" key
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 4. Delete the key
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0004-001
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0004
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0005
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0005
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 5: List the keys, should find nothing
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 5 List everything
-
-//!                           2) 6,Add a larger key
-
-//!                           3) 7,Add a key with a very long label
-
-//!                           4) 8,Get that key again
-
-//!                           5) 9,Open that key again
-
-//!                           6) 1.1.5.6,Add a key
-
-//!                           7) 1.1.5.6.1, Sign with a carrot, 20 char text
-
-//!                           8) 1.1.5.7,Add a key
-
-//!                           9) 1.1.5.7.1,Open it
-
-//!                           10) 1.1.5.7.2, Test derive
-
-//!                           11) 10,Add a key with illegal usage
-
-//!                           12) 11,Add a key with illegal usage
-
-//!                           13) 12,Add a key with illegal usage
-
-//!                           14) 13 List everything (including illegal usage keys)
-
-//!                           15) 14 List DSA keys (including illegal usage keys)
-
-//!                           16) 15 List Sign-usage keys (including illegal usage keys)
-
-//!                           17) 16 List 'All usages' keys (including illegal usage keys)
-
-//!                           18) 17, Delete RSA keys
-
-//!                           19) 18 List RSA keys
-
-//!                           20) 19 List everything (including illegal usage keys)
-
-//!                           21) 20,Add a key that was previously deleted
-
-//!                           22) 21 List RSA keys
-
-//!                           23) 22 List everything (including illegal usage keys)
-
-//!                           24) 23, Delete it again
-
-//!                           25) 24, Delete everything
-
-//!                           26) 25 List everything
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-003
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-004
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-005
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-006
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-008
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-009
-
-RUN_TEST_STEP                 -1    CTestHandler        derive                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-010
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-011
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-012
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-013
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-014
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-015
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-016
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-017
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-018
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-019
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-020
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-021
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-022
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-023
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-024
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-025
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0005-026
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0005
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0006
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0006
-
-//! @SYMTestCaseDesc          Test importing keys
-
-//! @SYMTestActions           1) 26, Import a PKCS5 encrypted DSA key
-
-//!                           2) 27, List DSA keys (TEST ID: GT0140-KEY001)
-
-//!                           3) 28, Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0006-001
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0006-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0006-003
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0006
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0007
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0007
-
-//! @SYMTestCaseDesc          Test export
-
-//! @SYMTestActions           1) 1.1.1 Import a RSA key
-
-//!                           2) 1.1.5 Export a RSA key
-
-//!                           3) 1.4.1 Import a DSA key
-
-//!                           4) 1.4.6 Export a DSA key
-
-//!                           5) 1.7.6 Export a RSA key in encrypted format
-
-//!                           6) 1.9.6 Export a DSA key in encrypted format
-
-//!                           7) 1.10.0 NOT A TEST Delete everything 
-
-                    ** Basic sanity check for PKCS8 encrypted DSA key import/export **
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-001
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-002
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-003
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-004
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-005
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0007-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0007
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0008
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0008
-
-//! @SYMTestCaseDesc          Test authentication objects (snippets of authobjects.txt)
-
-//! @SYMTestActions           1) 2.1, Add a key
-
-//!                           2) 2.2, List protected objects
-
-//!                           3) 0.7.2, Set passphrase timeout to 15 seconds
-
-//!                           4) 1.1.2, Get timeout, expect 15 seconds
-
-//!                           5) 1.4.1.5, Open banana
-
-//!                           6) 1.3.1, Get time remaining, expect 15 seconds
-
-//!                           7) 1.4.2.2, Close object
-
-//!                           8) 3.8, Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-001
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        listprotectedobjects   cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-002
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        settimeout             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-003
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        gettimeout             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-004
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        authopen               cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-005
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        timeremaining          cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-006
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        authclose              cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-007
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             cancel_useauth.ini   SEC-CANCEL_USEAUTH-0008-008
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0008
-
-
-
-
-
-START_TESTCASE                SEC-CANCEL_USEAUTH-0009
-
-//! @SYMTestCaseID            SEC-CANCEL_USEAUTH-0009
-
-//! @SYMTestCaseDesc          End of testing
-
-//! @SYMTestActions           1) 29,Closing key store
-
-//!                           2) 999.1
-
-//!                           3) 999.2, Sleep 5 seconds
-
-//!                           4) 999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        stopcancellation    
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  cancel_useauth.ini   SEC-CANCEL_USEAUTH-0009-003
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-CANCEL_USEAUTH-0009
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/capability_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,313 +0,0 @@
-[SEC-CAPABILITY_USEAUTH-0001-002]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-CAPABILITY_USEAUTH-0001-003]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>additionalkey</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<authexpression>strong</authexpression>
-	<freshness>200</freshness>
-</actionbody>
-
-[SEC-CAPABILITY_USEAUTH-0002-001]
-<actionbody>
-	<testexe>t_keystore.exe</testexe>
-	<excludedcapabilities>
-	<capability>TCB</capability>
-	</excludedcapabilities>
-	<policy>
-	<capability>WriteUserData</capability>
-	</policy>
-
-	<preactions>
-	<action>
-		<actionname>1, Open key store in manager mode</actionname>
-		<actiontype>init</actiontype>
-		<actionbody>
-			<mode>manager</mode>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</preactions>
-
-	<passactions>
-	<action>
-		<actionname>Add key banana</actionname>
-		<actiontype>addkey</actiontype>
-		<actionbody>
-			<keyusage>allusagesbutNR</keyusage>
-			<keysize>512</keysize>
-			<keylabel>banana</keylabel>
-			<keyalgorithm>RSA</keyalgorithm>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<authexpression>strong</authexpression>
-			<freshness>20</freshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return> 
-		</actionresult>
-	</action>
-
-	<action>
-		<actionname>1.1.0 Import a RSA key</actionname>
-		<actiontype>importkey</actiontype>
-		<actionbody>
-			<ImportData>pkcs8rsa.001</ImportData>
-			<keyusage>allusagesbutNR</keyusage>
-			<keylabel>gm0</keylabel>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<authexpression>strong</authexpression>
-			<freshness>25</freshness>
-
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-
-
-	<action>
-		<actionname>Import a key</actionname>
-		<actiontype>importkey</actiontype>
-		<actionbody>
-			<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-			<keyusage>allusagesbutNR</keyusage>
-			<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-			<keyalgorithm>RSA</keyalgorithm>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<encrypted>1</encrypted>
-			<passphrase>import clanger</passphrase>
-			<disabledialogcheck>1</disabledialogcheck>
-			<authexpression>strong</authexpression>
-			<freshness>50</freshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-
-	
-	</passactions>
-
-	<failactions>
-	<action>
-		<actionname>Add key banana</actionname>
-		<actiontype>addkey</actiontype>
-		<actionbody>
-			<keyusage>allusagesbutNR</keyusage>
-			<keysize>512</keysize>
-			<keylabel>banana</keylabel>
-			<keyalgorithm>RSA</keyalgorithm>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<authexpression>strong</authexpression>
-			<freshness>20</freshness>
-		</actionbody>
-		<actionresult> 
-			<return>KErrPermissionDenied</return> 
-		</actionresult>
-	</action>
-
-	<action>
-		<actionname>1.1.0 Import a RSA key</actionname>
-		<actiontype>importkey</actiontype>
-		<actionbody>
-			<ImportData>pkcs8rsa.001</ImportData>
-			<keyusage>allusagesbutNR</keyusage>
-			<keylabel>gm0</keylabel>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<authexpression>strong</authexpression>
-			<freshness>25</freshness>
-
-		</actionbody>
-		<actionresult>
-			<return>KErrPermissionDenied</return>
-		</actionresult>
-	</action>
-
-
-	<action>
-		<actionname>Import a key</actionname>
-		<actiontype>importkey</actiontype>
-		<actionbody>
-			<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-			<keyusage>allusagesbutNR</keyusage>
-			<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-			<keyalgorithm>RSA</keyalgorithm>
-			<keyaccesstype>Extractable</keyaccesstype>
-			<encrypted>1</encrypted>
-			<passphrase>import clanger</passphrase>
-			<disabledialogcheck>1</disabledialogcheck>
-			<authexpression>strong</authexpression>
-			<freshness>50</freshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrPermissionDenied</return> 
-		</actionresult>
-	</action>
-	
-	</failactions>
-
-	<postactions>
-	<action>
-		<actionname>5, Close key store</actionname>
-		<actiontype>delete</actiontype>
-		<actionbody></actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</postactions>
-</actionbody>
-
-[SEC-CAPABILITY_USEAUTH-0002-002]
-<actionbody>
-	<testexe>t_keystore.exe</testexe>
-	<excludedcapabilities>
-	<capability>TCB</capability>
-	</excludedcapabilities>
-	<policy>
-	<capability>ReadUserData</capability>
-	<capability>WriteUserData</capability>
-	</policy>
-
-	<preactions>
-	<action>
-		<actionname>1, Open key store in manager mode</actionname>
-		<actiontype>init</actiontype>
-		<actionbody>
-			<mode>manager</mode>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</preactions>
-
-	<passactions>
-	
-	<action>
-		<actionname>Set a authentication policy for a key </actionname>
-		<actiontype>authenticationpolicy</actiontype>
-		<actionbody>
-			<authmode>set</authmode>
-			<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-			<authexpression>medium</authexpression>
-			<freshness>0</freshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-
-	</passactions>
-
-	<failactions>
-	<action>
-		<actionname>Set a authentication policy for a key </actionname>
-		<actiontype>authenticationpolicy</actiontype>
-		<actionbody>
-			<authmode>set</authmode>
-			<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-			<authexpression>medium</authexpression>
-			<freshness>0</freshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrPermissionDenied</return>
-		</actionresult>
-	</action>
-
-	</failactions>
-
-	<postactions>
-	<action>
-		<actionname>5, Close key store</actionname>
-		<actiontype>delete</actiontype>
-		<actionbody></actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</postactions>
-</actionbody>
-
-[SEC-CAPABILITY_USEAUTH-0002-003]
-<actionbody>
-	<testexe>t_keystore.exe</testexe>
-	<excludedcapabilities>
-	<capability>TCB</capability>
-	</excludedcapabilities>
-	<policy>
-	<capability>ReadUserData</capability>
-	</policy>
-
-	<preactions>
-	<action>
-		<actionname>1, Open key store in manager mode</actionname>
-		<actiontype>init</actiontype>
-		<actionbody>
-			<mode>manager</mode>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</preactions>
-
-	<passactions>
-	
-	<action>
-		<actionname>Try to get authentication policy for a key</actionname>
-		<actiontype>authenticationpolicy</actiontype>
-		<actionbody>
-			<authmode>get</authmode>
-			<keylabel>additionalkey</keylabel>
-			<expectedexpression>strong</expectedexpression>
-			<expectedfreshness>200</expectedfreshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-
-	</passactions>
-
-	<failactions>
-	<action>
-		<actionname>Try to get authentication policy for a key</actionname>
-		<actiontype>authenticationpolicy</actiontype>
-		<actionbody>
-			<authmode>get</authmode>
-			<keylabel>additionalkey</keylabel>
-			<expectedexpression>strong</expectedexpression>
-			<expectedfreshness>200</expectedfreshness>
-		</actionbody>
-		<actionresult>
-			<return>KErrPermissionDenied</return>
-		</actionresult>
-	</action>
-	</failactions>
-
-	<postactions>
-	<action>
-		<actionname>5, Close key store</actionname>
-		<actiontype>delete</actiontype>
-		<actionbody></actionbody>
-		<actionresult>
-			<return>KErrNone</return>
-		</actionresult>
-	</action>
-	</postactions>
-</actionbody>
-
-[SEC-CAPABILITY_USEAUTH-0003-002]
-<actionbody>
-	<seconds>5</seconds>
-</actionbody>
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/capability_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,124 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-CAPABILITY_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-CAPABILITY_USEAUTH-0001
-
-//! @SYMTestCaseDesc          Script 2: Test new apis for create, import and setting authentication policy
-
-//!                           
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           0. Initialisation
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//!                           
-
-//!                           First we delete the keystore data file, so that we know we are setting the
-
-//!                           passphrase with our first key add operation.
-
-//!                           Then we set up some keys for the rest of the test script to use:
-
-//!                           
-
-//!                           Key:     Type:
-
-//!                           banana	RSA
-
-//!                           mango	DSA
-
-//!                           tomato	DH
-
-//!                           
-
-//!                           todo
-
-//!                           test passphrase timeout affects all keys, and all processes
-
-//! @SYMTestActions           1) 0.1, Delete keystore data file
-
-//!                           2) 0.2, Opening key store in manager mode
-
-//!                           3) Add key banana
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0001-003
-
-END_TESTCASE                  SEC-CAPABILITY_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-CAPABILITY_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-CAPABILITY_USEAUTH-0002
-
-//! @SYMTestCaseDesc          1. Capability testing
-
-//! @SYMTestActions           1) 6.3.1, Test use policy enforcement for SID and capabilities
-
-//!                           2) 6.3.2, Test use policy enforcement setting authentication policy
-
-//!                           3) 6.3.2, Test use policy enforcement setting authentication policy
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0002-001
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0002-002
-
-RUN_TEST_STEP                 -1    CTestHandler        policytest             capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0002-003
-
-END_TESTCASE                  SEC-CAPABILITY_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-CAPABILITY_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-CAPABILITY_USEAUTH-0003
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           Cleanup
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 8.2, Close key store
-
-//!                           2) 8.3, Sleep 5 seconds
-
-//!                           3) 8.4, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  capability_useauth.ini   SEC-CAPABILITY_USEAUTH-0003-002
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-CAPABILITY_USEAUTH-0003
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/createoldkeystore.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-002]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-004]
-<actionbody>
-	<keyusage>Derive</keyusage>
-	<keysize>512</keysize>
-	<keylabel>dhkey</keylabel>
-	<keyalgorithm>DH</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keystore>0</keystore>
-	<passphrase>create pinkcloud</passphrase>
-</actionbody>
-
-
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-005]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>rsakey</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keystore>0</keystore>
-</actionbody>
-
-
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-006]
-<actionbody>
-	<keyusage>DSAUsage</keyusage>
-	<keysize>512</keysize>
-	<keylabel>dsakey</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-		
-		
-</actionbody>
-
-
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-007]
-<actionbody>
-	<foundkey>dhkey</foundkey>
-	<foundkey>rsakey</foundkey>
-	<foundkey>dsakey</foundkey>
-</actionbody>
-
-
-
-[SEC-FILETOKENS-CREATEOLDKEYSTORE-1-009]
-<actionbody>
-        <seconds>5</seconds>
-</actionbody>
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/createoldkeystore.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-
-START_TESTCASE               SEC-FILETOKENS-CREATEOLDKEYSTORE-1-0001
-
-//! @SYMTestCaseID           SEC-FILETOKENS-CREATEOLDKEYSTORE-1-0001
-
-//! @SYMTestCaseDesc          
-
-					///////////////////////////////////////////////////////////////////////////////
-					//	Create an old key store
-					////////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Opening key store in manager mode
-
-//!                           3) Delete default keys
-
-//!                           4) Add a DH key
-
-//!                           5) Add a RSA key
-
-//!                           6) Add a DSA key
-
-//!                           7) List all keys
-
-//!                           8) Closing key store
-
-//!                           9) Sleep 5 seconds
-
-//!                          10) Check for server heap error
-
-
-
-RUN_TEST_STEP -1 CTestHandler deletekeystoredata
- 
-RUN_TEST_STEP -1 CTestHandler init createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-002
-
-RUN_TEST_STEP -1 CTestHandler deletekeys
-
-RUN_TEST_STEP -1 CTestHandler addkey createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-004
-
-RUN_TEST_STEP -1 CTestHandler addkey createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-005
-
-RUN_TEST_STEP -1 CTestHandler addkey createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-006
-
-RUN_TEST_STEP -1 CTestHandler listallkeys createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-007
-
-RUN_TEST_STEP -1 CTestHandler delete
-
-RUN_TEST_STEP -1 CTestHandler sleep createoldkeystore.ini SEC-FILETOKENS-CREATEOLDKEYSTORE-1-009
-
-RUN_TEST_STEP -1 CTestHandler checkserverheaperror
-
-END_TESTCASE                 SEC-FILETOKENS-CREATEOLDKEYSTORE-1-0001
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/exportscript_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1142 +0,0 @@
-[SEC-EXPORTSCRIPT_USEAUTH-0001-002]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-004]
-<actionbody>
-	<ImportData>pkcs8dh.001</ImportData>
-	<keyusage>Derive</keyusage>
-	<keylabel>cheeku</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-005]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-006]
-<actionbody>
-	<ImportData>pkcs8rsa1.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-007]
-<actionbody>
-	<ImportData>pkcs8rsa2.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-008]
-<actionbody>
-	<ImportData>pkcs8rsa3.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-009]
-<actionbody>
-	<ImportData>pkcs8rsa4.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm4</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-010]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-011]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_1.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-012]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_2.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-013]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_3.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-014]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_4.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm4</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-015]
-<actionbody>
-	<ExportFile>export_public_rsa_0.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-016]
-<actionbody>
-	<ExportFile>export_public_rsa_1.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-017]
-<actionbody>
-	<ExportFile>export_public_rsa_2.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-018]
-<actionbody>
-	<ExportFile>export_public_rsa_3.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-019]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0_from_exported</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-020]
-<actionbody>
-	<ImportData>export_pkcs8rsa_1.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm1_from_exported</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-021]
-<actionbody>
-	<ImportData>export_pkcs8rsa_2.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm2_from_exported</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-022]
-<actionbody>
-	<ImportData>export_pkcs8rsa_3.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm3_from_Exported</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-023]
-<actionbody>
-	<ImportData>export_pkcs8rsa_4.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm4_from_Exported</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-024]
-<actionbody>
-	<originalfile>pkcs8rsa1.001</originalfile>
-	<newfile>export_pkcs8rsa_1.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-025]
-<actionbody>
-	<originalfile>pkcs8rsa2.001</originalfile>
-	<newfile>export_pkcs8rsa_2.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-026]
-<actionbody>
-	<originalfile>pkcs8rsa3.001</originalfile>
-	<newfile>export_pkcs8rsa_3.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-027]
-<actionbody>
-	<originalfile>pkcs8rsa4.001</originalfile>
-	<newfile>export_pkcs8rsa_4.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-028]
-<actionbody>
-	<originalfile>pkcs8rsa.001</originalfile>
-	<newfile>export_pkcs8rsa_0.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-029]
-<actionbody>
-	<originalfile>rsapub.txt</originalfile>
-	<newfile>export_public_rsa_0.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-030]
-<actionbody>
-	<originalfile>rsapub1.txt</originalfile>
-	<newfile>export_public_rsa_1.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-031]
-<actionbody>
-	<originalfile>rsapub2.txt</originalfile>
-	<newfile>export_public_rsa_2.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-032]
-<actionbody>
-	<originalfile>rsapub3.txt</originalfile>
-	<newfile>export_public_rsa_3.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-034]
-<actionbody>
-	<ImportData>pkcs8dsa.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-035]
-<actionbody>
-	<ImportData>pkcs8dsa1.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-036]
-<actionbody>
-	<ImportData>pkcs8dsa2.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-037]
-<actionbody>
-	<ImportData>pkcs8dsa3.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-038]
-<actionbody>
-	<ImportData>pkcs8dsa4.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm4</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-039]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_0.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-040]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_1.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-041]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_2.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-042]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_3.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-043]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_4.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm4</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-044]
-<actionbody>
-	<ExportFile>export_public_dsa_0.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-045]
-<actionbody>
-	<ExportFile>export_public_dsa_1.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-046]
-<actionbody>
-	<ExportFile>export_public_dsa_2.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-047]
-<actionbody>
-	<ExportFile>export_public_dsa_3.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-048]
-<actionbody>
-	<ExportFile>export_public_dsa_4.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm4</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-049]
-<actionbody>
-	<originalfile>dsapub.txt</originalfile>
-	<newfile>export_public_dsa_0.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-050]
-<actionbody>
-	<originalfile>dsapub1.txt</originalfile>
-	<newfile>export_public_dsa_1.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-051]
-<actionbody>
-	<originalfile>dsapub2.txt</originalfile>
-	<newfile>export_public_dsa_2.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-052]
-<actionbody>
-	<originalfile>dsapub3.txt</originalfile>
-	<newfile>export_public_dsa_3.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-053]
-<actionbody>
-	<originalfile>dsapub4.txt</originalfile>
-	<newfile>export_public_dsa_4.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-054]
-<actionbody>
-	<ImportData>export_pkcs8dsa_0.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm0_from_exported</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-055]
-<actionbody>
-	<ImportData>export_pkcs8dsa_1.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1_from_exported</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-056]
-<actionbody>
-	<ImportData>export_pkcs8dsa_2.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm2_from_exported</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-057]
-<actionbody>
-	<ImportData>export_pkcs8dsa_3.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm3_from_Exported</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-058]
-<actionbody>
-	<ImportData>export_pkcs8dsa_4.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm4_from_exported</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-059]
-<actionbody>
-	<originalfile>pkcs8dsa.001</originalfile>
-	<newfile>export_pkcs8dsa_0.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-060]
-<actionbody>
-	<originalfile>pkcs8dsa1.001</originalfile>
-	<newfile>export_pkcs8dsa_1.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-061]
-<actionbody>
-	<originalfile>pkcs8dsa2.001</originalfile>
-	<newfile>export_pkcs8dsa_2.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-062]
-<actionbody>
-	<originalfile>pkcs8dsa3.001</originalfile>
-	<newfile>export_pkcs8dsa_3.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-063]
-<actionbody>
-	<originalfile>pkcs8dsa4.001</originalfile>
-	<newfile>export_pkcs8dsa_4.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-065]
-<actionbody>
-	<ImportData>encryptPK8rsaDER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-066]
-<actionbody>
-	<ImportData>encryptPK8rsa1DER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA1</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-067]
-<actionbody>
-	<ImportData>encryptPK8rsa2DER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA2</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-068]
-<actionbody>
-	<ImportData>encryptPK8rsa3DER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA3</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-069]
-<actionbody>
-	<ImportData>encryptPK8rsa4DER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA4</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-070]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-071]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa1.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA1</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-072]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa2.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA2</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-073]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa3.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA3</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-074]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa4.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA4</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-075]
-<actionbody>
-	<ImportData>pkcs8rsa1_3des.der</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA_3DES</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-077]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-078]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8rsa.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-080]
-<actionbody>
-	<ImportData>encrypted_export_pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-081]
-<actionbody>
-	<ExportFile>exportFromImport_pkcs8rsa.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-082]
-<actionbody>
-	<originalfile>pkcs8rsa.001</originalfile>
-	<newfile>exportFromImport_pkcs8rsa.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-084]
-<actionbody>
-	<ImportData>encryptPK8dsaDER.txt</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-085]
-<actionbody>
-	<ImportData>encryptPK8dsa1DER.txt</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA1</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-086]
-<actionbody>
-	<ImportData>encryptPK8dsa2DER.txt</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-087]
-<actionbody>
-	<ImportData>encryptPK8dsa3DER.txt</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA3</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-088]
-<actionbody>
-	<ImportData>encryptPK8dsa4DER.txt</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA4</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-089]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-090]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa1.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA1</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-091]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa2.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-092]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa3.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA3</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-093]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa4.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA4</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-094]
-<actionbody>
-	<ExportFile>export_public_dsa_0.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-096]
-<actionbody>
-	<ImportData>pkcs8dsa.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-097]
-<actionbody>
-	<ExportFile>encrypted_export_pkcs8dsa.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>1</encrypted>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-099]
-<actionbody>
-	<ImportData>encrypted_export_pkcs8dsa.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0_encrypted</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-100]
-<actionbody>
-	<ExportFile>exportFromImport_pkcs8dsa.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA0_encrypted</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-101]
-<actionbody>
-	<originalfile>pkcs8dsa.001</originalfile>
-	<newfile>exportFromImport_pkcs8dsa.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-103]
-<actionbody>
-	<ImportData>pkcs8rsa1_3des.der</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA_3DES</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-104]
-<actionbody>
-	<ImportData>pkcs8rsa1_rc2.der</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA_RC2</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-105]
-<actionbody>
-	<ImportData>pkcs8rsa1_rc4.der</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA_RC4</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-106]
-<actionbody>
-	<ImportData>pkcs8dsa1_des3_nsdh.der</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA_nsdb</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-107]
-<actionbody>
-	<ImportData>pkcs8rsa1_des3_nooctet.der</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA_nooct</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-108]
-<actionbody>
-	<ImportData>pkcs8dsa1_des3_embed.der</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gmDSA_embed</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-110]
-<actionbody>
-	<ImportData>pkcs8rsa_attr.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0_attr</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-111]
-<actionbody>
-	<ImportData>pkcs8dsa_attr.001</ImportData>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1_attr</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-112]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_attr.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0_attr</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-113]
-<actionbody>
-	<ExportFile>export_pkcs8dsa_attr.001</ExportFile>
-	<keyusage>DSAUsage</keyusage>
-	<keylabel>gm1_attr</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-114]
-<actionbody>
-	<originalfile>pkcs8rsa_attr.001</originalfile>
-	<newfile>export_pkcs8rsa_attr.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-115]
-<actionbody>
-	<originalfile>pkcs8dsa_attr.001</originalfile>
-	<newfile>export_pkcs8dsa_attr.001</newfile>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-117]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-118]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_3DES_CBC.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipher3DES_CBC</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-119]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_DES_CBC.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipherDES_CBC</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-120]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_RC2_CBC_40.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipherRC2_CBC_40</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-121]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_RC2_CBC_128.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipherRC2_CBC_128</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-122]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_RC2_CBC_40_16.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipherRC2_CBC_40_16</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-123]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0_RC2_CBC_128_16.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-                <cipher>ECipherRC2_CBC_128_16</cipher>
-
-	<passphrase>export clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-124]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_RC2_CBC_40.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_RC2_CBC_40</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-125]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_RC2_CBC_128.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_RC2_CBC_128</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-126]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_RC2_CBC_40_16.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_RC2_CBC_40_16</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-127]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_RC2_CBC_128_16.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_RC2_CBC_128_16</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-128]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_DES_CBC.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_DES_CBC.001</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-129]
-<actionbody>
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<encrypted>1</encrypted>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-131]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyaccesstype>Sensitive</keyaccesstype>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-132]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keyaccesstype>Sensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-133]
-<actionbody>
-	<ImportData>encryptPK8rsaDER.txt</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gmRSA0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Sensitive</keyaccesstype>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<passphrase>import clanger</passphrase>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-134]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>gmRSA0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keyaccesstype>Sensitive</keyaccesstype>
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-135]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm3</keylabel>
-	<keyaccesstype>Sensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-136]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>gm3</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<keyaccesstype>Sensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-137]
-<actionbody>
-	<keyusage>DSAUsage</keyusage>
-	<keysize>512</keysize>
-	<keylabel>carrot</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keyaccesstype>Sensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-138]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>carrot</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keyaccesstype>Sensitive</keyaccesstype>
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-	<keyaccesstype>Local</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-139]
-<actionbody>
-	<keyusage>DSAUsage</keyusage>
-	<keysize>512</keysize>
-	<keylabel>carrot2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>Sensitive</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-140]
-<actionbody>
-	<keyusage>allusagesbutNR</keyusage>
-	<keysize>512</keysize>
-	<keylabel>carrot2</keylabel>
-	<keyalgorithm>DSA</keyalgorithm>
-	<keyaccesstype>NeverExtractable</keyaccesstype>
-	<keyaccesstype>Sensitive</keyaccesstype>
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-	<keyaccesstype>Local</keyaccesstype>
-</actionbody>
-
-[SEC-EXPORTSCRIPT_USEAUTH-0001-143]
-<actionbody>
-	<seconds>5</seconds>
-</actionbody>
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/exportscript_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,630 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-EXPORTSCRIPT_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-EXPORTSCRIPT_USEAUTH-0001
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//!                           Exporting  a key
-
-//!                           //////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) 1.0.1 Opening key store in manager mode
-
-//!                           3) 1.0.2 NOT A TEST Delete everything ** Basic PKCS8 cleartext RSA key import/export**
-
-//!                           4) 1.0.1.0, Import a DH key
-
-//!                           5) 1.1.0 Import a RSA key
-
-//!                           6) 1.1.1 Import a RSA key
-
-//!                           7) 1.1.2 Import a RSA key
-
-//!                           8) 1.1.3 Import a RSA key
-
-//!                           9) 1.1.4 Import a RSA key
-
-//!                           10) 1.1.5 Export a RSA key
-
-//!                           11) 1.1.6 Export a RSA key
-
-//!                           12) 1.1.7 Export a RSA key
-
-//!                           13) 1.1.8 Export a RSA key
-
-//!                           14) 1.1.9 Export a RSA key
-
-//!                           15) 1.1.8 Export a public RSA key
-
-//!                           16) 1.1.8 Export a public RSA key
-
-//!                           17) 1.1.8 Export a public RSA key
-
-//!                           18) 1.1.8 Export a public RSA key
-
-//!                           19) 1.2.0 Import a RSA key from a previously exported one
-
-//!                           20) 1.2.1 Import a RSA key from a previously exported one
-
-//!                           21) 1.2.2 Import a RSA key from a previously exported one
-
-//!                           22) 1.2.3 Import a RSA key from a previously exported one
-
-//!                           23) 1.2.4 Import a RSA key from a previously exported one
-
-//!                           24) 1.3.0 Bitwise Comparison of original key and exported one (RSA, cleartext)
-
-//!                           25) 1.3.1 Bitwise Comparison of original key and exported one (RSA, cleartext)
-
-//!                           26) 1.3.2 Bitwise Comparison of original key and exported one (RSA, cleartext)
-
-//!                           27) 1.3.3 Bitwise Comparison of original key and exported one (RSA, cleartext)
-
-//!                           28) 1.3.4 Bitwise Comparison of original key and exported one (RSA, cleartext)
-
-//!                           29) 1.3.5 Bitwise Comparison of original key and exported one (RSA public)
-
-//!                           30) 1.3.6 Bitwise Comparison of original key and exported one (RSA public)
-
-//!                           31) 1.3.7 Bitwise Comparison of original key and exported one (RSA public)
-
-//!                           32) 1.3.8 Bitwise Comparison of original key and exported one (RSA public)
-
-//!                           33) 1.4.0 NOT A TEST Delete everything 
-
-                    ** Basic PKCS8 cleartext DSA key import/export**
-
-//!                           34) 1.4.1 Import a DSA key
-
-//!                           35) 1.4.2 Import a DSA key
-
-//!                           36) 1.4.3 Import a DSA key
-
-//!                           37) 1.4.4 Import a DSA key
-
-//!                           38) 1.4.5 Import a DSA key
-
-//!                           39) 1.4.6 Export a DSA key
-
-//!                           40) 1.4.7 Export a DSA key
-
-//!                           41) 1.4.8 Export a DSA key
-
-//!                           42) 1.4.9 Export a DSA key
-
-//!                           43) 1.4.10 Export a DSA key
-
-//!                           44) 1.4.12 Export a DSA public key
-
-//!                           45) 1.4.13 Export a DSA public key
-
-//!                           46) 1.4.14 Export a DSA public key
-
-//!                           47) 1.4.15 Export a DSA public key
-
-//!                           48) 1.4.16 Export a DSA public key
-
-//!                           49) 1.4.1.5 Bitwise Comparison of original key and exported one (DSA public)
-
-//!                           50) 1.4.1.6 Bitwise Comparison of original key and exported one (DSA public)
-
-//!                           51) 1.4.1.7 Bitwise Comparison of original key and exported one (DSA public)
-
-//!                           52) 1.4.1.8 Bitwise Comparison of original key and exported one (DSA public)
-
-//!                           53) 1.4.1.9 Bitwise Comparison of original key and exported one (DSA public)
-
-//!                           54) 1.5.0 Import a DSA key from a previously exported one
-
-//!                           55) 1.5.1 Import a DSA key from a previously exported one
-
-//!                           56) 1.5.2 Import a DSA key from a previously exported one
-
-//!                           57) 1.5.3 Import a DSA key from a previously exported one
-
-//!                           58) 1.5.4 Import a DSA key from a previously exported one
-
-//!                           59) 1.6.0 Bitwise Comparison of original key and exported one (DSA, cleartext)
-
-//!                           60) 1.6.1 Bitwise Comparison of original key and exported one (DSA, cleartext)
-
-//!                           61) 1.6.2 Bitwise Comparison of original key and exported one (DSA, cleartext)
-
-//!                           62) 1.6.3 Bitwise Comparison of original key and exported one (DSA, cleartext)
-
-//!                           63) 1.6.4 Bitwise Comparison of original key and exported one (DSA, cleartext)
-
-//!                           64) 1.7.0 NOT A TEST Delete everything 
-
-                    **Basic PKCS8 encrypted RSA key import/export**
-
-//!                           65) 1.7.1 Import a PKCS5 encrypted RSA key
-
-//!                           66) 1.7.2 Import a PKCS5 encrypted RSA key
-
-//!                           67) 1.7.3 Import a PKCS5 encrypted RSA key
-
-//!                           68) 1.7.4 Import a PKCS5 encrypted RSA key
-
-//!                           69) 1.7.5 Import a PKCS5 encrypted RSA key
-
-//!                           70) 1.7.6 Export a RSA key in encrypted format
-
-//!                           71) 1.7.7 Export a RSA key in encrypted format
-
-//!                           72) 1.7.8 Export a RSA key in encrypted format
-
-//!                           73) 1.7.8 Export a RSA key in encrypted format
-
-//!                           74) 1.7.9 Export a RSA key in encrypted format
-
-//!                           75) 1.7.10 Import a PKCS5 encrypted RSA key encrypted with 3DES
-
-//!                           76) 1.8.0 NOT A TEST Delete everything ** PKCS8 encrypted RSA export sanity check ** Import a clear text key. Export it encrypted. Import it. Export it clear text. Compare.
-
-//!                           77) 1.8.1 Import a RSA key
-
-//!                           78) 1.8.2 Export a RSA key in encrypted format
-
-//!                           79) 1.8.3 NOT A TEST Delete everything
-
-//!                           80) 1.8.4 Import a PKCS5 encrypted RSA key from the result of previous export action
-
-//!                           81) 1.8.5 Export a RSA key (cleartext) which has been imported from a
-
-            generated encrypted pkcs8 file
-
-//!                           82) 1.8.6 Bitwise Comparison of original key and exported one
-
-//!                           83) 1.9.0 NOT A TEST Delete everything 
-
-                    ** Basic PKCS8 encrypted DSA key import/export **
-
-//!                           84) 1.9.1 Import a PKCS5 encrypted DSA key
-
-//!                           85) 1.9.2 Import a PKCS5 encrypted DSA key
-
-//!                           86) 1.9.3 Import a PKCS5 encrypted DSA key
-
-//!                           87) 1.9.4 Import a PKCS5 encrypted DSA key
-
-//!                           88) 1.9.5 Import a PKCS5 encrypted DSA key
-
-//!                           89) 1.9.6 Export a DSA key in encrypted format
-
-//!                           90) 1.9.7 Export a DSA key in encrypted format
-
-//!                           91) 1.9.8 Export a DSA key in encrypted format
-
-//!                           92) 1.9.9 Export a DSA key in encrypted format
-
-//!                           93) 1.9.10 Export a DSA key in encrypted format
-
-//!                           94) 1.9.11 Export a DSA public key
-
-//!                           95) 1.10.0 NOT A TEST Delete everything 
-
-                    ** Basic sanity check for PKCS8 encrypted DSA key import/export **
-
-//!                           96) 1.10.1 Import a DSA key
-
-//!                           97) 1.10.2 Export a DSA key in encrypted format
-
-//!                           98) 1.10.3 NOT A TEST Delete everything
-
-//!                           99) 1.10.4 Import a PKCS5 encrypted DSA key from a previously exported one
-
-//!                           100) 1.10.5 Export a DSA key (cleartext) which has been imported from a
-
-            generated encrypted pkcs8 file
-
-//!                           101) 1.10.6 Bitwise Comparison of original key and exported one
-
-//!                           102) 1.11.0.0 NOT A TEST Delete everything 
-
-                    ** Test import/export of weird encrypted pkcs8 **
-
-//!                           103) 1.11.0 Import a PKCS5 encrypted RSA key encrypted with 3DES
-
-//!                           104) 1.11.1 Import a PKCS5 encrypted RSA key encrypted with RC2
-
-//!                           105) 1.11.3 Try to Import a PKCS5 encrypted RSA key encrypted with RC4 (Unsupported)
-
-//!                           106) 1.11.4 Try to Import a PKCS5 encrypted DSA key encrypted with DES3 Broken Netscape format (Unsupported)
-
-//!                           107) 1.11.5 Try to Import a PKCS5 encrypted RSA key encrypted with DES3 Broken Nooctet format (Unsupported)
-
-//!                           108) 1.11.6 Try to Import a PKCS5 encrypted DSA key encrypted with DES3 Broken embed format (Unsupported)
-
-//!                           109) 1.12.0 NOT A TEST Delete everything 
-
-                    ** key import/export of keys with optional PKC#8 attribuets **
-
-//!                           110) 1.12.1 Import a RSA key containing PKCS#8 attributes
-
-//!                           111) 1.12.2 Import a DSA key
-
-//!                           112) 1.12.3 Export a RSA key with optional PKCS8 attributes
-
-//!                           113) 1.12.4 Export a DSA key with optional PKCS#8 encryption
-
-//!                           114) 1.12.5 Bitwise Comparison of original key and exported one (RSA, attributes)
-
-//!                           115) 1.12.6 Bitwise Comparison of original key and exported one (DSA, attributes)
-
-//!                           116) 1.12.0.1 NOT A TEST Delete everything 
-
-                    ** Sanity check all ciphers **
-
-//!                           117) 1.12.0.2 Import a RSA key
-
-//!                           118) 1.12.0.7 Export a RSA key with ECipher3DES_CBC
-
-//!                           119) 1.12.0.8 Export a RSA key with ECipherDES_CBC
-
-//!                           120) 1.12.0.9 Export a RSA key with ECipherRC2_CBC_40
-
-//!                           121) 1.12.0.10 Export a RSA key with ECipherRC2_CBC_128
-
-//!                           122) 1.12.0.9 Export a RSA key with ECipherRC2_CBC_40_16
-
-//!                           123) 1.12.0.10 Export a RSA key with ECipherRC2_CBC_128_16
-
-//!                           124) 1.12.0.11 Import a PKCS5 encrypted RSA key previously exported with ECipherRC2_CBC_40
-
-//!                           125) 1.12.0.12 Import a PKCS5 encrypted RSA key previously exported with ECipherRC2_CBC_128
-
-//!                           126) 1.12.0.11b Import a PKCS5 encrypted RSA key previously exported with ECipherRC2_CBC_40_16
-
-//!                           127) 1.12.0.12b Import a PKCS5 encrypted RSA key previously exported with ECipherRC2_CBC_128_16
-
-//!                           128) 1.12.0.13 Import a PKCS5 encrypted RSA key previously exported with ECipherDES_CBC
-
-//!                           129) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-//!                           130) 1.13.1 NOT A TEST Delete everything 
-
-                    ** Test access modifiers Sensitive, AlwaysSensitive, Extractable and NeverExtractable **
-
-//!                           131) 1.13.1 Import a cleartext RSA key ** Cannot become AlwaysSensitive **
-
-//!                           132) 1.13.2 Check access settings ** Cannot be AlwaysSensitive **
-
-//!                           133) 1.13.2 Import a PKCS5 encrypted RSA key ** Must become AlwaysSensitive **
-
-//!                           134) 1.13.3 Check access settings ** Must be AlwaysSensitive **
-
-//!                           135) 1.13.4 Import a cleartext RSA key make it not extractable ** Cannot become NeverExtractable **
-
-//!                           136) 1.13.5 Check access settings ** Cannot be NeverExtractable **
-
-//!                           137) 1.13.6 Create a key, set the extractable flag ** Cannot be NeverExtractble **
-
-//!                           138) 1.13.7 Check access settings ** Cannot be NeverExtractable, must be AlwaysSensitive **
-
-//!                           139) 1.13.8 Create a key ** Must be NeverExtractble **
-
-//!                           140) 1.13.9 Check access settings ** Must be NeverExtractable, must be AlwaysSensitive **
-
-//!                           141) 1.13.X NOT A TEST Delete everything 
-
-                    ** Test access modifiers Sensitive, AlwaysSensitive, Extractable and NeverExtractable **
-
-//!                           142) 1.14.1 Closing key store
-
-//!                           143) 1.14.2 Sleep 5 seconds
-
-//!                           144) 1.14.3 Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-005
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-006
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-008
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-009
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-010
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-011
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-012
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-013
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-014
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-015
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-016
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-017
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-018
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-019
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-020
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-021
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-022
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-023
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-024
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-025
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-026
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-027
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-028
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-029
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-030
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-031
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-032
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-034
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-035
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-036
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-037
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-038
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-039
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-040
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-041
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-042
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-043
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-044
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-045
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-046
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-047
-
-RUN_TEST_STEP                 -1    CTestHandler        exportpublickey        exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-048
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-049
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-050
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-051
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-052
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-053
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-054
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-055
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-056
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-057
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-058
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-059
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-060
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-061
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-062
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-063
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-065
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-066
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-067
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-068
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-069
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-070
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-071
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-072
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-073
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-074
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-075
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-077
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-078
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-080
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-081
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-082
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-084
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-085
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-086
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-087
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-088
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-089
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-090
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-091
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-092
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-093
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-094
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-096
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-097
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-099
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-100
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-101
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-103
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-104
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-105
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-106
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-107
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-108
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-110
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-111
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-112
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-113
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-114
-
-RUN_TEST_STEP                 -1    CTestHandler        compare                exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-115
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-117
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-118
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-119
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-120
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-121
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-122
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-123
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-124
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-125
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-126
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-127
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-128
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-129
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-131
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-132
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-133
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-134
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-135
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-136
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-137
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-138
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-139
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-140
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  exportscript_useauth.ini   SEC-EXPORTSCRIPT_USEAUTH-0001-143
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-EXPORTSCRIPT_USEAUTH-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/initialize.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Initialize authentication server to run key store test.
-
-RUN_PROGRAM 100 SETCAP tAuthSvr.exe 188b0 -SID 102740FC tAuthSvr_new.exe
-
-LOAD_SUITE tAuthSvr
-LOAD_SUITE tAuthSvr_new
-
-
-//! @SYMTestCaseID SEC-FSTOKEN-KEYSTORE-0001
-//! @SYMTestCaseDesc Initialize all authentication server data. Set the values in the cenrep file.
-START_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tkeystore\scripts\registration.ini Alias
-RUN_TEST_STEP !Result=0 100	tAuthSvr_new	INIT_CENREP	c:\tauth\tauthsvr\scripts\tauthsvr2.ini defaultplugin
-END_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oldserver_newfeature.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,80 +0,0 @@
-[SEC-OLDSERVER_NEWFEATURE-0001-002]
-<actionbody>
-	<mode>manager</mode>
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-	<keystoreindex>2</keystoreindex>
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-004]
-<actionbody>
-	<mode>manager</mode>
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-	<keystoreindex>4</keystoreindex>
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-006]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-007]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-009]
-<actionbody>
-	<keyusage>Derive</keyusage>
-	<keysize>512</keysize>
-	<keylabel>cheeku</keylabel>
-	<keyalgorithm>DH</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keystore>1</keystore>
-	<passphrase>create pinkcloud</passphrase>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-010]
-<actionbody>
-	<keyusage>Derive</keyusage>
-	<keysize>512</keysize>
-	<keylabel>cheeku</keylabel>
-	<keyalgorithm>DH</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keystore>1</keystore>
-	<authexpression>strong</authexpression>
-	<freshness>0</freshness>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-011]
-<actionbody>
-	<authmode>set</authmode>
-	<keylabel>cheeku</keylabel>
-	<authexpression>medium</authexpression>
-	<freshness>21</freshness>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-012]
-<actionbody>
-	<authmode>get</authmode>
-	<keylabel>cheeku</keylabel>
-	<expectedexpression>medium</expectedexpression>
-	<expectedfreshness>21</expectedfreshness>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-013]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<authexpression>strong</authexpression>
-	<freshness>25</freshness>
-</actionbody>
-
-[SEC-OLDSERVER_NEWFEATURE-0001-016]
-<actionbody>
-	<seconds>5</seconds>
-</actionbody>
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oldserver_newfeature.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-OLDSERVER_NEWFEATURE-0001
-
-//! @SYMTestCaseID            SEC-OLDSERVER_NEWFEATURE-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) Closing key store
-
-//!                           4) Retrieving label of a particular key store
-
-//!                           5) Closing key store
-
-//!                           6) 1.0.0.0.1,Opening key store 1 in manager mode
-
-//!                           7) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           8) 1.0.0.1 NOT A TEST Delete default keys
-
-//!                           9) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           10) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           11) Set a new authentication policy for a key with which the user is not registered
-
-//!                           12) Gets authentication policy for a key
-
-//!                           13) 1.1.0 Import a RSA key
-
-//!                           14) 1.2.0.69.0 Closing key store 1
-
-//!                           15) 1.2.0.69.1 Closing key store 2
-
-//!                           16) 1.4.999.2, Sleep 5 seconds
-
-//!                           17) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        init                   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-006
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-009
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        addkey                 oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-010
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        authenticationpolicy   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-011
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        authenticationpolicy   oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-012
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        importkey              oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-013
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  oldserver_newfeature.ini   SEC-OLDSERVER_NEWFEATURE-0001-016
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-OLDSERVER_NEWFEATURE-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oom_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1282 +0,0 @@
-[SEC-OOM_USEAUTH-0002-001]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0002-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-001]
-
-<actionbody>
-
-	<foundkey>banana</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-003]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-004]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-005]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-006]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0003-007]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0004-001]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-001]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>bigbanana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-004]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-005]
-
-<actionbody>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-006]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-007]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-008]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-009]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-010]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-	<g>02</g>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-011]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>jackfruit</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-012]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>custard apple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-013]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keyusage>NR</keyusage>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>grape</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-014]
-
-<actionbody>
-
-	<foundkey>bigbanana</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>	
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-015]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-   		<foundkey>carrot</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-016]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-   		<foundkey>carrot</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-017]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>	
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-018]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>2</deletecount>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-019]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-020]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-021]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-022]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-023]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-024]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-025]
-
-<actionbody>
-
-	<deletecount>5</deletecount>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0005-026]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0006-001]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa4DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted purple plum</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>1</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0006-002]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>*IMPORTED* encrypted purple plum</foundkey>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0006-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-001]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-002]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-003]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-004]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8dsa_0.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-005]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8rsa.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0007-006]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8dsa.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-001]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>0</freshness>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-002]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-003]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>21</freshness>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-004]
-
-<actionbody>
-
-	<authmode>get</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<expectedexpression>medium</expectedexpression>
-
-	<expectedfreshness>21</expectedfreshness>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-005]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>25</freshness>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-006]
-
-<actionbody>
-
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0008-007]
-
-<actionbody>
-
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>50</freshness>
-
-</actionbody>
-
-
-
-[SEC-OOM_USEAUTH-0009-003]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/oom_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,378 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-OOM_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) 1, Delete keystore data file
-
-//!                           2) None
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        startmemfailure     
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0002
-
-//! @SYMTestCaseDesc          Start of testing
-
-//! @SYMTestActions           1) 1.2,Opening key store in manager mode
-
-//!                           2) 1.2.0.1 NOT A TEST Delete everything
-
-//!                           3) 2,Add a key
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   oom_useauth.ini   SEC-OOM_USEAUTH-0002-001
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0002-003
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0003
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 3: List the keys, should only find "Banana"
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 3 List everything
-
-//!                           2) 3.1,Get it again
-
-//!                           3) 3.2,Open it
-
-//!                           4) 3.3,Open a banana for decrypt
-
-//!                           5) 3.4, Sign with a banana, 20 char text
-
-//!                           6) 3.5, Sign digest with a banana
-
-//!                           7) 3.6, Decrypt with a banana
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0003-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             oom_useauth.ini   SEC-OOM_USEAUTH-0003-002
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   oom_useauth.ini   SEC-OOM_USEAUTH-0003-003
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   oom_useauth.ini   SEC-OOM_USEAUTH-0003-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   oom_useauth.ini   SEC-OOM_USEAUTH-0003-005
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   oom_useauth.ini   SEC-OOM_USEAUTH-0003-006
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                oom_useauth.ini   SEC-OOM_USEAUTH-0003-007
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0003
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0004
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0004
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 4: Delete "Banana" key
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 4. Delete the key
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             oom_useauth.ini   SEC-OOM_USEAUTH-0004-001
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0004
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0005
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0005
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 5: List the keys, should find nothing
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 5 List everything
-
-//!                           2) 6,Add a larger key
-
-//!                           3) 7,Add a key with a very long label
-
-//!                           4) 8,Get that key again
-
-//!                           5) 9,Open that key again
-
-//!                           6) 1.1.5.6,Add a key
-
-//!                           7) 1.1.5.6.1, Sign with a carrot, 20 char text
-
-//!                           8) 1.1.5.7,Add a key
-
-//!                           9) 1.1.5.7.1,Open it
-
-//!                           10) 1.1.5.7.2, Test derive
-
-//!                           11) 10,Add a key with illegal usage
-
-//!                           12) 11,Add a key with illegal usage
-
-//!                           13) 12,Add a key with illegal usage
-
-//!                           14) 13 List everything (including illegal usage keys)
-
-//!                           15) 14 List DSA keys (including illegal usage keys)
-
-//!                           16) 15 List Sign-usage keys (including illegal usage keys)
-
-//!                           17) 16 List 'All usages' keys (including illegal usage keys)
-
-//!                           18) 17, Delete RSA keys
-
-//!                           19) 18 List RSA keys
-
-//!                           20) 19 List everything (including illegal usage keys)
-
-//!                           21) 20,Add a key that was previously deleted
-
-//!                           22) 21 List RSA keys
-
-//!                           23) 22 List everything (including illegal usage keys)
-
-//!                           24) 23, Delete it again
-
-//!                           25) 24, Delete everything
-
-//!                           26) 25 List everything
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-003
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             oom_useauth.ini   SEC-OOM_USEAUTH-0005-004
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   oom_useauth.ini   SEC-OOM_USEAUTH-0005-005
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-006
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   oom_useauth.ini   SEC-OOM_USEAUTH-0005-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-008
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   oom_useauth.ini   SEC-OOM_USEAUTH-0005-009
-
-RUN_TEST_STEP                 -1    CTestHandler        derive                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-010
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-011
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-012
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-013
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-014
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-015
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-016
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-017
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             oom_useauth.ini   SEC-OOM_USEAUTH-0005-018
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-019
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-020
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0005-021
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-022
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-023
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             oom_useauth.ini   SEC-OOM_USEAUTH-0005-024
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             oom_useauth.ini   SEC-OOM_USEAUTH-0005-025
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0005-026
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0005
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0006
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0006
-
-//! @SYMTestCaseDesc          Test importing keys
-
-//! @SYMTestActions           1) 26, Import a PKCS5 encrypted DSA key
-
-//!                           2) 27, List DSA keys (TEST ID: GT0140-KEY001)
-
-//!                           3) 28, Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              oom_useauth.ini   SEC-OOM_USEAUTH-0006-001
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               oom_useauth.ini   SEC-OOM_USEAUTH-0006-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             oom_useauth.ini   SEC-OOM_USEAUTH-0006-003
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0006
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0007
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0007
-
-//! @SYMTestCaseDesc          Test export
-
-//! @SYMTestActions           1) 1.1.1 Import a RSA key
-
-//!                           2) 1.1.5 Export a RSA key
-
-//!                           3) 1.4.1 Import a DSA key
-
-//!                           4) 1.4.6 Export a DSA key
-
-//!                           5) 1.7.6 Export a RSA key in encrypted format
-
-//!                           6) 1.9.6 Export a DSA key in encrypted format
-
-//!                           7) 1.10.0 NOT A TEST Delete everything 
-
-                    ** Basic sanity check for PKCS8 encrypted DSA key import/export **
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-001
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-002
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-003
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-004
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-005
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              oom_useauth.ini   SEC-OOM_USEAUTH-0007-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0007
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0008
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0008
-
-//! @SYMTestCaseDesc          testing new apis for keystore
-
-//! @SYMTestActions           1) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           2) 1.0.0.51.1, Get it again
-
-//!                           3) Set a new authentication policy for a key
-
-//!                           4) Gets authentication policy for a key
-
-//!                           5) 1.1.0 Import a RSA key
-
-//!                           6) 1.1.5 Export a RSA key
-
-//!                           7) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 oom_useauth.ini   SEC-OOM_USEAUTH-0008-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             oom_useauth.ini   SEC-OOM_USEAUTH-0008-002
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   oom_useauth.ini   SEC-OOM_USEAUTH-0008-003
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   oom_useauth.ini   SEC-OOM_USEAUTH-0008-004
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              oom_useauth.ini   SEC-OOM_USEAUTH-0008-005
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              oom_useauth.ini   SEC-OOM_USEAUTH-0008-006
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              oom_useauth.ini   SEC-OOM_USEAUTH-0008-007
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0008
-
-
-
-
-
-START_TESTCASE                SEC-OOM_USEAUTH-0009
-
-//! @SYMTestCaseID            SEC-OOM_USEAUTH-0009
-
-//! @SYMTestCaseDesc          End of testing
-
-//! @SYMTestActions           1) 29,Closing key store
-
-//!                           2) 999.1
-
-//!                           3) 999.2, Sleep 5 seconds
-
-//!                           4) 999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        stopmemfailure      
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  oom_useauth.ini   SEC-OOM_USEAUTH-0009-003
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-OOM_USEAUTH-0009
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reg_first_identity.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-
-PRINT Authentication Server tests...
-
-LOAD_SUITE tAuthSvr
-
-//! @SYMTestCaseID SEC-AUT-AUTHSVR-0144
-//! @SYMTestCaseDesc Remove_PinPlugin_Data
-START_TESTCASE Remove_PinPlugin_Data
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE Remove_PinPlugin_Data
-
-//
-//! @SYMTestCaseID SEC-FSTOKEN-KEYSTORE-0001
-//! @SYMTestCaseDesc An authclient successfully authenticates where the user specifies the auth method
-//!                  given that no preferred method exists
-//! 		     (Authenticate13_UserSelectsMethod)
-//! 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have 3 plugins that support default data and are active, all trained with the default identity
-//!                  and a second identity
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 0 seconds and an auth expression
-//!                  of (2nd OR 3rd plugin). Supply correct input for the 3rd plugin, but wrong info for the 2nd plugin
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 300 seconds and an auth
-//!                  expression of (Default AND 2nd plugin). Supply wrong input for the 2nd plugin and the default plugin
-//! @SYMTestExpectedResults All plugins are successfully registered.
-//!
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REMOVE_DBS
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tkeystore\scripts\registration.ini RegisterFirst
-END_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-
-
-START_TESTCASE Remove_PinPlugin_Data
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE Remove_PinPlugin_Data
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reg_second_identity.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-PRINT Authentication Server tests...
-
-// Prepare a clone of TAuthSvr to possess authserver's SID.
-// This is required for modifying the authserver's central repository file.
-// This clone must be deleted at the end of the test.
-
-LOAD_SUITE tAuthSvr
-
-//
-//! @SYMTestCaseID SEC-FSTOKEN-KEYSTORE-0002
-//! @SYMTestCaseDesc An authclient successfully authenticates where the user specifies the auth method
-//!                  given that no preferred method exists
-//! 		     (Authenticate13_UserSelectsMethod)
-//! 
-//! @SYMTestPriority Medium
-//! @SYMTestActions  Have 3 plugins that support default data and are active, all trained with the default identity
-//!                  and a second identity
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 0 seconds and an auth expression
-//!                  of (2nd OR 3rd plugin). Supply correct input for the 3rd plugin, but wrong info for the 2nd plugin
-//!                  Call authenticate, expecting the 2nd identity with a freshness of 300 seconds and an auth
-//!                  expression of (Default AND 2nd plugin). Supply wrong input for the 2nd plugin and the default plugin
-//! @SYMTestExpectedResults All plugins are successfully registered.
-//!
-//! @SYMDevelopedForRelease Intulo
-
-START_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-RUN_TEST_STEP !Result=0 100	tAuthSvr 	REG_IDENTITY	c:\tkeystore\scripts\registration.ini RegisterSecond
-END_TESTCASE SEC-FSTOKEN-KEYSTORE-0001
-
-
-START_TESTCASE Remove_PinPlugin_Data
-RUN_UTILS DeleteFile C:\pinplugin_inactive.txt
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_in.dat
-RUN_UTILS DeleteFile  C:\t_pinplugindlg_out.dat
-END_TESTCASE Remove_PinPlugin_Data
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/registration.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,60 +0,0 @@
-# Index of key values
-#iSupportsDefaultData 	- bool that defines if the chosen plugin supports default data
-#NumIdentities		- int that defines the expected number of identities that are registered on the server
-#pluginType		- 
-#isDefaultPlugin	- No longer in use. defaultPlugin is used instead
-#defaultPlugin		- string that defines which plugin to use as the default. Used to update the AuthServer policy file
-#pluginId		- Hex string that is the uid of the Ecom implementation. In the Test0000 to Test0009, it's used as a cue, and is also the expected UserId
-#userResult		- Int that contains what the user has input on being prompted to 'identify', i.e. the PIN
-#			In cases where this is absent, then we're expecting the 'data' returned to be the same as the pluginId value (cueValue)
-#userId			- String that contains the expected Id
-
-#plugin1Id		- Hex string that is the uid of the Ecom implementation
-#			  	In the RetrainPlugin steps, this is the plugin that is to be trained.
-#plugin1Status		- Int that specifies the expected status of the above plugin 
-				(0, 64, 128 -EAuthUntrained, EAuthTrained, EAuthFullyTrained)
-#Pin11113100Default	- bool that defines whether the plugins support default data. Also Pin11113101Default and Pin11113102Default
-#Pin11113100Active	- bool that defines whether the plugin is active or not. Also Pin11113101Active, Pin11113102Active
-#Pin11113100InputId	- string that defines the input to the plugin. Else, the default is used. (in Identify function)
-#Pin11113100InputTrain	- string that defines the input to the plugin. Else, the default is used. (in Train function)
-#finalUserName 		- string that defines the new name (description or identitystring) of a given identity
-#retryRemove		- bool that defines whether the attempt to remove an identity is tried again in the same test step
-#freshness		- Int that defines the number of seconds(timeout) within which a cached identity is returned 
-				(Authentication is skipped)
-#forgetPlugin 		- Hex that specifies the plugin that is to be forgotten
-#forgetUnknown 		- Bool that if true means we're trying to forget an unknown identity
-
-#==============================
-[RegisterFirst]
-Pin11113100InputId = 5110
-Pin11113100InputTrain = 5110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputId = 5111
-Pin11113101InputTrain = 5111
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102Active = false 
-Pin11113103Active = false 
-Pin11113104Active = false 
-
-[RegisterSecond]
-Pin11113100InputId = 6110
-Pin11113100InputTrain = 6110
-Pin11113100Default = true
-Pin11113100Active = true 
-Pin11113101InputId = 6111
-Pin11113101InputTrain = 6111
-Pin11113101Default = true
-Pin11113101Active = true 
-Pin11113102Active = false 
-Pin11113103Active = false 
-Pin11113104Active = false 
-
-[Alias]
-aliasString0 = 11113100
-aliasString1 = 11113101
-aliasString2 = 11113102
-aliasString3 = 11113103
-
-#==============================
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reload_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,612 +0,0 @@
-[SEC-RELOAD_USEAUTH-0001-001]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-003]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-004]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa1.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-005]
-
-<actionbody>
-
-	<foundkey>gm0_rsa</foundkey>
-
-	<foundkey>gm1_dsa</foundkey>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-007]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-008]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0001-009]
-
-<actionbody>
-
-	<foundkey>gm0_rsa</foundkey>
-
-	<foundkey>gm1_dsa</foundkey>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-002]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-003]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-004]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-005]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-006]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-007]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-008]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-009]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>DSA</open>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-010]
-
-<actionbody>
-
-	<keylabel>gm0_rsa</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-011]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-012]
-
-<actionbody>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-013]
-
-<actionbody>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is a text of 21.</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-014]
-
-<actionbody>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>1</signdigest>
-
-
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0002-015]
-
-<actionbody>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>digest!</text>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-003]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-005]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-006]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa1.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm1_dsa</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-007]
-
-<actionbody>
-
-	<foundkey>gm1_dsa</foundkey>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-008]
-
-<actionbody>
-
-	<corruption>Once upon a time...</corruption>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-009]
-
-<actionbody>
-
-	<foundkey>gm1_dsa</foundkey>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-011]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-012]
-
-<actionbody>
-
-	<corruption> CERT has been criticized in the past for being frugal with vulnerability information.  They don't publish exploits, for one, which means k1ddi3z prefer FD. </corruption>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-013]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-014]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-RELOAD_USEAUTH-0003-017]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/reload_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,220 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-RELOAD_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-RELOAD_USEAUTH-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) 1.0.0.0,Opening key store in manager mode
-
-//!                           2) 1.0 Delete everything * Test keystore close & reload consistency *
-
-//!                           3) 1.1.2 Import a RSA key
-
-//!                           4) 1.1.4 Import a DSA key
-
-//!                           5) 1.1.5 List everything (TEST ID: GT0140-KEY001)
-
-//!                           6) 1.1.6 Closing key store
-
-//!                           7) 1.1.7 Sleep 5 seconds
-
-//!                           8) 1.1.8 Opening key store in manager mode
-
-//!                           9) 1.1.9 List everything (TEST ID: GT0140-KEY001)
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-001
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-003
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-005
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-008
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               reload_useauth.ini   SEC-RELOAD_USEAUTH-0001-009
-
-END_TESTCASE                  SEC-RELOAD_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-RELOAD_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-RELOAD_USEAUTH-0002
-
-//! @SYMTestCaseDesc          Test keys still work ok
-
-//! @SYMTestActions           1) 1.1.10.0,Get it again
-
-//!                           2) 1.1.10.1,Open it
-
-//!                           3) 1.1.10.2,Open a gm0_rsa for decrypt
-
-//!                           4) Decrypt
-
-//!                           5) 1.1.10.2.1, Sign with a gm0_rsa, 20 char text
-
-//!                           6) 1.1.10.2.2, Sign with a gm0_rsa, 32 char text
-
-//!                           7) 1.1.10.2.2.1, Sign digest with a gm0_rsa
-
-//!                           8) 1.1.10.2.3, Sign digest with a gm0_rsa, text too large
-
-//!                           9) 1.1.10.3,Open a gm0_rsa as a DSA key
-
-//!                           10) 1.1.10.4,Open a gm0_rsa as a DH key
-
-//!                           11) 1.1.11,Get it again
-
-//!                           12) 1.1.11.1, Sign with a gm1_dsa, 20 char text
-
-//!                           13) 1.1.11.2, Sign with gm1_dsa, text too long (21 chars)
-
-//!                           14) 1.1.11.2, Sign digest with gm1_dsa
-
-//!                           15) 1.1.11.3, Sign digest with a gm1_dsa, fail hash
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-001
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-002
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-003
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-005
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-006
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-007
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-008
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-009
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-010
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-011
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-012
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-013
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-014
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        sign                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0002-015
-
-END_TESTCASE                  SEC-RELOAD_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-RELOAD_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-RELOAD_USEAUTH-0003
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) 1.2.0.0 Test keystore copy-from-rom-if-not-found behaviour
-
-//!                           2) 1.2.0.1 Closing key store
-
-//!                           3) 1.2.0.2 Sleep 5 seconds, when we wake up keys.dat is not in use anymore
-
-//!                           4) 1.2.1 Delete keystore data file
-
-//!                           5) 1.2.2 Opening key store in manager mode
-
-//!                           6) 1.2.4 Import a DSA key
-
-//!                           7) 1.2.5 List everything
-
-//!                           8) 1.3.0 Test keystore copy-from-rom-if-corrupt behaviour (store open, canot corrupt)
-
-//!                           9) 1.2.5 List everything
-
-//!                           10) 1.2.6 Closing key store
-
-//!                           11) 1.2.7 Sleep 5 seconds, when we wake up keys.dat is not in use anymore
-
-//!                           12) 1.2.8 Test keystore copy-from-rom-if-corrupt behaviour
-
-//!                           13) 1.2.2 Opening key store in manager mode
-
-//!                           14) 1.2.9 List everything (rom keystore contains 2 keys)
-
-//!                           15) 1.2.10 Delete everything
-
-//!                           16) 1.2.11 Closing key store
-
-//!                           17) 1.2.12, Sleep 5 seconds
-
-//!                           18) 1.2.13, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-003
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-005
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-006
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-007
-
-RUN_TEST_STEP !Error=-14      -1    CTestHandler        corrupt                reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-008
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-009
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-011
-
-RUN_TEST_STEP                 -1    CTestHandler        corrupt                reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-012
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-013
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-014
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  reload_useauth.ini   SEC-RELOAD_USEAUTH-0003-017
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-RELOAD_USEAUTH-0003
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/servoom_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1360 +0,0 @@
-[SEC-SERVOOM_USEAUTH-0001-003]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0002-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0003-001]
-
-<actionbody>
-
-	<foundkey>banana</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0004-001]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-001]
-
-<actionbody>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>bigbanana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyexportable>IsExportable</keyexportable>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-004]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-005]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-006]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-007]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-	<g>02</g>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-008]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>jackfruit</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-009]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>custard apple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-010]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keyusage>NR</keyusage>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>grape</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-011]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-012]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-013]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<foundkey>bigbanana</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-014]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<foundkey>bigbanana</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-015]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>2</deletecount>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-016]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-017]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-018]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-019]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0005-020]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>jackfruit</foundkey>
-
-	<foundkey>custard apple</foundkey>
-
-	<foundkey>grape</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-001]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-002]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>Decrypt</open>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-003]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<text>Ook!</text>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-004]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-005]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-006]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0006-007]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-001]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-002]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-003]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is a text of 21.</text>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-004]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>1</signdigest>
-
-
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-005]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>digest!</text>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-006]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<deletecount>3</deletecount>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-007]
-
-<actionbody>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-008]
-
-<actionbody>
-
-	<deletecount>2</deletecount>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0007-009]
-
-<actionbody>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0008-001]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa4DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted purple plum</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-	<serveroom>1</serveroom>
-
-	<disabledialogcheck>1</disabledialogcheck>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0008-002]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>*IMPORTED* encrypted purple plum</foundkey>
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0008-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>		
-
-	<serveroom>1</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-001]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-002]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-003]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-004]
-
-<actionbody>
-
-	<ExportFile>oom_export_pkcs8dsa_0.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-005]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8rsa.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0RSA</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0009-006]
-
-<actionbody>
-
-	<ExportFile>oom_encrypted_export_pkcs8dsa.001</ExportFile>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<encrypted>1</encrypted>
-
-
-
-	<passphrase>export clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-001]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>0</freshness>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-002]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-003]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>21</freshness>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-004]
-
-<actionbody>
-
-	<authmode>get</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<expectedexpression>medium</expectedexpression>
-
-	<expectedfreshness>21</expectedfreshness>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-005]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>gm0DSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>50</freshness>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-006]
-
-<actionbody>
-
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>0</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>50</freshness>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0010-007]
-
-<actionbody>
-
-	<deletecount>3</deletecount>
-
-	<serveroom>0</serveroom>
-
-</actionbody>
-
-
-
-[SEC-SERVOOM_USEAUTH-0011-003]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/servoom_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,442 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0001
-
-//! @SYMTestCaseDesc          
-
-//!                           Keystore server OOM tests
-
-//!                           
-
-//!                           Testing key generatation has been diabled for the moment.
-
-//!                           
-
-//!                           
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 1: Initialise the store
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Start server OOM testing
-
-//!                           3) 1,Opening key store in manager mode
-
-//!                           4) 1.0.1 NOT A TEST Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        startserveroom      
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0001-003
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0002
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 2: Add the "Banana" key
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 2,Add a key
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0002-001
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0003
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 3: List the keys, should only find "Banana"
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 3 List everything
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0003-001
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0003
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0004
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0004
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 4: Delete "Banana" key
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 4. Delete the key
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0004-001
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0004
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0005
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0005
-
-//! @SYMTestCaseDesc          /////////////////////////////////////////////////////////////////////////////
-
-//!                           Test case 5: List the keys, should find nothing
-
-//!                           /////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 3 List everything
-
-//!                           2) 2,Add a larger key
-
-//!                           3) 1.1.5.4,Add a key with a very long label
-
-//!                           4) 1.1.5.6,Add a DSA key
-
-//!                           5) 1.1.5.7,Add a DH key
-
-//!                           6) 1.1.5.7.1,Open it
-
-//!                           7) 1.1.5.7.2, Test derive
-
-//!                           8) 1.1.6,Add a key with illegal usage
-
-//!                           9) 1.1.7,Add a key with illegal usage
-
-//!                           10) 1.1.8,Add a key with illegal usage
-
-//!                           11) 1.2 List everything (including illegal usage keys)
-
-//!                           12) 1.3.1 List DSA keys (including illegal usage keys)
-
-//!                           13) 1.3.2 List Sign-usage keys (including illegal usage keys)
-
-//!                           14) 1.3.3 List 'All usages' keys (including illegal usage keys)
-
-//!                           15) 1.4.1, Delete RSA keys
-
-//!                           16) 1.4.2 List RSA keys
-
-//!                           17) 1.4.3 List everything (including illegal usage keys)
-
-//!                           18) 1.4.4,Add a key that was previously deleted
-
-//!                           19) 1.4.5 List RSA keys (including illegal usage keys)
-
-//!                           20) 1.4.6 List everything (including illegal usage keys)
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-003
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-004
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-005
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-006
-
-RUN_TEST_STEP                 -1    CTestHandler        derive                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-008
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-009
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-010
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-011
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-012
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-013
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-014
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-015
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-016
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-017
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-018
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-019
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0005-020
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0005
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0006
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0006
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           Test RSA signing
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 1.0.0.2.1,Open it
-
-//!                           2) 1.0.0.2.2,Open a banana for decrypt
-
-//!                           3) Decrypt
-
-//!                           4) 1.0.0.2.2.1, Sign with a banana, 20 char text
-
-//!                           5) 1.0.0.2.2.2, Sign with a banana, 32 char text
-
-//!                           6) 1.0.0.2.2.2.1, Sign digest with a banana
-
-//!                           7) 1.4.5, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-001
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-002
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-003
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-005
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0006-007
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0006
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0007
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0007
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////
-
-//!                           Test DSA signing
-
-//!                           //////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 1.0.0.10,Get carrot
-
-//!                           2) 1.0.0.10.1, Sign with a carrot, 20 char text
-
-//!                           3) 1.0.0.10.2, Sign with carrot, text too long (21 chars)
-
-//!                           4) 1.0.0.10.2, Sign digest with carrot
-
-//!                           5) 1.0.0.10.3, Sign digest with a carrot, fail hash
-
-//!                           6) 1.4.5, Delete it again
-
-//!                           7) 1.5.8.1 List everything (including illegal usage keys)
-
-//!                           8) 1.5.8.2, Delete everything
-
-//!                           9) 1.5.9 List everything
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-001
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-002
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-003
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-004
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        sign                   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-006
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-007
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-008
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0007-009
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0007
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0008
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0008
-
-//! @SYMTestCaseDesc          Test importing keys
-
-//! @SYMTestActions           1) 26, Import a PKCS5 encrypted DSA key
-
-//!                           2) 27, List DSA keys (TEST ID: GT0140-KEY001)
-
-//!                           3) 28, Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0008-001
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0008-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0008-003
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0008
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0009
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0009
-
-//! @SYMTestCaseDesc          Test exporting keys
-
-//! @SYMTestActions           1) 1.1.0 Import a RSA key
-
-//!                           2) 1.1.5 Export a RSA key
-
-//!                           3) 1.4.1 Import a DSA key
-
-//!                           4) 1.4.6 Export a DSA key
-
-//!                           5) 1.7.6 Export a RSA key in encrypted format
-
-//!                           6) 1.9.6 Export a DSA key in encrypted format
-
-//!                           7) 1.10.0 NOT A TEST Delete everything 
-
-                    ** Basic sanity check for PKCS8 encrypted DSA key import/export **
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-001
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-002
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-003
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-004
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-005
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0009-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys          
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0009
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0010
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0010
-
-//! @SYMTestCaseDesc          Tests for the new apis
-
-//! @SYMTestActions           1) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           2) 1.0.0.51.1, Get it again
-
-//!                           3) Set a new authentication policy for a key
-
-//!                           4) Gets authentication policy for a key
-
-//!                           5) 1.4.1 Import a DSA key
-
-//!                           6) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-//!                           7) 3.8, Delete everything
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-002
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-003
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-004
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-005
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0010-007
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0010
-
-
-
-
-
-START_TESTCASE                SEC-SERVOOM_USEAUTH-0011
-
-//! @SYMTestCaseID            SEC-SERVOOM_USEAUTH-0011
-
-//! @SYMTestCaseDesc          End of testing
-
-//! @SYMTestActions           1) 999.1, Closing key store
-
-//!                           2) Stop server OOM testing
-
-//!                           3) 999.2, Sleep 5 seconds
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        stopserveroom       
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  servoom_useauth.ini   SEC-SERVOOM_USEAUTH-0011-003
-
-END_TESTCASE                  SEC-SERVOOM_USEAUTH-0011
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/testnewkeystore.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-001]
-	<actionbody>
-		<mode>manager</mode>
-	</actionbody>
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-002]
-   	<actionbody>
-   		<foundkey>dhkey</foundkey>
-		<foundkey>rsakey</foundkey>
-		<foundkey>dsakey</foundkey>
-   	</actionbody>
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-003]
-	<actionbody>
-		<keylabel>dhkey</keylabel>
-		<open>DH</open>
-	</actionbody>
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-004]
-	<actionbody>
-		<keylabel>dhkey</keylabel>
-		<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-		<g>02</g>
-	</actionbody>
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-005]
-	<actionbody>
-		<keylabel>rsakey</keylabel>
-		<open>RSA</open>
-		<text>This is text of 20 .</text>		
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-006]
-	<actionbody>
-		<keylabel>rsakey</keylabel>
-		<text>Ook!</text>		
-	</actionbody>
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-007]
-	<actionbody>
-		<keylabel>dsakey</keylabel>
-		<open>DSA</open>
-		<text>This is text of 20 .</text>		
-	</actionbody>
-
-
-
-
-[SEC-FILETOKENS-TESTNEWKEYSTORE-1-009]
-	<actionbody>
-          <seconds>5</seconds>
-        </actionbody>
-
-
-
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/testnewkeystore.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-
-START_TESTCASE               SEC-FILETOKENS-TESTNEWKEYSTORE-1-0001
-
-//! @SYMTestCaseID           SEC-FILETOKENS-TESTNEWKEYSTORE-1-0001
-
-//! @SYMTestCaseDesc     
-     
-//!					////////////////////////////////////////////////////////////////////////////////////
-//!					//	Operations on migrated key store
-//!					////////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) Opening key store in manager mode
-
-//!                           2) List all keys
-
-//!                           3) Open a DH key
-
-//!                           4) derive for dhkey
-
-//!                           5) Sign with RSA key
-
-//!                           6) Decrypt with RSA key
-
-//!                           7) Closing key store
-
-//!                           8) Closing key store
-
-//!                           9) Sleep 5 seconds
-
-//!                          10) Check for server heap error
-
-
-RUN_TEST_STEP -1 CTestHandler init testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-001
-
-RUN_TEST_STEP -1 CTestHandler listallkeys testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-002
-
-RUN_TEST_STEP -1 CTestHandler open testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-003
-
-RUN_TEST_STEP -1 CTestHandler derive testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-004
-
-RUN_TEST_STEP -1 CTestHandler sign testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-005
-
-RUN_TEST_STEP -1 CTestHandler decrypt testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-006
-
-RUN_TEST_STEP -1 CTestHandler sign testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-007
-
-RUN_TEST_STEP -1 CTestHandler delete
-
-RUN_TEST_STEP -1 CTestHandler sleep testnewkeystore.ini SEC-FILETOKENS-TESTNEWKEYSTORE-1-009
-
-RUN_TEST_STEP -1 CTestHandler checkserverheaperror
-
-
-END_TESTCASE                SEC-FILETOKENS-TESTNEWKEYSTORE-1-0001
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/thwkeystore.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,251 +0,0 @@
-[SEC-FILETOKENS-THWKEYSTORE-1-002]
-	<actionbody>
-		<mode>manager</mode>
-		<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-		<keystoreindex>3</keystoreindex>
-		<keystorelabel>Hardware plugin implementation</keystorelabel>
-	</actionbody>
-
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-004]
-	<actionbody>
-		<listcount>2</listcount>
-		<foundkey>ecckey</foundkey>
-		<foundkey>ecckey2</foundkey>
-	</actionbody>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-005]
-	<actionbody>
-		<hwtype>1</hwtype>
-		<operationtype>sign</operationtype>
-		<keylabel>ecckey</keylabel>
-		<open>ECC</open>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-006]
-	<actionbody>
-		<hwtype>1</hwtype>
-		<operationtype>decrypt</operationtype>
-		<keylabel>ecckey</keylabel>
-		<open>ECC</open>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-007]
-	<actionbody>
-		<hwtype>0</hwtype>
-		<operationtype>sign</operationtype>
-		<keylabel>ecckey</keylabel>
-		<open>ECC</open>
-		<keystorelabel>Hardware plugin implementation</keystorelabel>
-	<text>sample text</text>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-008]
-	<actionbody>
-		<hwtype>0</hwtype>
-		<operationtype>decrypt</operationtype>
-		<keylabel>ecckey2</keylabel>
-		<open>ECC</open>
-		<keystorelabel>Hardware plugin implementation</keystorelabel>
-	<text>sample text</text>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-009]
-	<actionbody>
-		<hwtype>1</hwtype>
-		<operationtype>sign</operationtype>
-		<keylabel>ecckey</keylabel>
-		<open>ECC</open>
-		<keystorelabel>Hardware plugin implementation</keystorelabel>
-	<text>sample text</text>
-	</actionbody>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-010]
-	<actionbody>
-		<hwtype>1</hwtype>
-		<operationtype>decrypt</operationtype>
-		<keylabel>ecckey2</keylabel>
-		<open>ECC</open>
-		<keystorelabel>Hardware plugin implementation</keystorelabel>
-	<text>sample text</text>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-011]
-	<actionbody>
-		<foundkey>ecckey3</foundkey>
-		<listingstatus>fail</listingstatus>
-	</actionbody>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-012]
-	<actionbody>
-		<keyusage>allusagesbutNR</keyusage>
-		<keysize>512</keysize>
-		<keylabel>banana</keylabel>
-		<keyalgorithm>RSA</keyalgorithm>
-		<keyaccesstype>Extractable</keyaccesstype>
-		<keystore>0</keystore>
-		<usekeystore>Hardware plugin implementation</usekeystore>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-013]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-014]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-		<open>RSA</open>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-015]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-		<open>DSA</open>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-016]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-		<open>Decrypt</open>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-017]
-	<actionbody>
-		<ImportData>pkcs8rsa.001</ImportData>
-		<keyusage>allusagesbutNR</keyusage>
-		<keylabel>ImportHardwareKey</keylabel>
-		<keyaccesstype>NeverExtractable</keyaccesstype>
-		<usekeystore>Hardware plugin implementation</usekeystore>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-018]
-	<actionbody>
-		<ImportData>encryptPK8rsaDER.txt</ImportData>
-		<keyusage>allusagesbutNR</keyusage>
-		<keylabel>ImportEncryptedHardwareKey</keylabel>
-		<keyaccesstype>NeverExtractable</keyaccesstype>
-		<usekeystore>Hardware plugin implementation</usekeystore>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-019]
-	<actionbody>
-		<ExportFile>export_hardware_key</ExportFile>
-		<keyusage>Derive</keyusage>
-		<keylabel>ecckey</keylabel>
-		<keyalgorithm>ECC</keyalgorithm>
-		<encrypted>0</encrypted>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-020]
-	<actionbody>
-		<ExportFile>export_encrypted_hardware_key</ExportFile>
-		<keyusage>Derive</keyusage>
-		<keylabel>ecckey</keylabel>
-		<keyalgorithm>ECC</keyalgorithm>
-		<encrypted>1</encrypted>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-021]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-		<policy>
-			<secureid>0x101FFFFF</secureid>
-			<capability>DRM</capability>
-			<capability>ReadUserData</capability>
-		</policy>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-022]
-	<actionbody>
-		<keylabel>ecckey</keylabel>
-		<policy>
-			<secureid>0x101FFFFF</secureid>
-			<capability>DRM</capability>
-			<capability>ReadUserData</capability>
-		</policy>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-023]
-	<actionbody>
-		<keyalgorithm>ECC</keyalgorithm>
-		<keylabel>ecckey</keylabel>
-	</actionbody>
-	<actionresult>
-		<return>KErrNotSupported</return>
-	</actionresult>
-
-
-
-[SEC-FILETOKENS-THWKEYSTORE-1-025]
-	<actionbody>
-          <seconds>5</seconds>
-        </actionbody>
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/thwkeystore.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//
-
-START_TESTCASE               SEC-FILETOKENS-THWKEYSTORE-1-0001
-
-//! @SYMTestCaseID           SEC-FILETOKENS-THWKEYSTORE-1-0001
-
-//! @SYMTestCaseDesc     
-     
-//!					////////////////////////////////////////////////////////////////////////////////////
-//!					//	Testing hardware token implementation
-//!					////////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) delete keys
-
-//!                           4) List Keys
-
-//!                           5) Open a key for signing
-
-//!                           6) Open a key for decryption
-
-//!                           7) Open a key for signing
-
-//!                           8) Open a key for decryption
-
-//!                           9) Open a key for signing
-
-//!                          10) Open a key for decryption
-
-//!			           11) List Keys
-
-//!                          12) Add a key
-
-//!                          13) Get key information
-
-//!                          14) Open a key as a RSA signer
-
-//!                          15) Open a key as a DSA signer
-
-//!                          16) Open key for decrypt
-
-//!                          17) Import a key
-
-//!                          18) Import a PKCS5 encrypted RSA key
-
-//!                          19) Export a key
-
-//!                          20) Set use policy
-
-//!                          21) Open key for decrypt
-
-//!                          22) Set use policy
-
-//!                          23) Delete a key
-
-//!                          24) Closing key store
-
-//!                          25) Sleep 5 seconds
-
-
-RUN_TEST_STEP -1 CTestHandler deletekeystoredata
-
-RUN_TEST_STEP -1 CTestHandler init thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-002
-
-RUN_TEST_STEP -1 CTestHandler deletekeys
-
-RUN_TEST_STEP -1 CTestHandler listallkeys thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-004
-
-RUN_TEST_STEP -1 CTestHandler open thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-005
-
-RUN_TEST_STEP -1 CTestHandler open thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-006
-
-RUN_TEST_STEP -1 CTestHandler sign thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-007
-
-RUN_TEST_STEP -1 CTestHandler decrypt thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-008
-
-RUN_TEST_STEP -1 CTestHandler sign thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-009
-
-RUN_TEST_STEP -1 CTestHandler decrypt thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-010
-
-RUN_TEST_STEP -1 CTestHandler listkeys thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-011
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler addkey thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-012
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler getkeyinfo thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-013
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler open thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-014
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler open thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-015
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler open thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-016
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler importkey thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-017
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler importkey thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-018
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler exportkey thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-019
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler exportkey thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-020
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler setusepolicy thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-021
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler setmanagementpolicy thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-022
-
-RUN_TEST_STEP !Error=-5 -1 CTestHandler deletekeys thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-023
-
-RUN_TEST_STEP -1 CTestHandler delete
-
-RUN_TEST_STEP -1 CTestHandler sleep thwkeystore.ini SEC-FILETOKENS-THWKEYSTORE-1-025
-
-END_TESTCASE               SEC-FILETOKENS-THWKEYSTORE-1-0001
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication1.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,306 +0,0 @@
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>2</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-004]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>4</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-006]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckStoreCount>1</CheckStoreCount>
-
-	<KeyStoreCount>4</KeyStoreCount>
-
-	<KeyStoreManagerCount>3</KeyStoreManagerCount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-007]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-008]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>0</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-009]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-010]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>21</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-011]
-
-<actionbody>
-
-	<authmode>get</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<expectedexpression>medium</expectedexpression>
-
-	<expectedfreshness>21</expectedfreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-012]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-013]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-		<foundkey>cheeku</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-014]
-
-<actionbody>
-
-	<ExportFile>export_DHkey.001</ExportFile>
-
-	<keyusage>Derive</keyusage>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-015]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>25</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-016]
-
-<actionbody>
-
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-017]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>gm0</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>0</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-018]
-
-<actionbody>
-
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-019]
-
-<actionbody>
-
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>1</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>50</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-020]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>gm0</foundkey>
-
-	<foundkey>gm_export_pkcs8rsa_0_3DES_CBC.001</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION1-0001-023]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication1.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,120 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-TKEYSTORE_AUTHENTICATION1-0001
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_AUTHENTICATION1-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) Closing key store
-
-//!                           4) Retrieving label of a particular key store
-
-//!                           5) Closing key store
-
-//!                           6) 1.0.0.0.1,Opening key store 1 in manager mode - deprecated
-
-//!                           7) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           8) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           9) 1.0.0.51.1, Get it again
-
-//!                           10) Set a new authentication policy for a key with which the user is not registered
-
-//!                           11) Gets authentication policy for a key
-
-//!                           12) 1.0.0.51.1, Get it again
-
-//!                           13) 1.0.0.1.1,List all keys (TEST ID: INC103084-KEY001)
-
-//!                           14) 1.0.0.1.0.0,export a DH key
-
-//!                           15) 1.1.0 Import a RSA key
-
-//!                           16) 1.1.5 Export a RSA key
-
-//!                           17) Set a new authentication policy for a key with which the user is not registered
-
-//!                           18) 1.1.5 Export a RSA key
-
-//!                           19) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-//!                           20) 1.1.0.24 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           21) 1.2.0.69.0 Closing key store 1 - deprecated
-
-//!                           22) 1.2.0.69.1 Closing key store 2
-
-//!                           23) 1.4.999.2, Sleep 5 seconds
-
-//!                           24) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        init                   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-008
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-009
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-010
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-011
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-012
-
-RUN_TEST_STEP                 -1    CTestHandler        listallkeys            tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-013
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        exportkey              tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-014
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-015
-
-RUN_TEST_STEP                 -1    CTestHandler        exportkey              tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-016
-
-RUN_TEST_STEP                 -1    CTestHandler        authenticationpolicy   tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-017
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        exportkey              tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-018
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-019
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-020
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  tkeystore_authentication1.ini   SEC-TKEYSTORE_AUTHENTICATION1-0001-023
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-TKEYSTORE_AUTHENTICATION1-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication2.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,530 +0,0 @@
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>2</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-004]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>4</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-006]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckStoreCount>1</CheckStoreCount>
-
-	<KeyStoreCount>4</KeyStoreCount>
-
-	<KeyStoreManagerCount>3</KeyStoreManagerCount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-007]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-008]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>0</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-009]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>strong</authexpression>
-
-	<negativefreshness>1</negativefreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-010]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-011]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>user2Key</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-012]
-
-<actionbody>
-
-		<foundkey>cheeku</foundkey>
-
-	<foundkey>user2Key</foundkey>
-
-		<foundkey>cheeku</foundkey>
-
-	<foundkey>user2Key</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-013]
-
-<actionbody>
-
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-014]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-015]
-
-<actionbody>
-
-	<keylabel>*IMPORTED* encrypted raddicio</keylabel>
-
-	<deletecount>0</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-016]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>*IMPORTED* encrypted raddicio</keylabel>
-
-	<authexpression>medium</authexpression>
-
-	<freshness>21</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-017]
-
-<actionbody>
-
-	<authmode>get</authmode>
-
-	<keylabel>*IMPORTED* encrypted raddicio</keylabel>
-
-	<expectedexpression>medium</expectedexpression>
-
-	<expectedfreshness>21</expectedfreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-018]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>negativefreshness</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<negativefreshness>1</negativefreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-019]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>negativefreshness</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>2147483648</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-020]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>invalidaliasvalue</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>invalid</authexpression>
-
-	<freshness>10</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-021]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>verybigexpression</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-	<authexpression>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</authexpression>
-
-	<freshness>10</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-022]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<authexpression>strong</authexpression>
-
-	<negativefreshness>1</negativefreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-023]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm0</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>2147483648</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-024]
-
-<actionbody>
-
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>1</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-	<disabledialogcheck>1</disabledialogcheck>	
-
-	<authexpression>strong</authexpression>
-
-	<negativefreshness>1</negativefreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-025]
-
-<actionbody>
-
-	<ImportData>export_pkcs8rsa_0_3DES_CBC.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>gm_export_pkcs8rsa_0_3DES_CBC.001</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<encrypted>1</encrypted>
-
-	<passphrase>import clanger</passphrase>
-
-	<disabledialogcheck>1</disabledialogcheck>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>2147483648</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-026]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>strong</authexpression>
-
-	<negativefreshness>1</negativefreshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-027]
-
-<actionbody>
-
-	<authmode>set</authmode>
-
-	<keylabel>cheeku</keylabel>
-
-	<authexpression>strong</authexpression>
-
-	<freshness>2147483648</freshness>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_AUTHENTICATION2-0001-030]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_authentication2.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,148 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-TKEYSTORE_AUTHENTICATION2-0001
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_AUTHENTICATION2-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) Closing key store
-
-//!                           4) Retrieving label of a particular key store
-
-//!                           5) Closing key store
-
-//!                           6) 1.0.0.0.1,Opening key store 1 in manager mode - deprecated
-
-//!                           7) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           8) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           9) Set a new authentication policy for a key with which the user is not registered
-
-//!                           10) 1.0.0.51.1, Get it again
-
-//!                           11) 1.1.0 Import a RSA key
-
-//!                           12) List all keys specific to this user
-
-//!                           13) 1.1.5 Export a RSA key
-
-//!                           14) Delete key of the curent authenticated user (TEST ID: GT0140KEY004)
-
-//!                           15) Try to delete key of some other registered user (TEST ID: GT0140KEY004)
-
-//!                           16) Try to set authentication policy for a key of some other registered user
-
-//!                           17) Try to get authentication policy for a key of some other registered user
-
-//!                           18) Try to add a key with negative freshness value (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           19) Try to add a key with out of range freshness value (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           20) Try to add a key when authexpression does not exist(TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           21) Try to add a key when authexpression is very big(TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           22) 1.1.0 Import a RSA key
-
-//!                           23) 1.1.0 Import a RSA key
-
-//!                           24) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-//!                           25) 1.12.0.14 Import a PKCS5 encrypted RSA key previously exported with ECipher3DES_CBC
-
-//!                           26) Set a new authentication policy for a key with which the user is not registered
-
-//!                           27) Set a new authentication policy for a key with which the user is not registered
-
-//!                           28) 1.2.0.69.0 Closing key store 1 - deprecated
-
-//!                           29) 1.2.0.69.0 Closing key store 1
-
-//!                           30) 1.4.999.2, Sleep 5 seconds
-
-//!                           31) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        init                   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-008
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        authenticationpolicy   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-009
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-010
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-011
-
-RUN_TEST_STEP                 -1    CTestHandler        listallkeys            tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-012
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        exportkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-013
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-014
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        deletekeys             tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-015
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        authenticationpolicy   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-016
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        authenticationpolicy   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-017
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        addkey                 tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-018
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        addkey                 tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-019
-
-RUN_TEST_STEP !Error=-10815   -1    CTestHandler        addkey                 tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-020
-
-RUN_TEST_STEP !Error=-10815   -1    CTestHandler        addkey                 tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-021
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        importkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-022
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        importkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-023
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        importkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-024
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        importkey              tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-025
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        authenticationpolicy   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-026
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        authenticationpolicy   tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-027
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  tkeystore_authentication2.ini   SEC-TKEYSTORE_AUTHENTICATION2-0001-030
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-TKEYSTORE_AUTHENTICATION2-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_nouserregistered.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,134 +0,0 @@
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-002]
-<actionbody>
-	<mode>manager</mode>
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-	<keystoreindex>4</keystoreindex>
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-004]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-005]
-<actionbody>
-	<mode>manager</mode>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-006]
-<actionbody>
-	<keyusage>Derive</keyusage>
-	<keysize>512</keysize>
-	<keylabel>cheeku</keylabel>
-	<keyalgorithm>DH</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keystore>1</keystore>
-	<authexpression>strong</authexpression>
-	<freshness>0</freshness>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-007]
-<actionbody>
-	<keyalgorithm>DH</keyalgorithm>
-	<deletecount>0</deletecount>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-008]
-<actionbody>
-	<keyusage>Derive</keyusage>
-	<keysize>512</keysize>
-	<keylabel>cheeku</keylabel>
-	<keyalgorithm>DH</keyalgorithm>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<keyaccesstype>Local</keyaccesstype>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-009]
-<actionbody>
-	<authmode>set</authmode>
-	<keylabel>cheeku</keylabel>
-	<authexpression>medium</authexpression>
-	<freshness>21</freshness>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-010]
-<actionbody>
-	<authmode>get</authmode>
-	<keylabel>cheeku</keylabel>
-	<expectedexpression>medium</expectedexpression>
-	<expectedfreshness>21</expectedfreshness>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-011]
-<actionbody>
-	<listcount>2</listcount>
-	<foundkey>cheeku</foundkey>
-		<foundkey>cheeku</foundkey>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-012]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-013]
-<actionbody>
-	<ImportData>pkcs8rsa.001</ImportData>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyaccesstype>Extractable</keyaccesstype>
-	<encrypted>1</encrypted>
-	<passphrase>importmykey</passphrase>
-	<disabledialogcheck>1</disabledialogcheck>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-014]
-<actionbody>
-	<keylabel>cheeku</keylabel>
-	<policy>
-	<secureid>0x101FFFFF</secureid>
-	<capability>DRM</capability>
-	<capability>ReadUserData</capability>
-	</policy>
-	<authenticate>1</authenticate>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-015]
-<actionbody>
-	<keylabel>cheeku</keylabel>
-	<policy>
-	<capability>DRM</capability>
-	<capability>ReadUserData</capability>
-	<capability>WriteUserData</capability>
-	</policy>
-	<authenticate>1</authenticate>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-016]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>0</encrypted>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-017]
-<actionbody>
-	<ExportFile>export_pkcs8rsa_0.001</ExportFile>
-	<keyusage>allusagesbutNR</keyusage>
-	<keylabel>gm0</keylabel>
-	<keyalgorithm>RSA</keyalgorithm>
-	<encrypted>1</encrypted>
-	<passphrase>exportmykey</passphrase>
-</actionbody>
-
-[SEC-TKEYSTORE_NOUSERREGISTERED-0001-020]
-<actionbody>
-	<seconds>5</seconds>
-</actionbody>
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_nouserregistered.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,112 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-TKEYSTORE_NOUSERREGISTERED-0001
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_NOUSERREGISTERED-0001
-
-//! @SYMTestCaseDesc          
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) Closing key store
-
-//!                           4) 1.0.0.0.1,Opening key store 1 in manager mode
-
-//!                           5) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           6) 1.0.0.1.0,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           7) Delete key (TEST ID: GT0140KEY004)
-
-//!                           8) 1.0.0.51.1, Get it again
-
-//!                           9) Set a new authentication policy for a key with which the user is not registered
-
-//!                           10) Gets authentication policy for a key
-
-//!                           11) 1.0.0.1.1,List all keys (TEST ID: INC103084-KEY001)
-
-//!                           12) 1.1.0 Import a RSA key
-
-//!                           13) 1.1.0 Import a RSA key
-
-//!                           14) 6.2.1, Set cheeku's use policy based on SID and capabilities
-
-//!                           15) 6.2.7.4, Set cheeku's management policy based on just capabilities
-
-//!                           16) 1.1.5 Export a RSA key
-
-//!                           17) 1.1.5 Export a RSA key
-
-//!                           18) 1.2.0.69.0 Closing key store 1
-
-//!                           19) 1.2.0.69.1 Closing key store 2
-
-//!                           20) 1.4.999.2, Sleep 5 seconds
-
-//!                           21) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        init                   tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-005
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        addkey                 tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-006
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        deletekeys             tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-007
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        getkeyinfo             tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-008
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        authenticationpolicy   tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-009
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        authenticationpolicy   tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-010
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        listallkeys            tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-011
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        importkey              tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-012
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        importkey              tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-013
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        setusepolicy           tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-014
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        setmanagementpolicy    tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-015
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        exportkey              tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-016
-
-RUN_TEST_STEP !Error=-11012   -1    CTestHandler        exportkey              tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-017
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  tkeystore_nouserregistered.ini   SEC-TKEYSTORE_NOUSERREGISTERED-0001-020
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-TKEYSTORE_NOUSERREGISTERED-0001
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_useauth.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5958 +0,0 @@
-[SEC-TKEYSTORE_USEAUTH-0001-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>2</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-004]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckKeyStoreLabel>1</CheckKeyStoreLabel>
-
-	<keystoreindex>4</keystoreindex>
-
-	<keystorelabel>Dummy KeyStore Manager1</keystorelabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-006]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-	<CheckStoreCount>1</CheckStoreCount>
-
-	<KeyStoreCount>4</KeyStoreCount>
-
-	<KeyStoreManagerCount>3</KeyStoreManagerCount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-007]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-008]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-009]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-		<foundkey>cheeku</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-010]
-
-<actionbody>
-
-	<ExportFile>export_DHkey.001</ExportFile>
-
-	<keyusage>Derive</keyusage>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<encrypted>0</encrypted>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-011]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-012]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<keystore>0</keystore>
-
-	<timeout>0</timeout>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-013]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-014]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-015]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-016]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cheeku</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keystore>0</keystore>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-017]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-018]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-019]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-020]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-021]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-022]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>DSA</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0001-023]
-
-<actionbody>
-
-	<keylabel>banana</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0002-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-001]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mangosteen</keylabel>
-
-	<keyalgorithm>BAD</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-002]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-003]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-004]
-
-<actionbody>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<open>RSA</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-005]
-
-<actionbody>
-
-	<keylabel>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</keylabel>
-
-	<open>RSA</open>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-006]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>beansprout</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-007]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>beansprout</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-008]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-009]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>carrot</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-010]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-011]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is a text of 21.</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-012]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>1</signdigest>
-
-
-
-
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-013]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>digest!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-014]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>artichoke</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-015]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>artichoke</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-016]
-
-<actionbody>
-
-	<keylabel>artichoke</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-017]
-
-<actionbody>
-
-	<keylabel>artichoke</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is a text of 21.</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-018]
-
-<actionbody>
-
-	<keylabel>artichoke</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-019]
-
-<actionbody>
-
-	<keylabel>artichoke</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>2</signdigest>
-
-
-
-
-
-	<text>TheDigest</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-020]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-021]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-022]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0003-023]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<n>DA9A18547FF03B385CC16508C173A7EF4EB61CB40EF8FEF3B31F145051676166BCDC3FE6B799FC394D08C26385F9413F896E09117E46209D6923602683CEA100924A6EE695281775C619DAA94EA8CB3691B4275B0183F1D39639EBC92995FE645D6C1BC28D409E585549BBD2C5DCDD6C208B04EADD8B7A6D997F72CBAD88390F</n>
-
-	<g>02</g>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-001]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>apple123</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>jackfruit</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-003]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>custard apple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-004]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keyusage>NR</keyusage>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>grape</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-005]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pomegranet</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-006]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>511</keysize>
-
-	<keylabel>veryshort</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-007]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>2049</keysize>
-
-	<keylabel>pear</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-008]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>2048</keysize>
-
-	<keylabel>guava</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-009]
-
-<actionbody>
-
-	<keylabel>guava</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-010]
-
-<actionbody>
-
-	<keylabel>guava</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-011]
-
-<actionbody>
-
-	<keylabel>guava</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>predigested</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-012]
-
-<actionbody>
-
-	<keylabel>guava</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-013]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>523</keysize>
-
-	<keylabel>kiwi</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-014]
-
-<actionbody>
-
-	<keylabel>kiwi</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-015]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>523</keysize>
-
-	<keylabel>kiwi</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-016]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>beansprout</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>apple123</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>guava</foundkey>
-
-	<foundkey>kiwi</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-   		<foundkey>pomegranet</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-017]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-018]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>beansprout</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>guava</foundkey>
-
-	<foundkey>apple123</foundkey>
-
-	<foundkey>kiwi</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-019]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>beansprout</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>guava</foundkey>
-
-	<foundkey>apple123</foundkey>
-
-	<foundkey>kiwi</foundkey>
-
-	<foundkey>
-
-To be, or not to be: that is the question:
-
-Whether 'tis nobler in the mind to suffer
-
-The slings and arrows of outrageous fortune,
-
-Or to take arms against a sea of troubles,
-
-And by opposing end them? To die: to sleep;
-
-No more; and by a sleep to say we end
-
-The heart-ache and the thousand natural shocks
-
-That flesh is heir to, 'tis a consummation
-
-Devoutly to be wish'd. To die, to sleep;
-
-To sleep: perchance to dream: ay, there's the rub;
-
-For in that sleep of death what dreams may come
-
-When we have shuffled off this mortal coil,
-
-Must give us pause: there's the respect
-
-That makes calamity of so long life;
-
-For who would bear the whips and scorns of time,
-
-The oppressor's wrong, the proud man's contumely,
-
-The pangs of despised love, the law's delay,
-
-The insolence of office and the spurns
-
-That patient merit of the unworthy takes,
-
-When he himself might his quietus make
-
-With a bare bodkin? Who would fardels bear,
-
-To grunt and sweat under a weary life,
-
-But that the dread of something after death,
-
-The undiscover'd country from whose bourn
-
-No traveller returns, puzzles the will
-
-And makes us rather bear those ills we have
-
-Than fly to others that we know not of?
-
-Thus conscience does make cowards of us all;
-
-And thus the native hue of resolution
-
-Is sicklied o'er with the pale cast of thought,
-
-And enterprises of great pith and moment
-
-With this regard their currents turn awry,
-
-And lose the name of action.--Soft you now!
-
-The fair Ophelia! Nymph, in thy orisons
-
-Be all my sins remember'd. 
-
-	</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>carrot</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-020]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>6</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-021]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-022]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-   		<foundkey>pomegranet</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-023]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-024]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-025]
-
-<actionbody>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>cheeku</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>banana</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-   		<foundkey>jackfruit</foundkey>
-
-   		<foundkey>custard apple</foundkey>
-
-   		<foundkey>grape</foundkey>
-
-   		<foundkey>pomegranet</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-026]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-027]
-
-<actionbody>
-
-	<nonexistent>1</nonexistent>
-
-	<deletecount>0</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-028]
-
-<actionbody>
-
-	<nonexistent>1</nonexistent>
-
-	<deletecount>0</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-029]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Cabbage</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-030]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Cabbage</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-031]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Courgette</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-032]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Courgette</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-033]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-034]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-035]
-
-<actionbody>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-036]
-
-<actionbody>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-037]
-
-<actionbody>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>hashed cauli</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-038]
-
-<actionbody>
-
-	<keylabel>Cauliflower</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-039]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Cashew</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-040]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>Cashew</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-041]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cranberry</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-042]
-
-<actionbody>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>cranberry</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-043]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>curly kale</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-044]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>curly kale</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-045]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>Cabbage</foundkey>
-
-	<foundkey>Courgette</foundkey>
-
-	<foundkey>Cauliflower</foundkey>
-
-	<foundkey>Cashew</foundkey>
-
-	<foundkey>cranberry</foundkey>
-
-	<foundkey>curly kale</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-046]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>Cabbage</foundkey>
-
-	<foundkey>Cauliflower</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-047]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>Courgette</foundkey>
-
-	<foundkey>Cashew</foundkey>
-
-	<foundkey>cranberry</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-048]
-
-<actionbody>
-
-	<keylabel>carrot</keylabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-049]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-050]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-051]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-052]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-053]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digestible</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-054]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-055]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa1.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*strawberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-056]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>*IMPORTED*strawberry</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-057]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa2.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*pumpkin</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-058]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>*IMPORTED*pumpkin</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-059]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa3.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-060]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>1024</keysize>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-061]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-062]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-063]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>coconuthash</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-064]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-065]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa4.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-066]
-
-<actionbody>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keysize>2048</keysize>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-067]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-068]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-069]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>DigestedMango</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-070]
-
-<actionbody>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>2</signdigest>
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-071]
-
-<actionbody>
-
-	<ImportData>pkcs8invalidrsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*badberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-072]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*raspberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-073]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa1.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*strawberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-074]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa2.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*gooseberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-075]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa3.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*cranberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-076]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa4.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*Stichbury</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-077]
-
-<actionbody>
-
-	<ImportData>pkcs8invaliddsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*blackberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-078]
-
-<actionbody>
-
-	<foundkey>cheeku</foundkey>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>mango</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>Cabbage</foundkey>
-
-	<foundkey>Courgette</foundkey>
-
-	<foundkey>Cauliflower</foundkey>
-
-	<foundkey>Cashew</foundkey>
-
-	<foundkey>cranberry</foundkey>
-
-	<foundkey>curly kale</foundkey>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-	<foundkey>*IMPORTED*DSA*raspberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*gooseberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*cranberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*Stichbury</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-079]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>Cabbage</foundkey>
-
-	<foundkey>Cauliflower</foundkey>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-080]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>carrot</foundkey>
-
-	<foundkey>Courgette</foundkey>
-
-	<foundkey>Cashew</foundkey>
-
-	<foundkey>cranberry</foundkey>
-
-	<foundkey>artichoke</foundkey>
-
-	<foundkey>*IMPORTED*DSA*raspberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*gooseberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*cranberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*Stichbury</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-081]
-
-<actionbody>
-
-	<keylabel>The fruit of the tree of life</keylabel>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-082]
-
-<actionbody>
-
-	<deletecount>24</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-083]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*banana</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-084]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa1.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*strawberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-085]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa2.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*pumpkin</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-086]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa3.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*coconut</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-087]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa4.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*mango</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-088]
-
-<actionbody>
-
-	<ImportData>pkcs8invalidrsa.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED*badberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-089]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*raspberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-090]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa1.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*strawberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-091]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa2.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*gooseberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-092]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa3.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*cranberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-093]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa4.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*Stichbury</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-094]
-
-<actionbody>
-
-	<ImportData>pkcs8invaliddsa.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED*DSA*blackberry</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-095]
-
-<actionbody>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-	<foundkey>*IMPORTED*DSA*raspberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*gooseberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*cranberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*Stichbury</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-096]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-097]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>*IMPORTED*DSA*raspberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*gooseberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*cranberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*Stichbury</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-098]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsaDER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted raddicio</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-099]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsaDER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted fig</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import pinkcloud</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-100]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsa1DER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted lollo rosso</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-101]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsa2DER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted rocket</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-102]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsa3DER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted iceberg lettuce</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-103]
-
-<actionbody>
-
-	<ImportData>encryptPK8rsa4DER.txt</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted watercress</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-104]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-	<foundkey>*IMPORTED* encrypted raddicio</foundkey>
-
-	<foundkey>*IMPORTED* encrypted lollo rosso</foundkey>
-
-	<foundkey>*IMPORTED* encrypted rocket</foundkey>
-
-	<foundkey>*IMPORTED* encrypted iceberg lettuce</foundkey>
-
-	<foundkey>*IMPORTED* encrypted watercress</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-105]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsaDER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted physalis</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-106]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa1DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted papaya</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-107]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa2DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted pomegranate</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-108]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa3DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted pear</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-109]
-
-<actionbody>
-
-	<ImportData>encryptPK8dsa4DER.txt</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>*IMPORTED* encrypted purple plum</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-110]
-
-<actionbody>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<foundkey>*IMPORTED*DSA*raspberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*gooseberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*cranberry</foundkey>
-
-	<foundkey>*IMPORTED*DSA*Stichbury</foundkey>
-
-	<foundkey>*IMPORTED* encrypted physalis</foundkey>
-
-	<foundkey>*IMPORTED* encrypted papaya</foundkey>
-
-	<foundkey>*IMPORTED* encrypted pomegranate</foundkey>
-
-	<foundkey>*IMPORTED* encrypted pear</foundkey>
-
-	<foundkey>*IMPORTED* encrypted purple plum</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-111]
-
-<actionbody>
-
-	<ImportData>testvector1.bin</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted evil one</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<passphrase>import clanger</passphrase>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-112]
-
-<actionbody>
-
-	<ImportData>binarygarbage.bin</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>*IMPORTED* encrypted evil one</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-113]
-
-<actionbody>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<foundkey>*IMPORTED*banana</foundkey>
-
-	<foundkey>*IMPORTED*strawberry</foundkey>
-
-	<foundkey>*IMPORTED*pumpkin</foundkey>
-
-	<foundkey>*IMPORTED*coconut</foundkey>
-
-	<foundkey>*IMPORTED*mango</foundkey>
-
-	<foundkey>*IMPORTED* encrypted raddicio</foundkey>
-
-	<foundkey>*IMPORTED* encrypted lollo rosso</foundkey>
-
-	<foundkey>*IMPORTED* encrypted rocket</foundkey>
-
-	<foundkey>*IMPORTED* encrypted iceberg lettuce</foundkey>
-
-	<foundkey>*IMPORTED* encrypted watercress</foundkey>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-114]
-
-<actionbody>
-
-	<deletecount>20</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-115]
-
-<actionbody>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0004-118]
-
-<actionbody>
-
-	<mode>user</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0005-001]
-
-<actionbody>
-
-	<mode>user</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0005-002]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0006-001]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0006-002]
-
-<actionbody>
-
-	<mode>user</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0007-001]
-
-<actionbody>
-
-	<mode>manager</mode>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-001]
-
-<actionbody>
-
-	<keyusage>none</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-002]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<timeout>0</timeout>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-003]
-
-<actionbody>
-
-	<keyusage>none</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-006]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0008-007]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0009-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-001]
-
-<actionbody>
-
-	<keyusage>SignRecover</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-002]
-
-<actionbody>
-
-	<keyusage>SignRecover</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0010-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-001]
-
-<actionbody>
-
-	<keyusage>Decrypt</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-002]
-
-<actionbody>
-
-	<keyusage>Decrypt</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0011-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-001]
-
-<actionbody>
-
-	<keyusage>Unwrap</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-002]
-
-<actionbody>
-
-	<keyusage>Unwrap</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0012-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0013-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-001]
-
-<actionbody>
-
-	<keyusage>SignRecover</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-002]
-
-<actionbody>
-
-	<keyusage>SignRecover</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0014-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-001]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-002]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0015-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-001]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-002]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0016-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-001]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-002]
-
-<actionbody>
-
-	<keyusage>NR</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>DSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-004]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0017-006]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0018-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0018-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<keyaccesstype>NeverExtractable</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0018-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0019-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0019-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<keyaccesstype>NeverExtractable</keyaccesstype>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0019-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0020-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0020-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0020-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0021-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0021-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-	<keyaccesstype>Sensitive</keyaccesstype>
-
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0021-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0022-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>AlwaysSensitive</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0022-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>NeverExtractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0022-003]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<keyaccesstype>Local</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0023-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0023-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<native>1</native>
-
-	<startdate>unset</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0023-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0024-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-
-
-	<startdate>10/08/1977 12:43:59</startdate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0024-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<native>1</native>
-
-	<startdate>10/08/1977 12:43:59</startdate>
-
-	<enddate>unset</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0024-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0025-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-
-
-	<enddate>27/09/2079 23:23:23</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0025-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<native>1</native>
-
-	<enddate>27/09/2079 23:23:23</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0025-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0026-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-
-
-	<startdate>10/08/1977 12:43:59</startdate>
-
-	<enddate>27/09/2079 23:23:23</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0026-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<native>1</native>
-
-	<startdate>10/08/1977 12:43:59</startdate>
-
-	<enddate>27/09/2079 23:23:23</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0026-003]
-
-<actionbody>
-
-	<deletecount>1</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0027-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<startdate>27/09/2079 23:23:23</startdate>
-
-	<enddate>10/08/1977 12:43:59</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0028-001]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-	<startdate>27/09/1879 23:23:23</startdate>
-
-	<enddate>10/08/1977 12:43:59</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-001]
-
-<actionbody>
-
-	<hometime>01/01/2000 00:00:00</hometime>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-002]
-
-<actionbody>
-
-	<keyusage>Sign</keyusage>
-
-	<keyusage>Decrypt</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>pineapple</keylabel>
-
-	<keyalgorithm>RSA</keyalgorithm>
-
-
-
-	<enddate>01/01/2001 00:00:00</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-003]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<timeout>0</timeout>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-004]
-
-<actionbody>
-
-	<keyusage>Derive</keyusage>
-
-	<keysize>512</keysize>
-
-	<keylabel>mango</keylabel>
-
-	<keyalgorithm>DH</keyalgorithm>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-
-
-	<enddate>01/01/2001 00:00:00</enddate>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-005]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-006]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-007]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-008]
-
-<actionbody>
-
-	<hometime>01/01/2003 00:00:00</hometime>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-009]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-010]
-
-<actionbody>
-
-	<keylabel>pineapple</keylabel>
-
-	<text>Ook!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-011]
-
-<actionbody>
-
-	<keylabel>mango</keylabel>
-
-	<open>DH</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-012]
-
-<actionbody>
-
-	<deletecount>2</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-013]
-
-<actionbody>
-
-	<ImportData>pkcs8rsa4.001</ImportData>
-
-	<keyusage>allusagesbutNR</keyusage>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-014]
-
-<actionbody>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<timeout>0</timeout>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-015]
-
-<actionbody>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<open>Decrypt</open>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-016]
-
-<actionbody>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-017]
-
-<actionbody>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<open>RSA</open>
-
-	<text>This is text of thirty-two chars</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-018]
-
-<actionbody>
-
-	<keylabel>BIGRSA</keylabel>
-
-	<open>RSA</open>
-
-	<signdigest>1</signdigest>
-
-	<text>digested!</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-019]
-
-<actionbody>
-
-	<ImportData>pkcs8dsa4.001</ImportData>
-
-	<keyusage>DSAUsage</keyusage>
-
-	<keylabel>BIGDSA</keylabel>
-
-	<keyaccesstype>Extractable</keyaccesstype>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-020]
-
-<actionbody>
-
-	<keylabel>BIGDSA</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is text of 20 .</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-021]
-
-<actionbody>
-
-	<keylabel>BIGDSA</keylabel>
-
-	<open>DSA</open>
-
-	<text>This is a text of 21.</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-022]
-
-<actionbody>
-
-	<keylabel>BIGDSA</keylabel>
-
-	<open>DSA</open>
-
-	<signdigest>1</signdigest>
-
-
-
-	<text>Had we but world enough, and time,
-
-This coyness, lady, were no crime.
-
-We would sit down and think which way
-
-To walk, and pass our long love's day;
-
-Thou by the Indian Ganges' side
-
-Shouldst rubies find; I by the tide
-
-Of Humber would complain. I would
-
-Love you ten years before the Flood;
-
-And you should, if you please, refuse
-
-Till the conversion of the Jews.
-
-My vegetable love should grow
-
-Vaster than empires, and more slow.
-
-An hundred years should go to praise
-
-Thine eyes, and on thy forehead gaze;
-
-Two hundred to adore each breast,
-
-But thirty thousand to the rest;
-
-An age at least to every part,
-
-And the last age should show your heart.
-
-For, lady, you deserve this state,
-
-Nor would I love at lower rate.
-
-
-
-        But at my back I always hear
-
-Time's winged chariot hurrying near;
-
-And yonder all before us lie
-
-Deserts of vast eternity.
-
-Thy beauty shall no more be found,
-
-Nor, in thy marble vault, shall sound
-
-My echoing song; then worms shall try
-
-That long preserv'd virginity,
-
-And your quaint honour turn to dust,
-
-And into ashes all my lust.
-
-The grave's a fine and private place,
-
-But none I think do there embrace.
-
-
-
-        Now therefore, while the youthful hue
-
-Sits on thy skin like morning dew,
-
-And while thy willing soul transpires
-
-At every pore with instant fires,
-
-Now let us sport us while we may;
-
-And now, like am'rous birds of prey,
-
-Rather at once our time devour,
-
-Than languish in his slow-chapp'd power.
-
-Let us roll all our strength, and all
-
-Our sweetness, up into one ball;
-
-And tear our pleasures with rough strife
-
-Thorough the iron gates of life.
-
-Thus, though we cannot make our sun
-
-Stand still, yet we will make him run</text>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-023]
-
-<actionbody>
-
-	<deletecount>2</deletecount>
-
-</actionbody>
-
-
-
-[SEC-TKEYSTORE_USEAUTH-0029-025]
-
-<actionbody>
-
-	<seconds>5</seconds>
-
-</actionbody>
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/scripts/tkeystore_useauth.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1558 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0001
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0001
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//!                           Adding a key
-
-//!                           //////////////////////////////////////////////////////////////////////////////////
-
-//!                           The action name now bears, when relevant, the TEST ID which will help map the
-
-//!                           resulting log to the DLRs, a mapping of these (TEST IDs to REQ number) can be found in
-
-//!                           "V:\Dev\GT\GT 0140 Security\Test and Integration\Test Specifications\DLR mappings\keystore.xls"
-
-//! @SYMTestActions           1) Delete keystore data file
-
-//!                           2) Retrieving label of a particular key store
-
-//!                           3) Closing key store
-
-//!                           4) Retrieving label of a particular key store
-
-//!                           5) Closing key store
-
-//!                           6) 1.0.0.0.1,Opening key store 1 in manager mode - deprecated
-
-//!                           7) 1.0.0.0.2,Opening key store 2 in manager mode
-
-//!                           8) 1.0.0.1.0,Add a key (TEST ID: SEC-FileTokens-PREQ218-0001)
-
-//!                           9) 1.0.0.1.1,List all keys (TEST ID: SEC-FileTokens-PREQ218-0002)
-
-//!                           10) 1.0.0.1.0.0,export a DH key
-
-//!                           11) 1.0.0.1,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           12) 1.0.0.1.1,Set passphrase timeout to "don't cache"
-
-//!                           13) 1.0.0.2,Get it again
-
-//!                           14) 1.0.0.2.1,Open it
-
-//!                           15) 1.0.0.2.2,Open a banana for decrypt
-
-//!                           16) Changing password - First two wrong tries, third correct passphrase
-
-//!                           17) Decrypt
-
-//!                           18) 1.0.0.2.2.1, Sign with a banana, 20 char text
-
-//!                           19) 1.0.0.2.2.2, Sign with a banana, 32 char text
-
-//!                           20) 1.0.0.2.2.2.1, Sign digest with a banana
-
-//!                           21) 1.0.0.2.2.3, Sign digest with a banana, text too large
-
-//!                           22) 1.0.0.2.3,Open a banana as a DSA key
-
-//!                           23) 1.0.0.2.4,Open a banana as a DH key
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeystoredata  
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-004
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-008
-
-RUN_TEST_STEP                 -1    CTestHandler        listallkeys            tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-009
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        exportkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-010
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-011
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        settimeout             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-012
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-013
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-014
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-015
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        changepassphrase       tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-016
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-017
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-018
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-019
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-020
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-021
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-022
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0001-023
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0001
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0002
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0002
-
-//! @SYMTestCaseDesc          Try to add a key that is already there - should fail with KErrAlreadyExists
-
-//! @SYMTestActions           1) 1.0.0.3,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-RUN_TEST_STEP !Error=-11      -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0002-001
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0002
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0003
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0003
-
-//! @SYMTestCaseDesc          Add a key with an unsupported algorithm
-
-//! @SYMTestActions           1) 1.0.0.4,Add a key with an unsupported algorithm (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           2) 1.0.0.5,Add a key with a very long label (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           3) 1.0.0.6,Get that key again
-
-//!                           4) 1.0.0.6.1,Open that key again
-
-//!                           5) 1.0.0.6.2 Sign long key
-
-//!                           6) 1.0.0.7,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           7) 1.0.0.8,Check getting it again
-
-//!                           8) 1.0.0.9,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           9) 1.0.0.10,Get it again
-
-//!                           10) 1.0.0.10.1, Sign with a carrot, 20 char text
-
-//!                           11) 1.0.0.10.2, Sign with carrot, text too long (21 chars)
-
-//!                           12) 1.0.0.10.2, Sign digest with carrot
-
-//!                           13) 1.0.0.10.3, Sign digest with a carrot, fail hash
-
-//!                           14) 1.0.0.10.4,Add a key
-
-//!                           15) 1.0.0.10.5,Get it again
-
-//!                           16) 1.0.0.10.6, Sign with a artichoke, 20 char text
-
-//!                           17) 1.0.0.10.7, Sign with artichoke, text too long (21 chars)
-
-//!                           18) 1.0.0.10.7, Sign digest with artichoke
-
-//!                           19) 1.0.0.10.8, Sign digest with artichoke, fail hash
-
-//!                           20) 1.0.0.11,Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           21) 1.0.0.12,Get key info
-
-//!                           22) 1.0.0.12.1,Open it
-
-//!                           23) 1.0.0.12.2, Test derive
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-002
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-003
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-005
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-006
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-008
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-009
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-010
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-011
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-012
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-013
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-014
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-015
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-016
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-017
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-018
-
-RUN_TEST_STEP !Error=-2       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-019
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-020
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-021
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-022
-
-RUN_TEST_STEP                 -1    CTestHandler        derive                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0003-023
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0003
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0004
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0004
-
-//! @SYMTestCaseDesc          test added for combined NR and Sign usage
-
-//! @SYMTestActions           1) 1.0.0.12.0.0,Add a key with legal usage
-
-//!                           2) 1.0.0.13,Add a key with illegal usage (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           3) 1.0.0.14,Add a key with illegal usage (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           4) 1.0.0.15,Add a key with illegal usage (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           5) 1.0.0.16,Add a key with illegal usage (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           6) 1.0.0.17,Add a key with an unacceptably short length (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           7) 1.0.0.18,Add a key with an unacceptably long length (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           8) 1.0.0.19,Add a long key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           9) 1.0.0.19.1, Sign with a guava, 20 char text
-
-//!                           10) 1.0.0.19.2, Sign with a guava, 32 char text
-
-//!                           11) 1.0.0.19.2, Sign digest with a guava
-
-//!                           12) 1.0.0.2.2.3, Sign digest with a guava, text too large
-
-//!                           13) 1.0.0.20,Add a strangely-lengthed key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           14) 1.0.0.21.1,Open it
-
-//!                           15) 1.0.0.21,Get key info
-
-//!                           16) 1.0.0.22 List everything (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           17) 1.0.0.23 List DSA keys (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           18) 1.0.0.24 List Sign-usage keys (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           19) 1.0.0.25 List 'All usages' keys (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           20) 1.0.0.26, Delete RSA keys (TEST ID: GT0140KEY004)
-
-//!                           21) 1.0.0.27 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           22) 1.0.0.28 List everything (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           23) 1.0.0.29, Add a key that was previously deleted (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           24) 1.0.0.30 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           25) 1.0.0.31 List everything (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           26) 1.0.0.32, Delete it again (TEST ID: GT0140KEY004)
-
-//!                           27) 1.0.0.33, Try to delete a non existent key (TEST ID: GT0140KEY004)
-
-//!                           28) 1.0.0.34, Try to delete a non existent key (TEST ID: GT0140KEY004)
-
-//!                           29) 1.0.0.35, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           30) 1.0.0.36, Get key info
-
-//!                           31) 1.0.0.37, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           32) 1.0.0.38, Get the key
-
-//!                           33) 1.0.0.39, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           34) 1.0.0.40, Get key info
-
-//!                           35) 1.0.0.40.1, Sign with a cauliflower, 20 char text
-
-//!                           36) 1.0.0.40.2, Sign with a cauliflower, 32 char text
-
-//!                           37) 1.0.0.40.2, Sign digest with a cauliflower
-
-//!                           38) 1.0.0.40.3, Sign digest with a cauliflower, text too large
-
-//!                           39) 1.0.0.41, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           40) 1.0.0.42, Get key info
-
-//!                           41) 1.0.0.43, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           42) 1.0.0.44, Get it
-
-//!                           43) 1.0.0.45, Add a key (TEST ID: GT0140-KEY002 and GT0140-KEY003)
-
-//!                           44) 1.0.0.46, Get key info
-
-//!                           45) 1.0.0.47 List everything (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           46) 1.0.0.48 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           47) 1.0.0.49 List DSA keys (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           48) 1.0.0.50, Get a carrot
-
-//!                           49) 1.0.0.51 Import a RSA key (TEST ID: SEC-FileTokens-PREQ218-0003)
-
-//!                           50) 1.0.0.51.1, Get it again
-
-//!                           51) 1.0.0.51.2, Sign with an imported banana, 20 char text
-
-//!                           52) 1.0.0.51.3, Sign with a *IMPORTED*banana, 32 char text
-
-//!                           53) 1.0.0.51.3, Sign digest with a *IMPORTED*banana
-
-//!                           54) 1.0.0.51.4, Sign digest with a *IMPORTED*banana, text too large
-
-//!                           55) 1.0.0.52 Import a RSA key
-
-//!                           56) 1.0.0.52.1, Get it again
-
-//!                           57) 1.0.0.53 Import a RSA key
-
-//!                           58) 1.0.0.54, Get it again
-
-//!                           59) 1.0.0.54.1 Import a RSA key
-
-//!                           60) 1.0.0.54.2, Get it again
-
-//!                           61) 1.0.0.54.3, Sign with a *IMPORTED*coconut, 20 char text
-
-//!                           62) 1.0.0.54.4, Sign with a *IMPORTED*coconut, 32 char text
-
-//!                           63) 1.0.0.54.4, Sign digest with a *IMPORTED*coconut
-
-//!                           64) 1.0.0.54.5, Sign digest with a *IMPORTED*coconut, text too large
-
-//!                           65) 1.0.0.55 Import a RSA key
-
-//!                           66) 1.0.0.55.1, Get it again
-
-//!                           67) 1.0.0.55.2, Sign with a *IMPORTED*mango, 20 char text
-
-//!                           68) 1.0.0.55.3, Sign with a *IMPORTED*mango, 32 char text
-
-//!                           69) 1.0.0.55.3, Sign digest with a *IMPORTED*mango
-
-//!                           70) 1.0.0.55.4, Sign digest with a *IMPORTED*mango, text too large
-
-//!                           71) 1.0.0.56 Try to import an invalid length RSA key
-
-//!                           72) 1.0.0.57 Import a DSA key
-
-//!                           73) 1.0.0.58 Import a DSA key
-
-//!                           74) 1.0.0.59 Import a DSA key
-
-//!                           75) 1.0.0.60 Import a DSA key
-
-//!                           76) 1.0.0.61 Import a DSA key
-
-//!                           77) 1.0.0.62 Try to import an invalid length DSA key
-
-//!                           78) 1.0.0.63 List everything (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           79) 1.0.0.64 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           80) 1.0.0.65 List DSA keys (TEST ID: GT0140-KEY001) (including illegal usage keys)
-
-//!                           81) 1.0.0.66 Get a nonexistent key
-
-//!                           82) 1.0.0.67 Delete everything (TEST ID: GT0140KEY004)
-
-//!                           83) 1.1.0.4 Import a RSA key
-
-//!                           84) 1.1.0.5 Import a RSA key
-
-//!                           85) 1.1.0.6 Import a RSA key
-
-//!                           86) 1.1.0.7 Import a RSA key
-
-//!                           87) 1.1.0.8 Import a RSA key
-
-//!                           88) 1.1.0.9 Try to import an invalid length RSA key
-
-//!                           89) 1.1.0.10 Import a DSA key
-
-//!                           90) 1.1.0.11 Import a DSA key
-
-//!                           91) 1.1.0.12 Import a DSA key
-
-//!                           92) 1.1.0.13 Import a DSA key
-
-//!                           93) 1.1.0.14 Import a DSA key
-
-//!                           94) 1.1.0.15 Try to import an invalid length DSA key
-
-//!                           95) 1.1.0.16 List everything (TEST ID: GT0140-KEY001)
-
-//!                           96) 1.1.0.17 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           97) 1.1.0.18 List DSA keys (TEST ID: GT0140-KEY001)
-
-//!                           98) 1.1.0.19 Import a PKCS5 encrypted RSA key (TEST ID: SEC-FileTokens-PREQ218-0004)
-
-//!                           99) 1.1.0.19.1 Import a PKCS5 encrypted RSA key with the wrong password
-
-//!                           100) 1.1.0.20 Import a PKCS5 encrypted RSA key
-
-//!                           101) 1.1.0.21 Import a PKCS5 encrypted RSA key
-
-//!                           102) 1.1.0.22 Import a PKCS5 encrypted RSA key
-
-//!                           103) 1.1.0.23 Import a PKCS5 encrypted RSA key
-
-//!                           104) 1.1.0.24 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           105) 1.1.0.25 Import a PKCS5 encrypted DSA key
-
-//!                           106) 1.1.0.26 Import a PKCS5 encrypted DSA key
-
-//!                           107) 1.1.0.27 Import a PKCS5 encrypted DSA key
-
-//!                           108) 1.1.0.28 Import a PKCS5 encrypted DSA key
-
-//!                           109) 1.1.0.29 Import a PKCS5 encrypted DSA key
-
-//!                           110) 1.1.0.29.1 List DSA keys (TEST ID: GT0140-KEY001)
-
-//!                           111) 1.1.0.29.2 Try to import invalid data (PKCS5 encrypted RSA key, not PKCS8)
-
-//!                           112) 1.1.0.29.4 Try to import invalid data (garbage)
-
-//!                           113) 1.1.0.33 List RSA keys (TEST ID: GT0140-KEY001)
-
-//!                           114) 1.2, Delete everything (TEST ID: GT0140KEY004)
-
-//!                           115) 1.2.0.68 List everything (TEST ID: GT0140-KEY001)
-
-//!                           116) 1.2.0.69.0 Closing key store 1 - deprecated
-
-//!                           117) 1.2.0.69.1 Closing key store 2
-
-//!                           118) 1.3.2.1,Opening a key store in user mode
-
-//!                           119) 1.3.2.2,Closing key store
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-002
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-003
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-004
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-005
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-006
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-007
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-008
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-009
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-010
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-011
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-012
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-013
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-014
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-015
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-016
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-017
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-018
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-019
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-020
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-021
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-022
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-023
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-024
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-025
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-026
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-027
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-028
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-029
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-030
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-031
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-032
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-033
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-034
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-035
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-036
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-037
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-038
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-039
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-040
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-041
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-042
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-043
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-044
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-045
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-046
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-047
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-048
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-049
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-050
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-051
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-052
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-053
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-054
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-055
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-056
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-057
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-058
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-059
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-060
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-061
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-062
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-063
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-064
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-065
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-066
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-067
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-068
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-069
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-070
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-071
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-072
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-073
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-074
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-075
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-076
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-077
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-078
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-079
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-080
-
-RUN_TEST_STEP !Error=-1       -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-081
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-082
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-083
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-084
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-085
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-086
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-087
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-088
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-089
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-090
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-091
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-092
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-093
-
-RUN_TEST_STEP !Error=-11009   -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-094
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-095
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-096
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-097
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-098
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-099
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-100
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-101
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-102
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-103
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-104
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-105
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-106
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-107
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-108
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-109
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-110
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-111
-
-RUN_TEST_STEP !Error=-6       -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-112
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-113
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-114
-
-RUN_TEST_STEP                 -1    CTestHandler        listkeys               tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-115
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0004-118
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0004
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0005
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0005
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//!                           Opening Unfied Key Store first in user mode, then in manager mode
-
-//!                           //////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 1.3.3.1,Opening a key store in user mode
-
-//!                           2) 1.3.3.2,Opening key store again in manager mode
-
-//!                           3) 1.3.3.3,Closing key store
-
-//!                           4) 1.3.3.3.1,Closing key store
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0005-001
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0005-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0005
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0006
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0006
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//!                           Opening Unified Key Store first in manager mode, then in user mode
-
-//!                           //////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 1.3.4.1,Opening a key store in manager mode
-
-//!                           2) 1.3.4.2,Opening key store again in user mode
-
-//!                           3) 1.3.4.3,Closing key store
-
-//!                           4) 1.3.4.3.1,Closing key store
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0006-001
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0006-002
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0006
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0007
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0007
-
-//! @SYMTestCaseDesc          //////////////////////////////////////////////////////////////////////////////////
-
-//! @SYMTestActions           1) 1.4.0,Opening key store in manager mode
-
-RUN_TEST_STEP                 -1    CTestHandler        init                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0007-001
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0007
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0008
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0008
-
-//! @SYMTestCaseDesc          1.4.1 Test key usage
-
-//!                           
-
-//!                           1.4.1.1. Test keys with no usage
-
-//! @SYMTestActions           1) 1.4.1.1.1, Add key (usage: none)
-
-//!                           2) 1.4.1.1.2, Set passphrase timeout to "don't cache"
-
-//!                           3) 1.4.1.1.3, Check info
-
-//!                           4) 1.4.1.1.4, Sign, expect failure
-
-//!                           5) 1.4.1.1.5, Decrypt, expect failure
-
-//!                           6) 1.4.1.1.6, Derive, expect failure
-
-//!                           7) 1.4.1.1.7, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-001
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        settimeout             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-002
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-003
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-004
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-005
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-006
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0008-007
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0008
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0009
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0009
-
-//! @SYMTestCaseDesc          1.4.1.2. Test keys with sign usage only
-
-//! @SYMTestActions           1) 1.4.1.2.1, Add key
-
-//!                           2) 1.4.1.2.2, Check info
-
-//!                           3) 1.4.1.2.3, Sign, expect success
-
-//!                           4) 1.4.1.2.4, Decrypt, expect failure
-
-//!                           5) 1.4.1.2.5, Derive, expect failure
-
-//!                           6) 1.4.1.2.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-002
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-003
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0009-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0009
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0010
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0010
-
-//! @SYMTestCaseDesc          1.4.1.3. Test keys with signRecover usage only
-
-//! @SYMTestActions           1) 1.4.1.3.1, Add key
-
-//!                           2) 1.4.1.3.2, Check info
-
-//!                           3) 1.4.1.3.3, Sign, expect success
-
-//!                           4) 1.4.1.3.4, Decrypt, expect failure
-
-//!                           5) 1.4.1.3.5, Derive, expect failure
-
-//!                           6) 1.4.1.3.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-002
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-003
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0010-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0010
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0011
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0011
-
-//! @SYMTestCaseDesc          1.4.1.5. Test keys with decrypt usages
-
-//! @SYMTestActions           1) 1.4.1.5.1, Add key
-
-//!                           2) 1.4.1.5.2, Check info
-
-//!                           3) 1.4.1.5.3, Sign, expect failure
-
-//!                           4) 1.4.1.5.4, Decrypt
-
-//!                           5) 1.4.1.5.5, Derive, expect failure
-
-//!                           6) 1.4.1.5.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-002
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-003
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0011-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0011
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0012
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0012
-
-//! @SYMTestCaseDesc          1.4.1.8. Test keys with unwrap usage
-
-//! @SYMTestActions           1) 1.4.1.8.1, Add key
-
-//!                           2) 1.4.1.8.2, Check info
-
-//!                           3) 1.4.1.8.3, Sign, expect failure
-
-//!                           4) 1.4.1.8.4, Decrypt
-
-//!                           5) 1.4.1.8.5, Derive, expect failure
-
-//!                           6) 1.4.1.8.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-002
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-003
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0012-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0012
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0013
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0013
-
-//! @SYMTestCaseDesc          1.4.1.9. Test DSA keys with sign usage only
-
-//! @SYMTestActions           1) 1.4.1.9.1, Add key
-
-//!                           2) 1.4.1.9.2, Check info
-
-//!                           3) 1.4.1.9.3, Sign, expect success
-
-//!                           4) 1.4.1.9.4, Decrypt, expect failure
-
-//!                           5) 1.4.1.9.5, Derive, expect failure
-
-//!                           6) 1.4.1.9.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-002
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-003
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0013-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0013
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0014
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0014
-
-//! @SYMTestCaseDesc          1.4.1.10. Test DSA keys with signRecover usage only
-
-//! @SYMTestActions           1) 1.4.1.10.1, Add key
-
-//!                           2) 1.4.1.10.2, Check info
-
-//!                           3) 1.4.1.10.3, Sign, expect success
-
-//!                           4) 1.4.1.10.4, Decrypt, expect failure
-
-//!                           5) 1.4.1.10.5, Derive, expect failure
-
-//!                           6) 1.4.1.10.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-002
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-003
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0014-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0014
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0015
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0015
-
-//! @SYMTestCaseDesc          1.4.1.12. Test keys with derive usage
-
-//! @SYMTestActions           1) 1.4.1.12.1, Add key
-
-//!                           2) 1.4.1.12.2, Check info
-
-//!                           3) 1.4.1.12.3, Sign, expect failure
-
-//!                           4) 1.4.1.12.4, Decrypt, expect failure
-
-//!                           5) 1.4.1.12.5, Derive, expect failure
-
-//!                           6) 1.4.1.12.6, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-002
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-003
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-004
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0015-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0015
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0016
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0016
-
-//! @SYMTestCaseDesc          1.4.1.16. Test RSA keys with NR usage
-
-//! @SYMTestActions           1) 1.4.1.16.1, Add key
-
-//!                           2) 1.4.1.16.3, Check info
-
-//!                           3) 1.4.1.16.4, Sign, expect failure
-
-//!                           4) 1.4.1.16.5, Decrypt, expect failure
-
-//!                           5) 1.4.1.16.6, Derive, expect failure
-
-//!                           6) 1.4.1.16.7, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-002
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-003
-
-RUN_TEST_STEP !Error=-11007   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0016-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0016
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0017
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0017
-
-//! @SYMTestCaseDesc          1.4.1.17. Test RSA keys with NR usage
-
-//! @SYMTestActions           1) 1.4.1.17.1, Add key
-
-//!                           2) 1.4.1.17.3, Check info
-
-//!                           3) 1.4.1.17.4, Sign, expect failure
-
-//!                           4) 1.4.1.17.5, Decrypt, expect failure
-
-//!                           5) 1.4.1.17.6, Derive, expect failure
-
-//!                           6) 1.4.1.17.7, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-002
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-003
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-004
-
-RUN_TEST_STEP !Error=-11006   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-005
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0017-006
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0017
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0018
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0018
-
-//! @SYMTestCaseDesc          1.4.2 Test access flags
-
-//!                           
-
-//!                           1.4.2.1 Test RSA key with no access flags specified
-
-//! @SYMTestActions           1) 1.4.2.1.1, Add key with no flags specified
-
-//!                           2) 1.4.2.1.2, Check info
-
-//!                           3) 1.4.2.1.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0018-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0018-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0018-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0018
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0019
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0019
-
-//! @SYMTestCaseDesc          1.4.2.2 Test RSA key with sensitive access flag specified
-
-//! @SYMTestActions           1) 1.4.2.2.1, Add key
-
-//!                           2) 1.4.2.2.2, Check info
-
-//!                           3) 1.4.2.2.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0019-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0019-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0019-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0019
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0020
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0020
-
-//! @SYMTestCaseDesc          1.4.2.3 Test RSA key with extractable access flag specified
-
-//! @SYMTestActions           1) 1.4.2.3.1, Add key
-
-//!                           2) 1.4.2.3.2, Check info
-
-//!                           3) 1.4.2.3.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0020-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0020-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0020-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0020
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0021
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0021
-
-//! @SYMTestCaseDesc          1.4.2.4 Test RSA key with sensitive, extractable access flags specified
-
-//! @SYMTestActions           1) 1.4.2.4.1, Add key
-
-//!                           2) 1.4.2.4.2, Check info
-
-//!                           3) 1.4.2.4.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0021-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0021-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0021-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0021
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0022
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0022
-
-//! @SYMTestCaseDesc          1.4.2.5 Failure tests
-
-//! @SYMTestActions           1) 1.4.2.5.1, Add key, expect failure
-
-//!                           2) 1.4.2.5.2, Add key, expect failure
-
-//!                           3) 1.4.2.5.3, Add key, expect failure
-
-RUN_TEST_STEP !Error=-11010   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0022-001
-
-RUN_TEST_STEP !Error=-11010   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0022-002
-
-RUN_TEST_STEP !Error=-11010   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0022-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0022
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0023
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0023
-
-//! @SYMTestCaseDesc          1.4.3 Test start time and end time
-
-//!                           
-
-//!                           1.4.3.1 Start time and end time not set
-
-//! @SYMTestActions           1) 1.4.3.1.1, Add key with no start date and end date
-
-//!                           2) 1.4.3.1.2, Check info
-
-//!                           3) 1.4.3.1.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0023-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0023-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0023-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0023
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0024
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0024
-
-//! @SYMTestCaseDesc          1.4.3.2 Specify start time only
-
-//! @SYMTestActions           1) 1.4.3.2.1, Add key
-
-//!                           2) 1.4.3.2.2, Check info
-
-//!                           3) 1.4.3.2.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0024-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0024-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0024-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0024
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0025
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0025
-
-//! @SYMTestCaseDesc          1.4.3.3 Specify end time only
-
-//! @SYMTestActions           1) 1.4.3.3.1, Add key
-
-//!                           2) 1.4.3.3.2, Check info
-
-//!                           3) 1.4.3.3.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0025-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0025-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0025-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0025
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0026
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0026
-
-//! @SYMTestCaseDesc          1.4.3.4 Specify start time and end time
-
-//! @SYMTestActions           1) 1.4.3.4.1, Add key
-
-//!                           2) 1.4.3.4.2, Check info
-
-//!                           3) 1.4.3.4.3, Delete it again
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0026-001
-
-RUN_TEST_STEP                 -1    CTestHandler        getkeyinfo             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0026-002
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0026-003
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0026
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0027
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0027
-
-//! @SYMTestCaseDesc          1.4.3.5 Failure tests
-
-//!                           
-
-//!                           1.4.3.5.1 Specify start time and end time the wrong way round
-
-//! @SYMTestActions           1) 1.4.3.5.1, Add key
-
-RUN_TEST_STEP !Error=-11008   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0027-001
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0027
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0028
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0028
-
-//! @SYMTestCaseDesc          1.4.3.5.2 Specify end date in the past
-
-//! @SYMTestActions           1) 1.4.3.5.2, Add key
-
-RUN_TEST_STEP !Error=-11008   -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0028-001
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0028
-
-
-
-
-
-START_TESTCASE                SEC-TKEYSTORE_USEAUTH-0029
-
-//! @SYMTestCaseID            SEC-TKEYSTORE_USEAUTH-0029
-
-//! @SYMTestCaseDesc          1.4.3.6 Test that you can't use expired keys
-
-//! @SYMTestActions           1) 1.4.3.6.1, Set the time
-
-//!                           2) 1.4.3.6.2, Add key
-
-//!                           3) 1.4.3.6.2.1, Set passphrase timeout to "don't cache"
-
-//!                           4) 1.4.3.6.3, Add a key
-
-//!                           5) 1.4.3.6.4, Sign
-
-//!                           6) 1.4.3.6.5, Decrypt
-
-//!                           7) 1.4.3.6.6, Derive
-
-//!                           8) 1.4.3.6.7, Set the time past key's expiry date
-
-//!                           9) 1.4.3.6.8, Sign with a banana, expect failure
-
-//!                           10) 1.4.3.6.9, Decrypt, expect failure
-
-//!                           11) 1.4.3.6.10, Derive, expect failure
-
-//!                           12) 1.4.3.6.11, Delete them
-
-//!                           13) 1.4.4.1 Import a RSA key
-
-//!                           14) 1.4.4.2,Set passphrase timeout to "don't cache"
-
-//!                           15) 1.4.4.3,Open a BIGRSA for decrypt
-
-//!                           16) 1.4.4.4, Sign with a BIGRSA, 20 char text
-
-//!                           17) 1.4.4.5, Sign with a BIGRSA, 32 char text
-
-//!                           18) 1.4.4.6, Sign digest with a BIGRSA
-
-//!                           19) 1.4.4.7 Import a BIG DSA key
-
-//!                           20) 1.4.4.8, Sign with a BIGDSA, 20 char text
-
-//!                           21) 1.4.4.9, Sign with BIGDSA, text too long (21 chars)
-
-//!                           22) 1.4.4.10, Sign digest with BIGDSA
-
-//!                           23) 1.4.4.999, Delete everything
-
-//!                           24) 1.4.999.1,Closing key store
-
-//!                           25) 1.4.999.2, Sleep 5 seconds
-
-//!                           26) 1.4.999.3, Check for server heap error
-
-RUN_TEST_STEP                 -1    CTestHandler        settime                tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-001
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-002
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        settimeout             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-003
-
-RUN_TEST_STEP                 -1    CTestHandler        addkey                 tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-004
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-005
-
-RUN_TEST_STEP                 -1    CTestHandler        decrypt                tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-006
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-007
-
-RUN_TEST_STEP                 -1    CTestHandler        settime                tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-008
-
-RUN_TEST_STEP !Error=-11008   -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-009
-
-RUN_TEST_STEP !Error=-11008   -1    CTestHandler        decrypt                tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-010
-
-RUN_TEST_STEP !Error=-11008   -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-011
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-012
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-013
-
-RUN_TEST_STEP !Error=-5       -1    CTestHandler        settimeout             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-014
-
-RUN_TEST_STEP                 -1    CTestHandler        open                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-015
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-016
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-017
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-018
-
-RUN_TEST_STEP                 -1    CTestHandler        importkey              tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-019
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-020
-
-RUN_TEST_STEP !Error=-9       -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-021
-
-RUN_TEST_STEP                 -1    CTestHandler        sign                   tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-022
-
-RUN_TEST_STEP                 -1    CTestHandler        deletekeys             tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-023
-
-RUN_TEST_STEP                 -1    CTestHandler        delete              
-
-RUN_TEST_STEP                 -1    CTestHandler        sleep                  tkeystore_useauth.ini   SEC-TKEYSTORE_USEAUTH-0029-025
-
-RUN_TEST_STEP                 -1    CTestHandler        checkserverheaperror
-
-END_TESTCASE                  SEC-TKEYSTORE_USEAUTH-0029
-
-
-
-
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_addkey.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_addkey.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -89,20 +89,10 @@
 					{
 					SetKeyStoreIndex(keyStore);
 					}
-					
-			#ifdef SYMBIAN_AUTH_SERVER		
-			if(iUseNewApi)
-				{
-				keyStore->CreateKey(iKeyStoreImplIndex, iUsage, iSize, *iLabel, iAlgorithm,
-												iAccessType, iStartDate, iEndDate, *iAuthExpression, iFreshness, iKeyInfo, aStatus);
-				}
-			else
-			#endif // SYMBIAN_AUTH_SERVER
-				{
+
 				keyStore->CreateKey(iKeyStoreImplIndex, iUsage, iSize, *iLabel, iAlgorithm,
 								iAccessType, iStartDate, iEndDate, iKeyInfo, aStatus);
 
-				}			
 			iState = EFinished;
 			}
 			break;
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_import.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_import.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -30,10 +30,6 @@
 #include <x509cert.h>
 #include <x509keys.h>
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-#include "tcryptotokenhai.h"
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
-
 /////////////////////////////////////////////////////////////////////////////////
 // CImportKey
 /////////////////////////////////////////////////////////////////////////////////
@@ -67,13 +63,6 @@
 		{
 		iKeyInfo->Release();
 		}
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	if(iImportHardwareType)
-		{
-		delete iPublicKey;
-		delete iPrivateKey;
-		}
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 }
 
 CImportKey::CImportKey(RFs& aFs,CConsoleBase& aConsole, Output& aOut) :
@@ -92,20 +81,6 @@
 	iImportFileName = HBufC8::NewL(256); // Reasonable max length of a file name
 	TPtr8 temp(iImportFileName->Des());
 	temp.Copy(Input::ParseElement(aTestActionSpec.iActionBody, KImportDataFile, KImportDataFileEnd, pos, err));
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	if(iHardwareType)
-		{
-		TPtrC8 buffer;
-		buffer.Set(Input::ParseElement(aTestActionSpec.iActionBody, KPublicKeyStart, KPublicKeyEnd, pos, err));
-		iPublicKey = HBufC8::NewMaxL(buffer.Length());
-		TPtr8 publicKeyPtr = iPublicKey->Des();
-		publicKeyPtr.Copy(buffer);
-		buffer.Set(Input::ParseElement(aTestActionSpec.iActionBody, KPrivateKeyStart, KPrivateKeyEnd, pos, err));
-		iPrivateKey = HBufC8::NewMaxL(buffer.Length());
-		TPtr8 privateKeyPtr = iPrivateKey->Des();
-		privateKeyPtr.Copy(buffer);
-		}
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 }
 
 void CImportKey::SetKeyDataFileL(const TDesC8& aDes)
@@ -162,14 +137,7 @@
 		case EImportKey:
 			{
 			TInt result = KErrNone;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-			if(iHardwareType == 0)
-				{
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 				TRAP(result, SetKeyDataFileL(*iImportFileName));
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-				}
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 			if (KErrNone != result) 
 				{
 				iState = EFinished;			
@@ -182,48 +150,10 @@
 			if(iKeyStoreImplLabel.Length() != 0)
 				{
 				SetKeyStoreIndex(keyStore);
-				}
-			
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-			if(iHardwareType)
+				}		
 				{
-				MCTToken* token = NULL;
-				CCryptoTokenHai* cryptoTokenHai = NULL;
-				TRAP(result, cryptoTokenHai = CCryptoTokenHai::NewL(token));
-				if (KErrNone != result) 
-                    {
-                    iState = EFinished;         
-                    TRequestStatus *status = &aStatus;
-                    User::RequestComplete(status,result);
-                    break;          
-                    }
-				TRAP(result, cryptoTokenHai->ImportKeyL(iLabel->Des(),iPrivateKey->Des(),iPublicKey->Des()));
-				                
-				TRequestStatus *status = &aStatus;
-				if (KErrNone != result) 
-                    {
-                    User::RequestComplete(status,result);
-                    }
-				else
-				    {
-				    User::RequestComplete(status, aStatus.Int());
-				    }
-				}
-			else
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
-				{
-				#ifdef SYMBIAN_AUTH_SERVER
-				if(iUseNewApi)
-					{
-					keyStore->ImportKey(iKeyStoreImplIndex, iKeyData->Des(), iUsage, *iLabel, iAccessType,
-										TTime(0), TTime(0), *iAuthExpression, iFreshness, iKeyInfo, aStatus);
-					}
-				else
-				#endif // SYMBIAN_AUTH_SERVER
-					{
 					keyStore->ImportKey(iKeyStoreImplIndex, iKeyData->Des(), iUsage, *iLabel, iAccessType,
 										TTime(0), TTime(0), iKeyInfo, aStatus);
-					}
 				} // else
 			iState = EFinished;
 			}		
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -72,9 +72,7 @@
 	SCRIPT_ITEM(CCheckServerHeapError, KCheckServerHeapError),
 	SCRIPT_ITEM(CServerOOMTestStart, KServerOOMTestStart),
 	SCRIPT_ITEM(CServerOOMTestStop, KServerOOMTestStop)
-#ifdef SYMBIAN_AUTH_SERVER
-	,SCRIPT_ITEM(CAuthenticationPolicy, KAuthenticationPolicy)
-#endif // SYMBIAN_AUTH_SERVER
+
 	END_SCRIPT_LIST
 
 	// this bit is because of heap checking problems with techview
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -26,11 +26,6 @@
 #include <x509keys.h>
 #include <securityerr.h>
 
-#ifdef SYMBIAN_AUTH_SERVER
-#include <keystore_errs.h>
-#include <authserver/auth_srv_errs.h>
-#include <authserver/authclient.h>
-#endif // SYMBIAN_AUTH_SERVER
 
 static void TestKeyStorePanic(TKSPanicCode aPanicCode)
 {
@@ -81,9 +76,6 @@
 	delete iLabel;
 	iExpectedDialogs.ResetAndDestroy();
 	iKeys.Close();
-#ifdef SYMBIAN_AUTH_SERVER	
-	delete iAuthExpression;
-#endif // SYMBIAN_AUTH_SERVER
 
 	}
 
@@ -93,13 +85,6 @@
 	iFs(aFs),
 	iDisableCheckDialog(0),
 	iKeyStoreImplIndex(0)
-#ifdef SYMBIAN_AUTH_SERVER
-	,iUseNewApi(EFalse),
-	iFreshness(0)
-#endif // SYMBIAN_AUTH_SERVER
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	,iHardwareType(-1)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 	{
 	iFilter.iPolicyFilter = TCTKeyAttributeFilter::EAllKeys;
 	}
@@ -132,45 +117,7 @@
 
 	pos = 0;
 	iKeyStoreImplLabel.Copy(Input::ParseElement(aTestActionSpec.iActionBody, KUseKeyStoreStart, KUseKeyStoreEnd, pos));
-	
-#ifdef SYMBIAN_AUTH_SERVER
-	TPtrC8 authExpr;
-	TInt authExprPresent = KErrNone;
-	authExpr.Set(Input::ParseElement(aTestActionSpec.iActionBody, KAuthExpressionStart, KAuthExpressionEnd, pos , authExprPresent));
-	if(authExpr.Compare(_L8("null")) != 0)
-		{
-		TInt size = authExpr.Size();
-		if (size != 0)
-			{
-			iAuthExpression = HBufC::NewMaxL(size);
-			TPtr authExp(iAuthExpression->Des());
-			authExp.FillZ();
-			authExp.Copy(authExpr);
-			}
-		}
-	TInt freshnessPresent = KErrNone;
-	TInt negativeFreshness = Input::ParseIntElement(aTestActionSpec.iActionBody, KNegativeFreshnessStart, KNegativeFreshnessEnd);
-	if(negativeFreshness == 1)
-		{
-		iFreshness = -1;
-		}
-	else
-		{
-		iFreshness = Input::ParseIntElement(aTestActionSpec.iActionBody, KFreshnessStart, KFreshnessEnd, pos, freshnessPresent);
-		}
-	if(authExprPresent == KErrNone && freshnessPresent == KErrNone)
-		{
-		iUseNewApi = ETrue;
-		}
-	
-	iDeauthenticate = Input::ParseIntElement(aTestActionSpec.iActionBody, KAuthenticateStart, KAuthenticateEnd);
 		
-#endif // SYMBIAN_AUTH_SERVER
-	
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	iHardwareType = Input::ParseIntElement(aTestActionSpec.iActionBody, KHwTypeStart, KHwTypeEnd, pos);
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
-	
 	}
 
 TBool CKeyStoreTestAction::AddExpectedDialogL(const TDesC8& aData)
@@ -349,13 +296,6 @@
 		return KErrPermissionDenied;
 	else if (aResult==KErrNoMemoryString)
 			return KErrNoMemory;
-#ifdef SYMBIAN_AUTH_SERVER
-	else if (aResult==KErrAuthFailureString)
-		return KErrAuthenticationFailure;
-	else if (aResult==KErrUnknownAuthStrengthAliasString)
-		return KErrUnknownAuthStrengthAlias;
-#endif // SYMBIAN_AUTH_SERVER
-	
 	else
 		{
 		iOut.writeString(_L("Unknown expected result: "));
@@ -496,15 +436,6 @@
 void CKeyStoreTestAction::DoPerformPrerequisite(TRequestStatus& aStatus)
 	{
 	TInt err = KErrNone;
-	#ifdef SYMBIAN_AUTH_SERVER
-	if(iDeauthenticate == 1)
-		{
-		AuthServer::RAuthClient authClient;
-		authClient.Connect();
-		TRAP(err,authClient.DeauthenticateL());
-		authClient.Close();
-		}
-	#endif // SYMBIAN_AUTH_SERVER
 	
 	TRAP(err, WriteExpectedDialogDataL());
 	
@@ -671,12 +602,6 @@
 	{
 		iType = EDH;
 	}
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    else if (aKeyType.Compare(KAlgEcc)==0)
-        {
-        iType = EECC;
-        }
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 }
 
 /////////////////////////////////////////////////////////////////
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_actions.h	Wed Sep 01 12:40:57 2010 +0100
@@ -94,9 +94,6 @@
 		EDSASign,
 		EDH,
 		EDecrypt,
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-		EECC,
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 		};
 protected:
 	TUint iServerAlloc;
@@ -116,17 +113,6 @@
 	TInt iKeyStoreImplIndex;
 	TBuf8<50> iKeyStoreImplLabel;
 	
-#ifdef SYMBIAN_AUTH_SERVER
-	// this variable would be used to retrieve the rom build variant 
-	// for key store.
-	TBool iUseNewApi;
-	HBufC* iAuthExpression;
-	TInt iFreshness;
-	TInt iDeauthenticate;
-#endif // SYMBIAN_AUTH_SERVER
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	TInt iHardwareType;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 };
 
 class CInitialiseKeyStore : public CKeyStoreTestAction
@@ -399,11 +385,6 @@
 	HBufC8*  iImportFileName;
 	HBufC8* iKeyData;
 	CCTKeyInfo* iKeyInfo;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	TUint iImportHardwareType;
-	HBufC8* iPublicKey;
-	HBufC8* iPrivateKey;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 private:
 	enum TState
 		{
@@ -587,13 +568,6 @@
 		EFinished
 		};
 	
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	enum TOperationType
-		{
-		ESigning,
-		EDecryption,
-		};
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 private:
 	TState iState;
 	TCTTokenObjectHandle iDeleteHandle;
@@ -602,11 +576,6 @@
 	MDSASigner* iDSASigner;
 	MCTDecryptor* iDecryptor;
 	MCTDH* iDH;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	TOperationType iOperationType;
-	CryptoSpi::CSigner* iSigner;
-	CryptoSpi::CAsymmetricCipher* iDecrypt;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 };
 
 //	Allows script to sign, filter on keys algorithm (or all) and deletes listed keys
@@ -637,10 +606,6 @@
 		ESign,
 		EExportPublic,
 		EVerify,
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-		ESignInHardware,
-		EVerifyHwSignature,
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 		EFinished,
 		};
 
@@ -659,11 +624,6 @@
 	CRSASignature* iRSASignature;
 	CMessageDigest* iHash;
 	TBool iFailHashDigest;	//	Should hash the digest beforehand, but doesn't to test failure mode
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	CryptoSpi::CSigner* iSigner;
-	CryptoSpi::CCryptoParams* iSpiSignature;
-	TCTTokenObjectHandle iTokenHandle;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 };							
 
 class CDecrypt : public CKeyStoreTestAction
@@ -704,9 +664,6 @@
 	TPtr8 iPlainTextPtr;
 	MCTDecryptor* iDecryptor;
 	HBufC8* iPublic;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	CryptoSpi::CAsymmetricCipher* iDecrypt;
-#endif
 };
 
 class CDHKeyPair;
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_defs.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_keystore_defs.h	Wed Sep 01 12:40:57 2010 +0100
@@ -67,9 +67,7 @@
 _LIT8(KGetManagementPolicy, "getmanagementpolicy");
 _LIT8(KSetManagementPolicy, "setmanagementpolicy");
 _LIT8(KKeyStoreLabel, "getkeystorelabel");
-#ifdef SYMBIAN_AUTH_SERVER
-_LIT8(KAuthenticationPolicy, "authenticationpolicy");
-#endif // SYMBIAN_AUTH_SERVER
+
 // Action types for the key store
 _LIT8(KUnifiedKeyStoreInit, "UnifiedKeyStore Init");
 _LIT8(KUnifiedKeyStoreDelete, "UnifiedKeyStore Delete");
@@ -140,9 +138,6 @@
 _LIT8(KAlgRSA, "RSA");
 _LIT8(KAlgDSA, "DSA");
 _LIT8(KAlgDH, "DH");
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-_LIT8(KAlgEcc,"ECC");
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 _LIT8(KAlgBAD, "BAD");
 
 _LIT8(KKeyExportableStart, "<keyexportable>");
@@ -321,45 +316,5 @@
 _LIT8(KUseKeyStoreStart,"<usekeystore>");
 _LIT8(KUseKeyStoreEnd,"</usekeystore>");
 
-#ifdef SYMBIAN_AUTH_SERVER
-// tags for authentication expression
-_LIT8(KAuthExpressionStart, "<authexpression>");
-_LIT8(KAuthExpressionEnd, "</authexpression>");
-
-// tags for freshness
-_LIT8(KFreshnessStart, "<freshness>");
-_LIT8(KFreshnessEnd, "</freshness>");
-
-// tags for freshness
-_LIT8(KNegativeFreshnessStart, "<negativefreshness>");
-_LIT8(KNegativeFreshnessEnd, "</negativefreshness>");
-
-// tags for authentication expression
-_LIT8(KExpectedExpressionStart, "<expectedexpression>");
-_LIT8(KExpectedExpressionEnd, "</expectedexpression>");
-
-// tags for freshness
-_LIT8(KExpectedFreshnessStart, "<expectedfreshness>");
-_LIT8(KExpectedFreshnessEnd, "</expectedfreshness>");
-
-_LIT8(KAuthModeStart, "<authmode>");
-_LIT8(KAuthModeEnd, "</authmode>");
-
-_LIT8(KAuthenticateStart, "<authenticate>");
-_LIT8(KAuthenticateEnd, "</authenticate>");
-
-#endif // SYMBIAN_AUTH_SERVER
-
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-_LIT8(KHwTypeStart, "<hwtype>");
-_LIT8(KHwTypeEnd, "</hwtype>");
-_LIT8(KPublicKeyStart, "<publickey>");
-_LIT8(KPublicKeyEnd, "</publickey>");
-_LIT8(KPrivateKeyStart, "<privatekey>");
-_LIT8(KPrivateKeyEnd, "</privatekey>");
-_LIT8(KOperationTypeStart, "<operationtype>");
-_LIT8(KOperationTypeEnd, "</operationtype>");
-
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 #endif	//	__T_TCERTSTOREDEFS_H__
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_open.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/t_open.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -26,12 +26,6 @@
 #include <x509keys.h>
 #include <asymmetrickeys.h>
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-#include <cryptospidef.h>
-#include "cryptoasymmetriccipherapi.h"
-#include "cryptosignatureapi.h"
-#include <cryptospi/cryptoparams.h>
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC && SYMBIAN_ENABLE_SDP_ECC
 
 /*static*/ CTestAction* COpenKey::NewL(RFs& aFs, CConsoleBase& aConsole, Output& aOut, const TTestActionSpec& aTestActionSpec)
 {
@@ -50,10 +44,6 @@
 
 COpenKey::~COpenKey()
 {
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    delete iSigner;
-    delete iDecrypt;
-#endif
 	iKeys.Close();
 }
 
@@ -100,21 +90,6 @@
 					case EDH:
 						keyStore->Open(*keyInfo, iDH, aStatus);
 						break;
-					#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-					case EECC:
-						{
-						ASSERT(iHardwareType);
-						if(iOperationType == ESigning)
-							{
-							keyStore->Open(keyInfo->Handle(),iSigner,aStatus);
-							}
-						if(iOperationType == EDecryption)
-							{
-							keyStore->Open(keyInfo->Handle(),iDecrypt,aStatus);
-							}
-						break;
-						}
-					#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 						}
 					break;
 					}
@@ -166,22 +141,7 @@
 							iDH->Release();
 							}
 						break;
-	#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-					case EECC:
-						{
-						ASSERT(iHardwareType);
-						if(iOperationType == ESigning && iSigner == NULL
-								|| iOperationType == EDecryption && iDecrypt == NULL)
-							{
-							completionCode = KErrGeneral;
-							}
-						break;
-						}
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 				} // switch
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-				if(iHardwareType == 0)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 					{
 					if (*label != *iLabel)
 						aStatus = KErrBadName;
@@ -253,12 +213,6 @@
 		iDH->Release();
 		iDH = NULL;
 		}
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    delete iSigner;
-    iSigner = NULL;
-    delete iDecrypt;
-    iDecrypt = NULL;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 	}
 
 void COpenKey::DoReportAction()
@@ -310,18 +264,6 @@
 	{
 	CKeyStoreTestAction::ConstructL(aTestActionSpec);
 	
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	TInt pos = 0, err = 0;
-	TPtrC8 operationType = Input::ParseElement(aTestActionSpec.iActionBody, KOperationTypeStart, KOperationTypeEnd, pos, err);
-	if(operationType.Compare(_L8("sign")) == 0)
-		{
-		iOperationType = ESigning;
-		}
-	else if (operationType.Compare(_L8("decrypt")) == 0)
-		{
-		iOperationType = EDecryption;
-		}
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 	
 	iState = EListKeysPreOpen;
 
@@ -353,10 +295,6 @@
 	delete iRSASignature;
 	delete iDSASignature;
 	delete iHash;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    delete iSigner;
-    delete iSpiSignature;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 }
 
 void CSign::PerformAction(TRequestStatus& aStatus)
@@ -405,22 +343,6 @@
 						case EDecrypt:
 							break;	//	Nothing to do, for the compiler
 						
-						#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-						case EECC:
-							{
-							iTokenHandle = keyInfo->Handle();
-							if(iHardwareType == 0)
-								{
-								keyStore->Open(iTokenHandle, iSigner, aStatus);
-								}
-							else
-								{
-								TRequestStatus* status = &aStatus;
-								User::RequestComplete(status, KErrNone);
-								}
-							}
-							break;
-						#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
                         }
                     } // if
                 if (i == keyCount)
@@ -468,38 +390,6 @@
 					}
 				}
 				break;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-                case EECC:
-                    {
-                    TRAPD(err, iSpiSignature = CryptoSpi::CCryptoParams::NewL());
-                    if(err == KErrNone)
-                        {
-                        if(iHardwareType)
-                            {
-                            CUnifiedKeyStore* keyStore = CSharedKeyStores::TheUnifiedKeyStores().operator[](iKeystore);
-                            ASSERT(keyStore);   //  Flag it up
-                            keyStore->Sign(iTokenHandle, *iReadText, iSpiSignature, aStatus);
-                            }
-                        else
-                            {
-                            if(iSigner)
-                                {
-                                TRAP(err, iSigner->SignL(*iReadText, *iSpiSignature));
-                                aStatus = err;
-                                }
-                            TRequestStatus* status = &aStatus;
-                            User::RequestComplete(status, aStatus.Int());
-                            }
-                        }
-                    else
-                        {
-                        aStatus = err;
-                        TRequestStatus* status = &aStatus;
-                        User::RequestComplete(status, aStatus.Int());
-                        }
-                    }
-                break;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 				default:
 					ASSERT(EFalse);
@@ -535,14 +425,6 @@
 						case EDH:
 						case EDecrypt:
 							break;	//	Nothing to do, for the compiler
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-						case EECC:
-							{
-							keyStore->ExportPublic(iExportHandle, iExportedPublicKey, aStatus);
-							iState = EVerify;
-							}
-							break;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 						}
 					break;
 					}
@@ -568,9 +450,6 @@
 					{
 					iExportHandle = keyInfo->Handle();
 					CX509SubjectPublicKeyInfo* ki = NULL;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-					if(iType != EECC)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 						ki = CX509SubjectPublicKeyInfo::NewLC(*iExportedPublicKey);
 
 					switch (iType)
@@ -626,39 +505,10 @@
 						}
 						break;
 				
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-					case EECC:
-						{
-						iVerifyResult = EFalse;
-						if (iSpiSignature && iSpiSignature->IsPresent(CryptoSpi::KEccKeyTypeUid))
-							{
-							TDesC8* actualSignature = NULL;
-							TRAPD(err, actualSignature = const_cast<TDesC8*>(&(iSpiSignature->GetTDesC8L(CryptoSpi::KEccKeyTypeUid))));
-							if(err == KErrNone)
-							    {
-							    if(iExportedPublicKey->Des() == *actualSignature)
-							        {
-							        iVerifyResult = ETrue;
-							        }
-							    }
-							else
-							    {
-							    aStatus = err;
-							    }
-							}
-						_LIT(KReturned, "Returned... ");
-						iOut.writeString(KReturned);
-						iOut.writeNewLine();
-						}
-					break;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC	
 					default:
 						ASSERT(EFalse);
 
 						}
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-					if(iType != EECC)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 						CleanupStack::PopAndDestroy(ki);
 					}
 				}
@@ -782,12 +632,6 @@
 	iRSASignature = NULL;
 	delete iDSASignature;
 	iDSASignature = NULL;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-	delete iSigner;
-	iSigner = NULL;
-	delete iSpiSignature;
-	iSpiSignature = NULL;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 	}
 
 void CSign::DoReportAction()
@@ -897,9 +741,6 @@
 	delete iReadText;
 	delete iPlainText;
 	delete iPublic;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    delete iDecrypt;
-#endif
 }
 
 void CDecrypt::PerformAction(TRequestStatus& aStatus)
@@ -938,22 +779,6 @@
 					{
 					switch(iType)
 						{
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-						case EECC:
-						if(iHardwareType == 0)
-							{
-							keyStore->Open(keyInfo->Handle(), iDecrypt, aStatus);
-							}
-						else if(iHardwareType == 1 )
-							{
-							/**
-							 * Call the decrypt of hardware directly. iPlainText 
-							 * would be populated.
-							 */
-							keyStore->Decrypt(keyInfo->Handle(), *iReadText, iPlainText, aStatus);
-							}
-						break;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 					default:
 						{
 						keyStore->Open(*keyInfo, iDecryptor, aStatus);
@@ -1025,57 +850,6 @@
 				}
 			switch(iType)
 				{
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-				case EECC:
-					{
-					if(iHardwareType)
-						{
-						if(*iPlainText == *iPublic)
-							{
-							aStatus = KErrNone;
-							}
-						else
-							{
-							aStatus = KErrGeneral;
-							}
-						}
-					else
-						{
-                        aStatus = KErrGeneral;
-                        if (iDecrypt)
-                            {
-                            HBufC8* decryptedText = NULL;
-                            TRAPD(err, decryptedText = HBufC8::NewL(iDecrypt->GetMaximumOutputLengthL()));
-                            
-                            if (err == KErrNone)
-                                {
-                                CleanupStack::PushL(decryptedText);
-                                TPtr8 decryptedTextPtr = decryptedText->Des();
-
-                                TRAP(err, (iDecrypt->ProcessL(*iReadText, decryptedTextPtr)));
-                                if(err != KErrNone)
-                                    {
-                                    aStatus = err;
-                                    }
-                                if ((err == KErrNone) && (decryptedTextPtr
-                                        == iPublic->Des()))
-                                    {
-                                    aStatus = KErrNone;
-                                    }
-                                CleanupStack::PopAndDestroy(decryptedText);
-                                }
-                            else
-                                {
-                                aStatus = err;
-                                }
-                            }
-                        }
-					iState = EFinished;
-					TRequestStatus* status = &aStatus;
-					User::RequestComplete(status, aStatus.Int());
-					}
-					break;
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 				default:
 					{
 					CX509SubjectPublicKeyInfo* ki = 
@@ -1110,17 +884,6 @@
 
 		case EFinished:
 			{
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-			if(iType == EECC)
-				{
-				iActionState = EPostrequisite;
-				iResult = (aStatus.Int() == iExpectedResult);
-					
-				TRequestStatus* status = &aStatus;
-				User::RequestComplete(status, aStatus.Int());
-				}
-			else
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 				{
 				if (aStatus == KErrNone && (!iPlainText || 
 											*iPlainText != *iReadText))
@@ -1188,10 +951,6 @@
 	iPlainText = NULL;
 	delete iPublic;
 	iPublic = NULL;
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-    delete iDecrypt;
-    iDecrypt = NULL;
-#endif
 	}
 
 void CDecrypt::DoReportAction()
--- a/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/tkeystore.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/tkeystore/tkeystore.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -56,9 +56,6 @@
 SOURCE t_corrupt.cpp
 SOURCE t_listall.cpp
 SOURCE t_policyaccessors.cpp
-#ifdef SYMBIAN_AUTH_SERVER
-SOURCE t_authenticationpolicy.cpp
-#endif // SYMBIAN_AUTH_SERVER
 
 USERINCLUDE ../../../../cryptomgmtlibs/securitytestfw/test/testhandler2
 USERINCLUDE ../../../../cryptomgmtlibs/securitytestfw/inc
@@ -71,11 +68,6 @@
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-USERINCLUDE ../tcryptotokenhai
-USERINCLUDE	../../../../crypto/weakcryptospi/inc
-USERINCLUDE	../../../../crypto/weakcryptospi/inc/spi
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 USERINCLUDE ../../../../crypto/weakcrypto/inc
 USERINCLUDE ../../source/generic/client
@@ -83,22 +75,11 @@
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
 USERINCLUDE ../../Inc
 
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-SYSTEMINCLUDE OS_LAYER_PUBLIC_EXPORT_PATH(cryptospi)
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 LIBRARY	euser.lib efsrv.lib ecom.lib cryptography.lib
 LIBRARY certstore.lib crypto.lib hash.lib
 LIBRARY t_testhandler2.lib ctframework.lib x509.lib
 LIBRARY estor.lib pbe.lib random.lib tfiletokens.lib
 
-#ifdef SYMBIAN_AUTH_SERVER
-LIBRARY	authclient.lib
-#endif // SYMBIAN_AUTH_SERVER
-
-#if (defined(SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT) && defined(SYMBIAN_ENABLE_SDP_ECC))
-LIBRARY tcryptotokenhai.lib
-LIBRARY cryptospi.lib
-#endif // SYMBIAN_ENABLE_SDP_WMDRM_SUPPORT && SYMBIAN_ENABLE_SDP_ECC
 
 SMPSAFE
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrate.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
--migratestore c:\ttesttools\data\keys_old.dat pinkcloud -new c:\ttesttools\data\newkeys.dat -expr 0x200032E5 -freshness 0
\ No newline at end of file
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrate_default.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
--migratestore c:\ttesttools\data\keys_old.dat pinkcloud 
\ No newline at end of file
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_help.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
--h migratestore
\ No newline at end of file
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_param_missing1.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-keytool -migratestore
\ No newline at end of file
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/data/key_migrated_param_missing2.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-keytool -migratestore c:\oldkeys.dat
\ No newline at end of file
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/scripts/keytool_migrate.ini	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-
-[keytool_list_migrated_keys]
-expectedlabel1=dhkey
-expectedlabel2=rsakey
-expectedlabel3=dsakey
-
-[keytool_migrate_default]
-file=c:\newkeys.dat
-check=present
-
-[keytool_migrated_param_missing1]
-actualoutput=c:\output.txt
-numlines=8
-line0=Key file to be migrated not provided.
-line1=Passphrase absent.
-line2=Usage
-line3= keytool 	[{-list -l} {-liststores -ls} {-import -i} {-remove -r} 
-line4={-page -p } {-help -h} {-setuser -s} {-setallusers -a} {-removeuser -ru} {-setmanager -m}] {KeyLabel}
-line5=or [ {-migratestore} old key file name ]
-line6=Type keytool -h {CommandName} for details on a particular command.
-line7=Type keytool -h noninteractive for details on how to run the commands in noninteractive mode.
-
-[keytool_migrated_param_missing2]
-actualoutput=c:\output.txt
-numlines=7
-line0=Passphrase absent.
-line1=Usage
-line2= keytool 	[{-list -l} {-liststores -ls} {-import -i} {-remove -r} 
-line3={-page -p } {-help -h} {-setuser -s} {-setallusers -a} {-removeuser -ru} {-setmanager -m}] {KeyLabel}
-line4=or [ {-migratestore} old key file name ]
-line5=Type keytool -h {CommandName} for details on a particular command.
-line6=Type keytool -h noninteractive for details on how to run the commands in noninteractive mode.
-
-[keytool_migrated_help]
-actualoutput=c:\output.txt
-numlines=10
-line0=-migrate OldKeyFile Passphrase [-new NewKeyFile] [-expr AuthExpression] [-freshness Freshness].
-line1=Migrates the old key file to the new format. If new key file name
-line2=is provided then it is saved using that name otherwise it is saved
-line3=as newkeys.dat in the system drive. Every key store in old implementation was encrypted
-line4=with a passphrase, this should be supplied for successful porting.
-line5=If authexpression is not provided it uses the system wide default plugin. 
-line6=If freshness is not provided then it uses 0 as the default freshness which
-line7=means always authenticate the user. The supplied auth expression and freshness 
-line8=would be used to determine whether to use the current authenticated identity
-line9=if available or to authenticate the user again.
-
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/scripts/keytool_migrate.script	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,79 +0,0 @@
-//
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of the License "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description: 
-//
-//! @file
-// filetokens tools unit (integration) tests
-PRINT Run  test for migrating old keys data to new format.
-LOAD_SUITE ttesttools
-
-//! @SYMTestCaseID 		SEC-FILETOKENS-DEF136406-0001
-//! @SYMTestCaseDesc 	Migrate the old keys.dat to the new format
-//! @SYMTestPriority	Medium
-//! @SYMTestActions  	Call keytool to migrate key store from old to new format.
-//! @SYMTestExpectedResults Keystore would be successfully migrated.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-FILETOKENS-DEF136406-0001
-RUN_PROGRAM keytool.exe c:\ttesttools\data\key_migrate.txt c:\output.txt
-RUN_TEST_STEP 100 ttesttools ListKeyStep c:\ttesttools\scripts\keytool_migrate.ini keytool_list_migrated_keys
-END_TESTCASE SEC-FILETOKENS-DEF136406-0001
-
-//! @SYMTestCaseID 		SEC-FILETOKENS-DEF136406-0002
-//! @SYMTestCaseDesc 	Migrate the old keys.dat to the new format using default parameters
-//! @SYMTestPriority	Medium
-//! @SYMTestActions  	Call keytool to migrate key store from old to new format.
-//! @SYMTestExpectedResults Keystore would be successfully migrated.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-FILETOKENS-DEF136406-0002
-RUN_PROGRAM keytool.exe c:\ttesttools\data\key_migrate_default.txt c:\output.txt
-RUN_TEST_STEP 100 ttesttools CheckFile c:\ttesttools\scripts\keytool_migrate.ini keytool_migrate_default
-END_TESTCASE SEC-FILETOKENS-DEF136406-0002
-
-//! @SYMTestCaseID 		SEC-FILETOKENS-DEF136406-0003
-//! @SYMTestCaseDesc 	keytool check for mandatory parameter, name of the key file to be migrated
-//! @SYMTestPriority	Medium
-//! @SYMTestActions  	Call keytool to display message that mandatory param is missing.
-//! @SYMTestExpectedResults mandatory param missing message displayed alongwith the usage.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-FILETOKENS-DEF136406-0003
-RUN_PROGRAM keytool.exe c:\ttesttools\data\key_migrated_param_missing1.txt c:\output.txt
-RUN_TEST_STEP 100 ttesttools ParseFileStep c:\ttesttools\scripts\keytool_migrate.ini keytool_migrated_param_missing1
-END_TESTCASE SEC-FILETOKENS-DEF136406-0003
-
-//! @SYMTestCaseID 		SEC-FILETOKENS-DEF136406-0004
-//! @SYMTestCaseDesc 	keytool check for mandatory parameter, passphrase required for old key store
-//! @SYMTestPriority	Medium
-//! @SYMTestActions  	Call keytool to display message that mandatory param is missing.
-//! @SYMTestExpectedResults mandatory param missing message displayed alongwith the usage.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-FILETOKENS-DEF136406-0004
-RUN_PROGRAM keytool.exe c:\ttesttools\data\key_migrated_param_missing2.txt c:\output.txt
-RUN_TEST_STEP 100 ttesttools ParseFileStep c:\ttesttools\scripts\keytool_migrate.ini keytool_migrated_param_missing2
-END_TESTCASE SEC-FILETOKENS-DEF136406-0004
-
-//! @SYMTestCaseID 		SEC-FILETOKENS-DEF136406-0005
-//! @SYMTestCaseDesc 	keytool check for detail help for migration
-//! @SYMTestPriority	Medium
-//! @SYMTestActions  	Call keytool to display detail help message.
-//! @SYMTestExpectedResults Displays detail help message for migration of old store.
-//! @SYMDevelopedForRelease Diran
-
-START_TESTCASE SEC-FILETOKENS-DEF136406-0005
-RUN_PROGRAM keytool.exe c:\ttesttools\data\key_migrated_help.txt c:\output.txt
-RUN_TEST_STEP 100 ttesttools ParseFileStep c:\ttesttools\scripts\keytool_migrate.ini keytool_migrated_help
-END_TESTCASE SEC-FILETOKENS-DEF136406-0005
--- a/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/ttesttoolserver.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/cryptoservices/filebasedcertificateandkeystores/test/ttesttools/ttesttoolserver.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -16,6 +16,18 @@
 */
 
 
+#include <c32comm.h>
+
+#if defined (__WINS__)
+#define PDD_NAME		_L("ECDRV")
+#else
+#define PDD_NAME		_L("EUART1")
+#define PDD2_NAME		_L("EUART2")
+#define PDD3_NAME		_L("EUART3")
+#define PDD4_NAME		_L("EUART4")
+#endif
+
+#define LDD_NAME		_L("ECOMM")
 
 /**
  * @file
@@ -42,6 +54,22 @@
 	return server;
 	}
 
+static void InitCommsL()
+    {
+    TInt ret = User::LoadPhysicalDevice(PDD_NAME);
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+
+#ifndef __WINS__
+    ret = User::LoadPhysicalDevice(PDD2_NAME);
+    ret = User::LoadPhysicalDevice(PDD3_NAME);
+    ret = User::LoadPhysicalDevice(PDD4_NAME);
+#endif
+
+    ret = User::LoadLogicalDevice(LDD_NAME);
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+    ret = StartC32();
+    User::LeaveIfError(ret == KErrAlreadyExists?KErrNone:ret);
+    }
 
 LOCAL_C void MainL()
 	{
@@ -50,6 +78,7 @@
 	RProcess().DataCaging(RProcess::EDataCagingOn);
 	RProcess().SecureApi(RProcess::ESecureApiOn);
 #endif
+	InitCommsL();
 	
 	CActiveScheduler* sched=NULL;
 	sched=new(ELeave) CActiveScheduler;
Binary file cryptoservices/rootcertificates/data/SymbianA.der has changed
Binary file cryptoservices/rootcertificates/data/SymbianB.der has changed
--- a/cryptoservices/rootcertificates/data/SymbianSignedCerts.txt	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,103 +0,0 @@
-# SymbianSignedCerts.txt
-#
-# Populates the SWI cert store with the Symbian Signed certificates
-
-[SymbianA]
-file = c:\rootcerts\SymbianA.der
-capability = TCB
-capability = CommDD
-capability = PowerMgmt
-capability = MultimediaDD
-capability = ReadDeviceData
-capability = WriteDeviceData
-capability = DRM
-capability = TrustedUI
-capability = ProtServ
-capability = DiskAdmin
-capability = NetworkControl
-capability = AllFiles
-capability = SwEvent
-capability = NetworkServices
-capability = LocalServices
-capability = ReadUserData
-capability = WriteUserData
-capability = Location
-capability = SurroundingsDD
-capability = UserEnvironment
-application = SWInstall
-application = SWInstallOCSP
-
-[SymbianB]
-file = c:\rootcerts\SymbianB.der
-capability = TCB
-capability = CommDD
-capability = PowerMgmt
-capability = MultimediaDD
-capability = ReadDeviceData
-capability = WriteDeviceData
-capability = DRM
-capability = TrustedUI
-capability = ProtServ
-capability = DiskAdmin
-capability = NetworkControl
-capability = AllFiles
-capability = SwEvent
-capability = NetworkServices
-capability = LocalServices
-capability = ReadUserData
-capability = WriteUserData
-capability = Location
-capability = SurroundingsDD
-capability = UserEnvironment
-application = SWInstall
-application = SWInstallOCSP
-
-[SymbianC]
-file = c:\rootcerts\SymbianC.der
-capability = TCB
-capability = CommDD
-capability = PowerMgmt
-capability = MultimediaDD
-capability = ReadDeviceData
-capability = WriteDeviceData
-capability = DRM
-capability = TrustedUI
-capability = ProtServ
-capability = DiskAdmin
-capability = NetworkControl
-capability = AllFiles
-capability = SwEvent
-capability = NetworkServices
-capability = LocalServices
-capability = ReadUserData
-capability = WriteUserData
-capability = Location
-capability = SurroundingsDD
-capability = UserEnvironment
-application = SWInstall
-application = SWInstallOCSP
-
-[SymbianD]
-file = c:\rootcerts\SymbianD.der
-capability = TCB
-capability = CommDD
-capability = PowerMgmt
-capability = MultimediaDD
-capability = ReadDeviceData
-capability = WriteDeviceData
-capability = DRM
-capability = TrustedUI
-capability = ProtServ
-capability = DiskAdmin
-capability = NetworkControl
-capability = AllFiles
-capability = SwEvent
-capability = NetworkServices
-capability = LocalServices
-capability = ReadUserData
-capability = WriteUserData
-capability = Location
-capability = SurroundingsDD
-capability = UserEnvironment
-application = SWInstall
-application = SWInstallOCSP
Binary file cryptoservices/rootcertificates/data/swicertstore.dat has changed
Binary file cryptoservices/rootcertificates/data/symbianc.der has changed
Binary file cryptoservices/rootcertificates/data/symbiand.der has changed
--- a/cryptoservices/rootcertificates/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-* Exports SWI certificate store 
-*
-*/
-
-/**
- @file
-*/
-
-PRJ_PLATFORMS
-DEFAULT
-
-PRJ_EXPORTS
-../data/swicertstore.dat  /epoc32/release/winscw/udeb/Z/resource/swicertstore.dat
-../data/swicertstore.dat  /epoc32/release/winscw/urel/Z/resource/swicertstore.dat
-../data/swicertstore.dat  /epoc32/data/z/resource/swicertstore.dat
-
-// ROMKIT includes
-rootcerts.iby 	/epoc32/rom/include/rootcerts.iby
--- a/cryptoservices/rootcertificates/group/rootcerts.iby	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-/*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description: 
-*
-*/
-
-/**
- @file 
-*/
-
-#ifndef __ROOTCERTS_IBY__
-#define __ROOTCERTS_IBY__
-
-data=ZRESOURCE\swicertstore.dat resource\swicertstore.dat
-
-#endif // __ROOTCERTS_IBY__
--- a/cryptoservices/rootcertificates/group/rootcerts.mrp	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-component rootcerts
-source \sf\os\security\cryptoservices\rootcertificates
-exports \sf\os\security\cryptoservices\rootcertificates\group
-notes_source \component_defs\release.src 
-
-
-ipr E 
-
--- a/cryptoservices/rootcertificates/rootcerts.history.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<relnotes name="Certificate and Key Management">
-  <purpose>
-    Certificate management supporting public key cryptography including storage and retrieval, assignment of trust status, certificate chain construction, validation and revocation.
-  </purpose>
-
-  <minorchange revision="001">
-    Symbian C and Symbian D certificates added to the source tree and swicertstore.dat.
-  </minorchange>
-</relnotes>
--- a/package_definition.xml	Tue Aug 31 17:00:08 2010 +0300
+++ b/package_definition.xml	Wed Sep 01 12:40:57 2010 +0100
@@ -1,11 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <SystemDefinition schema="3.0.0">
   <package id="security" name="OS Security" levels="physical-abstraction plugins libraries management services utilities">
-	<collection id="authenticationservices" name="Authentication Services" level="utilities">
-      <component id="authenticationserver" name="Authentication Server" introduced="^4" purpose="optional">
-        <unit bldFile="authenticationservices/authenticationserver/group" mrp="authenticationservices/authenticationserver/group/security_authserver.mrp"/>
-      </component>
-    </collection>
     <collection id="authorisation" name="Authorisation" level="utilities">
       <component id="userpromptservice" name="User Prompt Service" introduced="^3" purpose="mandatory">
         <unit bldFile="authorisation/userpromptservice/group" mrp="authorisation/userpromptservice/group/security_ups.mrp"/>
@@ -73,12 +68,6 @@
       <component id="filebasedcertificateandkeystores" name="File-based Certificate and Key Stores" introduced="8.0" purpose="optional">
         <unit bldFile="cryptoservices/filebasedcertificateandkeystores/group" mrp="cryptoservices/filebasedcertificateandkeystores/group/security_filetokens.mrp"/>
       </component>
-      <component id="rootcertificates" name="Root Certificates" introduced="7.0s" purpose="optional" filter="sf_build">
-        <unit bldFile="cryptoservices/rootcertificates/group" mrp="cryptoservices/rootcertificates/group/rootcerts.mrp"/>
-      </component>
-      <component id="browserrootcertificates" name="Browser Root Certificates" introduced="^2" purpose="optional" filter="sf_build">
-        <unit mrp="cryptoservices/browserrootcertificates/browserrootcerts.mrp"/>
-      </component>
       <component id="asnpkcs" name="ASN PKCS" introduced="8.0" purpose="optional">
         <unit bldFile="cryptoservices/asnpkcs/group" mrp="cryptoservices/asnpkcs/group/security_asnpkcs.mrp"/>
       </component>
--- a/package_map.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-<PackageMap root="sf" layer="os"/>
Binary file securityanddataprivacytools/securityconfig/authserver/2001ea7f.txt has changed
Binary file securityanddataprivacytools/securityconfig/conf/ci_securityconfig.confml has changed
Binary file securityanddataprivacytools/securityconfig/conf/securityconfig.confml has changed
Binary file securityanddataprivacytools/securityconfig/conf/securityconfig_2002b28b.crml has changed
--- a/securityanddataprivacytools/securityconfig/group/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securityconfig/group/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -35,15 +35,10 @@
 // Optional Replaceable files for UPS
 ../ups/backup/backup_registration.xml		z:/private/10283558/backup_registration.xml
 
-#ifdef SYMBIAN_AUTH_SERVER
-// AuthServer cenrep file.
-// NOTE: this is required for emulator and target hardware testing only. It is not used in production.
-../authserver/2001ea7f.txt					z:/private/10202be9/2001ea7f.txt
+// ConfML Files
+../conf/securityconfig.confml            OS_LAYER_EXPORTS_CONFML(securityconfig.confml)
 
-#endif // SYMBIAN_AUTH_SERVER
-// ConfML Files
-../conf/ci_securityconfig.confml            OS_LAYER_EXPORTS_CONFML(ci_securityconfig.confml)
-../conf/securityconfig.confml            OS_LAYER_EXPORTS_CONFML(securityconfig.confml)
+// crml file for customizing the OCSP central reposiroty settings - GenerateResponseForMissingUri and EnableGetHttpMethod. 
 ../conf/securityconfig_2002b28b.crml	 OS_LAYER_EXPORTS_CRML(securityconfig_2002b28b.crml)
 
 PRJ_TESTEXPORTS
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/SWTLSTOKENTYPE.RLS	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,39 @@
+/*
+* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* @description The TLS backend token name
+* @localize	no
+*
+*/
+
+
+rls_string STRING_r_token_name "Sw TLS token"
+
+/*&
+@description The TLS backend token version
+@localize	no
+*/
+rls_string STRING_r_token_version "N/A"
+
+/*&
+@description The TLS backend token serial number
+@localize	no
+*/
+rls_string STRING_r_token_serial_no "N/A"
+
+/*&
+@description The TLS backend token provider
+@localize	no
+*/
+rls_string STRING_r_token_manufacturer "Symbian Ltd"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/SWTLSTOKENTYPE.RSS	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,34 @@
+/*
+* Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+NAME SWTT
+#include <uikon.rh>
+#include "SWTLSTOKENTYPE.RLS"
+
+RESOURCE RSS_SIGNATURE { }
+
+RESOURCE ARRAY r_swtlst_strings
+	{
+	items=
+		{
+		LBUF { txt=STRING_r_token_name; },
+		LBUF { txt=STRING_r_token_version; },
+		LBUF { txt=STRING_r_token_serial_no; },
+		LBUF { txt=STRING_r_token_manufacturer; }
+		};
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/tlscachetimeouts.rh	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,24 @@
+/*
+* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+
+STRUCT TLS_CACHE_TIMEOUTS
+	{
+	WORD accepted;
+	WORD rejected;
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/tlscachetimeouts.rss	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,26 @@
+/*
+* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+* Timeouts for certificate acceptance/rejection in seconds
+*
+*/
+
+
+#include "tlscachetimeouts.rh"
+
+RESOURCE TLS_CACHE_TIMEOUTS r_tls_cache_timeouts
+	{
+	accepted = 120;
+	rejected = 10;
+	}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/tlsproviderconfig.iby	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,27 @@
+/*
+* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: 
+*
+*/
+
+
+#ifndef __TLSPROVIDERCONFIG_IBY__
+#define __TLSPROVIDERCONFIG_IBY__
+
+
+data=ZRESOURCE\tlsproviderpolicy.ini 	\Resource\tlsproviderpolicy.ini
+data=MULTI_LINGUIFY(RSC ZRESOURCE\swtlstokentype resource\swtlstokentype)
+data=MULTI_LINGUIFY(RSC ZRESOURCE\tlscacheserver\tlscachetimeouts resource\tlscacheserver\tlscachetimeouts)
+
+#endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/tlsprovider/tlsproviderpolicy.ini	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,2 @@
+ClientAuthDlgEnabled = true
+
--- a/securityanddataprivacytools/securityconfig/ups/romstub/bld.inf	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securityconfig/ups/romstub/bld.inf	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
@@ -19,10 +19,6 @@
 PRJ_EXPORTS
 ../ups_config.iby /epoc32/rom/include/ups_config.iby
 
-// FLM interface and implementation
-upsromstubsis.xml /epoc32/tools/makefile_templates/security/upsromstubsis.xml
-upsromstubsis.flm /epoc32/tools/makefile_templates/security/upsromstubsis.flm
-
 PRJ_TESTEXPORTS
 
 PRJ_MMPFILES
@@ -30,13 +26,7 @@
 #ifndef TOOLS
 #ifndef TOOLS2
 
-// FLM calls
-PRJ_EXTENSIONS
-
-start extension security.upsromstubsis.export
-option SISNAME upsserver
-option SRCDIR  .
-end
+gnumakefile buildstub.mak
 
 #endif
 #endif
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/securityanddataprivacytools/securityconfig/ups/romstub/buildstub.mak	Wed Sep 01 12:40:57 2010 +0100
@@ -0,0 +1,62 @@
+ifeq "$(PLATFORM)" "WINSCW"
+ZDIR:=$(EPOCROOT)epoc32\release\$(PLATFORM)\$(CFG)\z
+SISFILE=$(ZDIR)\system\install\upsserver.sis
+endif
+
+ifeq "$(PLATFORM)" "ARMV5"
+ZDIR:=$(EPOCROOT)epoc32\data\z
+SISFILE=$(ZDIR)\system\install\upsserver.sis
+endif
+
+#
+# The targets invoked by abld...
+#
+
+MAKMAKE : DO_NOTHING
+FREEZE : DO_NOTHING
+LIB : DO_NOTHING
+RESOURCE : DO_NOTHING
+CLEANLIB : DO_NOTHING
+FINAL : DO_NOTHING
+SAVESPACE : BLD
+BLD : MAKEDATA
+
+DO_NOTHING:
+
+
+ifndef SISFILE
+#
+# Not supported on this target so nothing to do
+#
+MAKEDATA :
+	@echo ----------------
+	@echo  Do nothing ...
+	@echo ----------------
+
+CLEAN:
+
+RELEASABLES:
+
+else
+#
+# WINSCW or ARM
+#
+MAKEDATA : $(SISFILE)
+
+$(SISFILE) : upsserver.pkg
+	@cd
+	@echo ---------------------------
+	@echo Building UPS ROM stub
+	@echo ---------------------------
+	@echo nb. The stub does not contain any exes, just mentions them.
+	makesis -s $< $@
+
+DO_NOTHING:
+	rem do nothing
+
+CLEAN :     
+	-@erase $(SISFILE) /f
+
+RELEASABLES :
+	@echo $(SISFILE)
+endif
--- a/securityanddataprivacytools/securityconfig/ups/romstub/upsromstubsis.flm	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-#
-# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of the License "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description: 
-#
-#
-
-# FLM to build upsromstubsis libraries.
-
-## Outputs - upsserver.sis
-
-TARGETDIR:=$(EPOCROOT)/epoc32/data/z/system/install
-
-ifeq ($(PLATFORM),WINSCW)
-	TARGETDIR:=$(EPOCROOT)/epoc32/release/$(PLATFORM_PATH)/$(CFG_PATH)/z/system/install
-endif
-
-$(call makepath,$(TARGETDIR))
-
-define SisFileCreation
-$(SISFILE): $(EXTENSION_ROOT)/$(SRCDIR)/$(SISNAME).pkg
-	$(call startrule,stubsis) \
-	$(EPOCROOT)/epoc32/tools/makesis$(DOTEXE) -s $$? $$@ \
-	$(call endrule,stubsis)
-endef
-
-# Build stub SIS file
-SISFILE:= $(TARGETDIR)/$(SISNAME).sis
-
-GUARD:=done_$(call sanitise,$(SISFILE))
-
-ifeq ($($(GUARD)),)
-$(GUARD):=1
-
-ALL:: $(SISFILE)
-$(eval $(call SisFileCreation))
-$(eval $(call whatmacro,$(SISFILE)))
-$(eval $(call GenerateStandardCleanTarget,$(SISFILE),$(TARGETDIR)))
-endif
-
-
--- a/securityanddataprivacytools/securityconfig/ups/romstub/upsromstubsis.xml	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
-#
-# Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
-# All rights reserved.
-# This component and the accompanying materials are made available
-# under the terms of the License "Eclipse Public License v1.0"
-# which accompanies this distribution, and is available
-# at the URL "http://www.eclipse.org/legal/epl-v10.html".
-#
-# Initial Contributors:
-# Nokia Corporation - initial contribution.
-#
-# Contributors:
-#
-# Description: 
-#
--->
-
-<build xmlns="http://symbian.com/xml/build"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://symbian.com/xml/build build/2_0.xsd">
-
-	<interface name="security.upsromstubsis.export" extends="Symbian.UserFLM" flm="upsromstubsis.flm">
-		<param name='SISNAME'/>
-		<param name='SRCDIR'/>
-	</interface>
-</build>
-
--- a/securityanddataprivacytools/securitytools/certapp/encdec/certinfo.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/encdec/certinfo.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/securityanddataprivacytools/securitytools/certapp/encdec/certinfo.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/encdec/certinfo.h	Wed Sep 01 12:40:57 2010 +0100
@@ -1,6 +1,6 @@
 #ifndef __CERTINFO_H__
 #define __CERTINFO_H__/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/securityanddataprivacytools/securitytools/certapp/encdec/filecertstore.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/encdec/filecertstore.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/securityanddataprivacytools/securitytools/certapp/encdec/x509utils.cpp	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/encdec/x509utils.cpp	Wed Sep 01 12:40:57 2010 +0100
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/securityanddataprivacytools/securitytools/certapp/encdec/x509utils.h	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/encdec/x509utils.h	Wed Sep 01 12:40:57 2010 +0100
@@ -1,6 +1,6 @@
 #ifndef __X509UTILS_H__
 #define __X509UTILS_H__/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of the License "Eclipse Public License v1.0"
--- a/securityanddataprivacytools/securitytools/certapp/group/certapp.mmp	Tue Aug 31 17:00:08 2010 +0300
+++ b/securityanddataprivacytools/securitytools/certapp/group/certapp.mmp	Wed Sep 01 12:40:57 2010 +0100
@@ -50,11 +50,11 @@
 
 USERINCLUDE .. ../utils ../store-- ../encdec
 
-USERINCLUDE ../store--
+SYSTEMINCLUDE ../store--
 
 OS_LAYER_SYSTEMINCLUDE_SYMBIAN
-USERINCLUDE ../../openssllib/import/inc/openssl
-USERINCLUDE ../../openssllib/import/inc
+SYSTEMINCLUDE ../../openssllib/import/inc/openssl
+SYSTEMINCLUDE ../../openssllib/import/inc
 
 #ifndef TOOLS2_LINUX
 STATICLIBRARY		eay32 zlib
Binary file securityanddataprivacytools/securitytools/certapp/test/tcertapp/ucs2-bigendian.txt has changed
--- a/sysdef_1_4_0-1.dtd	Tue Aug 31 17:00:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
- <!ELEMENT SystemDefinition (systemModel?, build?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (logicalset* | module*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  levels CDATA #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT logicalset (logicalsubset* | module* | unit* | package* | prebuilt*)*>
- <!ATTLIST logicalset name CDATA #REQUIRED>
- <!ELEMENT logicalsubset (module* | unit* | package* | prebuilt*)*>
- <!ATTLIST logicalsubset name CDATA #REQUIRED>
- <!ELEMENT module (component* | unit* | package* | prebuilt*)*>
- <!ATTLIST module
-  name CDATA #REQUIRED
-  level CDATA #IMPLIED>
- <!ELEMENT component (unit* | package* | prebuilt*)*>
- <!ATTLIST component name CDATA #REQUIRED>
- <!ELEMENT unit EMPTY>
- <!ATTLIST unit
-  unitID ID #REQUIRED
-  name CDATA #REQUIRED
-  mrp CDATA #REQUIRED
-  filter CDATA #IMPLIED
-  bldFile CDATA #REQUIRED
-  priority CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT package EMPTY>
- <!ATTLIST package
-  name CDATA #REQUIRED
-  mrp CDATA #REQUIRED
-  filter CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT prebuilt EMPTY>
- <!ATTLIST prebuilt
-  name CDATA #REQUIRED
-  version CDATA #REQUIRED
-  late (Y|N) #IMPLIED
-  filter CDATA #IMPLIED
-  contract CDATA #IMPLIED>
- <!ELEMENT build (option* | target+ | targetList+ | unitList+ | configuration+)*>
- <!ELEMENT unitList (unitRef+)>
- <!ATTLIST unitList
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT unitRef EMPTY>
- <!ATTLIST unitRef unit IDREF #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y | N | y | n) #REQUIRED>
- <!ELEMENT configuration (unitListRef+ | layerRef+ | task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task ( unitListRef* , (buildLayer | specialInstructions))>
- <!ELEMENT unitListRef EMPTY>
- <!ATTLIST unitListRef unitList IDREF #REQUIRED>
- <!ELEMENT layerRef EMPTY>
- <!ATTLIST layerRef layerName CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y | N | y | n) #REQUIRED
-  targetParallel (Y | N | y | n) #IMPLIED>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  command CDATA #REQUIRED>